//@ui5-bundle sap/ui/core/library-preload.js
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("jquery.sap.act", ["sap/ui/util/ActivityDetection","jquery.sap.global"],function(t,jQuery){"use strict";jQuery.sap.act=t;return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("jquery.sap.dom", ["jquery.sap.global","sap/ui/dom/containsOrEquals","sap/ui/core/syncStyleClass","sap/ui/dom/getOwnerWindow","sap/ui/dom/getScrollbarSize","sap/ui/dom/denormalizeScrollLeftRTL","sap/ui/dom/denormalizeScrollBeginRTL","sap/ui/dom/units/Rem","sap/ui/dom/jquery/Aria","sap/ui/dom/jquery/Selection","sap/ui/dom/jquery/zIndex","sap/ui/dom/jquery/parentByAttribute","sap/ui/dom/jquery/cursorPos","sap/ui/dom/jquery/selectText","sap/ui/dom/jquery/getSelectedText","sap/ui/dom/jquery/rect","sap/ui/dom/jquery/rectContains","sap/ui/dom/jquery/Focusable","sap/ui/dom/jquery/hasTabIndex","sap/ui/dom/jquery/scrollLeftRTL","sap/ui/dom/jquery/scrollRightRTL","sap/ui/dom/jquery/Selectors"],function(jQuery,e,r,o,u,s,t,a){"use strict";jQuery.sap.domById=function e(r,o){return r?(o||window).document.getElementById(r):null};jQuery.sap.byId=function e(r,o){var u="";if(r){u="#"+r.replace(/(:|\.)/g,"\\$1")}return jQuery(u,o)};jQuery.sap.focus=function e(r){if(!r){return}r.focus();return true};jQuery.sap.pxToRem=a.fromPx;jQuery.sap.remToPx=a.toPx;jQuery.fn.outerHTML=function(){var e=this.get(0);if(e&&e.outerHTML){return e.outerHTML.trim()}else{var r=this[0]?this[0].ownerDocument:document;var o=r.createElement("div");o.appendChild(e.cloneNode(true));return o.innerHTML}};jQuery.sap.containsOrEquals=e;jQuery.sap.denormalizeScrollLeftRTL=s;jQuery.sap.denormalizeScrollBeginRTL=t;
/*
	 * The following implementation of jQuery.support.selectstart is taken from jQuery UI core but modified.
	 *
	 * jQuery UI Core
	 * http://jqueryui.com
	 *
	 * Copyright 2014 jQuery Foundation and other contributors
	 * Released under the MIT license.
	 * http://jquery.org/license
	 *
	 * http://api.jqueryui.com/category/ui-core/
	 */jQuery.support.selectstart="onselectstart"in document.createElement("div");jQuery.sap.ownerWindow=o;jQuery.sap.scrollbarSize=u;jQuery.sap.syncStyleClass=r;return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("jquery.sap.encoder", ["jquery.sap.global","sap/base/security/encodeXML","sap/base/security/encodeJS","sap/base/security/encodeURL","sap/base/security/encodeURLParameters","sap/base/security/encodeCSS","sap/base/security/URLListValidator","sap/base/security/URLWhitelist","sap/base/security/sanitizeHTML"],function(jQuery,e,s,a,t,i,r,c,p){"use strict";jQuery.sap.encodeHTML=e;jQuery.sap.encodeXML=e;jQuery.sap.escapeHTML=e;jQuery.sap.encodeJS=s;jQuery.sap.escapeJS=s;jQuery.sap.encodeURL=a;jQuery.sap.encodeURLParameters=t;jQuery.sap.encodeCSS=i;jQuery.sap.clearUrlWhitelist=r.clear;jQuery.sap.addUrlWhitelist=r.add.bind(c);jQuery.sap.removeUrlWhitelist=function(e){r._delete(r.entries()[e])};jQuery.sap.getUrlWhitelist=r.entries;jQuery.sap.validateUrl=r.validate;jQuery.sap._sanitizeHTML=p;return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("jquery.sap.events", ["jquery.sap.global","sap/ui/events/ControlEvents","sap/ui/events/PseudoEvents","sap/ui/events/checkMouseEnterOrLeave","sap/ui/events/isSpecialKey","sap/ui/events/isMouseEventDelayed","sap/ui/events/F6Navigation","sap/ui/events/jquery/EventSimulation","sap/ui/events/KeyCodes","sap/base/util/defineCoupledProperty","sap/ui/events/jquery/EventExtension"],function(jQuery,e,n,s,a,t,u,i,o,r){"use strict";jQuery.sap.PseudoEvents=n.events;jQuery.sap.ControlEvents=e.events;jQuery.sap.disableTouchToMouseHandling=i.disableTouchToMouseHandling;r(jQuery.sap,"touchEventMode",i,"touchEventMode");jQuery.sap.bindAnyEvent=e.bindAnyEvent;jQuery.sap.unbindAnyEvent=e.unbindAnyEvent;jQuery.sap.checkMouseEnterOrLeave=s;jQuery.sap.isSpecialKey=function(e){if(e.key){return a(e)}function n(e){var n=e.which;return n===o.SHIFT||n===o.CONTROL||n===o.ALT||n===o.CAPS_LOCK||n===o.NUM_LOCK}function s(e){var n=e.which,s=n>=37&&n<=40;switch(e.type){case"keydown":case"keyup":return s;case"keypress":return n===0;default:return false}}var t=e.which,u=n(e)||s(e)||t>=33&&t<=36||t>=44&&t<=46||t>=112&&t<=123||t===o.BREAK||t===o.BACKSPACE||t===o.TAB||t===o.ENTER||t===o.ESCAPE||t===o.SCROLL_LOCK;switch(e.type){case"keydown":case"keyup":return u;case"keypress":return t===0||t===o.BACKSPACE||t===o.ESCAPE||t===o.ENTER||false;default:return false}};jQuery.sap.handleF6GroupNavigation=function(e,n){if(!e.key&&e.keyCode===o.F6){e.key="F6"}return u.handleF6GroupNavigation(e,n)};jQuery.sap._FASTNAVIGATIONKEY=u.fastNavigationKey;jQuery.sap._refreshMouseEventDelayedFlag=function(e){jQuery.sap.isMouseEventDelayed=t.apply(this,arguments)};jQuery.sap._refreshMouseEventDelayedFlag(navigator);return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("jquery.sap.history", ["jquery.sap.global","sap/base/Log","sap/base/util/uid","sap/base/strings/escapeRegExp"],function(jQuery,e,t,r){"use strict";(function(i){var n="_skip",a=/\|id-[0-9]+-[0-9]+/,o=new RegExp(n+"[0-9]*$"),s=[],f=[],u={},h=0,l,c="|",p=[],y=false,d,g=false;jQuery.sap.history=function(e){if(!jQuery.isPlainObject(e)){return}if(!g){var t=jQuery(i),r=i.location.href.split("#")[1]||"";t.on("hashchange",k);if(Array.isArray(e.routes)){var n,a;for(n=0;n<e.routes.length;n++){a=e.routes[n];if(a.path&&a.handler){jQuery.sap.history.addRoute(a.path,a.handler)}}}if(typeof e.defaultHandler==="function"){d=e.defaultHandler}f.push(r);if(r.length>1){t.trigger("hashchange",[true])}else{l=r}g=true}};jQuery.sap.history.addHistory=function(e,t,r,n){var a,o;if(r===undefined){r=true}if(!n){o=O(e,t);a=T(o);if(a){o+=c+a}o+=c+(r?"1":"0")}else{o=x(l)}p.push(o);u[o]=true;i.location.hash=o;return o};jQuery.sap.history.addVirtualHistory=function(){jQuery.sap.history.addHistory("",undefined,false,true)};jQuery.sap.history.addRoute=function(e,t,r){if(r){t=jQuery.proxy(t,r)}var i={};i.sIdentifier=e;i["action"]=t;s.push(i);return this};jQuery.sap.history.setDefaultHandler=function(e){d=e};jQuery.sap.history.getDefaultHandler=function(){return d};jQuery.sap.history.backToHash=function(t){t=t||"";var r;if(f.length===1){if(typeof d==="function"){d()}}else{r=v(l,t);if(r<0){i.history.go(r)}else{e.error("jQuery.sap.history.backToHash: "+t+"is not in the history stack or it's after the current hash")}}};jQuery.sap.history.backThroughPath=function(t){t=t||"";t=i.encodeURIComponent(t);var r;if(f.length===1){if(typeof d==="function"){d()}}else{r=v(l,t,true);if(r<0){i.history.go(r)}else{e.error("jQuery.sap.history.backThroughPath: there's no history state which has the "+t+" identifier in the history stack before the current hash")}}};jQuery.sap.history.back=function(e){if(f.length===1){if(typeof d==="function"){d(jQuery.sap.history.NavType.Back)}}else{if(!e){e=1}i.history.go(-1*e)}};jQuery.sap.history.NavType={Back:"_back",Forward:"_forward",Bookmark:"_bookmark",Unknown:"_unknown"};function v(e,t,r){var i=f.indexOf(e),n,a,o;if(i>0){if(r){for(a=i-1;a>=0;a--){o=f[a];if(o.indexOf(t)===0&&!I(o)){return a-i}}}else{n=f.indexOf(t);if(n===-1&&t.length===0){return-1*i}if(n>-1&&n<i){return n-i}}}return 0}function k(e,t){var r=i.location.href.split("#")[1]||"";r=b(r);if(t||!u[r]){p.push(r)}if(!y){y=true;if(p.length>0){var n=p.shift();if(u[n]){m(n);delete u[n]}else{H(n)}l=n}y=false}}function b(e,t){var r=e,i=e?e.indexOf("#"):-1;if(i===0){r=r.slice(i+1)}if(t){r=r.replace(a,"")}return r}function x(e){var t=e?e:"";if(I(t)){var r=t.lastIndexOf(n);t=t.slice(0,r)}return t+n+h++}function O(e,t){var r=encodeURIComponent(e);var i=encodeURIComponent(JSON.stringify(t));return r+c+i}function T(e){var r=f.indexOf(l),i,n;if(r>-1){for(i=0;i<r+1;i++){n=f[i];if(n.slice(0,n.length-2)===e){return t()}}}return""}function m(e){var t=f.indexOf(l);if(!(t===-1||t===f.length-1)){f.splice(t+1,f.length-1-t)}f.push(e)}function I(e){return o.test(e)}function B(e,t){var r=f.indexOf(e),i;if(r!==-1){if(t){for(i=r;i<f.length;i++){if(!I(f[i])){return i-r}}}else{for(i=r;i>=0;i--){if(!I(f[i])){return i-r}}return-1*(r+1)}}}function H(t){var a,o,s,u,h;if(l===undefined){s=R(t);if(!s||!s.bBookmarkable){if(typeof d==="function"){d(jQuery.sap.history.NavType.Bookmark)}return}}if(t.length===0){if(typeof d==="function"){d(jQuery.sap.history.NavType.Back)}}else{u=f.indexOf(t);if(u===0){s=R(t);if(!s||!s.bBookmarkable){if(typeof d==="function"){d(jQuery.sap.history.NavType.Back)}return}}if(I(t)){if(I(l)){o=B(t,false);i.history.go(o)}else{var c=new RegExp(r(l+n)+"[0-9]*$");if(c.test(t)){o=B(t,true);if(o){i.history.go(o)}else{i.history.back()}}else{o=B(t,false);i.history.go(o)}}}else{if(u===-1){h=jQuery.sap.history.NavType.Unknown;f.push(t)}else{if(f.indexOf(l,u+1)===-1){h=jQuery.sap.history.NavType.Forward}else{h=jQuery.sap.history.NavType.Back}}s=R(t);if(s){a=N(s.sIdentifier);if(a){a.action.apply(null,[s.oStateData,h])}}else{e.error("hash format error! The current Hash: "+t)}}}}function N(e){var t;for(t=0;t<s.length;t++){if(s[t].sIdentifier===e){return s[t]}}}function R(e){if(I(e)){var t=e.lastIndexOf(n);e=e.slice(0,t)}var r=e.split(c),a={};if(r.length===4||r.length===3){a.sIdentifier=i.decodeURIComponent(r[0]);a.oStateData=JSON.parse(i.decodeURIComponent(r[1]));if(r.length===4){a.uid=r[2]}a.bBookmarkable=r[r.length-1]==="0"?false:true;return a}else{return null}}})(this);return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("jquery.sap.keycodes", ["jquery.sap.global","sap/ui/events/KeyCodes"],function(jQuery,e){"use strict";jQuery.sap.KeyCodes=e;return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("jquery.sap.mobile", ["jquery.sap.global","sap/ui/util/Mobile","sap/ui/Device"],function(jQuery,e,s){"use strict";function t(e,s){var t=Object.getOwnPropertyDescriptor(e,s);return t&&t.value}(function(){jQuery.os=jQuery.extend({os:s.os.name,version:s.os.versionStr,fVersion:s.os.version},t(jQuery,"os"));jQuery.os[s.os.name]=true;jQuery.device=jQuery.extend({},t(jQuery,"device"));jQuery.device.is=jQuery.extend({standalone:window.navigator.standalone,landscape:s.orientation.landscape,portrait:s.orientation.portrait,iphone:s.os.ios&&s.system.phone,ipad:s.os.ios&&s.system.tablet,android_phone:s.system.phone&&s.os.android,android_tablet:s.system.tablet&&s.os.android,tablet:s.system.tablet,phone:s.system.phone,desktop:s.system.desktop},jQuery.device.is)})();jQuery.sap.initMobile=e.init;jQuery.sap.setIcons=e.setIcons;jQuery.sap.setMobileWebAppCapable=e.setWebAppCapable;return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("jquery.sap.promise", [],function(){"use strict"});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("jquery.sap.properties", ["jquery.sap.global","sap/base/util/Properties"],function(jQuery,e){"use strict";jQuery.sap.properties=e.create;return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("jquery.sap.resources", ["sap/base/i18n/ResourceBundle","jquery.sap.global"],function(e,jQuery){"use strict";jQuery.sap.resources=function(){return e.create.apply(e,arguments)};jQuery.sap.resources.isBundle=function(s){return s instanceof e};jQuery.sap.resources._getFallbackLocales=e._getFallbackLocales;return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("jquery.sap.script", ["jquery.sap.global","sap/base/util/uid","sap/base/strings/hash","sap/base/util/array/uniqueSort","sap/base/util/deepEqual","sap/base/util/each","sap/base/util/array/diff","sap/base/util/JSTokenizer","sap/base/util/merge","sap/base/util/UriParameters"],function(jQuery,e,r,a,t,n,o,i,s,l){"use strict";jQuery.sap.uid=e;jQuery.sap.hashCode=r;jQuery.sap.unique=a;jQuery.sap.equal=t;jQuery.sap.each=n;jQuery.sap.arraySymbolDiff=o;jQuery.sap._createJSTokenizer=function(){return new i};jQuery.sap.parseJS=i.parseJS;jQuery.sap.extend=function(){var e=arguments,r=false;if(typeof arguments[0]==="boolean"){r=arguments[0];e=Array.prototype.slice.call(arguments,1)}if(r){return s.apply(this,e)}else{
/*
			 * The code in this function is taken from jQuery 3.6.0 "jQuery.extend" and got modified.
			 *
			 * jQuery JavaScript Library v3.6.0
			 * https://jquery.com/
			 *
			 * Copyright OpenJS Foundation and other contributors
			 * Released under the MIT license
			 * https://jquery.org/license
			 */
var a,t,n,o=arguments[0]||{},i=1,l=arguments.length;if(typeof o!=="object"&&typeof o!=="function"){o={}}for(;i<l;i++){n=arguments[i];for(t in n){a=n[t];if(t==="__proto__"||o===a){continue}o[t]=a}}return o}};jQuery.sap.getUriParameters=function e(r){return l.fromURL(r||window.location.href)};jQuery.sap.delayedCall=function e(r,a,t,n){return setTimeout(function(){if(typeof t==="string"){t=a[t]}t.apply(a,n||[])},r)};jQuery.sap.clearDelayedCall=function e(r){clearTimeout(r);return this};jQuery.sap.intervalCall=function e(r,a,t,n){return setInterval(function(){if(typeof t==="string"){t=a[t]}t.apply(a,n||[])},r)};jQuery.sap.clearIntervalCall=function e(r){clearInterval(r);return this};jQuery.sap.forIn=n;jQuery.sap.arrayDiff=function(e,r,a,n){a=a||function(e,r){return t(e,r)};var o=[];var i=[];var s=[];for(var l=0;l<r.length;l++){var f=r[l];var p=0;var u;if(n&&a(e[l],f)){p=1;u=l}else{for(var d=0;d<e.length;d++){if(a(e[d],f)){p++;u=d;if(n||p>1){break}}}}if(p==1){var w={oldIndex:u,newIndex:l};if(s[u]){delete o[u];delete i[s[u].newIndex]}else{i[l]={data:r[l],row:u};o[u]={data:e[u],row:l};s[u]=w}}}for(var l=0;l<r.length-1;l++){if(i[l]&&!i[l+1]&&i[l].row+1<e.length&&!o[i[l].row+1]&&a(e[i[l].row+1],r[l+1])){i[l+1]={data:r[l+1],row:i[l].row+1};o[i[l].row+1]={data:o[i[l].row+1],row:l+1}}}for(var l=r.length-1;l>0;l--){if(i[l]&&!i[l-1]&&i[l].row>0&&!o[i[l].row-1]&&a(e[i[l].row-1],r[l-1])){i[l-1]={data:r[l-1],row:i[l].row-1};o[i[l].row-1]={data:o[i[l].row-1],row:l-1}}}var c=[];if(r.length==0){for(var l=0;l<e.length;l++){c.push({index:0,type:"delete"})}}else{var h=0;if(!o[0]){for(var l=0;l<e.length&&!o[l];l++){c.push({index:0,type:"delete"});h=l+1}}for(var l=0;l<r.length;l++){if(!i[l]||i[l].row>h){c.push({index:l,type:"insert"})}else{h=i[l].row+1;for(var d=i[l].row+1;d<e.length&&(!o[d]||o[d].row<l);d++){c.push({index:l+1,type:"delete"});h=d+1}}}}return c};return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("jquery.sap.sjax", ["jquery.sap.global"],function(jQuery){"use strict";jQuery.sap.sjaxSettings={complexResult:true,fallback:undefined};jQuery.sap.sjax=function t(s){var a;var e=jQuery.extend(true,{},jQuery.sap.sjaxSettings,s,{async:false,success:function(t,s,e){a={success:true,data:t,status:s,statusCode:e&&e.status}},error:function(t,s,e){a={success:false,data:undefined,status:s,error:e,statusCode:t.status,errorResponse:t.responseText}}});jQuery.ajax(e);if(!e.complexResult){return a.success?a.data:e.fallback}return a};jQuery.sap.syncHead=function(t){return jQuery.sap.sjax({type:"HEAD",url:t}).success};jQuery.sap.syncGet=function t(s,a,e){return jQuery.sap.sjax({url:s,data:a,type:"GET",dataType:e||"text"})};jQuery.sap.syncPost=function t(s,a,e){return jQuery.sap.sjax({url:s,data:a,type:"POST",dataType:e||"text"})};jQuery.sap.syncGetText=function t(s,a,e){return jQuery.sap.sjax({url:s,data:a,type:"GET",dataType:"text",fallback:e,complexResult:arguments.length<3})};jQuery.sap.syncGetJSON=function t(s,a,e){return jQuery.sap.sjax({url:s,data:a||null,type:"GET",dataType:"json",fallback:e,complexResult:arguments.length<3})};return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("jquery.sap.storage", ["jquery.sap.global","sap/base/assert","sap/ui/util/Storage"],function(jQuery,e,t){"use strict";var s={};jQuery.sap.storage=function(a,r){if(!a){a=t.Type.session}if(typeof a==="string"&&t.Type[a]){var i=a;if(r&&r!="state.key_"){i=a+"_"+r}if(!s[i]){s[i]=new t(a,r)}return s[i]}e(a instanceof Object&&a.clear&&a.setItem&&a.getItem&&a.removeItem,"storage: duck typing the storage");return new t(a,r)};jQuery.sap.storage.Storage=t;jQuery.sap.storage.Type=t.Type;Object.assign(jQuery.sap.storage,t);return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("jquery.sap.strings", ["jquery.sap.global","sap/base/strings/capitalize","sap/base/strings/camelize","sap/base/strings/hyphenate","sap/base/strings/escapeRegExp","sap/base/strings/formatMessage"],function(jQuery,t,s,e,r,a){"use strict";jQuery.sap.endsWith=function(t,s){if(typeof s!="string"||s==""){return false}return t.endsWith(s)};jQuery.sap.endsWithIgnoreCase=function(t,s){if(typeof s!="string"||s==""){return false}t=t.toUpperCase();s=s.toUpperCase();return t.endsWith(s)};jQuery.sap.startsWith=function(t,s){if(typeof s!="string"||s==""){return false}return t.startsWith(s)};jQuery.sap.startsWithIgnoreCase=function(t,s){if(typeof s!="string"||s==""){return false}t=t.toUpperCase();s=s.toUpperCase();return t.startsWith(s)};jQuery.sap.charToUpperCase=function(s,e){if(!s){return s}if(!e||isNaN(e)||e<=0||e>=s.length){return t(s)}var r=s.charAt(e).toUpperCase();if(e>0){return s.substring(0,e)+r+s.substring(e+1)}return r+s.substring(e+1)};jQuery.sap.padLeft=function(t,s,e){jQuery.sap.assert(typeof s==="string"&&s,"padLeft: sPadChar must be a non-empty string");if(!t){t=""}if(s&&s.length===1){return t.padStart(e,s)}while(t.length<e){t=s+t}return t};jQuery.sap.padRight=function(t,s,e){jQuery.sap.assert(typeof s==="string"&&s,"padRight: sPadChar must be a non-empty string");if(!t){t=""}if(s&&s.length===1){return t.padEnd(e,s)}while(t.length<e){t=t+s}return t};jQuery.sap.camelCase=s;jQuery.sap.hyphen=e;jQuery.sap.escapeRegExp=r;jQuery.sap.formatMessage=a;return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("jquery.sap.trace", ["jquery.sap.global","sap/ui/performance/trace/Passport","sap/ui/performance/trace/Interaction","sap/ui/performance/trace/FESR","sap/base/Log","sap/base/config","sap/ui/Global"],function(jQuery,t,e,a,n,r){"use strict";function i(){if(!(performance&&performance.getEntries)){n.warning("Interaction tracking is not supported on browsers with insufficient performance API")}}jQuery.sap.interaction={};jQuery.sap.interaction.setActive=function(t){i();return e.setActive.apply(this,arguments)};jQuery.sap.interaction.getActive=()=>e.getActive();jQuery.sap.interaction.notifyStepStart=(t,a,n)=>{e.notifyStepStart(t,a,n)};jQuery.sap.interaction.notifyStepEnd=()=>{e.notifyStepEnd()};jQuery.sap.interaction.notifyEventStart=t=>{e.notifyEventStart(t)};jQuery.sap.interaction.notifyScrollEvent=t=>{e.notifyScrollEvent(t)};jQuery.sap.interaction.notifyEventEnd=()=>{e.notifyEventEnd()};jQuery.sap.interaction.setStepComponent=()=>{e.setStepComponent()};jQuery.sap.fesr={};jQuery.sap.fesr.setActive=function(t){i();return a.setActive.apply(this,arguments)};jQuery.sap.fesr.getActive=()=>a.getActive();jQuery.sap.fesr.getCurrentTransactionId=()=>t.getTransactionId();jQuery.sap.fesr.getRootId=()=>t.getRootId();jQuery.sap.fesr.addBusyDuration=t=>{e.addBusyDuration(t)};jQuery.sap.passport={};jQuery.sap.passport.setActive=t.setActive;jQuery.sap.passport.traceFlags=t.traceFlags;a.setActive(r.get({name:"sapUiFesr",type:r.Type.Boolean,external:true,freeze:true}));if(r.get({name:"sapUiXxE2eTrace",type:r.Type.Boolean,external:true,freeze:true})){sap.ui.requireSync("sap/ui/core/support/trace/E2eTraceLib")}return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("jquery.sap.ui", ["jquery.sap.global","sap/base/util/ObjectPath","sap/ui/core/UIArea","sap/ui/dom/jquery/control"],function(jQuery,t,e){"use strict";function i(t){return t.getUIArea().getInterface()}function r(){return e.registry.get(this.id)!=null}function n(){return e.registry.get(this.id).getInterface()}jQuery.fn.root=function(t){if(t){sap.ui.getCore().setRoot(this.get(0),t);return this}var r=this.control();if(r.length>0){return r.map(i)}var n=this.uiarea();if(n.length>0){return n}this.each(function(){e.create(this)});return this};jQuery.fn.uiarea=function(t){var e=this.slice("[id]").filter(r).map(n).get();return typeof t==="number"?e[t]:e};jQuery.fn.sapui=function(e,i,r){return this.each(function(){var n=null;if(this){if(e.indexOf(".")==-1){e="sap.ui.commons."+e}var s=t.get(e);if(s){if(typeof r=="object"&&typeof r.press=="function"){r.press=jQuery.proxy(r.press,this)}n=new s(i,r);n.placeAt(this)}}})};return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("jquery.sap.xml", ["jquery.sap.global","sap/ui/util/XMLHelper"],function(jQuery,e){"use strict";jQuery.sap.parseXML=e.parse;jQuery.sap.serializeXML=function(r){var a="";if(window.ActiveXObject){a=r.xml;if(a){return a}}if(window.XMLSerializer){return e.serialize(r)}return a};jQuery.sap.isEqualNode=function(e,r){if(e===r){return true}if(!e||!r){return false}if(e.isEqualNode){return e.isEqualNode(r)}if(e.nodeType!=r.nodeType){return false}if(e.nodeValue!=r.nodeValue){return false}if(e.baseName!=r.baseName){return false}if(e.nodeName!=r.nodeName){return false}if(e.nameSpaceURI!=r.nameSpaceURI){return false}if(e.prefix!=r.prefix){return false}if(e.nodeType!=1){return true}if(e.attributes.length!=r.attributes.length){return false}for(var a=0;a<e.attributes.length;a++){if(!jQuery.sap.isEqualNode(e.attributes[a],r.attributes[a])){return false}}if(e.childNodes.length!=r.childNodes.length){return false}for(var a=0;a<e.childNodes.length;a++){if(!jQuery.sap.isEqualNode(e.childNodes[a],r.childNodes[a])){return false}}return true};jQuery.sap.getParseError=e.getParseError;return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/security/URLListValidator", [],function(){"use strict";var e=/^(?:([^:\/?#]+):)?((?:[\/\\]{2,}((?:\[[^\]]+\]|[^\/?#:]+))(?::([0-9]+))?)?([^?#]*))(?:\?([^#]*))?(?:#(.*))?$/;var t=/^([a-z0-9-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*$/i;var a=/^([a-z0-9-._~!$&'()*+,;=:@\/?]|%[0-9a-f]{2})*$/i;var r=a;var f=/^([a-z0-9!$'*+:^_`{|}~-]|%[0-9a-f]{2})+(?:\.([a-z0-9!$'*+:^_`{|}~-]|%[0-9a-f]{2})+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i;var s=/^([0-9]{1,3}\.){3}[0-9]{1,3}$/;var i=/^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$/;var n=/^\[[^\]]+\]$/;var u=/^\[(((([0-9a-f]{1,4}:){6}|(::([0-9a-f]{1,4}:){5})|(([0-9a-f]{1,4})?::([0-9a-f]{1,4}:){4})|((([0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::([0-9a-f]{1,4}:){3})|((([0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::([0-9a-f]{1,4}:){2})|((([0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:)|((([0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::))(([0-9a-f]{1,4}:[0-9a-f]{1,4})|(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])))|((([0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4})|((([0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::))\]$/i;var l=/^([a-z0-9]([a-z0-9\-]*[a-z0-9])?\.)*[a-z0-9]([a-z0-9\-]*[a-z0-9])?$/i;var p=/^((?:ftp|https?|wss?):)([\s\S]+)$/;var o=/[\u0009\u000A\u000D]/;var v={};v._createEntry=function(e,t,a,r){return new h(e,t,a,r)};function h(e,t,a,r){Object.defineProperties(this,{protocol:{value:e&&e.toUpperCase(),enumerable:true},host:{value:t&&t.toUpperCase(),enumerable:true},port:{value:a,enumerable:true},path:{value:r,enumerable:true}})}var c=[];v.clear=function(){c=[]};v.add=function(e,t,a,r){var f=this._createEntry(e,t,a,r);c.push(f)};v._delete=function(e){c.splice(c.indexOf(e),1)};v.entries=function(){return c.slice()};v.validate=function(v){if(typeof v==="string"){if(o.test(v)){return false}}var h=p.exec(v);if(h&&!/^[\/\\]{2}/.test(h[2])){v=h[1]+"//"+h[2]}h=e.exec(v);if(!h){return false}var $=h[1],g=h[2],z=h[3],_=h[4],x=h[5],R=h[6],d=h[7];if($){$=$.toUpperCase();if(c.length<=0){if(!/^(https?|ftp)/i.test($)){return false}}}if(z){if(s.test(z)){if(!i.test(z)){return false}}else if(n.test(z)){if(!u.test(z)){return false}}else if(!l.test(z)){return false}z=z.toUpperCase()}if(x){if($==="MAILTO"){var b=g.split(",");for(var m=0;m<b.length;m++){if(!f.test(b[m])){return false}}}else{var C=x.split("/");for(var m=0;m<C.length;m++){if(!t.test(C[m])){return false}}}}if(R){if(!a.test(R)){return false}}if(d){if(!r.test(d)){return false}}if(c.length>0){var E=false;for(var m=0;m<c.length;m++){if(!$||!c[m].protocol||$==c[m].protocol){var U=false;if(z&&c[m].host&&/^\*/.test(c[m].host)){if(!c[m]._hostRegexp){var y=c[m].host.slice(1).replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");c[m]._hostRegexp=RegExp(y+"$")}var O=c[m]._hostRegexp;if(O.test(z)){U=true}}else if(!z||!c[m].host||z==c[m].host){U=true}if(U){if(!z&&!_||!c[m].port||_==c[m].port){if(c[m].path&&/\*$/.test(c[m].path)){if(!c[m]._pathRegexp){var w=c[m].path.slice(0,-1).replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");c[m]._pathRegexp=RegExp("^"+w)}var O=c[m]._pathRegexp;if(O.test(x)){E=true}}else if(!c[m].path||x==c[m].path){E=true}}}}if(E){break}}if(!E){return false}}return true};return v});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/security/URLWhitelist", ["sap/base/security/URLListValidator"],function(e){"use strict";return{add:e.add,delete:e._delete,clear:e.clear,entries:e.entries,validate:e.validate,_createEntry:function(e,t,a,r){return{protocol:e&&e.toUpperCase(),host:t&&t.toUpperCase(),port:a,path:r}}}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/security/encodeJS", ["sap/base/strings/toHex"],function(r){"use strict";var e=/[\x00-\x2b\x2d\x2f\x3a-\x40\x5b-\x5e\x60\x7b-\xff\u2028\u2029]/g,x={};var a=function(e){var a=x[e];if(!a){var n=e.charCodeAt(0);if(n<256){a="\\x"+r(n,2)}else{a="\\u"+r(n,4)}x[e]=a}return a};var n=function(r){return r.replace(e,a)};return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/security/encodeURL", ["sap/base/strings/toHex"],function(e){"use strict";var f=/[\ud800-\udbff][\udc00-\udfff]|[\x00-\x2c\x2f\x3a-\x40\x5b-\x5e\x60\x7b-\uffff]/g,r={};var u=function(f){var u=r[f];if(!u){var i=f.codePointAt(0);if(i<128){u="%"+e(i,2)}else if(i<2048){u="%"+e(i>>6|192,2)+"%"+e(i&63|128,2)}else if(i<65536){u="%"+e(i>>12|224,2)+"%"+e(i>>6&63|128,2)+"%"+e(i&63|128,2)}else{u="%"+e(i>>18|240,2)+"%"+e(i>>12&63|128,2)+"%"+e(i>>6&63|128,2)+"%"+e(i&63|128,2)}r[f]=u}return u};var i=function(e){return e.replace(f,u)};return i});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/security/encodeURLParameters", ["./encodeURL"],function(n){"use strict";var r=function(r){if(!r){return""}var t=[];Object.keys(r).forEach(function(e){var i=r[e];if(i instanceof String||typeof i==="string"){i=n(i)}t.push(n(e)+"="+i)});return t.join("&")};return r});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/security/sanitizeHTML", ["sap/base/assert","sap/base/security/URLListValidator","sap/ui/thirdparty/caja-html-sanitizer"],function(i,t){"use strict";var a=function(a,e){i(window.html&&window.html.sanitize,"Sanitizer should have been loaded");e=e||{uriRewriter:function(i){if(t.validate(i)){return i}}};var r=e.tagPolicy||window.html.makeTagPolicy(e.uriRewriter,e.tokenPolicy);return window.html.sanitizeWithPolicy(a,r)};return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/strings/hyphenate", [],function(){"use strict";var r=/([A-Z])/g;var e=function(e){return e.replace(r,function(r,e){return"-"+e.toLowerCase()})};return e});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/strings/whitespaceReplacer", [],function(){"use strict";var r=function(r){var e=" ",t=" ";if(typeof r!=="string"){return r}return r.replaceAll("\t",e+e).replaceAll(e+e,e+t)};return r});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/UriParameters", ["sap/base/Log"],function(e){"use strict";function t(e){var t=e.indexOf("#");if(t>=0){e=e.slice(0,t)}var n=e.indexOf("?");if(n>=0){return e.slice(n+1)}return""}function n(e){return decodeURIComponent(e.replace(/\+/g," "))}function r(e,t){function r(t,n){if(t in e){e[t].push(n)}else{e[t]=[n]}}t.split("&").forEach(function(e){var t=e.indexOf("=");if(t>=0){r(n(e.slice(0,t)),n(e.slice(t+1)))}else if(e.length){r(n(e),"")}})}var i=function(n){var i=Object.create(null);if(n!=null){if(typeof n!=="string"){throw new TypeError("query parameter must be a string")}r(i,t(n))}this.has=function(e){return e in i};this._get=function(e){return e in i?i[e][0]:null};this.getAll=function(e){return e in i?i[e].slice():[]};this.keys=function(){return Object.keys(i).values()};var u=false;Object.defineProperty(this,"mParams",{get:function(){if(!u){e.warning("[Deprecated] UriParameters.mParams must not be accessed.");u=true}return Object.assign({},i)},configurable:false})};i.prototype.get=function(t,n){if(n){e.warning("[Deprecated] UriParameters.get(..., true) must not be used, use getAll() instead.");return this.getAll(t)}return this._get(t)};i.fromURL=function(e){return new i(e)};i.fromQuery=function(e){if(typeof e==="string"){if(e[0]!=="?"){e="?"+e}e=e.replace(/#/g,"%23")}return new i(e)};return i});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/clamp", [],function(){"use strict";const t=(t,a,n)=>Math.min(Math.max(t,a),Math.max(a,n));return t});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/defineCoupledProperty", [],function(){"use strict";var e=function(e,t,n,r){var i=n[r];var u={configurable:true,get:function(){return i},set:function(e){i=e}};Object.defineProperty(e,t,u);Object.defineProperty(n,r,u)};return e});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/includes", ["sap/base/util/values"],function(e){"use strict";var r=function(n,t,i){if(typeof i!=="number"){i=0}if(Array.isArray(n)||typeof n==="string"){if(i<0){i=n.length+i<0?0:n.length+i}return n.includes(t,i)}else{return r(e(n),t,i)}};return r});
/**
 * @license
 * Lodash (Custom Build) <https://lodash.com/>
 * Build: `lodash strict include="omit,uniq,uniqBy,uniqWith,intersection,intersectionBy,intersectionWith,pick,pickBy,debounce,throttle,max,min,castArray,curry,merge,mergeWith,toArray,xor,xorBy,xorWith,isNil,difference,differenceBy,differenceWith,flatMap,flatMapDeep,flatMapDepth,isEqual,isEqualWith,without,flatten,flattenDeep,flattenDepth,compact,zipObject,zipObjectDeep,union,unionBy,unionWith"`
 * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
 * Released under MIT license <https://lodash.com/license>
 * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
 * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
 * Modifications SAP SE or an SAP affiliate company and OpenUI5 contributors. All rights reserved.
 */
sap.ui.predefine("sap/base/util/restricted/_/lodash.custom", function(){"use strict";var r;var t="4.17.21";var n=200;var e="Expected a function";var u="__lodash_hash_undefined__";var i=500;var a="__lodash_placeholder__";var f=1,o=2,c=4;var l=1,s=2;var v=1,h=2,p=4,g=8,y=16,_=32,w=64,b=128,d=256,j=512;var m=800,O=16;var A=1/0,x=9007199254740991,z=17976931348623157e292,k=0/0;var S=4294967295;var E=[["ary",b],["bind",v],["bindKey",h],["curry",g],["curryRight",y],["flip",j],["partial",_],["partialRight",w],["rearg",d]];var T="[object Arguments]",$="[object Array]",I="[object AsyncFunction]",B="[object Boolean]",W="[object Date]",L="[object Error]",M="[object Function]",P="[object GeneratorFunction]",D="[object Map]",F="[object Number]",q="[object Null]",R="[object Object]",C="[object Promise]",U="[object Proxy]",N="[object RegExp]",V="[object Set]",G="[object String]",K="[object Symbol]",H="[object Undefined]",J="[object WeakMap]";var Q="[object ArrayBuffer]",X="[object DataView]",Y="[object Float32Array]",Z="[object Float64Array]",rr="[object Int8Array]",tr="[object Int16Array]",nr="[object Int32Array]",er="[object Uint8Array]",ur="[object Uint8ClampedArray]",ir="[object Uint16Array]",ar="[object Uint32Array]";var fr=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,or=/^\w*$/,cr=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;var lr=/[\\^$.*+?()[\]{}|]/g;var sr=/^\s+/;var vr=/\s/;var hr=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,pr=/\{\n\/\* \[wrapped with (.+)\] \*/,gr=/,? & /;var yr=/\\(\\)?/g;var _r=/\w*$/;var wr=/^[-+]0x[0-9a-f]+$/i;var br=/^0b[01]+$/i;var dr=/^\[object .+?Constructor\]$/;var jr=/^0o[0-7]+$/i;var mr=/^(?:0|[1-9]\d*)$/;var Or="\\ud800-\\udfff",Ar="\\u0300-\\u036f",xr="\\ufe20-\\ufe2f",zr="\\u20d0-\\u20ff",kr=Ar+xr+zr,Sr="\\ufe0e\\ufe0f";var Er="["+Or+"]",Tr="["+kr+"]",$r="\\ud83c[\\udffb-\\udfff]",Ir="(?:"+Tr+"|"+$r+")",Br="[^"+Or+"]",Wr="(?:\\ud83c[\\udde6-\\uddff]){2}",Lr="[\\ud800-\\udbff][\\udc00-\\udfff]",Mr="\\u200d";var Pr=Ir+"?",Dr="["+Sr+"]?",Fr="(?:"+Mr+"(?:"+[Br,Wr,Lr].join("|")+")"+Dr+Pr+")*",qr=Dr+Pr+Fr,Rr="(?:"+[Br+Tr+"?",Tr,Wr,Lr,Er].join("|")+")";var Cr=RegExp($r+"(?="+$r+")|"+Rr+qr,"g");var Ur=RegExp("["+Mr+Or+kr+Sr+"]");var Nr={};Nr[Y]=Nr[Z]=Nr[rr]=Nr[tr]=Nr[nr]=Nr[er]=Nr[ur]=Nr[ir]=Nr[ar]=true;Nr[T]=Nr[$]=Nr[Q]=Nr[B]=Nr[X]=Nr[W]=Nr[L]=Nr[M]=Nr[D]=Nr[F]=Nr[R]=Nr[N]=Nr[V]=Nr[G]=Nr[J]=false;var Vr={};Vr[T]=Vr[$]=Vr[Q]=Vr[X]=Vr[B]=Vr[W]=Vr[Y]=Vr[Z]=Vr[rr]=Vr[tr]=Vr[nr]=Vr[D]=Vr[F]=Vr[R]=Vr[N]=Vr[V]=Vr[G]=Vr[K]=Vr[er]=Vr[ur]=Vr[ir]=Vr[ar]=true;Vr[L]=Vr[M]=Vr[J]=false;var Gr=parseInt;var Kr=typeof global=="object"&&global&&global.Object===Object&&global;var Hr=typeof self=="object"&&self&&self.Object===Object&&self;var Jr=Kr||Hr||Function("return this")();var Qr=typeof exports=="object"&&exports&&!exports.nodeType&&exports;var Xr=Qr&&typeof module=="object"&&module&&!module.nodeType&&module;var Yr=Xr&&Xr.exports===Qr;var Zr=Yr&&Kr.process;var rt=function(){try{var r=Xr&&Xr.require&&Xr.require("util").types;if(r){return r}return Zr&&Zr.binding&&Zr.binding("util")}catch(r){}}();var tt=rt&&rt.isMap,nt=rt&&rt.isSet,et=rt&&rt.isTypedArray;function ut(r,t,n){switch(n.length){case 0:return r.call(t);case 1:return r.call(t,n[0]);case 2:return r.call(t,n[0],n[1]);case 3:return r.call(t,n[0],n[1],n[2])}return r.apply(t,n)}function it(r,t){var n=-1,e=r==null?0:r.length;while(++n<e){if(t(r[n],n,r)===false){break}}return r}function at(r,t){var n=-1,e=r==null?0:r.length,u=0,i=[];while(++n<e){var a=r[n];if(t(a,n,r)){i[u++]=a}}return i}function ft(r,t){var n=r==null?0:r.length;return!!n&&pt(r,t,0)>-1}function ot(r,t,n){var e=-1,u=r==null?0:r.length;while(++e<u){if(n(t,r[e])){return true}}return false}function ct(r,t){var n=-1,e=r==null?0:r.length,u=Array(e);while(++n<e){u[n]=t(r[n],n,r)}return u}function lt(r,t){var n=-1,e=t.length,u=r.length;while(++n<e){r[u+n]=t[n]}return r}function st(r,t){var n=-1,e=r==null?0:r.length;while(++n<e){if(t(r[n],n,r)){return true}}return false}function vt(r){return r.split("")}function ht(r,t,n,e){var u=r.length,i=n+(e?1:-1);while(e?i--:++i<u){if(t(r[i],i,r)){return i}}return-1}function pt(r,t,n){return t===t?Tt(r,t,n):ht(r,gt,n)}function gt(r){return r!==r}function yt(t){return function(n){return n==null?r:n[t]}}function _t(r,t){var n=-1,e=Array(r);while(++n<r){e[n]=t(n)}return e}function wt(r){return r?r.slice(0,It(r)+1).replace(sr,""):r}function bt(r){return function(t){return r(t)}}function dt(r,t){return ct(t,function(t){return r[t]})}function jt(r,t){return r.has(t)}function mt(r,t){var n=r.length,e=0;while(n--){if(r[n]===t){++e}}return e}function Ot(t,n){return t==null?r:t[n]}function At(r){return Ur.test(r)}function xt(r){var t,n=[];while(!(t=r.next()).done){n.push(t.value)}return n}function zt(r){var t=-1,n=Array(r.size);r.forEach(function(r,e){n[++t]=[e,r]});return n}function kt(r,t){return function(n){return r(t(n))}}function St(r,t){var n=-1,e=r.length,u=0,i=[];while(++n<e){var f=r[n];if(f===t||f===a){r[n]=a;i[u++]=n}}return i}function Et(r){var t=-1,n=Array(r.size);r.forEach(function(r){n[++t]=r});return n}function Tt(r,t,n){var e=n-1,u=r.length;while(++e<u){if(r[e]===t){return e}}return-1}function $t(r){return At(r)?Bt(r):vt(r)}function It(r){var t=r.length;while(t--&&vr.test(r.charAt(t))){}return t}function Bt(r){return r.match(Cr)||[]}var Wt=Array.prototype,Lt=Function.prototype,Mt=Object.prototype;var Pt=Jr["__core-js_shared__"];var Dt=Lt.toString;var Ft=Mt.hasOwnProperty;var qt=function(){var r=/[^.]+$/.exec(Pt&&Pt.keys&&Pt.keys.IE_PROTO||"");return r?"Symbol(src)_1."+r:""}();var Rt=Mt.toString;var Ct=Dt.call(Object);var Ut=RegExp("^"+Dt.call(Ft).replace(lr,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");var Nt=Yr?Jr.Buffer:r,Vt=Jr.Symbol,Gt=Jr.Uint8Array,Kt=Nt?Nt.allocUnsafe:r,Ht=kt(Object.getPrototypeOf,Object),Jt=Object.create,Qt=Mt.propertyIsEnumerable,Xt=Wt.splice,Yt=Vt?Vt.isConcatSpreadable:r,Zt=Vt?Vt.iterator:r,rn=Vt?Vt.toStringTag:r;var tn=function(){try{var r=Mu(Object,"defineProperty");r({},"",{});return r}catch(r){}}();var nn=Object.getOwnPropertySymbols,en=Nt?Nt.isBuffer:r,un=kt(Object.keys,Object),an=Math.max,fn=Math.min,on=Date.now;var cn=Mu(Jr,"DataView"),ln=Mu(Jr,"Map"),sn=Mu(Jr,"Promise"),vn=Mu(Jr,"Set"),hn=Mu(Jr,"WeakMap"),pn=Mu(Object,"create");var gn=hn&&new hn;var yn={};var _n=_i(cn),wn=_i(ln),bn=_i(sn),dn=_i(vn),jn=_i(hn);var mn=Vt?Vt.prototype:r,On=mn?mn.valueOf:r,An=mn?mn.toString:r;function xn(){}var zn=function(){function t(){}return function(n){if(!oa(n)){return{}}if(Jt){return Jt(n)}t.prototype=n;var e=new t;t.prototype=r;return e}}();function kn(){}function Sn(r){this.__wrapped__=r;this.__actions__=[];this.__dir__=1;this.__filtered__=false;this.__iteratees__=[];this.__takeCount__=S;this.__views__=[]}Sn.prototype=zn(kn.prototype);Sn.prototype.constructor=Sn;function En(r){var t=-1,n=r==null?0:r.length;this.clear();while(++t<n){var e=r[t];this.set(e[0],e[1])}}function Tn(){this.__data__=pn?pn(null):{};this.size=0}function $n(r){var t=this.has(r)&&delete this.__data__[r];this.size-=t?1:0;return t}function In(t){var n=this.__data__;if(pn){var e=n[t];return e===u?r:e}return Ft.call(n,t)?n[t]:r}function Bn(t){var n=this.__data__;return pn?n[t]!==r:Ft.call(n,t)}function Wn(t,n){var e=this.__data__;this.size+=this.has(t)?0:1;e[t]=pn&&n===r?u:n;return this}En.prototype.clear=Tn;En.prototype["delete"]=$n;En.prototype.get=In;En.prototype.has=Bn;En.prototype.set=Wn;function Ln(r){var t=-1,n=r==null?0:r.length;this.clear();while(++t<n){var e=r[t];this.set(e[0],e[1])}}function Mn(){this.__data__=[];this.size=0}function Pn(r){var t=this.__data__,n=ie(t,r);if(n<0){return false}var e=t.length-1;if(n==e){t.pop()}else{Xt.call(t,n,1)}--this.size;return true}function Dn(t){var n=this.__data__,e=ie(n,t);return e<0?r:n[e][1]}function Fn(r){return ie(this.__data__,r)>-1}function qn(r,t){var n=this.__data__,e=ie(n,r);if(e<0){++this.size;n.push([r,t])}else{n[e][1]=t}return this}Ln.prototype.clear=Mn;Ln.prototype["delete"]=Pn;Ln.prototype.get=Dn;Ln.prototype.has=Fn;Ln.prototype.set=qn;function Rn(r){var t=-1,n=r==null?0:r.length;this.clear();while(++t<n){var e=r[t];this.set(e[0],e[1])}}function Cn(){this.size=0;this.__data__={hash:new En,map:new(ln||Ln),string:new En}}function Un(r){var t=Wu(this,r)["delete"](r);this.size-=t?1:0;return t}function Nn(r){return Wu(this,r).get(r)}function Vn(r){return Wu(this,r).has(r)}function Gn(r,t){var n=Wu(this,r),e=n.size;n.set(r,t);this.size+=n.size==e?0:1;return this}Rn.prototype.clear=Cn;Rn.prototype["delete"]=Un;Rn.prototype.get=Nn;Rn.prototype.has=Vn;Rn.prototype.set=Gn;function Kn(r){var t=-1,n=r==null?0:r.length;this.__data__=new Rn;while(++t<n){this.add(r[t])}}function Hn(r){this.__data__.set(r,u);return this}function Jn(r){return this.__data__.has(r)}Kn.prototype.add=Kn.prototype.push=Hn;Kn.prototype.has=Jn;function Qn(r){var t=this.__data__=new Ln(r);this.size=t.size}function Xn(){this.__data__=new Ln;this.size=0}function Yn(r){var t=this.__data__,n=t["delete"](r);this.size=t.size;return n}function Zn(r){return this.__data__.get(r)}function re(r){return this.__data__.has(r)}function te(r,t){var e=this.__data__;if(e instanceof Ln){var u=e.__data__;if(!ln||u.length<n-1){u.push([r,t]);this.size=++e.size;return this}e=this.__data__=new Rn(u)}e.set(r,t);this.size=e.size;return this}Qn.prototype.clear=Xn;Qn.prototype["delete"]=Yn;Qn.prototype.get=Zn;Qn.prototype.has=re;Qn.prototype.set=te;function ne(r,t){var n=ra(r),e=!n&&Zi(r),u=!n&&!e&&ea(r),i=!n&&!e&&!u&&ya(r),a=n||e||u||i,f=a?_t(r.length,String):[],o=f.length;for(var c in r){if((t||Ft.call(r,c))&&!(a&&(c=="length"||u&&(c=="offset"||c=="parent")||i&&(c=="buffer"||c=="byteLength"||c=="byteOffset")||Hu(c,o)))){f.push(c)}}return f}function ee(t,n,e){if(e!==r&&!Yi(t[n],e)||e===r&&!(n in t)){oe(t,n,e)}}function ue(t,n,e){var u=t[n];if(!(Ft.call(t,n)&&Yi(u,e))||e===r&&!(n in t)){oe(t,n,e)}}function ie(r,t){var n=r.length;while(n--){if(Yi(r[n][0],t)){return n}}return-1}function ae(r,t){return r&&cu(t,xa(t),r)}function fe(r,t){return r&&cu(t,za(t),r)}function oe(r,t,n){if(t=="__proto__"&&tn){tn(r,t,{configurable:true,enumerable:true,value:n,writable:true})}else{r[t]=n}}function ce(t,n,e,u,i,a){var l,s=n&f,v=n&o,h=n&c;if(e){l=i?e(t,u,i,a):e(t)}if(l!==r){return l}if(!oa(t)){return t}var p=ra(t);if(p){l=Uu(t);if(!s){return ou(t,l)}}else{var g=qu(t),y=g==M||g==P;if(ea(t)){return ru(t,s)}if(g==R||g==T||y&&!i){l=v||y?{}:Nu(t);if(!s){return v?su(t,fe(l,t)):lu(t,ae(l,t))}}else{if(!Vr[g]){return i?t:{}}l=Vu(t,g,s)}}a||(a=new Qn);var _=a.get(t);if(_){return _}a.set(t,l);if(ha(t)){t.forEach(function(r){l.add(ce(r,n,e,r,t,a))})}else if(la(t)){t.forEach(function(r,u){l.set(u,ce(r,n,e,u,t,a))})}var w=h?v?Eu:Su:v?za:xa;var b=p?r:w(t);it(b||t,function(r,u){if(b){u=r;r=t[u]}ue(l,u,ce(r,n,e,u,t,a))});return l}function le(r,t,e,u){var i=-1,a=ft,f=true,o=r.length,c=[],l=t.length;if(!o){return c}if(e){t=ct(t,bt(e))}if(u){a=ot;f=false}else if(t.length>=n){a=jt;f=false;t=new Kn(t)}r:while(++i<o){var s=r[i],v=e==null?s:e(s);s=u||s!==0?s:0;if(f&&v===v){var h=l;while(h--){if(t[h]===v){continue r}}c.push(s)}else if(!a(t,v,u)){c.push(s)}}return c}var se=hu(ge);function ve(t,n,e){var u=-1,i=t.length;while(++u<i){var a=t[u],f=n(a);if(f!=null&&(o===r?f===f&&!ga(f):e(f,o))){var o=f,c=a}}return c}function he(r,t,n,e,u){var i=-1,a=r.length;n||(n=Ku);u||(u=[]);while(++i<a){var f=r[i];if(t>0&&n(f)){if(t>1){he(f,t-1,n,e,u)}else{lt(u,f)}}else if(!e){u[u.length]=f}}return u}var pe=pu();function ge(r,t){return r&&pe(r,t,xa)}function ye(t,n){n=Ze(n,t);var e=0,u=n.length;while(t!=null&&e<u){t=t[yi(n[e++])]}return e&&e==u?t:r}function _e(r,t,n){var e=t(r);return ra(r)?e:lt(e,n(r))}function we(t){if(t==null){return t===r?H:q}return rn&&rn in Object(t)?Pu(t):ai(t)}function be(r,t){return r>t}function de(r,t){return r!=null&&t in Object(r)}function je(t,n,e){var u=e?ot:ft,i=t[0].length,a=t.length,f=a,o=Array(a),c=Infinity,l=[];while(f--){var s=t[f];if(f&&n){s=ct(s,bt(n))}c=fn(s.length,c);o[f]=!e&&(n||i>=120&&s.length>=120)?new Kn(f&&s):r}s=t[0];var v=-1,h=o[0];r:while(++v<i&&l.length<c){var p=s[v],g=n?n(p):p;p=e||p!==0?p:0;if(!(h?jt(h,g):u(l,g,e))){f=a;while(--f){var y=o[f];if(!(y?jt(y,g):u(t[f],g,e))){continue r}}if(h){h.push(g)}l.push(p)}}return l}function me(r){return ca(r)&&we(r)==T}function Oe(r,t,n,e,u){if(r===t){return true}if(r==null||t==null||!ca(r)&&!ca(t)){return r!==r&&t!==t}return Ae(r,t,n,e,Oe,u)}function Ae(r,t,n,e,u,i){var a=ra(r),f=ra(t),o=a?$:qu(r),c=f?$:qu(t);o=o==T?R:o;c=c==T?R:c;var s=o==R,v=c==R,h=o==c;if(h&&ea(r)){if(!ea(t)){return false}a=true;s=false}if(h&&!s){i||(i=new Qn);return a||ya(r)?Au(r,t,n,e,u,i):xu(r,t,o,n,e,u,i)}if(!(n&l)){var p=s&&Ft.call(r,"__wrapped__"),g=v&&Ft.call(t,"__wrapped__");if(p||g){var y=p?r.value():r,_=g?t.value():t;i||(i=new Qn);return u(y,_,n,e,i)}}if(!h){return false}i||(i=new Qn);return zu(r,t,n,e,u,i)}function xe(r){return ca(r)&&qu(r)==D}function ze(t,n,e,u){var i=e.length,a=i,f=!u;if(t==null){return!a}t=Object(t);while(i--){var o=e[i];if(f&&o[2]?o[1]!==t[o[0]]:!(o[0]in t)){return false}}while(++i<a){o=e[i];var c=o[0],v=t[c],h=o[1];if(f&&o[2]){if(v===r&&!(c in t)){return false}}else{var p=new Qn;if(u){var g=u(v,h,c,t,n,p)}if(!(g===r?Oe(h,v,l|s,u,p):g)){return false}}}return true}function ke(r){if(!oa(r)||Zu(r)){return false}var t=aa(r)?Ut:dr;return t.test(_i(r))}function Se(r){return ca(r)&&qu(r)==V}function Ee(r){return ca(r)&&fa(r.length)&&!!Nr[we(r)]}function Te(r){if(typeof r=="function"){return r}if(r==null){return Wa}if(typeof r=="object"){return ra(r)?Me(r[0],r[1]):Le(r)}return Pa(r)}function $e(r){if(!ri(r)){return un(r)}var t=[];for(var n in Object(r)){if(Ft.call(r,n)&&n!="constructor"){t.push(n)}}return t}function Ie(r){if(!oa(r)){return ii(r)}var t=ri(r),n=[];for(var e in r){if(!(e=="constructor"&&(t||!Ft.call(r,e)))){n.push(e)}}return n}function Be(r,t){return r<t}function We(r,t){var n=-1,e=ta(r)?Array(r.length):[];se(r,function(r,u,i){e[++n]=t(r,u,i)});return e}function Le(r){var t=Lu(r);if(t.length==1&&t[0][2]){return ni(t[0][0],t[0][1])}return function(n){return n===r||ze(n,r,t)}}function Me(t,n){if(Qu(t)&&ti(n)){return ni(yi(t),n)}return function(e){var u=Oa(e,t);return u===r&&u===n?Aa(e,t):Oe(n,u,l|s)}}function Pe(t,n,e,u,i){if(t===n){return}pe(n,function(a,f){i||(i=new Qn);if(oa(a)){De(t,n,f,e,Pe,u,i)}else{var o=u?u(li(t,f),a,f+"",t,n,i):r;if(o===r){o=a}ee(t,f,o)}},za)}function De(t,n,e,u,i,a,f){var o=li(t,e),c=li(n,e),l=f.get(c);if(l){ee(t,e,l);return}var s=a?a(o,c,e+"",t,n,f):r;var v=s===r;if(v){var h=ra(c),p=!h&&ea(c),g=!h&&!p&&ya(c);s=c;if(h||p||g){if(ra(o)){s=o}else if(na(o)){s=ou(o)}else if(p){v=false;s=ru(c,true)}else if(g){v=false;s=iu(c,true)}else{s=[]}}else if(va(c)||Zi(c)){s=o;if(Zi(o)){s=ja(o)}else if(!oa(o)||aa(o)){s=Nu(c)}}else{v=false}}if(v){f.set(c,s);i(s,c,u,a,f);f["delete"](c)}ee(t,e,s)}function Fe(r,t){return qe(r,t,function(t,n){return Aa(r,n)})}function qe(r,t,n){var e=-1,u=t.length,i={};while(++e<u){var a=t[e],f=ye(r,a);if(n(f,a)){Ue(i,Ze(a,r),f)}}return i}function Re(r){return function(t){return ye(t,r)}}function Ce(r,t){return vi(fi(r,t,Wa),r+"")}function Ue(t,n,e,u){if(!oa(t)){return t}n=Ze(n,t);var i=-1,a=n.length,f=a-1,o=t;while(o!=null&&++i<a){var c=yi(n[i]),l=e;if(c==="__proto__"||c==="constructor"||c==="prototype"){return t}if(i!=f){var s=o[c];l=u?u(s,c,o):r;if(l===r){l=oa(s)?s:Hu(n[i+1])?[]:{}}}ue(o,c,l);o=o[c]}return t}var Ne=!gn?Wa:function(r,t){gn.set(r,t);return r};var Ve=!tn?Wa:function(r,t){return tn(r,"toString",{configurable:true,enumerable:false,value:Ba(t),writable:true})};function Ge(r,t,n){var e=-1,u=r.length;if(t<0){t=-t>u?0:u+t}n=n>u?u:n;if(n<0){n+=u}u=t>n?0:n-t>>>0;t>>>=0;var i=Array(u);while(++e<u){i[e]=r[e+t]}return i}function Ke(r){if(typeof r=="string"){return r}if(ra(r)){return ct(r,Ke)+""}if(ga(r)){return An?An.call(r):""}var t=r+"";return t=="0"&&1/r==-A?"-0":t}function He(r,t,e){var u=-1,i=ft,a=r.length,f=true,o=[],c=o;if(e){f=false;i=ot}else if(a>=n){var l=t?null:ju(r);if(l){return Et(l)}f=false;i=jt;c=new Kn}else{c=t?[]:o}r:while(++u<a){var s=r[u],v=t?t(s):s;s=e||s!==0?s:0;if(f&&v===v){var h=c.length;while(h--){if(c[h]===v){continue r}}if(t){c.push(v)}o.push(s)}else if(!i(c,v,e)){if(c!==o){c.push(v)}o.push(s)}}return o}function Je(r,t){t=Ze(t,r);r=oi(r,t);return r==null||delete r[yi(Ei(t))]}function Qe(r,t,n){var e=r.length;if(e<2){return e?He(r[0]):[]}var u=-1,i=Array(e);while(++u<e){var a=r[u],f=-1;while(++f<e){if(f!=u){i[u]=le(i[u]||a,r[f],t,n)}}}return He(he(i,1),t,n)}function Xe(t,n,e){var u=-1,i=t.length,a=n.length,f={};while(++u<i){var o=u<a?n[u]:r;e(f,t[u],o)}return f}function Ye(r){return na(r)?r:[]}function Ze(r,t){if(ra(r)){return r}return Qu(r,t)?[r]:gi(ma(r))}function ru(r,t){if(t){return r.slice()}var n=r.length,e=Kt?Kt(n):new r.constructor(n);r.copy(e);return e}function tu(r){var t=new r.constructor(r.byteLength);new Gt(t).set(new Gt(r));return t}function nu(r,t){var n=t?tu(r.buffer):r.buffer;return new r.constructor(n,r.byteOffset,r.byteLength)}function eu(r){var t=new r.constructor(r.source,_r.exec(r));t.lastIndex=r.lastIndex;return t}function uu(r){return On?Object(On.call(r)):{}}function iu(r,t){var n=t?tu(r.buffer):r.buffer;return new r.constructor(n,r.byteOffset,r.length)}function au(r,t,n,e){var u=-1,i=r.length,a=n.length,f=-1,o=t.length,c=an(i-a,0),l=Array(o+c),s=!e;while(++f<o){l[f]=t[f]}while(++u<a){if(s||u<i){l[n[u]]=r[u]}}while(c--){l[f++]=r[u++]}return l}function fu(r,t,n,e){var u=-1,i=r.length,a=-1,f=n.length,o=-1,c=t.length,l=an(i-f,0),s=Array(l+c),v=!e;while(++u<l){s[u]=r[u]}var h=u;while(++o<c){s[h+o]=t[o]}while(++a<f){if(v||u<i){s[h+n[a]]=r[u++]}}return s}function ou(r,t){var n=-1,e=r.length;t||(t=Array(e));while(++n<e){t[n]=r[n]}return t}function cu(t,n,e,u){var i=!e;e||(e={});var a=-1,f=n.length;while(++a<f){var o=n[a];var c=u?u(e[o],t[o],o,e,t):r;if(c===r){c=t[o]}if(i){oe(e,o,c)}else{ue(e,o,c)}}return e}function lu(r,t){return cu(r,Du(r),t)}function su(r,t){return cu(r,Fu(r),t)}function vu(t){return Ce(function(n,e){var u=-1,i=e.length,a=i>1?e[i-1]:r,f=i>2?e[2]:r;a=t.length>3&&typeof a=="function"?(i--,a):r;if(f&&Ju(e[0],e[1],f)){a=i<3?r:a;i=1}n=Object(n);while(++u<i){var o=e[u];if(o){t(n,o,u,a)}}return n})}function hu(r,t){return function(n,e){if(n==null){return n}if(!ta(n)){return r(n,e)}var u=n.length,i=t?u:-1,a=Object(n);while(t?i--:++i<u){if(e(a[i],i,a)===false){break}}return n}}function pu(r){return function(t,n,e){var u=-1,i=Object(t),a=e(t),f=a.length;while(f--){var o=a[r?f:++u];if(n(i[o],o,i)===false){break}}return t}}function gu(r,t,n){var e=t&v,u=yu(r);function i(){var t=this&&this!==Jr&&this instanceof i?u:r;return t.apply(e?n:this,arguments)}return i}function yu(r){return function(){var t=arguments;switch(t.length){case 0:return new r;case 1:return new r(t[0]);case 2:return new r(t[0],t[1]);case 3:return new r(t[0],t[1],t[2]);case 4:return new r(t[0],t[1],t[2],t[3]);case 5:return new r(t[0],t[1],t[2],t[3],t[4]);case 6:return new r(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new r(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var n=zn(r.prototype),e=r.apply(n,t);return oa(e)?e:n}}function _u(t,n,e){var u=yu(t);function i(){var a=arguments.length,f=Array(a),o=a,c=Iu(i);while(o--){f[o]=arguments[o]}var l=a<3&&f[0]!==c&&f[a-1]!==c?[]:St(f,c);a-=l.length;if(a<e){return du(t,n,wu,i.placeholder,r,f,l,r,r,e-a)}var s=this&&this!==Jr&&this instanceof i?u:t;return ut(s,this,f)}return i}function wu(t,n,e,u,i,a,f,o,c,l){var s=n&b,p=n&v,_=n&h,w=n&(g|y),d=n&j,m=_?r:yu(t);function O(){var r=arguments.length,v=Array(r),h=r;while(h--){v[h]=arguments[h]}if(w){var g=Iu(O),y=mt(v,g)}if(u){v=au(v,u,i,w)}if(a){v=fu(v,a,f,w)}r-=y;if(w&&r<l){var b=St(v,g);return du(t,n,wu,O.placeholder,e,v,b,o,c,l-r)}var j=p?e:this,A=_?j[t]:t;r=v.length;if(o){v=ci(v,o)}else if(d&&r>1){v.reverse()}if(s&&c<r){v.length=c}if(this&&this!==Jr&&this instanceof O){A=m||yu(A)}return A.apply(j,v)}return O}function bu(r,t,n,e){var u=t&v,i=yu(r);function a(){var t=-1,f=arguments.length,o=-1,c=e.length,l=Array(c+f),s=this&&this!==Jr&&this instanceof a?i:r;while(++o<c){l[o]=e[o]}while(f--){l[o++]=arguments[++t]}return ut(s,u?n:this,l)}return a}function du(t,n,e,u,i,a,f,o,c,l){var s=n&g,y=s?f:r,b=s?r:f,d=s?a:r,j=s?r:a;n|=s?_:w;n&=~(s?w:_);if(!(n&p)){n&=~(v|h)}var m=[t,n,i,d,y,j,b,o,c,l];var O=e.apply(r,m);if(Yu(t)){si(O,m)}O.placeholder=u;return hi(O,t,n)}var ju=!(vn&&1/Et(new vn([,-0]))[1]==A)?Ma:function(r){return new vn(r)};function mu(t,n,u,i,a,f,o,c){var l=n&h;if(!l&&typeof t!="function"){throw new TypeError(e)}var s=i?i.length:0;if(!s){n&=~(_|w);i=a=r}o=o===r?o:an(ba(o),0);c=c===r?c:ba(c);s-=a?a.length:0;if(n&w){var p=i,b=a;i=a=r}var d=l?r:Tu(t);var j=[t,n,u,i,a,p,b,f,o,c];if(d){ui(j,d)}t=j[0];n=j[1];u=j[2];i=j[3];a=j[4];c=j[9]=j[9]===r?l?0:t.length:an(j[9]-s,0);if(!c&&n&(g|y)){n&=~(g|y)}if(!n||n==v){var m=gu(t,n,u)}else if(n==g||n==y){m=_u(t,n,c)}else if((n==_||n==(v|_))&&!a.length){m=bu(t,n,u,i)}else{m=wu.apply(r,j)}var O=d?Ne:si;return hi(O(m,j),t,n)}function Ou(t){return va(t)?r:t}function Au(t,n,e,u,i,a){var f=e&l,o=t.length,c=n.length;if(o!=c&&!(f&&c>o)){return false}var v=a.get(t);var h=a.get(n);if(v&&h){return v==n&&h==t}var p=-1,g=true,y=e&s?new Kn:r;a.set(t,n);a.set(n,t);while(++p<o){var _=t[p],w=n[p];if(u){var b=f?u(w,_,p,n,t,a):u(_,w,p,t,n,a)}if(b!==r){if(b){continue}g=false;break}if(y){if(!st(n,function(r,t){if(!jt(y,t)&&(_===r||i(_,r,e,u,a))){return y.push(t)}})){g=false;break}}else if(!(_===w||i(_,w,e,u,a))){g=false;break}}a["delete"](t);a["delete"](n);return g}function xu(r,t,n,e,u,i,a){switch(n){case X:if(r.byteLength!=t.byteLength||r.byteOffset!=t.byteOffset){return false}r=r.buffer;t=t.buffer;case Q:if(r.byteLength!=t.byteLength||!i(new Gt(r),new Gt(t))){return false}return true;case B:case W:case F:return Yi(+r,+t);case L:return r.name==t.name&&r.message==t.message;case N:case G:return r==t+"";case D:var f=zt;case V:var o=e&l;f||(f=Et);if(r.size!=t.size&&!o){return false}var c=a.get(r);if(c){return c==t}e|=s;a.set(r,t);var v=Au(f(r),f(t),e,u,i,a);a["delete"](r);return v;case K:if(On){return On.call(r)==On.call(t)}}return false}function zu(t,n,e,u,i,a){var f=e&l,o=Su(t),c=o.length,s=Su(n),v=s.length;if(c!=v&&!f){return false}var h=c;while(h--){var p=o[h];if(!(f?p in n:Ft.call(n,p))){return false}}var g=a.get(t);var y=a.get(n);if(g&&y){return g==n&&y==t}var _=true;a.set(t,n);a.set(n,t);var w=f;while(++h<c){p=o[h];var b=t[p],d=n[p];if(u){var j=f?u(d,b,p,n,t,a):u(b,d,p,t,n,a)}if(!(j===r?b===d||i(b,d,e,u,a):j)){_=false;break}w||(w=p=="constructor")}if(_&&!w){var m=t.constructor,O=n.constructor;if(m!=O&&("constructor"in t&&"constructor"in n)&&!(typeof m=="function"&&m instanceof m&&typeof O=="function"&&O instanceof O)){_=false}}a["delete"](t);a["delete"](n);return _}function ku(t){return vi(fi(t,r,Oi),t+"")}function Su(r){return _e(r,xa,Du)}function Eu(r){return _e(r,za,Fu)}var Tu=!gn?Ma:function(r){return gn.get(r)};function $u(r){var t=r.name+"",n=yn[t],e=Ft.call(yn,t)?n.length:0;while(e--){var u=n[e],i=u.func;if(i==null||i==r){return u.name}}return t}function Iu(r){var t=Ft.call(xn,"placeholder")?xn:r;return t.placeholder}function Bu(){var r=xn.iteratee||La;r=r===La?Te:r;return arguments.length?r(arguments[0],arguments[1]):r}function Wu(r,t){var n=r.__data__;return Xu(t)?n[typeof t=="string"?"string":"hash"]:n.map}function Lu(r){var t=xa(r),n=t.length;while(n--){var e=t[n],u=r[e];t[n]=[e,u,ti(u)]}return t}function Mu(t,n){var e=Ot(t,n);return ke(e)?e:r}function Pu(t){var n=Ft.call(t,rn),e=t[rn];try{t[rn]=r;var u=true}catch(r){}var i=Rt.call(t);if(u){if(n){t[rn]=e}else{delete t[rn]}}return i}var Du=!nn?Da:function(r){if(r==null){return[]}r=Object(r);return at(nn(r),function(t){return Qt.call(r,t)})};var Fu=!nn?Da:function(r){var t=[];while(r){lt(t,Du(r));r=Ht(r)}return t};var qu=we;if(cn&&qu(new cn(new ArrayBuffer(1)))!=X||ln&&qu(new ln)!=D||sn&&qu(sn.resolve())!=C||vn&&qu(new vn)!=V||hn&&qu(new hn)!=J){qu=function(t){var n=we(t),e=n==R?t.constructor:r,u=e?_i(e):"";if(u){switch(u){case _n:return X;case wn:return D;case bn:return C;case dn:return V;case jn:return J}}return n}}function Ru(r){var t=r.match(pr);return t?t[1].split(gr):[]}function Cu(r,t,n){t=Ze(t,r);var e=-1,u=t.length,i=false;while(++e<u){var a=yi(t[e]);if(!(i=r!=null&&n(r,a))){break}r=r[a]}if(i||++e!=u){return i}u=r==null?0:r.length;return!!u&&fa(u)&&Hu(a,u)&&(ra(r)||Zi(r))}function Uu(r){var t=r.length,n=new r.constructor(t);if(t&&typeof r[0]=="string"&&Ft.call(r,"index")){n.index=r.index;n.input=r.input}return n}function Nu(r){return typeof r.constructor=="function"&&!ri(r)?zn(Ht(r)):{}}function Vu(r,t,n){var e=r.constructor;switch(t){case Q:return tu(r);case B:case W:return new e(+r);case X:return nu(r,n);case Y:case Z:case rr:case tr:case nr:case er:case ur:case ir:case ar:return iu(r,n);case D:return new e;case F:case G:return new e(r);case N:return eu(r);case V:return new e;case K:return uu(r)}}function Gu(r,t){var n=t.length;if(!n){return r}var e=n-1;t[e]=(n>1?"& ":"")+t[e];t=t.join(n>2?", ":" ");return r.replace(hr,"{\n/* [wrapped with "+t+"] */\n")}function Ku(r){return ra(r)||Zi(r)||!!(Yt&&r&&r[Yt])}function Hu(r,t){var n=typeof r;t=t==null?x:t;return!!t&&(n=="number"||n!="symbol"&&mr.test(r))&&(r>-1&&r%1==0&&r<t)}function Ju(r,t,n){if(!oa(n)){return false}var e=typeof t;if(e=="number"?ta(n)&&Hu(t,n.length):e=="string"&&t in n){return Yi(n[t],r)}return false}function Qu(r,t){if(ra(r)){return false}var n=typeof r;if(n=="number"||n=="symbol"||n=="boolean"||r==null||ga(r)){return true}return or.test(r)||!fr.test(r)||t!=null&&r in Object(t)}function Xu(r){var t=typeof r;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?r!=="__proto__":r===null}function Yu(r){var t=$u(r),n=xn[t];if(typeof n!="function"||!(t in Sn.prototype)){return false}if(r===n){return true}var e=Tu(n);return!!e&&r===e[0]}function Zu(r){return!!qt&&qt in r}function ri(r){var t=r&&r.constructor,n=typeof t=="function"&&t.prototype||Mt;return r===n}function ti(r){return r===r&&!oa(r)}function ni(t,n){return function(e){if(e==null){return false}return e[t]===n&&(n!==r||t in Object(e))}}function ei(r){var t=Ji(r,function(r){if(n.size===i){n.clear()}return r});var n=t.cache;return t}function ui(r,t){var n=r[1],e=t[1],u=n|e,i=u<(v|h|b);var f=e==b&&n==g||e==b&&n==d&&r[7].length<=t[8]||e==(b|d)&&t[7].length<=t[8]&&n==g;if(!(i||f)){return r}if(e&v){r[2]=t[2];u|=n&v?0:p}var o=t[3];if(o){var c=r[3];r[3]=c?au(c,o,t[4]):o;r[4]=c?St(r[3],a):t[4]}o=t[5];if(o){c=r[5];r[5]=c?fu(c,o,t[6]):o;r[6]=c?St(r[5],a):t[6]}o=t[7];if(o){r[7]=o}if(e&b){r[8]=r[8]==null?t[8]:fn(r[8],t[8])}if(r[9]==null){r[9]=t[9]}r[0]=t[0];r[1]=u;return r}function ii(r){var t=[];if(r!=null){for(var n in Object(r)){t.push(n)}}return t}function ai(r){return Rt.call(r)}function fi(t,n,e){n=an(n===r?t.length-1:n,0);return function(){var r=arguments,u=-1,i=an(r.length-n,0),a=Array(i);while(++u<i){a[u]=r[n+u]}u=-1;var f=Array(n+1);while(++u<n){f[u]=r[u]}f[n]=e(a);return ut(t,this,f)}}function oi(r,t){return t.length<2?r:ye(r,Ge(t,0,-1))}function ci(t,n){var e=t.length,u=fn(n.length,e),i=ou(t);while(u--){var a=n[u];t[u]=Hu(a,e)?i[a]:r}return t}function li(r,t){if(t==="constructor"&&typeof r[t]==="function"){return}if(t=="__proto__"){return}return r[t]}var si=pi(Ne);var vi=pi(Ve);function hi(r,t,n){var e=t+"";return vi(r,Gu(e,wi(Ru(e),n)))}function pi(t){var n=0,e=0;return function(){var u=on(),i=O-(u-e);e=u;if(i>0){if(++n>=m){return arguments[0]}}else{n=0}return t.apply(r,arguments)}}var gi=ei(function(r){var t=[];if(r.charCodeAt(0)===46){t.push("")}r.replace(cr,function(r,n,e,u){t.push(e?u.replace(yr,"$1"):n||r)});return t});function yi(r){if(typeof r=="string"||ga(r)){return r}var t=r+"";return t=="0"&&1/r==-A?"-0":t}function _i(r){if(r!=null){try{return Dt.call(r)}catch(r){}try{return r+""}catch(r){}}return""}function wi(r,t){it(E,function(n){var e="_."+n[0];if(t&n[1]&&!ft(r,e)){r.push(e)}});return r.sort()}function bi(r){var t=-1,n=r==null?0:r.length,e=0,u=[];while(++t<n){var i=r[t];if(i){u[e++]=i}}return u}var di=Ce(function(r,t){return na(r)?le(r,he(t,1,na,true)):[]});var ji=Ce(function(t,n){var e=Ei(n);if(na(e)){e=r}return na(t)?le(t,he(n,1,na,true),Bu(e,2)):[]});var mi=Ce(function(t,n){var e=Ei(n);if(na(e)){e=r}return na(t)?le(t,he(n,1,na,true),r,e):[]});function Oi(r){var t=r==null?0:r.length;return t?he(r,1):[]}function Ai(r){var t=r==null?0:r.length;return t?he(r,A):[]}function xi(t,n){var e=t==null?0:t.length;if(!e){return[]}n=n===r?1:ba(n);return he(t,n)}var zi=Ce(function(r){var t=ct(r,Ye);return t.length&&t[0]===r[0]?je(t):[]});var ki=Ce(function(t){var n=Ei(t),e=ct(t,Ye);if(n===Ei(e)){n=r}else{e.pop()}return e.length&&e[0]===t[0]?je(e,Bu(n,2)):[]});var Si=Ce(function(t){var n=Ei(t),e=ct(t,Ye);n=typeof n=="function"?n:r;if(n){e.pop()}return e.length&&e[0]===t[0]?je(e,r,n):[]});function Ei(t){var n=t==null?0:t.length;return n?t[n-1]:r}var Ti=Ce(function(r){return He(he(r,1,na,true))});var $i=Ce(function(t){var n=Ei(t);if(na(n)){n=r}return He(he(t,1,na,true),Bu(n,2))});var Ii=Ce(function(t){var n=Ei(t);n=typeof n=="function"?n:r;return He(he(t,1,na,true),r,n)});function Bi(r){return r&&r.length?He(r):[]}function Wi(r,t){return r&&r.length?He(r,Bu(t,2)):[]}function Li(t,n){n=typeof n=="function"?n:r;return t&&t.length?He(t,r,n):[]}var Mi=Ce(function(r,t){return na(r)?le(r,t):[]});var Pi=Ce(function(r){return Qe(at(r,na))});var Di=Ce(function(t){var n=Ei(t);if(na(n)){n=r}return Qe(at(t,na),Bu(n,2))});var Fi=Ce(function(t){var n=Ei(t);n=typeof n=="function"?n:r;return Qe(at(t,na),r,n)});function qi(r,t){return Xe(r||[],t||[],ue)}function Ri(r,t){return Xe(r||[],t||[],Ue)}function Ci(r,t){return he(Vi(r,t),1)}function Ui(r,t){return he(Vi(r,t),A)}function Ni(t,n,e){e=e===r?1:ba(e);return he(Vi(t,n),e)}function Vi(r,t){var n=ra(r)?ct:We;return n(r,Bu(t,3))}var Gi=function(){return Jr.Date.now()};function Ki(t,n,e){n=e?r:n;var u=mu(t,g,r,r,r,r,r,n);u.placeholder=Ki.placeholder;return u}function Hi(t,n,u){var i,a,f,o,c,l,s=0,v=false,h=false,p=true;if(typeof t!="function"){throw new TypeError(e)}n=da(n)||0;if(oa(u)){v=!!u.leading;h="maxWait"in u;f=h?an(da(u.maxWait)||0,n):f;p="trailing"in u?!!u.trailing:p}function g(n){var e=i,u=a;i=a=r;s=n;o=t.apply(u,e);return o}function y(r){s=r;c=setTimeout(b,n);return v?g(r):o}function _(r){var t=r-l,e=r-s,u=n-t;return h?fn(u,f-e):u}function w(t){var e=t-l,u=t-s;return l===r||e>=n||e<0||h&&u>=f}function b(){var r=Gi();if(w(r)){return d(r)}c=setTimeout(b,_(r))}function d(t){c=r;if(p&&i){return g(t)}i=a=r;return o}function j(){if(c!==r){clearTimeout(c)}s=0;i=l=a=c=r}function m(){return c===r?o:d(Gi())}function O(){var t=Gi(),e=w(t);i=arguments;a=this;l=t;if(e){if(c===r){return y(l)}if(h){clearTimeout(c);c=setTimeout(b,n);return g(l)}}if(c===r){c=setTimeout(b,n)}return o}O.cancel=j;O.flush=m;return O}function Ji(r,t){if(typeof r!="function"||t!=null&&typeof t!="function"){throw new TypeError(e)}var n=function(){var e=arguments,u=t?t.apply(this,e):e[0],i=n.cache;if(i.has(u)){return i.get(u)}var a=r.apply(this,e);n.cache=i.set(u,a)||i;return a};n.cache=new(Ji.Cache||Rn);return n}Ji.Cache=Rn;function Qi(r,t,n){var u=true,i=true;if(typeof r!="function"){throw new TypeError(e)}if(oa(n)){u="leading"in n?!!n.leading:u;i="trailing"in n?!!n.trailing:i}return Hi(r,t,{leading:u,maxWait:t,trailing:i})}function Xi(){if(!arguments.length){return[]}var r=arguments[0];return ra(r)?r:[r]}function Yi(r,t){return r===t||r!==r&&t!==t}var Zi=me(function(){return arguments}())?me:function(r){return ca(r)&&Ft.call(r,"callee")&&!Qt.call(r,"callee")};var ra=Array.isArray;function ta(r){return r!=null&&fa(r.length)&&!aa(r)}function na(r){return ca(r)&&ta(r)}var ea=en||Fa;function ua(r,t){return Oe(r,t)}function ia(t,n,e){e=typeof e=="function"?e:r;var u=e?e(t,n):r;return u===r?Oe(t,n,r,e):!!u}function aa(r){if(!oa(r)){return false}var t=we(r);return t==M||t==P||t==I||t==U}function fa(r){return typeof r=="number"&&r>-1&&r%1==0&&r<=x}function oa(r){var t=typeof r;return r!=null&&(t=="object"||t=="function")}function ca(r){return r!=null&&typeof r=="object"}var la=tt?bt(tt):xe;function sa(r){return r==null}function va(r){if(!ca(r)||we(r)!=R){return false}var t=Ht(r);if(t===null){return true}var n=Ft.call(t,"constructor")&&t.constructor;return typeof n=="function"&&n instanceof n&&Dt.call(n)==Ct}var ha=nt?bt(nt):Se;function pa(r){return typeof r=="string"||!ra(r)&&ca(r)&&we(r)==G}function ga(r){return typeof r=="symbol"||ca(r)&&we(r)==K}var ya=et?bt(et):Ee;function _a(r){if(!r){return[]}if(ta(r)){return pa(r)?$t(r):ou(r)}if(Zt&&r[Zt]){return xt(r[Zt]())}var t=qu(r),n=t==D?zt:t==V?Et:Ia;return n(r)}function wa(r){if(!r){return r===0?r:0}r=da(r);if(r===A||r===-A){var t=r<0?-1:1;return t*z}return r===r?r:0}function ba(r){var t=wa(r),n=t%1;return t===t?n?t-n:t:0}function da(r){if(typeof r=="number"){return r}if(ga(r)){return k}if(oa(r)){var t=typeof r.valueOf=="function"?r.valueOf():r;r=oa(t)?t+"":t}if(typeof r!="string"){return r===0?r:+r}r=wt(r);var n=br.test(r);return n||jr.test(r)?Gr(r.slice(2),n?2:8):wr.test(r)?k:+r}function ja(r){return cu(r,za(r))}function ma(r){return r==null?"":Ke(r)}function Oa(t,n,e){var u=t==null?r:ye(t,n);return u===r?e:u}function Aa(r,t){return r!=null&&Cu(r,t,de)}function xa(r){return ta(r)?ne(r):$e(r)}function za(r){return ta(r)?ne(r,true):Ie(r)}var ka=vu(function(r,t,n){Pe(r,t,n)});var Sa=vu(function(r,t,n,e){Pe(r,t,n,e)});var Ea=ku(function(r,t){var n={};if(r==null){return n}var e=false;t=ct(t,function(t){t=Ze(t,r);e||(e=t.length>1);return t});cu(r,Eu(r),n);if(e){n=ce(n,f|o|c,Ou)}var u=t.length;while(u--){Je(n,t[u])}return n});var Ta=ku(function(r,t){return r==null?{}:Fe(r,t)});function $a(r,t){if(r==null){return{}}var n=ct(Eu(r),function(r){return[r]});t=Bu(t);return qe(r,n,function(r,n){return t(r,n[0])})}function Ia(r){return r==null?[]:dt(r,xa(r))}function Ba(r){return function(){return r}}function Wa(r){return r}function La(r){return Te(typeof r=="function"?r:ce(r,f))}function Ma(){}function Pa(r){return Qu(r)?yt(yi(r)):Re(r)}function Da(){return[]}function Fa(){return false}function qa(t){return t&&t.length?ve(t,Wa,be):r}function Ra(t){return t&&t.length?ve(t,Wa,Be):r}xn.castArray=Xi;xn.compact=bi;xn.constant=Ba;xn.curry=Ki;xn.debounce=Hi;xn.difference=di;xn.differenceBy=ji;xn.differenceWith=mi;xn.flatMap=Ci;xn.flatMapDeep=Ui;xn.flatMapDepth=Ni;xn.flatten=Oi;xn.flattenDeep=Ai;xn.flattenDepth=xi;xn.intersection=zi;xn.intersectionBy=ki;xn.intersectionWith=Si;xn.iteratee=La;xn.keys=xa;xn.keysIn=za;xn.map=Vi;xn.memoize=Ji;xn.merge=ka;xn.mergeWith=Sa;xn.omit=Ea;xn.pick=Ta;xn.pickBy=$a;xn.property=Pa;xn.throttle=Qi;xn.toArray=_a;xn.toPlainObject=ja;xn.union=Ti;xn.unionBy=$i;xn.unionWith=Ii;xn.uniq=Bi;xn.uniqBy=Wi;xn.uniqWith=Li;xn.values=Ia;xn.without=Mi;xn.xor=Pi;xn.xorBy=Di;xn.xorWith=Fi;xn.zipObject=qi;xn.zipObjectDeep=Ri;xn.eq=Yi;xn.get=Oa;xn.hasIn=Aa;xn.identity=Wa;xn.isArguments=Zi;xn.isArray=ra;xn.isArrayLike=ta;xn.isArrayLikeObject=na;xn.isBuffer=ea;xn.isEqual=ua;xn.isEqualWith=ia;xn.isFunction=aa;xn.isLength=fa;xn.isMap=la;xn.isNil=sa;xn.isObject=oa;xn.isObjectLike=ca;xn.isPlainObject=va;xn.isSet=ha;xn.isString=pa;xn.isSymbol=ga;xn.isTypedArray=ya;xn.last=Ei;xn.max=qa;xn.min=Ra;xn.stubArray=Da;xn.stubFalse=Fa;xn.noop=Ma;xn.now=Gi;xn.toFinite=wa;xn.toInteger=ba;xn.toNumber=da;xn.toString=ma;xn.VERSION=t;Ki.placeholder=xn;return xn});
/*!
 * Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
 * Version 2.0.0, see https://github.com/sindresorhus/p-cancelable/tree/v2.0.0
 */
sap.ui.predefine("sap/base/util/restricted/_CancelablePromise", function(){"use strict";function e(e,n){var r;if(typeof Symbol==="undefined"||e[Symbol.iterator]==null){if(Array.isArray(e)||(r=t(e))||n&&e&&typeof e.length==="number"){if(r)e=r;var o=0;var i=function e(){};return{s:i,n:function t(){if(o>=e.length)return{done:true};return{done:false,value:e[o++]}},e:function e(t){throw t},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var u=true,c=false,f;return{s:function t(){r=e[Symbol.iterator]()},n:function e(){var t=r.next();u=t.done;return t},e:function e(t){c=true;f=t},f:function e(){try{if(!u&&r.return!=null)r.return()}finally{if(c)throw f}}}}function t(e,t){if(!e)return;if(typeof e==="string")return n(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor)r=e.constructor.name;if(r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return n(e,t)}function n(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++){r[n]=e[n]}return r}function r(e){"@babel/helpers - typeof";if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){r=function e(t){return typeof t}}else{r=function e(t){return t&&typeof Symbol==="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t}}return r(e)}function o(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function i(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}function u(e,t,n){if(t)i(e.prototype,t);if(n)i(e,n);return e}function c(e,t){if(typeof t!=="function"&&t!==null){throw new TypeError("Super expression must either be null or a function")}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:true,configurable:true}});if(t)d(e,t)}function f(e){var t=y();return function n(){var r=b(e),o;if(t){var i=b(this).constructor;o=Reflect.construct(r,arguments,i)}else{o=r.apply(this,arguments)}return a(this,o)}}function a(e,t){if(t&&(r(t)==="object"||typeof t==="function")){return t}return l(e)}function l(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function s(e){var t=typeof Map==="function"?new Map:undefined;s=function e(n){if(n===null||!h(n))return n;if(typeof n!=="function"){throw new TypeError("Super expression must either be null or a function")}if(typeof t!=="undefined"){if(t.has(n))return t.get(n);t.set(n,r)}function r(){return p(n,arguments,b(this).constructor)}r.prototype=Object.create(n.prototype,{constructor:{value:r,enumerable:false,writable:true,configurable:true}});return d(r,n)};return s(e)}function p(e,t,n){if(y()){p=Reflect.construct}else{p=function e(t,n,r){var o=[null];o.push.apply(o,n);var i=Function.bind.apply(t,o);var u=new i;if(r)d(u,r.prototype);return u}}return p.apply(null,arguments)}function y(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Date.prototype.toString.call(Reflect.construct(Date,[],function(){}));return true}catch(e){return false}}function h(e){return Function.toString.call(e).indexOf("[native code]")!==-1}function d(e,t){d=Object.setPrototypeOf||function e(t,n){t.__proto__=n;return t};return d(e,t)}function b(e){b=Object.setPrototypeOf?Object.getPrototypeOf:function e(t){return t.__proto__||Object.getPrototypeOf(t)};return b(e)}var v=function(e){c(n,e);var t=f(n);function n(e){var r;o(this,n);r=t.call(this,e||"Promise was canceled");r.name="CancelError";return r}u(n,[{key:"isCanceled",get:function e(){return true}}]);return n}(s(Error));var m=function(){u(t,null,[{key:"fn",value:function e(n){return function(){for(var e=arguments.length,r=new Array(e),o=0;o<e;o++){r[o]=arguments[o]}return new t(function(e,t,o){r.push(o);n.apply(void 0,r).then(e,t)})}}}]);function t(e){var n=this;o(this,t);this._cancelHandlers=[];this._isPending=true;this._isCanceled=false;this._rejectOnCancel=true;this._promise=new Promise(function(t,r){n._reject=r;var o=function e(r){n._isPending=false;t(r)};var i=function e(t){n._isPending=false;r(t)};var u=function e(t){if(!n._isPending){throw new Error("The `onCancel` handler was attached after the promise settled.")}n._cancelHandlers.push(t)};Object.defineProperties(u,{shouldReject:{get:function e(){return n._rejectOnCancel},set:function e(t){n._rejectOnCancel=t}}});return e(o,i,u)})}u(t,[{key:"then",value:function e(t,n){return this._promise.then(t,n)}},{key:"catch",value:function e(t){return this._promise.catch(t)}},{key:"finally",value:function e(t){return this._promise.finally(t)}},{key:"cancel",value:function t(n){if(!this._isPending||this._isCanceled){return}if(this._cancelHandlers.length>0){try{var r=e(this._cancelHandlers),o;try{for(r.s();!(o=r.n()).done;){var i=o.value;i()}}catch(e){r.e(e)}finally{r.f()}}catch(e){this._reject(e)}}this._isCanceled=true;if(this._rejectOnCancel){this._reject(new v(n))}}},{key:"isCanceled",get:function e(){return this._isCanceled}}]);return t}();Object.setPrototypeOf(m.prototype,Promise.prototype);m.CancelError=v;return m});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_castArray", ["sap/base/util/restricted/_/lodash.custom"],function(s){"use strict";return s.castArray});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_compact", ["sap/base/util/restricted/_/lodash.custom"],function(t){"use strict";return t.compact});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_curry", ["sap/base/util/restricted/_/lodash.custom"],function(s){"use strict";return s.curry});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_debounce", ["sap/base/util/restricted/_/lodash.custom"],function(e){"use strict";return e.debounce});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_difference", ["sap/base/util/restricted/_/lodash.custom"],function(e){"use strict";return e.difference});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_differenceBy", ["sap/base/util/restricted/_/lodash.custom"],function(e){"use strict";return e.differenceBy});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_differenceWith", ["sap/base/util/restricted/_/lodash.custom"],function(e){"use strict";return e.differenceWith});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_flatMap", ["sap/base/util/restricted/_/lodash.custom"],function(t){"use strict";return t.flatMap});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_flatMapDeep", ["sap/base/util/restricted/_/lodash.custom"],function(e){"use strict";return e.flatMapDeep});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_flatMapDepth", ["sap/base/util/restricted/_/lodash.custom"],function(t){"use strict";return t.flatMapDepth});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_flatten", ["sap/base/util/restricted/_/lodash.custom"],function(t){"use strict";return t.flatten});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_flattenDeep", ["sap/base/util/restricted/_/lodash.custom"],function(e){"use strict";return e.flattenDeep});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_flattenDepth", ["sap/base/util/restricted/_/lodash.custom"],function(t){"use strict";return t.flattenDepth});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_intersection", ["sap/base/util/restricted/_/lodash.custom"],function(t){"use strict";return t.intersection});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_intersectionBy", ["sap/base/util/restricted/_/lodash.custom"],function(t){"use strict";return t.intersectionBy});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_intersectionWith", ["sap/base/util/restricted/_/lodash.custom"],function(t){"use strict";return t.intersectionWith});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_isEqual", ["sap/base/util/restricted/_/lodash.custom"],function(s){"use strict";return s.isEqual});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_isEqualWith", ["sap/base/util/restricted/_/lodash.custom"],function(s){"use strict";return s.isEqualWith});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_isNil", ["sap/base/util/restricted/_/lodash.custom"],function(s){"use strict";return s.isNil});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_max", ["sap/base/util/restricted/_/lodash.custom"],function(s){"use strict";return s.max});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_merge", ["sap/base/util/restricted/_/lodash.custom"],function(e){"use strict";return e.merge});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_mergeWith", ["sap/base/util/restricted/_/lodash.custom"],function(e){"use strict";return e.mergeWith});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_min", ["sap/base/util/restricted/_/lodash.custom"],function(s){"use strict";return s.min});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_omit", ["sap/base/util/restricted/_/lodash.custom"],function(t){"use strict";return t.omit});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_pick", ["sap/base/util/restricted/_/lodash.custom"],function(s){"use strict";return s.pick});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_pickBy", ["sap/base/util/restricted/_/lodash.custom"],function(s){"use strict";return s.pickBy});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_throttle", ["sap/base/util/restricted/_/lodash.custom"],function(t){"use strict";return t.throttle});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_toArray", ["sap/base/util/restricted/_/lodash.custom"],function(t){"use strict";return t.toArray});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_union", ["sap/base/util/restricted/_/lodash.custom"],function(s){"use strict";return s.union});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_unionBy", ["sap/base/util/restricted/_/lodash.custom"],function(s){"use strict";return s.unionBy});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_unionWith", ["sap/base/util/restricted/_/lodash.custom"],function(t){"use strict";return t.unionWith});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_uniq", ["sap/base/util/restricted/_/lodash.custom"],function(s){"use strict";return s.uniq});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_uniqBy", ["sap/base/util/restricted/_/lodash.custom"],function(s){"use strict";return s.uniqBy});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_uniqWith", ["sap/base/util/restricted/_/lodash.custom"],function(t){"use strict";return t.uniqWith});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_without", ["sap/base/util/restricted/_/lodash.custom"],function(t){"use strict";return t.without});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_xor", ["sap/base/util/restricted/_/lodash.custom"],function(s){"use strict";return s.xor});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_xorBy", ["sap/base/util/restricted/_/lodash.custom"],function(s){"use strict";return s.xorBy});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_xorWith", ["sap/base/util/restricted/_/lodash.custom"],function(t){"use strict";return t.xorWith});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_zipObject", ["sap/base/util/restricted/_/lodash.custom"],function(t){"use strict";return t.zipObject});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/restricted/_zipObjectDeep", ["sap/base/util/restricted/_/lodash.custom"],function(e){"use strict";return e.zipObjectDeep});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/syncFetch", ["./fetch","sap/ui/base/SyncPromise"],function(n,t){"use strict";function e(){var n=this.text;var t=this.json;this.text=function(){return n().unwrap()};this.json=function(){return t().unwrap()}}function i(i,r){return n(i,r,{promiseImpl:t,responseMixin:e}).unwrap()}i.ContentTypes=n.ContentTypes;return i});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/base/util/values", function(){"use strict";var e=function e(n){if(typeof n==="undefined"||n===null||n!==n){return[]}return Object.values(n)};return e});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/base/ManagedObjectObserver", ["sap/ui/base/Object","sap/ui/base/ManagedObject","sap/ui/base/EventProvider","sap/base/util/array/uniqueSort","sap/base/util/deepExtend"],function(e,n,t,r,i){"use strict";var a=e.extend("sap.ui.base.ManagedObjectObserver",{constructor:function(n){if(!n&&typeof n!=="function"){throw new Error("Missing callback function in ManagedObjectObserver constructor")}e.call(this);this._fnCallback=n}});a.prototype.observe=function(e,t){if(!(e instanceof n)){if(e==null){return}throw new TypeError("ManagedObjectObserver can only handle ManagedObjects, but observe was called for "+e)}A(e,t);l(e,this,t)};a.prototype.unobserve=function(e,t){if(!(e instanceof n)){if(e==null){return}throw new TypeError("ManagedObjectObserver can only handle ManagedObjects, but unobserve was called for "+e)}if(t){A(e,t)}p(e,this,t)};a.prototype.isObserved=function(e,t){if(!(e instanceof n)){if(e==null){return false}throw new TypeError("ManagedObjectObserver can only handle ManagedObjects, but isObserved was called for "+e)}return v(e,this,t)};a.prototype.disconnect=function(){b(this)};a.prototype.getConfiguration=function(e){return d(e,this)};var s={},o=Object.create(null),u=new WeakMap;s.propertyChange=function(e,n,t,r){c("properties",e,n,function(){return{type:"property",old:t,current:r}})};s.aggregationChange=function(e,n,t,r){c("aggregations",e,n,function(){return{type:"aggregation",mutation:t,children:Array.isArray(r)?r:null,child:!Array.isArray(r)?r:null}})};s.parentChange=function(e,n,t,r){c("parent",e,n,function(){return{type:"parent",mutation:t,parent:r}});var i=t==="unset"?"remove":"insert";s.aggregationChange(r,n,i,e)};s.associationChange=function(e,n,t,r){c("associations",e,n,function(){return{type:"association",mutation:t,ids:r}})};s.eventChange=function(e,n,t,r,i,a){c("events",e,n,function(){return{type:"event",mutation:t,listener:r,func:i,data:a}})};s.bindingChange=function(e,n,t,r,i){c("bindings",e,n,function(){return{type:"binding",mutation:t,bindingInfo:r,memberType:i}})};s.objectDestroyed=function(e){c("destroy",e,null,function(){return{type:"destroy"}});f(e)};function f(e){var n=e.getId();if(o[n]){e.detachEvent("EventHandlerChange",O);for(var t=0;t<o[n].listeners.length;t++){var r=u.get(o[n].listeners[t]);if(r){r.delete(n)}}delete o[n]}delete e._observer}function c(e,n,t,r){var i=n.getId(),a=o[i];if(a){var s;for(var u=0;u<a.listeners.length;u++){if(g(a.configurations[u],e,t)){if(!s){s=r();s.name=t;s.object=n}var f=a.listeners[u];f._fnCallback(s)}}}}function g(e,n,t){if(e==null||!n){return false}if(n!="destroy"&&n!="parent"&&!t){return false}return e[n]===true||Array.isArray(e[n])&&e[n].indexOf(t)>-1}function l(e,n,t){h(e,n,t,false)}function d(e,n){var t=e.getId();var r=o[t];if(r&&r.listeners){var a=r.listeners.indexOf(n);if(a>=0){var s=i({},r.configurations[a]);return s}}return null}function p(e,n,t){t=t||d(e,n);h(e,n,t,true)}function v(e,n,t){var r=e.getId(),i=o[r];t=t||d(e,n);if(!i){return false}var a=i.listeners.indexOf(n);if(a===-1){return false}else{return j(i.configurations[a].properties,t.properties)&&j(i.configurations[a].aggregations,t.aggregations)&&j(i.configurations[a].associations,t.associations)&&j(i.configurations[a].bindings,t.bindings)&&j(i.configurations[a].events,t.events)&&E(i.configurations[a].destroy,t.destroy)&&E(i.configurations[a].parent,t.parent)}}function b(e){var n=u.get(e);if(!n){return}n.forEach(function(n){var t=o[n];for(var r=0;r<t.listeners.length;r++){if(t.listeners[r]===e){t.listeners.splice(r,1);t.configurations.splice(r,1)}}if(t.listeners.length===0){delete o[n];t.object._observer=undefined}});u.delete(e)}function h(e,n,r,i){var a=e.getId(),c=o[a],g=u.get(n)||new Set,l,d;if(i){if(!c){return}d=c.listeners.indexOf(n);if(d>=0){l=c.configurations[d]}}else{if(!c){c=o[a]={listeners:[],configurations:[],object:e}}if(g.size===0){u.set(n,g)}g.add(a);d=c.listeners.indexOf(n);if(d===-1){c.listeners.push(n);c.configurations.push(r)}else{l=c.configurations[d]}}if(l){l.properties=l.properties||[];m(l.properties,r.properties,i);l.aggregations=l.aggregations||[];m(l.aggregations,r.aggregations,i);l.associations=l.associations||[];m(l.associations,r.associations,i);l.bindings=l.bindings||[];m(l.bindings,r.bindings,i);l.events=l.events||[];m(l.events,r.events,i);if(r.destroy!=null){if(i){delete l.destroy}else{l.destroy=r.destroy}}if(r.parent!=null){if(i){delete l.parent}else{l.parent=r.parent}}}var p=y(e,"events");if(e._observer&&i){if(!p&&t.hasListener(e,"EventHandlerChange",O)){e.detachEvent("EventHandlerChange",O)}if(!p&&!y(e,"properties")&&!y(e,"aggregations")&&!y(e,"associations")&&!y(e,"destroy")&&!y(e,"parent")&&!y(e,"bindings")){f(e)}}else if(!e._observer&&!i){if(p&&!t.hasListener(e,"EventHandlerChange",O)){e.attachEvent("EventHandlerChange",O)}e._observer=s}}function y(e,n){var t=e.getId(),r=o[t];if(r){var i=r.configurations.filter(function(e){return e.hasOwnProperty(n)&&e[n]&&(e[n]===true||e[n].length>0)});return i.length>0}return false}function O(e){var n=e.getSource(),t=e.mParameters.EventId;if(n.getMetadata().hasEvent(t)){if(e.mParameters.type==="listenerAttached"){s.eventChange(n,t,"insert",e.mParameters.listener,e.mParameters.func,e.mParameters.data)}else if(e.mParameters.type==="listenerDetached"){s.eventChange(n,t,"remove",e.mParameters.listener,e.mParameters.func,e.mParameters.data)}}}function m(e,n,t){if(!n){return}for(var r=0;r<n.length;r++){var i=e.indexOf(n[r]);if(i>-1&&t){e.splice(i,1)}else if(i===-1&&!t){e.push(n[r])}}}function j(e,n){if(!Array.isArray(n)||n.length==0){return true}if(!Array.isArray(e)||e.length==0){return false}var t=r(e.concat(n));return e.length===t.length}function E(e,n){if(n==null){return true}return e===n}function A(e,n){var t=e.getMetadata(),i=Object.keys(t.getAllProperties()),a=Object.keys(t.getAllAggregations()),s=Object.keys(t.getAllAssociations()),o=r(i.concat(a)),u=Object.keys(t.getAllEvents());n.properties=n.properties===true?i:n.properties;n.aggregations=n.aggregations===true?a:n.aggregations;n.associations=n.associations===true?s:n.associations;n.bindings=n.bindings===true?o:n.bindings;n.events=n.events===true?u:n.events;n.destroy=n.destroy==null?false:n.destroy;n.parent=n.parent==null?false:n.parent}return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/base/ObjectPool", ["./Object"],function(t){"use strict";var e=t.extend("sap.ui.base.ObjectPool",{constructor:function(e){t.call(this);this.oObjectClass=e;this.aFreeObjects=[]}});e.prototype.borrowObject=function(){var t=this.aFreeObjects.length==0?new this.oObjectClass:this.aFreeObjects.pop();t.init.apply(t,arguments);return t};e.prototype.returnObject=function(t){t.reset();this.aFreeObjects.push(t)};return e});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/AccessKeysEnablement", ["sap/base/config","sap/ui/base/Object","sap/ui/core/Element","sap/ui/Device"],function(e,t,n,i){"use strict";var s=t.extend("sap.ui.core.AccessKeysEnablement",{});s.controlRegistry=new Set;s.CSS_CLASS="sapUiAccKeysHighlighDom";s.bListenersAttached=false;var r=function(){var e=function(e){var t=e.getEnabled&&!e.getEnabled();if(t){return}if(e){e.setProperty("highlightAccKeysRef",true);e.onAccKeysHighlightStart&&e.onAccKeysHighlightStart()}};s.controlRegistry.forEach(function(t){e(t)})};var a=function(){var e=function(e){if(e){e.setProperty("highlightAccKeysRef",false);e.onAccKeysHighlightStart&&e.onAccKeysHighlightEnd()}};s.controlRegistry.forEach(function(t){e(t)})};s.attachKeydownListeners=function(){document.addEventListener("keydown",function(e){if(this.hasHighlightedElements()){e.preventDefault()}this.handleHighlightStart(e);document.addEventListener("keydown",function(e){if(this.hasHighlightedElements()){e.preventDefault()}}.bind(this),{once:true})}.bind(this));document.addEventListener("keyup",function(e){this.handleHighlightEnd(e)}.bind(this));window.addEventListener("blur",function(){this.handleHighlightEnd(true)}.bind(this))};s.handleHighlightStart=function(e){var t=e.altKey;var n=e.key;if(t){r();if(this.hasHighlightedElements()){var i=this.getElementToBeFocused(n);if(!i.length){return}var s=document.activeElement;var a=e.shiftKey;var c=i.indexOf(s);if(a){var o=i[c-1];if(o){o.focus()}else if(c===0){i[i.length-1].focus()}}else{var l=i[c+1];if(l){l.focus()}else if(c===i.length-1){i[0].focus()}}}}};s.hasHighlightedElements=function(){return document.getElementsByClassName(s.CSS_CLASS).length};s.handleHighlightEnd=function(e,t){if(!e.altKey||t){a()}};s.getElementToBeFocused=function(e){return[].filter.call(document.querySelectorAll("[data-ui5-accesskey='"+e.toLowerCase()+"']"),function(e){var t=n.getElementById(e.getAttribute("id"));var i=t.getEnabled?t.getEnabled():true;var s=t.getVisible();return i&&s}).map(function(e){e=n.getElementById(e.getAttribute("id"));return e.getAccessKeysFocusTarget?e.getAccessKeysFocusTarget():e.getFocusDomRef()})};s.registerControl=function(t){var n=e.get({name:"sapUiXxAccKeys",type:e.Type.Boolean,external:true});if(i.os.macintosh){return}this.controlRegistry.add(t);if(n&&!this.bListenersAttached){this.attachKeydownListeners();s.bListenersAttached=true}var r=t.exit;t.exit=function(){s.controlRegistry.delete(t);r&&r.call(t)}};s.deregisterControl=function(e){s.registerControl.delete()};return s});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/AppCacheBuster", ["sap/ui/base/ManagedObject","sap/ui/thirdparty/URI","sap/base/config","sap/base/Log","sap/base/i18n/Localization","sap/base/util/extend","sap/base/util/mixedFetch","sap/base/strings/escapeRegExp","sap/ui/core/_IconRegistry"],function(e,t,r,n,o,i,a,s,p){"use strict";const c=o.getLanguage();const u=r.get({name:"sapUiXxAppCacheBusterMode",type:r.Type.String,defaultValue:"sync",external:true,freeze:true});const f=u==="sync";const l=u==="batch";var d={index:{},active:false};var h,y,g,v,b;var L=document.baseURI.replace(/\?.*|#.*/g,"");var m=t(sap.ui.require.toUrl("")+"/../");var x=m.toString();if(m.is("relative")){m=m.absoluteTo(L)}var R=m.normalize().toString();var U=t("resources").absoluteTo(R).toString();var A=new RegExp("^"+s(U));var C=function(e){if(e.length>0&&e.slice(-1)!=="/"){e+="/"}return e};var T=function(e,t){var r=d.index;var o;var s;var p;var u,h;if(Array.isArray(e)&&!l){e.forEach(function(e){T(e,t)})}else if(Array.isArray(e)&&l){var y=C(e[0]);var g=[];n.debug('sap.ui.core.AppCacheBuster.register("'+y+'"); // BATCH MODE!');var v=O.normalizeURL(y);n.debug('  --\x3e normalized to: "'+v+'"');e.forEach(function(e){s=C(e);var t=O.normalizeURL(s);if(!r[p]){g.push(t)}});if(g.length>0){s=v+"sap-ui-cachebuster-info.json?sap-ui-language="+c;o={body:g.join("\n"),headers:{Accept:a.ContentTypes.JSON,"Content-Type":"text/plain"},mode:"POST"};u=function(e){O.onIndexLoaded(s,e);i(r,e)};h=function(e){n.error('Failed to batch load AppCacheBuster index file from: "'+e+'".')}}}else{e=C(e);n.debug('sap.ui.core.AppCacheBuster.register("'+e+'");');p=O.normalizeURL(e);n.debug('  --\x3e normalized to: "'+p+'"');if(!r[p]){s=p+"sap-ui-cachebuster-info.json?sap-ui-language="+c;o={headers:{Accept:a.ContentTypes.JSON},mode:"POST"};u=function(e){O.onIndexLoaded(s,e);r[p]=e};h=function(e){n.error('Failed to load AppCacheBuster index file from: "'+e+'".')}}}if(o){var b=O.onIndexLoad(s);if(b!=null){n.info('AppCacheBuster index file injected for: "'+s+'".');u(b)}else{var L=!f&&!!t;if(L){var m=t.startTask("load "+s);var x=u,R=h;u=function(e){x.apply(this,arguments);t.finishTask(m)};h=function(){R.apply(this,arguments);t.finishTask(m,false)}}n.info('Loading AppCacheBuster index file from: "'+s+'".');a(s,o,!L).then(function(e){if(e.ok){return e.json()}else{throw new Error("Status code: "+e.status)}}).then(u).catch(function(){h(s)})}}};var O={boot:function(e,r){if(r&&r.length>0){var n=true;var o=String(r[0]).toLowerCase();if(r.length===1){if(o==="true"||o==="x"){var i=t(x);r=i.is("relative")?[i.toString()]:[]}else if(o==="false"){n=false}}if(n){O.init();T(r,e)}}},init:function(){d.active=true;h=e.prototype.validateProperty;y=Object.getOwnPropertyDescriptor(HTMLScriptElement.prototype,"src");g=Object.getOwnPropertyDescriptor(HTMLLinkElement.prototype,"href");var t=O.convertURL;var r=O.normalizeURL;var o=function(e){if(this.active===true&&e&&typeof e==="string"){e=r(e);return!e.match(A)}return false}.bind(d);v=XMLHttpRequest.prototype.open;XMLHttpRequest.prototype.open=function(e,r){if(r&&o(r)){arguments[1]=t(r)}v.apply(this,arguments)};b=XMLHttpRequest.prototype.open;e.prototype.validateProperty=function(e,r){var n=this.getMetadata(),i=n.getProperty(e),a;if(i&&i.type==="sap.ui.core.URI"){a=Array.prototype.slice.apply(arguments);try{if(o(a[1])){a[1]=t(a[1])}}catch(e){}}return h.apply(this,a||arguments)};p._convertUrl=function(e){return t(e)};var i=function(e){var r={get:e.get,set:function(r){if(o(r)){r=t(r)}e.set.call(this,r)},enumerable:e.enumerable,configurable:e.configurable};r.set._sapUiCoreACB=true;return r};var a=false;try{Object.defineProperty(HTMLScriptElement.prototype,"src",i(y))}catch(e){n.error("Your browser doesn't support redefining the src property of the script tag. Disabling AppCacheBuster as it is not supported on your browser!\nError: "+e);a=true}try{Object.defineProperty(HTMLLinkElement.prototype,"href",i(g))}catch(e){n.error("Your browser doesn't support redefining the href property of the link tag. Disabling AppCacheBuster as it is not supported on your browser!\nError: "+e);a=true}if(a){this.exit()}},exit:function(){e.prototype.validateProperty=h;delete p._convertUrl;if(XMLHttpRequest.prototype.open===b){XMLHttpRequest.prototype.open=v}var t;if((t=Object.getOwnPropertyDescriptor(HTMLScriptElement.prototype,"src"))&&t.set&&t.set._sapUiCoreACB===true){Object.defineProperty(HTMLScriptElement.prototype,"src",y)}if((t=Object.getOwnPropertyDescriptor(HTMLLinkElement.prototype,"href"))&&t.set&&t.set._sapUiCoreACB===true){Object.defineProperty(HTMLLinkElement.prototype,"href",g)}d.index={};d.active=false;d={index:{},active:false}},register:function(e){T(e)},convertURL:function(e){n.debug('sap.ui.core.AppCacheBuster.convertURL("'+e+'");');var t=d.index;if(t&&e&&!/^#/.test(e)){var r=O.normalizeURL(e);n.debug('  --\x3e normalized to: "'+r+'"');if(r&&O.handleURL(r)){for(var o in t){var i=t[o],a,s;if(o&&r.length>=o.length&&r.slice(0,o.length)===o){a=r.slice(o.length);s=a.match(/([^?#]*)/)[1];if(i[s]){e=o+"~"+i[s]+"~/"+a;n.debug('  ==> rewritten to "'+e+'";');break}}}}}return e},normalizeURL:function(e){var r=t(e||"./");if(r.is("relative")){r=r.absoluteTo(L)}return r.normalizeProtocol().normalizeHostname().normalizePort().normalizePath().toString()},handleURL:function(e){return true},onIndexLoad:function(e){return null},onIndexLoaded:function(e,t){}};const z=r.get({name:"sapUiXxAppCacheBusterHooks",type:r.Type.Object,defaultValue:undefined,freeze:true});if(z){["handleURL","onIndexLoad","onIndexLoaded"].forEach(function(e){if(typeof z[e]==="function"){O[e]=z[e]}})}return O},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/BlockLayerUtils", ["sap/ui/events/jquery/EventTriggerHook","sap/base/Log","sap/ui/thirdparty/jquery"],function(e,t,jQuery){"use strict";var i={},n=["focusin","focusout","keydown","keypress","keyup","mousedown","touchstart","touchmove","mouseup","touchend","click"],a=/^(?:area|base|br|col|embed|hr|img|input|keygen|link|menuitem|meta|param|source|track|wbr|tr)$/i;i.block=function(e,i,n){var r,l,c,u;if(e){r=e.getDomRef(n);if(!r){r=e.getDomRef()}if(!r){t.warning("BlockLayer could not be rendered. The outer Control instance is not valid anymore or was not rendered yet.");return}l=r.tagName;if(a.test(l)){t.warning("BusyIndicator cannot be placed in elements with tag '"+l+"'.");return}u=o(r,i);c={$parent:jQuery(r),$blockLayer:jQuery(u),control:e};if(c.$parent.css("position")=="static"){if(r.style&&r.style.position==="static"){c.originalPosition="static"}c.$parent.css("position","relative");c.positionChanged=true}s.call(c,true)}else{t.warning("BlockLayer couldn't be created. No Control instance given.")}return c};i.unblock=function(e){if(e){if(e.originalPosition){e.$parent.css("position",e.originalPosition)}else if(e.positionChanged){e.$parent.css("position","")}s.call(e,false);e.$blockLayer.remove()}};i.toggleAnimationStyle=function(e,t){var i=jQuery(e.$blockLayer.get(0));if(t){i.removeClass("sapUiHiddenBusyIndicatorAnimation");i.removeClass("sapUiBlockLayerOnly")}else{i.addClass("sapUiBlockLayerOnly");i.addClass("sapUiHiddenBusyIndicatorAnimation")}};function o(e,t){var i=document.createElement("div");i.id=t;i.className="sapUiBlockLayer ";i.setAttribute("tabindex","0");e.appendChild(i);return i}function s(i){if(i){var a=this.$parent.get(0);if(a){this.fnRedirectFocus=s.bind(this);this.oTabbableBefore=r(this.fnRedirectFocus);this.oTabbableAfter=r(this.fnRedirectFocus);a.parentNode.insertBefore(this.oTabbableBefore,a);a.parentNode.insertBefore(this.oTabbableAfter,a.nextSibling);this._fnSuppressDefaultAndStopPropagationHandler=o.bind(this);this._aSuppressHandler=c.call(this,this._fnSuppressDefaultAndStopPropagationHandler)}else{t.warning("fnHandleInteraction called with bEnabled true, but no DOMRef exists!")}}else{if(this.oTabbableBefore){l(this.oTabbableBefore,this.fnRedirectFocus);delete this.oTabbableBefore}if(this.oTabbableAfter){l(this.oTabbableAfter,this.fnRedirectFocus);delete this.oTabbableAfter}delete this.fnRedirectFocus;u.call(this,this._fnSuppressDefaultAndStopPropagationHandler)}function o(e){var i=e.target===this.$blockLayer.get(0),n;if(i&&e.type==="keydown"&&e.keyCode===9){t.debug("Local Busy Indicator Event keydown handled: "+e.type);n=e.shiftKey?this.oTabbableBefore:this.oTabbableAfter;n.setAttribute("tabindex",-1);this.bIgnoreFocus=true;n.focus();this.bIgnoreFocus=false;n.setAttribute("tabindex",0);e.stopImmediatePropagation();return}if(i&&["mousedown","touchstart"].includes(e.type)){t.debug("Local Busy Indicator click handled on busy area: "+e.target.id);e.stopImmediatePropagation();return}const a=e.type=="keydown"&&[9,37,38,39,40].includes(e.keyCode);if(!a){t.debug("Local Busy Indicator Event Suppressed: "+e.type);e.preventDefault();e.stopImmediatePropagation()}}function s(){if(!this.bIgnoreFocus){this.$blockLayer.get(0).focus()}}function r(e){var t=document.createElement("span");t.setAttribute("tabindex",0);t.classList.add("sapUiBlockLayerTabbable");t.addEventListener("focusin",e);return t}function l(e,t){if(e.parentNode){e.parentNode.removeChild(e)}e.removeEventListener("focusin",t)}function c(t){var i=[],a=this.$parent.get(0),o=this.$blockLayer.get(0);for(var s=0;s<n.length;s++){a.addEventListener(n[s],t,{capture:true,passive:false});i.push(e.suppress(n[s],a,o))}this.$blockLayer.on("keydown",t);return i}function u(t){var i,a=this.$parent.get(0),o=this.$blockLayer.get(0);if(a){for(i=0;i<n.length;i++){a.removeEventListener(n[i],t,{capture:true,passive:false})}}if(this._aSuppressHandler){for(i=0;i<this._aSuppressHandler.length;i++){e.release(this._aSuppressHandler[i])}}if(o){this.$blockLayer.off("keydown",t)}}}return i});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/BusyIndicator", ["sap/ui/thirdparty/jquery","../base/EventProvider","./Popup","./BusyIndicatorUtils","sap/ui/core/Core","sap/ui/core/library","sap/ui/core/Lib","sap/ui/performance/trace/FESR","sap/ui/performance/trace/Interaction","sap/base/Log","sap/base/assert","sap/base/util/now"],function(jQuery,e,t,s,i,o,n,a,u,r,d,p){"use strict";var c=o.BusyIndicatorSize;var h=Object.assign(new e,{oPopup:null,oDomRef:null,bOpenRequested:false,iDEFAULT_DELAY_MS:1e3,sDOM_ID:"sapUiBusyIndicator"});h.M_EVENTS={Open:"Open",Close:"Close"};h._bShowIsDelayed=undefined;h._init=function(){var e=document.createElement("div");e.id=this.sDOM_ID;const i=s.getElement(c.Large);e.appendChild(i);this.oDomRef=e;this.oPopup=new t(e);this.oPopup.setModal(true,"sapUiBlyBusy");this.oPopup.setShadow(false);this.oPopup.attachOpened(function(e){this._onOpen(e)},this)};h._onOpen=function(e){var t=document.getElementById(h.sDOM_ID);t.style.height="100%";t.style.width="100%";var s=t.querySelector(".sapUiLocalBusyIndicator");s.className+=" sapUiLocalBusyIndicatorFade";if(t){t.focus()}this.fireOpen({$Busy:this.oPopup._$()})};h.show=function(e){r.debug("sap.ui.core.BusyIndicator.show (delay: "+e+") at "+Date.now());d(e===undefined||typeof e=="number"&&e%1==0,"iDelay must be empty or an integer");if(h._bShowIsDelayed===undefined){h._bShowIsDelayed=true;i.ready(function(){h._bShowIsDelayed=undefined;if(e===undefined||e!=0&&parseInt(e)==0||parseInt(e)<0){e=this.iDEFAULT_DELAY_MS}if(a.getActive()){this._fDelayedStartTime=p()+e}if(!this.oDomRef){this._init()}this.bOpenRequested=true;if(e===0){this._showNowIfRequested()}else{setTimeout(this["_showNowIfRequested"].bind(this),e)}}.bind(this))}};h._showNowIfRequested=function(){r.debug("sap.ui.core.BusyIndicator._showNowIfRequested (bOpenRequested: "+this.bOpenRequested+") at "+Date.now());if(!this.bOpenRequested){return}var e=window.scrollX===undefined?window.pageXOffset:window.scrollX;var s=window.scrollY===undefined?window.pageYOffset:window.scrollY;var i=e+" "+s;this.bOpenRequested=false;this.oPopup.open(0,t.Dock.LeftTop,t.Dock.LeftTop,document,i)};h.hide=function(){r.debug("sap.ui.core.BusyIndicator.hide at "+Date.now());if(this._fDelayedStartTime){var e=p()-this._fDelayedStartTime;u.addBusyDuration(e>0?e:0);delete this._fDelayedStartTime}var t=h;if(h._bShowIsDelayed===true){h._bShowIsDelayed=false}t.bOpenRequested=false;if(t.oDomRef){var s=t.oDomRef.querySelector(".sapUiLocalBusyIndicator");jQuery(s).removeClass("sapUiLocalBusyIndicatorFade");this.fireClose({$Busy:this.oPopup._$()});t.oPopup.close(0)}};h.attachOpen=function(e,t){this.attachEvent(h.M_EVENTS.Open,e,t);return this};h.detachOpen=function(e,t){this.detachEvent(h.M_EVENTS.Open,e,t);return this};h.attachClose=function(e,t){this.attachEvent(h.M_EVENTS.Close,e,t);return this};h.detachClose=function(e,t){this.detachEvent(h.M_EVENTS.Close,e,t);return this};h.fireOpen=function(e){this.fireEvent(h.M_EVENTS.Open,e)};h.fireClose=function(e){this.fireEvent(h.M_EVENTS.Close,e)};return h},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/BusyIndicatorUtils", ["./BlockLayerUtils","sap/ui/core/Lib","sap/ui/core/library"],function(a,i,e){"use strict";var t=function(){};var r=e.BusyIndicatorSize;t.getElement=function(a){var i;switch(a){case r.Large:i="sapUiLocalBusyIndicatorSizeBig sapUiLocalBusyIndicatorShowContainer";break;case r.Medium:i="sapUiLocalBusyIndicatorSizeMedium";break;case r.Section:i="sapUiLocalBusyIndicatorSizeSection sapUiLocalBusyIndicatorShowContainer";break;default:i="sapUiLocalBusyIndicatorSizeMedium";break}var e=document.createElement("div");e.className="sapUiLocalBusyIndicator "+i+" sapUiLocalBusyIndicatorFade";t.addAriaAttributes(e);c(e);return e};function c(a,i){i=i||"sapUiLocalBusyIndicatorAnimStandard";var e=document.createElement("div");e.className="sapUiLocalBusyIndicatorAnimation "+i;e.appendChild(document.createElement("div"));e.appendChild(document.createElement("div"));e.appendChild(document.createElement("div"));a.appendChild(e)}function o(a,i){var e=a.$parent.get(0),t=a.$blockLayer.get(0);var r=t.children[0],c=r.offsetWidth;if(e.offsetWidth<c){r.className="sapUiLocalBusyIndicatorAnimation sapUiLocalBusyIndicatorAnimSmall"}}t.addAriaAttributes=function(a,e){const t=i.getResourceBundleFor("sap.ui.core");a.setAttribute("tabindex","0");a.setAttribute("role","progressbar");a.setAttribute("aria-valuemin","0");a.setAttribute("aria-valuemax","100");a.setAttribute("aria-valuetext",t.getText("BUSY_VALUE_TEXT"));a.setAttribute("title",t.getText("BUSY_TEXT"));const r=e?.getDomRef();r?.setAttribute("aria-busy","true")};t.addHTML=function(a,i){var e,s;switch(i){case r.Small:e="sapUiLocalBusyIndicatorSizeMedium";s="sapUiLocalBusyIndicatorAnimSmall";break;case r.Section:e="sapUiLocalBusyIndicatorSizeSection sapUiLocalBusyIndicatorShowContainer";s="sapUiLocalBusyIndicatorAnimStandard ";break;case r.Large:e="sapUiLocalBusyIndicatorSizeBig sapUiLocalBusyIndicatorShowContainer";s="sapUiLocalBusyIndicatorAnimStandard";break;case r.Auto:e="sapUiLocalBusyIndicatorSizeMedium";s="sapUiLocalBusyIndicatorAnimStandard";break;default:e="sapUiLocalBusyIndicatorSizeMedium";s="sapUiLocalBusyIndicatorAnimStandard";break}if(!a){return}var n=a.$parent.get(0),d=a.$blockLayer.get(0);t.addAriaAttributes(d,a.control);n.className+=" sapUiLocalBusy";d.className+=" sapUiLocalBusyIndicator "+e+" sapUiLocalBusyIndicatorFade";c(d,s);if(i===r.Auto){o(a)}};return t},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/CalendarType", ["sap/ui/base/DataType","sap/base/i18n/date/CalendarType"],function(e,a){"use strict";e.registerEnum("sap.ui.core.CalendarType",a);return a},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/CommandExecution", ["sap/base/Log","sap/base/util/isEmptyObject","sap/ui/core/Component","sap/ui/core/Element","sap/ui/core/Shortcut"],function(t,e,i,n,r){"use strict";var a=n.extend("sap.ui.core.CommandExecution",{metadata:{library:"sap.ui.core",properties:{command:{type:"string"},enabled:{type:"boolean",defaultValue:true},visible:{type:"boolean",defaultValue:true}},events:{execute:{}}},bSkipUpdate:false,trigger:function(){if(this.getVisible()&&this.getEnabled()){this.fireExecute({})}},setCommand:function(e){if(!this.getCommand()){this.setProperty("command",e,true)}else{t.error("The 'command' property can only be applied initially!")}return this},_getCommandInfo:function(){if(!this.oCommand){var t,e=this.getParent(),n=i.getOwnerComponentFor(this);while(!n&&e&&e.getParent()){n=i.getOwnerComponentFor(e);e=e.getParent()}if(n){t=n.getCommand(this.getCommand())}this.oCommand=t?Object.assign({},t):null}return this.oCommand},_updateContextData:function(t){var e=this.getParent();t[this.getCommand()]={};t[this.getCommand()].enabled=this.getEnabled();t[this.getCommand()].id=this.getId();t[this.getCommand()].visible=this.getVisible();this.getModel("$cmd").setProperty("/"+e.getId(),t)},_createCommandData:function(t){if(!this.bSkipUpdate){this.bSkipUpdate=true;var e=this.getParent(),i=e.getModel("$cmd"),n=i.getData(),r=n[e.getId()];if(!r){r=Object.create(t)}else if(t!==Object.getPrototypeOf(r)){r=Object.create(t)}this._updateContextData(r);if(!e.getObjectBinding("$cmd")){e.bindElement("$cmd>/"+e.getId())}this.bSkipUpdate=false}},setParent:function(e){var i=this,a,o=this.getParent(),s,d,g;function m(){var t=e.oPropagatedProperties.oBindingContexts["$cmd"];return t?t.getObject():null}function p(){if(e.getModel("$cmd")){var t=m();i.getParent().detachModelContextChange(p);i._createCommandData(t)}}n.prototype.setParent.apply(this,arguments);a=this._getCommandInfo();if(a){if(this.getVisible()){if(e&&e!==o){d=a.shortcut;g=r.isRegistered(this.getParent(),d);if(!g){r.register(e,d,this.trigger.bind(this))}if(e.getModel("$cmd")){s=m();this._createCommandData(s)}else{e.attachModelContextChange(p)}if(!e._propagateProperties._sapui_fnOrig){var c=e._propagateProperties;e._propagateProperties=function(t,n,r,a,o,d){c.apply(e,arguments);var g=e.getBindingContext("$cmd");var p=arguments[1];if(g&&p.isA("sap.ui.core.CommandExecution")){var h=g.getObject();var u=Object.getPrototypeOf(h);s=m();if(u!==s){i._createCommandData.apply(p,[s])}}};e._propagateProperties._sapui_fnOrig=c}}if(o&&o!=e){d=a.shortcut;g=r.isRegistered(o,d);if(g){r.unregister(o,a.shortcut)}this._cleanupContext(o)}}}else{t.error(`${this}: Command '${this.getCommand()}' is not defined in component manifest. No shortcut will be registered.`)}return this},_cleanupContext:function(t){if(t.getBindingContext("$cmd")){var i=t.getBindingContext("$cmd").getObject();if(i){delete i[this.getCommand()];if(e(Object.assign({},i))){if(t._propagateProperties._sapui_fnOrig){t._propagateProperties=t._propagateProperties._sapui_fnOrig}if(!t._bIsBeingDestroyed){t.unbindElement("$cmd")}}}}},setVisible:function(t){var e=this.getParent(),i=this.getModel("$cmd");this.setProperty("visible",t,true);t=this.getProperty("visible");if(e){var n=this._getCommandInfo(),a=n.shortcut,o=r.isRegistered(e,a);if(t&&!o){r.register(e,a,this.trigger.bind(this))}else if(!t&&o){r.unregister(e,a)}}if(i){var s=this.getBindingContext("$cmd");i.setProperty(this.getCommand()+"/visible",t,s)}return this},setEnabled:function(t){var e=this.getModel("$cmd");this.setProperty("enabled",t,true);if(e){var i=this.getBindingContext("$cmd");e.setProperty(this.getCommand()+"/enabled",this.getProperty("enabled"),i)}return this},destroy:function(){var t=this.getParent();var e=this._getCommandInfo();if(t&&e){r.unregister(this.getParent(),e.shortcut);this._cleanupContext(t)}n.prototype.destroy.apply(this,arguments)}});a.find=function(t,e){var i,n,r;r=t.getDependents();for(i=0;i<r.length;i++){if(r[i].isA("sap.ui.core.CommandExecution")&&r[i].getCommand()===e){n=r[i]}}if(!n&&t.getParent()){n=a.find(t.getParent(),e)}return n};return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/ComponentContainer", ["sap/base/future","sap/ui/base/ManagedObject","./Control","./Component","./library","./ComponentContainerRenderer"],function(e,t,n,o,i,a){"use strict";var r=i.ComponentLifecycle;const{oPropagatedProperties:s}=new t;var p=n.extend("sap.ui.core.ComponentContainer",{metadata:{interfaces:["sap.ui.core.IPlaceholderSupport"],library:"sap.ui.core",properties:{name:{type:"string",defaultValue:null},url:{type:"sap.ui.core.URI",defaultValue:null},async:{type:"boolean",defaultValue:false},handleValidation:{type:"boolean",defaultValue:false},settings:{type:"object",defaultValue:null},propagateModel:{type:"boolean",defaultValue:false},width:{type:"sap.ui.core.CSSSize",group:"Dimension",defaultValue:null},height:{type:"sap.ui.core.CSSSize",group:"Dimension",defaultValue:null},lifecycle:{type:"sap.ui.core.ComponentLifecycle",defaultValue:r.Legacy},autoPrefixId:{type:"boolean",defaultValue:false},usage:{type:"string",defaultValue:null},manifest:{type:"any",defaultValue:null}},associations:{component:{type:"sap.ui.core.UIComponent",multiple:false}},events:{componentCreated:{parameters:{component:{type:"sap.ui.core.UIComponent"}}},componentFailed:{allowPreventDefault:true,parameters:{reason:{type:"object"}}}},designtime:"sap/ui/core/designtime/ComponentContainer.designtime"},renderer:a});function l(e,t,n,i){var a=typeof t==="string"?o.getComponentById(t):t;var r=e.getComponentInstance();if(r!==a){if(r){r.setContainer(undefined);if(i){r.destroy()}else{e._propagateProperties(true,r,s,true)}}e.setAssociation("component",a,n);a=e.getComponentInstance();if(a){a.setContainer(e);e.propagateProperties(true)}}}p.prototype.getComponentInstance=function(){var e=this.getComponent();return e&&o.getComponentById(e)};var u={onAfterRendering:function(){if(this._placeholder){this._placeholder.show(this)}}};p.prototype.showPlaceholder=function(e){var t,n=sap.ui.require("sap/ui/core/Placeholder");if(!n||!n.isEnabled()){return}if(this._placeholder){this.hidePlaceholder()}if(e.placeholder){this._placeholder=e.placeholder;t=this._placeholder._load()}else{t=Promise.resolve()}if(this.getDomRef()&&this._placeholder){this._placeholder.show(this)}this.addEventDelegate(u,this);return t};p.prototype.hidePlaceholder=function(){if(this._placeholder){this._placeholder.hide();this.removeEventDelegate(u);this._placeholder=undefined}};p.prototype.setComponent=function(e,t){l(this,e,t,this.getLifecycle()===r.Container||typeof this.getUsage()==="string"&&this.getUsage()&&this.getLifecycle()===r.Legacy);return this};p.prototype.applySettings=function(e,t){if(e){if(e.manifest==="true"||e.manifest==="false"){e.manifest=e.manifest==="true"}if(e.manifest&&e.async===undefined){e.async=true}}n.prototype.applySettings.apply(this,arguments)};function f(e){var t=e.getName();var n=e.getManifest();var o=e.getUrl();var i=e.getSettings();var a={name:t?t:undefined,manifest:n!==null?n:false,async:e.getAsync(),url:o?o:undefined,handleValidation:e.getHandleValidation(),settings:i!==null?i:undefined};return a}p.prototype._createComponent=function(){var t=o.getOwnerComponentFor(this),n=this.getUsage(),i=f(this);if(n){if(t){i=t._enhanceWithUsageConfig(n,i)}else{e.errorThrows('ComponentContainer "'+this.getId()+'" does have a "usage", but no owner component!')}}if(this.getAutoPrefixId()){if(i.id){i.id=this.getId()+"-"+i.id}if(i.settings&&i.settings.id){i.settings.id=this.getId()+"-"+i.settings.id}}return o._createComponent(i,t)};p.prototype.onBeforeRendering=function(){var t=this.getComponentInstance(),n=this.getUsage(),o=this.getName(),i=this.getManifest();if(!this._oComponentPromise&&!t&&(n||o||i)){t=this._createComponent();if(t instanceof Promise){this._oComponentPromise=t;t.then(function(e){delete this._oComponentPromise;this.setComponent(e);this.fireComponentCreated({component:e})}.bind(this),function(t){delete this._oComponentPromise;if(this.fireComponentFailed({reason:t})){e.errorThrows("Failed to load component for container "+this.getId(),{cause:t})}}.bind(this))}else if(t){this.setComponent(t,true);this.fireComponentCreated({component:t})}else{this.fireComponentFailed({reason:new Error("The component could not be created.")})}}if(t&&t.onBeforeRendering){t.onBeforeRendering()}};p.prototype.onAfterRendering=function(){var e=this.getComponentInstance();if(e&&e.onAfterRendering){e.onAfterRendering()}};p.prototype.exit=function(){l(this,undefined,true,this.getLifecycle()!==r.Application)};p.prototype.propagateProperties=function(e){var t=this.getComponentInstance();if(t&&this.getPropagateModel()){this._propagateProperties(e,t)}n.prototype.propagateProperties.apply(this,arguments)};p.prototype._propagateContextualSettings=function(){var e=this.getComponentInstance();if(e){e._applyContextualSettings(this._getContextualSettings())}};return p});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/ComponentContainerRenderer", function(){"use strict";var e={apiVersion:2};e.render=function(e,t){var i=t.getComponentInstance();var n=t.getWidth();var r=t.getHeight();e.openStart("div",t);e.style("width",n);e.style("height",r);e.class("sapUiComponentContainer");e.openEnd();e.openStart("div",t.getId()+"-uiarea");if(n&&n!=="auto"){e.style("width","100%")}if(r&&r!=="auto"){e.style("height","100%")}e.openEnd();if(i){i.render(e)}e.close("div");e.close("div")};return e},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/ComponentSupport", ["sap/ui/base/DataType","sap/ui/core/ComponentContainer","sap/ui/core/library","sap/base/future","sap/base/Log","sap/base/util/ObjectPath","sap/base/strings/camelize"],function(e,t,n,r,a,o,i){"use strict";var u=n.ComponentLifecycle;var f=t.getMetadata();var s=function(){};s.run=function(){var e=s._find();for(var n=0,r=e.length;n<r;n++){var o=e[n];a.debug("Parsing element "+o.outerHTML,"","sap/ui/core/ComponentSupport");var i=s._parse(o);s._applyDefaultSettings(i);a.debug("Creating ComponentContainer with the following settings",JSON.stringify(i,0,2),"sap/ui/core/ComponentSupport");new t(i).placeAt(o);o.removeAttribute("data-sap-ui-component")}};s._find=function(){return document.querySelectorAll("[data-sap-ui-component]")};s._parse=function(t){var n={};for(var a=0,u=t.attributes.length;a<u;a++){var s=t.attributes[a];var p=/^data-((?!sap-ui-component).+)/g.exec(s.name);if(p){var c=i(p[1]);var l=s.value;if(c!=="id"){var m=f.getProperty(c);var d=!m&&f.getEvent(c);if(!m&&!d){r.warningThrows('Property or event "'+c+'" does not exist in sap.ui.core.ComponentContainer.',{suffix:"It will be ignored."});continue}if(m){var g=e.getType(m.type);if(!g){throw new Error('Property "'+m.name+'" has no known type')}l=g.parseValue(l)}if(d){var v=o.get(l);if(typeof v!=="function"){throw new Error('Callback handler for event "'+d.name+'" not found')}l=v}}n[c]=l}}return n};s._applyDefaultSettings=function(e){e.async=true;if(e.manifest===undefined||e.manifest==="true"){e.manifest=true}else if(e.manifest==="false"){r.errorThrows('Defining "manifest=false" for ComponentContainer of component "'+e.name+'" is not supported by ComponentSupport.',{suffix:'Forcing "manifest=true"'},"","sap/ui/core/ComponentSupport");e.manifest=true}e.lifecycle=e.lifecycle===undefined?u.Container:e.lifecycle;e.autoPrefixId=e.autoPrefixId===undefined?true:e.autoPrefixId};s.run();return s});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/ContextMenuSupport", ["./Control"],function(t){"use strict";var e=function(){var e;if(!(this instanceof t)){return}function n(t){t.stopPropagation();if(t.srcControl!==this){return}t.preventDefault();this._oContextMenu.openAsContextMenu(t,this)}e={oncontextmenu:n};this.setContextMenu=function(t){if(t==null&&this.getContextMenu()){this._oContextMenu=null;this.removeEventDelegate(e,this);return}else if(!t||!t.getMetadata||!t.getMetadata().isInstanceOf("sap.ui.core.IContextMenu")){return}if(!this._oContextMenu){this.addEventDelegate(e,this)}this._oContextMenu=t};this.getContextMenu=function(){return this._oContextMenu}};return e},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/Control", ["./CustomStyleClassSupport","./Core","./Element","./ElementRegistry","./UIArea","./StaticArea","./RenderManager","./BusyIndicatorUtils","./BlockLayerUtils","sap/base/future","sap/base/Log","sap/ui/performance/trace/Interaction","sap/ui/thirdparty/jquery"],function(t,e,i,s,o,n,r,a,l,c,u,h,jQuery){"use strict";var d;var y=i.extend("sap.ui.core.Control",{metadata:{stereotype:"control",abstract:true,publicMethods:["placeAt","attachBrowserEvent","detachBrowserEvent","getControlsByFieldGroup","triggerValidateFieldGroup","checkFieldGroupIds"],library:"sap.ui.core",properties:{blocked:{type:"boolean",defaultValue:false},busy:{type:"boolean",defaultValue:false},busyIndicatorDelay:{type:"int",defaultValue:1e3},busyIndicatorSize:{type:"sap.ui.core.BusyIndicatorSize",defaultValue:"Medium"},visible:{type:"boolean",group:"Appearance",defaultValue:true},fieldGroupIds:{type:"string[]",defaultValue:[]}},events:{validateFieldGroup:{enableEventBubbling:true,parameters:{fieldGroupIds:{type:"string[]"}}}}},constructor:function(t,e){this.bAllowTextSelection=true;i.apply(this,arguments);this.bOutput=this.getDomRef()!=null;this._bOnBeforeRenderingPhase=false},renderer:null});y.prototype.clone=function(){var t=i.prototype.clone.apply(this,arguments);if(this.aBindParameters){for(var e=0,s=this.aBindParameters.length;e<s;e++){var o=this.aBindParameters[e];t.attachBrowserEvent(o.sEventType,o.fnHandler,o.oListener!==this?o.oListener:undefined)}}t.bAllowTextSelection=this.bAllowTextSelection;return t};t.apply(y.prototype);y.prototype.isActive=function(){return document.getElementById(this.sId)!=null};function f(t){if(!t||!t.isA){return false}if(t.isA("sap.ui.core.Control")){return t._bRenderingPhase}return f(t.getParent())}y.prototype.invalidate=function(t){var e;if(this._bOnBeforeRenderingPhase){return}this._bNeedsRendering=true;var i=this.getParent();if((this.bOutput||f(i))&&(e=this.getUIArea())){if(!this._bIsBeingDestroyed){e.addInvalidatedControl(this)}}else{if(i&&!i.isInvalidateSuppressed()&&(this.bOutput||!(this.getVisible&&this.getVisible()===false))){i.invalidate(this)}}};y.prototype.rerender=function(){this._bNeedsRendering=true;o.rerenderControl(this)};y.prototype.getDomRef=function(t){if(this.bOutput===false&&!this.oParent){return null}return i.prototype.getDomRef.call(this,t)};y.prototype.allowTextSelection=function(t){this.bAllowTextSelection=t;return this};y.prototype.attachBrowserEvent=function(t,e,i){if(t&&typeof t==="string"){if(typeof e==="function"){if(!this.aBindParameters){this.aBindParameters=[]}i=i||this;var s=e.bind(i);this.aBindParameters.push({sEventType:t,fnHandler:e,oListener:i,fnProxy:s});if(!this._sapui_bInAfterRenderingPhase){this.$().on(t,s)}}}return this};y.prototype.detachBrowserEvent=function(t,e,i){if(t&&typeof t==="string"){if(typeof e==="function"){var s=this.$(),o,n;i=i||this;if(this.aBindParameters){for(o=this.aBindParameters.length-1;o>=0;o--){n=this.aBindParameters[o];if(n.sEventType===t&&n.fnHandler===e&&n.oListener===i){this.aBindParameters.splice(o,1);s.off(t,n.fnProxy)}}}}}return this};y.prototype.getRenderer=function(){return r.getRenderer(this)};y.prototype.placeAt=function(t,s){e.ready(function(){var e=t;if(typeof t==="string"){e=i.getElementById(t)}if(e instanceof i){if(!p(e)){c.warningThrows("placeAt cannot be processed because container "+e+" does not have an aggregation 'content'.");return this}}else{if(t===n.STATIC_UIAREA_ID||t&&t.id===n.STATIC_UIAREA_ID){e=n.getUIArea()}else{e=o.create(t)}}if(typeof s==="number"){e.insertContent(this,s)}else{s=s||"last";switch(s){case"last":e.addContent(this);break;case"first":e.insertContent(this,0);break;case"only":e.removeAllContent();e.addContent(this);break;default:c.warningThrows("Position "+s+" is not supported for function placeAt.")}}}.bind(this));return this};function p(t){var e=t.getMetadata().getAggregation("content");if(e){return e.multiple&&e.type==="sap.ui.core.Control"}return typeof t.addContent==="function"&&typeof t.insertContent==="function"&&typeof t.removeAllContent==="function"}y.prototype.onselectstart=function(t){if(!this.bAllowTextSelection){t.preventDefault();t.stopPropagation()}};y.prototype.onBeforeRendering=function(){return undefined};y.prototype.onAfterRendering=function(){return undefined};y.prototype.getIdForLabel=function(){return this.getId()};y.prototype.destroy=function(t){if(this.bIsDestroyed){return}this._bIsBeingDestroyed=true;this._cleanupBusyIndicator();d=d||sap.ui.require("sap/ui/core/ResizeHandler");if(d){d.deregisterAllForControl(this.getId())}if(!this.getVisible()){var e=document.getElementById(r.createInvisiblePlaceholderId(this));if(e&&e.parentNode){e.parentNode.removeChild(e)}}i.prototype.destroy.call(this,t)};var B={onBeforeRendering:function(){if(this.getBusy()){S.call(this)}I.call(this)},onAfterRendering:function(){if(this.getBlocked()&&this.getDomRef()&&!this.getDomRef("blockedLayer")){this._oBlockState=l.block(this,this.getId()+"-blockedLayer",this._sBlockSection);jQuery(this._oBlockState.$blockLayer.get(0)).addClass("sapUiBlockLayerOnly")}if(this.getBusy()&&this.getDomRef()&&!this._busyIndicatorDelayedCallId&&!this.getDomRef("busyIndicator")){var t=this.getBusyIndicatorDelay();if(t){this._busyIndicatorDelayedCallId=setTimeout(b.bind(this),t)}else{b.call(this,true)}}}};function g(){if(this._oBusyBlockState&&this.getDomRef(this._sBusySection)?.contains(document.activeElement)){this._oBusyBlockState.lastFocusPosition=document.activeElement;this._oBusyBlockState.$blockLayer.get(0).focus({preventScroll:true})}}function b(t){if(!this.getBusy()){return}var e=this.$(this._sBusySection);if(this._busyIndicatorDelayedCallId){clearTimeout(this._busyIndicatorDelayedCallId);delete this._busyIndicatorDelayedCallId}if(!e||e.length===0){u.warning("BusyIndicator could not be rendered. The outer control instance is not valid anymore.");return}if(this._sBlockSection===this._sBusySection){if(this._oBlockState){a.addHTML(this._oBlockState,this.getBusyIndicatorSize());l.toggleAnimationStyle(this._oBlockState,true);this._oBusyBlockState=this._oBlockState}else{_.call(this)}}else{_.call(this)}if(t){setTimeout(g.bind(this),0)}else{g.call(this)}}function k(){this._oBlockState=l.block(this,this.getId()+"-blockedLayer",this._sBlockSection);jQuery(this._oBlockState.$blockLayer.get(0)).addClass("sapUiBlockLayerOnly")}function _(){if(this._oBusyBlockState){l.unblock(this._oBusyBlockState)}this._oBusyBlockState=l.block(this,this.getId()+"-busyIndicator",this._sBusySection);a.addHTML(this._oBusyBlockState,this.getBusyIndicatorSize())}function I(){l.unblock(this._oBlockState);l.unblock(this._oBusyBlockState);delete this._oBlockState;delete this._oBusyBlockState}function S(t){if(t){I.call(this);return}let e;if(this._oBusyBlockState){const t=this._oBusyBlockState.$blockLayer.get(0);if(t===document.activeElement){if(jQuery(this._oBusyBlockState.lastFocusPosition).is(":sapFocusable")){e=this._oBusyBlockState.lastFocusPosition}else{e=i.closestTo(this._oBusyBlockState.lastFocusPosition)||this}e.focus()}}const s=this.$(this._sBusySection);s.removeClass("sapUiLocalBusy");s.removeAttr("aria-busy");if(this._sBlockSection===this._sBusySection){if(!this.getBlocked()&&!this.getBusy()){I.call(this)}else if(this.getBlocked()){if(this._oBlockState||this._oBusyBlockState){l.toggleAnimationStyle(this._oBlockState||this._oBusyBlockState,false);this._oBlockState=this._oBusyBlockState}}else if(this._oBusyBlockState){l.unblock(this._oBusyBlockState);delete this._oBusyBlockState}}else if(this._oBusyBlockState){l.unblock(this._oBusyBlockState);delete this._oBusyBlockState}}y.prototype.setBlocked=function(t,e){if(!!t==this.getProperty("blocked")){return this}this._sBlockSection=e||this._sBlockSection;this.setProperty("blocked",t,true);if(t){this.addDelegate(B,false,this)}else if(!this.getBusy()){this.removeDelegate(B)}if(!this.getDomRef()){return this}if(t){if(this._sBlockSection===this._sBusySection){if(!this._oBusyBlockState&&!this._oBlockState){k.call(this)}else{u.info("The control is already busy. Hence, no new block-layer was created for the shared section.")}}else{k.call(this)}}else{if(this._sBlockSection===this._sBusySection){if(!this.getBlocked()&&!this.getBusy()){I.call(this)}else if(this.getBusy()){u.info("The control is already busy. Hence, no new block-layer was created for the shared section.")}}else if(this._oBlockState){l.unblock(this._oBlockState);delete this._oBlockState}}return this};y.prototype.getBlocked=function(){return this.getProperty("blocked")};y.prototype.setBusy=function(t,e){if(!!t==this.getProperty("busy")){return this}this._sBusySection=e||this._sBusySection;this.setProperty("busy",t,true);if(t){h.notifyShowBusyIndicator(this);this.addDelegate(B,false,this)}else{if(!this.getProperty("blocked")){this.removeDelegate(B)}if(this._busyIndicatorDelayedCallId){clearTimeout(this._busyIndicatorDelayedCallId);delete this._busyIndicatorDelayedCallId}}if(!this.getDomRef()){return this}if(t){if(this.getBusyIndicatorDelay()<=0){b.call(this)}else{this._busyIndicatorDelayedCallId=setTimeout(b.bind(this),this.getBusyIndicatorDelay())}}else{S.call(this);h.notifyHideBusyIndicator(this)}return this};y.prototype.isBusy=y.prototype.getBusy;y.prototype.setBusyIndicatorDelay=function(t){this.setProperty("busyIndicatorDelay",t,true);return this};y.prototype._cleanupBusyIndicator=function(){if(this._busyIndicatorDelayedCallId){clearTimeout(this._busyIndicatorDelayedCallId);delete this._busyIndicatorDelayedCallId}S.call(this,true)};y.prototype.getControlsByFieldGroupId=function(t){return this.findAggregatedObjects(true,function(e){if(e instanceof y){return e.checkFieldGroupIds(t)}return false})};y.prototype.checkFieldGroupIds=function(t){if(typeof t==="string"){t=t?t.split(","):[]}var e=this._getFieldGroupIds();if(Array.isArray(t)){return t.every(function(t){return e.indexOf(t)>=0})}else if(!t){return e.length>0}return false};y.prototype.triggerValidateFieldGroup=function(t){this.fireValidateFieldGroup({fieldGroupIds:t})};y.getControlsByFieldGroupId=function(t){return s.filter(e=>e.isA("sap.ui.core.Control")&&e.checkFieldGroupIds(t))};return y});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/CustomData", ["./Element"],function(t){"use strict";var e=t.getMetadata().getAggregation("customData").defaultClass;return e});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/CustomStyleClassSupport", ["./Element","sap/ui/core/Theming","sap/base/assert","sap/base/Log"],function(s,t,e,i){"use strict";var a=/\s/;var l=/\S+/g;var n=function(){if(!(this instanceof s)){return}var t=this.clone;this.clone=function(){var s=t.apply(this,arguments);if(this.aCustomStyleClasses){s.aCustomStyleClasses=this.aCustomStyleClasses.slice()}if(this.mCustomStyleClassMap){s.mCustomStyleClassMap=Object.assign(Object.create(null),this.mCustomStyleClassMap)}return s};this.addStyleClass=function(s,t){e(typeof s==="string","sStyleClass must be a string");if(!s||typeof s!=="string"||s.indexOf('"')>-1||s.indexOf("'")>-1){return this}var i=this.aCustomStyleClasses||(this.aCustomStyleClasses=[]),n=this.mCustomStyleClassMap||(this.mCustomStyleClassMap=Object.create(null)),r,o=false,h=[],C=f();function m(s){if(!n[s]){n[s]=true;i.push(s);if(C&&C.indexOf(s)>-1){h.push(s)}o=true}}if(a.test(s)){r=s.match(l);r&&r.forEach(m)}else{m(s)}if(!o){return this}var y=this.getDomRef();if(y){if(r){y.classList.add.apply(y.classList,r)}else{y.classList.add(s)}}else if(t===false){this.invalidate()}if(h.length>0){u(this,h,true)}return this};this.removeStyleClass=function(s,t){e(typeof s==="string","sStyleClass must be a string");if(!s||typeof s!=="string"||!this.aCustomStyleClasses||!this.mCustomStyleClassMap){return this}var i=this.aCustomStyleClasses,n=this.mCustomStyleClassMap,r,o=false,h=[],C=f(),m;function y(s){if(n[s]){o=true;m=i.indexOf(s);if(m!==-1){i.splice(m,1);delete n[s];if(C&&C.indexOf(s)>-1){h.push(s)}}}}if(a.test(s)){r=s.match(l);r&&r.forEach(y)}else{y(s)}if(o){var c=this.getDomRef();if(c){if(r){c.classList.remove.apply(c.classList,r)}else{c.classList.remove(s)}}else if(t===false){this.invalidate()}if(h.length>0){u(this,h,false)}}return this};this.toggleStyleClass=function(s,t){e(typeof s==="string","sStyleClass must be a string");if(s&&typeof s==="string"){if(t===true){this.addStyleClass(s)}else if(t===false){this.removeStyleClass(s)}else if(t===undefined){this.hasStyleClass(s)?this.removeStyleClass(s):this.addStyleClass(s)}else{i.warning(this.toString()+"- toggleStyleClass(): bAdd should be a boolean or undefined, but is '"+t+"'")}}return this};this.hasStyleClass=function(s){e(typeof s==="string","sStyleClass must be a string");if(s&&typeof s==="string"&&this.mCustomStyleClassMap){if(a.test(s)){var t=s.match(l);return t!=null&&t.every(function(s){return this.mCustomStyleClassMap[s]},this)}else{return!!this.mCustomStyleClassMap[s]}}return false};this.getMetadata().addPublicMethods(["addStyleClass","removeStyleClass","toggleStyleClass","hasStyleClass"])};var r;function f(){if(!r){r=sap.ui.require("sap/ui/core/theming/Parameters")}if(r){return r._getScopes(true)}}function u(s,e,i){t.fireThemeScopingChanged({scopes:e,added:i,element:s})}return n},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/DeclarativeSupport", ["sap/ui/thirdparty/jquery","sap/ui/base/DataType","sap/ui/base/ManagedObject","./Control","./CustomData","./HTML","./mvc/View","./mvc/EventHandlerResolver","sap/base/Log","sap/base/util/ObjectPath","sap/base/assert","sap/base/strings/camelize"],function(jQuery,t,e,a,r,i,n,o,s,u,g,l){"use strict";var p={};p.attributes={"data-sap-ui-type":true,"data-sap-ui-id":true,"data-sap-ui-aggregation":true,"data-sap-ui-default-aggregation":true,"data-sap-ui-binding":function(t,a){var r=e.bindingParser(t);a.objectBindings=a.objectBindings||{};a.objectBindings[r.model||undefined]=r},"data-tooltip":function(t,e){e["tooltip"]=t},tooltip:function(t,e,a){e["tooltip"]=t;s.warning('[Deprecated] Control "'+e.id+'": The attribute "tooltip" is not prefixed with "data-*". Future version of declarative support will only suppport attributes with "data-*" prefix.')},class:true,style:true,id:true};p.compile=function(t,e,a){var r=this;jQuery(t).find("[data-sap-ui-type]").filter(function(){return jQuery(this).parents("[data-sap-ui-type]").length===0}).each(function(){r._compile(this,e,a)})};p._compile=function(t,e,r){var i=jQuery(t);var n=i.attr("data-sap-ui-type");var o=[];var s=n==="sap.ui.core.UIArea";var u=t.getAttributeNames();if(s){var g=this;i.children().each(function(){var t=g._createControl(this,e);if(t){o.push(t)}})}else{var l=this._createControl(t,e);if(l){o.push(l)}}i.empty();var p=[];for(var d=0;d<u.length;d++){var f=u[d];if(!s||s&&/^data-/g.test(f.toLowerCase())){p.push(f)}}if(p.length>0){i.removeAttr(p.join(" "))}o.forEach(function(i){if(i instanceof a){if(e&&!r){e.addContent(i)}else{i.placeAt(t);if(e){e.connectControl(i)}}}})};p._createControl=function(t,e){var a=jQuery(t);var r=null;var i=a.attr("data-sap-ui-type");if(i){var o=sap.ui.requireSync(i.replace(/\./g,"/"));o=o||u.get(i);g(typeof o!=="undefined","Class not found: "+i);var s={};s.id=this._getId(a,e);if(e&&e._sProcessingMode!=null&&o.getMetadata().hasSpecialSetting("processingMode")){s.processingMode=e._sProcessingMode}this._addSettingsForAttributes(s,o,t,e);this._addSettingsForAggregations(s,o,t,e);var r;if(n.prototype.isPrototypeOf(o.prototype)&&typeof o._sType==="string"){r=n._create(s,undefined,o._sType)}else{r=new o(s)}if(t.className){r.addStyleClass(t.className)}a.removeAttr("data-sap-ui-type")}else{r=this._createHtmlControl(t,e)}return r};p._createHtmlControl=function(t,e){var a=new i;a.setDOMContent(t);this.compile(t,e,true);return a};p._addSettingsForAttributes=function(t,a,i,n){var s=this;var u=p.attributes;var d=e.bindingParser;var f=[];var c=/^data-custom-data:(.+)/i;var v=i.getAttributeNames();for(var h=0;h<v.length;h++){var y=v[h];var b=i.getAttribute(y);if(!c.test(y)){if(typeof u[y]==="undefined"){y=s.convertAttributeToSettingName(y,t.id);var m=s._getProperty(a,y);if(m){var _=d(b,n&&n.getController(),true);if(_&&typeof _==="object"){t[y]=_}else{t[y]=s.convertValueToType(s.getPropertyDataType(m),_||b)}}else if(s._getAssociation(a,y)){var A=s._getAssociation(a,y);if(A.multiple){b=b.replace(/\s*,\s*|\s+/g,",");t[y]=b.split(",").map(function(t){return n?n.createId(t):t})}else{t[y]=n?n.createId(b):b}}else if(s._getAggregation(a,y)){var w=s._getAggregation(a,y);if(w.multiple){var _=d(b,n&&n.getController());if(_){t[y]=_}else{throw new Error("Aggregation "+y+" with cardinality 0..n only allows binding paths as attribute value")}}else if(w.altTypes){var _=d(b,n&&n.getController(),true);if(_&&typeof _==="object"){t[y]=_}else{t[y]=s.convertValueToType(w.altTypes[0],_||b)}}else{throw new Error("Aggregation "+y+" not supported")}}else if(s._getEvent(a,y)){var C=n&&(n._oContainingView||n).getController();var T=o.resolveEventHandler(b,C);if(T){t[y]=T}else{throw new Error('Control "'+t.id+'": The function "'+b+'" for the event "'+y+'" is not defined')}}else{g(y==="id","DeclarativeSupport encountered unknown setting '"+y+"' for class '"+a.getMetadata().getName()+"' (value:'"+b+"')")}}else if(typeof u[y]==="function"){u[y](b,t,a)}}else{y=l(c.exec(y)[1]);var _=d(b,n&&n.getController());f.push(new r({key:y,value:_||b}))}}if(f.length>0){t.customData=f}return t};p._addSettingsForAggregations=function(t,e,a,r){var i=jQuery(a);var n=this._getDefaultAggregation(e,a);var o=this;var s=e.getMetadata().getAllAggregations();i.children().each(function(){var e=jQuery(this);var a=e.attr("data-sap-ui-aggregation");var i=e.attr("data-sap-ui-type");var u=false;if(!a){u=true;a=n}if(a&&s[a]){var l=s[a].multiple;var p=function(e){var i=o._createControl(e,r);if(i){if(l){if(!t[a]){t[a]=[]}if(typeof t[a].path==="string"){g(!t[a].template,"list bindings support only a single template object");t[a].template=i}else{t[a].push(i)}}else{t[a]=i}}};if(u||i&&!u){p(this)}else{e.children().each(function(){p(this)})}}e.removeAttr("data-sap-ui-aggregation");e.removeAttr("data-sap-ui-type")});return t};p._getId=function(t,e){var a=jQuery(t);var r=a.attr("id");if(r){if(e){r=e.createId(r);a.attr("data-sap-ui-id",r)}a.attr("id","")}return r};p._getProperty=function(t,e){return t.getMetadata().getProperty(e)};p.convertValueToType=function(a,r){if(a instanceof t){r=a.parseValue(r)}return typeof r==="string"?e.bindingParser.escape(r):r};p.getPropertyDataType=function(e){var a=t.getType(e.type);if(!a){throw new Error("Property "+e.name+" has no known type")}return a};p.convertAttributeToSettingName=function(t,e,a){if(t.indexOf("data-")===0){t=t.substr(5)}else if(a){s.warning('[Deprecated] Control "'+e+'": The attribute "'+t+'" is not prefixed with "data-*". Future version of declarative support will only suppport attributes with "data-*" prefix.')}else{throw new Error('Control "'+e+'": The attribute "'+t+'" is not prefixed with "data-*".')}return l(t)};p._getAssociation=function(t,e){return t.getMetadata().getAssociation(e)};p._getAggregation=function(t,e){return t.getMetadata().getAggregation(e)};p._getEvent=function(t,e){return t.getMetadata().getEvent(e)};p._getDefaultAggregation=function(t,e){var a=jQuery(e);var r=a.attr("data-sap-ui-default-aggregation")||t.getMetadata().getDefaultAggregationName();a.removeAttr("data-sap-ui-default-aggregation");return r};return p},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/ExtensionPoint", ["sap/base/future","sap/base/Log","sap/ui/core/mvc/View","sap/ui/core/Component"],function(e,n,i,t){"use strict";sap.ui.extensionpoint=function(e,i,t,a,r){n.warning("Do not use deprecated factory function 'sap.ui.extensionpoint'. Use 'sap.ui.core.ExtensionPoint.load' instead","sap.ui.extensionpoint",null,function(){return{type:"sap.ui.extensionpoint",name:i}});return o._factory(e,i,t,a,r)};let o={};(()=>{o=sap.ui.extensionpoint})();o._factory=function(a,r,s,u,f,c){var l,g,d,m;if(a){if(a.isA("sap.ui.core.mvc.View")){m=a.sViewName;g=a}else if(a.isA("sap.ui.core.Fragment")){m=a.getFragmentName();g=a._oContainingView}l=t.getCustomizing(a,{type:"sap.ui.viewExtensions",name:m,extensionName:r})}if(l){if(l.className){n.info("Customizing: View extension found for extension point '"+r+"' in View '"+g.sViewName+"': "+l.className+": "+(l.viewName||l.fragmentName));var p=g&&l.id?g.createId(l.id):l.id;var w={async:c,id:p,type:l.type};if(c&&g._sProcessingMode){w.processingMode=g._sProcessingMode}if(l.className==="sap.ui.core.Fragment"){var x=sap.ui.require("sap/ui/core/Fragment");w.fragmentName=l.fragmentName;w.containingView=g;if(c){if(x){d=x.load(w)}else{d=new Promise(function(e,n){sap.ui.require(["sap/ui/core/Fragment"],function(n){e(n.load(w))},n)})}}else{x=x||sap.ui.requireSync("sap/ui/core/Fragment");var v=new x(w);d=Array.isArray(v)?v:[v]}}else if(l.className==="sap.ui.core.mvc.View"){w.viewName=l.viewName;const e=true;if(e){const e=i._create(w);if(c){d=e.loaded()}else{d=[e]}}else{d=i.create(w)}}else{e.warningThrows("Customizing: Unknown extension className configured in Component.js for extension point '"+r+"' in View '"+g.sViewName+"': "+l.className+".",{suffix:"Extension className will be ignored."})}}else{e.warningThrows("Customizing: no extension className configured in Component.js for extension point '"+r+"' in View '"+g.sViewName+"': "+l.className)}}else if(o._fnExtensionProvider){var N=o._fnExtensionProvider(g);var y;if(g.isA("sap.ui.core.Fragment")){y=g._sExplicitId;var _=g.getController();g=_&&typeof _.isA==="function"&&_.isA("sap.ui.core.mvc.Controller")&&_.getView();if(g){y=g.getLocalId(y)||y}}if(N){if(!g){e.warningThrows("View instance could not be passed to ExtensionPoint Provider for extension point '"+r+"' "+"in fragment '"+y+"'.")}return[{providerClass:N,view:g,fragmentId:y,name:r,createDefault:s,targetControl:undefined,aggregationName:undefined,index:undefined,ready:function(e){var n=this._nextSibling;while(n!=null){n.index+=e.length;n=n._nextSibling}this._aControls=e},_aControls:[],_isExtensionPoint:true,_nextSibling:null}]}}if(!d&&typeof s==="function"){d=s()}var C=function(n){if(n&&!Array.isArray(n)){n=[n]}if(n&&u){var i=u.getMetadata().getAggregation(f);if(i){for(var t=0,o=n.length;t<o;t++){u[i._sMutator](n[t])}}else{e.errorThrows("Creating extension point failed - Tried to add extension point with name "+r+" to an aggregation of "+u.getId()+" in view "+g.sViewName+", but sAggregationName was not provided correctly and I could not find a default aggregation")}}return n||[]};if(d&&typeof d.then==="function"){return d.then(C)}else{return C(d)}};o.registerExtensionProvider=function(n){if(n==null){delete o._fnExtensionProvider}else if(typeof n=="function"){o._fnExtensionProvider=n}else{e.errorThrows("ExtensionPoint provider must be a function!")}};o.load=function(e){return Promise.resolve(o._factory(e.container,e.name,e.createDefaultContent,null,null,!!e.async))};return o});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/Fragment", ["../base/ManagedObject","./Element","./DeclarativeSupport","./XMLTemplateProcessor","sap/base/future","sap/base/Log","sap/base/util/LoaderExtensions","sap/base/util/merge","sap/ui/util/XMLHelper","sap/ui/core/Component","sap/ui/core/mvc/XMLProcessingMode"],function(e,t,n,i,r,o,a,s,f,m,u){"use strict";var g={},p={};var c=e.extend("sap.ui.core.Fragment",{metadata:{properties:{type:"string"},specialSettings:{async:{type:"boolean",visibility:"hidden"},fragmentName:"string",fragmentContent:"any",containingView:{type:"sap.ui.core.mvc.View",visibility:"hidden"},oController:{type:"sap.ui.core.mvc.Controller",visibility:"hidden"},sId:{type:"sap.ui.core.ID",visibility:"hidden"},sOwnerId:{type:"sap.ui.core.ID",visibility:"hidden"},processingMode:{type:"sap.ui.core.mvc.XMLProcessingMode",visibility:"hidden"}}},constructor:function(t,n){e.apply(this,arguments);if(!this._bAsync){if(this._aContent&&this._aContent.length==1){return this._aContent[0]}else{return this._aContent}}}});c.registerType=function(e,t){if(typeof e!=="string"){r.errorThrows("Invalid non-string Fragment type: '"+e+"'.",{suffix:"It will be ignored."});return}if(p[e]){o.warning("sap.ui.core.Fragment.registerType(): Fragment type '"+e+"' is already defined. Overriding this type now!")}p[e]=t};c.prototype._initCompositeSupport=function(e){if(!e){throw new Error("Settings must be set")}if(!(e.fragmentName||e.fragmentContent)){throw new Error("Please provide a fragment name")}if(e.oController){this.oController=e.oController}this._bAsync=e.async||false;this._sExplicitId=e.sId||e.id;this._sFragmentName=e.fragmentName;this.fnScopedRunWithOwner=e.containingView&&e.containingView.fnScopedRunWithOwner;if(!this.fnScopedRunWithOwner&&this._sOwnerId){var t=m.getComponentById(this._sOwnerId);this.fnScopedRunWithOwner=function(e){return t.runAsOwner(e)}}var n=c.getType(e.type);if(n){this._pContentPromise=n.init.apply(this,[e]);if(!this._pContentPromise){this._pContentPromise=Promise.resolve(this._aContent)}}else{throw new Error("No type for the fragment has been specified: "+e.type)}};c.prototype.getFragmentName=function(){return this._sFragmentName};c.prototype.getController=function(){return this.oController};c.byId=function(e,n){if(!(typeof e==="string"&&typeof n==="string")){r.errorThrows("sap.ui.core.Fragment.byId: two strings must be given as parameters, but are: "+e+" and "+n);return undefined}return t.getElementById(e+"--"+n)};c.createId=function(e,t){if(!(typeof e==="string"&&typeof t==="string")){r.errorThrows("sap.ui.core.Fragment.createId: two strings must be given as parameters, but are: "+e+" and "+t);return undefined}return e+"--"+t};c.prototype.createId=function(e){var t=this._sExplicitId?this._sExplicitId+"--"+e:e;if(this._oContainingView&&this._oContainingView!=this){t=this._oContainingView.createId(t)}return t};c.prototype.isSubView=function(){return true};sap.ui.fragment=function(e,t,n){var i;if(typeof t==="string"){i=t.toLowerCase()}else if(typeof e==="object"&&typeof e.type==="string"){i=e.type.toLowerCase()}else{i=""}o.info("Do not use deprecated factory function 'sap.ui."+i+"fragment'.","sap.ui."+i+"fragment",null,function(){var t={type:"sap.ui."+i+"fragment",name:(e.fragmentName||e)+".fragment."+i};if(e.fragmentContent){t.content=e.fragmentContent;t.name=""}return t});if(typeof e==="object"&&e.fragmentName?.startsWith("module:")||typeof e==="string"&&e.startsWith("module:")){throw new Error(`sap.ui.fragment(): module name syntax '${e.fragmentName||e}' is not supported.`)}return l(e,t,n)};function l(e,t,n){var i={};if(typeof e==="string"){i.fragmentName=e;i.oController=n;i.type=t}else if(typeof e==="object"){i=e;i.async=i.async===true?i.async:false;if(t){i.oController=t}if(i.async){var r=function(){var e=i.sOwnerId||i.containingView&&i.containingView._sOwnerId;var t=m.getComponentById(e);if(t){return t.runAsOwner(function(){return new c(i)})}return new c(i)};var a=c.getType(i.type);if(i.fragmentName&&i.fragmentContent){delete i.fragmentName}if(i.fragmentName&&typeof a.load=="function"){return new Promise(function(e,t){a.load(i).then(function(t){i.fragmentContent=t;e(r())}).catch(function(e){t(e)})})}else{return Promise.resolve(r())}}}else{o.error("sap.ui.fragment() must be called with Fragment name or config object as first parameter, but is: "+e)}return new c(i)}c.load=function(t){var n=Object.assign({},t);if(n.name&&n.definition){o.error("The properties 'name' and 'definition' shouldn't be provided at the same time. The fragment definition will be used instead of the name. Fragment name was: "+n.name);delete n.name}if(n.name?.startsWith("module:")){if(n.type){throw new TypeError(`Invalid arguments: If the fragment name is given in module name syntax the type must be omitted. Found type: '${n.type}'.`)}else{n.type="JS"}}else{n.type??="XML"}n.async=true;n.processingMode=n.processingMode||u.Sequential;n.fragmentName=n.fragmentName||n.name;n.fragmentContent=n.fragmentContent||n.definition;n.oController=n.controller;n.sOwnerId=e._sOwnerId;delete n.name;delete n.definition;delete n.controller;var i=l(n);return i.then(function(e){return e._pContentPromise})};c.getType=function(e){return p[e]};sap.ui.xmlfragment=function(e,t,n){if(typeof e==="string"){if(typeof t==="string"){return sap.ui.fragment({fragmentName:t,sId:e,type:"XML"},n)}else{return sap.ui.fragment(e,"XML",t)}}else{e.type="XML";return sap.ui.fragment(e,t)}};sap.ui.jsfragment=function(e,t,n){if(typeof e==="string"&&typeof t==="object"){if(t.createContent){g[e]=t;sap.ui.loader._.declareModule(e.replace(/\./g,"/")+".fragment.js")}else{return sap.ui.fragment(e,"JS",t)}}else if(typeof e==="string"&&t===undefined){return sap.ui.fragment(e,"JS")}else if(typeof e==="object"){e.type="JS";return sap.ui.fragment(e,t)}else if(arguments.length>=3){return sap.ui.fragment({id:e,fragmentName:t,type:"JS"},n)}else{o.error("sap.ui.jsfragment() was called with wrong parameter set: "+e+" + "+t)}};sap.ui.htmlfragment=function(e,t,n){if(typeof e==="string"){if(typeof t==="string"){return sap.ui.fragment({fragmentName:t,sId:e,type:"HTML"},n)}else{return sap.ui.fragment(e,"HTML",t)}}else{e.type="HTML";return sap.ui.fragment(e,t)}};c.registerType("XML",{load:function(e){return i.loadTemplatePromise(e.fragmentName,"fragment").then(function(e){return e})},init:function(n){this._aContent=[];if(n.fragmentContent){if(typeof n.fragmentContent==="string"){this._xContent=f.parse(n.fragmentContent).documentElement}else{this._xContent=n.fragmentContent}}else{o.warning("Synchronous loading of fragment, due to Fragment.init() call for '"+n.fragmentName+"'. Use 'sap/ui/core/Fragment' module with Fragment.load() instead.","SyncXHR",null,function(){return{type:"SyncXHR",name:"Fragment"}});this._xContent=i.loadTemplate(n.fragmentName,"fragment")}this._oContainingView=this._sExplicitId?this:n.containingView||this;if(this._oContainingView===this){this._oContainingView.oController=n.containingView&&n.containingView.oController||n.oController}this._sProcessingMode=n.processingMode;var a=this._oContainingView._fnSettingsPreprocessor;var s={fnRunWithPreprocessor:function(t){return e.runWithPreprocessors(t,{settings:a})}};var m=i.parseTemplatePromise(this._xContent,this,this._bAsync,s).then(function(e){this._aContent=e;if(this._aContent&&this._aContent.length&&n.objectBindings){this._aContent.forEach(function(e,i){if(e instanceof t){for(var r in n.objectBindings){e.bindObject(n.objectBindings[r])}}})}return this._aContent.length>1?this._aContent:this._aContent[0]}.bind(this));if(!this._bAsync){try{m.unwrap()}catch(e){r.errorThrows(this.getMetadata().getName()+": An Error occured during XML processing of '"+(n.fragmentName||n.fragmentContent)+"' with id '"+this.getId()+"'",{cause:e})}}return m}});c.registerType("JS",{load:function(e){let t;if(e.fragmentName.startsWith("module:")){t=e.fragmentName.substring(7)}else{t=e.fragmentName.replace(/\./g,"/")+".fragment"}return new Promise(function(e,n){sap.ui.require([t],function(t){e(t)},n)})},init:function(t){this._aContent=[];if(t.fragmentContent){s(this,t.fragmentContent)}else{(()=>{if(!g[t.fragmentName]){sap.ui.requireSync(t.fragmentName.replace(/\./g,"/")+".fragment")}})();s(this,g[t.fragmentName])}this._oContainingView=t.containingView||this;return e.runWithPreprocessors(function(){var e;if(this.fnScopedRunWithOwner){this.fnScopedRunWithOwner(function(){e=this.createContent(t.oController||this._oContainingView.oController)}.bind(this))}else{e=this.createContent(t.oController||this._oContainingView.oController)}if(e instanceof Promise){return e.then(function(e){this._aContent=this._aContent.concat(e);return this._aContent.length>1?this._aContent:this._aContent[0]}.bind(this))}else{return new Promise(function(t,n){this._aContent=this._aContent.concat(e);t(this._aContent.length>1?this._aContent:this._aContent[0])}.bind(this))}}.bind(this),{settings:this._oContainingView._fnSettingsPreprocessor})}});(function(){var t={};var i=function(e){var n=sap.ui.require.toUrl(e.replace(/\./g,"/"))+".fragment.html";var i=t[n];var r;if(!i){r=e.replace(/\./g,"/")+".fragment.html";i=a.loadResource(r);t[n]=i}return i};c.registerType("HTML",{load:function(e){var t=e.fragmentName.replace(/\./g,"/")+".fragment";return a.loadResource(t+".html",{async:true}).then(function(e){return e})},init:function(t){this._aContent=[];this.getContent=function(){return this._aContent};this.addContent=function(e){this._aContent.push(e)};this._oContainingView=t.containingView||this;this._sProcessingMode=t.processingMode;var r=t.fragmentContent||i(t.fragmentName);this._oTemplate=document.createElement("div");if(typeof r==="string"){this._oTemplate.innerHTML=r}else{var o=r;var a=document.createDocumentFragment();for(var s=0;s<o.length;s++){a.appendChild(o.item(s))}this._oTemplate.appendChild(a)}var f=this._oTemplate.getElementsByTagName("template")[0];var m=this.getMetadata().getAllProperties();if(f){var u=this;var g=f.getAttributeNames();for(var s=0;s<g.length-1;s++){var p=g[s];var c=n.convertAttributeToSettingName(p,u.getId());var l=f.getAttribute(p);var h=m[c];if(!t[c]){if(h){t[c]=n.convertValueToType(n.getPropertyDataType(h),l)}else if(sap.ui.core.mvc.HTMLView._mAllowedSettings[c]){t[c]=l}}}this._oTemplate=f}if(this._oTemplate.content){var d=this._oTemplate.content;this._oTemplate=document.createElement("div");this._oTemplate.appendChild(d)}return e.runWithPreprocessors(function(){if(this.fnScopedRunWithOwner){this.fnScopedRunWithOwner(function(){n.compile(this._oTemplate,this)}.bind(this))}else{n.compile(this._oTemplate,this)}var e=this.getContent();if(e&&e.length===1){this._aContent=[e[0]];return new Promise(function(e,t){e(this._aContent[0])}.bind(this))}}.bind(this),{settings:this._oContainingView._fnSettingsPreprocessor})}})})();return c});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/HTML", ["sap/ui/thirdparty/jquery","sap/base/Log","./Control","./RenderManager","./HTMLRenderer","sap/base/security/sanitizeHTML"],function(jQuery,e,t,n,r,i){"use strict";var s=n.RenderPrefixes;var o=t.extend("sap.ui.core.HTML",{metadata:{library:"sap.ui.core",properties:{content:{type:"string",group:"Misc",defaultValue:null},preferDOM:{type:"boolean",group:"Misc",defaultValue:true},sanitizeContent:{type:"boolean",group:"Misc",defaultValue:false},visible:{type:"boolean",group:"Appearance",defaultValue:true}},events:{afterRendering:{parameters:{isPreservedDOM:{type:"boolean"}}}}},renderer:r});o.prototype.getDomRef=function(e){var t=e?this.getId()+"-"+e:this.getId();return document.getElementById(s.Dummy+t)||document.getElementById(t)};o.prototype.setContent=function(t){function n(e){if(jQuery.parseHTML){var t=jQuery.parseHTML(e);if(t){var n=0,r=t.length;while(n<r&&t[n].nodeType!=1){n++}while(n<r&&t[r-1].nodeType!=1){r--}if(n>0||r<t.length){t=t.slice(n,r)}return jQuery(t)}}return jQuery(e)}if(this.getSanitizeContent()){e.trace("sanitizing HTML content for "+this);t=i(t)}this.setProperty("content",t,true);if(this.getDomRef()){var r=n(this.getContent());jQuery(this.getDomRef()).replaceWith(r);this._postprocessNewContent(r)}else{this.invalidate()}return this};o.prototype.setSanitizeContent=function(e){this.setProperty("sanitizeContent",e,true);if(e){this.setContent(this.getContent())}return this};o.prototype.onBeforeRendering=function(){if(!this.getPreferDOM()){return}var e=this.getDomRef();if(e&&!n.isPreservedContent(e)){for(var t=e.id,r;e&&e.getAttribute("data-sap-ui-preserve")==t;e=r){r=e.nextElementSibling;n.preserveContent(e,true,false)}}};o.prototype.onAfterRendering=function(){if(!this.getVisible()){return}var e=jQuery(document.getElementById(s.Dummy+this.getId()));var t=n.findPreservedContent(this.getId());var r;var i=false;if(!this.getPreferDOM()||t.length==0){t.remove();r=new jQuery(this.getContent());e.replaceWith(r)}else if(t.length>0){e.replaceWith(t);r=t;i=true}else{e.remove()}this._postprocessNewContent(r);this.fireAfterRendering({isPreservedDOM:i})};o.prototype._postprocessNewContent=function(t){if(t&&t.length>0){if(t.length>1){e.warning("[Unsupported Feature]: "+this+" has rendered "+t.length+" root nodes!")}else{var r=t.attr("id");if(r&&r!=this.getId()){e.warning("[Unsupported Feature]: Id of HTML Control '"+this.getId()+"' does not match with content id '"+r+"'!")}}if(this.getPreferDOM()){n.markPreservableContent(t,this.getId())}if(t.find("#"+this.getId().replace(/(:|\.)/g,"\\$1")).length===0){t.filter(":not([id])").first().attr("id",this.getId())}}else{e.debug(""+this+" is empty after rendering, setting bOutput to false");this.bOutput=false}};o.prototype.setDOMContent=function(e){var t=jQuery(e);if(this.getDomRef()){jQuery(this.getDomRef()).replaceWith(t);this._postprocessNewContent(t)}else{t.appendTo(n.getPreserveAreaRef());if(this.getUIArea()){this.getUIArea().invalidate()}this._postprocessNewContent(t)}return this};o.prototype.setTooltip=function(){e.warning("The sap.ui.core.HTML control doesn't support tooltips. Add the tooltip to the HTML content instead.");return t.prototype.setTooltip.apply(this,arguments)};"hasStyleClass addStyleClass removeStyleClass toggleStyleClass".split(" ").forEach(function(n){o.prototype[n]=function(){e.warning("The sap.ui.core.HTML control doesn't support custom style classes. Manage custom CSS classes in the HTML content instead.");return t.prototype[n].apply(this,arguments)}});return o});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/HTMLRenderer", ["./RenderManager"],function(e){"use strict";var n=e.RenderPrefixes;var r={apiVersion:2,render:function(e,r){e.openStart("div",n.Dummy+r.getId());e.style("display","none");e.openEnd();e.close("div")}};return r},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/History", ["sap/ui/base/Object","sap/ui/util/Storage"],function(t,i){"use strict";var s=t.extend("sap.ui.core.History",{constructor:function(s,r){t.apply(this);if(!r){r={}}var e=r.prefix?r.prefix:document.location.pathname;this._iMaxHistory=r.max?r.max:100;this._sHistoryId=e+s;this._oStorage=new i(i.Type.local);this._fFilter=r.filter?r.filter:function(t,i){return t&&(!i||i&&(typeof i=="string"?t.toLowerCase().startsWith(i.toLowerCase()):false))};this._fCheckHistory=r.checkHistory?r.checkHistory:function(t){return t}},_initHistory:function(){if(!this._aHistory){var t=this._oStorage.get(this._sHistoryId);if(typeof t==="string"){t=t.split(",")}else if(!t){t=[]}this._aHistory=this._fCheckHistory(t)}return this._aHistory},get:function(t){var i=this._initHistory();var s=[];for(var r=0;r<i.length;r++){if(this._fFilter(i[r],t)){s.push(i[r])}}return s},remove:function(t){var i=this._initHistory();for(var s=0;s<i.length;s++){if(i[s]==t){i.splice(s,1);break}}},add:function(t){var i=this._initHistory();for(var s=0;s<i.length;s++){if(i[s]===t){i.splice(s,1);break}}i.unshift(t);if(i.length>this._iMaxHistory){i.splice(this._iMaxHistory)}this._oStorage.put(this._sHistoryId,i)},clear:function(){this._oStorage.remove(this._sHistoryId);this._aHistory=null}});return s});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/Icon", ["sap/base/assert","../Device","./Control","./_IconRegistry","./InvisibleText","./library","./IconRenderer","./Lib","sap/ui/events/KeyCodes","sap/base/Log","sap/base/util/each"],function(e,t,o,r,s,i,n,a,l,c,u){"use strict";var p=i.IconColor;var h=i.CSSColor;var d=function(e){if(e!=null&&e!==""&&!h.isValid(e)&&!(e in p)){c.error('"'+e+'" is not of type sap.ui.core.CSSColor nor of type sap.ui.core.IconColor.');return false}else{return true}};var f=o.extend("sap.ui.core.Icon",{metadata:{interfaces:["sap.ui.core.IFormContent"],library:"sap.ui.core",designtime:"sap/ui/core/designtime/Icon.designtime",properties:{src:{type:"sap.ui.core.URI",group:"Data",defaultValue:null},size:{type:"sap.ui.core.CSSSize",group:"Dimension",defaultValue:null},color:{type:"string",group:"Appearance",defaultValue:null},hoverColor:{type:"string",group:"Appearance",defaultValue:null},activeColor:{type:"string",group:"Appearance",defaultValue:null},width:{type:"sap.ui.core.CSSSize",group:"Dimension",defaultValue:null},height:{type:"sap.ui.core.CSSSize",group:"Dimension",defaultValue:null},backgroundColor:{type:"string",group:"Appearance",defaultValue:null},hoverBackgroundColor:{type:"string",group:"Appearance",defaultValue:null},activeBackgroundColor:{type:"string",group:"Appearance",defaultValue:null},decorative:{type:"boolean",group:"Accessibility",defaultValue:true},useIconTooltip:{type:"boolean",group:"Accessibility",defaultValue:true},alt:{type:"string",group:"Accessibility",defaultValue:null},noTabStop:{type:"boolean",group:"Accessibility",defaultValue:false}},aggregations:{_invisibleText:{type:"sap.ui.core.InvisibleText",multiple:false,visibility:"hidden"}},associations:{ariaLabelledBy:{type:"sap.ui.core.Control",multiple:true,singularName:"ariaLabelledBy"}},events:{press:{}}},renderer:n});f.prototype[t.support.touch?"ontouchstart":"onmousedown"]=function(e){if(this.hasListeners("press")){e.setMarked()}if(!e.targetTouches||e.targetTouches&&e.targetTouches.length===1){this._activeIcon()}};f.prototype[t.support.touch?"ontouchend":"onmouseup"]=function(e){if(!e.targetTouches||e.targetTouches&&e.targetTouches.length===0){this._deactiveIcon()}};f.prototype._activeIcon=function(){var e=this.getActiveColor(),t=this.getActiveBackgroundColor(),o;if(e||t){o=this.$();o.addClass("sapUiIconActive");if(e){this._addColorClass(e,"color")}if(t){this._addColorClass(t,"background-color")}}};f.prototype._deactiveIcon=function(){this.$().removeClass("sapUiIconActive");this._restoreColors(t.system.desktop?"hover":undefined)};f.prototype.onmouseover=function(){var e=this.getHoverColor(),t=this.getHoverBackgroundColor();if(e){this._addColorClass(e,"color")}if(t){this._addColorClass(t,"background-color")}};f.prototype.onmouseout=function(){this._restoreColors()};f.prototype[t.support.touch&&!t.system.desktop?"ontap":"onclick"]=function(e){if(this.hasListeners("press")){e.setMarked()}this.firePress({})};f.prototype.onkeydown=function(e){if((e.which===l.SPACE||e.which===l.ENTER||e.which===l.ESCAPE||e.which===l.SHIFT)&&!e.ctrlKey&&!e.metaKey){if(this.hasListeners("press")&&(e.which===l.SPACE||e.which===l.ENTER)){e.setMarked();this._activeIcon()}if(e.which===l.ENTER){this.firePress({})}if(e.which===l.SPACE){if(this.hasListeners("press")){e.preventDefault()}this._bPressedSpace=true}if(this._bPressedSpace){if(e.which===l.SHIFT||e.which===l.ESCAPE){this._bPressedEscapeOrShift=true;this._deactiveIcon()}}}else{if(this._bPressedSpace){e.preventDefault()}}};f.prototype.onkeyup=function(e){if(e.which===l.ENTER){e.setMarked();this._deactiveIcon()}if(e.which===l.SPACE){if(!this._bPressedEscapeOrShift){e.setMarked();this._deactiveIcon();this.firePress({})}else{this._bPressedEscapeOrShift=false}this._bPressedSpace=false}if(e.which===l.ESCAPE){this._bPressedSpace=false}};f.prototype._restoreColors=function(e){var t,o;if(e==="hover"){t=this.getHoverColor();o=this.getHoverBackgroundColor()}t=t||this.getColor();o=o||this.getBackgroundColor();this._addColorClass(t||"","color");this._addColorClass(o||"","background-color")};f.prototype._addColorClass=function(e,t){var o=this.$(),r=this;var s="";if(t==="color"){s="sapUiIconColor"}else if(t==="background-color"){s="sapUiIconBGColor"}else{return}u(p,function(e,t){r.removeStyleClass(s+t)});if(e in p){o.css(t,"");this.addStyleClass(s+e)}else{o.css(t,e)}};f.prototype.setSrc=function(t){e(t==null||t==""||r.isIconURI(t),this+": Property 'src' (value: '"+t+"') should be a valid Icon URI (sap-icon://...)");return this.setProperty("src",t)};f.prototype.setColor=function(e){if(d(e)){this.setProperty("color",e,true);this._addColorClass(e,"color")}return this};f.prototype.setActiveColor=function(e){if(d(e)){this.setProperty("activeColor",e,true)}return this};f.prototype.setHoverColor=function(e){if(d(e)){this.setProperty("hoverColor",e,true)}return this};f.prototype.setBackgroundColor=function(e){if(d(e)){this.setProperty("backgroundColor",e,true);this._addColorClass(e,"background-color")}return this};f.prototype.setActiveBackgroundColor=function(e){if(d(e)){this.setProperty("activeBackgroundColor",e,true)}return this};f.prototype.setHoverBackgroundColor=function(e){if(d(e)){this.setProperty("hoverBackgroundColor",e,true)}return this};f.prototype.attachEvent=function(e){o.prototype.attachEvent.apply(this,arguments);if(e=="press"&&this.hasListeners("press")){this.invalidate()}return this};f.prototype.detachEvent=function(e){o.prototype.detachEvent.apply(this,arguments);if(e=="press"&&!this.hasListeners("press")){this.invalidate()}return this};f.prototype._getOutputTitle=function(e){var t=this.getTooltip_AsString(),o=this.getUseIconTooltip();if(t||o&&e&&e.text){return t||e.text}};f.prototype._getIconLabel=function(e){var t=this.getAlt(),o=this.getTooltip_AsString(),r=this.getUseIconTooltip(),s=t||o||r&&e&&(e.text||e.name);if(s){return s}};f.prototype._createInvisibleText=function(e){var t=this.getAggregation("_invisibleText");if(!t){t=new s(this.getId()+"-label",{text:e});this.setAggregation("_invisibleText",t,true)}else{t.setText(e)}return t};f.prototype._getAccessibilityAttributes=function(e){var t=this.getAriaLabelledBy(),o={},r=this._getIconLabel(e),s;if(this.getDecorative()){o.role="presentation";o.hidden="true"}else if(this.hasListeners("press")){o.role="button"}else{o.role="img"}if(t.length>0){if(r){s=this._createInvisibleText(r);t.push(s.getId())}o.labelledby=t.join(" ")}else if(r){o.label=r}return o};f.prototype.getAccessibilityInfo=function(){if(this.getDecorative()){return null}var e=this.hasListeners("press");var t=r.getIconInfo(this.getSrc(),undefined,"sync");return{role:e?"button":"img",type:a.getResourceBundleFor("sap.ui.core").getText(e?"ACC_CTR_TYPE_BUTTON":"ACC_CTR_TYPE_IMAGE"),description:this.getAlt()||this.getTooltip_AsString()||(t?t.text||t.name:""),focusable:e}};return f});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/IconPool", ["sap/ui/core/Icon","sap/ui/core/_IconRegistry","sap/base/Log","./Core"],function(t,a,e){"use strict";var n={};n.createControlByURI=function(a,e){if(typeof a==="string"){a={src:a}}if(a&&a.src){var o=a.src,i=e;if(n.isIconURI(o)){i=t;if(a.tap){a.press=a.tap;delete a.tap}}if(typeof i==="function"){a=i.getMetadata().removeUnknownSettings(a);return new i(a)}}};n.addIcon=a.addIcon;n.getIconURI=a.getIconURI;n.getIconInfo=a.getIconInfo;n.fontLoaded=function(t){var e=a.getFontRegistry();if(e[t]){if(e[t].metadataLoaded instanceof Promise){return e[t].metadataLoaded}else if(e[t].metadataLoaded===true){return Promise.resolve()}}};n.isIconURI=a.isIconURI;n.getIconCollectionNames=a.getIconCollectionNames;n.getIconNames=a.getIconNames;n.insertFontFaceStyle=a.insertFontFaceStyle;n.registerFont=function(t){t.collectionName=t.collectionName||t.fontFamily;if(!t.fontURI){e.error("The configuration parameter fontURI is missing, cannot register the font '"+t.collectionName+"'!");return}if(t.fontFamily===a.sapIconFontFamily){e.error("The font family"+a.sapIconFontFamily+" is already registered");return}if(t.fontURI.substr(t.fontURI.length-1)!=="/"){t.fontURI+="/"}var n=a.getFontRegistry();if(!n[t.collectionName]||n[t.collectionName].metadataLoaded===false){n[t.collectionName]={config:t}}else{e.warning("The font '"+t.collectionName+"' is already registered")}if(!t.lazy){a._loadFontMetadata(t.collectionName,true)}};var o={"application/msword":"sap-icon://doc-attachment","application/vnd.google-apps.document":"sap-icon://doc-attachment","application/vnd.openxmlformats-officedocument.wordprocessingml.document":"sap-icon://doc-attachment","application/rtf":"sap-icon://doc-attachment","application/pdf":"sap-icon://pdf-attachment","application/msexcel":"sap-icon://excel-attachment","application/vnd.ms-excel":"sap-icon://excel-attachment","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":"sap-icon://excel-attachment","application/vnd.ms-excel.sheet.macroenabled.12":"sap-icon://excel-attachment","application/vnd.openxmlformats-officedocument.spreadsheetml.template":"sap-icon://excel-attachment","application/vnd.ms-excel.template.macroenabled.12":"sap-icon://excel-attachment","application/vnd.ms-excel.sheet.binary.macroenabled.12":"sap-icon://excel-attachment","application/vnd.ms-excel.addin.macroenabled.12":"sap-icon://excel-attachment","application/vnd.google-apps.spreadsheet":"sap-icon://excel-attachment","application/vnd.ms-powerpoint":"sap-icon://ppt-attachment","application/vnd.google-apps.presentation":"sap-icon://ppt-attachment","application/vnd.openxmlformats-officedocument.presentationml.presentation":"sap-icon://ppt-attachment","application/vnd.openxmlformats-officedocument.presentationml.slideshow":"sap-icon://ppt-attachment","application/mspowerpoint":"sap-icon://ppt-attachment","application/xml":"sap-icon://attachment-html","application/xhtml+xml":"sap-icon://attachment-html","application/x-httpd-php":"sap-icon://attachment-html","application/x-javascript":"sap-icon://attachment-html","application/gzip":"sap-icon://attachment-zip-file","application/x-rar-compressed":"sap-icon://attachment-zip-file","application/x-tar":"sap-icon://attachment-zip-file","application/zip":"sap-icon://attachment-zip-file","audio/mpeg":"sap-icon://attachment-audio","audio/voxware":"sap-icon://attachment-audio","audio/x-aiff":"sap-icon://attachment-audio","audio/x-midi":"sap-icon://attachment-audio","audio/x-mpeg":"sap-icon://attachment-audio","audio/x-m4a":"sap-icon://attachment-audio","audio/x-pn-realaudio":"sap-icon://attachment-audio","audio/x-pn-realaudio-plugin":"sap-icon://attachment-audio","audio/x-qt-stream":"sap-icon://attachment-audio","audio/x-wav":"sap-icon://attachment-audio","image/png":"sap-icon://attachment-photo","image/tiff":"sap-icon://attachment-photo","image/bmp":"sap-icon://attachment-photo","image/jpeg":"sap-icon://attachment-photo","image/gif":"sap-icon://attachment-photo","text/plain":"sap-icon://attachment-text-file","text/comma-separated-values":"sap-icon://attachment-text-file","text/css":"sap-icon://attachment-text-file","text/javascript":"sap-icon://attachment-text-file","text/richtext":"sap-icon://attachment-text-file","text/rtf":"sap-icon://attachment-text-file","text/tab-separated-values":"sap-icon://attachment-text-file","text/xml":"sap-icon://attachment-text-file","text/html":"sap-icon://attachment-html","video/mpeg":"sap-icon://attachment-video","video/mp4":"sap-icon://attachment-video","video/quicktime":"sap-icon://attachment-video","video/x-msvideo":"sap-icon://attachment-video","application/x-shockwave-flash":"sap-icon://attachment-video"};n.getIconForMimeType=function(t){return o[t?.toLowerCase()]||"sap-icon://document"};return n},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/IconRenderer", ["./_IconRegistry","./library","sap/base/security/encodeCSS"],function(e,t,i){"use strict";var n=t.IconColor;var s={apiVersion:2};s.render=function(t,s){var r=e.getIconInfo(s.getSrc(),undefined,"mixed"),a=s.getWidth(),o=s.getHeight(),l=s.getColor(),c=s.getBackgroundColor(),g=s.getSize(),f=s._getOutputTitle(r),p,d,u,y=false;if(r instanceof Promise){r.then(s.invalidate.bind(s))}else if(r){y=true;p=s.getAriaLabelledBy();u=s._getAccessibilityAttributes(r);d=s.getAggregation("_invisibleText")}t.openStart("span",s);t.class("sapUiIcon");if(y){t.accessibilityState(s,u);t.attr("data-sap-ui-icon-content",r.content);t.style("font-family","'"+i(r.fontFamily)+"'");if(!r.suppressMirroring){t.class("sapUiIconMirrorInRTL")}}if(s.hasListeners("press")){t.class("sapUiIconPointer");if(!s.getNoTabStop()){t.attr("tabindex","0")}}t.style("width",a);t.style("height",o);t.style("line-height",o);t.style("font-size",g);if(l&&!(l in n)){t.style("color",l)}if(c&&!(c in n)){t.style("background-color",c)}t.openEnd();if(f){t.openStart("span").class("sapUiIconTitle").attr("title",f).attr("aria-hidden",true).openEnd().close("span")}if(p&&p.length&&d){t.renderControl(d)}t.close("span")};return s},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/IndicationColorSupport", ["./library","sap/ui/core/Lib"],function(I,T){"use strict";var N=I.IndicationColor;var t={};var e=null;var A=function(){if(!e){e={};var I=T.getResourceBundleFor("sap.ui.core");e[N.Indication01]=I.getText("INDICATION_STATE_INDICATION01");e[N.Indication02]=I.getText("INDICATION_STATE_INDICATION02");e[N.Indication03]=I.getText("INDICATION_STATE_INDICATION03");e[N.Indication04]=I.getText("INDICATION_STATE_INDICATION04");e[N.Indication05]=I.getText("INDICATION_STATE_INDICATION05");e[N.Indication06]=I.getText("INDICATION_STATE_INDICATION06");e[N.Indication07]=I.getText("INDICATION_STATE_INDICATION07");e[N.Indication08]=I.getText("INDICATION_STATE_INDICATION08");e[N.Indication09]=I.getText("INDICATION_STATE_INDICATION09");e[N.Indication10]=I.getText("INDICATION_STATE_INDICATION10");e[N.Indication11]=I.getText("INDICATION_STATE_INDICATION11");e[N.Indication12]=I.getText("INDICATION_STATE_INDICATION12");e[N.Indication13]=I.getText("INDICATION_STATE_INDICATION13");e[N.Indication14]=I.getText("INDICATION_STATE_INDICATION14");e[N.Indication15]=I.getText("INDICATION_STATE_INDICATION15");e[N.Indication16]=I.getText("INDICATION_STATE_INDICATION16");e[N.Indication17]=I.getText("INDICATION_STATE_INDICATION17");e[N.Indication18]=I.getText("INDICATION_STATE_INDICATION18");e[N.Indication19]=I.getText("INDICATION_STATE_INDICATION19");e[N.Indication20]=I.getText("INDICATION_STATE_INDICATION20")}};t.getAdditionalText=function(I){var T=null;if(I&&I.getValueState){T=I.getIndicationColor()}else if(N[I]){T=I}if(T){A();return e[T]}return null};return t},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/InvisibleMessage", ["./library","./Core","sap/ui/base/ManagedObject","sap/base/Log","sap/ui/core/StaticArea"],function(e,t,s,i,n){"use strict";var a;var r=e.InvisibleMessageMode;var o=s.extend("sap.ui.core.InvisibleMessage",{constructor:function(){s.apply(this,arguments);if(a){i.warning("This is a singleton, therefore you are not able to create another instance of this class.");return a}a=this}});o.getInstance=function(){if(!a){a=new o("__invisiblemessage",{})}return a};o.prototype.init=function(){var e=n.getDomRef();if(!e){t.ready(()=>{this._insertInstances()})}else{this._insertInstances()}};o.prototype.announce=function(e,t){var s=n.getDomRef(),a=s.querySelector(".sapUiInvisibleMessagePolite"),o=s.querySelector(".sapUiInvisibleMessageAssertive");if(!a||!o){return}var l=t===r.Assertive?o:a;l.textContent="";l.textContent=e;if(t!==r.Assertive&&t!==r.Polite){i.info("You have entered an invalid mode. Valid values are: "+'"Polite" '+'and "Assertive".'+' The framework will automatically set the mode to "Polite".')}setTimeout(function(){if(l.textContent===e){l.textContent=""}},3e3)};o.prototype.getPoliteInstance=function(){var e=this.getId();return'<span id="'+e+"-polite"+'" data-sap-ui="'+e+"-polite"+'" class="sapUiInvisibleMessagePolite" role="status" aria-live="polite">'+"</span>"};o.prototype.getAssertiveInstance=function(){var e=this.getId();return'<span id="'+e+"-assertive"+'" data-sap-ui="'+e+"-assertive"+'" class="sapUiInvisibleMessageAssertive" role="status" aria-live="assertive">'+"</span>"};o.prototype._insertInstances=function(){var e=n.getDomRef();e.insertAdjacentHTML("beforeend",this.getPoliteInstance());e.insertAdjacentHTML("beforeend",this.getAssertiveInstance())};return o});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/InvisibleText", ["sap/base/Log","sap/base/i18n/Localization","sap/base/security/encodeXML","./Control","./ControlBehavior","./Element","./Lib","./StaticArea","./library"],function(t,e,r,i,n,s,o,a){"use strict";var p=i.extend("sap.ui.core.InvisibleText",{metadata:{library:"sap.ui.core",publicMethods:["toStatic"],properties:{text:{type:"string",defaultValue:""}}},renderer:{apiVersion:2,render:function(t,e){t.openStart("span",e);t.class("sapUiInvisibleText");t.attr("aria-hidden","true");t.openEnd();t.text(e.getText()||"");t.close("span")}}});function u(e){return function(){t.warning(e+" is not supported by control sap.ui.core.InvisibleText.");return this}}p.prototype.setBusy=u("Property busy");p.prototype.setBusyIndicatorDelay=u("Property busy");p.prototype.setBusyIndicatorSize=u("Property busy");p.prototype.setVisible=u("Property visible");p.prototype.setTooltip=u("Aggregation tooltip");p.prototype.setText=function(t){this.setProperty("text",t,true);this.$().html(r(this.getText()||""));return this};p.prototype.getRendererMarkup=function(){var t=this.getId();return'<span id="'+t+'" data-sap-ui="'+t+'" class="sapUiInvisibleText" aria-hidden="true">'+r(this.getText())+"</span>"};p.prototype.toStatic=function(){try{var t=a.getDomRef();t.insertAdjacentHTML("beforeend",this.getRendererMarkup());this.bOutput=true}catch(t){this.placeAt("sap-ui-static")}return this};p.prototype.exit=function(){var t=this.getDomRef();if(t&&a.contains(t)){t.remove()}};var c=Object.create(null);p.getStaticId=function(t,e){var r="",i,s,a;if(n.isAccessibilityEnabled()&&e){i=t+"|"+e;r=c[i];if(r==null){s=o.getResourceBundleFor(t);a=(new p).setText(s?s.getText(e):e);a.toStatic();r=c[i]=a.getId();delete a._sOwnerId}}return r};e.attachChange(function(t){var e,r,i,n;for(e in c){r=e.indexOf("|");i=o.getResourceBundleFor(e.slice(0,r));n=s.getElementById(c[e]);n&&n.setText(i.getText(e.slice(r+1)))}});return p});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/Item", ["./Element","./library"],function(e,t){"use strict";var a=t.TextDirection;var r=e.extend("sap.ui.core.Item",{metadata:{library:"sap.ui.core",properties:{text:{type:"string",group:"Data",defaultValue:""},enabled:{type:"boolean",group:"Misc",defaultValue:true},textDirection:{type:"sap.ui.core.TextDirection",group:"Misc",defaultValue:a.Inherit},key:{type:"string",group:"Data",defaultValue:null}}}});return r});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/LayoutData", ["./Element","sap/ui/thirdparty/jquery","./library"],function(t,jQuery){"use strict";var a=t.extend("sap.ui.core.LayoutData",{metadata:{abstract:true,library:"sap.ui.core"}});a.prototype.invalidate=function(){var t=this.getParent();if(t&&t.getMetadata().getName()=="sap.ui.core.VariantLayoutData"){t=t.getParent()}if(t){var a=t.getParent();if(a){var e=jQuery.Event("LayoutDataChange");e.srcControl=t;a._handleEvent(e)}}};a.prototype.setLayoutData=function(t){return this};return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/ListItem", ["./Item","./library"],function(e){"use strict";var t=e.extend("sap.ui.core.ListItem",{metadata:{library:"sap.ui.core",properties:{icon:{type:"string",group:"Appearance",defaultValue:null},additionalText:{type:"string",group:"Data",defaultValue:null}}}});return t});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/LocalBusyIndicator", ["./Control","./theming/Parameters","./LocalBusyIndicatorRenderer","./library"],function(t,e,i){"use strict";var o=t.extend("sap.ui.core.LocalBusyIndicator",{metadata:{deprecated:true,library:"sap.ui.core",properties:{width:{type:"sap.ui.core.CSSSize",group:"Misc",defaultValue:"100px"},height:{type:"sap.ui.core.CSSSize",group:"Misc",defaultValue:"100px"}}},renderer:i});o.prototype.init=function(){var t="sap.ui.core.LocalBusyIndicator:";var i="sapUiLocalBusyIndicatorBoxSize";i=e.get(t+i);this._iBoxSize=8;i="sapUiLocalBusyIndicatorBoxColor";this._sBoxColor=e.get(t+i);i="sapUiLocalBusyIndicatorBoxColorActive";this._sBoxColorActive=e.get(t+i);this._animateProxy=r.bind(this)};o.prototype.exit=function(){clearTimeout(this._delayedCallId);delete this._delayedCallId};o.prototype.onThemeChanged=function(t){if(this.getDomRef()){this.invalidate()}};o.prototype.onAfterRendering=function(){var t=parseInt(this.getWidth());var e=parseInt(this.getHeight());var i=this.$();i.css("width",t+"px");i.css("height",e+"px");var o=this.$("animation");var r=Math.floor(t/2);r-=Math.floor(5*this._iBoxSize/2);var s=Math.floor(e/2)-Math.floor(this._iBoxSize/2);o.css("left",r+"px");o.css("top",s+"px");if(!this._$left){this._$left=this.$("leftBox")}if(!this._$middle){this._$middle=this.$("middleBox")}if(!this._$right){this._$right=this.$("rightBox")}this._delayedCallId=setTimeout(this._animateProxy,0)};var r=function(){if(this.getDomRef()){var t=this;var e,i,o;var r="",s="";if(t._$left){e=t._$left}else{return}if(t._$middle){i=t._$middle}else{return}if(t._$right){o=t._$right}else{return}if(t._sBoxColor){r=t._sBoxColor}else{return}if(t._sBoxColorActive){s=t._sBoxColorActive}else{return}e.css("background-color",s);setTimeout(function(){e.css("background-color",r);i.css("background-color",s);setTimeout(function(){i.css("background-color",r);o.css("background-color",s);setTimeout(function(){o.css("background-color",r)},150)},150)},150);this._delayedCallId=setTimeout(this._animateProxy,1200)}};return o});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/LocalBusyIndicatorRenderer", function(){"use strict";var n=function(n,a){var i=a.getId();var o=i+"-animation";var t=["-leftBox","-middleBox","-rightBox"];n.openStart("div",o);n.class("sapUiLocalBusyIndicatorAnimation");n.openEnd();for(var e=0;e<t.length;e++){n.openStart("div",i+t[e]);n.class("sapUiLocalBusyIndicatorBox");n.openEnd();n.close("div")}n.close("div")};var a={apiVersion:2};a.render=function(a,i){a.openStart("div",i);a.class("sapUiLocalBusyIndicator");a.openEnd();n(a,i);a.close("div")};return a},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/LocalBusyIndicatorSupport", ["./Control","sap/base/Log"],function(t,e){"use strict";var s=function(){if(this===t.prototype){this.setDelay=this.setBusyIndicatorDelay}else{e.error("Only controls can use the LocalBusyIndicator",this)}};return s},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/Message", ["./Element","./library","./Theming","sap/base/Log"],function(e,r,a,t){"use strict";var n=r.MessageType;var s=e.extend("sap.ui.core.Message",{metadata:{library:"sap.ui.core",properties:{text:{type:"string",group:"Misc",defaultValue:null},timestamp:{type:"string",group:"Misc",defaultValue:null},icon:{type:"sap.ui.core.URI",group:"Misc",defaultValue:null},level:{type:"sap.ui.core.MessageType",group:"Misc",defaultValue:n.None},readOnly:{type:"boolean",group:"Misc",defaultValue:false}}}});s.prototype.getDefaultIcon=function(e){var r=sap.ui.require.toUrl("sap/ui/core/themes/"+a.getTheme());var t=r+"/img/message/";if(e&&e=="32x32"){t+="32x32/"}else{t+="16x16/"}var s="";switch(this.getProperty("level")){case n.Error:s=t+"Message_Icon_Error.png";break;case n.Information:s=t+"Message_Icon_Information.png";break;case n.Warning:s=t+"Message_Icon_Warning.png";break;case n.Success:s=t+"Message_Icon_Success.png";break;case n.None:default:s=this.getProperty("icon");break}return s};s.prototype.compareByType=function(e){return s.compareByType(this,e)};s.compareByType=function(e,r){if(!e&&!r){return 0}if(e&&!r){return 1}if(!e&&r){return-1}var a=e.getLevel();var s=r.getLevel();if(a===s){return 0}switch(a){case n.Error:return 1;case n.Warning:return s===n.Error?-1:1;case n.Success:return s===n.Error||s===n.Warning?-1:1;case n.Information:return s===n.None?1:-1;case n.None:return-1;default:t.error("Comparison error",this);return 0}};return s});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/Placeholder", ["sap/ui/base/Object","sap/base/config","sap/base/util/Deferred","sap/base/util/LoaderExtensions","sap/ui/core/BlockLayerUtils"],function(e,t,i,o,s){"use strict";var a=[];var n=e.extend("sap.ui.core.Placeholder",{constructor:function(t){e.call(this);if(!t.html){throw new Error("An HTML page defining the placeholder's content must be given!")}this.bShow=false;this.placeholderHTML=t.html},show:function(e,t){this.bShow=true;return this._load().then(function(i){if(i&&this.bShow&&!e.getDomRef().contains(this.placeholder)){if(this.blockState){s.unblock(this.blockState)}this.blockState=s.block(e,e.getId()+"--placeholder",t);var o=this.blockState.$blockLayer[0];o.className+=" sapUiPlaceholder";o.insertAdjacentHTML("beforeend",i);this.placeholder=o}return i}.bind(this))},hide:function(){this.bShow=false;if(this.placeholder&&this.blockState){s.unblock(this.blockState);this.placeholder=undefined;this.blockState=undefined}if(this.pLoaded){this.pLoaded.resolve()}},_load:function(){if(!this.pLoaded){this.pLoaded=new i;if(this.placeholderHTML){o.loadResource(this.placeholderHTML,{async:true,dataType:"html"}).then(function(e){this.placeholderContent=e;this.pLoaded.resolve(e)}.bind(this))}else{this.pLoaded.reject()}}return this.pLoaded.promise}});n.registerProvider=function(e){a.push(e)};n.hasProviders=function(){return a.length>0};n.getPlaceholderFromProviders=function(e){var t;if(e){a.some(function(i){t=i(e);return!!t})}return t};n.isEnabled=function(){return t.get({name:"sapUiXxPlaceholder",type:t.Type.Boolean,external:true,defaultValue:true})};return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/Popup", ["sap/ui/Device","sap/ui/base/DataType","sap/ui/base/Event","sap/ui/base/ManagedObject","sap/ui/base/Object","sap/ui/base/ObjectPool","./Control","./Element","./EventBus","./FocusHandler","./IntervalTrigger","./RenderManager","./ResizeHandler","./library","./StaticArea","sap/base/assert","sap/base/Log","sap/base/i18n/Localization","sap/base/util/Version","sap/base/util/uid","sap/base/util/extend","sap/base/util/each","sap/base/util/deepExtend","sap/ui/events/F6Navigation","sap/ui/base/EventProvider","sap/ui/thirdparty/jquery","sap/ui/thirdparty/jqueryui/jquery-ui-position","sap/ui/dom/jquery/control","sap/ui/dom/jquery/Focusable","sap/ui/dom/jquery/rect"],function(t,e,i,o,s,n,r,a,l,u,f,p,h,c,d,_,g,b,m,v,y,C,E,P,O,jQuery){"use strict";var S=c.CSSSize;var I=c.OpenState;var w=c.Collision;var L;var x;var F;var k="sapUiPopupResize";var A=new l;if(window.ResizeObserver){F=new window.ResizeObserver(function(t){B(jQuery("#sap-ui-blocklayer-popup"),t[0].target)})}else{F={observe:function(t){var e=t.dataset[k];if(!e){e=h.register(t,function(t){B(jQuery("#sap-ui-blocklayer-popup"),t.target)});t.dataset[k]=e}},unobserve:function(t){var e=t.dataset[k];if(e){h.deregister(e);delete t.dataset[k]}}}}function D(){if(L){return L}var t;try{L=d.getUIArea()}catch(t){g.error(t);throw new Error("Popup cannot be opened because static UIArea cannot be determined.")}t=new r;L.addDependent(t);L=t.getUIArea();t.destroy();return L}function R(t){var e;if(typeof t==="string"){e=document.querySelector(t)}else if(t instanceof a){e=t.getDomRef()}else{e=t}return e||window}function N(t){var e=["left","top","width","height"];if(t[0]){t[0].classList.remove("sapUiBLyWithin");e.forEach(function(e){t[0].style.removeProperty(e)})}}function B(t,e){var i=e.getBoundingClientRect();t.css({width:i.width,height:i.height}).addClass("sapUiBLyWithin").position({my:"left top",at:"left top",of:e})}var U=o.extend("sap.ui.core.Popup",{constructor:function(t,e,i,s){_(arguments.length==0||t&&typeof t==="object","oContent must be an object or there may be no arguments at all");_(e===undefined||e===true||e===false,"bModal must be true, false, or undefined");_(i===undefined||i===true||i===false,"bShadow must be true, false, or undefined");_(s===undefined||s===true||s===false,"bAutoClose must be true, false, or undefined");o.apply(this);this._popupUID=v();this.bOpen=false;this.eOpenState=I.CLOSED;this._mEvents={};this._mEvents["sap.ui.core.Popup.addFocusableContent-"+this._popupUID]=this._addFocusableArea;this._mEvents["sap.ui.core.Popup.removeFocusableContent-"+this._popupUID]=this._removeFocusableArea;this._mEvents["sap.ui.core.Popup.closePopup-"+this._popupUID]=this._closePopup;this._mEvents["sap.ui.core.Popup.onFocusEvent-"+this._popupUID]=this.onFocusEvent;this._mEvents["sap.ui.core.Popup.increaseZIndex-"+this._popupUID]=this._increaseMyZIndex;this._mEvents["sap.ui.core.Popup.contains-"+this._popupUID]=this._containsEventBusWrapper;this._mEvents["sap.ui.core.Popup.extendFocusInfo-"+this._popupUID]=this._extendFocusInfoEventBusWrapper;if(t){this.setContent(t)}this._oDefaultPosition={my:U.Dock.CenterCenter,at:U.Dock.CenterCenter,of:document,offset:"0 0",collision:"flip"};this._oPosition=Object.assign({},this._oDefaultPosition);this._bModal=!!e;this._oPreviousFocus=null;this._sInitialFocusId=null;this._bShadow=typeof i==="boolean"?i:true;this._bAutoClose=!!s;this._animations={open:null,close:null};this._durations={open:"fast",close:"fast"};this._iZIndex=-1;this.setNavigationMode();if(this.touchEnabled){this._fAutoCloseHandler=function(t){if(t.isMarked("delayedMouseEvent")||t.isMarked("cancelAutoClose")){return}if(this.eOpenState===I.CLOSING||this.eOpenState===I.CLOSED){return}if(!this._contains(t.target)){this.close()}}.bind(this)}this._F6NavigationHandler=function(t){var e={},i=this._sF6NavMode,o;if(i=="DOCK"){if(this._bModal){i="NONE"}else if(this._oLastPosition&&this._oLastPosition.of){o=this._getOfDom(this._oLastPosition.of);if(!o||o===document){o=null;i="NONE"}}}switch(i){case"SCOPE":e.scope=this._$()[0];break;case"DOCK":e.target=o;var s=jQuery(o).parents("[data-sap-ui-popup]");e.scope=s.length?s[0]:null;break;default:e.skip=true}P.handleF6GroupNavigation(t,e)}.bind(this)},metadata:{library:"sap.ui.core",publicMethods:["open","close","setContent","getContent","setPosition","setShadow","setModal","getModal","setAutoClose","setAutoCloseAreas","setExtraContent","isOpen","getAutoClose","getOpenState","setAnimations","setDurations","attachOpened","attachClosed","detachOpened","detachClosed"],associations:{childPopups:{type:"sap.ui.core.Popup",multiple:true,visibility:"hidden"}},events:{opened:{},closed:{}}}});U.prototype.getChildPopups=function(){return this.getAssociation("childPopups",[])};U.prototype.addChildPopup=function(t){return this.addAssociation("childPopups",t)};U.prototype.removeChildPopup=function(t){return this.removeAssociation("childPopups",t)};U.blStack=[];U.Dock={BeginTop:"begin top",BeginCenter:"begin center",BeginBottom:"begin bottom",LeftTop:"left top",LeftCenter:"left center",LeftBottom:"left bottom",CenterTop:"center top",CenterCenter:"center center",CenterBottom:"center bottom",RightTop:"right top",RightCenter:"right center",RightBottom:"right bottom",EndTop:"end top",EndCenter:"end center",EndBottom:"end bottom"};e.registerEnum("sap.ui.core.Popup.Dock",U.Dock);U.prototype.touchEnabled=t.support.touch&&(t.browser.safari||!t.system.combi);U.prototype.preventBrowserFocus=t.support.touch&&!t.system.combi;var T=s.extend("sap.ui.core.Popup.Layer",{constructor:function(){s.call(this);var t=this.getDomString();this._$Ref=jQuery(t).appendTo(d.getDomRef())}});T.prototype.init=function(t,e){this._$Ref.css({visibility:"visible","z-index":e});this.update(t,e);this._$Ref.insertAfter(t).show()};T.prototype.update=function(t,e){if(t.length){var i=t.rect();this._$Ref.css({left:i.left,top:i.top});if(t.css("right")!="auto"&&t.css("right")!="inherit"){this._$Ref.css({right:t.css("right"),width:"auto"})}else{this._$Ref.css({width:i.width,right:"auto"})}if(t.css("bottom")!="auto"&&t.css("bottom")!="inherit"){this._$Ref.css({bottom:t.css("bottom"),height:"auto"})}else{this._$Ref.css({height:i.height,bottom:"auto"})}if(typeof e==="number"){this._$Ref.css("z-index",e)}}};T.prototype.reset=function(){if(this._$Ref.length){this._$Ref[0].style.display="none";this._$Ref[0].style.visibility="hidden";this._$Ref.appendTo(d.getDomRef())}};T.prototype.getDomString=function(){g.error("sap.ui.core.Popup.Layer: getDomString function must be overwritten!");return""};var M=T.extend("sap.ui.core.Popup.ShieldLayer",{constructor:function(){T.apply(this)}});M.prototype.getDomString=function(){return'<div class="sapUiPopupShield" id="sap-ui-shieldlayer-'+v()+'"></div>'};U.prototype.oShieldLayerPool=new n(M);(function(){var t=0;var e=Math.pow(2,32)-1;U.setInitialZIndex=function(i){if(i>=e){throw new Error("Z-index can't be higher than Number.MAX_SAFE_INTEGER")}t=Math.max(i,this.getLastZIndex())};U.getLastZIndex=function(){return t};U.prototype.getLastZIndex=function(){return U.getLastZIndex()};U.getNextZIndex=function(){t+=10;if(t>=e){throw new Error("Z-index can't be higher than Number.MAX_SAFE_INTEGER")}return t};U.prototype.getNextZIndex=function(){return U.getNextZIndex()}})();var $=function(t,e){if(!t&&e||t&&!e){return false}if(!t&&!e){return true}var i=3;var o=Math.abs(t.left-e.left);var s=Math.abs(t.top-e.top);var n=Math.abs(t.width-e.width);var r=Math.abs(t.height-e.height);if(o>i||s>i||n>i||r>i){return false}return true};U.prototype.open=function(t,e,i,o,s,n,l,u){_(this.oContent,"Popup content must have been set by now");if(this.eOpenState!=I.CLOSED){return}if(typeof t=="string"){u=l;l=n;n=s;s=o;o=i;i=e;e=t;t=-1}if(typeof l==="boolean"||typeof l==="function"||l===U.CLOSE_ON_SCROLL){u=l;l=undefined}if(t===undefined){t=-1}_(t===-1||typeof t==="number"&&t%1==0,"iDuration must be an integer (or omitted)");_(e===undefined||typeof e==="string","my must be a string or empty");_(i===undefined||typeof i==="string","at must be a string or empty");_(!o||typeof o==="object"||typeof o==="function","of must be empty or an object");_(!s||typeof s==="string","offset must be empty or a string");_(!n||w.isValid(n),"collision must be empty or of type sap.ui.core.Collision");_(!l||l===window||typeof l==="string"||l instanceof a||l instanceof HTMLElement,"within must be either empty, or the global window object, or a string, or a sap.ui.core.Element, or a DOM element");_(!u||typeof u==="boolean"||typeof u==="function"||u===U.CLOSE_ON_SCROLL,"followOf must be either empty or a boolean");this.eOpenState=I.OPENING;var f=D(),p;this._bContentAddedToStatic=false;this._bUIAreaPatched=false;if(this.oContent instanceof r){if(!this.oContent.getParent()){f.addContent(this.oContent,true);this._bContentAddedToStatic=true}else if(!this.oContent.getUIArea()){this.oContent.getUIArea=function(){return f};this._bUIAreaPatched=true}p=this.oContent.getUIArea();if(U._bEnableUIAreaCheck&&p.getRootNode().id!==f.getRootNode().id){g.warning("The Popup content is NOT connected with the static-UIArea and may not work properly!")}}this._oPreviousFocus=U.getCurrentFocusInfo();if(this.isInPopup(o)||this.isInPopup(this._oPosition.of)){var h=this.getParentPopupId(o)||this.getParentPopupId(this._oPosition.of);var c="";var b=this.getContent();if(b instanceof a){c=b.getId()}else if(typeof b==="object"){c=b.id}this.addChildToPopup(h,c);this.addChildToPopup(h,this._popupUID)}var m=this._$(true);m.addClass("sapUiPopupInitial");m.css({position:"absolute",display:"block",visibility:"visible",opacity:""});var v="fast";if(t===0||t>0){v=t}else if(this._durations.open===0||this._durations.open>0){v=this._durations.open}var y;if(e||i||o||s||n||l){y=this._createPosition(e,i,o,s,n,l);this._oPosition=y}else{y=this._oPosition;if(!this._bOwnWithin&&x){this._oPosition.within=x}}if(!y.of){y.of=this._oPosition.of||document}this._iZIndex=this._iZIndex===this.getLastZIndex()?this._iZIndex:this.getNextZIndex();var C=d.getDomRef();if(!(m[0].parentNode==C)){m.appendTo(C)}m.css("z-index",this._iZIndex);g.debug("position popup content "+m.attr("id")+" at "+JSON.stringify(y.at));this._applyPosition(y);if(u!==undefined){this.setFollowOf(u)}m.toggleClass("sapUiShd",this._bShadow);var E=v==0;this._duringOpen(!E);if(E){this._opened()}else if(this._animations.open){this._animations.open.call(null,m,v,this._opened.bind(this))}else{m.fadeTo(v,1,this._opened.bind(this))}};U.prototype._getDomRefToFocus=function(){var t=this._$(false,true),e,i;if(this._shouldGetFocusAfterOpen()){if(this._sInitialFocusId){i=a.getElementById(this._sInitialFocusId);if(i){e=i.getFocusDomRef()}e=e||window.document.getElementById(this._sInitialFocusId)}e=e||t.firstFocusableDomRef()}return e};U.prototype._opened=function(){if(this.eOpenState!==I.OPENING){return}this.bOpen=true;var t=this._$(false,true);t.removeClass("sapUiPopupInitial");this._activateFocusHandle();this._$(false,true).on("keydown",this._F6NavigationHandler);if(this.getFollowOf()){U.DockTrigger.addListener(U.checkDocking,this)}this.eOpenState=I.OPEN;this.fireOpened()};U.prototype._duringOpen=function(t){U._clearSelection();this._setupUserSelection();if(this._bModal){this._showBlockLayer()}if(this._shouldGetFocusAfterOpen()){var e=this._getDomRefToFocus();if(e){e.focus()}var i=this._getOfDom(this._oLastPosition.of);var o=jQuery(i).rect();if(this._oLastOfRect&&o&&!$(this._oLastOfRect,o)){this._applyPosition(this._oLastPosition)}}if(this.oContent instanceof a){this.oContent.addDelegate(this)}this.bOpen=true};U.prototype._shouldGetFocusAfterOpen=function(){return this._bModal||this._bAutoClose||this._sInitialFocusId};U.prototype._contains=function(t){var e=this._$().get(0);if(!e){return false}var i=e.contains(t);var o;if(!i){o=this.getChildPopups();i=o.some(function(e){var i=e?window.document.getElementById(e):null;var o=i&&i.contains(t);if(!o){var s="sap.ui.core.Popup.contains-"+e;var n={domRef:t};A.publish("sap.ui",s,n);o=n.contains}return o})}if(!i){z.forEach(function(e){i=i||jQuery(t).closest(e).length>0})}return i};U.prototype._containsEventBusWrapper=function(t,e,i){i.contains=this._contains(i.domRef)};U.prototype.onFocusEvent=function(e){var i=jQuery.event.fix(e);if(arguments.length>1&&arguments[1]==="sap.ui.core.Popup.onFocusEvent-"+this._popupUID){i=jQuery.event.fix(arguments[2])}var o=i.type=="focus"||i.type=="activate"?"focus":"blur";var s=false;if(o=="focus"){var n=this._$().get(0);if(n){s=this._contains(i.target);g.debug("focus event on "+i.target.id+", contains: "+s);if(this._bModal&&!s){var r=U.blStack.length>0&&U.blStack[U.blStack.length-1].popup===this;if(r){if(t.system.desktop||jQuery(i.target).is(":input")){if(this.oLastBlurredElement){setTimeout(function(){if(this.oLastBlurredElement){this.oLastBlurredElement.focus()}}.bind(this),0)}else{n.focus()}}}}else if(this._bAutoClose&&s&&this._sTimeoutId){clearTimeout(this._sTimeoutId);this._sTimeoutId=null}}}else if(o=="blur"){g.debug("blur event on "+i.target.id);if(this._bModal){this.oLastBlurredElement=i.target}else if(this._bAutoClose){if(!this.touchEnabled&&!this._sTimeoutId){if(i.target===document.activeElement){return}var a=typeof this._durations.close==="string"?0:this._durations.close;this._sTimeoutId=setTimeout(function(){this.close(a,"autocloseBlur");var t=this._oLastPosition&&this._oLastPosition.of;if(t){var e=this.getParentPopupId(t);if(e){var o="sap.ui.core.Popup.onFocusEvent-"+e;A.publish("sap.ui",o,i)}}}.bind(this),a)}}}};U.prototype.setInitialFocusId=function(t){_(!t||typeof t==="string","sId must be a string or empty");this._sInitialFocusId=t};U.prototype.close=function(t){if(U._autoCloseDebug){return}if(this._sTimeoutId){clearTimeout(this._sTimeoutId);this._sTimeoutId=null}_(t===undefined||typeof t==="number"&&t%1==0,"iDuration must be empty or an integer");if(this.eOpenState==I.CLOSED||this.eOpenState==I.CLOSING){return}var e="fast";if(t===0||t>0){e=t}else if(this._durations.close===0||this._durations.close>0){e=this._durations.close}this.eOpenState=I.CLOSING;if(this.getFollowOf()){U.DockTrigger.removeListener(U.checkDocking,this)}if(this.oContent){if(this._bContentAddedToStatic){A.publish("sap.ui","__beforePopupClose",{domNode:this._$().get(0)});var i=d.getUIArea();const t=i.indexOfContent(this.oContent);if(t>=0){i.removeContent(t,true)}}else if(this._bUIAreaPatched){delete this.oContent.getUIArea}}this._bContentAddedToStatic=false;this._bUIAreaPatched=false;this._sTimeoutId=null;this._deactivateFocusHandle();this._$(false,true).off("keydown",this._F6NavigationHandler);if(this.oContent instanceof a){this.oContent.removeDelegate(this)}var o=this._$();if(this._bEventBusEventsRegistered){this._unregisterEventBusEvents()}if(this.isInPopup(this._oLastPosition.of)){var s=this.getParentPopupId(this._oLastPosition.of);var n="";var r=this.getContent();if(r instanceof a){n=r.getId()}else if(typeof r==="object"){n=r.id}this.removeChildFromPopup(s,n);this.removeChildFromPopup(s,this._popupUID)}if(this._bModal&&this.preventBrowserFocus){o.one("mousedown",function(t){t.preventDefault()})}this._duringClose();if(e==0){this._closed()}else if(this._animations.close){this._animations.close.call(null,o,e,this._closed.bind(this))}else{o.fadeOut(e,this._closed.bind(this))}};U.prototype._closed=function(){var t=this._$(false,true);if(this._bModal){this._hideBlockLayer()}U._clearSelection();this._restoreUserSelection();if(t.length){var e=t.get(0);if(e){e.style.display="none";e.style.visibility="hidden";e.style.left="0px";e.style.top="0px";e.style.right=""}t=this._$(false,true);e=t.length?t[0]:null;if(e){e.style.display="none";e.style.visibility="hidden";e.style.left="0px";e.style.top="0px";e.style.right=""}}if(this._bModal){U.applyFocusInfo(this._oPreviousFocus);this._oPreviousFocus=null;this.oLastBlurredElement=null}this.bOpen=false;this.eOpenState=I.CLOSED;var i=this.getChildPopups();for(var o=0,s=i.length;o<s;o++){this.closePopup(i[o])}this.fireClosed()};U.prototype._duringClose=function(){if(this._resizeListenerId){h.deregister(this._resizeListenerId);this._resizeListenerId=null}};U.getCurrentFocusInfo=function(){var t=null;var e=a.closestTo(document.activeElement);if(e){t={sFocusId:e.getId(),oFocusInfo:e.getFocusInfo()}}else{t={sFocusId:document.activeElement.id,oFocusedElement:document.activeElement,oFocusInfo:{}}}if(t){t.popup=this}return t};U.applyFocusInfo=function(t){var e={preventScroll:true};if(t){var i=a.getElementById(t.sFocusId);if(i){i.applyFocusInfo(Object.assign(e,t.oFocusInfo))}else{var o=(t.sFocusId?window.document.getElementById(t.sFocusId):null)||t.oFocusedElement;if(o){o.focus(e)}}}};U.prototype.setContent=function(t){_(typeof t==="object","oContent must be an object");this.oContent=t;return this};U.prototype.getContent=function(){return this.oContent};U.prototype.setPosition=function(t,e,i,o,s,n){_(typeof t==="string","my must be a string");_(typeof e==="string"||typeof e==="object"&&typeof e.left==="number"&&typeof e.top==="number","my must be a string or an object with 'left' and 'top' properties");_(!i||typeof i==="object"||typeof i==="function","of must be empty or an object");_(!o||typeof o==="string","offset must be empty or a string");_(!s||w.isValid(s),"collision must be empty or of type sap.ui.core.Collision");_(!n||n===window||typeof n==="string"||n instanceof a||n instanceof HTMLElement,"within must be either empty, or the global window object, or a string, or a sap.ui.core.Element, or a DOM element");this._oPosition=this._createPosition(t,e,i,o,s,n);if(this.eOpenState!=I.CLOSED){this._applyPosition(this._oPosition)}return this};U.prototype._createPosition=function(t,e,i,o,s,n){var r=false;if(t&&(t.indexOf("+")>=0||t.indexOf("-")>=0)){r=true;if(o&&o!="0 0"){g.warning("offset used in my and in offset, the offset value will be ignored","sap.ui.core.Popup","setPosition")}o=null}var a=y({},this._oDefaultPosition,{my:t||this._oDefaultPosition.my,at:e||this._oDefaultPosition.at,of:i,offset:o,collision:s});if(n||x){a.within=n||x}this._bOwnWithin=!!n;if(!jQuery.ui.version){if(U._bNewOffset==null){U._bNewOffset=true;var l=jQuery(document.createElement("div"));l.position({of:window,using:function(t,e){U._bNewOffset=e!==undefined}})}}var u=[];var f=[];if(U._bNewOffset||m(jQuery.ui.version).compareTo("1.8.23")>0){if(o&&o!="0 0"){u=a.my.split(" ");f=o.split(" ");var p=[parseInt(f[0])<0?"":"+",parseInt(f[1])<0?"":"+"];a.my=u[0]+p[0]+f[0]+" "+u[1]+p[1]+f[1];a.offset=null}}else if(r){u=a.my.split(" ");f=["",""];var h=u[0].indexOf("+");if(h<0){h=u[0].indexOf("-")}if(h>=0){f[0]=u[0].slice(h);u[0]=u[0].slice(0,h)}h=u[1].indexOf("+");if(h<0){h=u[1].indexOf("-")}if(h>=0){f[1]=u[1].slice(h);u[1]=u[1].slice(0,h)}a.my=u[0]+" "+u[1];a.offset=f[0]+" "+f[1]}return a};U.prototype._getPositionOffset=function(){var t=[];if(this._oPosition.my&&(this._oPosition.my.indexOf("+")>=0||this._oPosition.my.indexOf("-")>=0)){var e=this._oPosition.my.split(" ");var i=e[0].indexOf("+");if(i<0){i=e[0].indexOf("-")}if(i>=0){t[0]=e[0].slice(i)}i=e[1].indexOf("+");if(i<0){i=e[1].indexOf("-")}if(i>=0){t[1]=e[1].slice(i)}}else if(this._oPosition.offset){t=this._oPosition.offset.split(" ")}return t};U.prototype._applyPosition=function(t){var e=b.getRTL();var i=this._$();if(i.length){var o=t.at;var s=i.get(0);if(typeof o==="string"){s.style.display="block";s.style.left="";s.style.right="";i.position(this._resolveReference(this._convertPositionRTL(t,e)));this._fixPositioning(t,e)}else if(S.isValid(o.left)&&S.isValid(o.top)){i.css({left:o.left,top:o.top})}else if(S.isValid(o.right)&&S.isValid(o.top)){i.css({right:o.right,top:o.top})}else if(typeof o.left==="number"&&typeof o.top==="number"){var n=i[0];if(n&&n.style.right){var r=i[0].getBoundingClientRect().width;i.css({right:document.documentElement.clientWidth-(o.left+r)+"px",top:o.top+"px"})}else{i.css({left:o.left+"px",top:o.top+"px"})}}this._oLastPosition=t;this._oLastOfRect=this._calcOfRect(t.of)}};U.prototype._calcOfRect=function(t){var e=this._getOfDom(t);if(e){return jQuery(e).rect()}return null};U.prototype._getOfDom=function(t){if(t instanceof jQuery.Event){return null}var e;if(typeof t==="string"){e=jQuery(document.getElementById(t))}else if(t instanceof jQuery){e=t}else{e=jQuery(t instanceof a?t.getDomRef():t)}return e[0]};U.prototype._convertPositionRTL=function(t,e){var i=Object.assign({},t);if(e){var o=false;if(i.my&&(i.my.indexOf("+")>=0||i.my.indexOf("-")>=0)){o=true}if((i.offset||o)&&(i.my.indexOf("begin")>-1||i.my.indexOf("end")>-1)&&(i.at.indexOf("begin")>-1||i.at.indexOf("end")>-1)){if(o){var s=i.my.split(" ");if(s.length==2){i.my="";if(s[0]){if(s[0].indexOf("begin")>-1||s[0].indexOf("end")>-1){if(s[0].indexOf("+")>-1){s[0]=s[0].replace("+","-")}else if(s[0].indexOf("-")>-1){s[0]=s[0].replace("-","+")}}i.my=s[0]}if(s[1]){if(s[1].indexOf("begin")>-1||s[1].indexOf("end")>-1){if(s[1].indexOf("+")>-1){s[1]=s[1].replace("+","-")}else if(s[1].indexOf("-")>-1){s[1]=s[1].replace("-","+")}}if(s[0]){i.my=i.my+" "}i.my=i.my+s[1]}}}else{i.offset=this._mirrorOffset(i.offset)}}i.my=i.my.replace("begin","right").replace("end","left");i.at=i.at.replace("begin","right").replace("end","left")}else{i.my=i.my.replace("end","right").replace("begin","left");i.at=i.at.replace("end","right").replace("begin","left")}return i};U.prototype._mirrorOffset=function(t){var e=String(t).trim().split(/\s/);var i=parseInt(e[0]);return-i+" "+e[e.length-1]};U.prototype._fixPositioning=function(t,e){var i=t.my;if(typeof i==="string"){if(U._isPositionFixingNeeded(i,e)){var o=this._$();var s=jQuery(window).width()-o[0].getBoundingClientRect().width-o.offset().left;o.css({right:s+"px",left:""})}}};U._isPositionFixingNeeded=function(t,e){return e&&(t.indexOf("right")>-1||t.indexOf("begin")>-1||t.indexOf("center")>-1)||!e&&(t.indexOf("right")>-1||t.indexOf("end")>-1)};U.prototype._resolveReference=function(t){var e,i=["of","within"];i.forEach(function(i){if(t[i]instanceof a){e=e||{};e[i]=t[i].getDomRef()}});return e?Object.assign({},t,e):t};U.prototype.setShadow=function(t){_(typeof t==="boolean","bShowShadow must be boolean");this._bShadow=t;if(this.eOpenState!=I.CLOSED){this._$().toggleClass("sapUiShd",t)}return this};U.prototype.setModal=function(t,e){_(typeof t==="boolean","bModal must be boolean");_(!e||typeof e==="string","sModalCSSClass must be empty or a string");var i=this._bModal;this._bModal=t;this._sModalCSSClass=e;if(this.isOpen()){if(i!==t){U._clearSelection();if(t){this._setupUserSelection();this._showBlockLayer()}else{this._hideBlockLayer();this._restoreUserSelection()}if(this.touchEnabled&&this._bAutoClose){if(!t){jQuery(document).on("touchstart mousedown",this._fAutoCloseHandler)}else{jQuery(document).off("touchstart mousedown",this._fAutoCloseHandler)}}}}return this};U.prototype.getModal=function(){return this._bModal};U.prototype.setNavigationMode=function(t){if(t!="NONE"&&t!="DOCK"&&t!="SCOPE"){this._sF6NavMode="NONE"}this._sF6NavMode=t};U.prototype.setAutoClose=function(t){_(typeof t==="boolean","bAutoClose must be boolean");if(this.touchEnabled&&this.isOpen()&&this._bAutoClose!==t){if(!this._bModal){if(t){jQuery(document).on("touchstart mousedown",this._fAutoCloseHandler)}else{jQuery(document).off("touchstart mousedown",this._fAutoCloseHandler)}}}this._bAutoClose=t;return this};U.prototype.setExtraContent=function(t){_(Array.isArray(t),"Extra popup content must be an array which contains either sap.ui.core.Element, DOM Element or an ID");if(!this._aExtraContent){this._aExtraContent=[]}var e=function(t){return{onBeforeRendering:function(){var e=t.getDomRef();if(e&&this.isOpen()){e.removeEventListener("blur",this.fnEventHandler,true)}},onAfterRendering:function(){var e=t.getDomRef();if(e&&this.isOpen()){e.addEventListener("blur",this.fnEventHandler,true)}}}};var i,o,s,n;for(var r=0,l=t.length;r<l;r++){o=t[r];if(o instanceof a){i=o.getId()}else if(typeof o==="object"){i=o.id}else if(typeof o==="string"){i=o}if(this.getChildPopups().indexOf(i)===-1){this.addChildPopup(i);n={id:i};if(o instanceof a){s=e(o);o.addEventDelegate(s,this);n.delegate=s}this._aExtraContent.push(n)}}return this};U.prototype.setAutoCloseAreas=U.prototype.setExtraContent;U.prototype.setAnimations=function(t,e){_(t===null||typeof t==="function","fnOpen must be a function");_(e===null||typeof e==="function","fnClose must be a function");if(t&&typeof t=="function"){this._animations.open=t}if(e&&typeof e=="function"){this._animations.close=e}return this};U.prototype.setDurations=function(t,e){_(t===null||typeof t==="number"&&t%1==0,"iOpenDuration must be null or an integer");_(!e||typeof e==="number"&&e%1==0,"iOpenDuration must be undefined or an integer");if(t>0||t===0){this._durations.open=t}if(e>0||e===0){this._durations.close=e}return this};U.CLOSE_ON_SCROLL="close_Popup_if_of_is_moved";U.prototype._fnCloseOnScroll=function(t){this.close()};U.prototype.setFollowOf=function(t){U.DockTrigger.removeListener(U.checkDocking,this);var e=false;this._bFollowOf=true;this._followOfHandler=null;if(typeof t==="function"){this._followOfHandler=t;e=true}else if(typeof t==="boolean"){e=t}else if(t===U.CLOSE_ON_SCROLL){this._followOfHandler=this._fnCloseOnScroll;e=true}else{this._bFollowOf=false;if(t!==null){g.error("Trying to set an invalid type to 'followOf: "+t)}}if(e&&this._oLastPosition){this._oLastOfRect=this._calcOfRect(this._oLastPosition.of)}if(this._bFollowOf&&this.getOpenState()===I.OPEN){U.DockTrigger.addListener(U.checkDocking,this)}};U.prototype.getAutoClose=function(){return this._bAutoClose};U.prototype.getFollowOf=function(){if(this._bFollowOf){return typeof this._followOfHandler==="function"?this._followOfHandler:true}return false};U.prototype.isOpen=function(){return this.bOpen};U.prototype.getOpenState=function(){return this.eOpenState};U.prototype.destroy=function(){if(this._resizeListenerId){h.deregister(this._resizeListenerId);this._resizeListenerId=null}this.close(0);this.oContent=null;if(this._bFollowOf){this.setFollowOf(null)}if(this._bEventBusEventsRegistered){this._unregisterEventBusEvents()}if(this._iTopShieldRemoveTimer){clearTimeout(this._iTopShieldRemoveTimer);this.oShieldLayerPool.returnObject(this._oTopShieldLayer);this._oTopShieldLayer=null;this._iTopShieldRemoveTimer=null}if(this._iBottomShieldRemoveTimer){clearTimeout(this._iBottomShieldRemoveTimer);this.oShieldLayerPool.returnObject(this._oBottomShieldLayer);this._oBottomShieldLayer=null;this._iBottomShieldRemoveTimer=null}if(this._aExtraContent){var t;this._aExtraContent.forEach(function(e){if(e.delegate){t=a.closestTo(document.getElementById(e.id));if(t){t.removeEventDelegate(e.delegate)}}})}o.prototype.destroy.apply(this,arguments)};U.prototype.exit=function(){delete this._mEvents};U.prototype._addFocusEventListeners=function(){if(!this.fnEventHandler){this.fnEventHandler=this.onFocusEvent.bind(this)}var t=this._$();var e=this.getChildPopups();var i={};var o=0,s=0;if(t.length){document.addEventListener("focus",this.fnEventHandler,true);t.get(0).addEventListener("blur",this.fnEventHandler,true);for(o=0,s=e.length;o<s;o++){i=e[o]?window.document.getElementById(e[o]):null;if(i){i.addEventListener("blur",this.fnEventHandler,true)}}}};U.prototype._removeFocusEventListeners=function(){var t=this._$(false,true);if(!t.length){return}var e=this.getChildPopups();var i={};var o=0,s=0;document.removeEventListener("focus",this.fnEventHandler,true);t.get(0).removeEventListener("blur",this.fnEventHandler,true);for(o=0,s=e.length;o<s;o++){i=e[o]?window.document.getElementById(e[o]):null;if(i){i.removeEventListener("blur",this.fnEventHandler,true)}this.closePopup(e[o])}this.fnEventHandler=null};U.prototype._activateFocusHandle=function(){if(this._bModal||this._bAutoClose){this._addFocusEventListeners()}if(this.touchEnabled&&!this._bModal&&this._bAutoClose){jQuery(document).on("touchstart mousedown",this._fAutoCloseHandler)}};U.prototype._deactivateFocusHandle=function(){if(this.fnEventHandler){this._removeFocusEventListeners()}if(this.touchEnabled&&!this._bModal&&this._bAutoClose){jQuery(document).off("touchstart mousedown",this._fAutoCloseHandler)}};U.prototype._registerEventBusEvents=function(){var t=this;C(t._mEvents,function(e,i){A.subscribe("sap.ui",e,i,t)});this._bEventBusEventsRegistered=true};U.prototype._unregisterEventBusEvents=function(){var t=this;C(t._mEvents,function(e,i){A.unsubscribe("sap.ui",e,i,t)});delete this._bEventBusEventsRegistered};U.prototype._addFocusableArea=function(t,e,i){if(this.getChildPopups().indexOf(i.id)===-1){this.addChildPopup(i.id)}};U.prototype._removeFocusableArea=function(t,e,i){this.removeChildPopup(i.id)};U.prototype._closePopup=function(t,e,i){this.close(typeof this._durations.close==="string"?0:this._durations.close)};U.prototype._setIdentity=function(t){if(typeof t==="object"){t.attr("data-sap-ui-popup",this._popupUID)}else{g.warning("Incorrect DomRef-type for 'setIdentity': "+t,this);return}if(!this._bEventBusEventsRegistered){this._registerEventBusEvents()}};U.prototype._$=function(t,e){var i;if(this.oContent instanceof r){i=this.oContent.$();if(t||i.length===0&&!e){g.info("Rendering of popup content: "+this.oContent.getId());if(i.length>0){p.preserveContent(i[0],true,false)}(new p).render(this.oContent,d.getDomRef());i=this.oContent.$()}}else if(this.oContent instanceof a){i=this.oContent.$()}else{i=jQuery(this.oContent)}this._setIdentity(i);return i};function H(t){if(U._blockLayerStateProvider){U._blockLayerStateProvider.fireEvent("blockLayerStateChange",t)}}U.attachBlockLayerStateChange=function(t,e,i){if(!U._blockLayerStateProvider){U._blockLayerStateProvider=new O}U._blockLayerStateProvider.attachEvent("blockLayerStateChange",t,e,i)};U.detachBlockLayerStateChange=function(t,e){if(U._blockLayerStateProvider){U._blockLayerStateProvider.detachEvent("blockLayerStateChange",t,e)}};function Z(t,e){if(e===window){N(t);document.documentElement.classList.add("sapUiBLyBack")}else{B(t,e);e.classList.add("sapUiBLyBack");F.observe(e)}}function j(t){if(t===window){document.documentElement.classList.remove("sapUiBLyBack")}else{t.classList.remove("sapUiBLyBack");F.unobserve(t)}}U.prototype._extendFocusInfo=function(t,e){var o=false,s="sap.ui.core.Popup.extendFocusInfo-",n;if(t instanceof i){n={info:e.info,element:t.getParameter("domRef")}}else{n=t}var r=this.getContent();var l=r instanceof a?r.getDomRef():r;if(l&&l.contains(n.element)){n.info.preventScroll=true;o=true}else{var u=this.getChildPopups();o=u.some(function(t){var e=s+t;A.publish("sap.ui",e,n);return n.extended})}return o};U.prototype._extendFocusInfoEventBusWrapper=function(t,e,i){i.contains=this._extendFocusInfo(i)};U.prototype._showBlockLayer=function(){var t=jQuery("#sap-ui-blocklayer-popup"),e="sapUiBLy"+(this._sModalCSSClass?" "+this._sModalCSSClass:""),i;if(t.length===0){t=jQuery('<div id="sap-ui-blocklayer-popup" tabindex="0" class="'+e+'"></div>');t.appendTo(d.getDomRef())}else{t.removeClass().addClass(e)}var o=U.blStack[U.blStack.length-1];if(o){i=R(o.popup._oLastPosition.within);j(i)}i=R(this._oLastPosition.within);Z(t,i);U.blStack.push({zIndex:this._iZIndex-2,popup:this});t.css({"z-index":this._iZIndex-2,visibility:"visible"}).show();if(!this.isInPopup(this._oLastPosition.of)){this._bFocusExtenderAdded=true;u.addFocusInfoExtender(this._extendFocusInfo,this)}if(U.blStack.length===1){H({visible:true,zIndex:U.blStack[0].zIndex})}};U.prototype._hideBlockLayer=function(){var t=jQuery("#sap-ui-blocklayer-popup"),e=t[0],i=this,o,s;s=R(this._oLastPosition.within);j(s);if(t.length){if(this._bFocusExtenderAdded){this._bFocusExtenderAdded=false;u.removeFocusInfoExtender(this._extendFocusInfo,this)}const n=this._sModalCSSClass?.split(" ")??[];n.forEach(t=>{e.classList.remove(t)});if(U.blStack.length>1){U.blStack=U.blStack.filter(function(t){return t.popup!==i});o=U.blStack[U.blStack.length-1];e.style.zIndex=o.zIndex;const n=o.popup._sModalCSSClass?.split(" ")??[];n.forEach(t=>{e.classList.add(t)});e.style.visibility="visible";e.style.display="block";s=R(o.popup._oLastPosition.within);Z(t,s)}else{o=U.blStack.pop();e.style.visibility="hidden";e.style.display="none";H({visible:false,zIndex:o.zIndex})}}};U.prototype._isFocusInsidePopup=function(){var t=this._$(false,true).get(0);if(t&&t.contains(document.activeElement)){return true}return false};U.DockTrigger=f;U.checkDocking=function(){if(this.getOpenState()===I.OPEN||this.getOpenState()===I.OPENING){var t=this._getOfDom(this._oLastPosition.of),e;if(t){if(t===window||t===window.document||document.documentElement.contains(t)||t.getRootNode()instanceof ShadowRoot){e=jQuery(t).rect()}else if(t.id){var i=window.document.getElementById(t.id);var o=jQuery(i).rect();if(o&&!$(e,o)){e=o;this._oLastPosition.of=i}}}if(!e){this.close();return}else if(e.left===0&&e.top===0&&e.height===0&&e.height===0&&this._oLastPosition.of.id){this._oLastPosition.of=window.document.getElementById(this._oLastPosition.of.id);t=this._getOfDom(this._oLastPosition.of);e=jQuery(t).rect();if(!e){this.close();return}}if(this._oLastOfRect){if(!$(this._oLastOfRect,e)){if(this._followOfHandler&&this.getOpenState()===I.OPEN){var s=E({},this._oLastPosition),n=E({},this._oLastOfRect);this._followOfHandler({lastPosition:s,lastOfRect:n,currentOfRect:e})}else{this._applyPosition(this._oLastPosition)}}}}};U.prototype.ontouchstart=function(t){this.onmousedown(t,true);this._bMousedownCalled=true};U.prototype.onmousedown=function(t,e){if(this._bMousedownCalled&&!e){this._bMousedownCalled=false;return}if(this._iZIndex===this.getLastZIndex()||this.getModal()){return}this._increaseMyZIndex("","mousedown",t)};U.prototype._increaseMyZIndex=function(t,e,i){var o=this.getParentPopup(this._oLastPosition.of);if(i&&i.type==="mousedown"||i&&i.isFromParentPopup||o.length===0){this._iZIndex=this.getNextZIndex();var s=this._$(false,true);s.css("z-index",this._iZIndex);if(i&&!i.type||i&&i.type!="mousedown"||e==="mousedown"){var n=this.getChildPopups();for(var r=0,a=n.length;r<a;r++){this.increaseZIndex(n[r],true)}}}else if(o.length>0){var l=jQuery(o.get(0)).attr("data-sap-ui-popup");this.increaseZIndex(l,false)}};U.prototype.onAfterRendering=function(){var t=this.getContent();var e=t instanceof a?t.$():jQuery(t);e.toggleClass("sapUiShd",this._bShadow);U._clearSelection();this._setupUserSelection();e.css("position","absolute");this._setIdentity(e);var i=e[0];var o=i.style.left;var s=i.style.right;var n=i.style.top;var r=i.style.bottom;if(!(o&&o!="auto"||s&&s!="auto"||n&&n!="auto"||r&&r!="auto")){g.debug("reposition popup content "+e.attr("id")+" at "+JSON.stringify(this._oLastPosition.at));this._applyPosition(this._oLastPosition)}e.show().css({visibility:"visible","z-index":this._iZIndex});if(this.isOpen()&&(this.getModal()||this.getAutoClose())){this._addFocusEventListeners()}this._$(false,true).on("keydown",this._F6NavigationHandler)};U.prototype.onBeforeRendering=function(){if(this._resizeListenerId){h.deregister(this._resizeListenerId);this._resizeListenerId=null}if(this.isOpen()&&(this.getModal()||this.getAutoClose())){this._removeFocusEventListeners()}this._$(false,true).off("keydown",this._F6NavigationHandler)};U.prototype.isInPopup=function(t){var e=this.getParentPopup(t);return e&&e.length>0};U.prototype.getParentPopup=function(t){var e=t?t:this;var i=jQuery(e instanceof a?e.getDomRef():e);return i.closest("[data-sap-ui-popup]")};U.prototype.getParentPopupId=function(t){var e=this.getParentPopup(t);return e.attr("data-sap-ui-popup")};U.prototype.addChildToPopup=function(t,e){var i="sap.ui.core.Popup.addFocusableContent-"+t;A.publish("sap.ui",i,{id:e})};U.prototype.removeChildFromPopup=function(t,e){var i="sap.ui.core.Popup.removeFocusableContent-"+t;A.publish("sap.ui",i,{id:e})};U.prototype.closePopup=function(t){var e="sap.ui.core.Popup.closePopup-"+t;A.publish("sap.ui",e)};U.prototype.increaseZIndex=function(t,e){var i="sap.ui.core.Popup.increaseZIndex-"+t;A.publish("sap.ui",i,{isFromParentPopup:e?e:false})};U.prototype.focusTabChain=function(t){var e=t.event.target,i=t.that.getMetadata().getName(),o;if(!t.$FocusablesContent||!t.$FocusablesFooter||!t.$FocusablesContent.length&&!t.$FocusablesFooter.length){return}if(e.id===t.firstFocusable){g.debug("First dummy focus element was focused","",i);if(t.$FocusablesFooter.length>0){g.debug("Last footer element will be focused","",i);o=t.$FocusablesFooter[t.$FocusablesFooter.length-1]}else{g.debug("Last content element will be focused","",i);o=t.$FocusablesContent[t.$FocusablesContent.length-1]}}else if(e.id===t.lastFocusable){g.debug("Last dummy focus element was focues","",i);if(t.$FocusablesContent.length>0){g.debug("First content element will be focused","",i);o=t.$FocusablesContent[0]}else{g.debug("First footer element will be focused","",i);o=t.$FocusablesFooter[0]}}if(o){setTimeout(function(){var t=a.getElementById(o.id);if(t instanceof r){g.debug("Focus will be handled by "+t.getMetadata().getName(),"",i)}else{g.debug("oFocusDomRef will be focused","",i)}if(t){t.focus()}else if(o){o.focus()}return t?t.getId():o.id},0)}};U.prototype._setupUserSelection=function(){var t=this._$(false,true);U._markAsUserSelectable(t,this._bModal||U.blStack.length>0);if(this._bModal){if(U.blStack.length>0){var e=U.blStack[U.blStack.length-1];var i=function(t){return t.popup.getId()};if(U.blStack.map(i).indexOf(this.getId())===-1){U._markAsNotUserSelectable(e.popup._$(false,true),true)}else if(e.popup.getId()!==this.getId()){U._markAsNotUserSelectable(t,true)}}else{U._markAsNotUserSelectable(jQuery("html"),true);U._markExternalContentAsUserSelectable(true)}}};U.prototype._restoreUserSelection=function(){var t=this._$(false,true);U._markAsNotUserSelectable(t,false);if(U.blStack.length>0){U._markAsUserSelectable(U.blStack[U.blStack.length-1].popup._$(false,true),true)}else{U._markAsUserSelectable(jQuery("html"),false);U._markExternalContentAsNotUserSelectable(false)}};U.prototype.isTopmost=function(){return this._iZIndex===U.getLastZIndex()};U._clearSelection=function(){var t=document.getSelection();if(!t.isCollapsed){t.removeAllRanges()}};U._markAsUserSelectable=function(t,e){t.removeClass("sapUiNotUserSelectable");if(e){t.addClass("sapUiUserSelectable")}};U._markAsNotUserSelectable=function(t,e){t.removeClass("sapUiUserSelectable");if(e){t.addClass("sapUiNotUserSelectable")}};var z=new Set,G="[data-sap-ui-integration-popup-content]";z.add(G);U.addExternalContent=function(t,e){if(!Array.isArray(t)){t=[t]}t.forEach(Set.prototype.add.bind(z));if(e){U.markExternalContentAsSelectable()}};U.removeExternalContent=function(t,e){if(!Array.isArray(t)){t=[t]}if(e){U.markExternalContentAsNotSelectable()}t.forEach(function(t){if(t!==G){z.delete(t)}})};U.markExternalContentAsSelectable=function(){U._clearSelection();if(U.blStack.length>0){U._markExternalContentAsUserSelectable(true)}};U.markExternalContentAsNotSelectable=function(){U._clearSelection();if(U.blStack.length>0){U._markExternalContentAsNotUserSelectable(false)}};U._getExternalContent=function(){var t=[];if(z.size>0){z.forEach(function(e){var i=jQuery(e);if(i.length>0){t.push(i)}})}return t};U._markExternalContentAsUserSelectable=function(t){var e=U._getExternalContent();e.forEach(function(e){U._markAsUserSelectable(e,t)})};U._markExternalContentAsNotUserSelectable=function(t){var e=U._getExternalContent();e.forEach(function(e){U._markAsNotUserSelectable(e,t)})};U.setWithinArea=function(t){x=t};U.getWithinArea=function(){return x};U.getWithinAreaDomRef=function(){return R(x)};return U});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/ScrollBar", ["sap/base/i18n/Localization","sap/ui/Device","./Control","./library","./ScrollBarRenderer","sap/ui/performance/trace/Interaction","sap/base/Log","sap/ui/events/jquery/EventSimulation","sap/ui/thirdparty/jquery"],function(t,e,o,i,s,r,l,h,jQuery){"use strict";var n=i.ScrollBarAction;var c=o.extend("sap.ui.core.ScrollBar",{metadata:{library:"sap.ui.core",properties:{vertical:{type:"boolean",group:"Behavior",defaultValue:true},scrollPosition:{type:"int",group:"Behavior",defaultValue:null},size:{type:"sap.ui.core.CSSSize",group:"Dimension",defaultValue:null},contentSize:{type:"sap.ui.core.CSSSize",group:"Dimension",defaultValue:null},steps:{type:"int",group:"Dimension",defaultValue:null}},events:{scroll:{parameters:{action:{type:"sap.ui.core.ScrollBarAction"},forward:{type:"boolean"},newScrollPos:{type:"int"},oldScrollPos:{type:"int"}}}}},renderer:s});c.prototype.init=function(){this.ontouchstart=this.ontouchstart.bind(this);this.ontouchmove=this.ontouchmove.bind(this);this.ontouchend=this.ontouchend.bind(this);this.ontouchcancel=this.ontouchcancel.bind(this);this.onmousewheel=this.onmousewheel.bind(this);this.onscroll=this.onscroll.bind(this);this._$ScrollDomRef=null;this._iOldScrollPos=0;this._iOldStep=0;this._bScrollPosIsChecked=false;this._bRTL=t.getRTL();this._bSuppressScroll=false;this._iMaxContentDivSize=1e6;if(h.touchEventMode==="ON"){sap.ui.requireSync("sap/ui/thirdparty/zyngascroll");this._iLastTouchScrollerPosition=null;this._iTouchStepTreshold=24;this._bSkipTouchHandling=false;this._oTouchScroller=new window.Scroller(this._handleTouchScroll.bind(this),{bouncing:false})}};c.prototype.onBeforeRendering=function(){this.$("sb").off("scroll",this.onscroll)};c.prototype.onAfterRendering=function(){this._iSteps=this.getSteps();var t=this.getContentSize();this._bStepMode=!t;var o=this.getSize();if(o.endsWith("px")){o=o.substr(0,o.length-2)}else{o=this.getVertical()?this.$().height():this.$().width()}var i=null;var s=this.$("ffsize");if(e.browser.firefox){i=s.outerHeight();if(i===0){i=window.getComputedStyle(jQuery("body").get(0))["font-size"];if(i.endsWith("px")){i=i.substr(0,i.length-2)}i=parseInt(i)}}s.remove();if(e.browser.webkit){if(!document.width){i=Math.round(40/(window.outerWidth/jQuery(document).width()))}else{i=Math.round(40/(document.width/jQuery(document).width()))}}if(this.getVertical()){if(e.browser.firefox){this._iFactor=i}else if(e.browser.webkit){this._iFactor=i}else{this._iFactor=Math.floor(o*.125)}this._iFactorPage=e.browser.firefox?o-i:Math.floor(o*.875)}else{if(e.browser.firefox){this._iFactor=10;this._iFactorPage=Math.floor(o*.8)}else if(e.browser.webkit){this._iFactor=i;this._iFactorPage=Math.floor(o*.875)}else{this._iFactor=7;this._iFactorPage=o-14}}this._$ScrollDomRef=this.$("sb");if(this._bStepMode){if(this.getVertical()){var r=this._iSteps*this._iFactor;if(r>this._iMaxContentDivSize){this._iFactor=this._iFactor/(r/this._iMaxContentDivSize)}var l=this._$ScrollDomRef.height()+Math.ceil(this._iSteps*this._iFactor);this._$ScrollDomRef.find("div").height(l)}else{var l=this._$ScrollDomRef.width()+this._iSteps*this._iFactor;this._$ScrollDomRef.find("div").width(l)}}this.setCheckedScrollPosition(this.getScrollPosition()?this.getScrollPosition():0,true);this._$ScrollDomRef.on("scroll",this.onscroll);if(h.touchEventMode==="ON"){this._bSkipTouchHandling=true;var n={width:0,height:0};n[this.getVertical()?"height":"width"]=this._bStepMode?this.getSteps()*this._iTouchStepTreshold:parseInt(this.getContentSize());this._oTouchScroller.setDimensions(0,0,n.width,n.height);var c=this._$ScrollDomRef.get(0);if(c){var a=c.getBoundingClientRect();this._oTouchScroller.setPosition(a.left+c.clientLeft,a.top+c.clientTop);this._bSkipTouchHandling=false}}};c.prototype.onmousewheel=function(t){if(this.$().is(":visible")){var e=t.originalEvent;var o=e.detail?e.detail:e.wheelDelta*-1/40;var i=o>0?true:false;if(this._$ScrollDomRef[0]&&this._$ScrollDomRef[0].contains(t.target)){this._doScroll(n.MouseWheel,i)}else{this._bMouseWheel=true;var s=null;if(this._bStepMode){s=o+this._iOldStep}else{s=o*this._iFactor+this._iOldScrollPos}this.setCheckedScrollPosition(s,true)}t.preventDefault();t.stopPropagation();return false}};c.prototype.ontouchstart=function(t){var e=t.touches;var o=e[0];if(o&&o.target&&o.target.tagName.match(/input|textarea|select/i)){return}if(this._oTouchScroller){this._oTouchScroller.doTouchStart(e,t.timeStamp)}if(e.length==1){t.preventDefault()}};c.prototype.ontouchmove=function(t){if(this._oTouchScroller){this._oTouchScroller.doTouchMove(t.touches,t.timeStamp,t.scale)}};c.prototype.ontouchend=function(t){if(this._oTouchScroller){this._oTouchScroller.doTouchEnd(t.timeStamp)}};c.prototype.ontouchcancel=function(t){if(this._oTouchScroller){this._oTouchScroller.doTouchEnd(t.timeStamp)}};c.prototype.onscroll=function(t){if(this._bSuppressScroll){this._bSuppressScroll=false;t.preventDefault();t.stopPropagation();return false}var o=null;if(this._$ScrollDomRef){if(this.getVertical()){o=Math.round(this._$ScrollDomRef.scrollTop())}else{o=Math.round(this._$ScrollDomRef.scrollLeft());if(e.browser.firefox&&this._bRTL){o=Math.abs(o)}else if(e.browser.webkit&&this._bRTL){var i=this._$ScrollDomRef.get(0);o=i.scrollWidth-i.clientWidth-i.scrollLeft}}}var s=o-this._iOldScrollPos;var r=s>0?true:false;if(s<0){s=s*-1}var l=n.Drag;if(s==this._iFactor){l=n.Step}else if(s==this._iFactorPage){l=n.Page}else if(this._bMouseWheel){l=n.MouseWheel}if(this._bLargeDataScrolling&&l===n.Drag){this._eAction=l;this._bForward=r}else{this._doScroll(l,r)}t.preventDefault();t.stopPropagation();return false};c.prototype._onScrollTimeout=function(){this._scrollTimeout=undefined;this._doScroll(this._eAction,this._bForward);this._eAction=undefined;this._bForward=undefined;this._bTouchScroll=undefined};c.prototype.onmouseup=function(){if(this._bLargeDataScrolling&&(this._eAction||this._bForward||this._bTouchScroll)){this._doScroll(this._eAction,this._bForward);this._eAction=undefined;this._bForward=undefined;this._bTouchScroll=undefined}};c.prototype.ontouchend=c.prototype.onmouseup;c.prototype._handleTouchScroll=function(t,e,o){if(this._bSkipTouchHandling){return}var i=this.getVertical()?e:t;var s;if(this._bStepMode){s=Math.max(Math.round(i/this._iTouchStepTreshold),0)}else{s=Math.round(i)}if(this._iLastTouchScrollerPosition!==s){this._iLastTouchScrollerPosition=s;this.setCheckedScrollPosition(s,true);if(this._bLargeDataScrolling){this._bTouchScroll=true}else{this.fireScroll()}}};c.prototype.unbind=function(t){if(t){this._$OwnerDomRef=jQuery(t);if(this.getVertical()){this._$OwnerDomRef.off(e.browser.firefox?"DOMMouseScroll":"mousewheel",this.onmousewheel)}if(h.touchEventMode==="ON"){this._$OwnerDomRef.off(this._getTouchEventType("touchstart"),this.ontouchstart);this._$OwnerDomRef.off(this._getTouchEventType("touchmove"),this.ontouchmove);this._$OwnerDomRef.off(this._getTouchEventType("touchend"),this.ontouchend);this._$OwnerDomRef.off(this._getTouchEventType("touchcancel"),this.ontouchcancel)}}};c.prototype.bind=function(t){if(t){this._$OwnerDomRef=jQuery(t);if(this.getVertical()){this._$OwnerDomRef.on(e.browser.firefox?"DOMMouseScroll":"mousewheel",this.onmousewheel)}if(h.touchEventMode==="ON"){this._$OwnerDomRef.on(this._getTouchEventType("touchstart"),this.ontouchstart);this._$OwnerDomRef.on(this._getTouchEventType("touchmove"),this.ontouchmove);this._$OwnerDomRef.on(this._getTouchEventType("touchend"),this.ontouchend);this._$OwnerDomRef.on(this._getTouchEventType("touchcancel"),this.ontouchcancel)}}};c.prototype._getTouchEventType=function(t){return h.touchEventMode==="SIM"?"sap"+t:t};c.prototype.pageUp=function(){this._doScroll(n.Page,false)};c.prototype.pageDown=function(){this._doScroll(n.Page,true)};c.prototype.setScrollPosition=function(t){if(this._$ScrollDomRef){this.setCheckedScrollPosition(t,true)}else{this.setProperty("scrollPosition",t)}return this};c.prototype.setCheckedScrollPosition=function(t,o){var i=Math.max(t,0);if(this._bStepMode===undefined){this._bStepMode=!this.getContentSize()}var s=i;if(this._bStepMode){i=Math.min(i,this.getSteps());s=i*this._iFactor}i=Math.round(i);this._bSuppressScroll=!o;this.setProperty("scrollPosition",i,true);if(this.getVertical()){this._$ScrollDomRef.scrollTop(s)}else{if(e.browser.firefox&&this._bRTL){this._$ScrollDomRef.scrollLeft(-s)}else if(e.browser.webkit&&this._bRTL){var r=this._$ScrollDomRef.get(0);this._$ScrollDomRef.scrollLeft(r.scrollWidth-r.clientWidth-s)}else{this._$ScrollDomRef.scrollLeft(s)}}if(h.touchEventMode==="ON"){var l=i;if(this._bStepMode){l=Math.round(i*this._iTouchStepTreshold)}this._oTouchScroller.__scrollTop=this.getVertical()?l:0;this._oTouchScroller.__scrollLeft=this.getVertical()?0:l}};c.prototype.setContentSize=function(t){this.setProperty("contentSize",t,true);this._bStepMode=false;var e=this.$("sbcnt");if(e){if(this.getVertical()){e.height(t)}else{e.width(t)}}return this};c.prototype._doScroll=function(t,o){var i=null;if(this._$ScrollDomRef){if(this.getVertical()){i=Math.round(this._$ScrollDomRef.scrollTop())}else{i=Math.round(this._$ScrollDomRef.scrollLeft());if(e.browser.firefox&&this._bRTL){i=Math.abs(i)}else if(e.browser.webkit&&this._bRTL){var s=this._$ScrollDomRef.get(0);i=s.scrollWidth-s.clientWidth-s.scrollLeft}}}if(this._bStepMode){var h=Math.round(i/this._iFactor);var n=this._iOldStep;if(n!==h){this.setCheckedScrollPosition(h,false);l.debug("-----STEPMODE-----: New Step: "+h+" --- Old Step: "+n+" --- Scroll Pos in px: "+i+" --- Action: "+t+" --- Direction is forward: "+o);this.fireScroll({action:t,forward:o,newScrollPos:h,oldScrollPos:n});this._iOldStep=h}}else{i=Math.round(i);this.setProperty("scrollPosition",i,true);l.debug("-----PIXELMODE-----: New ScrollPos: "+i+" --- Old ScrollPos: "+this._iOldScrollPos+" --- Action: "+t+" --- Direction is forward: "+o);this.fireScroll({action:t,forward:o,newScrollPos:i,oldScrollPos:this._iOldScrollPos})}this._bSuppressScroll=false;this._iOldScrollPos=i;this._bMouseWheel=false;r.notifyScrollEvent({type:t})};c.prototype.onThemeChanged=function(){this.invalidate()};c.prototype.getNativeScrollPosition=function(){if(this._$ScrollDomRef){if(this.getVertical()){return Math.round(this._$ScrollDomRef.scrollTop())}else{return Math.round(this._$ScrollDomRef.scrollLeft())}}return 0};c.prototype.setNativeScrollPosition=function(t){var e=Math.round(t);if(this._$ScrollDomRef){if(this.getVertical()){this._$ScrollDomRef.scrollTop(e)}else{this._$ScrollDomRef.scrollLeft(e)}}};return c});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/ScrollBarRenderer", ["sap/base/i18n/Localization","sap/ui/Device","sap/ui/dom/getScrollbarSize"],function(e,t,i){"use strict";var s={apiVersion:2};s.render=function(s,l){var o=e.getRTL();s.openStart("div",l);s.class("sapUiScrollBar");var n;if(t.support.touch){n="sapUiScrollBarTouch";s.class(n)}var d=l.getVertical();var r=l.getSize();var p=l.getContentSize();var a=i(n);var h=a.width||1;var v=a.height||1;if(d){s.style("overflow","hidden");s.style("width",h+"px");s.style("height",r);s.openEnd();s.openStart("div",l.getId()+"-sb");s.style("width",h*2+"px");s.style("height","100%");s.style("overflow-y","scroll");s.style("overflow-x","hidden");if(o){s.style("margin-right","-"+h+"px")}else{s.style("margin-left","-"+h+"px")}s.openEnd();s.openStart("div",l.getId()+"-sbcnt");s.style("width",h+"px");s.style("height",p);s.openEnd();s.close("div");s.close("div");s.openStart("div");s.openEnd();s.openStart("span",l.getId()+"-ffsize");s.style("position","absolute");s.style("top","-9000px");s.style("left","-9000px");s.style("visibility","hidden");s.style("line-height","normal");s.openEnd();s.text("FF Size");s.close("span");s.close("div")}else{s.style("overflow","hidden");s.style("height",v+"px");s.style("width",r);s.openEnd();s.openStart("div",l.getId()+"-sb");s.style("height",v*2+"px");s.style("margin-top","-"+v+"px");s.style("overflow-x","scroll");s.style("overflow-y","hidden");s.openEnd();s.openStart("div",l.getId()+"-sbcnt");s.style("height",v+"px");s.style("width",p);s.openEnd();s.close("div");s.close("div")}s.close("div")};return s},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/SeparatorItem", ["./Item","./library"],function(e){"use strict";var r=e.extend("sap.ui.core.SeparatorItem",{metadata:{library:"sap.ui.core"}});return r});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/Shortcut", ["sap/ui/core/StaticArea","sap/ui/core/util/ShortcutHelper","sap/base/assert"],function(t,e,r){"use strict";var o={register:function(r,o,i){if(!r){throw new Error("Shortcut.register: oScopeControl must be given.")}if(typeof i!=="function"){throw new Error("Shortcut.register: a function fnCallback must be given.")}var n=e.getNormalizedShortcutSpec(o);e.validateKeyCombination(n);var u=e.findShortcut(r,n);if(u){throw new Error("Same shortcut is already registered on this element")}function a(){var e=document.activeElement,r=document.createElement("span"),o=t.getDomRef(),n=arguments;r.setAttribute("tabindex",0);r.setAttribute("id","sap-ui-shortcut-focus");r.style.position="absolute";r.style.top="50%";r.style.bottom="50%";r.style.left="50%";r.style.right="50%";o.appendChild(r);setTimeout(function(){r.focus();setTimeout(function(){e.focus();o.removeChild(r);i.apply(null,n)})})}var c={};c["onkeydown"]=e.handleKeydown.bind(null,n,o,a);r.addEventDelegate(c);var s=r.data("sap.ui.core.Shortcut");if(!s){s=[];r.data("sap.ui.core.Shortcut",s)}s.push({shortcutSpec:n,platformIndependentShortcutString:e.getNormalizedShortcutString(n),delegate:c})},isRegistered:function(t,o){r(t,"Shortcut.isRegistered: oScopeControl must be given.");var i=e.getNormalizedShortcutSpec(o);return!!e.findShortcut(t,i)},unregister:function(t,o){r(t,"Shortcut.unregister: oScopeControl must be given.");var i=e.getNormalizedShortcutSpec(o);var n=e.findShortcut(t,i);if(n){t.removeEventDelegate(n.delegate);var u=t.data("sap.ui.core.Shortcut");var a=u.indexOf(n);u.splice(a,1);return true}return false}};return o});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/ShortcutHint", ["sap/base/Log","sap/ui/core/CommandExecution","sap/ui/core/Lib"],function(t,o,e){"use strict";var n=function(t,o){this.oControl=t;this.oConfig=o};n.prototype._getShortcutText=function(){var t;if(this.oConfig.commandName){t=this._getShortcutHintFromCommandExecution(this.oControl,this.oConfig.commandName)}else if(this.oConfig.message){t=this.oConfig.message}else if(this.oConfig.messageBundleKey){t=this._getShortcutHintFromMessageBundle(this.oControl,this.oConfig.messageBundleKey)}return t};n.prototype._getShortcutHintFromCommandExecution=function(e,n){try{return o.find(e,n)._getCommandInfo().shortcut}catch(o){t.error("Error on retrieving command shortcut. Command "+n+" was not found!")}};n.prototype._getShortcutHintFromMessageBundle=function(t,o){var n=e.getResourceBundleFor(t.getMetadata().getLibraryName());return n.getText(o)};return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/ShortcutHintsMixin", ["sap/ui/base/EventProvider","./Element","./ShortcutHint","./Popup","./InvisibleText","sap/ui/events/checkMouseEnterOrLeave","sap/ui/Device"],function(t,e,i,n,o,r,s){"use strict";var u=function(t){this.sControlId=t.getId();this._hintConfigs=[]};u.init=function(t){t._shortcutHintsMixin=new u(t)};u.addConfig=function(t,e,i){if(s.system.phone){return}if(/sap-ui-xx-noshortcuthints=true/.test(document.location.search)){return}var n=t._shortcutHintsMixin;if(!n){u.init(t);n=t._shortcutHintsMixin}n._hintConfigs.push(e);n.initHint(e,i)};u.hideAll=function(){var t;for(var i in f.mControls){t=e.getElementById(i);if(t){t._shortcutHintsMixin.hideShortcutHint()}}};u.isDOMIDRegistered=function(t){return f.mDOMNodes[t]&&!!f.mDOMNodes[t].length};u.isControlRegistered=function(t){return!!f.mControls[t]};u.prototype._attachToEvents=function(){var t;if(!u.isControlRegistered(this.sControlId)){t=e.getElementById(this.sControlId);t.addEventDelegate(c,this)}};u.prototype.register=function(t,n,o){this._attachToEvents();if(!u.isControlRegistered(this.sControlId)){var r=e.getElementById(this.sControlId);r._originalExit=r.exit;r.exit=function(){if(r._originalExit){r._originalExit.apply(r,arguments)}this.deregister()}.bind(this)}f.mControls[this.sControlId]=true;if(!f.mDOMNodes[t]){f.mDOMNodes[t]=[]}f.mDOMNodes[t].push(new i(o,n))};u.prototype.deregister=function(){var t=this.getRegisteredShortcutInfos(),e;delete f.mControls[this.sControlId];for(e=0;e<t.length;e++){delete f.mDOMNodes[t[e].id]}};u.prototype.initHint=function(e,i){var n=this._getShortcutHintInfo(e);if(n.message){this.register(n.id,{message:n.message},i)}else if(n.messageBundleKey){this.register(n.id,{messageBundleKey:n.messageBundleKey},i)}else if(n.event){var o=t.getEventList(i)[n.event],r=[];if(o){r=o.reduce(function(t,e){if(e.fFunction&&e.fFunction._sapui_commandName){t.push(e.fFunction._sapui_commandName)}return t},[])}if(r.length){this.register(n.id,{commandName:r[0]},i)}else{i.attachEvent("EventHandlerChange",function(t){var e=t.getParameter("func");if(t.getParameter("type")==="listenerAttached"&&e&&e._sapui_commandName&&t.getParameter("EventId")===n.event){this.register(n.id,{commandName:e._sapui_commandName},i)}},this)}}};u.prototype._getShortcutHintInfos=function(){return this._hintConfigs.map(this._getShortcutHintInfo,this)};u.prototype._getShortcutHintInfo=function(t){var e;if(t.domrefid){e=t.domrefid}else if(t.domrefid_suffix){e=this.sControlId+t.domrefid_suffix}else{e=this.sControlId}return{id:e,event:t.event,position:t.position,messageBundleKey:t.messageBundleKey,message:t.message,addAccessibilityLabel:t.addAccessibilityLabel}};u.prototype.getRegisteredShortcutInfos=function(){return this._getShortcutHintInfos().filter(function(t){return u.isDOMIDRegistered(t.id)},this)};u.prototype.showShortcutHint=function(t){var e,i=t[0].position||"0 8",o=n.Dock.CenterTop,r=n.Dock.CenterBottom,s=l(),u=t[0].ref,f=d(t[0].id),c;if(!m(u)||!g(u)){return}c=this._getControlTooltips();if(c[t[0].id]){f=c[t[0].id].tooltip+" ("+f+")"}if(!s){s=h(f)}s.oContent.children[0].textContent=f;if(!s.isOpen()){s.open(1e3,o,r,u,i,"flipfit",function(t){s.oContent.style.visibility="hidden";if(e){clearTimeout(e)}e=setTimeout(function(){if(!m(u)||!g(u)){return}s.oContent.style.visibility="visible"},1e3);s._applyPosition(s._oLastPosition)})}};u.prototype.hideShortcutHint=function(){var t=l();if(t&&t.isOpen()){t.close()}};u.prototype._findShortcutOptionsForRef=function(t){var e,i=this.getRegisteredShortcutInfos(),n,o=[];for(n=0;n<i.length;n++){e=i[n];e.ref=document.getElementById(e.id);if(e.ref&&e.ref.contains(t)){o.push(e)}}return o};u.prototype._getControlTooltips=function(){var t=this.getRegisteredShortcutInfos(),i=e.getElementById(this.sControlId);return t.reduce(function(t,e){var n=i._getTitleAttribute&&i._getTitleAttribute(e.id);if(!n){n=i.getTooltip()}if(n){t[e.id]={tooltip:n}}return t},{})};u.prototype._updateShortcutHintAccLabel=function(t){var i,n,o;if(!t.addAccessibilityLabel){return}o=e.getElementById(this.sControlId);if(!o.getAriaDescribedBy){return}i=a(o);n=i.getId();i.setText(d(t.id));if(!i.getText()){o.removeAriaDescribedBy(n)}else if(o.getAriaDescribedBy().indexOf(n)===-1){o.addAriaDescribedBy(n)}};var f=Object.create(null);f.mControls={};f.mDOMNodes={};var c={onfocusin:function(t){var e=this._findShortcutOptionsForRef(t.target);if(!e.length){return}u.hideAll();this._updateShortcutHintAccLabel(e[0]);this.showShortcutHint(e)},onfocusout:function(t){var e=this._findShortcutOptionsForRef(t.target);if(!e.length){return}this.hideShortcutHint()},onmouseover:function(t){var e=this._findShortcutOptionsForRef(t.target),i;if(!e.length){return}i=e[0].ref;if(!v(i)){return}if(!i.getAttribute("title")){i.setAttribute("title","")}if(r(t,i)){u.hideAll();this.showShortcutHint(e)}},onmouseout:function(t){var e=this._findShortcutOptionsForRef(t.target);if(!e.length){return}if(r(t,e[0].ref)){if(e[0].ref.contains(document.activeElement)){return}if(e[0].ref.getAttribute("title")===""){e[0].ref.removeAttribute("title")}this.hideShortcutHint()}},onAfterRendering:function(){var t=this.getRegisteredShortcutInfos(),e,i;for(var n=0;n<t.length;n++){i=t[n].id;e=document.getElementById(i);e&&e.setAttribute("aria-keyshortcuts",d(i))}}};function d(t){var e=f.mDOMNodes[t];if(!e||!e.length){return}return e.map(function(t){return t._getShortcutText()}).join(", ")}function a(t){if(!t._shortcutInvisibleText){var e=t.exit;t._shortcutInvisibleText=new o;t._shortcutInvisibleText.toStatic();t.exit=function(){this._shortcutInvisibleText.destroy();e.call(this)}}return t._shortcutInvisibleText}function l(){return u._popup}function h(t){var e,i,o;i=document.createElement("span");i.classList.add("sapUiHintContainer");o=document.createElement("div");o.classList.add("sapUiHintText");o.textContent=t;i.appendChild(o);e=new n(i,false,false,false);e.setAnimations(function(t,e,i){setTimeout(i,e)},function(t,e,i){i()});u._popup=e;return e}function g(t){var e;if(!t){return false}e=t.getBoundingClientRect();return e.top>=0&&e.left>=0&&e.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&e.right<=(window.innerWidth||document.documentElement.clientWidth)}function m(t){return t.offsetWidth>0||t.offsetHeight>0||t.getClientRects().length>0}function p(t){var e=t.tabIndex;return e!=null&&e>=0&&(t.getAttribute("disabled")==null||t.getAttribute("tabindex"))}function v(t){return t.nodeType==1&&m(t)&&p(t)}return u});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/StashedControlSupport", ["sap/base/assert","sap/base/Log","sap/ui/core/Element"],function(t,e,r){"use strict";var n={},a={};n.mixInto=function(e){t(!e.prototype.unstash,"StashedControlSupport: fnClass already has method 'unstash', sideeffects possible",e.getMetadata().getName());if(e.getMetadata().isA("sap.ui.core.Fragment")||e.getMetadata().isA("sap.ui.core.mvc.View")){throw new Error("Stashing is not supported for sap.ui.core.Fragment or sap.ui.core.mvc.View")}o(e)};function o(t){t.prototype.unstash=function(t){if(this.isStashed()){if(!t){e.fatal("Unstashing synchronous is no longer supported. Please switch to the asynchronous variant!");return u(this)}return i(this)}return this};t.prototype.isStashed=function(){return!!a[this.getId()]};var r=t.prototype.clone;t.prototype.clone=function(){if(this.isStashed()){throw new Error("A stashed control cannot be cloned, id: '"+this.getId()+"'.")}return r.apply(this,arguments)};var n=t.prototype.destroy;t.prototype.destroy=function(){delete a[this.getId()];n.apply(this,arguments)}}function s(t,e){var r=a[t.getId()];var n=t.getParent();var o=sap.ui.require("sap/ui/core/Component");var s=o&&n&&o.getOwnerComponentFor(n);var i;var u=r.fnCreate;if(s){i=s.runAsOwner(u.bind(null,!!e))}else{i=u(!!e)}return i}async function i(t){var e=await s(t);delete a[t.getId()];return e[0]}function u(t){var e=s(t,true);delete a[t.getId()];return e[0]}function p(t,e){var n=[];for(var o in a){var s=r.getElementById(a[o].wrapperId);var i=t?s:o;var u=s&&s.getParent();if(!e||u&&u.getId()===e){n.push(i)}}return n}n.getStashedControlIds=function(t){return p(false,t)};n.getStashedControls=function(t){return p(true,t)};n.createStashedControl=function(t){var e={wrapperId:t.wrapperId,fnCreate:t.fnCreate};a[t.wrapperId]=e;return e};return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/Title", ["./Element","./library"],function(e,a){"use strict";var t=a.TitleLevel;var l=e.extend("sap.ui.core.Title",{metadata:{library:"sap.ui.core",properties:{text:{type:"string",group:"Data",defaultValue:null},icon:{type:"sap.ui.core.URI",group:"Appearance",defaultValue:null},level:{type:"sap.ui.core.TitleLevel",group:"Appearance",defaultValue:t.Auto},emphasized:{type:"boolean",group:"Appearance",defaultValue:false}}}});return l});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/TooltipBase", ["./Control","./Element","./Popup","./StaticArea","./library","sap/ui/core/RenderManager","sap/ui/events/KeyCodes","sap/ui/thirdparty/jquery"],function(t,e,o,i,s,r,n,jQuery){"use strict";var p=s.OpenState;var u=t.extend("sap.ui.core.TooltipBase",{metadata:{abstract:true,library:"sap.ui.core",properties:{text:{type:"string",group:"Data",defaultValue:""},openDuration:{type:"int",group:"Behavior",defaultValue:200},closeDuration:{type:"int",group:"Behavior",defaultValue:200},myPosition:{type:"sap.ui.core.Dock",group:"Behavior",defaultValue:"begin top"},atPosition:{type:"sap.ui.core.Dock",group:"Behavior",defaultValue:"begin bottom"},offset:{type:"string",group:"Behavior",defaultValue:"10 3"},collision:{type:"sap.ui.core.Collision",group:"Behavior",defaultValue:"flip"},openDelay:{type:"int",group:"Misc",defaultValue:500},closeDelay:{type:"int",group:"Misc",defaultValue:100}},events:{closed:{}}},renderer:null});u.prototype._getPopup=function(){var t=new o;t.setShadow(true);u.prototype._getPopup=function(){return t};return t};u.prototype.onfocusin=function(t){var o=e.closestTo(t.target);if(o!=null){var s=o.getFocusDomRef();this.sStoredTooltip=null;if(s.title&&s.title!=""){this.sStoredTooltip=s.title;s.title=""}var n=this._getPopup();if(!(n.isOpen()&&n.getContent()==this)){(new r).getInterface().render(this,i.getDomRef(),true)}var p=s.getAttribute("aria-describedby");var u=this.getId()+"-title "+this.getId()+"-txt";if(p==null||p==""){s.setAttribute("aria-describedby",u)}else if(p.indexOf(u)==-1){s.setAttribute("aria-describedby",p+" "+u)}}};u.prototype.onfocusout=function(t){var o=e.closestTo(t.target);if(o!=null){var i=o.getFocusDomRef();if(this.sStoredTooltip){i.title=this.sStoredTooltip}var s=i.getAttribute("aria-describedby");var r=this.getId()+"-title "+this.getId()+"-txt";if(s&&s.indexOf(r)>=0){if(s.trim()==r){i.removeAttribute("aria-describedby")}else{s=s.replace(r,"");i.setAttribute("aria-describedby",s)}}}if(u.sOpenTimeout){clearTimeout(u.sOpenTimeout);u.sOpenTimeout=undefined}this.sCloseNowTimeout=setTimeout(this["closePopup"].bind(this),this.getCloseDelay())};u.prototype.isStandardTooltip=function(t){return typeof t==="string"&&!!t.trim()};u.prototype.onmouseover=function(t){var o=e.closestTo(t.target),i=e.closestTo(t.currentTarget),s=e.closestTo(t.relatedTarget);if(!o){return}if(o===this){if(this.sCloseNowTimeout){clearTimeout(this.sCloseNowTimeout);this.sCloseNowTimeout=null}t.stopPropagation();t.preventDefault();return}if(i===o||!this.isStandardTooltip(o.getTooltip())){if(this.sCloseNowTimeout){clearTimeout(this.sCloseNowTimeout);this.sCloseNowTimeout=null;t.stopPropagation();t.preventDefault()}}if(s){if(s.getParent()){if(s.getParent()===i&&i===o){var r=s.getTooltip();if(!this.isStandardTooltip(r)&&(!r||!(r instanceof u))){if(this.sCloseNowTimeout){clearTimeout(this.sCloseNowTimeout);this.sCloseNowTimeout=null;t.stopPropagation();t.preventDefault()}}}}}if(this._currentControl===o||!this.isStandardTooltip(o.getTooltip())){this.removeStandardTooltips();if(u.sOpenTimeout){clearTimeout(u.sOpenTimeout)}u.sOpenTimeout=setTimeout(this["openPopup"].bind(this,this._currentControl),this.getOpenDelay());t.stopPropagation();t.preventDefault()}};u.prototype.onmouseout=function(t){if(u.sOpenTimeout){clearTimeout(u.sOpenTimeout);u.sOpenTimeout=undefined}if(!this.sCloseNowTimeout){this.sCloseNowTimeout=setTimeout(this["closePopup"].bind(this),this.getCloseDelay())}this.restoreStandardTooltips();t.stopPropagation();t.preventDefault()};u.prototype.closePopup=function(){var t=this._getPopup();if(this.sCloseNowTimeout){clearTimeout(this.sCloseNowTimeout)}this.sCloseNowTimeout=undefined;t.attachClosed(this.handleClosed,this);t.close();this.restoreStandardTooltips()};u.prototype.handleClosed=function(){this._getPopup().detachClosed(this.handleClosed,this);this.fireClosed()};u.prototype.openPopup=function(t){if(!this.getVisible()){return}if(t.getTooltip()!=null){if(this.sCloseNowTimeout){clearTimeout(this.sCloseNowTimeout);this.sCloseNowTimeout=null;return}var e=this._getPopup();if(e.isOpen()&&e.getContent()==this){return}var o=t.getDomRef();e.setContent(this);e.setPosition(this.getMyPosition(),this.getAtPosition(),o,this.getOffset(),this.getCollision());e.setDurations(this.getOpenDuration(),this.getCloseDuration());e.open();this.removeStandardTooltips()}};u.prototype.removeStandardTooltips=function(){var t=this._currentControl.getDomRef();if(!this.aStoredTooltips){this.aStoredTooltips=[]}else{return}var e="";while(t&&!(t===document)){e=t.title;if(e){this.aStoredTooltips.push({domref:t,tooltip:e});t.title=""}t=t.parentNode}if(this._currentControl.getTooltipDomRefs){var o=this._currentControl.getTooltipDomRefs();for(var i=0;i<o.length;i++){t=o[i];if(t){e=t.title;if(e){this.aStoredTooltips.push({domref:t,tooltip:e});t.title=""}}}}};u.prototype.restoreStandardTooltips=function(){var t=this._getPopup();var e=t.getOpenState();if(e===p.OPEN||e===p.OPENING){return}if(u.sOpenTimeout){return}if(this.aStoredTooltips){for(var o=0;o<this.aStoredTooltips.length;o++){var i=this.aStoredTooltips[o].domref;i.title=this.aStoredTooltips[o].tooltip}}this.aStoredTooltips=null};u.prototype.setParent=function(e,o){var i=this._getPopup();if(i&&i.isOpen()){this.closePopup()}t.prototype.setParent.apply(this,arguments)};u.prototype.onkeydown=function(t){if(t.ctrlKey&&t.which==n.I){var o=e.closestTo(t.target);if(o!=null){if(this._currentControl===o||!this.isStandardTooltip(o.getTooltip())){this.removeStandardTooltips();this.openPopup(this._currentControl);t.preventDefault();t.stopPropagation()}}}else if(t.which==n.ESCAPE){if(u.sOpenTimeout){clearTimeout(u.sOpenTimeout);u.sOpenTimeout=undefined}var i=this.oPopup&&this.oPopup.isOpen();this.closePopup();if(i){t.preventDefault();t.stopPropagation()}}};u.prototype._closeOrPreventOpen=function(){var t=this._getPopup();if(t.isOpen()){this.closePopup()}else if(u.sOpenTimeout){clearTimeout(u.sOpenTimeout);u.sOpenTimeout=undefined}};return u});
/*
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/UIComponent", ["../base/ManagedObject","./Component","./ComponentHooks","./Element","sap/ui/core/mvc/ViewType","sap/ui/core/mvc/XMLProcessingMode","./UIComponentMetadata","./mvc/Controller","./mvc/View","sap/base/util/ObjectPath","sap/base/future","sap/base/Log"],function(t,e,o,n,i,r,s,a,u,c,f,p){"use strict";var l=e.extend("sap.ui.core.UIComponent",{constructor:function(t,o){var n=false;try{if(typeof t!=="string"){o=t;t=undefined}if(o&&o.hasOwnProperty("_routerHashChanger")){this._oRouterHashChanger=o._routerHashChanger;delete o._routerHashChanger}if(o&&o.hasOwnProperty("_propagateTitle")){this._bRoutingPropagateTitle=o._propagateTitle;delete o._propagateTitle}e.apply(this,arguments);n=true}finally{if(!n){this._destroyCreatedInstances()}}},metadata:{abstract:true,rootView:null,publicMethods:["render"],aggregations:{rootControl:{type:"sap.ui.core.Control",multiple:false,visibility:"hidden"}},designtime:"sap/ui/core/designtime/UIComponent.designtime",routing:{}}},s);l._fnOnInstanceInitialized=null;l._fnOnInstanceDestroy=null;l.prototype.init=function(){var e=this;var n={};var i;if(this.getAutoPrefixId()){n.id=function(t){return e.createId(t)}}function r(t){var n=function(){o.onUIComponentInstanceInitialized.execute(e);if(typeof l._fnOnInstanceInitialized==="function"){l._fnOnInstanceInitialized(e)}};var i=function(t){e.setAggregation("rootControl",t)};if(t instanceof Promise){e.pRootControlLoaded=e.pRootControlLoaded.then(function(t){i(t);n();return t})}else if(t instanceof u&&t.oAsyncState&&t.oAsyncState.promise){i(t);e.pRootControlLoaded=e.pRootControlLoaded.then(function(t){n();return t})}else{i(t);n()}}function s(t,o){var n;if(t instanceof Promise){n=e.pRootControlLoaded.then(function(t){return t instanceof u?t.getId():undefined})}else if(t instanceof u){n=t.getId()}if(n){if(o.targetParent===undefined){o.targetParent=n}if(e._oTargets){e._oTargets._setRootViewId(n)}}}var a=this._getManifestEntry("/sap.ui5/routing",true)||{},c=a.config||{},f=a.routes;if(this.isA("sap.ui.core.IAsyncContentCreation")){c.async=true}const p=l.collectRoutingClasses.call(this.getMetadata().getClass(),this)||{};if(p.routerClass){var g=p.routerClass;this._oRouter=new g(f,c,this,a.targets,this._oRouterHashChanger);this._oTargets=this._oRouter.getTargets();this._oViews=this._oRouter.getViews()}else if(p.targetsClass){var d=p.views;this._oViews=new d({component:this});var h=p.targetsClass;this._oTargets=new h({targets:a.targets,config:c,views:this._oViews})}this.runAsOwner(function(){t.runWithPreprocessors(function(){i=e.createContent()},n)});if(i instanceof Promise){if(this.isA("sap.ui.core.IAsyncContentCreation")){this.pRootControlLoaded=i}else{throw new Error("Interface 'sap.ui.core.IAsyncContentCreation' must be implemented for component '"+this.getMetadata().getComponentName()+"' when 'createContent' is implemented asynchronously")}}else if(i instanceof u&&i.oAsyncState&&i.oAsyncState.promise){this.pRootControlLoaded=i.loaded()}else{this.pRootControlLoaded=Promise.resolve(i)}s(i,c);r(i)};function g(t){p.error(`The routing related class '${t}' was loaded synchronously as a result of a synchronous Component creation. Resolving a class in this fashion is deprecated. `+`Please use the asynchronous Component.create() factory instead and ensure all non-default routing relevant classes are maintained in the manifest.json.`)}function d(t){var e;if(typeof t==="string"){const o=t.replace(/\./g,"/");e=sap.ui.require(o);if(!e){e=sap.ui.requireSync(o);g(o)}if(!e){e=c.get(t);if(e){p.error(`The class '${t}' was accessed via globals. `+"Retrieving routing classes via globals is deprecated and a result of synchronous Component creation, "+"please use the asynchronous sap.ui.core.Component.create() factory instead.")}}if(!e){f.errorThrows(`${this}: The specified class for router or targets "${t}" is undefined.`)}}else{e=t}return e}l.prototype.rootControlLoaded=function(){if(!this.pRootControlLoaded){f.errorThrows("Mandatory init() not called for UIComponent: '"+this.getManifestObject().getComponentName()+"'. A sub-class of sap.ui.core.UIComponent which overrides the init() function must apply the super init() function as well.",null,"sap.ui.support",function(){return{type:"missingInitInUIComponent"}})}return this.pRootControlLoaded||Promise.resolve(this.getRootControl())};l.prototype.destroy=function(){o.onUIComponentInstanceDestroy.execute(this);if(typeof l._fnOnInstanceDestroy==="function"){l._fnOnInstanceDestroy(this)}this._destroyCreatedInstances();return e.prototype.destroy.apply(this,arguments)};l.prototype._destroyCreatedInstances=function(){if(this._oRouter){this._oRouter.destroy();delete this._oRouter}else{if(this._oTargets){this._oTargets.destroy();this._oTargets=null}if(this._oViews){this._oViews.destroy();this._oViews=null}}};l.getRouterFor=function(t){var o=t;if(o instanceof a){o=o.getView()}if(o instanceof u){var n=e.getOwnerComponentFor(o);if(n){return n.getRouter()}else{return undefined}}};l.prototype.getRouter=function(){return this._oRouter};l.prototype.hasNativeRouter=function(){return this._oRouter===this.getRouter()};l.prototype.getTargets=function(){return this._oTargets};l.prototype.getAutoPrefixId=function(){return!!this.getManifestObject().getEntry("/sap.ui5/autoPrefixId")};l.prototype.byId=function(t){return n.getElementById(this.createId(t))};l.prototype.createId=function(t){if(!this.isPrefixedId(t)){t=this.getId()+"---"+t}return t};l.prototype.getLocalId=function(t){var e=this.getId()+"---";return t&&t.indexOf(e)===0?t.slice(e.length):null};l.prototype.isPrefixedId=function(t){return!!(t&&t.indexOf(this.getId()+"---")===0)};l.prototype.createContent=function(){var t=this._getManifestEntry("/sap.ui5/rootView",true);if(t&&typeof t==="string"){t={viewName:t}}if(t&&typeof t==="object"){if(!t.type&&!t.name?.startsWith("module:")){t.type=i.XML}if(t.id){t.id=this.createId(t.id)}if(t.async&&t.type===i.XML){t.processingMode=r.Sequential}const e=this.isA("sap.ui.core.IAsyncContentCreation");if(e){return u.create(t)}else{return u._create(t)}}else if(t){throw new Error("Configuration option 'rootView' of component '"+this.getMetadata().getName()+"' is invalid! 'rootView' must be type of string or object!")}return null};l.prototype.getRootControl=function(){return this.getAggregation("rootControl")};l.prototype.render=function(t){var e=this.getRootControl();if(e&&t){t.renderControl(e)}};l.prototype.getUIArea=function(){return this.oContainer?this.oContainer.getUIArea():null};l.prototype.getEventingParent=function(){return this.getUIArea()};l.prototype.setContainer=function(t){this.oContainer=t;if(t){this._applyContextualSettings(t._getContextualSettings())}else{this._oContextualSettings=h;if(!this._bIsBeingDestroyed){setTimeout(function(){if(!this.oContainer){this._propagateContextualSettings()}}.bind(this),0)}}return this};l.prototype.onBeforeRendering=function(){};l.prototype.onAfterRendering=function(){};l.prototype._getRouterClassName=function(){var t=this._getManifestEntry("/sap.ui5/routing",true)||{},e=t.config||{};return e.routerClass};l.collectRoutingClasses=function(t){const e={};const o=this.getMetadata();let n;const r=o._getManifestEntry("/sap.ui5/rootView");if(typeof r==="string"){n="XML"}else if(r&&typeof r==="object"&&r.type){n=r.type}if(n&&i[n]){const t="sap/ui/core/mvc/"+i[n]+"View";e["viewClass"]=t}const s=o._getManifestEntry("/sap.ui5/routing",true);if(s){if(s.routes){let o;const n=this.getMetadata().getStaticProperty("_fnGetRouterClassName");if(typeof n==="function"){o=n(this.getMetadata().getManifestObject())}o??=t?._getRouterClassName()||s.config?.routerClass||"sap.ui.core.routing.Router";if(typeof o==="string"){o=o.replace(/\./g,"/")}e["routerClass"]=o}else if(s.targets){let t=s.config?.targetsClass||"sap.ui.core.routing.Targets";if(typeof t==="string"){t=t.replace(/\./g,"/")}e["targetsClass"]=t;e["views"]="sap/ui/core/routing/Views"}}if(t){for(const t in e){const o=e[t];e[t]=d(o)}}return e};const{_oContextualSettings:h}=new t;return l});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/UIComponentMetadata", ["./ComponentMetadata","sap/ui/core/mvc/ViewType"],function(t,o){"use strict";var e=function(o,e){t.apply(this,arguments)};e.prototype=Object.create(t.prototype);e.prototype.constructor=e;e.preprocessClassInfo=function(t){if(t&&typeof t.metadata==="string"){t.metadata={_src:t.metadata}}return t};e.prototype.getRootView=function(t){return this.getManifestEntry("/sap.ui5/rootView",!t)};e.prototype.getRoutingConfig=function(t){return this.getManifestEntry("/sap.ui5/routing/config",!t)};e.prototype.getRoutes=function(t){return this.getManifestEntry("/sap.ui5/routing/routes",!t)};e.prototype._convertLegacyMetadata=function(e,r){t.prototype._convertLegacyMetadata.call(this,e,r);var i=r["sap.ui5"];var n=i["rootView"]||e["rootView"];if(n){i["rootView"]=n}var a=i["routing"]||e["routing"];if(a){i["routing"]=a}if(i["rootView"]&&typeof i["rootView"]==="string"){i["rootView"]={viewName:i["rootView"],type:o.XML}}};return e},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/ValueStateSupport", ["./Element","./library","./Lib","sap/base/assert"],function(e,t,r,n){"use strict";var a=t.ValueState;var u={};var i=null;var o=function(){if(!i){i={};var e=r.getResourceBundleFor("sap.ui.core");i[a.Error]=e.getText("VALUE_STATE_ERROR");i[a.Warning]=e.getText("VALUE_STATE_WARNING");i[a.Success]=e.getText("VALUE_STATE_SUCCESS");i[a.Information]=e.getText("VALUE_STATE_INFORMATION")}};u.enrichTooltip=function(t,r){n(t instanceof e,"oElement must be an Element");if(!r&&t.getTooltip()){return undefined}var a=u.getAdditionalText(t);if(a){return(r?r+" - ":"")+a}return r};u.getAdditionalText=function(e){var t=null;if(e&&e.getValueState){t=e.getValueState()}else if(a[e]){t=e}if(t&&t!=a.None){o();return i[t]}return null};u.formatValueState=function(e){switch(e){case 1:return a.Warning;case 2:return a.Success;case 3:return a.Error;case 4:return a.Information;default:return a.None}};return u},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/VariantLayoutData", ["./LayoutData","./library"],function(a){"use strict";var t=a.extend("sap.ui.core.VariantLayoutData",{metadata:{library:"sap.ui.core",aggregations:{multipleLayoutData:{type:"sap.ui.core.LayoutData",multiple:true,singularName:"multipleLayoutData"}}}});return t});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/XMLComposite", ["sap/ui/core/Control","sap/ui/core/XMLCompositeMetadata","sap/ui/model/base/ManagedObjectModel","sap/ui/core/Element","sap/ui/core/Fragment","sap/ui/model/resource/ResourceModel","sap/base/Log","sap/ui/performance/Measurement"],function(e,t,i,r,o,n,a,s){"use strict";var g="sap.ui.core.XMLComposite";var p=e.extend("sap.ui.core.XMLComposite",{metadata:{interfaces:["sap.ui.core.IDScope"],properties:{width:{type:"sap.ui.core.CSSSize",group:"Dimension",defaultValue:"100%",invalidate:true},height:{type:"sap.ui.core.CSSSize",group:"Dimension",defaultValue:null,invalidate:true},displayBlock:{type:"boolean",group:"Appearance",defaultValue:true,invalidate:true}},aggregations:{_content:{type:"sap.ui.core.Control",multiple:false,visibility:"hidden",invalidate:true}}},constructor:function(){this._bIsCreating=true;e.apply(this,arguments);delete this._bIsCreating},renderer:{apiVersion:2,render:function(e,t){a.debug("Start rendering '"+t.sId,g);s.start(t.getId()+"---renderControl","Rendering of "+t.getMetadata().getName(),["rendering","control"]);e.openStart("div",t);e.accessibilityState(t);if(!t.getDisplayBlock()&&(t.getWidth()!=="100%"||t.getHeight()!=="100%")){e.style("display","inline-block")}e.style("height",t.getHeight());e.style("width",t.getWidth());e.openEnd();var i=t._renderingContent?t._renderingContent():t._getCompositeAggregation();if(i){e.renderControl(i)}e.close("div");s.end(t.getId()+"---renderControl");a.debug("Stop rendering '"+t.sId,g)}}},t);p.prototype.byId=function(e){return r.getElementById(o.createId(this.getId(),e))};p.prototype._getManagedObjectModel=function(){if(!this._oManagedObjectModel){this._oManagedObjectModel=new i(this)}return this._oManagedObjectModel};p.prototype.getSuppressInvalidateAggregation=function(e,t){var i=this.getMetadata(),r=i.getAggregation(e)||i.getAllPrivateAggregations()[e];if(!r){return true}t=i._suppressInvalidate(r,t);return t};p.prototype.setProperty=function(t,i,r){var o=this.getMetadata(),n=o.getManagedProperty(t);if(!n){return this}r=o._suppressInvalidate(n,r);return e.prototype.setProperty.apply(this,[t,i,r])};p.prototype.setAggregation=function(t,i,r){return e.prototype.setAggregation.apply(this,[t,i,this.getSuppressInvalidateAggregation(t,r)])};p.prototype.addAggregation=function(t,i,r){return e.prototype.addAggregation.apply(this,[t,i,this.getSuppressInvalidateAggregation(t,r)])};p.prototype.insertAggregation=function(t,i,r,o){return e.prototype.insertAggregation.apply(this,[t,i,r,this.getSuppressInvalidateAggregation(t,o)])};p.prototype.removeAggregation=function(t,i,r){return e.prototype.removeAggregation.apply(this,[t,i,this.getSuppressInvalidateAggregation(t,r)])};p.prototype.removeAllAggregation=function(t,i){return e.prototype.removeAllAggregation.apply(this,[t,this.getSuppressInvalidateAggregation(t,i)])};p.prototype.destroyAggregation=function(t,i){return e.prototype.destroyAggregation.apply(this,[t,this.getSuppressInvalidateAggregation(t,i)])};p.prototype.updateAggregation=function(t,i){var r=this.getMetadata().getAggregation(t);if(r&&r.type==="TemplateMetadataContext"){this.invalidate();return}e.prototype.updateAggregation.apply(this,arguments)};p.prototype.setVisible=function(e){this.setProperty("visible",e);if(this.getParent()){this.getParent().invalidate()}return this};p.prototype._destroyCompositeAggregation=function(){var e=this._getCompositeAggregation();if(e){e.destroy("KeepDom")}return this};p.prototype.updateBindings=function(){if(this._bIsCreating){return}var t=e.prototype.updateBindings.apply(this,arguments);for(var i in this.mBindingInfos){var r=this.getMetadata().getAggregation(i);if(r&&r.multiple&&!r._doesNotRequireFactory&&this.isBound(i)&&!this.getBinding(i)){this[r._sDestructor]()}}return t};p.prototype._getCompositeAggregation=function(){var e=this.getMetadata().getCompositeAggregationName();return this.getAggregation(e)};p.prototype._setCompositeAggregation=function(e){var t=this.getMetadata().getCompositeAggregationName();this._destroyCompositeAggregation();if(!this._oManagedObjectModel){this._getManagedObjectModel()}if(Array.isArray(e)){this.setAggregation(t,null);return}if(e){if(!e.enhanceAccessibilityState){e.enhanceAccessibilityState=function(e,t){this.enhanceAccessibilityState(e,t)}.bind(this)}e.bindObject("$"+this.alias+">/");e.setModel(this._oManagedObjectModel,"$"+this.alias);if(this.bUsesI18n){var i=this._getResourceModel();if(i){e.setModel(i,"$"+this.alias+".i18n")}}}this.setAggregation(t,e)};p.mResourceModels={};p.getLibraryResourceModel=function(e){var t=p.mResourceModels[e];if(!t){t=new n({bundleName:e+".messagebundle",async:true});p.mResourceModels[e]=t}return t};p.prototype._getResourceModel=function(){if(this.resourceModel){return this.resourceModel}if(this.messageBundle){this.resourceModel=new n({bundleName:this.messageBundle,async:true});return this.resourceModel}else{this.sLibraryName=this.sLibraryName||this.getMetadata().getLibraryName();if(this.sLibraryName){return p.getLibraryResourceModel(this.sLibraryName)}}};p.prototype.getResourceBundle=function(){var e=this._getResourceModel();return e?e.getResourceBundle():null};p.prototype.destroy=function(){e.prototype.destroy.apply(this,arguments);if(this.resourceModel){this.resourceModel.destroy()}if(this._oManagedObjectModel){this._oManagedObjectModel.destroy()}};p.prototype._initCompositeSupport=function(e){var t=this.getMetadata(),i=t._fragment,r=t.getCompositeAggregationName();this._destroyCompositeAggregation();if(e&&r&&e[r]){var o=e[r];if(o.localName==="FragmentDefinition"){i=o;delete e[r]}}var n=i?(new XMLSerializer).serializeToString(i):undefined;this.bUsesI18n=n?n.indexOf("$"+this.alias+".i18n")!=-1:true;this._setCompositeAggregation(sap.ui.xmlfragment({sId:this.getId(),fragmentContent:i,oController:this}));this._bIsInitialized=true};p.prototype.enhanceAccessibilityState=function(e,t){var i=this.getParent();if(i&&i.enhanceAccessibilityState){i.enhanceAccessibilityState(this,t)}};p.prototype.getFocusDomRef=function(){var e=this._renderingContent?this._renderingContent():this._getCompositeAggregation();return e.getFocusDomRef()};p.prototype.getFocusInfo=function(){var e=this._renderingContent?this._renderingContent():this._getCompositeAggregation();return e.getFocusInfo()};p.prototype.getIdForLabel=function(){var e=this._renderingContent?this._renderingContent():this._getCompositeAggregation();return e.getIdForLabel()};return p});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/XMLCompositeMetadata", ["sap/ui/core/ElementMetadata","sap/ui/core/XMLTemplateProcessor","sap/base/Log"],function(t,e,r){"use strict";var a={};var n=function(e,a){this.InvalidationMode={Render:true,None:false};if(!a.hasOwnProperty("renderer")){a.renderer="sap.ui.core.XMLCompositeRenderer"}if(!a.hasOwnProperty("alias")){a.alias="this"}t.apply(this,arguments);var n=this._bAbstract;if(!n){if(!a.fragment&&e!=="sap.ui.core.XMLComposite"){a.fragment=e;a.fragmentUnspecified=true}if(!this._fragment&&a.fragment){try{if(!this._fragment){if(a.fragmentContent){if(typeof a.fragmentContent==="string"){var o=new DOMParser;a.fragmentContent=o.parseFromString(a.fragmentContent,"text/xml").documentElement;if(a.fragmentContent&&a.fragmentContent.getElementsByTagName("parsererror").length){var i=a.fragmentContent.getElementsByTagName("parsererror")[0].innerText;throw new Error("There was an error parsing the XML fragment for XMLComposite '"+e+"'. The following message may contain hints to find the problem: "+i)}}this._fragment=a.fragmentContent}else{this._fragment=this._loadFragment(a.fragment,"control")}}}catch(t){if(!a.fragmentUnspecified||t.message.startsWith("There was an error parsing")){throw t}else{r.warning("Implicitly inferred fragment xml "+a.fragment+" not found. "+e+" is not abstract!")}}}}this._sCompositeAggregation=a.metadata?a.metadata.compositeAggregation||null:null;this._createPrivateAggregationAccessors();this._applyAggregationSettings()};n.prototype=Object.create(t.prototype);n.prototype.constructor=n;n.uid=t.uid;n.extend=function(t){for(var e in t){n[e]=t[e]}return n};n.prototype.getCompositeAggregationName=function(){return this._sCompositeAggregation||"_content"};n.prototype.getFragment=function(){if(this._fragment){return this._fragment.cloneNode(true)}};n.prototype._applyAggregationSettings=function(){var t=this.getAllAggregations();for(var e in t){if(t[e].type==="TemplateMetadataContext"){this.getAggregation(e)._doesNotRequireFactory=true}}};n.prototype._createPrivateAggregationAccessors=function(){var t=this.getAllPrivateAggregations(),e=this.getClass().prototype,r=function(t,r){if(!e[t]){e[t]=r}};for(var a in t){t[a].generate(r)}};n.prototype._suppressInvalidate=function(t,e){if(e){return true}if(!t.appData){t.appData={};t.appData.invalidate=this.InvalidationMode.None}if(t&&t.appData&&t.appData.invalidate===this.InvalidationMode.Render){return false}return true};n.prototype.getMandatoryAggregations=function(){if(!this._mMandatoryAggregations){var t=this.getAllAggregations(),e={};for(var r in t){if(t[r].type==="TemplateMetadataContext"&&t[r].appData.mandatory){e[r]=t[r]}}this._mMandatoryAggregations=e}return this._mMandatoryAggregations};n.prototype._loadFragment=function(t,r){var n=r+"$"+t;if(!a[n]){a[n]=e.loadTemplate(t,r)}return a[n]};return n},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/XMLTemplateProcessor", ["sap/ui/base/DataType","sap/ui/base/BindingInfo","sap/ui/core/CustomData","sap/ui/core/Component","sap/ui/core/ElementRegistry","./mvc/View","./mvc/ViewType","./mvc/XMLProcessingMode","./mvc/EventHandlerResolver","./ExtensionPoint","./StashedControlSupport","sap/ui/base/SyncPromise","sap/base/future","sap/base/Log","sap/base/util/ObjectPath","sap/base/assert","sap/base/util/LoaderExtensions","sap/base/util/JSTokenizer","sap/base/util/each","sap/base/util/isEmptyObject","sap/ui/base/DesignTime","sap/ui/core/Lib"],function(e,t,n,r,i,a,o,s,u,l,c,f,d,p,g,m,v,h,w,b,y,C){"use strict";function A(n,r,i,a,o,s,u){var l=!!s;var c;var f=t.parse(r,a,true,false,false,false,o,l,u);if(l&&f){s.push(f.resolved);c=f.bindingInfo}else{c=f}if(c&&typeof c==="object"){return c}var p=r=typeof c==="string"?c:r;var g=e.getType(n);if(g){if(g instanceof e){p=g.parseValue(r,{context:a,locals:o});if(!g.isValid(p)){d.errorThrows("Value '"+r+"' is not valid for type '"+g.getName()+"'.")}}}else{throw new Error("Property "+i+" has unknown type "+n)}return typeof p==="string"?t.escape(p):p}function N(e){return e.localName||e.nodeName}var M="http://www.w3.org/1999/xhtml";var _="http://www.w3.org/2000/xmlns/";var x="http://www.w3.org/2000/svg";var V="sap.ui.core";var E="sap.ui.core.mvc";var I="http://schemas.sap.com/sapui5/extension/sap.ui.core.CustomData/1";var T="http://schemas.sap.com/sapui5/extension/sap.ui.core.support.Support.info/1";var P="http://schemas.sap.com/sapui5/extension/sap.ui.core.xmlcomposite/1";var S="http://schemas.sap.com/sapui5/extension/sap.ui.core.Internal/1";var L="http://schemas.sap.com/sapui5/preprocessorextension/";var R=["controllerName","resourceBundleName","resourceBundleUrl","resourceBundleLocale","resourceBundleAlias"];var X=/^(?:area|base|br|col|embed|hr|img|input|link|meta|param|source|track|wbr)$/;function q(e,t){function n(t,n){var r,i=[];for(var a=0;a<t.childNodes.length;a++){r=e(t,t.childNodes[a],n);if(r){i.push(r.unwrap())}}return f.resolve(i)}function r(t,n){var r=Promise.resolve(),i=[n.chain];for(var a=0;a<t.childNodes.length;a++){r=r.then(e.bind(null,t,t.childNodes[a],n));i.push(r)}return Promise.all(i)}return t?r:n}var B={};B.loadTemplate=function(e,t){var n=e.replace(/\./g,"/")+("."+(t||"view")+".xml");return v.loadResource(n).documentElement};B.loadTemplatePromise=function(e,t){var n=e.replace(/\./g,"/")+("."+(t||"view")+".xml");return v.loadResource(n,{async:true}).then(function(e){return e.documentElement})};B.parseViewAttributes=function(e,t){var n,r;for(n=0;n<e.attributes.length;n++){r=e.attributes[n];if(R.includes(r.name)){if(r.name==="controllerName"&&r.value.startsWith("module:")){t["_controllerModuleName"]=r.value}else{t["_"+r.name]=r.value}}}};B.enrichTemplateIds=function(e,t){B.enrichTemplateIdsPromise(e,t,false);return e};B.enrichTemplateIdsPromise=function(e,t,n){return F(e,t,true,undefined,n).then(function(){return e})};B.parseTemplate=function(e,t,n){return B.parseTemplatePromise(e,t,false,{settings:n}).unwrap()};B.parseTemplatePromise=function(e,t,n,r){return F(e,t,false,r,n).then(function(e){if(t.isA("sap.ui.core.mvc.View")){var n,r;for(r=e.length-1;r>=0;r--){n=e[r];if(n&&n._isExtensionPoint){var i=[r,1].concat(n._aControls);Array.prototype.splice.apply(e,i)}}}return e})};function U(e,t){if(t instanceof Promise){throw new Error(`The module '${e}' returns a Promise where a control class was expected. Promises as module content are not supported. Please also refer to https://ui5.sap.com/#/topic/0cb44d7a147640a0890cefa5fd7c7f8e.`)}}function j(e){const t=/^[a-zA-Z_][a-zA-Z0-9_$]*$/;const n={throwError:false,errorMessage:""};if(!e||typeof e!=="object"){n.errorMessage="core:require in XMLView can't be parsed to a valid object";n.throwError=true;return n}for(const r of Object.keys(e)){if(!t.test(r)){n.errorMessage=`core:require in XMLView contains an invalid identifier: '${r}'`;if(!r.startsWith("$")){n.throwError=true}return n}const i=e[r];if(!i||typeof i!=="string"){n.errorMessage=`core:require in XMLView contains an invalid value '${i}' under key '${r}'`;n.throwError=true;return n}}return n}function k(e,t){var n=e.getAttributeNS(V,"require"),r,i,a;if(n){try{r=h.parseJS(n)}catch(t){p.error("Require attribute can't be parsed on Node: ",e.nodeName);throw t}a=j(r);if(a.errorMessage){const t=`${a.errorMessage} on Node: ${e.nodeName}`;if(a.throwError){throw new Error(t)}else{d.fatalThrows(`${t}. Keys that begin with '$' are reserved by the framework.`)}}if(!b(r)){i={};if(t){return new Promise(function(e,t){var n=Object.keys(r).reduce(function(e,t){i[t]=sap.ui.require(r[t]);return e&&i[t]!==undefined},true);if(n){e(i);return}sap.ui.require(Object.values(r),function(){var t=arguments;Object.keys(r).forEach(function(e,n){i[e]=t[n]});e(i)},t)})}else{Object.keys(r).forEach(function(e){i[e]=sap.ui.requireSync(r[e])});return f.resolve(i)}}}}function O(e,t,n){var r=f.resolve();if(!b(t)){var i=[];var a;if(n){r=new Promise(function(e){a=e})}Object.keys(t).forEach(function(n){var r=t[n];r.forEach(function(t){t.targetControl=e;var n=sap.ui.require(t.providerClass);if(n){i.push(n.applyExtensionPoint(t))}else{var r=new Promise(function(e,n){sap.ui.require([t.providerClass],function(t){e(t)},n)}).then(function(e){return e.applyExtensionPoint(t)});i.push(r)}})});if(n){Promise.all(i).then(a)}}return r}function $(e,t,n){var r=n;for(var i=0;i<100;i++){var a=e.lookupNamespaceURI(r);if(a==null||a===t){return r}r=n+i}throw new Error("Could not find an unused namespace prefix after 100 tries, giving up")}function F(e,v,h,j,F){var H=[],D=$(e,S,"__ui5"),K=k(e,F)||f.resolve(),W=e=>H.push(e);const z={$control:null,$controller:v._oContainingView.oController};const J={openStart:function(e,t){H.push(["openStart",[e,t]])},voidStart:function(e,t){H.push(["voidStart",[e,t]])},style:function(e,t){H.push(["style",[e,t]])},class:function(e){H.push(["class",[e]])},attr:function(e,t){H.push(["attr",[e,t]])},openEnd:function(){H.push(["openEnd"])},voidEnd:function(){H.push(["voidEnd"])},text:function(e){H.push(["text",[e]])},unsafeHtml:function(e){H.push(["unsafeHtml",[e]])},close:function(e){H.push(["close",[e]])}};if(j?.settings?.requireContext){K=K.then(e=>Object.assign({},j.settings.requireContext,e))}(()=>{F=F&&!!v._sProcessingMode;p.debug("XML processing mode is "+(v._sProcessingMode||"default")+".","","XMLTemplateProcessor")})();p.debug("XML will be processed "+(F?"asynchronously":"synchronously")+".","","XMLTemplateProcessor");var Z=y.isDesignModeEnabled();if(Z){v._sapui_declarativeSourceInfo={xmlNode:e,xmlRootNode:v._oContainingView===v?e:v._oContainingView._sapui_declarativeSourceInfo.xmlRootNode}}if(!v.isSubView()){e.setAttributeNS(_,"xmlns:"+D,S)}var G=ae(e,K);var Q=0;function Y(){for(;Q<H.length;Q++){var e=H[Q];if(e&&typeof e.then==="function"){return e.then(ee).then(Y)}}return H}function ee(e){var t=[Q,1].concat(e);Array.prototype.splice.apply(H,t)}return K.then(Y).then(function(t){if(G){var n=e.parentNode;n.removeChild(e);if(n.parentNode){n.parentNode.replaceChild(e,n)}}return t});function te(e){return e}function ne(e){return v._oContainingView.createId(e)}function re(e,t){var n=v.getMetadata().isA("sap.ui.core.mvc.View")?"View":"Fragment";var r=e.outerHTML?e.cloneNode(false).outerHTML:e.textContent;return"Error found in "+n+" (id: '"+v.getId()+"').\nXML node: '"+r+"':\n"+t}function ie(e){var t=N(e),n;const r=v.isA("sap.ui.core.mvc.XMLView")&&(e.namespaceURI===M||e.namespaceURI===x);if(r){n=e.ownerDocument.createElementNS(E,"View")}else if(v.isA("sap.ui.core.Fragment")&&(t!=="FragmentDefinition"||e.namespaceURI!==V)){n=e.ownerDocument.createElementNS(V,"FragmentDefinition")}if(n){var i=e.parentNode;if(i){i.replaceChild(n,e)}n.appendChild(e)}return n}function ae(e,t){var n=false,r=v.sViewName||v._sFragmentName,i,a;if(!r){var o=v;var s=0;while(++s<1e3&&o&&o!==o._oContainingView){o=o._oContainingView}r=o.sViewName}i=ie(e);if(i){e=i;n=true}a=N(e);if(v.isA("sap.ui.core.mvc.XMLView")){if(a!=="View"&&a!=="XMLView"||e.namespaceURI!==E){d.errorThrows("XMLView's root node must be 'View' or 'XMLView' and have the namespace 'sap.ui.core.mvc'"+(r?" (View name: "+r+")":""))}K=t.then(function(){return ce(e,v.getMetadata().getClass(),t,null,{rootArea:true,rootNode:true})})}else{var u=q(function(e,t,n){if(t.nodeType===1){return ue(t,n.chain,null,undefined,{rootArea:true})}},F);K=t.then(function(){return u(e,{chain:t})})}return n}function oe(e){if(v.fnScopedRunWithOwner){return v.fnScopedRunWithOwner(e)}else{return e()}}function se(e,t){var n;var r=C.all();w(r,function(r,i){if(e===i.namespace||e===i.name){n=i.name+"."+(i.tagNames&&i.tagNames[t]||t)}});n=n||e+"."+t;function i(e,t){if(!e){let t=`Control '${n}' did not return a class definition from sap.ui.define.`;(()=>{e=g.get(n);if(e){t+=" The control class was instead retrieved via a deprecated access to the global namespace. This fallback behavior will be removed in the next major version (2.0)."}})();d.errorThrows(`XMLTemplateProcessor: ${t}`)}U(t,e);return e}var a=n.replace(/\./g,"/");var o=sap.ui.require(a);if(!o){if(!F){o=sap.ui.requireSync(a);o=i(o,a);return o}return new Promise(function(e,t){sap.ui.require([a],function(n){try{n=i(n,a);e(n)}catch(e){t(e)}},t)})}else{U(a,o)}return o}function ue(e,t,n,r,i){var a=i&&i.rootArea,o=i&&i.rootNode&&v.isSubView(),s=N(e),u=a&&(v.isA("sap.ui.core.Fragment")||r&&r.name==="content"),l,c;const g=e.nodeType===3&&u;if(e.nodeType===1){if(e.namespaceURI===M||e.namespaceURI===x){d.warningThrows(`${v.getId()}: Using native HTML content in XMLViews is deprecated.`)}const g=e.namespaceURI===M||e.namespaceURI===x;if(g){if(a){if(r&&r.name!=="content"){p.error(re(e,"XHTML nodes can only be added to the 'content' aggregation and not to the '"+r.name+"' aggregation."));return f.resolve([])}if(i&&i.contentBound){throw new Error(re(e,"No XHTML or SVG node is allowed because the 'content' aggregation is bound."))}var m=e.namespaceURI===M;var w=e.getAttribute("id");if(w!=null){w=de(v,e)}else{w=o?v.getId():undefined}if(s==="style"){var b=e.attributes;var y=e.textContent;e=document.createElement(s);e.textContent=y;for(c=0;c<b.length;c++){var C=b[c];if(!C.prefix){e.setAttribute(C.name,C.value)}}if(w!=null){e.setAttribute("id",w)}if(o){e.setAttribute("data-sap-ui-preserve",v.getId())}J.unsafeHtml(e.outerHTML);return f.resolve([])}var A=X.test(s);if(A){J.voidStart(s,w)}else{J.openStart(s,w)}for(c=0;c<e.attributes.length;c++){var _=e.attributes[c];if(_.name!=="id"&&(_.localName!=="require"||_.namespaceURI!==V)){J.attr(m?_.name.toLowerCase():_.name,_.value)}}if(o){J.attr("data-sap-ui-preserve",v.getId())}if(A){J.voidEnd();if(e.firstChild){p.error("Content of void HTML element '"+s+"' will be ignored")}}else{J.openEnd();var E=k(e,F);if(E){t=f.all([t,E]).then(function(e){return Object.assign({},...e)})}var I=e instanceof HTMLTemplateElement?e.content:e;var T=q(function(e,t,n){return ue(t,n.chain,n.closestBinding,n.aggregation,n.config)},F);l=T(I,{chain:t,closestBinding:n,aggregation:r,config:{rootArea:a}});return l.then(function(e){J.close(s);return e.reduce(function(e,t){if(Array.isArray(t)){t.forEach(function(t){e.push(t)})}return e},[])})}}else{var P=e.attributes["id"]?e.attributes["id"].textContent||e.attributes["id"].text:null;if(h){return B.enrichTemplateIdsPromise(e,v,F).then(function(){return[]})}else{var S=function(t,n){var r={id:P?de(v,e,P):undefined,xmlNode:e,requireContext:n,containingView:v._oContainingView};r.processingMode=v._sProcessingMode;return oe(function(){return new t(r)})};return t.then(function(e){if(F){return new Promise(function(t,n){sap.ui.require(["sap/ui/core/mvc/XMLView"],function(n){t([S(n,e)])},n)})}else{var t=sap.ui.requireSync("sap/ui/core/mvc/XMLView");return[S(t,e)]}})}}}else{l=le(e,t,n);if(u){W(l)}return l}}else if(g){if(!i||!i.contentBound){J.text(e.textContent)}else if(e.textContent.trim()){throw new Error(re(e,"Text node isn't allowed because the 'content' aggregation is bound."))}}return f.resolve([])}function le(e,t,n){if(N(e)==="ExtensionPoint"&&e.namespaceURI===V){if(h){return f.resolve([])}else{var r=v instanceof a?v._oContainingView:v;var i=l._factory.bind(null,r,e.getAttribute("name"),function(){var r=f.resolve();var i=[];var a=e.childNodes;for(var o=0;o<a.length;o++){var s=a[o];if(s.nodeType===1){r=r.then(ue.bind(null,s,t,n));i.push(r)}}return f.all(i).then(function(e){var t=[];e.forEach(function(e){t=t.concat(e)});return t})},undefined,undefined,F);return f.resolve(oe(i))}}else{var o=N(e);var s=o;var u=o.lastIndexOf(".");if(u>=0){s=o.substring(u+1,o.length)}if(/^[a-z].*/.test(s)){var c=v.sViewName||v._sFragmentName||v.getId();p.warning("View or Fragment '"+c+"' contains a Control tag that starts with lower case '"+s+"'",v.getId(),"sap.ui.core.XMLTemplateProcessor#lowerCase")}var d=se(e.namespaceURI,o);if(d&&typeof d.then==="function"){return d.then(function(r){return ce(e,r,t,n)})}else{return ce(e,d,t,n)}}}function ce(e,l,g,w,y){var C=e.namespaceURI,M={},_={},x="",E=[],X=null,U=null,$=e.getAttribute("stashed")==="true",H=y&&y.rootArea,D=y&&y.rootNode,K;if(!h){e.removeAttribute("stashed")}if(!l){return f.resolve([])}if(D){M.id=v.getId()}var W=l.getMetadata();var J=W.getAllSettings();var G=!H?k(e,F):undefined;if(G){g=f.all([g,G]).then(function(e){return Object.assign({},e[0],e[1])})}g=g.then(function(r){if(b(r)){r=null}K=r;var i=F?[]:undefined;if(!h){for(var a=0;a<e.attributes.length;a++){var s=e.attributes[a],c=s.name,f=s.namespaceURI,g=J[c],m=s.value;if(D&&R.includes(c)){continue}if(c==="id"&&!D){M[c]=de(v,e,m)}else if(c==="class"){x+=m}else if(c==="viewName"){M[c]=m}else if(c==="fragmentName"){M[c]=m;M["containingView"]=v._oContainingView}else if(c==="binding"&&!g||c==="objectBindings"){if(!$){var w=t.parse(m,v._oContainingView.oController);if(w){M.objectBindings=M.objectBindings||{};M.objectBindings[w.model||undefined]=w}}}else if(c==="metadataContexts"){if(!$){var y=null;try{y=B._calculatedModelMapping(m,v._oContainingView.oController,true)}catch(e){d.errorThrows(`Failed to parse metadataContexts in view "${v}"`,{cause:e})}if(y){M.metadataContexts=y;if(B._preprocessMetadataContexts){B._preprocessMetadataContexts(l.getMetadata().getName(),M,v._oContainingView.oController)}}}}else if(c.indexOf(":")>-1){f=s.namespaceURI;if(f===I){var C=N(s);E.push(new n({key:C,value:A("any",m,C,v._oContainingView.oController,r,i)}))}else if(f===T){U=m}else if(f&&f.startsWith(L)){p.debug(v+": XMLView parser ignored preprocessor attribute '"+c+"' (value: '"+m+"')")}else if(f===S&&N(s)==="invisible"){g=J.visible;if(g&&g._iKind===0&&g.type==="boolean"){M.visible=false}}else if(f===V||f===S||c.startsWith("xmlns:")){}else{if(!X){X={}}if(!X.hasOwnProperty(s.namespaceURI)){X[s.namespaceURI]={}}X[s.namespaceURI][N(s)]=s.nodeValue;p.debug(v+": XMLView parser encountered unknown attribute '"+c+"' (value: '"+m+"') with unknown namespace, stored as sap-ui-custom-settings of customData")}}else if(g&&g._iKind===0){M[c]=A(g.type,m,c,v._oContainingView.oController,r,i,z)}else if(g&&g._iKind===1&&g.altTypes){if(!$){M[c]=A(g.altTypes[0],m,c,v._oContainingView.oController,r,null,z)}}else if(g&&g._iKind===2){if(!$){var w=t.parse(m,v._oContainingView.oController,false,false,false,false,r);if(w){M[c]=w}else{d.errorThrows(""+v+": aggregations with cardinality 0..n specifies a non valid BindingInfo (wrong value: "+c+"='"+m+"')")}}}else if(g&&g._iKind===3){if(!$){M[c]=ne(m)}}else if(g&&g._iKind===4){if(!$){M[c]=m.split(/[\s,]+/g).filter(te).map(ne)}}else if(g&&g._iKind===5){if(!$){var _=[];u.parse(m).forEach(function(e){var t=u.resolveEventHandler(e,v._oContainingView.oController,r);if(t){_.push(t)}else{d.warningThrows(""+v+': event handler function "'+e+'" is not a function or does not exist in the controller.')}});if(_.length){M[c]=_}}}else if(g&&g._iKind===-1){if(W.isA("sap.ui.core.mvc.View")&&(c=="async"||c=="type"&&o[m])){M[c]=A(g.type,m,c,v._oContainingView.oController,r)}else{d.warningThrows(""+v+": setting '"+c+"' for class "+W.getName()+" (value:'"+m+"') is not supported")}}else{d.assertThrows(c==="xmlns",v+": encountered unknown setting '"+c+"' for class "+W.getName()+" (value:'"+m+"')");if(B._supportInfo){B._supportInfo({context:e,env:{caller:"createRegularControls",error:true,info:"unknown setting '"+c+"' for class "+W.getName()}})}}}if(X){E.push(new n({key:"sap-ui-custom-settings",value:X}))}if(E.length>0){M.customData=E}}if(Array.isArray(i)){return Promise.all(i).then(function(){return r})}return r}).catch(function(t){if(!t.isEnriched){t=new Error(re(e,t));t.isEnriched=true;p.error(t)}const n=v._sProcessingMode===s.SequentialLegacy;if(F&&!n){throw t}});var Q=q(Y,F);function Y(e,t,n){var r=n.aggregation,i=n.allAggregations,a=n.chain,o=n.closestBinding,s=n.config,u,l;if(t.nodeType===1){if(t.namespaceURI===P){M[N(t)]=t.querySelector("*");return undefined}u=t.namespaceURI===C&&i&&i[N(t)];if(u){return Q(t,{aggregation:u,allAggregations:null,chain:a,closestBinding:o,config:s})}else if(r){if(t.getAttribute("stashed")==="true"&&!h){var d=t;t=t.cloneNode();d.removeAttribute("stashed");l=function(){var n=de(v,t);c.createStashedControl({wrapperId:n,fnCreate:function(t){var n=F;if(F===false){t=true}F=!t;try{fe(d,"unstash");let n=Y(e,d,{aggregation:r,allAggregations:i,chain:f.resolve(K),closestBinding:o});if(t){n=n.unwrap()}return n}finally{F=n}}})};oe(l);t.removeAttribute("visible");fe(t,"invisible")}if(M[r.name]&&typeof M[r.name].path==="string"){o={aggregation:r.name,id:M.id};if(D&&r.name==="content"){s=s||{};s.contentBound=true}}return ue(t,a,o,r,s).then(function(e){for(var t=0;t<e.length;t++){var n=e[t];var i=r.name;if(n._isExtensionPoint){if(!M[i]){M[i]=[]}var a=_[i];if(!a){a=_[i]=[]}n.index=M[i].length;n.aggregationName=i;n.closestAggregationBindingCarrier=o&&o.id;n.closestAggregationBinding=o&&o.aggregation;var s=a[a.length-1];if(s){s._nextSibling=n}a.push(n)}else if(r.multiple){if(!M[i]){M[i]=[]}if(typeof M[i].path==="string"){m(!M[i].template,"list bindings support only a single template object");M[i].template=n}else{M[i].push(n)}}else{m(!M[i],"multiple aggregates defined for aggregation "+i+" with cardinality 0..1");M[i]=n}}return e})}else{throw new Error(re(t,"Cannot add direct child without default aggregation defined for control "+W.getElementName()))}}else if(t.nodeType===3){if(s&&s.rootArea){ue(t,a,o,r,s)}else{var p=t.textContent||t.text;if(p&&p.trim()){throw new Error(re(t,"Cannot add text nodes as direct child of an aggregation. For adding text to an aggregation, a surrounding html tag is needed."))}}}}var ee=W.getDefaultAggregation();var ie=W.getAllAggregations();return Q(e,{aggregation:ee,allAggregations:ie,chain:g,closestBinding:w,config:y}).then(function(){var t;var n=f.resolve();var s=f.resolve();var u=e.getAttribute("type");var c=r.getOwnerComponentFor(v);var d=c&&c.isA("sap.ui.core.IAsyncContentCreation");if(h){if(!H&&e.hasAttribute("id")){pe(v,e)}}else if(!D&&l.getMetadata().isA("sap.ui.core.mvc.View")){if(!l._sType&&!M.viewName){M.viewName="module:"+l.getMetadata().getName().replace(/\./g,"/")}M.type=l._sType||u;if(F){if(d&&M.async===false){throw new Error("A nested view contained in a Component implementing 'sap.ui.core.IAsyncContentCreation' is processed asynchronously by default and cannot be processed synchronously.\n"+"Affected Component '"+c.getMetadata().getComponentName()+"' and View '"+M.viewName+"'.")}s=oe(function(){return a.create(M)})}else{if(l.getMetadata().isA("sap.ui.core.mvc.XMLView")&&v._sProcessingMode){M.processingMode=v._sProcessingMode}t=oe(function(){return a._create(M)})}}else if(l.getMetadata().isA("sap.ui.core.Fragment")&&F){if(u!==o.JS){M.processingMode=v._sProcessingMode}var p="sap/ui/core/Fragment";var g=sap.ui.require(p);M.name=M.name||M.fragmentName;if(g){s=g.load(M)}else{s=new Promise(function(e,t){sap.ui.require([p],function(t){t.load(M).then(function(t){e(t)})},t)})}}else{var m=function(){var t;if(D){t=v;if(!F){if(j&&j.settings){Object.keys(M).forEach(function(e){if(j.settings.hasOwnProperty(e)){j.settings[e]=M[e];delete M[e]}})}}v.applySettings(M)}else{t=oe(function(){var t;if(e.getAttributeNS(S,"unstash")==="true"){t=i.get(M.id);if(t.setVisible){t.setVisible(true)}t.applySettings(M)}else{t=new l(M)}return t})}n=O(t,_,F);return t};if(j&&j.fnRunWithPreprocessor){t=j.fnRunWithPreprocessor(m)}else{t=m()}}return s.then(function(e){return e||t}).then(function(t){if(x&&t.addStyleClass){t.addStyleClass(x)}if(!t){t=[]}else if(!Array.isArray(t)){t=[t]}if(B._supportInfo&&t){for(var r=0,i=t.length;r<i;r++){var a=t[r];if(a&&a.getId()){var o=B._supportInfo({context:e,env:{caller:"createRegularControls",nodeid:e.getAttribute("id"),controlid:a.getId()}}),s=U?U+",":"";s+=o;B._supportInfo.addSupportInfo(a.getId(),s)}}}if(Z){t.forEach(function(t){if(W.getCompositeAggregationName){var n=e.getElementsByTagName(t.getMetadata().getCompositeAggregationName());for(var r=0;r<n.length;r++){e.removeChild(n[0])}}t._sapui_declarativeSourceInfo={xmlNode:e,xmlRootNode:v._sapui_declarativeSourceInfo.xmlRootNode,fragmentName:W.getName()==="sap.ui.core.Fragment"?M["fragmentName"]:null}})}return n.then(function(){return t})})})}function fe(e,t){var n=$(e,S,D);e.setAttributeNS(S,n+":"+t,"true")}function de(e,t,n){if(t.getAttributeNS(S,"id")){return t.getAttribute("id")}else{return ne(n?n:t.getAttribute("id"))}}function pe(e,t){t.setAttribute("id",ne(t.getAttribute("id")));fe(t,"id")}}B._preprocessMetadataContexts=null;B._calculatedModelMapping=function(e,n,r){var i,a={},o=t.parse(e,n);function s(e){if(e.length%2===0){throw new Error("The last entry is no binding")}for(var t=1;t<=e.length;t=t+2){if(typeof e[t-1]=="string"){throw new Error("Binding expected not a string")}if(e[t]){if(typeof e[t]!="string"||e[t]!=","){throw new Error("Missing delimiter ','")}}}}if(o){if(!o.formatter){i=o;o={parts:[i]}}else{s(o.formatter.textFragments)}for(var u=0;u<o.parts.length;u++){i=o.parts[u];a[i.model]=a[i.model]||(r?[]:null);if(Array.isArray(a[i.model])){a[i.model].push(i)}else{a[i.model]=i}}}return a};return B},true);
/*
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/_CommandPool", ["sap/ui/core/Lib"],function(e){"use strict";const t={"sap:share":{shortcut:"Ctrl+Shift+S",description:"{{SAP_SHARE}}"},"sap:create":{shortcut:"Ctrl+Enter",description:"{{SAP_CREATE}}"},"sap:edit":{shortcut:"Ctrl+E",description:"{{SAP_EDIT}}"},"sap:save":{shortcut:"Ctrl+S",description:"{{SAP_SAVE}}"},"sap:delete":{shortcut:"Ctrl+D",description:"{{SAP_DELETE}}"}};const r=/\{\{([^\}\}]+)\}\}/g;return{resolve(s){const i=s.getEntry("/sap.ui5/commands")||{};Object.keys(i).forEach(s=>{const o=i[s];if(o.ref){if(o.shortcut){throw new TypeError(`If a command reference 'ref' is specified in the 'sap.ui5/commands' section of the manifest, the 'shortcut' property must be omitted.`)}const s=o.ref;const i=t[s];if(!i){throw new TypeError(`The given reference '${s}' in the 'sap.ui5/commands' section of the manifest is not valid.`)}o.ref=undefined;o.shortcut=i.shortcut;if(!o.description){const t=e.getResourceBundleFor("sap.ui.core");o.description=i.description.replace(r,(e,r)=>t.getText(r))}}})}}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/_IconRegistry", ["sap/ui/thirdparty/URI","sap/base/i18n/ResourceBundle","sap/base/Log","sap/base/util/fetch","sap/base/util/syncFetch","sap/base/util/isPlainObject","sap/ui/core/Lib","sap/ui/core/Theming","sap/ui/core/theming/ThemeHelper"],function(e,t,a,r,n,o,i,s,c){"use strict";var l="SAP-icons";var d="sap-icon";var u={undefined:{config:{fontFamily:l},metadataLoaded:true,deprecatedNames:new Set(["soccor","clinical-tast-tracker"])}};var p={undefined:{"accidental-leave":57344,account:57345,wrench:57346,"windows-doors":57347,"washing-machine":57348,visits:57349,video:57350,"travel-expense":122887,temperature:57352,task:122889,synchronize:57354,survey:122891,settings:57356,search:122893,"sales-document":122894,"retail-store":57359,refresh:57360,product:57361,present:57362,"ppt-attachment":57363,pool:57364,"pie-chart":57365,picture:57366,"photo-voltaic":57367,phone:57368,pending:57369,"pdf-attachment":122906,past:122907,"outgoing-call":57372,opportunity:57373,opportunities:122910,notes:57375,"money-bills":122912,map:57377,log:57378,"line-charts":57379,lightbulb:57380,leads:57381,lead:122918,laptop:57383,"kpi-managing-my-area":122920,"kpi-corporate-performance":122921,"incoming-call":57386,inbox:57387,"horizontal-bar-chart":57388,history:57389,"heating-cooling":57390,"gantt-bars":57391,future:122928,fridge:57393,fallback:57394,"expense-report":122931,"excel-attachment":57396,"energy-saving-lightbulb":57397,employee:57398,email:57399,edit:57400,duplicate:57401,download:57402,"doc-attachment":57403,dishwasher:57404,delete:57405,decline:57406,complete:122943,competitor:57408,"collections-management":57409,chalkboard:122946,cart:57411,card:57412,camera:57413,calendar:122950,begin:57415,basket:57416,"bar-chart":57417,attachment:57418,"arrow-top":57419,"arrow-right":57420,"arrow-left":57421,"arrow-bottom":57422,approvals:122959,appointment:57424,"alphabetical-order":122961,"along-stacked-chart":57426,alert:57427,addresses:57428,"address-book":122965,"add-filter":57430,"add-favorite":57431,add:57432,activities:122969,action:57434,accept:122971,hint:122972,group:57437,"check-availability":122974,"weather-proofing":57439,"payment-approval":122976,"batch-payments":122977,bed:57442,arobase:122979,"family-care":57444,favorite:57445,"navigation-right-arrow":57446,"navigation-left-arrow":57447,"e-care":57448,less:57449,lateness:57450,lab:57451,"internet-browser":57452,instance:57453,inspection:57454,"image-viewer":57455,home:57456,grid:57457,goalseek:57458,"general-leave-request":57459,"create-leave-request":57460,flight:57461,filter:57462,"favorite-list":57463,factory:57464,endoscopy:57465,"employee-pane":57466,"employee-approvals":123003,"email-read":57468,electrocardiogram:57469,documents:57470,decision:57471,database:57472,"customer-history":57473,customer:57474,"credit-card":57475,"create-entry-time":57476,contacts:57477,compare:57478,"clinical-order":57479,"chain-link":57480,"pull-down":57481,"cargo-train":57482,"car-rental":57483,"business-card":57484,"bar-code":57485,"folder-blank":57486,"passenger-train":57487,"question-mark":123024,world:57489,iphone:57490,ipad:57491,warning:57492,sort:57493,"course-book":57494,"course-program":57495,"add-coursebook":57496,print:57497,save:57498,play:123035,pause:57500,record:57501,response:57502,"pushpin-on":57503,"pushpin-off":57504,unfavorite:57505,"learning-assistant":57506,timesheet:57507,"time-entry-request":57508,list:57509,"action-settings":57510,share:57511,feed:57512,role:57513,flag:123050,post:57515,inspect:57516,"inspect-down":57517,"appointment-2":57518,"target-group":57519,"marketing-campaign":57520,notification:57521,"message-error":57521,comment:57522,"shipping-status":57523,collaborate:57524,shortcut:57525,"lead-outdated":123062,"tools-opportunity":57527,permission:57528,supplier:57529,"table-view":57530,"table-chart":57531,"switch-views":57532,"e-learning":57533,manager:57534,"switch-classes":57535,"simple-payment":123072,signature:57537,"sales-order-item":123074,"sales-order":123075,request:57540,receipt:57541,puzzle:57542,process:57543,private:57544,"popup-window":57545,"person-placeholder":57546,"per-diem":123083,"paper-plane":57548,"paid-leave":123085,"pdf-reader":123086,"overview-chart":57551,overlay:57552,"org-chart":57553,"number-sign":57554,"notification-2":57555,"my-sales-order":123092,meal:57557,loan:123094,"order-status":123095,"customer-order-entry":123096,performance:57561,menu:57562,"employee-lookup":57563,education:57564,"customer-briefing":57565,"customer-and-contacts":57566,"my-view":57567,accelerated:57568,"to-be-reviewed":57569,warning2:57570,"feeder-arrow":57571,"quality-issue":57572,"workflow-tasks":57573,create:57574,"home-share":57575,globe:123112,tags:57577,"work-history":57578,"x-ray":57579,"wounds-doc":57580,"web-cam":57581,waiver:123118,"vertical-bar-chart":57583,"upstacked-chart":57584,"trip-report":57585,microphone:57586,"unpaid-leave":123123,tree:57588,"toaster-up":57589,"toaster-top":57590,"toaster-down":57591,"time-account":57592,theater:57593,taxi:57594,"subway-train":57595,"study-leave":57596,stethoscope:57597,step:57598,sonography:57599,soccor:57600,soccer:57600,"physical-activity":57601,pharmacy:57602,"official-service":57603,"offsite-work":57604,"nutrition-activity":57605,newspaper:57606,"monitor-payments":123143,"map-2":57608,machine:57609,"mri-scan":57610,"end-user-experience-monitoring":57611,unwired:57612,"customer-financial-fact-sheet":123149,"retail-store-manager":57614,"Netweaver-business-client":57615,"electronic-medical-record":57616,"eam-work-order":123153,"customer-view":57618,"crm-service-manager":57619,"crm-sales":123156,widgets:123157,"commission-check":123158,"collections-insight":123159,"clinical-tast-tracker":57624,"clinical-task-tracker":57624,"citizen-connect":57625,"cart-approval":123162,"capital-projects":123163,"bo-strategy-management":57628,"business-objects-mobile":57629,"business-objects-explorer":57630,"business-objects-experience":57631,"bbyd-dashboard":57632,"bbyd-active-sales":123169,"business-by-design":123170,"business-one":123171,"sap-box":57636,"manager-insight":57637,"accounting-document-verification":123174,"hr-approval":123175,"idea-wall":57640,"Chart-Tree-Map":57641,"cart-5":57642,"cart-4":57643,wallet:57644,"vehicle-repair":57645,upload:57646,unlocked:57647,umbrella:57648,"travel-request":123185,"travel-expense-report":123186,"travel-itinerary":57651,"time-overtime":123188,"thing-type":57653,"technical-object":57654,tag:57655,syringe:57656,syntax:57657,suitcase:57658,simulate:57659,shield:57660,"share-2":57661,"sales-quote":123198,repost:57663,provision:57664,projector:57665,"add-product":57666,"pipeline-analysis":57667,"add-photo":57668,palette:57669,nurse:57670,"sales-notification":123207,mileage:57672,"meeting-room":57673,"media-forward":123210,"media-play":123211,"media-pause":57676,"media-reverse":123213,"media-rewind":123214,"measurement-document":57679,"measuring-point":57680,measure:57681,"map-3":57682,locked:57683,letter:57684,"journey-arrive":57685,"journey-change":57686,"journey-depart":57687,"it-system":57688,"it-instance":57689,"it-host":57690,"iphone-2":57691,"ipad-2":57692,inventory:57693,"insurance-house":57694,"insurance-life":57695,"insurance-car":57696,initiative:57697,incident:123234,"group-2":57699,goal:57700,"functional-location":57701,"full-screen":57702,form:57703,"fob-watch":57704,"blank-tag":57705,"family-protection":57706,folder:57707,"fax-machine":57708,example:57709,eraser:57710,"employee-rejections":57711,"drop-down-list":57712,"draw-rectangle":57713,document:57714,doctor:57715,"discussion-2":57716,discussion:57717,dimension:57718,"customer-and-supplier":57719,crop:57720,"add-contact":57721,"compare-2":57722,"color-fill":57723,collision:57724,curriculum:57725,"chart-axis":57726,"full-stacked-chart":57727,"full-stacked-column-chart":57728,"vertical-bar-chart-2":57729,"horizontal-bar-chart-2":57730,"horizontal-stacked-chart":57731,"vertical-stacked-chart":57732,"choropleth-chart":123269,"geographic-bubble-chart":123270,"multiple-radar-chart":57735,"radar-chart":57736,"crossed-line-chart":57737,"multiple-line-chart":57738,"multiple-bar-chart":57739,"line-chart":57740,"line-chart-dual-axis":57741,"bubble-chart":57742,"scatter-chart":57743,"multiple-pie-chart":57744,"column-chart-dual-axis":57745,"tag-cloud-chart":57746,"area-chart":57747,cause:57748,"cart-3":57749,"cart-2":57750,"bus-public-transport":57751,burglary:57752,building:57753,border:57754,bookmark:57755,badge:57756,"attachment-audio":57757,"attachment-video":57758,"attachment-html":57759,"attachment-photo":57760,"attachment-e-pub":57761,"attachment-zip-file":57762,"attachment-text-file":57763,"add-equipment":57764,"add-activity":123301,"activity-individual":57766,"activity-2":123303,"add-activity-2":123304,"activity-items":57769,"activity-assigned-to-goal":57770,"status-completed":57771,"status-positive":57771,"status-error":57772,"status-negative":57772,"status-inactive":57773,"status-in-process":57774,"status-critical":57774,"blank-tag-2":57775,"cart-full":57776,"locate-me":57777,paging:57778,"company-view":57779,"document-text":57780,explorer:57781,"personnel-view":57782,"sorting-ranking":57783,"drill-down":57784,"drill-up":57785,"vds-file":57786,"sap-logo-shape":123323,"folder-full":57788,"system-exit":57789,"system-exit-2":57790,"close-command-field":57791,"open-command-field":57792,"sys-enter-2":123329,"sys-enter":123330,"sys-help-2":123331,"sys-help":123332,"sys-back":57797,"sys-back-2":57798,"sys-cancel":57799,"sys-cancel-2":57800,"open-folder":57801,"sys-find-next":57802,"sys-find":57803,"sys-monitor":57804,"sys-prev-page":57805,"sys-first-page":57806,"sys-next-page":57807,"sys-last-page":57808,"generate-shortcut":57809,"create-session":57810,"display-more":57811,"enter-more":57812,"zoom-in":57813,"zoom-out":57814,header:57815,"detail-view":57816,"show-edit":57816,collapse:57817,expand:57818,positive:57819,negative:57820,display:57821,menu2:57822,redo:57823,undo:57824,"navigation-up-arrow":57825,"navigation-down-arrow":57826,down:57827,up:57828,shelf:57829,background:57830,resize:57831,move:57832,show:57833,hide:57834,"nav-back":57835,error:57836,"slim-arrow-right":57837,"slim-arrow-left":57838,"slim-arrow-down":57839,"slim-arrow-up":57840,forward:57841,overflow:57842,"value-help":57843,"multi-select":123380,"exit-full-screen":57845,"sys-add":57846,"sys-minus":57847,dropdown:57848,"expand-group":57849,"vertical-grip":57850,"horizontal-grip":57851,"sort-descending":57852,"sort-ascending":57853,"arrow-down":57854,legend:57855,"collapse-group":57856,"message-warning":57857,"message-information":123394,"message-success":123395,restart:57860,stop:57861,"add-process":57862,"cancel-maintenance":57863,activate:57864,"resize-horizontal":57865,"resize-vertical":57866,connected:57867,disconnected:57868,"edit-outside":57869,key:57870,minimize:57871,"back-to-top":57872,"hello-world":57873,outbox:57874,"donut-chart":57875,"heatmap-chart":57876,"horizontal-bullet-chart":57877,"vertical-bullet-chart":57878,call:57879,"download-from-cloud":57880,"upload-to-cloud":57881,jam:57882,"sap-ui5":57883,"message-popup":57884,cloud:57885,"horizontal-waterfall-chart":123422,"vertical-waterfall-chart":123423,"broken-link":57888,headset:57889,"thumb-up":123426,"thumb-down":123427,"multiselect-all":123428,"multiselect-none":123429,scissors:57894,sound:123431,"sound-loud":123432,"sound-off":123433,"date-time":123434,"user-settings":57899,"key-user-settings":57900,"developer-settings":57901,"text-formatting":123438,"bold-text":123439,"italic-text":123440,"underline-text":123441,"text-align-justified":123442,"text-align-left":123443,"text-align-center":123444,"text-align-right":123445,"bullet-text":123446,"numbered-text":123447,co:57912,"ui-notifications":57913,bell:57914,"cancel-share":57915,"write-new-document":57916,"write-new":57917,cancel:123454,"screen-split-one":57919,"screen-split-two":57920,"screen-split-three":57921,customize:57922,"user-edit":57923,"source-code":57924,copy:57925,paste:57926,"line-chart-time-axis":123463,"clear-filter":57928,reset:57929,"trend-up":57930,"trend-down":57931,"cursor-arrow":57932,"add-document":57933,"create-form":57934,"resize-corner":57935,"chevron-phase":57936,"chevron-phase-2":57937,"rhombus-milestone":57938,"rhombus-milestone-2":57939,"circle-task":57940,"circle-task-2":57941,"project-definition-triangle":57942,"project-definition-triangle-2":57943,"master-task-triangle":57944,"master-task-triangle-2":57945,"program-triangles":57946,"program-triangles-2":57947,"mirrored-task-circle":57948,"mirrored-task-circle-2":57949,"checklist-item":57950,"checklist-item-2":57951,checklist:57952,"checklist-2":57953,"chart-table-view":57954,"filter-analytics":57955,"filter-facets":57956,"filter-fields":57957,indent:57958,outdent:57959,heading1:123496,heading2:123497,heading3:123498,"decrease-line-height":57963,"increase-line-height":57964,fx:123501,"add-folder":57966,away:57967,busy:57968,"appear-offline":57969,blur:57970,pixelate:57971,"horizontal-combination-chart":57972,"add-employee":57973,"text-color":123510,"browse-folder":57975,"primary-key":57976,"two-keys":57977,strikethrough:57978,text:57979,responsive:57980,"desktop-mobile":57981,"table-row":57982,"table-column":57983,validate:123520,"keyboard-and-mouse":57985,touch:57986,"expand-all":57987,"collapse-all":57988,combine:57989,split:57990,megamenu:57991,feedback:57992,information:57993,s4hana:123530,translate:123531,"clear-all":57996,"command-line-interfaces":57997,sum:123534,"qr-code":123535,"space-navigation":58e3,"in-progress":123537,"not-editable":58002,heart:58003,"heart-2":58004,"tri-state":58005,"bookmark-2":58006,"detail-less":58007,"detail-more":58008,"flag-2":123545,"folder-2":58010,"paint-bucket":58011,"direction-arrows":58012,"non-binary":58013,female:58014,male:123551,"bell-2":58016,accessibility:58017,"high-priority":58018,da:123555,"da-2":123556,ai:123557,"in-progress-2":123558,unsynchronize:123559,verified:123560,"walk-me":123561,"gender-male-and-female":123648,rotate:58113,"locate-me-2":58114,"map-fill":58115,"cloud-check":123652,enablement:123653,"biometric-thumb":58118,"biometric-face":58119,"people-connected":58120,"light-mode":58121,"dark-mode":58122,"select-appointments":123659,"time-off":58124,"add-calendar":58125,currency:58126}};var m;function f(){if(!m){m=i.getResourceBundleFor("sap.ui.core")}return m}var h={sapIconFontFamily:l};h.get=function(){return p};h.getFontRegistry=function(){return u};h.addIcon=function(r,n,o){if(typeof o==="string"){o={fontFamily:arguments[2],content:arguments[3],overWrite:!!arguments[4],suppressMirroring:!!arguments[5]}}if(typeof n!=="string"){n=String(n)}n=n==="undefined"?undefined:n;if(!p[n]){p[n]={}}var i=p[n],s=i[r],c,l,u,m;if(s){if(n===undefined){a.warning("Icon with name '"+r+"' in built-in collection already exists and can not be overwritten.","sap.ui.core.IconPool");return}else if(!o.overWrite){a.warning("Icon with name '"+r+"' in collection '"+n+"' already exists. Specify 'iconInfo.overWrite' in order to overwrite.","sap.ui.core.IconPool");return}}c={protocol:d,hostname:n||r,path:n?r:undefined};if(Array.isArray(o.content)){l=o.content.map(y).join("")}else{l=y(o.content)}if(o.resourceBundle instanceof t){m="Icon."+r;if(o.resourceBundle.hasText(m)){u=o.resourceBundle.getText(m)}}s=i[r]={name:r,collection:n,uri:e.build(c),fontFamily:o.fontFamily,content:l,text:u||"",suppressMirroring:o.suppressMirroring,skipMirroring:o.suppressMirroring};return s};h.getIconURI=function(e,t){var a=this.getIconInfo(e,t);return a&&a.uri};h.getIconInfo=function(t,r,n){var o,i,s,c,l=h.isIconURI(t);if(!t){return}if(!n&&l){n=r}n=n||"sync";s=n==="async"||n==="mixed";function d(){var e=p[r];var a=e&&e[t];if(typeof a==="number"){p[r][t]=undefined;a=h.addIcon(t,r,{fontFamily:u[r].config.fontFamily,content:a&65535,suppressMirroring:!!(a&65536),resourceBundle:f()})}return a}if(l){o=e.parse(t);if(o.path.length===1){r=undefined;t=o.hostname}else{r=o.hostname;t=o.path.slice(1)}if(!t){return}}if(typeof r!=="string"){r=String(r)}r=r==="undefined"?undefined:r;i=d();if(i===undefined&&r!==undefined){c=h._loadFontMetadata(r,s)}if(s){if(c){return c.then(function(){i=d();if(!i){a.warning("Icon info for icon '"+t+"' in collection '"+r+"' could not be found")}return i})}else if(n==="async"){if(!i){a.warning("Icon info for icon '"+t+"' in collection '"+r+"' could not be found")}return Promise.resolve(i)}else{i=d()}}else{i=d()}if(!i){a.warning("Icon info for icon '"+t+"' in collection '"+r+"' could not be found")}return i};h.isIconURI=function(t){if(!t){return false}var a=e.parse(t);return a.protocol===d&&!!a.hostname};h.getIconCollectionNames=function(){return Object.keys(p)};h.getIconNames=function(e){var t=p[e],a=u[e]&&u[e].deprecatedNames,r=[];for(var n in t){if(t.hasOwnProperty(n)&&(!a||!a.has(n))){r.push(n)}}return r};h.insertFontFaceStyle=function(e,t,r){var n,o=h.getFontRegistry();function i(e){return h._convertUrl?h._convertUrl(e):e}if(arguments.length===0||e===l){a.info("It's not needed to call IconPool.insertFontFaceStyle to insert font-face for the predefined icon font SAP-icons because the font-face is included in the library.css of sap.ui.core");return}if(e&&t===undefined){a.error("IconPool.insertFontFaceStyle must be called with at least two parameters!");return}if(r===undefined){r=e}if(!o[r]){a.error("Icon font '"+r+"' has not been registered yet.");return}if(t==o[r].currentFontURI){a.info("The font face style of icon font '"+r+"' was already inserted.");return}o[r].currentFontURI=t;n=new FontFace(e,"url("+i(t+e+".woff2")+") format('woff2'),"+"local("+e+")",{weight:"normal",style:"normal"});document.fonts.add(n);n.load();o[r].fontFace=e};s.attachApplied(function(){for(const e in u){const t=u[e].themeConfig;if(!t){continue}const a=u[e].config;const r=g(t)||a.fontURI;h.insertFontFaceStyle(a.fontFamily,r,e)}});function g(e){let t;if(o(e)){const a=e["path"];const r=[s.getTheme()];const n=c.getMetadata("sap-ui-core");const o=n?.Extends[0];if(o){r.push(o)}r.some(e=>Object.keys(a).some(r=>{const n=new RegExp(r);if(n.test(e)){t=a[r];if(t.charAt(t.length-1)!=="/"){t+="/"}t=sap.ui.require.toUrl(t);return true}}))}return t}h._loadFontMetadata=function(e,t){var i,s=h.get(),c=h.getFontRegistry();if(c[e]){if(typeof c[e].metadataLoaded==="boolean"){return}if(t&&c[e].metadataLoaded instanceof Promise){return c[e].metadataLoaded}i=c[e].config}else{if(!s[e]){a.error("The font configuration for collection '"+e+"' is not registered")}c[e]={metadataLoaded:false}}function l(t){let r=t;let n=i.fontURI;if(t?.config&&o(t.config)){c[e].themeConfig=t.config;n=g(t.config)||i.fontURI;r=t.icons;if(!o(r)){a.error(`There is something wrong with the structure of the font metadata loaded from ${n}.`)}}for(const e in r){r[e]=parseInt(r[e],16)}s[e]=r;h.insertFontFaceStyle(i.fontFamily,n,e);c[e].metadataLoaded=true}var d=function(){a.error("An error occurred loading the font metadata for collection '"+e+"'");c[e].metadataLoaded=false};if(i){if(i.metadataURI===undefined){i.metadataURI=i.fontURI+i.fontFamily+".json"}if(t&&!i.metadata){if(c[e].metadataLoaded instanceof Promise){return c[e].metadataLoaded}if(s[e]===undefined){var u=new AbortController;c[e].abortController=u;c[e].metadataLoaded=r(i.metadataURI,{headers:{Accept:r.ContentTypes.JSON},signal:u.signal}).then(function(t){if(t.ok){return t.json().then(function(t){l(t);delete c[e].abortController})}throw new Error}).catch(function(e){if(e.name!=="AbortError"){d()}})}return c[e].metadataLoaded}if(!(t&&!i.metadata)&&i.metadataURI){if(c[e].abortController){c[e].abortController.abort("Replaced by sync request");c[e].abortController=null}a.warning("Synchronous loading of font meta data in IconPool, due to .getIconInfo() call"+" for '"+e+"'. Use loading mode 'async' to avoid this call.","SyncXHR",null,function(){return{type:"SyncXHR",name:"IconPool"}});try{var p=n(i.metadataURI,{headers:{Accept:n.ContentTypes.JSON}});if(p.ok){var m=p.json();l(m)}else{d()}}catch(e){d()}return}l(i.metadata)}};function y(e){return String.fromCharCode(typeof e==="number"?e:parseInt(e,16))}return h});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/boot", ["sap/base/Log","sap/base/config/_Configuration","sap/base/config/GlobalConfigurationProvider","sap/base/util/Deferred","sap/ui/core/boot/initDOM","sap/ui/core/boot/loadManifest","sap/ui/core/boot/onInit"],function(e,n,t,r,o,i){"use strict";var u=e.getLevel();e.setLevel(e.Level.WARNING);e.warning("sap-ui-boot.js: This is a private module, its API must not be used in production and is subject to change!");e.setLevel(u);var a=false;var s=new r;var c;var f={ready:function(e){if(e&&a){e()}else{s.promise.then(e)}return s.promise}};var p=o.run(f);function l(e){e=e||[];var n=new Promise(function(n,t){sap.ui.require(e,function(){n(Array.from(arguments))},t)});return n}function v(e,n){return Promise.all(e.map(function(e){return e.run(n)}))}i().then(function(e){c=e;return l(c.preBoot)}).then(function(e){return v(e)}).then(function(){t.freeze();return l(c.boot)}).then(function(e){return v(e,f)}).then(function(){return l(c.postBoot)}).then(function(e){return Promise.all([v(e),p])}).then(function(){s.resolve();a=true}).catch(s.reject);return f},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/boot/FieldHelpEndpoint", [],function(){"use strict";let n;function e(){n??=new Promise((n,e)=>{sap.ui.require(["sap/ui/core/fieldhelp/FieldHelp"],n,e)});return n}function t(n){const e={service:"sap.companion.services.UpdateHotspots",type:"request",body:{hotspots:n}};window.postMessage(JSON.stringify(e),document.location.origin)}const i={"sap.companion.services.StartCompanion":async function(){const n=await e();n.getInstance().activate(t)},"sap.companion.services.StopCompanion":async function(){const n=await e();n.getInstance().deactivate()}};window.addEventListener("message",n=>{if(n.origin!==document.location.origin){return}let e=n.data;if(typeof e==="string"){try{e=JSON.parse(e)}catch(n){}}const t=e?.service;if(!t){return}const o=i[t];if(o){o()}});return{run:function(){return Promise.resolve()}}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/boot/KeyboardInteractionEndpoint", ["sap/base/Log"],function(e){"use strict";let i;function t(){i??=new Promise((e,i)=>{sap.ui.require(["sap/ui/core/interaction/KeyboardInteractionDisplay"],e,i)});return i}const n=new Map;const s={"sap.ui.interaction.RequestMessagePort":e=>{const i=e.data;const t=i?.id;if(!t){return}const o=n.get(t);if(o){e.source.postMessage({service:"sap.ui.interaction.MessagePortReady"},e.origin,[o.port])}else{const i=new MessageChannel;n.set(t,{origin:e.origin,port:i.port2});i.port1.onmessage=e=>{const t=e.data;const n=t?.service;const o=s[n];if(o){o(e,i.port1)}};e.source.postMessage({service:"sap.ui.interaction.MessagePortReady"},e.origin,[i.port2])}},"sap.ui.interaction.StartDisplay":async(e,i)=>{const n=await t();await n.activate(i)},"sap.ui.interaction.StopDisplay":async e=>{const i=await t();i.deactivate()}};window.addEventListener("message",i=>{const t=i?.data?.service;const n=s[t];if(n){const t=new URL(sap.ui.require.toUrl(""),document.baseURI)?.origin;if(i.origin!==document.location.origin&&i.origin!==t){e.error(`Received message from an unauthorized origin: ${i.origin}.`);return}n?.(i)}});return{run:function(){return Promise.resolve()}}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/boot/initDOM", ["sap/base/Log","sap/ui/Device","sap/base/i18n/Localization","sap/ui/dom/_ready"],function(e,t,n,o){"use strict";function a(){var t=n.getRTL()?"rtl":"ltr";document.documentElement.setAttribute("dir",t);e.info("Content direction set to '"+t+"'",null,"sap.ui.core.boot")}function i(){var n=document.documentElement;var o=t.browser;var a=o.name;if(a){if(a===o.BROWSER.SAFARI&&o.mobile){a="m"+a}a=a+(o.version===-1?"":Math.floor(o.version));n.dataset.sapUiBrowser=a;e.debug("Browser-Id: "+a,null,"sap.ui.core.boot")}}function r(){var e=document.documentElement;e.dataset.sapUiOs=t.os.name+t.os.versionStr;var n=null;if(t.os.name===t.os.OS.IOS){n="sap-ios"}else if(t.os.name===t.os.OS.ANDROID){n="sap-android"}if(n){e.classList.add(n)}}function s(e){var t=document.createElement("div");t.textContent="bootstrapping UI5...";t.style.color="transparent";document.body.append(t);e.ready().then(function(){document.body.removeChild(t)})}return{run:function(e){return o().then(function(){a();i();r();s(e)})}}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/boot/loadCalendar", ["sap/base/config","sap/base/i18n/Localization","sap/base/util/LoaderExtensions"],function(e,a,n){"use strict";var r=new Promise(function(a,n){sap.ui.require(["sap/ui/core/date/"+e.get({name:"sapUiCalendarType",type:"string",defaultValue:"Gregorian"})],function(e){a(e)},n)});var i=new Promise(function(e,r){var i=a.getLanguageTag().language;n.loadResource("sap/ui/core/cldr/"+i+".json",{async:true,dataType:"text"}).then(function(a){var n={};n["sap/ui/core/cldr/"+i+".json"]=a;sap.ui.require.preload(n);e()})});return{run:function(){return Promise.all([r,i])}}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/boot/loadManifest", ["sap/base/config","sap/base/util/LoaderExtensions"],function(t,o){"use strict";function e(t,o){var e=Object.assign({},t);delete o.boot;e.preBoot=e.preBoot?e.preBoot:[];e.preBoot=e.preBoot.concat(o.preBoot||[]);o.postBoot=o.postBoot?o.postBoot:[];e.postBoot=o.postBoot.concat(e.postBoot||[]);return e}function n(t){var r=o.loadResource(t,{async:true}).then(function(t){if(t.extends){return n(t.extends).then(function(o){return e(o,t)})}return t});return r}function r(){var o=t.get({name:"sapUiBootManifest",type:t.Type.String});return n(o)}return r});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/boot/loadModules", ["sap/base/config"],function(e){"use strict";var n=Promise.resolve();var i=Promise.resolve();var r=[];var u=e.get({name:"sapUiModules",type:e.Type.StringArray});var a=e.get({name:"sapUiLibs",type:e.Type.StringArray});if(a.length>0){i=new Promise(function(e,n){sap.ui.require(["sap/ui/core/Lib"],function(n){e(n)},n)}).then(function(e){var n=[];a.forEach(function(i){n.push(e.load({name:i}))});return Promise.all(n)})}r.push(new Promise(function(e,n){sap.ui.require(["sap/ui/events/jquery/EventSimulation"],function(){e()})}));if(u.length>0){u.forEach(function(e){var n=/^\[([^\[\]]+)?\]$/.exec(e);r.push(new Promise(function(i,r){sap.ui.require([n&&n[1]||e],function(){i()},n?i:r)}))})}n=Promise.all(r);return{run:function(){return Promise.all([n,i])}}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/boot/onInit", ["sap/base/config"],function(e){"use strict";var i;var n=e.get({name:"sapUiOnInit",type:e.Type.String});if(n){i=n.split("@");if(i.length>1){var r={};var t=/^.*[\/\\]/.exec(i[0])[0];t=t.substr(0,t.length-1);r[t]=i[1];sap.ui.loader.config({paths:r})}}return{run:function(){var e=Promise.resolve();if(n){e=new Promise(function(e,n){sap.ui.require([i[0]],e,n)})}return e}}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/cache/CacheManager", ["./LRUPersistentCache","./CacheManagerNOP","sap/ui/Device","sap/base/config","sap/base/Log","sap/ui/performance/Measurement","sap/ui/performance/trace/Interaction"],function(e,n,t,s,r,i,a){"use strict";var o=s.getWritableInstance();function c(){return o.get({name:"sapUiXxCacheUse",type:s.Type.Boolean,defaultValue:true,external:true})}function u(e){o.set("sapUiXxCacheUse",e)}var h={_instance:null,_getInstance:function(){var e,n=b("_getInstance"),t=this;e=new Promise(function(e,s){var a;r.debug("Cache Manager: Initialization...");if(!h._instance){a=t._findImplementation();i.start(l,"CM",d);a.init().then(o,s);i.end(l,"CM")}else{o(h._instance)}function o(t){h._instance=t;n.endAsync();r.debug("Cache Manager initialized with implementation ["+h._instance.name+"], resolving _getInstance promise");e(t)}});n.endSync();return e},_findImplementation:function(){if(g()&&this._isSupportedEnvironment()){return e}else{r.debug("UI5 Cache Manager is switched off");return n}},set:function(e,n){var t,s=b("set",e);r.debug("Cache Manager: Setting value of type["+typeof n+"] with key ["+e+"]");t=this._callInstanceMethod("set",arguments).then(function e(){this.logResolved("set");s.endAsync()}.bind(this),function(n){r.error("Cache Manager: Setting key ["+e+"] failed. Error:"+n);s.endAsync();throw n});s.endSync();return t},get:function(e){var n,t=a.notifyAsyncStep(),s=b("get",e);r.debug("Cache Manager: Getting key ["+e+"]");n=this._callInstanceMethod("get",arguments).then(function e(n){this.logResolved("get");s.endAsync();return n}.bind(this),function(n){r.debug("Cache Manager: Getting key ["+e+"] failed. Error: "+n);s.endAsync();throw n}).finally(t);s.endSync();return n},has:function(e){var n,t=b("has",e);r.debug("Cache Manager: has key ["+e+"] called");n=this._callInstanceMethod("has",arguments).then(function e(n){this.logResolved("has");t.endAsync();return n}.bind(this));t.endSync();return n},del:function(e){var n,t=b("del",e);r.debug("Cache Manager: del called.");n=this._callInstanceMethod("del",arguments).then(function e(){this.logResolved("del");t.endAsync()}.bind(this),function(e){r.debug("Cache Manager: del failed. Error: "+e);t.endAsync();throw e});t.endSync();return n},delWithFilters:function(e){var n;r.debug("Cache Manager: delWithFilters called.");n=this._callInstanceMethod("delWithFilters",arguments).then(function e(){this.logResolved("delWithFilters")}.bind(this),function(e){r.debug("Cache Manager: delWithFilters failed. Error: "+e);throw e});return n},reset:function(){var e,n=b("reset");r.debug("Cache Manager: Reset called.");e=this._callInstanceMethod("reset",arguments).then(function e(){this.logResolved("reset");n.endAsync()}.bind(this),function(e){r.debug("Cache Manager: Reset failed. Error: "+e);n.endAsync();throw e});n.endSync();return e},_switchOff:function(){var e=this;return Promise.resolve().then(function(){y(e);u(false)})},_switchOn:function(){var e=this;return Promise.resolve().then(function(){if(!c()){y(e);u(true)}return Promise.resolve()})},_callInstanceMethod:function(e,n){var t,s="[sync ] _callInstanceMethod";i.start(s,"CM",d);if(this._instance){r.debug("Cache Manager: calling instance...");return this._instance[e].apply(this._instance,n)}r.debug("Cache Manager: getting instance...");t=this._getInstance().then(function t(s){return s[e].apply(s,n)});i.end(s);return t},_isSupportedEnvironment:function(){var e=[];if(this._bSupportedEnvironment==undefined){e.push({system:t.system.SYSTEMTYPE.DESKTOP,browserName:t.browser.BROWSER.CHROME,browserVersion:49});e.push({system:t.system.SYSTEMTYPE.DESKTOP,browserName:t.browser.BROWSER.SAFARI,browserVersion:13});e.push({system:t.system.SYSTEMTYPE.TABLET,browserName:t.browser.BROWSER.SAFARI,browserVersion:13});e.push({system:t.system.SYSTEMTYPE.PHONE,browserName:t.browser.BROWSER.SAFARI,browserVersion:13});e.push({system:t.system.SYSTEMTYPE.TABLET,os:t.os.OS.ANDROID,browserName:t.browser.BROWSER.CHROME,browserVersion:80});e.push({system:t.system.SYSTEMTYPE.PHONE,os:t.os.OS.ANDROID,browserName:t.browser.BROWSER.CHROME,browserVersion:80});this._bSupportedEnvironment=e.some(function(e){var n=t.system[e.system],s=e.os?e.os===t.os.name:true,r=e.browserName===t.browser.name,i=t.browser.version>=e.browserVersion;try{return n&&s&&r&&i&&window.indexedDB}catch(e){return false}})}return this._bSupportedEnvironment},logResolved:function(e){this._instance.logResolved&&this._instance.logResolved(e)}};var d="CacheManager",l="[sync ] _initImplementation",f=0;function g(){return c()}function y(e){if(e._instance){e._instance._destroy();e._instance=null}}function b(e,n){f++;var t="[async]  "+e+"["+n+"]- #"+f,s="[sync ]  "+e+"["+n+"]- #"+f;i.start(t,"CM",[d,e]);i.start(s,"CM",[d,e]);return{sMeasureAsync:t,sMeasureSync:s,endAsync:function(){i.end(this.sMeasureAsync)},endSync:function(){i.end(this.sMeasureSync)}}}return h});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/cache/CacheManagerNOP", ["sap/base/Log"],function(e){"use strict";var n={name:"CacheManagerNOP",logResolved:function(n){e.debug("Cache Manager is not supported on this environment.")},set:function(){return Promise.resolve()},get:function(){return Promise.resolve(undefined)},has:function(){return Promise.resolve(false)},del:function(){return Promise.resolve()},delWithFilters:function(){return Promise.resolve()},reset:function(){return Promise.resolve()},init:function(){return Promise.resolve(this)},_db:{close:function(){}},_getCount:function(){return Promise.resolve(0)},_destroy:function(){},_getVersion:function(){return""}};return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/cache/LRUPersistentCache", ["sap/base/config","sap/base/Log","sap/ui/performance/Measurement","sap/ui/core/Core"],function(e,t,a,n){"use strict";var r={name:"LRUPersistentCache",logResolved:function(e){t.debug("Cache Manager: "+e+" completed successfully.")},defaultOptions:{databaseName:"ui5-cachemanager-db",_contentStoreName:"content-store",_metadataStoreName:"metadata-store",_metadataKey:"metadataKey"},_db:{},init:function(){this._metadata={};this._mru=-1;this._lru=-1;return g(this)},_getVersion(){return n.version},_destroy:function(){if(this._db.close){this._db.close()}this._metadata=null;this._ui5version=null},set:function(e,n){if(R(e)){t.warning("Cache Manager ignored 'set' for key ["+e+"]");return Promise.resolve()}if(e==null){return Promise.reject("Cache Manager does not accept undefined or null as key")}if(typeof n==="undefined"){return Promise.reject("Cache Manager does not accept undefined as value")}t.debug("Cache Manager LRUPersistentCache: adding item with key ["+e+"]...");var r=this,o="[sync ] fnSet: total[sync]  key ["+e+"]",i="[sync ] fnSet: txStart[sync]  key ["+e+"]",c="[sync ] fnSet: storeOpen[sync]  key ["+e+"]",u="[sync ] fnSet: putContent[sync]  key ["+e+"]",d="[sync ] fnSet: putMetadata[sync]  key ["+e+"]",f="[sync ] fnSet: serialize[sync]  key ["+e+"]";return new Promise(function l(m,_){a.start(o,"CM",s);var g,y,C,S,w;w=b(r._metadata);S=new p(e,n,typeof n,++r._mru,f,s).serialize();a.start(i,"CM",s);var P=r._db.transaction([r.defaultOptions._contentStoreName,r.defaultOptions._metadataStoreName],"readwrite");a.end(i);P.onerror=function(e){var a="Cache Manager cannot complete add/put transaction for entry with key: "+S.oData.key+". Details: "+L(e);t.error(a);r._metadata=w;M(r);_(a)};P.onabort=function(a){r._metadata=w;M(r);var o=v(r);if(D(a)&&o>0){t.warning("Cache Manager is trying to free some space to add/put new item");O(r,e,n).then(function(){t.debug("Cache Manager LRUPersistentCache: set completed after freeing space. ItemCount changed from "+o+" to "+v(r));m()},function(e){var a="Cache Manager LRUPersistentCache: set unsuccessful. Cannot free space to add/put entry. Details: "+e;t.error(a);_(a)})}else{var s="Cache Manager LRUPersistentCache: set failed: "+L(a);t.error(s);_(s)}};P.oncomplete=function(){t.debug("Cache Manager LRUPersistentCache: adding item with key ["+e+"]... done");m()};a.start(c,"CM",s);g=P.objectStore(r.defaultOptions._contentStoreName);C=P.objectStore(r.defaultOptions._metadataStoreName);a.end(c);a.start(u,"CM",s);y=g.put(S.oData,S.oData.key);a.end(u);a.end(o);y.onsuccess=function(){h(r,S);a.start(d,"CM",s);C.put(r._metadata,r.defaultOptions._metadataKey);a.end(d)};if(t.getLevel()>=t.Level.DEBUG){t.debug("Cache Manager LRUPersistentCache: measurements: "+o+": "+a.getMeasurement(o).duration+"; "+f+": "+a.getMeasurement(f).duration+"; "+i+": "+a.getMeasurement(i).duration+"; "+c+": "+a.getMeasurement(c).duration+"; "+u+": "+a.getMeasurement(u).duration+"; "+d+": "+a.getMeasurement(d).duration)}})},has:function(e){if(R(e)){t.warning("Cache Manager ignored 'has' for key ["+e+"]");return Promise.resolve(false)}return this.get(e).then(function(a){var n=typeof a!=="undefined";t.debug("Cache Manager: has key ["+e+"] returned "+n);return n})},_getCount:function(){return Promise.resolve(v(this))},_getAll:function(e){var t=this,a,n="[sync ] _getAll: deserialize";return new Promise(function(e,r){var s=[],i=t._db.transaction([t.defaultOptions._contentStoreName],"readonly"),c=i.objectStore(t.defaultOptions._contentStoreName);i.onerror=function(e){r(L(e))};i.oncomplete=function(t){e(s)};c.openCursor().onsuccess=function(e){var t=e.target.result;if(t&&t.value){a=new p(t.value,n,o).deserialize();s.push({key:a.oData.key,value:a.oData.value});t.continue()}}})},_loadMetaStructure:function(){var e=this;return new Promise(function(a,n){var r=e._db.transaction([e.defaultOptions._metadataStoreName],"readonly");r.onerror=function(e){if(!r.errorHandled){r.errorHandled=true;var a="Cache Manager cannot complete transaction for read metadata. Details: "+r.error;t.error(a);n(a)}};var o=r.objectStore(e.defaultOptions._metadataStoreName);try{var s=o.get(e.defaultOptions._metadataKey);s.onsuccess=function(n){e._metadata=s.result?s.result:C(e._ui5version);if(e._metadata.__ui5version!==e._ui5version){e.reset().then(a,function(e){t.error("Cannot reset the cache. Details:"+e);r.abort()})}else{if(!e._metadata.timestamps){e._metadata.timestamps={}}a()}};s.onerror=function(e){t.error("Cache Manager cannot complete transaction for read metadata items. Details: "+e.message);n(e.message)}}catch(a){t.error("Cache Manager cannot read metadata entries behind key: "+e.defaultOptions._metadataKey+". Details: "+a.message);n(a.message)}})},get:function(e){if(R(e)){t.warning("Cache Manager ignored 'get' for key ["+e+"]");return Promise.resolve()}return d(this,e)},del:function(e){if(R(e)){t.warning("Cache Manager ignored 'del' for key ["+e+"]");return Promise.resolve()}return u(this,e)},delWithFilters:function(e){var a=this,n=e||{};return new Promise(function(e,r){var o=b(a._metadata),s=a._db.transaction([a.defaultOptions._contentStoreName,a.defaultOptions._metadataStoreName],"readwrite"),i=s.objectStore(a.defaultOptions._contentStoreName),c=s.objectStore(a.defaultOptions._metadataStoreName),u=i.openCursor(),d=n.prefix||"";function f(){a._metadata=o;M(a)}function l(e){f();r(L(e))}s.onerror=l;s.onabort=l;s.oncomplete=function(t){e()};u.onsuccess=function(e){var r=e.target.result,o,s;if(!r){c.put(a._metadata,a.defaultOptions._metadataKey);return}o=r.value.key;if(o.indexOf(d)===0&&(!n.olderThan||!(o in a._metadata.timestamps)||a._metadata.timestamps[o]<=n.olderThan)){s=r.delete();s.onsuccess=function(){t.debug("Deleted "+o+"!");P(a,o)}}r.continue()}})},reset:function(){var e=this;return new Promise(function(a,n){var r,o,s,i,c;c=e._db.transaction([e.defaultOptions._contentStoreName,e.defaultOptions._metadataStoreName],"readwrite");c.onerror=c.onabort=function(e){if(!c.errorHandled){c.errorHandled=true;var a="Cache Manager LRUPersistentCache: transaction for reset() failed. Details: "+c.error;t.error(a);n(a)}};c.oncomplete=function(e){a()};r=c.objectStore(e.defaultOptions._contentStoreName);o=c.objectStore(e.defaultOptions._metadataStoreName);try{s=r.clear();s.onerror=function(){c.abort()};s.onsuccess=function(){i=o.clear();i.onerror=function(){c.abort()};i.onsuccess=function(){e._metadata=C(e._getVersion());M(e)}}}catch(e){c.abort()}})}};var o="LRUPersistentCache,get",s="LRUPersistentCache,set",i=0;function c(e,a){var n;e._metadata.timestamps[a.oData.key]=Date.now();n=e._db.transaction([e.defaultOptions._contentStoreName,e.defaultOptions._metadataStoreName],"readwrite");n.onerror=n.onabort=function(e){t.warning("Cache Manager cannot persist the information about usage of an entry. This may lead to earlier removal of the entry if browser storage space is over. Details: "+n.error)};try{n.objectStore(e.defaultOptions._metadataStoreName).put(e._metadata,e.defaultOptions._metadataKey)}catch(e){t.warning("Cache Manager cannot persist the information about usage of an entry. This may lead to earlier removal of the entry if browser storage space is over. Details: "+e.message)}}function u(e,a){return new Promise(function(n,r){var o,s;o=e._db.transaction([e.defaultOptions._contentStoreName,e.defaultOptions._metadataStoreName],"readwrite");s=b(e._metadata);function i(n){e._metadata=s;M(e);var o="Cache Manager LRUPersistentCache: cannot delete item with key: "+a+". Details: "+L(n);t.error(o);r(o)}o.onerror=i;o.onabort=i;o.oncomplete=function(){if(v(e)===0){e._lru=-1;e._mru=-1;e._metadata=C(e._ui5version)}t.debug("Cache Manager LRUPersistentCache: item with key "+a+" deleted");n()};t.debug("Cache Manager LRUPersistentCache: deleting item ["+a+"]");var c=o.objectStore(e.defaultOptions._contentStoreName).delete(a);c.onsuccess=function(){t.debug("Cache Manager LRUPersistentCache: request for deleting item ["+a+"] is successful, updating metadata...");P(e,a);o.objectStore(e.defaultOptions._metadataStoreName).put(e._metadata,e.defaultOptions._metadataKey)}})}function d(e,n){if(e.getCounter===undefined){e.getCounter=0}e.getCounter++;var r="[sync ] fnGet"+e.getCounter+": total[sync]  key ["+n+"]",s="[sync ] fnGet"+e.getCounter+": txStart[sync]  key ["+n+"]",i="[sync ] fnGet"+e.getCounter+": storeOpen[sync]  key ["+n+"]",u="[sync ] fnGet"+e.getCounter+": access result[sync]  key ["+n+"]",d="[sync ] fnGet"+e.getCounter+": putMetadata[sync]  key ["+n+"]",f="[sync ] fnGet"+e.getCounter+": deserialize[sync]  key ["+n+"]",l="[sync ]  _instance.get",m="[sync ]  getRequest.onSuccess";t.debug("Cache Manager LRUPersistentCache: get for key ["+n+"]...");a.start(l,"CM",o);var _=new Promise(function l(_,g){var y,C,b,M;a.start(r,"CM",o);a.start(s,"CM",o);C=e._db.transaction([e.defaultOptions._contentStoreName,e.defaultOptions._metadataStoreName],"readwrite");a.end(s);C.onerror=function(e){var a="Cache Manager cannot complete delete transaction for entry with key: "+n+". Details: "+C.error;t.error(a);g(a)};try{a.start(i,"CM",o);b=C.objectStore(e.defaultOptions._contentStoreName).get(n);a.end(i);b.onsuccess=function(r){a.start(m,"CM",o);a.start(u,"CM",o);M=new p(b.result,f,o);a.end(u);I("Cache Manager LRUPersistentCache: accessing the result",n,u);if(M.oData){a.start(d,"CM",o);if(M.oData.lu!==e._mru){M.oData.lu=++e._mru;h(e,M)}c(e,M);a.end(d);y=M.deserialize().oData.value}a.end(m);t.debug("Cache Manager LRUPersistentCache: get for key ["+n+"]...done");_(y)};b.onerror=function(e){t.error("Cache Manager cannot get entry with key: "+n+". Details: "+e.message);g(e.message)}}catch(e){t.error("Cache Manager cannot get entry with key: "+n+". Details: "+e.message);g(e.message);return}a.end(r)});a.end(l);return _}function f(e){var a=S(e);if(a==undefined){var n="Cache Manager LRUPersistentCache: deleteItemAndUpdateMetadata cannot find item to delete";t.debug(n);return Promise.reject(n)}return m(e,a).then(function(){return Promise.resolve().then(function(){P(e,a);return l(e).then(function(){return a},function(){t.warning("Cache Manager LRUPersistentCache: Free space algorithm deleted item "+"but the metadata changes could not be persisted. This won't break the functionality.");return a})})})}function l(e){return new Promise(function(a,n){try{var r=e._db.transaction([e.defaultOptions._contentStoreName,e.defaultOptions._metadataStoreName],"readwrite");r.onerror=o;r.onabort=o;r.oncomplete=function(){t.debug("Cache Manager LRUPersistentCache: persistMetadata - metadata was successfully updated");a()};r.objectStore(e.defaultOptions._metadataStoreName).put(e._metadata,e.defaultOptions._metadataKey)}catch(e){o(null,e)}function o(e,a){var r="Cache Manager LRUPersistentCache: persistMetadata error - metadata was not successfully persisted. Details: "+L(e)+". Exception: "+(a?a.message:"");t.debug(r);n(r)}})}function m(e,a){return new Promise(function(n,r){var o=e._db.transaction([e.defaultOptions._contentStoreName,e.defaultOptions._metadataStoreName],"readwrite");function s(e){var n="Cache Manager LRUPersistentCache: internalDel cannot complete delete transaction for entry with key: "+a+". Details: "+L(e);t.warning(n);r(e)}o.onerror=s;o.onabort=s;o.oncomplete=function(){if(v(e)===0){e._lru=0;e._mru=0;e._metadata=C(e._ui5version)}t.debug("Cache Manager LRUPersistentCache: internalDel deleting item ["+a+"]...done");n()};t.debug("Cache Manager LRUPersistentCache: internalDel deleting item ["+a+"]...");o.objectStore(e.defaultOptions._contentStoreName).delete(a)})}function _(e,a,n){return new Promise(function(r,o){var i,c,u,d="[sync ] internalSet: serialize[sync]  key ["+a+"]";u=b(e._metadata);var f=new p(a,n,typeof n,++e._mru,d,s).serialize();t.debug("Cache Manager: LRUPersistentCache: internal set with parameters: key ["+f.oData.key+"], access index ["+f.oData.lu+"]");c=e._db.transaction([e.defaultOptions._contentStoreName,e.defaultOptions._metadataStoreName],"readwrite");c.onerror=l;c.onabort=l;function l(a){t.debug("Cache Manager: LRUPersistentCache: internal set failed. Details: "+L(a));e._metadata=u;M(e);o(a)}c.oncomplete=function(){t.debug("Cache Manager: LRUPersistentCache: Internal set transaction completed. ItemCount: "+v(e));r()};i=c.objectStore(e.defaultOptions._contentStoreName).put(f.oData,f.oData.key);i.onsuccess=function(){h(e,f);c.objectStore(e.defaultOptions._metadataStoreName).put(e._metadata,e.defaultOptions._metadataKey)}})}function h(e,a){if(e._metadata.__byKey__[a.oData.key]!=null){var n=e._metadata.__byKey__[a.oData.key];delete e._metadata.__byIndex__[n];t.debug("Cache Manager LRUPersistentCache: set/internalset - item already exists, so its indexes are updated")}e._metadata.__byIndex__[a.oData.lu]=a.oData.key;e._metadata.__byKey__[a.oData.key]=a.oData.lu;k(e)}function g(e){e._ui5version=e._getVersion();return new Promise(function a(n,r){var o;t.debug("Cache Manager "+"_initIndexedDB started");function s(){try{o=window.indexedDB.open(e.defaultOptions.databaseName,1)}catch(e){t.error("Could not open Cache Manager database. Details: "+e.message);r(e.message)}}s();o.onerror=function(e){t.error("Could not initialize Cache Manager database. Details: "+e.message);r(e.error)};o.onsuccess=function(a){var s=x("init_onsuccess");e._db=o.result;e._db.onversionchange=function(e){if(!e.newVersion){e.target.close()}};e._loadMetaStructure().then(function(){t.debug("Cache Manager "+" metadataLoaded. Serialization support: "+N()+", resolving initIndexDb promise");n(e)},r);s.endSync()};o.onupgradeneeded=function(a){var n=a.target.result;n.onerror=function(e){t.error("Cache Manager error. Details: "+e.message);r(n.error)};try{var o=n.createObjectStore(e.defaultOptions._contentStoreName);n.createObjectStore(e.defaultOptions._metadataStoreName)}catch(e){t.error("Could not initialize Cache Manager object store. Details: "+e.message);throw e}o.createIndex("ui5version","ui5version",{unique:false})}})}function y(e,t,a,n){this.key=e;this.sOrigType=a;this.value=t;this.lu=n}function p(e,t,a,n,r,o){if(arguments.length===3){this.oData=e;this.sMeasureId=t;this.sMsrCat=a}else{this.oData=new y(e,t,a,n)}}p.prototype.deserialize=function(){if(N()&&this.oData.sOrigType==="object"){a.start(this.sMeasureId,this.sMeasureId,this.sMsrCat);this.oData.value=JSON.parse(this.oData.value);a.end(this.sMeasureId);I("Cache Manager LRUPersistentCache: de-serialization the result",this.oData.key,this.sMeasureId)}return this};p.prototype.serialize=function(){if(N()&&this.oData.sOrigType==="object"){a.start(this.sMeasureId,this.sMeasureId,this.sMsrCat);this.oData.value=JSON.stringify(this.oData.value);a.end(this.sMeasureId);I("Cache Manager LRUPersistentCache: serialization of the value",this.oData.key,this.sMeasureId)}return this};function C(e){return{timestamps:{},__byKey__:{},__byIndex__:{},__ui5version:e}}function b(e){var t=C(e.__ui5version);for(var a in e.__byIndex__){t.__byIndex__[a]=e.__byIndex__[a]}for(var n in e.__byKey__){t.__byKey__[n]=e.__byKey__[n]}for(var n in e.timestamps){t.timestamps[n]=e.timestamps[n]}return t}function M(e){var a=w(e._metadata.__byIndex__);e._mru=a.mru;e._lru=a.lru;t.debug("Cache Manager LRUPersistentCache: LRU counters are assigned to the CM: "+JSON.stringify(a))}function v(e){return Object.keys(e._metadata.__byKey__).length}function S(e){var t=e._metadata.__byIndex__[e._lru];if(t==undefined&&!k(e)){return null}else{return e._metadata.__byIndex__[e._lru]}}function w(e){var t=-1,a=-1,n=Number.MAX_VALUE,r=Object.keys(e),o=r.length;if(o===0){return{mru:-1,lru:-1}}else{while(++t<o){var s=parseInt(r[t]);if(a<s){a=s}if(n>s){n=s}}return{mru:a,lru:n}}}function O(e,a,n){return new Promise(function(r,o){var s=0;i(e,a,n);function i(e,a,n){s++;t.debug("Cache Manager LRUPersistentCache: cleanAndStore: freeing space attempt ["+s+"]");f(e).then(function(s){t.debug("Cache Manager LRUPersistentCache: cleanAndStore: deleted item with key ["+s+"]. Going to put "+a);return _(e,a,n).then(r,function(r){if(D(r)){t.debug("Cache Manager LRUPersistentCache: cleanAndStore: QuotaExceedError during freeing up space...");if(v(e)>0){i(e,a,n)}else{o("Cache Manager LRUPersistentCache: cleanAndStore: even when the cache is empty, the new item with key ["+a+"] cannot be added")}}else{o("Cache Manager LRUPersistentCache: cleanAndStore: cannot free space: "+L(r))}})},o)}})}function D(e){return e&&e.target&&e.target.error&&e.target.error.name==="QuotaExceededError"}function P(e,t){var a=e._metadata.__byKey__[t];delete e._metadata.__byKey__[t];delete e._metadata.__byIndex__[a];if(e._metadata.timestamps[t]){delete e._metadata.timestamps[t]}k(e)}function k(e){while(e._lru<=e._mru&&e._metadata.__byIndex__[e._lru]==undefined){e._lru++}return e._lru<=e._mru}function L(e){if(!e){return""}var t=e.message;if(e.target&&e.target.error&&e.target.error.name){t+=" Error name: "+e.target.error.name}return t}function N(){return e.get({name:"sapUiXxCacheSerialization",type:e.Type.Boolean,external:true})}function U(){return e.get({name:"sapUiXxCacheExcludedKeys",type:e.Type.StringArray,external:true})}function R(e){return U().some(function(t){return e.indexOf(t)>-1})}function x(e,t){i++;var n="[async]  "+e+"["+t+"]- #"+i,r="[sync ]  "+e+"["+t+"]- #"+i;a.start(n,"CM",["LRUPersistentCache",e]);a.start(r,"CM",["LRUPersistentCache",e]);return{sMeasureAsync:n,sMeasureSync:r,endAsync:function(){a.end(this.sMeasureAsync)},endSync:function(){a.end(this.sMeasureSync)}}}function I(e,n,r){if(t.getLevel()>=t.Level.DEBUG){t.debug(e+" for key ["+n+"] took: "+a.getMeasurement(r).duration)}}return r});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/date/Buddhist", ["./UniversalDate","./_Calendars","sap/base/i18n/date/CalendarType"],function(t,e,r){"use strict";var a=t.extend("sap.ui.core.date.Buddhist",{constructor:function(){var t=arguments;if(t.length>1){t=u(t)}this.oDate=this.createDate(Date,t);this.sCalendarType=r.Buddhist}});a.UTC=function(){var t=u(arguments);return Date.UTC.apply(Date,t)};a.now=function(){return Date.now()};function n(e){var a=t.getEraStartDate(r.Buddhist,0).year,n=e.year-a+1;if(e.year<1941&&e.month<3){n-=1}if(e.year===null){n=undefined}return{year:n,month:e.month,day:e.day}}function i(e){var a=t.getEraStartDate(r.Buddhist,0).year,n=e.year+a-1;if(n<1941&&e.month<3){n+=1}if(e.year===null){n=undefined}return{year:n,month:e.month,day:e.day}}function u(t){var e,r;e={year:t[0],month:t[1],day:t[2]!==undefined?t[2]:1};r=i(e);t[0]=r.year;return t}a.prototype._getBuddhist=function(){var t={year:this.oDate.getFullYear(),month:this.oDate.getMonth(),day:this.oDate.getDate()};return n(t)};a.prototype._setBuddhist=function(t){var e=i(t);return this.oDate.setFullYear(e.year,e.month,e.day)};a.prototype._getUTCBuddhist=function(){var t={year:this.oDate.getUTCFullYear(),month:this.oDate.getUTCMonth(),day:this.oDate.getUTCDate()};return n(t)};a.prototype._setUTCBuddhist=function(t){var e=i(t);return this.oDate.setUTCFullYear(e.year,e.month,e.day)};a.prototype.getYear=function(){return this._getBuddhist().year};a.prototype.getFullYear=function(){return this._getBuddhist().year};a.prototype.getUTCFullYear=function(){return this._getUTCBuddhist().year};a.prototype.setYear=function(t){var e=this._getBuddhist();e.year=t;return this._setBuddhist(e)};a.prototype.setFullYear=function(t,e,r){var a=this._getBuddhist();a.year=t;if(e!==undefined){a.month=e}if(r!==undefined){a.day=r}return this._setBuddhist(a)};a.prototype.setUTCFullYear=function(t,e,r){var a=this._getUTCBuddhist();a.year=t;if(e!==undefined){a.month=e}if(r!==undefined){a.day=r}return this._setUTCBuddhist(a)};e.set(r.Buddhist,a);return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/date/CalendarUtils", ["sap/base/i18n/Formatting","sap/base/i18n/date/CalendarWeekNumbering","sap/ui/core/Locale","sap/ui/core/LocaleData"],function(e,a,n,i){"use strict";var t={getWeekConfigurationValues:function(r,u){var s,g;if(!r){return t.getWeekConfigurationValues(e.getCalendarWeekNumbering(),u)}g=a.getWeekConfigurationValues(r);if(g){return g}if(r===a.Default){u=u||new n(e.getLanguageTag());s=i.getInstance(u);return{firstDayOfWeek:s.getFirstDayOfWeek(),minimalDaysInFirstWeek:s.getMinimalDaysInFirstWeek()}}return undefined}};return t});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/date/CalendarWeekNumbering", ["sap/ui/base/DataType","sap/base/i18n/date/CalendarWeekNumbering"],function(e,a){"use strict";e.registerEnum("sap.ui.core.date.CalendarWeekNumbering",a);return a},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/date/Gregorian", ["./UniversalDate","./_Calendars","sap/base/i18n/date/CalendarType"],function(e,a,t){"use strict";var n=e.extend("sap.ui.core.date.Gregorian",{constructor:function(){this.oDate=this.createDate(Date,arguments);this.sCalendarType=t.Gregorian}});n.UTC=function(){return Date.UTC.apply(Date,arguments)};n.now=function(){return Date.now()};a.set(t.Gregorian,n);return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/date/Islamic", ["./UniversalDate","sap/base/Log","sap/base/i18n/Formatting","sap/base/i18n/date/CalendarType","./_Calendars"],function(t,e,a,r,o){"use strict";var n=t.extend("sap.ui.core.date.Islamic",{constructor:function(){var t=arguments;if(t.length>1){t=p(t)}this.oDate=this.createDate(Date,t);this.sCalendarType=r.Islamic}});n.UTC=function(){var t=p(arguments);return Date.UTC.apply(Date,t)};n.now=function(){return Date.now()};var i=1400,s=1721425.5,h=1948439.5,l=-425215872e5,f=864e5;var u=null;var c=["A","B"];function y(t){var e=t.year,a=t.month,r=t.day,o,n,i,l,f,u,c;u=0;if(a+1>2){u=v(e)?-1:-2}c=s-1+365*(e-1)+Math.floor((e-1)/4)+-Math.floor((e-1)/100)+Math.floor((e-1)/400)+Math.floor((367*(a+1)-362)/12+u+r);c=Math.floor(c)+.5;f=c-h;l=Math.floor(f/29.530588853);if(l<0){o=Math.floor(l/12)+1;n=l%12;if(n<0){n+=12}i=f-I(o,n)+1}else{l++;while(M(l)>f){l--}o=Math.floor(l/12)+1;n=l%12;i=f-M(12*(o-1)+n)+1}return{day:i,month:n,year:o}}function m(t){var e=t.year,a=t.month,r=t.day,o=e<1?I(e,a):M(12*(e-1)+a),n=r+o+h-1,i=Math.floor(n-.5)+.5,l=i-s,f=Math.floor(l/146097),u=C(l,146097),c=Math.floor(u/36524),y=C(u,36524),m=Math.floor(y/1461),p=C(y,1461),d=Math.floor(p/365),g=f*400+c*100+m*4+d,T,D,_,U,F,Y,b,w;if(!(c==4||d==4)){g++}_=s+365*(g-1)+Math.floor((g-1)/4)-Math.floor((g-1)/100)+Math.floor((g-1)/400);U=i-_;F=s-1+365*(g-1)+Math.floor((g-1)/4)-Math.floor((g-1)/100)+Math.floor((g-1)/400)+Math.floor(739/12+(v(g)?-1:-2)+1);b=0;if(i<F){b=0}else{b=v(g)?1:2}T=Math.floor(((U+b)*12+373)/367);Y=s-1+365*(g-1)+Math.floor((g-1)/4)-Math.floor((g-1)/100)+Math.floor((g-1)/400);w=0;if(T>2){w=v(g)?-1:-2}Y+=Math.floor((367*T-362)/12+w+1);D=i-Y+1;return{day:D,month:T-1,year:g}}function p(t){var e=Array.prototype.slice.call(t),a,r;a={year:t[0],month:t[1],day:t[2]!==undefined?t[2]:1};r=m(a);e[0]=r.year;e[1]=r.month;e[2]=r.day;return e}function d(){var t,r;u={};t=a.getABAPDateFormat();t=T(t)?t:"A";r=a.getCustomIslamicCalendarData();r=r||[];if(!r.length){e.warning("No calendar customizations.");return}r.forEach(function(e){if(e.dateFormat===t){var a=g(e.gregDate);var r=new Date(Date.UTC(a.year,a.month-1,a.day));var o=r.getTime();var n=(o-l)/f;a=g(e.islamicMonthStart);var i=(a.year-1)*12+a.month-1;u[i]=n}});e.info("Working with date format: ["+t+"] and customization: "+JSON.stringify(r))}function g(t){return{year:parseInt(t.substr(0,4)),month:parseInt(t.substr(4,2)),day:parseInt(t.substr(6,2))}}function M(t){if(!u){d()}var e=u[t];if(!e){var a=Math.floor(t/12)+1;var r=t%12;e=I(a,r)}return e}function I(t,e){return Math.ceil(29.5*e)+(t-1)*354+Math.floor((3+11*t)/30)}function C(t,e){return t-e*Math.floor(t/e)}function v(t){return!(t%400)||!(t%4)&&!!(t%100)}function T(t){return c.indexOf(t)!==-1}n.prototype._getIslamic=function(){return y({day:this.oDate.getDate(),month:this.oDate.getMonth(),year:this.oDate.getFullYear()})};n.prototype._setIslamic=function(t){var e=m(t);return this.oDate.setFullYear(e.year,e.month,e.day)};n.prototype._getUTCIslamic=function(){return y({day:this.oDate.getUTCDate(),month:this.oDate.getUTCMonth(),year:this.oDate.getUTCFullYear()})};n.prototype._setUTCIslamic=function(t){var e=m(t);return this.oDate.setUTCFullYear(e.year,e.month,e.day)};n.prototype.getDate=function(t){return this._getIslamic().day};n.prototype.getMonth=function(){return this._getIslamic().month};n.prototype.getYear=function(){return this._getIslamic().year-i};n.prototype.getFullYear=function(){return this._getIslamic().year};n.prototype.setDate=function(t){var e=this._getIslamic();e.day=t;return this._setIslamic(e)};n.prototype.setMonth=function(t,e){var a=this._getIslamic();a.month=t;if(e!==undefined){a.day=e}return this._setIslamic(a)};n.prototype.setYear=function(t){var e=this._getIslamic();e.year=t+i;return this._setIslamic(e)};n.prototype.setFullYear=function(t,e,a){var r=this._getIslamic();r.year=t;if(e!==undefined){r.month=e}if(a!==undefined){r.day=a}return this._setIslamic(r)};n.prototype.getUTCDate=function(t){return this._getUTCIslamic().day};n.prototype.getUTCMonth=function(){return this._getUTCIslamic().month};n.prototype.getUTCFullYear=function(){return this._getUTCIslamic().year};n.prototype.setUTCDate=function(t){var e=this._getUTCIslamic();e.day=t;return this._setUTCIslamic(e)};n.prototype.setUTCMonth=function(t,e){var a=this._getUTCIslamic();a.month=t;if(e!==undefined){a.day=e}return this._setUTCIslamic(a)};n.prototype.setUTCFullYear=function(t,e,a){var r=this._getUTCIslamic();r.year=t;if(e!==undefined){r.month=e}if(a!==undefined){r.day=a}return this._setUTCIslamic(r)};o.set(r.Islamic,n);return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/date/Japanese", ["./UniversalDate","./_Calendars","sap/base/i18n/date/CalendarType"],function(e,t,a){"use strict";var n=e.extend("sap.ui.core.date.Japanese",{constructor:function(){var e=arguments;if(e.length>1){e=s(e)}this.oDate=this.createDate(Date,e);this.sCalendarType=a.Japanese}});n.UTC=function(){var e=s(arguments);return Date.UTC.apply(Date,e)};n.now=function(){return Date.now()};function r(t){var n=e.getEraByDate(a.Japanese,t.year,t.month,t.day),r=e.getEraStartDate(a.Japanese,n).year;return{era:n,year:t.year-r+1,month:t.month,day:t.day}}function o(t){var n=e.getEraStartDate(a.Japanese,t.era).year;return{year:n+t.year-1,month:t.month,day:t.day}}function s(t){var n,r,s,i=t[0];if(typeof i=="number"){if(i>=100){return t}else{s=e.getCurrentEra(a.Japanese);i=[s,i]}}else if(!Array.isArray(i)){i=[]}n={era:i[0],year:i[1],month:t[1],day:t[2]!==undefined?t[2]:1};r=o(n);t[0]=r.year;return t}n.prototype._getJapanese=function(){var e={year:this.oDate.getFullYear(),month:this.oDate.getMonth(),day:this.oDate.getDate()};return r(e)};n.prototype._setJapanese=function(e){var t=o(e);return this.oDate.setFullYear(t.year,t.month,t.day)};n.prototype._getUTCJapanese=function(){var e={year:this.oDate.getUTCFullYear(),month:this.oDate.getUTCMonth(),day:this.oDate.getUTCDate()};return r(e)};n.prototype._setUTCJapanese=function(e){var t=o(e);return this.oDate.setUTCFullYear(t.year,t.month,t.day)};n.prototype.getYear=function(){return this._getJapanese().year};n.prototype.getFullYear=function(){return this._getJapanese().year};n.prototype.getEra=function(){return this._getJapanese().era};n.prototype.getUTCFullYear=function(){return this._getUTCJapanese().year};n.prototype.getUTCEra=function(){return this._getUTCJapanese().era};n.prototype.setYear=function(e){var t=this._getJapanese();t.year=e;return this._setJapanese(t)};n.prototype.setFullYear=function(e,t,a){var n=this._getJapanese();n.year=e;if(t!==undefined){n.month=t}if(a!==undefined){n.day=a}return this._setJapanese(n)};n.prototype.setEra=function(t,n,o,s){var i=e.getEraStartDate(a.Japanese,t),u=r(i);if(n!==undefined){u.year=n}if(o!==undefined){u.month=o}if(s!==undefined){u.day=s}return this._setJapanese(u)};n.prototype.setUTCFullYear=function(e,t,a){var n=this._getUTCJapanese();n.year=e;if(t!==undefined){n.month=t}if(a!==undefined){n.day=a}return this._setUTCJapanese(n)};n.prototype.setUTCEra=function(t,n,o,s){var i=e.getEraStartDate(a.Japanese,t),u=r(i);if(n!==undefined){u.year=n}if(o!==undefined){u.month=o}if(s!==undefined){u.day=s}return this._setUTCJapanese(u)};n.prototype.getWeek=function(t,a){return e.getWeekByDate(this.sCalendarType,this.oDate.getFullYear(),this.getMonth(),this.getDate(),t,a)};n.prototype.getUTCWeek=function(t,a){return e.getWeekByDate(this.sCalendarType,this.oDate.getUTCFullYear(),this.getUTCMonth(),this.getUTCDate(),t,a)};t.set(a.Japanese,n);return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/date/Persian", ["./UniversalDate","./_Calendars","sap/base/i18n/date/CalendarType"],function(t,e,r){"use strict";var n=t.extend("sap.ui.core.date.Persian",{constructor:function(){var t=arguments;if(t.length>1){t=s(t)}this.oDate=this.createDate(Date,t);this.sCalendarType=r.Persian}});n.UTC=function(){var t=s(arguments);return Date.UTC.apply(Date,t)};n.now=function(){return Date.now()};var a=1300;function i(t){var e=f(t.year,t.month+1,t.day);return h(e)}function o(t){var e=y(t.year,t.month+1,t.day);return p(e)}function s(t){var e=Array.prototype.slice.call(t),r,n;if(typeof t[0]!=="number"||typeof t[1]!=="number"||t[2]!==undefined&&typeof t[2]!="number"){e[0]=NaN;e[1]=NaN;e[2]=NaN;return e}r={year:t[0],month:t[1],day:t[2]!==undefined?t[2]:1};n=o(r);e[0]=n.year;e[1]=n.month;e[2]=n.day;return e}function u(t){var e=[-61,9,38,199,426,686,756,818,1111,1181,1210,1635,2060,2097,2192,2262,2324,2394,2456,3178],r=e.length,n=t+621,a=-14,i=e[0],o,s,u,y,h,f,p;for(p=1;p<r;p+=1){o=e[p];s=o-i;if(t<o){break}a=a+c(s,33)*8+c(d(s,33),4);i=o}f=t-i;a=a+c(f,33)*8+c(d(f,33)+3,4);if(d(s,33)===4&&s-f===4){a+=1}y=c(n,4)-c((c(n,100)+1)*3,4)-150;h=20+a-y;if(s-f<6){f=f-s+c(s+4,33)*33}u=d(d(f+1,33)-1,4);if(u===-1){u=4}return{leap:u,gy:n,march:h}}function y(t,e,r){while(e<1){e+=12;t--}while(e>12){e-=12;t++}var n=u(t);return f(n.gy,3,n.march)+(e-1)*31-c(e,7)*(e-7)+r-1}function h(t){var e=p(t).year,r=e-621,n=u(r),a=f(e,3,n.march),i,o,s;s=t-a;if(s>=0){if(s<=185){o=1+c(s,31);i=d(s,31)+1;return{year:r,month:o-1,day:i}}else{s-=186}}else{r-=1;s+=179;if(n.leap===1){s+=1}}o=7+c(s,30);i=d(s,30)+1;return{year:r,month:o-1,day:i}}function f(t,e,r){var n=c((t+c(e-8,6)+100100)*1461,4)+c(153*d(e+9,12)+2,5)+r-34840408;n=n-c(c(t+100100+c(e-8,6),100)*3,4)+752;return n}function p(t){var e,r,n,a,i;e=4*t+139361631;e=e+c(c(4*t+183187720,146097)*3,4)*4-3908;r=c(d(e,1461),4)*5+308;n=c(d(r,153),5)+1;a=d(c(r,153),12)+1;i=c(e,1461)-100100+c(8-a,6);return{year:i,month:a-1,day:n}}function c(t,e){return~~(t/e)}function d(t,e){return t-~~(t/e)*e}n.prototype._getPersian=function(){return i({day:this.oDate.getDate(),month:this.oDate.getMonth(),year:this.oDate.getFullYear()})};n.prototype._setPersian=function(t){var e=o(t);return this.oDate.setFullYear(e.year,e.month,e.day)};n.prototype._getUTCPersian=function(){return i({day:this.oDate.getUTCDate(),month:this.oDate.getUTCMonth(),year:this.oDate.getUTCFullYear()})};n.prototype._setUTCPersian=function(t){var e=o(t);return this.oDate.setUTCFullYear(e.year,e.month,e.day)};n.prototype.getDate=function(t){return this._getPersian().day};n.prototype.getMonth=function(){return this._getPersian().month};n.prototype.getYear=function(){return this._getPersian().year-a};n.prototype.getFullYear=function(){return this._getPersian().year};n.prototype.setDate=function(t){var e=this._getPersian();e.day=t;return this._setPersian(e)};n.prototype.setMonth=function(t,e){var r=this._getPersian();r.month=t;if(e!==undefined){r.day=e}return this._setPersian(r)};n.prototype.setYear=function(t){var e=this._getPersian();e.year=t+a;return this._setPersian(e)};n.prototype.setFullYear=function(t,e,r){var n=this._getPersian();n.year=t;if(e!==undefined){n.month=e}if(r!==undefined){n.day=r}return this._setPersian(n)};n.prototype.getUTCDate=function(t){return this._getUTCPersian().day};n.prototype.getUTCMonth=function(){return this._getUTCPersian().month};n.prototype.getUTCFullYear=function(){return this._getUTCPersian().year};n.prototype.setUTCDate=function(t){var e=this._getUTCPersian();e.day=t;return this._setUTCPersian(e)};n.prototype.setUTCMonth=function(t,e){var r=this._getUTCPersian();r.month=t;if(e!==undefined){r.day=e}return this._setUTCPersian(r)};n.prototype.setUTCFullYear=function(t,e,r){var n=this._getUTCPersian();n.year=t;if(e!==undefined){n.month=e}if(r!==undefined){n.day=r}return this._setUTCPersian(n)};e.set(r.Persian,n);return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/date/UI5Date", ["sap/base/Log","sap/base/i18n/Localization","sap/base/i18n/date/TimezoneUtils"],function(t,e,n){"use strict";var o=["year","month","day","hour","minute","second","fractionalSecond"],r=/Z|GMT|:.*[\+|\-]|^([\+|\-]\d{2})?\d{4}(-\d{2}){0,2}$/,i=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],a=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],s={Sun:0,Mon:1,Tue:2,Wed:3,Thu:4,Fri:5,Sat:6};const u=/^(\d{1,4})-(\d{1,2})-(\d{1,2})(?:[T ](\d{1,2})(?::(\d{1,2})(?::(\d{1,2})(?:\.(\d{1,3}))?)?)?)?$/;function c(t,e){return(t<0?"-":"")+Math.abs(t).toString().padStart(e,"0")}function h(e,n){var i=h._createDateInstance(e);Object.defineProperties(this,{sTimezoneID:{value:n},oDate:{value:i,writable:true},oDateParts:{value:undefined,writable:true}});if(isNaN(i)){return}if(e.length>1||e.length===1&&typeof e[0]==="string"&&!r.test(e[0])){const n=[i.getFullYear(),i.getMonth(),i.getDate(),i.getHours(),i.getMinutes(),i.getSeconds(),i.getMilliseconds()];const r=i.getTimezoneOffset();const a=new Date(i.getTime()-72e5).getTimezoneOffset();if(r<a){if(e.length>1){n[1]=e[1]||0;n[2]=e[2]!==undefined?e[2]:1;n[3]=e[3]!==undefined?e[3]:0;n[4]=e[4]!==undefined?e[4]:0}else{const o=u.exec(e[0]);if(o){n[1]=+o[2]-1;n[2]=o[3];n[3]=o[4]!==undefined?o[4]:0;n[4]=o[5]!==undefined?o[5]:0}else{t.warning("UI5Date for '"+e[0]+"' cannot be ensured to be correct as it is near"+" the change from standard time to daylight saving time in the current browser locale;"+" use the constructor with more than 1 arguments or use the ISO format instead",i,"sap.ui.core.date.UI5Date")}}}this._setParts(o,n)}}h.prototype=Object.create(Date.prototype,{constructor:{value:Date}});h.prototype[Symbol.toStringTag]="Date";h.prototype._getPart=function(t){var e;if(isNaN(this.oDate)){return NaN}this.oDateParts=this.oDateParts||n._getParts(this.oDate,this.sTimezoneID);if(t==="weekday"){return s[this.oDateParts.weekday]}e=parseInt(this.oDateParts[t]);if(t==="month"){e-=1}else if(t==="year"){if(this.oDateParts.era==="B"){e=1-e}}return e};h.prototype._setParts=function(t,e){var o,r,i,a,s,u,c={},h=Math.min(t.length,e.length);if(h===0){return this.setTime(NaN)}for(o=0;o<h;o+=1){u=parseInt(+e[o]);s=t[o];if(isNaN(u)){return this.setTime(NaN)}if(s==="month"){u+=1}else if(s==="year"){if(u<=0){u=1-u;c.era="B"}else{c.era="A"}}c[s]=u.toString()}if(this.oDateParts){r=this.oDateParts}else if(isNaN(this.oDate)){r={day:"1",fractionalSecond:"0",hour:"0",minute:"0",month:"1",second:"0"}}else{r=n._getParts(this.oDate,this.sTimezoneID)}c=Object.assign({},r,c);i=n._getDateFromParts(c);if(isNaN(i)){return this.setTime(NaN)}a=i.getTime()+n.calculateOffset(i,this.sTimezoneID)*1e3;return this.setTime(a)};h.prototype.clone=function(){return h.getInstance(this)};h.prototype.getDate=function(){return this._getPart("day")};h.prototype.getDay=function(){return this._getPart("weekday")};h.prototype.getFullYear=function(){return this._getPart("year")};h.prototype.getHours=function(){return this._getPart("hour")};h.prototype.getMilliseconds=function(){return this._getPart("fractionalSecond")};h.prototype.getMinutes=function(){return this._getPart("minute")};h.prototype.getMonth=function(){return this._getPart("month")};h.prototype.getSeconds=function(){return this._getPart("second")};h.prototype.getTimezoneOffset=function(){return n.calculateOffset(this.oDate,this.sTimezoneID)/60};h.prototype.getYear=function(){return this._getPart("year")-1900};h.prototype.setDate=function(t){return this._setParts(["day"],arguments)};h.prototype.setFullYear=function(t,e,n){return this._setParts(["year","month","day"],arguments)};h.prototype.setHours=function(t,e,n,o){return this._setParts(["hour","minute","second","fractionalSecond"],arguments)};h.prototype.setMilliseconds=function(t){return this._setParts(["fractionalSecond"],arguments)};h.prototype.setMinutes=function(t,e,n){return this._setParts(["minute","second","fractionalSecond"],arguments)};h.prototype.setMonth=function(t,e){return this._setParts(["month","day"],arguments)};h.prototype.setSeconds=function(t,e){return this._setParts(["second","fractionalSecond"],arguments)};h.prototype.setTime=function(t){this.oDateParts=undefined;return this.oDate.setTime(t)};h.prototype.setYear=function(t){var e=parseInt(t);e=e<0||e>99?e:e+1900;return this._setParts(["year"],[e])};h.prototype.toDateString=function(){if(isNaN(this.oDate)){return this.oDate.toDateString()}return i[this.getDay()]+" "+a[this.getMonth()]+" "+c(this.getDate(),2)+" "+c(this.getFullYear(),4)};h.prototype.toString=function(){if(isNaN(this.oDate)){return this.oDate.toString()}return this.toDateString()+" "+this.toTimeString()};h.prototype.toTimeString=function(){var t,e,n,o;if(isNaN(this.oDate)){return this.oDate.toTimeString()}o=this.getTimezoneOffset();n=o>0?"-":"+";t=Math.floor(Math.abs(o)/60);e=Math.abs(o)%60;return c(this.getHours(),2)+":"+c(this.getMinutes(),2)+":"+c(this.getSeconds(),2)+" GMT"+n+c(t,2)+c(e,2)};["getTime","getUTCDate","getUTCDay","getUTCFullYear","getUTCHours","getUTCMilliseconds","getUTCMinutes","getUTCMonth","getUTCSeconds","toGMTString","toISOString","toJSON","toUTCString","valueOf"].forEach(function(t){h.prototype[t]=function(){return this.oDate[t].apply(this.oDate,arguments)}});["toLocaleDateString","toLocaleString","toLocaleTimeString"].forEach(function(t){h.prototype[t]=function(n,o){return this.oDate[t](n||e.getLanguageTag().toString(),Object.assign({timeZone:this.sTimezoneID},o))}});["setUTCDate","setUTCFullYear","setUTCHours","setUTCMilliseconds","setUTCMinutes","setUTCMonth","setUTCSeconds"].forEach(function(t){h.prototype[t]=function(){this.oDateParts=undefined;return this.oDate[t].apply(this.oDate,arguments)}});h._createDateInstance=function(t){if(t[0]instanceof Date){t[0]=t[0].valueOf()}return new(Function.prototype.bind.apply(Date,[].concat.apply([null],t)))};h.getInstance=function(){var t=e.getTimezone();if(t!==n.getLocalTimezone()){return new h(arguments,t)}return h._createDateInstance(arguments)};h.checkDate=function(t){if(isNaN(t.getTime())){throw new Error("The given Date is not valid")}if(!(t instanceof h)&&e.getTimezone()!==n.getLocalTimezone()){throw new Error("Configured time zone requires the parameter 'oDate' to be an instance of"+" sap.ui.core.date.UI5Date")}};return h});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/date/UniversalDate", ["sap/base/i18n/Formatting","sap/base/i18n/date/CalendarWeekNumbering","sap/ui/base/Object","sap/ui/core/Locale","sap/ui/core/LocaleData","./_Calendars","./CalendarUtils","./UI5Date"],function(e,t,r,a,n,i,o,s){"use strict";var u=r.extend("sap.ui.core.date.UniversalDate",{constructor:function(){var e=u.getClass();return this.createDate(e,arguments)}});u.UTC=function(){var e=u.getClass();return e.UTC.apply(e,arguments)};u.now=function(){return Date.now()};u.prototype.createDate=function(e,t){if(e===Date){return s.getInstance.apply(null,t)}return new e(...t)};u.getInstance=function(t,r){var a,n;if(t instanceof u){t=t.getJSDate()}if(t&&isNaN(t.getTime())){throw new Error("The given date object is invalid")}if(!r){r=e.getCalendarType()}a=u.getClass(r);n=Object.create(a.prototype);n.oDate=t?s.getInstance(t):s.getInstance();n.sCalendarType=r;return n};u.getClass=function(t){if(!t){t=e.getCalendarType()}return i.get(t)};["getDate","getMonth","getFullYear","getYear","getDay","getHours","getMinutes","getSeconds","getMilliseconds","getUTCDate","getUTCMonth","getUTCFullYear","getUTCDay","getUTCHours","getUTCMinutes","getUTCSeconds","getUTCMilliseconds","getTime","valueOf","getTimezoneOffset","toString","toDateString","setDate","setFullYear","setYear","setMonth","setHours","setMinutes","setSeconds","setMilliseconds","setUTCDate","setUTCFullYear","setUTCMonth","setUTCHours","setUTCMinutes","setUTCSeconds","setUTCMilliseconds"].forEach(function(e){u.prototype[e]=function(){return this.oDate[e].apply(this.oDate,arguments)}});u.prototype.getJSDate=function(){return this.oDate};u.prototype.getCalendarType=function(){return this.sCalendarType};u.prototype.getEra=function(){return u.getEraByDate(this.sCalendarType,this.oDate.getFullYear(),this.oDate.getMonth(),this.oDate.getDate())};u.prototype.setEra=function(e){};u.prototype.getUTCEra=function(){return u.getEraByDate(this.sCalendarType,this.oDate.getUTCFullYear(),this.oDate.getUTCMonth(),this.oDate.getUTCDate())};u.prototype.setUTCEra=function(e){};u.prototype.getWeek=function(e,t){return u.getWeekByDate(this.sCalendarType,this.getFullYear(),this.getMonth(),this.getDate(),e,t)};u.prototype.setWeek=function(e,t,r){var a=u.getFirstDateOfWeek(this.sCalendarType,e.year||this.getFullYear(),e.week,t,r);this.setFullYear(a.year,a.month,a.day)};u.prototype.getUTCWeek=function(e,t){return u.getWeekByDate(this.sCalendarType,this.getUTCFullYear(),this.getUTCMonth(),this.getUTCDate(),e,t)};u.prototype.setUTCWeek=function(e,t,r){var a=u.getFirstDateOfWeek(this.sCalendarType,e.year||this.getFullYear(),e.week,t,r);this.setUTCFullYear(a.year,a.month,a.day)};u.prototype.getQuarter=function(){return Math.floor(this.getMonth()/3)};u.prototype.getUTCQuarter=function(){return Math.floor(this.getUTCMonth()/3)};u.prototype.getDayPeriod=function(){if(this.getHours()<12){return 0}else{return 1}};u.prototype.getUTCDayPeriod=function(){if(this.getUTCHours()<12){return 0}else{return 1}};u.prototype.getTimezoneShort=function(){if(this.oDate.getTimezoneShort){return this.oDate.getTimezoneShort()}};u.prototype.getTimezoneLong=function(){if(this.oDate.getTimezoneLong){return this.oDate.getTimezoneLong()}};var g=7*24*60*60*1e3;u.getWeekByDate=function(t,r,n,i,o,s){s=s||e.getCalendarWeekNumbering();l(s);o=o||new a(e.getLanguageTag());var u=this.getClass(t);var g=c(u,r,o,s);var p=new u(u.UTC(r,n,i));var T,h,C,D,d;var U=f(s,o);if(U){T=y(g,p)}else{h=r-1;C=r+1;D=c(u,h,o,s);d=c(u,C,o,s);if(p>=d){r=C;T=0}else if(p<g){r=h;T=y(D,p)}else{T=y(g,p)}}return{year:r,week:T}};u.getFirstDateOfWeek=function(t,r,n,i,o){o=o||e.getCalendarWeekNumbering();l(o);i=i||new a(e.getLanguageTag());var s=this.getClass(t);var u=c(s,r,i,o);var p=new s(u.valueOf()+n*g);var y=f(o,i);if(y&&n===0&&u.getUTCFullYear()<r){return{year:r,month:0,day:1}}return{year:p.getUTCFullYear(),month:p.getUTCMonth(),day:p.getUTCDate()}};function f(e,r){var a=n.getInstance(r);return(e===t.Default||e===t.WesternTraditional)&&a.firstDayStartsFirstWeek()}function l(e){if(typeof e==="object"){if(typeof e.firstDayOfWeek!=="number"||typeof e.minimalDaysInFirstWeek!=="number"){throw new TypeError("Week config requires firstDayOfWeek and minimalDaysInFirstWeek to be set")}}else if(!Object.values(t).includes(e)){throw new TypeError("Illegal format option calendarWeekNumbering: '"+e+"'")}}function p(e,t){if(typeof e==="object"&&typeof e.firstDayOfWeek==="number"&&typeof e.minimalDaysInFirstWeek==="number"){return e}return o.getWeekConfigurationValues(e,t)}function c(t,r,n,i){n=n||new a(e.getLanguageTag());var o=p(i,n);var s=o.minimalDaysInFirstWeek;var u=o.firstDayOfWeek;var g=new t(t.UTC(r,0,1));var f=7;if(isNaN(g.getTime())){throw new Error("Could not determine the first day of the week, because the date "+"object is invalid")}while(g.getUTCDay()!==u){g.setUTCDate(g.getUTCDate()-1);f--}if(f<s){g.setUTCDate(g.getUTCDate()+7)}return g}function y(e,t){return Math.floor((t.valueOf()-e.valueOf())/g)}var T={};u.getEraByDate=function(e,t,r,a){var n=h(e),i=new Date(0).setUTCFullYear(t,r,a),o;for(var s=n.length-1;s>=0;s--){o=n[s];if(!o){continue}if(o._start&&i>=o._startInfo.timestamp){return s}if(o._end&&i<o._endInfo.timestamp){return s}}};u.getCurrentEra=function(e){var t=s.getInstance();return this.getEraByDate(e,t.getFullYear(),t.getMonth(),t.getDate())};u.getEraStartDate=function(e,t){var r=h(e),a=r[t]||r[0];if(a._start){return a._startInfo}};function h(t){var r=new a(e.getLanguageTag()),i=n.getInstance(r),o=T[t];if(!o){var o=i.getEraDates(t);if(!o[0]){o[0]={_start:"1-1-1"}}for(var s=0;s<o.length;s++){var u=o[s];if(!u){continue}if(u._start){u._startInfo=C(u._start)}if(u._end){u._endInfo=C(u._end)}}T[t]=o}return o}function C(e){var t=e.split("-"),r,a,n;if(t[0]==""){r=-parseInt(t[1]);a=parseInt(t[2])-1;n=parseInt(t[3])}else{r=parseInt(t[0]);a=parseInt(t[1])-1;n=parseInt(t[2])}return{timestamp:new Date(0).setUTCFullYear(r,a,n),year:r,month:a,day:n}}return u});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/date/UniversalDateUtils", ["sap/base/i18n/Formatting","sap/ui/core/date/UniversalDate","sap/ui/core/Locale","sap/ui/core/LocaleData","sap/base/assert"],function(e,t,r,a,n){"use strict";function u(e){n(e instanceof t,"method accepts only instances of UniversalDate");return e.createDate(e.constructor,[e.getJSDate()])}var s={};s.getRange=function(e,t,r,a){if(a===undefined){a=true}if(isNaN(e)){throw new TypeError("duration is NaN, but is "+e)}e=Math.trunc(e);var n=s.resetStartTime(r==undefined?null:r),i;if(a){switch(t){case"MINUTE":case"HOUR":n=s.createNewUniversalDate();break;case"DAY":break;case"WEEK":n=s.getWeekStartDate(n);break;case"MONTH":n=s.getMonthStartDate(n);break;case"QUARTER":n=s.getQuarterStartDate(n);break;case"YEAR":n=s.getYearStartDate(n);break;default:throw new TypeError("invalid unit "+t)}}switch(t){case"MINUTE":i=u(n);i.setMinutes(n.getMinutes()+e);break;case"HOUR":i=u(n);i.setHours(n.getHours()+e);break;case"DAY":if(e>0){n.setDate(n.getDate()+1)}i=u(n);e=e==0?1:e;i.setDate(n.getDate()+e);break;case"WEEK":if(e>0){n.setDate(n.getDate()+7)}i=u(n);e=e==0?1:e;i.setDate(n.getDate()+e*7);break;case"MONTH":if(e>0){n.setMonth(n.getMonth()+1)}i=u(n);e=e==0?1:e;i.setMonth(n.getMonth()+e);break;case"QUARTER":if(e>0){n.setMonth(n.getMonth()+3)}i=u(n);e=e==0?1:e;i.setMonth(n.getMonth()+e*3);break;case"YEAR":if(e>0){n.setFullYear(n.getFullYear()+1)}i=u(n);e=e==0?1:e;i.setFullYear(n.getFullYear()+e);break;default:throw new TypeError("invalid unit "+t)}if(i.getTime()<n.getTime()){i=[n,n=i][0]}if(t==="HOUR"||t==="MINUTE"){return[n,i]}i.setDate(i.getDate()-1);return[s.resetStartTime(n),s.resetEndTime(i)]};s.getWeekStartDate=function(t,n){var i=n?new r(n):new r(e.getLanguageTag()),g=a.getInstance(i),o=g.getFirstDayOfWeek();t=t?u(t):u(s.createNewUniversalDate());t.setDate(t.getDate()-t.getDay()+o);return s.resetStartTime(t)};s.getWeekLastDate=function(e,t){var r=s.getWeekStartDate(e,t);r.setDate(r.getDate()+6);return s.resetStartTime(r)};s.getMonthStartDate=function(e){e=e?u(e):u(s.createNewUniversalDate());e.setDate(1);return s.resetStartTime(e)};s.getMonthEndDate=function(e){var t=s.getMonthStartDate(e);t.setMonth(t.getMonth()+1);t.setDate(0);return s.resetStartTime(t)};s.getQuarterStartDate=function(e){e=e?u(e):u(s.createNewUniversalDate());e.setMonth(3*Math.floor(e.getMonth()/3));e.setDate(1);return s.resetStartTime(e)};s.getQuarterEndDate=function(e){var t=s.getQuarterStartDate(e);t.setMonth(t.getMonth()+3);t.setDate(0);return s.resetStartTime(t)};s.getYearStartDate=function(e){e=e?u(e):u(s.createNewUniversalDate());e.setMonth(0);e.setDate(1);return s.resetStartTime(e)};s.getYearEndDate=function(e){e=e?u(e):u(s.createNewUniversalDate());e.setFullYear(e.getFullYear()+1);e.setMonth(0);e.setDate(0);return s.resetStartTime(e)};s.resetStartTime=function(e){e=e?u(e):u(s.createNewUniversalDate());e.setHours(0,0,0,0);return e};s.resetEndTime=function(e){e=e?u(e):u(s.createNewUniversalDate());e.setHours(23,59,59,999);return e};s.createNewUniversalDate=function(){return new t};s._getDateFromWeekStartByDayOffset=function(a,n){var u=e.getCalendarType(),i=r._getCoreLocale(e.getLanguageTag()),g=s.createNewUniversalDate(),o=g.getWeek(i,a),f=t.getFirstDateOfWeek(u,o.year,o.week,i,a);if(n===undefined){n=0}return new t(f.year,f.month,f.day+n,0,0,0)};s.ranges={lastDays:function(e){return s.getRange(-e,"DAY")},lastMinutes:function(e){return s.getRange(-e,"MINUTE")},lastHours:function(e){return s.getRange(-e,"HOUR")},yesterday:function(){return s.getRange(-1,"DAY")},today:function(){return s.getRange(0,"DAY")},tomorrow:function(){return s.getRange(1,"DAY")},nextMinutes:function(e){return s.getRange(e,"MINUTE")},nextHours:function(e){return s.getRange(e,"HOUR")},nextDays:function(e){return s.getRange(e,"DAY")},lastWeeks:function(e,t){var r;if(t){r=s._getDateFromWeekStartByDayOffset(t);return s.getRange(-e,"WEEK",r,false)}return s.getRange(-e,"WEEK")},lastWeek:function(e){var t;if(e){t=s._getDateFromWeekStartByDayOffset(e);return s.getRange(-1,"WEEK",t,false)}return s.getRange(-1,"WEEK")},currentWeek:function(e){var t;if(e){t=s._getDateFromWeekStartByDayOffset(e);return s.getRange(0,"WEEK",t,false)}return s.getRange(0,"WEEK")},firstDayOfWeek:function(e){var t;if(e){t=s._getDateFromWeekStartByDayOffset(e);return[s.resetStartTime(t),s.resetEndTime(t)]}var r=s.getWeekStartDate();return[r,s.resetEndTime(r)]},lastDayOfWeek:function(e){var t,r;if(e){r=6;t=s._getDateFromWeekStartByDayOffset(e,r);return[t,s.resetEndTime(t)]}var a=s.getWeekLastDate();return[a,s.resetEndTime(a)]},nextWeek:function(e){var t;if(e){t=s._getDateFromWeekStartByDayOffset(e);return s.getRange(1,"WEEK",t,false)}return s.getRange(1,"WEEK")},nextWeeks:function(e,t){var r;if(t){r=s._getDateFromWeekStartByDayOffset(t);return s.getRange(e,"WEEK",r,false)}return s.getRange(e,"WEEK")},lastMonths:function(e){return s.getRange(-e,"MONTH")},lastMonth:function(){return s.getRange(-1,"MONTH")},currentMonth:function(){return s.getRange(0,"MONTH")},firstDayOfMonth:function(){var e=s.getMonthStartDate();return[e,s.resetEndTime(e)]},lastDayOfMonth:function(){var e=s.getMonthEndDate();return[e,s.resetEndTime(e)]},nextMonth:function(){return s.getRange(1,"MONTH")},nextMonths:function(e){return s.getRange(e,"MONTH")},lastQuarters:function(e){return s.getRange(-e,"QUARTER")},lastQuarter:function(){return s.getRange(-1,"QUARTER")},firstDayOfQuarter:function(){var e=s.getQuarterStartDate();return[e,s.resetEndTime(e)]},lastDayOfQuarter:function(){var e=s.getQuarterEndDate();return[e,s.resetEndTime(e)]},currentQuarter:function(){return s.getRange(0,"QUARTER")},nextQuarter:function(){return s.getRange(1,"QUARTER")},nextQuarters:function(e){return s.getRange(e,"QUARTER")},quarter:function(e){if(e<=2){return s.getRange(e-1,"QUARTER",s.getYearStartDate())}else{var t=s.getRange(e-2,"QUARTER",s.getYearStartDate());var r=t[1];r.setMilliseconds(1e3);return s.getRange(0,"QUARTER",r)}},lastYears:function(e){return s.getRange(-e,"YEAR")},lastYear:function(){return s.getRange(-1,"YEAR")},firstDayOfYear:function(){var e=s.getYearStartDate();return[e,s.resetEndTime(e)]},lastDayOfYear:function(){var e=s.getYearEndDate();return[e,s.resetEndTime(e)]},currentYear:function(){return s.getRange(0,"YEAR")},nextYear:function(){return s.getRange(1,"YEAR")},nextYears:function(e){return s.getRange(e,"YEAR")},yearToDate:function(){var e=s.createNewUniversalDate();return[s.getYearStartDate(e),s.resetEndTime(e)]},dateToYear:function(){var e=s.createNewUniversalDate();return[s.resetStartTime(e),s.resetEndTime(s.getYearEndDate(e))]}};return s});
/*
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/date/_Calendars", [],function(){"use strict";var e=new Map;var r={get:function(r){if(!e.has(r)){sap.ui.requireSync("sap/ui/core/date/"+r)}if(e.has(r)){return e.get(r)}throw new TypeError("Load required calendar 'sap/ui/core/date/"+r+"' in advance")},set:function(r,a){e.set(r,a)}};return r});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/delegate/ItemNavigation", ["sap/base/i18n/Localization","sap/ui/base/EventProvider","sap/base/assert","sap/base/Log","sap/ui/events/KeyCodes","sap/ui/thirdparty/jquery","sap/ui/core/Element","sap/ui/dom/jquery/Selectors"],function(e,t,s,i,o,jQuery,a){"use strict";var n=t.extend("sap.ui.core.delegate.ItemNavigation",{constructor:function(e,s,i){t.apply(this);this.oDomRef=null;if(e){this.setRootDomRef(e)}this.aItemDomRefs=[];if(s){this.setItemDomRefs(s)}this.iTabIndex=-1;this.iActiveTabIndex=i?-1:0;this.iFocusedIndex=-1;this.iSelectedIndex=-1;this.bCycling=true;this.bTableMode=false;this.iPageSize=-1;this._bMouseDownHappened=false;this.oDisabledModifiers={sapend:["alt","shift"],saphome:["alt","shift"]}}});n.Events={BeforeFocus:"BeforeFocus",AfterFocus:"AfterFocus",BorderReached:"BorderReached",FocusAgain:"FocusAgain",FocusLeave:"FocusLeave"};n.prototype.setDisabledModifiers=function(e){this.oDisabledModifiers=e;return this};n.prototype.getDisabledModifiers=function(e){return this.oDisabledModifiers};n.prototype.hasDisabledModifier=function(e){var t=this.oDisabledModifiers[e.type.replace("modifiers","")];if(Array.isArray(t)){for(var s=0;s<t.length;s++){if(e[t[s]+"Key"]){return true}}}return false};n.prototype.setRootDomRef=function(e){this.oDomRef=e;if(!jQuery(this.oDomRef).data("sap.INItem")){if(this.iFocusedIndex>=0){jQuery(this.oDomRef).attr("tabindex",this.iTabIndex)}else{jQuery(this.oDomRef).attr("tabindex",this.iActiveTabIndex)}}jQuery(this.oDomRef).data("sap.INRoot",this);return this};n.prototype.getRootDomRef=function(){return this.oDomRef};n.prototype.getItemDomRefs=function(){return this.aItemDomRefs};n.prototype.setItemDomRefs=function(e){s(typeof e==="object"&&typeof e.length==="number","aItemDomRefs must be an array of DOM elements");this.aItemDomRefs=e;if(this.iFocusedIndex>-1){var t=e.length;if(this.iFocusedIndex>t-1){this.iFocusedIndex=t-1}var i=document.activeElement;if(i&&i!=this.aItemDomRefs[this.iFocusedIndex]){for(var o=0;o<t;o++){if(i==this.aItemDomRefs[o]){this.iFocusedIndex=o;break}}}}for(var o=0;o<this.aItemDomRefs.length;o++){if(this.aItemDomRefs[o]){var a=jQuery(this.aItemDomRefs[o]);if(o==this.iFocusedIndex&&!a.data("sap.INRoot")){a.attr("tabindex",this.iActiveTabIndex)}else if(a.attr("tabindex")=="0"){a.attr("tabindex",-1)}a.data("sap.INItem",true);a.data("sap.InNavArea",true);if(a.data("sap.INRoot")&&o!=this.iFocusedIndex){a.data("sap.INRoot").setNestedItemsTabindex()}}}return this};n.prototype.setItemsTabindex=function(){for(var e=0;e<this.aItemDomRefs.length;e++){if(this.aItemDomRefs[e]){var t=jQuery(this.aItemDomRefs[e]);if(t.is(":sapFocusable")){if(e==this.iFocusedIndex&&!t.data("sap.INRoot")){t.attr("tabindex",this.iActiveTabIndex)}else{t.attr("tabindex",-1)}}}}return this};n.prototype.setNestedItemsTabindex=function(){if(jQuery(this.oDomRef).data("sap.INItem")){for(var e=0;e<this.aItemDomRefs.length;e++){if(this.aItemDomRefs[e]&&jQuery(this.aItemDomRefs[e]).attr("tabindex")=="0"){jQuery(this.aItemDomRefs[e]).attr("tabindex",-1)}}}return this};n.prototype.destroy=function(){if(this.oDomRef){jQuery(this.oDomRef).removeData("sap.INRoot");this.oDomRef=null}if(this.aItemDomRefs){for(var e=0;e<this.aItemDomRefs.length;e++){if(this.aItemDomRefs[e]){jQuery(this.aItemDomRefs[e]).removeData("sap.INItem");jQuery(this.aItemDomRefs[e]).removeData("sap.InNavArea")}}this.aItemDomRefs=null}this._bItemTabIndex=undefined;this.iFocusedIndex=-1};n.prototype.setCycling=function(e){this.bCycling=e;return this};n.prototype.setTableMode=function(e,t){this.bTableMode=e;this.bTableList=e?t:false;return this};n.prototype.setPageSize=function(e){this.iPageSize=e;return this};n.prototype.setSelectedIndex=function(e){this.iSelectedIndex=e;return this};n.prototype.setColumns=function(e,t){this.iColumns=e;this.bNoColumnChange=t;return this};n.prototype.setHomeEndColumnMode=function(e,t){this._bStayInRow=e;this._bCtrlEnabled=t;return this};n.prototype.focusItem=function(t,s,a){i.info("FocusItem: "+t+" iFocusedIndex: "+this.iFocusedIndex,"focusItem","ItemNavigation");if(t==this.iFocusedIndex&&this.aItemDomRefs[this.iFocusedIndex]==document.activeElement){this.fireEvent(n.Events.FocusAgain,{index:t,event:s});return}if(!this.aItemDomRefs[t]||!jQuery(this.aItemDomRefs[t]).is(":sapFocusable")){if(this.bTableMode){var h=t%this.iColumns;var f=t;if(s&&s.keyCode==o.ARROW_RIGHT){if(h<this.iColumns-1){t+=e.getRTL()?-1:1}}else if(s&&s.keyCode==o.ARROW_LEFT){if(h>1){t-=e.getRTL()?-1:1}}else{if(h>1){t-=1}}if(t!=f){this.focusItem(t,s)}}return}if(!this.fireEvent(n.Events.BeforeFocus,{index:t,event:s},true)){i.info("Focus prevented on ID: "+this.aItemDomRefs[this.iFocusedIndex].id,"focusItem","ItemNavigation");return}this.setFocusedIndex(t);this.bISetFocus=true;if(s&&jQuery(this.aItemDomRefs[this.iFocusedIndex]).data("sap.INRoot")){var r=jQuery(this.aItemDomRefs[this.iFocusedIndex]).data("sap.INRoot");r._sFocusEvent=s.type}i.info("Set Focus on ID: "+this.aItemDomRefs[this.iFocusedIndex].id,"focusItem","ItemNavigation");this.aItemDomRefs[this.iFocusedIndex].focus({preventScroll:a});this.fireEvent(n.Events.AfterFocus,{index:t,event:s})};n.prototype.setFocusedIndex=function(e){var t;if(this.aItemDomRefs.length<0){this.iFocusedIndex=-1;return this}if(e<0){e=0}if(e>this.aItemDomRefs.length-1){e=this.aItemDomRefs.length-1}jQuery(this.oDomRef).attr("tabindex",this.iTabIndex);if(this.iFocusedIndex!==-1&&this.aItemDomRefs.length>this.iFocusedIndex){jQuery(this.aItemDomRefs[this.iFocusedIndex]).attr("tabindex",-1);t=jQuery(this.aItemDomRefs[this.iFocusedIndex]);if(t.data("sap.INRoot")&&e!=this.iFocusedIndex){jQuery(t.data("sap.INRoot").aItemDomRefs[t.data("sap.INRoot").iFocusedIndex]).attr("tabindex",-1)}}this.iFocusedIndex=e;var s=this.aItemDomRefs[this.iFocusedIndex];t=jQuery(this.aItemDomRefs[this.iFocusedIndex]);if(!t.data("sap.INRoot")){jQuery(s).attr("tabindex",this.iActiveTabIndex)}return this};n.prototype.getFocusedDomRef=function(){return this.aItemDomRefs[this.iFocusedIndex]};n.prototype.getFocusedIndex=function(){return this.iFocusedIndex};n.prototype.onfocusin=function(e){var t=e.target;var s=0;if(t==this.oDomRef){if(!this._bItemTabIndex){this.setItemsTabindex();this._bItemTabIndex=true}if(this._bMouseDownHappened){return}var i;if(jQuery(this.oDomRef).data("sap.INItem")&&this._sFocusEvent&&!jQuery(this.oDomRef).data("sap.InNavArea")){switch(this._sFocusEvent){case"sapnext":i=0;break;case"sapprevious":i=this.aItemDomRefs.length-1;break;default:if(this.iSelectedIndex!=-1){i=this.iSelectedIndex}else if(this.iFocusedIndex!=-1){i=this.iFocusedIndex}else{i=0}break}this._sFocusEvent=undefined}else{if(this.iSelectedIndex!=-1){i=this.iSelectedIndex}else if(this.iFocusedIndex!=-1){i=this.iFocusedIndex}else{i=0}}this.focusItem(i,e);if(this.iFocusedIndex==-1){for(s=i+1;s<this.aItemDomRefs.length;s++){this.focusItem(s,e);if(this.iFocusedIndex==s){break}}if(this.iFocusedIndex==-1&&i>0){for(s=i-1;s>=0;s--){this.focusItem(s,e);if(this.iFocusedIndex==s){break}}}}e.preventDefault();e.stopPropagation()}else if(!this.bISetFocus){if(this.aItemDomRefs&&e.target!=this.aItemDomRefs[this.iFocusedIndex]){for(s=0;s<this.aItemDomRefs.length;s++){if(e.target==this.aItemDomRefs[s]){this.focusItem(s,e);break}}}else{this.fireEvent(n.Events.AfterFocus,{index:this.iFocusedIndex,event:e})}}this.bISetFocus=false};n.prototype.onsapfocusleave=function(e){if(!e.relatedControlId||!this.oDomRef||!this.oDomRef.contains(a.getElementById(e.relatedControlId).getFocusDomRef())){var t;if(this.iSelectedIndex!=-1){t=this.iSelectedIndex}else if(this.iFocusedIndex!=-1){t=this.iFocusedIndex}else{t=0}this.setFocusedIndex(t);var s;if(jQuery(this.oDomRef).data("sap.INItem")){var i;s=jQuery(this.oDomRef);while(!i){s=s.parent();if(s.data("sap.INRoot")){i=s.get(0)}}if(!e.relatedControlId||i.contains(a.getElementById(e.relatedControlId).getFocusDomRef())){jQuery(this.aItemDomRefs[this.iFocusedIndex]).attr("tabindex",-1)}}s=jQuery(this.oDomRef);if(s.data("sap.InNavArea")===false){s.data("sap.InNavArea",true)}this.fireEvent(n.Events.FocusLeave,{index:t,event:e})}};n.prototype.onmousedown=function(e){var t=e.target;var s=function(e,t){var s=false;var i=jQuery(e);while(!i.is(":sapFocusable")&&i.get(0)!=t){i=i.parent()}if(i.get(0)!=t){s=true}return s};if(this.oDomRef&&this.oDomRef.contains(t)){for(var i=0;i<this.aItemDomRefs.length;i++){var o=this.aItemDomRefs[i];if(o&&o.contains(t)){if(!this.bTableMode){this.focusItem(i,e,true)}else{if(o===t||!s(t,o)){this.focusItem(i,e,true)}}return}}if(t==this.oDomRef){this._bMouseDownHappened=true;var a=this;window.setTimeout(function(){a._bMouseDownHappened=false},20)}}};n.prototype.onsapnext=function(e){if(!this.oDomRef||!this.oDomRef.contains(e.target)){return}if(jQuery(this.oDomRef).data("sap.InNavArea")){return}if(this.bTableMode&&this.aItemDomRefs.indexOf(e.target)===-1){return}var t=this.iFocusedIndex,s=true,i=false;if(t>-1){if(this.bTableMode){var a=this.aItemDomRefs.length/this.iColumns,h=Math.floor(t/this.iColumns),f=t%this.iColumns;if(e.keyCode==o.ARROW_DOWN){if(h<a-1){t+=this.iColumns}}else{if(f<this.iColumns-1){t+=1}}}else{do{if(this.iColumns>1&&e.keyCode==o.ARROW_DOWN){if(t+this.iColumns>=this.aItemDomRefs.length){if(!this.bNoColumnChange){if(t%this.iColumns<this.iColumns-1){t=t%this.iColumns+1}else if(this.bCycling){t=0}}else{t=this.iFocusedIndex;i=true}}else{t=t+this.iColumns}}else{if(t==this.aItemDomRefs.length-1){if(jQuery(this.oDomRef).data("sap.INItem")){return}else if(this.bCycling){t=0}else{t=this.iFocusedIndex;i=true}}else{t++}}if(t===this.iFocusedIndex){if(s){s=false}else{throw new Error("ItemNavigation has no visible/existing items and is hence unable to select the next one")}}}while(!this.aItemDomRefs[t]||!jQuery(this.aItemDomRefs[t]).is(":sapFocusable"))}this.focusItem(t,e);if(i){this.fireEvent(n.Events.BorderReached,{index:t,event:e})}e.preventDefault();e.stopPropagation()}};n.prototype.onsapnextmodifiers=function(e){if(this.hasDisabledModifier(e)){return}this.onsapnext(e)};n.prototype.onsapprevious=function(e){if(!this.oDomRef||!this.oDomRef.contains(e.target)){return}if(jQuery(this.oDomRef).data("sap.InNavArea")){return}if(this.bTableMode&&this.aItemDomRefs.indexOf(e.target)===-1){return}var t=this.iFocusedIndex,s=true,i=false;var a=0;if(t>-1){if(this.bTableMode){var h=Math.floor(t/this.iColumns);a=t%this.iColumns;if(e.keyCode==o.ARROW_UP){if(h>0){t-=this.iColumns}}else{if(a>0){t-=1}}}else{do{if(this.iColumns>1&&e.keyCode==o.ARROW_UP){if(t-this.iColumns<0){if(!this.bNoColumnChange){a=0;if(t%this.iColumns>0){a=t%this.iColumns-1}else if(this.bCycling){a=Math.min(this.iColumns-1,this.aItemDomRefs.length-1)}if(t===0&&a===0){t=0}else{var f=Math.ceil(this.aItemDomRefs.length/this.iColumns);t=a+(f-1)*this.iColumns;if(t>=this.aItemDomRefs.length){t=t-this.iColumns}}}else{t=this.iFocusedIndex;i=true}}else{t=t-this.iColumns}}else{if(t==0){if(jQuery(this.oDomRef).data("sap.INItem")){return}else if(this.bCycling){t=this.aItemDomRefs.length-1}else{t=this.iFocusedIndex;i=true}}else{t--}}if(t==this.iFocusedIndex){if(s){s=false}else{throw new Error("ItemNavigation has no visible/existing items and is hence unable to select the previous one")}}}while(!this.aItemDomRefs[t]||!jQuery(this.aItemDomRefs[t]).is(":sapFocusable"))}this.focusItem(t,e);if(i){this.fireEvent(n.Events.BorderReached,{index:t,event:e})}e.preventDefault();e.stopPropagation()}};n.prototype.onsappreviousmodifiers=function(e){if(this.hasDisabledModifier(e)){return}this.onsapprevious(e)};n.prototype.onsappageup=function(e){if(!this.oDomRef||!this.oDomRef.contains(e.target)){return}if(this.bTableMode&&this.aItemDomRefs.indexOf(e.target)===-1){return}var t=0;var s=false;if(this.iPageSize>0){t=this.iFocusedIndex;if(t>-1){t=t-this.iPageSize;while(t>0&&!jQuery(this.aItemDomRefs[t]).is(":sapFocusable")){t--}if(t<0){if(!this.bNoColumnChange){t=0}else{t=this.iFocusedIndex;s=true}}this.focusItem(t,e)}}else if(this.bTableMode){t=this.iFocusedIndex%this.iColumns;this.focusItem(t,e)}if(s){this.fireEvent(n.Events.BorderReached,{index:t,event:e})}e.preventDefault();e.stopPropagation()};n.prototype.onsappagedown=function(e){if(!this.oDomRef||!this.oDomRef.contains(e.target)){return}if(this.bTableMode&&this.aItemDomRefs.indexOf(e.target)===-1){return}var t=0;var s=false;if(this.iPageSize>0){t=this.iFocusedIndex;if(t>-1){t=t+this.iPageSize;while(t<this.aItemDomRefs.length-1&&!jQuery(this.aItemDomRefs[t]).is(":sapFocusable")){t++}if(t>this.aItemDomRefs.length-1){if(!this.bNoColumnChange){t=this.aItemDomRefs.length-1}else{t=this.iFocusedIndex;s=true}}this.focusItem(t,e)}}else if(this.bTableMode){var i=this.aItemDomRefs.length/this.iColumns,o=this.iFocusedIndex%this.iColumns;t=(i-1)*this.iColumns+o;this.focusItem(t,e)}if(s){this.fireEvent(n.Events.BorderReached,{index:t,event:e})}e.preventDefault();e.stopPropagation()};n.prototype.onsaphome=function(e){if(!this.oDomRef||!this.oDomRef.contains(e.target)){return}if(this.bTableMode&&this.aItemDomRefs.indexOf(e.target)===-1){return}var t=0;var s=0;if(this.bTableMode){if(!this.bTableList&&!(e.metaKey||e.ctrlKey)){s=Math.floor(this.iFocusedIndex/this.iColumns);t=s*this.iColumns}}else{if((e.metaKey||e.ctrlKey)&&!this._bCtrlEnabled){return}if(this._bStayInRow&&!(this._bCtrlEnabled&&(e.metaKey||e.ctrlKey))&&this.iColumns>0){s=Math.floor(this.iFocusedIndex/this.iColumns);t=s*this.iColumns}else{while(!this.aItemDomRefs[t]||!jQuery(this.aItemDomRefs[t]).is(":sapFocusable")){t++;if(t==this.aItemDomRefs.length){return}}}}this.focusItem(t,e);e.preventDefault();e.stopPropagation()};n.prototype.onsaphomemodifiers=function(e){if(this.hasDisabledModifier(e)){return}this.onsaphome(e)};n.prototype.onsapend=function(e){if(!this.oDomRef||!this.oDomRef.contains(e.target)){return}if(this.bTableMode&&this.aItemDomRefs.indexOf(e.target)===-1){return}var t=this.aItemDomRefs.length-1;var s=0;if(this.bTableMode){if(!this.bTableList&&!(e.metaKey||e.ctrlKey)){s=Math.floor(this.iFocusedIndex/this.iColumns);t=s*this.iColumns+this.iColumns-1}}else{if((e.metaKey||e.ctrlKey)&&!this._bCtrlEnabled){return}if(this._bStayInRow&&!(this._bCtrlEnabled&&(e.metaKey||e.ctrlKey))&&this.iColumns>0){s=Math.floor(this.iFocusedIndex/this.iColumns);t=(s+1)*this.iColumns-1;if(t>=this.aItemDomRefs.length){t=this.aItemDomRefs.length-1}}else{while(!this.aItemDomRefs[t]||!jQuery(this.aItemDomRefs[t]).is(":sapFocusable")){t--;if(t<0){return}}}}this.focusItem(t,e);e.preventDefault();e.stopPropagation()};n.prototype.onsapendmodifiers=function(e){if(this.hasDisabledModifier(e)){return}this.onsapend(e)};n.prototype.setTabIndex0=function(){this.iTabIndex=0;this.iActiveTabIndex=0};n.prototype.onkeyup=function(e){if(e.keyCode==o.F2){var t=jQuery(this.oDomRef);if(t.data("sap.InNavArea")){t.data("sap.InNavArea",false)}else if(t.data("sap.InNavArea")===false){t.data("sap.InNavArea",true)}e.preventDefault();e.stopPropagation()}};return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/delegate/ScrollEnablement", ["sap/base/i18n/Localization","sap/ui/Device","sap/ui/base/Object","sap/ui/core/IntervalTrigger","sap/ui/core/ResizeHandler","sap/ui/thirdparty/jquery","sap/ui/events/KeyCodes","sap/ui/core/Element"],function(t,i,o,e,s,jQuery,l,r){"use strict";var n=o.extend("sap.ui.core.delegate.ScrollEnablement",{constructor:function(t,i,e){o.apply(this);this._oControl=t;this._oControl.addDelegate(this,e.callBefore);this._sContentId=i;this._sContainerId=e.scrollContainerId;this._bHorizontal=!!e.horizontal;this._bVertical=!!e.vertical;this._scrollX=0;this._scrollY=0;this._scrollCoef=.9;this._iLastMaxScrollTop=0;this._iScrollPaddingTop=0;c(this);if(this._init){this._init.apply(this,arguments)}},setHorizontal:function(t){this._bHorizontal=!!t;this._setOverflow&&this._setOverflow()},setVertical:function(t){this._bVertical=!!t;this._setOverflow&&this._setOverflow()},getHorizontal:function(){return this._bHorizontal},getVertical:function(){return this._bVertical},setBounce:function(t){},setPullDown:function(t){this._oPullDown=t;return this},setGrowingList:function(t,i,o){this._fnScrollLoadCallback=t;this._sScrollLoadDirection=i;this.onOverflowChange(o);return this},onOverflowChange:function(t){this._fnOverflowChangeCallback=t;if(!this._fnOverflowChangeCallback){this._deregisterOverflowMonitor()}},setOnAfterScrollToElement:function(t){this._fnAfterScrollToElement=t},setIconTabBar:function(t,i,o){this._oIconTabBar=t;if(i){this._fnScrollEndCallback=i.bind(t)}if(o){this._fnScrollStartCallback=o.bind(t)}return this},setScrollPaddingTop:function(t){if(typeof t==="number"){this._iScrollPaddingTop=t}},scrollTo:function(t,i,o,e){this._scrollX=t;this._scrollY=i;this._scrollTo(t,i,o,e);return this},getChildPosition:function(t){var i=t instanceof jQuery?t:jQuery(t),o=i.position(),e=i.offsetParent(),s;while(!e.is(this._$Container)&&!e.is("html")&&e.length){s=e.position();o.top+=s.top;o.left+=s.left;e=e.offsetParent()}return o},scrollToElement:function(t,i,o,e){o=o||[0,0];if(!this._$Container[0].contains(t)||t.style.display==="none"||t.offsetParent.nodeName.toUpperCase()==="HTML"){return this}o[1]-=this._iScrollPaddingTop;if(e&&this._isInScrollport(t,o)){return this}var s=jQuery(t),l=this.getChildPosition(s),r=this.getScrollLeft()+l.left+o[0],n=this.getScrollTop()+l.top+o[1];if(this._bFlipX){r=this.getScrollLeft()-(l.left-this._$Container.width())-s.width()}this._scrollTo(r,n,i,this._fnAfterScrollToElement);return this},destroy:function(){if(this._exit){this._exit()}if(this._oControl){this._oControl.removeDelegate(this);this._oControl=undefined}},refresh:function(){if(this._refresh){this._refresh()}},_useDefaultScroll:function(t){return t.isContentEditable},onkeydown:function(i){if(this._useDefaultScroll(i.target)||i.getMark("dnd")){return}var o=this._$Container[0];if(i.altKey&&this.getHorizontal()){switch(i.keyCode){case l.PAGE_UP:this._customScrollTo(this._scrollX-o.clientWidth,this._scrollY,i);break;case l.PAGE_DOWN:this._customScrollTo(this._scrollX+o.clientWidth,this._scrollY,i);break}}if(i.ctrlKey&&!i.altKey){switch(i.keyCode){case l.ARROW_UP:if(this.getVertical()){this._customScrollTo(this._scrollX,this._scrollY-o.clientHeight*this._scrollCoef,i)}break;case l.ARROW_DOWN:if(this.getVertical()){this._customScrollTo(this._scrollX,this._scrollY+o.clientHeight*this._scrollCoef,i)}break;case l.ARROW_LEFT:if(this.getHorizontal()){this._customScrollTo(this._scrollX-o.clientWidth,this._scrollY,i)}break;case l.ARROW_RIGHT:if(this.getHorizontal()){this._customScrollTo(this._scrollX+o.clientWidth,this._scrollY,i)}break;case l.HOME:if(this.getHorizontal()){this._customScrollTo(0,this._scrollY,i)}if(this.getVertical()){this._customScrollTo(this._scrollX,0,i)}break;case l.END:var e=o.scrollWidth-o.clientWidth;var s=o.scrollHeight-o.clientHeight;if(!this.getHorizontal()){s=this._scrollY}if(!this.getVertical()){e=t.getRTL()?o.clientWidth-o.scrollWidth:this._scrollX}this._customScrollTo(e,s,i);break}}},_customScrollTo:function(t,i,o){var e=o.target.nodeName;if(e!="INPUT"&&e!="TEXTAREA"&&!r.closestTo(o.target)?.isA("sap.m.Select")){o.preventDefault();o.setMarked();this._scrollTo(t,i)}}});var h={getScrollTop:function(){return this._scrollY||0},getScrollLeft:function(){return this._scrollX||0},getScrollHeight:function(){var t=this._$Container;return t&&t[0]?t[0].scrollHeight:0},getMaxScrollTop:function(){var t=this._$Container;return t&&t[0]?t[0].scrollHeight-t[0].clientHeight:-1},getContainerDomRef:function(){return this._$Container&&this._$Container[0]},_cleanup:function(){if(this._sResizeListenerId){s.deregister(this._sResizeListenerId);this._sResizeListenerId=null}this._deregisterOverflowMonitor()},_setOverflow:function(){var t=this._$Container;if(!t||!t[0]){return}if(i.os.ios){t.css("overflow-x",this._bHorizontal&&!this._bDragScroll?"scroll":"hidden").css("overflow-y",this._bVertical&&!this._bDragScroll?"scroll":"hidden").css("-webkit-overflow-scrolling","touch")}else{t.css("overflow-x",this._bHorizontal&&!this._bDragScroll?"auto":"hidden").css("overflow-y",this._bVertical&&!this._bDragScroll?"auto":"hidden")}},_refresh:function(){var t=this._$Container;if(!(t&&t.length)){return}if(this._oPullDown&&this._oPullDown._bTouchMode){var i=this._oPullDown.getDomRef();if(i){i.style.marginTop=this._oPullDown._iState==2?"":"-"+i.offsetHeight+"px"}}if(t.scrollTop()!=this._scrollY){t.scrollTop(this._scrollY)}if(!(this._oPullDown&&this._oPullDown._bTouchMode)&&!this._fnScrollLoadCallback){s.deregister(this._sResizeListenerId);this._sResizeListenerId=null}},_onScroll:function(){var t=this._$Container,i=t.scrollTop(),o=i-this._scrollY;this._scrollX=t.scrollLeft();this._scrollY=i;if(this._fnScrollLoadCallback){if(this._sScrollLoadDirection=="Upwards"){if(o<0&&i<10){this._fnScrollLoadCallback()}}else if(o>=0&&t[0].scrollHeight-i-t[0].clientHeight<100){this._fnScrollLoadCallback()}}if(this._oIconTabBar&&this._fnScrollEndCallback){this._fnScrollEndCallback()}},_onStart:function(t){var i=this._$Container[0];if(!i){return}this._bDoDrag=this._bDragScroll;var o=t.touches?t.touches[0]:t;this._iX=o.pageX;this._iY=o.pageY;this._bPullDown=false;this._iDirection=""},_onTouchMove:function(t){var i=this._$Container[0];var o=t.touches?t.touches[0]:t;var e=o.pageX-this._iX;var s=o.pageY-this._iY;if(this._iDirection==""){if(e!=0||s!=0){this._iDirection=Math.abs(s)>Math.abs(e)?"v":"h"}if(this._oPullDown&&this._oPullDown._bTouchMode&&this._iDirection=="v"&&i.scrollTop<=1){if(s>Math.abs(e)){this._bPullDown=true}}}if(this._bPullDown===true){var l=this._oPullDown.getDomRef();var r=t.touches[0].pageY-this._iY-l.offsetHeight;if(r>20){r=20}l.style.marginTop=r+"px";this._oPullDown.doPull(r);t.preventDefault();this._bDoDrag=false}if(this._bDoDrag){var n=i.scrollLeft,h=i.scrollTop;if(this._bHorizontal){if(this._bFlipX){i.scrollLeft=n-this._iX+o.pageX}else{i.scrollLeft=n+this._iX-o.pageX}}if(this._bVertical){i.scrollTop=h+this._iY-o.pageY}if(i.scrollLeft!=n||i.scrollTop!=h){t.setMarked&&t.setMarked();t.preventDefault()}this._iX=o.pageX;this._iY=o.pageY;return}},_onEnd:function(t){if(this._oPullDown&&this._oPullDown._bTouchMode){this._oPullDown.doScrollEnd();this._refresh()}if(this._bDragScroll&&this._iDirection){t.setMarked&&t.setMarked()}},_onMouseDown:function(t){if(this._bDragScroll&&t.button==0){this._bScrolling=true;this._onStart(t)}},_onMouseMove:function(t){if(this._bScrolling){var i=t.originalEvent||t;var o=i.buttons||i.which;if(o==1||t.pressure){var e=this._$Container[0];if(this._bHorizontal){if(this._bFlipX){e.scrollLeft=e.scrollLeft-this._iX+t.pageX}else{e.scrollLeft=e.scrollLeft+this._iX-t.pageX}}if(this._bVertical){e.scrollTop=e.scrollTop+this._iY-t.pageY}this._iX=t.pageX;this._iY=t.pageY}}},_onMouseUp:function(){if(this._bScrolling){this._bScrolling=false;this._onEnd()}},onBeforeRendering:function(){if(this._sResizeListenerId){s.deregister(this._sResizeListenerId);this._sResizeListenerId=null}this._deregisterOverflowMonitor();var t=this._$Container;if(t){if(t.height()>0){this._scrollX=t.scrollLeft();this._scrollY=t.scrollTop()}t.off()}},_checkOverflowChange:function(t){var i=this.getMaxScrollTop(),o=i>0&&this._iLastMaxScrollTop===0,e=i===0&&this._iLastMaxScrollTop>0,s=o||e;if(s){this._fnOverflowChangeCallback(o,i)}this._iLastMaxScrollTop=i},_registerOverflowMonitor:function(){this._fnOverflowChangeCallback&&e.addListener(this._checkOverflowChange,this)},_deregisterOverflowMonitor:function(){e.removeListener(this._checkOverflowChange,this)},onAfterRendering:function(){var t=this._$Container=this._sContainerId?jQuery(document.getElementById(this._sContainerId)):jQuery(document.getElementById(this._sContentId)).parent();var o=this._refresh;var e=t.is(":visible");t.addClass("sapUiScrollDelegate");this._setOverflow();if(this._scrollX!==0||this._scrollY!==0){this._scrollTo(this._scrollX,this._scrollY)}this._refresh();if(!e||this._oPullDown||this._fnScrollLoadCallback){this._sResizeListenerId=s.register(t[0],o.bind(this))}if(this._fnOverflowChangeCallback){this._iOverflowTimer&&window.cancelAnimationFrame(this._iOverflowTimer);this._iOverflowTimer=window.requestAnimationFrame(this._registerOverflowMonitor.bind(this))}t.on("scroll",this._onScroll.bind(this));var l=t[0];function r(t,i){t.split(" ").forEach(function(t){l&&l.addEventListener(t,i)})}function n(t){return t.pointerType=="touch"?this._onStart(t):this._onMouseDown(t)}function h(t){return t.pointerType=="touch"?this._onTouchMove(t):this._onMouseMove(t)}function c(t){return t.pointerType=="touch"?this._onEnd(t):this._onMouseUp(t)}if(i.support.pointer&&i.system.desktop){if(this._bDragScroll){r("pointerdown",n.bind(this));r("pointermove",h.bind(this));r("pointerup pointercancel pointerleave",c.bind(this))}}else if(i.support.touch){if(this._bDragScroll||this._oPullDown&&this._oPullDown._bTouchMode){t.on("touchcancel touchend",this._onEnd.bind(this)).on("touchstart",this._onStart.bind(this)).on("touchmove",this._onTouchMove.bind(this))}}else if(this._bDragScroll){t.on("mouseup mouseleave",this._onMouseUp.bind(this)).on("mousedown",this._onMouseDown.bind(this)).on("mousemove",this._onMouseMove.bind(this))}},_readActualScrollPosition:function(){if(this._$Container.width()>0){this._scrollX=this._$Container.scrollLeft()}if(this._$Container.height()>0){this._scrollY=this._$Container.scrollTop()}},_scrollTo:function(t,i,o,e){if(this._$Container.length>0){if(o>0){this._$Container.finish().animate({scrollTop:i,scrollLeft:t},{duration:o,complete:this._readActualScrollPosition.bind(this),always:e})}else{this._$Container.scrollTop(i);this._$Container.scrollLeft(t);this._readActualScrollPosition();e&&e()}}},_isInScrollport:function(t,i){var o=t.getBoundingClientRect(),e=this._$Container[0].getBoundingClientRect(),s=e.top-i[1];return Math.ceil(o.top)>=Math.floor(s)&&Math.floor(o.bottom)<=Math.ceil(e.bottom)}};function c(i){var o={_init:function(i,o,e){if(jQuery.event&&jQuery.event.special&&jQuery.event.special.swipe&&jQuery.event.special.swipe.scrollSupressionThreshold<120){jQuery.event.special.swipe.scrollSupressionThreshold=120}Object.assign(this,h);if(e.nonTouchScrolling===true){this._bDragScroll=true}if(t.getRTL()){this._scrollX=9999}},_exit:function(){if(this._cleanup){this._cleanup()}}};Object.assign(i,o)}return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/dnd/DragAndDrop", ["../library","sap/base/i18n/Localization","sap/ui/Device","sap/ui/core/Element","sap/ui/core/StaticArea","../UIArea","sap/ui/thirdparty/jquery"],function(e,t,r,n,o,i,jQuery){"use strict";var a=e.dnd.RelativeDropPosition;var f={},s=null,g=null,u=null,l=[],c=[],d=null,p,D,h,v,m={},w,b,A,C;function E(e,t){if(!e){return}if(e.addStyleClass){e.addStyleClass(t)}else{e.$().addClass(t)}}function y(e,t){if(!e){return}if(e.removeStyleClass){e.removeStyleClass(t)}else{e.$().removeClass(t)}}function T(e,t){var r=n.closestTo(e.target,true);if(!r){return}var o=new jQuery.Event(null,e);o.type=t;r.getUIArea()._handleEvent(o)}function x(e,t,r,n=true){const o=new Event(e);if(r){o.dataTransfer=r}const i=new jQuery.Event(o);i.setMark("simulated",n);t.$().trigger(i);return i}function S(e,t){let r=[];const n=e.getParent();const o=n.getMetadata();const i=e.sParentAggregationName;const a=o.getAllAggregations();if(a[i]){r=n[a[i]._sGetter]()}else{const e=o.getAllPrivateAggregations();if(e[i]){r=n.getAggregation(i)}}const f=r.indexOf(e);if(t=="next"){return r.slice(f+1).find(e=>e.getDomRef())}return r.slice(0,f).findLast(e=>e.getDomRef())}function k(e){if(e.isMarked()||!(e.ctrlKey||e.metaKey)||!e.code?.startsWith("Arrow")){return}const t=e.target;const r=t.hasAttribute("data-sap-ui-draghandle")?n.closestTo(t,true):n.getElementById(t.id);if(!r){return}const o=n.getElementById(r.$().closest("[data-sap-ui-draggable]").attr("id"));const i=o?.getParent();const a=o?.sParentAggregationName;if(!i||!a){return}const f=[];const s=[];i.getDragDropConfig().forEach(e=>{if(!e.getKeyboardHandling()){return}if(e.isA("sap.ui.core.dnd.IDropInfo")&&e.getTargetAggregation()==a&&e.getDropPosition()=="Between"){f.push(e)}if(e.isA("sap.ui.core.dnd.IDragInfo")&&e.getSourceAggregation()==a){s.push(e.getGroupName())}});const g=f.find(e=>s.includes(e.getGroupName()));if(!g){return}return{oDragControl:o,oDropConfig:g}}function I(e){return!e.disabled&&/^(input|textarea)$/.test(e.localName)}function N(e,t){if(!e||!e.getDragGhost){return}var r=e.getDragGhost();if(!r){return}if(!D){D=jQuery('<div class="sapUiDnDGhostContainer"></div>');jQuery(document.body).append(D)}D.append(r);window.setTimeout(function(){D.empty()},0);var n=t.originalEvent;n.dataTransfer.setDragImage(r,n.offsetX,n.offsetY)}function R(e){var t={},r,n=e.originalEvent.dataTransfer,o=function(e,t){n.setData(e,t)};return{setData:function(e,r){r=""+r;t[e]=r;o(e,r)},getData:function(e){return t[e]},setTextData:function(e){e=""+e;t["text/plain"]=e;t["text"]=e;o("text/plain",e);o("text",e)},getTextData:function(){return t["text/plain"]},setComplexData:function(e,r){t[e]=r},getComplexData:function(e){return t[e]},getIndicator:function(){return p&&p[0]},setIndicatorConfig:function(e){r=e},getIndicatorConfig:function(){return r},getDragControl:function(){return s},getDropControl:function(){return u},setDropControl:function(e){u=e},getDropInfo:function(){return c[0]||null},getDropPosition:function(){return h}}}function B(){O();s=g=u=d=null;h="";C=false;l=[];c=[]}function M(){if(p){return p}p=jQuery("<div class='sapUiDnDIndicator'></div>");jQuery(o.getDomRef()).append(p);return p}function O(){if(p){p.removeAttr("style");p.hide();m={}}}function P(e,r,n,o,i){if(!r){return}const f=e.getMark("simulated");if(f){if(f=="prev"){return a.Before}if(f=="next"){return a.After}}var s=u.getDropAreaRect?u.getDropAreaRect(o):r.getBoundingClientRect(),g=e.dragSession&&e.dragSession.getIndicatorConfig(),l=window.scrollY,c=window.scrollX,d=M(),p,D={},h={top:s.top+l,bottom:s.bottom+l,left:s.left+c,right:s.right+c,width:s.width,height:s.height};if(!n||n=="On"){p=a.On;o=""}else if(o=="Horizontal"){var v=e.pageX-h.left;D.height=h.height;D.top=h.top;if(n=="Between"){D.width="";if(v<h.width*.5){p=a.Before;D.left=h.left}else{p=a.After;D.left=h.right}}else if(n=="OnOrBetween"){if(v<h.width*.25){p=a.Before;D.left=h.left;D.width=""}else if(v>h.width*.75){p=a.After;D.left=h.right;D.width=""}else{p=a.On}}if(p!=a.On&&t.getRTL()){p=p==a.After?a.Before:a.After}}else{var w=e.pageY-h.top;D.width=h.width;D.left=h.left;if(n=="Between"){D.height="";if(w<h.height*.5){p=a.Before;D.top=h.top}else{p=a.After;D.top=h.bottom}}else if(n=="OnOrBetween"){if(w<h.height*.25){p=a.Before;D.top=h.top;D.height=""}else if(w>h.height*.75){p=a.After;D.top=h.bottom;D.height=""}else{p=a.On}}}if(i||g?.display=="none"){return p}if(p==a.On){D.top=h.top;D.left=h.left;D.width=h.width;D.height=h.height;n=p}else{n="Between"}if(m.top!=D.top||m.left!=D.left||m.width!=D.width||m.height!=D.height){d.attr("data-drop-layout",o);d.attr("data-drop-position",n);d.css(Object.assign(D,g));d.show();m=D}return p}function U(e){var t=e.getParent(),r=e.getDragDropConfig?e.getDragDropConfig():[],n=t&&t.getDragDropConfig?t.getDragDropConfig():[];return r.concat(n)}function L(e){var t=U(e);return t.filter(function(t){return t.isDraggable(e)})}function G(e,t,r){var n=U(e);t=t||[];return n.filter(function(e){return!e.isA("sap.ui.core.dnd.IDragInfo")}).concat(t).filter(function(n){if(!n.isDroppable(e,r)){return false}var o=n.getGroupName();if(!o){return true}return t.some(function(e){return e.getGroupName()==o})})}function W(e,t){e.preventDefault();if(s){var r=t.getDropEffect().toLowerCase();e.originalEvent.dataTransfer.dropEffect=r}}function $(e,t,r,n){var o=t.getTargetAggregation();if(!o){return P(e,r.getDomRef(),undefined,undefined,n)}var i;if(e.getMark("DragWithin")==o){i=r.getDomRefForSetting(o)}i=i||r.getDomRef();return P(e,i,t.getDropPosition(true),t.getDropLayout(true),n)}f.preprocessEvent=function(e){if(d&&e.type.indexOf("dr")==0){e.dragSession=d;if(A){A=clearTimeout(A)}}var t="onbefore"+e.type;if(f[t]){f[t](e)}};f.postprocessEvent=function(e){var t="onafter"+e.type;if(f[t]){f[t](e)}};f.onbeforekeydown=function(e){if(k(e)){e.setMark("dnd")}};f.onafterkeydown=function(e){if(!e.getMark("dnd")){return}let r,n;const{oDragControl:o,oDropConfig:i}=k(e);const a=i.getDropLayout(true);if(a=="Horizontal"&&(e.code=="ArrowRight"||e.code=="ArrowLeft")){const i=t.getRTL()?"prev":"next";const a=t.getRTL()?"next":"prev";r=e.code=="ArrowRight"?i:a;n=S(o,r);e.preventDefault()}if(a=="Vertical"&&(e.code=="ArrowDown"||e.code=="ArrowUp")){r=e.code=="ArrowDown"?"next":"prev";n=S(o,r);e.preventDefault()}if(!n){return}const f=new DataTransfer;const s=x("dragstart",o,f,r);if(s.isDefaultPrevented()||s.isMarked("NonDraggable")){return}const g=x("dragenter",n,f,r);if(!g.isMarked("NonDroppable")){x("drop",n,f,r)}x("dragend",o,f,r)};f.onbeforemousedown=function(e){if(r.browser.firefox&&I(e.target)){w=jQuery(e.target).closest("[data-sap-ui-draggable=true]").prop("draggable",false)[0]}};f.onbeforemouseup=function(e){if(w){w.draggable=true;w=null}};f.onbeforedragstart=function(e){if(!e.target.draggable){return}if(I(document.activeElement)){e.target.getAttribute("data-sap-ui-draggable")&&e.preventDefault();return}s=n.closestTo(e.target,true);if(!s){return}l=L(s);if(!l.length){return}if(!r.system.desktop&&!e.originalEvent.dataTransfer.getData("text")){e.originalEvent.dataTransfer.setData("text"," ")}e.dragSession=d=R(e)};f.onafterdragstart=function(e){if(!l.length||e.isDefaultPrevented()){B();return}l=e.isMarked("NonDraggable")?[]:l.filter(function(t){return t.fireDragStart(e)});if(!l.length){e.preventDefault();B();return}if(e.simulated){return}N(s,e);E(s,"sapUiDnDDragging");if(jQuery(e.target).closest(".sapUiScrollDelegate")[0]){jQuery("html").addClass("sapUiDnDNoScrolling")}};f.onbeforedragenter=function(e){var t=n.closestTo(e.target,true);if(t&&g===t){e.setMark("DragWithin","SameControl")}else{v=Date.now();g=t}var r=[],o;u=t;for(var i=0;i<20&&u;i++){r=G(u,l,e);if(r.length){break}o=u.getDomRef();o=o&&o.parentElement;u=n.closestTo(o,true)}if(e.getMark("DragWithin")!="SameControl"){c=r;if(d){d.setIndicatorConfig(null)}}if(!c.length){u=null}else if(!d){C=true;e.dragSession=d=R(e)}};f.onafterdragenter=function(e){if(!u||e.isMarked("NonDroppable")){c=[]}else if(e.getMark("DragWithin")!="SameControl"){c=c.filter(function(t){h=$(e,t,u,true);return t.fireDragEnter(e)})}var t=c[0];if(!t||t.getDropEffect()=="None"){O();h=""}else{W(e,t);h=$(e,t,u)}};f.onbeforedragover=function(e){var t=Date.now();if(t-v>=1e3){T(e,"longdragover");v=t}};f.onafterdragover=function(e){if(!u||e.isMarked("NonDroppable")){c=[]}else{c=c.filter(function(t){h=$(e,t,u,true);return t.fireDragOver(e)})}const t=c[0];if(!t||t.getDropEffect()=="None"){O();h=""}else{W(e,t);if(t&&t.getDropPosition(true)=="On"){return}h=$(e,t,u)}};f.onafterdragleave=function(e){if(C){if(r.browser.safari){A=setTimeout(B,100)}else if(!e.relatedTarget){B()}}};f.onbeforedrop=function(e){if(c.length){e.preventDefault()}};f.onafterdrop=function(e){c.forEach(function(t){t.fireDrop(e)});b=requestAnimationFrame(this.onafterdragend.bind(this,e))};f.onafterdragend=function(e){b=cancelAnimationFrame(b);l.forEach(function(t){t.fireDragEnd(e)});y(s,"sapUiDnDDragging");jQuery("html").removeClass("sapUiDnDNoScrolling");B()};i.addEventPreprocessor(f.preprocessEvent);i.addEventPostprocessor(f.postprocessEvent);return f},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/dnd/DragDropBase", ["sap/base/Log","../Element","../library","./DragAndDrop"],function(e,t){"use strict";var a=t.extend("sap.ui.core.dnd.DragDropBase",{metadata:{abstract:true,library:"sap.ui.core",properties:{groupName:{type:"string",defaultValue:null,invalidate:false},enabled:{type:"boolean",defaultValue:true,invalidate:false},keyboardHandling:{type:"boolean",defaultValue:false,invalidate:false}}}});a.prototype.bIgnoreMetadataCheck=false;a.prototype.isDraggable=function(e){return false};a.prototype.isDroppable=function(e,t){return false};a.prototype.checkMetadata=function(t,a,r){if(this.bIgnoreMetadataCheck){return true}var n=t.getMetadata().getDragDropInfo(a);if(!n[r]){e.warning((a?a+" aggregation of ":"")+t+" is not configured to be "+r);return false}return true};a.prototype.setProperty=function(e,a,r){r=r==undefined?(this.getMetadata().getProperty(e).appData||{}).invalidate===false:r;return t.prototype.setProperty.call(this,e,a,r)};return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/dnd/DragDropInfo", ["sap/ui/core/Element","./DragInfo","./DropInfo","sap/base/Log"],function(e,t,r,a){"use strict";var n=r.extend("sap.ui.core.dnd.DragDropInfo",{metadata:{library:"sap.ui.core",interfaces:["sap.ui.core.dnd.IDragInfo","sap.ui.core.dnd.IDropInfo"],properties:{sourceAggregation:{type:"string",defaultValue:null}},associations:{targetElement:{type:"sap.ui.core.Element",multiple:false}},events:{dragStart:{allowPreventDefault:true},dragEnd:{}}}});t.Mixin.apply(n.prototype);n.prototype.getDropTarget=function(){var t=this.getTargetElement();if(t){return e.getElementById(t)}return this.getParent()};n.prototype.setGroupName=function(){a.error("groupName property must not be set on "+this);return this};return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/dnd/DragInfo", ["./DragDropBase"],function(t){"use strict";var e=t.extend("sap.ui.core.dnd.DragInfo",{metadata:{library:"sap.ui.core",interfaces:["sap.ui.core.dnd.IDragInfo"],properties:{sourceAggregation:{type:"string",defaultValue:null}},events:{dragStart:{allowPreventDefault:true},dragEnd:{}}}});e.Mixin=function(){this.isDraggable=function(t){if(!this.getEnabled()){return false}var e=this.getParent();if(!e){return false}var r=this.getSourceAggregation();if(!this.checkMetadata(e,r,"draggable")){return false}if(e===t&&!r||t.getParent()===e&&r===t.sParentAggregationName){return t.isDragAllowed&&!t.isDragAllowed(this)?false:true}return false};this.fireDragStart=function(t){if(!t||!t.dragSession){return}var e=t.dragSession;return this.fireEvent("dragStart",{dragSession:e,browserEvent:t.originalEvent,target:e.getDragControl()},true)};this.fireDragEnd=function(t){if(!t||!t.dragSession){return}var e=t.dragSession;return this.fireEvent("dragEnd",{dragSession:e,browserEvent:t.originalEvent,target:e.getDragControl()})};this.setEnabled=function(t){this.setProperty("enabled",t,false);this.invalidateDraggables();return this};this.setParent=function(){t.prototype.setParent.apply(this,arguments);this.invalidateDraggables();return this};this.setSourceAggregation=function(t){var e=this.getSourceAggregation();if(e==t){return this}e&&this.invalidateDraggables();this.setProperty("sourceAggregation",t,false);this.invalidateDraggables();return this};this.invalidateDraggables=function(){var t=this.getParent();if(t&&t.bOutput==true){var e=this.getSourceAggregation();if(e){[].concat(t.getAggregation(e)).forEach(function(t){if(t&&t.bOutput==true){t.invalidate()}})}else{t.invalidate()}}}};e.Mixin.apply(e.prototype);return e});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/dnd/DropInfo", ["./DragDropBase"],function(r){"use strict";var t=r.extend("sap.ui.core.dnd.DropInfo",{metadata:{library:"sap.ui.core",interfaces:["sap.ui.core.dnd.IDropInfo"],properties:{targetAggregation:{type:"string",defaultValue:null,invalidate:false},dropEffect:{type:"sap.ui.core.dnd.DropEffect",defaultValue:"Move",invalidate:false},dropPosition:{type:"sap.ui.core.dnd.DropPosition",defaultValue:"On",invalidate:false},dropLayout:{type:"sap.ui.core.dnd.DropLayout",defaultValue:"Default",invalidate:false}},events:{dragEnter:{allowPreventDefault:true},dragOver:{allowPreventDefault:true},drop:{}}}});t.prototype.getDropTarget=function(){return this.getParent()};t.prototype.isDroppable=function(r,t){this.sTemporaryDropPosition="";if(!this.getEnabled()){return false}var e=this.getDropTarget();if(!e){return false}var o=this.getTargetAggregation();if(!this.checkMetadata(e,o,"droppable")){return false}var o=this.getTargetAggregation();if(e===r&&!o){return true}if(r.getParent()===e&&o===r.sParentAggregationName){return true}if(t&&o&&e===r){var i=r.getDomRefForSetting(o);if(i&&i!=t.target&&i.contains(t.target)){t.setMark("DragWithin",o);this.sTemporaryDropPosition="On";return true}}return false};t.prototype.getDropPosition=function(r){if(r&&this.sTemporaryDropPosition){return this.sTemporaryDropPosition}return this.getProperty("dropPosition")};t.prototype.getDropLayout=function(r){var t=this.getProperty("dropLayout");if(!r||t!="Default"){return t}return this.getDropTarget().getMetadata().getDragDropInfo(this.getTargetAggregation()).layout};t.prototype.fireDragEnter=function(r){if(!r||!r.dragSession){return}var t=r.dragSession;return this.fireEvent("dragEnter",{dragSession:r.dragSession,browserEvent:r.originalEvent,target:t.getDropControl(),dropPosition:t.getDropPosition()},true)};t.prototype.fireDragOver=function(r){if(!r||!r.dragSession){return}var t=r.dragSession;return this.fireEvent("dragOver",{dragSession:r.dragSession,browserEvent:r.originalEvent,target:t.getDropControl(),dropPosition:t.getDropPosition()},true)};t.prototype.fireDrop=function(r){if(!r||!r.dragSession){return}var t=r.dragSession;this.fireEvent("drop",{dragSession:r.dragSession,browserEvent:r.originalEvent,dropPosition:t.getDropPosition(),draggedControl:t.getDragControl(),droppedControl:t.getDropControl()})};return t});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/fieldhelp/FieldHelp", ["sap/base/Log","sap/ui/base/BindingInfo","sap/ui/base/ManagedObject","sap/ui/core/Element","sap/ui/core/ElementRegistry","sap/ui/core/LabelEnablement"],function(e,t,o,n,s,i){"use strict";const a="sap/ui/core/fieldhelp/FieldHelp";const r="com.sap.vocabularies.Common.v1.DocumentationRef";let l;const c="urn:sap-com:documentation:key?=";function p(e,t){if(e.size!==t.size){return false}for(const o of e){if(!t.has(o)){return false}}return true}function d(e){if(e){l._updateProperty(this,e)}else{l._updateElement(this)}}class u{#e=false;#t=null;mDocuRefControlToFieldHelp={};#o=false;#n=new Map;#s=new Map;static#i={getDocumentationRef(e){return this.oMetaModel.getObject("@"+r,this.oMetaModel.getMetaContext(e))},getProperties(e){return Object.keys(e).filter(t=>e[t].$kind==="Property")},getTextPropertyPath(e,t){return this.oMetaModel.getObject(`/${e}/${t}@com.sap.vocabularies.Common.v1.Text/$Path`)},getTypeQName(e){return this.oMetaModel.getObject(this.oMetaModel.getMetaPath(e)+"/$Type")},async requestTypes(){const e=new Map;const t=new Map;const o=await this.oMetaModel.requestObject("/$");Object.entries(o).forEach(([o,n])=>{if(n.$kind==="EntityType"){e.set(o,n)}else if(n.$kind==="ComplexType"){t.set(o,n)}});return[e,t]}};static#a={getDocumentationRef(e){return this.oMetaModel.getObject("",this.oMetaModel.getMetaContext(e))[r]?.String},getProperties(e){return e.property?.map(e=>e.name)??[]},getTextPropertyPath(e,t,o,n,s){const i=s?"complexType":"entityType";return this.oMetaModel.getObject(`/dataServices/schema/0/${i}/${o}/property/${n}`+"/com.sap.vocabularies.Common.v1.Text")?.Path},getTypeQName(e){let t;try{t=this.oMetaModel.getMetaContext(e)}catch(t){const o=new Error(`Failed to determine type QName for path '${e}'`);o.cause=t;throw o}const o=this.oMetaModel.getObject("",t);if(o.namespace){return`${o.namespace}.${o.name}`}return o.type},async requestTypes(){await this.oMetaModel.loaded();const e=this.oMetaModel.getObject("/dataServices/schema/0");const t=e=>new Map(e?.map(e=>[`${e.namespace}.${e.name}`,e])??[]);return[t(e.entityType),t(e.complexType)]}};static _getMetamodelInterface(e){if(!e){return undefined}let t;if(e.isA("sap.ui.model.odata.v4.ODataModel")){t=Object.create(u.#i)}else if(e.isA("sap.ui.model.odata.v2.ODataModel")){t=Object.create(u.#a)}else{return undefined}t.oMetaModel=e.getMetaModel();return t}async _requestIDPropertyPath(e,t){const o=await this._requestText2IdByType(e);const[n,...s]=t.slice(1).split("/");const i=[n];while(s.length){const t="/"+i.join("/");const n=e.getTypeQName(t);const a=s.join("/");const r=o.get(a)?.get(n);if(r){return t+"/"+r}i.push(s.shift())}return t}_requestText2IdByType(e){const t=e.oMetaModel;if(this.#n.has(t)){return this.#n.get(t)}const o=e.requestTypes().then(([o,n])=>{const s=this.#s.get(t);const i=s?.text2IdByType??new Map;const a=s?.visitedTypes??new Set;const r=new Map([...o,...n]);const l=o.size;let c=0;for(const[t,o]of r){const n=c>=l;const s=n?c-l:c;c+=1;if(a.has(t)){continue}a.add(t);e.getProperties(o).forEach((o,a)=>{const r=e.getTextPropertyPath(t,o,s,a,n);if(!r){return}const l=i.get(r)??i.set(r,new Map).get(r);l.set(t,o)})}this.#s.set(t,{text2IdByType:i,visitedTypes:a});return i});this.#n.set(e.oMetaModel,o);return o}async _requestDocumentationRef(t){if(t.isDestroyed()){return undefined}let o=t.getResolvedPath();if(!o||o.includes("#")||o.includes("@")){return undefined}const n=u._getMetamodelInterface(t.getModel());if(!n){return undefined}let s;try{const e=await this._requestIDPropertyPath(n,o);o=e;s=n.getDocumentationRef(e)}catch(t){e.error(`Failed to request '${r}' annotation for path '${o}'`,t,a)}return s}_getFieldHelpDisplayMapping(){const e={};for(const o in this.mDocuRefControlToFieldHelp){const s=n.getElementById(o);if(!s){delete this.mDocuRefControlToFieldHelp[o];continue}let i;let a=s;do{i=a.getAssociation("fieldHelpDisplay")||a[t.OriginalParent]?.getId();a=a.getParent()}while(!i&&a);if(i){e[o]=i}}return e}_getDisplayControlIDToURNs(){const t=this._getFieldHelpDisplayMapping();const o=new Map;const n=new Map;const s=new Map;for(const i in this.mDocuRefControlToFieldHelp){const r=t[i]||i;const l=this.mDocuRefControlToFieldHelp[i][undefined];if(l){const s=new Set(l);if(t[i]){const t=o.get(r);if(t&&!p(s,t)){e.error("Cannot display field help for control '"+i+"': different field help already set on hotspot '"+r+"'",undefined,a);continue}o.set(r,s)}else{n.set(r,s)}}else{const e=Object.values(this.mDocuRefControlToFieldHelp[i]).flat();const t=s.get(r)??new Set;e.forEach(t.add.bind(t));s.set(r,t)}}return new Map([...s,...o,...n])}_getFieldHelpHotspots(){const t=[];for(const[o,s]of this._getDisplayControlIDToURNs()){const r=n.getElementById(o);const l=i._getLabelTexts(r)[0];if(!l){e.error(`Cannot find a label for control '${o}'; ignoring field help`,Array.from(s).join(),a);continue}for(const e of s){const n=new URLSearchParams(e.slice(c.length));const s=n.get("origin");t.push({backendHelpKey:{id:n.get("id"),type:n.get("type"),...s&&{origin:s}},hotspotId:o,labelText:l})}}return t}_setFieldHelpDocumentationRefs(e,t,o){const n=e.getId();this.mDocuRefControlToFieldHelp[n]||={};if(o.length>0){this.mDocuRefControlToFieldHelp[n][t]=o}else{delete this.mDocuRefControlToFieldHelp[n][t];if(Object.keys(this.mDocuRefControlToFieldHelp[n]).length===0){delete this.mDocuRefControlToFieldHelp[n]}}this._updateHotspots()}_updateElement(e,t){if(e.isDestroyed()||e.isDestroyStarted()){t=[]}else{t||=e.data("sap-ui-DocumentationRef")||[]}this._setFieldHelpDocumentationRefs(e,undefined,t)}_updateHotspots(){if(this.#o){return}this.#o=true;setTimeout(()=>{if(this.isActive()){this.#t(this._getFieldHelpHotspots());this.#n.clear()}this.#o=false},0)}_updateProperty(e,t){if(e.getMetadata().getProperty(t)?.group!=="Data"){return}const o=e.getBinding(t);if(!o){return}let n;if(o.isA("sap.ui.model.CompositeBinding")){const e=o.getType()?.getPartsIgnoringMessages()||[];n=o.getBindings().filter((t,o)=>!e.includes(o))}else{n=[o]}Promise.all(n.map(e=>this._requestDocumentationRef(e))).then(o=>{o=o.filter(e=>e);this._setFieldHelpDocumentationRefs(e,t,o)})}static getInstance(){l||=new u;return l}activate(e){if(this.#e){if(this.#t!==e){throw new Error("The field help is active for a different update hotspots callback handler")}return}this.#e=true;this.#t=e;s.forEach(e=>{const t=e.data("sap-ui-DocumentationRef");if(t){this._updateElement(e,t)}else{Object.keys(e.getMetadata().getAllProperties()).forEach(t=>{this._updateProperty(e,t)})}});o.prototype.updateFieldHelp=d}deactivate(){this.#e=false;this.mDocuRefControlToFieldHelp={};this.#t=null;this.#n.clear();this.#s.clear();o.prototype.updateFieldHelp=undefined}isActive(){return this.#e}}return u});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/fieldhelp/FieldHelpCustomData", ["sap/ui/core/CustomData"],function(t){"use strict";const e=t.extend("sap.ui.core.fieldhelp.FieldHelpCustomData",{metadata:{library:"sap.ui.core"}});e.DOCUMENTATION_REF_KEY="sap-ui-DocumentationRef";function o(t){const o=t.getParent();if(o&&t.getKey()===e.DOCUMENTATION_REF_KEY&&Array.isArray(t.getValue())){o.updateFieldHelp?.()}}e.prototype.init=function(){this.setKey(e.DOCUMENTATION_REF_KEY)};e.prototype.setParent=function(e){const p=t.prototype.setParent.apply(this,arguments);o(this);return p};e.prototype.destroy=function(){const o=this.getParent();const p=t.prototype.destroy.apply(this,arguments);if(o&&this.getKey()===e.DOCUMENTATION_REF_KEY){o.updateFieldHelp?.()}return p};e.prototype.setKey=function(o){if(o!==e.DOCUMENTATION_REF_KEY){throw new Error(`Unsupported key "${o}" for sap.ui.core.fieldhelp.FieldHelpCustomData`)}return t.prototype.setKey.apply(this,arguments)};e.prototype.setValue=function(e){const p=t.prototype.setValue.apply(this,arguments);o(this);return p};return e});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/fieldhelp/FieldHelpUtil", ["sap/ui/core/fieldhelp/FieldHelpCustomData"],function(t){"use strict";class e{static setDocumentationRef(e,s){const a=Array.isArray(s)?s:[s];const o=t.DOCUMENTATION_REF_KEY;const n=e.getCustomData().find(t=>t.getKey()===o);if(n){if(!(n instanceof t)){throw new Error(`Unsupported custom data type for key "${o}"`)}n.setValue(a)}else{const s=new t({key:t.DOCUMENTATION_REF_KEY,value:a});e.addAggregation("customData",s,true)}}}return e});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/format/DateFormat", ["sap/base/Log","sap/base/i18n/Formatting","sap/base/i18n/Localization","sap/base/i18n/date/CalendarType","sap/base/i18n/date/CalendarWeekNumbering","sap/base/i18n/date/TimezoneUtils","sap/base/strings/formatMessage","sap/base/util/deepEqual","sap/base/util/extend","sap/ui/core/Lib","sap/ui/core/Locale","sap/ui/core/LocaleData","sap/ui/core/Supportability","sap/ui/core/date/CalendarUtils","sap/ui/core/date/UI5Date","sap/ui/core/date/UniversalDate","sap/ui/core/format/FormatUtils"],function(e,t,a,r,n,i,o,s,l,u,f,d,c,h,m,g,p){"use strict";var y=function(){throw new Error};var v={DATE:"date",TIME:"time",DATETIME:"datetime",DATETIME_WITH_TIMEZONE:"datetimeWithTimezone"};var b={};var D=function(e){if(typeof e!=="string"&&!(e instanceof String)&&e!=null){throw new TypeError("The given timezone must be a string.")}};y.oDateInfo={type:v.DATE,oDefaultFormatOptions:{style:"medium",relativeScale:"day",relativeStyle:"wide"},aFallbackFormatOptions:[{style:"short"},{style:"medium"},{pattern:"yyyy-MM-dd"},{pattern:"yyyyMMdd",strictParsing:true}],bShortFallbackFormatOptions:true,bPatternFallbackWithoutDelimiter:true,getPattern:function(e,t,a){return e.getDatePattern(t,a)},oRequiredParts:{text:true,year:true,weekYear:true,month:true,day:true},aRelativeScales:["year","month","week","day"],aRelativeParseScales:["year","quarter","month","week","day","hour","minute","second"],aIntervalCompareFields:["Era","FullYear","Quarter","Month","Week","Date"]};y.oDateTimeInfo={type:v.DATETIME,oDefaultFormatOptions:{style:"medium",relativeScale:"auto",relativeStyle:"wide"},aFallbackFormatOptions:[{style:"short"},{style:"medium"},{pattern:"yyyy-MM-dd'T'HH:mm:ss"},{pattern:"yyyyMMdd HHmmss"}],getPattern:function(e,t,a){var r=t.indexOf("/");if(r>0){return e.getCombinedDateTimePattern(t.substr(0,r),t.substr(r+1),a)}else{return e.getCombinedDateTimePattern(t,t,a)}},oRequiredParts:{text:true,year:true,weekYear:true,month:true,day:true,hour0_23:true,hour1_24:true,hour0_11:true,hour1_12:true},aRelativeScales:["year","month","week","day","hour","minute","second"],aRelativeParseScales:["year","quarter","month","week","day","hour","minute","second"],aIntervalCompareFields:["Era","FullYear","Quarter","Month","Week","Date","DayPeriod","Hours","Minutes","Seconds"]};y._getDateTimeWithTimezoneInfo=function(e){var t=e.showDate===undefined||e.showDate;var a=e.showTime===undefined||e.showTime;var r=e.showTimezone===undefined||e.showTimezone;var n=y.oDateTimeInfo;if(t&&!a){n=y.oDateInfo}else if(!t&&a){n=y.oTimeInfo}return Object.assign({},n,{type:v.DATETIME_WITH_TIMEZONE,getTimezonePattern:function(e){if(!t&&!a&&r){return"VV"}else if(!r){return e}else{return e+" VV"}},getPattern:function(e,i,o){if(!t&&!a&&r){return"VV"}if(!r){return n.getPattern(e,i,o)}var s=n.getPattern(e,i,o);return e.applyTimezonePattern(s)}})};y.oTimeInfo={type:v.TIME,oDefaultFormatOptions:{style:"medium",relativeScale:"auto",relativeStyle:"wide"},aFallbackFormatOptions:[{style:"short"},{style:"medium"},{pattern:"HH:mm:ss"},{pattern:"HHmmss"}],getPattern:function(e,t,a){return e.getTimePattern(t,a)},oRequiredParts:{text:true,hour0_23:true,hour1_24:true,hour0_11:true,hour1_12:true},aRelativeScales:["hour","minute","second"],aRelativeParseScales:["year","quarter","month","week","day","hour","minute","second"],aIntervalCompareFields:["DayPeriod","Hours","Minutes","Seconds"]};y.getInstance=function(e,t){return this.getDateInstance(e,t)};y.getDateInstance=function(e,t){return this.createInstance(e,t,this.oDateInfo)};y.getDateTimeInstance=function(e,t){return this.createInstance(e,t,this.oDateTimeInfo)};y.getDateTimeWithTimezoneInstance=function(e,t){if(e&&!(e instanceof f)){(function(){e=Object.assign({},e);if(typeof e.showTimezone==="string"){var t=e.showTimezone;if(e.showDate===undefined&&e.showTime===undefined){if(t==="Hide"){e.showTimezone=false}else if(t==="Only"){e.showDate=false;e.showTime=false}}e.showTimezone=t!=="Hide"}})();if(e.showDate===false&&e.showTime===false&&e.showTimezone===false){throw new TypeError("Invalid Configuration. One of the following format options must be true: "+"showDate, showTime or showTimezone.")}}return this.createInstance(e,t,y._getDateTimeWithTimezoneInfo(e||{}))};y.getTimeInstance=function(e,t){return this.createInstance(e,t,this.oTimeInfo)};y.createInstance=function(e,a,r,i){var o,s,u;s=Object.create(this.prototype);if(e instanceof f){a=e;e=undefined}if(!a){a=new f(t.getLanguageTag())}s.oLocale=a;s.oLocaleData=d.getInstance(a);s.oFormatOptions=l({},r.oDefaultFormatOptions,e);if(r.type===v.DATETIME_WITH_TIMEZONE){s.oFormatOptions.interval=false;s.oFormatOptions.singleIntervalValue=false;s.oFormatOptions.UTC=false}else{s.oFormatOptions.showTimezone=undefined;s.oFormatOptions.showDate=undefined;s.oFormatOptions.showTime=undefined}s.type=r.type;if(!s.oFormatOptions.calendarType){s.oFormatOptions.calendarType=t.getCalendarType()}if(s.oFormatOptions.firstDayOfWeek===undefined&&s.oFormatOptions.minimalDaysInFirstWeek!==undefined||s.oFormatOptions.firstDayOfWeek!==undefined&&s.oFormatOptions.minimalDaysInFirstWeek===undefined){throw new TypeError("Format options firstDayOfWeek and minimalDaysInFirstWeek need both to be set, but only one was provided.")}if(s.oFormatOptions.calendarWeekNumbering&&!Object.values(n).includes(s.oFormatOptions.calendarWeekNumbering)){throw new TypeError("Illegal format option calendarWeekNumbering: '"+s.oFormatOptions.calendarWeekNumbering+"'")}if(!s.oFormatOptions.pattern){if(s.oFormatOptions.format){s.oFormatOptions.pattern=s.oLocaleData.getCustomDateTimePattern(s.oFormatOptions.format,s.oFormatOptions.calendarType)}else{s.oFormatOptions.pattern=r.getPattern(s.oLocaleData,s.oFormatOptions.style,s.oFormatOptions.calendarType)}}if(s.oFormatOptions.interval){var c,h=s.oFormatOptions.intervalDelimiter;if(s.oFormatOptions.format){s.intervalPatterns=s.oLocaleData.getCustomIntervalPattern(s.oFormatOptions.format,null,s.oFormatOptions.calendarType);if(typeof s.intervalPatterns==="string"){s.intervalPatterns=[s.intervalPatterns]}c=s.oLocaleData.getCustomDateTimePattern(s.oFormatOptions.format,s.oFormatOptions.calendarType);s.intervalPatterns.push(c)}else{c=s.oFormatOptions.pattern;s.intervalPatterns=[s.oLocaleData.getCombinedIntervalPattern(s.oFormatOptions.pattern,s.oFormatOptions.calendarType),s.oFormatOptions.pattern]}s.intervalPatterns.push(s.oFormatOptions.pattern+" - "+s.oFormatOptions.pattern);if(h){h=h.replace(/'/g,"''");h="'"+h+"'";s.intervalPatterns.unshift(c+h+c)}s.intervalPatterns=Array.from(new Set(s.intervalPatterns))}if(!i){o=r.aFallbackFormatOptions;if(r.bShortFallbackFormatOptions){u=r.getPattern(s.oLocaleData,"short");o=o.concat(y._createFallbackOptionsWithoutDelimiter(u))}if(s.oFormatOptions.pattern&&r.bPatternFallbackWithoutDelimiter){o=y._createFallbackOptionsWithoutDelimiter(s.oFormatOptions.pattern).concat(o)}o=o.reduce(function(e,t){var a=Object.keys(t),r=e.some(function(e){return Object.keys(e).length===a.length&&a.every(function(a){return e[a]===t[a]})});if(!r){e.push(t)}return e},[]);s.aFallbackFormats=y._createFallbackFormat(o,s.oFormatOptions.calendarType,a,r,s.oFormatOptions)}s.oRequiredParts=r.oRequiredParts;s.aRelativeScales=r.aRelativeScales;s.aRelativeParseScales=r.aRelativeParseScales;s.aIntervalCompareFields=r.aIntervalCompareFields;s.init();return s};y.prototype.init=function(){var e=this.oFormatOptions.calendarType;this.aMonthsAbbrev=this.oLocaleData._getMonthsWithAlternatives("abbreviated",e);this.aMonthsWide=this.oLocaleData.getMonths("wide",e);this.aMonthsNarrow=this.oLocaleData.getMonths("narrow",e);this.aMonthsAbbrevSt=this.oLocaleData._getMonthsStandAloneWithAlternatives("abbreviated",e);this.aMonthsWideSt=this.oLocaleData.getMonthsStandAlone("wide",e);this.aMonthsNarrowSt=this.oLocaleData.getMonthsStandAlone("narrow",e);this.aDaysAbbrev=this.oLocaleData.getDays("abbreviated",e);this.aDaysWide=this.oLocaleData.getDays("wide",e);this.aDaysNarrow=this.oLocaleData.getDays("narrow",e);this.aDaysShort=this.oLocaleData.getDays("short",e);this.aDaysAbbrevSt=this.oLocaleData.getDaysStandAlone("abbreviated",e);this.aDaysWideSt=this.oLocaleData.getDaysStandAlone("wide",e);this.aDaysNarrowSt=this.oLocaleData.getDaysStandAlone("narrow",e);this.aDaysShortSt=this.oLocaleData.getDaysStandAlone("short",e);this.aQuartersAbbrev=this.oLocaleData.getQuarters("abbreviated",e);this.aQuartersWide=this.oLocaleData.getQuarters("wide",e);this.aQuartersNarrow=this.oLocaleData.getQuarters("narrow",e);this.aQuartersAbbrevSt=this.oLocaleData.getQuartersStandAlone("abbreviated",e);this.aQuartersWideSt=this.oLocaleData.getQuartersStandAlone("wide",e);this.aQuartersNarrowSt=this.oLocaleData.getQuartersStandAlone("narrow",e);this.aErasNarrow=this.oLocaleData.getEras("narrow",e);this.aErasAbbrev=this.oLocaleData.getEras("abbreviated",e);this.aErasWide=this.oLocaleData.getEras("wide",e);this.aDayPeriodsAbbrev=this.oLocaleData.getDayPeriods("abbreviated",e);this.aDayPeriodsNarrow=this.oLocaleData.getDayPeriods("narrow",e);this.aDayPeriodsWide=this.oLocaleData.getDayPeriods("wide",e);this.oFlexibleDayPeriodsAbbrev=this.oLocaleData.getFlexibleDayPeriods("abbreviated",e);this.oFlexibleDayPeriodsNarrow=this.oLocaleData.getFlexibleDayPeriods("narrow",e);this.oFlexibleDayPeriodsWide=this.oLocaleData.getFlexibleDayPeriods("wide",e);this.oFlexibleDayPeriodsAbbrevSt=this.oLocaleData.getFlexibleDayPeriodsStandAlone("abbreviated",e);this.oFlexibleDayPeriodsNarrowSt=this.oLocaleData.getFlexibleDayPeriodsStandAlone("narrow",e);this.oFlexibleDayPeriodsWideSt=this.oLocaleData.getFlexibleDayPeriodsStandAlone("wide",e);this.aFormatArray=this.parseCldrDatePattern(this.oFormatOptions.pattern);this.sAllowedCharacters=this.getAllowedCharacters(this.aFormatArray)};y._createFallbackFormat=function(e,t,a,r,n){return e.map(function(e){var i=Object.assign({},e);i.showDate=n.showDate;i.showTime=n.showTime;i.showTimezone=n.showTimezone;if(typeof r.getTimezonePattern==="function"&&i.pattern){i.pattern=r.getTimezonePattern(i.pattern)}if(n.interval){i.interval=true}i.calendarType=t;return y.createInstance(i,a,r,true)})};y._createFallbackOptionsWithoutDelimiter=function(e){var t=/[^dMyGU]/g,a={regex:/d+/g,replace:"dd"},r={regex:/M+/g,replace:"MM"},n={regex:/[yU]+/g,replace:["yyyy","yy"]};e=e.replace(t,"");e=e.replace(a.regex,a.replace);e=e.replace(r.regex,r.replace);return n.replace.map(function(t){return{pattern:e.replace(n.regex,t),strictParsing:true}})};var T={isNumber:function(e){return e>=48&&e<=57},findNumbers:function(e,t){var a=0;while(a<t&&this.isNumber(e.charCodeAt(a))){a++}return e.substr(0,a)},startsWithIgnoreCase:function(e,t,a){if(e.startsWith(t)){return true}try{var r=t.toLocaleUpperCase(a);var n=e.toLocaleUpperCase(a);if(r.length!==t.length||n.length!==e.length){return false}return n.startsWith(r)}catch(e){return false}},findEntry:function(e,t,a){let r=-1;let n=0;t.forEach((t,i)=>{(Array.isArray(t)?t:[t]).forEach(t=>{if(t.length>n&&this.startsWithIgnoreCase(e,t,a)){r=i;n=t.length}})});return{index:r,length:n}},parseTZ:function(e,t){var a=0;var r=e.charAt(0)==="+"?-1:1;var n;if(e[0]==="Z"){return{length:1,tzDiff:0}}a++;n=this.findNumbers(e.substr(a),2);var i=parseInt(n);a+=2;if(t){a++}n=this.findNumbers(e.substr(a),2);var o=0;if(n){a+=2;o=parseInt(n)}return{length:a,tzDiff:(o+60*i)*60*r}},checkValid:function(e,t,a){if(e in a.oRequiredParts&&t){return false}return true}};y._oParseHelper=T;y._createPatternSymbol=function(e){var t=typeof e.isNumeric==="function"&&e.isNumeric||function(){return e.isNumeric||false};return{name:e.name,format:e.format||function(){return""},parse:e.parse||function(){return{}},isNumeric:t}};y.prototype.oSymbols={"":y._createPatternSymbol({name:"text",format:function(e,t){return e.value},parse:function(e,t,a,r){var n;var i=true;var o=0;var s=0;var l="-~‐‑‒–—﹘﹣－～";const u=p.normalize(t.value);for(;s<u.length;s++){n=u.charAt(s);if(n===" "){while(e.charAt(o)===" "){o++}}else if(l.includes(n)){if(!l.includes(e.charAt(o))){i=false}o++}else{if(e.charAt(o)!==n){i=false}o++}if(!i){break}}if(i){return{length:o}}else{var f=false;if(r.index<r.formatArray.length-1){f=r.formatArray[r.index+1].type in a.oRequiredParts}return{valid:T.checkValid(t.type,f,a)}}}}),G:y._createPatternSymbol({name:"era",format:function(e,t,a,r){var n=t.getUTCEra();if(e.digits<=3){return r.aErasAbbrev[n]}else if(e.digits===4){return r.aErasWide[n]}else{return r.aErasNarrow[n]}},parse:function(e,t,a,r){var n=[a.aErasWide,a.aErasAbbrev,a.aErasNarrow];for(var i=0;i<n.length;i++){var o=n[i];var s=T.findEntry(e,o,a.oLocaleData.sCLDRLocaleId);if(s.index!==-1){return{era:s.index,length:s.length}}}return{era:a.aErasWide.length-1,valid:T.checkValid(t.type,true,a)}}}),y:y._createPatternSymbol({name:"year",format:function(e,t,a,n){var i=t.getUTCFullYear();var o=String(i);var s=n.oFormatOptions.calendarType;if(e.digits===2&&o.length>2){o=o.substr(o.length-2)}if(s!==r.Japanese&&e.digits===1&&i<100){o=o.padStart(4,"0")}return o.padStart(e.digits,"0")},parse:function(e,t,a,n){var i,o,s,l=a.oFormatOptions.calendarType;if(t.digits===1){i=4}else if(t.digits===2){i=2}else{i=t.digits}o=T.findNumbers(e,i);s=o===""||n.exactLength&&o.length!==i;var u=parseInt(o);if(l!==r.Japanese&&o.length<=2){var f=g.getInstance(m.getInstance(),l),d=f.getUTCFullYear(),c=Math.floor(d/100),h=c*100+u-d;if(h<-70){u+=(c+1)*100}else if(h<30){u+=c*100}else{u+=(c-1)*100}}return{length:o.length,valid:T.checkValid(t.type,s,a),year:u}},isNumeric:true}),Y:y._createPatternSymbol({name:"weekYear",format:function(e,t,a,n){var i=t.getUTCWeek(n.oLocale,F(n.oFormatOptions));var o=i.year;var s=String(o);var l=n.oFormatOptions.calendarType;if(e.digits===2&&s.length>2){s=s.substr(s.length-2)}if(l!==r.Japanese&&e.digits===1&&o<100){s=s.padStart(4,"0")}return s.padStart(e.digits,"0")},parse:function(e,t,a,n){var i,o,s,l=a.oFormatOptions.calendarType;if(t.digits===1){i=4}else if(t.digits===2){i=2}else{i=t.digits}o=T.findNumbers(e,i);s=o===""||n.exactLength&&o.length!==i;var u=parseInt(o);var f=u;if(l!==r.Japanese&&o.length<=2){var d=g.getInstance(m.getInstance(),l),c=d.getUTCFullYear(),h=Math.floor(c/100),p=h*100+f-c;if(p<-70){f+=(h+1)*100}else if(p<30){f+=h*100}else{f+=(h-1)*100}}return{length:o.length,valid:T.checkValid(t.type,s,a),year:u,weekYear:f}},isNumeric:true}),M:y._createPatternSymbol({name:"month",format:function(e,t,a,r){var n=t.getUTCMonth();if(e.digits===3){const e=r.aMonthsAbbrev[n];return Array.isArray(e)?e[0]:e}else if(e.digits===4){return r.aMonthsWide[n]}else if(e.digits>4){return r.aMonthsNarrow[n]}else{return String(n+1).padStart(e.digits,"0")}},parse:function(e,t,a,r){var n,i,o,s,l=[a.aMonthsWide,a.aMonthsWideSt,a.aMonthsAbbrev,a.aMonthsAbbrevSt,a.aMonthsNarrow,a.aMonthsNarrowSt];if(t.digits<3){i=T.findNumbers(e,Math.max(t.digits,2));o=i===""||r.exactLength&&i.length<2;s=T.checkValid(t.type,o,a);n=parseInt(i)-1;if(r.strict&&(n>11||n<0)){s=false}}else{for(var u=0;u<l.length;u++){var f=l[u];var d=T.findEntry(e,f,a.oLocaleData.sCLDRLocaleId);if(d.index!==-1){return{month:d.index,length:d.length}}}s=T.checkValid(t.type,true,a)}return{month:n,length:i?i.length:0,valid:s}},isNumeric:function(e){return e<3}}),L:y._createPatternSymbol({name:"monthStandalone",format:function(e,t,a,r){var n=t.getUTCMonth();if(e.digits===3){const e=r.aMonthsAbbrevSt[n];return Array.isArray(e)?e[0]:e}else if(e.digits===4){return r.aMonthsWideSt[n]}else if(e.digits>4){return r.aMonthsNarrowSt[n]}else{return String(n+1).padStart(e.digits,"0")}},parse:function(e,t,a,r){var n,i,o,s,l=[a.aMonthsWide,a.aMonthsWideSt,a.aMonthsAbbrev,a.aMonthsAbbrevSt,a.aMonthsNarrow,a.aMonthsNarrowSt];if(t.digits<3){i=T.findNumbers(e,Math.max(t.digits,2));o=i===""||r.exactLength&&i.length<2;s=T.checkValid(t.type,o,a);n=parseInt(i)-1;if(r.strict&&(n>11||n<0)){s=false}}else{for(var u=0;u<l.length;u++){var f=l[u];var d=T.findEntry(e,f,a.oLocaleData.sCLDRLocaleId);if(d.index!==-1){return{month:d.index,length:d.length}}}s=T.checkValid(t.type,true,a)}return{month:n,length:i?i.length:0,valid:s}},isNumeric:function(e){return e<3}}),w:y._createPatternSymbol({name:"weekInYear",format:function(e,t,a,r){var n=t.getUTCWeek(r.oLocale,F(r.oFormatOptions));var i=n.week;var o=String(i+1);if(e.digits<3){o=o.padStart(e.digits,"0")}else{o=r.oLocaleData.getCalendarWeek(e.digits===3?"narrow":"wide",o.padStart(2,"0"))}return o},parse:function(e,t,a,r){var n,i,o,s,l=0;if(t.digits<3){n=T.findNumbers(e,2);l=n.length;s=parseInt(n)-1;i=!n||r.exactLength&&l<2;o=T.checkValid(t.type,i,a)}else{n=a.oLocaleData.getCalendarWeek(t.digits===3?"narrow":"wide");n=n.replace("{0}","([0-9]+)");var u=new RegExp(n),f=u.exec(e);if(f){l=f[0].length;s=parseInt(f[f.length-1])-1}else{o=T.checkValid(t.type,true,a)}}return{length:l,valid:o,week:s}},isNumeric:function(e){return e<3}}),W:y._createPatternSymbol({name:"weekInMonth"}),D:y._createPatternSymbol({name:"dayInYear"}),d:y._createPatternSymbol({name:"day",format:function(e,t){var a=t.getUTCDate();return String(a).padStart(e.digits,"0")},parse:function(e,t,a,r){var n=T.findNumbers(e,Math.max(t.digits,2)),i=n===""||r.exactLength&&n.length<2,o=T.checkValid(t.type,i,a),s=parseInt(n);if(r.strict&&(s>31||s<1)){o=false}return{day:s,length:n.length,valid:o}},isNumeric:true}),Q:y._createPatternSymbol({name:"quarter",format:function(e,t,a,r){var n=t.getUTCQuarter();if(e.digits===3){return r.aQuartersAbbrev[n]}else if(e.digits===4){return r.aQuartersWide[n]}else if(e.digits>4){return r.aQuartersNarrow[n]}else{return String(n+1).padStart(e.digits,"0")}},parse:function(e,t,a,r){var n,i,o,s;var l=[a.aQuartersWide,a.aQuartersWideSt,a.aQuartersAbbrev,a.aQuartersAbbrevSt,a.aQuartersNarrow,a.aQuartersNarrowSt];if(t.digits<3){n=T.findNumbers(e,Math.max(t.digits,2));i=n===""||r.exactLength&&n.length<2;s=T.checkValid(t.type,i,a);o=parseInt(n)-1;if(r.strict&&o>3){s=false}}else{for(var u=0;u<l.length;u++){var f=l[u];var d=T.findEntry(e,f,a.oLocaleData.sCLDRLocaleId);if(d.index!==-1){return{quarter:d.index,length:d.length}}}s=T.checkValid(t.type,true,a)}return{length:n?n.length:0,quarter:o,valid:s}},isNumeric:function(e){return e<3}}),q:y._createPatternSymbol({name:"quarterStandalone",format:function(e,t,a,r){var n=t.getUTCQuarter();if(e.digits===3){return r.aQuartersAbbrevSt[n]}else if(e.digits===4){return r.aQuartersWideSt[n]}else if(e.digits>4){return r.aQuartersNarrowSt[n]}else{return String(n+1).padStart(e.digits,"0")}},parse:function(e,t,a,r){var n,i,o,s;var l=[a.aQuartersWide,a.aQuartersWideSt,a.aQuartersAbbrev,a.aQuartersAbbrevSt,a.aQuartersNarrow,a.aQuartersNarrowSt];if(t.digits<3){n=T.findNumbers(e,Math.max(t.digits,2));i=n===""||r.exactLength&&n.length<2;s=T.checkValid(t.type,i,a);o=parseInt(n)-1;if(r.strict&&o>3){s=false}}else{for(var u=0;u<l.length;u++){var f=l[u];var d=T.findEntry(e,f,a.oLocaleData.sCLDRLocaleId);if(d.index!==-1){return{quarter:d.index,length:d.length}}}s=T.checkValid(t.type,true,a)}return{length:n?n.length:0,quarter:o,valid:s}},isNumeric:function(e){return e<3}}),F:y._createPatternSymbol({name:"dayOfWeekInMonth"}),E:y._createPatternSymbol({name:"dayNameInWeek",format:function(e,t,a,r){var n=t.getUTCDay();if(e.digits<4){return r.aDaysAbbrev[n]}else if(e.digits===4){return r.aDaysWide[n]}else if(e.digits===5){return r.aDaysNarrow[n]}else{return r.aDaysShort[n]}},parse:function(e,t,a,r){var n=[a.aDaysWide,a.aDaysWideSt,a.aDaysAbbrev,a.aDaysAbbrevSt,a.aDaysShort,a.aDaysShortSt,a.aDaysNarrow,a.aDaysNarrowSt];for(var i=0;i<n.length;i++){var o=n[i];var s=T.findEntry(e,o,a.oLocaleData.sCLDRLocaleId);if(s.index!==-1){return{dayOfWeek:s.index,length:s.length}}}}}),c:y._createPatternSymbol({name:"dayNameInWeekStandalone",format:function(e,t,a,r){var n=t.getUTCDay();if(e.digits<4){return r.aDaysAbbrevSt[n]}else if(e.digits===4){return r.aDaysWideSt[n]}else if(e.digits===5){return r.aDaysNarrowSt[n]}else{return r.aDaysShortSt[n]}},parse:function(e,t,a,r){var n=[a.aDaysWide,a.aDaysWideSt,a.aDaysAbbrev,a.aDaysAbbrevSt,a.aDaysShort,a.aDaysShortSt,a.aDaysNarrow,a.aDaysNarrowSt];for(var i=0;i<n.length;i++){var o=n[i];var s=T.findEntry(e,o,a.oLocaleData.sCLDRLocaleId);if(s.index!==-1){return{day:s.index,length:s.length}}}}}),u:y._createPatternSymbol({name:"dayNumberOfWeek",format:function(e,t,a,r){var n=t.getUTCDay();return r._adaptDayOfWeek(n)},parse:function(e,t,a,r){var n=T.findNumbers(e,t.digits),i=r.exactLength&&n.length!==t.digits;return{dayNumberOfWeek:parseInt(n),length:n.length,valid:T.checkValid(t.type,i,a)}},isNumeric:true}),a:y._createPatternSymbol({name:"amPmMarker",format:function(e,t,a,r){var n=t.getUTCDayPeriod();if(e.digits<=3){return r.aDayPeriodsAbbrev[n]}else if(e.digits===4){return r.aDayPeriodsWide[n]}else{return r.aDayPeriodsNarrow[n]}},parse:function(e,t,a,r,n){var i,o,s,l,u,f,d=[a.aDayPeriodsWide,a.aDayPeriodsAbbrev,a.aDayPeriodsNarrow];i=/[aApP](?:\.)?[\x20\xA0]?[mM](?:\.)?/;u=e.match(i);o=u&&u.index===0;function c(e){return e.replace(/[\x20\xA0]/g,"").replace(/\./g,"")}if(o){e=c(e)}for(l=0;l<d.length;l+=1){f=d[l].map(e=>p.normalize(e));if(o){f=f.map(c)}s=T.findEntry(e,f,a.oLocaleData.sCLDRLocaleId);if(s.index!==-1){return{pm:s.index===1,length:o?u[0].length:s.length}}}return{valid:false}}}),B:y._createPatternSymbol({name:"flexibleDayPeriod",format:function(e,t,a,r){var n=r.aFormatArray.some(function(e){return"hHKk".includes(e.symbol)}),i=r.oLocaleData.getFlexibleDayPeriodOfTime(t.getUTCHours(),t.getUTCMinutes());if(n){if(e.digits<=3){return r.oFlexibleDayPeriodsAbbrev[i]}if(e.digits===4){return r.oFlexibleDayPeriodsWide[i]}return r.oFlexibleDayPeriodsNarrow[i]}if(e.digits<=3){return r.oFlexibleDayPeriodsAbbrevSt[i]}if(e.digits===4){return r.oFlexibleDayPeriodsWideSt[i]}return r.oFlexibleDayPeriodsNarrowSt[i]},parse:function(e,t,a,r){var n,i,o,s=a.aFormatArray.some(function(e){return"hHKk".includes(e.symbol)}),l=[a.oFlexibleDayPeriodsWide,a.oFlexibleDayPeriodsAbbrev,a.oFlexibleDayPeriodsNarrow];if(s){for(n=0;n<l.length;n++){o=l[n];i=T.findEntry(e,Object.values(o),a.oLocaleData.sCLDRLocaleId);if(i.index!==-1){return{flexDayPeriod:Object.keys(o)[i.index],length:i.length}}}}return{valid:false}}}),H:y._createPatternSymbol({name:"hour0_23",format:function(e,t){var a=t.getUTCHours();return String(a).padStart(e.digits,"0")},parse:function(e,t,a,r){var n=T.findNumbers(e,Math.max(t.digits,2)),i=parseInt(n),o=n===""||r.exactLength&&n.length<2,s=T.checkValid(t.type,o,a);if(r.strict&&i>23){s=false}return{hour:i,length:n.length,valid:s}},isNumeric:true}),k:y._createPatternSymbol({name:"hour1_24",format:function(e,t){var a=t.getUTCHours();var r=a===0?"24":String(a);return r.padStart(e.digits,"0")},parse:function(e,t,a,r){var n=T.findNumbers(e,Math.max(t.digits,2)),i=parseInt(n),o=n===""||r.exactLength&&n.length<2,s=T.checkValid(t.type,o,a);if(i===24){i=0}if(r.strict&&i>23){s=false}return{hour:i,length:n.length,valid:s}},isNumeric:true}),K:y._createPatternSymbol({name:"hour0_11",format:function(e,t){var a=t.getUTCHours();var r=String(a>11?a-12:a);return r.padStart(e.digits,"0")},parse:function(e,t,a,r){var n=T.findNumbers(e,Math.max(t.digits,2)),i=parseInt(n),o=n===""||r.exactLength&&n.length<2,s=T.checkValid(t.type,o,a);if(r.strict&&i>11){s=false}return{hour:i,length:n.length,valid:s}},isNumeric:true}),h:y._createPatternSymbol({name:"hour1_12",format:function(e,t){var a=t.getUTCHours();var r;if(a>12){r=String(a-12)}else if(a===0){r="12"}else{r=String(a)}return r.padStart(e.digits,"0")},parse:function(e,t,a,r){var n=r.dateValue.pm,i=T.findNumbers(e,Math.max(t.digits,2)),o=parseInt(i),s=i===""||r.exactLength&&i.length<2,l=T.checkValid(t.type,s,a);if(o===12){o=0;n=n===undefined?true:n}if(r.strict&&o>11){l=false}return{hour:o,length:i.length,pm:n,valid:l}},isNumeric:true}),m:y._createPatternSymbol({name:"minute",format:function(e,t){var a=t.getUTCMinutes();return String(a).padStart(e.digits,"0")},parse:function(e,t,a,r){var n=T.findNumbers(e,Math.max(t.digits,2)),i=parseInt(n),o=n===""||r.exactLength&&n.length<2,s=T.checkValid(t.type,o,a);if(r.strict&&i>59){s=false}return{length:n.length,minute:i,valid:s}},isNumeric:true}),s:y._createPatternSymbol({name:"second",format:function(e,t){var a=t.getUTCSeconds();return String(a).padStart(e.digits,"0")},parse:function(e,t,a,r){var n=Math.max(t.digits,2),i=T.findNumbers(e,n),o=i===""||r.exactLength&&i.length<n,s=parseInt(i),l=T.checkValid(t.type,o,a);if(r.strict&&s>59){l=false}return{length:i.length,second:s,valid:l}},isNumeric:true}),S:y._createPatternSymbol({name:"fractionalsecond",format:function(e,t){var a=t.getUTCMilliseconds();var r=String(a);var n=r.padStart(3,"0");n=n.substr(0,e.digits);n=n.padEnd(e.digits,"0");return n},parse:function(e,t,a,r){var n=T.findNumbers(e,t.digits),i=n.length,o=r.exactLength&&i<t.digits;n=n.substr(0,3);n=n.padEnd(3,"0");var s=parseInt(n);return{length:i,millisecond:s,valid:T.checkValid(t.type,o,a)}},isNumeric:true}),z:y._createPatternSymbol({name:"timezoneGeneral",format:function(e,t,a,r,n){if(e.digits>3&&t.getTimezoneLong&&t.getTimezoneLong()){return t.getTimezoneLong()}else if(t.getTimezoneShort&&t.getTimezoneShort()){return t.getTimezoneShort()}var o=i.calculateOffset(t,n);var s="GMT";var l=Math.abs(o/60);var u=o>0;var f=Math.floor(l/60);var d=Math.floor(l%60);if(!a&&l!==0){s+=u?"-":"+";s+=String(f).padStart(2,"0");s+=":";s+=String(d).padStart(2,"0")}else{s+="Z"}return s},parse:function(e,t,a,r){var n=0;var i;var o=e.substring(0,3);if(o==="GMT"||o==="UTC"){n=3}else if(e.substring(0,2)==="UT"){n=2}else if(e.charAt(0)==="Z"){n=1;i=0}else{return{error:"cannot be parsed correctly by sap.ui.core.format.DateFormat: The given timezone is not supported!"}}if(e.charAt(0)!=="Z"){var s=T.parseTZ(e.substr(n),true);n+=s.length;i=s.tzDiff}return{length:n,tzDiff:i}}}),Z:y._createPatternSymbol({name:"timezoneRFC822",format:function(e,t,a,r,n){var o=i.calculateOffset(t,n);var s=Math.abs(o/60);var l=o>0;var u=Math.floor(s/60);var f=Math.floor(s%60);var d="";if(!a){d+=l?"-":"+";d+=String(u).padStart(2,"0");d+=String(f).padStart(2,"0")}return d},parse:function(e,t,a,r){return T.parseTZ(e,false)}}),X:y._createPatternSymbol({name:"timezoneISO8601",format:function(e,t,a,r,n){var o=i.calculateOffset(t,n);var s=Math.abs(o/60);var l=o>0;var u=Math.floor(s/60);var f=Math.floor(s%60);var d="";if(!a&&s!==0){d+=l?"-":"+";d+=String(u).padStart(2,"0");if(e.digits>1||f>0){if(e.digits===3||e.digits===5){d+=":"}d+=String(f).padStart(2,"0")}}else{d+="Z"}return d},parse:function(e,t,a,r){if(e.charAt(0)==="Z"){return{length:1,tzDiff:0}}else{return T.parseTZ(e,t.digits===3||t.digits===5)}}}),V:y._createPatternSymbol({name:"timezoneID",format:function(e,t,a,r,n){if(!a&&e.digits===2){return r.oLocaleData.getTimezoneTranslations()[n]||n}return""},parse:function(e,t,a,r,n){var o={timezone:"",length:0};if(t.digits===2){var s=a.oLocaleData.getTimezoneTranslations();n=i.getABAPTimezone(n);if(e===s[n]){return{timezone:n,length:e.length}}var l=Object.values(s);var u=T.findEntry(e,l,a.oLocaleData.sCLDRLocaleId);if(u.index!==-1){return{timezone:Object.keys(s)[u.index],length:u.length}}var f="";for(var d=e.length;d>0;d-=1){f=e.slice(0,d);if(i.isValidTimezone(f)){o.timezone=i.getABAPTimezone(f);o.length=f.length;break}}}return o}})};y.prototype._format=function(e,t,a){if(this.oFormatOptions.relative){var r=this.formatRelative(e,t,this.oFormatOptions.relativeRange,a);if(r){return r}}var n=this.oFormatOptions.calendarType;var i=g.getInstance(e,n);var o=[],s,l,u;for(var f=0;f<this.aFormatArray.length;f++){s=this.aFormatArray[f];u=s.symbol||"";o.push(this.oSymbols[u].format(s,i,t,this,a))}l=o.join("");if(c.collectOriginInfo()){l=new String(l);l.originInfo={source:"Common Locale Data Repository",locale:this.oLocale.toString(),style:this.oFormatOptions.style,pattern:this.oFormatOptions.pattern}}return l};y.prototype.format=function(t,n){var o;if(this.type===v.DATETIME_WITH_TIMEZONE){o=n;n=false;D(o);o=i.getABAPTimezone(o);if(o&&!i.isValidTimezone(o)){e.error("The given timezone isn't valid.");return""}}var s=this.oFormatOptions.calendarType,l;if(n===undefined){n=this.oFormatOptions.UTC}o=o||a.getTimezone();if(Array.isArray(t)){if(!this.oFormatOptions.interval){e.error("Non-interval DateFormat can't format more than one date instance.");return""}if(t.length!==2){e.error("Interval DateFormat can only format with 2 date instances but "+t.length+" is given.");return""}t=t.map(function(e){return O(e,o,n)});if(this.oFormatOptions.singleIntervalValue){if(t[0]===null){e.error("First date instance which is passed to the interval DateFormat shouldn't be null.");return""}if(t[1]===null){l=this._format(t[0],n,o)}}if(l===undefined){if(!t.every(P)){e.error("At least one date instance which is passed to the interval DateFormat isn't valid.");return""}l=this._formatInterval(t,n)}}else{if(!P(t)){const a=t===undefined||t===null;if(a&&this.type===v.DATETIME_WITH_TIMEZONE&&this.oFormatOptions.pattern.includes("VV")){return this.oLocaleData.getTimezoneTranslations()[o]||o}e.error("The given date instance isn't valid.");return""}if(this.oFormatOptions.interval){e.error("Interval DateFormat expects an array with two dates for the first argument but only one date is given.");return""}t=O(t,o,n);l=this._format(t,n,o)}if(s===r.Japanese&&this.oLocale.getLanguage()==="ja"){l=l.replace(/(^|\D)1\u5e74/g,"$1元年")}return l};y.prototype._useCustomIntervalDelimiter=function(e){var t;if(!this.oFormatOptions.intervalDelimiter){return false}if(this.oFormatOptions.format){t=this.oLocaleData._parseSkeletonFormat(this.oFormatOptions.format);return t.some(function(t){return e[t.group]})}return true};y.prototype._formatInterval=function(e,t){var a,r,n,i,o=[],s=this.oFormatOptions.calendarType,l=[],u=g.getInstance(e[0],s),f=g.getInstance(e[1],s),d=this._getDiffFields([u,f]);if(!d){return this._format(e[0],t)}if(this._useCustomIntervalDelimiter(d)){n=this.intervalPatterns[0]}else if(this.oFormatOptions.format){n=this.oLocaleData.getCustomIntervalPattern(this.oFormatOptions.format,d,s)}else{n=this.oLocaleData.getCombinedIntervalPattern(this.oFormatOptions.pattern,s)}l=this.parseCldrDatePattern(n);a=u;for(var c=0;c<l.length;c++){r=l[c];i=r.symbol||"";if(r.repeat){a=f}o.push(this.oSymbols[i].format(r,a,t,this))}return o.join("")};var S={Era:"Era",FullYear:"Year",Quarter:"Quarter",Month:"Month",Week:"Week",Date:"Day",DayPeriod:"DayPeriod",Hours:"Hour",Minutes:"Minute",Seconds:"Second"};y.prototype._getDiffFields=function(e){var t=false,a={};this.aIntervalCompareFields.forEach(function(r){var n="getUTC",i=n+r,o=S[r],l=e[0][i].apply(e[0]),u=e[1][i].apply(e[1]);if(!s(l,u)){t=true;a[o]=true}});if(t){return a}return null};y.prototype._parse=function(e,t,a,r,n){var i,o,s,u,f,d,c,h={valid:true,lastTimezonePatternSymbol:""},m=0,g={formatArray:t,dateValue:h,strict:r},p=this;function y(e){return p.oSymbols[e.symbol||""]}function v(e){return!!e&&y(e).isNumeric(e.digits)}for(var b=0;b<t.length;b++){c=e.substr(m);s=t[b];f=t[b-1];o=t[b+1];g.index=b;g.exactLength=v(s)&&(v(f)||v(o));d=y(s).parse(c,s,this,g,n)||{};if(d.tzDiff!==undefined||d.timezone){d.lastTimezonePatternSymbol=s.symbol}h=l(h,d);if(d.valid===false){break}m+=d.length||0}h.index=m;u=h.pm;if(h.flexDayPeriod&&h.hour*60+(h.minute||0)<720){i=this.oLocaleData.getFlexibleDayPeriodOfTime(h.hour+12,h.minute||0);u=h.flexDayPeriod===i}if(u){h.hour+=12}if(h.dayNumberOfWeek===undefined&&h.dayOfWeek!==undefined){h.dayNumberOfWeek=this._adaptDayOfWeek(h.dayOfWeek)}if(h.quarter!==undefined&&h.month===undefined&&h.day===undefined){h.month=3*h.quarter;h.day=1}return h};y.prototype._parseInterval=function(e,t,a,r,n){var i,o,s;this.intervalPatterns.some(function(t){var l=this.parseCldrDatePattern(t);o=undefined;for(var u=0;u<l.length;u++){if(l[u].repeat){o=u;break}}if(o===undefined){s=this._parse(e,l,a,r,n);if(s.index===0||s.index<e.length){s.valid=false}if(s.valid===false){return}i=[s,s];return true}else{i=[];s=this._parse(e,l.slice(0,o),a,r,n);if(s.valid===false){return}i.push(s);var f=s.index;s=this._parse(e.substring(f),l.slice(o),a,r,n);if(s.index===0||s.index+f<e.length){s.valid=false}if(s.valid===false){return}i.push(s);return true}}.bind(this));return i};function F(e){if(e.calendarWeekNumbering){return e.calendarWeekNumbering}else if(e.firstDayOfWeek!==undefined&&e.minimalDaysInFirstWeek!==undefined){return{firstDayOfWeek:e.firstDayOfWeek,minimalDaysInFirstWeek:e.minimalDaysInFirstWeek}}return undefined}var O=function(e,t,a){if(!a&&P(e)){return i.convertToTimezone(e,t)}return e};var w=function(e,t,a,r,n,o,s){if(!e.valid){return null}var l,u=typeof e.year==="number"?e.year:1970;l=g.getInstance(new Date(0),t);l.setUTCEra(e.era||g.getCurrentEra(t));l.setUTCFullYear(u,e.month||0,e.day||1);l.setUTCHours(e.hour||0);l.setUTCMinutes(e.minute||0);l.setUTCSeconds(e.second||0);l.setUTCMilliseconds(e.millisecond||0);if(r&&(e.day||1)!==l.getUTCDate()){return null}if(e.week!==undefined&&(e.month===undefined||e.day===undefined)){l.setUTCWeek({year:e.weekYear||e.year,week:e.week},s,F(o));if(e.dayNumberOfWeek!==undefined){l.setUTCDate(l.getUTCDate()+e.dayNumberOfWeek-1)}}l=l.getJSDate();if(!a&&(e.lastTimezonePatternSymbol==="V"&&e.timezone||e.tzDiff===undefined)){if(e.timezone){n=e.timezone}if(n){e.tzDiff=i.calculateOffset(l,n)}}if(e.tzDiff){l.setUTCSeconds(l.getUTCSeconds()+e.tzDiff)}return l};function k(e,t){if(e===t){return e}var a={};Object.keys(e).forEach(function(t){a[t]=e[t]});Object.keys(t).forEach(function(e){if(!a.hasOwnProperty(e)){a[e]=t[e]}});return a}function I(e,t){if(e.getTime()>t.getTime()){return false}return true}function P(e){return e&&typeof e.getTime==="function"&&!isNaN(e.getTime())}y.prototype.parse=function(t,n,o){var s=this.oFormatOptions.showDate===undefined||this.oFormatOptions.showDate;var l=this.oFormatOptions.showTime===undefined||this.oFormatOptions.showTime;if(this.type===v.DATETIME_WITH_TIMEZONE&&(s&&!l||!s&&l)){throw new TypeError("The input can only be parsed back to date if both date and time are supplied.")}var u;if(n===undefined&&this.type!==v.DATETIME_WITH_TIMEZONE){n=this.oFormatOptions.UTC}var f=n;if(this.type===v.DATETIME_WITH_TIMEZONE){u=n;n=false;D(u);if(u&&!i.isValidTimezone(u)){e.error("The given timezone isn't valid.");return null}}t=t==null?"":String(t).trim();t=p.normalize(t);var d;var c=this.oFormatOptions.calendarType;u=u||a.getTimezone();if(o===undefined){o=this.oFormatOptions.strictParsing}if(c===r.Japanese&&this.oLocale.getLanguage()==="ja"){t=t.replace(/\u5143\u5e74/g,"1年")}if(!this.oFormatOptions.interval){var h=this.parseRelative(t,n);if(h){return h}d=this._parse(t,this.aFormatArray,n,o,u);if(d.index===0||d.index<t.length){d.valid=false}h=w(d,c,n,o,u,this.oFormatOptions,this.oLocale);if(h){if(this.type===v.DATETIME_WITH_TIMEZONE){var m=this.oFormatOptions.showTimezone===undefined||this.oFormatOptions.showTimezone;if(!m&&s&&l){return[h,undefined]}else if(m&&!s&&!l){return[undefined,d.timezone]}return[h,d.timezone||undefined]}return h}}else{var g=this._parseInterval(t,c,n,o,u);var y,b;if(g&&g.length===2){var T=k(g[0],g[1]);var S=k(g[1],g[0]);y=w(T,c,n,o,u,this.oFormatOptions,this.oLocale);b=w(S,c,n,o,u,this.oFormatOptions,this.oLocale);if(y&&b){if(this.oFormatOptions.singleIntervalValue&&y.getTime()===b.getTime()){return[y,null]}var F=I(y,b);if(o&&!F){e.error("StrictParsing: Invalid date range. The given end date is before the start date.");return[null,null]}return[y,b]}}}if(this.aFallbackFormats){var O;this.aFallbackFormats.every(function(e){O=e.parse(t,f,o);if(Array.isArray(O)){if(e.type===v.DATETIME_WITH_TIMEZONE){return false}return!(O[0]&&O[1])}else{return!O}});return O}if(!this.oFormatOptions.interval){return null}else{return[null,null]}};y.prototype.parseCldrDatePattern=function(e){if(b[e]){return b[e]}var t=[],a,r=false,n=null,i="",o="",s={},l=false;for(a=0;a<e.length;a++){var u=e.charAt(a),f,d,c;if(r){if(u==="'"){d=e.charAt(a-1);c=e.charAt(a-2);f=e.charAt(a+1);if(d==="'"&&c!=="'"){r=false}else if(f==="'"){a+=1}else{r=false;continue}}if(i==="text"){n.value+=u}else{n={type:"text",value:u};t.push(n);i="text"}}else{if(u==="'"){r=true}else if(this.oSymbols[u]){o=this.oSymbols[u].name;if(i===o){n.digits++}else{n={type:o,symbol:u,digits:1};t.push(n);i=o;if(!l){if(s[o]){n.repeat=true;l=true}else{s[o]=true}}}}else{if(i==="text"){n.value+=u}else{n={type:"text",value:u};t.push(n);i="text"}}}}b[e]=t;return t};y.prototype.parseRelative=function(e,t){var a,r,n,i,o;if(!e){return null}a=this.oLocaleData.getRelativePatterns(this.aRelativeParseScales,this.oFormatOptions.relativeStyle);for(var s=0;s<a.length;s++){r=a[s];n=new RegExp("^\\s*"+r.pattern.replace(/\{0\}/,"(\\d+)")+"\\s*$","i");i=n.exec(e);if(i){if(r.value!==undefined){return l(r.value,r.scale)}else{o=parseInt(i[1]);return l(o*r.sign,r.scale)}}}function l(e,a){var r=m.getInstance();if(t){r.setUTCFullYear(r.getFullYear(),r.getMonth(),r.getDate());r.setUTCHours(r.getHours(),r.getMinutes(),r.getSeconds(),r.getMilliseconds());switch(a){case"second":r.setUTCSeconds(r.getUTCSeconds()+e);break;case"minute":r.setUTCMinutes(r.getUTCMinutes()+e);break;case"hour":r.setUTCHours(r.getUTCHours()+e);break;case"day":r.setUTCDate(r.getUTCDate()+e);break;case"week":r.setUTCDate(r.getUTCDate()+e*7);break;case"month":r.setUTCMonth(r.getUTCMonth()+e);break;case"quarter":r.setUTCMonth(r.getUTCMonth()+e*3);break;case"year":r.setUTCFullYear(r.getUTCFullYear()+e);break}}else{switch(a){case"second":r.setSeconds(r.getSeconds()+e);break;case"minute":r.setMinutes(r.getMinutes()+e);break;case"hour":r.setHours(r.getHours()+e);break;case"day":r.setDate(r.getDate()+e);break;case"week":r.setDate(r.getDate()+e*7);break;case"month":r.setMonth(r.getMonth()+e);break;case"quarter":r.setMonth(r.getMonth()+e*3);break;case"year":r.setFullYear(r.getFullYear()+e);break}}return r}};y.prototype.formatRelative=function(e,t,a,r){var n,i,s,l,u=O(new Date,r),f=this.oFormatOptions.relativeScale||"day";s=(e.getTime()-u.getTime())/1e3;if(this.oFormatOptions.relativeScale==="auto"){f=this._getScale(s,this.aRelativeScales);f=M(e,u,f,s)}if(!a){a=this._mRanges[f]}if(f==="year"||f==="month"||f==="day"){u=new Date(Date.UTC(u.getUTCFullYear(),u.getUTCMonth(),u.getUTCDate()));n=new Date(0);n.setUTCFullYear(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate());e=n}i=this._getDifference(f,[u,e]);if(this.oFormatOptions.relativeScale!=="auto"&&(i<a[0]||i>a[1])){return null}l=this.oLocaleData.getRelativePattern(f,i,s>0,this.oFormatOptions.relativeStyle);return o(l,[Math.abs(i)])};y.prototype._mRanges={second:[-60,60],minute:[-60,60],hour:[-24,24],day:[-6,6],week:[-4,4],month:[-12,12],year:[-10,10]};y.prototype._mScales={second:1,minute:60,hour:3600,day:86400,week:604800,month:2592e3,quarter:7776e3,year:31536e3};y.prototype._getScale=function(e,t){var a,r;e=Math.abs(e);for(var n=0;n<t.length;n++){r=t[n];if(e>=this._mScales[r]){a=r;break}}if(!a){a=t[t.length-1]}return a};function M(e,t,a,r){var n=Math.abs(e.getUTCMonth()-t.getUTCMonth());if(a==="week"&&n===2){return"month"}else if(a==="week"&&n===1){if(e.getUTCDate()===t.getUTCDate()||r<0&&e.getUTCDate()<t.getUTCDate()||r>0&&e.getUTCDate()>t.getUTCDate()){return"month"}}else if(a==="month"&&n===1){if(r>0&&e.getUTCDate()<t.getUTCDate()||r<0&&e.getUTCDate()>t.getUTCDate()){return"week"}}return a}function C(e,t){var a,r=["FullYear","Month","Date","Hours","Minutes","Seconds","Milliseconds"],n=new Date(e.getTime());for(var i=t;i<r.length;i++){a="setUTC"+r[t];n[a].apply(n,[0])}return n}var L={year:function(e,t){return t.getUTCFullYear()-e.getUTCFullYear()},month:function(e,t){return t.getUTCMonth()-e.getUTCMonth()+this.year(e,t)*12},week:function(e,t,a){var r=a._adaptDayOfWeek(e.getUTCDay());var n=a._adaptDayOfWeek(t.getUTCDay());e=C(e,3);t=C(t,3);return(t.getTime()-e.getTime()-(n-r)*a._mScales.day*1e3)/(a._mScales.week*1e3)},day:function(e,t,a){e=C(e,3);t=C(t,3);return(t.getTime()-e.getTime())/(a._mScales.day*1e3)},hour:function(e,t,a){e=C(e,4);t=C(t,4);return(t.getTime()-e.getTime())/(a._mScales.hour*1e3)},minute:function(e,t,a){e=C(e,5);t=C(t,5);return(t.getTime()-e.getTime())/(a._mScales.minute*1e3)},second:function(e,t,a){e=C(e,6);t=C(t,6);return(t.getTime()-e.getTime())/(a._mScales.second*1e3)}};y.prototype._adaptDayOfWeek=function(e){var t=F(this.oFormatOptions),a;if(typeof t==="object"){a=t.firstDayOfWeek}else{a=h.getWeekConfigurationValues(t,this.oLocale).firstDayOfWeek}var r=e-(a-1);if(r<=0){r+=7}return r};y.prototype._getDifference=function(e,t){var a=t[0];var r=t[1];return Math.round(L[e](a,r,this))};y.prototype.getAllowedCharacters=function(e){if(this.oFormatOptions.relative){return""}var t="";var a=false;var r=false;var n;for(var i=0;i<e.length;i++){n=e[i];switch(n.type){case"text":if(t.indexOf(n.value)<0){t+=n.value}break;case"day":case"year":case"weekYear":case"dayNumberOfWeek":case"weekInYear":case"hour0_23":case"hour1_24":case"hour0_11":case"hour1_12":case"minute":case"second":case"fractionalsecond":if(!a){t+="0123456789";a=true}break;case"month":case"monthStandalone":if(n.digits<3){if(!a){t+="0123456789";a=true}}else{r=true}break;default:r=true;break}}if(r){t=""}return t};y.prototype.getPlaceholderText=function(){var e=u.getResourceBundleFor("sap.ui.core");return e.getText("date.placeholder",[this.format.apply(this,this.getSampleValue())])};y.prototype.getSampleValue=function(){var e,t=m.getInstance().getFullYear(),r=this.oFormatOptions.UTC;function n(e,t,a,n,i,o,s){return r?m.getInstance(Date.UTC(e,t,a,n,i,o,s)):m.getInstance(e,t,a,n,i,o,s)}e=n(t,11,31,23,59,58,123);if(this.type===v.DATETIME_WITH_TIMEZONE){return[e,a.getTimezone()]}if(this.oFormatOptions.interval){return[[n(t,11,22,9,12,34,567),e]]}return[e]};return y},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/format/DateFormatTimezoneDisplay", [],function(){"use strict";var e={Show:"Show",Hide:"Hide",Only:"Only"};return e},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/format/FileSizeFormat", ["sap/base/i18n/Formatting","sap/ui/base/Object","sap/ui/core/Lib","sap/ui/core/Locale","sap/ui/core/LocaleData","sap/ui/core/format/NumberFormat"],function(t,e,a,i,r,n){"use strict";var o=[{binaryFactor:1,decimalFactor:1,decimalUnit:"Byte",binaryUnit:"Byte"},{binaryFactor:1,decimalFactor:1,decimalUnit:"Bytes",binaryUnit:"Bytes"},{binaryFactor:Math.pow(2,10),decimalFactor:1e3,decimalUnit:"Kilobyte",binaryUnit:"Kibibyte"},{binaryFactor:Math.pow(2,20),decimalFactor:1e6,decimalUnit:"Megabyte",binaryUnit:"Mebibyte"},{binaryFactor:Math.pow(2,30),decimalFactor:1e9,decimalUnit:"Gigabyte",binaryUnit:"Gibibyte"},{binaryFactor:Math.pow(2,40),decimalFactor:1e12,decimalUnit:"Terabyte",binaryUnit:"Tebibyte"},{binaryFactor:Math.pow(2,50),decimalFactor:1e15,decimalUnit:"Petabyte",binaryUnit:"Pebibyte"},{binaryFactor:Math.pow(2,60),decimalFactor:1e18,decimalUnit:"Exabyte",binaryUnit:"Exbibyte"},{binaryFactor:Math.pow(2,70),decimalFactor:1e21,decimalUnit:"Zettabyte",binaryUnit:"Zebibyte"},{binaryFactor:Math.pow(2,80),decimalFactor:1e24,decimalUnit:"Yottabyte",binaryUnit:"Yobibyte"}];var s=e.extend("sap.ui.core.format.FileSizeFormat",{constructor:function(t){throw new Error}});s.getInstance=function(t,e){return this.createInstance(t,e)};s.createInstance=function(e,o){var s=Object.create(this.prototype);if(e instanceof i){o=e;e=undefined}if(!o){o=new i(t.getLanguageTag())}s.oLocale=o;s.oLocaleData=r.getInstance(o);s.oNumberFormat=n.getFloatInstance(e,o);s.oBundle=a.getResourceBundleFor("sap.ui.core",o.toString());s.bBinary=e?!!e.binaryFilesize:false;return s};s.prototype.format=function(t){var e=null,a;if(typeof t=="string"){try{if(/^\s*[\+-]?0[xX]/.test(t)){e=parseInt(t,16)}else{e=parseFloat(t,10)}}catch(t){}}else if(typeof t=="number"){e=t}if(e===null){return"NaN"}a=e;var i=c(e,this.bBinary),r=this.oNumberFormat.format(e/i.factor);if(!i.noSecondRounding){e=this.oNumberFormat.parse(r);if(this.bBinary&&Math.abs(e)>=1024||!this.bBinary&&Math.abs(e)>=1e3){i=c(e*i.factor,this.bBinary);r=this.oNumberFormat.format(a/i.factor)}}return this.oBundle.getText("FileSize."+i.unit,[r])};s.prototype.parse=function(t){var e,a,i,r;if(!t){return NaN}for(var n=0;n<o.length;n++){e=o[n];a=b(this.oBundle,e.decimalUnit,t);if(a){r=false;break}else{a=b(this.oBundle,e.binaryUnit,t);if(a){r=true;break}}}if(!a){a=t;r=false;e=o[0]}i=this.oNumberFormat.parse(a);return i*(r?e.binaryFactor:e.decimalFactor)};function c(t,e){var a=Math.abs(t),i,r;for(var n=o.length-1;n>=2;n--){i=o[n];r=e?i.binaryFactor:i.decimalFactor;if(a>=r){return{factor:r,unit:e?i.binaryUnit:i.decimalUnit,noSecondRounding:n==o.length-1}}}return{factor:1,unit:o[a>=2?1:0].decimalUnit}}function b(t,e,a){var i=t.getText("FileSize."+e),r;if(i.startsWith("{0}")){r=i.substr(3,i.length);if(typeof r=="string"&&r!=""?a.toLowerCase().endsWith(r.toLowerCase()):false){return a.substr(0,a.length-r.length)}}else if(i.endsWith("{0}")){r=i.substr(0,i.length-3);if(typeof r=="string"&&r!=""?a.toLowerCase().startsWith(r.toLowerCase()):false){return a.substr(r.length,a.length)}}else{r=i.split("{0}");if(r.length==2&&(typeof r[0]=="string"&&r[0]!=""?a.toLowerCase().startsWith(r[0].toLowerCase()):false)&&(typeof r[1]=="string"&&r[1]!=""?a.toLowerCase().endsWith(r[1].toLowerCase()):false)){return a.substr(r[0].length,a.length-r[1].length)}}return null}return s});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/format/FormatUtils", [],function(){"use strict";const u={};const e=/[\u061c\u200e\u200f\u202a\u202b\u202c]/g;const n=/\s/g;u.normalize=function(u,c){return u.replace(e,"").replace(n,c?"":" ")};return u});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/format/ListFormat", ["sap/base/i18n/Formatting","sap/ui/core/Locale","sap/ui/core/LocaleData","sap/base/Log","sap/base/util/extend","sap/base/util/isEmptyObject"],function(t,e,r,a,n,o){"use strict";var i=function(){throw new Error};i.oDefaultListFormat={type:"standard",style:"wide"};i.getInstance=function(t,e){return this.createInstance(t,e)};i.createInstance=function(a,o){var i=Object.create(this.prototype);if(a instanceof e){o=a;a=undefined}if(!o){o=new e(t.getLanguageTag())}i.oLocale=o;i.oLocaleData=r.getInstance(o);i.oOriginalFormatOptions=n({},this.oDefaultListFormat,a);return i};i.prototype.format=function(t){if(!Array.isArray(t)){a.error("ListFormat can only format with an array given.");return""}var e=this.oOriginalFormatOptions,r,n,i,s,l,p,c=[].concat(t),f,u;r=this.oLocaleData.getListFormat(e.type,e.style);if(o(r)){a.error("No list pattern exists for the provided format options (type, style).");return""}function g(t,e){var r=t[0];for(var a=1;a<t.length;a++){r=e.replace("{0}",r);r=r.replace("{1}",t[a])}return r}if(r[c.length]){n=r[c.length];for(var h=0;h<c.length;h++){n=n.replace("{"+h+"}",c[h])}i=n}else if(c.length<2){i=c.toString()}else{f=c.shift();p=c.pop();u=c;s=r.start.replace("{0}",f);p=r.end.replace("{1}",p);l=g(u,r.middle);i=s.replace("{1}",p.replace("{0}",l))}return i};i.prototype.parse=function(t){if(typeof t!=="string"){a.error("ListFormat can only parse a String.");return[]}var e=[],r=[],n=[],s=[],l=[],p=this.oOriginalFormatOptions,c,f=/\{[01]\}/g,u,g,h,y,m;if(!p){p=i.oDefaultListFormat}c=this.oLocaleData.getListFormat(p.type,p.style);if(o(c)){a.error("No list pattern exists for the provided format options (type, style).");return[]}h=c.start.replace(f,"");y=c.middle.replace(f,"");m=c.end.replace(f,"");r=t.split(h);e=e.concat(r.shift());s=r.join(h).split(m);u=s.pop();n=s.join(m).split(y);e=e.concat(n);e.push(u);if(r.length<1||n.length<1||s.length<1){g=c["2"].replace(f,"");l=t.split(g);if(l.length===2){return l}if(t){return[t]}else{return[]}}return e};return i});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/format/NumberFormat", ["sap/base/i18n/Formatting","sap/base/i18n/Localization","sap/ui/base/Object","sap/ui/core/Locale","sap/ui/core/LocaleData","sap/ui/core/Supportability","sap/ui/core/format/FormatUtils","sap/base/Log","sap/base/assert","sap/base/util/extend"],function(e,t,r,i,n,a,o,s,u,c){"use strict";var l=r.extend("sap.ui.core.format.NumberFormat",{constructor:function(e){throw new Error}});const f=/[0#.,]+/;const g=/\s/g;const m=/\p{L}$/u;const p=/^\p{L}/u;const d=/([0#.,]*)([^0#.,]*)(¤)([^0#.,]*)([0#.,]*)/;const h=/^(-?)0+(\d)/;const y=/0+(\.0+)?/;const C=/^0+$/;const b=/^-(0(?:.0+)?)$/;const S=/0+$/;const F=/[\u061c\u200e\u200f\u202a\u202b\u202c]/g;const D=/\u200e/;var O=function(e,t,r){var i=U(e);return new RegExp("^\\d+"+"(?:"+i+"?"+"\\d{"+t+"}"+")*"+""+i+"?"+"\\d{"+r+"}"+"$")};var N={INTEGER:"integer",FLOAT:"float",CURRENCY:"currency",UNIT:"unit",PERCENT:"percent"};var R={FLOOR:"FLOOR",CEILING:"CEILING",TOWARDS_ZERO:"TOWARDS_ZERO",AWAY_FROM_ZERO:"AWAY_FROM_ZERO",HALF_FLOOR:"HALF_FLOOR",HALF_CEILING:"HALF_CEILING",HALF_TOWARDS_ZERO:"HALF_TOWARDS_ZERO",HALF_AWAY_FROM_ZERO:"HALF_AWAY_FROM_ZERO"};l.add=function(e,t){const r=e.split(".");let i=r[0];const n=r[1];const a=i[0]==="-";if(a){i=i.slice(1);t=-t}const o=i.split("").map(Number);const s=o.length-1;o[s]+=t;for(let e=s;e>=0;e-=1){if(o[e]>=10){o[e]=o[e]%10;if(e===0){o.unshift(1);break}o[e-1]+=1}else if(o[e]<0&&e>0){o[e]=10+o[e];o[e-1]-=1;if(e===1&&o[0]===0){o.shift();break}}else{break}}if(a){o[0]=-o[0]}let u=o.join("");if(!n){return u}u=u==="0"&&a?"-0":u;const c=u[0]==="-"?"-":"";if(a===!!c){return u+"."+n}const l=n.split("").map(Number);for(let e=l.length-1;e>=0;e-=1){l[e]=10-l[e];if(e>0){l[e-1]+=1}}return c+(Math.abs(o[0])-1)+"."+l.join("")};l.getMaximumDecimals=function({decimals:e,maxFractionDigits:t}){if(t>=0&&e>0&&t<e){return t}return e};function L(e){if(typeof e==="number"){return Math.ceil(e)}const[t,r="0"]=e.split(".");return C.test(r)||t[0]==="-"?t:l.add(t,1)}function v(e){if(typeof e==="number"){return Math.floor(e)}const[t,r="0"]=e.split(".");return C.test(r)||t[0]!=="-"?t:l.add(t,-1)}function w(e,t){if(typeof e==="number"){return t?e+.5:e-.5}e=l._shiftDecimalPoint(e,1);e=l.add(e,t?5:-5);return l._shiftDecimalPoint(e,-1)}const I={[R.FLOOR]:v,[R.CEILING]:L,[R.TOWARDS_ZERO]:e=>e>0?v(e):L(e),[R.AWAY_FROM_ZERO]:e=>e>0?L(e):v(e),[R.HALF_TOWARDS_ZERO]:e=>{const t=e>0;e=w(e,!t);return t?L(e):v(e)},[R.HALF_AWAY_FROM_ZERO]:e=>{const t=e>0;e=w(e,t);return t?v(e):L(e)},[R.HALF_FLOOR]:e=>L(w(e,false)),[R.HALF_CEILING]:e=>v(w(e,true))};l.RoundingMode=R;l.oDefaultIntegerFormat={minIntegerDigits:1,maxIntegerDigits:99,minFractionDigits:0,maxFractionDigits:0,strictGroupingValidation:false,groupingEnabled:false,groupingSize:3,groupingSeparator:",",decimalSeparator:".",plusSign:"+",minusSign:"-",isInteger:true,type:N.INTEGER,showMeasure:false,style:"standard",showNumber:true,parseAsString:false,preserveDecimals:false,roundingMode:l.RoundingMode.TOWARDS_ZERO,emptyString:NaN,showScale:true};l.oDefaultFloatFormat={minIntegerDigits:1,maxIntegerDigits:99,minFractionDigits:0,maxFractionDigits:99,strictGroupingValidation:false,groupingEnabled:true,groupingSize:3,groupingSeparator:",",decimalSeparator:".",plusSign:"+",minusSign:"-",isInteger:false,type:N.FLOAT,showMeasure:false,style:"standard",showNumber:true,parseAsString:false,preserveDecimals:false,roundingMode:l.RoundingMode.HALF_AWAY_FROM_ZERO,emptyString:NaN,showScale:true};l.oDefaultPercentFormat={minIntegerDigits:1,maxIntegerDigits:99,minFractionDigits:0,maxFractionDigits:99,strictGroupingValidation:false,groupingEnabled:true,groupingSize:3,groupingSeparator:",",decimalSeparator:".",plusSign:"+",minusSign:"-",percentSign:"%",isInteger:false,type:N.PERCENT,showMeasure:false,style:"standard",showNumber:true,parseAsString:false,preserveDecimals:false,roundingMode:l.RoundingMode.HALF_AWAY_FROM_ZERO,emptyString:NaN,showScale:true};l.oDefaultCurrencyFormat={minIntegerDigits:1,maxIntegerDigits:99,strictGroupingValidation:false,groupingEnabled:true,groupingSize:3,groupingSeparator:",",decimalSeparator:".",plusSign:"+",minusSign:"-",isInteger:false,type:N.CURRENCY,showMeasure:true,currencyCode:true,currencyContext:"standard",style:"standard",showNumber:true,customCurrencies:undefined,parseAsString:false,preserveDecimals:false,roundingMode:l.RoundingMode.HALF_AWAY_FROM_ZERO,emptyString:NaN,showScale:true,ignorePrecision:true};l.oDefaultUnitFormat={minIntegerDigits:1,maxIntegerDigits:99,strictGroupingValidation:false,groupingEnabled:true,groupingSize:3,groupingSeparator:",",decimalSeparator:".",plusSign:"+",minusSign:"-",isInteger:false,type:N.UNIT,showMeasure:true,style:"standard",showNumber:true,customUnits:undefined,allowedUnits:undefined,parseAsString:false,preserveDecimals:false,roundingMode:l.RoundingMode.HALF_AWAY_FROM_ZERO,emptyString:NaN,showScale:true};l.checkDecimalPadding=function(e,t=true,r=false){const i=e?.decimalPadding;if(!t&&i!==undefined){throw new Error("Unsupported format option: 'decimalPadding' cannot be used with an integer or percent"+" instance of sap.ui.core.format.NumberFormat")}if(r&&i&&e?.showMeasure!==false){throw new Error("The format option 'decimalPadding' can only be used if the format option"+" 'showMeasure' is set to false")}if(i<1){throw new Error("The format option 'decimalPadding' must have a value greater than 0")}if(i>0&&(e?.style==="short"||e?.style==="long")){throw new Error("The format option 'decimalPadding' can only be used if the format option"+" 'style' is not set to 'short' or 'long'")}};l.getInstance=function(e,t){return this.getFloatInstance(e,t)};l.getFloatInstance=function(e,t){l.checkDecimalPadding(e);const r=l.createInstance(e,t);const i=r.getLocaleFormatOptions(N.FLOAT);r.oFormatOptions=c({},this.oDefaultFloatFormat,i,r.oOriginalFormatOptions);return r};l.getIntegerInstance=function(e,t){l.checkDecimalPadding(e,false);const r=l.createInstance(e,t);const i=r.getLocaleFormatOptions(N.INTEGER);r.oFormatOptions=c({},l.oDefaultIntegerFormat,i,r.oOriginalFormatOptions);return r};l.getCurrencyInstance=function(e,t){l.checkDecimalPadding(e,true,true);const r=l.createInstance(e,t);const i=r.getLocaleFormatOptions(N.CURRENCY);r.oFormatOptions=c({},l.oDefaultCurrencyFormat,i,r.oOriginalFormatOptions);r.oFormatOptions.trailingCurrencyCode=r.showTrailingCurrencyCode();r._defineCustomCurrencySymbols();if(r.oFormatOptions.style==="long"){r.oFormatOptions.style="short"}return r};l.getUnitInstance=function(e,t){l.checkDecimalPadding(e,true,true);const r=l.createInstance(e,t);const i=r.getLocaleFormatOptions(N.UNIT);r.oFormatOptions=c({},l.oDefaultUnitFormat,i,r.oOriginalFormatOptions);return r};l.getPercentInstance=function(e,t){l.checkDecimalPadding(e,false);const r=l.createInstance(e,t);const i=r.getLocaleFormatOptions(N.PERCENT);r.oFormatOptions=c({},l.oDefaultPercentFormat,i,r.oOriginalFormatOptions);return r};l.createInstance=function(t,r){var a=Object.create(this.prototype),o;if(t instanceof i){r=t;t=undefined}if(!r){r=new i(e.getLanguageTag())}a.oLocale=r;a.oLocaleData=n.getInstance(r);a.oOriginalFormatOptions=t;if(t){if(t.pattern){o=this.parseNumberPattern(t.pattern);Object.keys(o).forEach(function(e){t[e]=o[e]})}if(t.emptyString!==undefined){u(t.emptyString===""||t.emptyString===0||t.emptyString===null||t.emptyString!==t.emptyString,"The format option 'emptyString' must be either '', 0, null, or NaN")}}return a};l.getDefaultUnitPattern=function(e){return"{0} "+e};l.prototype.getLocaleFormatOptions=function(e){const t=this.oLocaleData;let r;let i;switch(e){case N.PERCENT:r=t.getPercentPattern();break;case N.CURRENCY:i=this.oOriginalFormatOptions?.currencyContext||l.oDefaultCurrencyFormat.style;if(this.showTrailingCurrencyCode()){i="sap-"+i}r=t.getCurrencyPattern(i);break;default:r=t.getDecimalPattern()}const n=l.parseNumberPattern(r);n.plusSign=t.getNumberSymbol("plusSign");n.minusSign=t.getNumberSymbol("minusSign");n.decimalSeparator=t.getNumberSymbol("decimal");n.groupingSeparator=t.getNumberSymbol("group");n.percentSign=t.getNumberSymbol("percentSign");n.pattern=r;switch(e){case N.INTEGER:n.minFractionDigits=0;n.maxFractionDigits=0;n.groupingEnabled=false;break;case N.CURRENCY:n.minFractionDigits=undefined;n.maxFractionDigits=undefined;break;default:n.minFractionDigits=0;n.maxFractionDigits=99}return n};l.parseNumberPattern=function(e){var t=0,r=0,i=0,n=false,a=0,o=0,s=e.indexOf(";"),u={Integer:0,Fraction:1},c=u.Integer;if(s!==-1){e=e.substring(0,s)}for(var l=0;l<e.length;l++){var f=e[l];switch(f){case",":if(n){a=o;o=0}n=true;break;case".":c=u.Fraction;break;case"0":if(c===u.Integer){t++;if(n){o++}}else{r++;i++}break;case"#":if(c===u.Integer){if(n){o++}}else{i++}break}}if(!a){a=o;o=0}return{minIntegerDigits:t,minFractionDigits:r,maxFractionDigits:i,groupingEnabled:n,groupingSize:a,groupingBaseSize:o}};l.prototype._defineCustomCurrencySymbols=function(){var e=this.oFormatOptions;var t=this.oLocaleData.getCurrencySymbols();var r=function(e,t){var r=[];var i;for(var n in e){i=e[n];if(r.indexOf(i)===-1){r.push(i)}else if(i!==undefined){t[i]=true;s.error("Symbol '"+i+"' is defined multiple times in custom currencies.",undefined,"NumberFormat")}}};if(e.customCurrencies&&typeof e.customCurrencies==="object"){this.mKnownCurrencySymbols={};this.mKnownCurrencyCodes={};Object.keys(e.customCurrencies).forEach(function(r){if(e.customCurrencies[r].symbol){this.mKnownCurrencySymbols[r]=e.customCurrencies[r].symbol}else{var i=e.customCurrencies[r].isoCode;if(i){this.mKnownCurrencySymbols[r]=t[i]}}this.mKnownCurrencyCodes[r]=r}.bind(this))}else{this.mKnownCurrencySymbols=t;this.mKnownCurrencyCodes=this.oLocaleData.getCustomCurrencyCodes()}this.mDuplicatedSymbols={};r(this.mKnownCurrencySymbols,this.mDuplicatedSymbols)};function E(e,t){if(e.indexOf(".")>=0&&e.endsWith("0")){var r=e.length-e.lastIndexOf(".")-1;var i=r-t;if(i>0){while(e.endsWith("0")&&i-- >0){e=e.substring(0,e.length-1)}if(e.endsWith(".")){e=e.substring(0,e.length-1)}}}return e}function _(e,t){var r=t.groupingSize,i=t.groupingBaseSize||r,n=e.length,a=Math.max(n-i,0)%r||r,o=e.slice(0,a);while(n-a>=i){o+=t.groupingSeparator;o+=e.slice(a,a+r);a+=r}o+=e.slice(a,n);return o}l.prototype.format=function(e,t){if(Array.isArray(e)){t=e[1];e=e[0]}var r="",i="",a="",o="",u="",c="",g=e<0,m=-1,p=Object.assign({},this.oFormatOptions),d=this.oOriginalFormatOptions,h=p.type===N.CURRENCY&&t==="INR"&&this.oLocale.getLanguage()==="en"&&this.oLocale.getRegion()==="IN",y,C,b,S,F,O=e===undefined||e===null;if(p.groupingEnabled&&p.groupingSize<=0){s.error("Grouping requires the 'groupingSize' format option to be a positive number, but it is '"+p.groupingSize+"' instead.");return""}if(p.showNumber&&(e===p.emptyString||isNaN(e)&&isNaN(p.emptyString))){return""}if(t!==undefined&&t!==null&&typeof t!=="string"&&!(t instanceof String)){return""}if(!p.showNumber&&!t){return""}if(O&&(!t||!p.showMeasure||p.showNumber)){return""}if(t&&p.customCurrencies&&!p.customCurrencies[t]){s.error("Currency '"+t+"' is unknown.");return""}if(!p.showNumber&&!p.showMeasure){return""}if(t&&p.type===N.UNIT){if(p.customUnits&&typeof p.customUnits==="object"){S=p.customUnits[t]}else{F=this.oLocaleData.getUnitFromMapping(t)||t;S=this.oLocaleData.getUnitFormat(F)}if(p.showMeasure){var R=!p.allowedUnits||p.allowedUnits.indexOf(t)>=0;if(!R){return""}}if(!S&&!p.showNumber){return this._addOriginInfo(t)}}if(p.type===N.UNIT){p.decimals=S&&(typeof S.decimals==="number"&&S.decimals>=0)?S.decimals:p.decimals;p.decimals=l.getMaximumDecimals(p);p.precision=S&&(typeof S.precision==="number"&&S.precision>=0)?S.precision:p.precision}let L;if(p.type===N.CURRENCY){L=this.getCurrencySymbolOrCode(t,p.currencyCode);if(t&&p.trailingCurrencyCode){if(!this.mKnownCurrencyCodes[t]&&!/(^[A-Z]{3}$)/.test(t)){p.trailingCurrencyCode=false}}if(!p.showNumber){return L}if(p.style==="long"||p.style==="short"){p.maxFractionDigits??=0}else{if(p.customCurrencies?.[t]?.decimals!==undefined){p.decimals=p.customCurrencies[t].decimals}else{p.decimals??=this.oLocaleData.getCurrencyDigits(t)}p.decimals=l.getMaximumDecimals(p)}}if(p.decimals!==undefined){p.minFractionDigits=p.decimals;p.maxFractionDigits=p.decimals}if(p.shortLimit===undefined||Math.abs(e)>=p.shortLimit){C=p.shortRefNumber===undefined?e:p.shortRefNumber;y=this.getShortenedFormat(C,p,h);if(y&&y.formatString!="0"){e=e/y.magnitude;if(p.shortDecimals!==undefined){p.minFractionDigits=p.shortDecimals;p.maxFractionDigits=p.shortDecimals}else{if(d.minFractionDigits===undefined&&d.maxFractionDigits===undefined&&d.decimals===undefined&&d.precision===undefined&&d.pattern===undefined){p.precision=2;p.minFractionDigits=0;p.maxFractionDigits=99}if(d.maxFractionDigits===undefined&&d.decimals===undefined){p.maxFractionDigits=99}}p.roundingMode=l.RoundingMode.HALF_AWAY_FROM_ZERO}}if((y||!p.ignorePrecision)&&p.precision!==undefined){p.maxFractionDigits=Math.min(p.maxFractionDigits,T(e,p.precision));p.minFractionDigits=Math.min(p.minFractionDigits,p.maxFractionDigits)}if(p.type==N.PERCENT){e=l._shiftDecimalPoint(e,2)}if((typeof e==="number"||typeof e==="string"&&typeof p.roundingMode!=="function")&&!p.preserveDecimals){e=M(e,p.maxFractionDigits,p.roundingMode)}if(e==0){g=false}if(!O){u=n.convertToDecimal(e)}if(u==="NaN"){return u}if(p.preserveDecimals){u=E(u,p.maxFractionDigits)}if(g){u=u.substr(1)}m=u.indexOf(".");if(m>-1){r=u.substr(0,m);i=u.substr(m+1)}else{r=u}if(r.length<p.minIntegerDigits){r=r.padStart(p.minIntegerDigits,"0")}else if(r.length>p.maxIntegerDigits){r="".padStart(p.maxIntegerDigits,"?")}if(i.length<p.minFractionDigits){i=i.padEnd(p.minFractionDigits,"0")}else if(i.length>p.maxFractionDigits&&!p.preserveDecimals){i=i.substr(0,p.maxFractionDigits)}if(p.type===N.UNIT&&!p.showNumber){if(S){b=this._getPluralCategory(r,i,y);c=S["unitPattern-count-"+b];if(!c){c=S["unitPattern-count-other"]}if(!c){return this._addOriginInfo(t)}if(b!=="other"&&c.indexOf("{0}")===-1){c=S["unitPattern-count-other"];if(!c){return this._addOriginInfo(t)}}if(c.indexOf("{0}")===-1){s.warning("Cannot separate the number from the unit because unitPattern-count-other '"+c+"' does not include the number placeholder '{0}' for unit '"+t+"'")}else{return this._addOriginInfo(c.replace("{0}","").trim())}}}if(p.groupingEnabled){a=_(r,p)}else{a=r}const v=p.decimalPadding||0;if(v){p.minusSign=p.minusSign.replace(D,"")}if(g){o=p.minusSign}o+=a;if(i){o+=p.decimalSeparator+i}const w=y&&y.formatString&&p.showScale;let I;if(w){b=this._getPluralCategory(r,i);I=this.getCompactPattern(p.type,p.style,y.key,b,p.trailingCurrencyCode,h,t&&p.showMeasure,L,g);if(p.type!==N.CURRENCY){o=I.replace(y.valueSubString,o)}}if(p.type===N.CURRENCY){c=w?I:this.getCurrencyPattern(p.currencyContext,p.trailingCurrencyCode,t&&p.showMeasure,L,g);o=l._composeCurrencyResult(c,o,L,p.minusSign,g)}if(p.type===N.PERCENT){c=p.pattern;o=c.replace(f,o);o=o.replace(/%/,p.percentSign)}if(p.showMeasure&&t&&p.type===N.UNIT){b=this._getPluralCategory(r,i,y);if(S){c=S["unitPattern-count-"+b];if(!c){c=S["unitPattern-count-other"]}if(!c){c=l.getDefaultUnitPattern(t)}}else{c=l.getDefaultUnitPattern(t)}o=c.replace("{0}",o)}let A=v-i.length;if(A>0){const e=o[o.length-1]===")";const t=" ";if(i){if(e){o+=t;A=A-1}}else if(!e){o+=t}o+=" ".repeat(A)}return this._addOriginInfo(o)};l.prototype.getCurrencySymbolOrCode=function(e,t){if(t){return e}return(typeof this.oFormatOptions.customCurrencies==="object"?this.mKnownCurrencySymbols[e]:this.oLocaleData.getCurrencySymbol(e))||e};l.prototype._getPluralCategory=function(e,t,r){var i=e;if(t){i+="."+t}if(r){i+="c"+r.magnitude.toExponential().slice(2)}return this.oLocaleData.getPluralCategory(i)};l.prototype._addOriginInfo=function(e){if(a.collectOriginInfo()){e=new String(e);e.originInfo={source:"Common Locale Data Repository",locale:this.oLocale.toString()}}return e};l._composeCurrencyResult=function(e,t,r,i,n){const a=e.split(";");if(a.length===2){e=a[n?1:0];if(n){t=t.slice(i.length)}}let o=e.replace("-",i).replace(f,t).replace("¤",r);if(n){o=o.replace(r+i,r+"\ufeff"+i)}return o};l.prototype.parse=function(e){var t=this.oFormatOptions,r=t.plusSign+this.oLocaleData.getLenientNumberSymbols("plusSign"),i=t.minusSign+this.oLocaleData.getLenientNumberSymbols("minusSign"),n=U(r+i),a=U(t.groupingSeparator),c=U(t.decimalSeparator),f="^\\s*(["+n+"]?(?:[0-9"+a+"]+|[0-9"+a+"]*"+c+"[0-9]*)(?:[eE][+-][0-9]+)?)\\s*$",m="^\\s*(["+n+"]?[0-9"+a+"]+)\\s*$",p=new RegExp(a,"g"),d=new RegExp(c,"g"),h=this.oLocaleData.getNumberSymbol("percentSign"),y=t.type===N.CURRENCY&&this.oLocale.getLanguage()==="en"&&this.oLocale.getRegion()==="IN",C,b,S,F,D=0,O,R;if(typeof e!=="string"&&!(e instanceof String)){return null}e=o.normalize(e).trim();if(e===""){const e=t.type===N.CURRENCY||t.type===N.UNIT;if(!t.showNumber&&!e){return null}R=t.emptyString;if(t.parseAsString&&(t.emptyString===0||isNaN(t.emptyString))){R=t.emptyString+""}if(e){if(!t.showNumber){return[undefined,R]}return[R,undefined]}else{return R}}if(t.groupingSeparator===t.decimalSeparator){s.error("The grouping and decimal separator both have the same value '"+t.groupingSeparator+"'. "+"They must be different from each other such that values can be parsed correctly.")}F=t.type===N.PERCENT?t.pattern:this.oLocaleData.getPercentPattern();if(F.charAt(0)==="%"){f=f.slice(0,1)+"%?"+f.slice(1)}else if(F.charAt(F.length-1)==="%"){f=f.slice(0,f.length-1)+"%?"+f.slice(f.length-1)}var L;if(t.type===N.UNIT&&t.showMeasure){var v;if(t.customUnits&&typeof t.customUnits==="object"){v=t.customUnits}else{v=this.oLocaleData.getUnitFormats()}u(v,"Unit patterns cannot be loaded");if(t.allowedUnits){var w={};for(var I=0;I<t.allowedUnits.length;I++){var E=t.allowedUnits[I];w[E]=v[E]}v=w}var _=W(v,e,t.showNumber,this.oLocaleData.sCLDRLocaleId);var M=false;L=_.cldrCode;if(L.length===1){S=L[0];if(!t.showNumber){return[undefined,S]}}else if(L.length===0){if(t.unitOptional){_.numberValue=e}else{return null}}else{u(L.length===1,"Ambiguous unit ["+L.join(", ")+"] for input: '"+e+"'");S=undefined;M=true}if(t.strictParsing){if(M){return null}}e=_.numberValue||e}var T;if(t.type===N.CURRENCY&&t.showMeasure){T=Y({value:e,currencySymbols:this.mKnownCurrencySymbols,customCurrencyCodes:this.mKnownCurrencyCodes,duplicatedSymbols:this.mDuplicatedSymbols,customCurrenciesAvailable:!!t.customCurrencies});if(!T){return null}if(t.strictParsing){if(!T.currencyCode||T.duplicatedSymbolFound){return null}}e=T.numberValue;S=T.currencyCode;if(t.customCurrencies&&S===null){return null}if(!t.showNumber){if(e){return null}return[undefined,S]}}e=e.replace(g,"");O=A(e,this.oLocaleData,y);if(O){e=O.number}var z=P(e);if(t.isInteger&&!O&&!z){C=new RegExp(m)}else{C=new RegExp(f)}if(!C.test(e)){return t.type===N.CURRENCY||t.type===N.UNIT?null:NaN}var k=e.length;for(var G=0;G<k;G++){var Z=e[G];if(r.includes(Z)){e=e.replace(Z,"+");break}else if(i.includes(Z)){e=e.replace(Z,"-");break}}e=e.replace(/^\+/,"");if(!t.isInteger&&e.indexOf(h)!==-1){b=true;e=e.replace(h,"")}var $=e;e=e.replace(p,"");if(O){e=e.replace(d,".");e=l._shiftDecimalPoint(e,Math.round(Math.log(O.factor)/Math.LN10))}if(t.isInteger){var H;if(z){e=e.replace(d,".");H=x(e);if(H===undefined){return NaN}}else{H=parseInt(e)}D=t.parseAsString?e:H}else{e=e.replace(d,".");D=t.parseAsString?e:parseFloat(e);if(b){D=l._shiftDecimalPoint(D,-2)}}var V=this._checkGrouping($,t,z);if(!V){return t.type===N.CURRENCY||t.type===N.UNIT?null:NaN}if(t.parseAsString&&!b){D=l._shiftDecimalPoint(e,0)}if(t.type===N.CURRENCY||t.type===N.UNIT){return[D,S]}return D};l.prototype.getScale=function(){if(this.oFormatOptions.style!=="short"&&this.oFormatOptions.style!=="long"||this.oFormatOptions.shortRefNumber===undefined){return}var e=this.getShortenedFormat(this.oFormatOptions.shortRefNumber,this.oFormatOptions),t;if(e&&e.formatString){t=e.formatString.replace(y,"").replace(/'.'/g,".").trim();if(t){return t}}};l._shiftDecimalPoint=function(e,t,r){var i="";var n=e.toString().toLowerCase().split("e");if(typeof e==="number"){t=n[1]?+n[1]+t:t;return+(n[0]+"e"+t)}else if(typeof e==="string"){if(!r&&parseFloat(e)===0&&t>=0){return e.replace(h,"$1$2")}var a=n[0].charAt(0);i=a==="-"?a:"";if(i||a==="+"){n[0]=n[0].slice(1)}e=n[0];var o=e.indexOf("."),s,u,c;if(o===-1){e=e+".";o=e.length-1}if(n[1]){o+=+n[1]}s=o+t;if(s<=0){e=e.padStart(e.length-s+1,"0");s=1}else if(s>=e.length-1){e=e.padEnd(s+1,"0");s=e.length-1}e=e.replace(".","");u=e.substring(0,s);c=e.substring(s);u=u.replace(h,"$1$2");if(r){c=c.replace(S,"")}return i+u+(c?"."+c:"")}else{return null}};l.isAlphaNextToNumber=function(e,t,r){if(!e||!t){return false}const i=e.split(";");e=(i[r?1:0]||i[0]).replace(F,"");const n=d.exec(e);if(n[1]){return p.test(t)&&!n[2]}return!n[4]&&m.test(t)&&(!r||i.length!==1)};l.prototype.getCompactPattern=function(e,t,r,i,n,a,o,s,u){let c;if(e===N.CURRENCY){if(n){t="sap-short"}if(a){t+="-indian"}if(o){c=this.oLocaleData.getCompactCurrencyPattern(t,r,i);if(l.isAlphaNextToNumber(c,s,u)){c=this.oLocaleData.getCompactCurrencyPattern(t,r,i,"alphaNextToNumber")||c}}else{c=this.oLocaleData.getCompactCurrencyPattern(t,r,i,"noCurrency");if(!c){if(t.startsWith("sap-")){t=t.slice(4)}c=this.oLocaleData.getCompactDecimalPattern(t,r,i)}}}else{c=this.oLocaleData.getCompactDecimalPattern(t,r,i)}c=c?.replace(/'.'/g,".");return c};l.prototype.getCurrencyPattern=function(e,t,r,i,n){if(t){e="sap-"+e}let a=this.oLocaleData.getCurrencyPattern(e,r?undefined:"noCurrency");if(r&&l.isAlphaNextToNumber(a,i,n)){a=this.oLocaleData.getCurrencyPattern(e,"alphaNextToNumber")||a}return a};l.prototype.getShortenedFormat=function(e,t,r){var i,n,a,o=t.style,s=t.precision!==undefined?t.precision:2;if(o!="short"&&o!="long"){return undefined}for(var u=0;u<15;u++){n=Math.pow(10,u);if(M(Math.abs(e)/n,s-1)<10){break}}a=n.toString();const c=this.getCompactPattern(t.type,t.style,a,"other",t.trailingCurrencyCode,r,t.showMeasure);if(!c||c=="0"){return undefined}else{i={};i.key=a;i.formatString=c;var l=c.match(y);if(l){i.valueSubString=l[0];var f=i.valueSubString.indexOf(".");if(f==-1){i.decimals=0;i.magnitude=n*Math.pow(10,1-i.valueSubString.length)}else{i.decimals=i.valueSubString.length-f-1;i.magnitude=n*Math.pow(10,1-f)}}else{return undefined}}return i};function A(e,t,r){var i,n=1,a=10,s=t.getPluralCategories(),u,c={number:undefined,factor:n},l=function(r,a,s){u=t.getCompactDecimalPattern(s,a.toString(),r);if(u){u=o.normalize(u,true);u=u.replace(/'.'/g,".");var l=u.match(y);if(l){var f=l[0];var g=u.replace(f,"");if(!g){return}var m=e.indexOf(g);if(m>=0){i=e.replace(g,"");n=a;n*=Math.pow(10,1-f.length);if(c.number===undefined||i.length<c.number.length){c.number=i;c.factor=n}}}}};["long","short"].forEach(function(e){a=10;while(a<1e15){for(var t=0;t<s.length;t++){var r=s[t];l(r,a,e)}a=a*10}});if(r&&!i){a=10;while(a<1e15){for(var f=0;f<s.length;f++){var g=s[f];l(g,a,"short-indian")}a=a*10}}if(!i){return}return c}l.prototype.showTrailingCurrencyCode=function(){const t=this.oOriginalFormatOptions;if(t?.pattern||t?.currencyCode===false){return false}return t?.trailingCurrencyCode!==undefined?t.trailingCurrencyCode:e.getTrailingCurrencyCode()};l.prototype._checkGrouping=function(e,t,r){if(t.groupingSeparator&&e.includes(t.groupingSeparator)){e=e.replace(/^-/,"");e=e.replace(/^0+(\d)/,"$1");if(e.startsWith("0")||e.startsWith(t.groupingSeparator)){return false}if(r){e=e.replace(/[eE].*/,"")}var i=e.includes(t.decimalSeparator);if(t.decimalSeparator===t.groupingSeparator){i=false}else if(i){e=e.split(t.decimalSeparator)[0]}var n=e.split(t.groupingSeparator).length===2;if(n&&!i){var a=e.length-e.lastIndexOf(t.groupingSeparator);var o=t.groupingBaseSize||t.groupingSize;if(a!==o+t.groupingSeparator.length){return false}}if(t.strictGroupingValidation){if(!this._rGrouping){this._rGrouping=O(t.groupingSeparator,t.groupingSize,t.groupingBaseSize||t.groupingSize)}if(!this._rGrouping.test(e)){return false}}}return true};function P(e){return e.indexOf("e")>0||e.indexOf("E")>0}function x(e){var t=l._shiftDecimalPoint(e,0);if(t.indexOf(".")>0&&!C.test(t.split(".")[1])){return undefined}var r=parseFloat(t);var i=""+r;if(P(i)){i=l._shiftDecimalPoint(i,0)}var n=parseInt(i);if(n!==r){return undefined}return n}function M(e,t,r){r=r||l.RoundingMode.HALF_AWAY_FROM_ZERO;t=parseInt(t);var i=""+e;if(!P(i)){var n=i.indexOf(".");if(n<0){return e}if(i.substring(n+1).length<=t){if(typeof e==="string"){e=l._shiftDecimalPoint(e,0,true)}return e}}if(typeof r==="function"){e=r(e,t)}else{if(r.match(/^[a-z_]+$/)){r=r.toUpperCase()}e=l._shiftDecimalPoint(e,t,true);e=I[r](e);e=l._shiftDecimalPoint(e,-t,true);if(typeof e==="string"){e=e.replace(b,"$1")}}return e}function U(e){return e.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")}function T(e,t){var r=Math.floor(Math.log(Math.abs(e))/Math.LN10);return Math.max(0,t-r-1)}function W(e,t,r,i){var n,a,s,u,c,l,f,g,m,p,d,h={numberValue:undefined,cldrCode:[]},y=[],C=true,b=true,S=Number.POSITIVE_INFINITY,F=true,D=t.toLocaleLowerCase(i);for(m in e){for(a in e[m]){if(!a.startsWith("unitPattern")){continue}p=o.normalize(e[m][a]);u=p.indexOf("{0}");n=u>-1;if(n&&!r){p=p.replace("{0}","").trim();n=false}s=undefined;C=true;if(n){f=p.substring(0,u);g=f.toLocaleLowerCase(i);c=p.substring(u+"{0}".length);l=c.toLocaleLowerCase(i);if(t.startsWith(f)&&t.endsWith(c)){s=t.substring(f.length,t.length-c.length)}else if(D.startsWith(g)&&D.endsWith(l)){C=false;s=t.substring(g.length,D.length-l.length)}if(s){if(s.length<S){S=s.length;F=C;h.numberValue=s;h.cldrCode=[m]}else if(s.length===S&&h.cldrCode.indexOf(m)===-1){if(C&&!F){h.numberValue=s;h.cldrCode=[m];F=true}else if(C||!F){h.cldrCode.push(m)}}}}else{d=p.toLocaleLowerCase(i);if(p===t||d===D){if(r){if(a.endsWith("-zero")){s="0"}else if(a.endsWith("-one")){s="1"}else if(a.endsWith("-two")){s="2"}if(p===t){h.numberValue=s;h.cldrCode=[m];return h}else if(!h.cldrCode.includes(m)){b=false;h.numberValue=s;h.cldrCode.push(m)}}else if(h.cldrCode.indexOf(m)===-1){if(p===t){h.cldrCode.push(m)}else if(!y.includes(m)){y.push(m)}}}}}}if((!F||!b)&&h.cldrCode.length>1){h.numberValue=undefined}if(!r&&!h.cldrCode.length){h.cldrCode=y}return h}function z(e,r,i){var n,a,s,u,c,l,f,g,m=false,p=false,d="";for(a in r){s=r[a];if(!s){continue}s=o.normalize(s);if(e.indexOf(s)>=0&&d.length<=s.length){n=a;m=false;p=true;d=s;f=s}else if(i){l=t.getLanguageTag().toString();u=s.toLocaleUpperCase(l);c=e.toLocaleUpperCase(l).indexOf(u);if(c>=0){if(d.length===s.length&&!p){m=true}else if(d.length<s.length){g=e.substring(c,c+s.length);if(g.toLocaleUpperCase(l)===u){n=a;m=false;p=false;d=s;f=g}}}}}if(m||!n){return{}}return{code:n,recognizedCurrency:f,symbol:d}}function Y(e){var r,i=e.value;var n=z(i,e.currencySymbols);if(!n.code){n=z(i,e.customCurrencyCodes,true);if(!n.code&&!e.customCurrenciesAvailable){r=i.match(/(^[A-Z]{3}|[A-Z]{3}$)/i);n.code=r&&r[0].toLocaleUpperCase(t.getLanguageTag().toString());n.recognizedCurrency=r&&r[0]}}if(n.code){var a=n.recognizedCurrency.length-1;var o=n.recognizedCurrency.charAt(a);var u;var c=/[\-\s]+/;if(/\d$/.test(o)){if(i.startsWith(n.recognizedCurrency)){u=a+1;if(!c.test(i.charAt(u))){return undefined}}}else if(/^\d/.test(n.recognizedCurrency)){if(i.endsWith(n.recognizedCurrency)){u=i.indexOf(n.recognizedCurrency)-1;if(!c.test(i.charAt(u))){return undefined}}}i=i.replace(n.recognizedCurrency,"")}var l=false;if(e.duplicatedSymbols&&e.duplicatedSymbols[n.symbol]){n.code=undefined;l=true;s.error("The parsed currency symbol '"+n.symbol+"' is defined multiple "+"times in custom currencies.Therefore the result is not distinct.")}return{numberValue:i,currencyCode:n.code||undefined,duplicatedSymbolFound:l}}return l});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/format/TimezoneUtil", ["sap/base/i18n/date/TimezoneUtils"],function(e){"use strict";return e});
/*!
* OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
*/
sap.ui.predefine("sap/ui/core/hyphenation/Hyphenation", ["./HyphenationTestingWords","sap/base/i18n/Localization","sap/ui/base/ManagedObject","sap/base/Log","sap/ui/core/Locale"],function(e,n,t,r,i){"use strict";var a={bg:true,ca:true,hr:true,cs:false,// no valid license
da:true,nl:true,"en-us":true,et:true,fi:true,fr:true,de:true,"el-monoton":true,hi:true,hu:true,it:true,lt:true,"nb-no":true,pl:false,// no valid license
pt:true,ru:true,sr:false,// no valid license
sl:true,es:true,sv:true,th:true,tr:true,uk:true};var o={bg:"Bulgarian",ca:"Catalan",hr:"Croatian",cs:"Czech",da:"Danish",nl:"Dutch",en:"English",et:"Estonian",fi:"Finnish",fr:"French",de:"German",el:"Greek",hi:"Hindi",hu:"Hungarian",it:"Italian",lt:"Lithuanian",nb:"Norwegian Bokmål",no:"Norwegian",pl:"Polish",pt:"Portuguese",ru:"Russian",sr:"Serbian",sl:"Slovenian",es:"Spanish",sv:"Swedish",th:"Thai",tr:"Turkish",uk:"Ukrainian"};var u={};var s={};var p={};var h=null;var l=null;var y={};function c(e){r.info("[UI5 Hyphenation] Initializing third-party module for language "+P(e),"sap.ui.core.hyphenation.Hyphenation.initialize()");var n=d();n.require[e]="FORCEHYPHENOPOLY";return f(sap.ui.require.toUrl("sap/ui/thirdparty/hyphenopoly/"),"Hyphenopoly_Loader.js").then(function(){delete n.require[e];return window.Hyphenopoly.hyphenators[e]})}function d(){if(!window.Hyphenopoly){window.Hyphenopoly={require:{},setup:{selectors:{".hyphenate":{hyphen:"­",leftmin:3,rightmin:3,compound:"all"}},hide:"DONT_HIDE"},handleEvent:{error:function(e){if(e.msg.match(/engine for language .* loaded, but no elements found./)){e.preventDefault()}}}}}return window.Hyphenopoly}function f(e,n){return new Promise(function(t,r){var i=document.createElement("script");i.async=true;i.src=e+n;i.addEventListener("load",t);i.addEventListener("error",function(){return r("Error loading script: "+n)});i.addEventListener("abort",function(){return r(n+" Script loading aborted.")});document.head.appendChild(i)})}var g=function e(){var n=["visibility:hidden;","-moz-hyphens:auto;","-webkit-hyphens:auto;","hyphens:auto;","width:48px;","font-size:12px;","line-height:12px;","border:none;","padding:0;","word-wrap:normal"];return n.join("")}();function v(e,n){if(!l){l=document.createElement("body")}var t=document.createElement("div");t.lang=e;t.id=e;t.style.cssText=g;t.appendChild(document.createTextNode(n));l.appendChild(t)}function m(e){if(l){e.appendChild(l);return l}return null}function w(){if(l){l.parentNode.removeChild(l)}}function H(e){return e.style.hyphens==="auto"||e.style.webkitHyphens==="auto"||e.style.msHyphens==="auto"||e.style["-moz-hyphens"]==="auto"}function b(e){var t;if(e){t=new i(e)}else{t=new i(n.getLanguageTag())}var r=t.getLanguage().toLowerCase();switch(r){case"en":r="en-us";break;case"nb":r="nb-no";break;case"no":r="nb-no";break;case"el":r="el-monoton";break;default:break}return r}function L(e){if(e){return new i(e).toString()}return new i(n.getLanguageTag()).toString()}function I(e){if(typeof e==="string"){const n=e.split(/[-_]/);return n[0]}else{return null}}function P(e){var n=I(e);if(o.hasOwnProperty(n)){return"'"+o[n]+"' (code:'"+n+"')"}else{return"'"+n+"'"}}function E(e){h.fireError(e);r.error("[UI5 Hyphenation] "+e,"sap.ui.core.hyphenation.Hyphenation")}var k=t.extend("sap.ui.core.hyphenation.Hyphenation",{metadata:{library:"sap.ui.core",events:{error:{parameters:{sErrorMessage:{type:"string"}}}}}});k.prototype.canUseNativeHyphenation=function(n){var t=L(n),i=b(n),a;if(!this.isLanguageSupported(i)){return null}if(!u.hasOwnProperty(t)){v(t,e[i.toLowerCase()]);var o=m(document.documentElement);if(o!==null){var s=document.getElementById(t);if(H(s)&&s.offsetHeight>12){a=true}else{a=false}w()}u[t]=a;if(a){r.info("[UI5 Hyphenation] Browser-native hyphenation can be used for language "+P(t),"sap.ui.core.hyphenation.Hyphenation.canUseNativeHyphenation()")}else{r.info("[UI5 Hyphenation] Browser-native hyphenation is not supported by current platform for language "+P(t),"sap.ui.core.hyphenation.Hyphenation.canUseNativeHyphenation()")}}else{a=u[t]}return a};k.prototype.canUseThirdPartyHyphenation=function(e){var n=b(e),t;if(!this.isLanguageSupported(e)){return null}if(!p.hasOwnProperty(n)){t=a.hasOwnProperty(n)&&a[n];if(t){r.info("[UI5 Hyphenation] Third-party hyphenation can be used for language "+P(n),"sap.ui.core.hyphenation.Hyphenation.canUseThirdPartyHyphenation()")}else{r.info("[UI5 Hyphenation] Third-party hyphenation is not supported for language "+P(n),"sap.ui.core.hyphenation.Hyphenation.canUseThirdPartyHyphenation()")}p[n]=t}else{t=p[n]}return t};k.prototype.isLanguageSupported=function(n){var t=b(n),i;if(!s.hasOwnProperty(t)){i=e.hasOwnProperty(t);if(!i){r.info("[UI5 Hyphenation] Language "+P(t)+" is not known to the Hyphenation API","sap.ui.core.hyphenation.Hyphenation.isLanguageSupported()")}s[t]=i}else{i=s[t]}return i};k.prototype.hyphenate=function(e,n){var t=b(n);if(!y.hasOwnProperty(t)){E("Language "+P(t)+" is not initialized. You have to initialize it first with method 'initialize()'");return e}return y[t](e)};k.prototype.getInitializedLanguages=function(){return Object.keys(y).map(function(e){return I(e)})};k.prototype.isLanguageInitialized=function(e){var n=b(e);return Object.keys(y).indexOf(n)!=-1};k.prototype.initialize=function(e){var n=b(e);if(!a[n]){var t="Language "+P(e)+" can not be initialized. It is either not supported by the third-party module or an error occurred";E(t);return Promise.reject(t)}if(y[n]){return Promise.resolve()}var r;if(!this._pInitLanguage){r=this._pInitLanguage=c(n).then(function(e){y[n]=e;this._pInitLanguage=null}.bind(this))}else{r=this._pInitLanguage.then(function(){return this.initialize(e)}.bind(this))}return r};k.getInstance=function(){if(!h){h=new k}return h};return k});
/*!
* OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
*/
sap.ui.predefine("sap/ui/core/hyphenation/HyphenationTestingWords", [],function(){"use strict";var i={bg:"непротивоконституционствувателствувайте",ca:"psiconeuroimmunoendocrinologia",hr:"prijestolonasljednikovičičinima",cs:"nejnezdevětadevadesáteronásobitelnějšími",da:"gedebukkebensoverogundergeneralkrigskommandersergenten",nl:"meervoudigepersoonlijkheidsstoornissen","en-us":"pneumonoultramicroscopicsilicovolcanoconiosis",et:"sünnipäevanädalalõpupeopärastlõunaväsimus",fi:"kolmivaihekilowattituntimittari",fr:"hippopotomonstrosesquippedaliophobie",de:"Kindercarnavalsoptochtvoorbereidingswerkzaamhedenplan","el-monoton":"ηλεκτροεγκεφαλογράφημα",hi:"किंकर्तव्यविमूढ़",hu:"megszentségteleníthetetlenségeskedéseitekért",it:"hippopotomonstrosesquippedaliofobia",lt:"nebeprisikiškiakopūstlapiaujančiuosiuose","nb-no":"supercalifragilisticexpialidocious",pl:"dziewięćdziesięciokilkuletniemu",pt:"pneumoultramicroscopicossilicovulcanoconiose",ru:"превысокомногорассмотрительствующий",sr:"семпаравиливичинаверсаламилитипиковски",sl:"dialektičnomaterialističen",es:"electroencefalografistas",sv:"realisationsvinstbeskattning",th:"ตัวอย่างข้อความที่จะใช้ในการยืนยันการถ่ายโอน",tr:"muvaffakiyetsizleştiricileştiriveremeyebileceklerimizdenmişsinizcesine",uk:"нікотинамідаденіндинуклеотидфосфат"};return i});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/interaction/KeyboardInteractionDisplay", ["sap/base/Log","sap/base/i18n/LanguageFallback","sap/base/i18n/Localization","sap/ui/Device","sap/ui/core/Element","sap/ui/core/LabelEnablement","sap/ui/core/Lib","sap/ui/util/XMLHelper"],function(t,e,n,i,o,s,r,a){"use strict";const c="sap.ui.interaction.UpdateDisplay";const l="1.0.0";const u={_version:l,elements:[],docs:{}};const d=new Map;const g=t=>{const e=[];const n=t.getDependents?.()||[];for(const t of n){if(t.isA("sap.ui.core.CommandExecution")&&t.getVisible()){const n=t._getCommandInfo();e.push({name:t.getCommand(),kbd:i.os.macintosh?[n.shortcut.replace("Ctrl","Cmd")]:[n.shortcut],description:n.description})}}return e};const p=t=>{const e=t.getFieldHelpDisplay();const n=e?o.getElementById(e):t;let i=null;const r=t.getAccessibilityInfo?.();if(r){i=r.description||r.children?.[0]?.getAccessibilityInfo?.()?.description||null}if(!i){const e="[aria-labelledby]";const n="aria-labelledby";const o=t.getDomRef();let s=o.getAttribute(n);if(!s){const t=o.querySelector(e);const i=document.activeElement;if(t?.contains(i)){s=t.getAttribute(n)}}i=s?document.getElementById(s)?.textContent:null}return s._getLabelTexts(n)[0]||i||t.getMetadata().getName()};const f=async i=>{if(d.has(i)){return d.get(i)}const o=n.getLanguage();const s=e.getFallbackLocales(o);let r=null;while(s.length){const e=s.shift();const n=e?`interaction_${e}.xml`:`interaction.xml`;const o=sap.ui.require.toUrl(`${i.replace(/\./g,"/")}/i18n/${n}`);try{const t=await fetch(o);if(!t.ok){const e=t.statusText||`HTTP status ${t.status}`;throw new Error(`Failed to load resource: ${o} - ${e}`)}const e=await t.text();r=a.parse(e);if(r){d.set(i,r);break}}catch(e){t.error(`Error loading interaction XML for library ${i}:`,e)}}return r};const m=(t,e)=>{const n=e.documentElement;if(!n){return[]}const i=Array.from(n.querySelectorAll(`control[name]`)).find(e=>e.getAttribute("name")===t);if(!i){return[]}return Array.from(n.querySelectorAll("interaction")).map(t=>({kbd:Array.from(t.children).filter(t=>t.tagName==="kbd").map(t=>t.textContent.trim()),description:t.querySelector("description")?.innerHTML||""}))};const b=async t=>{let e=null;let n=t;while(n&&!e){e=n.getMetadata().getLibraryName();n=n.getParent()}if(!e){return[]}const i=r._get(e);if(!i?.interactionDocumentation){return[]}const o=await f(e);if(!o){return[]}const s=t.getMetadata().getName();return m(s,o)};let h;let y=false;const v=async t=>{if(y){return}y=true;setTimeout(()=>{y=false},300);const e=[];const n=[];const i={};const s=o.closestTo(t?.target||document.activeElement);if(!s){return}const a=await f("sap.ui.core");if(a){const t=r.getResourceBundleFor("sap.ui.core");i["sap.ui.core.Control"]={interactions:m("sap.ui.core.Control",a)};n.push({class:"sap.ui.core.Control",label:t.getText("Generic.Keyboard.Interaction.Text"),interactions:[{$ref:`docs/sap.ui.core.Control/interactions`}]})}let l=s;while(l){e.push(l);l=l.getParent()}for(let t=0;t<e.length;t++){const o=e[t];const s=g(o);const r=await b(o);if(!s.length&&!r.length){continue}const a=o.getMetadata().getName();if(r.length>0){i[a]={interactions:r};s.push({$ref:`docs/${a}/interactions`})}n.push({id:o.getId(),class:a,label:p(o),interactions:s})}u.elements=n;u.docs=i;h?.postMessage(JSON.parse(JSON.stringify({service:c,type:"request",payload:{...u}})))};return{_isActive:false,async activate(t){h=t;if(this._isActive){return}this._isActive=true;await v();document.addEventListener("pointerdown",v);document.addEventListener("focusin",v)},deactivate(){if(!this._isActive){return}this._isActive=false;document.removeEventListener("pointerdown",v);document.removeEventListener("focusin",v)}}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/library", ["sap/ui/base/DataType","sap/ui/core/Lib","sap/ui/core/message/MessageType","sap/ui/core/mvc/ViewType","./CalendarType","sap/ui/core/date/CalendarWeekNumbering"],function(e,i,o,r,a,t){"use strict";var n=i.init({name:"sap.ui.core",version:"1.135.0",designtime:"sap/ui/core/designtime/library.designtime",apiVersion:2,...{interactionDocumentation:true},types:["any","boolean","float","int","object","string","void","sap.ui.core.AbsoluteCSSSize","sap.ui.core.AccessibleRole","sap.ui.core.AccessibleLandmarkRole","sap.ui.core.aria.HasPopup","sap.ui.core.BarColor","sap.ui.core.BusyIndicatorSize","sap.ui.core.CalendarType","sap.ui.core.CSSColor","sap.ui.core.CSSGapShortHand","sap.ui.core.CSSSize","sap.ui.core.CSSSizeShortHand","sap.ui.core.Collision","sap.ui.core.ComponentLifecycle","sap.ui.core.Design","sap.ui.core.Dock","sap.ui.core.HorizontalAlign","sap.ui.core.ID","sap.ui.core.IconColor","sap.ui.core.ImeMode","sap.ui.core.IndicationColor","sap.ui.core.ItemSelectionMode","sap.ui.core.MessageType","sap.ui.core.OpenState","sap.ui.core.Orientation","sap.ui.core.Percentage","sap.ui.core.Priority","sap.ui.core.ScrollBarAction","sap.ui.core.Scrolling","sap.ui.core.SortOrder","sap.ui.core.TextAlign","sap.ui.core.TextDirection","sap.ui.core.TitleLevel","sap.ui.core.URI","sap.ui.core.ValueState","sap.ui.core.VerticalAlign","sap.ui.core.Wrapping","sap.ui.core.InvisibleMessageMode","sap.ui.core.dnd.DropEffect","sap.ui.core.dnd.DropLayout","sap.ui.core.dnd.DropPosition","sap.ui.core.mvc.ViewType","sap.ui.core.routing.HistoryDirection"],interfaces:["sap.ui.core.IShrinkable","sap.ui.core.Label","sap.ui.core.ILabelable","sap.ui.core.PopupInterface","sap.ui.core.Toolbar","sap.ui.core.IContextMenu","sap.ui.core.IFormContent","sap.ui.core.dnd.IDragInfo","sap.ui.core.dnd.IDropInfo","sap.ui.core.IDScope","sap.ui.core.ITitleContent","sap.ui.core.IAsyncContentCreation","sap.ui.core.IPlaceholderSupport","sap.ui.core.IColumnHeaderMenu"],controls:["sap.ui.core.ComponentContainer","sap.ui.core.Control","sap.ui.core.HTML","sap.ui.core.Icon","sap.ui.core.InvisibleText","sap.ui.core.LocalBusyIndicator","sap.ui.core.ScrollBar","sap.ui.core.TooltipBase","sap.ui.core.XMLComposite","sap.ui.core.mvc.HTMLView","sap.ui.core.mvc.JSONView","sap.ui.core.mvc.JSView","sap.ui.core.mvc.TemplateView","sap.ui.core.mvc.View","sap.ui.core.mvc.XMLView","sap.ui.core.tmpl.DOMElement","sap.ui.core.tmpl.TemplateControl","sap.ui.core.util.Export"],elements:["sap.ui.core.CustomData","sap.ui.core.Element","sap.ui.core.Item","sap.ui.core.LayoutData","sap.ui.core.ListItem","sap.ui.core.Message","sap.ui.core.SeparatorItem","sap.ui.core.Title","sap.ui.core.VariantLayoutData","sap.ui.core.dnd.DragDropBase","sap.ui.core.dnd.DragInfo","sap.ui.core.dnd.DropInfo","sap.ui.core.dnd.DragDropInfo","sap.ui.core.search.OpenSearchProvider","sap.ui.core.search.SearchProvider","sap.ui.core.tmpl.DOMAttribute","sap.ui.core.util.ExportCell","sap.ui.core.InvisibleMessage"],extensions:{"sap.ui.support":{diagnosticPlugins:["sap/ui/core/support/plugins/TechInfo","sap/ui/core/support/plugins/ControlTree","sap/ui/core/support/plugins/Debugging","sap/ui/core/support/plugins/Trace","sap/ui/core/support/plugins/Selector","sap/ui/core/support/plugins/Breakpoint","sap/ui/core/support/plugins/ViewInfo","sap/ui/core/support/plugins/LocalStorage","sap/ui/core/support/plugins/Interaction","sap/ui/core/support/plugins/Performance"],publicRules:true,internalRules:true}}});n.AbsoluteCSSSize=e.createType("sap.ui.core.AbsoluteCSSSize",{isValid:function(e){return/^([-+]?(0*|([0-9]+|[0-9]*\.[0-9]+)([rR][eE][mM]|[eE][mM]|[eE][xX]|[pP][xX]|[cC][mM]|[mM][mM]|[iI][nN]|[pP][tT]|[pP][cC]))|calc\(\s*(\(\s*)*[-+]?(([0-9]+|[0-9]*\.[0-9]+)([rR][eE][mM]|[eE][mM]|[eE][xX]|[pP][xX]|[cC][mM]|[mM][mM]|[iI][nN]|[pP][tT]|[pP][cC])?)(\s*(\)\s*)*(\s[-+]\s|[*\/])\s*(\(\s*)*([-+]?(([0-9]+|[0-9]*\.[0-9]+)([rR][eE][mM]|[eE][mM]|[eE][xX]|[pP][xX]|[cC][mM]|[mM][mM]|[iI][nN]|[pP][tT]|[pP][cC])?)))*\s*(\)\s*)*\))$/.test(e)}},e.getType("string"));n.AccessibleRole={Alert:"Alert",AlertDialog:"AlertDialog",Application:"Application",Banner:"Banner",Button:"Button",Checkbox:"Checkbox",ColumnHeader:"ColumnHeader",Combobox:"Combobox",
/**
		 * Information about the content on the page. Examples are footnotes, copyrights, or links to privacy statements.
		 *
		 * @public
		 */
ContentInfo:"ContentInfo",Definition:"Definition",Description:"Description",Dialog:"Dialog",Directory:"Directory",Document:"Document",Grid:"Grid",GridCell:"GridCell",Group:"Group",Heading:"Heading",Img:"Img",Link:"Link",List:"List",Listbox:"Listbox",ListItem:"ListItem",Log:"Log",Main:"Main",Marquee:"Marquee",Menu:"Menu",Menubar:"Menubar",MenuItem:"MenuItem",MenuItemCheckbox:"MenuItemCheckbox",MenuItemRadio:"MenuItemRadio",Navigation:"Navigation",Note:"Note",Option:"Option",Presentation:"Presentation",ProgressBar:"ProgressBar",Radio:"Radio",RadioGroup:"RadioGroup",Region:"Region",Row:"Row",RowHeader:"RowHeader",Search:"Search",Secondary:"Secondary",SeeAlso:"SeeAlso",Separator:"Separator",Slider:"Slider",SpinButton:"SpinButton",Status:"Status",Tab:"Tab",Tablist:"Tablist",Tabpanel:"Tabpanel",Textbox:"Textbox",Timer:"Timer",Toolbar:"Toolbar",Tooltip:"Tooltip",Tree:"Tree",TreeGrid:"TreeGrid",TreeItem:"TreeItem"};e.registerEnum("sap.ui.core.AccessibleRole",n.AccessibleRole);n.AccessibleLandmarkRole={None:"None",Banner:"Banner",Main:"Main",Region:"Region",Navigation:"Navigation",Search:"Search",Complementary:"Complementary",Form:"Form",ContentInfo:"ContentInfo"};e.registerEnum("sap.ui.core.AccessibleLandmarkRole",n.AccessibleLandmarkRole);n.aria=n.aria||{};n.aria.HasPopup={None:"None",Menu:"Menu",ListBox:"ListBox",Tree:"Tree",Grid:"Grid",Dialog:"Dialog"};e.registerEnum("sap.ui.core.aria.HasPopup",n.aria.HasPopup);n.BarColor={NEUTRAL:"NEUTRAL",POSITIVE:"POSITIVE",CRITICAL:"CRITICAL",NEGATIVE:"NEGATIVE"};e.registerEnum("sap.ui.core.BarColor",n.BarColor);n.BusyIndicatorSize={Auto:"Auto",Small:"Small",Medium:"Medium",Large:"Large",Section:"Section"};e.registerEnum("sap.ui.core.BusyIndicatorSize",n.BusyIndicatorSize);n.CalendarType=a;n.CSSColor=e.createType("sap.ui.core.CSSColor",{isValid:function(e){return/^(#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})|rgb\(\s*((1?[0-9]?[0-9]|2([0-4][0-9]|5[0-5]))|([0-9]?[0-9](\.[0-9]+)?|100(\.0+)?)%)\s*(,\s*((1?[0-9]?[0-9]|2([0-4][0-9]|5[0-5]))|([0-9]?[0-9](\.[0-9]+)?|100(\.0+)?)%)\s*){2}\)|rgba\((\s*((1?[0-9]?[0-9]|2([0-4][0-9]|5[0-5]))|([0-9]?[0-9](\.[0-9]+)?|100(\.0+)?)%)\s*,){3}\s*(0(\.[0-9]+)?|1(\.0+)?)\s*\)|hsl\(\s*([0-2]?[0-9]?[0-9]|3([0-5][0-9]|60))\s*(,\s*(([0-9]?[0-9](\.[0-9]+)?|100(\.0+)?)%)\s*){2}\)|hsla\(\s*([0-2]?[0-9]?[0-9]|3([0-5][0-9]|60))\s*,(\s*(([0-9]?[0-9](\.[0-9]+)?|100(\.0+)?)%)\s*,){2}\s*(0(\.[0-9]+)?|1(\.0+)?)\s*\)|aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgrey|darkgreen|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|grey|green|greenyellow|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgrey|lightgreen|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silverskyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen|transparent|inherit|)$/.test(e)}},e.getType("string"));n.CSSGapShortHand=e.createType("sap.ui.core.CSSGapShortHand",{isValid:function(e){var i=true,o=e.split(/\s+/);o.forEach(function(e){if(!n.CSSSize.isValid(e)){i=false}});return i},parseValue:function(e){return e.trim().split(/\s+/).join(" ")}},e.getType("string"));n.CSSSize=e.createType("sap.ui.core.CSSSize",{isValid:function(e){return/^(auto|inherit|[-+]?(0*|([0-9]+|[0-9]*\.[0-9]+)([rR][eE][mM]|[eE][mM]|[eE][xX]|[pP][xX]|[cC][mM]|[mM][mM]|[iI][nN]|[pP][tT]|[pP][cC]|[vV][wW]|[vV][hH]|[vV][mM][iI][nN]|[vV][mM][aA][xX]|%))|calc\(\s*(\(\s*)*[-+]?(([0-9]+|[0-9]*\.[0-9]+)([rR][eE][mM]|[eE][mM]|[eE][xX]|[pP][xX]|[cC][mM]|[mM][mM]|[iI][nN]|[pP][tT]|[pP][cC]|[vV][wW]|[vV][hH]|[vV][mM][iI][nN]|[vV][mM][aA][xX]|%)?)(\s*(\)\s*)*(\s[-+]\s|[*\/])\s*(\(\s*)*([-+]?(([0-9]+|[0-9]*\.[0-9]+)([rR][eE][mM]|[eE][mM]|[eE][xX]|[pP][xX]|[cC][mM]|[mM][mM]|[iI][nN]|[pP][tT]|[pP][cC]|[vV][wW]|[vV][hH]|[vV][mM][iI][nN]|[vV][mM][aA][xX]|%)?)))*\s*(\)\s*)*\))$/.test(e)}},e.getType("string"));n.CSSSizeShortHand=e.createType("sap.ui.core.CSSSizeShortHand",{isValid:function(e){return/^(inherit|(auto|[-+]?(0*|(\d+|\d*\.\d+)([eE][mM]|[eE][xX]|[pP][xX]|[cC][mM]|[mM][mM]|[iI][nN]|[pP][tT]|[pP][cC]|%))){1}(\s(auto|[-+]?(0*|(\d+|\d*\.\d+)([eE][mM]|[eE][xX]|[pP][xX]|[cC][mM]|[mM][mM]|[iI][nN]|[pP][tT]|[pP][cC]|%)))){0,3})$/.test(e)}},e.getType("string"));n.Collision=e.createType("sap.ui.core.Collision",{isValid:function(e){return/^((flip|fit|flipfit|none)( (flip|fit|flipfit|none))?)$/.test(e)}},e.getType("string"));n.Design={Standard:"Standard",Monospace:"Monospace"};e.registerEnum("sap.ui.core.Design",n.Design);n.Dock=e.createType("sap.ui.core.Dock",{isValid:function(e){return/^((begin|left|center|right|end) (top|center|bottom))$/.test(e)}},e.getType("string"));n.HorizontalAlign={Begin:"Begin",End:"End",Left:"Left",Right:"Right",Center:"Center"};e.registerEnum("sap.ui.core.HorizontalAlign",n.HorizontalAlign);n.ID=e.getType("sap.ui.core.ID");n.IconColor={Default:"Default",Positive:"Positive",Negative:"Negative",Critical:"Critical",Neutral:"Neutral",Contrast:"Contrast",NonInteractive:"NonInteractive",Tile:"Tile",Marker:"Marker"};e.registerEnum("sap.ui.core.IconColor",n.IconColor);n.ImeMode={Auto:"Auto",Active:"Active",Inactive:"Inactive",Disabled:"Disabled"};e.registerEnum("sap.ui.core.ImeMode",n.ImeMode);n.IndicationColor={Indication01:"Indication01",Indication02:"Indication02",Indication03:"Indication03",Indication04:"Indication04",Indication05:"Indication05",Indication06:"Indication06",Indication07:"Indication07",Indication08:"Indication08",Indication09:"Indication09",Indication10:"Indication10",Indication11:"Indication11",Indication12:"Indication12",Indication13:"Indication13",Indication14:"Indication14",Indication15:"Indication15",Indication16:"Indication16",Indication17:"Indication17",Indication18:"Indication18",Indication19:"Indication19",Indication20:"Indication20"};e.registerEnum("sap.ui.core.IndicationColor",n.IndicationColor);n.OpenState={OPEN:"OPEN",CLOSED:"CLOSED",OPENING:"OPENING",CLOSING:"CLOSING"};e.registerEnum("sap.ui.core.OpenState",n.OpenState);n.Orientation={Horizontal:"Horizontal",Vertical:"Vertical"};e.registerEnum("sap.ui.core.Orientation",n.Orientation);n.Percentage=e.createType("sap.ui.core.Percentage",{isValid:function(e){return/^([0-9][0-9]*(\.[0-9]+)?%)$/.test(e)}},e.getType("string"));n.Priority={None:"None",Low:"Low",Medium:"Medium",High:"High"};e.registerEnum("sap.ui.core.Priority",n.Priority);n.ScrollBarAction={Step:"Step",Page:"Page",MouseWheel:"MouseWheel",Drag:"Drag"};e.registerEnum("sap.ui.core.ScrollBarAction",n.ScrollBarAction);n.Scrolling={None:"None",Auto:"Auto",Scroll:"Scroll",Hidden:"Hidden"};e.registerEnum("sap.ui.core.Scrolling",n.Scrolling);n.SortOrder={None:"None",Ascending:"Ascending",Descending:"Descending"};e.registerEnum("sap.ui.core.SortOrder",n.SortOrder);n.TextAlign={Begin:"Begin",End:"End",Left:"Left",Right:"Right",Center:"Center",Initial:"Initial"};e.registerEnum("sap.ui.core.TextAlign",n.TextAlign);n.TextDirection={LTR:"LTR",RTL:"RTL",Inherit:"Inherit"};e.registerEnum("sap.ui.core.TextDirection",n.TextDirection);n.TitleLevel={Auto:"Auto",H1:"H1",H2:"H2",H3:"H3",H4:"H4",H5:"H5",H6:"H6"};e.registerEnum("sap.ui.core.TitleLevel",n.TitleLevel);n.URI=e.createType("sap.ui.core.URI",{isValid:function(e){return/^((([^:\/?#]+):)?(\/\/([^\/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?)$/.test(e)}},e.getType("string"));n.ValueState={Error:"Error",Warning:"Warning",Success:"Success",Information:"Information",None:"None"};e.registerEnum("sap.ui.core.ValueState",n.ValueState);n.VerticalAlign={Bottom:"Bottom",Middle:"Middle",Top:"Top",Inherit:"Inherit"};e.registerEnum("sap.ui.core.VerticalAlign",n.VerticalAlign);n.Wrapping={None:"None",Soft:"Soft",Hard:"Hard",Off:"Off"};e.registerEnum("sap.ui.core.Wrapping",n.Wrapping);n.dnd=n.dnd||{};n.dnd.DropPosition={On:"On",Between:"Between",OnOrBetween:"OnOrBetween"};e.registerEnum("sap.ui.core.dnd.DropPosition",n.dnd.DropPosition);n.dnd.RelativeDropPosition={On:"On",Before:"Before",After:"After"};e.registerEnum("sap.ui.core.dnd.RelativeDropPosition",n.dnd.RelativeDropPosition);n.dnd.DropLayout={Default:"Default",Vertical:"Vertical",Horizontal:"Horizontal"};e.registerEnum("sap.ui.core.dnd.DropLayout",n.dnd.DropLayout);n.dnd.DropEffect={Copy:"Copy",Move:"Move",Link:"Link",None:"None"};e.registerEnum("sap.ui.core.dnd.DropEffect",n.dnd.DropEffect);n.mvc=n.mvc||{};n.ItemSelectionMode={None:"None",SingleSelect:"SingleSelect",MultiSelect:"MultiSelect"};e.registerEnum("sap.ui.core.ItemSelectionMode",n.ItemSelectionMode);n.MessageType=o;e.registerEnum("sap.ui.core.MessageType",n.MessageType);n.mvc.ViewType=r;n.routing=n.routing||{};n.routing.HistoryDirection={Forwards:"Forwards",Backwards:"Backwards",NewEntry:"NewEntry",Unknown:"Unknown"};n.ComponentLifecycle={Legacy:"Legacy",Application:"Application",Container:"Container"};e.registerEnum("sap.ui.core.ComponentLifecycle",n.ComponentLifecycle);n.InvisibleMessageMode={Polite:"Polite",Assertive:"Assertive"};e.registerEnum("sap.ui.core.InvisibleMessageMode",n.InvisibleMessageMode);(function(){var e=sap.ui.lazyRequire;function i(i,o,r){for(var a=0;a<o.length;a++){if(r){e(r,o[a].toLowerCase(),i+o[a])}else{e(i+o[a],"new extend getMetadata")}}}e("sap.ui.core.message.MessageManager");e("sap.ui.core.BusyIndicator","show hide attachOpen detachOpen attachClose detachClose");e("sap.ui.core.tmpl.Template","registerType unregisterType");e("sap.ui.core.Fragment","registerType byId createId load");e("sap.ui.core.IconPool","createControlByURI addIcon getIconURI getIconInfo isIconURI getIconCollectionNames getIconNames getIconForMimeType");e("sap.ui.core.service.ServiceFactoryRegistry","register unregister get");e("sap.ui.model.odata.AnnotationHelper","createPropertySetting format getNavigationPath"+" gotoEntitySet gotoEntityType gotoFunctionImport isMultiple resolvePath simplePath");var o=sap.ui.model&&sap.ui.model.odata&&sap.ui.model.odata.AnnotationHelper;if(o){o.format.requiresIContext=true;o.getNavigationPath.requiresIContext=true;o.isMultiple.requiresIContext=true;o.simplePath.requiresIContext=true}e("sap.ui","xmlfragment","sap.ui.core.Fragment");e("sap.ui","jsfragment","sap.ui.core.Fragment");e("sap.ui","htmlfragment","sap.ui.core.Fragment");i("sap.ui.model.",["Filter","Sorter","json.JSONModel","resource.ResourceModel","odata.ODataModel","odata.v2.ODataModel","odata.v4.ODataModel","xml.XMLModel"]);i("sap.ui.model.type.",["Boolean","Integer","Float","String","Date","Time","DateTime","FileSize","Currency","Unit","DateInterval","DateTimeInterval","TimeInterval"]);i("sap.ui.model.odata.type.",["Boolean","Byte","Currency","Date","DateTime","DateTimeOffset","DateTimeWithTimezone","Decimal","Double","Guid","Int16","Int32","Int64","Raw","SByte","Single","Stream","String","Time","TimeOfDay","Unit"]);i("sap.ui.core.",["Locale","LocaleData","mvc.Controller","UIComponent"]);i("sap.ui.core.mvc.",["Controller","View","JSView","JSONView","XMLView","HTMLView","TemplateView"],"sap.ui");e("sap.ui.core.mvc.Controller","create");e("sap.ui.core.mvc.View","create");e("sap.ui.core.mvc.XMLView","create");i("sap.ui.core.",["Component"],"sap.ui");i("sap.ui.core.Component","create");i("sap.ui.core.tmpl.",["Template"],"sap.ui");i("sap.ui.core.routing.",["HashChanger","History","Route","Router","Target","Targets","Views"]);i("sap.ui.core.service.",["ServiceFactory","Service"])})();return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/message/MessageManager", ["sap/ui/core/Messaging","sap/ui/base/Object","sap/base/Log"],function(e,s,r){"use strict";var t=s.extend("sap.ui.core.message.MessageManager",{constructor:function(){r.error("MessageManager is deprecated and should not be created! "+"Please require 'sap/ui/core/Messaging' instead and use the module export directly without using 'new'.");s.apply(this,arguments)},metadata:{publicMethods:["addMessages","removeMessages","updateMessages","removeAllMessages","registerMessageProcessor","unregisterMessageProcessor","registerObject","unregisterObject","getMessageModel","destroy"]}});t.prototype.addMessages=e.addMessages;t.prototype.removeAllMessages=e.removeAllMessages;t.prototype.removeMessages=e.removeMessages;t.prototype.updateMessages=e.updateMessages;t.prototype.registerMessageProcessor=e.registerMessageProcessor;t.prototype.unregisterMessageProcessor=e.unregisterMessageProcessor;t.prototype.registerObject=e.registerObject;t.prototype.unregisterObject=e.unregisterObject;t.prototype.destroy=function(){r.warning("Deprecated: Do not call destroy on a MessageManager")};t.prototype.getMessageModel=e.getMessageModel;return t});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/message/MessageMixin", ["sap/ui/core/Element","sap/ui/core/library","sap/base/Log","sap/ui/core/LabelEnablement"],function(e,t,s,i){"use strict";const a=Symbol("sap.ui.core.message.MessageMixin");const n=t.ValueState;var r=function(){this.refreshDataState=o;this.fnDestroy=this.destroy;this.destroy=g};function o(t,r){if(r.getChanges().messages&&this.getBinding(t)&&this.getBinding(t).isA("sap.ui.model.PropertyBinding")){var o=r.getMessages();var g=i.getReferencingLabels(this);var l=g[0];var d=false;o.forEach(function(t){if(g&&g.length>0){var i=e.getElementById(l);if(i.getMetadata().isInstanceOf("sap.ui.core.Label")&&i.getText){let e=t.getAdditionalText()||"";const s=i.getText();if(!e.split(",").includes(s)){if(t[a]){e=e?`${e}, ${s}`:s}else{e=s;t[a]=true}t.setAdditionalText(e);d=true}}else{s.warning("sap.ui.core.message.Message: Can't create labelText."+"Label with id "+l+" is no valid sap.ui.core.Label.",this)}}if(!t.getControlIds().includes(this.getId())){t.addControlId(this.getId());d=true}}.bind(this));var u=sap.ui.require("sap/ui/core/Messaging");if(u){var f=u.getMessageModel();f.checkUpdate(d,true)}if(o&&o.length>0){var h=o[0];if(n[h.type]){this.setValueState(h.type);this.setValueStateText(h.message)}}else{this.setValueState(n.None);this.setValueStateText("")}}}function g(){var e=this.getId();function t(t){t.removeControlId(e)}for(var s in this.mBindingInfos){var i=this.mBindingInfos[s];if(i.binding){var a=i.binding.getDataState();var n=a.getAllMessages();n.forEach(t)}}this.fnDestroy.apply(this,arguments)}return r},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/message/MessageParser", ["sap/ui/base/Object","sap/base/Log"],function(e,s){"use strict";var r=e.extend("sap.ui.core.message.MessageParser",{metadata:{publicMethods:["parse","setProcessor"]},constructor:function(){this._processor=null}});r.prototype.setProcessor=function(e){this._processor=e;return this};r.prototype.getProcessor=function(){return this._processor};r.prototype.parse=function(e,r){s.error("MessageParser: parse-method must be implemented in the specific parser class. Messages "+"have been ignored.")};return r});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/mvc/Controller", ["sap/base/util/ObjectPath","sap/base/util/extend","sap/ui/base/EventProvider","sap/ui/base/ManagedObject","sap/ui/core/mvc/ControllerMetadata","sap/ui/core/mvc/ControllerExtension","sap/ui/core/mvc/ControllerExtensionProvider","sap/ui/core/mvc/OverrideExecution","sap/ui/util/_enforceNoReturnValue","sap/base/future","sap/base/Log"],function(e,t,n,r,o,i,a,s,l,u,f){"use strict";var c={};var d=n.extend("sap.ui.core.mvc.Controller",{metadata:{stereotype:"controller",methods:{byId:{public:true,final:true},getInterface:{public:false,final:true},getMetadata:{public:true,final:true},getView:{public:true,final:true},isA:{public:true,final:true},onExit:{public:false,final:false,overrideExecution:s.Before},onInit:{public:false,final:false,overrideExecution:s.After},onAfterRendering:{public:false,final:false,overrideExecution:s.After},onBeforeRendering:{public:false,final:false,overrideExecution:s.Before}}},constructor:function(e){var r=null;if(typeof e=="string"){if(!c[e]){f.warning("Do not call sap.ui.core.mvc.Controller constructor for non typed scenario!")}r=c[e]}n.apply(this,arguments);if(r){t(this,c[e])}if(this.extension){throw new Error("The keyword 'extension' cannot be used as a member of a controller")}this["_sapui_Extensions"]={};d.extendByMember(this,false);this._sapui_isExtended=false;this._aDestroyables=[]},_isExtended:function(){return this._sapui_isExtended},getInterface:function(){var e={};var t=this.getMetadata();var n=t._aAllPublicMethods;n.forEach(function(t){var n=this[t];if(typeof n==="function"){e[t]=function(){var e=n.apply(this,arguments);return e instanceof d?e.getInterface():e}.bind(this)}}.bind(this));this.getInterface=function(){return e};return e}},o);function p(t,n,r){var o=n.getMetadata().getName();var a=t.getMetadata();var s=t["_sapui_Extensions"];var l=t.getInterface();var c=i.getMetadata().getLifecycleConfiguration();var d={namespace:o,extension:n,reloadNeeded:false};n._setController(l);if(n.getMetadata().hasOverrides()){var p,h,g,v,y=n.getMetadata().getOverrides(),x=n.getMetadata().getStaticOverrides();for(v in x){g=n.getMetadata();if(!g.isMethodFinal(v)){i.overrideMethod(v,n,x,n,g.getOverrideExecution(v))}else{u.errorThrows("Method '"+v+"' of extension '"+o+"' is flagged final and cannot be overridden by calling 'override'")}}for(v in y){if(v!=="extension"){if(v in n.base){f.debug("Overriding  member '"+v+"' of original controller.");var m=y[v];var w=t[v];if(typeof w=="object"&&typeof m=="object"){h=s[v];g=h.extension.getMetadata();for(p in m){if(!g.isMethodFinal(p)){i.overrideMethod(p,w,m,n,g.getOverrideExecution(p))}else{u.errorThrows("Method '"+p+"' of extension '"+h.namespace+"' is flagged final and cannot be overridden by extension '"+o+"'")}}}else if(!a.isMethodFinal(v)){i.overrideMethod(v,t,y,n,a.getOverrideExecution(v))}else{u.errorThrows("Method '"+v+"' of controller '"+t.getMetadata().getName()+"' is flagged final and cannot be overridden by extension '"+o+"'")}}else if(v in c){i.overrideMethod(v,t,y,n,a.getOverrideExecution(v))}else if(v.startsWith("extHook")&&t[v]===null){i.overrideMethod(v,t,y,n)}else{u.errorThrows("Method '"+v+"' does not exist in controller "+t.getMetadata().getName()+" and cannot be overridden")}}d.reloadNeeded=true}if(y&&y.extension){for(var b in y.extension){g=s[b].extension.getMetadata();var E=e.create(b,t.extension);var M=s[b].extension;var C=y.extension[b];for(p in C){if(!g.isMethodFinal(p)){i.overrideMethod(p,E,C,n,g.getOverrideExecution(p));i.overrideMethod(p,M,C,n,g.getOverrideExecution(p))}else{u.errorThrows("Method '"+p+"' of extension '"+b+"' is flagged final and cannot be overridden by extension '"+o+"'")}}}}}var _=n.getInterface();if(r){s[r]=d;d.location=r;t[r]=_;l[r]=_}else{s[o]=d;d.location="extension."+o;e.set("extension."+o,_,t);e.set("extension."+o,_,l)}}function h(e,t,n){if(t instanceof i){p(e,t,n)}else if(t.getMetadata&&t.getMetadata().getStereotype()=="controllerextension"){var r=new t;p(e,r,n)}else{var o=i.getMetadata().getLifecycleConfiguration();for(var a in t){if(a in o){i.overrideMethod(a,e,t,e,o[a].overrideExecution)}else{i.overrideMethod(a,e,t)}}}}function g(t,n,r){if(typeof t!=="string"){throw new Error("Controller name ('sName' parameter) is required and must be typeof 'string'")}function o(n){if(n){return n}else if(c[t]){return d}else{return e.get(t)}}let i;if(t.startsWith("module:")){i=t.substring(7)}else{i=t.replace(/\./g,"/")+".controller"}let a=sap.ui.require(i);a??=o(a);(()=>{if(a?.getMetadata?.().isA?.("sap.ui.core.mvc.View")){throw new Error(`The controller '${t}' define for the View with ID '${n}' is not a valid Controller, but rather a View. `+`This happens when the View and Controller classes have the same fully qualified class name. Please make sure that the class names in`+`Controller.extend("...") and the View.extend("...") call differ. If you migrated a 'JSView' to a 'Typed View' please refer to the documentation section under 'Typed View'`)}})();if(!r){if(!a){a=sap.ui.requireSync(i);return o(a)}else{return a}}return new Promise(function(e,t){if(!a){sap.ui.require([i],function(t){t??=o(t);e(t)},t)}else{e(a)}})}function v(e,t){var n;if(c[t]){n=new e(t)}else{n=new e}if(!n){throw new Error("Controller "+t+" couldn't be instantiated")}return n}d.extendByMember=function(e){for(const t in e){if(e[t]&&e[t].getMetadata&&e[t].getMetadata().getStereotype()=="controllerextension"){e[t]=new e[t]}}for(const t in e){if(e[t]&&e[t].getMetadata&&e[t].getMetadata().getStereotype()=="controllerextension"){h(e,e[t],t)}}};d.applyExtensions=function(e,t,n,r,o){function i(e){return g(e,r,true).then(function(t){t=c[e]||t;if(t!==undefined){if(t.getMetadata&&t.getMetadata().isA("sap.ui.core.mvc.Controller")){u.fatalThrows("Attempt to load Extension Controller "+e+" was not successful. Controller extension should be a plain object.","",null,function(){return{type:"ControllerExtension",name:e}})}return t}},function(t){u.errorThrows("Attempt to load Extension Controller "+e+" was not successful - is the Controller correctly defined in its file?")})}function s(e){if(!c[e]&&!sap.ui.require(e)){g(e,r)}if(c[e]!==undefined){return c[e]}else{f.error("Attempt to load Extension Controller "+e+" was not successful - is the Controller correctly defined in its file?",null,function(){return{type:"ControllerExtension",name:e}});return{}}}if(o){return a.getControllerExtensions(t,n,r,o).then(function(t){var n=t.customizingControllerNames.map(i);return Promise.all(n).then(function(n){var r=n.concat(t.providerControllers);for(var o=0,i=r.length;o<i;o++){h(e,r[o])}return e})},function(t){u.errorThrows("Controller Extension Provider: Error '"+t+"' thrown in "+x+".",{suffix:"Extension provider is ignored."});return e})}else{var l=a.getControllerExtensions(t,n,r,o);var d=l.customizingControllerNames.map(s);var p=d.concat(l.providerControllers);for(var v=0,y=p.length;v<y;v++){h(e,p[v])}}return e};d.create=function(e){return y(e.name,undefined,e._viewId,true)};sap.ui.controller=function(e,t,n,r){if(n){f.info("Do not use deprecated factory function 'sap.ui.controller("+e+")'. Use 'sap.ui.core.mvc.Controller.create(...)' instead.","sap.ui.controller",null,function(){return{type:"sap.ui.controller",name:e}})}else{f.warning("Do not use synchronous controller creation for controller '"+e+"'! Use the new asynchronous factory 'sap.ui.core.mvc.Controller.create(...)' instead.","sap.ui.controller",null,function(){return{type:"sap.ui.controller",name:e}})}if(e.startsWith("module:")){throw new Error(`sap.ui.controller(): module name syntax '${e}' is not supported.`)}return y(e,t,r,n)};function y(e,t,n,o){var i,a,s=r._sOwnerId;if(typeof t==="boolean"){t=undefined}if(!t){if(o){return g(e,n,o).then(function(t){return v(t,e)}).then(function(t){return d.applyExtensions(t,e,s,n,o)}).then(function(e){e._sapui_isExtended=true;return e})}else{a=g(e,n,o);i=v(a,e);i=d.applyExtensions(i,e,s,n,o);i._sapui_isExtended=true}return i}else{c[e]=t;f.info("For defining controllers use Controller.extend instead")}}d.prototype.getPublicMethods=function(){var e={},n=this.getMetadata(),r=n.getAllMethods(),o=n.getLifecycleConfiguration();Object.keys(r).forEach(function(t){if(n.isMethodPublic(t)){e[t]=r[t];e[t].reloadNeeded=!!(t in o)}});delete e.extension;var i=this["_sapui_Extensions"];Object.keys(i).forEach(function(n){var r=i[n];var o=r.extension.getInterface();var a=r.extension.getMetadata().getAllMethods();Object.keys(o).forEach(function(n){delete e[r.location];var o=t({},a[n],{reloadNeeded:r.reloadNeeded});e[r.location+"."+n]=o})});return e};d.prototype._getDestroyables=function(){if(!this._aDestroyables){u.errorThrows(`${this.getMetadata().getName()}: A sub-class of sap.ui.core.mvc.Controller which overrides the constructor must apply the super constructor as well.`,null,"sap.ui.support",function(){return{type:"missingSuperConstructor"}});this._aDestroyables=[]}return this._aDestroyables};d.prototype.destroyFragments=function(){function e(e){e=Array.isArray(e)?e:[e];for(var t=0;t<e.length;t++){if(!e[t].isDestroyed()){e[t].destroy()}}}var t=this._getDestroyables();for(var n=0;n<t.length;n++){t[n]=t[n].then(e)}};d.prototype.destroy=function(){if(this["_sapui_Extensions"]){Object.keys(this["_sapui_Extensions"]).forEach(function(t){var n=this["_sapui_Extensions"][t];e.set(n.location,null,this)}.bind(this));delete this["_sapui_Extensions"]}n.prototype.destroy.apply(this,arguments)};d.prototype.getView=function(){return this.oView};d.prototype.byId=function(e){return this.oView?this.oView.byId(e):undefined};d.prototype.createId=function(e){return this.oView?this.oView.createId(e):undefined};d.prototype.getOwnerComponent=function(){var e=sap.ui.require("sap/ui/core/Component");if(e){return e.getOwnerComponentFor(this.getView())}else{return undefined}};d.prototype.connectToView=function(e){this.oView=e;const t=this.getMetadata().getName();if(this.onInit){const n=function(){l(this.onInit.apply(this,arguments),{name:"onInit",component:t})};e.attachAfterInit(n,this)}if(this.onExit){const n=function(){l(this.onExit.apply(this,arguments),{name:"onExit",component:t})};e.attachBeforeExit(n,this)}if(e.bControllerIsViewManaged){const n=function(){l(this.destroyFragments.apply(this,arguments),{name:"destroyFragments",component:t})};e.attachBeforeExit(n,this)}if(this.onAfterRendering){const n=function(){l(this.onAfterRendering.apply(this,arguments),{name:"onAfterRendering",component:t})};e.attachAfterRendering(n,this)}if(this.onBeforeRendering){const n=function(){l(this.onBeforeRendering.apply(this,arguments),{name:"onBeforeRendering",component:t})};e.attachBeforeRendering(n,this)}};d.prototype.loadFragment=function(e){if(!this.getView()){throw new Error("Calling 'loadFragment' without a view attached is not supported!")}else if(!e||!e.name){throw new Error("oOptions must provide at least a fragment name!")}var t=this.getOwnerComponent();var n=e.addToDependents!==false;var r=e.autoPrefixId!==false;var o={name:e.name,type:e.type,id:e.id,controller:this};var i=this._getDestroyables();var a=new Promise(function(e,t){sap.ui.require(["sap/ui/core/Fragment"],function(t){e(t)},t)}).then(function(n){if(!e.id&&r){o.id=this.getView().getId()}else if(r){o.id=this.createId(e.id)}if(t){return t.runAsOwner(function(){return n.load(o)})}else{return n.load(o)}}.bind(this)).then(function(e){if(n){this.getView().applySettings({dependents:e})}i.splice(i.indexOf(a),1);return e}.bind(this));i.push(a);return a};let x=null;d.registerExtensionProvider=function(e){x=e;a.registerExtensionProvider(e)};return d});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/mvc/ControllerExtension", ["sap/ui/base/Object","sap/ui/base/Metadata","sap/ui/core/mvc/ControllerMetadata","sap/ui/core/mvc/OverrideExecution","sap/base/util/uid","sap/base/future","sap/base/Log"],function(e,t,n,a,i,r,o){"use strict";var s=e.extend("sap.ui.core.mvc.ControllerExtension",{metadata:{stereotype:"controllerextension",methods:{byId:{public:true,final:true},getInterface:{public:false,final:true},getMetadata:{public:true,final:true},getView:{public:true,final:true},isA:{public:true,final:true}}},_setController:function(e){this.base=e},byId:function(e){var t=this.getMetadata().getNamespace();e=t+"."+e;return this.base?this.base.byId(e):undefined},getView:function(){return this.base.getView()},getInterface:function(){var e={};var t=this.getMetadata();var n=t._aAllPublicMethods;n.forEach(function(t){var n=this[t];if(typeof n==="function"){e[t]=function(){var e=n.apply(this,arguments);return e instanceof s?e.getInterface():e}.bind(this)}}.bind(this));this.getInterface=function(){return e};return e}},n);s.override=function(e){var a=t.createClass(this,"anonymousExtension~"+i(),{},n);a.getMetadata()._staticOverride=e;a.getMetadata()._override=this.getMetadata()._override;return a};s.use=function(e){throw new Error("ControllerExtension.use() is not a function that may be called at runtime. It is not contained in the public API."+"It is only used in TypeScript as a dummy function to convert a ControllerExtension class to an instance, but is supposed "+"to be removed by the class transformation. If you see this error, the call has not been removed as expected. Make sure to a) "+"only call this method on the base class 'ControllerExtension', not a derived class, and to b) only call it when defining class "+"member properties in an ES6-style class, and to c) use an up-to-date version of the 'transform-modules-ui5' Babel plugin or "+"the 'ui5-tooling-transpile' task/middleware for the UI5 build tooling. Only when used like this, the call is properly recognized and removed.")};s.overrideMethod=function(e,t,n,i,s){var l=t[e];var u=n[e];s=s||a.Instead;function c(n){(function(n,a,i,r){t[e]=function(){if(r){n.apply(i,arguments);return a.apply(t,arguments)}else{a.apply(t,arguments);return n.apply(i,arguments)}}})(u,l,i,n)}if(typeof u==="function"&&i){u=u.bind(i)}switch(s){case a.Before:if(l&&typeof l==="function"){c(true)}else if(typeof u==="function"){t[e]=u}else{r.errorThrows("Controller extension failed: lifecycleMethod '"+e+"', is not a function")}break;case a.After:if(l&&typeof l==="function"){c(false)}else if(typeof u==="function"){t[e]=u}else{r.errorThrows("Controller extension failed: lifecycleMethod '"+e+"', is not a function")}break;case a.Instead:default:if(e in t){o.debug("Overriding  member '"+e+"' of extension "+this.getMetadata().getName());if(!this.getMetadata().isMethodFinal(e)){t[e]=u}else{r.errorThrows("Error in ControllerExtension.override: Method '"+e+"' of extension '"+this.getMetadata().getName()+"' is flagged final and cannot be overridden!")}}else{t[e]=u}break}};return s});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/mvc/ControllerExtensionProvider", ["sap/base/future","sap/ui/core/Component"],function(r,e){"use strict";var n={};var o={};o._sExtensionProvider=null;o.registerExtensionProvider=function(r){o._sExtensionProvider=r};o.getControllerExtensions=function(n,s,l,u){var a={customizingControllerNames:[],providerControllers:[]};var v=e.getComponentById(s);if(v&&v.getLocalId){l=v.getLocalId(l)||l}var f=t(n,v,l);a.customizingControllerNames=f;if(u){if(o._sExtensionProvider){return i(u).then(function(r){return r.getControllerExtensions(n,s,u,l)}).then(function(r){a.providerControllers=r||[];return a})}else{return Promise.resolve(a)}}else{if(o._sExtensionProvider){var c=i();if(c){var d=c.getControllerExtensions(n,s,u,l);if(d&&Array.isArray(d)){a.providerControllers=d}else{r.errorThrows("Controller Extension Provider: Error in ExtensionProvider.getControllerExtensions: "+o._sExtensionProvider+" - no valid extensions returned. Return value must be an array of ControllerExtensions.")}}}return a}};function t(r,n,o){var t=[];var i=e.getCustomizing(n,{type:"sap.ui.controllerExtensions",name:r+"#"+o});var s=[];if(i){s.push(i)}else{var l=e.getCustomizing(n,{type:"sap.ui.controllerExtensions",name:r});if(l){s.push(l)}}for(var u=0;u<s.length;u++){var a=s[u];if(a){var v=typeof a==="string"?a:a.controllerName;t=t.concat(a.controllerNames||[]);if(v){t.unshift(v)}}}return t}function i(r){var e=o._sExtensionProvider.replace(/\./g,"/"),t=n[e];if(t){return r?Promise.resolve(t):t}if(e){if(r){return new Promise(function(r,o){sap.ui.require([e],function(o){t=new o;n[e]=t;r(t)},o)})}else{var i=sap.ui.requireSync(e);t=new i;n[e]=t;return t}}else{return r?Promise.resolve():undefined}}return o});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/mvc/ControllerMetadata", ["sap/ui/base/Metadata","sap/base/util/merge","sap/ui/core/mvc/OverrideExecution","sap/base/future"],function(t,e,i,r){"use strict";var o=function(e,i){t.apply(this,arguments);if(this.isA("sap.ui.core.mvc.ControllerExtension")&&this.getParent().getClass().override){this.getClass().override=this.getParent().getClass().override}};o.prototype=Object.create(t.prototype);o.prototype.constructor=o;o.prototype.applySettings=function(o){if(o.overrides||o.override){this._override=o.overrides||o.override;delete o.override;delete o.overrides}t.prototype.applySettings.call(this,o);var s=o.metadata;this._defaultLifecycleMethodMetadata={onInit:{public:true,final:false,overrideExecution:i.After},onExit:{public:true,final:false,overrideExecution:i.Before},onBeforeRendering:{public:true,final:false,overrideExecution:i.Before},onAfterRendering:{public:true,final:false,overrideExecution:i.After}};var a=this.isA("sap.ui.core.mvc.ControllerExtension");var n=/^_/;var h=this._oParent.isA("sap.ui.core.mvc.Controller");var d=o.metadata&&o.metadata.methods?true:false;if(!a){if(h&&!d){n=/^_|^on|^init$|^exit$/}if(h&&d){e(s.methods,this._defaultLifecycleMethodMetadata)}}if(a||d){this._aPublicMethods=[]}this._mMethods=s.methods||{};for(var l in o){if(l!=="metadata"&&l!=="constructor"){if(!l.match(n)){if(h&&this._oParent&&this._oParent.isMethodFinal(l)){r.errorThrows("Method: '"+l+"' of controller '"+this._oParent.getName()+"' is final and cannot be overridden by controller '"+this.getName()+"'");delete this._oClass.prototype[l]}if(!(l in this._mMethods)&&typeof o[l]==="function"){if(!(o[l].getMetadata&&o[l].getMetadata().isA("sap.ui.core.mvc.ControllerExtension"))){this._mMethods[l]={public:true,final:false}}}}}}for(var c in this._mMethods){if(this.isMethodPublic(c)){this._aPublicMethods.push(c)}}};o.prototype.afterApplySettings=function(){t.prototype.afterApplySettings.call(this);var i=this.isA("sap.ui.core.mvc.ControllerExtension");if(this._oParent){var r=this._oParent._mMethods?this._oParent._mMethods:{};for(var o in r){if(this._mMethods[o]&&!i){var s=this._mMethods[o].public;this._mMethods[o]=e({},r[o]);if(s!==undefined){this._mMethods[o].public=s}if(!this.isMethodPublic(o)&&this._mMethods[o].public!==r[o].public){this._aAllPublicMethods.splice(this._aAllPublicMethods.indexOf(o),1)}}else{this._mMethods[o]=r[o]}}}if(this._oParent&&this._oParent.isA("sap.ui.core.mvc.ControllerExtension")){this._bFinal=true}};o.prototype.getNamespace=function(){var t=this._sClassName.indexOf("anonymousExtension~")==0;var e=t?this._oParent._sClassName:this._sClassName;return e.substr(0,e.lastIndexOf("."))};o.prototype.isMethodFinal=function(t){var e=this._mMethods[t];return e&&e.final};o.prototype.isMethodPublic=function(t){var e=this._mMethods[t];return e&&e.public};o.prototype.getAllMethods=function(){return this._mMethods};o.prototype.getOverrideExecution=function(t){var e=this._mMethods[t];var r=i.Instead;if(e){r=e.overrideExecution}return r};o.prototype.getOverrides=function(){return this._override};o.prototype.getStaticOverrides=function(){return this._staticOverride};o.prototype.hasOverrides=function(){return!!this._override||!!this._staticOverride};o.prototype.getLifecycleConfiguration=function(){return this._defaultLifecycleMethodMetadata};return o});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/mvc/EventHandlerResolver", ["sap/ui/base/BindingParser","sap/ui/core/CommandExecution","sap/ui/model/BindingMode","sap/ui/model/CompositeBinding","sap/ui/model/json/JSONModel","sap/ui/model/base/ManagedObjectModel","sap/base/util/JSTokenizer","sap/base/util/resolveReference","sap/base/future","sap/ui/base/DesignTime"],function(e,t,r,n,a,i,s,o,d,l){"use strict";var f={resolveEventHandler:function(r,n,s){var f,u,m;r=r.trim();if(l.isControllerCodeDeactivated()){f=function(){}}else{if(r.startsWith("cmd:")){var c=r.substr(4);f=function(e){var n=t.find(e.getSource(),c);if(n){n.trigger()}else{d.errorThrows("Handler '"+r+"' could not be resolved. No CommandExecution defined for command: "+c)}};f._sapui_commandName=c}else{u=r.indexOf("(");m=r;if(u>0){m=r.substring(0,u).trim()}else if(u===0){throw new Error("Event handler name starts with a bracket, must start with a function name "+"(or with a dot followed by controller-local function name): "+r)}f=o(m,Object.assign({".":n},s),{preferDotContext:m.indexOf(".")===-1,bindContext:false})}if(f&&u>0){var g=r.lastIndexOf(")");if(g>u){if(r.substring(u).indexOf("{=")>-1){d.warningThrows("It looks like an event handler parameter contains a binding expression ({=...}). This is not allowed "+"because the entire event handler is already considered an expression: "+r)}f=function(t,n){return function(o){var d,l,f=r;if(r.indexOf("$parameters")>-1){d=new a(o.mParameters)}if(r.indexOf("$source")>-1){l=new i(o.getSource())}var u={$controller:n,$event:o};if(t.indexOf(".")>0){var m=t.split(".")[0];u[m]=window[m]}else if(t.indexOf(".")===-1){if(n&&n[t]){f="$controller."+f}else if(window[t]){u[t]=window[t]}}Object.assign(u,s);var c=e.parseExpression(f.replace(/^\./,"$controller."),0,{oContext:n},u);if(c.result){try{p(c.result,o.getSource(),n,d,l)}catch(e){e.message="Error when evaluating event handler '"+r+"': "+e.message;throw e}}if(d){d.destroy()}if(l){l.destroy()}}}(m,n)}else{d.errorThrows("Syntax error in event handler '"+r+"': arguments must be enclosed in a pair of brackets")}}}if(typeof f==="function"){f._sapui_handlerName=r;return[f,n]}d.warningThrows("Event handler name '"+r+"' could not be resolved to an event handler function")},parse:function e(t){t=t.trim();var r=new s;var n=[];var a="";var i=0;r.init(t,0);for(;;){var o=r.next();if(o==='"'||o==="'"){var d=r.getIndex();r.string();a+=t.slice(d,r.getIndex());o=r.getCh()}if(!o){break}switch(o){case"(":i++;break;case")":i--;break;default:break}if(o===";"&&i===0){n.push(a.trim());a=""}else{a+=o}}if(a){n.push(a.trim())}return n}};function p(e,t,a,i,s){var o,d;e.mode=r.OneWay;if(!e.parts){e.parts=[];e.parts[0]={path:e.path,targetType:e.targetType,type:e.type,suspended:e.suspended,formatOptions:e.formatOptions,constraints:e.constraints,model:e.model,mode:e.mode};delete e.path;delete e.targetType;delete e.mode;delete e.model}for(var l=0;l<e.parts.length;l++){d=e.parts[l];if(typeof d=="string"){d={path:d};e.parts[l]=d}if(!d.path&&d.parts){throw new Error("Bindings in event handler parameters cannot use parts. Just use one single path.")}var f=d.path.indexOf(">");if(f>0){d.model=d.path.substr(0,f);d.path=d.path.substr(f+1)}}var p,u,m=[];e.parts.forEach(function(n){var a;if(n.model==="$parameters"){a=i;p=i.createBindingContext("/")}else if(n.model==="$source"){a=s;p=s.createBindingContext("/")}else{a=t.getModel(n.model);p=t.getBindingContext(n.model)}o=n.type;u=a.bindProperty(n.path,p,e.parameters);u.setType(o,n.targetType||"any");u.setFormatter(n.formatter);u.setBindingMode(r.OneTime);m.push(u)});if(m.length>1||e.formatter&&e.formatter.textFragments){o=e.type;u=new n(m,e.useRawValues,e.useInternalValues);u.setType(o,d.targetType||"any");u.setBindingMode(r.OneTime)}else{u=m[0]}u.setFormatter(e.formatter);u.initialize();return u.getExternalValue()}return f});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/mvc/HTMLView", ["./View","./HTMLViewRenderer","./ViewType","sap/base/util/merge","sap/ui/base/ManagedObject","sap/ui/core/DeclarativeSupport","sap/ui/model/resource/ResourceModel","sap/base/util/LoaderExtensions"],function(e,t,r,n,o,i,a,l){"use strict";var s=e.extend("sap.ui.core.mvc.HTMLView",{metadata:{library:"sap.ui.core",deprecated:true},renderer:t});s.create=function(t){var o=n({},t);o.type=r.HTML;return e.create(o)};sap.ui.htmlview=function(e,t){return sap.ui.view(e,t,r.HTML)};s._sType=r.HTML;s.asyncSupport=true;s._mTemplates={};s._mAllowedSettings={viewName:true,controller:true,viewContent:true,definition:true,controllerName:true,resourceBundleName:true,resourceBundleUrl:true,resourceBundleLocale:true,resourceBundleAlias:true};s._getTemplate=function(e,t){var r=this._getViewUrl(e);var n=this._mTemplates[r];if(!n){n=this._loadTemplate(e,t);if(t&&t.async){var o=this;return n.then(function(e){o._mTemplates[r]=e;return Promise.resolve(e)})}else{this._mTemplates[r]=n}}return t.async?Promise.resolve(n):n};s.prototype.getControllerName=function(){return this._controllerName};s._getViewUrl=function(e){return sap.ui.require.toUrl(e.replace(/\./g,"/"))+".view.html"};s._loadTemplate=function(e,t){var r=e.replace(/\./g,"/")+".view.html";return l.loadResource(r,t)};s.prototype.initViewSettings=function(e){if(!e){throw new Error("mSettings must be given")}if(e.viewName&&e.viewContent){throw new Error("View name and view content are given. There is no point in doing this, so please decide.")}else if(!e.viewName&&!e.viewContent){throw new Error("Neither view name nor view content is given. One of them is required.")}var t=this;function r(){t._oTemplate=document.createElement("div");if(typeof n==="string"){t._oTemplate.innerHTML=n}else{var r=n;var o=document.createDocumentFragment();for(var l=0;l<r.length;l++){o.appendChild(r.item(l))}t._oTemplate.appendChild(o)}var u=t._oTemplate.getElementsByTagName("template")[0];var c=t.getMetadata().getAllProperties();if(u){var m=u.getAttributeNames();for(var p=0;p<m.length;p++){var d=m[p];var v=i.convertAttributeToSettingName(d,t.getId());var f=u.getAttribute(d);var h=c[v];if(!e[v]){if(h){e[v]=i.convertValueToType(i.getPropertyDataType(h),f)}else if(s._mAllowedSettings[v]){e[v]=f}}}t._oTemplate=u}if(t._oTemplate.content){var o=t._oTemplate.content;t._oTemplate=document.createElement("div");t._oTemplate.appendChild(o)}if(e.controllerName){t._controllerName=e.controllerName}if((e.resourceBundleName||e.resourceBundleUrl)&&(!e.models||!e.models[e.resourceBundleAlias])){var g=new a({bundleName:e.resourceBundleName,bundleUrl:e.resourceBundleUrl,bundleLocale:e.resourceBundleLocale,async:e.async});var _=g.getResourceBundle();if(_ instanceof Promise){return _.then(function(){t.setModel(g,e.resourceBundleAlias)})}t.setModel(g,e.resourceBundleAlias)}}var n=e.viewContent;if(!n){n=s._getTemplate(e.viewName,{async:e.async})}if(e.async){return n.then(function(e){n=e;return r()})}r()};s.prototype.onControllerConnected=function(e){var t=this;o.runWithPreprocessors(function(){i.compile(t._oTemplate,t)},{settings:this._fnSettingsPreprocessor})};s.prototype.exit=function(){this._oTemplate=null;e.prototype.exit.call(this);if(this._connectedControls){for(var t=0;t<this._connectedControls.length;t++){this._connectedControls[t].destroy()}this._connectedControls=null}};s.prototype.connectControl=function(e){this._connectedControls=this._connectedControls||[];this._connectedControls.push(e)};return s});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/mvc/HTMLViewRenderer", ["./ViewRenderer"],function(e){"use strict";var r={apiVersion:1};r.render=function(i,t){i.openStart("div",t);i.class("sapUiView");i.class("sapUiHTMLView");e.addDisplayClass(i,t);i.style("width",t.getWidth());i.style("height",t.getHeight());i.openEnd();if(t._oTemplate){var a=t._oTemplate.innerHTML;var n=t.getContent();var s=[];var l=function(e){var t=r._getHTML(i,e,a);if(t){a=t}else{s.push(e)}};if(n){if(Array.isArray(n)){for(var d=0;d<n.length;d++){l(n[d])}}else if(n){l(n)}}i.unsafeHtml(a);for(var v=0;v<s.length;v++){i.renderControl(s[v])}}i.close("div")};r._getHTML=function(e,r,i){var t=r.getId();i=i.replace(/(<div)/gi,"\n$1");var a=new RegExp('<div.*?data-sap-ui-id="'+t+'".*?></div>',"gi");var n=a.exec(i);if(n){i=i.replace(n[0],e.getHTML(r));return i}else{return""}};return r},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/mvc/JSONView", ["./View","./JSONViewRenderer","./ViewType","./EventHandlerResolver","sap/base/util/merge","sap/ui/base/ManagedObject","sap/ui/model/resource/ResourceModel","sap/base/Log","sap/base/util/LoaderExtensions"],function(e,t,n,r,i,o,s,a,u){"use strict";var c=e.extend("sap.ui.core.mvc.JSONView",{metadata:{library:"sap.ui.core"},renderer:t});c.create=function(t){var r=i({},t);for(var o in r){if(o==="preprocessors"){delete r["preprocessors"];a.warning("JSONView.create does not support the option preprocessors!")}}r.type=n.JSON;return e.create(r)};sap.ui.jsonview=function(e,t){return sap.ui.view(e,t,n.JSON)};c._sType=n.JSON;c.asyncSupport=true;c.prototype.initViewSettings=function(e){if(!e){throw new Error("mSettings must be given")}if(e.viewName&&e.viewContent){throw new Error("View name and view content are given. There is no point in doing this, so please decide.")}else if(!e.viewName&&!e.viewContent){throw new Error("Neither view name nor view content is given. One of them is required.")}var t=this;var n=function(){if((t._oJSONView.resourceBundleName||t._oJSONView.resourceBundleUrl)&&(!e.models||!e.models[t._oJSONView.resourceBundleAlias])){var n=new s({bundleName:t._oJSONView.resourceBundleName,bundleUrl:t._oJSONView.resourceBundleUrl,async:e.async});var r=n.getResourceBundle();if(r instanceof Promise){return r.then(function(){t.setModel(n,t._oJSONView.resourceBundleAlias)})}t.setModel(n,t._oJSONView.resourceBundleAlias)}};if(e.viewName){if(e.async){return this._loadTemplate(e.viewName,{async:true}).then(n)}else{this._loadTemplate(e.viewName);n()}}else if(e.viewContent){this.mProperties["viewContent"]=e.viewContent;if(typeof e.viewContent==="string"){this._oJSONView=JSON.parse(e.viewContent);if(!this._oJSONView){throw new Error("error when parsing viewContent: "+e.viewContent)}}else if(typeof e.viewContent==="object"){this._oJSONView=e.viewContent}else{throw new Error("viewContent must be a JSON string or object, but is a "+typeof e.viewContent)}if(e.async){return Promise.resolve().then(n)}else{n()}}};c.prototype.onControllerConnected=function(e){var t=this;o.runWithPreprocessors(function(){t.applySettings({content:t._oJSONView.content},e)},{id:function(e){return t.createId(e)},settings:function(n){var i=this.getMetadata(),o=i.getJSONKeys(),s,a,u;for(s in n){if((u=o[s])!==undefined){a=n[s];switch(u._iKind){case 3:if(typeof a==="string"){n[s]=t.createId(a)}break;case 5:if(typeof a==="string"){n[s]=r.resolveEventHandler(a,e)}break}}}}})};c.prototype._loadTemplate=function(e,t){var n=e.replace(/\./g,"/")+".view.json";if(!t||!t.async){this._oJSONView=u.loadResource(n)}else{var r=this;return u.loadResource(n,t).then(function(e){r._oJSONView=e})}};c.prototype.getControllerName=function(){return this._oJSONView.controllerName};return c});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/mvc/JSONViewRenderer", ["./ViewRenderer"],function(e){"use strict";var t={apiVersion:2};t.render=function(t,i){t.openStart("div",i);t.class("sapUiView");t.class("sapUiJSONView");e.addDisplayClass(t,i);t.style("width",i.getWidth());t.style("height",i.getHeight());t.openEnd();i.getContent().forEach(t.renderControl,t);t.close("div")};return t},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/mvc/JSView", ["./View","./JSViewRenderer","./ViewType","sap/base/util/extend","sap/base/util/merge","sap/ui/base/ManagedObject","sap/base/Log"],function(e,i,t,r,n,s,o){"use strict";var a=e.extend("sap.ui.core.mvc.JSView",{metadata:{library:"sap.ui.core"},renderer:i});var p={};a.asyncSupport=true;a._sType=t.JS;a.create=function(i){var n=r({},i);for(var s in n){if(s==="definition"||s==="preprocessors"){delete n[s];o.warning("JSView.create does not support the options definition or preprocessor!")}}n.type=t.JS;return e.create(n)};sap.ui.jsview=function(e,i,t){return c.apply(this,arguments)};function c(e,i,t){var r={},n;if(i&&typeof i=="string"){r.viewName=i;if(typeof arguments[2]=="boolean"){r.async=t}else if(typeof arguments[2]=="object"){r.controller=arguments[2];r.async=!!arguments[3]}if(r.viewName.startsWith("module:")){throw Error("Legacy factory sap.ui.jsview doesn't support typed views!")}n=new a(e,r);return n}else if(i&&typeof i=="object"){p[e]=i;sap.ui.loader._.declareModule(e.replace(/\./g,"/")+".view.js");o.warning("For defining views, use typed views with 'sap.ui.core.mvc.View.extend()'.")}else if(arguments.length==1&&typeof e=="string"||arguments.length==2&&typeof arguments[0]=="string"&&typeof arguments[1]=="boolean"){r.viewName=arguments[0];r.async=!!arguments[1];n=r.id?new a(r.id,r):new a(r);return n}else{throw new Error("Wrong arguments ('"+e+"', '"+i+"')!"+" Either call sap.ui.jsview([sId,] sViewName) to instantiate a View"+" or sap.ui.jsview(sViewName, oViewImpl) to define a View type.")}}a.prototype.initViewSettings=function(e){var i;o.warning("Do not use deprecated sap.ui.core.mvc.JSView: (View: "+(e.id||e.viewName)+"). "+"Use typed views defined by 'sap.ui.core.mvc.View.extend()' and created by 'sap.ui.core.mvc.View.create()'. "+"For further information, have a look at https://sdk.openui5.org/topic/e6bb33d076dc4f23be50c082c271b9f0.","sap.ui.core.mvc.JSView",null,function(){return{type:"sap.ui.core.mvc.JSView",name:e.viewName}});if(Object.getPrototypeOf(this)===a.prototype){if(!p[e.viewName]){var t=e.viewName.replace(/\./g,"/")+".view";if(e.async){i=new Promise(function(e,i){sap.ui.require([t],e,i)})}else{sap.ui.requireSync(t)}}if(e.async){return Promise.resolve(i).then(function(){n(this,p[e.viewName])}.bind(this))}n(this,p[e.viewName])}else if(e.async){return Promise.resolve()}};a.prototype.onControllerConnected=function(e){s.runWithPreprocessors(function(){this.applySettings({content:this.createContent(e)})},{id:this.getAutoPrefixId()?this.createId.bind(this):undefined,settings:this._fnSettingsPreprocessor},this)};return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/mvc/JSViewRenderer", ["./ViewRenderer"],function(e){"use strict";var t={apiVersion:2};t.render=function(t,i){t.openStart("div",i);t.class("sapUiView");t.class("sapUiJSView");e.addDisplayClass(t,i);t.style("width",i.getWidth());t.style("height",i.getHeight());t.openEnd();i.getContent().forEach(t.renderControl,t);t.close("div")};return t},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/mvc/OverrideExecution", function(){"use strict";var e={After:"After",Before:"Before",Instead:"Instead"};return e},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/mvc/TemplateView", ["./View","./TemplateViewRenderer","./ViewType","sap/base/Log"],function(e,t,i,r){"use strict";var n=e.extend("sap.ui.core.mvc.TemplateView",{metadata:{library:"sap.ui.core"},renderer:t});(function(){sap.ui.templateview=function(e,t){r.warning("sap.ui.core.mvc.TemplateView is deprecated. Use XMLView or JSView instead.");return sap.ui.view(e,t,i.Template)};n._sType=i.Template;n.prototype.getControllerName=function(){return this._sControllerName};n._getViewUrl=function(e){return sap.ui.require.toUrl(e.replace(/\./g,"/"))+".view.tmpl"};n.prototype.initViewSettings=function(e){if(!e){throw new Error("mSettings must be given")}if(!e.viewName){throw new Error("No view name is given.")}this._oTemplate=sap.ui.template({id:this.getId(),src:n._getViewUrl(e.viewName)});this._sControllerName=this._oTemplate._sControllerName;this._oTemplate=this._oTemplate.createControl(undefined,undefined,this);this.addContent(this._oTemplate)}})();return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/mvc/TemplateViewRenderer", ["./ViewRenderer"],function(e){"use strict";var i={apiVersion:2};i.render=function(i,t){i.openStart("div",t);i.class("sapUiView");i.class("sapUiTmplView");e.addDisplayClass(i,t);i.style("width",t.getWidth());i.style("height",t.getHeight());i.openEnd();i.renderControl(t._oTemplate);i.close("div")};return i},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/mvc/View", ["sap/base/assert","sap/base/future","sap/base/Log","sap/base/util/extend","sap/base/util/isEmptyObject","sap/base/util/merge","sap/ui/base/ManagedObject","sap/ui/core/Control","sap/ui/base/DesignTime","sap/ui/core/Element","./Controller","./ViewRenderer","./ViewType","./XMLProcessingMode"],function(e,t,r,o,n,i,s,a,c,p,u,f,l,d){"use strict";var g=a.extend("sap.ui.core.mvc.View",{metadata:{interfaces:["sap.ui.core.IDScope"],abstract:true,library:"sap.ui.core",properties:{width:{type:"sap.ui.core.CSSSize",group:"Dimension",defaultValue:"100%"},height:{type:"sap.ui.core.CSSSize",group:"Dimension",defaultValue:null},viewName:{type:"string",group:"Misc",defaultValue:null},displayBlock:{type:"boolean",group:"Appearance",defaultValue:false}},defaultAggregation:"content",aggregations:{content:{type:"sap.ui.core.Control",multiple:true,singularName:"content"}},events:{afterInit:{},beforeExit:{},afterRendering:{},beforeRendering:{}},specialSettings:{controller:"sap.ui.core.mvc.Controller",controllerName:"string",preprocessors:"Object",resourceBundleName:"string",resourceBundleUrl:"sap.ui.core.URI",resourceBundleLocale:"string",resourceBundleAlias:"string",type:"string",definition:"any",viewContent:{type:"any",deprecated:true},viewData:"any",async:{type:"boolean",defaultValue:false}},designtime:"sap/ui/core/designtime/mvc/View.designtime"},renderer:f});g._mPreprocessors={};function m(e){e._settings={};for(var t in e){if(t.indexOf("_")!==0){e._settings[t]=e[t]}}}function h(e,t){var r;if(typeof e.preprocessor==="string"){var o=e.preprocessor.replace(/\./g,"/");if(t){return new Promise(function(e,t){sap.ui.require([o],function(t){e(t)},t)})}else{return sap.ui.requireSync(o)}}else if(typeof e.preprocessor==="function"&&!e.preprocessor.process){r={process:e.preprocessor}}else{r=e.preprocessor}if(t){return Promise.resolve(r)}else{return r}}function y(e,t){var r=this.mPreprocessors[t]||[],n=[],i,s,a,c=[];if(g._mPreprocessors[e]&&g._mPreprocessors[e][t]){n=g._mPreprocessors[e][t].map(function(e){return Object.assign({},e)})}for(i=0,s=n.length;i<s;i++){if(n[i]._onDemand){a=n[i]}else{c.push(n[i])}}for(i=0,s=r.length;i<s;i++){var p=!r[i].preprocessor;if(p&&a){c.unshift(o(r[i],a))}else if(!p){c.push(r[i])}}return c}function w(e,t){var r=e.getMetadata().getClass();function o(e){e.preprocessor=h(e,t.async)}e.mPreprocessors=Object.assign({},t.preprocessors);for(var n in r.PreprocessorType){var i=r.PreprocessorType[n];if(e.mPreprocessors[i]&&!Array.isArray(e.mPreprocessors[i])){e.mPreprocessors[i]=[e.mPreprocessors[i]]}else if(!e.mPreprocessors[i]){e.mPreprocessors[i]=[]}e.mPreprocessors[i].forEach(m);e.mPreprocessors[i]=y.call(e,r._sType,i);e.mPreprocessors[i].forEach(o)}}function v(e){e.oAsyncState={};e.oAsyncState.promise=null}var P=function(e,t){var r=t.async;var o=function(t){e.oController=t;t.oView=e};if(!c.isControllerCodeDeactivated()){var n=t.controller,i=n&&typeof n.getMetadata==="function"&&n.getMetadata().getName();if(!n){e.bControllerIsViewManaged=true;let t=e._getControllerModuleName()||e._getControllerName();if(t){var a=sap.ui.require("sap/ui/core/Component");if(a){var p=a.getCustomizing(e,{type:"sap.ui.controllerReplacements",name:t});if(p){t=typeof p==="string"?p:p.controllerName}}if(r){n=u.create({name:t,_viewId:e.sId})}else{n=sap.ui.controller(t,true,false,e.sId)}}}else{e.bControllerIsViewManaged=false;var f=s._sOwnerId;if(!n._isExtended()){n=u.applyExtensions(n,i,f,e.sId,r)}else if(r){n=Promise.resolve(n)}}if(n){if(r){if(!e.oAsyncState){throw new Error("The view "+e.sViewName+" runs in sync mode and therefore cannot use async controller extensions!")}return n.then(o)}else{o(n)}}}else if(r){const e=Object.assign(new u,{"_sap.ui.core.mvc.EmptyControllerImpl":true});return Promise.resolve(e).then(o)}else{sap.ui.controller("sap.ui.core.mvc.EmptyControllerImpl",{"_sap.ui.core.mvc.EmptyControllerImpl":true});e.oController=sap.ui.controller("sap.ui.core.mvc.EmptyControllerImpl")}};g.prototype._initCompositeSupport=function(i){i=i||{};e(!i.preprocessors||this.getMetadata().getName().indexOf("XMLView"),"Preprocessors only available for XMLView");this.oViewData=i.viewData;this.sViewName=i.viewName;if(this.sViewName&&this.sViewName.startsWith("module:")){this.sViewName=this.sViewName.slice("module:".length).replace(/\//g,".")}var s=this;w(this,i);if(i.async){v(this)}var a=sap.ui.require("sap/ui/core/Component");if(a){var c=a.getCustomizing(this,{type:"sap.ui.viewModifications",name:this.sViewName});if(!n(c)){this._fnSettingsPreprocessor=function(e){var n=this.getId();if(n){if(s.isPrefixedId(n)){n=n.substring((s.getId()+"--").length)}var i=Object.assign({},c[n]);if(i){for(var a in i){if(a!=="visible"){t.warningThrows(`Customizing: property '${a}' of control '${n}' in View '${s.sViewName}' cannot be customized, only 'visible' can.`,{suffix:"Property will be ignored"});delete i[a]}}r.info("Customizing: custom value for property 'visible' of control '"+n+"' in View '"+s.sViewName+"' applied: "+i.visible);e=o(e,i)}}}}}var p=function(t,r){e(typeof t==="function","fn must be a function");var o=a&&a.getOwnerComponentFor(s);if(o){if(r){s.fnScopedRunWithOwner=s.fnScopedRunWithOwner||function(e){return o.runAsOwner(e)}}return o.runAsOwner(t)}return t()};var u=function(e){if(e.oController&&e.oController.connectToView){return e.oController.connectToView(e)}};var f=function(e){if(s.onControllerConnected){return s.onControllerConnected(s.oController,e)}};if(i.async){this.oAsyncState.promise=this.initViewSettings(i).then(function(){return p(P.bind(null,s,i),true)}).then(function(){return p(f.bind(null,i),true)}).then(function(){return u(s)}).then(function(){return s.runPreprocessor("controls",s,false)}).then(function(){return p(s.fireAfterInit.bind(s),true)}).then(function(){return s}).catch(function(e){this.deregister();throw e}.bind(this))}else{this.initViewSettings(i);P(this,i);f(i);u(this);this.runPreprocessor("controls",this,true);this.fireAfterInit()}};g.prototype.getController=function(){return this.oController};g.prototype._getControllerName=function(){return this.getControllerName?.()};g.prototype._getControllerModuleName=function(){return this.getControllerModuleName?.()};g.prototype.byId=function(e){return p.getElementById(this.createId(e))};g.prototype.createId=function(e){if(!this.isPrefixedId(e)){e=this.getId()+"--"+e}return e};g.prototype.getLocalId=function(e){var t=this.getId()+"--";return e&&e.indexOf(t)===0?e.slice(t.length):null};g.prototype.isPrefixedId=function(e){return!!(e&&e.indexOf(this.getId()+"--")===0)};g.prototype.getViewData=function(){return this.oViewData};function C(){this.oAsyncState=null}g.prototype.exit=function(){this.fireBeforeExit();if(this.oController&&this.bControllerIsViewManaged){this.oController.destroy();delete this.oController}delete this.oPreprocessorInfo;if(this.oAsyncState){var e=C.bind(this);this.oAsyncState.promise.then(e,e)}};g.prototype.onAfterRendering=function(){this.fireAfterRendering()};g.prototype.onBeforeRendering=function(){this.fireBeforeRendering()};g.prototype.clone=function(e,r){t.errorThrows("Cloning a View and/or using a View as a binding template is deprecated. Please call the corresponding View factory instead, e.g. XMLView.create()");var o={},n,i;for(n in this.mProperties&&!(this.isBound&&this.isBound(n))){if(this.mProperties.hasOwnProperty(n)){o[n]=this.mProperties[n]}}i=a.prototype.clone.call(this,e,r,{cloneChildren:false,cloneBindings:true});var s,c,p;for(s in i.mEventRegistry){c=i.mEventRegistry[s];for(p=c.length-1;p>=0;p--){if(c[p].oListener===this.getController()){c[p]={oListener:i.getController(),fFunction:c[p].fFunction,oData:c[p].oData}}}}i.applySettings(o);return i};g.prototype.getPreprocessors=function(){return this.mPreprocessors};g.prototype.getPreprocessorInfo=function(e){if(!this.oPreprocessorInfo){this.oPreprocessorInfo={name:this.sViewName,componentId:this._sOwnerId,id:this.getId(),caller:this+" ("+this.sViewName+")",sync:!!e}}if(g._supportInfo){this.oPreprocessorInfo._supportInfo=g._supportInfo}return this.oPreprocessorInfo};g.prototype.runPreprocessor=function(e,t,o){var n=this.getPreprocessorInfo(o),i=this.mPreprocessors&&this.mPreprocessors[e]||[],s,a,c;if(!o){a=function(e,t){return function(r){return t.preprocessor.then(function(o){return o.process(r,e,t._settings)})}};c=Promise.resolve(t)}for(var p=0,u=i.length;p<u;p++){if(o&&i[p]._syncSupport===true){s=i[p].preprocessor.process;t=s(t,n,i[p]._settings)}else if(!o){c=c.then(a(n,i[p]))}else{r.debug('Async "'+e+'"-preprocessor was skipped in sync view execution for '+this.getMetadata().getClass()._sType+"View",this.getId())}}return o?t:c};function b(e,t){if(!g._mPreprocessors[t]){g._mPreprocessors[t]={}}if(!g._mPreprocessors[t][e]){g._mPreprocessors[t][e]=[]}}function V(e,t){return g._mPreprocessors[e][t].some(function(e){return!!e._onDemand})}g.registerPreprocessor=function(e,o,n,i,s,a){if(typeof s!=="boolean"){a=s;s=false}if(o){b(e,n);if(s&&V(n,e)){t.errorThrows(`${this.getMetadata().getName()}: Registration for "${e}" failed, only one on-demand-preprocessor allowed`);return}g._mPreprocessors[n][e].push({preprocessor:o,_onDemand:s,_syncSupport:i,_settings:a});r.debug("Registered "+(s?"on-demand-":"")+'preprocessor for "'+e+'"'+(i?" with syncSupport":""),this.getMetadata().getName())}else{t.errorThrows(`${this.getMetadata().getName()}: Registration for "${e}" failed, no preprocessor specified`)}};g.prototype.hasPreprocessor=function(e){return!!this.mPreprocessors[e].length};g.create=function(e){var t=i({},e);t.async=true;t.viewContent=t.definition;var r=sap.ui.require("sap/ui/core/Component");var o;if(r&&s._sOwnerId){o=r.getComponentById(s._sOwnerId)}function n(){return I(t.id,t,t.type).loaded()}return new Promise(function(e,r){var o=_(t);sap.ui.require([o],function(t){e(t)},r)}).then(function(e){if(e.getMetadata().isA("sap.ui.core.mvc.XMLView")){t.processingMode=d.Sequential}if(o){return o.runAsOwner(n)}else{return n()}})};g._create=I;sap.ui.view=function(e,t,o){var n=typeof e==="string"?e:t;n=typeof n==="object"?n.viewName:n;r.warning("Do not use deprecated view factory functions (View: "+n+"). "+"Use the static create function on the view module instead: [XML|HTML|JSON]View.create().","sap.ui.view",null,function(){return{type:"sap.ui.view",name:n}});return I(e,t,o)};function I(t,n,i){var a=null,c={};if(typeof t==="object"||typeof t==="string"&&n===undefined){n=t;t=undefined}if(n){if(typeof n==="string"){c.viewName=n}else{c=n}}e(!c.async||typeof c.async==="boolean","sap.ui.view factory: Special setting async has to be of the type 'boolean'!");if(t){c.id=t}if(i){c.type=i}if(c.type===l.XML&&c.async){c.processingMode=c.processingMode||d.SequentialLegacy}var p=sap.ui.require("sap/ui/core/Component");if(p&&s._sOwnerId){var u=p.getCustomizing(s._sOwnerId,{type:"sap.ui.viewReplacements",name:c.viewName});if(u){delete u.async;r.info("Customizing: View replacement for view '"+c.viewName+"' found and applied: "+u.viewName+" (type: "+u.type+")");o(c,u)}else{r.debug("Customizing: no View replacement found for view '"+c.viewName+"'.")}}var f=_(c);a=N(f,c);return a}function _(e,t){var o=S(e);if(o){if(e.type&&!t){r.error("When using the view factory, the 'type' setting must be omitted for typed views. When embedding typed views in XML, don't use the <JSView> tag, use the <View> tag instead.")}return o}if(!e.type){throw new Error("No view type specified.")}if(e.type===l.XML){return"sap/ui/core/mvc/XMLView"}if(e.type===l.JS){o="sap/ui/core/mvc/JSView"}else if(e.type===l.JSON){o="sap/ui/core/mvc/JSONView"}else if(e.type===l.HTML){o="sap/ui/core/mvc/HTMLView"}else if(e.type===l.Template){o="sap/ui/core/mvc/TemplateView"}if(!o){throw new Error("Unknown view type "+e.type+" specified.")}return o}function N(e,o){var n=sap.ui.require(e);if(!n){t.warningThrows(`The view class '${e}' needs to be required before an instance of the view can be created.`);(()=>{n=sap.ui.requireSync(e);if(o.async){r.warning("sap.ui.view was called without requiring the according view class.")}})()}return new n(o)}g.prototype.loaded=function(){if(this.oAsyncState&&this.oAsyncState.promise){return this.oAsyncState.promise}else{return Promise.resolve(this)}};function S(e){var t;if(e.viewName&&e.viewName.startsWith("module:")){t=e.viewName.slice("module:".length)}return t}g.prototype.getAutoPrefixId=function(){return false};g.prototype.onControllerConnected=function(e,t){if(!this.createContent&&typeof this.createContent!=="function"){return}var r={id:this.getAutoPrefixId()?this.createId.bind(this):undefined,settings:this._fnSettingsPreprocessor};return s.runWithPreprocessors(function(){var r=this.createContent(e);if(t.async){r=Promise.resolve(r);return r.then(function(e){this.applySettings({content:e})}.bind(this))}else if(r instanceof Promise){throw new Error("An asynchronous view (createContent) cannot be instantiated synchronously. Affected view: '"+this.getMetadata().getName()+"'.")}else{this.applySettings({content:r})}}.bind(this),r)};g.prototype.initViewSettings=function(e){if(!this.getMetadata()._oRenderer){this.getMetadata().getRenderer=function(){return g.getMetadata().getRenderer()};this.getMetadata().getRendererName=function(){return g.getMetadata().getRendererName()}}if(e.async){return Promise.resolve()}};return g});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/mvc/ViewRenderer", function(){"use strict";var e={apiVersion:2};e.render=function(t,i){t.openStart("div",i);t.class("sapUiView");e.addDisplayClass(t,i);t.style("width",i.getWidth());t.style("height",i.getHeight());t.openEnd();i.getContent().forEach(t.renderControl,t);t.close("div")};e.addDisplayClass=function(e,t){if(t.getDisplayBlock()||t.getWidth()==="100%"&&t.getHeight()==="100%"){e.class("sapUiViewDisplayBlock")}};return e},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/mvc/XMLProcessingMode", [],function(){"use strict";var e={Sequential:"Sequential",SequentialLegacy:"SequentialLegacy"};return e});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/mvc/XMLView", ["./View","./ViewType","./XMLViewRenderer","sap/base/config","sap/base/future","sap/base/Log","sap/base/i18n/Localization","sap/base/strings/hash","sap/base/util/LoaderExtensions","sap/base/util/merge","sap/ui/base/ManagedObject","sap/ui/core/Core","sap/ui/core/Control","sap/ui/core/RenderManager","sap/ui/core/XMLTemplateProcessor","sap/ui/core/cache/CacheManager","sap/ui/model/resource/ResourceModel","sap/ui/util/XMLHelper","sap/ui/VersionInfo","sap/ui/performance/trace/Interaction","sap/ui/thirdparty/jquery"],function(e,t,r,n,i,o,s,a,c,u,l,d,p,f,h,m,g,v,y,w,jQuery){"use strict";var C=f.RenderPrefixes,M="XMLViewCacheError",P={};var N=p.extend("sap.ui.core.mvc.XMLAfterRenderingNotifier",{metadata:{library:"sap.ui.core"},renderer:{apiVersion:2,render:function(e,t){e.text("")}}});var b=e.extend("sap.ui.core.mvc.XMLView",{metadata:{library:"sap.ui.core",specialSettings:{containingView:{type:"sap.ui.core.mvc.XMLView",visibility:"hidden"},xmlNode:{type:"Element",visibility:"hidden"},cache:"Object",processingMode:{type:"sap.ui.core.mvc.XMLProcessingMode",visibility:"hidden"},requireContext:{type:"Object",visibility:"hidden"}},designtime:"sap/ui/core/designtime/mvc/XMLView.designtime"},renderer:r});sap.ui.xmlview=function(e,r){return sap.ui.view(e,r,t.XML)};b.create=function(r){var n=u({},r);n.viewContent=n.definition;n.async=true;n.type=t.XML;return e.create(n)};b._sType=t.XML;b.asyncSupport=true;b._bUseCache=n.get({name:"sapUiXxViewCache",type:n.Type.Boolean,defaultValue:true,external:true})&&m._isSupportedEnvironment();function _(e){if(e.parseError.errorCode!==0){var t=e.parseError;throw new Error("The following problem occurred: XML parse Error for "+t.url+" code: "+t.errorCode+" reason: "+t.reason+" src: "+t.srcText+" line: "+t.line+" linepos: "+t.linepos+" filepos: "+t.filepos)}}function x(e,t){if(!t){throw new Error("mSettings must be given")}else if(t.viewName&&t.viewContent){throw new Error("View name and view content are given. There is no point in doing this, so please decide.")}else if((t.viewName||t.viewContent)&&t.xmlNode){throw new Error("View name/content AND an XML node are given. There is no point in doing this, so please decide.")}else if(!(t.viewName||t.viewContent)&&!t.xmlNode){throw new Error("Neither view name/content nor an XML node is given. One of them is required.")}else if(t.cache&&!(t.cache.keys&&t.cache.keys.length)){throw new Error("No cache keys provided. At least one is required.")}}function E(e,t){e.mProperties["viewContent"]=t.viewContent;var r=v.parse(t.viewContent);_(r);return r.documentElement}function V(e,t){if((e._resourceBundleName||e._resourceBundleUrl)&&(!t.models||!t.models[e._resourceBundleAlias])){var r=new g({bundleName:e._resourceBundleName,bundleUrl:e._resourceBundleUrl,bundleLocale:e._resourceBundleLocale,async:t.async});var n=r.getResourceBundle();if(n instanceof Promise){return n.then(function(){e.setModel(r,e._resourceBundleAlias)})}e.setModel(r,e._resourceBundleAlias)}}function L(e){e.oAfterRenderingNotifier=new N;e.oAfterRenderingNotifier.addDelegate({onAfterRendering:function(){e.onAfterRenderingBeforeChildren()}})}function R(e){var t=sap.ui.require("sap/ui/core/Component"),r;if(t){while(e){var n=t.getOwnerComponentFor(e);if(n){e=r=n}else{if(e instanceof t){r=e}e=e.getParent&&e.getParent()}}}return r}function A(e,t){var r=R(e),n=r?JSON.stringify(r.getManifest()):null,i=[];i=i.concat(X(e,r),S(),I(e),t.keys);return T(e,i).then(function(e){return{key:e+"("+a(n||"")+")",componentManifest:n,additionalData:t.additionalData}})}function D(e){return e}function T(e,t){return Promise.all(t).then(function(e){e=e.filter(function(e){return e!==P});if(e.every(D)){return e.join("_")}else{var t=new Error("Provided cache keys may not be empty or undefined.");t.name=M;return Promise.reject(t)}})}function X(e,t){var r=t&&t.getMetadata().getName();return[r||window.location.host+window.location.pathname,e.getId(),s.getLanguageTag().toString()].concat(t&&t.getActiveTerminologies()||[])}function I(e){var t=e.getPreprocessors(),r=e.getPreprocessorInfo(false),n=[];function i(e){n.push(e.preprocessor.then(function(e){if(e.getCacheKey){return e.getCacheKey(r)}else{return P}}))}for(var o in t){t[o].forEach(i)}return n}function S(){return y.load().then(function(e){var t="";if(!e.libraries){t=d.buildinfo.buildtime}else{e.libraries.forEach(function(e){t+=e.buildTimestamp})}return t}).catch(function(e){o.warning("version info could not be retrieved","sap.ui.core.mvc.XMLView");o.debug(e);return""})}function B(e,t){var r=e.key;delete e.key;var n=e.additionalData;e.xml=v.serialize(t);if(n&&n.setAdditionalCacheData&&n.getAdditionalCacheData){e.additionalData=n.getAdditionalCacheData()}return m.set(r,e)}function O(e){return m.get(e.key).then(function(t){if(t&&t.componentManifest==e.componentManifest){t.xml=v.parse(t.xml,"application/xml").documentElement;if(t.additionalData){var r=e.additionalData;if(r&&r.setAdditionalCacheData&&r.getAdditionalCacheData){r.setAdditionalCacheData(t.additionalData)}else{o.error("Deprecated: Don't use an object reference for caching additional Data! Use a CacheDataProvider instead!");u(e.additionalData,t.additionalData)}}return t}})}b.prototype.initViewSettings=function(t){var r=this,n;function i(n){r._xContent=n;if(e._supportInfo){e._supportInfo({context:r._xContent,env:{caller:"view",viewinfo:u({},r),settings:u({},t||{}),type:"xmlview"}})}if(!r.isSubView()){h.parseViewAttributes(n,r)}else{delete t.controller}const i=true;var o=V(r,t);if(o instanceof Promise){if(i){return o.then(function(){L(r)})}else{return o}}if(i){L(r)}}function s(e,t){if(r.hasPreprocessor("viewxml")){return h.enrichTemplateIdsPromise(e,r,t).then(function(){return r.runPreprocessor("viewxml",e,!t)})}return e}function a(e){var t=w.notifyAsyncStep("VIEW PREPROCESSING");return r.runPreprocessor("xml",e).then(function(e){return s(e,true)}).finally(t)}function l(e){return c.loadResource(e,{async:true}).then(function(e){return e.documentElement})}function d(e,t){return l(e).then(a).then(function(e){if(t){B(t,e)}return e})}function p(e,t){return A(r,t).then(function(t){return O(t).then(function(r){if(!r){return d(e,t)}else{return r.xml}})}).catch(function(t){if(t.name===M){o.error(t.message,t.name,"sap.ui.core.mvc.XMLView");o.error("Processing the View without caching.","sap.ui.core.mvc.XMLView");return d(e)}else{return Promise.reject(t)}})}this._oContainingView=t.containingView||this;this._sProcessingMode=t.processingMode;if(this.oAsyncState){this.oAsyncState.suppressPreserve=true}x(this,t);if(t.viewName){var f=t.viewName.replace(/\./g,"/")+".view.xml";if(t.async){if(t.cache&&b._bUseCache){return p(f,t.cache).then(i)}else{return l(f).then(a).then(i)}}else{n=c.loadResource(f).documentElement}}else if(t.viewContent){if(t.viewContent.nodeType===window.Node.DOCUMENT_NODE){n=t.viewContent.documentElement}else{n=E(this,t)}}else if(t.xmlNode){n=t.xmlNode}if(t.async){return a(n).then(i)}else{n=this.runPreprocessor("xml",n,true);n=s(n,false);if(n&&typeof n.getResult==="function"){if(n.isRejected()){throw n.getResult()}n=n.getResult()}i(n)}};b.prototype.onBeforeRendering=function(){var t=this.getDomRef();if(t&&!f.isPreservedContent(t)){f.preserveContent(t,true)}e.prototype.onBeforeRendering.apply(this,arguments)};b.prototype.exit=function(){if(this.oAfterRenderingNotifier){this.oAfterRenderingNotifier.destroy()}e.prototype.exit.apply(this,arguments)};b.prototype.onControllerConnected=function(e,t){var r=this;function n(e){return l.runWithPreprocessors(e,{settings:r._fnSettingsPreprocessor})}if(!this.oAsyncState){this._aParsedContent=n(h.parseTemplate.bind(null,this._xContent,this,t))}else{var i=w.notifyAsyncStep("VIEW PROCESSING");return h.parseTemplatePromise(this._xContent,this,true,{fnRunWithPreprocessor:n}).then(function(e){r._aParsedContent=e;delete r.oAsyncState.suppressPreserve}).finally(i)}};b.prototype.getControllerName=function(){if(this._controllerModuleName){o.error(`Controller name is specified using module syntax: '${this._controllerModule}'. Use #getControllerModuleName() instead.`);return undefined}return this._controllerName};b.prototype._getControllerName=function(){return this._controllerName};b.prototype.getControllerModuleName=function(){if(this._controllerName){return this._controllerName.replace(/\./g,"/")+".controller"}return this._controllerModuleName.substring("module:".length)};b.prototype._getControllerModuleName=function(){return this._controllerModuleName};b.prototype.isSubView=function(){return this._oContainingView!=this};b.prototype.onAfterRenderingBeforeChildren=function(){if(this._$oldContent.length!==0){var e=this.getAggregation("content");if(e){for(var t=0;t<e.length;t++){var r=document.getElementById(C.Temporary+e[t].getId())||e[t].getDomRef()||document.getElementById(C.Invisible+e[t].getId());if(r){jQuery(document.getElementById(C.Dummy+e[t].getId())).replaceWith(r)}}}jQuery(document.getElementById(C.Temporary+this.getId())).replaceWith(this._$oldContent)}this._$oldContent=undefined};b.prototype._onChildRerenderedEmpty=function(e,t){jQuery(t).replaceWith('<div id="'+C.Dummy+e.getId()+'" class="sapUiHidden"></div>');return true};b.registerPreprocessor=function(t,r,n,o,s,a){var c=this.getMetadata().getClass()._sType;if(typeof n==="string"){if(n!==c){throw new TypeError("View types other than "+c+" are not supported by XMLView.registerPreprocessor,"+" check View.registerPreprocessor instead")}}else{a=s;s=o;o=n}t=t.toUpperCase();if(b.PreprocessorType[t]){e.registerPreprocessor(b.PreprocessorType[t],r,c,o,s,a)}else{i.errorThrows(`${this.getMetadata().getName()}: Preprocessor could not be registered due to unknown sType "${t}"`)}};b.PreprocessorType={XML:"xml",VIEWXML:"viewxml",CONTROLS:"controls"};b.registerPreprocessor("xml","sap.ui.core.util.XMLPreprocessor",true,true);return b});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/mvc/XMLViewRenderer", ["./ViewRenderer","../RenderManager","sap/ui/thirdparty/jquery"],function(e,t,jQuery){"use strict";var n=t.RenderPrefixes.Dummy,i=t.RenderPrefixes.Invisible,r=t.RenderPrefixes.Temporary;var s={apiVersion:2};s.render=function(s,d){function o(t){s.openStart("div",d);s.class("sapUiView");s.class("sapUiXMLView");e.addDisplayClass(s,d);if(t){s.attr("data-sap-ui-preserve",d.getId())}s.style("width",d.getWidth());s.style("height",d.getHeight());s.openEnd()}function a(){s.close("div")}var l=d._aParsedContent,f;if(d.isBound("content")){o();var p=d.getContent();for(f=0;f<p.length;f++){s.renderControl(p[f])}a()}else{d._$oldContent=t.findPreservedContent(d.getId());const e=d._$oldContent.length===0;if(e){var c=d.isSubView();if(!c){const e=true;if(e){o(!d.oAsyncState||!d.oAsyncState.suppressPreserve)}else{o()}}if(l){for(f=0;f<l.length;f++){var v=l[f];const e=Array.isArray(v);if(e){s[v[0]].apply(s,v[1])}else if(!v._isExtensionPoint){s.renderControl(v);if(!v.bOutput){s.openStart("div",n+v.getId());s.class("sapUiHidden");s.openEnd();s.close("div")}}}}if(!c){a()}}else{s.renderControl(d.oAfterRenderingNotifier);s.openStart("div",r+d.getId());s.class("sapUiHidden");s.openEnd();for(f=0;f<l.length;f++){var u=l[f];if(!Array.isArray(u)&&!u._isExtensionPoint){s.renderControl(u);var g=u.getId(),y=jQuery(document.getElementById(g));if(y.length==0){y=jQuery(document.getElementById(i+g))}if(!t.isPreservedContent(y[0])){y.replaceWith('<div id="'+n+g+'" class="sapUiHidden"></div>')}}}s.close("div")}}};return s},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/plugin/TemplatingSupport", ["sap/base/Log","sap/ui/core/tmpl/Template","sap/ui/core/Core"],function(t){"use strict";var i=function(){};i.prototype.startPlugin=function(i,e){t.info("Starting TemplatingSupport plugin.");this.oCore=i;sap.ui.template()};i.prototype.stopPlugin=function(){t.info("Stopping TemplatingSupport plugin.");this.oCore=null};sap.ui.getCore().registerPlugin(new i);return i},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/postmessage/Bus", ["sap/ui/core/EventBus","sap/ui/core/Lib","sap/base/util/isPlainObject","sap/base/Log"],function(e,t,i,n){"use strict";var r;var s="______UI5______";var o=e.extend("sap.ui.core.postmessage.Bus",{constructor:function(){if(r){return r}r=this;e.apply(this,arguments);this._aAcceptedOrigins=[window.location.origin];this._aDeclinedOrigins=[];this._oPendingProcess=null;this._aEventQueue=[];this._receiver=this._receiver.bind(this);window.addEventListener("message",this._receiver)}});o.event={CONNECT:"______CONNECT______",READY:"______READY______",ACCEPTED:"______ACCEPTED______",DECLINED:"______DECLINED______"};o.prototype.destroy=function(){window.removeEventListener("message",this._receiver);this._aEventQueue=[];e.prototype.destroy.apply(this,arguments);r=undefined;this.bIsDestroyed=true};o.getInstance=function(){if(!r){r=new o}return r};o.prototype.publish=function(e){var t=e.target;var i=e.origin;var n=e.channelId;var r=e.eventId;var a=e.data;if(r===o.event.READY){if(!t){if(window.opener&&window.opener!==window){t=window.opener}else if(window.parent!==window){t=window.parent}else{return}}if(!i){i="*"}}if(typeof window==="undefined"||!(t!=null&&t===t.window)||t===window){throw TypeError("Target must be a window object and has to differ from current window")}if(typeof i!=="string"){throw TypeError("Origin must be a string")}if(typeof n!=="string"){throw TypeError("ChannelId must be a string")}if(typeof r!=="string"){throw TypeError("EventId must be a string")}if(![o.event.READY,o.event.ACCEPTED,o.event.DECLINED].includes(r)&&i!=="*"&&!this._aAcceptedOrigins.includes(i)){this._aAcceptedOrigins.push(i)}var c={origin:i,channelId:n,eventId:r,data:a};c[s]=true;t.postMessage(c,i)};o.prototype._callListener=function(e,t,i,n,r){e.call(t,r)};o.prototype._getText=function(e,i){var n=t.getResourceBundleFor("sap.ui.core");return Promise.resolve(n.getText(e,i))};o.prototype._receiver=function(e){var t=e.data;if(!i(t)||!t.hasOwnProperty(s)){return}if(this._oPendingProcess){this._aEventQueue.push(e)}else{this._oPendingProcess=this._processEvent(e)}};o.prototype._processEvent=function(e){return new Promise(function(t,i){var n=e.data;var r=e.origin;if(this._aDeclinedOrigins.includes(r)){t();return}switch(n.eventId){case o.event.CONNECT:{if(typeof n.data!=="string"){this.publish({target:e.source,origin:e.origin,channelId:n.channelId,eventId:o.event.DECLINED});t()}else if(this._aAcceptedOrigins.includes(r)){this.publish({target:e.source,origin:e.origin,channelId:n.channelId,eventId:o.event.ACCEPTED});t()}else{sap.ui.require(["sap/ui/core/postmessage/confirmationDialog"],function(i){this._getText("PostMessage.Message",[n.data,r]).then(function(e){return i(e)}).then(function(){this.addAcceptedOrigin(r);this.publish({target:e.source,origin:e.origin,channelId:n.channelId,eventId:o.event.ACCEPTED})}.bind(this),function(){this.addDeclinedOrigin(r);this.publish({target:e.source,origin:e.origin,channelId:n.channelId,eventId:o.event.DECLINED})}.bind(this)).then(t)}.bind(this),i)}break}case o.event.ACCEPTED:case o.event.DECLINED:case o.event.READY:{e.data.data=undefined;this._emitMessage(e);t();break}default:{if(this._aAcceptedOrigins.includes(r)){this._emitMessage(e)}t()}}}.bind(this)).catch(function(e){var t;var i;if(typeof e==="string"){t=e}else if(e instanceof Error){t=e.message;i=e.stack}else{t="Some unexpected error happened during post message processing"}n.error(t,i,"sap.ui.core.postmessage.Bus")}).then(function(){this._oPendingProcess=this._aEventQueue.length>0?this._processEvent(this._aEventQueue.shift()):null}.bind(this))};o.prototype._emitMessage=function(t){var i=t.data.channelId;var n=t.data.eventId;e.prototype.publish.call(this,i,n,{originalEvent:t,channelId:i,eventId:n,source:t.source,origin:t.origin,data:t.data.data})};o.prototype.getAcceptedOrigins=function(){return this._aAcceptedOrigins.slice()};o.prototype.setAcceptedOrigins=function(e){if(!Array.isArray(e)){throw new TypeError("Expected an array, but got "+typeof e)}this._aAcceptedOrigins=e.slice()};o.prototype.addAcceptedOrigin=function(e){if(typeof e!=="string"){throw new TypeError("Expected a string, but got "+typeof e)}if(!this._aAcceptedOrigins.includes(e)){this._aAcceptedOrigins.push(e)}};o.prototype.resetAcceptedOrigins=function(){this.setAcceptedOrigins([])};o.prototype.getDeclinedOrigins=function(){return this._aDeclinedOrigins.slice()};o.prototype.setDeclinedOrigins=function(e){if(!Array.isArray(e)){throw new TypeError("Expected an array, but got "+typeof e)}this._aDeclinedOrigins=e.slice()};o.prototype.addDeclinedOrigin=function(e){if(typeof e!=="string"){throw new TypeError("Expected a string, but got "+typeof e)}if(!this._aDeclinedOrigins.includes(e)){this._aDeclinedOrigins.push(e)}};o.prototype.resetDeclinedOrigins=function(){this.setDeclinedOrigins([])};return o});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/postmessage/confirmationDialog", ["sap/ui/core/Lib"],function(i){"use strict";return function(n){return new Promise(function(e,o){var s=i.isLoaded("sap.m");if(s){sap.ui.require(["sap/m/MessageBox"],function(i){i.confirm(n,{actions:[i.Action.YES,i.Action.NO],onClose:function(n){if(n===i.Action.YES){e()}else{o()}}})},o)}else{var c=window.confirm(n);if(c){e()}else{o()}}})}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/routing/HashChanger", ["./HashChangerBase","./RouterHashChanger","sap/ui/thirdparty/hasher","sap/base/Log","sap/ui/performance/trace/Interaction"],function(e,t,s,a,n){"use strict";var r=e.extend("sap.ui.core.routing.HashChanger",{constructor:function(){e.apply(this)}});r.prototype.init=function(){if(this._initialized){a.info("this HashChanger instance has already been initialized.");return false}this._initialized=true;s.changed.add(this.fireHashChanged,this);if(!s.isActive()){s.initialized.addOnce(this.fireHashChanged,this);s.init()}else{this.fireHashChanged(s.getHash())}return this._initialized};r.prototype.fireHashChanged=function(e,t){this.fireEvent("hashChanged",{newHash:e,oldHash:t})};r.prototype.createRouterHashChanger=function(){if(!this._oRouterHashChanger){var e=this._parseHash(this.getHash());this._oRouterHashChanger=new t({parent:this,hash:e.hash,subHashMap:e.subHashMap});this._registerListenerToRelevantEvents();this._oRouterHashChanger.attachEvent("hashSet",this._onHashModified,this);this._oRouterHashChanger.attachEvent("hashReplaced",this._onHashModified,this)}this._oRouterHashChanger.attachEvent("hashChanged",function(){n.notifyNavigation()});return this._oRouterHashChanger};r.prototype._registerListenerToRelevantEvents=function(){if(!this._mEventListeners){this._mEventListeners={};this.getRelevantEventsInfo().forEach(function(e){var t=e.name,s=this._onHashChangedForRouterHashChanger.bind(this,e);this._mEventListeners[t]=s;this.attachEvent(t,s,this)}.bind(this))}};r.prototype._deregisterListenerFromRelevantEvents=function(){if(this._mEventListeners){var e=Object.keys(this._mEventListeners);e.forEach(function(e){this.detachEvent(e,this._mEventListeners[e],this)}.bind(this));delete this._mEventListeners}};r.prototype._onHashChangedForRouterHashChanger=function(e,t){if(this._oRouterHashChanger){var s=e.paramMapping||{},a=s["newHash"]||"newHash",n=t.getParameter(a)||"",r=this._parseHash(n);this._oRouterHashChanger.fireHashChanged(r.hash,r.subHashMap,!!e.updateHashOnly)}};r.prototype._onHashModified=function(e){var t=e.getId(),s=[e.getParameter("hash")],a=[e.getParameter("key")],n=e.getParameter("nestedHashInfo"),r=e.getParameter("deletePrefix")||[];if(Array.isArray(n)){n.forEach(function(e){s.push(e.hash);a.push(e.key);if(Array.isArray(e.deletePrefix)){e.deletePrefix.forEach(function(e){if(r.indexOf(e)===-1){r.push(e)}})}})}if(t==="hashSet"){this._setSubHash(a,s,r)}else{this._replaceSubHash(a,s,r)}};r.prototype._setSubHash=function(e,t,s){var a=this._reconstructHash(e,t,s);this.setHash(a)};r.prototype._replaceSubHash=function(e,t,s){var a=this._reconstructHash(e,t,s);this.replaceHash(a)};r.prototype._reconstructHash=function(e,t,s){var a=this.getHash().split("&/"),n=a.shift();e.forEach(function(e,r){if(s){s=s.filter(function(t){return t!==e})}var h=t[r];if(e===undefined){n=h+""}else{var i=a.some(function(t,a,n){if(t.startsWith(e)){if(h){n[a]=e+"/"+h}else{s.push(e)}return true}return false});if(!i){a.push(e+"/"+h)}}});if(s&&s.length>0){a=a.filter(function(e){return!s.some(function(t){return e.startsWith(t)})})}a.unshift(n);return a.join("&/")};r.prototype._parseHash=function(e){var t=e.split("&/");return{hash:t.shift(),subHashMap:t.reduce(function(e,t){var s=t.indexOf("/");if(s===-1){e[t]=""}else{e[t.substring(0,s)]=t.substring(s+1)}return e},{})}};r.prototype.setHash=function(t){e.prototype.setHash.apply(this,arguments);s.setHash(t)};r.prototype.replaceHash=function(t){e.prototype.replaceHash.apply(this,arguments);s.replaceHash(t)};r.prototype.getHash=function(){return s.getHash()};r.prototype.getRelevantEventsInfo=function(){return[{name:"hashChanged",paramMapping:{fullHash:"newHash"}}]};r.prototype.destroy=function(){if(this._oRouterHashChanger){this._deregisterListenerFromRelevantEvents();this._oRouterHashChanger.destroy();this._oRouterHashChanger=undefined}delete this._initialized;s.changed.remove(this.fireHashChanged,this);e.prototype.destroy.apply(this,arguments)};r.prototype.deregisterRouterHashChanger=function(){this._deregisterListenerFromRelevantEvents();delete this._oRouterHashChanger};(function(){var e=null;var t;r.getInstance=function(){if(!e){e=new r}return e};function s(t){var s,a,n;for(s in e.mEventRegistry){if(e.mEventRegistry.hasOwnProperty(s)){a=e.mEventRegistry[s];n=t.mEventRegistry[s];if(n){t.mEventRegistry[s]=a.concat(n)}else{t.mEventRegistry[s]=a}}}}r.replaceHashChanger=function(a){if(e&&a){t=t||sap.ui.require("sap/ui/core/routing/History");if(t){var n=t.getInstance();n._setHashChanger(a)}if(e._oRouterHashChanger){e._oRouterHashChanger.detachEvent("hashSet",e._onHashModified,e);e._oRouterHashChanger.detachEvent("hashReplaced",e._onHashModified,e);e._deregisterListenerFromRelevantEvents();a._oRouterHashChanger=e._oRouterHashChanger;a._oRouterHashChanger.parent=a;delete e._oRouterHashChanger;a._oRouterHashChanger.attachEvent("hashSet",a._onHashModified,a);a._oRouterHashChanger.attachEvent("hashReplaced",a._onHashModified,a);a._registerListenerToRelevantEvents()}s(a);e.destroy()}e=a}})();return r});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/routing/HashChangerBase", ["sap/ui/base/EventProvider"],function(e){"use strict";var a=e.extend("sap.ui.core.routing.HashChangerBase",{metadata:{abstract:true,publicMethods:["getHash","setHash","replaceHash"]},constructor:function(){e.apply(this)}});a.M_EVENTS={HashChanged:"hashChanged",HashSet:"hashSet",HashReplaced:"hashReplaced"};a.prototype.setHash=function(e){this.fireEvent("hashSet",{sHash:e,hash:e})};a.prototype.replaceHash=function(e,a){this.fireEvent("hashReplaced",{sHash:e,hash:e,direction:a})};return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/routing/History", ["sap/ui/core/library","./HashChanger","sap/base/future","sap/base/Log"],function(t,i,s,e){"use strict";var a=t.routing.HistoryDirection;var r="Direction_Unchanged";var n=function(t){var i=this;this._iHistoryLength=window.history.length;this.aHistory=[];this._bIsInitial=true;function a(t){if(n._bUsePushState&&!n.getInstance()){var s=window.history.state===null?{}:window.history.state;if(typeof s==="object"){s.sap=s.sap?s.sap:{};if(s.sap.history&&Array.isArray(s.sap.history)&&s.sap.history[s.sap.history.length-1]===t){n._aStateHistory=s.sap.history}else{n._aStateHistory.push(t);s.sap.history=n._aStateHistory;window.history.replaceState(s,window.document.title)}}else{e.debug("Unable to determine HistoryDirection as history.state is already set: "+window.history.state,"sap.ui.core.routing.History")}}i._reset()}if(!t){s.errorThrows("sap.ui.core.routing.History constructor was called and it did not get a hashChanger as parameter")}this._setHashChanger(t);if(t._initialized){a(t.getHash())}else{t.attachEventOnce("hashChanged",function(t){a(t.getParameter("newHash"))})}};n._aStateHistory=[];n._bUsePushState=window.self===window.top;n.prototype.getHistoryStateOffset=function(){if(!n._bUsePushState){return undefined}var t=window.history.state?.sap?.history;if(!Array.isArray(t)){return undefined}return t.length-n._aStateHistory.length};n.prototype.destroy=function(){this._unRegisterHashChanger()};n.prototype.getDirection=function(t){if(t!==undefined&&this._bIsInitial){return undefined}if(t===undefined){return this._sCurrentDirection}return this._getDirection(t)};n.prototype.getPreviousHash=function(){return this.aHistory[this.iHistoryPosition-1]};n.prototype._setHashChanger=function(t){if(this._oHashChanger){this._unRegisterHashChanger()}this._oHashChanger=t;this._mEventListeners={};t.getRelevantEventsInfo().forEach(function(t){var i=t.name,s=t.paramMapping||{},e=this._onHashChange.bind(this,s);this._mEventListeners[i]=e;this._oHashChanger.attachEvent(i,e,this)}.bind(this));this._oHashChanger.attachEvent("hashReplaced",this._hashReplaced,this);this._oHashChanger.attachEvent("hashSet",this._hashSet,this)};n.prototype._unRegisterHashChanger=function(){if(this._mEventListeners){var t=Object.keys(this._mEventListeners);t.forEach(function(t){this._oHashChanger.detachEvent(t,this._mEventListeners[t],this)}.bind(this));delete this._mEventListeners}this._oHashChanger.detachEvent("hashReplaced",this._hashReplaced,this);this._oHashChanger.detachEvent("hashSet",this._hashSet,this);this._oHashChanger=null};n.prototype._reset=function(){this.aHistory.length=0;this.iHistoryPosition=0;this._bUnknown=true;this.aHistory[0]=this._oHashChanger.getHash()};n.prototype._getDirection=function(t,i,s){if(s&&this._oNextHash&&this._oNextHash.sHash===t){return a.NewEntry}if(i){return a.NewEntry}if(this._bUnknown){return a.Unknown}if(this.aHistory[this.iHistoryPosition+1]===t&&this.aHistory[this.iHistoryPosition-1]===t){return a.Unknown}if(this.aHistory[this.iHistoryPosition-1]===t){return a.Backwards}if(this.aHistory[this.iHistoryPosition+1]===t){return a.Forwards}return a.Unknown};n.prototype._getDirectionWithState=function(t){var i=window.history.state===null?{}:window.history.state,s,o;if(typeof i==="object"){if(i.sap===undefined){n._aStateHistory.push(t);i.sap={};i.sap.history=n._aStateHistory;window.history.replaceState(i,document.title);o=a.NewEntry}else{s=i.sap.history.every(function(t,i){return t===n._aStateHistory[i]});if(s&&i.sap.history.length===n._aStateHistory.length){o=r}else{o=s?a.Backwards:a.Forwards;n._aStateHistory=i.sap.history}}}else{e.debug("Unable to determine HistoryDirection as history.state is already set: "+window.history.state,"sap.ui.core.routing.History")}return o};n.prototype._onHashChange=function(t,i){var s=t.newHash||"newHash",e=t.oldHash||"oldHash",a=t.fullHash||"fullHash";this._hashChange(i.getParameter(s),i.getParameter(e),i.getParameter(a))};n.prototype._hashChange=function(t,i,s){var e=window.history.length,o;if(this._oNextHash&&this._oNextHash.bWasReplaced&&this._oNextHash.sHash===t){if(this._oNextHash.sDirection){o=this._oNextHash.sDirection}else{this.aHistory[this.iHistoryPosition]=t;if(s!==undefined&&n._bUsePushState&&this===n.getInstance()){n._aStateHistory[n._aStateHistory.length-1]=s;window.history.replaceState({sap:{history:n._aStateHistory}},window.document.title)}this._oNextHash=null;if(!this._bIsInitial){this._sCurrentDirection=a.Unknown}return}}this._bIsInitial=false;if(o){this._adaptToDirection(o,{oldHash:i,newHash:t,fullHash:s})}else{if(!o&&s!==undefined&&n._bUsePushState&&this===n.getInstance()){o=this._getDirectionWithState(s)}if(o===r){return}if(!o){o=this._getDirection(t,this._iHistoryLength<window.history.length,true)}this._bUnknown=false;switch(o){case a.Unknown:this._reset();break;case a.NewEntry:this.aHistory.splice(this.iHistoryPosition+1,this.aHistory.length-this.iHistoryPosition-1,t);this.iHistoryPosition++;break;case a.Forwards:this.iHistoryPosition++;break;case a.Backwards:this.iHistoryPosition--;break;default:break}}this._sCurrentDirection=o;this._iHistoryLength=e;if(this._oNextHash){this._oNextHash=null}};n.prototype._adaptToDirection=function(t,i){var s=i.fullHash,r=i.newHash,o,h;if(n._bUsePushState&&this===n.getInstance()&&s!==undefined){switch(t){case a.NewEntry:case a.Forwards:n._aStateHistory.push(s);break;case a.Backwards:o=n._aStateHistory.lastIndexOf(s);if(o!==-1){n._aStateHistory.splice(o+1)}else{n._aStateHistory=[s];e.debug("Can't find "+s+" in "+JSON.stringify(n._aStateHistory))}break;case a.Unknown:n._aStateHistory[n._aStateHistory.length-1]=s;break;default:break}h={};h.sap={};h.sap.history=n._aStateHistory;window.history.replaceState(h,document.title)}switch(t){case a.NewEntry:this.aHistory.splice(this.iHistoryPosition+1,this.aHistory.length-this.iHistoryPosition-1,r);this.iHistoryPosition+=1;break;case a.Forwards:o=this.aHistory.indexOf(r,this.iHistoryPosition+1);if(o!==-1){this.iHistoryPosition=o}else{this.aHistory.splice(this.iHistoryPosition+1,this.aHistory.length-this.iHistoryPosition-1,r);this.iHistoryPosition++}break;case a.Backwards:o=this.aHistory.lastIndexOf(r,this.iHistoryPosition-1);if(o!==-1){this.iHistoryPosition=o}else{this.aHistory=[r];this.iHistoryPosition=0}break;case a.Unknown:this.aHistory[this.iHistoryPosition]=r;break;default:break}};n.prototype._hashSet=function(t){var i=t.getParameter("hash");if(i===undefined){i=t.getParameter("sHash")}this._hashChangedByApp(i,false)};n.prototype._hashReplaced=function(t){var i=t.getParameter("hash"),s=t.getParameter("direction");if(i===undefined){i=t.getParameter("sHash")}if(i===this._oHashChanger.getHash()&&s){this._sCurrentDirection=s}this._hashChangedByApp(i,true,s)};n.prototype._hashChangedByApp=function(t,i,s){this._oNextHash={sHash:t,bWasReplaced:i,sDirection:s}};var o;n.getInstance=function(){return o};o=new n(i.getInstance());return n},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/routing/Route", ["sap/ui/base/EventProvider","sap/ui/core/routing/Target","sap/ui/core/routing/async/Route","sap/ui/core/routing/sync/Route","sap/ui/core/Component","sap/base/future","sap/base/assert","sap/base/util/deepExtend"],function(t,e,r,n,o,a,i,s){"use strict";var u=t.extend("sap.ui.core.routing.Route",{metadata:{publicMethods:["getURL","getPattern"]},constructor:function(o,i,s){t.apply(this,arguments);this._validateConfig(i);this._aPattern=[];this._aRoutes=[];this._oParent=s;this._oConfig=i;this._oRouter=o;var u=this,h=i.pattern,c,f,g,d,_=o._isAsync();d=_?r:n;for(var p in d){this[p]=d[p]}if(!Array.isArray(h)){h=[h]}if(i.parent){var m=this._getParentRoute(i.parent);if(!m){a.errorThrows(`${this}: No parent route with "${i.parent}" could be found`)}else if(m._aPattern.length>1){a.errorThrows(`${this}: Routes with multiple patterns cannot be used as parent for nested routes`);return}else{this._oNestingParent=m;h.forEach(function(t,e){var r=m._aPattern[0];r=r.charAt(r.length)==="/"?r:r+"/";h[e]=r+t})}}if(Array.isArray(i.subroutes)){c=i.subroutes;i.subroutes={};c.forEach(function(t){i.subroutes[t.name]=t})}if(!i.target){var l=this._convertToTargetOptions(i);l._async=_;this._oTarget=new e(l,o._oViews,s&&s._oTarget);this._oTarget._bUseRawViewId=true}if(i.subroutes){for(f in i.subroutes){g=i.subroutes[f];if(g.name===undefined){g.name=f}o.addRoute(g,u)}}if(i.pattern===undefined){return}h.forEach(function(t,e){u._aPattern[e]=t;u._aRoutes[e]=o._oRouter.addRoute(t);u._checkRoute(u._aRoutes[e]);u._aRoutes[e].greedy=i.greedy;u._aRoutes[e].matched.add(function(){var t={};Array.from(arguments).forEach(function(r,n){t[u._aRoutes[e]._paramsIds[n]]=r});u._routeMatched(t,true)});u._aRoutes[e].switched.add(function(){u._routeSwitched()})})},_checkRoute:function(t){var e=t._paramsIds;if(Array.isArray(e)){var r=e.filter(function(t){return t.charAt(0)==="?"}).filter(function(t){return e.indexOf(t.substring(1))>-1}).map(function(t){return t.substring(1)});if(r.length>0){throw Error("The config of route '"+this._oConfig.name+"' contains standard parameter and query parameter with the same name: '"+r+"'. The name of the routing parameters and query parameter have to differentiate.")}}},_routeSwitched:function(){this._suspend();this.fireEvent("switched",{name:this._oConfig.name})},_suspend:function(){if(this._oRouter._oTargets){this._oRouter._oTargets.suspend(this._oConfig.target);if(this._oConfig.dynamicTarget){this._oRouter._oTargets.suspend(this._oConfig.dynamicTarget)}}},_resume:function(){if(this._oRouter._oTargets){this._oRouter._oTargets.resume(this._oConfig.target);if(this._oConfig.dynamicTarget){this._oRouter._oTargets.resume(this._oConfig.dynamicTarget)}}},destroy:function(){t.prototype.destroy.apply(this);this._aPattern=null;this._aRoutes=null;this._oParent=null;this._oConfig=null;this.bIsDestroyed=true;return this},getURL:function(t){return this._aRoutes[0].interpolate(t||{})},_alignTargetsConfig:function(t){if(!t){return[]}if(!Array.isArray(t)){return typeof t==="string"?[{name:t}]:[t]}return t.map(function(t){if(typeof t==="string"){t={name:t}}return t})},_changeHashWithComponentTargets:function(t,e){var r=this._alignTargetsConfig(this._oConfig.target),n=this._oRouter._oTargets,o,i;if(r&&r.length>0&&n){o=n.getTarget(r);if(!Array.isArray(o)){o=[o]}}else{o=[]}var s=this;i=o.map(function(n,o){if(n._oOptions.type==="Component"){var i=n._load({prefix:r[o].prefix,propagateTitle:r[o].hasOwnProperty("propagateTitle")?r[o].propagateTitle:s._oRouter._oConfig.propagateTitle});return i.then(function(n){var i=n.getRouter(),s=i&&i.getHashChanger(),u=t&&t[r[o].name],h=u&&u.route,c=i&&i.getRoute(h),f;if(u){if(c){f=i._getLastMatchedRouteName()!==h;s.setHash(c.getURL(u.parameters),e||!f);return c._changeHashWithComponentTargets(u.componentTargetInfo,e||f)}else{a.errorThrows("Can not navigate to route with name '"+h+"' because the route does not exist in component with id '"+n.getId()+"'")}}})}return});return Promise.all(i)},getPattern:function(){return this._aPattern[0]},match:function(t){return this._aRoutes.some(function(e){return e.match(t)})},attachMatched:function(t,e,r){return this.attachEvent("matched",t,e,r)},detachMatched:function(t,e){return this.detachEvent("matched",t,e)},attachBeforeMatched:function(t,e,r){return this.attachEvent("beforeMatched",t,e,r)},detachBeforeMatched:function(t,e){return this.detachEvent("beforeMatched",t,e)},fireBeforeMatched:function(t){this.fireEvent("beforeMatched",t);return this},attachPatternMatched:function(t,e,r){return this.attachEvent("patternMatched",t,e,r)},detachPatternMatched:function(t,e){return this.detachEvent("patternMatched",t,e)},_validateConfig:function(t){if(!t.name){a.errorThrows(`${this}: A name has to be specified for every route`)}if(t.viewName){a.errorThrows(`${this}: The 'viewName' option shouldn't be used in Route. please use 'view' instead`)}},_convertToTargetOptions:function(t){return s({},t,{rootView:t.targetParent,controlId:t.targetControl,controlAggregation:t.targetAggregation,clearControlAggregation:t.clearTarget,viewName:t.view,viewType:t.viewType,viewId:t.viewId})},_getParentRoute:function(t){var e=t.split(":");if(e.length===1||e.length===2&&!e[0]){return this._oRouter.getRoute(e[e.length-1])}else{i(this._oRouter._oOwner,"No owner component for "+this._oRouter._oOwner.getId());var r=o.getOwnerComponentFor(this._oRouter._oOwner);while(r){if(r.isA(e[0])){var n=r.getRouter();return n.getRoute(e[1])}r=o.getOwnerComponentFor(r)}return null}},getPatternArguments:function(t){return this._aRoutes[0].extrapolate(t)}});u.M_EVENTS={BeforeMatched:"beforeMatched",Matched:"matched",PatternMatched:"patternMatched"};return u});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/routing/Router", ["sap/ui/core/library","sap/ui/base/EventProvider","./HashChanger","./Route","./Views","./Targets","./History","sap/ui/thirdparty/crossroads","sap/base/util/each","sap/base/util/deepEqual","sap/base/util/isEmptyObject","sap/base/future","sap/base/Log","sap/ui/thirdparty/jquery","./RouterHashChanger","sap/ui/core/Component"],function(t,e,i,s,n,a,r,h,o,u,d,f,c,jQuery,g,_){"use strict";var l={};var p=e.extend("sap.ui.core.routing.Router",{constructor:function(t,s,a,r,u){e.apply(this);this._oConfig=s||{};this._oRouter=h.create();this._oRouter.ignoreState=true;this._oRoutes={};this._oOwner=a;function d(){if(new URLSearchParams(window.location.search).get("sap-ui-xx-asyncRouting")==="true"){c.warning("Activation of async view loading in routing via url parameter is only temporarily supported and may be removed soon","Router");return true}return false}this._oConfig._async=this._oConfig.async;if(this._oConfig._async===undefined){this._oConfig._async=d()}this._oViews=new n({component:a,async:this._oConfig._async});if(r){this._oTargets=this._createTargets(this._oConfig,r);this._oTargets._setRouter(this);this._oTargets.attachDisplay(function(t){var e=t.getParameter("routeRelevant");if(this.isInitialized()&&!this._bMatchingProcessStarted){var i=this.getHashChanger();if(i instanceof g&&!e){i.resetHash(this)}}},this)}var f=this,_;if(!t){t={}}if(Array.isArray(t)){_=t;t={};_.forEach(function(e){t[e.name]=e})}o(t,function(t,e){if(e.name===undefined){e.name=t}f.addRoute(e)});this._oRouter.bypassed.add(this._onBypassed.bind(this));if(!u){u=i.getInstance().createRouterHashChanger()}this.setHashChanger(u);var l=this._getParentRouter();if(l){this.attachTitleChanged(function(t){if(this._oOwner&&!this._oOwner._bRoutingPropagateTitle){return}var e=t.getParameters(),i,s;if(l._fnTitleChangedFiredOnChild){l._fnTitleChangedFiredOnChild(e)}else{i=e.nestedHistory.slice();i.unshift({ownerComponentId:l._oOwner.getId(),history:l.getTitleHistory()});s={propagated:true,title:e.title,history:e.history,nestedHistory:i};l.fireTitleChanged(s)}})}},addRoute:function(t,e){if(!t.name){f.errorThrows(`${this}: A name has to be specified for every route`)}if(this._oRoutes[t.name]){c.error("Route with name "+t.name+" already exists",this)}this._oRoutes[t.name]=this._createRoute(this,t,e)},parse:function(t){if(this._oRouter){this._oRouter.parse(t)}else{f.warningThrows(`${this}: This router has been destroyed while the hash changed. No routing events where fired by the destroyed instance.`)}},initialize:function(t){var e=this,i;if(this._bIsInitialized){c.warning("Router is already initialized.",this);return this}this._bIsInitialized=true;this._bLastHashReplaced=false;this._bHashChangedAfterTitleChange=false;this.fnHashChanged=function(t){e.parse(t.getParameter("newHash"));e._bHashChangedAfterTitleChange=true};if(!this.oHashChanger){f.errorThrows(`${this}: navTo of the router is called before the router is initialized. If you want to replace the current hash before you initialize the router you may use getUrl and use replaceHash of the Hashchanger.`);return this}if(this._oTargets){var s=this._oRoutes[this._oConfig.homeRoute];this._oTargets.attachTitleChanged(this._forwardTitleChanged,this);this._aHistory=[];var n=s&&R(this._oOwner,s);if(n){this._aHistory.push(n)}}if(this.oHashChanger instanceof g){this.oHashChanger._setActiveRouter(this)}this.oHashChanger.init();i=this.oHashChanger.getHash();this.oHashChanger.attachEvent("hashChanged",this.fnHashChanged);if(t){if(this._oMatchedRoute){this._oMatchedRoute._resume()}}else if(i!==g.InvalidHash){this.parse(i)}return this},_forwardTitleChanged:function(t){var e=t.getParameters();var i={title:e.title};var s=this._oRoutes[this._oConfig.homeRoute];if(s&&C(e.name,s._oConfig.name)){i.isHome=true}this.fireTitleChanged(i)},stop:function(){if(!this._bIsInitialized){c.warning("Router is not initialized. But it got stopped",this)}if(this.fnHashChanged){this.oHashChanger.detachEvent("hashChanged",this.fnHashChanged)}if(this.fnHashReplaced){this.oHashChanger.detachEvent("hashReplaced",this.fnHashReplaced)}if(this._oTargets){this._oTargets.detachTitleChanged(this._forwardTitleChanged,this);this._oTargets._oLastTitleTarget={}}if(this._oMatchedRoute){this._oMatchedRoute._routeSwitched()}this._bIsInitialized=false;delete this._oPreviousTitleChangedRoute;return this},isStopped:function(){return this._bIsInitialized===false},isInitialized:function(){return this._bIsInitialized===true},getHashChanger:function(){return this.oHashChanger},setHashChanger:function(t){if(this.oHashChanger){c.warning("The Router already has a HashChanger set and this call is ignored")}else{this.oHashChanger=t}return this},destroy:function(){if(this.bIsDestroyed){return this}e.prototype.destroy.apply(this);if(this._oViews){this._oViews.destroy();this._oViews=null}if(!this._bIsInitialized){c.info("Router is not initialized, but got destroyed.",this)}if(this.fnHashChanged){this.oHashChanger.detachEvent("hashChanged",this.fnHashChanged)}if(this.fnHashReplaced){this.oHashChanger.detachEvent("hashReplaced",this.fnHashReplaced)}this._oRouter.removeAllRoutes();this._oRouter=null;o(this._oRoutes,function(t,e){e.destroy()});this._oRoutes=null;this._oConfig=null;if(this._oTargets){this._oTargets.destroy();this._oTargets=null}delete this._bIsInitialized;this.bIsDestroyed=true;return this},getURL:function(t,e){var i=this.getRoute(t);if(i){return i.getURL(e)}else{f.warningThrows(`${this}: Route with name "${t}" does not exist`)}},match:function(t){return Object.keys(this._oRoutes).some(function(e){return this._oRoutes[e].match(t)}.bind(this))},getRouteByHash:function(t){for(var e in this._oRoutes){if(this._oRoutes.hasOwnProperty(e)){var i=this.getRoute(e);if(i.match(t)){return i}}}},getRouteInfoByHash:function(t){var e=this.getRouteByHash(t);if(!e){return undefined}return{name:e._oConfig.name,arguments:e.getPatternArguments(t)}},getRoute:function(t){return this._oRoutes[t]},getViews:function(){return this._oViews},_createTargets:function(t,e){return new a({views:this._oViews,config:t,targets:e})},_createRoute:function(t,e,i){return new s(t,e,i)},getView:function(t,e,i){c.warning("Deprecated API Router#getView called - use Router#getViews instead.",this);var s=this._oViews._getViewWithGlobalId({viewName:t,type:e,id:i},true);this.fireViewCreated({view:s,viewName:t,type:e});return s},setView:function(t,e){this._oViews.setView(t,e);return this},_getParentRouter:function(){var t=this._oOwner&&_.getOwnerComponentFor(this._oOwner);return t&&t.getRouter()},navTo:function(t,e,i,s){var n=this,a=this.getRoute(t),r,h;if(this.isStopped()){c.info("The router instance "+this._sId+" is stopped. No navigation can be performed.");return this}if(!a){f.warningThrows(`${this}: Route with name "${t}" does not exist`);return this}var o=this._getLastMatchedRouteName()!==t&&this._sRouteInProgress!==t;this._sRouteInProgress=t;if(typeof i==="boolean"){s=i}if(e===undefined){e={}}if(i&&!d(i)){if(!this._oConfig._async){c.error("navTo with component target info is only supported with async router",this);return this}r=a._changeHashWithComponentTargets(i,o)}h=a.getURL(e);if(s){n._bLastHashReplaced=true;n.oHashChanger.replaceHash(h,r,!o)}else{n.oHashChanger.setHash(h,r,!o)}return this},_getLastMatchedRouteName:function(){return this._oMatchedRoute&&this._oMatchedRoute._oConfig.name},getTargets:function(){return this._oTargets},getTarget:function(t){return this._oTargets.getTarget(t)},attachRouteMatched:function(t,e,i){this.attachEvent("routeMatched",t,e,i);return this},detachRouteMatched:function(t,e){this.detachEvent("routeMatched",t,e);return this},fireRouteMatched:function(t){this.fireEvent("routeMatched",t);if(p._interceptRouteMatched){p._interceptRouteMatched(this._oConfig.controlId,this)}return this},attachBeforeRouteMatched:function(t,e,i){this.attachEvent("beforeRouteMatched",t,e,i);return this},detachBeforeRouteMatched:function(t,e){this.detachEvent("beforeRouteMatched",t,e);return this},fireBeforeRouteMatched:function(t){this.fireEvent("beforeRouteMatched",t);return this},attachViewCreated:function(t,e,i){this.attachEvent("viewCreated",t,e,i);return this},detachViewCreated:function(t,e){this.detachEvent("viewCreated",t,e);return this},fireViewCreated:function(t){this.fireEvent("viewCreated",t);return this},attachRoutePatternMatched:function(t,e,i){this.attachEvent("routePatternMatched",t,e,i);return this},detachRoutePatternMatched:function(t,e){this.detachEvent("routePatternMatched",t,e);return this},fireRoutePatternMatched:function(t){this.fireEvent("routePatternMatched",t);return this},attachBypassed:function(t,e,i){return this.attachEvent(p.M_EVENTS.BYPASSED,t,e,i)},detachBypassed:function(t,e){return this.detachEvent(p.M_EVENTS.BYPASSED,t,e)},fireBypassed:function(t){return this.fireEvent(p.M_EVENTS.BYPASSED,t)},attachTitleChanged:function(t,e,i){this.attachEvent(p.M_EVENTS.TITLE_CHANGED,t,e,i);return this},detachTitleChanged:function(t,e){return this.detachEvent(p.M_EVENTS.TITLE_CHANGED,t,e)},fireTitleChanged:function(e){if(this.isStopped()){return this}var i=!this._pWaitForTitleChangedOnChild;if(!e.propagated){e.propagated=false;var s=r.getInstance().getDirection(),n=this.getHashChanger().getHash(),a=t.routing.HistoryDirection,h=this._aHistory[this._aHistory.length-1],o;if(s===a.Backwards&&h&&!h.isHome){if(h&&h.title!==e.title){this._aHistory.pop()}}else if(h&&h.hash==n){h.title=e.title;this._aHistory.some(function(t,e,i){if(e<i.length-1&&u(t,h)){i.splice(e,1);return true}return false})}else{if(this._bLastHashReplaced){this._aHistory.pop()}o={hash:n,title:e.title};this._aHistory.some(function(t,e,i){if(u(t,o)){return i.splice(e,1)}});this._aHistory.push(o)}e.history=this._aHistory.slice(0,-1);e.nestedHistory=[{history:this.getTitleHistory(),ownerComponentId:this._oOwner&&this._oOwner.getId()}];this._bLastHashReplaced=false;this._oPreviousTitleChangedRoute=this._oMatchedRoute;this._bFireTitleChanged=false;if(this._pWaitForTitleChangedOnChild){this._pWaitForTitleChangedOnChild.then(function(t){e.title=t.title;e.propagated=true;Array.prototype.push.apply(e.nestedHistory,t.nestedHistory);this._stopWaitingTitleChangedFromChild();this.fireEvent(p.M_EVENTS.TITLE_CHANGED,e)}.bind(this))}}if(i){if(this._bMatchingProcessStarted&&this._isAsync()){this.attachEventOnce("routeMatched",function(){this.fireEvent(p.M_EVENTS.TITLE_CHANGED,e)},this)}else{this.fireEvent(p.M_EVENTS.TITLE_CHANGED,e)}}return this},getTitleHistory:function(){return this._aHistory||[]},_waitForTitleChangedOn:function(t){if(this._bFireTitleChanged){this._pWaitForTitleChangedOnChild=new Promise(function(t){this._fnTitleChangedFiredOnChild=t}.bind(this))}},_stopWaitingTitleChangedFromChild:function(){delete this._pWaitForTitleChangedOnChild;delete this._fnTitleChangedFiredOnChild},register:function(t){l[t]=this;return this},_onBypassed:function(t){var e=function(){this.fireBypassed({hash:t})}.bind(this);if(this._oConfig.bypassed){var i=this._oTargets.display(this._oConfig.bypassed.target,{hash:t});if(i instanceof Promise){i.then(e);return}}e()},_isAsync:function(){return this._oConfig._async},metadata:{publicMethods:["initialize","getURL","register","getRoute"]}});function C(t,e){return e&&e.indexOf(t)>-1}function R(t,e){var i=e.getPattern(),s=t&&t.getManifestEntry("/sap.app/title");if(i===""||i!==undefined&&!/({.*})+/.test(i)){return{hash:i,isHome:true,title:s}}else{f.errorThrows("Routes with dynamic parts cannot be resolved as home route.")}}p.M_EVENTS={BEFORE_ROUTE_MATCHED:"beforeRouteMatched",ROUTE_MATCHED:"routeMatched",ROUTE_PATTERN_MATCHED:"routePatternMatched",VIEW_CREATED:"viewCreated",BYPASSED:"bypassed",TITLE_CHANGED:"titleChanged"};p._interceptRouteMatched=undefined;p.getRouter=function(t){return l[t]};return p});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/routing/RouterHashChanger", ["./HashChangerBase"],function(e){"use strict";var t=e.extend("sap.ui.core.routing.RouterHashChanger",{constructor:function(t){if(!t||!t.parent){throw new Error("sap.ui.core.routing.RouterHashChanger can't be instantiated without a parent")}this.parent=t.parent;this.hash=t.hash||"";this.subHashMap=t.subHashMap;this.key=t.key||"";e.apply(this)}});t.InvalidHash="SapUiCoreRoutingInvalidHash"+(new Date).getTime();t.prototype.init=function(){this.parent.init()};t.prototype._generatePrefixedKey=function(e){return this.key?this.key+"-"+e:e};t.prototype.createSubHashChanger=function(e){this.children=this.children||{};var i=this._generatePrefixedKey(e);if(this.children[i]){return this.children[i]}var h=new t({key:i,parent:this,subHashMap:this.subHashMap,hash:this.subHashMap&&this.subHashMap[i]||""});h.attachEvent("hashSet",this._onChildHashChanged.bind(this,i));h.attachEvent("hashReplaced",this._onChildHashChanged.bind(this,i));this.children[i]=h;return h};t.prototype.fireHashChanged=function(e,t,i){var h,s=this.hash;this.hash=e;this.subHashMap=t;if(!i&&e!==s){this.fireEvent("hashChanged",{newHash:e,oldHash:s})}if(this.children){h=Object.keys(this.children);h.forEach(function(e){var h=t[e]===undefined?"":t[e];this.children[e].fireHashChanged(h,t,i)}.bind(this))}};t.prototype._onChildHashChanged=function(e,t){var i=t.getParameter("key")||e,h=t.getParameter("hash"),s=t.getParameter("nestedHashInfo"),n=t.getParameter("deletePrefix");if(this._bCollectMode){this._collectHash(i,h,n)}else{this.fireEvent(t.getId(),{hash:h,key:i,nestedHashInfo:s,deletePrefix:n})}};t.prototype._collectHash=function(e,t,i){this._aCollectedHashInfo=this._aCollectedHashInfo||[];this._aCollectedHashInfo.push({key:e,hash:t,deletePrefix:i})};t.prototype._hasRouterAttached=function(){return this.hasListeners("hashChanged")};t.prototype._collectActiveDescendantPrefix=function(){if(this.children){var e=Object.keys(this.children);return e.reduce(function(e,t){var i=this.children[t];if(i._hasRouterAttached()){e.push(t);Array.prototype.push.apply(e,i._collectActiveDescendantPrefix())}return e}.bind(this),[])}else{return[]}};t.prototype.getHash=function(){if(this._isUnderCollectMode()){return t.InvalidHash}else{return this.hash}};t.prototype._setActiveRouter=function(e){if(e.getHashChanger()===this){this._oActiveRouter=e}return this};t.prototype.resetHash=function(e){if(e&&this._oActiveRouter===e){this.hash=undefined}return this};t.prototype.setHash=function(e,t,i){if(!(t instanceof Promise)){i=t;t=null}return this._modifyHash(e,t,i)};t.prototype.replaceHash=function(e,t,i,h){if(typeof t!=="string"){h=i;i=t;t=undefined}if(!(i instanceof Promise)){h=i;i=null}return this._modifyHash(e,i,h,true,t)};t.prototype._modifyHash=function(e,t,i,h,s){var n=h?"hashReplaced":"hashSet",r=this,a={hash:e};if(h&&s){a.direction=s}if(!i){a.deletePrefix=this._collectActiveDescendantPrefix()}if(t){this._bCollectMode=true;return t.then(function(){a.nestedHashInfo=r._aCollectedHashInfo;r.fireEvent(n,a);r._aCollectedHashInfo=null;r._bCollectMode=false})}else{this.fireEvent(n,a)}};t.prototype._isUnderCollectMode=function(){return this.parent instanceof t&&this.parent._isInCollectMode()};t.prototype._isInCollectMode=function(){return this._bCollectMode||this.parent instanceof t&&this.parent._isInCollectMode()};t.prototype.destroy=function(){this.parent.deregisterRouterHashChanger(this);if(this.children){Object.keys(this.children).forEach(function(e){var t=this.children[e];t.destroy()}.bind(this));delete this.children}delete this.hash;delete this.subHashMap;delete this.parent;delete this.key;e.prototype.destroy.apply(this,arguments)};t.prototype.deregisterRouterHashChanger=function(e){if(this.children){Object.keys(this.children).some(function(t){var i=this.children[t];if(i===e){delete this.children[t];return true}}.bind(this))}};return t});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/routing/Target", ["sap/ui/core/Element","sap/ui/base/EventProvider","sap/ui/core/mvc/View","sap/ui/core/routing/async/Target","sap/ui/core/routing/sync/Target","sap/base/Log"],function(t,e,i,n,r,s){"use strict";var o=t.extend("sap.ui.core.routing.Target.TitleProvider",{metadata:{library:"sap.ui.core",properties:{title:{type:"string",group:"Data",defaultValue:null}}},constructor:function(e){this._oTarget=e.target;delete e.target;t.prototype.constructor.call(this,e)},setTitle:function(t){this.setProperty("title",t,true);if(this._oTarget._bIsDisplayed&&t){this._oTarget.fireTitleChanged({name:this._oTarget._oOptions._name,title:t})}}});var a=e.extend("sap.ui.core.routing.Target",{constructor:function(t,i){var a;function h(){if(new URLSearchParams(window.location.search).get("sap-ui-xx-asyncRouting")==="true"){s.warning("Activation of async view loading in routing via url parameter is only temporarily supported and may be removed soon","Target");return true}return false}if(t._async===undefined){t._async=h()}if(t.type==="Component"&&!t._async){a="sap.ui.core.routing.Target doesn't support loading component in synchronous mode, please switch routing to async";s.error(a);throw new Error(a)}this._updateOptions(t);this._oCache=i;e.apply(this,arguments);if(this._oOptions.title){this._oTitleProvider=new o({target:this})}var l=this._oOptions._async?n:r;for(var d in l){this[d]=l[d]}this._bIsDisplayed=false;this._bIsLoaded=false},destroy:function(){this._oParent=null;this._oOptions=null;this._oCache=null;if(this._oTitleProvider){this._oTitleProvider.destroy()}this._oTitleProvider=null;e.prototype.destroy.apply(this,arguments);this.bIsDestroyed=true;return this},attachDisplay:function(t,e,i){return this.attachEvent(this.M_EVENTS.DISPLAY,t,e,i)},detachDisplay:function(t,e){return this.detachEvent(this.M_EVENTS.DISPLAY,t,e)},fireDisplay:function(t){var e=this._oTitleProvider&&this._oTitleProvider.getTitle();if(e){this.fireTitleChanged({name:this._oOptions._name,title:e})}this._bIsDisplayed=true;t=t||{};t.config=this._oRawOptions;return this.fireEvent(this.M_EVENTS.DISPLAY,t)},attachTitleChanged:function(t,e,i){var n=this.hasListeners("titleChanged"),r=this._oTitleProvider&&this._oTitleProvider.getTitle();this.attachEvent(this.M_EVENTS.TITLE_CHANGED,t,e,i);if(!n&&r&&this._bIsDisplayed){this.fireTitleChanged({name:this._oOptions._name,title:r})}return this},detachTitleChanged:function(t,e){return this.detachEvent(this.M_EVENTS.TITLE_CHANGED,t,e)},fireTitleChanged:function(t){return this.fireEvent(this.M_EVENTS.TITLE_CHANGED,t)},_getEffectiveObjectName:function(t){var e=this._oOptions.path;if(e&&t&&!t.startsWith("module:")){t=e+"."+t}return t},_updateOptions:function(t){var e=Object.assign({},t);if(e.viewName){if(e.name){e._name=e.name}e.type="View";e.name=e.viewName;if(e._async){delete e.viewName}if(e.viewPath){e.path=e.viewPath;if(e._async){delete e.viewPath}}if(e.viewId){e.id=e.viewId;if(e._async){delete e.viewId}}}else if(!e._async&&e.type){s.error("Sync Target '"+e._name+"' uses the new options which are only supported by async Target.")}this._oOptions=e;this._oRawOptions=t},_bindTitleInTitleProvider:function(t){if(this._oTitleProvider&&t instanceof i){this._oTitleProvider.applySettings({title:this._oOptions.title},t.getController())}},_addTitleProviderAsDependent:function(t){if(!this._oTitleProvider){return}var e=this._oTitleProvider.getParent();if(e){e.removeDependent(this._oTitleProvider)}if(t instanceof i){t.addDependent(this._oTitleProvider)}},_beforePlacingViewIntoContainer:function(t){},M_EVENTS:{DISPLAY:"display",TITLE_CHANGED:"titleChanged"}});return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/routing/TargetCache", ["sap/ui/base/EventProvider","sap/ui/core/routing/async/TargetCache","sap/ui/core/routing/sync/TargetCache","sap/base/assert","sap/base/Log"],function(e,t,n,o,r){"use strict";var i=e.extend("sap.ui.core.routing.TargetCache",{constructor:function(r){if(!r){r={}}this._oCache={view:{},component:{}};this._oComponent=r.component;if(this._oComponent){o(this._oComponent.isA("sap.ui.core.UIComponent"),this+" - the component passed to the constructor needs to be an instance of UIComponent")}e.apply(this,arguments);this.async=r.async;if(this.async===undefined){this.async=true}var i=this.async?t:n;for(var s in i){this[s]=i[s]}},metadata:{publicMethods:["get","set"]},get:function(e,t){var n;try{if(t==="Component"&&!this.async){r.error("sap.ui.core.routing.Target doesn't support loading component in synchronous mode, please switch routing to async");throw new Error("sap.ui.core.routing.Target doesn't support loading component in synchronous mode, please switch routing to async")}if(!e){r.error("the oOptions parameter of getObject is mandatory",this);throw new Error("the oOptions parameter of getObject is mandatory")}n=this._get(e,t)}catch(e){return Promise.reject(e)}if(n instanceof Promise){return n}else if(n.isA("sap.ui.core.mvc.View")){return n.loaded()}else{return Promise.resolve(n)}},fetch:function(e,t){return this._get(e,t,undefined,undefined,true)},set:function(e,t,n){var r;this._checkName(e,t);o(t==="View"||t==="Component","sType must be either 'View' or 'Component'");r=this._oCache[t.toLowerCase()][e];if(!r){r=this._oCache[t.toLowerCase()][e]={}}r[undefined]=n;return this},destroy:function(){e.prototype.destroy.apply(this);if(this.bIsDestroyed){return this}function t(e){if(e&&e.destroy&&!e._bIsBeingDestroyed){e.destroy()}}Object.keys(this._oCache).forEach(function(e){var n=this._oCache[e];Object.keys(n).forEach(function(e){var o=n[e];Object.keys(o).forEach(function(e){var n=o[e];if(n instanceof Promise){n.then(t)}else{t(n)}})})}.bind(this));this._oCache=undefined;this.bIsDestroyed=true;return this},attachCreated:function(e,t,n){return this.attachEvent("created",e,t,n)},detachCreated:function(e,t){return this.detachEvent("created",e,t)},fireCreated:function(e){return this.fireEvent("created",e)},_get:function(e,t,n,o,r){var i;switch(t){case"View":i=this._getView(e,n,r);break;case"Component":i=this._getComponent(e,n,o,r);break;default:throw Error("The given sType: "+t+" isn't supported by TargetCache.getObject")}return i},_getView:function(e,t,n){if(!t){e=this._createId(e)}return this._getViewWithGlobalId(e,false,n)},_getComponent:function(e,t,n,o){if(!t){e=this._createId(e)}return this._getComponentWithGlobalId(e,n,o)},_createId:function(e){if(this._oComponent&&e.id){e=Object.assign({},e,{id:this._oComponent.createId(e.id)})}return e},_checkName:function(e,t){if(!e){var n="A name for the "+t.toLowerCase()+" has to be defined";r.error(n,this);throw Error(n)}}});return i});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/routing/Targets", ["sap/ui/base/EventProvider","./Target","./async/Targets","./sync/Targets","sap/base/future","sap/base/Log","sap/base/util/deepExtend"],function(t,e,i,a,r,n,s){"use strict";var o=t.extend("sap.ui.core.routing.Targets",{constructor:function(e){t.apply(this);this._mTargets={};this._oLastTitleTarget={};this._oConfig=e.config;this._oCache=e.cache||e.views;if(!this._oConfig){this._oConfig={_async:false}}function r(){if(new URLSearchParams(window.location.search).get("sap-ui-xx-asyncRouting")==="true"){n.warning("Activation of async view loading in routing via url parameter is only temporarily supported and may be removed soon","Targets");return true}return false}if(this._oConfig._async===undefined){this._oConfig._async=this._oConfig.async===undefined?r():this._oConfig.async}var s=this._oConfig._async?i:a;for(var o in s){this[o]=s[o]}Object.keys(e.targets).forEach(function(t){this._createTarget(t,e.targets[t])}.bind(this));Object.keys(this._mTargets).forEach(function(t){this._addParentTo(this._mTargets[t])}.bind(this))},_setRouter:function(t){if(!this._oRouter){this._oRouter=t}else{n.warning("The Targets is already connected with a router and this call of _setRouter is ignored")}return this},destroy:function(){var e;t.prototype.destroy.apply(this);for(e in this._mTargets){if(this._mTargets.hasOwnProperty(e)){this._mTargets[e].destroy()}}this._mTargets=null;this._oCache=null;this._oConfig=null;this.bIsDestroyed=true;return this},getViews:function(){return this._oCache},getCache:function(){return this._oCache},getTarget:function(t,e){var i=this,a=this._alignTargetsInfo(t),r;r=a.reduce(function(t,a){var r=i._mTargets[a.name];if(r){t.push(r)}else if(!e){n.error('The target you tried to get "'+a.name+'" does not exist!',i)}return t},[]);return r.length<=1?r[0]:r},addTarget:function(t,e){var i=this.getTarget(t,true),a;if(i){r.errorThrows(`${this}: Target with name "${t}" already exists`)}else{a=this._createTarget(t,e);this._addParentTo(a)}return this},suspend:function(t){var e=this._alignTargetsInfo(t);e.forEach(function(t){var e=t.name;var i=this.getTarget(e);if(i){i.suspend()}}.bind(this));return this},resume:function(t){var e=this._alignTargetsInfo(t);e.forEach(function(t){var e=t.name;var i=this.getTarget(e);if(i){i.resume()}}.bind(this));return this},attachDisplay:function(t,e,i){return this.attachEvent(this.M_EVENTS.DISPLAY,t,e,i)},detachDisplay:function(t,e){return this.detachEvent(this.M_EVENTS.DISPLAY,t,e)},fireDisplay:function(t){return this.fireEvent(this.M_EVENTS.DISPLAY,t)},attachTitleChanged:function(t,e,i){this.attachEvent(this.M_EVENTS.TITLE_CHANGED,t,e,i);return this},detachTitleChanged:function(t,e){return this.detachEvent(this.M_EVENTS.TITLE_CHANGED,t,e)},fireTitleChanged:function(t){if(this._oLastTitleTarget.name!==t.name||this._oLastTitleTarget.title!==t.title){this._oLastTitleTarget.name=t.name;this._oLastTitleTarget.title=t.title;this.fireEvent(this.M_EVENTS.TITLE_CHANGED,t)}return this},M_EVENTS:{DISPLAY:"display",TITLE_CHANGED:"titleChanged"},_alignTargetsInfo:function(t){if(t===undefined){return[]}if(!Array.isArray(t)){return typeof t==="object"?[t]:[{name:t}]}return t.map(function(t){if(typeof t!=="object"){t={name:t}}return t})},_createTarget:function(t,e){var i,a,r={_name:t};if(this._vRootViewId){r.rootView=this._vRootViewId}a=s(r,this._oConfig,e);i=this._constructTarget(a);i.attachDisplay(function(e){var i=e.getParameters();this.fireDisplay({name:t,view:i.view,object:i.object,control:i.control,config:i.config,data:i.data,routeRelevant:i.routeRelevant})},this);this._mTargets[t]=i;return i},_addParentTo:function(t){var e,i=t._oOptions.parent;if(!i){return}e=this._mTargets[i];if(!e){r.errorThrows(`${this}: The target "${t._oOptions._name}" has a parent "${i}" defined, but it was not found in the other targets`);return}t._oParent=e},_constructTarget:function(t,i){return new e(t,this._oCache,i)},_setRootViewId:function(t){var e,i;for(e in this._mTargets){if(this._mTargets.hasOwnProperty(e)){i=this._mTargets[e]._oOptions;if(i.rootView===undefined){i.rootView=t}}}this._vRootViewId=t},_getTitleTargetName:function(t,e){var i,a;if(e){t=[e]}t=this._alignTargetsInfo(t);t.some(function(t){i=this.getTarget(t);while(i&&!i._oOptions.title){i=i._oParent}if(i){a=i._oOptions._name;return true}}.bind(this));return a},_forwardTitleChanged:function(t){this.fireTitleChanged({name:t.getParameter("name"),title:t.getParameter("title")})},_attachTitleChanged:function(t,e){var i,a;a=this._getTitleTargetName(t,e);if(a){i=this.getTarget(a)}if(this._oLastDisplayedTitleTarget){this._oLastDisplayedTitleTarget.detachTitleChanged(this._forwardTitleChanged,this);this._oLastDisplayedTitleTarget._bIsDisplayed=false}if(i){i.attachTitleChanged({name:i._oOptions._name},this._forwardTitleChanged,this);this._oLastDisplayedTitleTarget=i}else if(e){r.errorThrows(`${this}: The target with the name "${e}" where the titleChanged event should be fired does not exist!`)}}});return o});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/routing/Views", ["./TargetCache","sap/base/Log"],function(e,t){"use strict";var i=e.extend("sap.ui.core.routing.Views",{metadata:{publicMethods:["getView","setView"]},constructor:function(i){if(!i){i={}}function n(){if(new URLSearchParams(window.location.search).get("sap-ui-xx-asyncRouting")==="true"){t.warning("Activation of async view loading in routing via url parameter is only temporarily supported and may be removed soon","TargetCache");return true}return false}if(i.async===undefined){i.async=n()}e.apply(this,[i])},getView:function(e){return this.get(e,"View")},setView:function(e,t){return this.set(e,"View",t)},fireCreated:function(e){if(e){e.view=e.object;e.viewOptions=e.options}return this.fireEvent("created",e)}});return i});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/routing/async/Route", ["sap/base/Log","sap/base/util/extend","sap/ui/core/Component"],function(e,t,i){"use strict";return{_routeMatched:function(o,a,r){var n=this._oRouter,s,h,g,u,_=null,f=null,l,c,d,p,T=n._oMatchedRoute===this;n._sRouteInProgress=null;n._stopWaitingTitleChangedFromChild();if(n._oMatchedRoute){delete n._oMatchedRoute._oConfig.dynamicTarget}n._oMatchedRoute=this;n._bMatchingProcessStarted=true;g=t({},n._oConfig,this._oConfig);h=n.getTargets();var C;if(h){C=h._getTitleTargetName(g.target,g.titleTarget);if(C&&n._oPreviousTitleChangedRoute!==this){n._bFireTitleChanged=true;if(n._oOwner&&n._oOwner._bRoutingPropagateTitle){var R=i.getOwnerComponentFor(n._oOwner);var v=R&&R.getRouter();if(v){v._waitForTitleChangedOn(n)}}}else{n._bFireTitleChanged=false}if(this._oConfig.target){p=h._alignTargetsInfo(this._oConfig.target);p.forEach(function(e){e.propagateTitle=e.hasOwnProperty("propagateTitle")?e.propagateTitle:n._oConfig.propagateTitle;e.routeRelevant=true;e.repeatedRoute=T})}}else{p=this._oConfig.target}if(!a||a===true){l=true;a=Promise.resolve()}if(this._oParent){a=this._oParent._routeMatched(o,a)}else if(this._oNestingParent){this._oNestingParent._routeMatched(o,a,this)}c=Object.assign({},o);c.routeConfig=g;u={name:g.name,arguments:o,config:g};if(r){u.nestedRoute=r}this.fireBeforeMatched(u);n.fireBeforeRouteMatched(u);if(this._oTarget){s=this._oTarget;s._updateOptions(this._convertToTargetOptions(g));a=s._place(a,{legacy:true});if(this._oRouter._oTargetHandler&&this._oRouter._oTargetHandler._chainNavigation){d=a;a=this._oRouter._oTargetHandler._chainNavigation(function(){return d})}}else{a=n._oTargets._display(p,c,this._oConfig.titleTarget,a)}return a.then(function(t){n._bMatchingProcessStarted=false;var i,a,r;if(Array.isArray(t)){i=t;t=i[0]}t=t||{};_=t.view;f=t.control;u.view=_;u.targetControl=f;if(i){a=[];r=[];i.forEach(function(e){a.push(e.view);r.push(e.control)});u.views=a;u.targetControls=r}if(g.callback){g.callback(this,o,g,f,_)}this.fireEvent("matched",u);n.fireRouteMatched(u);if(l){e.info("The route named '"+g.name+"' did match with its pattern",this);this.fireEvent("patternMatched",u);n.fireRoutePatternMatched(u)}return t}.bind(this))}}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/routing/async/Target", ["sap/base/future","sap/base/Log","sap/ui/base/ManagedObjectMetadata","sap/ui/core/ComponentContainer","sap/ui/core/Element","sap/ui/core/Placeholder","sap/ui/core/library"],function(e,t,o,n,i,r,a){"use strict";var s=a.ComponentLifecycle;return{display:function(e){var t=Promise.resolve();return this._display(e,t)},_display:function(e,t,o){if(this._oParent){t=this._oParent._display(e,t,Object.assign({},o))}return this._place(e,t,o)},suspend:function(){if(this._oParent){this._oParent.suspend()}if(this._isLoaded()){var e=this._get(),o;if(e.isA("sap.ui.core.UIComponent")&&(o=e.getRouter())&&e.hasNativeRouter()){o.stop()}}else{t.warning("The target with name '"+this._oOptions._name+"' can't be suspended because it's being loaded or not loaded yet")}return this},resume:function(){if(this._oParent){this._oParent.resume()}if(this._isLoaded()){var e=this._get(),t;if(e.isA("sap.ui.core.UIComponent")&&(t=e.getRouter())&&e.hasNativeRouter()){t.initialize(true)}}return this},_isLoaded:function(){return this._bIsLoaded},_getCreateOptions:function(){var e=this._getEffectiveObjectName(this._oOptions.name),t=this._oOptions,n;switch(t.type){case"View":n={name:e,id:t.id,async:true};if(!e.startsWith("module:")){n.type=t.viewType}break;case"Component":t.id=t.id||o.uid("uicomponent");n={id:t.id};if(t.usage){n.usage=t.usage}else{n.name=e}n=Object.assign({},t.options||{},n);break;default:throw new Error("The given type "+t.type+" isn't support by sap.ui.core.routing.Target")}return n},_get:function(e){var t=this._getCreateOptions();return this._oCache._get(t,this._oOptions.type,this._bUseRawViewId,e)},_load:function(e){var t=this._get(e),o;if(!(t instanceof Promise)){if(t.isA("sap.ui.core.mvc.View")){o=t.loaded()}else{o=Promise.resolve(t)}}else{o=t}return o.then(function(e){this._bIsLoaded=true;return e}.bind(this))},load:function(e){return this._load(e).then(function(t){return{object:t,nestedComponentReady:this.waitForComponentTarget({target:t,createInfo:e})}}.bind(this))},waitForComponentTarget:function(e){return new Promise(function(t,o){var n=e.target;var i=e.createInfo;var r=true;if(n.isA("sap.ui.core.UIComponent")){var a=n.getRouter();if(a&&n.hasNativeRouter()){var s=a.getHashChanger().getHash();var l=a.getRouteByHash(s);var c=i&&i.ignoreInitialHash;if(!a._oConfig.async){throw new Error("The router of component '"+n.getId()+"' which is loaded via the target '"+this._oOptions._name+"' is defined as synchronous which is not supported using as a nested component.")}if(a._oOwner&&i){a._oOwner._bRoutingPropagateTitle=i.propagateTitle}if(!c&&(!a.isInitialized()||a._bMatchingProcessStarted)&&l&&l._oConfig.target){r=false;a.attachRouteMatched(t)}if(a.isStopped()){a.initialize(c)}}}if(r){t()}}.bind(this))},resolveContainerControl:function(e){return Promise.resolve().then(function(){e=e||{};var t=this._oOptions;var o=this._isValid(e);var n;if(o!==true){n=o;return this._refuseInvalidTarget(t._name,n)}var r=e.view,a=e.control,s,l;if(r&&r.isA("sap.ui.core.ComponentContainer")){r=r.getComponentInstance().getRootControl()}if(!r&&t.rootView){s=Promise.resolve(t.rootView).then(function(e){var o;if(e){o=i.getElementById(e);t.rootView=e}if(!o){n="Did not find the root view with the id "+t.rootView;return this._refuseInvalidTarget(t._name,n)}else{return o}}.bind(this))}else{s=Promise.resolve(r)}s=s.then(function(e){if(e&&e.isA("sap.ui.core.mvc.View")){return e.loaded()}else{return e}});if(t.controlId){l=s.then(function(e){var o;if(e){o=e.byId(t.controlId)}if(!o){o=i.getElementById(t.controlId)}return o})}else{l=Promise.resolve(a)}return l.then(function(e){if(!e){n="Control with ID "+t.controlId+" could not be found";return this._refuseInvalidTarget(t._name,n)}else{return e}}.bind(this))}.bind(this))},displayPlaceholder:function(e,t){var o,a=this._oOptions,l=a.type==="Component",c=false,d=e.placeholder||a.placeholder||{},h=Promise.resolve();if(r.hasProviders()){Object.assign(d,r.getPlaceholderFromProviders({name:a.name,type:a.type}))}if(Object.keys(d).length>0){if(d.autoClose===undefined){d.autoClose=true}c=true}if(l){var u=this._oCache._oComponent;var f=a.id+"-container";o=u&&u.byId(f)||i.getElementById(f);if(!o){var p=Object.assign({height:"100%",width:"100%",lifecycle:s.Application},a.containerOptions);if(u){u.runAsOwner(function(){o=new n(u.createId(f),p)})}else{o=new n(f,p)}}if(c){d.container=o}}if(c&&t.isA("sap.ui.core.IPlaceholderSupport")){d.container=t}if(d.container&&!e.repeatedRoute){d.aggregation=this._oOptions.controlAggregation;var g=this._getCreateOptions();var v=this._oCache.fetch(g,this._oOptions.type);if(v&&l){d.object=o}else{d.object=v}if(d.html){d.placeholder=new r({html:d.html})}if(d.placeholder&&r.isEnabled()){h=this.showPlaceholder(d)}}return h.then(function(e){return{containerControl:t,object:o,placeholderConfig:d,placeholderShown:!!e}})},_place:function(e,o,n){var i=this._oOptions,r=this,a,s=i.type==="Component";var l,c;if(e instanceof Promise){n=o;o=e;e=undefined}n=n||{};if((i.name||i.usage)&&i.type){l=this.load(n);if(this._oParent||n.legacy){c=o.then(this.resolveContainerControl.bind(this))}else{c=this.resolveContainerControl()}c=c.then(this.displayPlaceholder.bind(this,n));o=Promise.all([l,c,o]).then(function(e){var t=e[0].object,o=e[1],n,i;o.nestedComponentReady=e[0].nestedComponentReady;if(s){var a=t.destroy;t.destroy=function(){if(a){a.apply(this)}o.object.destroy()};o.object.setComponent(t);i=t.getRootControl();if(i&&i.isA("sap.ui.core.mvc.View")){n=i}}else{o.object=t;n=t}r._bindTitleInTitleProvider(n);r._addTitleProviderAsDependent(n);return o}).then(function(o){var n=o.containerControl,s=o.object;r._beforePlacingViewIntoContainer({container:n,view:s,data:e});var l=n.getMetadata().getJSONKeys()[i.controlAggregation];if(!l){a="Control "+i.controlId+" does not have an aggregation called "+i.controlAggregation;return r._refuseInvalidTarget(i._name,a)}if(i.clearControlAggregation===true){n[l._sRemoveAllMutator]()}t.info("Did place the "+i.type.toLowerCase()+" target '"+(i.name?r._getEffectiveObjectName(i.name):i.usage)+"' with the id '"+s.getId()+"' into the aggregation '"+i.controlAggregation+"' of a control with the id '"+n.getId()+"'",r);n[l._sMutator](s);return{name:i._name,view:s,control:n,nestedComponentReady:o.nestedComponentReady,placeholderConfig:o.placeholderConfig,placeholderShown:o.placeholderShown}})}else{o=o.then(function(){return{name:i._name}})}return o.then(function(t){var o=t.nestedComponentReady||Promise.resolve();return o.then(function(){var o=t.control,i=t.view,a=t.placeholderConfig;if(o&&i){r.fireDisplay({view:i.isA("sap.ui.core.mvc.View")?i:undefined,object:i,control:o,data:e,routeRelevant:n.routeRelevant})}if(a&&a.container&&a.autoClose&&r.hidePlaceholder){r.hidePlaceholder(a)}return t})})},showPlaceholder:function(e){if(e.container&&e.container.showPlaceholder){return e.container.showPlaceholder(e)}else{return Promise.resolve()}},hidePlaceholder:function(e){if(e.container.hidePlaceholder){e.container.hidePlaceholder()}},_isValid:function(t){var o=this._oOptions,n=t&&t.control,i=n||o.controlId,r=true,a="";if(!i){a="The target "+o._name+" has no controlId set and no parent so the target cannot be displayed.";r=false}if(!o.controlAggregation){a="The target "+o._name+" has a control id or a parent but no 'controlAggregation' was set, so the target could not be displayed.";r=false}if(a){e.errorThrows(`${this}: ${a}`)}return r||a},_refuseInvalidTarget:function(e,t){return Promise.reject(new Error(t+" - Target: "+e))}}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/routing/async/TargetCache", ["sap/ui/core/mvc/View","sap/ui/core/Component","sap/ui/core/routing/HashChanger"],function(e,t,n){"use strict";return{_getObjectWithGlobalId:function(n,i,r,a,o){var s=this,u,c,h,f=this._oComponent,d=[];r=r||{};function g(){const o=!n.async||a;switch(i){case"View":n.viewName=n.name;delete n.name;if(o){return e._create(n)}else{return e.create(n)}case"Component":n.settings=n.settings||{};n.settings._propagateTitle=r.propagateTitle;var u=s._createRouterHashChanger(r.prefix);if(u){n.settings._routerHashChanger=u}if(n.usage){return f.createComponent(n)}else{return t.create(n)}default:}}function C(e){if(s._oCache){d.forEach(function(t){h[t]=e});if(r.afterCreate){r.afterCreate(e)}s.fireCreated({object:e,type:i,options:n})}return e}if(n.async===undefined){n.async=true}c=n.usage||n.name;this._checkName(c,i);h=this._oCache[i.toLowerCase()][c];u=h&&h[n.id];if(o||u){return u}if(f){u=f.runAsOwner(g);if(u instanceof Promise){f.registerForDestroy(u)}}else{u=g()}if(u instanceof Promise){u=u.then(C)}else{u.loaded().then(C)}if(!h){h=this._oCache[i.toLowerCase()][c]={};h[undefined]=u;d.push(undefined)}if(n.id!==undefined){h[n.id]=u;d.push(n.id)}return u},_getViewWithGlobalId:function(e,t,n){if(e&&!e.name){e.name=e.viewName}return this._getObjectWithGlobalId(e,"View",undefined,t,n)},_getComponentWithGlobalId:function(e,t,n){return this._getObjectWithGlobalId(e,"Component",t,n)},_createRouterHashChanger:function(e){var t;var i=this._oComponent&&this._oComponent.getRouter();if(i){t=i.getHashChanger();if(t&&e){t=t.createSubHashChanger(e)}}return t||n.getInstance().createRouterHashChanger()}}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/routing/async/Targets", ["sap/base/future"],function(e){"use strict";return{display:function(e,t,r){var a=Promise.resolve();return this._display(e,t,r,a)},_display:function(e,t,r,a){var i=this,n=[];if(!Array.isArray(e)){e=[e]}this._attachTitleChanged(e,r);return this._alignTargetsInfo(e).reduce(function(e,r){var a={prefix:r.prefix,propagateTitle:r.propagateTitle||false,ignoreInitialHash:r.ignoreInitialHash,placeholder:r.placeholder,repeatedRoute:r.repeatedRoute,routeRelevant:r.routeRelevant||false};return i._displaySingleTarget(r,t,e,a).then(function(e){e=e||{};e.targetInfo=r;n.push(e)})},a).then(function(){return n})},_addDynamicTargetToRoute:function(e){if(this._oRouter){var t=this._oRouter._getLastMatchedRouteName();var r,a;if(t){r=this._oRouter.getRoute(t);if(r&&r._oConfig&&r._oConfig.target){a=this._alignTargetsInfo(r._oConfig.target).some(function(t){return t.name===e.name});if(!a){r._oConfig.dynamicTarget=r._oConfig.dynamicTarget||[];r._oConfig.dynamicTarget.push(e)}}}}},_displaySingleTarget:function(t,r,a,i){var n=t.name,o=this.getTarget(n);if(o!==undefined){if(t.routeRelevant){this._addDynamicTargetToRoute(t)}return o._display(r,a,i)}else{var s=`${this}: The target with the name "${n}" does not exist!`;e.errorThrows(s);return Promise.resolve({name:n,error:s})}}}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/routing/sync/Route", ["sap/base/Log","sap/base/util/extend"],function(t,e){"use strict";return{_routeMatched:function(i,a,r){var o=this._oRouter,s,n,h,f,g,c=null,u=null,_,l,d,p,C;o._sRouteInProgress=null;o._oMatchedRoute=this;o._bMatchingProcessStarted=true;if(this._oParent){s=this._oParent._routeMatched(i)}else if(this._oNestingParent){this._oNestingParent._routeMatched(i,false,this)}f=e({},o._oConfig,this._oConfig);_=Object.assign({},i);_.routeConfig=f;g={name:f.name,arguments:i,config:f};if(r){g.nestedRoute=r}this.fireBeforeMatched(g);o.fireBeforeRouteMatched(g);if(this._oTarget){h=this._oTarget;h._updateOptions(this._convertToTargetOptions(f));if(h._isValid(s,false)){n=h._place(s)}n=n||{};c=n.oTargetParent;u=n.oTargetControl;g.view=c;g.targetControl=u}else{d=[];p=[];l=function(t){d.push(t.getParameter("view"));p.push(t.getParameter("control"))};if(Array.isArray(this._oConfig.target)){C=this._oConfig.target}else{C=[this._oConfig.target]}C.forEach(function(t){var e=o._oTargets.getTarget(t);if(e){e.attachEventOnce("display",l)}});o._oTargets._display(this._oConfig.target,_,this._oConfig.titleTarget);g.view=d[0];g.targetControl=p[0];g.views=d;g.targetControls=p}o._bMatchingProcessStarted=false;if(f.callback){f.callback(this,i,f,u,c)}this.fireEvent("matched",g);o.fireRouteMatched(g);if(a){t.info("The route named '"+f.name+"' did match with its pattern",this);this.fireEvent("patternMatched",g);o.fireRoutePatternMatched(g)}return n}}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/routing/sync/Target", ["sap/base/Log","sap/ui/core/Element"],function(t,e){"use strict";return{display:function(t){var e;if(this._oParent){e=this._oParent.display(t)}return this._place(e,t)},suspend:function(){return this},resume:function(){return this},_place:function(o,i){var r=this._oOptions;o=o||{};var n,a=o.oTargetControl,d=o.oTargetParent;if(!this._isValid(o,true)){return undefined}if(!d&&r.rootView){d=e.getElementById(r.rootView);if(!d){t.error("Did not find the root view with the id "+r.rootView,this);return undefined}}if(r.controlId){if(d){a=d.byId(r.controlId)}if(!a){a=e.getElementById(r.controlId)}if(!a){t.error("Control with ID "+r.controlId+" could not be found",this);return undefined}}var s=a.getMetadata().getJSONKeys()[r.controlAggregation];if(!s){t.error("Control "+r.controlId+" does not have an aggregation called "+r.controlAggregation,this);return undefined}var l=this._getEffectiveObjectName(r.viewName);var g={name:l,id:r.viewId};if(!l.startsWith("module:")){g.type=r.viewType}n=this._oCache._get(g,"View",this._bUseRawViewId);this._beforePlacingViewIntoContainer({container:a,view:n,data:i});this._bindTitleInTitleProvider(n);this._addTitleProviderAsDependent(n);if(r.clearControlAggregation===true){a[s._sRemoveAllMutator]()}t.info("Did place the view '"+l+"' with the id '"+n.getId()+"' into the aggregation '"+r.controlAggregation+"' of a control with the id '"+a.getId()+"'",this);a[s._sMutator](n);this.fireDisplay({view:n,control:a,data:i});return{oTargetParent:n,oTargetControl:a}},_isValid:function(e,o){var i=this._oOptions,r=e&&e.oTargetControl,n=r||i.controlId,a=true,d="";if(!n){d="The target "+i._name+" has no controlId set and no parent so the target cannot be displayed.";a=false}if(!i.controlAggregation){d="The target "+i._name+" has a control id or a parent but no 'controlAggregation' was set, so the target could not be displayed.";a=false}if(!i.viewName){d="The target "+i._name+" no viewName defined.";a=false}if(o&&d){t.error(d,this)}return a}}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/routing/sync/TargetCache", ["sap/ui/core/mvc/View"],function(e){"use strict";return{_getObjectWithGlobalId:function(i){function t(){i.viewName=i.name;delete i.name;return e._create(i)}var n,o=i.name,a;this._checkName(o,"View");a=this._oCache.view[o];n=a&&a[i.id];if(n){return n}if(this._oComponent){n=this._oComponent.runAsOwner(t)}else{n=t()}a=this._oCache.view[o];if(!a){a=this._oCache.view[o]={};a[undefined]=n}if(i.id!==undefined){a[i.id]=n}this.fireCreated({object:n,type:"View",options:i});return n},_getViewWithGlobalId:function(e){if(e&&!e.name){e.name=e.viewName}return this._getObjectWithGlobalId(e)}}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/routing/sync/Targets", ["sap/base/Log"],function(i){"use strict";return{display:function(i,t,e){this._display(i,t,e)},_display:function(i,t,e){var a=this;this._attachTitleChanged(i,e);if(Array.isArray(i)){i.forEach(function(i){a._displaySingleTarget(i,t)})}else{this._displaySingleTarget(i,t)}return this},_displaySingleTarget:function(t,e){var a=this.getTarget(t);if(a!==undefined){a.display(e)}else{i.error('The target with the name "'+t+'" does not exist!',this)}}}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/search/OpenSearchProvider", ["./SearchProvider","sap/base/Log","sap/base/security/encodeURL","sap/base/util/fetch","sap/ui/thirdparty/jquery","sap/ui/core/library"],function(e,r,t,s,jQuery){"use strict";var a=e.extend("sap.ui.core.search.OpenSearchProvider",{metadata:{library:"sap.ui.core",properties:{suggestUrl:{type:"sap.ui.core.URI",group:"Misc",defaultValue:null},suggestType:{type:"string",group:"Misc",defaultValue:"json"}}}});a.prototype.suggest=function(e,a){var i=this.getSuggestUrl();if(!i){return}i=i.replace("{searchTerms}",t(e));var n=this.getSuggestType();var u;if(n&&n.toLowerCase()==="xml"){n="xml";u=function(r){var t=jQuery(r);var s=t.find("Text");var i=[];s.each(function(){i.push(jQuery(this).text())});a(e,i)}}else{n="json";u=function(r){a(e,r[1])}}s(i,{headers:{Accept:s.ContentTypes[n.toUpperCase()]}}).then(function(e){if(e.ok){return e.text().then(function(e){var r;if(n==="json"){r=JSON.parse(e)}else{var t=new DOMParser;r=t.parseFromString(e,"text/xml")}u(r)})}else{throw new Error(e.statusText||e.status)}}).catch(function(e){r.fatal("The following problem occurred: "+e.message)})};return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/search/SearchProvider", ["sap/ui/core/Element","sap/base/Log","sap/ui/core/library"],function(e,r){"use strict";var a=e.extend("sap.ui.core.search.SearchProvider",{metadata:{abstract:true,library:"sap.ui.core",properties:{icon:{type:"string",group:"Misc",defaultValue:null}}}});a.prototype.suggest=function(e,a){r.warning("sap.ui.core.search.SearchProvider is the abstract base class for all SearchProviders. Do not create instances of this class, but use a concrete sub class instead.")};return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/service/Service", ["sap/ui/base/Object","sap/base/assert","sap/base/Log"],function(t,e,i){"use strict";var o=t.extend("sap.ui.core.service.Service",{metadata:{abstract:true,library:"sap.ui.core"},constructor:function(i){t.apply(this);if(i){e(typeof i.scopeObject==="object","The service context requires a scope object!");e(typeof i.scopeType==="string","The service context requires a scope type!")}this._oServiceContext=i;if(typeof this.init==="function"){this.init()}}});o.create=function(t){var e=function e(r){for(var n in t){if(!n.match(/^(metadata|constructor|getContext|destroy)$/)){this[n]=t[n]}else{i.warning("The member "+n+" is not allowed for anonymous service declaration and will be ignored!")}}o.apply(this,arguments)};e.prototype=Object.create(o.prototype);return e};o.prototype.getInterface=function(){var t=Object.create(null);for(var e in this){if(!e.match(/^_|^metadata$|^constructor$|^getInterface$|^destroy$|^init$|^exit$|^getContext$/)&&typeof this[e]==="function"){t[e]=this[e].bind(this)}}this.getInterface=function(){return t};return t};o.prototype.getContext=function(){return this._oServiceContext};o.prototype.destroy=function(){if(typeof this.exit==="function"){this.exit()}t.prototype.destroy.apply(this,arguments);delete this._oServiceContext};return o});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/service/ServiceFactory", ["sap/ui/base/Object","sap/ui/core/service/Service","sap/base/assert"],function(e,r,t){"use strict";var c=e.extend("sap.ui.core.service.ServiceFactory",{metadata:{library:"sap.ui.core"},constructor:function(c){e.apply(this);var o=typeof c==="object"?r.create(c):c;t(!o||o&&typeof o==="function","The service constructor either should be undefined or a constructor function!");this._fnService=o}});c.prototype.destroy=function(){e.prototype.destroy.apply(this,arguments);delete this._fnService};c.prototype.createInstance=function(e){if(typeof this._fnService==="function"){return Promise.resolve(new this._fnService(e))}else{return Promise.reject(new Error("Usage of sap.ui.core.service.ServiceFactory requires a service constructor function to create a new service instance or to override the createInstance function!"))}};return c});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/service/ServiceFactoryRegistry", ["./ServiceFactory","sap/base/assert"],function(e,t){"use strict";var r=Object.create(null);var n=Object.create(null);n.register=function(n,c){t(n,"sServiceFactoryName must not be empty, null or undefined");t(c instanceof e,"oServiceFactory must be an instance of sap.ui.core.service.ServiceFactory");r[n]=c;return this};n.unregister=function(e){t(e,"sServiceFactoryName must not be empty, null or undefined");delete r[e];return this};n.get=function(e){return r[e]};return n},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/syncStyleClass", ["sap/ui/thirdparty/jquery","sap/ui/base/Object","sap/base/assert"],function(jQuery,e,s){"use strict";var t=function(t,r,a){if(!t){return a}if(e.isObjectA(r,"sap.ui.core.Control")){r=r.$()}else if(typeof r==="string"){r=jQuery(document.getElementById(r))}else if(!(r instanceof jQuery)){s(false,"sap/ui/core/syncStyleClass(): vSource must be a jQuery object or a Control or a string");return a}var o=!!r.closest("."+t).length;if(a instanceof jQuery){a.toggleClass(t,o)}else if(e.isObjectA(a,"sap.ui.core.Control")){a.toggleStyleClass(t,o)}else{s(false,"sap/ui/core/syncStyleClass(): vDestination must be a jQuery object or a Control")}return a};return t});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/theming/Parameters", ["sap/ui/core/Lib","sap/ui/core/Theming","sap/ui/thirdparty/URI","../Element","sap/base/future","sap/base/Log","sap/base/util/extend","sap/base/util/syncFetch","sap/ui/core/theming/ThemeManager","./ThemeHelper"],function(e,r,t,a,n,i,s,o,u,c){"use strict";var f=sap.ui.loader._.getSyncCallBehavior();var l={};var m=null;var p=null;var h=[];var d=[];var g=new t(sap.ui.require.toUrl(""),document.baseURI).origin();var v={};var y=/url[\s]*\('?"?([^\'")]*)'?"?\)/;var b=new URLSearchParams(window.location.search).get("sap-ui-xx-no-inline-theming-parameters")!=="true";function w(e,r){var a=y.exec(e);if(a){var n=new t(a[1]);if(n.is("relative")){var i=n.absoluteTo(r).normalize().toString();e="url('"+i+"')"}}return e}function P(e,r,t){for(var a in r){if(typeof e[a]==="undefined"){e[a]=w(r[a],t)}}return e}function A(e,r){if(typeof e["default"]!=="object"){e={default:e,scopes:{}}}m=m||{};m["default"]=m["default"]||{};m["scopes"]=m["scopes"]||{};P(m["default"],e["default"],r);if(typeof e["scopes"]==="object"){for(var t in e["scopes"]){m["scopes"][t]=m["scopes"][t]||{};P(m["scopes"][t],e["scopes"][t],r)}}}function T(e){document.querySelectorAll("link[id^=sap-ui-theme-]").forEach(function(r){e(r.getAttribute("id"))})}function U(e,r){var t=S(e);var a=c.checkAndRemoveStyle({id:e});if(!a&&!r){i.warning("Parameters have been requested but theme is not applied, yet.","sap.ui.core.theming.Parameters")}if(a&&b){var s=document.getElementById(e);var o=window.getComputedStyle(s).getPropertyValue("background-image");var u=/\(["']?data:text\/plain;utf-8,(.*?)['"]?\)$/i.exec(o);if(u&&u.length>=2){var f=u[1];if(f.charAt(0)!=="{"&&f.charAt(f.length-1)!=="}"){try{f=decodeURIComponent(f)}catch(e){n.warningThrows("Could not decode theme parameters URI from "+t.styleSheetUrl,{cause:e})}}try{var l=JSON.parse(f);A(l,t.themeBaseUrl);return true}catch(e){n.warningThrows("Could not parse theme parameters from "+t.styleSheetUrl+".",{cause:e,suffix:"Loading library-parameters.json as fallback solution."})}}}return r?a:false}function L(e){var r=S(e);if(!U(e)){var a=r.styleSheetUrl.replace(/\/(?:css_variables|library)([^\/.]*)\.(?:css|less)($|[?#])/,function(e,r,t){return"/library-parameters.json"+(t?t:"")});if(f===2){i.error("[nosync] Loading library-parameters.json ignored",a,"sap.ui.core.theming.Parameters");return}else if(f===1){i.error("[nosync] Loading library-parameters.json with sync XHR",a,"sap.ui.core.theming.Parameters")}var n=new t(r.themeBaseUrl).origin();var s=v[n];var o=[];if(s===undefined){if(a.startsWith(g)){o=[false,true]}else{o=[true,false]}}else{o=[s]}j(a,r.themeBaseUrl,o)}}function S(e){var r=document.getElementById(e);if(!r){n.warningThrows(`sap.ui.core.theming.Parameters: Could not find stylesheet element with ID "${e}"`);return undefined}var a=r.href;return{themeBaseUrl:new t(a).filename("").query("").toString(),styleSheetUrl:a}}function j(e,r,a){var s={Accept:o.ContentTypes.JSON};var u=a.shift();if(u){s["X-Requested-With"]="XMLHttpRequest"}function c(t){n.errorThrows("Could not load theme parameters from: "+e,{cause:t});if(a.length>0){i.warning("Initial library-parameters.json request failed ('withCredentials="+u+"'; sUrl: '"+e+"').\n"+"Retrying with 'withCredentials="+!u+"'.","sap.ui.core.theming.Parameters");j(e,r,a)}}try{var f=o(e,{credentials:u?"include":"omit",headers:s});if(f.ok){var l=f.json();var m=new t(r).origin();v[m]=u;if(Array.isArray(l)){for(var p=0;p<l.length;p++){var h=l[p];A(h,r)}}else{A(l,r)}}else{throw new Error(f.statusText||f.status)}}catch(e){c(e)}}function x(e){if(!m){A({},"");T(function(r){if(e){if(!U(r,e)){h.push(r)}}else{L(r)}})}return m}function I(){var e=[];h.forEach(function(r){if(!U(r,true)){e.push(r)}});h=e}function N(){h.forEach(L);h=[]}l._addLibraryTheme=function(e){if(m){h.push("sap-ui-theme-"+e)}};function R(r){var t=r.async,a=x(t);if(r.scopeName){a=a["scopes"][r.scopeName]}else{a=a["default"]}var n=a[r.parameterName];if(!n){var i=r.parameterName.indexOf(":");if(i!=-1){var s=r.parameterName.substr(i+1);n=a[s]}}if(r.loadPendingParameters&&typeof n==="undefined"&&!t){var o=e.getAllInstancesRequiringCss();o.forEach(function(e){u._includeLibraryThemeAndEnsureThemeRoot(e)});N();n=R({parameterName:r.parameterName,scopeName:r.scopeName,loadPendingParameters:false})}return n}function E(e,r,t){var a=l.getActiveScopesFor(r,t);var n=a.flat().reduce(function(e,r){if(e.indexOf(r)===-1){e.push(r)}return e},[]);for(var i=0;i<n.length;i++){var s=n[i];var o=R({parameterName:e,scopeName:s,async:t});if(o){return o}}return R({parameterName:e,async:t})}l._getScopes=function(e,r){if(e&&!m){return}var t=x(r);var a=Object.keys(t["scopes"]);return a};l.getActiveScopesFor=function(e,r){var t=[];if(e instanceof a){var n=e.getDomRef();if(r){I()}else{N()}var i=this._getScopes(undefined,r);if(i.length){if(n){var s=function(e){var r=n.classList;return r&&r.contains(e)};while(n){var o=i.filter(s);if(o.length>0){t.push(o)}n=n.parentNode}}else{var u=function(r){return typeof e.hasStyleClass==="function"&&e.hasStyleClass(r)};while(e){var o=i.filter(u);if(o.length>0){t.push(o)}e=typeof e.getParent==="function"&&e.getParent()}}}}return t};l.get=function(e,t){let s,o,u,c,f;let l;var m=function(e){return e.callback===o};if(!p){p=r.getTheme()}if(arguments.length===0){i.warning("[FUTURE FATAL] Legacy variant usage of sap.ui.core.theming.Parameters.get API detected. Do not use the Parameters.get() API to retrieve ALL theming parameters, "+"as this will lead to unwanted synchronous requests. "+"Use the asynchronous API variant instead and retrieve a fixed set of parameters.","LegacyParametersGet","sap.ui.support",function(){return{type:"LegacyParametersGet"}});N();var h=x();return Object.assign({},h["default"])}if(!e){return undefined}if(e instanceof Object&&!Array.isArray(e)){if(!e.name){n.warningThrows("sap.ui.core.theming.Parameters: Get was called with an object argument without one or more parameter names.");return undefined}t=e.scopeElement;o=e.callback;l=e._restrictedParseUrls||false;c=typeof e.name==="string"?[e.name]:e.name;u=true}else{if(typeof e==="string"){c=[e]}else{c=e}i.warning("[FUTURE FATAL] Legacy variant usage of sap.ui.core.theming.Parameters.get API detected for parameter(s): '"+c.join(", ")+"'. This could lead to bad performance and additional synchronous XHRs, as parameters might not be available yet. Use asynchronous variant instead.","LegacyParametersGet","sap.ui.support",function(){return{type:"LegacyParametersGet"}})}var g;var v=function(e){if(t instanceof a){return E(e,t,u)}else{if(u){I()}return R({parameterName:e,loadPendingParameters:!u,async:u})}};const y={};for(var b=0;b<c.length;b++){s=c[b];var w=v(s);if(!u||w){y[s]=w}}if(u&&o&&Object.keys(y).length!==c.length){g=function(){r.detachApplied(g);var t=this.get({name:e.name,scopeElement:e.scopeElement});if(!t||typeof t==="object"&&Object.keys(t).length!==c.length){i.error(`sap.ui.core.theming.Parameters: The following parameters could not be found: "${c.length===1?c[0]:c.filter(e=>t&&!Object.hasOwn(t,e))}"`)}o(t);d.splice(d.findIndex(m),1)}.bind(this);f=d.findIndex(m);if(f>=0){r.detachApplied(d[f].eventHandler);d[f].eventHandler=g}else{d.push({callback:o,eventHandler:g})}r.attachApplied(g);return undefined}if(l){O(y)}return c.length===1?y[c[0]]:y};function O(e){for(const r in e){if(Object.hasOwn(e,r)){let t=e[r];const a=y.exec(t);if(a){t=a[1]}else if(t==="''"||t==="none"){t=null}e[r]=t}}}l._setOrLoadParameters=function(e){m={default:{},scopes:{}};p=r.getTheme();T(function(r){var t=r.substr(13);if(e[t]){s(m["default"],e[t])}else{L(r)}})};l.reset=function(){this._reset.apply(this,arguments)};l._reset=function(){var e=arguments[0]===true;if(!e||r.getTheme()!==p){p=r.getTheme();h=[];m=null}};l._getThemeImage=function(e,r){e=e||"sapUiGlobalLogo";var t=l.get(e);if(t){var a=y.exec(t);if(a){t=a[1]}else if(t==="''"||t==="none"){t=null}}if(r&&!t){return sap.ui.require.toUrl("sap/ui/core/themes/base/img/1x1.gif")}return t};return l},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/theming/ThemeManager", ["sap/base/assert","sap/base/Eventing","sap/base/future","sap/base/Log","sap/base/i18n/Localization","sap/base/util/each","sap/base/util/LoaderExtensions","sap/ui/Device","sap/ui/VersionInfo","sap/ui/core/Lib","sap/ui/core/Theming","sap/ui/core/theming/ThemeHelper","sap/ui/dom/includeStylesheet"],function(e,t,r,a,i,s,n,o,u,c,d,l,f){"use strict";const h=new t;const m=150;const p={};const g=/\.sapUiThemeDesignerCustomCss/i;const v="sap-ui-core-customcss";const T="sap-ui-theme-";let b=true;document.querySelectorAll(`link[id^=${T}]`).forEach(function(e){let t=true;const r=e.getAttribute("id").replace(T,"");p[r]={};e.removeAttribute("data-sap-ui-ready");a.info(`ThemeManager: Preloaded CSS for library ${r} detected: ${e.href}`,undefined,"sap.ui.core.theming.ThemeManager");try{t=!!(e.sheet?.href===e.href&&e.sheet?.cssRules);if(!t){b=t;e.addEventListener("load",t=>{const r=t.type==="error";e.setAttribute("data-sap-ui-ready",!r)})}else{e.setAttribute("data-sap-ui-ready",e.sheet.cssRules.length>0)}}catch(t){a.info("Could not detect ready state of preloaded CSS. Request stylesheet again to verify the response status",undefined,"sap.ui.core.theming.ThemeManager");b=false;f({url:e.href,id:e.getAttribute("id")})}});let y=0;let L=false;let C=null;let A=null;let S={};let E;var R={themeLoaded:b,checkThemeApplied:function(){R.reset();$(true);if(!E){R.fireThemeApplied()}},reset:function(){R.themeLoaded=false;if(E){clearTimeout(E);E=null;y=0;A=null;S={}}},_includeLibraryThemeAndEnsureThemeRoot:function(e){var t=e.name;_(t,d.getTheme());_(t,"base");const r=`${t}${e.variant?"-["+e.variant+"]":""}`;e.preloadedCss=e.preloadedCss||!!p[r];p[r]=e;if(!e.preloadedCss){R.includeLibraryTheme(t,e.variant,e)}},includeLibraryTheme:function(t,r,s){e(typeof t==="string","sLibName must be a string");e(r===undefined||typeof r==="string","sVariant must be a string or undefined");var n=s;if(typeof n==="object"){n=M(s)}if(t==="sap.ui.legacy"||t==="sap.ui.classic"){return}if(!r){r=""}var o=i.getRTL()?"-RTL":"";var u,c=t+(r.length>0?"-["+r+"]":r);if(t&&t.indexOf(":")==-1){u="library"+r+o}else{u=t.substring(t.indexOf(":")+1)+r;t=t.substring(0,t.indexOf(":"))}const l=`${T}${c}`;if(!document.querySelector("LINK[id='"+l+"']")){var h=new URL(R._getThemePath(t,d.getTheme()),document.baseURI).toString();var m=document.createElement("link");m.href=h+u+".css"+(n?n:"");var p=m.href;k(l);a.info("Including "+p+" -  sap.ui.core.theming.ThemeManager.includeLibraryTheme()");f(p,l);var g=sap.ui.require("sap/ui/core/theming/Parameters");if(g){g._addLibraryTheme(c)}R.checkThemeApplied()}},_getThemePath:function(e,t){_(e,t);return sap.ui.require.toUrl((e+".themes."+t).replace(/\./g,"/")+"/")},_updateThemeUrls:function(e,t){var r=document.querySelectorAll(`link[id^=${T}]`);Array.prototype.forEach.call(r,function(r){I(r,e,t)})},_attachThemeApplied:function(e){h.attachEvent("applied",e)},_detachThemeApplied:function(e){h.detachEvent("applied",e)},fireThemeApplied:function(){l.reset();var e=sap.ui.require("sap/ui/core/theming/Parameters");if(e){e._reset(true)}h.fireEvent("applied",{theme:d.getTheme()})}};function U(){var e=d.getTheme();var t=R._getThemePath("sap.ui.core",e)+"custom.css";var r=l.isStandardTheme(d.getTheme());var i=true;var n=[];if(L&&C===e){p[v]={}}function o(s){var o=l.checkAndRemoveStyle({prefix:T,id:s});i=i&&o;if(i){if(!L||C!=e){if(!r&&w(s)){var u=t;var c=M(p["sap.ui.core"]);if(c){u+=c}f(u,v);L=true;a.debug("ThemeManager: delivered custom CSS needs to be loaded, Theme not yet applied");C=e;i=false;return false}else if(L){var d=document.querySelector("LINK[id='"+v+"']");if(d){d.remove();a.debug("ThemeManager: Custom CSS removed")}L=false}}}if(!r&&o&&!S[s]){var h=document.getElementById(`${T}${s}`);if(h&&h.getAttribute("data-sap-ui-ready")==="false"&&!(h.sheet&&l.hasSheetCssRules(h.sheet))){n.push(s)}}}s(p,o);if(n.length>0){if(!A){for(var u in p){var c=l.getMetadata(u);if(c&&c.Extends&&c.Extends[0]){A=c.Extends[0]}else{const t=d.getThemeRoot(e,u);if(t){const e=/~v=[^\/]+\(([a-zA-Z0-9_]+)\)/;A=e.exec(t)?.[1]}}if(A){break}}}if(A){n.forEach(function(t){const r=document.getElementById(`${T}${t}`);a.warning("ThemeManager: Custom theme '"+e+"' could not be loaded for library '"+t+"'. "+"Falling back to its base theme '"+A+"'.");I(r,A);S[t]=true});i=false}}if(!i){a.debug("ThemeManager: Theme not yet applied.")}else{C=e}return i}function w(e){var t=window.document.getElementById(`${T}${e}`);if(!t){return false}var i=window.getComputedStyle(t,":after");var s=i?i.getPropertyValue("content"):null;if(!s&&o.browser.safari){var n=document.documentElement;n.classList.add("sapUiThemeDesignerCustomCss");s=window.getComputedStyle(n,":after").getPropertyValue("content");n.classList.remove("sapUiThemeDesignerCustomCss")}if(s&&s!=="none"){try{if(s[0]==="'"||s[0]==='"'){s=s.substring(1,s.length-1)}return s==="true"}catch(e){r.errorThrows("Custom check: Error parsing JSON string for custom.css indication.",{cause:e})}}var u=t.sheet?l.safeAccessSheetCssRules(t.sheet):null;if(!u||u.length===0){a.warning("Custom check: Failed retrieving a CSS rule from stylesheet "+e);return false}for(var c=0;c<2&&c<u.length;c++){if(g.test(u[c].selectorText)){return true}}return false}function $(e){y++;var t=y>m;if(!U()&&!t){var a;if(y<=100){a=2}else if(y<=110){a=500}else{a=1e3}E=setTimeout($,a)}else if(!e){R.reset();R.themeLoaded=true;R.fireThemeApplied();if(t){r.errorThrows("ThemeManager: max. check cycles reached.")}}else{R.themeLoaded=true}}function k(e){var t=document.getElementById(e);if(t){t.dataset.sapUiFoucmarker=e}}function x(e){var t=document.documentElement;var r=e.new;R._updateThemeUrls(r,true);t.classList.remove("sapUiTheme-"+e.old);t.classList.add("sapUiTheme-"+r);R.checkThemeApplied()}function _(e,t){var r=d.getThemeRoot(t,e);if(r){r=r+(r.slice(-1)=="/"?"":"/")+e.replace(/\./g,"/")+"/themes/"+t+"/";n.registerResourcePath((e+".themes."+t).replace(/\./g,"/"),r)}}function I(e,t,r){var a,s=e.href.search(/[?#]/),n,o,u="library",c=i.getRTL()?"-RTL":"",d,l;var h=new RegExp(`^${T}(.*)$`,"i").exec(e.id);if(Array.isArray(h)){a=h[1]}else{a=e.id.slice(T.length)}p[a]=p[a]||{};if(s>-1){n=e.href.substring(0,s);o=e.href.substring(s)}else{n=e.href;o=""}n=n.substring(n.lastIndexOf("/")+1);if((l=a.indexOf("-["))>0){u+=a.slice(l+2,-1);a=a.slice(0,l)}if(n===u+".css"||n===u+"-RTL.css"){n=u+c+".css"}d=new URL(R._getThemePath(a,t)+n+o,document.baseURI).toString();if(d!=e.href){if(r){e.dataset.sapUiFoucmarker=e.id}f(d,e.id)}}function M(e){var t;if(c.getVersionedLibCss()&&e){t="?version="+e.version;if(u._content){t+="&sap-ui-dist-version="+u._content.version}}return t}document.documentElement.classList.add("sapUiTheme-"+d.getTheme());a.info("Declared theme "+d.getTheme(),null);d.attachChange(function(e){var t=e.themeRoots;var r=e.theme;if(t&&t.forceUpdate){R._updateThemeUrls(d.getTheme())}if(r){x(r)}});d.registerThemeManager(R);if(!R.themeLoaded){R.checkThemeApplied()}return R});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/tmpl/DOMAttribute", ["sap/ui/core/Element","sap/ui/core/library"],function(t){"use strict";var e=t.extend("sap.ui.core.tmpl.DOMAttribute",{metadata:{library:"sap.ui.core",properties:{name:{type:"string",group:"Data",defaultValue:null},value:{type:"string",group:"Data",defaultValue:null}}}});e.prototype.setValue=function(t){this.setProperty("value",t,true);var e=this.getParent(),r=e&&e.$();if(r&&r.length>0){r.attr(this.getName(),this.getProperty("value"))}return this};return e});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/tmpl/DOMElement", ["sap/ui/core/Control","./DOMAttribute","./DOMElementRenderer","sap/base/Log","sap/ui/thirdparty/jquery","sap/ui/core/library"],function(t,e,i,r,jQuery){"use strict";var a=t.extend("sap.ui.core.tmpl.DOMElement",{metadata:{library:"sap.ui.core",properties:{text:{type:"string",group:"Appearance",defaultValue:null},tag:{type:"string",group:"Behavior",defaultValue:"span"}},defaultAggregation:"attributes",aggregations:{attributes:{type:"sap.ui.core.tmpl.DOMAttribute",multiple:true,singularName:"attribute"},elements:{type:"sap.ui.core.tmpl.DOMElement",multiple:true,singularName:"element"}}},renderer:i});a.prototype.applySettings=function(i){var a=this.getMetadata(),n=a.getJSONKeys();if(i){if(!i["attributes"]){var s=i["attributes"]=[];jQuery.each(i,function(t,r){if(t!=="id"&&!n[t]&&typeof r==="string"){s.push(new e({name:t,value:r}));delete i[t]}})}else{r.warning("DOMElement#"+this.getId()+": custom attributes in settings will be ignored since attributes are provided!")}}t.prototype.applySettings.apply(this,arguments)};a.prototype.exit=a.prototype.onBeforeRendering=function(){var t=this.getTag().toLowerCase();if(t==="input"||t==="textarea"||t==="select"){this.$().off("change")}};a.prototype.onAfterRendering=function(){var t=this.getTag().toLowerCase();if(t==="input"||t==="textarea"||t==="select"){this.$().on("change",jQuery.proxy(this.oninputchange,this))}};a.prototype.oninputchange=function(t){var e=this.getTag().toLowerCase();if(e==="input"){var i=this.$().val();this.getAttributes().forEach(function(t){if(t.getName().toLowerCase()==="value"){t.setValue(i)}})}else if(e==="textarea"){var r=this.$().val();this.setText(r)}else if(e==="select"){var r="";this.$().find("select option:selected").each(function(){r+=jQuery(this).text()+" "});this.setText(r)}};a.prototype.attr=function(t,i){var r=this.getAttributes().find(function(e){var i=e.getName();return i.toLowerCase()===t});if(i===undefined){return r&&r.getValue()}else{if(r){if(i===null){this.removeAttribute(r)}else{r.setValue(i)}}else{if(i!==null){this.addAttribute(new e({name:t,value:i}))}}return this}};a.prototype.removeAttr=function(t){this.attr(t,null);return this};a.prototype.setText=function(t){this.setProperty("text",t,true);var e=this.$();if(e.length>0){var i=this.getTag().toLowerCase();if(i==="textarea"){e.val(this.getProperty("text"))}else{e.text(this.getProperty("text"))}}return this};return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/tmpl/DOMElementRenderer", ["sap/base/Log","sap/base/security/encodeXML"],function(e,t){"use strict";var r={apiVersion:2};var a=/^(?:area|base|br|col|embed|hr|img|input|link|meta|param|source|track|wbr)$/i;r.render=function(r,i){var n=t(i.getTag()),s=a.test(n);if(s){r.voidStart(n,i)}else{r.openStart(n,i)}i.getAttributes().forEach(function(a){var i=a.getName().toLowerCase();if(i==="class"){var n=a.getValue().split(" ");n.forEach(function(e){var e=e.trim();if(e){r.class(e)}})}else if(i==="style"){var s=a.getValue().split(";");s.forEach(function(e){var a=e.indexOf(":");if(a!=-1){var i=e.substring(0,a).trim();var n=e.substring(a+1).trim();r.style(t(i),n)}})}else if(a.getName()){r.attr(t(a.getName()),a.getValue())}else{e.error("Attributes must have a non-empty name")}});if(s){r.voidEnd()}else{r.openEnd()}var o=i.getElements(),f=!!i.getText()||o.length>0;if(f){if(s){e.error("Void element '"+n+"' is rendered with children")}if(i.getText()){r.text(i.getText())}o.forEach(function(e,t){r.renderControl(t)})}if(!s){r.close(n)}};return r},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/tmpl/HandlebarsTemplate", ["./Template","./TemplateControl","sap/ui/core/RenderManager","sap/ui/thirdparty/handlebars","sap/ui/base/ManagedObject","sap/base/util/ObjectPath","sap/base/security/encodeXML","sap/base/util/isEmptyObject","sap/ui/core/Core"],function(e,t,a,r,n,o,i,s){"use strict";var h=e.extend("sap.ui.core.tmpl.HandlebarsTemplate",{metadata:{library:"sap.ui.core"},constructor:function(t,a){e.apply(this,arguments)}});e.registerType("text/x-handlebars-template","sap.ui.core.tmpl.HandlebarsTemplate");function l(e){for(var t in e){e[t]=e[t].replace("&gt;",">").replace("&lt;","<").replace("&quot;",'"').replace("&amp;","&")}}function p(e,t){var a=/^((\w+)>)?(.*)/,r=a.exec(e),n=r[2],o=a.exec(t),i=o[2];var r=a.exec(e);if(t&&n==i){return t+r[3]}else{return e}}h.RENDER_HELPERS=function(){var e=r.helpers["each"],t=r.helpers["with"],h=r.helpers["if"],g=r.helpers["unless"],f=(new a).getInterface();f.renderControl=function(e){this.writeControlData(e);this.writeClasses(e);this.writeStyles(e)};var d={each:function(t,a){a=a||t;if(!a.hash.path){return e.apply(this,arguments)}else{l(a.hash);var n=a.data.renderManager,o=a.data.rootControl,i=a.data.path,s=a.data.parentControl,h=p(a.hash.path,i),g=o.bindList(h),f=[],d;if(a.data){d=r.createFrame(a.data)}if(g){for(var u in g){if(d){d.renderManager=n;d.rootControl=o;d.path=h+"/"+u+"/";d.parentControl=s}f.push(a.fn({},{data:d}))}}if(!s){return new r.SafeString(f.join(""))}}},with:function(e,a){a=a||e;if(!a.hash.path){return t.apply(this,arguments)}},if:function(e,t){t=t||e;if(!t.hash.path){return h.apply(this,arguments)}else{l(t.hash);var a=t.data.rootControl,r=t.data.path,n=p(t.hash.path,r);if(n){var o=a.bindProp(n);if(o){return t.fn(this)}else{return t.inverse(this)}}}},unless:function(e,t){t=t||e;if(!t.hash.path){return g.apply(this,arguments)}else{l(t.hash);var a=t.data.rootControl,r=t.data.path,n=p(t.hash.path,r);if(n){var o=a.bindProp(n);if(!o){return t.fn(this)}else{return t.inverse(this)}}}},text:function(e,t){t=t||e;l(t.hash);var a=t.data.rootControl,n=t.data.path,o=p(t.hash.path,n);if(o){var s=a.bindProp(o);return s&&new r.SafeString(i(s))}else{throw new Error('The expression "text" requires the option "path"!')}},element:function(e,t){t=t||e;l(t.hash);var a=t.data.renderManager,n=t.data.rootControl,o=n.createDOMElement(t.hash,t.data.path),i=t.data.parentElement;if(t.fn){t.fn({},{data:{renderManager:a,rootControl:n,parentElement:o}})}if(i){i.addElement(o);return}return new r.SafeString(a.getHTML(o))},control:function(e,t){t=t||e;l(t.hash);var a=t.data.renderManager,i=t.data.control;if(i){return new r.SafeString(a.getHTML(i))}var h=t.data.rootControl,p=t.data.path,g=t.data.children,f=t.hash["sap-ui-type"],d=o.get(f||""),u=d&&d.getMetadata(),c=t.hash["sap-ui-default-aggregation"]||u&&u.getDefaultAggregationName(),v=t.data.view;if(!d){throw new Error("Control of type "+f+" cannot be found.")}var m={};if(t.fn){t.fn({},{data:{rootControl:h,path:p,children:m,defaultAggregation:c,view:v}})}var C=Object.assign({},t.hash),w;for(var b in C){if(b==="sap-ui-class"&&typeof C[b]==="string"){w=C["sap-ui-class"]&&C["sap-ui-class"].split(" ");delete C[b]}else if(m[b]){delete C[b]}}var y=h.createControl(C,t.data.path,!!g,v);if(w&&w.length>0){w.forEach(y.addStyleClass.bind(y))}if(!s(m)){C=t.hash;var M=u.getAllAggregations();for(var E in m){var S=m[E];for(var T=0,A=S.length;T<A;T++){var x=S[T],j=M[E],H=j&&j.multiple;if(typeof C[E]==="string"){var L=n.bindingParser(C[E],v&&v.getController());L.template=x;y.bindAggregation(E,L)}else{if(H){y.addAggregation(E,x)}else{y.setAggregation(E,x)}}}}}if(g){var E=t.hash["sap-ui-aggregation"]||t.data.defaultAggregation;g[E]=g[E]||[];g[E].push(y);return}return new r.SafeString(a.getHTML(y))},property:function(e,t){t=t||e;l(t.hash);var a=t.data.rootControl,r=a.getMetadata(),n=t.hash.name,o=r.getProperty(n)._sGetter;return a[o]()},aggregation:function(e,t){t=t||e;l(t.hash);if(t.data.children){var a=t.hash.name;if(t.fn){var n=Object.assign({},t.data,{defaultAggregation:a});t.fn({},{data:n})}}else{var o=t.data.renderManager,i=t.data.rootControl,s=i.getMetadata(),a=t.hash.name,h=s.getAggregation(a)._sGetter,p=[];var g=i[h]();if(g){for(var f=0,d=g.length;f<d;f++){if(t.fn){p.push(t.fn({},{data:{renderManager:o,rootControl:i,control:g[f]}}))}else{p.push(o.getHTML(g[f]))}}}return new r.SafeString(p.join(""))}},event:function(e,t){t=t||e},controlData:function(e,t){t=t||e;var a=t.data.rootControl;return new r.SafeString(f.getHTML(a))}};return d}();h.prototype.createMetadata=function(){var e=this.getContent(),a=this._fnTemplate=this._fnTemplate||r.compile(e);var n={},o=t.getMetadata().getAllSettings(),i=t.getMetadata().getAllPrivateAggregations();var s={property:function(e,t){t=t||e;l(t.hash);var a=t.hash.name;if(a&&a!=="id"&&!o[a]){n.properties=n.properties||{};n.properties[a]=Object.assign({},{type:"string"},t.hash)}else{throw new Error('The property name "'+a+'" is reserved.')}},aggregation:function(e,t){t=t||e;l(t.hash);var a=t.hash.name;if(a&&!o[a]&&!i[a]){t.hash.multiple=t.hash.multiple=="true";n.aggregations=n.aggregations||{};n.aggregations[a]=Object.assign({},t.hash)}else{throw new Error('The aggregation name "'+a+'" is reserved.')}},event:function(e,t){t=t||e},controlData:function(e,t){t=t||e;n._hasControlData=true}};["each","if","unless","with"].forEach(function(e){s[e]=function(){}});a({},{helpers:s});return n};h.prototype.createRenderer=function(e){var t=this.getContent(),a=this._fnTemplate=this._fnTemplate||r.compile(t);var n=function(t,r){var n=a(r.getContext()||{},{data:{renderManager:t,rootControl:r,view:e},helpers:h.RENDER_HELPERS});t.write(n)};return n};return h});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/tmpl/Template", ["sap/ui/base/ManagedObject","sap/ui/base/BindingInfo","sap/ui/base/BindingParser","sap/ui/core/Control","sap/ui/core/RenderManager","sap/base/util/ObjectPath","sap/base/Log","sap/base/assert","sap/ui/thirdparty/jquery","sap/ui/core/tmpl/TemplateControl","./_parsePath"],function(e,t,r,a,n,i,o,s,jQuery,p,c){"use strict";var l=e.extend("sap.ui.core.tmpl.Template",{constructor:function(t,r){e.apply(this,arguments)},metadata:{stereotype:"template",abstract:true,library:"sap.ui.core",properties:{content:{type:"string",group:"Data",defaultValue:null}},publicMethods:["declareControl","createControl","placeAt","createMetadata","createRenderer"]}});var u={};l.prototype.register=function(){var e=this.getId(),t=u[e],r;if(t&&this!==t){r="adding template with duplicate id '"+e+"'";o.error(r);throw new Error("Error: "+r)}u[e]=this};l.prototype.deregister=function(){delete u[this.getId()]};l.byId=function(e){return u[e]};l.prototype.getInterface=function(){return this};l._mSupportedTypes={};l.registerType=function(e,t){l._mSupportedTypes[e]=t};l.unregisterType=function(e){delete l._mSupportedTypes[e]};l.parsePath=c;l.prototype.init=function(e,n){if(this.getMetadata().getName()==="sap.ui.core.tmpl.Template"){throw new Error("The class 'sap.ui.core.tmpl.Template' is abstract and must not be instantiated!")}if(t.parse===r.complexParser){l.prototype.extractBindingInfo=function(e,n,i){t.parse=r.simpleParser;var o=a.prototype.extractBindingInfo.apply(this,arguments);t.parse=r.complexParser;return o}}};l.prototype.declareControl=function(e){s(!!e,"A fully qualified name must be specified!");if(e){var t=this.createMetadata(),r=this.createRenderer(),a=this;p.extend(e,{metadata:t,init:function(){p.prototype.init.apply(this,arguments);this.setTemplate(a)},renderer:{renderTemplate:r,hasControlData:t._hasControlData}});return i.get(e||"")}};l.prototype.createControl=function(e,t,r){var a=new p({id:e,template:this,context:t});a.setTemplateRenderer(this.createRenderer(r));return a};l.prototype.placeAt=function(e,t,r,i){if(typeof t==="string"||typeof t==="number"){r=t;t=undefined}var o;if(!(e instanceof a)&&i){var s=typeof e==="string"?jQuery(document.getElementById(e)):jQuery(e);if(s.length>0){o=s.attr("id");e=s.get(0);var p=s.attr("data-context");t=t||p&&JSON.parse(p);n.markInlineTemplate(s)}}var c=this.createControl(o,t);c.placeAt(e,r);return c};l.prototype.createMetadata=function(){o.error("The function createMetadata is an abstract function which needs to be implemented by subclasses.")};l.prototype.createRenderer=function(){o.error("The function createRenderer is an abstract function which needs to be implemented by subclasses.")};sap.ui.template=function(e){var t=function(e){o.warning("The usage of Template Views is deprecated since 1.56. Please make use of the asynchronous create functions of the different view classes, e.g. XMLView.create()","Deprecation",null,function(){return{type:"sap.ui.template",name:e}})};if(!e){var r=[];jQuery.each(l._mSupportedTypes,function(e,t){jQuery("script[type='"+e+"'], [data-type='"+e+"']").each(function(a,n){r.push(sap.ui.template({id:n.id,domref:n,type:e,_class:t}))})});return r}else{if(typeof e==="string"){return sap.ui.template({id:e})}else if(e&&e.tagName&&e.nodeName&&e.ownerDocument&&e.nodeType===1){return sap.ui.template({id:e.id,domref:e})}e=jQuery.extend({type:l.DEFAULT_TEMPLATE},e);t(e.id);var a,n,s,p,c=false,u=typeof e.src==="string",d=false;if(u){jQuery.ajax({url:e.src,dataType:"text",async:false,success:function(t){a=e.id;n=e.type;s=e.control;p=t;var r=/^<!--\sUI5:Template\stype=([a-z\/\-]*)\s(?:controller=([A-Za-z.]*)\s)?-->/,i=p.match(r);if(i){n=i[1];if(i.length==3){c=i[2]}p=p.substr(i[0].length)}},error:function(){throw new Error("The template could not be loaded from "+e.src+"!")}})}else{var f=e.domref||(e.id?window.document.getElementById(e.id):null),m=jQuery(f);d=false;a=e.id||f&&f.id;n=m.attr("type")||e.type;s=m.attr("data-control")||e.control;if(a){var h=sap.ui.getCore().getTemplate(a);if(!h instanceof l){throw new Error('Object for id "'+a+'" is no sap.ui.core.tmpl.Template!')}else{if(h){return h}}}if(m.length===0){throw new Error('DOM element for the Template with the id "'+a+'" not found!')}p=m.html();var y=f.tagName.toLowerCase();if(y!=="script"){d=m.parents("body").length===1}}var g=e._class;if(!g){g=l._mSupportedTypes[n];if(!g){throw new Error('The type "'+n+'" is not supported.')}}var T=sap.ui.requireSync(g.replace(/\./g,"/"));T=T||i.get(g||"");var b=new T({id:a,content:p});if(s){b.declareControl(s)}if(c){b._sControllerName=c}if(d){b.placeAt(a,e.context,undefined,true)}return b}};l.DEFAULT_TEMPLATE="text/x-handlebars-template";l.registerType(l.DEFAULT_TEMPLATE,"sap.ui.core.tmpl.HandlebarsTemplate");return l});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/tmpl/TemplateControl", ["sap/ui/core/Control","sap/ui/core/DeclarativeSupport","sap/ui/core/Element","sap/ui/core/UIArea","./DOMElement","./TemplateControlRenderer","./_parsePath","sap/base/strings/capitalize","sap/base/strings/hyphenate","sap/base/Log","sap/ui/thirdparty/jquery","sap/ui/core/library"],function(t,e,n,i,r,o,a,p,s,l,jQuery){"use strict";var c=t.extend("sap.ui.core.tmpl.TemplateControl",{metadata:{library:"sap.ui.core",properties:{context:{type:"object",group:"Data",defaultValue:null}},aggregations:{controls:{type:"sap.ui.core.Control",multiple:true,singularName:"control",visibility:"hidden"}},associations:{template:{type:"sap.ui.core.tmpl.Template",multiple:false}},events:{afterRendering:{},beforeRendering:{}}},renderer:o});c.prototype.init=function(){this._aBindingInfos=[]};c.prototype.isInline=function(){var t=false,e=this.getParent();if(e instanceof i&&jQuery(e.getRootNode()).attr("id")===this.getId()){t=true}return t};c.prototype.placeAt=function(e,n){var i=this.isInline();var r=this.$(),o=this.getUIArea();t.prototype.placeAt.apply(this,arguments);if(i&&r.length===1){r.remove();o.destroyContent()}};c.prototype.getTemplateRenderer=function(){return this.fnRenderer};c.prototype.setTemplateRenderer=function(t){this.fnRenderer=t;return this};c.prototype._cleanup=function(){this.destroyAggregation("controls");this._aBindingInfos.forEach(function(t){var e=t.binding;if(e){e.detachChange(t.changeHandler);e.destroy()}});this._aBindingInfos=[]};c.prototype._compile=function(){var t=n.getElementById(this.getTemplate()),i=t&&t.getDeclarativeSupport();if(i){var r=this;setTimeout(function(){e.compile(r.getDomRef())})}};c.prototype.exit=function(){this._cleanup()};c.prototype.onBeforeRendering=function(){this.fireBeforeRendering();this._cleanup()};c.prototype.onAfterRendering=function(){this.fireAfterRendering()};c.prototype.clone=function(){var e=t.prototype.clone.apply(this,arguments);e.fnRenderer=this.fnRenderer;return e};c.prototype.updateBindings=function(e,n){t.prototype.updateBindings.apply(this,arguments);if(this.getDomRef()){this.invalidate()}};c.prototype.bind=function(t,e){var n=a(t),i=this.getModel(n.model),t=n.path,r=e?"bind"+p(e):"bindProperty",o=i&&i[r](t),s={binding:o,path:n.path,model:n.model};if(o){s.changeHandler=function(){l.debug("TemplateControl#"+this.getId()+": "+e+' binding changed for path "'+t+'"');this.invalidate()}.bind(this);o.attachChange(s.changeHandler)}this._aBindingInfos.push(s);return o};c.prototype.calculatePath=function(t,e){var n=this.getBindingContext(),i=n&&n.getPath();if(t&&i&&!t.startsWith("/")){if(!i.endsWith("/")){i+="/"}t=i+t}return t};c.prototype.bindProp=function(t){var e=this.bind(this.calculatePath(t),"property");return e&&e.getExternalValue()};c.prototype.bindList=function(t){var e=this.bind(this.calculatePath(t),"list"),n=e&&e.getModel(),t=e&&e.getPath();return e&&n.getProperty(t)};c.prototype.createDOMElement=function(t,e,n){var i=new r(t);if(e){i.bindObject(e)}if(!n){this.addAggregation("controls",i)}return i};c.prototype.createControl=function(t,n,i,r){var o={};jQuery.each(t,function(t,e){o["data-"+s(t)]=e});var a=jQuery("<div></div>",o);var p=e._createControl(a.get(0),r);if(n){p.bindObject(n)}if(!i){this.addAggregation("controls",p)}return p};return c});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/tmpl/TemplateControlRenderer", function(){"use strict";var e={apiVersion:1};e.render=function(e,i){var n=i.isInline()||this.hasControlData;if(!n){e.openStart("div",i).openEnd()}var r=this.renderTemplate||i.getTemplateRenderer();if(r){r.apply(this,arguments)}if(!n){e.close("div")}};return e},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/tmpl/_parsePath", [],function(){"use strict";return function(t){var n,r=t.indexOf(">");if(r>0){n=t.substr(0,r);t=t.substr(r+1)}return{path:t,model:n}}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/AsyncHintsHelper", [],function(){"use strict";var r={};r.modifyUrls=function(r,u){function e(r,u){if(u===undefined){delete r.url}}[r.components,r.libs].forEach(function(r){if(Array.isArray(r)){r.forEach(function(r){if(typeof r!=="object"){return}if(typeof r.url==="string"){r.url=u(r.url);e(r,r.url)}else if(typeof r.url==="object"&&typeof r.url.url==="string"){r.url.url=u(r.url.url);e(r,r.url.url)}})}});return r};return r});
/*
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/DraftEnabledMockServer", ["sap/ui/thirdparty/jquery","sap/base/util/isEmptyObject"],function(jQuery,t){"use strict";return{_oDraftMetadata:{},_oConstants:{COM_SAP_VOCABULARIES_COMMON_V1_DRAFTROOT:"com.sap.vocabularies.Common.v1.DraftRoot",COM_SAP_VOCABULARIES_COMMON_V1_DRAFTNODE:"com.sap.vocabularies.Common.v1.DraftNode",COM_SAP_VOCABULARIES_COMMON_V1_SEMANTICKEY:"com.sap.vocabularies.Common.v1.SemanticKey",EMPTY_GUID:"00000000-0000-0000-0000-000000000000",SIBLINGENTITY_NAVIGATION:"SiblingEntity",DRAFT_ADMINISTRATIVE_DATA:"DraftAdministrativeData",DRAFT_ADMINISTRATIVE_DATA_UUID:"DraftAdministrativeDataUUID",ACTIVATION_ACTION:"ActivationAction",EDIT_ACTION:"EditAction",VALIDATE_ACTION:"ValidationFunction",PREPARE_ACTION:"PreparationAction"},handleDraft:function(t,a){var e=sap.ui.require("sap/ui/core/util/MockServer");var r=e._syncAjax;var o=function(t){var a=t.getParameter("oEntity");a.IsActiveEntity=false;a.HasActiveEntity=false;a.HasDraftEntity=false};var i=function(t){var a=t.getParameter("oXhr");var e=r({url:a.url,dataType:"json"}).data.d;for(var o=0;o<this._oDraftMetadata.draftNodes.length;o++){for(var i in this._mEntitySets[this._oDraftMetadata.draftRootName].navprops){if(this._mEntitySets[this._oDraftMetadata.draftRootName].navprops[i].to.entitySet===this._oDraftMetadata.draftNodes[o]){var s=r({url:e[i].__deferred.uri,dataType:"json"});if(s.data&&s.data.d&&s.data.d.results){var n;for(var f=0;f<s.data.d.results.length;f++){n=s.data.d.results[f];r({url:n.__metadata.uri,type:"DELETE"})}}}}}};if(t&&t.EntityContainer){var s=t.EntityContainer[Object.keys(t.EntityContainer)[0]];for(var n in s){var f=s[n];if(f[this._oConstants.COM_SAP_VOCABULARIES_COMMON_V1_DRAFTROOT]){this._oDraftMetadata.draftRootName=n;this._oDraftMetadata.annotations=t;this._oDraftMetadata.mockServerRootUri=a.getRootUri();if(f[this._oConstants.COM_SAP_VOCABULARIES_COMMON_V1_DRAFTROOT][this._oConstants.ACTIVATION_ACTION]){this._oDraftMetadata.draftRootActivationName=f[this._oConstants.COM_SAP_VOCABULARIES_COMMON_V1_DRAFTROOT][this._oConstants.ACTIVATION_ACTION].String}if(this._oDraftMetadata.draftRootActivationName){this._oDraftMetadata.draftRootActivationName=this._oDraftMetadata.draftRootActivationName.substring(this._oDraftMetadata.draftRootActivationName.lastIndexOf("/")+1)}this._oDraftMetadata.draftRootEditName=f[this._oConstants.COM_SAP_VOCABULARIES_COMMON_V1_DRAFTROOT][this._oConstants.EDIT_ACTION];this._oDraftMetadata.draftRootEditName=this._oDraftMetadata.draftRootEditName?this._oDraftMetadata.draftRootEditName.String:undefined;if(this._oDraftMetadata.draftRootEditName){this._oDraftMetadata.draftRootEditName=this._oDraftMetadata.draftRootEditName.substring(this._oDraftMetadata.draftRootEditName.lastIndexOf("/")+1)}this._oDraftMetadata.draftRootValidationName=f[this._oConstants.COM_SAP_VOCABULARIES_COMMON_V1_DRAFTROOT][this._oConstants.VALIDATE_ACTION];this._oDraftMetadata.draftRootValidationName=this._oDraftMetadata.draftRootValidationName?this._oDraftMetadata.draftRootValidationName.String:undefined;if(this._oDraftMetadata.draftRootValidationName){this._oDraftMetadata.draftRootValidationName=this._oDraftMetadata.draftRootValidationName.substring(this._oDraftMetadata.draftRootValidationName.lastIndexOf("/")+1)}this._oDraftMetadata.draftRootPreparationtionName=f[this._oConstants.COM_SAP_VOCABULARIES_COMMON_V1_DRAFTROOT][this._oConstants.PREPARE_ACTION];this._oDraftMetadata.draftRootPreparationtionName=this._oDraftMetadata.draftRootPreparationtionName?this._oDraftMetadata.draftRootPreparationtionName.String:undefined;if(this._oDraftMetadata.draftRootPreparationtionName){this._oDraftMetadata.draftRootPreparationtionName=this._oDraftMetadata.draftRootPreparationtionName.substring(this._oDraftMetadata.draftRootPreparationtionName.lastIndexOf("/")+1)}jQuery.extend(a,this);a.attachAfter(e.HTTPMETHOD.POST,o,this._oDraftMetadata.draftRootName);a.attachBefore(e.HTTPMETHOD.DELETE,i,this._oDraftMetadata.draftRootName);a.attachAfter(e.HTTPMETHOD.GET,this._fnDraftAdministrativeData,this._oDraftMetadata.draftRootName)}}}},_calcSemanticKeys:function(t,a){var e=[];for(var r in this._oDraftMetadata.annotations){if(r.lastIndexOf(a[t].type)>-1){e=this._oDraftMetadata.annotations[r][this._oConstants.COM_SAP_VOCABULARIES_COMMON_V1_SEMANTICKEY]||[];break}}var o=[];var i;for(var s=0;s<e.length;s++){i=e[s];for(var n in i){o.push(i[n])}}return o},_prepareDraftMetadata:function(t){var a=this;var e=sap.ui.require("sap/ui/core/util/MockServer");this._oDraftMetadata.draftNodes=[];this._oDraftMetadata.draftRootKey=t[this._oDraftMetadata.draftRootName].keys.filter(function(e){return a._calcSemanticKeys(a._oDraftMetadata.draftRootName,t).indexOf(e)<0})[0];var r=a._oDraftMetadata.annotations;var o=r.EntityContainer[Object.keys(r.EntityContainer)[0]];for(var i in o){var s=o[i];if(s[a._oConstants.COM_SAP_VOCABULARIES_COMMON_V1_DRAFTNODE]){this._oDraftMetadata.draftNodes.push(i)}}for(var n=0;n<this._oDraftMetadata.draftNodes.length;n++){this.attachAfter(e.HTTPMETHOD.GET,this._fnDraftAdministrativeData,this._oDraftMetadata.draftNodes[n])}},_fnDraftAdministrativeData:function(a){var e={};var r=a.getParameter("oFilteredData");if(!r){e=a.getParameter("oEntry");if(e.IsActiveEntity&&!e.HasDraftEntity){e[this._oConstants.DRAFT_ADMINISTRATIVE_DATA]=null}}else{if(r.results){r=r.results}else{if(t(r)){r=null;return}}for(var o=0;o<r.length;o++){e=r[o];if(e.IsActiveEntity&&!e.HasDraftEntity){e[this._oConstants.DRAFT_ADMINISTRATIVE_DATA]=null}}}},_handleDraftArtifacts:function(t){var a=this;var e=this._oMockdata;var r=e[this._oDraftMetadata.draftRootName];var o=function(t,a){return t.filter(function(t){return a.indexOf(t)<0})[0]};if(r.length===100){for(var i=0;i<r.length;i++){var s=r[i];if(i<25){s.IsActiveEntity=true;s.HasActiveEntity=false;s.HasDraftEntity=false;s[this._oDraftMetadata.draftRootKey]=this._oConstants.EMPTY_GUID;if(s[this._oConstants.DRAFT_ADMINISTRATIVE_DATA_UUID]){s[this._oConstants.DRAFT_ADMINISTRATIVE_DATA_UUID]=null}var n=[];var f=[];for(var d=0;d<this._oDraftMetadata.draftNodes.length;d++){f=this._calcSemanticKeys(this._oDraftMetadata.draftNodes[d],t);n=e[this._oDraftMetadata.draftNodes[d]];var _=t[this._oDraftMetadata.draftRootName];for(var D in _.navprops){var h=_.navprops[D];if(h.to.entitySet===this._oDraftMetadata.draftNodes[d]){var v=h.from.propRef.length;for(var u=0;u<v;u++){n[i][h.to.propRef[u]]=s[h.from.propRef[u]]}}}n[i].IsActiveEntity=true;n[i].HasActiveEntity=false;n[i].HasDraftEntity=false;n[i][this._oDraftMetadata.draftRootKey]=this._oConstants.EMPTY_GUID;if(n[i][this._oConstants.DRAFT_ADMINISTRATIVE_DATA_UUID]){n[i][this._oConstants.DRAFT_ADMINISTRATIVE_DATA_UUID]=null}var M=o(t[this._oDraftMetadata.draftNodes[d]].keys,f);n[i][M]=this._oConstants.EMPTY_GUID}}else if(i<50){s.IsActiveEntity=false;s.HasActiveEntity=false;s.HasDraftEntity=false;n=[];f=[];for(var d=0;d<this._oDraftMetadata.draftNodes.length;d++){f=this._calcSemanticKeys(this._oDraftMetadata.draftNodes[d],t);n=e[this._oDraftMetadata.draftNodes[d]];var _=t[this._oDraftMetadata.draftRootName];for(var D in _.navprops){var h=_.navprops[D];if(h.to.entitySet===this._oDraftMetadata.draftNodes[d]){var v=h.from.propRef.length;for(var u=0;u<v;u++){n[i][h.to.propRef[u]]=s[h.from.propRef[u]]}}}n[i].IsActiveEntity=false;n[i].HasActiveEntity=false;n[i].HasDraftEntity=false;M=o(t[this._oDraftMetadata.draftNodes[d]].keys,f)}}else if(i<75){var A=jQuery.extend(true,{},s);s.IsActiveEntity=true;s.HasActiveEntity=false;s.HasDraftEntity=true;s[this._oDraftMetadata.draftRootKey]=this._oConstants.EMPTY_GUID;n=[];f=[];for(var d=0;d<this._oDraftMetadata.draftNodes.length;d++){f=this._calcSemanticKeys(this._oDraftMetadata.draftNodes[d],t);n=e[this._oDraftMetadata.draftNodes[d]];var _=t[this._oDraftMetadata.draftRootName];for(var D in _.navprops){var h=_.navprops[D];if(h.to.entitySet===this._oDraftMetadata.draftNodes[d]){var v=h.from.propRef.length;for(var u=0;u<v;u++){n[i][h.to.propRef[u]]=s[h.from.propRef[u]]}}}n[i].IsActiveEntity=true;n[i].HasActiveEntity=false;n[i].HasDraftEntity=true;M=o(t[this._oDraftMetadata.draftNodes[d]].keys,f);n[i][M]=this._oConstants.EMPTY_GUID}A.IsActiveEntity=false;A.HasActiveEntity=true;A.HasDraftEntity=false;r[i+25]=A}}}var p=this._getRootUri();jQuery.each(t,function(t,r){jQuery.each(e[t],function(e,o){o.__metadata=o.__metadata||{};o.__metadata.uri=p+t+"("+a._createKeysString(r,o)+")";o.__metadata.type=r.schema+"."+r.type;jQuery.each(r.navprops,function(e){o[e]={__deferred:{uri:p+t+"("+a._createKeysString(r,o)+")/"+e}}})})})},_activate:function(t){var a=sap.ui.require("sap/ui/core/util/MockServer");var e=a._syncAjax;var r;var o=function(t,a){return t.filter(function(t){return a.indexOf(t)<0})[0]};for(var i=0;i<this._oDraftMetadata.draftNodes.length;i++){for(var s in this._mEntitySets[this._oDraftMetadata.draftRootName].navprops){if(this._mEntitySets[this._oDraftMetadata.draftRootName].navprops[s].to.entitySet===this._oDraftMetadata.draftNodes[i]){r=e({url:t[s].__deferred.uri,dataType:"json"});if(r.success&&r.data&&r.data.d&&r.data.d.results){var n;for(var f=0;f<r.data.d.results.length;f++){n=r.data.d.results[f];n.IsActiveEntity=true;n.HasActiveEntity=false;n.HasDraftEntity=false;n[this._oDraftMetadata.draftRootKey]=this._oConstants.EMPTY_GUID;var d=this._calcSemanticKeys(this._oDraftMetadata.draftNodes[i],this._mEntitySets);var _=o(this._mEntitySets[this._oDraftMetadata.draftNodes[i]].keys,d);n[_]=this._oConstants.EMPTY_GUID;e({url:n.__metadata.uri,type:"PATCH",data:JSON.stringify(n)})}}}}}t.IsActiveEntity=true;t.HasActiveEntity=false;t.HasDraftEntity=false;t[this._oDraftMetadata.draftRootKey]=this._oConstants.EMPTY_GUID;e({url:t.__metadata.uri,type:"PATCH",data:JSON.stringify(t)});return t},setRequests:function(a){var e=this;var r=sap.ui.require("sap/ui/core/util/MockServer");var o=r._syncAjax;a.push({method:"POST",path:new RegExp(e._oDraftMetadata.draftRootActivationName),response:function(t){var a=JSON.parse(t.requestBody);var r=[];for(var i in a){r.push(i+" eq "+a[i])}var s=o({url:e._oDraftMetadata.mockServerRootUri+e._oDraftMetadata.draftRootName+"?$filter="+r.join(" and "),dataType:"json"});if(!s.success||!s.data.d.results[0]){t.respond(404)}var n=s.data.d.results[0];if(n.IsActiveEntity){t.respond(400)}if(n.HasActiveEntity){var f=n.SiblingEntity.__deferred.uri;s=o({url:f,dataType:"json"});if(s.success&&s.data&&s.data.d.__metadata){var d=s.data.d;s=o({url:d.__metadata.uri,type:"DELETE"})}}n=e._activate(n);t.respondJSON(200,{},JSON.stringify({d:n}));return true}});if(e._oDraftMetadata.draftRootEditName){a.push({method:"POST",path:new RegExp(e._oDraftMetadata.draftRootEditName+"(\\?(.*))?"),response:function(a,r){var i=[];var s=JSON.parse(a.requestBody);if(s&&!t(s)){for(var n in s){i.push(n+" eq "+s[n])}}else{var f=decodeURIComponent(r).replace("?","&").split("&");for(var d in f){var _=f[d];var D=new RegExp("(.*)=(.*)");var h;if(_){h=D.exec(_);i.push(h[1]+" eq "+h[2])}}}var v=o({url:e._oDraftMetadata.mockServerRootUri+e._oDraftMetadata.draftRootName+"?$filter="+i.join(" and "),dataType:"json"});if(!v.success||!v.data.d.results[0]){a.respond(404)}var u=v.data.d.results[0];if(!u.IsActiveEntity||u.HasDraftEntity){a.respond(400)}var M=jQuery.extend(true,{},u);M.IsActiveEntity=false;M.HasActiveEntity=true;M.HasDraftEntity=false;M[e._oDraftMetadata.draftRootKey]=e._generatePropertyValue(e._oDraftMetadata.draftRootKey,"Guid");var A=e._getRootUri();var p=e._mEntitySets[e._oDraftMetadata.draftRootName];M.__metadata=M.__metadata||{};M.__metadata.uri=A+e._oDraftMetadata.draftRootName+"("+e._createKeysString(p,M)+")";M.__metadata.type=p.schema+"."+p.type;jQuery.each(p.navprops,function(t){M[t]={__deferred:{uri:A+e._oDraftMetadata.draftRootName+"("+e._createKeysString(p,M)+")/"+t}}});e._oMockdata[e._oDraftMetadata.draftRootName].push(M);v=o({url:u.__metadata.uri,type:"PATCH",data:JSON.stringify({HasDraftEntity:true})});a.respondJSON(200,{},JSON.stringify({d:M}));return true}})}if(e._oDraftMetadata.draftRootValidationName){a.push({method:"GET",path:new RegExp(e._oDraftMetadata.draftRootValidationName+"(\\?(.*))?"),response:function(t,a){var o=e._oDraftMetadata.draftRootValidationName;e.fireEvent(r.HTTPMETHOD.GET+o+":before",{oXhr:t,sUrlParams:a});e.fireEvent(r.HTTPMETHOD.GET+":before",{oXhr:t,sUrlParams:a});var i={d:{}};i.d[o]={__metadata:{type:"ValidationResult"},IsValid:true};e.fireEvent(r.HTTPMETHOD.GET+o+":after",{oXhr:t,oResult:i});e.fireEvent(r.HTTPMETHOD.GET+":after",{oXhr:t,oResult:i});t.respondJSON(200,{},JSON.stringify(i));return true}})}if(e._oDraftMetadata.draftRootPreparationtionName){a.push({method:"POST",path:new RegExp(e._oDraftMetadata.draftRootPreparationtionName),response:function(t){e.fireEvent(r.HTTPMETHOD.POST+e._oDraftMetadata.draftRootPreparationtionName+":before",{oXhr:t});e.fireEvent(r.HTTPMETHOD.POST+":before",{oXhr:t});var a=JSON.parse(t.requestBody);var i=[];for(var s in a){i.push(s+" eq "+a[s])}var n=o({url:e._oDraftMetadata.mockServerRootUri+e._oDraftMetadata.draftRootName+"?$filter="+i.join(" and "),dataType:"json"});if(!n.success||!n.data.d.results[0]){t.respond(404)}var f=n.data.d.results[0];e.fireEvent(r.HTTPMETHOD.POST+e._oDraftMetadata.draftRootPreparationtionName+":after",{oXhr:t,oEntry:f});e.fireEvent(r.HTTPMETHOD.POST+":after",{oXhr:t,oEntry:f});t.respondJSON(200,{},JSON.stringify({d:f}));return true}})}r.prototype.setRequests.apply(this,[a])},_generateMockdata:function(t,a){var e=sap.ui.require("sap/ui/core/util/MockServer");e.prototype._generateMockdata.apply(this,[t,a]);this._handleDraftArtifacts(t)},_loadMockdata:function(t,a){var e=sap.ui.require("sap/ui/core/util/MockServer");e.prototype._loadMockdata.apply(this,[t,a]);this._handleDraftArtifacts(t)},_resolveNavigation:function(t,a,e,r){var o=sap.ui.require("sap/ui/core/util/MockServer");var i=o.prototype._resolveNavigation.apply(this,[t,a,e,r]);if(e===this._oConstants.SIBLINGENTITY_NAVIGATION){if(r&&r.IsActiveEntity){i.splice(0,1)}else{i.length>1?i.splice(1,1):i.splice(0,1)}}else if(e===this._oConstants.DRAFT_ADMINISTRATIVE_DATA){if(r){if(r.IsActiveEntity&&!r.HasDraftEntity){i[0]=null}}else{i[0]=null}}return i},_findEntitySets:function(t){var a=sap.ui.require("sap/ui/core/util/MockServer");var e=a.prototype._findEntitySets.apply(this,[t]);this._prepareDraftMetadata(e);return e},getEntitySetData:function(t){var a=sap.ui.require("sap/ui/core/util/MockServer");var e=a.prototype.getEntitySetData.apply(this,[t]);var r=function(){return e};if(t===this._oDraftMetadata.draftRootName){this._fnDraftAdministrativeData({getParameter:r});return e}for(var o=0;o<this._oDraftMetadata.draftNodes.length;o++){if(t===this._oDraftMetadata.draftNodes[o]){this._fnDraftAdministrativeData({getParameter:r});return e}}return e}}},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/Export", ["sap/ui/core/Control","./ExportRow","./File","sap/base/Log","./ExportColumn","./ExportType"],function(e,t,r,n){"use strict";function i(e,t){if(e){return function(){return e.apply(t,arguments)}}else{return e}}function o(e){n.warning("Usage of deprecated jQuery Promise method: '"+e+"'. "+"Please use the standard Promise methods 'then' / 'catch' instead!","","sap.ui.core.util.Export")}function s(e,t){var r=new Promise(e);t=t||r;var n=false,s=false;r.then(function(e){n=true;return e},function(e){s=true;throw e});var a={then:r.then,catch:r["catch"]};function l(e){e.then=function(r,n){var o=[i(r,t),i(n,t)];return l(a.then.apply(e,o),t)};e["catch"]=function(r){var n=[i(r,t)];return l(a["catch"].apply(e,n),t)};[{jq:"done",es6:"then"},{jq:"fail",es6:"catch"},{jq:"always",es6:"then"}].forEach(function(r){e[r.jq]=function(){o(r.jq);var n=null;Array.prototype.concat.apply([],arguments).forEach(function(o){var s=i(o,t);var l=function(e){s.apply(this,arguments);return e};var p=[l];if(r.jq==="always"){p.push(l)}if(!n){n=a[r.es6].apply(e,p)}else{n=n[r.es6].apply(n,p)}});return l(n,t)}});e.pipe=function(t,r){o("pipe");return e.then(t,r)};e.state=function(){o("state");if(n){return"resolved"}else if(s){return"rejected"}else{return"pending"}};return e}return l(r)}var a=e.extend("sap.ui.core.util.Export",{metadata:{publicMethods:["generate","saveFile"],library:"sap.ui.core",aggregations:{exportType:{type:"sap.ui.core.util.ExportType",multiple:false},columns:{type:"sap.ui.core.util.ExportColumn",multiple:true,bindable:"bindable"},rows:{type:"sap.ui.core.util.ExportRow",multiple:true,bindable:"bindable"},_template:{type:"sap.ui.core.util.ExportRow",multiple:false,visibility:"hidden"}}},renderer:null});a.getMetadata().getAggregation("rows")._doesNotRequireFactory=true;a.prototype.init=function(){this._oPromise=null;this._fnResolvePromise=null;this._oRowBindingArgs=null};a.prototype.exit=function(){delete this._oPromise;delete this._fnResolvePromise;delete this._oRowBindingArgs};a.prototype._createRowTemplate=function(){var e=new t(this.getId()+"-row"),r=this.getColumns();for(var n=0,i=r.length;n<i;n++){var o=r[n].getTemplate();if(o){e.addCell(o.clone("col"+n))}}return e};a.prototype.bindAggregation=function(t,r){if(t==="rows"){this._oRowBindingArgs=arguments;return this}return e.prototype.bindAggregation.apply(this,arguments)};a.prototype.updateRows=function(e){if(e==="change"&&this._fnResolvePromise){var t=this.getExportType()._generate(this);this.destroyAggregation("_template");this.unbindAggregation("rows");this._fnResolvePromise(t);this._oPromise=null;this._fnResolvePromise=null}};a.prototype.generate=function(){var t=this;if(!this._oPromise){this._oPromise=s(function(r,n){t._fnResolvePromise=r;if(!t.hasModel()){n("Generate is not possible beause no model was set.")}else{var i=t._createRowTemplate();t.setAggregation("_template",i,true);e.prototype.bindAggregation.apply(t,t._oRowBindingArgs);if(t.getBinding("rows")){t.getBinding("rows").getContexts(0,t.getBinding("rows").getLength())}}},this)}return this._oPromise};a.prototype.saveFile=function(e){return this.generate().then(function(t){var n=this.getExportType();r.save(t,e||"data",n.getFileExtension(),n.getMimeType(),n.getCharset(),n.getByteOrderMark())})};return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/ExportCell", ["sap/ui/core/Element"],function(e){"use strict";var t=e.extend("sap.ui.core.util.ExportCell",{metadata:{library:"sap.ui.core",properties:{content:"string"}}});return t});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/ExportColumn", ["sap/ui/base/ManagedObject","./ExportCell"],function(e){"use strict";var t=e.extend("sap.ui.core.util.ExportColumn",{metadata:{library:"sap.ui.core",properties:{name:"string"},aggregations:{template:{type:"sap.ui.core.util.ExportCell",multiple:false}}}});return t});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/ExportRow", ["sap/ui/base/ManagedObject","./ExportCell"],function(e){"use strict";var t=e.extend("sap.ui.core.util.ExportRow",{metadata:{library:"sap.ui.core",aggregations:{cells:{type:"sap.ui.core.util.ExportCell",multiple:true}}}});return t});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/ExportType", ["sap/ui/base/ManagedObject"],function(e){"use strict";var t=e.extend("sap.ui.core.util.ExportType",{metadata:{library:"sap.ui.core",properties:{fileExtension:"string",mimeType:"string",charset:"string",byteOrderMark:{type:"boolean",defaultValue:undefined}}}});t.prototype.init=function(){this._oExport=null};t.prototype._generate=function(e){this._oExport=e;var t=this.generate();this._oExport=null;return t};t.prototype.generate=function(){return""};t.prototype.getColumnCount=function(){if(this._oExport){return this._oExport.getColumns().length}return 0};t.prototype.getRowCount=function(){if(this._oExport&&this._oExport.getBinding("rows")){return this._oExport.getBinding("rows").getLength()}return 0};t.prototype.columnGenerator=function(){var e=0,t=this._oExport.getColumns(),n=t.length;return{next:function(){if(e<n){var r=e;e++;return{value:{index:r,name:t[r].getName()},done:false}}else{return{value:undefined,done:true}}}}};t.prototype.cellGenerator=function(){var e=0,t=this._oExport.getAggregation("_template"),n=t.getCells(),r=n.length;return{next:function(){if(e<r){var t=e;e++;var o={};n[t].getCustomData().forEach(function(e){o[e.getKey()]=e.getValue()});return{value:{index:t,content:n[t].getContent(),customData:o},done:false}}else{return{value:undefined,done:true}}}}};t.prototype.rowGenerator=function(){var e=this,t=0,n=this._oExport,r=n.getBinding("rows"),o=n.getBindingInfo("rows"),i=r.getContexts(0,r.getLength()),u=i.length,a=n.getAggregation("_template");return{next:function(){if(t<u){var n=t;t++;a.setBindingContext(i[n],o.model);return{value:{index:n,cells:e.cellGenerator()},done:false}}else{return{value:undefined,done:true}}}}};return t});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/ExportTypeCSV", ["./ExportType"],function(e){"use strict";var t=/[\r\n"\t;,]/;var r=/^[=\+\-@](?![\d.,]+(?:e[\+-]?\d+)?$)/i;var a=e.extend("sap.ui.core.util.ExportTypeCSV",{metadata:{library:"sap.ui.core",properties:{separatorChar:{type:"string",defaultValue:","}}}});a.MAX_CELL_LENGTH=32760;a.prototype.setSeparatorChar=function(e){var e=this.validateProperty("separatorChar",e);if(e.length>1){throw new Error('Value of property "separatorChar" needs to be exactly one character or empty. '+'"'+e+'" is '+e.length+" characters long.")}return this.setProperty("separatorChar",e)};a.prototype.init=function(){this.setProperty("fileExtension","csv",true);this.setProperty("mimeType","text/csv",true);this.setProperty("charset","utf-8",true)};a.prototype.escapeContent=function(e){if(!e){return e}if(e.length>a.MAX_CELL_LENGTH){e=e.slice(0,a.MAX_CELL_LENGTH)}if(r.test(e)){e="'"+e}var o=e.indexOf(this.getSeparatorChar())>-1;if(o||t.test(e)){e=e.replace(/"/g,'""');e='"'+e+'"'}return e};a.prototype.generate=function(){var e=[];this.generateColumns(e);this.generateRows(e);return e.join("\r\n")};a.prototype.generateColumns=function(e){var t=[],r=this.columnGenerator(),a;while(!(a=r.next()).done){t.push(this.escapeContent(a.value.name))}e.push(t.join(this.getSeparatorChar()))};a.prototype.generateRows=function(e){var t=this.rowGenerator(),r;while(!(r=t.next()).done){var a=[];var o=r.value.cells,n;while(!(n=o.next()).done){a.push(this.escapeContent(n.value.content))}e.push(a.join(this.getSeparatorChar()))}};return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/File", ["sap/ui/thirdparty/jquery"],function(jQuery){"use strict";var e={save:function(e,o,n,r,a,t){var i=o+"."+n;if(typeof t==="undefined"&&a==="utf-8"&&n==="csv"){t=true}if(t===true&&a==="utf-8"){e="\ufeff"+e}if(window.Blob){var d="data:"+r;if(a){d+=";charset="+a}var w=new window.Blob([e],{type:d});if(window.navigator.msSaveOrOpenBlob){window.navigator.msSaveOrOpenBlob(w,i)}else{var u=window.URL||window.webkitURL;var f=u.createObjectURL(w);var l=window.document.createElement("a");if("download"in l){var v=jQuery(document.body);var p=jQuery(l).attr({download:i,href:f,style:"display:none"});v.append(p);p.get(0).click();p.remove()}else{e=encodeURI(e);var c=window.open(d+","+e);c.opener=null;if(!c){throw new Error("Could not download the file, please deactivate your pop-up blocker.")}}}}}};return e},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/LibraryInfo", ["sap/ui/base/Object","sap/base/Log","sap/base/util/fetch","sap/base/util/Version","sap/ui/thirdparty/jquery"],function(e,t,r,a,jQuery){"use strict";var n=e.extend("sap.ui.core.util.LibraryInfo",{constructor:function(){e.apply(this);this._oLibInfos={}},destroy:function(){e.prototype.destroy.apply(this,arguments);this._oLibInfos={}},getInterface:function(){return this}});n.prototype._loadLibraryMetadata=function(e,a){e=e.replace(/\//g,".");if(this._oLibInfos[e]){setTimeout(a.bind(window,this._oLibInfos[e]),0);return}var n=this,o,i,s=/themelib_(.*)/i.exec(e),l;if(!s){i=".library";o=sap.ui.require.toUrl(e.replace(/\./g,"/"))+"/"}else{i=".theme";o=sap.ui.require.toUrl("sap/ui/core/themes/"+s[1]+"/")}l=typeof n.getResourceUrl==="function"?n.getResourceUrl(o):o;function f(r){t.error("failed to load library details from '"+o+i+": "+r.message+", "+r);n._oLibInfos[e]={name:e,data:null,url:o};a(n._oLibInfos[e])}r(l+i,{headers:{Accept:r.ContentTypes.XML}}).then(function(t){if(t.ok){return t.text().then(function(t){var r=new DOMParser;var i=r.parseFromString(t,"text/xml");n._oLibInfos[e]={name:e,data:i,url:o};a(n._oLibInfos[e])})}else{throw new Error(t.statusText||t.status)}}).catch(f)};n.prototype._getLibraryInfo=function(e,t){this._loadLibraryMetadata(e,function(e){var r={libs:[],library:e.name,libraryUrl:e.url};if(e.data){var a=jQuery(e.data);r.vendor=a.find("vendor").text();r.copyright=a.find("copyright").text();r.version=a.find("version").text();r.documentation=a.find("documentation").text();r.releasenotes=a.find("releasenotes").attr("url");r.componentInfo=n.prototype._getLibraryComponentInfo(a)}t(r)})};n.prototype._getThirdPartyInfo=function(e,t){this._loadLibraryMetadata(e,function(e){var r={libs:[],library:e.name,libraryUrl:e.url};if(e.data){var a=jQuery(e.data).find("appData").find("thirdparty").children();a.each(function(t,a){if(a.nodeName==="lib"){var n=jQuery(a);var o=n.children("license");r.libs.push({displayName:n.attr("displayName"),homepage:n.attr("homepage"),license:{url:o.attr("url"),type:o.attr("type"),file:e.url+o.attr("file")}})}})}t(r)})};n.prototype._getDocuIndex=function(e,a){var n=this;this._loadLibraryMetadata(e,function(e){var o=e.name,i=e.url,s={docu:{},library:o,libraryUrl:i};if(!e.data){a(s);return}var l=jQuery(e.data).find("appData").find("documentation");var f=l.attr("indexUrl");if(!f){a(s);return}if(l.attr("resolve")=="lib"){f=e.url+f}if(typeof n.getResourceUrl==="function"){f=n.getResourceUrl(f)}r(f,{headers:{Accept:r.ContentTypes.JSON}}).then(function(e){if(e.ok){e.json().then(function(e){e.library=o;e.libraryUrl=i;a(e)})}else{throw new Error(e.statusText||e.status)}}).catch(function(e){t.error("failed to load library docu from '"+f+"': "+e.message+", "+e);a(s)})})};n.prototype._getReleaseNotes=function(e,n,o){var i=this;this._loadLibraryMetadata(e,function(s){if(!s.data){o({});return}var l=n.split(".").length===3&&!/-SNAPSHOT/.test(n);var f=a(n);var u=f.getMajor();var c=f.getMinor();var p=f.getPatch();var d=jQuery(s.data).find("appData").find("releasenotes");var h=d.attr("url");var y=typeof i.getResourceUrl==="function";if(!h){t.warning("failed to load release notes for library "+e);o({});return}if(f.getSuffix()==="-SNAPSHOT"){if(c%2!=0){c=c+1;p=0}n=u+"."+c+"."+p}var m=y?i.getResourceUrl(""):window.location.href,g=/\/\d\.\d+\.\d+\//;if(d.attr("resolve")=="lib"){if(g.test(m)||l===false){h=s.url+h}else{h="{major}.{minor}.{patch}/"+s.url+h}}h=h.replace(/\{major\}/g,u);h=h.replace(/\{minor\}/g,c);h=h.replace(/\{patch\}/g,p);if(y){h=i.getResourceUrl(h)}r(h,{headers:{Accept:r.ContentTypes.JSON}}).then(function(e){if(e.ok){return e.json().then(function(e){o(e,n)})}else{throw new Error(e.statusText||e.status)}}).catch(function(r){if(r.name==="SyntaxError"){t.error("failed to parse release notes for library '"+e+", "+r)}else{t.warning("failed to load release notes for library '"+e+", "+r)}o({})})})};n.prototype._getLibraryComponentInfo=function(e){var t={};var r=[];var a="";e.find("ownership > component").each(function(e,t){if(t.childElementCount===0){a=t.textContent}else{var n=t.getElementsByTagName("name");if(n&&n.length>0){n=n[0].textContent;var o=t.getElementsByTagName("module");if(n&&o&&o.length>0){var i=[];for(var s=0;s<o.length;s++){var l=o[s].textContent.replace(/\//g,".");if(l){i.push(l)}}if(i.length>0){r.push({component:n,modules:i})}}}}});t["defaultComponent"]=a;if(r&&r.length>0){t["specialCases"]=r}return t};n.prototype._getActualComponent=function(e,r){function a(e,t){e=e.toLowerCase();t=t.toLowerCase();return e===t||t.match(/\*$/)&&e.indexOf(t.slice(0,-1))===0||t.match(/\.\*$/)&&e===t.slice(0,-2)}if(r){for(var n in e){if(!e[n]){t.error("No library information deployed for "+n);continue}var o;if(r.indexOf(n)===0){o=e[n].defaultComponent}var i=e[n].specialCases;if(i){for(var s=0;s<i.length;s++){var l=i[s].modules;for(var f=0;f<l.length;f++){if(a(r,l[f])){o=i[s].component}}}}if(o){return o}}}};n.prototype._getDefaultComponent=function(e){return e&&e.componentInfo&&e.componentInfo.defaultComponent};return n});
/*
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/MockServer", ["sap/base/Log","sap/base/util/isEmptyObject","sap/ui/base/ManagedObject","sap/ui/core/util/DraftEnabledMockServer","sap/ui/model/odata/ODataMetadata","sap/ui/thirdparty/jquery","sap/ui/thirdparty/sinon"],function(e,t,r,n,s,jQuery,a){"use strict";const o=/T.*(\+|\-|Z)/;const i=/(\.\d{3})\d+/;var u=r.extend("sap.ui.core.util.MockServer",{constructor:function(e,t){r.apply(this,arguments);u._aServers.push(this)},metadata:{library:"sap.ui.core",properties:{rootUri:"string",recordRequests:{type:"boolean",defaultValue:true},requests:{type:"object[]",defaultValue:[]}}},_oServer:null,_aFilter:null,_oMockdata:null,_oMetadata:null,_sMetadataUrl:null,_sMockdataBaseUrl:null,_mEntitySets:null,_oErrorMessages:{INVALID_SYSTEM_QUERY_OPTION_VALUE:"Invalid system query options value",IS_NOT_A_VALID_SYSTEM_QUERY_OPTION:"## is not a valid system query option",URI_VIOLATING_CONSTRUCTION_RULES:"The URI is violating the construction rules defined in the Data Services specification",UNSUPPORTED_FORMAT_VALUE:"Unsupported format value. Only json format is supported",MALFORMED_SYNTAX:"The Data Services Request could not be understood due to malformed syntax",RESOURCE_NOT_FOUND:"Resource not found",INVALID_SORTORDER_DETECTED:"Invalid sortorder ## detected",PROPERTY_NOT_FOUND:"Property ## not found",INVALID_FILTER_QUERY_STATEMENT:"Invalid filter query statement",INVALID_FILTER_OPERATOR:"Invalid $filter operator ##",RESOURCE_NOT_FOUND_FOR_SEGMENT:"Resource not found for the segment ##",MALFORMED_URI_LITERAL_SYNTAX_IN_KEY:"Malformed URI literal syntax in key ##",INVALID_KEY_NAME:"Invalid key name in key predicate. Expected name is ##",INVALID_KEY_PREDICATE_QUANTITY:"Invalid key predicate. The quantity of provided keys does not match the expected value",INVALID_KEY_TYPE:"Invalid key predicate. The key literal for key property ## does not match its type."},_oRandomSeed:{}});u.prototype._getPseudoRandomNumber=function(e){if(!this._oRandomSeed){this._oRandomSeed={}}if(!this._oRandomSeed.hasOwnProperty(e)){this._oRandomSeed[e]=0}this._oRandomSeed[e]=(this._oRandomSeed[e]+11)*25214903917%0xffffffffffff;return this._oRandomSeed[e]/0xffffffffffff};u.prototype._resetPseudoRandomNumberGenerator=function(){this._oRandomSeed={}};u.prototype.start=function(){this._oServer=u._getInstance();this._aFilters=[];var e=this.getRequests();var t=this;e.forEach(function(e){var r;if(t.getRecordRequests()===false&&e.response){r=function(){e.response.apply(this,arguments);t._oServer.requests=[]}}else{r=e.response}t._addRequestHandler(e.method,e.path,r)})};u.prototype.stop=function(){if(this.isStarted()){this._removeAllRequestHandlers();this._removeAllFilters();this._oServer=null}};u.prototype.attachBefore=function(e,t,r){r=r?r:"";this.attachEvent(e+r+":before",t)};u.prototype.attachAfter=function(e,t,r){r=r?r:"";this.attachEvent(e+r+":after",t)};u.prototype.detachBefore=function(e,t,r){r=r?r:"";this.detachEvent(e+r+":before",t)};u.prototype.detachAfter=function(e,t,r){r=r?r:"";this.detachEvent(e+r+":after",t)};u.prototype.isStarted=function(){return!!this._oServer};u.prototype.getEntitySetData=function(t){var r=this;var n;if(this._oMockdata&&this._oMockdata.hasOwnProperty(t)){n=jQuery.extend(true,[],r._oMockdata[t])}else{e.error("Unrecognized EntitySet name: "+t)}return n};u.prototype.setEntitySetData=function(t,r){if(this._oMockdata&&this._oMockdata.hasOwnProperty(t)){this._oMockdata[t]=r}else{e.error("Unrecognized EntitySet name: "+t)}};u.prototype._applyQueryOnCollection=function(e,t,r,n){var s=t.split("=");var a=s[1];if(a===""){return}if(a.lastIndexOf(",")===a.length-1){this._logAndThrowMockServerCustomError(400,this._oErrorMessages.URI_VIOLATING_CONSTRUCTION_RULES)}switch(s[0]){case"$top":if(!new RegExp(/^\d+$/).test(a)){this._logAndThrowMockServerCustomError(400,this._oErrorMessages.INVALID_SYSTEM_QUERY_OPTION_VALUE)}e.results=e.results.slice(0,a);break;case"$skip":if(!new RegExp(/^\d+$/).test(a)){this._logAndThrowMockServerCustomError(400,this._oErrorMessages.INVALID_SYSTEM_QUERY_OPTION_VALUE)}e.results=e.results.slice(a,e.results.length);break;case"$orderby":e.results=this._getOdataQueryOrderby(e.results,a,r);break;case"$filter":e.results=this._recursiveOdataQueryFilter(e.results,a);break;case"search-focus":break;case"search":var o="";for(var i=0;i<n.length;i++){if(n[i].indexOf("search-focus")!=-1){o=n[i].split("=")[1];break}}e.results=this._recursiveOdataQuerySearch(e.results,a,o,r);break;case"$select":e.results=this._getOdataQuerySelect(e.results,a,r);break;case"$inlinecount":var u=this._getOdataInlineCount(e.results,a);if(u){e.__count=u}break;case"$expand":e.results=this._getOdataQueryExpand(e.results,a,r);break;case"$format":e.results=this._getOdataQueryFormat(e.results,a);break;default:this._logAndThrowMockServerCustomError(400,this._oErrorMessages.IS_NOT_A_VALID_SYSTEM_QUERY_OPTION,s[0])}};u.prototype._applyQueryOnEntry=function(e,t,r){var n=t.split("=");var s=n[1];if(s===""){return}if(s.lastIndexOf(",")===s.length-1){this._logAndThrowMockServerCustomError(400,this._oErrorMessages.URI_VIOLATING_CONSTRUCTION_RULES)}switch(n[0]){case"$filter":return this._recursiveOdataQueryFilter([e],s)[0];case"$select":return this._getOdataQuerySelect([e],s,r)[0];case"$expand":return this._getOdataQueryExpand([e],s,r)[0];case"$format":return this._getOdataQueryFormat([e],s);default:this._logAndThrowMockServerCustomError(400,this._oErrorMessages.IS_NOT_A_VALID_SYSTEM_QUERY_OPTION,n[0])}};u.prototype._getOdataQueryOrderby=function(e,t,r){var n=t.split(",");var s=this;jQuery.each(n,function(e,t){n[e]=s._trim(t)});var a=function e(t,a){for(var o=0;o<n.length;o++){var i=n[o].split(" ");var u=1;if(i.length>1){switch(i[1]){case"asc":u=1;break;case"desc":u=-1;break;default:s._logAndThrowMockServerCustomError(400,s._oErrorMessages.INVALID_SORTORDER_DETECTED,i[1])}}var f,c;var d=i[0].indexOf("/");if(d!==-1){f=i[0].substring(d+1);c=i[0].substring(0,d);if(!t[c].hasOwnProperty(f)){var p=false;var l=[];if(c){var h=s._mEntitySets[r].navprops[c].to.entitySet;l=s._mEntityTypes[s._mEntitySets[h].type].properties;for(var o=0;o<l.length;o++){if(l[o].name===f){p=true;break}}}if(!p){s._logAndThrowMockServerCustomError(400,s._oErrorMessages.PROPERTY_NOT_FOUND,f)}}if(t[c][f]<a[c][f]){return-1*u}if(t[c][f]>a[c][f]){return 1*u}}else{f=i[0];if(!t.hasOwnProperty(f)){s._logAndThrowMockServerCustomError(400,s._oErrorMessages.PROPERTY_NOT_FOUND,f)}if(t[f]<a[f]){return-1*u}if(t[f]>a[f]){return 1*u}}}return 0};return e.sort(a)};u.prototype._arrayUnique=function(e){var t=e.concat();for(var r=0;r<t.length;++r){for(var n=r+1;n<t.length;++n){if(t[r]===t[n]){t.splice(n--,1)}}}return t};u.prototype._getBracketIndices=function(e){var t=[];var r=0;var n,s=0;for(var a=0;a<e.length;a++){if(e[a]==="("){if(/[substringof|endswith|startswith]$/.test(e.substring(0,a))){++r}else{t.push(e[a]);if(n===undefined){n=a}}}else if(e[a]===")"){if(!r){t.pop();s=a;if(t.length===0){return{start:n,end:s}}}else{--r}}}return{start:n,end:s}};u.prototype._recursiveOdataQueryFilter=function(e,t){var r=this._getBracketIndices(t);if(r.start===0&&r.end===t.length-1){t=this._trim(t.substring(r.start+1,r.end));return this._recursiveOdataQueryFilter(e,t)}var n=/([^substringof|endswith|startswith]|^)\((.*)\)/,s,a;var o;if(n.test(t)){var i=t.substring(r.start,r.end+1);var u=new RegExp("(.*) +(or|and) +("+this._trim(this._escapeStringForRegExp(i))+".*)");if(r.start===0){u=new RegExp("("+this._trim(this._escapeStringForRegExp(i))+") +(or|and) +(.*)")}var f=u.exec(t);if(f===null){return this._getOdataQueryFilter(e,this._trim(t))}var c=f[1];o=f[2];var d=f[3];var p=this._recursiveOdataQueryFilter(e,c);if(o==="or"){s=this._recursiveOdataQueryFilter(e,d);return this._arrayUnique(p.concat(s))}if(o==="and"){return this._recursiveOdataQueryFilter(p,d)}}else{a=t.split(/ +and | or +/);if(a.length===1){return this._getOdataQueryFilter(e,this._trim(t))}var l=this._recursiveOdataQueryFilter(e,a[0]);var h;for(var v=1;v<a.length;v++){h=new RegExp(this._trim(this._escapeStringForRegExp(a[v-1]))+" +(and|or) +"+this._trim(this._escapeStringForRegExp(a[v])));o=h.exec(t)[1];if(o==="or"){s=this._recursiveOdataQueryFilter(e,a[v]);l=this._arrayUnique(l.concat(s))}if(o==="and"){l=this._recursiveOdataQueryFilter(l,a[v])}}return l}};u.prototype._getOdataQueryFilter=function(t,r){if(t.length===0){return t}var n=new RegExp("(.*) (eq|ne|gt|lt|le|ge) (.*)");var s=new RegExp("(endswith|startswith|substringof)\\((.*)");var a=null;var o=n.exec(r);if(o){a=o[2]}else{o=s.exec(r);if(o){a=o[1]}else{this._logAndThrowMockServerCustomError(400,this._oErrorMessages.INVALID_FILTER_QUERY_STATEMENT)}}var i=this;var u=function(s,a,o,u){var f,c,d;if(!s){f=n.exec(r);c=i._trim(f[a+1]);d=i._trim(f[o+1])}else{var p=new RegExp("(substringof|startswith|endswith)\\(([^\\)]*),(.*)\\)");f=p.exec(r);c=i._trim(f[a+2]);d=i._trim(f[o+2])}if(/^\(.+\)$/.test(c)){c=c.replace(/^\(|\)$/g,"")}if(c.indexOf("datetime")===0){c=i._getJsonDate(c)}else if(c.indexOf("guid")===0){c=c.substring(5,c.length-1)}else if(c==="true"){c=true}else if(c==="false"){c=false}else if(i._isValidNumber(c)){c=parseFloat(c)}else if(c.charAt(0)==="'"&&c.charAt(c.length-1)==="'"){c=c.substr(1,c.length-2)}var l=d.indexOf("/");if(l!==-1){var h=d.substring(l+1);var v=d.substring(0,l);if(t[0][v]){if(!t[0][v].hasOwnProperty(h)){var _=i._oErrorMessages.PROPERTY_NOT_FOUND.replace("##","'"+h+"'");e.error("MockServer: navigation property '"+v+"' was not expanded, so "+_);return t}}else{i._logAndThrowMockServerCustomError(400,i._oErrorMessages.PROPERTY_NOT_FOUND,d)}return u(d,c,v,h)}else{if(!t[0].hasOwnProperty(d)){i._logAndThrowMockServerCustomError(400,i._oErrorMessages.PROPERTY_NOT_FOUND,d)}return u(d,c)}};switch(a){case"substringof":return u(true,0,1,function(e,r,n,s){return t.filter(function(t){if(n&&s){return typeof t[n][s]==="string"&&t[n][s].indexOf(r)!==-1}return typeof t[e]==="string"&&t[e].indexOf(r)!==-1})});case"startswith":return u(true,1,0,function(e,r,n,s){return t.filter(function(t){if(n&&s){return typeof t[n][s]==="string"&&t[n][s].indexOf(r)===0}return typeof t[e]==="string"&&t[e].indexOf(r)===0})});case"endswith":return u(true,1,0,function(e,r,n,s){return t.filter(function(t){if(n&&s){return typeof t[n][s]==="string"&&t[n][s].indexOf(r)===t[n][s].length-r.length}return typeof t[e]==="string"&&t[e].indexOf(r)===t[e].length-r.length})});case"eq":return u(false,2,0,function(e,r,n,s){return t.filter(function(t){if(n&&s){return t[n][s]===r}return t[e]===r})});case"ne":return u(false,2,0,function(e,r,n,s){return t.filter(function(t){if(n&&s){return t[n][s]!==r}return t[e]!==r})});case"gt":return u(false,2,0,function(e,r,n,s){return t.filter(function(t){if(n&&s){return t[n][s]>r}return t[e]>r})});case"lt":return u(false,2,0,function(e,r,n,s){return t.filter(function(t){if(n&&s){return t[n][s]<r}return t[e]<r})});case"ge":return u(false,2,0,function(e,r,n,s){return t.filter(function(t){if(n&&s){return t[n][s]>=r}return t[e]>=r})});case"le":return u(false,2,0,function(e,r,n,s){return t.filter(function(t){if(n&&s){return t[n][s]<=r}return t[e]<=r})});default:this._logAndThrowMockServerCustomError(400,i._oErrorMessages.INVALID_FILTER_OPERATOR,a)}};u.prototype._recursiveOdataQuerySearch=function(e,t,r,n){var s="";if(r==""||r==undefined){for(var a=0;a<this._mEntitySets[n].keys.length;a++){if(a!=0){s=s+" or "}s=s+"startswith("+this._mEntitySets[n].keys[a]+",'"+t+"')"}}else{s="substringof('"+t+"',"+r+")"}return this._recursiveOdataQueryFilter(e,s)};u.prototype._getOdataQuerySelect=function(e,t,r){var n=this;var s=t.split(",");var a=[];var o=e[0]?e[0][s[0].split("/")[0]]:null;if(!(o!=null&&o.results&&o.results.length>0)){var i=function(e,t,s,a){jQuery.each(e,function(e,o){if(t["__metadata"]){s["__metadata"]=t["__metadata"]}if(o.indexOf("/")>-1){var u=o.split("/");var f=u[0];var c=u.splice(1).join("/");s[f]=s[f]||{};if(t[f]&&t[f].results){var d=s[f].results=s[f].results||[];jQuery.each(t[f].results,function(e,t){d[e]=i([c],t,d[e]||{},f)})}else{s[f]=i([c],t[f],s[f]||{},f)}}else{if(t&&!t.hasOwnProperty(o)){var p=false;var l=[];if(a){var h=n._mEntitySets[r].navprops[a].to.entitySet;l=n._mEntityTypes[n._mEntitySets[h].type].properties;for(var e=0;e<l.length;e++){if(l[e].name===o){p=true;break}}}if(!p){n._logAndThrowMockServerCustomError(404,n._oErrorMessages.RESOURCE_NOT_FOUND_FOR_SEGMENT,o)}}s[o]=t[o]}});return s};if(s.indexOf("*")!==-1){return e}jQuery.each(s,function(e,t){s[e]=n._trim(t)});jQuery.each(e,function(e,t){a.push(i(s,t,{}))})}else{var u=function(e,t,r){var n={};r=r||"";if(typeof e!=="object"){return e}if(typeof e.slice==="function"){return e.map(function(e,n){return u(e,t,r)})}if(e.__metadata!==undefined&&r.length===0){n.__metadata=e.__metadata}t.filter(function(e){return(e+"/").indexOf(r)===0}).forEach(function(t,s,a){var o=t.substr(r.length).split("/")[0];if(e[o]!==undefined){n[o]=u(e[o],a,r+o+"/")}});if(e.results!==undefined){n.results=u(e.results,t,r)}return n};a=u(e,s)}return a};u.prototype._getOdataInlineCount=function(e,t){var r=t.split(",");if(r.length!==1||r[0]!=="none"&&r[0]!=="allpages"){this._logAndThrowMockServerCustomError(400,this._oErrorMessages.INVALID_SYSTEM_QUERY_OPTION_VALUE)}if(r[0]==="none"){return}return e.length};u.prototype._getOdataQueryFormat=function(e,t){if(t!=="json"){this._logAndThrowMockServerCustomError(400,this._oErrorMessages.UNSUPPORTED_FORMAT_VALUE)}return e};u.prototype._getOdataQueryExpand=function(e,t,r){var n=this;var s=t.split(",");jQuery.each(s,function(e,t){s[e]=n._trim(t)});var a=n._mEntitySets[r].navprops;jQuery.each(e,function(e,t){jQuery.each(s,function(e,s){var o=s.split("/");var i=o[0];if(!t[i]){n._logAndThrowMockServerCustomError(404,n._oErrorMessages.RESOURCE_NOT_FOUND_FOR_SEGMENT,i)}var u=t[i].results||t[i];if(!u||u.__deferred){u=jQuery.extend(true,[],n._resolveNavigation(r,t,i,t))}else if(!Array.isArray(u)){u=[u]}if(u&&o.length>1){var f=o.splice(1,o.length).join("/");u=n._getOdataQueryExpand(u,f,a[i].to.entitySet)}if(a[i].to.multiplicity==="*"){t[i]={results:u}}else{t[i]=u[0]?u[0]:{}}})});return e};u.prototype._refreshData=function(){var e=this._loadMetadata(this._sMetadataString);if(!e){return}this._mEntitySets=this._findEntitySets(this._oMetadata);this._mEntityTypes=this._findEntityTypes(this._oMetadata);if(!this._sMockdataBaseUrl){this._generateMockdata(this._mEntitySets,this._oMetadata)}else{if(!this._sMockdataBaseUrl.endsWith("/")&&!this._sMockdataBaseUrl.endsWith(".json")){this._sMockdataBaseUrl+="/"}this._loadMockdata(this._mEntitySets,this._sMockdataBaseUrl)}};u.prototype._getRootUri=function(){var e=this.getRootUri();e=e&&/([^?#]*)([?#].*)?/.exec(e)[1];return e};u.prototype._loadMetadata=function(t){var t;t=t.trim();if(t.substring(0,1)!=="<"){t=f({url:t,dataType:"text"}).data;if(!t){e.error('MockServer: The metadata for url "'+t+'" could not be found!')}}this._sMetadata=t;try{this._oMetadata=jQuery.parseXML(t)}catch(t){e.error("MockServer: Invalid metadata XML! Reason: "+t)}return this._oMetadata};u.prototype._findEntitySets=function(e){var t={};var r=jQuery(e).find("Principal");var n=jQuery(e).find("Dependent");jQuery(e).find("EntitySet").each(function(e,r){var n=jQuery(r);var s=/((.*)\.)?(.*)/.exec(n.attr("EntityType"));t[n.attr("Name")]={name:n.attr("Name"),schema:s[2],type:s[3],keys:[],keysType:{},navprops:{},props:{}}});var s=function(e,t,s,a){var o=jQuery(s).find("End[Role='"+e+"']").attr("EntitySet");var i=jQuery(t).find("End[Role='"+e+"']").attr("Multiplicity");var u=[];var f=jQuery(t).find("ReferentialConstraint > [Role='"+e+"']");if(f&&f.length>0){jQuery(f[0]).children("PropertyRef").each(function(e,t){u.push(jQuery(t).attr("Name"))})}else{var c=a?r:n;jQuery(c).each(function(t,r){if(e===jQuery(r).attr("Role")){jQuery(r).children("PropertyRef").each(function(e,t){u.push(jQuery(t).attr("Name"))});return false}})}return{role:e,entitySet:o,propRef:u,multiplicity:i}};jQuery.each(t,function(t,r){var n=jQuery(e).find("EntityType[Name='"+r.type+"']");var a=jQuery(n).find("PropertyRef");jQuery.each(a,function(e,t){var s=jQuery(t).attr("Name");r.keys.push(s);r.keysType[s]=jQuery(n).find("Property[Name='"+s+"']").attr("Type")});var o=jQuery(e).find("EntityType[Name='"+r.type+"'] Property");jQuery.each(o,function(e,t){var n=jQuery(t);r.props[n.attr("Name")]={name:n.attr("Name"),type:n.attr("Type")}});var i=jQuery(e).find("EntityType[Name='"+r.type+"'] NavigationProperty");jQuery.each(i,function(t,n){var a=jQuery(n);var o=a.attr("Relationship").split(".");var i=jQuery(e).find("AssociationSet[Association = '"+o.join(".")+"']");var u=o.pop();var f=jQuery(e).find("Association[Name = '"+u+"']");r.navprops[a.attr("Name")]={name:a.attr("Name"),from:s(a.attr("FromRole"),f,i,true),to:s(a.attr("ToRole"),f,i,false)}})});return t};u.prototype._findEntityTypes=function(e){var t={};jQuery(e).find("EntityType").each(function(e,r){var n=jQuery(r);t[n.attr("Name")]={name:n.attr("Name"),properties:[],keys:[]};n.find("Property").each(function(e,r){var s=jQuery(r);var a=s.attr("Type");t[n.attr("Name")].properties.push({schema:a.substring(0,a.lastIndexOf(".")),type:a.substring(a.lastIndexOf(".")+1),name:s.attr("Name"),precision:s.attr("Precision"),scale:s.attr("Scale")})});n.find("PropertyRef").each(function(e,r){var s=jQuery(r);var a=s.attr("Name");t[n.attr("Name")].keys.push(a)})});return t};u.prototype._findComplexTypes=function(e){var t={};jQuery(e).find("ComplexType").each(function(e,r){var n=jQuery(r);t[n.attr("Name")]={name:n.attr("Name"),properties:[]};n.find("Property").each(function(e,r){var s=jQuery(r);var a=s.attr("Type");t[n.attr("Name")].properties.push({schema:a.substring(0,a.lastIndexOf(".")),type:a.substring(a.lastIndexOf(".")+1),name:s.attr("Name"),precision:s.attr("Precision"),scale:s.attr("Scale")})})});return t};u.prototype._createKeysString=function(e,t){var r=this;var n="";if(t){jQuery.each(e.keys,function(s,a){if(n){n+=","}var o=t[a];if(e.keysType[a]==="Edm.String"){o=encodeURIComponent("'"+o+"'")}else if(e.keysType[a]==="Edm.DateTime"){o=r._getDateTime(o);o=encodeURIComponent(o)}else if(e.keysType[a]==="Edm.Guid"){o="guid'"+o+"'"}if(e.keys.length===1){n+=o;return n}n+=a+"="+o})}return n};u.prototype._loadMockdata=function(t,r){var n=this,s={};this._oMockdata={};var a=function(t,r){var n=f({url:t,dataType:"json"});if(n.success){if(n.data.d){if(n.data.d.results){s[r.name]=n.data.d.results}else{e.error('The mock data format for entity set "'+r.name+'" invalid')}}else{if(Array.isArray(n.data)){s[r.name]=n.data}else{e.error('The mock data for entity set "'+r.name+'" could not be loaded due to wrong format!');return false}}return true}else{if(n.status==="parsererror"){e.error('The mock data for entity set "'+r.name+'" could not be loaded due to a parsing error!')}return false}};if(r.endsWith(".json")){var o=f({url:r,dataType:"json"});if(o.success){s=o.data}else{e.warning('The mock data for all the entity types could not be found at "'+r+'"!')}}else{var i={};if(n._aEntitySetsNames&&n._aEntitySetsNames.length>0){var u;for(var c=0;c<n._aEntitySetsNames.length;c++){u=n._aEntitySetsNames[c];if(t[u]){i[u]=t[u]}}}else{i=t}jQuery.each(i,function(t,o){if(!s[o.type]||!s[o.name]){var i=r+o.name+".json";if(!a(i,o)){e.warning('The mock data for entity set "'+o.name+'" could not be found at "'+r+'"!');var u=r+o.type+".json";if(!a(u,o)){e.warning('The mock data for entity type "'+o.type+'" could not be found at "'+r+'"!');if(n._bGenerateMissingMockData){var f={};f[o.name]=o;s[o.type]=n._generateODataMockdataForEntitySet(f,n._oMetadata)[o.name]}}}}})}jQuery.each(t,function(e,t){n._oMockdata[e]=[];if(s[t.name]){jQuery.each(s[t.name],function(t,r){n._oMockdata[e].push(jQuery.extend(true,{},r))})}else if(s[t.type]){jQuery.each(s[t.type],function(t,r){n._oMockdata[e].push(jQuery.extend(true,{},r))})}});jQuery.each(t,function(e,t){if(n._oMockdata[e].length>0){n._enhanceWithMetadata(t,n._oMockdata[e]);n._oMockdata[e].forEach(function(e){Object.keys(t.props).forEach(function(r){switch(t.props[r].type){case"Edm.DateTime":case"Edm.DateTimeOffset":if(e[r]!=null){var n=new Date(e[r]);if(n&&!isNaN(n)){e[r]="/Date("+n.getTime()+")/"}}break;default:}})})}});return this._oMockdata};u.prototype._enhanceWithMetadata=function(e,r){if(r){var n=this,s=this._getRootUri(),a=e&&e.name;jQuery.each(r,function(r,o){o.__metadata=o.__metadata||{};o.__metadata.id=s+a+"("+n._createKeysString(e,o)+")";o.__metadata.type=e.schema+"."+e.type;o.__metadata.uri=s+a+"("+n._createKeysString(e,o)+")";jQuery.each(e.navprops,function(r,i){if(o[r]&&!t(o[r])&&!o[r]["__deferred"]){n._oMockdata[i.to.entitySet]=n._oMockdata[i.to.entitySet].concat(o[r])}o[r]={__deferred:{uri:s+a+"("+n._createKeysString(e,o)+")/"+r}}})})}};u.prototype._isRequestedKeysValid=function(e,t){if(t.length===1){var r=t[0].split("=");if(this._trim(r[0])!==e.keys[0]){t=[e.keys[0]+"="+t[0]]}}for(var n=0;n<t.length;n++){var s=this._trim(t[n].substring(0,t[n].indexOf("=")));var a=this._trim(t[n].substring(t[n].indexOf("=")+1));var o=a.charAt(0);var i=a.charAt(a.length-1);if(e.keysType[s]==="Edm.String"){if(o!=="'"||i!=="'"){this._logAndThrowMockServerCustomError(400,this._oErrorMessages.MALFORMED_URI_LITERAL_SYNTAX_IN_KEY,s)}}else if(e.keysType[s]==="Edm.DateTime"){if(o==="'"||i!=="'"){this._logAndThrowMockServerCustomError(400,this._oErrorMessages.MALFORMED_URI_LITERAL_SYNTAX_IN_KEY,s)}}else if(e.keysType[s]==="Edm.Guid"){if(o==="'"||i!=="'"){this._logAndThrowMockServerCustomError(400,this._oErrorMessages.MALFORMED_URI_LITERAL_SYNTAX_IN_KEY,s)}}else if(e.keysType[s]==="Edm.Binary"){if(!new RegExp("(binary|X)'[A-Fa-f0-9][A-Fa-f0-9]*'").test(a)){this._logAndThrowMockServerCustomError(400,this._oErrorMessages.MALFORMED_URI_LITERAL_SYNTAX_IN_KEY,s)}}else{if(o==="'"&&i!=="'"||i==="'"&&o!=="'"){this._logAndThrowMockServerCustomError(400,this._oErrorMessages.MALFORMED_URI_LITERAL_SYNTAX_IN_KEY,s)}}var u=e.keys.join(",");if(e.keys.indexOf(s)===-1){this._logAndThrowMockServerCustomError(400,this._oErrorMessages.INVALID_KEY_NAME,u)}}};u.prototype._parseKeys=function(e,t){var r={};var n=e.split(",");var s,a,o;for(var i=0;i<n.length;i++){o=n[i].split("=");if(o.length===1&&t.keys.length===1){s=t.keys[0];a=o[0]}else{if(o.length===2){s=o[0];a=o[1]}}r[s]=a;switch(t.keysType[s]){case"Edm.String":r[s]=r[s].replace(/^\'|\'$/g,"");break;case"Edm.Int16":case"Edm.Int32":case"Edm.Int64":case"Edm.Decimal":case"Edm.Byte":case"Edm.Double":case"Edm.Single":case"Edm.SByte":r[s]=parseFloat(r[s]);break;case"Edm.Guid":r[s]=r[s].replace(/^guid\'|\'$/g,"");break;case"Edm.Boolean":case"Edm.Binary":case"Edm.DateTimeOffset":default:}}return r};u.prototype._generatePropertyValue=function(e,t,r,n){var s=n;if(!s){s=Math.floor(this._getPseudoRandomNumber("String")*1e4)+101}switch(t){case"String":return e+" "+s;case"DateTime":var a=new Date;a.setFullYear(2e3+Math.floor(this._getPseudoRandomNumber("DateTime")*20));a.setDate(Math.floor(this._getPseudoRandomNumber("DateTime")*30));a.setMonth(Math.floor(this._getPseudoRandomNumber("DateTime")*12));a.setMilliseconds(0);return"/Date("+a.getTime()+")/";case"Int16":case"Int32":case"Int64":return Math.floor(this._getPseudoRandomNumber("Int")*1e4);case"Decimal":return Math.floor(this._getPseudoRandomNumber("Decimal")*1e6)/100;case"Boolean":return this._getPseudoRandomNumber("Boolean")<.5;case"Byte":return Math.floor(this._getPseudoRandomNumber("Byte")*10);case"Double":return this._getPseudoRandomNumber("Double")*10;case"Single":return this._getPseudoRandomNumber("Single")*1e9;case"SByte":return Math.floor(this._getPseudoRandomNumber("SByte")*10);case"Time":return"PT"+Math.floor(this._getPseudoRandomNumber("Time")*23)+"H"+Math.floor(this._getPseudoRandomNumber("Time")*59)+"M"+Math.floor(this._getPseudoRandomNumber("Time")*59)+"S";case"Guid":return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){var t=this._getPseudoRandomNumber("Guid")*16|0,r=e==="x"?t:t&3|8;return r.toString(16)}.bind(this));case"Binary":var o=Math.floor(-2147483648+this._getPseudoRandomNumber("Binary")*4294967295),i="";for(var u=0,f=o;u<32;u++,i+=String(f>>>31),f<<=1);return i;case"DateTimeOffset":var a=new Date;a.setFullYear(2e3+Math.floor(this._getPseudoRandomNumber("DateTimeOffset")*20));a.setDate(Math.floor(this._getPseudoRandomNumber("DateTimeOffset")*30));a.setMonth(Math.floor(this._getPseudoRandomNumber("DateTimeOffset")*12));a.setMilliseconds(0);return"/Date("+a.getTime()+"+0000)/";default:return this._generateDataFromEntity(r[t],s,r)}};u.prototype._isFalseyValue=function(e,t,r){switch(r){case"Edm.String":return e==="";case"Edm.Boolean":return e===false;case"Edm.Int16":case"Edm.Int32":case"Edm.Int64":case"Edm.Decimal":case"Edm.Byte":case"Edm.Double":case"Edm.Single":case"Edm.SByte":return e===0||isNaN(e);default:return false}};u.prototype._completeKey=function(e,t,r){if(r){for(var n=0;n<e.keys.length;n++){var s=e.keys[n];if(t[s]!==undefined&&t[s]!==null){if(!r[s]){switch(e.keysType[s]){case"Edm.DateTime":r[s]=this._getJsonDate(t[s]);break;case"Edm.Guid":r[s]=t[s].replace(/^guid\'|\'$/g,"");break;default:r[s]=t[s]}}}else{if(!r[s]){r[s]=this._generatePropertyValue(s,e.keysType[s].substring(e.keysType[s].lastIndexOf(".")+1))}}}}};u.prototype._generateDataFromEntity=function(e,t,r){var n={};if(!e){return n}for(var s=0;s<e.properties.length;s++){var a=e.properties[s];n[a.name]=this._generatePropertyValue(a.name,a.type,r,t)}return n};u.prototype._generateDataFromEntitySet=function(e,t,r){var n=t[e.type];var s=[];for(var a=0;a<100;a++){s.push(this._generateDataFromEntity(n,a+1,r))}return s};u.prototype._generateMockdata=function(e,t){var r=this;var n={};var s=this._getRootUri();jQuery.each(e,function(e,s){var a={};a[s.name]=s;n[e]=r._generateODataMockdataForEntitySet(a,t)[e]});jQuery.each(e,function(e,t){for(var a in t.navprops){var o=t.navprops[a];var i=o.from.propRef.length;for(var u=0;u<i;u++){for(var f=0;f<n[e].length;f++){var c=n[e][f];n[o.to.entitySet][f][o.to.propRef[u]]=c[o.from.propRef[u]]}}}jQuery.each(n[e],function(n,a){a.__metadata={uri:s+e+"("+r._createKeysString(t,a)+")",type:t.schema+"."+t.type};jQuery.each(t.navprops,function(n,o){a[n]={__deferred:{uri:s+e+"("+r._createKeysString(t,a)+")/"+n}}})})});this._oMockdata=n};u.prototype._generateODataMockdataForEntitySet=function(e,t){var r=this,n={};var s=this._findEntityTypes(t);var a=this._findComplexTypes(t);jQuery.each(e,function(e,t){n[e]=r._generateDataFromEntitySet(t,s,a)});return n};u.prototype._resolveNavigation=function(e,t,r){var n=this._mEntitySets[e];var s=n.navprops[r];if(!s){this._logAndThrowMockServerCustomError(404,this._oErrorMessages.RESOURCE_NOT_FOUND)}var a=[];var o=s.from.propRef.length;if(o===0){if(s.to.multiplicity==="*"){return this._oMockdata[s.to.entitySet]}else{a.push(this._oMockdata[s.to.entitySet][0]);return a}}jQuery.each(this._oMockdata[s.to.entitySet],function(e,r){var n=true;for(var i=0;i<o;i++){if(t[s.from.propRef[i]]!==r[s.to.propRef[i]]){n=false;break}}if(n){a.push(r)}});return a};u.prototype.simulate=function(r,a){var o=this;this._sMetadataString=r;if(!a||typeof a==="string"){this._sMockdataBaseUrl=a}else{this._sMockdataBaseUrl=a.sMockdataBaseUrl;this._bGenerateMissingMockData=a.bGenerateMissingMockData;this._aEntitySetsNames=a.aEntitySetsNames}var i=this._loadMetadata(this._sMetadataString);if(!i){return}if(this._sMetadata){var f=s.getServiceAnnotations(this._sMetadata);n.handleDraft(f,this)}this._resetPseudoRandomNumberGenerator();this._refreshData();var c=function(e,t){if(e.requestHeaders["x-csrf-token"]==="Fetch"||e.requestHeaders["X-CSRF-Token"]==="Fetch"){t["X-CSRF-Token"]="42424242424242424242424242424242"}};var d=function(e,t){t=decodeURIComponent(t);var r;var n=o._mEntitySets[e];var s=n.keys;var a=t.split(",");if(a.length!==s.length){o._logAndThrowMockServerCustomError(400,o._oErrorMessages.INVALID_KEY_PREDICATE_QUANTITY)}o._isRequestedKeysValid(n,a);if(a.length===1&&!a[0].split("=")[1]){a=[s[0]+"="+a[0]]}jQuery.each(o._oMockdata[e],function(e,t){for(var i=0;i<a.length;i++){var u=a[i].split("=");var f=o._trim(u[0]);if(!s||s.indexOf(f)===-1){return true}var c=o._trim(u[1]);var d=t[f];switch(n.keysType[f]){case"Edm.String":c=c.replace(/^\'|\'$/g,"");break;case"Edm.Time":case"Edm.DateTime":d=o._getDateTime(d);break;case"Edm.Int16":case"Edm.Int32":case"Edm.Decimal":case"Edm.Byte":case"Edm.Double":case"Edm.Single":case"Edm.SByte":if(!o._isValidNumber(c)){return false}c=parseFloat(c);break;case"Edm.Guid":c=c.replace(/^guid\'|\'$/g,"");break;case"Edm.Boolean":if(["true","false"].indexOf(c)===-1){o._logAndThrowMockServerCustomError(400,o._oErrorMessages.INVALID_KEY_TYPE,f)}c=c==="true";break;case"Edm.Binary":case"Edm.DateTimeOffset":default:}if(d!==c){return true}}r={index:e,entry:t};return false});return r};var p=function(e,t,r){var n=e.name;var s;if(r){s=e.navprops[r]}if(s){n=s.to.entitySet}return n};var l=function(e){var t=[];var r=function(e){var t=e.indexOf("'");var r=e.indexOf('"');if(t===-1&&r===-1){return null}else{if(t>-1&&r===-1){return"appost"}if(r>-1&&t===-1){return"doublequotes"}if(t>-1&&r>-1&&t<r){return"appost"}if(t>-1&&r>-1&&r<t){return"doublequotes"}}};var n=function(e,t,r,n){var s=e[r];var a=r+1;while(a<e.length&&e[a].indexOf(n)===-1){s=s+"&"+e[a];a++}s=s+"&"+e[a];t.push(s);r=a;return r};for(var s=0;s<e.length;s++){if(!r(e[s])){t.push(e[s])}if(r(e[s])==="appost"){var a=e[s].indexOf("'");if(e[s].indexOf("'",a+1)===-1){s=n(e,t,s,"'")}else{t.push(e[s])}}if(r(e[s])==="doublequotes"){var o=e[s].indexOf('"');if(e[s].indexOf('"',o+1)===-1){s=n(e,t,s,'"')}else{t.push(e[s])}}}return t};var h=function(e,t,r,n){r=r?decodeURIComponent(r):r;var s=JSON.parse(e.requestBody);if(s){var a={};if(r){a=o._parseKeys(r,o._mEntitySets[t])}o._completeKey(o._mEntitySets[t],a,s);o._enhanceWithMetadata(o._mEntitySets[t],[s]);return s}return null};var v=[];v.push({method:"GET",path:new RegExp("\\$metadata([?#].*)?"),response:function(t){e.debug("MockServer: incoming request for url: "+t.url);var r={"Content-Type":"application/xml;charset=utf-8"};c(t,r);t.respond(200,r,o._sMetadata);e.debug("MockServer: response sent with: 200, "+o._sMetadata);return true}});v.push({method:"HEAD",path:new RegExp("(\\?.*)?$"),response:function(t){e.debug("MockServer: incoming request for url: "+t.url);var r={"Content-Type":"application/json;charset=utf-8"};c(t,r);t.respond(200,r);e.debug("MockServer: response sent with: 200");return true}});v.push({method:"GET",path:new RegExp("$"),response:function(t){e.debug("MockServer: incoming request for url: "+t.url);var r={"Content-Type":"application/json;charset=utf-8"};c(t,r);var n=[];jQuery.each(o._mEntitySets,function(e,t){n.push(e)});var s={EntitySets:n};t.respond(200,r,JSON.stringify({d:s}));e.debug("MockServer: response sent with: 200, "+JSON.stringify({d:s}));return true}});v.push({method:"POST",path:new RegExp("\\$batch([?#].*)?"),response:function(t){e.debug("MockServer: incoming request for url: "+t.url);var r=function(e){switch(e.statusCode){case 200:return"200 OK";case 201:return"201 Created";case 204:return"204 No Content";case 400:return"400 Bad Request";case 401:return"401 Unauthorized";case 403:return"403 Forbidden";case 404:return"404 Not Found";case 405:return"405 Method Not Allowed";case 409:return"409 Conflict";case 412:return"412 Precondition Failed";case 415:return"415 Unsupported Media Type";case 500:return"500 Internal Server Error";case 501:return"501 Not Implemented";case 503:return"503 Service Unavailable";default:return e.statusCode+" "+e.status}};var n=function(e,t){var n;if(e.success){n=JSON.stringify(e.data)||""}else{n=e.errorResponse}t=t||"application/json";if(e.responseHeaders){return"HTTP/1.1 "+r(e)+"\r\n"+e.responseHeaders+"dataserviceversion: 2.0\r\n\r\n"+n+"\r\n"}else{return"HTTP/1.1 "+r(e)+"\r\nContent-Type: "+t+"\r\nContent-Length: "+n.length+"\r\ndataserviceversion: 2.0\r\n\r\n"+n+"\r\n"}};var s=function(e,t,r,s,a){var o;var i=function(e,t,r){o={success:true,data:e,status:t,statusCode:r&&r.status,responseHeaders:r&&r.getAllResponseHeaders()}};var u=function(e,t,r){o={success:false,data:undefined,status:t,error:r,statusCode:e.status,errorResponse:e.responseText,responseHeaders:e&&e.getAllResponseHeaders()}};jQuery.ajax({type:r,async:false,url:e,headers:a,data:t,dataType:"json",success:i,error:u});if(o.statusCode===400||o.statusCode===404){var f=n(o);throw new Error(f)}s.push(n(o))};var a=function(e,t){var r;var s;var a=function(e,t,n){r={success:true,data:e,status:t,statusCode:n&&n.status,responseHeaders:n&&n.getAllResponseHeaders()}};var o=function(e,t,n){r={success:false,data:undefined,status:t,error:n,statusCode:e.status,errorResponse:e.responseText,responseHeaders:e&&e.getAllResponseHeaders()}};jQuery.ajax({async:false,url:e,dataType:"json",success:a,error:o});var s;if(e.indexOf("$count")!==-1){s=n(r,"text/plain")}else{s=n(r)}t.push("\r\nContent-Type: application/http\r\n"+"Content-Length: "+s.length+"\r\n"+"content-transfer-encoding: binary\r\n\r\n"+s)};var i=function(e){var t={};e.split("HTTP/1.1")[1].split("{")[0].split("\n").forEach(function(e){if(e.indexOf(":")!==-1){var r=e.split(":");t[r[0].trim()]=r[1].trim()}});delete t["Content-Length"];return t};var u=t.requestBody;var f=new RegExp("--batch_[a-z0-9-]*");var d=f.exec(u)[0];if(d){var p=[];var l=u.split(d);var h=t.url.split("$")[0];var v=new RegExp("PUT (.*) HTTP");var _=new RegExp("MERGE (.*) HTTP");var E=new RegExp("POST (.*) HTTP");var y=new RegExp("DELETE (.*) HTTP");var g=new RegExp("GET (.*) HTTP");for(var m=1;m<l.length-1;m++){var T=l[m];if(g.test(T)&&T.indexOf("multipart/mixed")===-1){if(v.test(T)||E.test(T)||y.test(T)){t.respond(400,null,"The Data Services Request could not be understood due to malformed syntax");e.debug("MockServer: response sent with: 400");return true}a(h+g.exec(T)[1],p)}else{var S=jQuery.extend(true,{},o._oMockdata);var M=[];var O=T.substring(T.indexOf("boundary=")+9,T.indexOf("\r\n\r\n"));var R=T.split("--"+O);try{for(var k=1;k<R.length-1;k++){var b=R[k];var N;if(g.test(b)){o._oMockdata=S;t.respond(400,null,"The Data Services Request could not be understood due to malformed syntax");e.debug("MockServer: response sent with: 400");return}else{var N=b.substring(b.indexOf("{"),b.lastIndexOf("}")+1),x=i(b),D,P;if(v.test(b)){P="PUT";D=v.exec(b)[1]}else if(_.test(b)){P="MERGE";D=_.exec(b)[1]}else if(E.test(b)){P="POST";D=E.exec(b)[1]}else if(y.test(b)){P="DELETE";N=undefined;D=y.exec(b)[1]}s(h+D,N,P,M,x)}}var I="\r\nContent-Type: multipart/mixed; boundary=ejjeeffe1\r\n\r\n--ejjeeffe1";for(var w=0;w<M.length;w++){I+="\r\nContent-Type: application/http\r\n"+"Content-Length: "+M[w].length+"\r\n"+"content-transfer-encoding: binary\r\n\r\n"+M[w]+"--ejjeeffe1"}I+="--\r\n";p.push(I)}catch(e){o._oMockdata=S;var A="\r\nContent-Type: application/http\r\n"+"Content-Length: "+e.message.length+"\r\n"+"content-transfer-encoding: binary\r\n\r\n"+e.message;p.push(A)}}}var C="--ejjeeffe0";for(var U=0;U<p.length;U++){C+=p[U]+"--ejjeeffe0"}C+="--";var x={"Content-Type":"multipart/mixed; boundary=ejjeeffe0"};c(t,x);t.respond(202,x,C);e.debug("MockServer: response sent with: 202, "+C)}else{t.respond(202)}return true}});jQuery.each(this._mEntitySets,function(r,n){v.push({method:"GET",path:new RegExp("("+r+")/\\$count/?(.*)?"),response:function(t,r,n){e.debug("MockServer: incoming request for url: "+t.url);o.fireEvent(u.HTTPMETHOD.GET+r+":before",{oXhr:t,sUrlParams:n});o.fireEvent(u.HTTPMETHOD.GET+":before",{oXhr:t,sUrlParams:n});var s={"Content-Type":"text/plain;charset=utf-8"};c(t,s);try{var a=o._oMockdata[r];if(a){var i={results:jQuery.extend(true,[],a)};if(n){var f=decodeURIComponent(n).replace("?","&").split("&");f=l(f);if(f.length>1){f=o._orderQueryOptions(f)}jQuery.each(f,function(e,t){o._applyQueryOnCollection(i,t,r,f)})}o.fireEvent(u.HTTPMETHOD.GET+r+":after",{oXhr:t,oFilteredData:i});o.fireEvent(u.HTTPMETHOD.GET+":after",{oXhr:t,oFilteredData:i});t.respond(200,s,""+i.results.length);e.debug("MockServer: response sent with: 200, "+i.results.length)}else{o._logAndThrowMockServerCustomError(404,o._oErrorMessages.RESOURCE_NOT_FOUND)}}catch(r){if(r.error){t.respond(r.error.code,s,JSON.stringify(r))}else{e.error("MockServer: request failed due to invalid system query options value!");t.respond(parseInt(r.message||r.number))}}return true}});v.push({method:"GET",path:new RegExp("("+r+")/?(\\?(.*))?"),response:function(t,r,n){e.debug("MockServer: incoming request for url: "+t.url);o.fireEvent(u.HTTPMETHOD.GET+r+":before",{oXhr:t,sUrlParams:n});o.fireEvent(u.HTTPMETHOD.GET+":before",{oXhr:t,sUrlParams:n});var s={"Content-Type":"application/json;charset=utf-8"};c(t,s);try{var a=o._oMockdata[r];if(a){var i={results:jQuery.extend(true,[],a)};if(n){var f=decodeURIComponent(n).replace("?","&").split("&");f=l(f);if(f.length>1){f=o._orderQueryOptions(f)}jQuery.each(f,function(e,t){o._applyQueryOnCollection(i,t,r,f)})}o.fireEvent(u.HTTPMETHOD.GET+r+":after",{oXhr:t,oFilteredData:i});o.fireEvent(u.HTTPMETHOD.GET+":after",{oXhr:t,oFilteredData:i});t.respond(200,s,JSON.stringify({d:i}));e.debug("MockServer: response sent with: 200, "+JSON.stringify({d:i}))}else{o._logAndThrowMockServerCustomError(404,o._oErrorMessages.RESOURCE_NOT_FOUND)}}catch(r){if(r.error){t.respond(r.error.code,s,JSON.stringify(r))}else{e.debug("MockServer: response sent with: "+parseInt(r.message||r.number));t.respond(parseInt(r.message||r.number))}}return true}});v.push({method:"GET",path:new RegExp("("+r+")\\(([^/\\?#]+)\\)/?(\\?(.*))?"),response:function(r,n,s,a){e.debug("MockServer: incoming request for url: "+r.url);o.fireEvent(u.HTTPMETHOD.GET+n+":before",{oXhr:r,sKeys:s,sUrlParams:a});o.fireEvent(u.HTTPMETHOD.GET+":before",{oXhr:r,sKeys:s,sUrlParams:a});var i={"Content-Type":"application/json;charset=utf-8"};try{var f=jQuery.extend(true,{},d(n,s));if(!t(f)){if(a){var c=decodeURIComponent(a).replace("?","&").split("&");c=l(c);if(c.length>1){c=o._orderQueryOptions(c)}jQuery.each(c,function(e,t){f.entry=o._applyQueryOnEntry(f.entry,t,n)})}o.fireEvent(u.HTTPMETHOD.GET+n+":after",{oXhr:r,oEntry:f.entry});o.fireEvent(u.HTTPMETHOD.GET+":after",{oXhr:r,oEntry:f.entry});r.respond(200,i,JSON.stringify({d:f.entry}));e.debug("MockServer: response sent with: 200, "+JSON.stringify({d:f.entry}))}else{o._logAndThrowMockServerCustomError(404,o._oErrorMessages.RESOURCE_NOT_FOUND)}}catch(t){if(t.error){r.respond(t.error.code,i,JSON.stringify(t))}else{e.debug("MockServer: response sent with: "+parseInt(t.message||t.number));r.respond(parseInt(t.message||t.number))}}return true}});jQuery.each(n.navprops,function(t,n){v.push({method:"GET",path:new RegExp("("+r+")\\(([^/\\?#]+)\\)/("+t+")/\\$count/?(.*)?"),response:function(t,r,n,s,a){e.debug("MockServer: incoming request for url: "+t.url);o.fireEvent(u.HTTPMETHOD.GET+r+":before",{oXhr:t,sKeys:n,sNavProp:s,sUrlParams:a});o.fireEvent(u.HTTPMETHOD.GET+":before",{oXhr:t,sKeys:n,sNavProp:s,sUrlParams:a});var i={"Content-Type":"text/plain;charset=utf-8"};c(t,i);try{var f=d(r,n);if(f){var p,h={};p=o._resolveNavigation(r,f.entry,s);var v=o._mEntitySets[r].navprops[s].to.multiplicity;if(v==="*"){h={results:jQuery.extend(true,[],p)}}else{h=jQuery.extend(true,{},p[0])}if(p&&p.length!==0){if(a){var _=decodeURIComponent(a).replace("?","&").split("&");_=l(_);if(_.length>1){_=o._orderQueryOptions(_)}if(v==="*"){jQuery.each(_,function(e,t){o._applyQueryOnCollection(h,t,o._mEntitySets[r].navprops[s].to.entitySet,_)})}else{jQuery.each(_,function(e,t){h=o._applyQueryOnEntry(h,t,o._mEntitySets[r].navprops[s].to.entitySet)})}}}o.fireEvent(u.HTTPMETHOD.GET+r+":after",{oXhr:t,oFilteredData:h});o.fireEvent(u.HTTPMETHOD.GET+":after",{oXhr:t,oFilteredData:h});h.results=h.results||[];t.respond(200,i,""+h.results.length);e.debug("MockServer: response sent with: 200, "+h.results.length)}else{o._logAndThrowMockServerCustomError(404,o._oErrorMessages.RESOURCE_NOT_FOUND)}}catch(r){if(r.error){t.respond(r.error.code,i,JSON.stringify(r))}else{e.debug("MockServer: response sent with: "+parseInt(r.message||r.number));t.respond(parseInt(r.message||r.number))}}return true}});v.push({method:"GET",path:new RegExp("("+r+")\\(([^/\\?#]+)\\)/("+t+")/?(\\?(.*))?"),response:function(t,r,n,s,a){e.debug("MockServer: incoming request for url: "+t.url);o.fireEvent(u.HTTPMETHOD.GET+r+":before",{oXhr:t,sKeys:n,sNavProp:s,sUrlParams:a});o.fireEvent(u.HTTPMETHOD.GET+":before",{oXhr:t,sKeys:n,sNavProp:s,sUrlParams:a});var i={"Content-Type":"application/json;charset=utf-8"};c(t,i);try{var f=d(r,n);if(f){var p,h={};p=o._resolveNavigation(r,f.entry,s,f.entry);var v=o._mEntitySets[r].navprops[s].to.multiplicity;if(v==="*"){h={results:jQuery.extend(true,[],p)}}else{h=jQuery.extend(true,{},p[0])}if(p&&p.length!==0){if(a){var _=decodeURIComponent(a).replace("?","&").split("&");_=l(_);if(_.length>1){_=o._orderQueryOptions(_)}if(v==="*"){jQuery.each(_,function(e,t){o._applyQueryOnCollection(h,t,o._mEntitySets[r].navprops[s].to.entitySet,_)})}else{jQuery.each(_,function(e,t){h=o._applyQueryOnEntry(h,t,o._mEntitySets[r].navprops[s].to.entitySet)})}}}o.fireEvent(u.HTTPMETHOD.GET+r+":after",{oXhr:t,oFilteredData:h});o.fireEvent(u.HTTPMETHOD.GET+":after",{oXhr:t,oFilteredData:h});t.respond(200,i,JSON.stringify({d:h}));e.debug("MockServer: response sent with: 200, "+JSON.stringify({d:h}))}else{o._logAndThrowMockServerCustomError(404,o._oErrorMessages.RESOURCE_NOT_FOUND)}}catch(r){if(r.error){t.respond(r.error.code,i,JSON.stringify(r))}else{t.respond(parseInt(r.message||r.number));e.debug("MockServer: response sent with: "+parseInt(r.message||r.number))}}return true}})});v.push({method:"POST",path:new RegExp("("+r+")(\\(([^/\\?#]+)\\)/?(.*)?)?"),response:function(t,r,s,a,i){var f=false;if(t.requestHeaders["x-http-method"]==="MERGE"){f=true}e.debug("MockServer: incoming create request for url: "+t.url);o.fireEvent(u.HTTPMETHOD.POST+r+":before",{oXhr:t,sKeys:a,sNavName:i});o.fireEvent(u.HTTPMETHOD.POST+":before",{oXhr:t,sKeys:a,sNavName:i});var c=null;var l=null;var v=405;try{if(a&&!a.split("=")[1]){a=o._mEntitySets[r].keys[0]+"="+a}var _=p(n,decodeURIComponent(a),i);if(_){var E=h(t,_,a,i);if(E){l={"Content-Type":"application/json;charset=utf-8"};o.fireEvent(u.HTTPMETHOD.POST+r+":after",{oXhr:t,oEntity:E});o.fireEvent(u.HTTPMETHOD.POST+":after",{oXhr:t,oEntity:E});if(f){var y=d(r,a);if(y){jQuery.extend(o._oMockdata[r][y.index],E)}v=204}else{var g=o._getRootUri()+_+"("+o._createKeysString(o._mEntitySets[_],E)+")";c=JSON.stringify({d:E,uri:g});o._oMockdata[_]=o._oMockdata[_].concat([E]);v=201}}}t.respond(v,l,c);e.debug("MockServer: response sent with: "+v+", "+c)}catch(r){if(r.error){var m={"Content-Type":"text/plain;charset=utf-8"};t.respond(r.error.code,m,JSON.stringify(r))}else{t.respond(parseInt(r.message||r.number));e.debug("MockServer: response sent with: "+parseInt(r.message||r.number))}}return true}});v.push({method:"PUT",path:new RegExp("("+r+")\\(([^/\\?#]+)\\)/?(.*)?"),response:function(t,r,s,a){e.debug("MockServer: incoming update request for url: "+t.url);o.fireEvent(u.HTTPMETHOD.PUT+r+":before",{oXhr:t,sKeys:s,sNavName:a});o.fireEvent(u.HTTPMETHOD.PUT+":before",{oXhr:t,sKeys:s,sNavName:a});var i=405;var f=null;var c=null;try{var l=p(n,decodeURIComponent(s),a);if(l){var v=h(t,l,s,a);if(v){c={"Content-Type":"application/json;charset=utf-8"};o.fireEvent(u.HTTPMETHOD.PUT+r+":after",{oXhr:t,oEntity:v});o.fireEvent(u.HTTPMETHOD.PUT+":after",{oXhr:t,oEntity:v});var _=d(r,s);if(_){o._oMockdata[r][_.index]=v}i=204}}t.respond(i,c,f);e.debug("MockServer: response sent with: "+i+", "+f)}catch(r){if(r.error){var E={"Content-Type":"text/plain;charset=utf-8"};t.respond(r.error.code,E,JSON.stringify(r))}else{t.respond(parseInt(r.message||r.number));e.debug("MockServer: response sent with: "+parseInt(r.message||r.number))}}return true}});v.push({method:"MERGE",path:new RegExp("("+r+")\\(([^/\\?#]+)\\)/?(.*)?"),response:function(t,r,s,a){e.debug("MockServer: incoming merge update request for url: "+t.url);o.fireEvent(u.HTTPMETHOD.MERGE+r+":before",{oXhr:t,sKeys:s,sNavName:a});o.fireEvent(u.HTTPMETHOD.MERGE+":before",{oXhr:t,sKeys:s,sNavName:a});var i=405;var f=null;var c=null;try{var l=p(n,decodeURIComponent(s),a);if(l){var v=h(t,l,s,a);if(v){c={"Content-Type":"application/json;charset=utf-8"};o.fireEvent(u.HTTPMETHOD.MERGE+r+":after",{oXhr:t,oEntity:v});o.fireEvent(u.HTTPMETHOD.MERGE+":after",{oXhr:t,oEntity:v});var _=d(r,s);if(_){jQuery.extend(o._oMockdata[r][_.index],v)}i=204}}t.respond(i,c,f);e.debug("MockServer: response sent with: "+i+", "+f)}catch(r){if(r.error){var E={"Content-Type":"text/plain;charset=utf-8"};t.respond(r.error.code,E,JSON.stringify(r))}else{t.respond(parseInt(r.message||r.number));e.debug("MockServer: response sent with: "+parseInt(r.message||r.number))}}return true}});v.push({method:"PATCH",path:new RegExp("("+r+")\\(([^/\\?#]+)\\)/?(.*)?"),response:function(t,r,s,a){e.debug("MockServer: incoming patch update request for url: "+t.url);o.fireEvent(u.HTTPMETHOD.PATCH+r+":before",{oXhr:t,sKeys:s,sNavName:a});o.fireEvent(u.HTTPMETHOD.PATCH+":before",{oXhr:t,sKeys:s,sNavName:a});var i=405;var f=null;var c=null;try{var l=p(n,decodeURIComponent(s),a);if(l){var v=h(t,l,s,a);if(v){c={"Content-Type":"application/json;charset=utf-8"};o.fireEvent(u.HTTPMETHOD.PATCH+r+":after",{oXhr:t,oEntity:v});o.fireEvent(u.HTTPMETHOD.PATCH+":after",{oXhr:t,oEntity:v});var _=d(r,s);if(_){jQuery.extend(o._oMockdata[r][_.index],v)}i=204}}t.respond(i,c,f);e.debug("MockServer: response sent with: "+i+", "+f)}catch(r){if(r.error){var E={"Content-Type":"text/plain;charset=utf-8"};t.respond(r.error.code,E,JSON.stringify(r))}else{t.respond(parseInt(r.message||r.number));e.debug("MockServer: response sent with: "+parseInt(r.message||r.number))}}return true}});v.push({method:"DELETE",path:new RegExp("("+r+")\\(([^/\\?#]+)\\)/?(.*)?"),response:function(t,r,n,s){e.debug("MockServer: incoming delete request for url: "+t.url);o.fireEvent(u.HTTPMETHOD.DELETE+r+":before",{oXhr:t});o.fireEvent(u.HTTPMETHOD.DELETE+":before",{oXhr:t});var a=204;try{var i=d(r,n);if(i){o._oMockdata[r].splice(i.index,1)}else{a=400}o.fireEvent(u.HTTPMETHOD.DELETE+r+":after",{oXhr:t});o.fireEvent(u.HTTPMETHOD.DELETE+":after",{oXhr:t});t.respond(a,null,null);e.debug("MockServer: response sent with: "+a)}catch(r){if(r.error){var f={"Content-Type":"text/plain;charset=utf-8"};t.respond(r.error.code,f,JSON.stringify(r))}else{t.respond(parseInt(r.message||r.number));e.debug("MockServer: response sent with: "+parseInt(r.message||r.number))}}return true}})});this.setRequests(v)};u.prototype._orderQueryOptions=function(e){var t,r,n,s,a,o,i,u,f,c,d=[];var p=this;jQuery.each(e,function(d,l){var h=e.indexOf(l);switch(l.split("=")[0]){case"$top":s=h;break;case"$skip":n=h;break;case"$orderby":a=h;break;case"$expand":i=h;break;case"$filter":t=h;break;case"$select":o=h;break;case"$inlinecount":r=h;break;case"$format":u=h;break;case"search-focus":c=h;break;case"search":f=h;break;default:if(l.split("=")[0].indexOf("$")===0){p._logAndThrowMockServerCustomError(400,p._oErrorMessages.IS_NOT_A_VALID_SYSTEM_QUERY_OPTION,l.split("=")[0])}}});if(i>=0){d.push(e[i])}if(t>=0){d.push(e[t])}if(c>=0){d.push(e[c])}if(f>=0){d.push(e[f])}if(r>=0){d.push(e[r])}if(a>=0){d.push(e[a])}if(n>=0){d.push(e[n])}if(s>=0){d.push(e[s])}if(o>=0){d.push(e[o])}if(u>=0){d.push(e[u])}return d};u.prototype._removeAllRequestHandlers=function(){var e=this.getRequests();var t=e.length;for(var r=0;r<t;r++){u._removeResponse(e[r].response)}};u.prototype._removeAllFilters=function(){for(var e=0;e<this._aFilters.length;e++){u._removeFilter(this._aFilters[e])}this._aFilters=null};u.prototype._addRequestHandler=function(t,r,n){t=t?t.toUpperCase():t;if(typeof t!=="string"){throw new Error("Error in request configuration: value of 'method' has to be a string")}if(!(typeof r==="string"||r instanceof RegExp)){throw new Error("Error in request configuration: value of 'path' has to be a string or a regular expression")}if(typeof n!=="function"){throw new Error("Error in request configuration: value of 'response' has to be a function")}var s=this._getRootUri();s=s&&new RegExp(this._escapeStringForRegExp(s));if(r&&!(r instanceof RegExp)){r=new RegExp(this._createRegExpPattern(r))}var a=this._createRegExp(s?s.source+r.source:r.source);this._addFilter(this._createFilter(t,a));this._oServer.respondWith(t,a,n);e.debug("MockServer: adding "+t+" request handler for pattern "+a)};u.prototype._createRegExp=function(e){return new RegExp("^"+e+"$")};u.prototype._createRegExpPattern=function(e){return e.replace(/:([\w\d]+)/g,"([^/]+)")};u.prototype._escapeStringForRegExp=function(e){return e.replace(/[\\\/\[\]\{\}\(\)\-\*\+\?\.\^\$\|]/g,"\\$&")};u.prototype._trim=function(e){return e&&e.replace(/^\s+|\s+$/g,"")};u.prototype._isValidNumber=function(e){if(/^([-+]?)0*(\d+)(\.\d+|)([eE][-+]?\d+[d]?|[mldf])?$/i.test(e)){var t=parseFloat(e);return!isNaN(t)&&isFinite(t)}return false};u.prototype._getDateTime=function(e){if(!e){return}return"datetime'"+new Date(Number(e.replace("/Date(","").replace(")/",""))).toJSON().substring(0,19)+"'"};u.prototype._getJsonDate=function(e){if(!e){return}var t=function(e){if(!o.test(e)){e+="Z"}e=e.replace(i,"$1");return new Date(e).getTime()};if(e.indexOf("datetimeoffset")>-1){return"/Date("+t(e.substring("datetimeoffset'".length,e.length-1))+")/"}else{return"/Date("+t(e.substring("datetime'".length,e.length-1))+")/"}};u.prototype._addFilter=function(e){this._aFilters.push(e);u._addFilter(e)};u.prototype._createFilter=function(e,t){return function(r,n,s,a,o){return e===r&&t.test(n)}};u.prototype._logAndThrowMockServerCustomError=function(t,r,n){if(r.indexOf("##")>-1&&n){r=r.replace("##","'"+n+"'")}e.error("MockServer: "+r);throw{error:{code:t,message:{lang:"en",value:r}}}};u.prototype.destroy=function(e){r.prototype.destroy.apply(this,arguments);this.stop();var t=u._aServers;var n=t.indexOf(this);t.splice(n,1)};u._aFilters=[];u._oServer=null;u._aServers=[];u._getInstance=function(){if(!this._oServer){this._oServer=window.sinon.fakeServer.create();this._oServer.autoRespond=true}return this._oServer};u.config=function(e){var t=this._getInstance();t.autoRespond=e.autoRespond===false?false:true;t.autoRespondAfter=e.autoRespondAfter||0;t.fakeHTTPMethods=e.fakeHTTPMethods||false};u.respond=function(){this._getInstance().respond()};u.startAll=function(){for(var e=0;e<this._aServers.length;e++){this._aServers[e].start()}};u.stopAll=function(){for(var e=0;e<this._aServers.length;e++){this._aServers[e].stop()}this._getInstance().restore();this._oServer=null};u.destroyAll=function(){this.stopAll();while(this._aServers.length>0){this._aServers[0].destroy()}};u.HTTPMETHOD={GET:"GET",POST:"POST",DELETE:"DELETE",PUT:"PUT",MERGE:"MERGE",PATCH:"PATCH"};u._addFilter=function(e){this._aFilters.push(e)};u._removeFilter=function(e){this._aFilters.splice(this._aFilters.indexOf(e),1)};u._removeResponse=function(e){var t=this._oServer.responses;var r=t.length;for(var n=0;n<r;n++){if(t[n].response===e){t.splice(n,1);return true}}return false};function f(e){var t;Object.assign(e,{async:false,success:function(e,r,n){t={success:true,data:e,status:r,statusCode:n&&n.status}},error:function(e,r,n){t={success:false,data:undefined,status:r,error:n,statusCode:e.status,errorResponse:e.responseText}}});jQuery.ajax(e);return t}u._syncAjax=f;window.sinon.FakeXMLHttpRequest.useFilters=true;window.sinon.FakeXMLHttpRequest.addFilter(function(e,t,r,n,s){var a=u._aFilters;for(var o=0;o<a.length;o++){var i=a[o];if(i(e,t,r,n,s)){return false}}return true});var c=function(e){if(/.*\.json$/i.test(e)){return"JSON"}if(/.*\.xml$/i.test(e)){return"XML"}if(/.*metadata$/i.test(e)){return"XML"}return null};window.sinon.FakeXMLHttpRequest.prototype.respondFile=function(e,t,r){var n=f({url:r,dataType:"text"});if(!n.success){throw new Error("Could not load file from: "+r)}var s=n.data;var a=c(r);if(this["respond"+a]){this["respond"+a](e,t,s)}else{this.respond(e,t,s)}};window.sinon.FakeXMLHttpRequest.prototype.respondJSON=function(e,t,r){t=t||{};t["Content-Type"]=t["Content-Type"]||"application/json";this.respond(e,t,typeof r==="string"?r:JSON.stringify(r))};window.sinon.FakeXMLHttpRequest.prototype.respondXML=function(e,t,r){t=t||{};t["Content-Type"]=t["Content-Type"]||"application/xml";this.respond(e,t,r)};return u});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/PasteHelper", ["sap/ui/core/Lib","sap/ui/model/ParseException","sap/ui/model/ValidateException","sap/base/Log"],function(e,r,n,t){"use strict";var a={};a.getClipboardText=function(e){return typeof e=="string"?e:e.clipboardData.getData("text")};a.getPastedDataAs2DArray=function(e){var r,n,t=[];var a=/sapui5Placeholder4MultiLine/g;var i=a.source;var o=/""/g;var s=this.getClipboardText(e);var l=[];var p=false;var u=s.indexOf('"'),f=-1;var c,h;while(u>-1){h=s.charAt(u-1);if(u===0||h==="\n"||h==="\t"||h==="\r"){f=s.indexOf('"',u+1);if(f>-1){c=s.charAt(f+1);while(f>-1&&c==='"'){f=s.indexOf('"',f+2);c=s.charAt(f+1)}if(c==="\n"||c==="\t"||c===""||c==="\r"){var g=s.substring(u+1,f);s=s.replace('"'+g+'"',i);g=g.replace(o,'"');l.push(g);u=s.indexOf('"',u+i.length+1);p=true}}}if(!p){u=s.indexOf('"',u+1)}p=false}r=s.split(/\r\n|\r|\n/);var v=0;var m=function(){return l[v++]};for(var d=0;d<r.length;d++){n=r[d];if(l.length>0){n=n.replace(a,m)}if(n.length||d<r.length-1){t.push(n.split("\t"))}}return t};a.parse=function(r,n){var t={parsedData:null,errors:null};if(!r){throw new Error("Parameter aData is not specified")}if(n){for(var i=0;i<n.length;i++){var o=n[i];if(o.ignore){continue}if(o.property){if(o.type){var s=o.type;if(s.isA&&s.isA("sap.ui.model.SimpleType")){o.typeInstance=s}else{throw new Error("Data type "+o.type+" is not an instance of any data type")}}else if(o.customParseFunction==undefined){throw new Error("Missing ColumnInfo.type or custom type parse function for column "+(i+1)+". Check the application calling PasteHelper.parse(aData, aColumnInfo) and specify the missing type in the parameter aColumnInfo.")}}else{throw new Error("Missing ColumnInfo.property for column "+(i+1)+". Check the application calling PasteHelper.parse(aData, aColumnInfo) and specify the missing property in the parameter aColumnInfo.")}}}else{throw new Error("Missing parameter aColumnInfo")}var l=[],p=[],u=e.getResourceBundleFor("sap.ui.core");var f=function(e,r){return r.parseValue(e,"string")};var c=function(e,r){return r.validateValue(e)};for(var i=0;i<r.length;i++){var h=r[i];var g=a._parseRow(h,n,i,f,c,u,l);p.push(g)}return Promise.all(p).then(function(e){if(l.length>0){t.parsedData=null;t.errors=l}else{if(e){t.parsedData=e}t.errors=null}return t})};a._parseRow=function(e,r,n,t,i,o,s){var l=[],p={};for(var u=0;u<r.length&&u<e.length;u++){var f=r[u];if(f.ignore){continue}var c=e[u];if(!f.typeInstance){t=f.customParseFunction;i=function(){}}var h=a._parseCell(u,c,f,n,t,i,o,p,s);l.push(h)}return Promise.all(l).then(function(){return p})};a._parseCell=function(e,a,i,o,s,l,p,u,f){return Promise.resolve(a).then(function(e){return s(e,i.typeInstance)}).then(function(e){return Promise.all([e,l(e,i.typeInstance)])}).then(function(e){u[i.property]=e[0]}).catch(function(s){if(s instanceof r||s instanceof n){var l={row:o+1,column:e+1,property:i.property,value:a,type:i.type,message:p.getText("PasteHelper.ErrorMessage",[a,o+1,e+1])+" "+s.message+"\n"};f.push(l);a=null}else{t.error(s)}})};return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/ResponsivePaddingsEnablement", ["sap/base/Log","sap/ui/core/Element","sap/ui/core/ResizeHandler","sap/ui/thirdparty/jquery","sap/ui/core/library"],function(e,i,n,jQuery){"use strict";var s={S:599,M:1023,L:1439};var t={S:"sapUi-Std-PaddingS",M:"sapUi-Std-PaddingM",L:"sapUi-Std-PaddingL",XL:"sapUi-Std-PaddingXL"};var r=function(r){if(!this.isA||!this.isA("sap.ui.core.Control")){e.error("Responsive Paddings enablement could be applied over controls only");return}this._initResponsivePaddingsEnablement=function(){this.addEventDelegate({onAfterRendering:d,onBeforeRendering:a},this)};function a(){u(this)}function d(){var e=c(this,r);if(e.length){window.requestAnimationFrame(function(){o(this)}.bind(this))}}function o(e){f(e);if(!e.__iResponsivePaddingsResizeHandlerId__){e.__iResponsivePaddingsResizeHandlerId__=n.register(e,f.bind(e,e))}}function u(e){if(e.__iResponsivePaddingsResizeHandlerId__){n.deregister(e.__iResponsivePaddingsResizeHandlerId__);e.__iResponsivePaddingsResizeHandlerId__=null}}function f(e,i){var n=c(e,r);var s=l(e,n);var t=i?i.size.width:e.$().width();p(s);v(s,t)}function c(e,i){var n=g(i);n=n.filter(function(i){return e.hasStyleClass(i)});if(!n.length){return[]}n=n.map(function(e){return e.split("--")[1]});n=n.map(function(e){return i[e]}).filter(function(e){return e});return n}function l(e,i){var n=jQuery();i.forEach(function(i){if(i.suffix){n=n.add(e.$(i.suffix))}if(i.selector){n=n.add(e.$().find(i.selector).first())}});return n}function p(e){var n=Object.keys(t).map(function(e){return t[e]});e.each(function(e,s){var t=i.closestTo(s);if(s===t.getDomRef()){n.forEach(t.removeStyleClass.bind(t))}else{jQuery(s).removeClass(n.join(" "))}})}function v(e,n){var r;switch(true){case n<=s.S:r="S";break;case n<=s.M&&n>s.S:r="M";break;case n<=s.L&&n>s.M:r="L";break;default:r="XL";break}e.each(function(e,n){var s=i.closestTo(n);if(n===s.getDomRef()){s.addStyleClass(t[r])}else{jQuery(n).addClass(t[r])}})}function g(e){return Object.keys(e).map(function(e){return"sapUiResponsivePadding--"+e})}};return r});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/ShortcutHelper", ["sap/ui/Device","sap/ui/events/jquery/EventExtension"],function(e){"use strict";var t={plus:"+",space:" "};var r={OS:"Meta"};var a={"ctrl+l":"jump to address bar","ctrl+n":"new window, cannot be registered in Chrome","ctrl+shift+n":"new incognito window, cannot be registered in Chrome","ctrl+alt+shift+p":"UI5 Technical Info","ctrl+q":"quit Chrome in Mac","ctrl+alt+shift+s":"UI5 Support Popup","ctrl+t":"new tab, cannot be registered in Chrome","ctrl+shift+t":"reopen last tab, cannot be registered in Chrome","ctrl+w":"close tab, cannot be registered in Chrome","ctrl+shift+w":"close window, cannot be registered in Chrome","ctrl+0":"reset zoom","ctrl+-":"zoom out","ctrl++":"zoom in","ctrl+shift+=":"cannot be handled",tab:"TAB-based keyboard navigation","shift+tab":"TAB-based keyboard navigation","ctrl+tab":"cycling through tabs, cannot be registered in Chrome","ctrl+shift+tab":"cycling through tabs, cannot be registered in Chrome","ctrl+alt+delete":"nice try","ctrl+pageup":"cycling through tabs, cannot be registered in Chrome","ctrl+pagedown":"cycling through tabs, cannot be registered in Chrome",f6:"F6-based group navigation",f11:"fullscreen, cannot be registered in Chrome",f12:"browser dev tools"};var n=false;document.addEventListener("keydown",function(e){try{if(e.keyCode===18){n=typeof e.location!=="number"||e.location===1;return}}catch(e){}});var o={findShortcut:function(e,t){var r=e.data("sap.ui.core.Shortcut");if(!r){return}var a=r.filter(function(e){var r=e.shortcutSpec.key===t.key&&e.shortcutSpec.ctrlKey===t.ctrlKey&&e.shortcutSpec.altKey===t.altKey&&e.shortcutSpec.shiftKey===t.shiftKey&&e.shortcutSpec.metaKey===t.metaKey;return r});return a[0]},getNormalizedShortcutSpec:function(t){var r;if(typeof t==="string"){r=o.parseShortcut(t)}else{var a=t.key;var n=/^([a-z0-9\.,\-\*\/= +]|Tab|Enter|Backspace|Home|Delete|End|Pageup|Pagedown|ArrowUp|ArrowDown|ArrowLeft|ArrowRight|Escape|F[1-9]|F1[0-2])$/i.test(a);if(!n){throw new Error("Shortcut key '"+a+"' is not a valid shortcut key. It must match /^([a-z0-9.,-*/= +]|Tab|Enter|Backspace|Home|Delete|End|Pageup|Pagedown|ArrowUp|ArrowDown|ArrowLeft|ArrowRight|Escape|F[1-9]|F1[0-2])$/i")}r={key:o.translateRegisteredKeyToStandard(a).toLowerCase(),ctrlKey:e.os.macintosh?false:!!t.ctrl,ctrlRequested:t.ctrl,altKey:!!t.alt,shiftKey:!!t.shift,metaKey:e.os.macintosh?!!t.ctrl:false}}return r},parseShortcut:function(t){this.validateShortcutString(t);var r=t.toLowerCase().split("+");return{key:o.translateRegisteredKeyToStandard(r.pop()),ctrlKey:e.os.macintosh?false:r.indexOf("ctrl")>-1,ctrlRequested:r.indexOf("ctrl")>-1,altKey:r.indexOf("alt")>-1,shiftKey:r.indexOf("shift")>-1,metaKey:e.os.macintosh?r.indexOf("ctrl")>-1:false}},translateRegisteredKeyToStandard:function(e){return t.hasOwnProperty(e)?t[e]:e},validateShortcutString:function(e){var t=/^((Ctrl|Shift|Alt)\+){0,3}([a-z0-9\.,\-\*\/=]|Plus|Tab|Space|Enter|Backspace|Home|Delete|End|Pageup|Pagedown|Escape|ArrowUp|ArrowDown|ArrowLeft|ArrowRight|F[1-9]|F1[0-2])$/i.test(e);if(!t){throw new Error("Shortcut '"+e+"' is not a valid shortcut string. It must be a '+'-separated list of modifier keys and the actual key, like 'Ctrl+Alt+S'. Or more generally, it must match the expression /^((Ctrl|Shift|Alt)+){0,3}([a-z0-9.,-*/=]|Plus|Tab|Space|Enter|Backspace|Home|Delete|End|Pageup|Pagedown|ArrowUp|ArrowDown|ArrowLeft|ArrowRight|Escape|F[1-9]|F1[0-2])$/i.")}},validateKeyCombination:function(e){var t=e.ctrlRequested?"ctrl+":"";t+=e.altKey?"alt+":"";t+=e.shiftKey?"shift+":"";t+=e.key;if(a[t]){throw new Error("Registering the shortcut '"+t+"' is not allowed ("+a[t]+").")}if([".",",","-","+","=","*","/"].indexOf(e.key)>-1&&t.indexOf("shift")>-1){throw new Error("Registering the shortcut '"+t+"' is not allowed because the 'Shift' modifier changes the meaning of the "+e.key+" key on many keyboards.")}},getNormalizedShortcutString:function(e){var t=e.ctrlRequested?"ctrl+":"";t+=e.altKey?"alt+":"";t+=e.shiftKey?"shift+":"";t+=e.key;return t},shortcutMayBeUsedHere:function(e,t){var r=t.tagName.toLowerCase();if((r==="input"||r==="textarea")&&e.key.includes("arrow")){return false}return true},handleKeydown:function(e,t,a,i){if(!i.key){return}if(i.key==="Control"||i.key==="Shift"||i.key==="Alt"||i.key==="AltGraph"||i.key==="Meta"){return}if(i.isMarked()){return}if(i.altKey&&!n){return}var s=r.hasOwnProperty(i.key)?r[i.key]:i.key;s=s.toLowerCase();if(s!==e.key||i.ctrlKey!==e.ctrlKey||i.altKey!==e.altKey||i.shiftKey!==e.shiftKey||i.metaKey!==e.metaKey){return}if(!o.shortcutMayBeUsedHere(e,i.target||i.srcElement)){return}i.preventDefault();i.setMarked();i.stopPropagation();var c={registeredShortcut:t,originalBrowserEvent:i.originalEvent||i};a(c)}};return o});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/XMLPreprocessor", ["sap/base/Log","sap/base/util/deepExtend","sap/base/util/JSTokenizer","sap/base/util/ObjectPath","sap/ui/base/BindingInfo","sap/ui/base/BindingParser","sap/ui/base/ManagedObject","sap/ui/base/SyncPromise","sap/ui/core/Component","sap/ui/core/XMLTemplateProcessor","sap/ui/model/BindingMode","sap/ui/model/CompositeBinding","sap/ui/model/Context","sap/ui/performance/Measurement"],function(e,n,t,r,i,o,a,u,s,f,l,c,d,g){"use strict";var p="http://schemas.sap.com/sapui5/extension/sap.ui.core.template/1",m="sap.ui.core.util.XMLPreprocessor",h=[m],v=m+"/getResolvedBinding",y=m+"/insertFragment",b=m+".process",x=u.resolve(),w=u.resolve(true),C=Object.prototype.toString,N={},A=a.extend("sap.ui.core.util._with",{metadata:{library:"sap.ui.core",properties:{any:"any"},aggregations:{child:{multiple:false,type:"sap.ui.core.util._with"}}},updateProperty:function(){this.setAny(this.mBindingInfos.any.binding.getExternalValue())}}),M=A.extend("sap.ui.core.util._repeat",{metadata:{library:"sap.ui.core",aggregations:{list:{multiple:true,type:"n/a",_doesNotRequireFactory:true}}},updateList:function(){}});function P(e,n,t,r){function i(n){if(!r){r=e.getBinding("any");if(r instanceof c){r=r.getBindings();if(t!==undefined){r=r[t]}}}return Array.isArray(r)?r[n]:r}function o(e){return e instanceof d?e.getPath():e.getModel().resolve(e.getPath(),e.getContext())}return{_slice:function(e,t){i(0);return!e&&t>=r.length?this:P(null,n,undefined,r.slice(e,t))},getInterface:function(e,t){var o,a,u;if(typeof e==="string"){t=e;e=undefined}i();if(Array.isArray(r)){if(e>=0&&e<r.length){a=r[e]}else{throw new Error("Invalid index of part: "+e)}}else if(e!==undefined){throw new Error("Not the root formatter of a composite binding")}else if(t){a=r}else{throw new Error("Missing path")}if(t){u=a.getModel();if(t.charAt(0)!=="/"){o=a instanceof d?a:u.createBindingContext(a.getPath(),a.getContext())}a=u.createBindingContext(t,o);if(!a){throw new Error("Model could not create binding context synchronously: "+u)}}return P(null,n,undefined,a)},getModel:function(e){var n=i(e);return n&&n.getModel()},getPath:function(e){var n=i(e);return n&&o(n)},getSetting:function(e){if(e==="bindingContexts"||e==="models"){throw new Error("Illegal argument: "+e)}return n[e]}}}function E(e,n,t,r,i){var o=false;function a(n,a){var s=n.formatter,f=n.model,c=e.getModel(f);if(s&&s.requiresIContext===true){s=n.formatter=s.bind(null,P(e,t,a))}if(s&&i&&(c&&c.$$valueAsPromise||a===undefined&&o)){n.formatter=function(){var e=this;return u.all(arguments).then(function(n){return s.apply(e,n)})};n.formatter.textFragments=s.textFragments}n.mode=l.OneTime;n.parameters??={};n.parameters.scope=r;if(i&&c&&c.$$valueAsPromise){o=n.parameters.$$valueAsPromise=true}}try{n.parts.forEach(a);a(n);e.bindProperty("any",n);return u.resolve(e.getAny())}catch(e){return u.reject(e)}finally{e.unbindProperty("any",true)}}function I(e,n){var t=-1;function r(i){if(i){return e[t]}t+=1;if(t<e.length){return n(e[t],t,e).then(r)}return undefined}return e.length?r():x}function B(e){var n,t=e.attributes,r="<"+e.nodeName,i,o;for(i=0,o=t.length;i<o;i+=1){n=t.item(i);r+=" "+n.name+'="'+n.value+'"'}return r+(e.childNodes.length?">":"/>")}function F(e,n){return n.visitNode(e)}return{plugIn:function(n,t,r){var i=N[t];if(n!==null&&typeof n!=="function"||n===F){throw new Error("Invalid visitor: "+n)}if(!t||t===p||t==="sap.ui.core"||t.indexOf(" ")>=0){throw new Error("Invalid namespace: "+t)}e.debug("Plug-in visitor for namespace '"+t+"', local name '"+r+"'",n,m);if(r){t=t+" "+r;i=N[t]||i}N[t]=n;return i||F},visitNodeWrapper:F,process:function(a,c,P){var F=c.caller,j=e.isLoggable(e.Level.DEBUG,m),O=j,R=c.name,S={},L=0,U={},$=c._supportInfo,T=e.isLoggable(e.Level.WARNING,m);function q(e){return{find:function(e,n){try{return u.resolve(I(e,n))}catch(e){return u.reject(e)}},getContext:function(n=""){var t,r,i;if(n[0]==="{"){throw new Error("Must be a simple path, not a binding: "+n)}t=o.simpleParser("{"+n+"}");r=e.getModel(t.model);if(!r){throw new Error("Unknown model '"+t.model+"': "+n)}i=r.resolve(t.path,e.getBindingContext(t.model));if(!i){throw new Error("Cannot resolve path: "+n)}return r.createBindingContext(i)},getResult:function(n,t){return z(n,t,e,true)},getSettings:function(){return P},getViewInfo:function(){return n({},c)},insertFragment:function(n,t){return G(n,t,e)},visitAttribute:function(n,t){return ie(n,t,e)},visitAttributes:function(n){return oe(n,e)},visitChildNodes:function(n){return ae(n,e)},visitNode:function(n){try{return ue(n,e)}catch(e){return u.reject(e)}},with:function(n,t){var r,i=false,o,a=new A;if(!t){e.setChild(a)}for(o in n){r=n[o];i=true;a.setModel(r.getModel(),o);a.bindObject({model:o,path:r.getPath()})}return i||t?q(a):this}}}function k(n){if(j){e.debug(J()+Array.prototype.slice.call(arguments,1).join(" "),n&&B(n),m)}}function _(n){if(j){e.debug(J()+"Finished","</"+n.nodeName+">",m)}}function D(n,t){n+=B(t);e.error(n,F,m);throw new Error(F+": "+n)}function X(e){var n,t=Array.prototype.filter.call(e.childNodes,a),r,i,o=false;function a(e){return e.nodeType===1}function u(e,n){return e.namespaceURI===p&&e.localName===n}if(!t.length||!u(t[0],"then")){return null}for(r=1,i=t.length;r<i;r+=1){n=t[r];if(o){D("Expected </"+e.prefix+":if>, but instead saw ",n)}if(u(n,"else")){o=true}else if(!u(n,"elseif")){D("Expected <"+e.prefix+":elseif> or <"+e.prefix+":else>, but instead saw ",t[r])}}return t}function J(){return(L<10?"[ ":"[")+L+"] "}function W(e){return e&&e.charAt(0)==="."?r.get(e.slice(1),U):r.get(e||"",U)||r.get(e||"")}function z(e,n,t,r,a){try{g.average(v,"",h);let s;try{s=o.complexParser(e,U,r,true,true,true,null,!c.sync)}catch(e){return u.reject(e)}let f;if(s){if(!c.sync){if(s.wait){f=u.resolve(s.resolved)}s=s.bindingInfo}if(typeof s==="string"){a?.();return u.resolve(s)}s=i.createProperty(s)}else{a?.();return u.resolve(e)}if(s.functionsNotFound){if(r){se(n,"Function name(s)",s.functionsNotFound.join(", "),"not found")}return null}if(!i.isReady(s,t)){if(r){se(n,"Binding not ready")}return null}const l=s.parts.every(e=>e.value!==undefined);if(l){a?.()}if(!f){const r=E(t,s,P,U,!c.sync);if(c.sync&&r.isPending()){D("Async formatter in sync view in "+e+" of ",n)}return r}return f.then(function(){return E(t,s,P,U,true)})}finally{g.end(v)}}function G(e,n,t){var r,i=c.sync?f.loadTemplate:f.loadTemplatePromise,o=R;t.$mFragmentContexts??={};if(t.$mFragmentContexts[e]){D("Cyclic reference to fragment '"+e+"' ",n)}L++;k(n,"fragmentName =",e);t.$mFragmentContexts[e]=true;R=e;g.average(y,"",h);r=S[e];if(!r){S[e]=r=u.resolve(i(e,"fragment"))}return r.then(function(e){e=n.ownerDocument.importNode(e,true);g.end(y);return K(e).then(function(){if(e.namespaceURI==="sap.ui.core"&&e.localName==="FragmentDefinition"){return V(e,t,n)}n.parentNode.insertBefore(e,n);return ue(e,t)})}).then(function(){n.parentNode.removeChild(n);R=o;t.$mFragmentContexts[e]=false;_(n);L-=1})}function V(e,n,t=e){return ae(e,n).then(function(){var n;while(n=e.firstChild){t.parentNode.insertBefore(n,t)}})}function H(e,n){var t=se.bind(null,e,"Constant test condition"),r=z(e.getAttribute("test"),e,n,true,t)||u.resolve(false);return r.catch(function(n){se(e,"Error in formatter:",n)}).then(function(n){var t=!!n&&n!=="false";if(j){if(typeof n==="string"){n=JSON.stringify(n)}else if(n===undefined){n="undefined"}else if(Array.isArray(n)){n="[object Array]"}k(e,"test ==",n,"--\x3e",t)}return t})}function K(e){var n={},r=e.getAttributeNodeNS(p,"require"),i,o;function a(){return new u(function(e,n){var t=o.map(sap.ui.require);if(t.every(Boolean)){e(t)}else{sap.ui.require(o,function(){e(arguments)},n)}}).then(function(e){Object.keys(n).forEach(function(n,t){U[n]=e[t]})})}if(r&&r.value){i=r.value;e.removeAttributeNode(r);if(i[0]==="{"){n=t.parseJS(i);o=Object.keys(n).map(function(e){return n[e]});return a()}o=i.split(" ").map(function(e){return e.replace(/\./g,"/")});if(!c.sync){return a()}o.forEach(sap.ui.requireSync)}return x}function Q(e,n,t){var r=z(n.value,e,t,false);if(!r){k(e,"Binding not ready for attribute",n.name);return x}return r.then(function(t){if(t===null||t===undefined){k(e,"Removed attribute",n.name);e.removeAttributeNode(n)}else if(t!==n.value){switch(typeof t){case"boolean":case"number":case"string":k(e,n.name,"=",t);n.value=t;break;default:k(e,"Ignoring",C.call(t),"value for attribute",n.name)}}},function(t){k(e,"Error in formatter of attribute",n.name,t)})}function Y(e,n){var t=e.getAttribute("name"),r,i,o=e.getAttribute("value");if(t&&t[0]==="."){t=t.slice(1)}if(!t||t.includes(".")){D("Missing proper relative name in ",e)}r=W(o);if(!r){D("Invalid value in ",e)}i=U[t];U[t]=r;return V(e,n).then(function(){e.parentNode.removeChild(e);U[t]=i})}function Z(e,n){var t=e.getAttribute("name"),r=z(t,e,n,true);if(!r){return w}return r.then(function(r){var i;if(r!==t){k(e,"name =",r)}i=s.getCustomizing(c.componentId,{extensionName:r,name:R,type:"sap.ui.viewExtensions"});if(i&&i.className==="sap.ui.core.Fragment"&&i.type==="XML"){return G(i.fragmentName,e,n)}return true},function(n){se(e,"Error in formatter:",n);return true})}function ee(e,n){var t=e.getAttribute("fragmentName"),r=z(t,e,n,true);if(!r){return x}return r.then(function(t){var r=U;U=Object.create(U);return G(t,e,n).then(function(){U=r})},function(n){se(e,"Error in formatter:",n)})}function ne(e,n){L++;return I(X(e)||[e],function(t){if(t.localName==="else"){return w}if(t.localName==="then"){t=e}return H(t,n)}).then(function(t){return(t?V(t,n,e):x).then(function(){e.parentNode.removeChild(e);_(e);L-=1})})}function te(e,n){var t=e.getAttribute("list")||"",r=o.complexParser(t,U,false,true,true,true),i,a,s,f,d,g=e.getAttribute("var");if(g===""){D("Missing variable name for ",e)}if(!r){D("Missing binding for ",e)}if(r.functionsNotFound){se(e,"Function name(s)",r.functionsNotFound.join(", "),"not found")}f=new M;n.setChild(f);r.mode=l.OneTime;f.bindAggregation("list",r);a=f.getBinding("list");f.unbindAggregation("list",true);s=r.model;if(!a){D("Missing model '"+s+"' in ",e)}a.enableExtendedChangeDetection();i=a.getContexts(r.startIndex,r.length||Infinity);if(!c.sync&&i.dataRequested){d=new u(function(e){a.attachEventOnce("change",e)}).then(function(){return a.getContexts(r.startIndex,r.length)})}else{d=u.resolve(i)}g??=s;f.setModel(a.getModel(),g);L++;k(e,"Starting");return d.then(function(n){return I(n,function(t,r){var i=r===n.length-1?e:e.cloneNode(true);f.setBindingContext(t,g);k(e,g,"=",t.getPath());return V(i,f,e)}).then(function(){_(e);L-=1;e.parentNode.removeChild(e)})})}function re(e,n){var t,r,i,a,s=e.getAttribute("helper"),f,l=e.getAttribute("path"),g,p,m=e.getAttribute("var");if(m===""){D("Missing variable name for ",e)}i=new A;n.setChild(i);t=o.simpleParser("{"+l+"}");m??=t.model;if(s||m){r=n.getModel(t.model);if(!r){D("Missing model '"+t.model+"' in ",e)}p=r.resolve(t.path,n.getBindingContext(t.model));if(!p){D("Cannot resolve path for ",e)}f=r.createBindingContext(p);if(s){a=W(s);if(typeof a!=="function"){D("Cannot resolve helper for ",e)}f=a(f)}g=u.resolve(f);if(c.sync&&g.isPending()){D("Async helper in sync view in ",e)}g=g.then(function(n){if(n instanceof d){r=n.getModel();p=n.getPath()}else if(n!==undefined){if(typeof n!=="string"||n===""){D("Illegal helper result '"+n+"' in ",e)}p=n}i.setModel(r,m);i.bindObject({model:m,path:p})})}else{p=l;i.bindObject(p);g=x}return g.then(function(){L++;k(e,m,"=",p);if(i.getBindingContext(m)===n.getBindingContext(m)){se(e,"Set unchanged path:",p);i=n}return V(e,i).then(function(){e.parentNode.removeChild(e);_(e);L-=1})})}function ie(e,n,t){if($){$({context:undefined,env:{caller:"visitAttribute",before:{name:n.name,value:n.value}}})}return Q(e,n,t).then(function(){if($){$({context:undefined,env:{caller:"visitAttribute",after:{name:n.name,value:n.value}}})}})}function oe(e,n){function t(e,n){return e.name.localeCompare(n.name)}return I(Array.prototype.slice.apply(e.attributes).sort(t),function(t){return ie(e,t,n)})}function ae(e,n){return I(Array.prototype.slice.apply(e.childNodes),function(e){return ue(e,n)})}function ue(e,n){var t;function r(){return oe(e,n).then(function(){return ae(e,n)}).then(function(){if($){$({context:e,env:{caller:"visitNode",after:{name:e.tagName}}})}})}if(e.nodeType!==1){return x}if($){$({context:e,env:{caller:"visitNode",before:{name:e.tagName}}})}if(e.namespaceURI===p){switch(e.localName){case"alias":return Y(e,n);case"if":return ne(e,n);case"repeat":return te(e,n);case"with":return re(e,n);default:D("Unexpected tag ",e)}}else if(e.namespaceURI==="sap.ui.core"){switch(e.localName){case"ExtensionPoint":return Z(e,n).then(function(e){return e?r():undefined});case"Fragment":if(e.getAttribute("type")==="XML"){return ee(e,n)}break}}else{t=N[e.namespaceURI+" "+e.localName]||N[e.namespaceURI];if(t){L++;k(e,"Calling visitor");return t(e,q(n)).then(function(n){if(n!==undefined){D("Unexpected return value from visitor for ",e)}_(e);L-=1})}}return r()}function se(n){if(T){if(!O){O=true;e.warning("Warning(s) during processing of "+F,null,m)}e.warning(J()+Array.prototype.slice.call(arguments,1).join(" "),n&&B(n),m)}}g.average(b,"",h);P??={};if(j){k(undefined,"Start processing",F);if(P.bindingContexts instanceof d){k(undefined,"undefined =",P.bindingContexts)}else{for(const e in P.bindingContexts){k(undefined,e,"=",P.bindingContexts[e])}}}if($){$({context:a,env:{caller:"view",viewinfo:n({},c),settings:n({},P),clone:a.cloneNode(true),type:"template"}})}return K(a).then(function(){return ue(a,new A({models:P.models,bindingContexts:P.bindingContexts}))}).then(function(){k(undefined,"Finished processing",F);g.end(b);return a}).unwrap()}}},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/reflection/BaseTreeModifier", ["sap/base/util/isPlainObject","sap/base/Log","sap/ui/base/ManagedObject","sap/ui/base/ManagedObjectMetadata","sap/ui/core/util/XMLPreprocessor","sap/ui/core/XMLTemplateProcessor","sap/ui/util/XMLHelper"],function(t,e,n,o,r,i,a){"use strict";function s(t){return new Promise(function(e,n){sap.ui.require([t],function(t){e(t)},function(){n(new Error("Required control '"+t+"' couldn't be created asynchronously"))})})}return{bySelectorExtensionPointEnabled:function(t,e,n){return Promise.resolve(this.bySelector(t,e,n))},bySelectorTypeIndependent:async function(t,e,n){if(t?.name){n||=this.bySelector(t.viewSelector,e);const o=await this.getExtensionPointInfo(t.name,n);return o?o.parent:undefined}const o=this.getControlIdBySelector(t,e);return this._byId(o,n)},bySelector:function(t,e,n){const o=this.getControlIdBySelector(t,e);return this._byId(o,n)},getControlIdBySelector:function(t,e){if(!t){return undefined}if(typeof t==="string"){t={id:t}}let n=t.id;if(t.idIsLocal){if(e){if(typeof e==="string"){n=`${e}---${n}`}else{n=e.createId(n)}}else{throw new Error("App Component instance needed to get a control's ID from selector")}}return n},getSelector:function(t,e,n){let o=t;if(typeof o!=="string"){o=t?this.getId(t):undefined}else if(!e){throw new Error("App Component instance needed to get a selector from string ID")}if(n&&(n.id||n.idIsLocal)){throw new Error("A selector of control with the ID '"+o+"' was requested, "+"but core properties were overwritten by the additionally passed information.")}const r=this.checkControlId(o,e);if(!r){throw new Error("Generated ID attribute found - to offer flexibility a stable control ID is needed to assign the changes to, but for this control the ID was generated by SAPUI5 "+o)}const i=Object.assign({},n,{id:"",idIsLocal:false});if(this.hasLocalIdSuffix(o,e)){const t=e.getLocalId(o);i.id=t;i.idIsLocal=true}else{i.id=o}return i},checkControlId:function(t,e){const r=t instanceof n?t.getId():t;const i=o.isGeneratedId(r);return!i||this.hasLocalIdSuffix(t,e)},hasLocalIdSuffix:function(t,e){const o=t instanceof n?t.getId():t;if(!e){return false}return!!e.getLocalId(o)},_checkAndPrefixIdsInFragment:function(t,e){const n=a.getParseError(t);if(n.errorCode!==0){return Promise.reject(new Error(t.parseError.reason))}const o=t.documentElement;let r=[];let i=[];if(o.localName==="FragmentDefinition"){r=this._getElementNodeChildren(o)}else{r=[o]}i=[].concat(r);function s(t){i.push(t)}let c=Promise.resolve();for(let t=0,e=r.length;t<e;t++){c=c.then(this._traverseXmlTree.bind(this,s,r[t]))}return c.then(function(){for(let t=0,n=i.length;t<n;t++){if(i[t].getAttribute("id")){i[t].setAttribute("id",e+"."+i[t].getAttribute("id"))}else{throw new Error("At least one control does not have a stable ID")}}return o})},_getElementNodeChildren:function(t){const e=[];const n=t.childNodes;for(let t=0,o=n.length;t<o;t++){if(n[t].nodeType===1){e.push(n[t])}}return e},_getControlMetadataInXml:async function(t){const e=this._getControlTypeInXml(t).replace(/\./g,"/");const n=sap.ui.require(e)||await s(e);if(n?.getMetadata){return n.getMetadata()}else{throw new Error("getMetadata function is not available on control type")}},getControlMetadata:function(t){},getLibraryName:async function(t){const e=await this.getControlMetadata(t);return e.getLibraryName()},_getControlTypeInXml:function(t){let e=t.namespaceURI;e=e?e+".":"";e+=t.localName;return e},_traverseXmlTree:function(t,e){async function n(e,o){let r;if(!o){r=await this._getControlMetadataInXml(e,true)}const i=r&&await r.getAllAggregations();const a=this._getElementNodeChildren(e);let s=Promise.resolve();a.forEach(function(e){const o=i&&i[e.localName];s=s.then(function(){return n.call(this,e,o).then(function(){if(!o){t(e)}})}.bind(this))}.bind(this));return s}return n.call(this,e,false)},_getSerializedValue:function(t){if(this._isSerializable(t)&&typeof t!=="string"){return JSON.stringify(t)}return t},_isSerializable:function(e){return t(e)||Array.isArray(e)||Object(e)!==e},_escapeCurlyBracketsInString:function(t){return typeof t==="string"?t.replace(/({|})/g,"\\$&"):t},_templateFragment:function(t,e){return Promise.resolve(r.process(i.loadTemplate(t,"fragment"),{name:t},e))},getPropertyBindingOrProperty:function(t,e){const n=this.getPropertyBinding(t,e);if(n){return Promise.resolve(n)}return this.getProperty(t,e)},setPropertyBindingOrProperty:function(t,e,n){const o=n&&(n.path||n.parts);const r=n&&typeof n==="string"&&n.substring(0,1)==="{"&&n.slice(-1)==="}";const i=o||r?"setPropertyBinding":"setProperty";this[i](t,e,n)},setVisible:function(t,e){},getVisible:function(t){},setStashed:function(t,e){},getStashed:function(t){},bindProperty:function(t,e,n){},unbindProperty:function(t,e){},bindAggregation:function(t,e,n){},unbindAggregation:function(t,e){},setProperty:function(t,e,n){},getProperty:function(t,e){},isPropertyInitial:function(t,e){},setPropertyBinding:function(t,e,n){},getPropertyBinding:function(t,e){},createAndAddCustomData:function(t,e,n,o){},getCustomDataInfo:function(t,e){},createControl:function(t,e,n,o,r){},applySettings:function(t,e){},_byId:function(t,e){},getId:function(t){},getParent:function(t){},getControlType:function(t){},setAssociation:function(t,e,n){},getAssociation:function(t,e){},getAllAggregations:function(t){},getAggregation:function(t,e){},insertAggregation:function(t,e,n,o,r,i){},removeAggregation:function(t,e,n){},moveAggregation:function(t,e,n,o,r,i,a,s){},replaceAllAggregation:function(t,e,n){},removeAllAggregation:function(t,e){},getBindingTemplate:function(t,e){},updateAggregation:function(t,e){},findIndexInParentAggregation:function(t){},getParentAggregationName:function(t,e){},findAggregation:function(t,e){},validateType:function(t,e,n,o,r){},instantiateFragment:function(t,e,n){},templateControlFragment:function(t,e,n){},destroy:function(t){},getChangeHandlerModulePath:function(t){return this._getFlexCustomData(t,"flexibility")},_getFlexCustomData:function(t){},getFlexDelegate:function(t){let n;const o=this._getFlexCustomData(t,"delegate");if(typeof o==="string"){try{n=JSON.parse(o);if(n.payload===undefined){n.payload={}}}catch(n){e.error("Flex Delegate for control "+this.getId(t)+" is malformed",n.message)}}return n},getExtensionPointInfo:function(t,e){}}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/reflection/JsControlTreeModifier", ["sap/base/util/merge","sap/base/util/ObjectPath","sap/ui/base/BindingParser","sap/ui/core/util/reflection/BaseTreeModifier","sap/ui/core/util/reflection/XmlTreeModifier","sap/ui/core/Element","sap/ui/core/Fragment","sap/ui/util/XMLHelper"],function(t,e,n,r,i,o,a,s){"use strict";function g(t){return new Promise(function(e,n){sap.ui.require([t],function(t){e(t)},function(){n(new Error("Required control '"+t+"' couldn't be created asynchronously"))})})}const u={targets:"jsControlTree",setVisible:function(t,e){if(t.setVisible){this.unbindProperty(t,"visible");t.setVisible(e)}else{throw new Error("Provided control instance has no setVisible method")}},getVisible:function(t){if(t.getVisible){return Promise.resolve(t.getVisible())}else{return Promise.reject(new Error("Provided control instance has no getVisible method"))}},setStashed:async function(t,e){e=!!e;if(t.unstash){if(t.isStashed()===true&&e===false){t=await t.unstash(true)}if(t.setVisible){this.setVisible(t,!e)}return t}else{throw new Error("Provided control instance has no unstash method")}},getStashed:async function(t){if(t.isStashed){if(t.isStashed()){return true}const e=await this.getVisible(t);return!e}throw new Error("Provided control instance has no isStashed method")},bindProperty:function(t,e,n){t.bindProperty(e,n)},unbindProperty:function(t,e){if(t){t.unbindProperty(e,true)}},setProperty:function(t,e,r){const i=t.getMetadata().getPropertyLikeSetting(e);let o;let a;this.unbindProperty(t,e);try{o=n.complexParser(r,undefined,true)}catch(t){a=true}if(i){if(this._isSerializable(r)){if(o&&typeof o==="object"||a){r=this._escapeCurlyBracketsInString(r)}const e=i._sMutator;t[e](r)}else{throw new TypeError("Value cannot be stringified","sap.ui.core.util.reflection.JsControlTreeModifier")}}},getProperty:function(t,e){const n=t.getMetadata().getPropertyLikeSetting(e);let r;if(n){const e=n._sGetter;r=t[e]()}return Promise.resolve(r)},isPropertyInitial:function(t,e){return t.isPropertyInitial(e)},setPropertyBinding:function(t,e,n){this.unbindProperty(t,e);const r={};r[e]=n;return t.applySettings(r)},getPropertyBinding:function(t,e){return t.getBindingInfo(e)},createAndAddCustomData:async function(t,e,n,r){const i=await this.createControl("sap.ui.core.CustomData",r);this.setProperty(i,"key",e);this.setProperty(i,"value",n);return this.insertAggregation(t,"customData",i,0)},getCustomDataInfo:function(t,e){let n;if(t.getCustomData){t.getCustomData().some(function(t){if(t.getKey()===e){n=t;return true}return false})}if(n){return{customData:n,customDataValue:n.getValue()}}else{return{}}},createControl:async function(t,e,n,r,i){t=t.replace(/\./g,"/");if(this.bySelector(r,e)){const t="Can't create a control with duplicated ID "+(r.id||r);return Promise.reject(t)}const o=sap.ui.require(t)||await g(t);const a=this.getControlIdBySelector(r,e);return new o(a,i)},applySettings:function(t,e){return Promise.resolve(t.applySettings(e))},_byId:function(t){return o.getElementById(t)},getId:function(t){return t.getId()},getParent:function(t){return t.getParent?.()},getControlMetadata:function(t){return Promise.resolve(t?.getMetadata())},getControlType:function(t){return t?.getMetadata().getName()},setAssociation:function(t,e,n){const r=t.getMetadata().getAssociation(e);r.set(t,n)},getAssociation:function(t,e){const n=t.getMetadata().getAssociation(e);return n.get(t)},getAllAggregations:function(t){return Promise.resolve(t.getMetadata().getAllAggregations())},getAggregation:async function(t,e){const n=await this.findAggregation(t,e);if(n){return t[n._sGetter]()}return undefined},insertAggregation:async function(t,e,n,r){if(e==="customData"){t.insertAggregation(e,n,r,true);return}const i=await this.findAggregation(t,e);if(i){if(i.multiple){const e=r||0;t[i._sInsertMutator](n,e)}else{t[i._sMutator](n)}}},removeAggregation:async function(t,e,n){if(e==="customData"){t.removeAggregation(e,n,true);return}const r=await this.findAggregation(t,e);if(r){t[r._sRemoveMutator](n)}},moveAggregation:async function(t,e,n,r,i,o){let a;let s;if(e==="customData"){t.removeAggregation(e,i,true)}else{a=await this.findAggregation(t,e)}if(r==="customData"){n.insertAggregation(r,i,o,true)}else{s=await this.findAggregation(n,r)}if(a&&s){t[a._sRemoveMutator](i);if(s.multiple){n[s._sInsertMutator](i,o)}else{n[s._sMutator](i)}}},replaceAllAggregation:async function(t,e,n){const r=await this.findAggregation(t,e);t[r._sRemoveAllMutator]();n.forEach((e,n)=>{t[r._sInsertMutator](e,n)})},removeAllAggregation:async function(t,e){if(e==="customData"){t.removeAllAggregation(e,true)}else{const n=await this.findAggregation(t,e);if(n){t[n._sRemoveAllMutator]()}}},getBindingTemplate:function(t,e){const n=t.getBindingInfo(e);return Promise.resolve(n?.template)},updateAggregation:async function(t,e){const n=await this.findAggregation(t,e);if(n&&t.getBinding(e)){t[n._sDestructor]();t.updateAggregation(e)}},findIndexInParentAggregation:async function(t){const e=this.getParent(t);if(!e){return-1}const n=await this.getParentAggregationName(t);const r=await this.getAggregation(e,n);if(Array.isArray(r)){return r.indexOf(t)}else{return 0}},getParentAggregationName:function(t){return Promise.resolve(t.sParentAggregationName)},findAggregation:function(t,e){if(t?.getMetadata){const n=t.getMetadata();const r=n.getAllAggregations();return Promise.resolve(r[e])}return Promise.resolve(undefined)},validateType:async function(t,e,n,r){const i=e.type;const o=await this.getAggregation(n,e.name);if(e.multiple===false&&o&&o.length>0){return false}return t.isA(i)},instantiateFragment:async function(t,e,n){const r=s.parse(t);const i=await this._checkAndPrefixIdsInFragment(r,e);const o=await a.load({definition:i,sId:n&&n.getId(),controller:n.getController()});if(o&&!Array.isArray(o)){return[o]}return o||[]},templateControlFragment:async function(t,e,n){const i=await r._templateFragment(t,e);const o=n?.getController();return a.load({definition:i,controller:o})},destroy:function(t,e){t.destroy(e)},_getFlexCustomData:function(t,n){const r=typeof t==="object"&&typeof t.data==="function"&&t.data("sap-ui-custom-settings");return e.get(["sap.ui.fl",n],r)},bindAggregation:function(t,e,n){return Promise.resolve(t.bindAggregation(e,n))},unbindAggregation:function(t,e){return Promise.resolve(t.unbindAggregation(e))},getExtensionPointInfo:async function(t,e){const n=e._xContent?e._xContent:e;const r=await i.getExtensionPointInfo(t,n);if(r){r.index--;r.parent=r.parent&&this._byId(e.createId(r.parent.getAttribute("id")));r.defaultContent=r.defaultContent.map(t=>{const n=e.createId(t.getAttribute("id"));return this._byId(n)}).filter(t=>!!t)}return r}};return t({},r,u)},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/reflection/XmlTreeModifier", ["sap/base/util/isPlainObject","sap/base/util/merge","sap/ui/base/DataType","sap/ui/base/ManagedObject","sap/ui/core/util/reflection/BaseTreeModifier","sap/ui/core/Fragment","sap/ui/util/XMLHelper"],function(t,e,n,i,r,o,a){"use strict";const s="http://schemas.sap.com/sapui5/extension/sap.ui.core.CustomData/1";const c=e({},r,{targets:"xmlTree",setVisible:function(t,e){if(e){t.removeAttribute("visible")}else{t.setAttribute("visible",e)}},getVisible:function(t){return c.getProperty(t,"visible")},setStashed:function(t,e){if(!e){t.removeAttribute("stashed")}else{t.setAttribute("stashed",e)}c.setVisible(t,!e);return Promise.resolve()},getStashed:function(t){return Promise.all([c.getProperty(t,"stashed"),c.getProperty(t,"visible")]).then(function(t){return!!t[0]||!t[1]})},bindProperty:function(t,e,n){t.setAttribute(e,"{"+n+"}")},unbindProperty:function(t,e){t.removeAttribute(e)},_setProperty:function(t,e,n,i){let r=c._getSerializedValue(n);if(i){r=c._escapeCurlyBracketsInString(r)}t.setAttribute(e,r)},setProperty:function(t,e,n){c._setProperty(t,e,n,true)},getProperty:async function(e,r){let o;let a=e.getAttribute(r);const s=await c.getControlMetadata(e);const g=s.getProperty(r);if(g){o=g.getType();if(r==="value"&&c.getControlType(e)==="sap.ui.core.CustomData"){const t=await c.getProperty(e,"key");if(t==="sap-ui-custom-settings"){o=n.getType("object")}}if(a===null){a=g.getDefaultValue()||o.getDefaultValue()}else{const e=i.bindingParser(a,undefined,true);if(t(e)){if(e.path||e.parts){a=undefined}else{a=e}}else{a=o.parseValue(e||a)}}}return a},isPropertyInitial:function(t,e){const n=t.getAttribute(e);return n==null},setPropertyBinding:function(t,e,n){if(typeof n!=="string"){throw new Error("For XML, only strings are supported to be set as property binding.")}t.setAttribute(e,n)},getPropertyBinding:function(t,e){const n=t.getAttribute(e);if(n){const t=i.bindingParser(n,undefined,true);if(t&&(t.path||t.parts)){return t}}return undefined},createAndAddCustomData:function(t,e,n){t.setAttributeNS(s,"custom.data.via.modifier:"+e,c._escapeCurlyBracketsInString(n));return Promise.resolve()},getCustomDataInfo:function(t,e){const n=t.attributes["custom.data.via.modifier:"+e];if(n){return{customData:n,customDataValue:n.value}}else{return{}}},createControl:async function(t,e,n,i,r,o){const a=c.getControlIdBySelector(i,e);if(!c.bySelector(i,e,n)){let e;const i=t.split(".");let o="";if(i.length>1){e=i.pop();o=i.join(".")}const s=n.ownerDocument.createElementNS(o,e);if(a){s.setAttribute("id",a)}if(r){await c.applySettings(s,r)}return s}else{throw new Error("Can't create a control with duplicated ID "+a)}},applySettings:async function(t,e){const n=await c.getControlMetadata(t);const i=n.getJSONKeys();Object.keys(e).forEach(function(n){const r=i[n];const o=e[n];switch(r._iKind){case 0:c._setProperty(t,n,o,false);break;case 3:c.setAssociation(t,n,o);break;default:throw new Error("Unsupported in applySettings on XMLTreeModifier: "+n)}})},_byId:function(t,e){if(e){if(e.ownerDocument&&e.ownerDocument.getElementById&&e.ownerDocument.getElementById(t)){return e.ownerDocument.getElementById(t)}return e.querySelector("[id='"+t+"']")}return undefined},getId:function(t){return t.getAttribute("id")},getParent:function(t){const e=t.parentNode;if(e&&!c.getId(e)&&!c._isExtensionPoint(e)){return e.parentNode}return e},_getLocalName:function(t){return t.localName||t.baseName||t.nodeName},getControlType:function(t){return c._getControlTypeInXml(t)},setAssociation:function(t,e,n){if(typeof n!=="string"){n=c.getId(n)}t.setAttribute(e,n)},getAssociation:function(t,e){return t.getAttribute(e)},getAllAggregations:async function(t){const e=await c.getControlMetadata(t);return e.getAllAggregations()},getAggregation:async function(t,e){let n=[];const i=await c._isSingleValueAggregation(t,e);const r=await c._findAggregationNode(t,e);if(r){const e=await c._getControlsInAggregation(t,r);n=e}else{const r=await c._isAltTypeAggregation(t,e);if(r&&i){const i=await c.getProperty(t,e);n.push(i)}}if(e==="customData"){let e;const i=Array.prototype.slice.call(t.attributes).reduce(function(n,i){const r=c._getLocalName(i);if(i.namespaceURI===s){const e=t.ownerDocument.createElementNS("sap.ui.core","CustomData");e.setAttribute("key",r);e.setAttribute("value",i.value);n.push(e)}else if(i.namespaceURI&&i.name.indexOf("xmlns:")!==0){if(!e){e={}}if(!e.hasOwnProperty(i.namespaceURI)){e[i.namespaceURI]={}}e[i.namespaceURI][r]=i.nodeValue}return n},[]);n=n.concat(i);if(e){const i=t.ownerDocument.createElementNS("sap.ui.core","CustomData");i.setAttribute("key","sap-ui-custom-settings");c.setProperty(i,"value",e);n.push(i)}}return i?n[0]:n},insertAggregation:async function(t,e,n,i,r,o){const a=await c._findAggregationNode(t,e);return g(t,e,n,i,r,o,a)},removeAggregation:async function(t,e,n){const i=await c._findAggregationNode(t,e);i.removeChild(n)},moveAggregation:async function(t,e,n,i,r,o,a,s){const u=await c._findAggregationNode(t,e);const l=await c._findAggregationNode(n,i);u.removeChild(r);await g(n,i,r,o,a,s,l)},replaceAllAggregation:async function(t,e,n){const i=await c._findAggregationNode(t,e);const r=await c._getControlsInAggregation(t,i);r.forEach(function(t){i.removeChild(t)});n.forEach(t=>{i.appendChild(t)})},removeAllAggregation:async function(t,e){const n=await c._findAggregationNode(t,e);if(t===n){const e=await c._getControlsInAggregation(t,t);e.forEach(function(e){t.removeChild(e)})}else{return t.removeChild(n)}},_findAggregationNode:async function(t,e){let n;const i=c._children(t);for(let t=0;t<i.length;t++){const r=i[t];if(r.localName===e){n=r;break}}if(!n){const n=await c._isDefaultAggregation(t,e);if(n){return t}}return n},_isDefaultAggregation:async function(t,e){const n=await c.getControlMetadata(t);const i=n.getDefaultAggregation();return i&&e===i.name},_isNotNamedAggregationNode:async function(t,e){const n=await c.getAllAggregations(t);const i=n[e.localName];return t.namespaceURI!==e.namespaceURI||!i},_isSingleValueAggregation:async function(t,e){const n=await c.getAllAggregations(t);const i=n[e];return!i.multiple},_isAltTypeAggregation:async function(t,e){const n=await c.getControlMetadata(t);const i=n.getAllAggregations()[e];return!!i.altTypes},_isExtensionPoint:function(t){return c._getControlTypeInXml(t)==="sap.ui.core.ExtensionPoint"},getControlMetadata:function(t){return c._getControlMetadataInXml(t)},_getControlsInAggregation:async function(t,e){const n=[].slice.call(c._children(e));const i=await Promise.all(n.map(async e=>{const n=await c._isNotNamedAggregationNode(t,e);return n?e:undefined}));return i.filter(t=>!!t)},_children:function(t){if(t.children){return t.children}else{const e=[];for(let n=0;n<t.childNodes.length;n++){const i=t.childNodes[n];if(i.nodeType===i.ELEMENT_NODE){e.push(i)}}return e}},getBindingTemplate:async function(t,e){const n=await c._findAggregationNode(t,e);if(n){const t=c._children(n);if(t.length===1){return t[0]}}return undefined},updateAggregation:function(t,e){},findIndexInParentAggregation:async function(t){const e=c.getParent(t);if(!e){return-1}const n=await c.getParentAggregationName(t,e);let i=await c.getAggregation(e,n);if(Array.isArray(i)){const e=i.map(async t=>{if(c._isExtensionPoint(t)){return t}const e=await c.getProperty(t,"stashed");return!e?t:undefined});i=await Promise.all(e);return i.filter(t=>!!t).indexOf(t)}else{return 0}},getParentAggregationName:async function(t,e){const n=e.isSameNode(t.parentNode);const i=await c._isNotNamedAggregationNode(e,t);if(i&&n){const t=await c.getControlMetadata(e);return t.getDefaultAggregationName()}else{return c._getLocalName(t.parentNode)}},findAggregation:async function(t,e){const n=await c.getControlMetadata(t);const i=await n.getAllAggregations();if(i){return i[e]}return undefined},validateType:async function(t,e,n,i,r){const a=e.type;const s=await c.getAggregation(n,e.name);if(e.multiple===false&&s&&s.length>0){return false}const g=await o.load({definition:i});const u=!Array.isArray(g)?[g]:g;const l=u[r].isA(a);u.forEach(function(t){t.destroy()});return l},instantiateFragment:async function(t,e,n){const i=a.parse(t);const r=await c._checkAndPrefixIdsInFragment(i,e);let o;if(r.localName==="FragmentDefinition"){o=c._getElementNodeChildren(r)}else{o=[r]}o.forEach(function(t){if(c._byId(t.getAttribute("id"),n)){throw Error("The following ID is already in the view: "+t.getAttribute("id"))}});return o},templateControlFragment:async function(t,e){const n=await r._templateFragment(t,e);return c._children(n)},destroy:function(t){const e=t.parentNode;if(e){e.removeChild(t)}},_getFlexCustomData:function(t,e){if(!t){return undefined}return t.getAttributeNS("sap.ui.fl",e)},bindAggregation:function(t,e,n,i){c.bindProperty(t,e,n.path);return c.insertAggregation(t,e,n.template,0,i)},unbindAggregation:function(t,e){if(t.hasAttribute(e)){t.removeAttribute(e);return c.removeAllAggregation(t,e)}return Promise.resolve()},getExtensionPointInfo:async function(t,e){if(e&&t){const n=Array.prototype.slice.call(e.getElementsByTagNameNS("sap.ui.core","ExtensionPoint"));const i=n.filter(function(e){return e.getAttribute("name")===t});const r=i.length===1?i[0]:undefined;if(r){const t=c.getParent(r);const e=await Promise.all([c.getParentAggregationName(r,t),c.findIndexInParentAggregation(r)]);const n={parent:t,aggregationName:e[0],index:e[1]+1,defaultContent:Array.prototype.slice.call(c._children(r))};return n}}return undefined}});async function g(t,e,n,i,r,o,a){let s;if(!a){const n=t.namespaceURI;s=await c.createControl(n+"."+e,undefined,r);t.appendChild(s)}else{s=a}if(!o){const t=s.children;let e=0;const n=i<t.length?i:t.length;for(let i=0;i<n;i++){if(t[i].namespaceURI==="sap.ui.core"&&t[i].tagName.includes("ExtensionPoint")){e=e+1-t[i].children.length}}i=i+e}if(i>=s.childElementCount){s.appendChild(n)}else{const e=await c._getControlsInAggregation(t,s);s.insertBefore(n,e[i])}return undefined}return c},true);
/*
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/serializer/HTMLViewSerializer", ["sap/ui/base/EventProvider","./Serializer","./delegate/HTML","sap/ui/thirdparty/vkbeautify"],function(e,t,i,r){"use strict";var n=e.extend("sap.ui.core.util.serializer.HTMLViewSerializer",{constructor:function(t,i,r,n){e.apply(this);this._oView=t;this._oWindow=i;this._fnGetControlId=r;this._fnGetEventHandlerName=n}});n.prototype.serialize=function(){var e=this;var n=function(t){return t?.isA?.("sap.ui.core.mvc.View")&&t!==e._oView};var o=new t(this._oView,new i(this._fnGetControlId,this._fnGetEventHandlerName),true,this._oWindow,n);var a=o.serialize();var s=[];s.push("<template");if(this._oView.getControllerName&&this._oView.getControllerName()){s.push(' data-controller-name="'+this._oView.getControllerName()+'"')}s.push(" >");s.push(a);s.push("</template>");return r.xml(s.join(""))};return n});
/*
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/serializer/Serializer", ["sap/ui/base/EventProvider","sap/base/assert"],function(e,t){"use strict";var i=e.extend("sap.ui.core.util.serializer.Serializer",{constructor:function(t,i,r,s,a,n){e.apply(this);this._oRootControl=t;this._delegate=i;this._bSkipRoot=!!r;this._oWindow=s||globalThis;this._fnSkipAggregations=a;this._fnSkipElement=n}});i.prototype.serialize=function(){return this._serializeRecursive(this._oRootControl,0)};i.prototype._serializeRecursive=function(e,i,r,s){t(typeof e!=="undefined","The control must not be undefined");var a=[];var n=!this._bSkipRoot||i!==0;if(n){var o=this._delegate.start(e,r,s);var g=this._delegate.middle(e,r,s);a.push(o+g)}var l=e.getMetadata().getAllAggregations();if(l){for(var h in l){if(this._fnSkipAggregations&&this._fnSkipAggregations(e,h)){continue}var u=[];var f=l[h];var p=e[f._sGetter]();if(e.getBindingPath(h)&&e.getBindingInfo(h).template){u.push(e.getBindingInfo(h).template)}else if(p&&p.length){for(var _=0;_<p.length;_++){var d=p[_];if(this._isObjectSerializable(d)){u.push(d)}}}else if(this._isObjectSerializable(p)){u.push(p)}if(u.length>0){if(n){a.push(this._delegate.startAggregation(e,h))}var v=this._isDefaultAggregation(e,h);for(var c=0;c<u.length;c++){a.push(this._serializeRecursive(u[c],i+1,h,v))}if(n){a.push(this._delegate.endAggregation(e,h))}}}}if(n){var b=this._delegate.end(e,r,s);a.push(b)}return a.join("")};i.prototype._isObjectSerializable=function(e){return!!e?.isA?.("sap.ui.core.Element")&&!(this._fnSkipElement&&this._fnSkipElement(e))};i.prototype._isDefaultAggregation=function(e,t){return e.getMetadata().getDefaultAggregationName()===t};return i});
/*
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/serializer/ViewSerializer", ["sap/ui/base/EventProvider","./HTMLViewSerializer","./XMLViewSerializer","sap/base/assert","sap/ui/base/DesignTime"],function(e,i,t,r,s){"use strict";var o=e.extend("sap.ui.core.util.serializer.ViewSerializer",{constructor:function(i,t,r){e.apply(this);this._oRootControl=i;this._oWindow=t||globalThis;this._mViews={};this._sDefaultXmlNamespace=r}});o.prototype.serializeToXML=function(){return this.serialize("XML")};o.prototype.serializeToHTML=function(){return this.serialize("HTML")};o.prototype.serialize=function(e){this._mViews={};this._sConvertToViewType=e||undefined;return this._serializeRecursive(this._oRootControl)};o.prototype._getViewType=function(e){if(!this._sConvertToViewType){if(e?.isA?.("sap.ui.core.mvc.HTMLView")){return"HTML"}if(e?.isA?.("sap.ui.core.mvc.XMLView")){return"XML"}}return this._sConvertToViewType};o.prototype._serializeRecursive=function(e){r(typeof e!=="undefined","The control must not be undefined");var i=this._oWindow.sap.ui.require("sap/ui/core/UIArea");var t=this._oWindow.sap.ui.require("sap/ui/core/ComponentContainer");if(e?.isA?.("sap.ui.core.mvc.View")){var s=this._getViewSerializer(e,this._getViewType(e));if(s){var o=e.getViewName()||e.getControllerName();if(!this._mViews[o]){this._mViews[o]=s.serialize(this._getViewType(e))}}}if(e.getMetadata().getClass()===i){var n=e.getContent();for(var a=0;a<n.length;a++){this._serializeRecursive(n[a])}}else if(e.getMetadata().getClass()===t){this._serializeRecursive(e.getComponentInstance().getRootControl())}else{var u=e.getMetadata().getAllAggregations();if(u){for(var l in u){var p=u[l];var c=e[p._sGetter]();if(c&&c.length){for(var a=0;a<c.length;a++){var f=c[a];if(f?.isA?.("sap.ui.core.Element")){this._serializeRecursive(f)}}}else if(c?.isA?.("sap.ui.core.Element")){this._serializeRecursive(c)}}}}return this._mViews};o.prototype._getViewSerializer=function(e,r){var o=function(i){if(i.fFunction&&i.fFunction._sapui_handlerName){var t=i.fFunction._sapui_handlerName;var r=e.getController();if(r[t]||s.isControllerCodeDeactivated()){return t}}};var n=function(i){if(i._sapui_controlId){return i._sapui_controlId}return i.getId().replace(e.createId(""),"")};if(r==="HTML"){return new i(e,this._oWindow,n,o)}if(r==="XML"){return new t(e,this._oWindow,this._sDefaultXmlNamespace,n,o)}else{var a=e?e.constructor:"?";throw Error("View type '"+a+"' is not supported for conversion. Only HTML and XML is supported")}};return o});
/*
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/serializer/XMLViewSerializer", ["sap/ui/base/EventProvider","./Serializer","./delegate/XML","sap/ui/thirdparty/vkbeautify"],function(e,i,t,r){"use strict";var s=e.extend("sap.ui.core.util.serializer.XMLViewSerializer",{constructor:function(i,t,r,s,a){e.apply(this);this._oView=i;this._oWindow=t;this._sDefaultNamespace=r;this._fnGetControlId=s;this._fnGetEventHandlerName=a}});s.prototype.serialize=function(){var e=[];var s=function(i,t){if(!t){var r=i?i.constructor:"?";throw Error("Controls with empty package are currently not supported by the XML serializer: "+r)}if(e.indexOf(t)===-1){e.push(t)}};var a=this;var o=function(e){return e?.isA?.("sap.ui.core.mvc.View")&&e!==a._oView};var n=new i(this._oView,new t(this._sDefaultNamespace,this._fnGetControlId,this._fnGetEventHandlerName,s),true,this._oWindow,o);var u=n.serialize();var l=[];l.push("<sap.ui.core.mvc:View");if(this._oView.getControllerName&&this._oView.getControllerName()){l.push(' controllerName="'+this._oView.getControllerName()+'"')}if(e.indexOf("sap.ui.core.mvc")===-1){e.push("sap.ui.core.mvc")}for(var h=0;h<e.length;h++){if(this._sDefaultNamespace&&this._sDefaultNamespace===e[h]){l.push(' xmlns="'+e[h]+'"')}else{l.push(" xmlns:"+e[h]+'="'+e[h]+'"')}}l.push(" >");l.push(u);l.push("</sap.ui.core.mvc:View>");return r.xml(l.join(""))};return s});
/*
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/serializer/delegate/Delegate", ["sap/ui/base/EventProvider"],function(t){"use strict";var e=t.extend("sap.ui.core.util.serializer.delegate.Delegate",{constructor:function(){t.apply(this)}});e.prototype.start=function(t,e,r){return""};e.prototype.middle=function(t,e,r){return""};e.prototype.end=function(t,e,r){return""};e.prototype.startAggregation=function(t,e){return""};e.prototype.endAggregation=function(t,e){return""};return e});
/*
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/serializer/delegate/HTML", ["./Delegate","sap/base/strings/hyphenate","sap/base/util/deepEqual"],function(t,e,r){"use strict";var i=t.extend("sap.ui.core.util.serializer.delegate.HTML",{constructor:function(e,r){t.apply(this);this._fnGetControlId=e;this._fnGetEventHandlerName=r}});i.prototype.startAggregation=function(t,e){return'<div data-sap-ui-aggregation="'+e+'">'};i.prototype.endAggregation=function(t,e){return"</div>"};i.prototype.start=function(t,e,r){return"<div"};i.prototype.middle=function(t,e,i){var a=[];var n=this._fnGetControlId?this._fnGetControlId(t):t.getId();if(n.indexOf("__")!==0){a.push(this._createAttribute("id",n))}a.push(this._createAttribute("data-sap-ui-type",t.getMetadata()._sClassName));if(t.aCustomStyleClasses){var s=t.aCustomStyleClasses;var u=[];for(var o=0;o<s.length;o++){var l=s[o];if(!l.startsWith("sapM")&&!l.startsWith("sapUi")){u.push(l)}}if(u.length>0){a.push(this._createAttribute("class",u.join(" ")))}}if(this._fnGetEventHandlerName){var g=t.getMetadata().getAllEvents();for(var p in g){if(t.hasListeners(p)){var f=t.mEventRegistry[p];for(var o=0;o<f.length;o++){var d=this._fnGetEventHandlerName(f[o]);if(d){a.push(this._createAttribute("data-"+this._createHtmlAttributeName(p),d));break}}}}}var c=t.getMetadata().getAllAssociations();this._createAttributes(a,t,c,function(t,e){if(c[t].multiple){return e.join(" ")}return e},function(t,e){return e!==null&&e!==""});var h=t.getMetadata().getAllProperties();var v=t.getMetadata().getPropertyDefaults();this._createAttributes(a,t,h,null,function(t,e){return!r(e,v[t])});var _=t.getMetadata().getAllAggregations();this._createAttributes(a,t,_,null,function(e,r){if(!t.getBindingInfo(e)&&(!r||typeof r!=="string")){return false}return true});a.push(">");return a.join("")};i.prototype.end=function(t,e,r){return"</div>"};i.prototype._createAttributes=function(t,e,r,i,a){for(var n in r){var s=r[n];var u=s._sGetter;if(e[u]){var o=e[u]();o=i?i(n,o):o;if(!e.getBindingInfo(n)){if(!a||a(n,o)){t.push(this._createAttribute("data-"+this._createHtmlAttributeName(n),o))}}else{t.push(this._createDataBindingAttribute(e,n,o))}}}};i.prototype._createDataBindingAttribute=function(t,e,r){var i=t.getBindingInfo(e);var a=null;var n=r;if(!i.bindingString){if(i.binding){var s=i.binding.getMetadata().getName();if(s==="sap.ui.model.PropertyBinding"||s==="sap.ui.model.resource.ResourcePropertyBinding"){a=i.binding.getValue()}}if(i.parts){i=i.parts[0]}var u=i.model;if(a===r||a===null){n="{"+(u?u+">"+i.path:i.path)+"}"}}else{n=i.bindingString}return this._createAttribute("data-"+this._createHtmlAttributeName(e),n)};i.prototype._createAttribute=function(t,e){return" "+t+'="'+e+'"'};i.prototype._createHtmlAttributeName=function(t){return e(t)};return i});
/*
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/util/serializer/delegate/XML", ["./Delegate","sap/base/util/deepEqual","sap/base/security/encodeXML"],function(t,e,r){"use strict";var a=t.extend("sap.ui.core.util.serializer.delegate.XML",{constructor:function(e,r,a,i){t.apply(this);this._sDefaultNamespace=e;this._fnGetControlId=r;this._fnMemorizePackage=i;this._fnGetEventHandlerName=a}});a.prototype.startAggregation=function(t,e){return"<"+this._createAggregationName(t,e)+">"};a.prototype.endAggregation=function(t,e){return"</"+this._createAggregationName(t,e)+">"};a.prototype.start=function(t,e,r){return"<"+this._createTagName(t)};a.prototype.end=function(t,e,r){return"</"+this._createTagName(t)+">"};a.prototype.middle=function(t,r,a){var i=[];var n=this._fnGetControlId?this._fnGetControlId(t):t.getId();if(n.indexOf("__")!==0){i.push(this._createAttribute("id",n))}if(t.aCustomStyleClasses){var s=t.aCustomStyleClasses;var o=[];for(var u=0;u<s.length;u++){var g=s[u];if(!g.startsWith("sapM")&&!g.startsWith("sapUi")){o.push(g)}}if(o.length>0){i.push(this._createAttribute("class",o.join(" ")))}}if(this._fnGetEventHandlerName){var f=t.getMetadata().getAllEvents();for(var c in f){if(t.hasListeners(c)){var l=t.mEventRegistry[c];for(var u=0;u<l.length;u++){var p=this._fnGetEventHandlerName(l[u]);if(p){i.push(this._createAttribute(c,p));break}}}}}var d=t.getMetadata().getAllAssociations();this._createAttributes(i,t,d,function(t,e){if(d[t].multiple){return e.join(" ")}return e},function(t,e){return e!==null&&e!==""});var h=t.getMetadata().getAllProperties();var v=t.getMetadata().getPropertyDefaults();this._createAttributes(i,t,h,null,function(t,r){return!e(r,v[t])});var _=t.getMetadata().getAllAggregations();this._createAttributes(i,t,_,null,function(e,r){if(!t.getBindingInfo(e)&&(!r||typeof r!=="string")){return false}return true});i.push(">");return i.join("")};a.prototype._createAttributes=function(t,e,r,a,i){for(var n in r){var s=r[n];var o=s._sGetter;if(e[o]){var u=e[o]();u=a?a(n,u):u;if(!e.getBindingInfo(n)){if(!i||i(n,u)){t.push(this._createAttribute(n,u))}}else{t.push(this._createDataBindingAttribute(e,n,u))}}}};a.prototype._createDataBindingAttribute=function(t,e,r){var a=t.getBindingInfo(e);var i=null;var n=r;if(!a.bindingString){if(a.binding){var s=a.binding.getMetadata().getName();if(s==="sap.ui.model.PropertyBinding"||s==="sap.ui.model.resource.ResourcePropertyBinding"){i=a.binding.getValue()}}if(a.parts){a=a.parts[0]}var o=a.model;if(i===r||i===null){n="{"+(o?o+">"+a.path:a.path)+"}"}}else{n=a.bindingString}return this._createAttribute(e,n)};a.prototype._createAttribute=function(t,e){var a=typeof e==="string"||e instanceof String?r(e):e;return" "+t+'="'+a+'"'};a.prototype._createTagName=function(t){var e=t.getMetadata()._sClassName;var r=e.lastIndexOf(".");var a=r===-1?e:e.substring(r+1);var i=r===-1?e:e.substring(0,r);if(this._fnMemorizePackage){this._fnMemorizePackage(t,i)}return this._createNamespace(i,a)};a.prototype._createAggregationName=function(t,e){var r=t.getMetadata()._sClassName;var a=r.lastIndexOf(".");var i=a===-1?r:r.substring(0,a);return this._createNamespace(i,e)};a.prototype._createNamespace=function(t,e){if(this._sDefaultNamespace&&this._sDefaultNamespace===t){return e}else{return t+":"+e}};return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/webc/WebComponent", ["../Control","../Element","./WebComponentMetadata","./WebComponentRenderer","sap/base/strings/hyphenate","sap/base/strings/camelize","../library","../LabelEnablement"],function(t,e,n,r,o,i,a,s){"use strict";var p=a.TextDirection;const u=a.ValueState;const f={[u.Error]:"Negative",[u.Warning]:"Critical",[u.Success]:"Positive",[u.Information]:"Information",[u.None]:"None"};const l=Object.fromEntries(Object.entries(f).map(([t,e])=>[e,t]));var d=function(t){if(t.id&&e.getElementById(t.id)){return e.getElementById(t.id)}};var h=function(t,e,n){if(e===undefined){e=0}if(n===undefined){n=2}if(t==null){return t}if(t instanceof window.HTMLElement){var r=d(t);return r?r:t}if(e<n){if(Array.isArray(t)){return t.map(h,e+1,n)}if(typeof t==="object"){var o={};for(var i in t){if(t.hasOwnProperty(i)){o[i]=h(t[i],e+1,n)}}return o}}return t};var c=t.extend("sap.ui.core.webc.WebComponent",{metadata:{stereotype:"webcomponent",abstract:true,library:"sap.ui.core",properties:{__isBusy:{type:"boolean",visibility:"hidden",defaultValue:false,mapping:{type:"property",to:"__is-busy"}}}},constructor:function(e,n){t.apply(this,arguments);this.__busyIndicatorTimeout=null;this.__onInvalidationBound=this.__onInvalidation.bind(this);this.__handleCustomEventBound=this.__handleCustomEvent.bind(this);this.__delegates={onBeforeRendering:this.__onBeforeRenderingDelegate,onAfterRendering:this.__onAfterRenderingDelegate};this.addDelegate(this.__delegates,true,this,false)},renderer:r},n);c.prototype._setSlot=function(t,e){var n=["tooltip","customData","layoutData","dependents","dragDropConfig"];if(t&&!n.includes(e)){var r=this.getMetadata().getAggregationSlot(e);t.__slot=r}};c.prototype._unsetSlot=function(t){if(t){delete t.__slot}};c.prototype.setAggregation=function(e,n,r){var o=t.prototype.setAggregation.apply(this,arguments);this._setSlot(n,e);return o};c.prototype.insertAggregation=function(e,n,r,o){var i=t.prototype.insertAggregation.apply(this,arguments);this._setSlot(n,e);return i};c.prototype.addAggregation=function(e,n,r){var o=t.prototype.addAggregation.apply(this,arguments);this._setSlot(n,e);return o};c.prototype.removeAggregation=function(e,n,r){var o=t.prototype.removeAggregation.apply(this,arguments);this._unsetSlot(o);return o};c.prototype.removeAllAggregation=function(e,n){var r=t.prototype.removeAllAggregation.apply(this,arguments);r.forEach(function(t){this._unsetSlot(t)},this);return r};c.prototype.__onBeforeRenderingDelegate=function(){this.__detachCustomEventsListeners()};c.prototype.__onAfterRenderingDelegate=function(){this.__attachCustomEventsListeners();var t=this.getDomRef();this.__updateObjectProperties(t);window.customElements.whenDefined(t.localName).then(function(){if(typeof t.attachInvalidate==="function"){t.attachInvalidate(this.__onInvalidationBound)}if(t._individualSlot){this.__slot=t._individualSlot}}.bind(this))};c.prototype.__updateObjectProperties=function(t){var e=this.getMetadata().getPropertiesByMapping("property");for(var n in e){if(this.isPropertyInitial(n)){continue}var r=e[n];var o=r.get(this);if(r.type==="object"||typeof o==="object"){var i=r._sMapTo?r._sMapTo:n;t[i]=o}}};c.prototype.setBusy=function(t){var e=this.getBusy();this.setProperty("busy",t,true);if(e!==t){if(t){this.__busyIndicatorTimeout=setTimeout(function(){this.setProperty("__isBusy",t)}.bind(this),this.getBusyIndicatorDelay())}else{this.setProperty("__isBusy",t);clearTimeout(this.__busyIndicatorTimeout)}}return this};c.prototype.__onInvalidation=function(t){if(t.type==="property"){var e=t.name;var n=t.newValue;var r=this.getMetadata().getProperty(e);if(r){if(r._fnMappingParser){n=this[r._fnMappingParser](n)}this.setProperty(e,n,true)}}};c.prototype.__attachCustomEventsListeners=function(){var t=this.getMetadata().getAllEvents();for(var e in t){var n=o(e);this.getDomRef().addEventListener(n,this.__handleCustomEventBound)}};c.prototype.__detachCustomEventsListeners=function(){var t=this.getDomRef();if(!t){return}var e=this.getMetadata().getAllEvents();for(var n in e){if(e.hasOwnProperty(n)){var r=o(n);t.removeEventListener(r,this.__handleCustomEventBound)}}};c.prototype.__handleCustomEvent=function(t){var e=t.type;var n=i(e);var r=this.__formatEventData(t.detail);var o=this.getMetadata().getEvent(n);var a=!o.fire(this,r);if(a){t.preventDefault()}};c.prototype.__formatEventData=function(t){if(typeof t==="object"){return h(t)}return{}};c.prototype.__callPublicMethod=function(t,n){if(!this.getDomRef()){throw new Error("Method called before custom element has been created by: "+this.getId())}var r=Array.from(n).map(function(t){if(t instanceof e){return t.getDomRef()}return t});var o=this.getDomRef()[t].apply(this.getDomRef(),r);if(typeof o==="object"){o=h(o)}return o};c.prototype.__callPublicGetter=function(t){if(!this.getDomRef()){throw new Error("Getter called before custom element has been created by: "+this.getId())}var e=this.getDomRef()[t];if(typeof e==="object"){e=h(e)}return e};c.prototype.destroy=function(){var e=this.getDomRef();this.__detachCustomEventsListeners();if(e&&typeof e.detachInvalidate==="function"){e.detachInvalidate(this.__onInvalidationBound)}return t.prototype.destroy.apply(this,arguments)};c.prototype._mapEnabled=function(t){return!t};c.prototype._mapTextDirection=function(t){if(t===p.Inherit){return null}return t.toLowerCase()};c.prototype._mapValueState=function(t){return f[t]};c.prototype._parseValueState=function(t){return l[t]};c.prototype._getAriaLabelledByForRendering=function(t){var e=s.getReferencingLabels(this);if(Array.isArray(t)){t.forEach(function(t){if(e.indexOf(t)<0){e.unshift(t)}})}return e.join(" ")};return c});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/webc/WebComponentMetadata", ["../ElementMetadata","./WebComponentRenderer","sap/base/strings/camelize"],function(t,r,e){"use strict";var o=["property","style","textContent","slot","none"];var p=function(r,e){t.apply(this,arguments)};p.prototype=Object.create(t.prototype);p.prototype.constructor=p;var a=function(t){return o.includes(t)?t:o[0]};var i=t.prototype.metaFactoryProperty;var n=function(t,r,e){i.apply(this,arguments);if(!e.mapping||typeof e.mapping==="string"){this._sMapping=a(e.mapping)}else if(typeof e.mapping==="object"){this._sMapping=a(e.mapping.type);this._sMapTo=e.mapping.to;this._sSlotName=e.mapping.slotName;this._fnMappingFormatter=e.mapping.formatter;this._fnMappingParser=e.mapping.parser}};n.prototype=Object.create(i.prototype);n.prototype.constructor=n;p.prototype.metaFactoryProperty=n;var s=t.prototype.metaFactoryAggregation;var g=function(t,r,e){s.apply(this,arguments);this._sSlot=e.slot||""};g.prototype=Object.create(s.prototype);g.prototype.constructor=g;p.prototype.metaFactoryAggregation=g;var c=t.prototype.metaFactoryAssociation;var y=function(t,r,e){c.apply(this,arguments);if(!e.mapping||typeof e.mapping!=="object"){this._sMapping=""}else{this._sMapping="property";this._sMapTo=e.mapping.to;this._fnMappingFormatter=e.mapping.formatter;this._fnMappingParser=e.mapping.parser}};y.prototype=Object.create(c.prototype);y.prototype.constructor=y;p.prototype.metaFactoryAssociation=y;p.prototype.applySettings=function(r){var e=r.metadata;this._sTag=e.tag;this._aMethods=e.methods||[];this._aGetters=e.getters||[];t.prototype.applySettings.call(this,r)};p.prototype.generateAccessors=function(){t.prototype.generateAccessors.call(this);var r=this.getClass().prototype;this._aMethods.forEach(function(t){if(!r[t]){r[t]=function(){return this.__callPublicMethod(t,arguments)}}});this._aGetters.forEach(function(t){var e="get"+t.substr(0,1).toUpperCase()+t.substr(1);if(!r[e]){r[e]=function(){return this.__callPublicGetter(t)}}})};p.prototype.getTag=function(){return this._sTag};p.prototype.getMethods=function(){return this._aMethods};p.prototype.getGetters=function(){return this._aGetters};p.prototype.getAggregationSlot=function(t){var r=this._mAllAggregations[t];return r?r._sSlot:undefined};p.prototype.isManagedAttribute=function(t){var r=this.getAllProperties();for(var o in r){if(r.hasOwnProperty(o)){var p=r[o];if(p._sMapping==="property"&&(p._sMapTo===t||e(t)===o)){return true}}}var a=this.getAllAssociations();for(var i in a){if(a.hasOwnProperty(i)){var n=a[i];if(n._sMapping==="property"&&n._sMapTo===e(t)){return true}}}return false};p.prototype.getPropertiesByMapping=function(t){var r={};var e=this.getAllProperties();var o=this.getAllPrivateProperties();for(var p in e){if(e.hasOwnProperty(p)){var a=e[p];if(a._sMapping===t){r[p]=a}}}for(var p in o){if(o.hasOwnProperty(p)){var a=o[p];if(a._sMapping===t){r[p]=a}}}return r};p.prototype.getAssociationsWithMapping=function(){var t={};var r=this.getAllAssociations();for(var e in r){if(r.hasOwnProperty(e)){var o=r[e];if(o._sMapping){t[e]=o}}}return t};p.prototype.getRenderer=function(){if(this._oRenderer){return this._oRenderer}return r};return p});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/webc/WebComponentRenderer", ["../Element","../Control","sap/base/strings/hyphenate"],function(t,e,r){"use strict";var a={apiVersion:2};a.render=function(t,e){var r=e.getMetadata().getTag();t.openStart(r,e);this.renderAttributeProperties(t,e);this.renderStyleProperties(t,e);this.renderAssociationProperties(t,e);this.renderTooltipAggregation(t,e);this.customRenderInOpeningTag(t,e);this.preserveUnmanagedAttributes(t,e);this.preserveUnmanagedStyles(t,e);t.openEnd();this.renderTextContentProperties(t,e);this.renderSlotProperties(t,e);this.renderAggregations(t,e);this.customRenderInsideTag(t,e);t.close(r)};a.renderAttributeProperties=function(t,e){var a=e.getMetadata().getPropertiesByMapping("property");var n=["enabled"].concat(Object.entries(e.getMetadata().getPropertyDefaults()).map(([t,e])=>e!==undefined&&e!==false?t:null));for(var i in a){var o=a[i];if(e.isPropertyInitial(i)&&!n.includes(i)){continue}var s=o.get(e);if(o.type==="object"||typeof s==="object"){continue}var p=o._sMapTo?o._sMapTo:r(i);if(o._fnMappingFormatter){s=e[o._fnMappingFormatter].call(e,s)}if(o.type==="boolean"){if(s){t.attr(p,"")}}else{if(s!=null){t.attr(p,s)}}}};a.preserveUnmanagedAttributes=function(t,e){var r=e.getDomRef();if(!r){return}var a=r.getAttributeNames();var n=["id","data-sap-ui","style","class","__is-busy"];a.forEach(function(a){if(n.indexOf(a)!==-1){return}if(e.getMetadata().isManagedAttribute(a)){return}var i=r.getAttribute(a);if(i!==null){t.attr(a,i)}})};a.preserveUnmanagedStyles=function(t,e){var a=e.getDomRef();if(!a){return}var n=Array.prototype.slice.apply(a.style);if(n.length===0){return}var i=e.getMetadata().getPropertiesByMapping("style");var o=[];for(var s in i){var p=i[s];var g=p._sMapTo?p._sMapTo:r(s);o.push(g)}n.forEach(function(e){if(o.indexOf(e)!==-1){return}var r=e.startsWith("--")?window.getComputedStyle(a).getPropertyValue(e):a.style[e];t.style(e,r)})};a.renderStyleProperties=function(t,e){var a=e.getMetadata().getPropertiesByMapping("style");for(var n in a){var i=a[n];var o=i._sMapTo?i._sMapTo:r(n);var s=i.get(e);if(i._fnMappingFormatter){s=e[i._fnMappingFormatter].call(e,s)}if(s!=null){t.style(o,s)}}};a.renderAssociationProperties=function(t,e){var a=e.getMetadata().getAssociationsWithMapping();for(var n in a){var i=a[n];var o=i.get(e);var s=r(i._sMapTo);if(i._fnMappingFormatter){o=e[i._fnMappingFormatter].call(e,o)}if(!i.multiple&&o&&typeof o==="object"){o=o.getId()}if(o){t.attr(s,o)}}};a.renderTooltipAggregation=function(t,e){var r=e.getTooltip_Text();if(r){t.attr("tooltip",r)}};a.renderTextContentProperties=function(t,e){var r=e.getMetadata().getPropertiesByMapping("textContent");for(var a in r){var n=r[a];var i=n.get(e);if(n._fnMappingFormatter){i=e[n._fnMappingFormatter].call(e,i)}t.text(i)}};a.renderSlotProperties=function(t,e){var r=e.getMetadata().getPropertiesByMapping("slot");for(var a in r){var n=r[a];var i=n.get(e);if(n._fnMappingFormatter){i=e[n._fnMappingFormatter].call(e,i)}var o=n._sMapTo?n._sMapTo:"span";const s=n._sSlotName||a;if(i){t.openStart(o);t.attr("slot",s);t.openEnd();t.text(i);t.close(o)}}};a.renderAggregations=function(r,a){var n=a.getMetadata().getAllAggregations();for(var i in n){if(t.getMetadata().getAggregations().hasOwnProperty(i)||e.getMetadata().getAggregations().hasOwnProperty(i)){continue}var o=n[i];var s=o.get(a);if(o.multiple){s.forEach(r.renderControl,r)}else{if(s){r.renderControl(s)}}}};a.customRenderInOpeningTag=function(t,e){};a.customRenderInsideTag=function(t,e){};return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/ws/ReadyState", function(){"use strict";var e={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3};return e},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/ws/SapPcpWebSocket", ["./WebSocket","sap/base/Log"],function(e,t){"use strict";var r=e.extend("sap.ui.core.ws.SapPcpWebSocket",{constructor:function(t,r){e.apply(this,arguments)}});r.SUPPORTED_PROTOCOLS={v10:"v10.pcp.sap.com"};r._deserializeRegexp=/((?:[^:\\]|(?:\\.))+):((?:[^:\\\n]|(?:\\.))*)/;r._SEPARATOR="\n\n";r._MESSAGE="MESSAGE";r.prototype._onopen=function(){var e=false;if(this.getProtocol()===""){e=true}else{for(var i in r.SUPPORTED_PROTOCOLS){if(r.SUPPORTED_PROTOCOLS.hasOwnProperty(i)){if(r.SUPPORTED_PROTOCOLS[i]===this.getProtocol()){e=true;break}}}}if(e){this.fireOpen()}else{t.error("Unsupported protocol '"+this.getProtocol()+"' selected by the server. "+"Connection will be closed.");this.close("Unsupported protocol selected by the server")}};r.prototype._onmessage=function(e){var i=-1,n={};if(typeof e.data==="string"){i=e.data.indexOf(r._SEPARATOR)}if(i!==-1){n.pcpFields=this._extractPcpFields(e.data.substring(0,i));n.data=e.data.substr(i+r._SEPARATOR.length)}else{t.warning("Invalid PCP message received: "+e.data);n.pcpFields={};n.data=e.data}this.fireMessage(n)};r.prototype._extractPcpFields=function(e){var t=e.split("\n"),i=[],n={};for(var o=0;o<t.length;o++){i=t[o].match(r._deserializeRegexp);if(i&&i.length===3){n[this._unescape(i[1])]=this._unescape(i[2])}}return n};r.prototype._unescape=function(e){var t=e.split("\b"),r="";for(var i=0;i<t.length;i++){t[i]=t[i].replace(/\\\\/g,"\b").replace(/\\:/g,":").replace(/\\n/g,"\n").replace(/\u0008/g,"\\")}r=t.join("\b");return r};r.prototype._serializePcpFields=function(e,t,r){var i="",n="",o="";if(t==="string"){o="text"}else if(t==="blob"||t==="arraybuffer"){o="binary"}if(e&&typeof e==="object"){for(n in e){if(e.hasOwnProperty(n)&&n.indexOf("pcp-")!==0){i+=this._escape(n)+":"+this._escape(String(e[n]))+"\n"}}}return"pcp-action:"+r+"\npcp-body-type:"+o+"\n"+i+"\n"};r.prototype._escape=function(e){return e.replace(/\\/g,"\\\\").replace(/:/g,"\\:").replace(/\n/g,"\\n")};r.prototype.send=function(t,i){var n=typeof t,o="";o=this._serializePcpFields(i,n,r._MESSAGE);e.prototype.send.call(this,o+t);return this};return r});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/core/ws/WebSocket", ["sap/ui/Device","sap/ui/base/EventProvider","./ReadyState","sap/ui/thirdparty/URI","sap/base/Log"],function(t,e,o,n,s){"use strict";var r=e.extend("sap.ui.core.ws.WebSocket",{constructor:function(o,n){e.apply(this);if(!t.support.websocket){throw new Error("Browser does not support WebSockets.")}if(typeof o!=="string"){throw new Error("sUrl must be a string.")}if(typeof n!=="undefined"&&!Array.isArray(n)&&typeof n!=="string"){throw new Error("aProtocols must be a string, array of strings or undefined.")}this._openConnection(o,n)},metadata:{publicMethods:["send","close","getReadyState","getProtocol"]}});r.prototype.getInterface=function(){return this};r.M_EVENTS={Open:"open",Close:"close",Error:"error",Message:"message"};r.prototype.attachOpen=function(t,e,o){this.attachEvent("open",t,e,o);return this};r.prototype.detachOpen=function(t,e){this.detachEvent("open",t,e);return this};r.prototype.fireOpen=function(t){this.fireEvent("open",t);return this};r.prototype.attachClose=function(t,e,o){this.attachEvent("close",t,e,o);return this};r.prototype.detachClose=function(t,e){this.detachEvent("close",t,e);return this};r.prototype.fireClose=function(t){this.fireEvent("close",t);return this};r.prototype.attachError=function(t,e,o){this.attachEvent("error",t,e,o);return this};r.prototype.detachError=function(t,e){this.detachEvent("error",t,e);return this};r.prototype.fireError=function(t){this.fireEvent("error",t);return this};r.prototype.attachMessage=function(t,e,o){this.attachEvent("message",t,e,o);return this};r.prototype.detachMessage=function(t,e){this.detachEvent("message",t,e);return this};r.prototype.fireMessage=function(t){this.fireEvent("message",t);return this};r.prototype._resolveFullUrl=function(t){var e=new n(t);var o=new n(document.baseURI);o.search("");o.protocol(o.protocol()==="https"?"wss":"ws");e=e.absoluteTo(o);return e.toString()};r.prototype._openConnection=function(t,e){t=this._resolveFullUrl(t);this._oWs=typeof e==="undefined"?new window.WebSocket(t):new window.WebSocket(t,e);this._oWs.onopen=this._onopen.bind(this);this._oWs.onclose=this._onclose.bind(this);this._oWs.onmessage=this._onmessage.bind(this);this._oWs.onerror=this._onerror.bind(this)};r.prototype._onopen=function(){this.fireOpen()};r.prototype._onclose=function(t){this.fireClose({code:t.code,reason:t.reason,wasClean:t.wasClean})};r.prototype._onerror=function(t){this.fireError()};r.prototype._onmessage=function(t){this.fireMessage({data:t.data})};r.prototype.send=function(t){if(this.getReadyState()===o.OPEN){this._oWs.send(t)}else if(this.getReadyState()===o.CONNECTING){this.attachEventOnce("open",function(e){this._oWs.send(t)})}else{s.warning("Unable to send WebSocket message. "+"Connection is already closed or closing. message: "+t)}return this};r.prototype.close=function(t,e){if(typeof t==="string"){e=t;t=undefined}t=typeof t==="undefined"?1e3:t;e=typeof e==="undefined"?"":e;if(this.getReadyState()===o.OPEN){this._oWs.close(t,e)}else if(this.getReadyState()===o.CONNECTING){this.attachEventOnce("open",function(o){this._oWs.close(t,e)})}else{var n="";switch(this.getReadyState()){case o.CLOSED:n="Connection is already closed.";break;case o.CLOSING:n="Connection is already closing.";break}s.warning("Unable to close WebSocket connection. "+n)}return this};r.prototype.getReadyState=function(){return this._oWs.readyState};r.prototype.getProtocol=function(){return this._oWs.protocol};return r});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/containsOrEquals", [],function(){"use strict";var n=function(n,t){if(t&&n&&t!=document&&t!=window){return n.contains(t)}return false};return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/denormalizeScrollBeginRTL", ["sap/ui/util/_FeatureDetection"],function(i){"use strict";var t;if(i.initialScrollPositionIsZero()){t=function(i,t){return-i}}else{t=function(i,t){return t.scrollWidth-t.clientWidth-i}}var n=function(i,n){if(n){return t(i,n)}};return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/denormalizeScrollLeftRTL", ["sap/ui/util/_FeatureDetection"],function(i){"use strict";var t;if(i.initialScrollPositionIsZero()){t=function(i,t){return t.clientWidth+i-t.scrollWidth}}else{t=function(i,t){return i}}var n=function(i,n){if(n){return t(i,n)}};return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/getFirstEditableInput", ["sap/ui/thirdparty/jquery","sap/ui/dom/isHidden"],function(jQuery,t){"use strict";function e(t,e){var n="textarea[readonly],input[type=hidden],input[type=button],input[type=submit],input[type=reset],input[type=image],button",i=":enabled:visible:first";if(e){return jQuery(t).find("input, textarea").not(n).filter(i)[0]}else{return jQuery(t).find("input, textarea").not("input[readonly],"+n).filter(i)[0]}}function n(n,i){var u;if(!n||t(n)){return null}if(i){u=i.includeReadOnly}return e(n,u)}return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/getOwnerWindow", [],function(){"use strict";var n=function n(e){if(e.ownerDocument.parentWindow){return e.ownerDocument.parentWindow}return e.ownerDocument.defaultView};return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/getScrollbarSize", ["sap/ui/thirdparty/jquery"],function(jQuery){"use strict";var i={};var e=function(e,t){if(typeof e==="boolean"){t=e;e=null}var r=e||"#DEFAULT";if(t){if(e){delete i[e]}else{i={}}}if(i[r]){return i[r]}if(!document.body){return{width:0,height:0}}var s=jQuery("<DIV></DIV>").css("visibility","hidden").css("height","0").css("width","0").css("overflow","hidden");if(e){s.addClass(e)}s.prependTo(document.body);var d=jQuery("<div></div>");d[0].style="visibility:visible;position:absolute;height:100px;width:100px;overflow:scroll;opacity:0;";s.append(d);var o=d.get(0);var h=o.offsetWidth-o.scrollWidth;var l=o.offsetHeight-o.scrollHeight;s.remove();if(h===0||l===0){return{width:h,height:l}}i[r]={width:h,height:l};return i[r]};return e});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/isBehindOtherElement", ["sap/base/Log"],function(e){"use strict";function t(t){if(!t){return false}var n=t.getBoundingClientRect(),i=n.left+1,o=n.right-1,r=n.top+1,m=n.bottom-1;if(i<0||o<0||r<0||m<0){e.warning("isBehindOtherElement :: Element with id "+t.id+" is outside the visible viewport, cannot determine whether it is behind another DOM element",this);return false}if(document.elementFromPoint(i,r)!==t&&!t.contains(document.elementFromPoint(i,r))){return true}if(document.elementFromPoint(o,r)!==t&&!t.contains(document.elementFromPoint(o,r))){return true}if(document.elementFromPoint(i,m)!==t&&!t.contains(document.elementFromPoint(i,m))){return true}if(document.elementFromPoint(o,m)!==t&&!t.contains(document.elementFromPoint(o,m))){return true}return false}return t});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/isElementCovered", [],function(){"use strict";function t(t,n,e,i){const r=document.elementFromPoint(t,n);if(!r){return true}return r!==e&&!e.contains(r)&&!r.contains(e)&&(!i||!i.contains(r))}function n(n,e){if(!n){return false}var i=n.getBoundingClientRect(),r=i.left+1,o=i.right-1,u=i.top+1,c=i.bottom-1;return t(r,u,n,e)&&t(o,u,n,e)&&t(r,c,n,e)&&t(o,c,n,e)}return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/isHidden", ["sap/ui/thirdparty/jquery"],function(jQuery){"use strict";function i(i){return i.offsetWidth<=0&&i.offsetHeight<=0||jQuery.css(i,"visibility")==="hidden"}return i});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/jquery/Aria", ["sap/ui/thirdparty/jquery"],function(jQuery){"use strict";function i(i,t,r){var e=this.attr(i);if(!e){return this.attr(i,t)}var n=e.split(" ");if(n.indexOf(t)==-1){r?n.unshift(t):n.push(t);this.attr(i,n.join(" "))}return this}function t(i,t){var r=this.attr(i)||"",e=r.split(" "),n=e.indexOf(t);if(n==-1){return this}e.splice(n,1);if(e.length){this.attr(i,e.join(" "))}else{this.removeAttr(i)}return this}jQuery.fn.addAriaLabelledBy=function(t,r){return i.call(this,"aria-labelledby",t,r)};jQuery.fn.removeAriaLabelledBy=function(i){return t.call(this,"aria-labelledby",i)};jQuery.fn.addAriaDescribedBy=function(t,r){return i.call(this,"aria-describedby",t,r)};jQuery.fn.removeAriaDescribedBy=function(i){return t.call(this,"aria-describedby",i)};return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/jquery/Focusable", ["sap/ui/thirdparty/jquery","sap/ui/dom/isHidden","./hasTabIndex"],function(jQuery,i){"use strict";function n(e,r){var t=r?e.firstChild:e.lastChild,u;while(t){if(t.nodeType==1&&!i(t)){if(jQuery(t).hasTabIndex()){return t}u=n(t,r);if(u){return u}}t=r?t.nextSibling:t.previousSibling}return null}jQuery.fn.firstFocusableDomRef=function(){var e=this.get(0);if(!e||i(e)){return null}return n(e,true)};jQuery.fn.lastFocusableDomRef=function(){var e=this.get(0);if(!e||i(e)){return null}return n(e,false)};return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/jquery/Selection", ["sap/ui/thirdparty/jquery"],function(jQuery){"use strict";jQuery.fn.disableSelection=function(){return this.on(("onselectstart"in document.createElement("div")?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})};jQuery.fn.enableSelection=function(){return this.off(".ui-disableSelection")};return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/jquery/control", ["sap/ui/thirdparty/jquery","sap/ui/core/Element","sap/ui/Global"],function(jQuery,t){"use strict";jQuery.prototype.control=function(a,e){var r=this.map(function(){var a;if(e){var r=jQuery(this).closest("[data-sap-ui],[data-sap-ui-related]");a=r.attr("data-sap-ui-related")||r.attr("id")}else{a=jQuery(this).closest("[data-sap-ui]").attr("id")}return t.getElementById(a)});return r.get(a)};return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/jquery/cursorPos", ["sap/ui/thirdparty/jquery"],function(jQuery){"use strict";var t=function t(e){var r=arguments.length,s,i;s=this.prop("tagName");i=this.prop("type");if(this.length===1&&(s=="INPUT"&&(i=="text"||i=="password"||i=="search")||s=="TEXTAREA")){var n=this.get(0);if(r>0){if(typeof n.selectionStart=="number"){n.focus();n.selectionStart=e;n.selectionEnd=e}return this}else{if(typeof n.selectionStart=="number"){return n.selectionStart}return-1}}else{return this}};jQuery.fn.cursorPos=t;return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/jquery/getSelectedText", ["sap/ui/thirdparty/jquery"],function(jQuery){"use strict";var t=function(){var t=this.get(0);try{if(typeof t.selectionStart==="number"){return t.value.substring(t.selectionStart,t.selectionEnd)}}catch(t){}return""};jQuery.fn.getSelectedText=t;return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/jquery/hasTabIndex", ["sap/ui/thirdparty/jquery"],function(jQuery){"use strict";var t=function(t){var n=jQuery.prop(t,"tabIndex");return n!=null&&n>=0&&(!jQuery.attr(t,"disabled")||jQuery.attr(t,"tabindex"))};jQuery.fn.hasTabIndex=function(){return t(this.get(0))};return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/jquery/parentByAttribute", ["sap/ui/thirdparty/jquery"],function(jQuery){"use strict";var t=function t(r,e){if(this.length>0){if(e){return this.first().parents("["+r+"='"+e+"']").get(0)}else{return this.first().parents("["+r+"]").get(0)}}};jQuery.fn.parentByAttribute=t;return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/jquery/rect", ["sap/ui/thirdparty/jquery","sap/ui/dom/getOwnerWindow"],function(jQuery,t){"use strict";var e=function e(){var i=this.get(0);if(i){if(i.getBoundingClientRect){var r=i.getBoundingClientRect();var n={top:r.top,left:r.left,width:r.right-r.left,height:r.bottom-r.top};var o=t(i);n.left+=jQuery(o).scrollLeft();n.top+=jQuery(o).scrollTop();return n}else{return{top:10,left:10,width:i.offsetWidth,height:i.offsetHeight}}}return null};jQuery.fn.rect=e;return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/jquery/rectContains", ["sap/ui/thirdparty/jquery","sap/base/assert","sap/ui/dom/jquery/rect"],function(jQuery,t){"use strict";var e=function e(r,s){t(!isNaN(r),"iPosX must be a number");t(!isNaN(s),"iPosY must be a number");var i=this.rect();if(i){return r>=i.left&&r<=i.left+i.width&&s>=i.top&&s<=i.top+i.height}return false};jQuery.fn.rectContains=e;return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/jquery/scrollLeftRTL", ["sap/ui/dom/denormalizeScrollLeftRTL","sap/ui/util/_FeatureDetection","sap/ui/thirdparty/jquery"],function(t,e,jQuery){"use strict";var i;if(e.initialScrollPositionIsZero()){i=function(t){return t.scrollWidth+t.scrollLeft-t.clientWidth}}else{i=function(t){return t.scrollLeft}}var r=function(e){var r=this.get(0);if(r){if(e===undefined){return i(r)}else{r.scrollLeft=t(e,r);return this}}};jQuery.fn.scrollLeftRTL=r;return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/jquery/scrollRightRTL", ["sap/ui/util/_FeatureDetection","sap/ui/thirdparty/jquery"],function(t,jQuery){"use strict";var i;if(t.initialScrollPositionIsZero()){i=function(t){return-t.scrollLeft}}else{i=function(t){return t.scrollWidth-t.scrollLeft-t.clientWidth}}var r=function(){var t=this.get(0);if(t){return i(t)}};jQuery.fn.scrollRightRTL=r;return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/jquery/selectText", ["sap/ui/thirdparty/jquery"],function(jQuery){"use strict";var t=function t(e,r){var i=this.get(0);try{if(typeof i.selectionStart==="number"){i.setSelectionRange(e>0?e:0,r)}}catch(t){}return this};jQuery.fn.selectText=t;return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/jquery/zIndex", ["sap/ui/thirdparty/jquery"],function(jQuery){"use strict";function e(e,n){var t=Object.getOwnPropertyDescriptor(e,n);return t&&t.value}if(!e(jQuery.fn,"zIndex")){var n=function(e){if(e!==undefined){return this.css("zIndex",e)}if(this.length){var n=jQuery(this[0]),t,i;while(n.length&&n[0]!==document){t=n.css("position");if(t==="absolute"||t==="relative"||t==="fixed"){i=parseInt(n.css("zIndex"));if(!isNaN(i)&&i!==0){return i}}n=n.parent()}}return 0};
/*!
		 * The following function is taken from
		 * jQuery UI Core 1.11.1
		 * http://jqueryui.com
		 *
		 * Copyright 2014 jQuery Foundation and other contributors
		 * Released under the MIT license.
		 * http://jquery.org/license
		 *
		 * http://api.jqueryui.com/category/ui-core/
		 */jQuery.fn.zIndex=n}return jQuery});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/dom/units/Rem", ["sap/base/assert"],function(e){"use strict";function t(){var e=document.documentElement;if(!e){return 16}return parseFloat(window.getComputedStyle(e).getPropertyValue("font-size"))}var r={fromPx:function(r){e(typeof r==="string"&&r!==""&&!isNaN(parseFloat(r))&&typeof parseFloat(r)==="number"||typeof r==="number"&&!isNaN(r),'Rem.fromPx: either the "vPx" parameter must be an integer, or a string e.g.: "16px"');return parseFloat(r)/t()},toPx:function(r){e(typeof r==="string"&&r!==""&&!isNaN(parseFloat(r))&&typeof parseFloat(r)==="number"||typeof r==="number"&&!isNaN(r),'Rem.toPx: either the "vRem" parameter must be an integer, or a string e.g.: "1rem"');return parseFloat(r)*t()}};return r});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/events/isMouseEventDelayed", ["sap/ui/Device"],function(e){"use strict";var i=function(e){return false};return i});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/events/isSpecialKey", function(){"use strict";var e=function(e){function r(e){var r=e.key;return r==="Shift"||r==="Control"||r==="Alt"||r==="AltGraph"||r==="CapsLock"||r==="NumLock"}function t(e){var r=e.key;return r==="ArrowLeft"||r==="ArrowUp"||r==="ArrowRight"||r==="ArrowDown"}var n=e.key,a=r(e)||t(e)||n==="PageUp"||n==="PageDown"||n==="End"||n==="Home"||n==="PrintScreen"||n==="Insert"||n==="Delete"||n==="F1"||n==="F2"||n==="F3"||n==="F4"||n==="F5"||n==="F6"||n==="F7"||n==="F8"||n==="F9"||n==="F10"||n==="F11"||n==="F12"||n==="Pause"||n==="Backspace"||n==="Tab"||n==="Enter"||n==="Escape"||n==="ScrollLock";switch(e.type){case"keydown":case"keyup":case"keypress":return a;default:return false}};return e});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/events/jquery/EventTriggerHook", ["sap/base/Log","sap/ui/dom/containsOrEquals","sap/ui/thirdparty/jquery","sap/base/util/uid"],function(e,r,jQuery,i){"use strict";var t={};function o(i){var o=e.isLoggable(e.Level.DEBUG),n=t[i.type],s=n.originalTriggerHook,a=performance.now(),f,d,u;if(!i.isPropagationStopped()&&!i.isSimulated){for(d in n.domRefs){u=n.domRefs[d];if(u.excludedDomRefs.indexOf(i.target)===-1&&r(u.domRef,i.target)){i.preventDefault();i.stopImmediatePropagation();if(o){f=performance.now();e.debug("Perf: jQuery trigger suppression event handler "+i.type+" took "+(f-a)+" milliseconds.")}return false}}}if(s){return s.call(this,i)}}function n(e){if(!jQuery.event.special[e]){jQuery.event.special[e]={}}var r=jQuery.event.special[e],i=r.trigger;r.trigger=o;return i}function s(e,r,o){var s=t[e];var a=i();if(!s){s=t[e]={domRefs:{},originalTriggerHook:n(e)}}s.domRefs[a]={domRef:r,excludedDomRefs:[].concat(o)};return{id:a,type:e}}function a(r){if(!r){e.error("Release trigger events must not be called without passing a valid handler!");return}var i=t[r.type];if(!i){return}else if(!i.domRefs[r.id]||!i.domRefs[r.id].domRef){e.warning("Release trigger event for event type "+r.type+"on Control "+r.id+": DomRef does not exists");return}delete i.domRefs[r.id]}return{suppress:s,release:a}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/ClientTreeBindingAdapter", ["sap/ui/model/TreeBinding","sap/ui/model/ClientTreeBinding","./TreeBindingAdapter","sap/ui/model/ChangeReason","sap/base/assert","sap/base/Log"],function(e,t,i,o,r,n){"use strict";var p=function(){if(!(this instanceof e)||this._bIsAdapted){return}i.apply(this);for(var t in p.prototype){if(p.prototype.hasOwnProperty(t)){this[t]=p.prototype[t]}}this._invalidTree=true;this.setNumberOfExpandedLevels(this.mParameters.numberOfExpandedLevels||0)};p.prototype.setNumberOfExpandedLevels=function(e){this._iNumberOfExpandedLevels=parseInt(e)};p.prototype.getNumberOfExpandedLevels=function(){return this._iNumberOfExpandedLevels};p.prototype.nodeHasChildren=function(e){r(e,"TreeBindingAdapter.nodeHasChildren: No node given!");if(!e){return false}else if(e.isArtificial){return true}else{return t.prototype.hasChildren.call(this,e.context)}};p.prototype.resetData=function(e,i){var r=t.prototype.resetData.call(this,e,i);this._aRowIndexMap=[];this._oRootNode=undefined;this._iPageSize=0;this._iThreshold=0;if(!i||i.reason!==o.Sort){this.clearSelection();this._createTreeState(true)}return r};p.prototype._calculateGroupID=function(e){var t=this.getPath();var i;if(e.context){var o=e.context.getPath();if(t!="/"){var r=o.match(t+"(.*)");if(r!=null&&r[1]){i=r[1]}else{n.warning("CTBA: BindingPath/ContextPath matching problem!")}}if(!i){i=o}if(i.startsWith("/")){i=i.substring(1,i.length)}var p;if(!e.parent){p=this._calculateGroupID({context:e.context._parentContext||null})}else{p=e.parent.groupID}i=p+i.replace(/\//g,"_")+"/"}else if(e.context===null){i="/"}return i};p.prototype.expand=function(){this._buildTree();i.prototype.expand.apply(this,arguments)};p.prototype.collapse=function(){this._buildTree();i.prototype.collapse.apply(this,arguments)};p.prototype._buildTree=function(e,t){if(this._invalidTree){e=e||0;t=t||this.getRootContexts().length;this._invalidTree=false;this._aRowIndexMap=[];i.prototype._buildTree.call(this,e,t)}};p.prototype.findNode=function(e){this._buildTree();return i.prototype.findNode.apply(this,arguments)};p.prototype.setSelectedIndex=function(e){this._buildTree();i.prototype.setSelectedIndex.apply(this,arguments)};p.prototype.setSelectionInterval=function(e,t){this._buildTree();i.prototype.setSelectionInterval.apply(this,arguments)};p.prototype.addSelectionInterval=function(){this._buildTree();i.prototype.addSelectionInterval.apply(this,arguments)};p.prototype.removeSelectionInterval=function(){this._buildTree();i.prototype.removeSelectionInterval.apply(this,arguments)};p.prototype.clearSelection=function(){this._buildTree();i.prototype.clearSelection.apply(this,arguments)};p.prototype.selectAll=function(){this._buildTree();i.prototype.selectAll.apply(this,arguments)};p.prototype._calculateRequestLength=function(e,t){return e};p.prototype.getLength=function(){this._buildTree();return i.prototype.getLength.apply(this,arguments)};p.prototype._fireChange=function(){this._invalidTree=true;this.constructor.prototype._fireChange.apply(this,arguments)};return p},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/MetaModel", ["./Model"],function(t){"use strict";var n=t.extend("sap.ui.model.MetaModel",{constructor:function(){t.apply(this,arguments)}});n.prototype.createBindingContext=function(t,n,e,i){if(typeof n=="function"){i=n;n=null}if(typeof e=="function"){i=e;e=null}var o=this.resolve(t,n),u=o==undefined?undefined:this.getContext(o?o:"/");if(!u){u=null}if(i){i(u)}return u};n.prototype.destroyBindingContext=function(){};return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/SelectionModel", ["sap/ui/base/EventProvider","sap/base/assert"],function(e,t){"use strict";var n=e.extend("sap.ui.model.SelectionModel",{constructor:function(t){e.apply(this);this.iSelectionMode=t||n.SINGLE_SELECTION;this.aSelectedIndices=[];this.iLeadIndex=-1;this.fnSort=function(e,t){return e-t};this.fnSortReverse=function(e,t){return t-e}}});n.SINGLE_SELECTION=0;n.MULTI_SELECTION=1;n.prototype.getSelectionMode=function(){return this.iSelectionMode};n.prototype.setSelectionMode=function(e){this.iSelectionMode=e||n.SINGLE_SELECTION};n.prototype.isSelectedIndex=function(e){return this.aSelectedIndices.indexOf(e)!==-1};n.prototype.getLeadSelectedIndex=function(){return this.iLeadIndex};n.prototype.setLeadSelectedIndex=function(e){t(typeof e==="number","iLeadIndex must be an integer");this.setSelectionInterval(e,e);return this};n.prototype.getMinSelectionIndex=function(){if(this.aSelectedIndices.length>0){var e=this.aSelectedIndices.sort(this.fnSort);return e[0]}else{return-1}};n.prototype.getMaxSelectionIndex=function(){if(this.aSelectedIndices.length>0){var e=this.aSelectedIndices.sort(this.fnSortReverse);return e[0]}else{return-1}};n.prototype.getSelectedIndices=function(){var e=this.aSelectedIndices.sort(this.fnSort);return e};n.prototype.setSelectionInterval=function(e,i){t(typeof e==="number","iFromIndex must be an integer");t(typeof i==="number","iToIndex must be an integer");if(this.iSelectionMode===n.SINGLE_SELECTION){e=i}var r=Math.min(e,i);var s=Math.max(e,i);var a=this.aSelectedIndices.slice();var o={};var d=[];for(var h=0;h<a.length;h++){o[a[h]]=true;if(a[h]<e||a[h]>i){d.push(a[h])}}var c=[];for(var u=r;u<=s;u++){c.push(u);if(!o[u]){d.push(u)}}this._update(c,i,d);return this};n.prototype.addSelectionInterval=function(e,i){t(typeof e==="number","iFromIndex must be an integer");t(typeof i==="number","iToIndex must be an integer");if(this.iSelectionMode===n.SINGLE_SELECTION){return this.setSelectionInterval(e,i)}var r=Math.min(e,i);var s=Math.max(e,i);var a=[];var o=this.aSelectedIndices;for(var d=r;d<=s;d++){if(o.indexOf(d)===-1){o.push(d);a.push(d)}}this._update(o,s,a);return this};n.prototype.moveSelectionInterval=function(e,n){t(typeof e==="number","iFromIndex must be an integer");t(typeof n==="number","iToIndex must be an integer");var i=[];var r=this.aSelectedIndices;var s=this.iLeadIndex;for(var a=0;a<r.length;a++){var o=r[a];if(o>=e){i.push(r[a]);r[a]+=n;i.push(r[a]);if(o===this.iLeadIndex){s+=n}}}this._update(r,s,i);return this};n.prototype.removeSelectionInterval=function(e,i){t(typeof e==="number","iFromIndex must be an integer");t(typeof i==="number","iToIndex must be an integer");if(this.iSelectionMode===n.SINGLE_SELECTION){e=i}var r=Math.min(e,i);var s=Math.max(e,i);var a=[];var o=this.aSelectedIndices;var d=this.iLeadIndex;for(var h=r;h<=s;h++){var c=o.indexOf(h);if(c>-1){o.splice(c,1);a.push(h)}if(h===this.iLeadIndex){d=-1}}this._update(o,d,a);return this};n.prototype.sliceSelectionInterval=function(e,n){t(typeof e==="number","iFromIndex must be an integer");t(typeof n==="number","iToIndex must be an integer");var i=Math.min(e,n);var r=Math.max(e,n);var s=[];var a=[];var o=this.aSelectedIndices.slice(0);var d=this.aSelectedIndices;var h=this.iLeadIndex;var c=r-i+1;for(var u=r;u>=i;u--){var f=d.indexOf(u);if(f>-1){d.splice(f,1);a.push(u)}if(u===this.iLeadIndex){h=-1}}for(var u=0;u<d.length;u++){var l=d[u];if(l>=i){var p=d[u]-c;if(l===h){h=p}d[u]=p;if(o.indexOf(p)===-1){s.push(p)}}}for(var I=0;I<a.length;I++){var u=o[o.length-1-I];if(s.indexOf(u)===-1){s.push(u)}}for(var I=0;I<a.length;I++){if(d.indexOf(a[I])===-1&&s.indexOf(a[I])===-1){s.push(a[I])}}this._update(d,h,s);return this};n.prototype.clearSelection=function(){if(this.aSelectedIndices.length>0||this.iLeadIndex!==-1){this._update([],-1,this.aSelectedIndices.slice())}return this};n.prototype.attachSelectionChanged=function(e,t,n){this.attachEvent("selectionChanged",e,t,n);return this};n.prototype.detachSelectionChanged=function(e,t){this.detachEvent("selectionChanged",e,t);return this};n.prototype.fireSelectionChanged=function(e){this.fireEvent("selectionChanged",e);return this};n.prototype._update=function(e,t,n,i){var r={rowIndices:n&&n.sort(this.fnSort),selectAll:i};this.aSelectedIndices=e;r.oldIndex=this.iLeadIndex;if(this.iLeadIndex!==t){this.iLeadIndex=t;r.leadIndex=this.iLeadIndex}if(n.length>0||typeof r.leadIndex!=="undefined"){this.fireSelectionChanged(r)}};n.prototype.selectAll=function(e){t(typeof e==="number","iToIndex must be an integer");var n=this.aSelectedIndices.slice();var i={};var r=[];var s=[];var a=0;for(a=0;a<n.length;a++){i[n[a]]=true;if(n[a]>e){r.push(n[a])}}for(a=0;a<=e;a++){s.push(a);if(!i[a]){r.push(a)}}this._update(s,0,r,true);return this};return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/TreeAutoExpandMode", [],function(){"use strict";var e={Sequential:"Sequential",Bundled:"Bundled"};return e},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/TreeBindingAdapter", ["sap/ui/model/TreeBinding","sap/ui/model/TreeAutoExpandMode","sap/ui/model/ChangeReason","sap/ui/model/TreeBindingUtils","sap/base/assert","sap/base/Log","sap/base/util/each","sap/base/util/isEmptyObject"],function(e,t,i,o,n,r,a,s){"use strict";var d=function(){if(!(this instanceof e)||this._bIsAdapted){return}for(var i in d.prototype){if(d.prototype.hasOwnProperty(i)){this[i]=d.prototype[i]}}this.mParameters=this.mParameters||{};this._aRowIndexMap=[];this._iThreshold=0;this._iPageSize=0;this.setAutoExpandMode(this.mParameters.autoExpandMode||t.Sequential);if(this.mParameters.collapseRecursive===undefined){this.bCollapseRecursive=true}else{this.bCollapseRecursive=!!this.mParameters.collapseRecursive}this._createTreeState();this._bIsAdapted=true};d.prototype.getCurrentTreeState=function(){var e=";",t;var i={};for(t in this._mTreeState.expanded){i[t]=true}var o={};for(t in this._mTreeState.collapsed){o[t]=true}var n={};for(t in this._mTreeState.selected){n[t]=true}return{_getExpandedList:function(){return Object.keys(i).join(e)},_getCollapsedList:function(){return Object.keys(o).join(e)},_getSelectedList:function(){return Object.keys(n).join(e)},_isExpanded:function(e){return!!i[e]},_isCollapsed:function(e){return!!o[e]},_remove:function(e){delete i[e];delete o[e];delete n[e]}}};d.prototype.setTreeState=function(e){this._oInitialTreeState=e};d.prototype.setAutoExpandMode=function(e){this._autoExpandMode=e};d.prototype.getLength=function(){if(!this._oRootNode){return 0}return this._oRootNode.magnitude};d.prototype.getContextByIndex=function(e){if(this.isInitial()){return undefined}var t=this.findNode(e);return t?t.context:undefined};d.prototype.getNodeByIndex=function(e){if(this.isInitial()){return undefined}if(e>=this.getLength()){return undefined}return this.findNode(e)};d.prototype.findNode=function(e){if(this.isInitial()){return undefined}var t=typeof e;var i;var o=[];if(t==="number"){i=this._aRowIndexMap[e];if(!i){var n=-1;this._match(this._oRootNode,o,1,function(t){if(n===e){return true}n+=1;return false});i=o[0]}}return i};d.prototype._createTreeState=function(e){if(!this._mTreeState||e){this._mTreeState={expanded:{},collapsed:{},selected:{},deselected:{}}}};d.prototype._updateTreeState=function(e){e=e||{};var t=e.expanded?this._mTreeState.expanded:this._mTreeState.collapsed;var i=e.expanded?this._mTreeState.collapsed:this._mTreeState.expanded;var o=this._getNodeState(e.groupID);if(!o){o=e.fallbackNodeState||this._createNodeState({groupID:e.groupID,expanded:e.expanded,sum:e.sum})}delete i[e.groupID];t[e.groupID]=o;o.expanded=e.expanded;return o};d.prototype._createNodeState=function(e){if(!e.groupID){n(false,"To create a node state a group ID is mandatory!");return undefined}var t;var i;if(this._oInitialTreeState){t=this._oInitialTreeState._isExpanded(e.groupID);i=this._oInitialTreeState._isCollapsed(e.groupID);this._oInitialTreeState._remove(e.groupID)}var o=e.expanded||t||false;var r=e.selected||false;var a={groupID:e.groupID,expanded:o,sections:e.sections||[{startIndex:0,length:this._iPageSize}],sum:e.sum||false,selected:r};if(t||i){this._updateTreeState({groupID:e.groupID,fallbackNodeState:a,expanded:t,collapsed:i})}return a};d.prototype._getNodeState=function(e){var t=this._mTreeState.expanded[e];var i=this._mTreeState.collapsed[e];var o=this._mTreeState.selected[e];var n=this._mTreeState.deselected[e];return t||i||o||n};d.prototype._updateNodeSections=function(e,t){var i=this._getNodeState(e);if(!i){n(false,"No Node State for Group ID '"+e+"' found!");return undefined}else if(!t){n(false,"No Section given!");return undefined}else if(t.length<=0){n(false,"The length of the given section must be positive greater than 0.");return undefined}else if(t.startIndex<0){n(false,"The sections start index must be greater/equal to 0.");return undefined}i.sections=o.mergeSections(i.sections,t);return i.sections};d.prototype._increaseSections=function(){var e=function(e){if(!e){return}var t=this._getMaxGroupSize(e);var i=e.nodeState;if(t===undefined){var n=[];for(var r=0;r<i.sections.length;r++){var a=i.sections[r];a.length=Math.max(a.length,this._iPageSize);n=o.mergeSections(n,a)}i.sections=n}};this._map(this._oRootNode,e)};d.prototype._getMaxGroupSize=function(e){var t=0;if(e.isArtificial){var i=this.oModel.isList(this.sPath,this.getContext());if(this.bDisplayRootNode&&!i&&!this._bRootMissing){t=1}else{t=this._getGroupSize(e)||0}}else{t=this.nodeHasChildren(e)?this._getGroupSize(e):0}return t};d.prototype.getContexts=function(e,t,i){return this._getContextsOrNodes(false,e,t,i)};d.prototype._getContextsOrNodes=function(e,t,i,o){var n,r,s=[],d=[];if(!this.isResolved()||this.isInitial()){return[]}t=t||0;i=i||this.oModel.iSizeLimit;o=o||0;if(i>this._iPageSize){this._iPageSize=i;this._increaseSections()}this._iThreshold=Math.max(this._iThreshold,o);this._aRowIndexMap=[];this._buildTree(t,i);if(this._oRootNode){d=this._retrieveNodeSection(this._oRootNode,t,i)}this._updateRowIndexMap(d,t);for(var l=0;l<d.length;l++){r=d[l];if(!r.context){n=n||{};var u=r.parent;n[u.groupID]=u;this._updateNodeSections(u.groupID,{startIndex:r.positionInParent,length:1})}s.push(r.context)}if(n){var h=this;a(n,function(e,t){t.magnitude=0;t.numberOfTotals=0;h._loadChildContexts(t)});s=[];for(var p=0;p<d.length;p++){r=d[p];s.push(r.context)}}if(e){return d}else{return s}};d.prototype.getNodes=function(e,t,i){return this._getContextsOrNodes(true,e,t,i)};d.prototype._updateRowIndexMap=function(e,t){this._aRowIndexMap=[];for(var i=0;i<e.length;i++){this._aRowIndexMap[t+i]=e[i]}};d.prototype._retrieveNodeSection=function(e,t,i){var o=-1;var n=[];this._match(this._oRootNode,[],i,function(e,r,a){if(!e||!e.isArtificial){o++}if(o>=t&&o<t+i){if(!e){e=this._createNode({parent:a,positionInParent:r});a.children[r]=e}n.push(e);return true}return false});return n};d.prototype._buildTree=function(e,t){this._oRootNode=undefined;var i=null;var o=this._calculateGroupID({context:i,parent:null});var n=this._getNodeState(o);if(!n){n=this._createNodeState({groupID:o,sum:true,sections:[{startIndex:e,length:t}]});this._updateTreeState({groupID:n.groupID,fallbackNodeState:n,expanded:true})}this._oRootNode=this._createNode({context:i,parent:null,level:this.bDisplayRootNode&&!(i===null)?0:-1,nodeState:n,isLeaf:false,autoExpand:this.getNumberOfExpandedLevels()+1});this._oRootNode.isArtificial=true;if(this._mTreeState.expanded[this._oRootNode.groupID]){this._loadChildContexts(this._oRootNode)}};d.prototype._calculateRequestLength=function(e,t){var i;if(!e){i=t.length}else{i=Math.max(Math.min(t.length,e-t.startIndex),0)}return i};d.prototype._loadChildContexts=function(e){var i=e.nodeState;var o=this._getMaxGroupSize(e);if(o>0){if(!e.children[o-1]){e.children[o-1]=undefined}i.leafCount=o}if(this.bClientOperation){i.sections=[{startIndex:0,length:o}]}for(var n=0;n<i.sections.length;n++){var r=i.sections[n];var a=this._calculateRequestLength(o,r);if(e.autoExpand>=0&&this._autoExpandMode===t.Bundled){a=Math.max(0,o)}var s;if(e.isArtificial){s=this.getRootContexts(r.startIndex,a,this._iThreshold)}else{s=this.nodeHasChildren(e)?this.getNodeContexts(e.context,r.startIndex,a,this._iThreshold):[]}for(var d=0;d<s.length;d++){var l=s[d];if(!l){continue}var u=d+r.startIndex;var h=e.children[u];var p={context:s[d],parent:e,level:e.level+1,positionInParent:u,autoExpand:Math.max(e.autoExpand-1,-1)};if(h){h.context=p.context;h.parent=p.parent;h.level=p.level;h.positionInParent=p.positionInParent;h.magnitude=0;h.numberOfTotals=0;h.autoExpand=p.autoExpand;var f;if(l){f=this._calculateGroupID(h)}h.groupID=f}else{h=this._createNode(p)}h.nodeState=this._getNodeState(h.groupID);if(!h.nodeState){h.nodeState=this._createNodeState({groupID:h.groupID,expanded:false})}h.nodeState.parentGroupID=e.groupID;h.isLeaf=!this.nodeHasChildren(h);e.children[u]=h;if(h.isLeaf){e.numberOfLeafs+=1}if(h.parent.nodeState.selectAllMode&&!this._mTreeState.deselected[h.groupID]){this.setNodeSelection(h.nodeState,true)}if((h.autoExpand>0||h.nodeState.expanded)&&this.isGrouped()){if(!this._mTreeState.collapsed[h.groupID]&&!h.isLeaf){this._updateTreeState({groupID:h.nodeState.groupID,fallbackNodeState:h.nodeState,expanded:true});this._loadChildContexts(h)}e.magnitude+=Math.max(h.magnitude||0,0);e.numberOfLeafs+=h.numberOfLeafs}}}e.magnitude+=Math.max(o||0,0)};d.prototype.isGrouped=function(){return true};d.prototype._calculateGroupID=function(e){r.error("TreeBindingAdapter#_calculateGroupID: Not implemented. Needs to be implemented in respective sub-classes.")};d.prototype._createNode=function(e){e=e||{};var t=e.context;var i=e.level||0;var o={context:t,level:i,children:e.children||[],parent:e.parent,nodeState:e.nodeState,isLeaf:e.isLeaf||false,positionInParent:e.positionInParent,magnitude:e.magnitude||0,numberOfTotals:e.numberOfTotals||0,numberOfLeafs:e.numberOfLeafs||0,autoExpand:e.autoExpand||0,absoluteNodeIndex:e.absoluteNodeIndex||0,totalNumberOfLeafs:0};if(t!==undefined){o.groupID=this._calculateGroupID(o)}return o};d.prototype.expand=function(e,t){var o=this.findNode(e);if(!o){n(false,"No node found for index "+e);return}this._updateTreeState({groupID:o.nodeState.groupID,fallbackNodeState:o.nodeState,expanded:true});if(!t){this._fireChange({reason:i.Expand})}};d.prototype.expandToLevel=function(e){this._mTreeState.collapsed={};this.setNumberOfExpandedLevels(e);this._fireChange({reason:i.Expand})};d.prototype.isExpanded=function(e){var t=this.findNode(e);return t&&t.nodeState?t.nodeState.expanded:false};d.prototype.collapse=function(e,t){var o;var r=this;if(typeof e==="object"){o=e}else if(typeof e==="number"){var s=this.findNode(e);if(!s){n(false,"No node found for index "+e);return}o=s.nodeState}this._updateTreeState({groupID:o.groupID,fallbackNodeState:o,expanded:false});o.selectAllMode=false;if(this.bCollapseRecursive){var d=o.groupID;a(this._mTreeState.expanded,function(e,t){if(typeof d=="string"&&d.length>0&&e.startsWith(d)){r._updateTreeState({groupID:e,expanded:false})}});var l=[];a(this._mTreeState.selected,function(e,t){if(typeof d=="string"&&d.length>0&&e.startsWith(d)&&e!==d){t.selectAllMode=false;r.setNodeSelection(t,false);l.push(e)}});if(l.length){var u={rowIndices:[]};var h=-1;this._map(this._oRootNode,function(e){if(!e||!e.isArtificial){h++}if(e&&l.indexOf(e.groupID)!==-1){if(e.groupID===this._sLeadSelectionGroupID){u.oldIndex=h;u.leadIndex=-1}u.rowIndices.push(h)}});this._publishSelectionChanges(u)}}if(!t){this._fireChange({reason:i.Collapse})}};d.prototype.collapseToLevel=function(e){if(!e||e<0){e=0}var t=this;a(this._mTreeState.expanded,function(i,o){var n=t._getGroupIdLevel(i)-1;if(n===e){t.collapse(o,true)}});if(this.bCollapseRecursive){this.setNumberOfExpandedLevels(e)}this._fireChange({reason:i.Collapse})};d.prototype._map=function(e,t){t.call(this,e);if(!e){return}for(var i=0;i<e.children.length;i++){var o=e.children[i];this._map(o,t)}if(this._afterMapHook){this._afterMapHook(e,t)}};d.prototype._match=function(e,t,i,o,n,r){if(t.length===i){return true}var a=o.call(this,e,n,r);if(a){t.push(e)}if(!e){return false}for(var s=0;s<e.children.length;s++){var d=e.children[s];var l=this._match(d,t,i,o,s,e);if(l){return true}}return this._afterMatchHook?this._afterMatchHook(e,t,i,o,n,r):false};d.prototype.toggleIndex=function(e){var t=this.findNode(e);if(!t){n(false,"There is no node at index "+e+".");return}if(t.nodeState.expanded){this.collapse(e)}else{this.expand(e)}};d.prototype._getGroupIdLevel=function(e){if(e==null){r.warning("assertion failed: no need to determine level of group ID = null");return-1}return e.split("/").length-2};d.prototype._getGroupSize=function(e){return this.getChildCount(e.context)};d.prototype.setNodeSelection=function(e,t){if(!e.groupID){n(false,"NodeState must have a group ID!");return}e.selected=t;if(t){this._mTreeState.selected[e.groupID]=e;delete this._mTreeState.deselected[e.groupID]}else{delete this._mTreeState.selected[e.groupID];this._mTreeState.deselected[e.groupID]=e}};d.prototype.isIndexSelected=function(e){var t=this.getNodeByIndex(e);return t&&t.nodeState?t.nodeState.selected:false};d.prototype.isIndexSelectable=function(e){var t=this.getNodeByIndex(e);return this._isNodeSelectable(t)};d.prototype._isNodeSelectable=function(e){return!!e&&!e.isArtificial};d.prototype.setSelectedIndex=function(e){var t=this.findNode(e);if(t&&this._isNodeSelectable(t)){var i=this._clearSelection();var o=i.rowIndices.indexOf(e);if(o>=0){i.rowIndices.splice(o,1)}else{i.rowIndices.push(e)}i.leadGroupID=t.groupID;i.leadIndex=e;this.setNodeSelection(t.nodeState,true);this._publishSelectionChanges(i)}else{r.warning("TreeBindingAdapter: The selection was ignored. Please make sure to only select rows, for which data has been fetched to the client. For AnalyticalTables, some rows might not be selectable at all.")}};d.prototype.getSelectedIndex=function(){if(!this._sLeadSelectionGroupID||s(this._mTreeState.selected)){return-1}var e=-1;var t=false;var i=function(i){if(!i||!i.isArtificial){e++}if(i){if(i.groupID===this._sLeadSelectionGroupID){t=true;return true}}return false};this._match(this._oRootNode,[],1,i);if(t){return e}return-1};d.prototype.getSelectedIndices=function(){var e=[];var t=this;if(s(this._mTreeState.selected)){return e}var i=Object.keys(this._mTreeState.selected).length;var o=-1;var n=function(i){if(!i||!i.isArtificial){o++}if(i){if(i.nodeState&&i.nodeState.selected&&!i.isArtificial){e.push(o);t._aRowIndexMap[o]=i;return true}}return false};this._match(this._oRootNode,[],i,n);return e};d.prototype.getSelectedNodesCount=function(){var e;if(this._oRootNode&&this._oRootNode.nodeState.selectAllMode){var t,i,o,n;var r,a=[];if(this.filterInfo&&this.oCombinedFilter){for(var s=this.filterInfo.aFilteredContexts.length-1;s>=0;s--){r=this.filterInfo.aFilteredContexts[s];a.push(this._calculateGroupID({context:r}))}}i=0;for(t in this._mTreeState.expanded){if(!this.oCombinedFilter||a.indexOf(t)!==-1){n=this._mTreeState.expanded[t];if(!n.selectAllMode&&n.leafCount!==undefined){i+=n.leafCount}}}for(t in this._mTreeState.selected){if(!this.oCombinedFilter||a.indexOf(t)!==-1){n=this._mTreeState.selected[t];o=this._mTreeState.expanded[n.parentGroupID];if(o&&!o.selectAllMode){i--}}}for(t in this._mTreeState.deselected){if(!this.oCombinedFilter||a.indexOf(t)!==-1){n=this._mTreeState.deselected[t];o=this._mTreeState.expanded[n.parentGroupID];if(o&&o.selectAllMode){i++}}}e=this._getSelectableNodesCount(this._oRootNode)-i}else{e=Object.keys(this._mTreeState.selected).length}return e};d.prototype._getSelectableNodesCount=function(e){if(e){return e.magnitude}else{return 0}};d.prototype.getSelectedContexts=function(){var e=[];var t=this;if(s(this._mTreeState.selected)){return e}var i=Object.keys(this._mTreeState.selected).length;var o=-1;var n=function(i){if(!i||!i.isArtificial){o++}if(i){if(i.nodeState&&i.nodeState.selected&&!i.isArtificial){e.push(i.context);t._aRowIndexMap[o]=i;return true}}return false};this._match(this._oRootNode,[],i,n);return e};d.prototype.setSelectionInterval=function(e,t){var i,o,n=this._clearSelection(),r={},a=[],s=this._setSelectionInterval(e,t,true);for(i=0;i<n.rowIndices.length;i++){o=n.rowIndices[i];r[o]=true}for(i=0;i<s.rowIndices.length;i++){o=s.rowIndices[i];if(r[o]){delete r[o]}else{r[o]=true}}for(o in r){if(r[o]){a.push(parseInt(o))}}this._publishSelectionChanges({rowIndices:a,oldIndex:n.oldIndex,leadIndex:s.leadIndex,leadGroupID:s.leadGroupID})};d.prototype._setSelectionInterval=function(e,t,i){var o=Math.min(e,t);var n=Math.max(e,t);var r=[];var a=[];var s=Math.abs(n-o)+1;var d;var l=-1;var u=function(e){if(!e||!e.isArtificial){l++}if(e){if(l>=o&&l<=n){if(this._isNodeSelectable(e)){if(e.nodeState.selected!==!!i){a.push(l)}if(e.groupID===this._sLeadSelectionGroupID){d=l}this.setNodeSelection(e.nodeState,!!i)}return true}}return false};this._match(this._oRootNode,r,s,u);var h={rowIndices:a,oldIndex:d,leadIndex:d&&!i?-1:undefined};if(r.length>0&&i){var p=r[r.length-1];h.leadGroupID=p.groupID;h.leadIndex=n}return h};d.prototype.addSelectionInterval=function(e,t){var i=this._setSelectionInterval(e,t,true);this._publishSelectionChanges(i)};d.prototype.removeSelectionInterval=function(e,t){var i=this._setSelectionInterval(e,t,false);this._publishSelectionChanges(i)};d.prototype.selectAll=function(){this._mTreeState.deselected={};var e={rowIndices:[],oldIndex:-1,selectAll:true};var t=-1;this._map(this._oRootNode,function(i){if(!i||!i.isArtificial){t++}if(i){if(i.groupID===this._sLeadSelectionGroupID){e.oldIndex=t}if(this._isNodeSelectable(i)){if(i.nodeState.selected!==true){e.rowIndices.push(t)}this.setNodeSelection(i.nodeState,true);e.leadGroupID=i.groupID;e.leadIndex=t}if(i.nodeState.expanded){i.nodeState.selectAllMode=true}}});this._publishSelectionChanges(e)};d.prototype._clearSelection=function(){var e=-1;var t=-1;var i;var o=[];if(this._oRootNode&&!this._oRootNode.nodeState.selectAllMode){i=0;for(var n in this._mTreeState.selected){if(n){i++}}}var r=function(i){if(!i||!i.isArtificial){e++}if(i){i.nodeState.selectAllMode=false;if(this._mTreeState.selected[i.groupID]){if(!i.isArtificial){o.push(e)}this.setNodeSelection(i.nodeState,false);if(i.groupID===this._sLeadSelectionGroupID){t=e}return true}}return false};this._match(this._oRootNode,[],i,r);if(this._oRootNode&&this._oRootNode.nodeState&&this._oRootNode.isArtificial){this._oRootNode.nodeState.selectAllMode=false}return{rowIndices:o,oldIndex:t,leadIndex:-1}};d.prototype.clearSelection=function(e){var t=this._clearSelection();if(!e){this._publishSelectionChanges(t)}};d.prototype._publishSelectionChanges=function(e){e.oldIndex=e.oldIndex||this.getSelectedIndex();e.rowIndices.sort(function(e,t){return e-t});if(e.leadIndex>=0&&e.leadGroupID){this._sLeadSelectionGroupID=e.leadGroupID}else if(e.leadIndex===-1){this._sLeadSelectionGroupID=undefined}else{e.leadIndex=e.oldIndex}if(e.rowIndices.length>0||e.leadIndex!=undefined&&e.leadIndex!==-1){this.fireSelectionChanged(e)}};d.prototype.setCollapseRecursive=function(e){this.bCollapseRecursive=!!e};d.prototype.getCollapseRecursive=function(){return this.bCollapseRecursive};d.prototype.attachSelectionChanged=function(e,t,i){this.attachEvent("selectionChanged",e,t,i);return this};d.prototype.detachSelectionChanged=function(e,t){this.detachEvent("selectionChanged",e,t);return this};d.prototype.fireSelectionChanged=function(e){this.fireEvent("selectionChanged",e);return this};return d},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/TreeBindingCompatibilityAdapter", ["sap/base/util/each"],function(t){"use strict";var e=function(e,n){Object.assign(e,{_init:function(t){this._bExpandFirstLevel=t;this.mContextInfo={};this._initContexts();if(t&&!this._bFirstLevelExpanded){this._expandFirstLevel()}},_initContexts:function(t){this.aContexts=this.getRootContexts(0,Number.MAX_VALUE);for(var e=0,n=this.aContexts.length;e<n;e++){var i=this._getContextInfo(this.aContexts[e]);this._setContextInfo({oContext:this.aContexts[e],iLevel:0,bExpanded:i?i.bExpanded:false})}if(this._bExpandFirstLevel&&!this._bFirstLevelExpanded){this._expandFirstLevel(t)}},_expandFirstLevel:function(e){var n=this;if(this.aContexts&&this.aContexts.length>0){t(this.aContexts.slice(),function(t,i){if(!e){n._loadChildContexts(i)}n._getContextInfo(i).bExpanded=true});this._bFirstLevelExpanded=true}},_fnFireFilter:e._fireFilter,_fireFilter:function(){this._fnFireFilter.apply(this,arguments);this._initContexts(true);this._restoreContexts(this.aContexts)},_fnFireChange:e._fireChange,_fireChange:function(){this._fnFireChange.apply(this,arguments);this._initContexts(true);this._restoreContexts(this.aContexts)},_restoreContexts:function(e){var n=this;var i=[];t(e.slice(),function(t,e){var o=n._getContextInfo(e);if(o&&o.bExpanded){i.push.apply(i,n._loadChildContexts(e))}});if(i.length>0){this._restoreContexts(i)}},_loadChildContexts:function(t){var e=this._getContextInfo(t);var n=this.aContexts?this.aContexts.indexOf(t):-1;var i=this.getNodeContexts(t,0,Number.MAX_VALUE);for(var o=0,s=i.length;o<s;o++){this.aContexts.splice(n+o+1,0,i[o]);var a=this._getContextInfo(i[o]);this._setContextInfo({oParentContext:t,oContext:i[o],iLevel:e.iLevel+1,bExpanded:a?a.bExpanded:false})}return i},_getContextInfo:function(t){return t?this.mContextInfo[t.getPath()]:undefined},_setContextInfo:function(t){if(t&&t.oContext){this.mContextInfo[t.oContext.getPath()]=t}},getLength:function(){return this.aContexts?this.aContexts.length:0},getContexts:function(t,e){return this.aContexts.slice(t,t+e)},getNodes:function(t,e){var n=this.getContexts(t,t+e);var i=[];for(var o=0;o<n.length;o++){var s=this._getContextInfo(n[o])||{};var a=n[o];i.push({context:a,level:s.iLevel,parent:s.oParentContext,nodeState:{expanded:s.bExpanded,collapsed:!s.bExpanded,selected:false}})}return i},hasChildren:function(){return true},nodeHasChildren:function(){return true},getContextByIndex:function(t){return this.aContexts[t]},getLevel:function(t){var e=this._getContextInfo(t);return e?e.iLevel:-1},isExpanded:function(t){var e=this.getContextByIndex(t);var n=this._getContextInfo(e);return n?n.bExpanded:false},expandContext:function(t){var e=this._getContextInfo(t);if(e&&!e.bExpanded){this.storeSelection();this._loadChildContexts(t);e.bExpanded=true;this._fireChange();this.restoreSelection()}},expand:function(t){this.expandContext(this.getContextByIndex(t))},collapseContext:function(t,e){var n=this._getContextInfo(t);if(n&&n.bExpanded){this.storeSelection();for(var i=this.aContexts.length-1;i>0;i--){if(this._getContextInfo(this.aContexts[i]).oParentContext===t){this.aContexts.splice(i,1)}}n.bExpanded=false;if(!e){this._fireChange()}this.restoreSelection()}},collapse:function(t){this.collapseContext(this.getContextByIndex(t))},collapseToLevel:function(t){if(!t||t<0){t=0}var e=this.aContexts.slice();for(var n=e.length-1;n>=0;n--){var i=this.getLevel(e[n]);if(i!=-1&&i>=t){this.collapseContext(e[n],true)}}this._fireChange()},toggleContext:function(t){var e=this._getContextInfo(t);if(e){if(e.bExpanded){this.collapseContext(t)}else{this.expandContext(t)}}},toggleIndex:function(t){this.toggleContext(this.getContextByIndex(t))},storeSelection:function(){var e=n.getSelectedIndices();var i=[];t(e,function(t,e){i.push(n.getContextByIndex(e))});this._aSelectedContexts=i},restoreSelection:function(){n.clearSelection();var e=this._aSelectedContexts;t(this.aContexts,function(t,i){if((e?e.indexOf(i):-1)>=0){n.addSelectionInterval(t,t)}});this._aSelectedContexts=undefined},attachSelectionChanged:function(){return undefined},detachSelectionChanged:function(){},clearSelection:function(){n._oSelection.clearSelection()},attachSort:function(){},detachSort:function(){}});e._init(n.getExpandFirstLevel())};return e},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/TreeBindingUtils", function(){"use strict";var i=function(){};i.mergeSections=function(i,e){var t=[];for(var r=0;r<i.length;r++){var n=i[r];var s=n.startIndex+n.length;var a=e.startIndex+e.length;if(e.startIndex<=s&&a>=s&&e.startIndex>=n.startIndex){e.startIndex=n.startIndex;e.length=a-n.startIndex}else if(e.startIndex<=n.startIndex&&a>=n.startIndex&&a<=s){e.length=s-e.startIndex}else if(e.startIndex>=n.startIndex&&a<=s){e.startIndex=n.startIndex;e.length=n.length}else if(a<n.startIndex||e.startIndex>s){t.push(n)}}t.push(e);return t};i._determineRequestDelta=function(i,e){var t=i.iSkip+i.iTop;var r=e.iSkip+e.iTop;if(i.iSkip===e.iSkip&&i.iTop===e.iTop){return false}else if(i.iSkip<e.iSkip&&t>e.iSkip&&t<=r){i.iTop=e.iSkip-i.iSkip;if(i.iThreshold){i.iTop=i.iTop+i.iThreshold;i.iSkip=Math.max(0,i.iSkip-i.iThreshold);i.iThreshold=0}}else if(i.iSkip<r&&t>r&&i.iSkip>=e.iSkip){i.iSkip=r;i.iTop=t-i.iSkip;if(i.iThreshold){i.iTop+=i.iThreshold;i.iThreshold=0}}else if(i.iSkip>=e.iSkip&&t<=r){return false}else if(i.iSkip<=e.iSkip&&t>=r){e.oRequestHandle.abort()}else if(t<=e.iSkip||i.iSkip>=r){}return undefined};return i});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/_Helper", ["sap/base/security/encodeURL","sap/base/util/deepClone","sap/base/util/deepEqual","sap/base/util/extend","sap/base/util/isPlainObject","sap/base/util/merge"],function(e,a,s,i,t,l){"use strict";var n={deepClone:a,deepEqual:s,encodeURL:e,extend:i,isPlainObject:t,merge:l};return n},false);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/analytics/AnalyticalBinding", ["./BatchResponseCollector","./odata4analytics","sap/base/Log","sap/base/util/deepExtend","sap/base/util/each","sap/base/util/extend","sap/base/util/isEmptyObject","sap/base/util/uid","sap/ui/model/ChangeReason","sap/ui/model/Filter","sap/ui/model/FilterOperator","sap/ui/model/FilterProcessor","sap/ui/model/FilterType","sap/ui/model/Sorter","sap/ui/model/TreeAutoExpandMode","sap/ui/model/TreeBinding","sap/ui/model/odata/CountMode","sap/ui/model/odata/ODataUtils"],function(e,t,i,r,s,n,a,o,u,l,d,h,p,f,g,y,c,v){"use strict";var m="sap.ui.model.analytics.AnalyticalBinding",_=0,I=i.getLogger(m);function R(e){var i,r,s,n,a,o,u,l,d,h=new t.QueryResultRequest(e.oAnalyticalQueryResult),p=e.mParameters.select.split(","),f=q(p,e.sPath);h.setAggregationLevel(e.aMaxAggregationLevel);h.setMeasures(e.aMeasureName);Object.keys(e.oDimensionDetailsSet).forEach(function(t){n=e.oDimensionDetailsSet[t];h.includeDimensionKeyTextAttributes(t,true,n.textPropertyName!==undefined,n.aAttributeName)});Object.keys(e.oMeasureDetailsSet).forEach(function(t){u=e.oMeasureDetailsSet[t];h.includeMeasureRawFormattedValueUnit(t,u.rawValuePropertyName!==undefined,u.formattedValuePropertyName!==undefined,u.unitPropertyName!==undefined)});s=h.getURIQueryOptionValue("$select");if(s){r=s.split(",");for(a=0,l=r.length;a<l;a++){d=r[a];o=p.indexOf(d);if(o<0){i=e.mAnalyticalInfoByProperty[d];if(!i||!i.visible&&!i.inResult){continue}I.warning("Ignored the 'select' binding parameter, because"+" it does not contain the property '"+d+"'",e.sPath);f=true}else{p.splice(o,1)}}}const g=[];for(a=0;a<p.length;a+=1){d=p[a];n=e.oAnalyticalQueryResult.findDimensionByPropertyName(d);if(n){const t=e.oDimensionDetailsSet[n.getName()];if(t===undefined){M(e.sPath,d,n);f=true}else if(b._updateDimensionDetailsTextProperty(n,d,t)){continue}}u=e.oAnalyticalQueryResult.findMeasureByPropertyName(d);if(u&&e.oMeasureDetailsSet[u.getName()]===undefined){M(e.sPath,d,u);f=true}g.push(d)}return f?[]:g}function M(e,i,r){var s=r instanceof t.Dimension?"dimension":"measure";if(r.getName()===i){I.warning("Ignored the 'select' binding parameter, because it contains"+" the "+s+" property '"+i+"' which is not contained in the analytical info (see updateAnalyticalInfo)",e)}else{I.warning("Ignored the 'select' binding parameter, because the property '"+i+"' is associated with the "+s+" property '"+r.getName()+"' which is not contained in the analytical"+" info (see updateAnalyticalInfo)",e)}}function q(e,t){var i,r=false,s,n;for(s=0,n=e.length;s<n;s++){e[s]=e[s].trim()}for(s=e.length-1;s>=0;s--){i=e[s];if(e.indexOf(i)!==s){I.warning("Ignored the 'select' binding parameter, because it"+" contains the property '"+i+"' multiple times",t);e.splice(s,1);r=true}}return r}var b=y.extend("sap.ui.model.analytics.AnalyticalBinding",{constructor:function(e,t,i,r,s,n){y.call(this,e,t,i,s,n);this.iModelVersion=b._getModelVersion(this.oModel);if(this.iModelVersion===null){throw new Error("The AnalyticalBinding does not support the given model")}this.aAdditionalSelects=[];this.sEntitySetName=n.entitySet?n.entitySet:undefined;this.bArtificalRootContext=false;this.aApplicationFilter=this._convertDeprecatedFilterObjects(s);this.aControlFilter=undefined;this.aSorter=r?r:[];if(!Array.isArray(this.aSorter)){this.aSorter=[this.aSorter]}this.aMaxAggregationLevel=[];this.aAggregationLevel=[];this.oPendingRequests={};this.oPendingRequestHandle=[];this.oGroupedRequests={};this.bUseBatchRequests=n.useBatchRequests===true;this.bProvideTotalSize=n.provideTotalResultSize!==false;this.bProvideGrandTotals=n.provideGrandTotals!==false;this.bReloadSingleUnitMeasures=n.reloadSingleUnitMeasures!==false;this.bUseAcceleratedAutoExpand=n.useAcceleratedAutoExpand!==false;this.bNoPaging=n.noPaging===true;_+=1;this._iId=_;this.iTotalSize=-1;this.mServiceKey={};this.mServiceLength={};this.mServiceFinalLength={};this.mKeyIndex={};this.mFinalLength=this.mServiceFinalLength;this.mLength={};this.mMultiUnitKey={};this.aMultiUnitLoadFactor={};this.bNeedsUpdate=false;this.bApplySortersToGroups=true;this.sLastAutoExpandMode=undefined;this.mEntityKey={};this.sCustomParams=this.oModel.createCustomParams({custom:this.mParameters.custom});this.oAnalyticalQueryResult=null;this.aAnalyticalInfo=[];this.mAnalyticalInfoByProperty={};this.aBatchRequestQueue=[];if(n.countMode==c.None){I.fatal("requested count mode is ignored; OData requests will include"+" $inlinecount options")}else if(n.countMode==c.Request||n.countMode==c.Both){I.warning("default count mode is ignored; OData requests will include"+" $inlinecount options")}else if(this.oModel.sDefaultCountMode==c.Request){I.warning("default count mode is ignored; OData requests will include"+" $inlinecount options")}this.aAllDimensionSortedByName=null;this.aInitialAnalyticalInfo=n.analyticalInfo;this.bInitial=true}});function x(e,t){return function(){if(!e.__supportUID){e.__supportUID=o()}return{type:m,analyticalError:t,analyticalBindingId:e.__supportUID}}}b.prototype.setContext=function(e){var t;if(this.oContext!==e){this.oContext=e;if(!this.isRelative()){return}this.oDataState=null;this.bApplySortersToGroups=true;this.iTotalSize=-1;this._abortAllPendingRequests();t=this.getResolvedPath();if(t){this.resetData();this._initialize();this._fireChange({reason:u.Context})}else{this.bInitial=true}}};b.prototype.initialize=function(){if(this.oModel.oMetadata&&this.oModel.oMetadata.isLoaded()&&this.isInitial()){var e=this.isRelative();if(!e||e&&this.oContext){this._initialize()}this._fireRefresh({reason:u.Refresh})}return this};b.prototype._initialize=function(){if(this.oModel.oMetadata&&this.oModel.oMetadata.isLoaded()){this.bInitial=false;this.oAnalyticalQueryResult=this.oModel.getAnalyticalExtensions().findQueryResultByName(this._getEntitySet());if(!this.oAnalyticalQueryResult){throw"Error in AnalyticalBinding - The QueryResult '"+this._getEntitySet()+"' could not be retrieved. Please check your service definition."}this.updateAnalyticalInfo(this.aInitialAnalyticalInfo);this.aAllDimensionSortedByName=this.oAnalyticalQueryResult.getAllDimensionNames().concat([]).sort();this._fireRefresh({reason:u.Refresh})}};b.prototype.getRootContexts=function(e,t,i,r){if(typeof e!=="object"){e={length:t,numberOfExpandedLevels:i,startIndex:e,threshold:r}}if(this.isInitial()){return[]}var s=e&&e.numberOfExpandedLevels?e.numberOfExpandedLevels+1:1;var n=null;var a=this._getRequestId(b._requestType.groupMembersQuery,{groupId:null});if(this.bArtificalRootContext&&!this._cleanupGroupingForCompletedRequest(a)){return n}n=this._getContextsForParentContext(null);if(n.length==1){return n}if(s<=1){if(s==1){this._considerRequestGrouping([a,this._getRequestId(b._requestType.groupMembersQuery,{groupId:"/"})]);this.getNodeContexts(this.getModel().getContext("/"),{startIndex:e.startIndex,length:e.length,threshold:e.threshold,level:0,numberOfExpandedLevels:0})}}else{var o=this._prepareGroupMembersAutoExpansionRequestIds("/",e.numberOfExpandedLevels);o.push(a);this._considerRequestGrouping(o);this.getNodeContexts(this.getModel().getContext("/"),{startIndex:e.startIndex,length:e.length,threshold:e.threshold,level:0,numberOfExpandedLevels:e.numberOfExpandedLevels})}if(n.length>1){I.fatal("assertion failed: grand total represented by a single entry")}return n};b.prototype.getNodeContexts=function(e,t){if(this.isInitial()){return[]}var i,r,s,n,a,o;if(typeof t=="object"){i=t.startIndex;r=t.length;s=t.threshold;n=t.level;a=t.numberOfExpandedLevels;o=t.supressRequest}else{i=arguments[1];r=arguments[2];s=arguments[3];n=arguments[4];a=arguments[5];o=arguments[6]}var u=this._getContextsForParentContext(e,i,r,s,n,a,o);return u};b.prototype.ContextsAvailabilityStatus={ALL:2,SOME:1,NONE:0};b.prototype.hasAvailableNodeContexts=function(e,t){var i=this._getGroupIdFromContext(e,t);if(this._getKeys(i)!=undefined){if(this.mFinalLength[i]==true){return b.prototype.ContextsAvailabilityStatus.ALL}else{return b.prototype.ContextsAvailabilityStatus.SOME}}else{return b.prototype.ContextsAvailabilityStatus.NONE}};b.prototype.getGroupSize=function(e,t){if(e===undefined){return 0}var i=this._getGroupIdFromContext(e,t);return this.mFinalLength[i]?this.mLength[i]:-1};b.prototype.getCount=function(){return this.iTotalSize>=0?this.iTotalSize:undefined};b.prototype.getTotalSize=function(){if(!this.bProvideTotalSize){I.fatal("total size of result explicitly turned off, but getter invoked")}return this.iTotalSize};b.prototype.hasChildren=function(e,t){t=t||{level:1};if(e===undefined){return false}if(e==null){return true}var i=t.level;if(i==0){return true}if(this.aAggregationLevel.length<i){return false}return this.aMaxAggregationLevel.indexOf(this.aAggregationLevel[i-1])<this.aMaxAggregationLevel.length-1};b.prototype.hasMeasures=function(){var e=false;for(var t in this.oMeasureDetailsSet){if(this.oMeasureDetailsSet.hasOwnProperty(t)){e=true;break}}return e};b.prototype.getDimensionDetails=function(){return this.oDimensionDetailsSet};b.prototype.getMeasureDetails=function(){return this.oMeasureDetailsSet};b.prototype.providesGrandTotal=function(){return this.bProvideGrandTotals};b.prototype.getProperty=function(e){if(this.isInitial()){return{}}return this.oAnalyticalQueryResult.getEntityType().findPropertyByName(e)};b.prototype.getFilterablePropertyNames=function(){if(this.isInitial()){return[]}return this.oAnalyticalQueryResult.getEntityType().getFilterablePropertyNames()};b.prototype.getSortablePropertyNames=function(){if(this.isInitial()){return[]}return this.oAnalyticalQueryResult.getEntityType().getSortablePropertyNames()};b.prototype.getPropertyLabel=function(e){if(this.isInitial()){return""}return this.oAnalyticalQueryResult.getEntityType().getLabelOfProperty(e)};b.prototype.getPropertyHeading=function(e){if(this.isInitial()){return""}return this.oAnalyticalQueryResult.getEntityType().getHeadingOfProperty(e)};b.prototype.getPropertyQuickInfo=function(e){if(this.isInitial()){return""}return this.oAnalyticalQueryResult.getEntityType().getQuickInfoOfProperty(e)};b.prototype.isMeasure=function(e){return this.aMeasureName&&this.aMeasureName.indexOf(e)!==-1};b.prototype.filter=function(e,t){if(!e){e=[]}if(e instanceof l){e=[e]}e=this._convertDeprecatedFilterObjects(e);if(t==p.Application){this.aApplicationFilter=e}else{this.aControlFilter=e}this.iTotalSize=-1;this._abortAllPendingRequests();this.resetData();this.bApplySortersToGroups=true;this._fireRefresh({reason:u.Filter});return this};b.prototype.getFilterInfo=function(e){var t=h.combineFilters(this.aControlFilter,this.aApplicationFilter);if(t){return t.getAST(e)}return null};b.prototype.sort=function(e){if(e instanceof f){e=[e]}this.aSorter=e?e:[];this._abortAllPendingRequests();this.resetData(undefined,{reason:u.Sort});this._fireRefresh({reason:u.Sort});return this};b.prototype.getGroupName=function(e,t){if(e===undefined){return""}var i=this.aAggregationLevel[t-1],r=this.oAnalyticalQueryResult.findDimensionByPropertyName(i),s=this.mAnalyticalInfoByProperty[i]&&this.mAnalyticalInfoByProperty[i].formatter,n=e.getProperty(i),a,o,u,l,d,h,p,f;if(r&&this.oDimensionDetailsSet[i].textPropertyName){d=r.getTextProperty()}if(d){h=d.name;f=this.mAnalyticalInfoByProperty[h]&&this.mAnalyticalInfoByProperty[h].formatter;p=e.getProperty(h);a=s?s(n,p):n;o=f?f(p,n):p}else{a=s?s(n):n}l=r.getLabelText&&r.getLabelText();u=(l?l+": ":"")+a;if(o){u+=" - "+o}return u};b.prototype.updateAnalyticalInfo=function(e,r){var s,a,o,l,d=this;function h(e){var t=e.level,i=e.name;l=l||o.getAllHierarchyPropertyNames();l.forEach(function(r){var s=d.oAnalyticalQueryResult.findDimensionByPropertyName(r).getHierarchy(),n=null,a=s.getNodeIDProperty().name,u;if(a===i){n=p(s)}else{u=s.getNodeExternalKeyProperty();if(u&&u.name===i){n=p(s);n.nodeExternalKeyName=i}else{u=o.getTextPropertyOfProperty(a);if(u&&u.name===i){n=p(s);n.nodeTextName=i}}}if(n&&"level"in e){if(typeof t==="number"){if("level"in n&&n.level!==t){throw new Error("Multiple different level filter for hierarchy '"+a+"' defined")}n.level=t;n.grouped=!!e.grouped}else{throw new Error("The level of '"+a+"' has to be an integer value")}}})}function p(e){var t=e.getNodeIDProperty().name,i,r=d.mHierarchyDetailsByName[t];if(!r){i=e.getNodeLevelProperty();r={dimensionName:e.getNodeValueProperty().name,nodeIDName:t,nodeLevelName:i&&i.name};d.mHierarchyDetailsByName[t]=r}return r}if(!this.oModel.oMetadata||!this.oModel.oMetadata.isLoaded()||this.isInitial()){this.aInitialAnalyticalInfo=e;return}s=t.helper.deepEqual(this._aLastChangedAnalyticalInfo,e,function(e){d.mAnalyticalInfoByProperty[e.name].formatter=e.formatter});if(s){this._aLastChangedAnalyticalInfo=[];for(var f=0;f<e.length;f++){this._aLastChangedAnalyticalInfo[f]=n({},e[f])}}if(s<2){if(r||s){setTimeout(function(){this._fireChange({reason:u.Change})}.bind(this),0)}return}var g=this.oDimensionDetailsSet||{},y=this.oMeasureDetailsSet||{};this.mAnalyticalInfoByProperty={};this.aMaxAggregationLevel=[];this.aAggregationLevel=[];this.aMeasureName=[];if(this.iAnalyticalInfoVersionNumber==undefined){this.iAnalyticalInfoVersionNumber=1}else if(this.iAnalyticalInfoVersionNumber>999){this.iAnalyticalInfoVersionNumber=1}else{this.iAnalyticalInfoVersionNumber=this.iAnalyticalInfoVersionNumber+1}this.oMeasureDetailsSet={};this.oDimensionDetailsSet={};this.aAdditionalSelects=[];this.mHierarchyDetailsByName={};o=this.oAnalyticalQueryResult.getEntityType();for(var c=0;c<e.length;c++){var v=this.oAnalyticalQueryResult.findDimensionByPropertyName(e[c].name);if(v&&(e[c].inResult==true||e[c].visible==true)){e[c].dimensionPropertyName=v.getName();a=this.oDimensionDetailsSet[v.getName()];if(!a){a={};a.name=v.getName();a.aAttributeName=[];a.grouped=false;this.oDimensionDetailsSet[v.getName()]=a;this.aMaxAggregationLevel.push(a.name);if(e[c].grouped==true){this.aAggregationLevel.push(a.name)}}if(e[c].grouped==true){if(!this.getSortablePropertyNames()||this.getSortablePropertyNames().indexOf(v.getName())==-1){I.fatal("property "+v.getName()+" must be sortable in order to be used as grouped dimension")}a.grouped=true}if(v.getName()==e[c].name){a.keyPropertyName=e[c].name}b._updateDimensionDetailsTextProperty(v,e[c].name,a);if(v.findAttributeByName(e[c].name)){a.aAttributeName.push(e[c].name)}a.analyticalInfo=e[c]}var m=this.oAnalyticalQueryResult.findMeasureByPropertyName(e[c].name);if(m&&(e[c].inResult==true||e[c].visible==true)){e[c].measurePropertyName=m.getName();var _=this.oMeasureDetailsSet[m.getName()];if(!_){_={};_.name=m.getName();this.oMeasureDetailsSet[m.getName()]=_;this.aMeasureName.push(_.name)}if(m.getRawValueProperty().name==e[c].name){_.rawValuePropertyName=e[c].name}var M=m.getFormattedValueProperty();if(M&&M.name==e[c].name){_.formattedValuePropertyName=e[c].name}_.analyticalInfo=e[c]}if(!v&&!m){h(e[c])}this.mAnalyticalInfoByProperty[e[c].name]=e[c]}Object.keys(this.mHierarchyDetailsByName).forEach(function(e){var t=d.mHierarchyDetailsByName[e];if(!("level"in t)){delete d.mHierarchyDetailsByName[e];if(I.isLoggable(i.Level.INFO)){I.info("No level specified for hierarchy node '"+e+"'; ignoring hierarchy","")}}else if(!d.oDimensionDetailsSet[e]){d.oDimensionDetailsSet[e]={aAttributeName:[],grouped:t.grouped,isHierarchyDimension:true,name:e};d.aMaxAggregationLevel.push(e);if(t.grouped){d.aAggregationLevel.push(e)}}});for(var q in this.oMeasureDetailsSet){var x=this.oAnalyticalQueryResult.findMeasureByName(q).getUnitProperty();if(x){this.oMeasureDetailsSet[q].unitPropertyName=x.name}}var S=Object.keys(g).sort().join(";")!==Object.keys(this.oDimensionDetailsSet).sort().join(";");if(S){this.iTotalSize=-1}if(S||Object.keys(y).sort().join(";")!==Object.keys(this.oMeasureDetailsSet).sort().join(";")){this.bApplySortersToGroups=true}this.aAnalyticalInfo=e;this.resetData();this.bNeedsUpdate=false;if(this.mParameters.select){this.aAdditionalSelects=R(this)}if(r){this._fireChange({reason:u.Change})}};b.prototype.getAnalyticalInfoForColumn=function(e){return this.mAnalyticalInfoByProperty[e]};b.prototype.loadGroups=function(e){var t=[];for(var i in e){t.push(i);this._resetData(i);var r=e[i];for(var s=0;s<r.length;s++){var n=r[s];this._getContextsForParentGroupId(i,n.startIndex,n.length,n.threshold)}var a=[];for(var o=-1,u;(u=t[++o])!==undefined;){a.push(this._getRequestId(b._requestType.groupMembersQuery,{groupId:u}))}this._considerRequestGrouping(a)}};b.prototype.getAnalyticalQueryResult=function(){return this.oAnalyticalQueryResult};b._requestType={groupMembersQuery:1,totalSizeQuery:2,groupMembersAutoExpansionQuery:3,levelMembersQuery:4,reloadMeasuresQuery:5};b._artificialRootContextGroupId="artificialRootContext";b._addHierarchyLevelFilters=function(e,t){e.forEach(function(e){t.removeConditions(e.propertyName);t.addCondition(e.propertyName,d.EQ,e.level)})};b._getModelVersion=function(e){const t=e.getMetadata().getName();let i=t==="sap.ui.model.odata.v2.ODataModel"?2:null;if(t==="sap.ui.model.odata.ODataModel"){i=1}return i};b.prototype._getContextsForParentContext=function(e,t,i,r,s,n,a){if(e===undefined){return[]}if(e&&e.getPath()=="/"+b._artificialRootContextGroupId){e=this.getModel().getContext("/")}var o=this._getGroupIdFromContext(e,s);return this._getContextsForParentGroupId(o,t,i,r,n,a)};b.prototype._getContextsForParentGroupId=function(e,t,i,r,s,n){if(e===undefined){return[]}if(!t){t=0}if(!i){i=this.oModel.iSizeLimit}if(this.mFinalLength[e]&&this.mLength[e]<t+i){i=this.mLength[e]-t;if(i<0){I.fatal("invalid start index greater than total group length passed")}}if(!r){r=0}if(!s){s=0}if(e==null){if(s>0){I.fatal("invalid request to determine nodes of root context");return null}}else{if(this._getGroupIdLevel(e)>=this.aAggregationLevel.length&&s>0){I.fatal("invalid request to determine nodes of context with group ID "+e);return null}if(this._getGroupIdLevel(e)+s>this.aAggregationLevel.length){s=this.aAggregationLevel.length-this._getGroupIdLevel(e)-1}}var a=[],o,u,l,d;var h=e==null?0:this._getGroupIdLevel(e)+1;if(!this.aMultiUnitLoadFactor[h]){this.aMultiUnitLoadFactor[h]=1}var p=s>0&&e!=null;if(p){var f=this._getGroupIdLevel(e);var g=f+s;var y=true;if(!n){l=this._calculateRequiredGroupExpansion(e,g,t,i+r);y=l.groupId_Missing==null;y=y||l.groupId_Missing.length<e.length||l.groupId_Missing.substring(0,e.length)!=e}if(y){a=this._getLoadedContextsForGroup(e,t,i)}else{d=i+r}o=!y;d=Math.ceil(d*this.aMultiUnitLoadFactor[h])}else{a=this._getLoadedContextsForGroup(e,t,i,n);o=false;if(!n){if(this._oWatermark&&e===this._oWatermark.groupID){r=1e4}u=this._calculateRequiredGroupSection(e,t,i,r);var c=u.length>0&&i<u.length;o=a.length!=i&&!(this.mFinalLength[e]&&a.length>=this.mLength[e]-t)||c;u.length=Math.ceil(u.length*this.aMultiUnitLoadFactor[h])}}if(!o){this._cleanupGroupingForCompletedRequest(this._getRequestId(b._requestType.groupMembersQuery,{groupId:e}))}var v=false;if(this.oModel.getServiceMetadata()){if(o){var m=this.bProvideTotalSize&&this.iTotalSize==-1&&!this._isRequestPending(this._getRequestId(b._requestType.totalSizeQuery));v=true;var _;if(this.bUseBatchRequests){if(p){_=this._prepareGroupMembersAutoExpansionRequestIds(e,s);for(var R=-1,M;(M=_[++R])!==undefined;){if(this._isRequestPending(M)){v=false;break}}if(v){this.aBatchRequestQueue.push([b._requestType.groupMembersAutoExpansionQuery,e,l,d,s])}}else{v=u.length&&!this._isRequestPending(this._getRequestId(b._requestType.groupMembersQuery,{groupId:e}));if(v){this.aBatchRequestQueue.push([b._requestType.groupMembersQuery,e,u.startIndex,u.length]);_=[this._getRequestId(b._requestType.groupMembersQuery,{groupId:e})]}}if(v&&m){_.push(this._getRequestId(b._requestType.totalSizeQuery));this._considerRequestGrouping(_);this.aBatchRequestQueue.push([b._requestType.totalSizeQuery])}if(v){if(e==null){this._abortAllPendingRequests()}Promise.resolve().then(b.prototype._processRequestQueue.bind(this))}}else{var q;if(p){_=this._prepareGroupMembersAutoExpansionRequestIds(e,s);for(var x=-1,S;(S=_[++x])!==undefined;){if(this._isRequestPending(S)){v=false;break}}if(v){q=this._prepareGroupMembersAutoExpansionQueryRequest(b._requestType.groupMembersAutoExpansionQuery,e,l,d,s)}}else{v=u.length&&!this._isRequestPending(this._getRequestId(b._requestType.groupMembersQuery,{groupId:e}));if(v){q=this._prepareGroupMembersQueryRequest(b._requestType.groupMembersQuery,e,u.startIndex,u.length);_=[q.sRequestId]}}if(v){if(e==null){this._abortAllPendingRequests()}this._executeQueryRequest(q);if(m&&!q.bIsFlatListRequest){_.push(this._getRequestId(b._requestType.totalSizeQuery));this._considerRequestGrouping(_);this._executeQueryRequest(this._prepareTotalSizeQueryRequest(b._requestType.totalSizeQuery))}}}}}return a};b.prototype._getHierarchyLevelFiltersAndAddRecursiveHierarchy=function(e,t){var i,r=[],s=this;if(t===null){return r}i=Object.keys(this.mHierarchyDetailsByName);if(i.length>0&&t!=="/"){I.error("Hierarchy cannot be requested for members of a group",t);return r}i.forEach(function(t){var i=s.mHierarchyDetailsByName[t];e.addRecursiveHierarchy(i.dimensionName,!!i.nodeExternalKeyName,!!i.nodeTextName);r.push({propertyName:i.nodeLevelName,level:i.level})});return r};b.prototype._getNonHierarchyDimensions=function(e){var t=this;return e.filter(function(e){return!t.oDimensionDetailsSet[e].isHierarchyDimension})};b.prototype._processRequestQueue=function(e){if(e===undefined||e===null){e=this.aBatchRequestQueue||[]}if(e.length==0){return}var t=[];var i=false;var r,s,n;for(r=-1;(n=e[++r])!==undefined;){if(n[0]==b._requestType.groupMembersQuery){s=b.prototype._prepareGroupMembersQueryRequest.apply(this,n);i=i||s.bIsFlatListRequest;t.push(s)}}for(r=-1;(n=e[++r])!==undefined;){s=null;switch(n[0]){case b._requestType.groupMembersQuery:continue;case b._requestType.totalSizeQuery:if(!i){s=b.prototype._prepareTotalSizeQueryRequest.apply(this,n);t.push(s)}break;case b._requestType.groupMembersAutoExpansionQuery:s=b.prototype._prepareGroupMembersAutoExpansionQueryRequest.apply(this,n);for(var a=-1,o;(o=s.aGroupMembersAutoExpansionRequestDetails[++a])!==undefined;){t.push(o)}break;case b._requestType.reloadMeasuresQuery:{var u=n[1];for(var l=-1,d;(d=u[++l])!==undefined;){t.push(d)}break}default:I.fatal("unhandled request type "+e[r][0]);continue}}if(t.length>1){this._executeBatchRequest(t)}else{this._executeQueryRequest(t[0])}if(e===this.aBatchRequestQueue){this.aBatchRequestQueue=[]}};b.prototype._prepareGroupMembersQueryRequest=function(e,i,r,s){var n=[],a=[],o;var u=new t.QueryResultRequest(this.oAnalyticalQueryResult);u.setResourcePath(this._getResourcePath());u.getSortExpression().clear();var l=0,h=-1;if(i){n=this._getGroupIdComponents(i);l=h=n.length;var p=0;for(var f=0,g=0;f<l;g++){if(this.oDimensionDetailsSet[this.aMaxAggregationLevel[g]].grouped==false){++p}else{++f}}l=h=l+p;if(this.aMaxAggregationLevel.length>0){while(this.oDimensionDetailsSet[this.aMaxAggregationLevel[h]].grouped==false){if(++h==this.aMaxAggregationLevel.length){break}}}}var y=h>=this.aMaxAggregationLevel.length-1;o=this._getHierarchyLevelFiltersAndAddRecursiveHierarchy(u,i);var c=this.aMaxAggregationLevel.slice(0,h+1);var v=this._getNonHierarchyDimensions(c);u.setAggregationLevel(v);for(var m=0;m<v.length;m++){var _=this.oDimensionDetailsSet[v[m]];var R=_.textPropertyName!=undefined;u.includeDimensionKeyTextAttributes(_.name,true,R,_.aAttributeName);if(_.grouped){a.push({sPath:v[m],bDescending:false})}}var M=u.getFilterExpression();M.clear();if(this.aApplicationFilter){M.addUI5FilterConditions(this.aApplicationFilter)}if(this.aControlFilter){M.addUI5FilterConditions(this.aControlFilter)}if(l>=1){for(var q=0,x=n.length;q<x;q++){M.removeConditions(this.aAggregationLevel[q]);M.addCondition(this.aAggregationLevel[q],d.EQ,n[q])}}b._addHierarchyLevelFilters(o,M);var S;var A;var P;var L;var N=[];if(i!=null||this.bProvideGrandTotals||this._canApplySortersToGroups()&&this.aSorter.length>0){u.setMeasures(this.aMeasureName);for(var D in this.oMeasureDetailsSet){L=this.oMeasureDetailsSet[D];if(!y&&this._isSkippingTotalForMeasure(D)){S=false;A=false;P=false}else{S=L.rawValuePropertyName!=undefined;A=L.formattedValuePropertyName!=undefined;P=L.unitPropertyName!=undefined;if(P){if(N.indexOf(L.unitPropertyName)==-1){N.push(L.unitPropertyName)}}}u.includeMeasureRawFormattedValueUnit(L.name,S,A,P)}for(var G in v){var Q;if((Q=N.indexOf(v[G]))!=-1){N.splice(Q,1)}}}if(i){this._addSorters(u.getSortExpression(),a)}if(s==0){I.fatal("unhandled case: load 0 entities of sub group")}var F=this._getKeyIndexMapping(i,r);if(!this.bNoPaging){u.setResultPageBoundaries(F.iServiceKeyIndex+1,F.iServiceKeyIndex+s)}u.setRequestOptions(null,!this.mFinalLength[i]);return{iRequestType:e,sRequestId:this._getRequestId(b._requestType.groupMembersQuery,{groupId:i}),oAnalyticalQueryRequest:u,sGroupId:i,aSelectedUnitPropertyName:N,aAggregationLevel:c,bIsFlatListRequest:y&&l==0,bIsLeafGroupsRequest:y,iStartIndex:r,iLength:s,oKeyIndexMapping:F}};b.prototype._prepareTotalSizeQueryRequest=function(e){var i;var r=new t.QueryResultRequest(this.oAnalyticalQueryResult);r.setResourcePath(this._getResourcePath());i=this._getHierarchyLevelFiltersAndAddRecursiveHierarchy(r,"/");r.setAggregationLevel(this._getNonHierarchyDimensions(this.aMaxAggregationLevel));r.setMeasures([]);var s=r.getFilterExpression();s.clear();if(this.aApplicationFilter){s.addUI5FilterConditions(this.aApplicationFilter)}if(this.aControlFilter){s.addUI5FilterConditions(this.aControlFilter)}b._addHierarchyLevelFilters(i,s);r.setRequestOptions(null,null,true);r.setRequestOptions(null,true);return{iRequestType:e,sRequestId:this._getRequestId(b._requestType.totalSizeQuery),oAnalyticalQueryRequest:r}};b.prototype._prepareGroupMembersAutoExpansionQueryRequest=function(e,i,s,n,a){var o=this;var u=function(e,t){var i=[];if(e.groupId_Missing==null){I.fatal("missing group Id not present");return i}var s=o._getGroupIdComponents(e.groupId_Missing);var n=s.length;if(n>t){I.fatal("the given group ID is too deep for requested level for auto expansion");return i}var a=[];for(var u=0;u<n;u++){var h=o.aAggregationLevel[u];var p=s[u];var f=o._getFilterOperatorMatchingPropertySortOrder(h);a[u]=new l(h,f,p)}var g=null;if(e.startIndex_Missing>0){var y=o._getKey(e.groupId_Missing,e.startIndex_Missing-1);var c=o.oModel.getObject("/"+y);var v=o.aAggregationLevel[n];var m=c[v];g=new l(v,o._getFilterOperatorMatchingPropertySortOrder(v,false),m)}for(var _=0;_<t;_++){var R=[];var M=Math.min(n,_+1);for(var q=0;q<M;q++){var b=[];var x=Math.min(n,q+1);var S=e.startIndex_Missing>0;for(var A=0;A<x;A++){var P=new l("x",d.EQ,"x");P=r(P,a[A]);if(x>1&&A<x-1){P.sOperator=d.EQ}if(A==n-1&&_>n-1&&!S){if(P.sOperator==d.GT){P.sOperator=d.GE}else{P.sOperator=d.LE}}b.push(P)}if(b.length>0){R.push(new l(b,true));if(_>n-1&&q==n-1&&S){var L=[];for(var N=0;N<b.length;N++){var D=new l("x",d.EQ,"x");D=r(D,b[N]);L.push(D)}L[n-1].sOperator=d.EQ;L.push(g);R.push(new l(L,true));break}}}if(R.length>0){i[_]=new l(R,false)}else{i[_]=null}}return i};var h=function(e,i,r,s,n,a,u,l){var d;var h=new t.QueryResultRequest(o.oAnalyticalQueryResult);h.setResourcePath(o._getResourcePath());h.getSortExpression().clear();var p=0,g=-1;p=g=r-1;var y=0;for(var c=0,v=0;c<p;v++){if(o.oDimensionDetailsSet[o.aMaxAggregationLevel[v]].grouped==false){++y}else{++c}}p=g=p+y;if(o.aMaxAggregationLevel.length>0){while(o.aMaxAggregationLevel[g]&&o.oDimensionDetailsSet[o.aMaxAggregationLevel[g]].grouped==false){if(++g==o.aMaxAggregationLevel.length){break}}}var m=g>=o.aMaxAggregationLevel.length-1;d=o._getHierarchyLevelFiltersAndAddRecursiveHierarchy(h,i);var _=o.aMaxAggregationLevel.slice(0,g+1);h.setAggregationLevel(_);const R=[];for(var M=0;M<_.length;M++){var q=o.oDimensionDetailsSet[_[M]];var x=q.textPropertyName!=undefined;h.includeDimensionKeyTextAttributes(q.name,true,x,q.aAttributeName);if(q.grouped){R.push(new f(_[M]))}}var S=h.getFilterExpression();S.clear();if(o.aApplicationFilter){S.addUI5FilterConditions(o.aApplicationFilter)}if(o.aControlFilter){S.addUI5FilterConditions(o.aControlFilter)}if(s){S.addUI5FilterConditions([s])}b._addHierarchyLevelFilters(d,S);var A;var P;var L;var N;var D=[];h.setMeasures(o.aMeasureName);for(var G in o.oMeasureDetailsSet){N=o.oMeasureDetailsSet[G];if(!m&&o._isSkippingTotalForMeasure(G)){A=false;P=false;L=false}else{A=N.rawValuePropertyName!=undefined;P=N.formattedValuePropertyName!=undefined;L=N.unitPropertyName!=undefined;if(L){if(D.indexOf(N.unitPropertyName)==-1){D.push(N.unitPropertyName)}}}h.includeMeasureRawFormattedValueUnit(N.name,A,P,L)}for(var Q in _){var F;if((F=D.indexOf(_[Q]))!=-1){D.splice(F,1)}}o._mergeAndAddSorters(R,h.getSortExpression());if(a==0){I.fatal("unhandled case: load 0 entities of sub group")}var T=n;if(!l){T=0}else{var C=0;for(var E in o.mServiceKey){if(E.split("/").length===r+1){C+=o.mServiceKey[E].length}}T=Math.max(T,C)}if(!o.bNoPaging){h.setResultPageBoundaries(T+1,T+a)}return{iRequestType:e,sRequestId:null,oAnalyticalQueryRequest:h,iLevel:r,aSelectedUnitPropertyName:D,aAggregationLevel:_,bIsFlatListRequest:m,bIsLeafGroupsRequest:m,iStartIndex:n,iLength:a,bAvoidLengthUpdate:u}};var p=[];var g=[];if(!s){I.fatal("no first missing group member specified")}var y=this._getGroupIdLevel(i)+a+1;var c=o._getGroupIdComponents(s.groupId_Missing);var v=c.length;var m=u(s,y);var _;for(var R=1;R<=y;R++){var M;if(R>=v+2){M=0;_=undefined}else if(R==v+1){M=s.startIndex_Missing;_=s.groupId_Missing}else if(v>0){if(R==v){_=s.groupId_Missing}else{_=this._getGroupIdAncestors(s.groupId_Missing,-(v-R))[0]}var q=this._getGroupIdAncestors(s.groupId_Missing,-(v-R+1))[0];if(!q){I.fatal("failed to determine group id at parent level; group ID = "+i+", level = "+R)}M=this._findKeyIndex(q,this.mEntityKey[_]);if(M==-1){I.fatal("failed to determine position of value "+_+" in group "+q)}_=q;M++}var x=n>R?Math.ceil((n-R)/(y-R+1)):n;var S=m[R-1];if(this.bUseAcceleratedAutoExpand){var A=h(b._requestType.levelMembersQuery,i,R,S,M,x,false,S==null?true:false);A.sGroupId_Missing_AtLevel=_;A.sRequestId=this._getRequestId(b._requestType.levelMembersQuery,{groupId:i,level:R});p.push(A);g.push(A.sRequestId)}else if(S&&S.aFilters.length>0){if(!S._bMultiFilter||S.bAnd){I.fatal("level filter in wrong shape; cannot break it up")}for(var P=0;P<S.aFilters.length;P++){var L=S.aFilters[P];var N=h(b._requestType.levelMembersQuery,i,R,L,M,x,false,S==null?true:false);N.sGroupId_Missing_AtLevel=_;N.sRequestId=this._getRequestId(b._requestType.levelMembersQuery,{groupId:i,level:R,tupleIndex:P});p.push(N);g.push(N.sRequestId)}}else{var D=h(b._requestType.levelMembersQuery,i,R,null,M,x,false,S==null?true:false);D.sGroupId_Missing_AtLevel=_;D.sRequestId=this._getRequestId(b._requestType.levelMembersQuery,{groupId:i,level:R});p.push(D);g.push(D.sRequestId)}}return{iRequestType:e,aRequestId:g,aGroupMembersAutoExpansionRequestDetails:p,sGroupId:i,iLength:n}};b.prototype._prepareReloadMeasurePropertiesQueryRequest=function(e,i,r){var s=new t.QueryResultRequest(this.oAnalyticalQueryResult);s.setResourcePath(this._getResourcePath());s.getSortExpression().clear();var n=i.aAggregationLevel;s.setAggregationLevel(n);var a=i.bIsLeafGroupsRequest;var o=s.getFilterExpression();o.clear();if(this.aApplicationFilter){o.addUI5FilterConditions(this.aApplicationFilter)}if(this.aControlFilter){o.addUI5FilterConditions(this.aControlFilter)}var u=[];for(var h=0;h<n.length;h++){var p=new l(n[h],d.EQ,r.oEntry[n[h]]);u.push(p)}o.addUI5FilterConditions(u);var f;var g;var y;var c;var v=[];s.setMeasures(r.aReloadMeasurePropertyName);for(var m in this.oMeasureDetailsSet){c=this.oMeasureDetailsSet[m];if(!r.aReloadMeasurePropertyName||r.aReloadMeasurePropertyName.indexOf(c.name)==-1){continue}if(!a&&this._isSkippingTotalForMeasure(m)){f=false;g=false;y=false}else{f=c.rawValuePropertyName!=undefined;g=c.formattedValuePropertyName!=undefined;y=c.unitPropertyName!=undefined;if(y){if(v.indexOf(c.unitPropertyName)==-1){v.push(c.unitPropertyName)}}}s.includeMeasureRawFormattedValueUnit(c.name,f,g,y)}for(var _ in n){var I;if((I=v.indexOf(n[_]))!=-1){v.splice(I,1)}}return{iRequestType:e,sRequestId:this._getRequestId(b._requestType.reloadMeasuresQuery,{multiUnitEntryKey:this.oModel.getKey(r.oEntry)}),oAnalyticalQueryRequest:s,aSelectedUnitPropertyName:v,aAggregationLevel:n,oMultiUnitRepresentative:r}};b.prototype._prepareGroupMembersAutoExpansionRequestIds=function(e,t){var i=this._getGroupIdLevel(e)+1;var r=i+t;var s=[];for(var n=i;n<=r;n++){s.push(this._getRequestId(b._requestType.levelMembersQuery,{groupId:e,level:n}))}return s};b.prototype._getQueryODataRequestOptions=function(e,t,i){var r;i=i||{};try{e.getFilterExpression().checkValidity()}catch(e){I.fatal("filter expression is not valid",e.toString());return undefined}var s=e.getURIQueryOptionValue("$select");var n=e.getURIQueryOptionValue("$filter");var a=e.getURIQueryOptionValue("$orderby");var o=e.getURIQueryOptionValue("$skip");var u=e.getURIQueryOptionValue("$top");var l=e.getURIQueryOptionValue("$inlinecount");if(t&&this.aAdditionalSelects.length>0){s=(s?s.split(","):[]).concat(this.aAdditionalSelects).join(",");const t={};this.aAdditionalSelects.forEach(e=>{t[e]=true});const i=e.getSortExpression().getURIOrderByOptionValue(t);if(i){a=a?a+","+i:i}}if(this.mParameters&&this.mParameters["filter"]){if(n===null){n=this.mParameters["filter"]}else{n+="and ("+this.mParameters["filter"]+")"}}var d=[];if(s!==null){d.push("$select="+s)}if(n!==null){d.push("$filter="+n)}if(a!==null){d.push("$orderby="+a)}if(o!==null){d.push("$skip="+o)}if(u!==null){d.push("$top="+u)}if(l!==null){d.push("$inlinecount="+l)}if(i.encode===true){for(r=0;r<d.length;r++){d[r]=d[r].replace(/\ /g,"%20")}}return d};b.prototype._executeBatchRequest=function(t){var i=this.iAnalyticalInfoVersionNumber,r,s=this;var n=[],a=[];function o(){s.fireDataReceived({__simulateAsyncAnalyticalBinding:true})}var u=new e;function l(e,t){u.success(t)}function d(e,t){u.error(t||e)}this.bNeedsUpdate=true;for(var h=0;h<t.length;h++){var p=t[h];if(p.aAggregationLevel&&p.aAggregationLevel.length>0){this.bNeedsUpdate=false}}for(var f=-1,g;(g=t[++f])!==undefined;){var y=g.oAnalyticalQueryRequest,c=g.sGroupId;if(y.getURIQueryOptionValue("$select")==null){this.fireDataRequested({__simulateAsyncAnalyticalBinding:true});c=null;this.mServiceLength[c]=this.mLength[c]=1;this.mServiceFinalLength[c]=true;this._setServiceKey(this._getKeyIndexMapping(c,0),b._artificialRootContextGroupId);setTimeout(o);this.bArtificalRootContext=true;continue}var v=y.getURIToQueryResultEntries();if(!this.oContext&&v[0]!=="/"){v="/"+v}if(!this._isRequestPending(g.sRequestId)){this._registerNewRequest(g.sRequestId);if(this.iModelVersion===1){n.push(this.oModel.createBatchOperation(v.replace(/\ /g,"%20"),"GET"))}if(this.iModelVersion===2){var m=this._getQueryODataRequestOptions(y,g.bIsLeafGroupsRequest,{encode:true});if(this.sCustomParams){m.push(this.sCustomParams)}var _=this.oModel.read(v.replace(/\ /g,"%20"),{success:l,error:d,context:this.oContext,urlParameters:m});n.push(_)}a.push(g)}}if(n.length>0){I.debug("AnalyticalBinding: executing batch request with "+a.length+" operations");var R;r=this._getIdForNewRequestHandle();this.fireDataRequested();if(this.iModelVersion===1){this.oModel.addBatchReadOperations(n);R=this.oModel.submitBatch(M,q,true,true);this.oModel.fireRequestSent({url:this.oModel.sServiceUrl+"/$batch",type:"POST",async:true,info:"",infoObject:{}})}if(this.iModelVersion===2){R={abort:function(){for(var e=0;e<n.length;e++){n[e].abort()}}};u.setup({executedRequests:a,binding:this,success:M,error:q})}this._registerNewRequestHandle(r,R)}function M(e,t){s._deregisterHandleOfCompletedRequest(r);if(a.length!=e.__batchResponses.length){I.fatal("assertion failed: received "+e.__batchResponses.length+" responses for "+a.length+" read operations in the batch request")}if(i!=s.iAnalyticalInfoVersionNumber){for(var n=0;n<a.length;n++){var o=a[n].sRequestId;if(o!==undefined){s._deregisterCompletedRequest(o);s._cleanupGroupingForCompletedRequest(o)}}s.fireDataReceived({data:[]});return}var u=0;for(var l=0;l<e.__batchResponses.length;l++){if(e.__batchResponses[l].data!=undefined){if(e.__batchResponses[l].data.results.length==0){u++}switch(a[l].iRequestType){case b._requestType.groupMembersQuery:s._processGroupMembersQueryResponse(a[l],e.__batchResponses[l].data);break;case b._requestType.totalSizeQuery:s._processTotalSizeQueryResponse(a[l],e.__batchResponses[l].data);break;case b._requestType.levelMembersQuery:s._processLevelMembersQueryResponse(a[l],e.__batchResponses[l].data);break;case b._requestType.reloadMeasuresQuery:s._processReloadMeasurePropertiesQueryResponse(a[l],e.__batchResponses[l].data);break;default:I.fatal("invalid request type "+a[l].iRequestType);continue}}s._deregisterCompletedRequest(a[l].sRequestId);s._cleanupGroupingForCompletedRequest(a[l].sRequestId)}if(s.mParameters&&s.mParameters.numberOfExpandedLevels>0){if(u==e.__batchResponses.length){s.mLength["/"]=0;s.mFinalLength["/"]=true}}s.fireDataReceived({data:e});if(s.iModelVersion===1){let i=true;let r={};const n=s.oModel._getBatchErrors(e);if(n.length>0){i=false;r=s.oModel._handleError(n[0])}s.oModel.fireRequestCompleted({url:t.requestUri,type:"POST",async:true,info:"",infoObject:{},success:i,errorobject:i?{}:r});if(i){s.oModel.checkUpdate()}}}function q(e){if(e&&e.statusText!="abort"){s._deregisterHandleOfCompletedRequest(r);for(var t=-1,n;(n=a[++t])!==undefined;){s._deregisterCompletedRequest(n.sRequestId);s._cleanupGroupingForCompletedRequest(n.sRequestId)}}if(i!=s.iAnalyticalInfoVersionNumber){s.fireDataReceived();return}if(s.iModelVersion===1){e=s.oModel._handleError(e)}s.oModel.fireRequestCompleted({url:"",type:"POST",async:true,info:"",infoObject:{},success:false,errorobject:e});if(s.iModelVersion===1){s.oModel.fireRequestFailed(e)}s.fireDataReceived()}};b.prototype._executeQueryRequest=function(e){if(e.iRequestType==b._requestType.groupMembersAutoExpansionQuery){for(var t=-1,i;(i=e.aGroupMembersAutoExpansionRequestDetails[++t])!==undefined;){this._executeQueryRequest(i)}return}var r=this.iAnalyticalInfoVersionNumber;var s=e.oAnalyticalQueryRequest,n=e.sGroupId;var a=s.getURIToQueryResultEntitySet();var o=this._getQueryODataRequestOptions(s,e.bIsLeafGroupsRequest);if(!o){return}var u=this;if(s.getURIQueryOptionValue("$select")==null){this.fireDataRequested({__simulateAsyncAnalyticalBinding:true});n=null;this.mServiceLength[n]=this.mLength[n]=1;this.mServiceFinalLength[n]=true;this._setServiceKey(this._getKeyIndexMapping(n,0),b._artificialRootContextGroupId);this.bNeedsUpdate=true;setTimeout(function(){if(u._cleanupGroupingForCompletedRequest(e.sRequestId)){u.fireDataReceived({__simulateAsyncAnalyticalBinding:true})}});this.bArtificalRootContext=true;return}this._registerNewRequest(e.sRequestId);this.fireDataRequested();for(var l=0;l<o.length;l++){o[l]=o[l].replace(/\ /g,"%20")}I.debug("AnalyticalBinding: executing query request");var d=this._getIdForNewRequestHandle();if(this.iModelVersion===1){this.oModel._loadData(a,o,p,g,false,y,f)}if(this.iModelVersion===2){if(this.sCustomParams){o.push(this.sCustomParams)}var h=this.oModel.read(a.replace(/ /g,"%20"),{success:p,error:g,context:this.oContext,urlParameters:o});u._registerNewRequestHandle(d,h)}function p(t){u._deregisterHandleOfCompletedRequest(d);if(r!=u.iAnalyticalInfoVersionNumber){u._deregisterCompletedRequest(e.sRequestId);return}switch(e.iRequestType){case b._requestType.groupMembersQuery:u._processGroupMembersQueryResponse(e,t);break;case b._requestType.totalSizeQuery:u._processTotalSizeQueryResponse(e,t);break;case b._requestType.levelMembersQuery:u._processLevelMembersQueryResponse(e,t);break;case b._requestType.reloadMeasuresQuery:u._processReloadMeasurePropertiesQueryResponse(e,t);break;default:I.fatal("invalid request type "+e.iRequestType);break}u._deregisterCompletedRequest(e.sRequestId);if(u.iModelVersion===2){f(t)}}function f(t){if(r!=u.iAnalyticalInfoVersionNumber){return}if(u._cleanupGroupingForCompletedRequest(e.sRequestId)){u.fireDataReceived({data:t})}}function g(t){if(t&&t.statusText=="abort"){u.fireDataReceived();return}u._deregisterHandleOfCompletedRequest(d);u._deregisterCompletedRequest(e.sRequestId);u._cleanupGroupingForCompletedRequest(e.sRequestId);if(r!=u.iAnalyticalInfoVersionNumber){return}u.fireDataReceived()}function y(e){u._registerNewRequestHandle(d,e)}};b.prototype._abortAllPendingRequests=function(){this._abortAllPendingRequestsByHandle();this._clearAllPendingRequests()};b.prototype._processGroupMembersQueryResponse=function(e,t){var i,r=e.sGroupId,s=this.aSorter.length>0,n=e.aSelectedUnitPropertyName,a=e.aAggregationLevel,o=e.oKeyIndexMapping.iIndex,u=e.oKeyIndexMapping.iServiceKeyIndex,l=e.iLength,d=e.oKeyIndexMapping,h=r==null?0:this._getGroupIdLevel(r)+1,p=n.length>0,f,g,y,c=0,v,m,_=[];var R=t.results.length;if(r===null&&R>1&&this._canApplySortersToGroups()){this._warnNoSortingOfGroups(s?"binding is refreshed":undefined);if(s){setTimeout(this.refresh.bind(this),0);return}}var M=this._getServiceKeys(r,d.iIndex-1);f=undefined;if(M&&M.length>0){for(var q=0,S=M.length;q<S;q++){t.results[q-S]=this.oModel.getObject("/"+M[q])}var A=t.results[-M.length];f="";for(var P=0;P<a.length;P++){f+=b._getDimensionValue(A[a[P]])+"|"}}v=M&&M.length==1;for(var L=0;L<R;L++){var N=t.results[L];if(p){g="";for(var D=0;D<a.length;D++){g+=b._getDimensionValue(N[a[D]])+"|"}if(f==g){this._warnNoSortingOfGroups();if(y===undefined){if(L==0){y=-M.length;d.iServiceKeyIndex-=M.length-1}else{y=L-1}}var G=-1,Q=t.results[L-1];for(var F=0;F<n.length;F++){if(Q[n[F]]!=N[n[F]]){G=F;break}}if(G==-1){I.fatal("assertion failed: no deviating units found for result entries "+(L-1)+" and "+L,null,null,x(this,"NO_DEVIATING_UNITS"))}}if((f!=g||L==R-1)&&y!==undefined){var T=[];for(var C=y;C<L;C++){T.push(t.results[C])}if(f==g){T.push(t.results[L])}var E=b._getDeviatingUnitPropertyNames(n,T);var K=this._createMultiUnitRepresentativeEntry(r,t.results[y],n,E,e.bIsFlatListRequest);if(K.aReloadMeasurePropertyName.length>0){m=this._prepareReloadMeasurePropertiesQueryRequest(b._requestType.reloadMeasuresQuery,e,K);if(m.oAnalyticalQueryRequest&&m.oAnalyticalQueryRequest.getURIQueryOptionValue("$select")!=null){_.push(m)}}var O=this._setAdjacentMultiUnitKeys(d,K,T);var U;if(K.bIsNewEntry){U=T.length-1}else{U=O}if(v){v=false}if(U<0){I.fatal("assertion failed: iDiscardedEntriesCount must be non-negative")}c+=U;var w=this.oModel._getKey(K.oEntry);var V=this.oModel.getContext("/"+w);this._getGroupIdFromContext(V,h);this.mEntityKey[i]=w;y=undefined;if(f!=g){v=this._setServiceKey(d,this.oModel._getKey(N))}}else if(f!=g){v=this._setServiceKey(d,this.oModel._getKey(N))}f=g}else{this._setServiceKey(d,this.oModel._getKey(N))}if(!e.bIsLeafGroupsRequest){var B=this._getKey(r,d.iIndex-1);i=this._getGroupIdFromContext(this.oModel.getContext("/"+B),h);this.mEntityKey[i]=B}}var k=[];if(this.bReloadSingleUnitMeasures&&_.length>0){if(this.bUseBatchRequests){this.aBatchRequestQueue.push([b._requestType.reloadMeasuresQuery,_]);Promise.resolve().then(b.prototype._processRequestQueue.bind(this))}else{for(var H=0;H<_.length;H++){var z=_[H];this._executeQueryRequest(z)}}for(var j=0;j<_.length;j++){var $=_[j];k.push($.sRequestId)}this._considerRequestGrouping(k)}if(M&&M.length>0){for(var Z=0,W=M.length;Z<W;Z++){delete t.results[Z-W]}}if(p){c+=this._mergeLoadedKeyIndexWithSubsequentIndexes(d,a,n,e.bIsFlatListRequest)}if(!e.bAvoidLengthUpdate){var J=false;if(t.__count){this.mServiceLength[r]=parseInt(t.__count);this.mLength[r]=this.mServiceLength[r]-c;this.mFinalLength[r]=true;if(e.bIsFlatListRequest){this.iTotalSize=this.mServiceLength[r]}J=true}if(!(r in this.mServiceLength)||this.mServiceLength[r]<u+R){this.mServiceLength[r]=u+R;this.mLength[r]=o+R-c;this.mFinalLength[r]=false}if(R<l||l===undefined){this.mServiceLength[r]=u+R;this.mLength[r]=o+d.iIndex-o;this.mFinalLength[r]=true;J=true}if(R==0){this.mLength[r]=this.mServiceLength[r]=0;this.mFinalLength[r]=true;J=true}if(!J&&this.mLength[r]!==undefined&&c>0){this.mLength[r]-=c}}this.bNeedsUpdate=true;if(c>0){if(t.results.length-c>0){this.aMultiUnitLoadFactor[a.length]=t.results.length/(t.results.length-c)}if(this.aMultiUnitLoadFactor[a.length]<1.5){this.aMultiUnitLoadFactor[a.length]=2}}I.info("MultiUnit Situation in Group ("+r+"), discarded: "+c+", load-factor is now: "+this.aMultiUnitLoadFactor[a.length])};b.prototype._processTotalSizeQueryResponse=function(e,t){if(t.__count==undefined){I.fatal("missing entity count in query result");return}this.iTotalSize=parseInt(t.__count)};b.prototype._processLevelMembersQueryResponse=function(e,t){var i=this;var s,n;var a=function(a,o){var u={iRequestType:b._requestType.groupMembersQuery,sRequestId:i._getRequestId(b._requestType.groupMembersQuery,{groupId:s}),oAnalyticalQueryRequest:e.oAnalyticalQueryRequest,sGroupId:s,aSelectedUnitPropertyName:e.aSelectedUnitPropertyName,aAggregationLevel:e.aAggregationLevel,bIsFlatListRequest:e.bIsFlatListRequest,bIsLeafGroupsRequest:e.bIsLeafGroupsRequest,iStartIndex:a?e.iStartIndex:0,iLength:e.iLength,bAvoidLengthUpdate:e.bAvoidLengthUpdate};if(a&&e.iStartIndex>0&&(e.sGroupId_Missing_AtLevel!=u.sGroupId||i._getKeys(u.sGroupId)===undefined)){var l=i._getParentGroupId(u.sGroupId);var d=i._findKeyIndex(l,i.mEntityKey[u.sGroupId]);if(d<0){I.fatal("assertion failed: failed to determine position of "+u.sGroupId+" in group "+l)}else if(!d){i.mFinalLength[e.sGroupId_Missing_AtLevel]=true;u.iStartIndex=0}else if(i._getKey(l,d-1)!==undefined){var h=i._getKey(l,d-1);var p=i._getGroupIdFromContext(i.oModel.getContext("/"+h),i._getGroupIdLevel(u.sGroupId));i.mFinalLength[p]=true;u.iStartIndex=0}}if(o){u.iLength=n.length}u.oKeyIndexMapping=i._getKeyIndexMapping(u.sGroupId,u.iStartIndex);var f=r({},t);f.results=n;i._processGroupMembersQueryResponse(u,f)};if(t.results.length==0){this.bNeedsUpdate=true;return}s=this._getGroupIdFromContext(this.oModel.getContext("/"+this.oModel._getKey(t.results[0])),e.iLevel-1);n=[];var o=true;for(var u=0;u<t.results.length;u++){var l=t.results[u];var d=this.oModel.getContext("/"+this.oModel._getKey(t.results[u]));var h=this._getGroupIdFromContext(d,e.iLevel-1);if(s==h){n.push(l);if(u<t.results.length-1){continue}}a(o,t.results.length===e.iLength&&s===h);o=false;if(s!=h){n=[l]}s=h}if(t.results.length>1&&n.length==1){a(o,t.results.length==e.iLength)}};b.prototype._processReloadMeasurePropertiesQueryResponse=function(e,t){var i=e.oMultiUnitRepresentative;var r=this.oModel.getKey(i.oEntry);if(t.results.length!=1){I.fatal("assertion failed: more than one entity for reloaded measure properties of entity with key "+r);return}var s=t.results[0];var n=this.oModel.getObject("/"+r);if(!n){I.fatal("assertion failed: no entity found with key "+r);return}var a=i.aReloadMeasurePropertyName;for(var o=0;o<a.length;o++){n[a[o]]=s[a[o]]}};b.prototype._getLoadedContextsForGroup=function(e,t,i,r){var s=[],n,a,o=this._getKeys(e),u;if(!o){return s}if(!t){t=0}if(!i){i=this.oModel.iSizeLimit;if(this.mFinalLength[e]){i=this.mLength[e]}}if(r){a=t||0;u=o(a);while(u){n=this.oModel.getContext("/"+u);s.push(n);a++;u=o(a)}return s}for(a=t;a<t+i;a++){u=o(a);if(!u){break}n=this.oModel.getContext("/"+u);s.push(n)}return s};b.prototype._calculateRequiredGroupSection=function(e,t,i,r){var s=this.mKeyIndex[e]||[],n=this.mFinalLength[e]?this.mLength[e]:undefined,a=v._getReadIntervals(s,t,i,r,n),o=v._mergeIntervals(a);if(o){return{startIndex:o.start,length:o.end-o.start}}return{startIndex:0,length:Math.min(0,i)}};b.prototype._calculateRequiredGroupExpansion=function(e,t,i,r){var s={groupId_Missing:null,length_Missing:0};var n=this;var a=function(e,t,i,r){var o=n._getGroupIdLevel(e);if(o==t){var u=n._getLoadedContextsForGroup(e,i,r);var l=i+u.length-1;if(u.length>=r){return s}else if(n.mFinalLength[e]){if(u.length>=n.mLength[e]){return{groupId_Missing:null,length_Missing:r-u.length}}else{return{groupId_Missing:e,startIndex_Missing:l+1,length_Missing:r-u.length}}}else{return{groupId_Missing:e,startIndex_Missing:l+1,length_Missing:r-u.length}}}var d=n._getLoadedContextsForGroup(e,i,r);var h=r,p=i+d.length-1;for(var f=-1,g;(g=d[++f])!==undefined;){h--;var y=a(n._getGroupIdFromContext(g,o+1),t,0,h);if(y.groupId_Missing==null){if(y.length_Missing==0){return y}else{h=y.length_Missing}}else{return y}if(h==0){break}}if(n.mFinalLength[e]||h==0){return{groupId_Missing:null,length_Missing:h}}else{return{groupId_Missing:e,startIndex_Missing:p+1,length_Missing:h}}};var o=this._getGroupIdLevel(e);if(o==t+1){e=this._getParentGroupId(e);--o}if(e==null||o>t){return s}var u=r,l=i;while(e!=null){var d=a(e,t,l,u);if(d.groupId_Missing!=null){return d}else if(d.length_Missing==0){return d}else{var h=false;while(!h){var p=this._getParentGroupId(e);if(p==null){e=p;--o;break}var f=this.mEntityKey[e];if(!f){return s}var g=this._findKeyIndex(p,f);if(g==-1){return s}if(g==this._getKeyCount(p)-1){if(this.mFinalLength[p]){e=p;--o;continue}else{return{groupId_Missing:p,startIndex_Missing:g+1,length_Missing:u}}}else{f=this._getKey(p,g+1);e=this._getGroupIdFromContext(this.oModel.getContext("/"+f),o);h=true}}l=0;u=d.length_Missing}}return{groupId_Missing:null,length_Missing:u}};b.prototype._getResourcePath=function(){return this.isRelative()?this.getResolvedPath():this.sPath};b.prototype._getEntitySet=function(){var e=this.sEntitySetName;if(!e){e=this.sPath.split("/")[1];if(e.indexOf("(")!=-1){e=e.split("(")[0]+"Results"}}return e};b.prototype._getEffectiveSortOrder=function(e){for(var i=0;i<this.aSorter.length;i++){if(this.aSorter[i]&&this.aSorter[i].sPath==e){return this.aSorter[i].bDescending?t.SortOrder.Descending:t.SortOrder.Ascending}}return null};b.prototype._getFilterOperatorMatchingPropertySortOrder=function(e,i){var r;switch(this._getEffectiveSortOrder(e)){case t.SortOrder.Ascending:if(i){r=d.GE}else{r=d.GT}break;case t.SortOrder.Descending:if(i){r=d.LE}else{r=d.LT}break;default:r=d.GT}return r};b.prototype._convertDeprecatedFilterObjects=function(e){if(!e){return e}var t=sap.ui.require("sap/ui/model/odata/Filter");if(typeof t==="function"){for(var i=0,r=e.length;i<r;i++){if(e[i]instanceof t){e[i]=e[i].convert()}}}return e};b.prototype._getGroupIdFromContext=function(e,t){if(!e){return null}var i="/";var r=null;if(t>this.aAggregationLevel.length){I.fatal("assertion failed: aggregation level deeper than number of current aggregation levels")}for(var s=0;s<t;s++){r=e.getProperty(this.aAggregationLevel[s]);if(r!=null){if(r.__edmType==="Edm.Time"){r=r.ms}i+=encodeURIComponent(r)+"/"}else{i+="@/"}}return i};b.prototype._getGroupIdLevel=function(e){if(e==null){I.fatal("assertion failed: no need to determine level of group ID = null");return-1}return e.split("/").length-2};b.prototype._getGroupIdComponents=function(e){if(e==null){return null}var t=e.split("/");var i=[];for(var r=1;r<t.length-1;r++){if(t[r]=="@"){i[r-1]=null}else{i[r-1]=decodeURIComponent(t[r])}}return i};b.prototype._getGroupIdAncestors=function(e,t){if(!t){return[]}if(e==null){I.fatal("group ID null does not have ancestors");return[]}if(e=="/"){if(Math.abs(t)==1){return[null]}else{I.fatal("invalid level count "+t+" for ancestors of groupId "+e);return[]}}var i=e.split("/");var r=[],s="";var n=0,a=i.length-3;if(t>0){if(t-1>a){I.fatal("invalid level count "+t+" for ancestors of groupId "+e)}else{a=t-1}}else if(-(t+1)>a){I.fatal("invalid level count "+t+" for ancestors of groupId "+e)}else{n=a+1+t;for(var o=0;o<n;o++){s+=i[o]+"/"}}for(var u=n;u<=a;u++){s+=i[u]+"/";r.push(s)}return r};b.prototype._getParentGroupId=function(e){return this._getGroupIdAncestors(e,-1)[0]};b.prototype._removeDuplicatesFromStringArray=function(e){var t={};for(var i=0;i<e.length;i++){t[e[i]]=true}var r=[];for(var s in t){r.push(s)}return r};b.prototype._getIdForNewRequestHandle=function(){if(this.oPendingRequestHandle===undefined){this.oPendingRequestHandle=[]}for(var e=0;e<this.oPendingRequestHandle.length;e++){if(this.oPendingRequestHandle[e]===undefined){return e}}this.oPendingRequestHandle[this.oPendingRequestHandle.length]=undefined;return this.oPendingRequestHandle.length-1};b.prototype._registerNewRequestHandle=function(e,t){if(this.oPendingRequestHandle[e]!==undefined){I.fatal("request handle ID already in use")}this.oPendingRequestHandle[e]=t};b.prototype._deregisterHandleOfCompletedRequest=function(e){if(a(this.oPendingRequestHandle)){I.warning("No request handles to be cleared. Previous abort/resetData?");return}if(this.oPendingRequestHandle[e]===undefined){I.fatal("no handle found for this request ID")}this.oPendingRequestHandle[e]=undefined};b.prototype._abortAllPendingRequestsByHandle=function(){for(var e=0;e<this.oPendingRequestHandle.length;e++){if(this.oPendingRequestHandle[e]){if(this.oPendingRequestHandle[e]!==undefined){this.oPendingRequestHandle[e].abort()}}}this.oPendingRequestHandle=[]};b.prototype._getRequestId=function(e,t){switch(e){case b._requestType.groupMembersQuery:if(t.groupId===undefined){I.fatal("missing group ID")}return b._requestType.groupMembersQuery+(t.groupId==null?"":t.groupId);case b._requestType.levelMembersQuery:if(t.level===undefined){I.fatal("missing level")}if(t.groupId===undefined){I.fatal("missing groupId")}return""+b._requestType.levelMembersQuery+t.level+(t.tupleIndex?"-"+t.tupleIndex:"");case b._requestType.totalSizeQuery:return b._requestType.totalSizeQuery;case b._requestType.reloadMeasuresQuery:if(!t.multiUnitEntryKey){I.fatal("missing multi unit entry key")}return b._requestType.reloadMeasuresQuery+t.multiUnitEntryKey;default:I.fatal("invalid request type "+e);return-1}};b.prototype._registerNewRequest=function(e){if(e==undefined||e==""){I.fatal("missing request ID");return}if(!this.oPendingRequests[e]){this.oPendingRequests[e]=1}else{++this.oPendingRequests[e]}};b.prototype._considerRequestGrouping=function(e){for(var t=-1,i;(i=e[++t])!==undefined;){if(this.oGroupedRequests[i]===undefined){this.oGroupedRequests[i]={}}var r=this.oGroupedRequests[i];for(var s=0;s<e.length;s++){r[e[s]]=true}}};b.prototype._isRequestPending=function(e){return this.oPendingRequests[e]!=undefined&&this.oPendingRequests[e]>0};b.prototype._deregisterCompletedRequest=function(e){if(a(this.oPendingRequests)){I.warning("There are no pending requests which could be set to 'completed'.");return}if(!this.oPendingRequests[e]){I.fatal("assertion failed: there is no pending request ID "+e)}if(this.oPendingRequests[e]==1){delete this.oPendingRequests[e]}else{--this.oPendingRequests[e]}};b.prototype._cleanupGroupingForCompletedRequest=function(e){if(this._isRequestPending(e)){return false}var t=true;if(this.oGroupedRequests[e]!=undefined){for(var i in this.oGroupedRequests[e]){if(this.oPendingRequests[i]){t=false;break}}}if(t){var r=this.oGroupedRequests[e];delete this.oGroupedRequests[e];for(var s in r){if(s!=e){this._cleanupGroupingForCompletedRequest(s)}}}return t};b.prototype._getKeyIndexMapping=function(e,t){var i,r,s,n=this.mKeyIndex[e],a={sGroupId:e,iIndex:t,iServiceKeyIndex:t},o=this.mServiceKey[e];if(n!==undefined){if(n[t]!==undefined){a.iServiceKeyIndex=n[t]==="ZERO"?0:Math.abs(n[t]);return a}r=t;if(r>0){while(--r>0){if(n[r]!==undefined){break}}}if(r==0){s=0}else{if(n[r]>=0){s=n[r]}else if(n[r+1]===undefined){s=-n[r];while(o[s+1]!==undefined){++s}}else{s=Math.abs(n[r+1])-1}if(o[s]===undefined){I.fatal("assertion failed: no service key at iLastOccupiedServiceKeyIndex = "+s)}}i=t-r;a.iServiceKeyIndex=s+i}return a};b.prototype._moveKeyIndexMapping=function(e,t){return this._getKeyIndexMapping(e.sGroupId,e.iIndex+t)};b.prototype._getKey=function(e,t){var i=this.mKeyIndex[e][t];if(i===undefined){return undefined}if(i>=0){return this.mServiceKey[e][i]}if(this.mMultiUnitKey[e]===undefined){I.fatal("assertion failed: missing expected multi currency key for group with ID "+e);return null}var r=this.mMultiUnitKey[e][t];if(r===undefined){I.fatal("assertion failed: missing expected multi currency key for group with ID "+e+" at pos "+t);return null}return r};b.prototype._getKeys=function(e){if(this.mKeyIndex[e]===undefined){return undefined}var t=this;return function(i){return t._getKey(e,i)}};b.prototype._getServiceKeys=function(e,t){var i=this.mKeyIndex[e];if(i===undefined){return undefined}var r=this.mServiceKey[e],s=i[t];if(s===undefined){return undefined}if(s>=0){return[r[s]]}var n=[];if(i[t+1]===undefined){s=i[t]=="ZERO"?0:-i[t];while(r[s]!==undefined){n.push(r[s++])}}else{s=i[t]=="ZERO"?0:-i[t];for(var a=s,o=Math.abs(i[t+1]);a<o;a++){n.push(r[a])}}return n};b.prototype._getKeyCount=function(e){if(this.mKeyIndex[e]===undefined){return undefined}return this.mKeyIndex[e].length};b.prototype._findKeyIndex=function(e,t){var i=this.mKeyIndex[e];var r=this.mServiceKey[e];var s=this.mMultiUnitKey[e];for(var n=0;n<this.mLength[e];n++){if(i[n]<0||i[n]==="ZERO"){if(s[n]==t){return n}}else if(r[i[n]]==t){return n}}return-1};b.prototype._setServiceKey=function(e,t){if(!this.mServiceKey[e.sGroupId]){this.mServiceKey[e.sGroupId]=[]}if(!this.mKeyIndex[e.sGroupId]){this.mKeyIndex[e.sGroupId]=[]}var i=this.mServiceKey[e.sGroupId][e.iServiceKeyIndex]===undefined;this.mServiceKey[e.sGroupId][e.iServiceKeyIndex++]=t;this.mKeyIndex[e.sGroupId][e.iIndex++]=e.iServiceKeyIndex-1;return i};b.prototype._setAdjacentMultiUnitKeys=function(e,t,i){if(!this.mServiceKey[e.sGroupId]){this.mServiceKey[e.sGroupId]=[]}if(!this.mKeyIndex[e.sGroupId]){this.mKeyIndex[e.sGroupId]=[]}if(!this.mMultiUnitKey[e.sGroupId]){this.mMultiUnitKey[e.sGroupId]=[]}--e.iIndex;--e.iServiceKeyIndex;this.mMultiUnitKey[e.sGroupId][e.iIndex]=this.oModel._getKey(t.oEntry);this.mKeyIndex[e.sGroupId][e.iIndex++]=e.iServiceKeyIndex>0?-e.iServiceKeyIndex:"ZERO";var r=0;for(var s=0;s<i.length;s++){if(!this.mServiceKey[e.sGroupId][e.iServiceKeyIndex]){++r}this.mServiceKey[e.sGroupId][e.iServiceKeyIndex++]=this.oModel._getKey(i[s])}return r};b.prototype._mergeLoadedKeyIndexWithSubsequentIndexes=function(e,t,i,r){var s,n=this.mKeyIndex[e.sGroupId],a=this.mServiceKey[e.sGroupId],o=this.mMultiUnitKey[e.sGroupId],u=0,l=e.iServiceKeyIndex,d=e.iIndex;var h,p;if(n===undefined){return u}var f=false;var g=a[l-1],y=a[l];if(y===undefined){return u}if(g===undefined){I.fatal("assertion failed: missing expected entry before given key index");return u}var c=this.oModel.getObject("/"+g);var v=this.oModel.getObject("/"+y);var m="",_="";for(var R=0;R<t.length;R++){m+=b._getDimensionValue(c[t[R]])+"|";_+=b._getDimensionValue(v[t[R]])+"|"}f=m==_;var M=d;if(M>=this.mLength[e.sGroupId]){I.fatal("assertion failed: service key exists,but no corresponding key index found");return u}while(n[M]===undefined||Math.abs(n[M])<l){++M}if(f){if(Math.abs(n[M])==l&&n[M]<0){if(M>d){if(n[d-1]<0){o[M]=undefined;n.splice(d,M-d+1);o.splice(d,M-d+1)}else{n[d-1]=-n[d-1];o[d-1]=o[M];o[M]=undefined;n.splice(d,M-d+1);o.splice(d,M-d+1);u=1}}}else if(Math.abs(n[M])>l){var q=M-1;if(n[q]>0){s=b._getDeviatingUnitPropertyNames(i,[c,v]);h=this._createMultiUnitRepresentativeEntry(e.sGroupId,c,i,s,r);p=this.oModel._getKey(h.oEntry);n[q]=-n[q];o[q]=p;if(q>d){n.splice(d,q-d);o.splice(d,q-d)}if(h.bIsNewEntry){u=1}else{u=0}}else if(n[d-1]<0){if(M>d){o[q]=undefined;n.splice(d,q-d+1);o.splice(d,q-d+1)}}else{n[d-1]=-n[d-1];o[d-1]=o[q];o[q]=undefined;n.splice(d,q-d+1);o.splice(d,q-d+1)}}else if(n[M]==l){if(M>d){if(n[d-1]<0){n.splice(d,M-d+1);o.splice(d,M-d+1);u=1}else{s=b._getDeviatingUnitPropertyNames(i,[c,v]);h=this._createMultiUnitRepresentativeEntry(e.sGroupId,c,i,s,r);p=this.oModel._getKey(h.oEntry);if(!h.bIsNewEntry){I.fatal("assertion failed: multi-unit entry already existed before")}n[d-1]=-n[d-1];o[d-1]=p;n.splice(d,M-d+1);o.splice(d,M-d+1);u=1}}}else{I.fatal("assertion failed: uncovered case detected");return u}}else if(n[M]>l){I.fatal("unstable query result for group ID "+e.sGroupId+": entries have been removed or added. Complete reload required")}else if(M-d>0){n.splice(d,M-d);o.splice(d,M-d)}return u};b.prototype._createMultiUnitRepresentativeEntry=function(e,t,i,s,n){var a=r({},t);var o=[];for(var u in this.oMeasureDetailsSet){var l=this.oMeasureDetailsSet[u];if(!n&&this._isSkippingTotalForMeasure(u)){if(l.rawValuePropertyName!=undefined){a[l.rawValuePropertyName]=undefined}if(l.formattedValuePropertyName!=undefined){a[l.formattedValuePropertyName]=undefined}}else{if(l.rawValuePropertyName!=undefined){a[l.rawValuePropertyName]=null}if(l.formattedValuePropertyName!=undefined){a[l.formattedValuePropertyName]="*"}}if(s){if(!l.unitPropertyName||s.indexOf(l.unitPropertyName)==-1){o.push(l.rawValuePropertyName||l.name)}}}for(var d=0;d<i.length;d++){if(s.indexOf(i[d])!=-1){a[i[d]]="*"}}var h="";for(var p=0;p<this.aAllDimensionSortedByName.length;p++){var f=b._getDimensionValue(a[this.aAllDimensionSortedByName[p]]);var g=f===""?'""':f;g=g===undefined?"":g;h+=encodeURIComponent(g)+","}h+="-multiple-units-not-dereferencable|"+this._iId;var y;if(this.mMultiUnitKey[e]&&(y=this.mMultiUnitKey[e].indexOf(h))!=-1){return{oEntry:this.oModel.getObject("/"+h),bIsNewEntry:false,iIndex:y,aReloadMeasurePropertyName:o}}a.__metadata.uri=h;delete a.__metadata["self"];delete a.__metadata["self_link_extensions"];a["^~volatile"]=true;this.oModel._importData(a,{},{});var c=this.oModel._getKey(a);this.oModel.getContext("/"+c)["_volatile"]=true;return{oEntry:a,bIsNewEntry:true,aReloadMeasurePropertyName:o}};b.prototype._clearAllPendingRequests=function(){this.oPendingRequests={};this.oGroupedRequests={}};b.prototype.resetData=function(e){var t=e?e.getPath():undefined;this._resetData(t)};b.prototype._resetData=function(e){if(e){delete this.mServiceKey[e];delete this.mServiceLength[e];delete this.mServiceFinalLength[e];delete this.mKeyIndex[e];delete this.mLength[e];delete this.mMultiUnitKey[e];delete this.mEntityKey[e]}else{this.mServiceKey={};this.mServiceLength={};this.mServiceFinalLength={};this.mFinalLength=this.mServiceFinalLength;this.mKeyIndex={};this.mLength={};this.mMultiUnitKey={};this.mEntityKey={};this.aBatchRequestQueue=[]}};b.prototype.refresh=function(e){b.prototype._refresh.apply(this,arguments)};b.prototype._refresh=function(e,t,i){var r=false;if(!e){if(i){var n=this.getResolvedPath();var a=this.oModel.oMetadata._getEntityTypeByPath(n);if(a&&a.entityType in i){r=true}}if(t&&!r){s(this.mServiceKey,function(e,i){s(i,function(e,i){if(i in t){r=true;return false}return true});if(r){return false}return true})}if(!t&&!i){r=true}}if(e||r){this.iTotalSize=-1;this._abortAllPendingRequests();this.resetData();this.bNeedsUpdate=false;this._fireRefresh({reason:u.Refresh})}};b.prototype.checkUpdate=function(e,t){var i=false;if(!e){if(this.bNeedsUpdate||!t){i=true}else{s(this.mServiceKey,function(e,r){s(r,function(e,r){if(r in t){i=true;return false}return true});if(i){return false}return true})}}if(e||i){this.bNeedsUpdate=false;this._fireChange({reason:u.Change})}};b.prototype.getDownloadUrl=function(e){var i,r,s;var n=new t.QueryResultRequest(this.oAnalyticalQueryResult);n.setResourcePath(this._getResourcePath());var a=[];var o=[];for(var u in this.oDimensionDetailsSet){a.push(u)}n.setAggregationLevel(a);for(var l in this.oDimensionDetailsSet){var d=this.oDimensionDetailsSet[l];var h=d.textPropertyName!=undefined;n.includeDimensionKeyTextAttributes(d.name,true,h,d.aAttributeName)}for(var p in this.oMeasureDetailsSet){o.push(p)}n.setMeasures(o);for(var f in this.oMeasureDetailsSet){var g=this.oMeasureDetailsSet[f];var y=g.rawValuePropertyName!=undefined;var c=g.formattedValuePropertyName!=undefined;var v=g.unitPropertyName!=undefined;n.includeMeasureRawFormattedValueUnit(g.name,y,c,v)}var m=n.getSortExpression();m.clear();for(var _=0;_<this.aSorter.length;_++){if(this.aSorter[_]){m.addSorter(this.aSorter[_].sPath,this.aSorter[_].bDescending?t.SortOrder.Descending:t.SortOrder.Ascending)}}var I=n.getFilterExpression();I.clear();if(this.aApplicationFilter){I.addUI5FilterConditions(this.aApplicationFilter)}if(this.aControlFilter){I.addUI5FilterConditions(this.aControlFilter)}var R=n.getURIToQueryResultEntitySet();var M=this._getQueryODataRequestOptions(n,true);if(!M){return undefined}var q=[];for(var b=0,x=this.aAnalyticalInfo.length;b<x;b++){var S=this.aAnalyticalInfo[b];if((S.visible||S.inResult)&&S.name!==""&&S.name!==q[q.length-1]){q.push(S.name);if(this.oMeasureDetailsSet[S.name]!=undefined&&this.oMeasureDetailsSet[S.name].unitPropertyName!=undefined){q.push(this.oMeasureDetailsSet[S.name].unitPropertyName)}}}for(var A=0,P=M.length;A<P;A++){if(/^\$select/i.test(M[A])){if(this.mParameters.select){i=M[A].slice(8).split(",");for(s=0;s<i.length;s++){r=i[s];if(q.indexOf(r)===-1){q.push(r)}}}M[A]="$select="+q.join(",");break}}if(e){M.splice(0,0,"$format="+encodeURIComponent(e))}if(this.sCustomParams){M.push(this.sCustomParams)}if(R){return this.oModel._createRequestUrl(R,null,M).replace(/ /g,"%20")}return undefined};b.prototype._addSorters=function(e,t){if(this._canApplySortersToGroups()){this.aSorter.forEach(t=>{b._addSorter(t,e)});t.forEach(t=>{b._addSorter(t,e,true)});return}this._mergeAndAddSorters(t,e)};b._addSorter=function(e,i,r){i.addSorter(e.sPath,e.bDescending?t.SortOrder.Descending:t.SortOrder.Ascending,r)};b.prototype._mergeAndAddSorters=function(e,t){const i=this.aSorter.slice();e.forEach(e=>{const r=e.sPath;for(let e=0;e<i.length;e+=1){const s=i[e];const n=s.sPath;if(n===r||this.oDimensionDetailsSet[r].textPropertyName===n){b._addSorter(s,t);i.splice(e,1);break}}b._addSorter(e,t,true)});i.forEach(e=>{b._addSorter(e,t,true)})};b.prototype._canApplySortersToGroups=function(){var e=this._autoExpandMode;if(this.bApplySortersToGroups){if(this.aSorter.length>0){if(e!==this.sLastAutoExpandMode&&e!==g.Sequential){I.warning("Applying sorters to groups is only possible with auto"+" expand mode 'Sequential'; current mode is: "+e,this.sPath)}this.sLastAutoExpandMode=e}return e===g.Sequential}return false};b.prototype._warnNoSortingOfGroups=function(e){var t;if(this.bApplySortersToGroups){t="Detected a multi-unit case, so sorting is only possible on leaves";if(e){t+="; "+e}I.warning(t,this.sPath)}this.bApplySortersToGroups=false};b.prototype._isSkippingTotalForMeasure=function(e){var t=this.mAnalyticalInfoByProperty[e];return!!t&&t.total==false};b._updateDimensionDetailsTextProperty=function(e,t,i){const r=e.getTextProperty();if(r&&r.name===t){i.textPropertyName=t;return true}return false};b._getDimensionValue=function(e){if(e&&e.__edmType==="Edm.Time"){e=e.ms}return e};b._getDeviatingUnitPropertyNames=function(e,t){var i=[];e.forEach(function(e){for(var r=1;r<t.length;r+=1){if(t[r-1][e]!=t[r][e]){i.push(e);break}}});return i};b.Logger=I;return b});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/analytics/AnalyticalTreeBindingAdapter", ["./AnalyticalBinding","sap/base/assert","sap/base/Log","sap/base/util/each","sap/ui/model/ChangeReason","sap/ui/model/TreeAutoExpandMode","sap/ui/model/TreeBinding","sap/ui/model/TreeBindingAdapter","sap/ui/model/odata/ODataTreeBindingAdapter"],function(e,t,o,n,a,i,r,s,d){"use strict";var l=function(){if(!(this instanceof r)||this._bIsAdapted){return}d.apply(this);for(var e in l.prototype){if(l.prototype.hasOwnProperty(e)){this[e]=l.prototype[e]}}this.setAutoExpandMode(this.mParameters.autoExpandMode||i.Bundled)},u="sap.ui.model.analytics.AnalyticalTreeBindingAdapter";l.prototype.getGrandTotalContext=function(){return this._oRootNode&&this._oRootNode.context};l.prototype.getGrandTotalNode=function(){return this._oRootNode};l.prototype.getGrandTotalContextInfo=function(){return this._oRootNode};l.prototype.getLength=function(){if(!this._oRootNode){return 0}return this._oRootNode.magnitude+this._oRootNode.numberOfTotals+(this._oWatermark?1:0)};l.prototype.getContextByIndex=function(e){if(this._oRootNode&&e===this.getLength()-1&&this.providesGrandTotal()&&this.hasTotaledMeasures()){return this._oRootNode.context}var t=this.findNode(e);if(!t||!t.context){t={context:this.getContexts(e,1,0)[0]}}return t?t.context:undefined};l.prototype.getNodeByIndex=function(e){if(e===this.getLength()-1&&this.providesGrandTotal()&&this.hasTotaledMeasures()){return this._oRootNode}if(e>=this.getLength()){return undefined}return this.findNode(e)};l.prototype._isNodeSelectable=function(e){if(!e){return false}return e.isLeaf&&!e.isArtificial};l.prototype._getContextsOrNodes=function(e,t,o,a){var i,r,s,d,l=[],u=[],h=this;if(!this.isResolved()){return u}t=t||0;o=o||this.oModel.iSizeLimit;a=a||0;this._iPageSize=o;this._iThreshold=Math.max(this._iThreshold,a);this._aRowIndexMap=[];this._buildTree(t,o);if(this._oRootNode){u=this._retrieveNodeSection(this._oRootNode,t,o)}this._updateRowIndexMap(u,t);if(this._oWatermark){for(i=0;i<u.length;i+=1){if(u[i].absoluteNodeIndex>this._oWatermark.lastWatermarkNodeIndex){u.length=i+1;break}}if(u.length<o){this._autoExpandPaging()}}for(i=0;i<u.length;i++){s=u[i];if(!s.context){r=r||{};d=s.parent;r[d.groupID]=d;this._updateNodeSections(d.groupID,{startIndex:s.positionInParent,length:1})}l.push(s.context)}if(r){n(r,function(e,t){t.magnitude=0;t.numberOfTotals=0;h._loadChildContexts(t,{absoluteNodeIndex:t.absoluteNodeIndex})});l=[];for(i=0;i<u.length;i+=1){s=u[i];l.push(s.context)}}if(e){return u}else{return l}};l.prototype._autoExpandPaging=function(){t(this._oWatermark,"No watermark was set!");t(this._isRunningInAutoExpand(i.Bundled),"Optimised AutoExpand Paging can only be used with TreeAutoExpandMode.Bundled!");var e=this.getNodeContexts(this._oWatermark.context,{startIndex:this._oWatermark.startIndex,length:this._iPageSize,threshold:this._iThreshold,level:this._oWatermark.level,numberOfExpandedLevels:this._oWatermark.autoExpand});return e};l.prototype._afterMatchHook=function(e,t,o,n,a,i){if(e.sumNode&&e!==this._oRootNode){if(t.length===o){return true}var r=n.call(this,e.sumNode,e.sumNode.positionInParent,i);if(r){t.push(e.sumNode)}}return undefined};l.prototype._afterMapHook=function(e,t){if(e.sumNode&&e!==this._oRootNode){t.call(this,e.sumNode)}};l.prototype._createSumNode=function(e){var t;if(this.bProvideGrandTotals&&!this.mParameters.sumOnTop&&this.hasTotaledMeasures()&&e.children.length>1){t=this._createNode({parent:e.parent,positionInParent:e.children.length,context:e.context,level:e.level});t.nodeState=this._createNodeState({groupID:t.groupID,sum:true,expanded:false})}return t};l.prototype._buildTree=function(e,t){this._oRootNode=undefined;this._oWatermark=undefined;var n=this.mParameters&&this.getNumberOfExpandedLevels();var a=this.getRootContexts({startIndex:0,length:this._iPageSize,threshold:this._iThreshold,numberOfExpandedLevels:this._autoExpandMode===i.Bundled?n:undefined});var r;if(a==null){o.warning("AnalyticalTreeBindingAdapter: No Dimensions given. An artificial rootContext has be created. Please check your Table/Service definition for dimension columns!")}else{r=a[0]}if(!r){return}var s=this._getNodeState("/");if(!s){s=this._updateTreeState({groupID:"/",expanded:true,sum:true});this._updateNodeSections("/",{startIndex:0,length:t})}this._oRootNode=this._createNode({context:r,parent:null,level:0,nodeState:s,isLeaf:false,autoExpand:n,absoluteNodeIndex:-1});this._oRootNode.isArtificial=true;this._loadChildContexts(this._oRootNode,{absoluteNodeIndex:-1})};l.prototype._loadChildContexts=function(e,t){var n=e.nodeState;const a=this._isRunningInAutoExpand(i.Bundled);var r=this.getGroupSize(e.context,e.level);if(r>=0){if(!e.children[r-1]){e.children[r-1]=undefined}if(e.level===this.aAggregationLevel.length){n.leafCount=r}e.sumNode=this._createSumNode(e)}for(var s=0;s<n.sections.length;s++){var d=n.sections[s];if(d.startIndex>e.children.length){continue}var l;if(r===-1){l=d.length}else{l=Math.min(d.length,r-d.startIndex)}var h=false;if(e.autoExpand>=0&&a){h=true;l=Math.max(0,r)}var p=this.getNodeContexts(e.context,{startIndex:d.startIndex,length:l,threshold:h?0:this._iThreshold,level:e.level,supressRequest:h});for(var f=0;f<p.length;f++){var g=p[f];var c=f+d.startIndex;var x=e.children[c];var m={context:p[f],parent:e,level:e.level+1,positionInParent:c,autoExpand:Math.max(e.autoExpand-1,-1),absoluteNodeIndex:++t.absoluteNodeIndex};if(x){x.context=m.context;x.parent=m.parent;x.level=m.level;x.positionInParent=m.positionInParent;x.magnitude=0;x.numberOfTotals=0;x.totalNumberOfLeafs=0;x.autoExpand=m.autoExpand;x.absoluteNodeIndex=m.absoluteNodeIndex;var _;if(g){_=this._calculateGroupID(x)}x.groupID=_}else{x=this._createNode(m)}x.nodeState=this._getNodeState(x.groupID);if(!x.nodeState){x.nodeState=this._createNodeState({groupID:x.groupID,expanded:false})}x.nodeState.parentGroupID=e.groupID;x.isLeaf=!this.nodeHasChildren(x);e.children[c]=x;if(x.isLeaf){e.numberOfLeafs+=1}if(x.parent.nodeState.selectAllMode&&!this._mTreeState.deselected[x.groupID]&&x.isLeaf){this.setNodeSelection(x.nodeState,true)}if((x.autoExpand>=0||x.nodeState.expanded)&&this.isGrouped()){if(!this._mTreeState.collapsed[x.groupID]){if(x.autoExpand>=0&&x.parent.nodeState.selectAllMode&&!this._mTreeState.deselected[x.groupID]){if(x.nodeState.selectAllMode===undefined){x.nodeState.selectAllMode=true}}this._updateTreeState({groupID:x.nodeState.groupID,fallbackNodeState:x.nodeState,expanded:true});this._loadChildContexts(x,t)}e.magnitude+=x.magnitude;e.numberOfTotals+=x.numberOfTotals;e.numberOfLeafs+=x.numberOfLeafs}if(x&&x.isLeaf){e.totalNumberOfLeafs=r}else{e.totalNumberOfLeafs+=x.totalNumberOfLeafs}}}r=a?e.children.length:r;e.magnitude+=Math.max(r||0,0);if(!r&&!a){o.warning("AnalyticalTreeBindingAdapter: iMaxGroupSize("+r+") is undefined for node '"+e.groupID+"'!")}if(e.sumNode||e===this._oRootNode&&this.providesGrandTotal()&&this.hasTotaledMeasures()){e.numberOfTotals+=1}if(a&&e.autoExpand!=-1){if(!this._oWatermark&&!e.isLeaf&&!this.mFinalLength[e.groupID]){const t=this._getIndexBeforeFirstMissingNode(e);let n=e.children.length;let a="WATERMARK: at '"+e.groupID+"' ("+e.absoluteNodeIndex+") and start index "+n+" with last complete node index "+t;if(n===0){n=e.positionInParent;e=e.parent;a+=" --\x3e moved to '"+e.groupID+"' ("+e.absoluteNodeIndex+") and start index "+n}this._oWatermark={groupID:e.groupID,context:e.context,absoluteNodeIndex:e.absoluteNodeIndex,startIndex:n,level:e.level,autoExpand:e.autoExpand,lastWatermarkNodeIndex:t};o.debug(a,undefined,u)}}};l.prototype._getIndexBeforeFirstMissingNode=function(e){let t=e.absoluteNodeIndex;e.children.some(e=>{t=e.isLeaf?e.absoluteNodeIndex:this._getIndexBeforeFirstMissingNode(e);return!e.isLeaf&&!this.mFinalLength[e.groupID]});return t};l.prototype._calculateGroupID=function(e){var o;var n=this.aAggregationLevel.length;if(!this.isGrouped()&&e&&e.positionInParent){o="/"+e.positionInParent+"/"}else if(e.level>n){o=this._getGroupIdFromContext(e.context,n);t(e.positionInParent!=undefined,"If the node level is greater than the number of grouped columns, the position of the node to its parent must be defined!");o+=e.positionInParent+"/"}else{o=this._getGroupIdFromContext(e.context,e.level)}return o};l.prototype.collapse=function(e){var o,r;if(typeof e==="object"){o=e}else if(typeof e==="number"){r=this.findNode(e);t(r&&r.nodeState,"AnalyticalTreeBindingAdapter.collapse("+e+"): No node found!");if(!r){return}o=r.nodeState}this._updateTreeState({groupID:o.groupID,expanded:false});o.selectAllMode=false;var s=false;if(this.bCollapseRecursive||this._isRunningInAutoExpand(i.Bundled)){var d=o.groupID;if(this._isRunningInAutoExpand(i.Bundled)&&this._oWatermark&&(typeof d=="string"&&d.length>0&&this._oWatermark.groupID.startsWith(d))){if(r&&r.parent){const e=r.parent.children[r.positionInParent+1];this._oWatermark={groupID:r.parent.groupID,context:r.parent.context,absoluteNodeIndex:r.parent.absoluteNodeIndex,startIndex:r.positionInParent+1,level:r.parent.level,autoExpand:r.parent.autoExpand,lastWatermarkNodeIndex:this._getIndexBeforeFirstMissingNode(e??r)}}this._autoExpandPaging();s=true}var l=this;n(this._mTreeState.expanded,function(e,t){if(typeof d=="string"&&d.length>0&&e.startsWith(d)){l._updateTreeState({groupID:e,expanded:false})}});var u=[];n(this._mTreeState.selected,function(e,t){if(typeof d=="string"&&d.length>0&&e.startsWith(d)){t.selectAllMode=false;l.setNodeSelection(t,false);u.push(e)}});if(u.length){var h={rowIndices:[]};var p=0;this._map(this._oRootNode,function(e){if(!e||!e.isArtificial){p++}if(e&&u.indexOf(e.groupID)!==-1){if(e.groupID===this._sLeadSelectionGroupID){h.oldIndex=p;h.leadIndex=-1}h.rowIndices.push(p)}});this._publishSelectionChanges(h)}}if(!s){this._fireChange({reason:a.Collapse})}};l.prototype.collapseToLevel=function(e){this.setNumberOfExpandedLevels(e,true);s.prototype.collapseToLevel.call(this,e)};l.prototype.nodeHasChildren=function(o){t(o,"AnalyticalTreeBindingAdapter.nodeHasChildren: No node given!");if(!o||!o.parent||o.nodeState.sum){return false}else if(o.isArtificial){return true}else{return e.prototype.hasChildren.call(this,o.context,{level:o.level})}};l.prototype.resetData=function(t,o){var n=e.prototype.resetData.call(this,t,o);this._aRowIndexMap=[];this._oRootNode=undefined;this._oWatermark=undefined;this._iPageSize=0;this._iThreshold=0;if(!o||o.reason!==a.Sort){this.clearSelection();this._createTreeState(true)}return n};l.prototype.hasTotaledMeasures=function(){var e=false;n(this.getMeasureDetails()||[],function(t,o){if(o.analyticalInfo.total){e=true;return false}return true});return e};l.prototype.isGrouped=function(){return this.aAggregationLevel.length>0};l.prototype._isRunningInAutoExpand=function(e){if(this.getNumberOfExpandedLevels()>0&&this._autoExpandMode===e){return true}else{return false}};l.prototype.setNumberOfExpandedLevels=function(e,t){var n;e=e||0;if(e<0){o.warning("Number of expanded levels was set to 0. Negative values are prohibited",this,u);e=0}n=this.aAggregationLevel.length;if(e>n){o.warning("Number of expanded levels was reduced from "+e+" to "+n+" which is the number of grouped dimensions",this,u);e=n}if(!t){this.resetData()}this.mParameters.numberOfExpandedLevels=e};l.prototype.getNumberOfExpandedLevels=function(){return this.mParameters.numberOfExpandedLevels};l.prototype._getSelectableNodesCount=function(e){if(e){return e.totalNumberOfLeafs}else{return 0}};return l},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/analytics/AnalyticalVersionInfo", ["sap/base/Log"],function(a){"use strict";var e={NONE:null,V1:1,V2:2,getVersion:function(e){var t;var i;if(e&&e.getMetadata){i=e.getMetadata().getName()}switch(i){case"sap.ui.model.odata.ODataModel":t=this.V1;break;case"sap.ui.model.odata.v2.ODataModel":t=this.V2;break;default:t=this.NONE;a.info("AnalyticalVersionInfo.getVersion(...) - The given object is no"+" instance of ODataModel V1 or V2!");break}return t}};return e},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/analytics/BatchResponseCollector", function(){"use strict";function e(e){if(e){this.setup(e)}}e.TYPE_SUCCESS="success";e.TYPE_ERROR="error";e.prototype.setup=function(e){this.iRequestCollectionCount=0;this.aCollectedSuccesses=[];this.aCollectedErrors=[];this.aExecutedRequestDetails=e.executedRequests;this.oAnalyticalBinding=e.binding;this.fnSuccessHandler=e.success;this.fnErrorHandler=e.error};e.prototype.success=function(t){this.collect(t,e.TYPE_SUCCESS)};e.prototype.error=function(t){this.collect(t,e.TYPE_ERROR)};e.prototype.collect=function(t,s){this.iRequestCollectionCount++;if(s===e.TYPE_SUCCESS){this.aCollectedSuccesses.push(t)}else{this.aCollectedErrors.push(t)}var c=this.aCollectedSuccesses.length+this.aCollectedErrors.length;if(c===this.aExecutedRequestDetails.length){if(this.aCollectedSuccesses.length===c&&this.aCollectedErrors.length===0){this.fnSuccessHandler.call(window,{__batchResponses:this.aCollectedSuccesses},{requestUri:this.oAnalyticalBinding.oModel.sServiceUrl+"/$batch"})}else{this.fnErrorHandler.call(window,this.aCollectedErrors[0]||{})}}};return e},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/analytics/ODataModelAdapter", ["./AnalyticalBinding","./AnalyticalTreeBindingAdapter","./odata4analytics","sap/base/Log"],function(t,e,n,a){"use strict";var i=function(){const e=t._getModelVersion(this);if(e===null||this.getAnalyticalExtensions){return}this._mPreadapterFunctions={bindList:this.bindList,bindTree:this.bindTree};for(var n in i.prototype){if(i.prototype.hasOwnProperty(n)){this[n]=i.prototype[n]}}if(e===1&&this.isCountSupported()){a.info("ODataModelAdapter: switched ODataModel to use inlinecount (mandatory for the AnalyticalBinding)");this.setCountSupported(false)}};i.prototype.bindList=function(n,a,i,o,s){if(s&&s.analyticalInfo){var r=new t(this,n,a,i,o,s);e.apply(r);return r}else{return this._mPreadapterFunctions.bindList.apply(this,arguments)}};i.prototype.bindTree=function(e,n,a,i){if(i&&i.analyticalInfo){var o=new t(this,e,n,[],a,i);return o}else{return this._mPreadapterFunctions.bindTree.apply(this,arguments)}};i.prototype.getAnalyticalExtensions=function(){if(this.oOData4SAPAnalyticsModel!=undefined&&this.oOData4SAPAnalyticsModel!=null){return this.oOData4SAPAnalyticsModel}const e=t._getModelVersion(this);if(e===2&&!(this.oMetadata&&this.oMetadata.isLoaded())){throw new Error("Failed to get the analytical extensions. The metadata have not been loaded by the model"+" yet. Register for the 'metadataLoaded' event of the ODataModel(v2) to know when the analytical"+" extensions can be retrieved.")}try{this.oOData4SAPAnalyticsModel=new n.Model(new n.Model.ReferenceByModel(this))}catch(t){throw new Error("Failed to instantiate analytical extensions for given OData model: "+(t.message||t))}return this.oOData4SAPAnalyticsModel};i.prototype.setAnalyticalExtensions=function(t){this.oOData4SAPAnalyticsModel=t};return i},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/analytics/odata4analytics", ["sap/base/security/encodeURL","sap/ui/model/Filter","sap/ui/model/FilterOperator","sap/ui/model/Sorter","sap/ui/model/odata/ODataUtils"],function(e,t,r,i,n){"use strict";var o=o||{},a=/^\d+$/;o.constants={};o.constants["SAP_NAMESPACE"]="http://www.sap.com/Protocols/SAPData";o.constants["VERSION"]="0.7";o.helper={deepEqual:function(e,t,r){var i,n,o=0,a,s;if(!e||e.length!==t.length){return 2}if(e!==t){for(a=0,s=e.length;a<s;a+=1){n=e[a];i=t[a];if(n.grouped!==i.grouped||n.inResult!==i.inResult||n.level!==i.level||n.name!==i.name||n.total!==i.total||n.visible!==i.visible){return 2}if(n.formatter!==i.formatter){o=1;if(r){r(i)}}}}return o},tokenizeNametoLabelText:function(e){var t="";t=e.replace(/^P_(.*)/,"$1");t=t.replace(/([^A-Z0-9_]+)([A-Z0-9_])/g,"$1 $2");t=t.replace(/([A-Z0-9_]{2,})([A-Z0-9_])([^A-Z0-9_]+)/g,"$1 $2$3");t=t.replace(/(.*) _E$/,"$1");t=t.replace(/(.*) _(.*)/g,"$1 $2");return t}};o.Model=function(e,t){this._init(e,t)};o.Model.ReferenceByURI=function(e){return{sServiceURI:e}};o.Model.ReferenceByModel=function(e){return{oModel:e}};o.Model.ReferenceWithWorkaround=function(e,t){return{oModelReference:e,aWorkaroundID:t}};o.Model.prototype={_init:function(e,t){var r,i=this;if(typeof t=="string"){throw"Deprecated second argument: Adjust your invocation by passing an object with a property sAnnotationJSONDoc as a second argument instead"}this._mParameter=t;this._oActivatedWorkarounds={};if(e&&e.aWorkaroundID){for(var n=-1,o;(o=e.aWorkaroundID[++n])!==undefined;){this._oActivatedWorkarounds[o]=true}e=e.oModelReference}if(!e||!e.sServiceURI&&!e.oModel){throw"Usage with oModelReference being an instance of Model.ReferenceByURI or Model.ReferenceByModel"}if(e.oModel){this._oModel=e.oModel;a()}if(e.sServiceURI){if(t&&t.modelVersion===2){r=sap.ui.require("sap/ui/model/odata/v2/ODataModel")||sap.ui.requireSync("sap/ui/model/odata/v2/ODataModel");this._oModel=new r(e.sServiceURI);a()}else{r=sap.ui.require("sap/ui/model/odata/ODataModel")||sap.ui.requireSync("sap/ui/model/odata/ODataModel");this._oModel=new r(e.sServiceURI);a()}}if(this._oModel.getServiceMetadata()&&this._oModel.getServiceMetadata().dataServices==undefined){throw"Model could not be loaded"}function a(){if(!i._oModel.getServiceMetadata()){i._oModel.attachMetadataLoaded(s)}else{s()}}function s(){if(i.bIsInitialized){return}i.bIsInitialized=true;if(t&&t.sAnnotationJSONDoc){i.mergeV2Annotations(t.sAnnotationJSONDoc)}i._interpreteMetadata(i._oModel.getServiceMetadata().dataServices)}},_interpreteMetadata:function(e){this._oQueryResultSet={};this._oParameterizationSet={};this._oEntityTypeSet={};this._oEntitySetSet={};this._oEntityTypeNameToEntitySetMap={};var t=this._oModel.getServiceMetadata().dataServices.schema[0];for(var r=-1,i;(i=t.entityContainer[++r])!==undefined;){if(i.isDefaultEntityContainer=="true"){this._oDefaultEntityContainer=i;break}}var n=t.entityType;var a=[],s=[],u=[];for(var l=-1,h;(h=n[++l])!==undefined;){var f=false;if(h.extensions!=undefined){for(var y=-1,p;(p=h.extensions[++y])!==undefined;){if(p.namespace==o.constants.SAP_NAMESPACE&&p.name=="semantics"){f=true;switch(p.value){case"aggregate":a.push(h);break;case"parameters":s.push(h);break;default:u.push(h)}}if(f){continue}}if(!f){u.push(h)}}else{u.push(h)}}for(var d=-1,_;(_=u[++d])!==undefined;){var m=new o.EntityType(this._oModel.getServiceMetadata(),t,_);this._oEntityTypeSet[m.getQName()]=m;var c=this._getEntitySetsOfType(t,m.getQName());if(c.length==0){throw"Invalid consumption model: No entity set for entity type "+m.getQName()+" found"}if(c.length>1){throw"Unsupported consumption model: More than one entity set for entity type "+m.getQName()+" found"}var g=new o.EntitySet(this._oModel.getServiceMetadata(),t,c[0][0],c[0][1],m);this._oEntitySetSet[g.getQName()]=g;this._oEntityTypeNameToEntitySetMap[m.getQName()]=g}var v={};for(var P=-1,S;(S=s[++P])!==undefined;){var E=new o.EntityType(this._oModel.getServiceMetadata(),t,S);this._oEntityTypeSet[E.getQName()]=E;var N=this._getEntitySetsOfType(t,E.getQName());if(N.length==0){throw"Invalid consumption model: No entity set for parameter entity type "+E.getQName()+" found"}if(N.length>1){throw"Unsupported consumption model: More than one entity set for parameter entity type "+E.getQName()+" found"}var b=new o.EntitySet(this._oModel.getServiceMetadata(),t,N[0][0],N[0][1],E);this._oEntitySetSet[b.getQName()]=b;this._oEntityTypeNameToEntitySetMap[E.getQName()]=b;var R=new o.Parameterization(E,b);this._oParameterizationSet[R.getName()]=R;v[E.getQName()]=R;var x=E.getQName();if(t.association!=undefined){for(var T=-1,A;(A=t.association[++T])!==undefined;){if(A.referentialConstraint==undefined){continue}var M=null;if(A.end[0].type==x&&A.end[0].multiplicity=="*"&&A.end[1].multiplicity=="1"){M=A.end[1].type}else if(A.end[1].type==x&&A.end[1].multiplicity=="*"&&A.end[0].multiplicity=="1"){M=A.end[0].type}if(!M){continue}if(A.referentialConstraint.dependent.propertyRef.length!=1){continue}var I=R.findParameterByName(A.referentialConstraint.dependent.propertyRef[0].name);if(I==null){continue}var Q=this._oEntityTypeSet[M];var F=this._oEntityTypeNameToEntitySetMap[M];I.setValueSetEntity(Q,F)}}}for(var D=-1,U;(U=a[++D])!==undefined;){var k=new o.EntityType(this._oModel.getServiceMetadata(),t,U);this._oEntityTypeSet[k.getQName()]=k;var w=k.getQName();var O=null;var V=null;if(t.association!=undefined){for(var L=-1,C;(C=t.association[++L])!==undefined;){var q=null;if(C.end[0].type==w){q=C.end[1].type}else if(C.end[1].type==w){q=C.end[0].type}else{continue}var B=null;B=v[q];if(B!=null){if(O!=null){throw"Unable to handle multiple parameter entity types of query entity "+k.name}else{O=B;V=C}}}}var z=this._getEntitySetsOfType(t,k.getQName());if(z.length!=1){throw"Invalid consumption model: There must be exactly one entity set for an entity type annotated with aggregating semantics"}var $=new o.EntitySet(this._oModel.getServiceMetadata(),t,z[0][0],z[0][1],k);this._oEntitySetSet[$.getQName()]=$;this._oEntityTypeNameToEntitySetMap[k.getQName()]=$;var H=new o.QueryResult(this,k,$,O);this._oQueryResultSet[H.getName()]=H;if(O){O.setTargetQueryResult(H,V)}if(t.association!=undefined){for(var j=-1,K;(K=t.association[++j])!==undefined;){if(K.referentialConstraint==undefined){continue}var W=null;if(K.end[0].type==w&&K.end[0].multiplicity=="*"&&K.end[1].multiplicity=="1"){W=K.end[1].type}else if(K.end[1].type==w&&K.end[1].multiplicity=="*"&&K.end[0].multiplicity=="1"){W=K.end[0].type}if(!W){continue}if(K.referentialConstraint.dependent.propertyRef.length!=1){continue}var Z=H.findDimensionByName(K.referentialConstraint.dependent.propertyRef[0].name);if(Z==null){continue}var J=this._oEntityTypeNameToEntitySetMap[W];Z.setMembersEntitySet(J)}}}},oUI5ODataModelAnnotatableObject:{objectName:"schema",keyPropName:"namespace",extensions:true,aSubObject:[{objectName:"entityType",keyPropName:"name",extensions:true,aSubObject:[{objectName:"property",keyPropName:"name",aSubObject:[],extensions:true}]},{objectName:"entityContainer",keyPropName:"name",extensions:false,aSubObject:[{objectName:"entitySet",keyPropName:"name",extensions:true,aSubObject:[]}]}]},mergeV2Annotations:function(e){var t=null;try{t=JSON.parse(e)}catch(e){return}var r;try{r=this._oModel.getServiceMetadata().dataServices}catch(e){return}for(var i in t){if(!(this.oUI5ODataModelAnnotatableObject.objectName==i)){continue}if(!(t[i]instanceof Array)){continue}this.mergeV2AnnotationLevel(r[this.oUI5ODataModelAnnotatableObject.objectName],t[this.oUI5ODataModelAnnotatableObject.objectName],this.oUI5ODataModelAnnotatableObject);break}return},mergeV2AnnotationLevel:function(e,t,r){for(var i=-1,n;(n=t[++i])!==undefined;){for(var o=-1,a;(a=e[++o])!==undefined;){if(!(n[r.keyPropName]==a[r.keyPropName])){continue}if(n["extensions"]!=undefined){if(a["extensions"]==undefined){a["extensions"]=[]}for(var s=-1,u;(u=n["extensions"][++s])!==undefined;){var l=false;for(var h=-1,f;(f=a["extensions"][++h])!==undefined;){if(u.name==f.name&&u.namespace==f.namespace){f.value=u.value;l=true;break}}if(!l){a["extensions"].push(u)}}}for(var y=-1,p;(p=r.aSubObject[++y])!==undefined;){for(var d in n){if(!(p.objectName==d)){continue}if(!(n[p.objectName]instanceof Array)){continue}if(a[p.objectName]==undefined||!(a[p.objectName]instanceof Array)){continue}this.mergeV2AnnotationLevel(a[p.objectName],n[p.objectName],p);break}}}}return},findQueryResultByName:function(e){var t=this._oQueryResultSet[e];if(!t&&this._oDefaultEntityContainer){var r=this._oDefaultEntityContainer.name+"."+e;t=this._oQueryResultSet[r]}return t},getAllQueryResultNames:function(){if(this._aQueryResultNames){return this._aQueryResultNames}this._aQueryResultNames=new Array(0);for(var e in this._oQueryResultSet){this._aQueryResultNames.push(this._oQueryResultSet[e].getName())}return this._aQueryResultNames},getAllQueryResults:function(){return this._oQueryResultSet},getODataModel:function(){return this._oModel},_getEntitySetsOfType:function(e,t){var r=[];for(var i=-1,n;(n=e.entityContainer[++i])!==undefined;){for(var o=-1,a;(a=n.entitySet[++o])!==undefined;){if(a.entityType==t){r.push([n,a])}}}return r},_mParameter:null,_oModel:null,_oDefaultEntityContainer:null,_aQueryResultNames:null,_oQueryResultSet:null,_oParameterizationSet:null,_oEntityTypeSet:null,_oEntitySetSet:null,_oEntityTypeNameToEntitySetMap:null,_oActivatedWorkarounds:null};o.QueryResult=function(e,t,r,i){this._init(e,t,r,i)};o.QueryResult.prototype={_init:function(e,t,r,i,n){this._oModel=e;this._oEntityType=t;this._oEntitySet=r;this._oParameterization=i;this._oDimensionSet={};this._oMeasureSet={};var a=t.getTypeDescription().property;var s={};for(var u=-1,l;(l=a[++u])!==undefined;){if(l.extensions==undefined){continue}for(var h=-1,f;(f=l.extensions[++h])!==undefined;){if(!f.namespace==o.constants.SAP_NAMESPACE){continue}switch(f.name){case"aggregation-role":switch(f.value){case"dimension":{var y=new o.Dimension(this,l);this._oDimensionSet[y.getName()]=y;break}case"measure":{var p=new o.Measure(this,l);this._oMeasureSet[p.getName()]=p;break}case"totaled-properties-list":this._oTotaledPropertyListProperty=l;break;default:}break;case"attribute-for":{var d=new o.DimensionAttribute(this,l);var _=d.getKeyProperty();s[_.name]=d;break}default:}}}for(var m in s){var c=s[m];c.getDimension().addAttribute(c)}if(e._oActivatedWorkarounds.IdentifyTextPropertiesByName){var g=[];for(var v in this._oDimensionSet){var P=this._oDimensionSet[v];if(!P.getTextProperty()){var S=null;S=t.findPropertyByName(v+"Name");if(!S){S=t.findPropertyByName(v+"Text")}if(!S){S=t.findPropertyByName(v+"Desc")}if(!S){S=t.findPropertyByName(v+"Description")}if(S){P.setTextProperty(S);g.push(S.name)}}}for(var E=-1,N;(N=g[++E])!==undefined;){delete this._oDimensionSet[N]}}},getName:function(){return this.getEntitySet().getQName()},getParameterization:function(){return this._oParameterization},getAllDimensionNames:function(){if(this._aDimensionNames){return this._aDimensionNames}this._aDimensionNames=[];for(var e in this._oDimensionSet){this._aDimensionNames.push(this._oDimensionSet[e].getName())}return this._aDimensionNames},getAllDimensions:function(){return this._oDimensionSet},getAllMeasureNames:function(){if(this._aMeasureNames){return this._aMeasureNames}this._aMeasureNames=[];for(var e in this._oMeasureSet){this._aMeasureNames.push(this._oMeasureSet[e].getName())}return this._aMeasureNames},getAllMeasures:function(){return this._oMeasureSet},findDimensionByName:function(e){return this._oDimensionSet[e]},findDimensionByPropertyName:function(e){if(this._oDimensionSet[e]){return this._oDimensionSet[e]}for(var t in this._oDimensionSet){var r=this._oDimensionSet[t];var i=r.getTextProperty();if(i&&i.name==e){return r}if(r.findAttributeByName(e)){return r}}return null},getTotaledPropertiesListProperty:function(){return this._oTotaledPropertyListProperty},findMeasureByName:function(e){return this._oMeasureSet[e]},findMeasureByPropertyName:function(e){if(this._oMeasureSet[e]){return this._oMeasureSet[e]}for(var t in this._oMeasureSet){var r=this._oMeasureSet[t];var i=r.getFormattedValueProperty();if(i&&i.name==e){return r}}return null},getModel:function(){return this._oModel},getEntityType:function(){return this._oEntityType},getEntitySet:function(){return this._oEntitySet},_oModel:null,_oEntityType:null,_oEntitySet:null,_oParameterization:null,_aDimensionNames:null,_oDimensionSet:null,_aMeasureNames:null,_oMeasureSet:null,_oTotaledPropertyListProperty:null};o.Parameterization=function(e,t){this._init(e,t)};o.Parameterization.prototype={_init:function(e,t){this._oEntityType=e;this._oEntitySet=t;this._oParameterSet={};var r=e.getTypeDescription().property;for(var i=-1,n;(n=r[++i])!==undefined;){if(n.extensions==undefined){continue}for(var a=-1,s;(s=n.extensions[++a])!==undefined;){if(!s.namespace==o.constants.SAP_NAMESPACE){continue}switch(s.name){case"parameter":{var u=new o.Parameter(this,n);this._oParameterSet[u.getName()]=u;break}default:}}}},setTargetQueryResult:function(e,t){this._oQueryResult=e;var r=this._oEntityType.getSchema().namespace+"."+t.name;var i=this._oEntityType.getTypeDescription().navigationProperty;if(!i){throw"Invalid consumption model: Parameters entity type lacks navigation property for association to query result entity type"}for(var n=-1,o;(o=i[++n])!==undefined;){if(o.relationship==r){this._oNavPropToQueryResult=o.name}}if(!this._oNavPropToQueryResult){throw"Invalid consumption model: Parameters entity type lacks navigation property for association to query result entity type"}},getTargetQueryResult:function(){if(!this._oQueryResult){throw"No target query result set"}return this._oQueryResult},getName:function(){return this.getEntitySet().getQName()},getAllParameterNames:function(){if(this._aParameterNames){return this._aParameterNames}this._aParameterNames=[];for(var e in this._oParameterSet){this._aParameterNames.push(this._oParameterSet[e].getName())}return this._aParameterNames},getAllParameters:function(){return this._oParameterSet},findParameterByName:function(e){return this._oParameterSet[e]},getNavigationPropertyToQueryResult:function(){return this._oNavPropToQueryResult},getEntityType:function(){return this._oEntityType},getEntitySet:function(){return this._oEntitySet},_oEntityType:null,_oEntitySet:null,_oQueryResult:null,_oNavPropToQueryResult:null,_aParameterNames:null,_oParameterSet:null};o.Parameter=function(e,t){this._init(e,t)};o.Parameter.prototype={_init:function(e,t){this._oParameterization=e;this._oProperty=t;var r=e.getEntityType();if(t.extensions!=undefined){for(var i=-1,n;(n=t.extensions[++i])!==undefined;){if(!n.namespace==o.constants.SAP_NAMESPACE){continue}switch(n.name){case"parameter":switch(n.value){case"mandatory":this._bRequired=true;break;case"optional":this._bRequired=false;break;default:throw"Invalid annotation value for parameter property"}break;case"label":this._sLabelText=n.value;break;case"text":this._oTextProperty=r.findPropertyByName(n.value);break;case"upper-boundary":this._bIntervalBoundaryParameter=true;this._oUpperIntervalBoundaryParameterProperty=r.findPropertyByName(n.value);break;case"lower-boundary":this._bIntervalBoundaryParameter=true;this._oLowerIntervalBoundaryParameterProperty=r.findPropertyByName(n.value);break;default:}}}if(!this._sLabelText){this._sLabelText=""}},setValueSetEntity:function(e,t){this._oValueSetEntityType=e;this._oValueSetEntitySet=t},getTextProperty:function(){return this._oTextProperty},getLabelText:function(){if(!this._sLabelText&&this._oParameterization._oQueryResult._oModel._oActivatedWorkarounds.CreateLabelsFromTechnicalNames){this._sLabelText=o.helper.tokenizeNametoLabelText(this.getName())}return this._sLabelText},isOptional:function(){return!this._bRequired},isIntervalBoundary:function(){return this._bIntervalBoundaryParameter},isLowerIntervalBoundary:function(){return this._oUpperIntervalBoundaryParameterProperty?true:false},getPeerIntervalBoundaryParameter:function(){var e=null;if(this._oLowerIntervalBoundaryParameterProperty){e=this._oLowerIntervalBoundaryParameterProperty.name}else{e=this._oUpperIntervalBoundaryParameterProperty.name}if(!e){throw"Parameter is not an interval boundary"}return this._oParameterization.findParameterByName(e)},isValueSetAvailable:function(){return this._oValueSetEntityType?true:false},getName:function(){return this._oProperty.name},getProperty:function(){return this._oProperty},getContainingParameterization:function(){return this._oParameterization},getURIToValueEntitySet:function(e){var t=null;t=(e?e:"")+"/"+this._oValueSetEntitySet.getQName();return t},_oParameterization:null,_oProperty:null,_sLabelText:null,_oTextProperty:null,_bRequired:false,_bIntervalBoundaryParameter:false,_oLowerIntervalBoundaryParameterProperty:null,_oUpperIntervalBoundaryParameterProperty:null,_oValueSetEntityType:null,_oValueSetEntitySet:null};o.Dimension=function(e,t){this._init(e,t)};o.Dimension.prototype={_init:function(e,t){this._oQueryResult=e;this._oProperty=t;this._oAttributeSet={}},setMembersEntitySet:function(e){this._oMembersEntitySet=e},getName:function(){return this._oProperty.name},getKeyProperty:function(){return this._oProperty},getTextProperty:function(){if(!this._oTextProperty){this._oTextProperty=this._oQueryResult.getEntityType().getTextPropertyOfProperty(this.getName())}return this._oTextProperty},setTextProperty:function(e){this._oTextProperty=e},getLabelText:function(){if(!this._sLabelText){this._sLabelText=this._oQueryResult.getEntityType().getLabelOfProperty(this.getName())}if(!this._sLabelText&&this._oQueryResult._oModel._oActivatedWorkarounds.CreateLabelsFromTechnicalNames){this._sLabelText=o.helper.tokenizeNametoLabelText(this.getName())}return this._sLabelText==null?"":this._sLabelText},getSuperOrdinateDimension:function(){if(!this._sSuperOrdinateDimension){var e=this._oQueryResult.getEntityType().getSuperOrdinatePropertyOfProperty(this.getName());if(e){this._sSuperOrdinateDimension=this._oQueryResult.findDimensionByName(e.name)}}return this._sSuperOrdinateDimension},getHierarchy:function(){if(!this._oHierarchy){this._oHierarchy=this._oQueryResult.getEntityType().getHierarchy(this._oProperty.name)}return this._oHierarchy},getAllAttributeNames:function(){if(this._aAttributeNames){return this._aAttributeNames}this._aAttributeNames=[];for(var e in this._oAttributeSet){this._aAttributeNames.push(this._oAttributeSet[e].getName())}return this._aAttributeNames},getAllAttributes:function(){return this._oAttributeSet},findAttributeByName:function(e){return this._oAttributeSet[e]},addAttribute:function(e){this._oAttributeSet[e.getName()]=e},getContainingQueryResult:function(){return this._oQueryResult},hasMasterData:function(){return this._oMembersEntitySet!=null?true:false},getMasterDataEntitySet:function(){return this._oMembersEntitySet},_oQueryResult:null,_oProperty:null,_oTextProperty:null,_sLabelText:null,_sSuperOrdinateDimension:null,_aAttributeNames:null,_oAttributeSet:null,_oMembersEntitySet:null,_oHierarchy:null};o.DimensionAttribute=function(e,t){this._init(e,t)};o.DimensionAttribute.prototype={_init:function(e,t){this._oQueryResult=e;this._oProperty=t;if(t.extensions!=undefined){for(var r=-1,i;(i=t.extensions[++r])!==undefined;){if(!i.namespace==o.constants.SAP_NAMESPACE){continue}switch(i.name){case"attribute-for":this._sDimensionName=i.value;break;case"label":this._sLabelText=i.value;break;case"text":this._oTextProperty=e.getEntityType().findPropertyByName(i.value);break;default:}}}},getName:function(){return this._oProperty.name},getKeyProperty:function(){return this._oProperty},getTextProperty:function(){return this._oTextProperty},getLabelText:function(){if(!this._sLabelText&&this._oQueryResult._oModel._oActivatedWorkarounds.CreateLabelsFromTechnicalNames){this._sLabelText=o.helper.tokenizeNametoLabelText(this.getName())}return this._sLabelText},getDimension:function(){return this._oQueryResult.findDimensionByName(this._sDimensionName)},_oQueryResult:null,_oProperty:null,_oTextProperty:null,_sLabelText:null,_sDimensionName:null};o.Measure=function(e,t){this._init(e,t)};o.Measure.prototype={_init:function(e,t){this._oQueryResult=e;this._oProperty=t;if(t.extensions!=undefined){for(var r=-1,i;(i=t.extensions[++r])!==undefined;){if(!i.namespace==o.constants.SAP_NAMESPACE){continue}switch(i.name){case"label":this._sLabelText=i.value;break;case"text":this._oTextProperty=e.getEntityType().findPropertyByName(i.value);break;case"unit":this._oUnitProperty=e.getEntityType().findPropertyByName(i.value);break;default:}}}if(!this._sLabelText){this._sLabelText=""}},getName:function(){return this._oProperty.name},getRawValueProperty:function(){return this._oProperty},getFormattedValueProperty:function(){return this._oTextProperty},getUnitProperty:function(){return this._oUnitProperty},getLabelText:function(){if(!this._sLabelText&&this._oQueryResult._oModel._oActivatedWorkarounds.CreateLabelsFromTechnicalNames){this._sLabelText=o.helper.tokenizeNametoLabelText(this.getName())}return this._sLabelText},isUpdatable:function(){if(this._bIsUpdatable!=null){return this._bIsUpdatable}var e=this._oQueryResult.getEntitySet().getUpdatablePropertyNameSet();return e[this.getName()]!=undefined},_oQueryResult:null,_oProperty:null,_oTextProperty:null,_sLabelText:null,_oUnitProperty:null,_bIsUpdatable:null};o.EntitySet=function(e,t,r,i,n){this._init(e,t,r,i,n)};o.EntitySet.prototype={_init:function(e,t,r,i,n){this._oEntityType=n;this._oEntitySet=i;this._oContainer=r;this._oSchema=t;this._oModel=e;if(t.entityContainer.length>1){this._sQName=r.name+"."+i.name}else{this._sQName=i.name}},getQName:function(){return this._sQName},getSetDescription:function(){return this._oEntitySet},getEntityType:function(){return this._oEntityType},getSchema:function(){return this._oSchema},getModel:function(){return this._oModel},getUpdatablePropertyNameSet:function(){if(this._oUpdatablePropertyNames){return this._oUpdatablePropertyNames}this._oUpdatablePropertyNames={};var e=true;if(this._oEntitySet.extensions!=undefined){for(var t=-1,r;(r=this._oEntitySet.extensions[++t])!==undefined;){if(r.namespace==o.constants.SAP_NAMESPACE&&r.name=="updatable"){if(r.value=="false"){e=false;break}}}}if(!e){return this._oUpdatablePropertyNames}var i=this._oEntityType.getTypeDescription().property;for(var n=-1,a;(a=i[++n])!==undefined;){var s=true;if(a.extensions==undefined){continue}for(var u=-1,l;(l=a.extensions[++u])!==undefined;){if(l.namespace!=o.constants.SAP_NAMESPACE){continue}if(l.name=="updatable"){if(l.value=="false"){s=false;break}}}if(s){this._oUpdatablePropertyNames[a.name]=true}}return this._oUpdatablePropertyNames},_oEntityType:null,_oEntitySet:null,_oContainer:null,_oSchema:null,_oModel:null,_sQName:null,_oUpdatablePropertyNames:null};o.EntityType=function(e,t,r){this._init(e,t,r)};o.EntityType.propertyFilterRestriction={SINGLE_VALUE:"single-value",MULTI_VALUE:"multi-value",INTERVAL:"interval"};o.EntityType.prototype={_init:function(e,t,r){this._oEntityType=r;this._oSchema=t;this._oModel=e;this._aKeyProperties=[];this._oPropertySet={};this._aFilterablePropertyNames=[];this._aSortablePropertyNames=[];this._aRequiredFilterPropertyNames=[];this._oPropertyFilterRestrictionSet={};this._oPropertyHeadingsSet={};this._oPropertyQuickInfosSet={};this._sQName=t.namespace+"."+r.name;var i={};function n(e){var t=i[e];if(!t){t=i[e]={}}return t}for(var a=-1,s;(s=r.key.propertyRef[++a])!==undefined;){this._aKeyProperties.push(s.name)}for(var u=-1,l;(l=r.property[++u])!==undefined;){this._oPropertySet[l.name]=l;this._aFilterablePropertyNames.push(l.name);this._aSortablePropertyNames.push(l.name);if(l.extensions==undefined){continue}for(var h=-1,f;(f=l.extensions[++h])!==undefined;){if(f.namespace!==o.constants.SAP_NAMESPACE){continue}switch(f.name){case"filterable":if(f.value=="false"){this._aFilterablePropertyNames.pop(l.name)}break;case"sortable":if(f.value=="false"){this._aSortablePropertyNames.pop(l.name)}break;case"required-in-filter":if(f.value=="true"){this._aRequiredFilterPropertyNames.push(l.name)}break;case"filter-restriction":if(f.value==o.EntityType.propertyFilterRestriction.SINGLE_VALUE||f.value==o.EntityType.propertyFilterRestriction.MULTI_VALUE||f.value==o.EntityType.propertyFilterRestriction.INTERVAL){this._oPropertyFilterRestrictionSet[l.name]=f.value}break;case"hierarchy-node-external-key-for":n(f.value).externalKeyProperty=l;break;case"hierarchy-node-for":n(l.name).dimensionName=f.value;break;case"hierarchy-parent-node-for":case"hierarchy-parent-nod":n(f.value).parentNodeIDProperty=l;break;case"hierarchy-level-for":n(f.value).levelProperty=l;break;case"hierarchy-drill-state-for":case"hierarchy-drill-stat":n(f.value).drillStateProperty=l;break;default:}}}this._oRecursiveHierarchySet={};for(var y in i){var p=i[y];var d=this._oPropertySet[y];var _=this._oPropertySet[p.dimensionName];if(_==null){_=d}this._oRecursiveHierarchySet[_.name]=new o.RecursiveHierarchy(r,d,p.parentNodeIDProperty,p.levelProperty,_,p.externalKeyProperty)}},getProperties:function(){return this._oPropertySet},findPropertyByName:function(e){return this._oPropertySet[e]},getKeyProperties:function(){return this._aKeyProperties},getLabelOfProperty:function(e){var t=this._oPropertySet[e];if(t==null){throw"no such property with name "+e}if(t.extensions!=undefined){for(var r=-1,i;(i=t.extensions[++r])!==undefined;){if(!i.namespace==o.constants.SAP_NAMESPACE){continue}if(i.name=="label"){return i.value}}}return null},getHeadingOfProperty:function(e){var t=this._oPropertySet[e];if(t==null){throw"no such property with name "+e}var r=null;if(t.extensions!=undefined){for(var i=-1,n;(n=t.extensions[++i])!==undefined;){if(!n.namespace==o.constants.SAP_NAMESPACE){continue}if(n.name=="heading"){return n.value}if(n.name=="label"){r=n.value}}}return r},getQuickInfoOfProperty:function(e){var t=this._oPropertySet[e];if(t==null){throw"no such property with name "+e}var r=null;if(t.extensions!=undefined){for(var i=-1,n;(n=t.extensions[++i])!==undefined;){if(!n.namespace==o.constants.SAP_NAMESPACE){continue}if(n.name=="quickinfo"){return n.value}if(n.name=="label"){r=n.value}}}return r},getTextPropertyOfProperty:function(e){var t=this._oPropertySet[e];if(t==null){throw"no such property with name "+e}if(t.extensions!=undefined){for(var r=-1,i;(i=t.extensions[++r])!==undefined;){if(i.name=="text"){return this.findPropertyByName(i.value)}}}return null},getSuperOrdinatePropertyOfProperty:function(e){var t=this._oPropertySet[e];if(t==null){throw"no such property with name "+e}if(t.extensions!=undefined){for(var r=-1,i;(i=t.extensions[++r])!==undefined;){if(i.name=="super-ordinate"){return this.findPropertyByName(i.value)}}}return null},getFilterablePropertyNames:function(){return this._aFilterablePropertyNames},getSortablePropertyNames:function(){return this._aSortablePropertyNames},getRequiredFilterPropertyNames:function(){return this._aRequiredFilterPropertyNames},getPropertiesWithFilterRestrictions:function(){return this._oPropertyFilterRestrictionSet},getAllHierarchyPropertyNames:function(){if(this._aHierarchyPropertyNames){return this._aHierarchyPropertyNames}this._aHierarchyPropertyNames=[];for(var e in this._oRecursiveHierarchySet){this._aHierarchyPropertyNames.push(this._oRecursiveHierarchySet[e].getNodeValueProperty().name)}return this._aHierarchyPropertyNames},getHierarchy:function(e){if(this._oRecursiveHierarchySet[e]==undefined){return null}return this._oRecursiveHierarchySet[e]},getQName:function(){return this._sQName},getTypeDescription:function(){return this._oEntityType},getSchema:function(){return this._oSchema},getModel:function(){return this._oModel},_oEntityType:null,_oSchema:null,_oModel:null,_sQName:null,_aKeyProperties:null,_oPropertySet:null,_aFilterablePropertyNames:null,_aRequiredFilterPropertyNames:null,_oPropertyFilterRestrictionSet:null,_aHierarchyPropertyNames:null,_oRecursiveHierarchySet:null};o.RecursiveHierarchy=function(e,t,r,i,n,o){this._init(e,t,r,i,n,o)};o.RecursiveHierarchy.prototype={_init:function(e,t,r,i,n,o){this._oEntityType=e;this._oNodeIDProperty=t;this._oParentNodeIDProperty=r;this._oNodeLevelProperty=i;this._oNodeValueProperty=n;this._oNodeExternalKeyProperty=o},isRecursiveHierarchy:function(){return true},isLeveledHierarchy:function(){return false},getNodeExternalKeyProperty:function(){return this._oNodeExternalKeyProperty},getNodeIDProperty:function(){return this._oNodeIDProperty},getParentNodeIDProperty:function(){return this._oParentNodeIDProperty},getNodeLevelProperty:function(){return this._oNodeLevelProperty},getNodeValueProperty:function(){return this._oNodeValueProperty},_oEntityType:null,_oNodeIDProperty:null,_oParentNodeIDProperty:null,_oNodeLevelProperty:null,_oNodeValueProperty:null,_oNodeExternalKeyProperty:null};o.FilterExpression=function(e,t,r){this._init(e,t,r)};o.FilterExpression.prototype={_init:function(e,t,r){this._oEntityType=r;this._oSchema=t;this._oModel=e;this._aConditionUI5Filter=[];this._aUI5FilterArray=[]},_renderPropertyFilterValue:function(t,r,i){if(r==="Edm.Time"&&a.test(t)){t={ms:parseInt(t),__edmType:"Edm.Time"}}return e(n._formatValue(t,r,true,i))},clear:function(){this._aConditionUI5Filter=[];this._aUI5FilterArray=[]},_addCondition:function(e){const{sPath:t,sOperator:r,oValue1:i,oValue2:n,sFractionalSeconds1:o,sFractionalSeconds2:a}=e;const s=this._aConditionUI5Filter.some(e=>e.sPath===t&&e.sOperator===r&&e.oValue1==i&&e.oValue2==n&&e.sFractionalSeconds1===o&&e.sFractionalSeconds2===a);if(!s){this._aConditionUI5Filter.push(e)}},_addUI5FilterArray:function(e){this._aUI5FilterArray.push(e)},addCondition:function(e,r,i,n){let o=e;let a;if(typeof e==="object"){o=e.sPath;a=e}var s=this._oEntityType.findPropertyByName(o);if(s==null){throw"Cannot add filter condition for unknown property name "+o}var u=this._oEntityType.getFilterablePropertyNames();if((u?Array.prototype.indexOf.call(u,o):-1)===-1){throw"Cannot add filter condition for not filterable property name "+o}this._addCondition(a||new t(o,r,i,n));return this},removeConditions:function(e){var t=this._oEntityType.findPropertyByName(e);if(t==null){throw"Cannot remove filter conditions for unknown property name "+e}for(var r=0;r<this._aConditionUI5Filter.length;r++){var i=this._aConditionUI5Filter[r];if(i.sPath==e){this._aConditionUI5Filter.splice(r--,1)}}return this},addSetCondition:function(e,i){var n=this._oEntityType.findPropertyByName(e);if(n==null){throw"Cannot add filter condition for unknown property name "+e}var o=this._oEntityType.getFilterablePropertyNames();if((o?Array.prototype.indexOf.call(o,e):-1)===-1){throw"Cannot add filter condition for not filterable property name "+e}for(var a=-1,s;(s=i[++a])!==undefined;){this._addCondition(new t(e,r.EQ,s))}return this},addUI5FilterConditions:function(e){if(!Array.isArray(e)){throw"Argument is not an array"}if(e.length==0){return this}var t=false;for(var r=0;r<e.length;r++){if(e[r].aFilters!=undefined){t=true;break}}if(t){this._addUI5FilterArray(e)}else{for(var i=0;i<e.length;i++){this.addCondition(e[i])}}return this},getExpressionAsUI5FilterArray:function(){var e=this._aConditionUI5Filter.concat([]);for(var t=-1,r;(r=this._aUI5FilterArray[++t])!==undefined;){for(var i=-1,n;(n=r[++i])!==undefined;){e.push(n)}}return e},getPropertiesReferencedByUI5FilterArray:function(e,t){for(var r=-1,i;(i=e[++r])!==undefined;){if(i.aFilters!=undefined){this.getPropertiesReferencedByUI5FilterArray(i.aFilters,t)}else{if(t[i.sPath]==undefined){t[i.sPath]=[]}t[i.sPath].push(i)}}},getReferencedProperties:function(){var e={};for(var t=-1,r;(r=this._aConditionUI5Filter[++t])!==undefined;){if(e[r.sPath]==undefined){e[r.sPath]=[]}e[r.sPath].push(r)}for(var i=-1,n;(n=this._aUI5FilterArray[++i])!==undefined;){this.getPropertiesReferencedByUI5FilterArray(n,e)}return e},renderUI5Filter:function(e){const{sPath:t,sOperator:i,oValue1:n,oValue2:o,sFractionalSeconds1:a,sFractionalSeconds2:s}=e;let u=null;const l=this._oEntityType.findPropertyByName(t);if(l==null){throw"Cannot add filter condition for unknown property name "+t}switch(i){case r.BT:u="("+t+" ge "+this._renderPropertyFilterValue(n,l.type,a)+" and "+t+" le "+this._renderPropertyFilterValue(o,l.type,s)+")";break;case r.NB:u="("+t+" lt "+this._renderPropertyFilterValue(n,l.type,a)+" or "+t+" gt "+this._renderPropertyFilterValue(o,l.type,s)+")";break;case r.Contains:case r.NotContains:u=(i[0]==="N"?"not ":"")+"substringof("+this._renderPropertyFilterValue(n,"Edm.String")+","+t+")";break;case r.StartsWith:case r.EndsWith:case r.NotStartsWith:case r.NotEndsWith:u=i.toLowerCase().replace("not","not ")+"("+t+","+this._renderPropertyFilterValue(n,"Edm.String")+")";break;default:u=t+" "+i.toLowerCase()+" "+this._renderPropertyFilterValue(n,l.type,a)}return u},renderUI5MultiFilter:function(e){var t=[];var r="";var i=e.bAnd==true?" and ":" or ";for(var n=-1,o;(o=e.aFilters[++n])!==undefined;){if(o.aFilters!=undefined){t.push(o);continue}r+=(r==""?"":i)+"("+this.renderUI5Filter(o)+")"}if(t.length>0){for(var a=-1,s;(s=t[++a])!==undefined;){r+=(r==""?"":i)+"("+this.renderUI5MultiFilter(s)+")"}}return r},renderUI5FilterArray:function(e){if(e.length==0){return""}var t="";e.sort(function(e,t){const r=e.sPath||"";const i=t.sPath||"";if(r===i){return 0}return r>i?1:-1});var i=e[0].sPath;var n="";var o=[],a=[];for(var s=-1,u;(u=e[++s])!==undefined;){if(u.aFilters!=undefined){a.push(u);continue}if(i!=u.sPath){if(n!=""){t+=(t==""?"":" and ")+"("+n+")"}n="";if(o.length>0){for(var l=-1,h;(h=o[++l])!==undefined;){n+=(n==""?"":" and ")+this.renderUI5Filter(h)}t+=(t==""?"":" and ")+"("+n+")";n=""}i=u.sPath;o=[]}if(u.sOperator==r.NE){o.push(u);continue}n+=(n==""?"":" or ")+this.renderUI5Filter(u)}if(n!=""){t+=(t==""?"":" and ")+"("+n+")"}if(o.length>0){n="";for(var f=-1,y;(y=o[++f])!==undefined;){n+=(n==""?"":" and ")+this.renderUI5Filter(y)}t+=(t==""?"":" and ")+"("+n+")"}if(a.length>0){for(var p=-1,d;(d=a[++p])!==undefined;){t+=(t==""?"":" and ")+"("+this.renderUI5MultiFilter(d)+")"}}return t},getURIFilterOptionValue:function(){var e=this.renderUI5FilterArray(this._aConditionUI5Filter);for(var t=-1,r;(r=this._aUI5FilterArray[++t])!==undefined;){e+=(e==""?"":" and ")+"("+this.renderUI5FilterArray(r)+")"}return e},checkValidity:function(){var e=this._oEntityType.getRequiredFilterPropertyNames();var t=this.getReferencedProperties();for(var i=-1,n;(n=e[++i])!==undefined;){if(t[n]==undefined){throw"filter expression does not contain required property "+n}}var a=this._oEntityType.getPropertiesWithFilterRestrictions();for(var s in a){var u=a[s];if(u==o.EntityType.propertyFilterRestriction.SINGLE_VALUE){if(t[s]!=undefined){if(t[s].length>1){var l=t[s][0].oValue1;for(var h=0;h<t[s].length;h++){if(t[s][h].oValue1!=l||t[s][h].sOperator!=r.EQ){throw"filter expression may use "+s+" only with a single EQ condition"}}}}}}return true},getEntityType:function(){return this._oEntityType},getSchema:function(){return this._oSchema},getModel:function(){return this._oModel},_oEntityType:null,_oSchema:null,_oModel:null,_aFilterCondition:null};o.SortOrder={Ascending:"asc",Descending:"desc"};o.SortExpression=function(e,t,r){this._init(e,t,r)};o.SortExpression.prototype={_init:function(e,t,r){this._oEntityType=r;this._oSchema=t;this._oModel=e;this._aSortCondition=[]},_containsSorter:function(e){var t=null;for(var r=-1,i;(i=this._aSortCondition[++r])!==undefined;){if(i.property.name===e){t={sorter:i,index:r};break}}return t},_removeFromArray:function(e,t,r){var i=e.slice((r||t)+1||e.length);e.length=t<0?e.length+t:t;return e.push.apply(e,i)},clear:function(){this._aSortCondition=[]},addSorter:function(e,t,r){var i=this._oEntityType.findPropertyByName(e);if(i==null){throw"Cannot add sort condition for unknown property name "+e}var n=this._containsSorter(e);if(n!=null){if(!r){n.sorter.order=t}return this}var o=this._oEntityType.getSortablePropertyNames();if((o?Array.prototype.indexOf.call(o,e):-1)===-1){throw"Cannot add sort condition for not sortable property name "+e}this._aSortCondition.push({property:i,order:t});return this},removeSorter:function(e){if(!e){return}var t=this._containsSorter(e);if(t){this._removeFromArray(this._aSortCondition,t.index)}},getExpressionsAsUI5SorterArray:function(){var e=[];for(var t=-1,r;(r=this._aSortCondition[++t])!==undefined;){e.push(new i(r.property.name,r.order==o.SortOrder.Descending))}return e},getExpressionAsUI5Sorter:function(){var e=this.getExpressionsAsUI5SorterArray();if(e.length==0){return null}else{return e[0]}},getURIOrderByOptionValue:function(e){if(this._aSortCondition.length==0){return""}var t="";for(var r=-1,i;(i=this._aSortCondition[++r])!==undefined;){if(!e[i.property.name]){continue}t+=(t==""?"":",")+i.property.name+" "+i.order}return t},getEntityType:function(){return this._oEntityType},getSchema:function(){return this._oSchema},getModel:function(){return this._oModel},_oEntityType:null,_oSchema:null,_oModel:null,_aSortCondition:null};o.ParameterizationRequest=function(e){this._init(e)};o.ParameterizationRequest.prototype={_init:function(e){if(!e){throw"No parameterization given"}this._oParameterization=e;this._oParameterValueAssignment=[]},_renderParameterKeyValue:function(t,r){return e(this._oParameterization.getTargetQueryResult().getModel().getODataModel().formatValue(t,r))},getParameterization:function(){return this._oParameterization},setParameterValue:function(e,t,r){var i=this._oParameterization.findParameterByName(e);if(!i){throw"Invalid parameter name "+e}if(r!=null){if(!i.isIntervalBoundary()){throw"Range value cannot be applied to parameter "+e+" accepting only single values"}if(!i.isLowerIntervalBoundary()){throw"Range value given, but parameter "+e+" does not hold the lower boundary"}}if(!i.isIntervalBoundary()){if(t==null){delete this._oParameterValueAssignment[e]}else{this._oParameterValueAssignment[e]=t}}else{if(t==null&&r!=null){throw"Parameter "+e+": An upper boundary cannot be given without the lower boundary"}if(t==null){delete this._oParameterValueAssignment[e];r=null}else{this._oParameterValueAssignment[e]=t}var n=i.getPeerIntervalBoundaryParameter();if(r==null){r=t}if(t==null){delete this._oParameterValueAssignment[n.getName()]}else{this._oParameterValueAssignment[n.getName()]=r}}return},getURIToParameterizationEntitySet:function(e){return(e?e:"")+"/"+this._oParameterization.getEntitySet().getQName()},getURIToParameterizationEntry:function(e){var t=this._oParameterization.getAllParameters();for(var r in t){if(this._oParameterValueAssignment[r]==undefined){throw"Parameter "+r+" has no value assigned"}}var i="",n=true;for(var o in this._oParameterValueAssignment){i+=(n?"":",")+o+"="+this._renderParameterKeyValue(this._oParameterValueAssignment[o],t[o].getProperty().type);n=false}return(e?e:"")+"/"+this._oParameterization.getEntitySet().getQName()+"("+i+")"},_oParameterization:null,_oParameterValueAssignment:null};o.QueryResultRequest=function(e,t){this._init(e,t)};o.QueryResultRequest.prototype={_init:function(e,t){this._oQueryResult=e;this._oParameterizationRequest=t;this._oAggregationLevel={};this._oDimensionHierarchies={};this._oMeasures={};this._bIncludeEntityKey=false;this._oFilterExpression=null;this._oSortExpression=null;this._oSelectedPropertyNames=null},addRecursiveHierarchy:function(e,t,r){var i;if(!e){return}i=this._oQueryResult.findDimensionByName(e);if(!i){throw new Error("'"+e+"' is not a dimension property")}if(!i.getHierarchy()){throw new Error("Dimension '"+e+"' does not have a hierarchy")}this._oSelectedPropertyNames=null;this._oDimensionHierarchies[e]={externalKey:t,id:true,text:r}},setParameterizationRequest:function(e){this._oParameterizationRequest=e},setResourcePath:function(e){this._sResourcePath=e;if(this._sResourcePath.indexOf("/")!=0){throw"Missing leading / (slash) for resource path"}if(this._oQueryResult.getParameterization()){var t=e.lastIndexOf("/");if(t==-1){throw"Missing navigation from parameter entity set to query result in resource path"}var r=e.substring(t+1);if(r!=this._oQueryResult.getParameterization().getNavigationPropertyToQueryResult()){throw"Invalid navigation property from parameter entity set to query result in resource path"}}},getParameterizationRequest:function(){return this._oParameterizationRequest},getQueryResult:function(){return this._oQueryResult},setAggregationLevel:function(e){this._oAggregationLevel={};if(!e){e=this._oQueryResult.getAllDimensionNames()}this.addToAggregationLevel(e);this._oSelectedPropertyNames=null},addToAggregationLevel:function(e){if(!e){return}this._oSelectedPropertyNames=null;for(var t=-1,r;(r=e[++t])!==undefined;){if(!this._oQueryResult.findDimensionByName(r)){throw r+" is not a valid dimension name"}this._oAggregationLevel[r]={key:true,text:false,attributes:null}}},removeFromAggregationLevel:function(e){if(!e){return}this._oSelectedPropertyNames=null;for(var t=-1,r;(r=e[++t])!==undefined;){if(!this._oQueryResult.findDimensionByName(r)){throw r+" is not a valid dimension name"}if(this._oAggregationLevel[r]!=undefined){delete this._oAggregationLevel[r];this.getSortExpression().removeSorter(r)}}},getAggregationLevel:function(){var e=[];for(var t in this._oAggregationLevel){e.push(t)}return e},getAggregationLevelDetails:function(e){if(this._oAggregationLevel[e]==undefined){throw"Aggregation level does not include dimension "+e}return this._oAggregationLevel[e]},setMeasures:function(e){if(!e){e=this._oQueryResult.getAllMeasureNames()}this._oSelectedPropertyNames=null;this._oMeasures={};for(var t=-1,r;(r=e[++t])!==undefined;){if(!this._oQueryResult.findMeasureByName(r)){throw r+" is not a valid measure name"}this._oMeasures[r]={value:true,text:false,unit:false}}},getMeasureNames:function(){var e=[];for(var t in this._oMeasures){e.push(t)}return e},includeDimensionKeyTextAttributes:function(e,t,r,i){this._oSelectedPropertyNames=null;var n=[];if(e){if(this._oAggregationLevel[e]==undefined){throw e+" is not included in the aggregation level"}n.push(e)}else{for(var o in this._oAggregationLevel){n.push(o)}i=null}for(var a=-1,s;(s=n[++a])!==undefined;){if(t!=null){this._oAggregationLevel[s].key=t}if(r!=null){this._oAggregationLevel[s].text=r}if(i!=null){this._oAggregationLevel[s].attributes=i}}},includeMeasureRawFormattedValueUnit:function(e,t,r,i){this._oSelectedPropertyNames=null;var n=[];if(e){if(this._oMeasures[e]==undefined){throw e+" is not part of the query result"}n.push(e)}else{for(var o in this._oMeasures){n.push(o)}}for(var a=-1,s;(s=n[++a])!==undefined;){if(t!=null){this._oMeasures[s].value=t}if(r!=null){this._oMeasures[s].text=r}if(i!=null){this._oMeasures[s].unit=i}}},getFilterExpression:function(){if(this._oFilterExpression==null){var e=this._oQueryResult.getEntityType();this._oFilterExpression=new o.FilterExpression(this._oQueryResult.getModel(),e.getSchema(),e)}return this._oFilterExpression},setFilterExpression:function(e){this._oFilterExpression=e},getSortExpression:function(){if(this._oSortExpression==null){var e=this._oQueryResult.getEntityType();this._oSortExpression=new o.SortExpression(e.getModel(),e.getSchema(),e)}return this._oSortExpression},setSortExpression:function(e){this._oSortExpression=e},setRequestOptions:function(e,t,r){if(e!=null){this._bIncludeEntityKey=e}if(t!=null){this._bIncludeCount=t}if(r!=null){this._bReturnNoEntities=r}},setResultPageBoundaries:function(e,t){if(e!=null&&typeof e!=="number"){throw"Start value must be null or numeric"}if(t!==null&&typeof t!=="number"){throw"End value must be null or numeric"}if(e==null){e=1}if(e<1||e>(t==null?e:t)){throw"Invalid values for requested page boundaries"}this._iSkipRequestOption=e>1?e-1:null;this._iTopRequestOption=t!=null?t-e+1:null},getResultPageBoundaries:function(){var e=null;if(this._iTopRequestOption!=null){if(this._iSkipRequestOption==null){e=1}else{e=this._iSkipRequestOption+this._iTopRequestOption}}return{start:this._iSkipRequestOption==null?1:this._iSkipRequestOption,end:e}},getURIToQueryResultEntitySet:function(e){var t=null;if(this._sResourcePath!=null){t=(e?e:"")+this._sResourcePath}else if(this._oQueryResult.getParameterization()){if(!this._oParameterizationRequest){throw"Missing parameterization request"}else{t=this._oParameterizationRequest.getURIToParameterizationEntry(e)+"/"+this._oQueryResult.getParameterization().getNavigationPropertyToQueryResult()}}else{t=(e?e:"")+"/"+this._oQueryResult.getEntitySet().getQName()}return t},getURIOrderByOptionValue:function(){var e,t,r=null,i=this._oSortExpression?this._oSortExpression._aSortCondition:[],n,o=i.length;if(o){e=this._oQueryResult.getAllMeasureNames();for(n=0;n<o;n+=1){t=i[n];if(!this._oSelectedPropertyNames[t.property.name]&&e.indexOf(t.property.name)<0){continue}r=(r?r+",":"")+t.property.name+" "+t.order}}return r},getURIQueryOptionValue:function(e){var t,r=null,i,n=this;function o(e){var t;if(!e){return}t=typeof e==="string"?e:e.name;if(!n._oSelectedPropertyNames[t]){i+=(i==""?"":",")+t;n._oSelectedPropertyNames[t]=true}}switch(e){case"$select":{i="";this._oSelectedPropertyNames={};for(t in this._oAggregationLevel){var a=this._oQueryResult.findDimensionByName(t);var s=this._oAggregationLevel[t];if(s.key==true){o(a.getKeyProperty())}if(s.text==true){o(a.getTextProperty())}if(s.attributes){for(var u=-1,l;(l=s.attributes[++u])!==undefined;){o(a.findAttributeByName(l).getName())}}}for(t in this._oMeasures){var h=this._oQueryResult.findMeasureByName(t);var f=this._oMeasures[t];if(f.value==true){o(h.getRawValueProperty())}if(f.text==true){o(h.getFormattedValueProperty())}if(f.unit==true){o(h.getUnitProperty())}}for(t in this._oDimensionHierarchies){var y=this._oQueryResult.findDimensionByName(t).getHierarchy();var p=this._oDimensionHierarchies[t];if(p.id){o(y.getNodeIDProperty())}if(p.externalKey){o(y.getNodeExternalKeyProperty())}if(p.text){o(this._oQueryResult.getEntityType().getTextPropertyOfProperty(y.getNodeIDProperty().name))}}if(this._bIncludeEntityKey){var d=this._oQueryResult.getEntityType().getTypeDescription().key.propertyRef;for(var _=-1,m;(m=d[++_])!==undefined;){i+=(i==""?"":",")+m.name}}r=i?i:null;break}case"$filter":{var c=null;if(this._oFilterExpression){c=this._oFilterExpression.getURIFilterOptionValue()}r=c?c:null;break}case"$orderby":{r=this.getURIOrderByOptionValue();break}case"$top":{r=null;if(this._bReturnNoEntities){r=0}else if(this._iTopRequestOption!==null){r=this._iTopRequestOption}break}case"$skip":{r=null;if(!this._bReturnNoEntities){r=this._iSkipRequestOption}break}case"$inlinecount":{r=this._bIncludeCount==true?"allpages":null;break}default:break}return r},getURIToQueryResultEntries:function(e,t){if(!t){t=this.getURIToQueryResultEntitySet(e)}this.getFilterExpression().checkValidity();var r=this.getURIQueryOptionValue("$select");var i=this.getURIQueryOptionValue("$filter");var n=this.getURIQueryOptionValue("$orderby");var o=this.getURIQueryOptionValue("$top");var a=this.getURIQueryOptionValue("$skip");var s=this.getURIQueryOptionValue("$inlinecount");var u=t;var l=false;if(r!==null){u+="?$select="+r;l=true}if(this._oFilterExpression&&i!==null){if(!l){u+="?";l=true}else{u+="&"}u+="$filter="+i}if(this._oSortExpression&&n!==null){if(!l){u+="?";l=true}else{u+="&"}u+="$orderby="+n}if((this._iTopRequestOption||this._bReturnNoEntities)&&o!==null){if(!l){u+="?";l=true}else{u+="&"}u+="$top="+o}if(this._iSkipRequestOption&&a!==null){if(!l){u+="?";l=true}else{u+="&"}u+="$skip="+a}if(this._bIncludeCount&&s!==null){if(!l){u+="?";l=true}else{u+="&"}u+="$inlinecount="+s}return u},_oQueryResult:null,_oParameterizationRequest:null,_sResourcePath:null,_oAggregationLevel:null,_oDimensionHierarchies:null,_oMeasures:null,_bIncludeEntityKey:null,_bIncludeCount:null,_bReturnNoEntities:null,_oFilterExpression:null,_oSortExpression:null,_iSkipRequestOption:null,_iTopRequestOption:null};o.ParameterValueSetRequest=function(e){this._init(e)};o.ParameterValueSetRequest.prototype={_init:function(e){this._oParameter=e;this._oValueSetResult={};this._oFilterExpression=null;this._oSortExpression=null},includeParameterText:function(e){if(e!=null){this._oValueSetResult.text=e}},getFilterExpression:function(){if(this._oFilterExpression==null){var e=this._oParameter.getContainingParameterization().getEntityType();var t=this._oParameter.getContainingParameterization().getTargetQueryResult().getModel();this._oFilterExpression=new o.FilterExpression(t,e.getSchema(),e)}return this._oFilterExpression},setFilterExpression:function(e){this._oFilterExpression=e},getSortExpression:function(){if(this._oSortExpression==null){var e=this._oParameter.getContainingParameterization().getEntityType();this._oSortExpression=new o.SortExpression(e.getModel(),e.getSchema(),e)}return this._oSortExpression},setSortExpression:function(e){this._oSortExpression=e},getURIQueryOptionValue:function(e){var t=null;switch(e){case"$select":{var r="";r+=(r==""?"":",")+this._oParameter.getProperty().name;if(this._oValueSetResult.text==true&&this._oParameter.getTextProperty()){r+=(r==""?"":",")+this._oParameter.getTextProperty().name}t=r?r:null;break}case"$filter":{var i=null;if(this._oFilterExpression){i=this._oFilterExpression.getURIFilterOptionValue()}t=i?i:null;break}case"$orderby":{var n=null;if(this._oSortExpression){n=this._oSortExpression.getURIOrderByOptionValue()}t=n?n:null;break}default:break}return t},getURIToParameterValueSetEntries:function(e){var t=null;t=(e?e:"")+"/"+this._oParameter.getContainingParameterization().getEntitySet().getQName();this.getFilterExpression().checkValidity();var r=this.getURIQueryOptionValue("$select");var i=this.getURIQueryOptionValue("$filter");var n=this.getURIQueryOptionValue("$orderby");var o=t;var a=false;if(r){o+="?$select="+r;a=true}if(this._oFilterExpression&&i){if(!a){o+="?";a=true}else{o+="&"}o+="$filter="+i}if(this._oSortExpression&&n){if(!a){o+="?";a=true}else{o+="&"}o+="$orderby="+n}return o},_oParameter:null,_oFilterExpression:null,_oSortExpression:null,_oValueSetResult:null};o.DimensionMemberSetRequest=function(e,t,r){this._init(e,t,r)};o.DimensionMemberSetRequest.prototype={_init:function(e,t,r){this._oDimension=e;this._oParameterizationRequest=t;this._bUseMasterData=r;this._oValueSetResult={};this._oFilterExpression=null;this._oSortExpression=null;if(this._oParameterizationRequest!=null&&this._bUseMasterData==true){throw"Parameterized master data entity sets are not yet implemented"}if(this._bUseMasterData){this._oEntitySet=this._oDimension.getMasterDataEntitySet()}else{this._oEntitySet=this._oDimension.getContainingQueryResult().getEntitySet();if(this._oDimension.getContainingQueryResult().getParameterization()&&!this._oParameterizationRequest){throw"Missing parameterization request"}}},setParameterizationRequest:function(e){this._oParameterizationRequest=e},includeDimensionTextAttributes:function(e,t){this._oValueSetResult.text={text:false,attributes:false};if(e==true){this._oValueSetResult.text=true}if(t==true){this._oValueSetResult.attributes=true}},getFilterExpression:function(){if(this._oFilterExpression==null){var e=this._oEntitySet.getEntityType();var t=this._oDimension.getContainingQueryResult().getModel();this._oFilterExpression=new o.FilterExpression(t,e.getSchema(),e)}return this._oFilterExpression},setFilterExpression:function(e){this._oFilterExpression=e},getSortExpression:function(){if(this._oSortExpression==null){this._oSortExpression=new o.SortExpression(this._oEntityType.getModel(),this._oEntityType.getSchema(),this._oEntityType)}return this._oSortExpression},setSortExpression:function(e){this._oSortExpression=e},setRequestOptions:function(e){if(e!=null){this._bIncludeCount=e}},setResultPageBoundaries:function(e,t){if(e!=null&&typeof e!=="number"){throw"Start value must be null or numeric"}if(t!==null&&typeof t!=="number"){throw"End value must be null or numeric"}if(e==null){e=1}if(e<1||e>(t==null?e:t)){throw"Invalid values for requested page boundaries"}this._iSkipRequestOption=e>1?e-1:null;this._iTopRequestOption=t!=null?t-e+1:null},getResultPageBoundaries:function(){var e=null;if(this._iTopRequestOption!=null){if(this._iSkipRequestOption==null){e=1}else{e=this._iSkipRequestOption+this._iTopRequestOption}}return{start:this._iSkipRequestOption==null?1:this._iSkipRequestOption,end:e}},getURIQueryOptionValue:function(e){var t=null;switch(e){case"$select":{var r="";var i=this._oEntitySet.getEntityType();var n=i.getKeyProperties();var o=[];if(this._bUseMasterData){for(var a=-1,s;(s=n[++a])!==undefined;){r+=(r==""?"":",")+s;var u=i.getTextPropertyOfProperty(s);if(u){if(this._oValueSetResult.text==true){r+=","+u.name}o.push(u.name)}}}else{r+=(r==""?"":",")+this._oDimension.getKeyProperty().name;if(this._oValueSetResult.text==true&&this._oDimension.getTextProperty()){r+=(r==""?"":",")+this._oDimension.getTextProperty().name}}if(this._oValueSetResult.attributes){if(this._bUseMasterData){var l=i.getProperties();for(var h in l){var f=false;for(var y=-1,p;(p=n[++y])!==undefined;){if(h==p){f=true;break}}if(f){continue}for(var d=-1,_;(_=o[++d])!==undefined;){if(h==_){f=true;break}}if(!f){r+=","+h}}}else{var m=this._oDimension.getAllAttributeNames();for(var c=-1,g;(g=m[++c])!==undefined;){r+=(r==""?"":",")+this._oDimension.findAttributeByName(g).getName()}}}t=r?r:null;break}case"$filter":{var v=null;if(this._oFilterExpression){v=this._oFilterExpression.getURIFilterOptionValue()}t=v?v:null;break}case"$orderby":{var P=null;if(this._oSortExpression){P=this._oSortExpression.getURIOrderByOptionValue()}t=P?P:null;break}case"$top":{if(this._iTopRequestOption!==null){t=this._iTopRequestOption}break}case"$skip":{t=this._iSkipRequestOption;break}case"$inlinecount":{t=this._bIncludeCount==true?"allpages":null;break}default:break}return t},getURIToDimensionMemberEntitySet:function(e){var t=null;if(!this._bUseMasterData&&this._oParameterizationRequest){t=this._oParameterizationRequest.getURIToParameterizationEntry(e)+"/"+this._oDimension.getContainingQueryResult().getParameterization().getNavigationPropertyToQueryResult()}else{t=(e?e:"")+"/"+this._oEntitySet.getQName()}return t},getURIToDimensionMemberEntries:function(e){var t=this.getURIToDimensionMemberEntitySet(e);this.getFilterExpression().checkValidity();var r=this.getURIQueryOptionValue("$select");var i=this.getURIQueryOptionValue("$filter");var n=this.getURIQueryOptionValue("$orderby");var o=this.getURIQueryOptionValue("$top");var a=this.getURIQueryOptionValue("$skip");var s=this.getURIQueryOptionValue("$inlinecount");var u=t;var l=false;if(r){u+="?$select="+r;l=true}if(this._oFilterExpression&&i){if(!l){u+="?";l=true}else{u+="&"}u+="$filter="+i}if(this._oSortExpression&&n){if(!l){u+="?";l=true}else{u+="&"}u+="$orderby="+n}if(this._iTopRequestOption&&o){if(!l){u+="?";l=true}else{u+="&"}u+="$top="+o}if(this._iSkipRequestOption&&a){if(!l){u+="?";l=true}else{u+="&"}u+="$skip="+a}if(this._bIncludeCount&&s){if(!l){u+="?";l=true}else{u+="&"}u+="$inlinecount="+s}return u},_oDimension:null,_oParameterizationRequest:null,_oEntitySet:null,_bUseMasterData:false,_oFilterExpression:null,_oSortExpression:null,_oValueSetResult:null,_bIncludeCount:null,_iSkipRequestOption:0,_iTopRequestOption:null};return o},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/base/ManagedObjectModel", ["../json/JSONModel","../json/JSONPropertyBinding","../json/JSONListBinding","sap/ui/base/ManagedObject","sap/ui/base/ManagedObjectObserver","../Context","../ChangeReason","sap/base/util/uid","sap/base/Log","sap/base/util/isPlainObject","sap/base/util/deepClone","sap/base/util/deepEqual"],function(e,t,i,r,n,s,a,o,g,f,p,h){"use strict";var u="@custom",d="--";function l(e,t,i,n){var s=i.get(t)||[],a,o;if(s&&!Array.isArray(s)&&!i.multiple){s=[s]}for(var g=0;g<s.length;g++){a=s[g];if(!(a instanceof r)){continue}o=true;if(n){e._oObserver.observe(a,{properties:true,aggregations:true})}else{e._oObserver.unobserve(a,{properties:true,aggregations:true})}var f=a.getMetadata().getAllAggregations();for(var p in f){l(e,a,f[p],n)}}if(o){var p=t.getId()+"/@"+i.name;if(n){if(!e._mObservedCount.aggregations[p]){e._mObservedCount.aggregations[p]=0}e._mObservedCount.aggregations[p]++}else{delete e._mObservedCount.aggregations[p]}}}function c(e){var t,i=e.length-1,n=[];while(!(e[i].node instanceof r)){if(t){n.splice(0,0,t)}t=e[i].path;i--}return[e[i].node,e[i+1],n,t]}function v(e){var t="",i;var n=typeof e;if(e==null||n!="object"&&n!="function"){t=e}else if(f(e)){t=JSON.stringify(e)}else if(e instanceof r){t=e.getId();for(i in e.mProperties){t=t+"$"+v(e.mProperties[i])}}else if(Array.isArray(e)){for(var s=0;e.length;s++){t=t+"$"+v(e)}}else{g.warning("Could not stringify object "+e);t="$"}return t}var b=i.extend("sap.ui.model.base.ManagedObjectModelAggregationBinding",{constructor:function(e,t,r,n,s,a){i.apply(this,arguments);this._getOriginOfManagedObjectModelBinding()},_mightBeAffectedByChangesInside:function(e){while(e){if(e.getParent()===this._oOriginMO){return true}e=e.getParent()}return false},getEntryKey:function(e){var t=e.getObject();if(t instanceof r){return t.getId()}return i.prototype.getEntryData.apply(this,arguments)},getEntryData:function(e){var t=e.getObject();if(t instanceof r){return v(t)}return i.prototype.getEntryData.apply(this,arguments)},_getContexts:function(e,t){var r;if(e<0){var n=this.getLength();e=n+e;if(e<0){e=0}}if(this._oAggregation){var s=this._oOriginMO.getBinding(this._sMember);if(s){var a=s.getModel();r=a.iSizeLimit}var o=this._oOriginMO.getBindingInfo(this._sMember);if(o&&e>=0&&t&&r&&t>r){var g=false;if(e!=o.startIndex){o.startIndex=e;g=true}if(t!=o.length){o.length=t;g=true}if(g){this._oAggregation.update(this._oOriginMO,"change")}}}return i.prototype._getContexts.apply(this,[e,t])},_getOriginOfManagedObjectModelBinding:function(){if(!this._oOriginMO){var e=this.oModel,t=[];e._getObject(this.sPath,this.oContext,t);var i=c(t);this._oOriginMO=i[0];this._aPartsInJSON=i[2];this._sMember=i[3];this._oAggregation=this._oOriginMO.getMetadata().getAggregation(this._sMember)}},getLength:function(){if(this._aPartsInJSON.length==0){var e=this._oOriginMO.getBinding(this._sMember);if(e&&e.isA("sap.ui.model.ListBinding")){return e.getLength()}}return i.prototype.getLength.apply(this,arguments)},isLengthFinal:function(){if(this._aPartsInJSON.length==0){var e=this._oOriginMO.getBinding(this._sMember);if(e&&e.isA("sap.ui.model.ListBinding")){return e.isLengthFinal()}}return true}});var y=t.extend("sap.ui.model.base.ManagedObjectModelPropertyBinding");var O=e.extend("sap.ui.model.base.ManagedObjectModel",{constructor:function(t,i){if(!i&&typeof i!="object"){i={}}i[u]={};this._oObject=t;this._mObservedCount={properties:{},aggregations:{}};this.mListBinding={};e.apply(this,[i]);this._oObserver=new n(this.observerChanges.bind(this));this.setSizeLimit(1e6)}});O.prototype.getAggregation=e.prototype.getProperty;O.prototype.setData=function(t,i){var r={};r[u]=t;e.prototype.setData.apply(this,[r,i])};O.prototype.getJSON=function(){return JSON.stringify(this.oData[u])};O.prototype.setProperty=function(t,i,n,s){var a=this.resolve(t,n),o,f,d;if(!a){return false}if(a.indexOf("/"+u)===0){return e.prototype.setProperty.apply(this,arguments)}o=a.lastIndexOf("/");f=a.substring(0,o||1);d=a.substr(o+1);var l=[],v=this._getObject(f,null,l);if(v){if(v instanceof r){var b=v.getMetadata().getManagedProperty(d);if(b){if(!h(b.get(v),i)){b.set(v,i);var y=function(e){var t=this.resolve(e.sPath,e.oContext);return t?t.startsWith(a):false}.bind(this);this.checkUpdate(false,s,y);return true}}else{g.warning("The setProperty method only supports properties, the path "+a+" does not point to a property",null,"sap.ui.model.base.ManagedObjectModel")}}else if(v[d]!==i){var O=c(l);var _=p(O[1].node),m=O[2];var M=_;for(var C=0;C<m.length;C++){M=M[m[C]]}M[d]=i;var j="/"+d;if(m.length>0){j="/"+m.join("/")+j}var A=a.lastIndexOf(j);var B=a.substr(0,A);return this.setProperty(B,_,n)}}return false};O.prototype.addBinding=function(t){e.prototype.addBinding.apply(this,arguments);if(t instanceof b){var i=t.sPath.replace("/","");this.mListBinding[i]=t}t.checkUpdate(false)};O.prototype.removeBinding=function(t){e.prototype.removeBinding.apply(this,arguments);if(t instanceof b){var i=t.sPath.replace("/","");delete this.mListBinding[i]}this._observeBeforeEvaluating(t,false)};O.prototype.firePropertyChange=function(t){if(t.reason===a.Binding){t.resolvedPath=this.resolve(t.path,t.context)}e.prototype.firePropertyChange.call(this,t)};O.prototype.bindAggregation=function(t,i,r){return e.prototype.bindProperty.apply(this,arguments)};O.prototype.bindProperty=function(e,t,i){var r=new y(this,e,t,i);return r};O.prototype.bindList=function(e,t,i,r,n){var s=new b(this,e,t,i,r,n);return s};O.prototype.getManagedObject=function(e,t){if(e instanceof s){t=e;e=t.getPath()}var i=this.getProperty(e,t);if(i instanceof r){return i}return null};O.prototype.getRootObject=function(){return this._oObject};O.prototype._observePropertyChange=function(e,t){if(!e||!t){return}var i=e.getId()+"/@"+t.name;if(!this._oObserver.isObserved(e,{properties:[t.name]})){this._oObserver.observe(e,{properties:[t.name]});this._mObservedCount.properties[i]=1}else{this._mObservedCount.properties[i]++}};O.prototype._unobservePropertyChange=function(e,t){if(!e||!t){return}var i=e.getId()+"/@"+t.name;this._mObservedCount.properties[i]--;if(this._mObservedCount.properties[i]==0){this._oObserver.unobserve(e,{properties:[t.name]});delete this._mObservedCount.properties[i]}};O.prototype._observeAggregationChange=function(e,t){if(!e||!t){return}var i=e.getId()+"/@"+t.name;if(!this._oObserver.isObserved(e,{aggregations:[t.name]})){this._oObserver.observe(e,{aggregations:[t.name]});this._mObservedCount.aggregations[i]=1;l(this,e,t,true)}else{this._mObservedCount.aggregations[i]++}};O.prototype._unobserveAggregationChange=function(e,t){if(!e||!t){return}var i=e.getId()+"/@"+t.name;this._mObservedCount.aggregations[i]--;if(this._mObservedCount.aggregations[i]==0){this._oObserver.unobserve(e,{aggregations:[t.name]});delete this._mObservedCount.aggregations[i]}};O.prototype._createId=function(e){var t=this._oObject;if(typeof t.createId==="function"){return t.createId(e)}if(!e){return t.getId()+d+o()}if(e.indexOf(t.getId()+d)!=0){return t.getId()+d+e}return e};O.prototype._getSpecialNode=function(e,t,i,n){if(e instanceof r){if(t==="className"){if(e.getMetadata){return e.getMetadata().getName()}else{return typeof e}}else if(t==="id"){return e.getId()}else if(t==="metadataContexts"){return e._oProviderData}}else if(t==="binding"&&i&&n){return i.getBinding(n)}else if(t==="bound"&&i&&n){return i.isBound(n)}else if(t==="bindingInfo"&&i&&n){return i.getBindingInfo(n)}else if(Array.isArray(e)){if(t==="length"){return e.length}else if(t.indexOf("id=")===0){var s=t.substring(3),a=null;for(var o=0;o<e.length;o++){if(e[o].getId()===this._createId(s)||e[o].getId()===s){a=e[o];break}}return a}}return null};O.prototype._getObject=function(t,i,n){var a=this._oObject,o="",g=this;if(n){n.push({path:"/",node:a})}this.aBindings.forEach(function(e){if(!e._bAttached){g._observeBeforeEvaluating(e,true)}});if(typeof t==="string"&&t.indexOf("/")!=0&&!i){return null}if(i instanceof r){a=i;o=t}else if(!i||i instanceof s){o=this.resolve(t,i);if(!o){return a}if(o.indexOf("/"+u)===0){return e.prototype._getObject.apply(this,[t,i])}}else{a=i;o=t}if(!a){return null}var p=o.split("/"),h=0;if(!p[0]){h++}var d=null,l=null,c;while(a!==null&&p[h]){c=p[h];if(c=="id"){c="@id"}if(c.indexOf("@")===0){a=this._getSpecialNode(a,c.substring(1),d,l)}else if(a instanceof r){var v=a.getMetadata();if(v.isInstanceOf("sap.ui.core.IDScope")&&c.indexOf("#")===0){a=a.byId(c.substring(1))}else{d=a;l=c;var b=v.getManagedProperty(c);if(b){a=b.get(a)}else{var y=v.getManagedAggregation(c);if(y){a=y.get(a)}else{if(a&&a[c]&&typeof a[c]==="function"){a=a[c]()}else{a=null}}}}}else if(Array.isArray(a)||f(a)){a=a[c]}else{if(a&&a[c]&&typeof a[c]==="function"){a=a[c]()}else{a=null}}if(n){n.push({path:c,node:a})}h++}return a};O.prototype.destroy=function(){for(var t in this._mAggregationObjects){var i=this._mAggregationObjects[t];if(i.object.invalidate.fn){i.object.invalidate=i.object.invalidate.fn}}e.prototype.destroy.apply(this,arguments)};O.prototype._observeBeforeEvaluating=function(e,t){if(!e.isResolved()){return}var i=e.getPath();var n=e.getContext(),a=this._oObject,o;if(n instanceof r){a=n;o=i}else if(!n||n instanceof s){o=this.resolve(i,n);if(!o){return}if(o.indexOf("/"+u)===0){return}}else{return}var g=o.split("/");if(!g[0]){g.shift()}var f=g[0];if(a.getMetadata().isInstanceOf("sap.ui.core.IDScope")&&f.indexOf("#")===0){a=a.byId(f.substring(1));f=g[1]}if(a instanceof r){var p=a.getMetadata(),h=p.getManagedProperty(f);if(h){if(t===true){this._observePropertyChange(a,h)}else if(t===false){this._unobservePropertyChange(a,h)}}else{var d=p.getAggregation(f)||p.getAllPrivateAggregations()[f];if(d){if(t===true){this._observeAggregationChange(a,d)}else if(t===false){this._unobserveAggregationChange(a,d)}}}e._bAttached=t}};O.prototype.observerChanges=function(e){if(e.type=="aggregation"){var t={};if(e.child instanceof r){t=e.child.getMetadata().getAllAggregations()}if(e.mutation=="insert"){if(e.child instanceof r){this._oObserver.observe(e.child,{properties:true,aggregations:true})}for(var i in t){l(this,e.child,t[i],true)}if(this.mListBinding[e.name]){var n=this._oObject.getBinding(e.name);var s=this._oObject.getAggregation(e.name);if(n&&n.getCurrentContexts().length!=s.length){return}}}else{if(e.child instanceof r){this._oObserver.unobserve(e.child,{properties:true,aggregations:true})}for(var i in t){l(this,e.child,t[i],false)}}}else if(e.type==="property"){this.aBindings.forEach(function(t){if(t._mightBeAffectedByChangesInside&&t._mightBeAffectedByChangesInside(e.object)){t.checkUpdate(true)}})}var a;if(e.object===this._oObject){a=function(t){var i=this.resolve(t.sPath,t.oContext);return i?i.startsWith("/"+e.name):true}.bind(this)}this.checkUpdate(false,false,a)};O.prototype.checkUpdate=function(e,t,i){if(t){this.bForceUpdate=this.bForceUpdate||e;if(!this.sUpdateTimer){this.fnFilter=this.fnFilter||i;this.sUpdateTimer=setTimeout(function(){this.checkUpdate(this.bForceUpdate,false,this.fnFilter)}.bind(this),0)}else if(this.fnFilter&&this.fnFilter!==i){this.fnFilter=undefined}return}e=this.bForceUpdate||e;if(this.sUpdateTimer){clearTimeout(this.sUpdateTimer);this.sUpdateTimer=null;this.bForceUpdate=undefined;i=this.fnFilter===i?i:undefined;this.fnFilter=undefined}var r=this.getBindings();r.forEach(function(t){if(!i||i(t)){t.checkUpdate(e)}})};return O});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/controlhelper/TreeBindingProxy", ["sap/base/assert","sap/base/Log"],function(e,t){"use strict";var n=function(e,t){this._oControl=e;this._sAggregation=t;var n=new URLSearchParams(window.location.search);this._bEnableV4=n.get("sap-ui-xx-v4tree")==="true"};n.prototype.isTreeBinding=function(){var e=this._oControl.getModel(this._oControl.getBindingInfo(this._sAggregation).model);if(e.isA("sap.ui.model.odata.v4.ODataModel")){return false}return true};n.prototype.isLeaf=function(e){var n=this._oControl.getBinding();var i=this._getBindingName(n);switch(i){case undefined:return true;case"sap.ui.model.odata.v4.ODataListBinding":if(!this._bEnableV4){t.error("UnsupportedOperationException: OData V4 is not supported");return false}var r=this.getContextByIndex(e);return r?r.getProperty("@$ui5.node.isExpanded")===undefined:true;default:var o=this.getNodeByIndex(e);return!n.nodeHasChildren(o)}};n.prototype.getNodeByIndex=function(e){var n=this._oControl.getBinding();var i=this._getBindingName(n);var r=null;if(e<0){return r}switch(i){case undefined:break;case"sap.ui.model.odata.v4.ODataListBinding":if(!this._bEnableV4){t.error("UnsupportedOperationException: OData V4 is not supported")}else{r=this.getContextByIndex(e)}break;default:r=n.getNodeByIndex(e)}return r||null};n.prototype.getContextByIndex=function(e){var n=this._oControl.getBinding();var i=this._getBindingName(n);var r=null;if(e<0){return r}switch(i){case undefined:break;case"sap.ui.model.odata.v4.ODataListBinding":if(!this._bEnableV4){t.error("UnsupportedOperationException: OData V4 is not supported")}else{r=n.getContexts(e,1,0,true)[0]}break;default:r=n.getContextByIndex(e)}return r||null};n.prototype.isExpanded=function(e){var n=this._oControl.getBinding();var i=this._getBindingName(n);switch(i){case undefined:return false;case"sap.ui.model.odata.v4.ODataListBinding":if(!this._bEnableV4){t.error("UnsupportedOperationException: OData V4 is not supported");return false}var r=this.getContextByIndex(e);return r?!!r.getProperty("@$ui5.node.isExpanded"):false;default:return n?n.isExpanded(e):false}};n.prototype.expand=function(e){var n=this._oControl.getBinding();var o=this._getBindingName(n);var a={proxy:this,binding:n,indices:e,expanded:true};if(typeof a.indices==="number"){a.indices=[e]}switch(o){case undefined:break;case"sap.ui.model.odata.v4.ODataListBinding":if(!this._bEnableV4){t.error("UnsupportedOperationException: OData V4 is not supported");return}r(a);break;default:i(a)}};n.prototype.collapse=function(e){var n=this._oControl.getBinding();var o=this._getBindingName(n);var a={proxy:this,binding:n,indices:e,expanded:false};if(typeof a.indices==="number"){a.indices=[e]}switch(o){case undefined:break;case"sap.ui.model.odata.v4.ODataListBinding":if(!this._bEnableV4){t.error("UnsupportedOperationException: OData V4 is not supported");return}r(a);break;default:i(a)}};function i(e){var t=e.indices.filter(function(t){return t>=0&&t<e.binding.getLength()&&!e.proxy.isLeaf(t)&&e.expanded!==e.proxy.isExpanded(t)}).sort(function(e,t){return e-t});if(t.length===0){return}for(var n=t.length-1;n>0;n--){if(e.expanded){e.binding.expand(t[n],true)}else{e.binding.collapse(t[n],true)}}if(e.expanded){e.binding.expand(t[0],false)}else{e.binding.collapse(t[0],false)}}function r(e){for(var t=0;t<e.indices.length;t++){var n=e.proxy.getContextByIndex(e.indices[t]);if(n){if(e.expanded){n.expand()}else{n.collapse()}}}}n.prototype.toggleExpandedState=function(e){if(this.isExpanded(e)){this.collapse(e)}else{this.expand(e)}};n.prototype.getContexts=function(e,n,i,r){var a=this._oControl.getBinding();var s=this._getBindingName(a);var d=[];switch(s){case undefined:break;case"sap.ui.model.odata.v4.ODataListBinding":if(!this._bEnableV4){t.error("UnsupportedOperationException: OData V4 is not supported");return[]}d=a.getContexts(e,n,i,r);d.forEach(function(e){if(!e){return}e._mProxyInfo={};e._mProxyInfo.level=o(e,false);e._mProxyInfo.isLeaf=e.getProperty("@$ui5.node.isExpanded")===undefined;e._mProxyInfo.isExpanded=!!e.getProperty("@$ui5.node.isExpanded")},this);break;default:var p=a?a.getNodes(e,n,i):[];p.forEach(function(t,n){if(!t){return}var i=n+e;var r=t.context;if(r){r._mProxyInfo={};if(t.nodeState){r._mProxyInfo.nodeState=t.nodeState}r._mProxyInfo.level=o(t,true);r._mProxyInfo.isLeaf=!a.nodeHasChildren(t);r._mProxyInfo.isExpanded=a.isExpanded(i);d.push(t.context)}},this);break}return d};function o(e,t){if(e){return t?e.level+1:e.getProperty("@$ui5.node.level")}}function a(e,t){const n=e.getAggregation()?.expandTo===t;if(n){e.refresh()}else{e.setAggregation({...e.getAggregation(),...{expandTo:t}})}}n.prototype.collapseAll=function(){var e=this._oControl.getBinding();var n=this._getBindingName(e);switch(n){case undefined:break;case"sap.ui.model.odata.v4.ODataListBinding":if(!this._bEnableV4){t.error("UnsupportedOperationException: OData V4 is not supported");return}a(e,1);break;default:e.collapseToLevel(0)}};n.prototype.expandToLevel=function(n){var i=this._oControl.getBinding();var r=this._getBindingName(i);switch(r){case undefined:break;case"sap.ui.model.odata.v4.ODataListBinding":if(!this._bEnableV4){t.error("UnsupportedOperationException: OData V4 is not supported");return}a(i,n);break;default:if(i.expandToLevel){i.expandToLevel(n)}else{e(i.expandToLevel,"Expanding all nodes to a certain level"+" is not supported with your current binding.")}}};n.prototype.setRootLevel=function(n){var i=this._oControl.getBinding();var r=this._getBindingName(i);switch(r){case undefined:break;case"sap.ui.model.odata.v4.ODataListBinding":if(!this._bEnableV4){t.error("UnsupportedOperationException: OData V4 is not supported");return}throw Error("Setting the root level is not supported with your current binding.");default:if(i.setRootLevel){i.setRootLevel(n)}else{e(i.setRootLevel,"Setting the root level is not supported with"+" your current binding.")}}};n.prototype.setCollapseRecursive=function(n){var i=this._oControl.getBinding();var r=this._getBindingName(i);switch(r){case undefined:break;case"sap.ui.model.odata.v4.ODataListBinding":if(!this._bEnableV4){t.error("UnsupportedOperationException: OData V4 is not supported");return}throw Error("Setting 'collapseRecursive' is not supported with your"+" current binding.");default:if(i.setCollapseRecursive){i.setCollapseRecursive(n)}else{e(i.setCollapseRecursive,"Setting 'collapseRecursive' is"+" not supported with your current binding.")}}};n.prototype.getLevel=function(e){var n=this._oControl.getBinding();var i=this._getBindingName(n);switch(i){case undefined:return undefined;case"sap.ui.model.odata.v4.ODataListBinding":if(!this._bEnableV4){t.error("UnsupportedOperationException: OData V4 is not supported");return 0}var r=this.getContextByIndex(e);return o(r,false);default:var a=this.getNodeByIndex(e);return o(a,true)}};n.prototype.getSiblingCount=function(e){var n=this._oControl.getBinding();var i=this._getBindingName(n);switch(i){case undefined:return 0;case"sap.ui.model.odata.v4.ODataListBinding":if(!this._bEnableV4){t.error("UnsupportedOperationException: OData V4 is not supported");return 0}throw Error("The number of siblings of a node cannot be determined"+" with your current binding.");default:var r=this.getNodeByIndex(e);return r&&r.parent?r.parent.children.length:0}};n.prototype.getPositionInParent=function(e){var n=this._oControl.getBinding();var i=this._getBindingName(n);switch(i){case undefined:return-1;case"sap.ui.model.odata.v4.ODataListBinding":if(!this._bEnableV4){t.error("UnsupportedOperationException: OData V4 is not supported");return-1}throw Error("The position of a node in its parent cannot be determined"+" with your current binding.");default:var r=this.getNodeByIndex(e);return r?r.positionInParent:-1}};n.prototype.isSelectionSupported=function(){var e=this._oControl.getBinding();var t=this._getBindingName(e);switch(t){case undefined:case"sap.ui.model.odata.v4.ODataListBinding":return false;default:return true}};n.prototype.applyLegacySettingsToBindingInfo=function(e,t){if(!e.parameters){e.parameters={}}if(!("rootLevel"in e.parameters)&&t.rootLevel!==undefined){e.parameters.rootLevel=t.rootLevel}if(!("collapseRecursive"in e.parameters)&&t.collapseRecursive!==undefined){e.parameters.collapseRecursive=t.collapseRecursive}if(!("numberOfExpandedLevels"in e.parameters)&&t.numberOfExpandedLevels!==undefined){e.parameters.numberOfExpandedLevels=t.numberOfExpandedLevels}};n.prototype._getBindingName=function(t){e(t,"Control does not have a binding.");return t?t.getMetadata().getName():undefined};return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/json/JSONListBinding", ["sap/base/Log","sap/base/util/deepEqual","sap/base/util/deepExtend","sap/base/util/each","sap/base/util/extend","sap/ui/model/ChangeReason","sap/ui/model/ClientListBinding"],function(t,e,s,i,a,h,n){"use strict";var o=n.extend("sap.ui.model.json.JSONListBinding");o.prototype.updateIndices=function(){var t;this.aIndices=[];if(Array.isArray(this.oList)){for(t=0;t<this.oList.length;t++){this.aIndices.push(t)}}else{for(t in this.oList){this.aIndices.push(t)}}};o.prototype.update=function(){var t=this.oModel._getObject(this.sPath,this.oContext);if(t){if(Array.isArray(t)){if(this.bUseExtendedChangeDetection){this.oList=s([],t)}else{this.oList=t.slice(0)}}else{this.oList=this.bUseExtendedChangeDetection?s({},t):a({},t)}this.updateIndices();this.applyFilter();this.applySort();this.iLength=this._getLength()}else{this.oList=[];this.aIndices=[];this.iLength=0}};o.prototype.checkUpdate=function(t){var s;if(this.bSuspended&&!this.bIgnoreSuspend&&!t){return}if(!this.bUseExtendedChangeDetection){s=this.oModel._getObject(this.sPath,this.oContext)||[];if(!e(this.oList,s)||t){this.update();this._fireChange({reason:h.Change})}}else{var a=false;var n=this;s=this.oModel._getObject(this.sPath,this.oContext)||[];if(this.oList.length!=s.length){a=true}if(!e(this.oList,s)){this.update()}var o=this._getContexts(this.iLastStartIndex,this.iLastLength);if(this.aLastContexts){if(this.aLastContexts.length!=o.length){a=true}else{i(this.aLastContextData,function(t,e){var s=n.getContextData(o[t]);if(s!==e){a=true;return false}return true})}}else{a=true}if(a||t){this._fireChange({reason:h.Change})}}};return o});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/json/JSONModel", ["./JSONListBinding","./JSONPropertyBinding","./JSONTreeBinding","sap/base/Log","sap/base/util/deepExtend","sap/base/util/isPlainObject","sap/ui/model/ClientModel","sap/ui/model/Context"],function(e,t,r,i,s,o,n,a){"use strict";var u=n.extend("sap.ui.model.json.JSONModel",{constructor:function(e,t){this.pSequentialImportCompleted=Promise.resolve();n.apply(this,arguments);this.bObserve=t;if(e&&typeof e=="object"){this.setData(e)}},metadata:{publicMethods:["setJSON","getJSON"]}});u.prototype.setData=function(e,t){if(t){this.oData=s(Array.isArray(this.oData)?[]:{},this.oData,e)}else{this.oData=e}if(this.bObserve){this.observeData()}this.checkUpdate()};u.prototype.observeData=function(){var e=this;function t(e){return function(){return e}}function r(t,r){return function(i){s(i,t,r);e.checkUpdate()}}function i(e,i,s){if(typeof s=="function"){e[i]=s}else{Object.defineProperty(e,i,{get:t(s),set:r(e,i)})}}function s(e,t,r){var n;if(Array.isArray(e)){for(n=0;n<e.length;n++){s(e[n],e,n)}}else if(o(e)){for(n in e){s(e[n],e,n)}}if(t){i(t,r,e)}}s(this.oData)};u.prototype.setJSON=function(e,t){var r;try{r=JSON.parse(e+"");this.setData(r,t)}catch(e){i.fatal("The following problem occurred: JSON parse Error: "+e);this.fireParseError({url:"",errorCode:-1,reason:"",srcText:e,line:-1,linepos:-1,filepos:-1})}};u.prototype.getJSON=function(){return JSON.stringify(this.oData)};u.prototype.loadData=function(e,t,r,s,o,n,a){var u;r=r!==false;s=s||"GET";n=n===undefined?this.bCache:n;this.fireRequestSent({url:e,type:s,async:r,headers:a,info:"cache="+n+";bMerge="+o,infoObject:{cache:n,merge:o}});var c=function(t){if(!t){i.fatal("The following problem occurred: No data was retrieved by service: "+e)}this.setData(t,o);this.fireRequestCompleted({url:e,type:s,async:r,headers:a,info:"cache="+n+";bMerge="+o,infoObject:{cache:n,merge:o},success:true})}.bind(this);var f=function(t,u){var c=u||t.textStatus;var f=r?t.request:t;var p=f.status;var h=f.statusText;var l=f.responseText;var d={message:c,statusCode:p,statusText:h,responseText:l};i.fatal("The following problem occurred: "+c,l+","+p+","+h);this.fireRequestCompleted({url:e,type:s,async:r,headers:a,info:"cache="+n+";bMerge="+o,infoObject:{cache:n,merge:o},success:false,errorobject:d});this.fireRequestFailed(d);if(r){return Promise.reject(d)}return undefined}.bind(this);var p=function(i,o){this._ajax({url:e,async:r,dataType:"json",cache:n,data:t,headers:a,jsonp:false,type:s,success:i,error:o})}.bind(this);if(r){u=new Promise(function(e,t){var r=function(e,r,i){t({request:e,textStatus:r,error:i})};p(e,r)});var h=this.pSequentialImportCompleted.then(function(){return u.then(c,f)});this.pSequentialImportCompleted=h.catch(function(e){i.error("Loading of data failed: "+e.stack)});return h}else{p(c,f);return undefined}};u.prototype.dataLoaded=function(){return this.pSequentialImportCompleted};u.prototype.bindProperty=function(e,r,i){var s=new t(this,e,r,i);return s};u.prototype.bindList=function(t,r,i,s,o){var n=new e(this,t,r,i,s,o);return n};u.prototype.bindTree=function(e,t,i,s,o){var n=new r(this,e,t,i,s,o);return n};u.prototype.setProperty=function(e,t,r,i){var s=this.resolve(e,r),o,n,a;if(!s){return false}if(s=="/"){this.setData(t);return true}o=s.lastIndexOf("/");n=s.substring(0,o||1);a=s.substr(o+1);var u=this._getObject(n);if(u){u[a]=t;this.checkUpdate(false,i);return true}return false};u.prototype.getProperty=function(e,t){return this._getObject(e,t)};u.prototype._getObject=function(e,t){let r=null;if(this.isLegacySyntax()){r=this.oData}if(t instanceof a){r=this._getObject(t.getPath())}else if(t!=null){r=t}if(!e){return r}var i=e.split("/"),s=0;if(!i[0]){r=this.oData;s++}while(r&&i[s]){r=r[i[s]];s++}return r};u.prototype.isList=function(e,t){var r=this.resolve(e,t);return Array.isArray(this._getObject(r))};u.prototype._setMetaModel=function(e){this._oMetaModel=e};u.prototype.getMetaModel=function(){return this._oMetaModel};return u});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/json/JSONPropertyBinding", ["sap/ui/model/ChangeReason","sap/ui/model/ClientPropertyBinding","sap/base/util/deepEqual"],function(t,e,i){"use strict";var a=e.extend("sap.ui.model.json.JSONPropertyBinding");a.prototype.setValue=function(e){if(this.bSuspended){return}if(!i(this.oValue,e)){if(this.oModel.setProperty(this.sPath,e,this.oContext,true)){this.oValue=e;this.getDataState().setValue(this.oValue);this.oModel.firePropertyChange({reason:t.Binding,path:this.sPath,context:this.oContext,value:e})}}};a.prototype.checkUpdate=function(e){if(this.bSuspended&&!e){return}var a=this._getValue();if(!i(a,this.oValue)||e){this.oValue=a;this.getDataState().setValue(this.oValue);this.checkDataState();this._fireChange({reason:t.Change})}};return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/json/JSONTreeBinding", ["sap/ui/model/ClientTreeBinding"],function(e){"use strict";var t=e.extend("sap.ui.model.json.JSONTreeBinding");t.prototype._saveSubContext=function(e,t,i,n){if(e&&typeof e=="object"){var o=this.oModel.getContext(i+n);if(this.oCombinedFilter&&!this.bIsFiltering){if(this.filterInfo.aFilteredContexts&&this.filterInfo.aFilteredContexts.indexOf(o)!=-1){t.push(o)}}else{t.push(o)}}};return t});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/AnnotationHelper", ["./_AnnotationHelperBasics","./_AnnotationHelperExpression","sap/base/Log","sap/ui/base/BindingParser"],function(t,e,n,r){"use strict";function o(t,e){return function(){return t.call(this,e.apply(this,arguments))}}var i={createPropertySetting:function(t,e,n){var i=false,a;t=t.slice();t.forEach(function(e,o){switch(typeof e){case"boolean":case"number":case"undefined":i=true;break;case"string":a=r.complexParser(e,n,true,true,false,true);if(a!==undefined){if(a.functionsNotFound){throw new Error("Function name(s) "+a.functionsNotFound.join(", ")+" not found")}t[o]=e=a}case"object":if(!e||typeof e!=="object"||!("path"in e)){i=true}break;default:throw new Error("Unsupported part: "+e)}});a={formatter:e,parts:t};if(i){r.mergeParts(a)}e=a.formatter;if(a.parts.length===0){a=e&&e();if(typeof a==="string"){a=r.complexParser.escape(a)}}else if(a.parts.length===1){if(e&&!e.textFragments&&a.parts[0].formatter){a.formatter=o(e,a.parts[0].formatter);a.parts[0]=Object.assign({},a.parts[0]);delete a.parts[0].formatter}}return a},format:function(t,n){if(arguments.length===1){n=t.getObject("")}return e.getExpression(t,n,true)},getNavigationPath:function(e,n){if(arguments.length===1){n=e.getObject("")}var r=t.followPath(e,n);return r?"{"+r.navigationProperties.join("/")+"}":""},gotoEntitySet:function(e){var r,o,i=e.getObject(),a;if(typeof i==="string"){r=i}else{a=t.followPath(e,i);r=a&&a.associationSetEnd&&a.associationSetEnd.entitySet}if(r){o=e.getModel().getODataEntitySet(r,true)}if(!o){n.warning(e.getPath()+": found '"+r+"' which is not a name of an entity set",undefined,"sap.ui.model.odata.AnnotationHelper")}return o},gotoEntityType:function(t){var e=t.getProperty(""),r=t.getModel().getODataEntityType(e,true);if(!r){n.warning(t.getPath()+": found '"+e+"' which is not a name of an entity type",undefined,"sap.ui.model.odata.AnnotationHelper")}return r},gotoFunctionImport:function(t){var e=t.getProperty("String"),r=t.getModel().getODataFunctionImport(e,true);if(!r){n.warning(t.getPath()+": found '"+e+"' which is not a name of a function import",undefined,"sap.ui.model.odata.AnnotationHelper")}return r},isMultiple:function(e,n){if(arguments.length===1){n=e.getObject("")}var r=t.followPath(e,n);if(r){if(r.navigationAfterMultiple){throw new Error('Association end with multiplicity "*" is not the last one: '+n.AnnotationPath)}return String(r.isMultiple)}return""},resolvePath:function(e){var r=t.followPath(e,e.getObject());if(!r){n.warning(e.getPath()+": Path could not be resolved ",undefined,"sap.ui.model.odata.AnnotationHelper")}return r?r.resolvedPath:undefined},simplePath:function(t,n){if(arguments.length===1){n=t.getObject("")}return e.getExpression(t,n,false)}};i.format.requiresIContext=true;i.getNavigationPath.requiresIContext=true;i.isMultiple.requiresIContext=true;i.simplePath.requiresIContext=true;return i},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/AnnotationParser", ["sap/base/assert","sap/base/Log","sap/base/util/isEmptyObject"],function(e,t,a){"use strict";var r={EnumMember:true,Path:true,PropertyPath:true,NavigationPropertyPath:true,AnnotationPath:true};var n={Binary:true,Bool:true,Date:true,DateTimeOffset:true,Decimal:true,Duration:true,Float:true,Guid:true,Int:true,String:true,TimeOfDay:true,LabelElementReference:true,EnumMember:true,Path:true,PropertyPath:true,NavigationPropertyPath:true,AnnotationPath:true};var o={And:true,Or:true,Eq:true,Ne:true,Gt:true,Ge:true,Lt:true,Le:true,If:true,Collection:true};function i(e){return e.getAttribute("Qualifier")||e.parentNode.nodeName==="Annotations"&&e.parentNode.getAttribute("Qualifier")}var s={merge:function(e,t){var a,r;var n=["annotationsAtArrays","propertyAnnotations","EntityContainer","annotationReferences"];for(a in t){if(n.indexOf(a)!==-1){continue}s._mergeAnnotation(a,t,e)}for(var o=1;o<n.length;++o){var i=n[o];e[i]=e[i]||{};for(a in t[i]){for(r in t[i][a]){e[i][a]=e[i][a]||{};s._mergeAnnotation(r,t[i][a],e[i][a])}}}if(t.annotationsAtArrays){e.annotationsAtArrays=(e.annotationsAtArrays||[]).concat(t.annotationsAtArrays)}},_mergeAnnotation:function(e,t,a){if(Array.isArray(t[e])){a[e]=t[e].slice(0)}else{a[e]=a[e]||{};for(var r in t[e]){a[e][r]=t[e][r]}}},parse:function(e,t,a){try{s._parserData={};s._oXPath=s.getXPath();return s._parse(e,t,a)}finally{delete s._parserData;delete s._oXPath}},_parse:function(e,t,r){var n={},o,l,p,u,f,d,c,m,h,y,v,g,A,N,P,_,x,D,b,T,V,E,X,C=[];s._parserData.metadataInstance=e;s._parserData.serviceMetadata=e.getServiceMetadata();s._parserData.xmlDocument=s._oXPath.setNameSpace(t);s._parserData.schema={};s._parserData.aliases={};s._parserData.url=r?r:"metadata document";s._parserData.annotationsAtArrays=C;o=s._oXPath.selectNodes("//d:Schema",s._parserData.xmlDocument);for(E=0;E<o.length;E+=1){l=s._oXPath.nextNode(o,E);s._parserData.schema.Alias=l.getAttribute("Alias");s._parserData.schema.Namespace=l.getAttribute("Namespace")}var O={};var R=s._parseReferences(O);if(R){n.annotationReferences=O;n.aliasDefinitions=s._parserData.aliases}p=s._oXPath.selectNodes("//d:Term",s._parserData.xmlDocument);if(p.length>0){u={};for(X=0;X<p.length;X+=1){f=s._oXPath.nextNode(p,X);d=s.replaceWithAlias(f.getAttribute("Type"));u["@"+s._parserData.schema.Alias+"."+f.getAttribute("Name")]=d}n.termDefinitions=u}s._parserData.metadataProperties=s.getAllPropertiesMetadata(s._parserData.serviceMetadata);if(s._parserData.metadataProperties.extensions){n.propertyExtensions=s._parserData.metadataProperties.extensions}c=s._oXPath.selectNodes("//d:Annotations ",s._parserData.xmlDocument);for(X=0;X<c.length;X+=1){m=s._oXPath.nextNode(c,X);if(m.hasChildNodes()===false){continue}h=m.getAttribute("Target");y=h.split(".")[0];if(y&&s._parserData.aliases[y]){h=h.replace(new RegExp(y,""),s._parserData.aliases[y])}v=h;g=null;var S=null;if(h.indexOf("/")>0){v=h.split("/")[0];var F=s._parserData.serviceMetadata.dataServices&&s._parserData.serviceMetadata.dataServices.schema&&s._parserData.serviceMetadata.dataServices.schema.length;if(F){for(var M=s._parserData.serviceMetadata.dataServices.schema.length-1;M>=0;M--){var W=s._parserData.serviceMetadata.dataServices.schema[M];if(W.entityContainer){var k=v.split(".");for(var w=W.entityContainer.length-1;w>=0;w--){if(W.entityContainer[w].name===k[k.length-1]){S=h.replace(v+"/","");break}}}}}if(!S){g=h.replace(v+"/","")}}if(g){if(!n.propertyAnnotations){n.propertyAnnotations={}}if(!n.propertyAnnotations[v]){n.propertyAnnotations[v]={}}if(!n.propertyAnnotations[v][g]){n.propertyAnnotations[v][g]={}}A=s._oXPath.selectNodes("./d:Annotation",m);for(var L=0;L<A.length;L+=1){N=s._oXPath.nextNode(A,L);P=s.replaceWithAlias(N.getAttribute("Term"));var I=i(N);if(I){P+="#"+I}if(N.hasChildNodes()===false){var B={};s.enrichFromPropertyValueAttributes(B,N);if(a(B)){B.Bool="true"}n.propertyAnnotations[v][g][P]=B}else{n.propertyAnnotations[v][g][P]=s.getPropertyValue(N)}}}else{var j;if(S){if(!n["EntityContainer"]){n["EntityContainer"]={}}if(!n["EntityContainer"][v]){n["EntityContainer"][v]={}}j=n["EntityContainer"][v]}else{if(!n[v]){n[v]={}}j=n[v]}_=v.replace(s._parserData.aliases[y],y);A=s._oXPath.selectNodes("./d:Annotation",m);for(var G=0;G<A.length;G+=1){N=s._oXPath.nextNode(A,G);var Q=j;if(S){if(!j[S]){j[S]={}}Q=j[S]}s._parseAnnotation(v,N,Q)}x=s._oXPath.selectNodes("//d:Annotations[contains(@Target, '"+_+"')]//d:PropertyValue[contains(@Path, '/')]//@Path",s._parserData.xmlDocument);for(E=0;E<x.length;E+=1){D=s._oXPath.nextNode(x,E);b=D.value;if(n.propertyAnnotations){if(n.propertyAnnotations[v]){if(n.propertyAnnotations[v][b]){continue}}}T=b.split("/");if(s.findNavProperty(v,T[0])){if(!n.expand){n.expand={}}if(!n.expand[v]){n.expand[v]={}}n.expand[v][T[0]]=T[0]}}V=s._oXPath.selectNodes("//d:Annotations[contains(@Target, '"+_+"')]//d:Path[contains(., '/')]",s._parserData.xmlDocument);for(E=0;E<V.length;E+=1){D=s._oXPath.nextNode(V,E);b=s._oXPath.getNodeText(D);if(n.propertyAnnotations&&n.propertyAnnotations[v]&&n.propertyAnnotations[v][b]){continue}if(!n.expand){n.expand={}}if(!n.expand[v]){n.expand[v]={}}T=b.split("/");if(s.findNavProperty(v,T[0])){if(!n.expand){n.expand={}}if(!n.expand[v]){n.expand[v]={}}n.expand[v][T[0]]=T[0]}}}}if(C.length){n.annotationsAtArrays=C.map(function(e){return s.backupAnnotationAtArray(e,n)})}return n},backupAnnotationAtArray:function(e,t){var a,r=[];function n(){return Array.prototype.filter.call(e.parentNode.childNodes,function(e){return e.nodeType===1}).indexOf(e)}while(e.nodeName!=="Annotations"){switch(e.nodeName){case"Annotation":a=i(e);r.unshift(e.getAttribute("Term")+(a?"#"+a:""));break;case"Collection":break;case"PropertyValue":r.unshift(e.getAttribute("Property"));break;case"Record":if(e.parentNode.nodeName==="Collection"){r.unshift(n())}break;default:if(e.parentNode.nodeName==="Apply"){r.unshift("Value");r.unshift(n());r.unshift("Parameters")}else{r.unshift(e.nodeName)}break}e=e.parentNode}r.unshift(e.getAttribute("Target"));r=r.map(function(e){return typeof e==="string"?s.replaceWithAlias(e):e});s.syncAnnotationsAtArrays(t,r,true);return r},restoreAnnotationsAtArrays:function(e){if(e.annotationsAtArrays){e.annotationsAtArrays.forEach(function(t){s.syncAnnotationsAtArrays(e,t)})}},syncAnnotationsAtArrays:function(e,a,r){var n,o=a.length-2,i=a[o+1],s=e,l=a[o],p=l+"@"+i;for(n=0;n<o;n+=1){s=s&&s[a[n]]}if(s&&Array.isArray(s[l])){if(!(p in s)){s[p]=s[l][i]}if(!(i in s[l])){s[l][i]=s[p]}}else if(r){t.warning("Wrong path to annotation at array",a,"sap.ui.model.odata.AnnotationParser")}},_parseAnnotation:function(e,t,a){var r=i(t);var n=s.replaceWithAlias(t.getAttribute("Term"));if(r){n+="#"+r}var o=s.getPropertyValue(t,e);o=s.setEdmTypes(o,s._parserData.metadataProperties.types,e,s._parserData.schema);a[n]=o;if(Array.isArray(a)){s._parserData.annotationsAtArrays.push(t)}},_parseReferences:function(e){var t=false;var a,r;var n=s._oXPath;var o="//edmx:Reference/edmx:Include[@Namespace and @Alias]";var i=n.selectNodes(o,s._parserData.xmlDocument);for(r=0;r<i.length;++r){t=true;a=n.nextNode(i,r);s._parserData.aliases[a.getAttribute("Alias")]=a.getAttribute("Namespace")}s._parserData.aliasesByLength=Object.keys(s._parserData.aliases).sort(function(e,t){return t.length-e.length});var l="//edmx:Reference[@Uri]/edmx:IncludeAnnotations[@TermNamespace]";var p=n.selectNodes(l,s._parserData.xmlDocument);for(r=0;r<p.length;++r){t=true;a=n.nextNode(p,r);var u=a.getAttribute("TermNamespace");var f=a.getAttribute("TargetNamespace");var d=a.parentNode.getAttribute("Uri");if(f){if(!e[f]){e[f]={}}e[f][u]=d}else{e[u]=d}}return t},getAllPropertiesMetadata:function(e){var t={},a={},r={},n=false,o,i,s,l={},p={},u={},f=false,d,c,m,h,y,v={types:a};if(!e.dataServices.schema){return v}for(var g=e.dataServices.schema.length-1;g>=0;g-=1){t=e.dataServices.schema[g];if(t.entityType){o=t.namespace;i=t.entityType;s=t.complexType;for(var A=0;A<i.length;A+=1){l=i[A];u={};p={};if(l.property){for(var N=0;N<l.property.length;N+=1){d=l.property[N];if(d.type.substring(0,o.length)===o){if(s){for(var P=0;P<s.length;P+=1){if(s[P].name===d.type.substring(o.length+1)){if(s[P].property){for(var _=0;_<s[P].property.length;_+=1){c=s[P].property[_];p[s[P].name+"/"+c.name]=c.type}}}}}}else{m=d.name;h=d.type;if(d.extensions){for(var x=0;x<d.extensions.length;x+=1){y=d.extensions[x];if(y.name==="display-format"&&y.value==="Date"){h="Edm.Date"}else{f=true;if(!u[m]){u[m]={}}if(y.namespace&&!u[m][y.namespace]){u[m][y.namespace]={}}u[m][y.namespace][y.name]=y.value}}}p[m]=h}}}if(!a[o+"."+l.name]){a[o+"."+l.name]={}}a[o+"."+l.name]=p;if(f){if(!r[o+"."+l.name]){n=true}r[o+"."+l.name]={};r[o+"."+l.name]=u}}}}if(n){v={types:a,extensions:r}}return v},setEdmTypes:function(e,t,a,r){function n(n){var o,i="";if(e[n]){o=e[n];if(o.Value&&o.Value.Path){i=s.getEdmType(o.Value.Path,t,a,r);if(i){e[n].EdmType=i}}else if(o.Path){i=s.getEdmType(o.Path,t,a,r);if(i){e[n].EdmType=i}}else if(o.Facets){e[n].Facets=s.setEdmTypes(o.Facets,t,a,r)}else if(o.Data){e[n].Data=s.setEdmTypes(o.Data,t,a,r)}else if(n==="Data"){e.Data=s.setEdmTypes(o,t,a,r)}else if(o.Value&&o.Value.Apply){e[n].Value.Apply.Parameters=s.setEdmTypes(o.Value.Apply.Parameters,t,a,r)}else if(o.Value&&o.Type&&o.Type==="Path"){i=s.getEdmType(o.Value,t,a,r);if(i){e[n].EdmType=i}}}}if(Array.isArray(e)){for(var o=0;o<e.length;o+=1){n(o)}}else{for(var i in e){n(i)}}return e},getEdmType:function(e,t,a,r){var n=e.indexOf("/");if(n>-1){var o=e.substr(0,n);var i=s.findNavProperty(a,o);if(i){var l=s._parserData.metadataInstance._getEntityTypeByNavPropertyObject(i);if(l){a=l.entityType;e=e.substr(n+1)}}}if(e.charAt(0)==="@"&&e.indexOf(r.Alias)===1){e=e.slice(r.Alias.length+2)}if(e.indexOf("/")>=0){if(t[e.slice(0,e.indexOf("/"))]){a=e.slice(0,e.indexOf("/"));e=e.slice(e.indexOf("/")+1)}}return t[a]&&t[a][e]},enrichFromPropertyValueAttributes:function(e,t){var a={Property:true,Qualifier:true,Term:true,xmlns:true};for(var r=0;r<t.attributes.length;r+=1){var n=t.attributes[r].name;if(!a[n]&&n.indexOf("xmlns:")!==0){var o=t.attributes[r].value;if(n==="EnumMember"&&o.indexOf(" ")>-1){var i=o.split(" ");e[n]=i.map(s.replaceWithAlias).join(" ")}else{e[n]=s.replaceWithAlias(o)}}}return e},_getRecordValues:function(e){var t=[];var a=s._oXPath;for(var r=0;r<e.length;++r){var n=a.nextNode(e,r);var o=s.getPropertyValues(n);var i=n.getAttribute("Type");if(i){o["RecordType"]=s.replaceWithAlias(i)}t.push(o)}return t},_getTextValues:function(e){var t=[];var a=s._oXPath;for(var r=0;r<e.length;r+=1){var n=a.nextNode(e,r);var o={};var i=a.getNodeText(n);o[n.nodeName]=s._parserData.aliases?s.replaceWithAlias(i):i;t.push(o)}return t},_getTextValue:function(e){var t=s._oXPath;var a="";if(e.nodeName in r){a=s.replaceWithAlias(t.getNodeText(e))}else{a=t.getNodeText(e)}if(e.nodeName!=="String"){a=a.trim()}return a},getPropertyValue:function(e,a){var r;var i=s._oXPath;var l=e.nodeName==="Collection"?[]:{};if(e.hasChildNodes()){var p=i.selectNodes("./d:Record",e);var u=s._getRecordValues(p);var f=i.selectNodes("./d:Collection/d:Record | ./d:Collection/d:If/d:Record",e);var d=s._getRecordValues(f);var c=u.concat(d);if(c.length>0){if(f.length===0&&p.length>0){l=c[0]}else{l=c}}else{var m=i.selectNodes("./d:Collection/d:AnnotationPath | ./d:Collection/d:NavigationPropertyPath | ./d:Collection/d:PropertyPath",e);if(m.length>0){l=s._getTextValues(m)}else{var h=i.selectNodes('./d:*[not(local-name() = "Annotation")]',e);if(h.length>0){for(r=0;r<h.length;r++){var y=i.nextNode(h,r);var v;var g=y.nodeName;var A=y.parentNode.nodeName;if(g==="Apply"){v=s.getApplyFunctions(y)}else{v=s.getPropertyValue(y)}if(o[A]){if(!Array.isArray(l)){l=[]}var N={};N[g]=v;l.push(N)}else if(g==="Collection"){l=v}else{if(l[g]){t.warning("Annotation contained multiple "+g+" values. Only the last "+"one will be stored: "+i.getPath(y))}l[g]=v}}s.enrichFromPropertyValueAttributes(l,e)}else if(e.nodeName in n){l=s._getTextValue(e)}else{s.enrichFromPropertyValueAttributes(l,e)}}}var P=i.selectNodes("./d:Annotation",e);if(P.length>0){for(r=0;r<P.length;r++){var _=i.nextNode(P,r);s._parseAnnotation(a,_,l)}}}else if(e.nodeName in n){l=s._getTextValue(e)}else if(e.nodeName.toLowerCase()==="null"){l=null}else{s.enrichFromPropertyValueAttributes(l,e)}return l},getPropertyValues:function(t){var a={},r;var n=s._oXPath;var o=n.selectNodes("./d:Annotation",t);var i=n.selectNodes("./d:PropertyValue",t);function l(e,t,a){var r,n=e;while(n.nodeName!=="Annotation"){n=n.parentNode}r=n.parentNode;return t+" '"+a+"' is defined twice; "+"Source = "+s._parserData.url+", Annotation Target = "+r.getAttribute("Target")+", Term = "+n.getAttribute("Term")}if(o.length===0&&i.length===0){a=s.getPropertyValue(t)}else{for(r=0;r<o.length;r++){var p=n.nextNode(o,r);var u=s.replaceWithAlias(p.getAttribute("Term"));e(!a[u],function(){return l(t,"Annotation",u)});a[u]=s.getPropertyValue(p)}for(r=0;r<i.length;r++){var f=n.nextNode(i,r);var d=f.getAttribute("Property");e(!a[d],function(){return l(t,"Property",d)});a[d]=s.getPropertyValue(f);var c=n.selectNodes("./d:Apply",f);for(var m=0;m<c.length;m+=1){var h=n.nextNode(c,m);a[d]={};a[d]["Apply"]=s.getApplyFunctions(h)}}}return a},getApplyFunctions:function(e){var t=s._oXPath;var a={Name:e.getAttribute("Function"),Parameters:[]};var r=t.selectNodes("./d:*",e);for(var n=0;n<r.length;n+=1){var i=t.nextNode(r,n);var l={Type:i.nodeName};if(i.nodeName==="Apply"){l.Value=s.getApplyFunctions(i)}else if(i.nodeName==="LabeledElement"){l.Value=s.getPropertyValue(i);l.Name=l.Value.Name;delete l.Value.Name}else if(o[i.nodeName]){l.Value=s.getPropertyValue(i)}else{l.Value=t.getNodeText(i)}a.Parameters.push(l)}return a},findNavProperty:function(e,t){var a=s._parserData.serviceMetadata;for(var r=a.dataServices.schema.length-1;r>=0;r-=1){var n=a.dataServices.schema[r];if(n.entityType){var o=n.namespace+".";var i=n.entityType;for(var l=i.length-1;l>=0;l-=1){if(o+i[l].name===e&&i[l].navigationProperty){for(var p=0;p<i[l].navigationProperty.length;p+=1){if(i[l].navigationProperty[p].name===t){return i[l].navigationProperty[p]}}}}}}return null},replaceWithAlias:function(e){s._parserData.aliasesByLength.some(function(t){if(e.includes(t+".")&&!e.includes("."+t+".")){e=e.replace(t+".",s._parserData.aliases[t]+".");return true}return false});return e},getXPath:function(){var e={};var a=s._parserData;e={setNameSpace:function(e){return e},nsResolver:function(e){var t={edmx:"http://docs.oasis-open.org/odata/ns/edmx",d:"http://docs.oasis-open.org/odata/ns/edm"};return t[e]||null},selectNodes:function(e,t){var r=a.xmlDocument.evaluate(e,t,this.nsResolver,7,null);r.length=r.snapshotLength;return r},nextNode:function(e,t){return e.snapshotItem(t)},getNodeText:function(e){return e.textContent}};e.getPath=function(a){var r="";var n="getAttribute"in a?a.getAttribute("id"):"";var o=a.tagName?a.tagName:"";if(n){r='id("'+n+'")'}else if(a instanceof Document){r="/"}else if(o.toLowerCase()==="body"){r=o}else if(a.parentNode){var i=1;for(var s=0;s<a.parentNode.childNodes.length;++s){if(a.parentNode.childNodes[s]===a){r=e.getPath(a.parentNode)+"/"+o+"["+i+"]";break}else if(a.parentNode.childNodes[s].nodeType===1&&a.parentNode.childNodes[s].tagName===o){++i}}}else{t.error("Wrong Input node - cannot find XPath to it: "+o)}return r};return e}};return s});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/CountMode", function(){"use strict";var e={Request:"Request",Inline:"Inline",InlineRepeat:"InlineRepeat",Both:"Both",None:"None"};return e},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/Filter", ["sap/ui/base/Object","sap/ui/model/Filter"],function(e,t){"use strict";var a=e.extend("sap.ui.model.odata.Filter",{constructor:function(e,t,a){if(typeof e==="object"){var s=e;e=s.path;t=s.values;a=s.and}this.sPath=e;this.aValues=t;this.bAND=a==undefined?true:a},convert:function(){var e=[];for(var a=0,s=this.aValues&&this.aValues.length||0;a<s;a++){e.push(new t({path:this.sPath,operator:this.aValues[a].operator,value1:this.aValues[a].value1,value2:this.aValues[a].value2}))}if(e.length>1){var u=new t({filters:e,and:this.bAND});return u}else{return e[0]}}});return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/MessageScope", function(){"use strict";var e={RequestedObjects:"RequestedObjects",BusinessObject:"BusinessObject"};return e},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/ODataAnnotations", ["./AnnotationParser","sap/base/assert","sap/base/Log","sap/base/i18n/Localization","sap/base/util/extend","sap/base/util/isEmptyObject","sap/ui/base/EventProvider","sap/ui/thirdparty/jquery"],function(t,e,a,o,s,n,r,jQuery){"use strict";var i=r.extend("sap.ui.model.odata.ODataAnnotations",{constructor:function(t){r.apply(this,arguments);if(arguments.length!==1){if(typeof arguments[2]==="object"){t=arguments[2]}t.urls=arguments[0];t.metadata=arguments[1]}this.oMetadata=t.metadata;this.oAnnotations=t.annotationData?t.annotationData:{};this.bLoaded=false;this.bAsync=t&&t.async;this.xPath=null;this.oError=null;this.bValidXML=true;this.oRequestHandles=[];this.oLoadEvent=null;this.oFailedEvent=null;this.mCustomHeaders=t.headers?s({},t.headers):{};if(t.urls){this.addUrl(t.urls);if(!this.bAsync){e(!n(this.oMetadata),"Metadata must be available for synchronous annotation loading");if(this.oError){a.error("OData annotations could not be loaded: "+this.oError.message)}}}},metadata:{publicMethods:["parse","getAnnotationsData","attachFailed","detachFailed","attachLoaded","detachLoaded"]}});i.prototype.getData=function(){return this.oAnnotations};i.prototype.getAnnotationsData=i.prototype.getData;i.prototype.isLoaded=function(){return this.bLoaded};i.prototype.isFailed=function(){return this.oError!==null};i.prototype.fireLoaded=function(t){this.fireEvent("loaded",t);return this};i.prototype.attachLoaded=function(t,e,a){this.attachEvent("loaded",t,e,a);return this};i.prototype.detachLoaded=function(t,e){this.detachEvent("loaded",t,e);return this};i.prototype.fireFailed=function(t){this.fireEvent("failed",t);return this};i.prototype.attachFailed=function(t,e,a){this.attachEvent("failed",t,e,a);return this};i.prototype.detachFailed=function(t,e){this.detachEvent("failed",t,e);return this};i.prototype.setHeaders=function(t){this.mCustomHeaders=s({},t)};i.prototype._createXMLDocument=function(t,e){var a=null;if(typeof t==="string"){e=t;t=null}if(t){a=t}else{a=(new DOMParser).parseFromString(e,"application/xml")}return a};i.prototype._documentHasErrors=function(t){return t.getElementsByTagName("parsererror").length>0};i.prototype._mergeAnnotationData=function(e,a){if(!this.oAnnotations){this.oAnnotations={}}t.merge(this.oAnnotations,e);this.bLoaded=true;if(!a){this.fireLoaded({annotations:e})}};i.prototype.setXML=function(e,a,o){var r={success:function(){},error:function(){},fireEvents:false};o=s({},r,o);var i=this._createXMLDocument(e,a);var u=function(e){var a={xmlDoc:e};var s=t.parse(this.oMetadata,e);if(s){a.annotations=s;o.success(a);this._mergeAnnotationData(s,!o.fireEvents)}else{o.error(a);if(o.fireEvents){this.fireFailed(a)}}}.bind(this,i);if(this._documentHasErrors(i)){o.error({xmlDoc:i});return false}else{var l=this.oMetadata.getServiceMetadata();if(!l||n(l)){this.oMetadata.attachLoaded(u)}else{u()}return true}};i.prototype.addUrl=function(t){var e=this;var a=t;if(Array.isArray(t)&&t.length==0){return Promise.resolve({annotations:this.oAnnotations})}if(!Array.isArray(t)){a=[t]}return new Promise(function(t,o){var s=0;var n={annotations:null,success:[],fail:[]};var r=function(r){s++;if(r.type==="success"){n.success.push(r)}else{n.fail.push(r)}if(s===a.length){n.annotations=e.oAnnotations;if(n.success.length>0){var i={annotations:e.oAnnotations,results:n};e.fireLoaded(i)}if(n.success.length<a.length){var u=new Error("At least one annotation failed to load/parse/merge");u.annotations=n.annotations;u.success=n.success;u.fail=n.fail;o(u)}else{t(n)}}};var i=0;if(e.bAsync){var u=Promise.resolve();for(i=0;i<a.length;++i){var l=e._loadFromUrl.bind(e,a[i]);u=u.then(l,l).then(r,r)}}else{for(i=0;i<a.length;++i){e._loadFromUrl(a[i]).then(r,r)}}})};i.prototype._loadFromUrl=function(t){var e=this;return new Promise(function(a,n){var r={url:t,async:e.bAsync,headers:s({},e.mCustomHeaders,{"Accept-Language":o.getLanguageTag().toString()})};var i;var u=function(a,o){if(i&&i.bSuppressErrorHandlerCall){return}e.oError={type:"fail",url:t,message:o,statusCode:a.status,statusText:a.statusText,responseText:a.responseText};if(e.bAsync){e.oFailedEvent=setTimeout(e.fireFailed.bind(e,e.oError),0)}else{e.fireFailed(e.oError)}n(e.oError)};var l=function(o,s,n){e.setXML(n.responseXML,n.responseText,{success:function(e){a({type:"success",url:t,message:s,statusCode:n.status,statusText:n.statusText,responseText:n.responseText})},error:function(t){u(n,"Malformed XML document")},url:t})};jQuery.ajax(r).done(l).fail(u)})};i.prototype.destroy=function(){for(var t=0;t<this.oRequestHandles.length;++t){if(this.oRequestHandles[t]){this.oRequestHandles[t].bSuppressErrorHandlerCall=true;this.oRequestHandles[t].abort();this.oRequestHandles[t]=null}}r.prototype.destroy.apply(this,arguments);if(this.oLoadEvent){clearTimeout(this.oLoadEvent)}if(this.oFailedEvent){clearTimeout(this.oFailedEvent)}};return i});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/ODataContextBinding", ["sap/ui/model/ContextBinding","sap/ui/model/ChangeReason"],function(t,e){"use strict";var i=t.extend("sap.ui.model.odata.ODataContextBinding",{constructor:function(e,i,o,s,n){t.call(this,e,i,o,s,n)}});i.prototype.initialize=function(){var t=this,i=this.oModel.resolve(this.sPath,this.oContext),o=this.oModel._getObject(this.sPath,this.oContext),s=this.oModel._isReloadNeeded(i,o,this.mParameters);if(this.oModel.oMetadata.isLoaded()){if(i&&s){this.fireDataRequested()}this.oModel.createBindingContext(this.sPath,this.oContext,this.mParameters,function(o){t.oElementContext=o;t._fireChange({reason:e.Context});if(i&&s){t.fireDataReceived()}},s)}};i.prototype.refresh=function(t,i){var o=this,s,n,a=false,h=this.oModel.resolve(this.sPath,this.oContext);if(i){n=this.oModel._getObject(this.sPath,this.oContext);if(n){s=this.oModel._getKey(n);if(s in i){a=true}}}else{a=true}if(t||a){if(h){this.fireDataRequested()}this.oModel.createBindingContext(this.sPath,this.oContext,this.mParameters,function(i){if(o.oElementContext===i){if(t){o._fireChange({reason:e.Context})}}else{o.oElementContext=i;o._fireChange({reason:e.Context})}if(h){o.fireDataReceived()}},true)}};i.prototype.setContext=function(t){var i=this,o,s,n;if(this.oContext!==t&&this.isRelative()){this.oContext=t;o=this.oModel.resolve(this.sPath,this.oContext);s=this.oModel._getObject(this.sPath,this.oContext);n=this.oModel._isReloadNeeded(o,s,this.mParameters);if(o&&n){this.fireDataRequested()}this.oModel.createBindingContext(this.sPath,this.oContext,this.mParameters,function(t){i.oElementContext=t;i._fireChange({reason:e.Context});if(o&&n){i.fireDataReceived()}},n)}};return i});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/ODataExpressionAddons", ["sap/ui/model/odata/ODataUtils","sap/ui/model/odata/v4/ODataUtils","sap/ui/thirdparty/URITemplate"],function(){"use strict"});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/ODataListBinding", ["./CountMode","./ODataUtils","sap/base/assert","sap/base/Log","sap/base/util/deepEqual","sap/base/util/each","sap/base/util/merge","sap/base/util/array/diff","sap/ui/model/ChangeReason","sap/ui/model/Filter","sap/ui/model/FilterProcessor","sap/ui/model/FilterType","sap/ui/model/ListBinding","sap/ui/model/Sorter","sap/ui/model/odata/Filter"],function(t,e,i,s,a,n,r,h,o,l,u,f,d,p,g){"use strict";var c=d.extend("sap.ui.model.odata.ODataListBinding",{constructor:function(t,e,i,s,a,n){d.apply(this,arguments);this.sFilterParams=null;this.sSortParams=null;this.sRangeParams=null;this.sCustomParams=this.oModel.createCustomParams(this.mParameters);this.iStartIndex=0;this.bPendingChange=false;this.aKeys=[];this.bInitial=true;this.sCountMode=n&&n.countMode||this.oModel.sDefaultCountMode;this.bRefresh=false;this.bNeedsUpdate=false;this.bDataAvailable=false;this.bIgnoreSuspend=false;this.oCombinedFilter=null;this.oModel.checkFilter(this.aApplicationFilters);if(!this.oModel.getServiceMetadata()){var r=this,h=function(t){r.bInitial=false;r._initSortersFilters();r.oModel.detachMetadataLoaded(h)};this.oModel.attachMetadataLoaded(this,h)}else{this.bInitial=false;this._initSortersFilters()}var o=this.oModel._getObject(this.sPath,this.oContext);this.aExpandRefs=o;if(Array.isArray(o)&&!s&&!a){this.aKeys=o;this.iLength=o.length;this.bLengthFinal=true;this.bDataAvailable=true}else if(o===null&&this.oModel.resolve(this.sPath,this.oContext)){this.aKeys=[];this.iLength=0;this.bLengthFinal=true;this.bDataAvailable=true}else if(this.oModel.getServiceMetadata()){this.resetData()}}});c.prototype.getAllCurrentContexts=function(){var t=[],e=this;this.aKeys.forEach(function(i){t.push(e.oModel.getContext("/"+i))});return t};c.prototype.getContexts=function(t,e,i){if(this.bInitial){return[]}this.iLastLength=e;this.iLastStartIndex=t;this.iLastThreshold=i;if(!t){t=0}if(!e){e=this.oModel.iSizeLimit;if(this.bLengthFinal&&this.iLength<e){e=this.iLength}}if(!i){i=0}var s=true,n=this._getContexts(t,e),o={},l;l=this.calculateSection(t,e,i,n);s=n.length!=e&&!(this.bLengthFinal&&n.length>=this.iLength-t);if(this.oModel.getServiceMetadata()){if(!this.bPendingRequest&&l.length>0&&(s||e<l.length)){this.loadData(l.startIndex,l.length);n.dataRequested=true}}if(this.bRefresh){if(this.bLengthFinal&&this.iLength==0){this.loadData(l.startIndex,l.length,true);n.dataRequested=true}this.bRefresh=false}else{for(var u=0;u<n.length;u++){o[n[u].getPath()]=n[u].getObject()}if(this.bUseExtendedChangeDetection){if(this.aLastContexts&&t<this.iLastEndIndex){var f=this;var d=h(this.aLastContexts,n,function(t,e){return a(t&&f.oLastContextData&&f.oLastContextData[t.getPath()],e&&o&&o[e.getPath()])});n.diff=d}}this.iLastEndIndex=t+e;this.aLastContexts=n.slice(0);this.oLastContextData=r({},o)}return n};c.prototype.getCurrentContexts=function(){return this.aLastContexts||[]};c.prototype._getContexts=function(t,e){var i=[],s,a;if(!t){t=0}if(!e){e=this.oModel.iSizeLimit;if(this.bLengthFinal&&this.iLength<e){e=this.iLength}}for(var n=t;n<t+e;n++){a=this.aKeys[n];if(!a){break}s=this.oModel.getContext("/"+a);i.push(s)}return i};c.prototype.calculateSection=function(t,e,i,s){var a,n,r,h,o,l={},u;n=t;a=0;for(var f=t;f>=Math.max(t-i,0);f--){u=this.aKeys[f];if(!u){h=f+1;break}}for(var d=t+e;d<t+e+i;d++){u=this.aKeys[d];if(!u){r=d;break}}o=t-h;if(h&&t>i&&o<i){if(s.length!=e){n=t-i}else{n=h-i}a=i}n=Math.max(n,0);if(n==t){n+=s.length}if(s.length!=e){a+=e-s.length}o=r-t-e;if(o==0){a+=i}if(r&&o<i&&o>0){if(n>t){n=r;a+=i}}if(this.bLengthFinal&&this.iLength<a+n){a=this.iLength-n}l.startIndex=n;l.length=a;return l};c.prototype.setContext=function(t){if(this.oContext!=t){this.oContext=t;if(this.isRelative()){this._initSortersFilters();if(!this.bInitial){var e=this.oModel._getObject(this.sPath,this.oContext);this.aExpandRefs=e;if(Array.isArray(e)&&!this.aSorters.length>0&&!this.aFilters.length>0){this.aKeys=e;this.iLength=e.length;this.bLengthFinal=true;this._fireChange({reason:o.Context})}else if(!this.oModel.resolve(this.sPath,this.oContext)||e===null){this.aKeys=[];this.iLength=0;this.bLengthFinal=true;this._fireChange({reason:o.Context})}else{this.refresh()}}}}};c.prototype.getDownloadUrl=function(t){var e=[],i;if(t){e.push("$format="+encodeURIComponent(t))}if(this.sSortParams){e.push(this.sSortParams)}if(this.sFilterParams){e.push(this.sFilterParams)}if(this.sCustomParams){e.push(this.sCustomParams)}i=this.oModel.resolve(this.sPath,this.oContext);return i&&this.oModel._createRequestUrl(i,null,e)};c.prototype.loadData=function(e,i,s){var a=this,r=false;if(e||i){this.sRangeParams="$skip="+e+"&$top="+i;this.iStartIndex=e}else{e=this.iStartIndex}var h=[];if(this.sRangeParams){h.push(this.sRangeParams)}if(this.sSortParams){h.push(this.sSortParams)}if(this.sFilterParams){h.push(this.sFilterParams)}if(this.sCustomParams){h.push(this.sCustomParams)}if(!this.bLengthFinal&&(this.sCountMode==t.Inline||this.sCountMode==t.Both)){h.push("$inlinecount=allpages");r=true}function l(t){n(t.results,function(t,i){a.aKeys[e+t]=a.oModel._getKey(i)});if(r&&t.__count){a.iLength=parseInt(t.__count);a.bLengthFinal=true}if(a.iLength<e+t.results.length){a.iLength=e+t.results.length;a.bLengthFinal=false}if(t.results.length<i||i===undefined){a.iLength=e+t.results.length;a.bLengthFinal=true}if(e==0&&t.results.length==0){a.iLength=0;a.bLengthFinal=true}a.oRequestHandle=null;a.bPendingRequest=false;a.bNeedsUpdate=true;a.bIgnoreSuspend=true}function u(t){a.fireDataReceived({data:t})}function f(t,e){a.oRequestHandle=null;a.bPendingRequest=false;if(!e){a.aKeys=[];a.iLength=0;a.bLengthFinal=true;a.bDataAvailable=true;a._fireChange({reason:o.Change})}a.fireDataReceived()}function d(t){a.oRequestHandle=t}var p=this.sPath,g=this.oContext;if(this.isRelative()){p=this.oModel.resolve(p,g)}if(p){if(s){var c=this.oModel._createRequestUrl(p,null,h);this.fireDataRequested();this.oModel.fireRequestSent({url:c,method:"GET",async:true});setTimeout(function(){a.bNeedsUpdate=true;a.checkUpdate();a.oModel.fireRequestCompleted({url:c,method:"GET",async:true,success:true});a.fireDataReceived({data:{}})},0)}else{this.bPendingRequest=true;this.fireDataRequested();this.oModel._loadData(p,h,l,f,false,d,u)}}};c.prototype.getLength=function(){if(this.bLengthFinal||this.iLength==0){return this.iLength}else{var t=this.iLastThreshold||this.iLastLength||10;return this.iLength+t}};c.prototype.isLengthFinal=function(){return this.bLengthFinal};c.prototype._getLength=function(){var t=this;var e=[];if(this.sFilterParams){e.push(this.sFilterParams)}if(this.mParameters&&this.mParameters.custom){var i={custom:{}};n(this.mParameters.custom,function(t,e){i.custom[t]=e});e.push(this.oModel.createCustomParams(i))}function a(e){t.iLength=parseInt(e);t.bLengthFinal=true}function r(t){var e="Request for $count failed: "+t.message;if(t.response){e+=", "+t.response.statusCode+", "+t.response.statusText+", "+t.response.body}s.warning(e)}var h=this.oModel.resolve(this.sPath,this.oContext);if(h){var o=this.oModel._createRequestUrl(h+"/$count",null,e);var l=this.oModel._createRequest(o,"GET",false);l.headers["Accept"]="text/plain, */*;q=0.5";this.oModel._request(l,a,r,undefined,undefined,this.oModel.getServiceMetadata())}};c.prototype.refresh=function(t,e,i){var s=false;if(!t){if(i){var a=this.oModel.resolve(this.sPath,this.oContext);var r=this.oModel.oMetadata._getEntityTypeByPath(a);if(r&&r.entityType in i){s=true}}if(e&&!s){n(this.aKeys,function(t,i){if(i in e){s=true;return false}return true})}if(!e&&!i){s=true}}if(t||s){this.abortPendingRequest();this.resetData();this._fireRefresh({reason:o.Refresh})}};c.prototype._fireRefresh=function(t){if(this.oModel.resolve(this.sPath,this.oContext)){this.bRefresh=true;this.fireEvent("refresh",t)}};c.prototype.initialize=function(){if(this.oModel.oMetadata.isLoaded()){if(this.bDataAvailable){this._fireChange({reason:o.Change})}else{this._fireRefresh({reason:o.Refresh})}}};c.prototype.checkUpdate=function(t,e){var i=this.sChangeReason?this.sChangeReason:o.Change,s=false,r,h,l=this,u,f;if(this.bSuspended&&!this.bIgnoreSuspend){return}if(!t&&!this.bNeedsUpdate){u=this.oModel._getObject(this.sPath,this.oContext);f=Array.isArray(u)&&!a(u,this.aExpandRefs);this.aExpandRefs=u;if(f){if(this.aSorters.length>0||this.aFilters.length>0){this.refresh();return}else{this.aKeys=u;this.iLength=u.length;this.bLengthFinal=true;s=true}}else if(e){n(this.aKeys,function(t,i){if(i in e){s=true;return false}return true})}else{s=true}if(s&&this.aLastContexts){s=false;var d=this._getContexts(this.iLastStartIndex,this.iLastLength,this.iLastThreshold);if(this.aLastContexts.length!=d.length){s=true}else{n(this.aLastContexts,function(t,e){r=l.oLastContextData[e.getPath()];h=d[t].getObject();if(!a(r,h,true)){s=true;return false}return true})}}}if(t||s||this.bNeedsUpdate){this.bNeedsUpdate=false;this._fireChange({reason:i})}this.sChangeReason=undefined;this.bIgnoreSuspend=false};c.prototype.resetData=function(){this.aKeys=[];this.iLength=0;this.bLengthFinal=false;this.sChangeReason=undefined;this.bDataAvailable=false;if(this.oModel.isCountSupported()&&(this.sCountMode==t.Request||this.sCountMode==t.Both)){this._getLength()}};c.prototype.abortPendingRequest=function(){if(this.oRequestHandle){this.oRequestHandle.abort();this.oRequestHandle=null;this.bPendingRequest=false}};c.prototype.sort=function(t,e){var i=false;if(!t){t=[]}if(t instanceof p){t=[t]}this.aSorters=t;this.createSortParams(t);if(!this.bInitial){this.aKeys=[];this.abortPendingRequest();this.sChangeReason=o.Sort;this._fireRefresh({reason:this.sChangeReason});this._fireSort({sorter:t});i=true}if(e){return i}else{return this}};c.prototype.createSortParams=function(t){this.sSortParams=e.createSortParams(t)};c.prototype.filter=function(t,e,i){var s=false;if(!t){t=[]}if(t instanceof l){t=[t]}this.oModel.checkFilter(t);if(e==f.Application){this.aApplicationFilters=t}else{this.aFilters=t}if(!t||!Array.isArray(t)||t.length==0){this.aFilters=[]}if(!this.aApplicationFilters||!Array.isArray(this.aApplicationFilters)||this.aApplicationFilters.length===0){this.aApplicationFilters=[]}this.convertFilters();this.oCombinedFilter=u.combineFilters(this.aFilters,this.aApplicationFilters);this.createFilterParams(this.oCombinedFilter);if(!this.bInitial){this.resetData();this.abortPendingRequest();this.sChangeReason=o.Filter;this._fireRefresh({reason:this.sChangeReason});if(e==f.Application){this._fireFilter({filters:this.aApplicationFilters})}else{this._fireFilter({filters:this.aFilters})}s=true}if(i){return s}else{return this}};c.prototype.convertFilters=function(){this.aFilters=this.aFilters.map(function(t){return t instanceof g?t.convert():t});this.aApplicationFilters=this.aApplicationFilters.map(function(t){return t instanceof g?t.convert():t})};c.prototype.createFilterParams=function(t){this.sFilterParams=e.createFilterParams(t,this.oModel.oMetadata,this.oEntityType)};c.prototype._initSortersFilters=function(){var t=this.oModel.resolve(this.sPath,this.oContext);if(!t){return}this.oEntityType=this._getEntityType();this.convertFilters();this.oCombinedFilter=u.combineFilters(this.aFilters,this.aApplicationFilters);this.createSortParams(this.aSorters);this.createFilterParams(this.oCombinedFilter)};c.prototype._getEntityType=function(){var t=this.oModel.resolve(this.sPath,this.oContext);if(t){var e=this.oModel.oMetadata._getEntityTypeByPath(t);i(e,"EntityType for path "+t+" could not be found!");return e}return undefined};c.prototype.resume=function(){this.bIgnoreSuspend=false;d.prototype.resume.apply(this,arguments)};return c});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/ODataMessageParser", ["sap/ui/core/Lib","sap/ui/model/odata/ODataMetadata","sap/ui/model/odata/ODataUtils","sap/ui/thirdparty/URI","sap/ui/core/Messaging","sap/ui/core/message/MessageParser","sap/ui/core/message/Message","sap/ui/core/message/MessageType","sap/base/Log"],function(e,r,t,s,a,i,n,o,u){"use strict";var d="sap.ui.model.odata.ODataMessageParser",c=/^\/+|\/$/g,l={error:o.Error,info:o.Information,success:o.Success,warning:o.Warning};var h=i.extend("sap.ui.model.odata.ODataMessageParser",{metadata:{publicMethods:["parse","setProcessor","getHeaderField","setHeaderField"]},constructor:function(e,r,t){i.apply(this);this._serviceUrl=g(this._parseUrl(e).url);this._metadata=r;this._headerField="sap-message";this._lastMessages=[];this._bPersistTechnicalMessages=t}});h.prototype.getHeaderField=function(){return this._headerField};h.prototype.setHeaderField=function(e){this._headerField=e;return this};h.prototype.parse=function(e,r,t,s,a){var i,n,o=String(e.statusCode);if(r.method==="GET"&&o==="204"){return}n={request:r,response:e,url:r.requestUri};if(e.statusCode>=200&&e.statusCode<300){i=this._parseHeader(e,n)}else if(e.statusCode>=400&&e.statusCode<600){try{i=this._parseBody(e,n)}catch(e){i=this._createGenericError(n);u.debug("Failed to parse error messages from the response body",e,d)}finally{this._logErrorMessages(i,r,o)}}else{i=this._createGenericError(n);u.error("Request failed with unsupported status code "+o+": "+r.method+" "+r.requestUri,undefined,d)}if(r.method==="GET"&&o==="424"){return}this._propagateMessages(i,n,t,s,!a)};h.prototype._getAffectedTargets=function(e,r,t,s){var a=Object.assign({"":true},t,s),i,n=this._parseUrl(r.url).url;if(r.request.key&&r.request.created){a[r.request.key]=true}if(n.startsWith(this._serviceUrl)){n=n.slice(this._serviceUrl.length+1)}i=this._metadata._getEntitySetByPath(n);if(i){a[i.name]=true}e.forEach(function(e){e.getTargets().forEach(function(e){var r,t,s;if(!e){return}s=e.replace(c,"");a[s]=true;t=s.lastIndexOf("/");if(t>0){r=s.slice(0,t);a[r]=true}})});return a};h.prototype._propagateMessages=function(e,t,s,i,n){var o,l=t.request.deepPath,h=[],p,f=l&&t.request.updateAggregatedMessages,g=t.request.headers&&t.request.headers["sap-messages"]==="transientOnly",y=[],_=r._returnsCollection(t.request.functionMetadata),m,v,M;function T(e,r){return r.some(function(e){return o[e]})||f&&e.aFullTargets.some(function(e){if(_){return p.some(function(r){var t=r.slice(r.indexOf("("));return e.startsWith(l+t)})}else{return e.startsWith(l)}})}s=s||{};if(g){h=this._lastMessages;m=e.some(function(e){return!e.getPersistent()&&!e.getTechnical()});if(m){u.error("Unexpected non-persistent message in response, but requested only "+"transition messages",undefined,d)}}else{o=this._getAffectedTargets(e,t,s,i);p=Object.keys(s);v=t.response.statusCode;M=v>=200&&v<300;this._lastMessages.forEach(function(e){var r=e.getTargets().map(function(e){e=e.replace(c,"");var r=e.lastIndexOf(")/");if(r>0){e=e.substr(0,r+1)}return e});if(M||n){if(!e.getPersistent()&&T(e,r)){y.push(e)}else{h.push(e)}}else if(!e.getPersistent()&&e.getTechnical()&&T(e,r)){y.push(e)}else{h.push(e)}})}a.updateMessages(y,e);this._lastMessages=h.concat(e)};h.prototype._createMessage=function(e,r,t){var s=e.target&&e.target.indexOf("/#TRANSIENT#")===0||e.transient||e.transition||t&&this._bPersistTechnicalMessages,a,i=typeof e.message==="object"?e.message.value:e.message,o=e["@sap.severity"]||e.severity;e.transition=!!s;a=this._createTargets(e,r,t);return new n({code:e.code||"",description:e.description,descriptionUrl:e.longtext_url||"",fullTarget:a.aDeepPaths,message:i,persistent:!!s,processor:this._processor,target:a.aTargets,technical:t,technicalDetails:{headers:r.response.headers,statusCode:r.response.statusCode},type:l[o]||o})};h._isResponseForCreate=function(e){var r=e.request,t=e.response;if(r.method==="POST"&&t.statusCode==201&&t.headers["location"]){return true}if(r.key&&r.created&&t.statusCode>=400){return false}return undefined};h.prototype._createTarget=function(e,r,s,a){var i,n,o,u,d,c,l,p,f,g=r.request,y=r.response;if(e===undefined&&(!s&&g.headers["sap-message-scope"]==="BusinessObject"||s&&a)){return{deepPath:"",target:""}}e=e||"";e=e.startsWith("/#TRANSIENT#")?e.slice(12):e;if(e[0]!=="/"){n=h._isResponseForCreate(r);o=g.deepPath||"";if(n===true){f=y.headers["location"]}else if(n===false){f=g.key}else{f=r.url}p=this._parseUrl(f);l=p.url;u=l.indexOf(this._serviceUrl);if(u>-1){c=l.slice(u+this._serviceUrl.length)}else{c="/"+l}if(!n&&g.functionMetadata){c=g.functionTarget}if(c.slice(c.lastIndexOf("/")).indexOf("(")>-1||!this._metadata._isCollection(c)){o=e?o+"/"+e:o;e=e?c+"/"+e:c}else{o=o+e;e=c+e}}i=this._processor.resolve(e,undefined,true);while(i&&i.lastIndexOf("/")>0&&i!==d){d=i;i=this._processor.resolve(i,undefined,true)||d}e=i||e;return{deepPath:t._normalizeKey(this._metadata._getReducedPath(o||e)),target:t._normalizeKey(e)}};h.prototype._createTargets=function(e,r,t){var s=[],a=Array.isArray(e.additionalTargets)?[e.target].concat(e.additionalTargets):[e.target],i,n=[],o=this;if(e.propertyref!==undefined&&a[0]!==undefined){u.warning("Used the message's 'target' property for target calculation; the property"+" 'propertyref' is deprecated and must not be used together with 'target'",r.url,d)}else if(a[0]===undefined){a[0]=e.propertyref}a.forEach(function(a){i=o._createTarget(a,r,t,e.transition);s.push(i.deepPath);n.push(i.target)});return{aDeepPaths:s,aTargets:n}};h.prototype._parseHeader=function(e,r){var t,s,a,i,n=this.getHeaderField(),o=[];if(!e.headers){return o}for(s in e.headers){if(s.toLowerCase()===n.toLowerCase()){n=s}}if(!e.headers[n]){return o}a=e.headers[n];try{i=JSON.parse(a);o.push(this._createMessage(i,r));if(Array.isArray(i.details)){for(t=0;t<i.details.length;t+=1){o.push(this._createMessage(i.details[t],r))}}}catch(e){u.error("The message string returned by the back-end could not be parsed: '"+e.message+"'");return o}return o};h.prototype._parseBody=function(e,r){var t=p(e);return t&&t.indexOf("xml")>-1?this._parseBodyXML(e,r,t):this._parseBodyJSON(e,r)};h.prototype._createGenericError=function(r){return[this._createMessage({description:r.response.body,message:e.getResourceBundleFor("sap.ui.core").getText("CommunicationError"),severity:o.Error,transition:true},r,true)]};h.prototype._getBodyMessages=function(e,r,t){var s=t.request.headers["Content-ID"],a=[],i=this._createMessage(e,t,true),n=this;r.forEach(function(e){var r=n._createMessage(e,t,true);if(i&&i.getCode()===r.getCode()&&i.getMessage()===r.getMessage()){i=undefined}if(!s||!e.ContentID||s===e.ContentID){a.push(r)}});if(i){a.unshift(i)}return a};h.prototype._logErrorMessages=function(e,r,t){var s=e.length?JSON.stringify(e.map(function(e){return{code:e.getCode(),message:e.getMessage(),persistent:e.getPersistent(),targets:e.getTargets(),type:e.getType()}})):"Another request in the same change set failed";u.error("Request failed with status code "+t+": "+r.method+" "+r.requestUri,s,d)};h.prototype._parseBodyXML=function(e,r,t){var s,a,i,n,u,d,c,l=(new DOMParser).parseFromString(e.body,t),h=y(l,["error","errordetail"]),p=[];if(!h.length){return this._createGenericError(r)}for(n=0;n<h.length;n+=1){c=h[n];i={};i.severity=o.Error;for(d=0;d<c.childNodes.length;d+=1){s=c.childNodes[d];a=s.nodeName;if(a==="errordetails"||a==="details"||a==="innererror"||a==="#text"){continue}if(a==="message"&&s.hasChildNodes()&&s.firstChild.nodeType!==window.Node.TEXT_NODE){for(u=0;u<s.childNodes.length;u+=1){if(s.childNodes[u].nodeName==="value"){i.message=s.childNodes[u].text||s.childNodes[u].textContent}}}else{i[s.nodeName]=s.text||s.textContent}}p.push(i)}return this._getBodyMessages(p[0],p.slice(1),r)};h.prototype._parseBodyJSON=function(e,r){var t,s,a=JSON.parse(e.body);if(a.error){s=a.error}else{s=a["odata.error"]}if(!s){u.error("Error message returned by server did not contain error-field");return this._createGenericError(r)}s.severity=o.Error;if(Array.isArray(s.details)){t=s.details}else if(s.innererror&&Array.isArray(s.innererror.errordetails)){t=s.innererror.errordetails}else{t=[]}return this._getBodyMessages(s,t,r)};h.prototype._parseUrl=function(e){var r={url:e,parameters:{},hash:""};var t=-1;t=e.indexOf("#");if(t>-1){r.hash=r.url.substr(t+1);r.url=r.url.substr(0,t)}t=e.indexOf("?");if(t>-1){var a=r.url.substr(t+1);r.parameters=s.parseQuery(a);r.url=r.url.substr(0,t)}return r};h.prototype._setPersistTechnicalMessages=function(e){this._bPersistTechnicalMessages=e};function p(e){if(e&&e.headers){for(var r in e.headers){if(r.toLowerCase()==="content-type"){return e.headers[r].replace(/([^;]*);.*/,"$1")}}}return false}var f=document.createElement("a");function g(e){f.href=e;return s.parse(f.href).path}function y(e,r){var t=[];var s={};for(var a=0;a<r.length;a+=1){s[r[a]]=true}var i=e;while(i){if(s[i.tagName]){t.push(i)}if(i.hasChildNodes()){i=i.firstChild}else{while(!i.nextSibling){i=i.parentNode;if(!i||i===e){i=null;break}}if(i){i=i.nextSibling}}}return t}return h});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/ODataMetaModel", ["./_ODataMetaModelUtils","sap/base/Log","sap/base/i18n/Localization","sap/base/util/isEmptyObject","sap/ui/base/BindingParser","sap/ui/base/ManagedObject","sap/ui/base/SyncPromise","sap/ui/model/_Helper","sap/ui/model/BindingMode","sap/ui/model/ClientContextBinding","sap/ui/model/Context","sap/ui/model/FilterProcessor","sap/ui/model/MetaModel","sap/ui/model/json/JSONListBinding","sap/ui/model/json/JSONModel","sap/ui/model/json/JSONPropertyBinding","sap/ui/model/json/JSONTreeBinding"],function(e,t,n,o,i,r,a,s,d,l,u,c,p,h,f,y,g){"use strict";var m=new Map,C="sap.ui.model.odata.ODataMetaModel",O=/^((\/dataServices\/schema\/\d+)\/(?:complexType|entityType)\/\d+)\/property\/\d+$/;const M=/^(((\/dataServices\/schema\/\d+)\/entityContainer\/\d+)\/functionImport\/\d+)\/parameter\/\d+$/;var v=h.extend("sap.ui.model.odata.ODataMetaListBinding"),b=r.extend("sap.ui.model.odata._resolver",{metadata:{properties:{any:"any"}}});v.prototype.applyFilter=function(){var e=this,t=c.combineFilters(this.aFilters,this.aApplicationFilters);this.aIndices=c.apply(this.aIndices,t,function(t,n){return n==="@sapui.name"?t:e.oModel.getProperty(n,e.oList[t])},this.mNormalizeCache);this.iLength=this.aIndices.length};var S=p.extend("sap.ui.model.odata.ODataMetaModel",{constructor:function(t,n,o){var i=o.annotationsLoaded(),r=this;function l(){var i;if(r.bDestroyed){throw new Error("Meta model already destroyed")}i=JSON.parse(JSON.stringify(t.getServiceMetadata()));r.oModel=new f(i);r.oModel.setDefaultBindingMode(r.sDefaultBindingMode);if(!o._requestAnnotationChanges){e.merge(n?n.getData():{},i,r,o.bIgnoreAnnotationsFromMetadata);return undefined}return o._requestAnnotationChanges().then(t=>{e.merge(n?n.getData():{},i,r,o.bIgnoreAnnotationsFromMetadata);r.aAnnotationChanges=s.deepClone(t,20);r._applyAnnotationChanges()})}p.apply(this);this.oModel=null;this.mContext2Promise={};this.sDefaultBindingMode=d.OneTime;this.oLoadedPromise=i?i.then(l):new Promise(function(e){l();e()});this.oLoadedPromiseSync=a.resolve(this.oLoadedPromise);this.oMetadata=t;this.oDataModel=o;this.mQueryCache={};this.mQName2PendingRequest={};this.oResolver=undefined;this.mSupportedBindingModes={OneTime:true}}});S.prototype._applyAnnotationChanges=function(){if(!this.aAnnotationChanges){return}const e=[];this.aAnnotationChanges.forEach(t=>{const n=this._getObject(t.path,undefined,true);if(n){this.oModel.setProperty(n,t.value)}else{e.push(t)}});this.aAnnotationChanges=e.length?e:undefined};S.prototype._getObject=function(e,n,o){var r=n,a,s,d,l,c,p,h,f=e||"",y;if(!n||n instanceof u){f=this.resolve(e||"",n);if(!f){t.error("Invalid relative path w/o context",e,C);return null}}if(f.charAt(0)==="/"){r=this.oModel._getObject("/");f=f.slice(1)}h="/";c=r;while(f){p=undefined;a=undefined;if(f.charAt(0)==="["){try{y=i.parseExpression(f,1);l=y.at;if(f.length===l+1||f.charAt(l+1)==="/"){a=y.result;p=f.slice(0,l+1);f=f.slice(l+2)}}catch(e){if(!(e instanceof SyntaxError)){throw e}}}if(p===undefined){l=f.indexOf("/");if(l<0){p=f;f=""}else{p=f.slice(0,l);f=f.slice(l+1)}}if(!c){if(o){return null}if(t.isLoggable(t.Level.WARNING,C)){t.warning("Invalid part: "+p,"path: "+e+", context: "+(n instanceof u?n.getPath():n),C)}break}if(a){if(r===n){t.error("A query is not allowed when an object context has been given",e,C);return null}if(!Array.isArray(c)){t.error("Invalid query: '"+h+"' does not point to an array",e,C);return null}s=h+p;p=this.mQueryCache[s];if(p===undefined){this.oResolver=this.oResolver||new b({models:this.oModel});for(d=0;d<c.length;d+=1){this.oResolver.bindObject(h+d);this.oResolver.bindProperty("any",a);try{if(this.oResolver.getAny()){this.mQueryCache[s]=p=d;break}}finally{this.oResolver.unbindProperty("any");this.oResolver.unbindObject()}}}}c=c[p];h=h+p+"/"}return o?h:c};S.prototype._getOrCreateSharedModelCache=function(){var e=this.oDataModel;if(!this.oSharedModelCache){this.oSharedModelCache={bFirstCodeListRequested:false,oModel:new e.constructor(e.getCodeListModelParameters())}}return this.oSharedModelCache};S.prototype._mergeMetadata=function(t){var n=this.getODataEntityContainer(),o=e.getChildAnnotations(t.annotations,n.namespace+"."+n.name,true),i=n.entitySet.length,r=this.oModel.getObject("/dataServices/schema"),a=this;t.entitySets.forEach(function(o){var i,s,d=o.entityType,l=d.slice(0,d.lastIndexOf("."));if(!a.getODataEntitySet(o.name)){n.entitySet.push(JSON.parse(JSON.stringify(o)));if(!a.getODataEntityType(d)){i=a.oMetadata._getEntityTypeByName(d);s=e.getSchema(r,l);s.entityType.push(JSON.parse(JSON.stringify(i)));e.visitParents(s,t.annotations,"entityType",e.visitEntityType,s.entityType.length-1)}}});e.visitChildren(n.entitySet,o,"EntitySet",r,null,i);e.addUnitAnnotations(r,this)};S.prototype._sendBundledRequest=function(){var e=this.mQName2PendingRequest,t=Object.keys(e),n=this;if(!t.length){return}this.mQName2PendingRequest={};t=t.sort();t.forEach(function(e,n){t[n]=encodeURIComponent(e)});this.oDataModel.addAnnotationUrl("$metadata?sap-value-list="+t.join(",")).then(function(t){var o;n._mergeMetadata(t);for(o in e){try{e[o].resolve(t)}catch(t){e[o].reject(t)}}n._applyAnnotationChanges()},function(t){var n;for(n in e){e[n].reject(t)}})};S.prototype.bindContext=function(e,t,n){return new l(this,e,t,n)};S.prototype.bindList=function(e,t,n,o,i){return new v(this,e,t,n,o,i)};S.prototype.bindProperty=function(e,t,n){return new y(this,e,t,n)};S.prototype.bindTree=function(e,t,n,o){return new g(this,e,t,n,o)};S.prototype.destroy=function(){p.prototype.destroy.apply(this,arguments);if(this.oSharedModelCache){this.oSharedModelCache.oModel.destroy();delete this.oSharedModelCache}return this.oModel&&this.oModel.destroy.apply(this.oModel,arguments)};S.cleanupCodeListModelURLParameters=function(e,t){let o=false;e.aUrlParams=e.aUrlParams.join("&").split("&").filter(e=>{if(e.startsWith("sap-language=")){o=true;return true}return e.startsWith("sap-client=")});if(!o){const o=new URL(t,"https://localhost").searchParams;e.aUrlParams.push("sap-language="+(o.get("sap-language")??n.getSAPLogonLanguage()))}};S.prototype.fetchCodeList=function(e){var n=this;return this.oLoadedPromiseSync.then(function(){var o,i,r,s,d,l,u,c,p,h="com.sap.vocabularies.CodeList.v1."+e,f=n.getODataEntityContainer()[h];if(!f||!f.Url.String){return null}if(f.Url.String!=="./$metadata"){throw new Error(h+"/Url/String has to be './$metadata' for the service "+n.oDataModel.getCodeListModelParameters().serviceUrl)}d=f.CollectionPath.String;u=n.oDataModel.getMetadataUrl();o=u+"#"+d;c=m.get(o);if(c){return c}i=o+"#"+n.getId();c=m.get(i);if(c){return c}s=n._getOrCreateSharedModelCache();r=s.oModel;p=new a(function(e,t){S.cleanupCodeListModelURLParameters(r,u);r._read("/"+d,{error:t,success:e,urlParameters:{$skip:0,$top:5e3}},undefined,n.oDataModel._request.bind(n.oDataModel))});l=new a(function(e,t){try{e(n._getPropertyNamesForCodeListCustomizing(d))}catch(e){t(e)}});c=a.all([p,l]).then(function(e){var r=e[0].results,a=e[1];m.set(o,c);m.delete(i);return r.reduce(function(e,o){var i=o[a.code],r={Text:o[a.text],UnitSpecificScale:o[a.unitSpecificScale]};if(a.standardCode){r.StandardCode=o[a.standardCode]}if(r.UnitSpecificScale===null){t.error("Ignoring customizing w/o unit-specific scale for code "+i+" from "+d,n.oDataModel.getCodeListModelParameters().serviceUrl,C)}else{e[i]=r}return e},{})}).catch(function(e){if(r.bDestroyed){m.delete(o);m.delete(i)}else{t.error("Couldn't load code list: "+d+" for "+n.oDataModel.getCodeListModelParameters().serviceUrl,e,C)}throw e}).finally(function(){if(s.bFirstCodeListRequested){if(!r.bDestroyed){r.destroy()}delete n.oSharedModelCache}else{s.bFirstCodeListRequested=true}});m.set(i,c);return c})};S.prototype.getMetaContext=function(e){var t,n,o,i,r,a,s,d,l;function u(e){var t=e.indexOf("(");return t>=0?e.slice(0,t):e}if(!e){return null}d=e.split("/");if(d[0]!==""){throw new Error("Not an absolute path: "+e)}d.shift();s=u(d[0]);n=this.getODataEntitySet(s);if(n){l=n.entityType}else{i=this.getODataFunctionImport(s);if(i){if(d.length===1){r=this.getODataFunctionImport(s,true)}l=i.returnType;if(l.lastIndexOf("Collection(",0)===0){l=l.slice(11,-1)}}else{throw new Error("Entity set or function import not found: "+s)}}d.shift();while(d.length){o=this.getODataEntityType(l);if(o){a=u(d[0]);t=this.getODataAssociationEnd(o,a)}else{o=this.getODataComplexType(l)}if(t){l=t.type;if(t.multiplicity==="1"&&a!==d[0]){throw new Error("Multiplicity is 1: "+d[0])}d.shift()}else{r=this.getODataProperty(o,d,true);if(d.length){throw new Error("Property not found: "+d.join("/"))}break}}r=r||this.getODataEntityType(l,true);return this.createBindingContext(r)};S.prototype.getODataAssociationEnd=function(t,n){var o=t?e.findObject(t.navigationProperty,n):null,i=o?e.getObject(this.oModel,"association",o.relationship):null,r=i?e.findObject(i.end,o.toRole,"role"):null;return r};S.prototype.getODataAssociationSetEnd=function(t,n){var o,i=null,r=this.getODataEntityContainer(),a=t?e.findObject(t.navigationProperty,n):null;if(r&&a){o=e.findObject(r.associationSet,a.relationship,"association");i=o?e.findObject(o.end,a.toRole,"role"):null}return i};S.prototype.getODataComplexType=function(t,n){return e.getObject(this.oModel,"complexType",t,n)};S.prototype.getODataEntityContainer=function(t){var n=t?undefined:null,o=this.oModel.getObject("/dataServices/schema");if(o){o.forEach(function(o,i){var r=e.findIndex(o.entityContainer,"true","isDefaultEntityContainer");if(r>=0){n=t?"/dataServices/schema/"+i+"/entityContainer/"+r:o.entityContainer[r]}});if(!n&&o.length===1&&o[0].entityContainer&&o[0].entityContainer.length===1){n=t?"/dataServices/schema/0/entityContainer/0":o[0].entityContainer[0]}}return n};S.prototype.getODataEntitySet=function(t,n){return e.getFromContainer(this.getODataEntityContainer(),"entitySet",t,n)};S.prototype.getODataEntityType=function(t,n){return e.getObject(this.oModel,"entityType",t,n)};S.prototype.getODataFunctionImport=function(t,n){var o=t&&t.indexOf("/")>=0?t.split("/"):undefined,i=o?e.getObject(this.oModel,"entityContainer",o[0]):this.getODataEntityContainer();return e.getFromContainer(i,"functionImport",o?o[1]:t,n)};S.prototype.getFunctionImportParameterContext=function(t,n){const o=this.getODataFunctionImport(t,true);if(!o){throw new Error(`Function import "${t}" not found`)}const i=this.getObject(o);const r=e.findIndex(i.parameter,n);if(r<0){throw new Error(`Parameter "${n}" not found for function import "${t}"`)}return this.createBindingContext(o+"/parameter/"+r)};S.prototype.getODataProperty=function(t,n,o){var i,r=Array.isArray(n)?n:[n],a=null,s;while(t&&r.length){i=e.findIndex(t.property,r[0]);if(i<0){break}r.shift();a=t.property[i];s=t.$path+"/property/"+i;if(r.length){t=this.getODataComplexType(a.type)}}return o?s:a};S.prototype.getODataValueLists=function(t){var n=false,i,r=t.getPath(),a=this.mContext2Promise[r],s=this;if(a){return a}let d=false;i=O.exec(r);if(!i){i=M.exec(r);d=true}if(!i){throw new Error(`"${r}" neither references a property nor a function import parameter`)}a=new Promise(function(a,l){var u=t.getObject(),c=e.getValueLists(u);const p=""in c&&s.getODataEntitySet(c[""].CollectionPath.String);if(!p&&u["sap:value-list"]){n=true;const t=s.oModel.getObject(i[i.length-1]).namespace+"."+s.oModel.getObject(i[i.length-2]).name;const p=(d?s.oModel.getObject(i[1]).name+"/":"")+u.name;s.mQName2PendingRequest[t+"/"+p]={resolve:function(n){const i=n.annotations[d?"EntityContainer":"propertyAnnotations"]?.[t]?.[p]||{};Object.keys(i).forEach(e=>{if(!u.hasOwnProperty(e)){u[e]=i[e]}});c=e.getValueLists(u);if(o(c)){l(new Error("No value lists returned for "+r))}else{delete s.mContext2Promise[r];a(c)}},reject:l};setTimeout(s._sendBundledRequest.bind(s),0)}else{a(c)}});if(n){this.mContext2Promise[r]=a}return a};S.prototype.getProperty=function(){return this._getObject.apply(this,arguments)};S.prototype.isList=function(){return this.oModel.isList.apply(this.oModel,arguments)};S.prototype.loaded=function(){return this.oLoadedPromise};S.prototype.refresh=function(){throw new Error("Unsupported operation: ODataMetaModel#refresh")};S.prototype.requestCurrencyCodes=function(){return Promise.resolve(this.fetchCodeList("CurrencyCodes")).then(function(e){return e?s.merge({},e):e})};S.prototype.requestUnitsOfMeasure=function(){return Promise.resolve(this.fetchCodeList("UnitsOfMeasure")).then(function(e){return e?s.merge({},e):e})};S.prototype.setLegacySyntax=function(e){if(e){throw new Error("Legacy syntax not supported by ODataMetaModel")}};S.prototype.setProperty=function(){throw new Error("Unsupported operation: ODataMetaModel#setProperty")};S.prototype._getPropertyNamesForCodeListCustomizing=function(e){var t="/"+e+"/##",n=this.oDataModel.getObject(t),o=n["Org.OData.Core.V1.AlternateKeys"],i=S._getKeyPath(n,t),r=this.oDataModel.getObject("/"+e+"/"+i+"/##");if(o){if(o.length!==1){throw new Error("Single alternative expected: "+t+"Org.OData.Core.V1.AlternateKeys")}else if(o[0].Key.length!==1){throw new Error("Single key expected: "+t+"Org.OData.Core.V1.AlternateKeys/0/Key")}i=o[0].Key[0].Name.Path}return{code:i,standardCode:r["com.sap.vocabularies.CodeList.v1.StandardCode"]&&r["com.sap.vocabularies.CodeList.v1.StandardCode"].Path,text:r["com.sap.vocabularies.Common.v1.Text"].Path,unitSpecificScale:r["com.sap.vocabularies.Common.v1.UnitSpecificScale"].Path}};S._getKeyPath=function(e,t){var n=e.key.propertyRef;if(n&&n.length===1){return n[0].name}throw new Error("Single key expected: "+t)};S.getCodeListTerm=function(e){if(e==="/##@@requestCurrencyCodes"){return"CurrencyCodes"}else if(e==="/##@@requestUnitsOfMeasure"){return"UnitsOfMeasure"}return undefined};S.clearCodeListsCache=function(){m.clear()};return S});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/ODataMetadata", ["./_ODataMetaModelUtils","./AnnotationParser","sap/base/assert","sap/base/Log","sap/base/i18n/Localization","sap/base/util/each","sap/base/util/extend","sap/base/util/isEmptyObject","sap/base/util/uid","sap/ui/base/EventProvider","sap/ui/core/cache/CacheManager","sap/ui/thirdparty/datajs"],function(t,e,n,i,a,r,s,o,p,f,u,y){"use strict";var d="sap.ui.model.odata.ODataMetadata",c="http://www.sap.com/Protocols/SAPData";var h=f.extend("sap.ui.model.odata.ODataMetadata",{constructor:function(t,e){f.apply(this,arguments);this.bLoaded=false;this.bFailed=false;this.mEntityTypes={};this.mRequestHandles={};this.sUrl=t;this.bAsync=e.async;this.sUser=e.user;this.bWithCredentials=e.withCredentials;this.sPassword=e.password;this.mHeaders=e.headers;this.sCacheKey=e.cacheKey;this.sMetadata=e.metadata;this.oLoadEvent=null;this.oFailedEvent=null;this.oMetadata=null;this.bMessageScopeSupported=false;this.mNamespaces=e.namespaces||{sap:"http://www.sap.com/Protocols/SAPData",m:"http://schemas.microsoft.com/ado/2007/08/dataservices/metadata","":"http://schemas.microsoft.com/ado/2007/06/edmx"};var n=this;this.pLoadedWithReject=new Promise(function(t,e){n.fnResolve=t;n.fnReject=e});this.pLoaded=this.pLoadedWithReject.catch(function(t){return new Promise(function(t,e){n.fnResolve=t})});function a(t){u.set(n.sCacheKey,JSON.stringify({metadata:n.oMetadata,params:t}))}function r(t){i.error("[ODataMetadata] initial loading of metadata failed");if(t&&t.message){i.error("Error: "+t.message)}}if(this.sCacheKey){u.get(this.sCacheKey).then(function(t){if(t){var e=JSON.parse(t);this.oMetadata=e.metadata;this._handleLoaded(this.oMetadata,e.params,false)}else{this._loadMetadata().then(a).catch(r)}}.bind(this)).catch(r)}else{this._loadMetadata().catch(r)}},metadata:{publicMethods:["getServiceMetadata","attachFailed","detachFailed","attachLoaded","detachLoaded","refresh"]}});h._returnsCollection=function(t){if(t&&t.returnType&&t.returnType.startsWith("Collection(")){return true}return false};h.prototype._setNamespaces=function(t){this.mNamespaces=t};h.prototype._handleLoaded=function(t,e,n){var i=[];this.oMetadata=this.oMetadata?this.merge(this.oMetadata,t,i):t;this.oRequestHandle=null;e.entitySets=i;this.fnResolve(e);if(this.bAsync&&!n){this.fireLoaded(this)}else if(!this.bAsync&&!n){this.bLoaded=true;this.bFailed=false;this.oLoadEvent=setTimeout(this.fireLoaded.bind(this,e),0)}};h.prototype._loadMetadata=function(t,e,n){var i=this;t=t||this.sUrl;let a;if(!this.sMetadata){a=this._createRequest(t)}return new Promise(function(t,r){var s;function o(n,r){if(!n||!n.dataServices){var s={message:"Invalid metadata document",request:a,response:r};f(s);return}i.sMetadataBody=r.body;i.oRequestHandle=null;var o={metadataString:i.sMetadataBody};var p=r.headers["Last-Modified"];if(p){o.lastModified=p}var u=r.headers["eTag"];if(u){o.eTag=u}i._handleLoaded(n,o,e);t(o)}function f(t){var n={message:t.message,request:t.request,response:t.response};if(t.response){n.statusCode=t.response.statusCode;n.statusText=t.response.statusText;n.responseText=t.response.body}if(s&&s.bSuppressErrorHandlerCall){return}if(i.bAsync){delete i.mRequestHandles[s.id]}r(n);i.fnReject(n);if(i.bAsync&&!e){i.fireFailed(n)}else if(!i.bAsync&&!e){i.bFailed=true;i.oFailedEvent=setTimeout(i.fireFailed.bind(i,n),0)}}if(i.sMetadata){const t={headers:{"Content-Type":"application/xml"},body:i.sMetadata};y.metadataHandler.read(t,{});o(t.data,t);return}if(n){s=n(a,o,f,y.metadataHandler,undefined,undefined,true)}else{s=y.request(a,o,f,y.metadataHandler)}if(i.bAsync){s.id=p();i.mRequestHandles[s.id]=s}})};h.prototype.refresh=function(){return this._loadMetadata()};h.prototype.getServiceMetadata=function(){return this.oMetadata};h.prototype.isLoaded=function(){return this.bLoaded};h.prototype.loaded=function(t){return t?this.pLoadedWithReject:this.pLoaded};h.prototype.isFailed=function(){return this.bFailed};h.prototype.fireLoaded=function(t){this.bLoaded=true;this.bFailed=false;this.fireEvent("loaded",t);i.debug(this+" - loaded was fired");return this};h.prototype.attachLoaded=function(t,e,n){this.attachEvent("loaded",t,e,n);return this};h.prototype.detachLoaded=function(t,e){this.detachEvent("loaded",t,e);return this};h.prototype.fireFailed=function(t){this.bFailed=true;this.fireEvent("failed",t);return this};h.prototype.attachFailed=function(t,e,n){this.attachEvent("failed",t,e,n);return this};h.prototype.detachFailed=function(t,e){this.detachEvent("failed",t,e);return this};h.prototype._getEntityAssociationEnd=function(e,n){var i;if(!this._checkMetadataLoaded()){return null}this._mGetEntityAssociationEndCache=this._mGetEntityAssociationEndCache||{};i=e.namespace+"."+e.name+"/"+n;if(this._mGetEntityAssociationEndCache[i]===undefined){var a=e?t.findObject(e.navigationProperty,n):null,r=a?t.getObject(this.oMetadata.dataServices.schema,"association",a.relationship):null,s=r?t.findObject(r.end,a.toRole,"role"):null;this._mGetEntityAssociationEndCache[i]=s}return this._mGetEntityAssociationEndCache[i]};function l(t){var e={};for(var n=0;n<t.length;n++){var i=t[n];if(i.entityContainer){for(var a=0;a<i.entityContainer.length;a++){var r=i.entityContainer[a];if(r.entitySet){for(var s=0;s<r.entitySet.length;s++){if(r.entitySet[s].name!=null){e[r.entitySet[s].name]=r.entitySet[s]}}}}}}return e}h.prototype._findEntitySetByName=function(t){if(!this.mEntitySets){this.mEntitySets=l(this.oMetadata.dataServices.schema)}return this.mEntitySets[t]};h.prototype._getEntityTypeByPath=function(t){if(!t){n(undefined,"sPath not defined!");return null}if(this.mEntityTypes[t]){return this.mEntityTypes[t]}if(!this._checkMetadataLoaded()){return null}var e=t.replace(/^\/|\/$/g,""),i=e.split("/"),a=i.length,r,s,o,p,f=this;if(i[0].indexOf("(")!=-1){i[0]=i[0].substring(0,i[0].indexOf("("))}if(a>1){r=f._getEntityTypeByPath(i[0]);for(var u=1;u<i.length;u++){if(r){if(i[u].indexOf("(")!=-1){i[u]=i[u].substring(0,i[u].indexOf("("))}p=f._getEntityTypeByNavProperty(r,i[u]);if(p){r=p}o=r}}}else{s=this._splitName(this._getEntityTypeName(i[0]));o=this._getObjectMetadata("entityType",s.name,s.namespace);if(o){o.entityType=this._getEntityTypeName(i[0])}}if(!o){var y=i[i.length-1];var d=this._getFunctionImportMetadata(y,"GET");if(!d){d=this._getFunctionImportMetadata(y,"POST")}if(d&&d.entitySet){o=Object.assign({},this._getEntityTypeByPath(d.entitySet));if(o){o.entityType=this._getEntityTypeName(d.entitySet);o.isFunction=true}}}if(o){this.mEntityTypes[t]=o}return o};h.prototype._getEntityTypeByName=function(t){var e,i=this,a,s,o;if(!t){n(undefined,"sName not defined!");return null}o=this._splitName(t);s=o.namespace;a=o.name;if(!this._checkMetadataLoaded()){return null}if(this.mEntityTypes[t]){e=this.mEntityTypes[t]}else{r(this.oMetadata.dataServices.schema,function(n,o){if(o.entityType&&(!s||o.namespace===s)){r(o.entityType,function(n,r){if(r.name===a){e=r;i.mEntityTypes[t]=e;e.namespace=o.namespace;return false}return true})}})}return e};h.prototype._checkMetadataLoaded=function(){if(!this.oMetadata||o(this.oMetadata)){n(undefined,"No metadata loaded!");return false}return true};h.prototype._getAnnotation=function(t){var e,i,a,r,s,o,p;i=t.split("/#");r=i[1].split("/");if(!i[0]){s=this._getEntityTypeByName(r[0]);n(s,r[0]+" is not a valid EntityType");if(!s){return undefined}o=i[1].substr(i[1].indexOf("/")+1);p=this._getPropertyMetadata(s,o);n(p,o+" is not a valid property path");if(!p){return undefined}a=o.substr(o.indexOf(p.name));a=a.substr(a.indexOf("/")+1)}else{s=this._getEntityTypeByPath(i[0]);n(s,i[0]+" is not a valid path");if(!s){return undefined}t=i[0].replace(/^\/|\/$/g,"");o=t;while(!p&&o.indexOf("/")>0){o=o.substr(o.indexOf("/")+1);p=this._getPropertyMetadata(s,o)}n(p,o+" is not a valid property path");if(!p){return undefined}a=r.join("/")}e=this._getAnnotationObject(s,p,a);return e};h.prototype._getAnnotationObject=function(t,e,n){var i,a,r,s,o,p,f;if(!e){return undefined}p=e;f=n.split("/");if(f[0].indexOf(".")>-1){return this._getV4AnnotationObject(t,e,f)}else if(f.length>1){p=p[f[0]];if(!p&&e.extensions){for(o=0;o<e.extensions.length;o++){s=e.extensions[o];if(s.name==f[0]){p=s;break}}}n=f.splice(0,1);i=this._getAnnotationObject(t,p,f.join("/"))}else if(f[0].indexOf("@")>-1){a=f[0].substr(1);r=a.split(":");i=p[r[0]];if(!i&&p.extensions){for(o=0;o<p.extensions.length;o++){s=p.extensions[o];if(s.name===r[1]&&s.namespace===this.mNamespaces[r[0]]){i=s.value;break}}}}else{r=f[0].split(":");i=p[r[0]];i=p[f[0]];if(!i&&p.extensions){for(o=0;o<p.extensions.length;o++){s=p.extensions[o];if(s.name===r[1]&&s.namespace===this.mNamespaces[r[0]]){i=s;break}}}}return i};h.prototype._getV4AnnotationObject=function(t,e,i){var a,s=[];if(i.length>1){n(i.length==1,"'"+i.join("/")+"' is not a valid annotation path");return undefined}var o=t.namespace?t.namespace+".":"";o+=t.name+"/"+e.name;r(this.oMetadata.dataServices.schema,function(t,e){if(e.annotations){r(e.annotations,function(t,e){if(e.target===o&&!e.qualifier){s.push(e.annotation);return false}return true})}});if(s){r(s,function(t,e){r(e,function(t,e){if(e.term===i[0]){a=e}})})}return a};h.prototype._splitName=function(t){var e={};if(t){var n=t.lastIndexOf(".");e.name=t.substr(n+1);e.namespace=t.substr(0,n)}return e};h.prototype._getEntityTypeName=function(t){var e,n;if(t){n=this._findEntitySetByName(t);if(n){e=n.entityType}}return e};h.prototype._getObjectMetadata=function(t,e,n){var i;if(e&&n){r(this.oMetadata.dataServices.schema,function(a,s){if(s[t]&&s.namespace===n){r(s[t],function(t,n){if(n.name===e){i=n;i.namespace=s.namespace;return false}return true});return!i}return true})}return i};h.prototype.getUseBatch=function(){var t=false;r(this.oMetadata.dataServices.schema,function(e,n){if(n.entityContainer){r(n.entityContainer,function(e,n){if(n.extensions){r(n.extensions,function(e,n){if(n.name==="use-batch"&&n.namespace==="http://www.sap.com/Protocols/SAPData"){t=typeof n.value==="string"?n.value.toLowerCase()==="true":!!n.value;return false}return true})}})}});return t};h.prototype._getFunctionImportMetadataIterate=function(t,e){var n=[];r(this.oMetadata.dataServices.schema,function(i,a){if(a["entityContainer"]){r(a["entityContainer"],function(i,a){if(a["functionImport"]){r(a["functionImport"],function(i,a){if(t(a)){n.push(a);if(e){return false}}return true})}return!(e&&n.length===1)})}return!(e&&n.length===1)});return n};h.prototype._getFirstMatchingFunctionImportMetadata=function(t){var e=this._getFunctionImportMetadataIterate(t,true);return e.length===1?e[0]:null};h.prototype._getFunctionImportMetadataByName=function(t){if(t.indexOf("/")>-1){t=t.substr(t.indexOf("/")+1)}return this._getFunctionImportMetadataIterate(function(e){return e.name===t})};h.prototype._getFunctionImportMetadata=function(t,e){if(t.indexOf("/")>-1){t=t.substr(t.indexOf("/")+1)}return this._getFirstMatchingFunctionImportMetadata(function(n){return n.name===t&&n.httpMethod===e})};h.prototype._getEntityTypeByNavProperty=function(t,e){if(!t.navigationProperty){return undefined}for(var n=0;n<t.navigationProperty.length;++n){var i=t.navigationProperty[n];if(i.name===e){return this._getEntityTypeByNavPropertyObject(i)}}return undefined};h.prototype._getEntityTypeByNavPropertyObject=function(t){var e;var n=this._splitName(t.relationship);var i=this._getObjectMetadata("association",n.name,n.namespace);if(i){var a=i.end[0];if(a.role!==t.toRole){a=i.end[1]}var r=this._splitName(a.type);e=this._getObjectMetadata("entityType",r.name,r.namespace);if(e){e.entityType=a.type}}return e};h.prototype._getNavigationPropertyNames=function(t){var e=[];if(t.navigationProperty){r(t.navigationProperty,function(t,n){e.push(n.name)})}return e};h.prototype._getNavPropertyRefInfo=function(t,e){var n,i,a,s,o,p,f,u,y,d,c,h=this;r(t.navigationProperty,function(r,l){a=h._splitName(l.relationship);i=h._getObjectMetadata("association",a.name,a.namespace);if(!i||!i.referentialConstraint){return}p=i.referentialConstraint.dependent;y=i.end.find(function(t){return t.role===p.role});if(y.type!==t.namespace+"."+t.name){return}f=p.propertyRef.some(function(t){return t.name===e});if(!f){return}o=i.referentialConstraint.principal;u=o.role;s=h._getAssociationSetByAssociation(l.relationship);y=s.end.find(function(t){return t.role===u});d=y.entitySet;c=o.propertyRef.map(function(t){return t.name});n={name:l.name,entitySet:d,keys:c}});return n};h.prototype._getPropertyMetadata=function(t,e){var n,i=this;if(!t){return undefined}e=e.replace(/^\/|\/$/g,"");var a=e.split("/");r(t.property,function(t,e){if(e.name===a[0]){n=e;return false}return true});if(a.length>1){if(!n){var s;while(t&&a.length>1){t=this._getEntityTypeByNavProperty(t,a[0]);if(t){s=t;a.shift()}}if(t){n=i._getPropertyMetadata(t,a[0])}else if(s){n=i._getPropertyMetadata(s,a.join("/"))}}else if(!n.type.toLowerCase().startsWith("edm.")){var o=this._splitName(n.type);n=this._getPropertyMetadata(this._getObjectMetadata("complexType",o.name,o.namespace),a.slice(1).join("/"))}}return n};h.prototype._getReferentialConstraintsMapping=function(t,e){const n=t.navigationProperty.find(t=>t.name===e);const i=this._splitName(n.relationship);const a=this._getObjectMetadata("association",i.name,i.namespace);if(n.fromRole===a.referentialConstraint?.principal.role){const t=a.referentialConstraint.principal.propertyRef;const e=a.referentialConstraint.dependent.propertyRef;return t.reduce((t,n,i)=>{t[n.name]=e[i].name;return t},{})}return{}};h.prototype.destroy=function(){delete this.oMetadata;var t=this;r(this.mRequestHandles,function(e,n){n.bSuppressErrorHandlerCall=true;n.abort();delete t.mRequestHandles[e]});if(this.oLoadEvent){clearTimeout(this.oLoadEvent)}if(this.oFailedEvent){clearTimeout(this.oFailedEvent)}f.prototype.destroy.apply(this,arguments)};h.prototype._fillElementCaches=function(){var t=this;if(this._entitySetMap||!this._checkMetadataLoaded()){return}this._entitySetMap={};this.oMetadata.dataServices.schema.forEach(function(e){(e.entityContainer||[]).forEach(function(e){(e.entitySet||[]).forEach(function(e){var n=t._getEntityTypeByName(e.entityType);n.__navigationPropertiesMap={};(n.navigationProperty||[]).forEach(function(t){n.__navigationPropertiesMap[t.name]=t});e.__entityType=n;t._entitySetMap[e.entityType]=e})})})};h.prototype._createRequest=function(t){var e={"sap-cancel-on-close":"true"},n={"Accept-Language":a.getLanguageTag().toString()};s(e,this.mHeaders,n);var i={headers:e,requestUri:t,method:"GET",user:this.sUser,password:this.sPassword,async:this.bAsync};if(this.bAsync){i.withCredentials=this.bWithCredentials}return i};h.prototype._getEntitySetByPath=function(t){var e;this._fillElementCaches();e=this._getEntityTypeByPath(t);return e&&this._entitySetMap[e.entityType]};h.prototype._addUrl=function(t,e){var n=[].concat(t);return Promise.all(n.map(function(t){return this._loadMetadata(t,true,e)},this))};h.prototype.merge=function(t,e,n){var i=this;if(this.mEntitySets){delete this.mEntitySets}r(t.dataServices.schema,function(t,a){r(e.dataServices.schema,function(t,e){if(e.namespace===a.namespace){if(e.entityType){if(!i.mEntityTypeNames){i.mEntityTypeNames={};a.entityType.map(function(t){i.mEntityTypeNames[t.name]=true})}a.entityType=!a.entityType?[]:a.entityType;for(var s=0;s<e.entityType.length;s++){if(!(e.entityType[s].name in i.mEntityTypeNames)){a.entityType.push(e.entityType[s]);i.mEntityTypeNames[e.entityType[s].name]=true}}}if(a.entityContainer&&e.entityContainer){r(a.entityContainer,function(t,a){r(e.entityContainer,function(t,e){if(e.entitySet){if(e.name===a.name){if(!i.mEntitySetNames){i.mEntitySetNames={};a.entitySet.map(function(t){i.mEntitySetNames[t.name]=true})}a.entitySet=!a.entitySet?[]:a.entitySet;for(var r=0;r<e.entitySet.length;r++){if(!(e.entitySet[r].name in i.mEntitySetNames)){a.entitySet.push(e.entitySet[r]);i.mEntitySetNames[e.entitySet[r].name]=true}}e.entitySet.forEach(function(t){n.push(t)})}}})})}if(e.annotations){a.annotations=!a.annotations?[]:a.annotations;a.annotations=a.annotations.concat(e.annotations)}}})});return t};h.prototype._getEntitySetByType=function(t){var e=t.namespace+"."+t.name;var n=this.oMetadata.dataServices.schema;for(var i=0;i<n.length;++i){var a=n[i].entityContainer;if(a){for(var r=0;r<a.length;++r){var s=a[r].entitySet;if(s){for(var o=0;o<s.length;++o){if(s[o].entityType===e){return s[o]}}}}}}return null};h.prototype._calculateCanonicalPath=function(t){var e,n,i,a;if(t){n=t.lastIndexOf(")");if(n!==-1){a=t.substr(0,n+1);var r=this._getEntitySetByPath(a);if(r){if(r.__entityType.isFunction){e=t}else{i=t.split("/");if(a==="/"+i[1]){if(!(i[2]in r.__entityType.__navigationPropertiesMap)){e=t}}else{i=a.split("/");a="/"+r.name+i[i.length-1].substr(i[i.length-1].indexOf("("))+t.substr(n+1);if(a!==t){e=a}}}}}}return e};h.prototype._getAssociationSetByAssociation=function(t){var e=this.oMetadata.dataServices.schema;for(var n=0;n<e.length;++n){var i=e[n].entityContainer;if(i){for(var a=0;a<i.length;++a){var r=i[a].associationSet;if(r){for(var s=0;s<r.length;++s){if(r[s].association===t){return r[s]}}}}}}return null};h.prototype._isMessageScopeSupported=function(){var t=this.oMetadata.dataServices.schema,e,n;if(!this.bMessageScopeSupported&&t){for(var i=0;i<t.length;++i){n=t[i].entityContainer;if(n){for(var a=0;a<n.length;++a){e=n[a];if(e.extensions&&Array.isArray(e.extensions)){for(var r=0;r<e.extensions.length;++r){if(e.extensions[r].name==="message-scope-supported"&&e.extensions[r].namespace===this.mNamespaces.sap){if(e.extensions[r].value==="true"){this.bMessageScopeSupported=true;break}}}}}}}}return this.bMessageScopeSupported};h.prototype._isCollection=function(t){var e=false;var n=t.lastIndexOf("/");if(n>0){var i=t.substring(0,n);var a=this._getEntityTypeByPath(i);if(a){var r=this._getEntityAssociationEnd(a,t.substring(n+1));if(r&&r.multiplicity==="*"){e=true}}}else{e=true}return e};h.prototype._getReducedPath=function(t){var e,n,i,a,r,s,o,p=t.split("/"),f;if(p.length<4){return t}this._fillElementCaches();for(n=1;n<p.length-2;n+=1){f=this._getEntityTypeByPath(p.slice(0,n+1).join("/"));r=f&&f.__navigationPropertiesMap[p[n+1].split("(")[0]];if(!r){continue}o=p[n+2].split("(")[0];a=this._getEntityTypeByNavPropertyObject(r);s=a&&a.__navigationPropertiesMap[o];if(!s||r.relationship!==s.relationship){continue}i=p[n+2].slice(o.length);e=this._getEntityAssociationEnd(a,o);if(e.multiplicity!=="*"||i&&p[n].endsWith(i)){p.splice(n+1,2);return this._getReducedPath(p.join("/"))}}return p.join("/")};h.prototype.getKeyPropertyNamesByPath=function(t){var e,n,i=t.lastIndexOf("/");if(i>0){n=this._getEntityTypeByPath(t.slice(0,i));if(n){e=this._getEntityAssociationEnd(n,t.slice(i+1).split("(")[0]);n=e?this._getEntityTypeByName(e.type):undefined}}else{n=this._getEntityTypeByPath(t)}return n&&n.key.propertyRef.map(function(t){return t.name})};h.prototype._getCanonicalPathOfFunctionImport=function(t,e){var n,a,r,s,o,p,f,u=t.extensions,y=t.returnType,c="",l=false;if(u){for(s=0;s<u.length;s+=1){if(u[s].name==="action-for"){n=u[s].value;break}}}if(h._returnsCollection(t)){l=true;y=y.slice(11,-1)}if(n){r=this._getEntityTypeByName(n)}else if(t.entitySet){r=this._getEntityTypeByPath(t.entitySet)}else if(y){r=this._getEntityTypeByName(y)}if(r){a=this._getEntitySetByType(r);if(a&&r.key&&r.key.propertyRef){if(l){return"/"+a.name}f=r.key.propertyRef;if(f.length===1){p=f[0].name;if(e[p]){c=encodeURIComponent(e[p])}}else{o=[];for(s=0;s<f.length;s+=1){p=f[s].name;if(e[p]){o.push(p+"="+encodeURIComponent(e[p]))}}c=o.join(",")}return"/"+a.name+"("+c+")"}else if(!a){i.error("Cannot determine path of the entity set for the function import '"+t.name+"'",this,d)}else{i.error("Cannot determine keys of the entity type '"+r.entityType+"' for the function import '"+t.name+"'",this,d)}}return""};h.prototype._splitByLastNavigationProperty=function(t){var e,n,i,a,r,s=t.split("/"),o="/"+s[1],p=s.length;this._fillElementCaches();e=this._getEntityTypeByPath(o);for(n=2;n<p;n+=1){r=s[n];i=r.indexOf("(");if(i!==-1){r=r.slice(0,i)}if(e&&e.__navigationPropertiesMap[r]){a=n;e=this._getEntityTypeByNavProperty(e,r)}else{break}}if(a===undefined){return{pathBeforeLastNavigationProperty:t,lastNavigationProperty:"",addressable:true,pathAfterLastNavigationProperty:""}}return{pathBeforeLastNavigationProperty:s.slice(0,a).join("/"),lastNavigationProperty:"/"+s[a],addressable:this._isAddressable(e),pathAfterLastNavigationProperty:a+1>=p?"":"/"+s.slice(a+1).join("/")}};h.prototype._isAddressable=function(t){var e;if(!t){return true}e=this._entitySetMap[t.entityType];if(!e||!e.extensions){return true}return!e.extensions.some(function(t){return t.name==="addressable"&&t.namespace===c&&t.value==="false"})};h.getServiceAnnotations=function(t){const n=new h(undefined,{metadata:t});const i=(new DOMParser).parseFromString(t,"application/xml");return e.parse(n,i)};return h});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/ODataModel", ["./CountMode","./ODataContextBinding","./ODataListBinding","./ODataMetadata","./ODataPropertyBinding","./ODataTreeBinding","./ODataUtils","sap/base/assert","sap/base/Log","sap/base/i18n/Localization","sap/base/security/encodeURL","sap/base/util/each","sap/base/util/extend","sap/base/util/isEmptyObject","sap/base/util/isPlainObject","sap/base/util/merge","sap/base/util/uid","sap/ui/core/Supportability","sap/ui/model/BindingMode","sap/ui/model/Context","sap/ui/model/FilterProcessor","sap/ui/model/Model","sap/ui/model/odata/ODataAnnotations","sap/ui/model/odata/ODataMetaModel","sap/ui/thirdparty/datajs","sap/ui/thirdparty/URI"],function(e,t,a,s,i,r,n,o,d,u,h,f,c,l,p,y,_,g,b,m,v,M,R,T,C,U){"use strict";var A=M.extend("sap.ui.model.odata.ODataModel",{constructor:function(t,a,i,r,o,d,h,f){M.apply(this,arguments);var c,l,p,y=null,_,m,v,R,T,U,q=this;if(typeof t==="object"){a=t;t=a.serviceUrl}if(typeof a==="object"){i=a.user;r=a.password;o=a.headers;d=a.tokenHandling;f=a.loadMetadataAsync;h=a.withCredentials;p=a.maxDataServiceVersion;c=a.useBatch;l=a.refreshAfterChange;y=a.annotationURI;_=a.loadAnnotationsJoined;v=a.defaultCountMode;m=a.metadataNamespaces;R=a.serviceUrlParams;T=a.metadataUrlParams;U=a.skipMetadataAnnotationParsing;a=a.json}this.oServiceData={};this.sDefaultBindingMode=b.OneWay;this.mSupportedBindingModes={OneWay:true,OneTime:true,TwoWay:true};this.mUnsupportedFilterOperators={Any:true,All:true};this.bCountSupported=true;this.bJSON=a;this.bCache=true;this.aPendingRequestHandles=[];this.oRequestQueue={};this.aBatchOperations=[];this.oHandler=undefined;this.bTokenHandling=d!==false;this.bWithCredentials=h===true;this.bUseBatch=c===true;this.bRefreshAfterChange=l!==false;this.sMaxDataServiceVersion=p;this.bLoadMetadataAsync=!!f;this.bLoadAnnotationsJoined=_===undefined?true:_;this.sAnnotationURI=y;this.sDefaultCountMode=v||e.Both;this.oMetadataLoadEvent=null;this.oMetadataFailedEvent=null;this.bSkipMetadataAnnotationParsing=U;this.oHeaders={};this.setHeaders(o);this.oData={};this.oMetadata=null;this.oAnnotations=null;this.aUrlParams=[];if(t.indexOf("?")==-1){this.sServiceUrl=t}else{var E=t.split("?");this.sServiceUrl=E[0];if(E[1]){this.aUrlParams.push(E[1])}}if(g.isStatisticsEnabled()){this.aUrlParams.push("sap-statistics=true")}this.sServiceUrl=this.sServiceUrl.replace(/\/$/,"");var P=this._createRequestUrl("$metadata",undefined,T);if(!A.mServiceData[P]){A.mServiceData[P]={}}this.oServiceData=A.mServiceData[P];if(this.bTokenHandling&&this.oServiceData.securityToken){this.oHeaders["x-csrf-token"]=this.oServiceData.securityToken}this.sUser=i;this.sPassword=r;this.oHeaders["Accept-Language"]=u.getLanguageTag().toString();if(!this.oServiceData.oMetadata){this.oServiceData.oMetadata=new s(P,{async:this.bLoadMetadataAsync,user:this.sUser,password:this.sPassword,headers:this.mCustomHeaders,namespaces:m,withCredentials:this.bWithCredentials})}this.oMetadata=this.oServiceData.oMetadata;this.pAnnotationsLoaded=this.oMetadata.loaded();if(this.sAnnotationURI||!this.bSkipMetadataAnnotationParsing){var S=this._getAnnotationParser();if(!this.bSkipMetadataAnnotationParsing){if(!this.bLoadMetadataAsync){this.addAnnotationXML(this.oMetadata.sMetadataBody,!!this.sAnnotationURI)}else{this.pAnnotationsLoaded=this.oMetadata.loaded().then(function(e,t){if(this.bDestroyed){return Promise.reject()}return this.addAnnotationXML(t["metadataString"],e)}.bind(this,!!this.sAnnotationURI))}}if(this.sAnnotationURI){if(this.bLoadMetadataAsync){this.pAnnotationsLoaded=this.pAnnotationsLoaded.then(S.addUrl.bind(S,this.sAnnotationURI))}else{this.pAnnotationsLoaded=Promise.all([this.pAnnotationsLoaded,S.addUrl(this.sAnnotationURI)])}}}if(R){this.aUrlParams=this.aUrlParams.concat(n._createUrlParamsArray(R))}this.onMetadataLoaded=function(e){q._initializeMetadata();q.initialize()};this.onMetadataFailed=function(e){q.fireMetadataFailed(e.getParameters())};if(!this.oMetadata.isLoaded()){this.oMetadata.attachLoaded(this.onMetadataLoaded);this.oMetadata.attachFailed(this.onMetadataFailed)}if(this.oMetadata.isFailed()){this.refreshMetadata()}if(this.oMetadata.isLoaded()){this._initializeMetadata(true)}if(this.bJSON){if(this.sMaxDataServiceVersion==="3.0"){this.oHeaders["Accept"]="application/json;odata=fullmetadata"}else{this.oHeaders["Accept"]="application/json"}this.oHandler=C.jsonHandler}else{this.oHeaders["Accept"]="application/atom+xml,application/atomsvc+xml,application/xml";this.oHandler=C.atomHandler}this.oHeaders["MaxDataServiceVersion"]="2.0";if(this.sMaxDataServiceVersion){this.oHeaders["MaxDataServiceVersion"]=this.sMaxDataServiceVersion}this.oHeaders["DataServiceVersion"]="2.0"},metadata:{publicMethods:["create","remove","update","submitChanges","getServiceMetadata","read","hasPendingChanges","refresh","refreshMetadata","resetChanges","isCountSupported","setCountSupported","setDefaultCountMode","getDefaultCountMode","forceNoCache","setProperty","getSecurityToken","refreshSecurityToken","setHeaders","getHeaders","setUseBatch"]}});A.M_EVENTS={RejectChange:"rejectChange",MetadataLoaded:"metadataLoaded",MetadataFailed:"metadataFailed",AnnotationsLoaded:"annotationsLoaded",AnnotationsFailed:"annotationsFailed"};A.mServiceData={};A.prototype.fireRejectChange=function(e){this.fireEvent("rejectChange",e);return this};A.prototype.attachRejectChange=function(e,t,a){this.attachEvent("rejectChange",e,t,a);return this};A.prototype.detachRejectChange=function(e,t){this.detachEvent("rejectChange",e,t);return this};A.prototype._initializeMetadata=function(e){var t=this;this.bUseBatch=this.bUseBatch||this.oMetadata.getUseBatch();var a=function(e){if(e){t.metadataLoadEvent=setTimeout(a.bind(t),0)}else if(t.oMetadata){t.fireMetadataLoaded({metadata:t.oMetadata});d.debug("ODataModel fired metadataloaded")}};if(this.sAnnotationURI&&this.bLoadAnnotationsJoined){if(this.oAnnotations&&(this.oAnnotations.bInitialized||this.oAnnotations.isFailed())){a(!this.bLoadMetadataAsync)}else{this.oAnnotations.attachEventOnce("loaded",function(){a(true)})}}else{a(e)}};A.prototype.fireAnnotationsLoaded=function(e){if(!this.bLoadMetadataAsync){setTimeout(this.fireEvent.bind(this,"annotationsLoaded",e),0)}else{this.fireEvent("annotationsLoaded",e)}return this};A.prototype.attachAnnotationsLoaded=function(e,t,a){this.attachEvent("annotationsLoaded",e,t,a);return this};A.prototype.detachAnnotationsLoaded=function(e,t){this.detachEvent("annotationsLoaded",e,t);return this};A.prototype.fireAnnotationsFailed=function(e){if(!this.bLoadMetadataAsync){setTimeout(this.fireEvent.bind(this,"annotationsFailed",e),0)}else{this.fireEvent("annotationsFailed",e)}d.debug("ODataModel fired annotationsFailed");return this};A.prototype.attachAnnotationsFailed=function(e,t,a){this.attachEvent("annotationsFailed",e,t,a);return this};A.prototype.detachAnnotationsFailed=function(e,t){this.detachEvent("annotationsFailed",e,t);return this};A.prototype.fireMetadataLoaded=function(e){this.fireEvent("metadataLoaded",e);return this};A.prototype.attachMetadataLoaded=function(e,t,a){this.attachEvent("metadataLoaded",e,t,a);return this};A.prototype.detachMetadataLoaded=function(e,t){this.detachEvent("metadataLoaded",e,t);return this};A.prototype.fireMetadataFailed=function(e){this.fireEvent("metadataFailed",e);return this};A.prototype.attachMetadataFailed=function(e,t,a){this.attachEvent("metadataFailed",e,t,a);return this};A.prototype.detachMetadataFailed=function(e,t){this.detachEvent("metadataFailed",e,t);return this};A.prototype.refreshMetadata=function(){if(this.oMetadata&&this.oMetadata.refresh){this.oMetadata.refresh().catch(e=>{d.fatal(e)})}};A.prototype._createRequestUrl=function(e,t,a,s,i){var r,o,d,u="";if(e&&e.indexOf("?")!=-1){d=e.substr(e.indexOf("?")+1);e=e.substr(0,e.indexOf("?"))}o=this._normalizePath(e,t);if(!s){u=this.sServiceUrl+o}else{u=o.substr(o.indexOf("/")+1)}r=n._createUrlParamsArray(a);if(this.aUrlParams){r=r.concat(this.aUrlParams)}if(d){r.push(d)}if(r.length>0){u+="?"+r.join("&")}if(i===undefined){i=true}if(i===false){var h=Date.now();var f=u.replace(/([?&])_=[^&]*/,"$1_="+h);u=f+(f===u?(/\?/.test(u)?"&":"?")+"_="+h:"")}return u};A.prototype._loadData=function(e,t,a,s,i,r,n){var o,u=[],h=this._createRequestUrl(e,null,t,null,i||this.bCache),f=this._createRequest(h,"GET",true),c=this;function l(e,t){var s=e,i={};if(t.statusCode==204){if(a){a(null)}if(n){n(null)}c.fireRequestCompleted({url:f.requestUri,type:"GET",async:f.async,info:"Accept headers:"+c.oHeaders["Accept"],infoObject:{acceptHeaders:c.oHeaders["Accept"]},success:true});return undefined}if(!s){d.fatal("The following problem occurred: No data was retrieved by service: "+t.requestUri);c.fireRequestCompleted({url:f.requestUri,type:"GET",async:f.async,info:"Accept headers:"+c.oHeaders["Accept"],infoObject:{acceptHeaders:c.oHeaders["Accept"]},success:false});return false}if(c.bUseBatch){var r=c._getBatchErrors(e);if(r.length>0){p(r[0]);return false}if(s.__batchResponses&&s.__batchResponses.length>0){s=s.__batchResponses[0].data}else{d.fatal("The following problem occurred: No data was retrieved by service: "+t.requestUri)}}u=u.concat(s.results);if(s.__next){var o=new U(s.__next);f.requestUri=o.absoluteTo(t.requestUri).toString();y(f)}else{if(s.results){var h,l;for(l in u){h=u[l];if(u===h){continue}s.results[l]=h}}if(s.results&&!Array.isArray(s.results)){s=s.results}c._importData(s,i);if(c.sChangeKey&&i){var _=c.sChangeKey.substr(c.sChangeKey.lastIndexOf("/")+1);if(i[_]){delete c.oRequestQueue[c.sChangeKey];c.sChangeKey=null}}if(a){a(s)}c.checkUpdate(false,false,i);if(n){n(s)}c.fireRequestCompleted({url:f.requestUri,type:"GET",async:f.async,info:"Accept headers:"+c.oHeaders["Accept"],infoObject:{acceptHeaders:c.oHeaders["Accept"]},success:true})}return undefined}function p(e){if(c.bTokenHandling&&e.response){var t=c._getHeader("x-csrf-token",e.response.headers);if(!f.bTokenReset&&e.response.statusCode=="403"&&t&&t.toLowerCase()=="required"){c.resetSecurityToken();f.bTokenReset=true;y();return}}var a=c._handleError(e);if(s){s(e,o&&o.bAborted)}c.fireRequestCompleted({url:f.requestUri,type:"GET",async:f.async,info:"Accept headers:"+c.oHeaders["Accept"],infoObject:{acceptHeaders:c.oHeaders["Accept"]},success:false,errorobject:a});if(!o||!o.bAborted){a.url=f.requestUri;c.fireRequestFailed(a)}}function y(){if(c.bUseBatch){c.updateSecurityToken();var t=U.parse(f.requestUri).query;var a=c._createRequestUrl(e,null,t,c.bUseBatch);f=c._createRequest(a,"GET",true);if(c.bTokenHandling){delete f.headers["x-csrf-token"]}var s=c._createBatchRequest([f],true);o=c._request(s,l,p,C.batchHandler,undefined,c.getServiceMetadata())}else{o=c._request(f,l,p,c.oHandler,undefined,c.getServiceMetadata())}if(r){var i={abort:function(){o.bAborted=true;o.abort()}};r(i)}}if(c.bTokenHandling){delete f.headers["x-csrf-token"]}this.fireRequestSent({url:f.requestUri,type:"GET",async:f.async,info:"Accept headers:"+this.oHeaders["Accept"],infoObject:{acceptHeaders:this.oHeaders["Accept"]}});y()};A.prototype._importData=function(e,t){var a=this,s,i,r,n;if(e.results){s=[];f(e.results,function(e,i){s.push(a._importData(i,t))});return s}else{i=this._getKey(e);n=this.oData[i];if(!n){n=e;this.oData[i]=n}f(e,function(e,s){if(s&&(s.__metadata&&s.__metadata.uri||s.results)&&!s.__deferred){r=a._importData(s,t);if(Array.isArray(r)){n[e]={__list:r}}else{n[e]={__ref:r}}}else if(!s||!s.__deferred){n[e]=s}});t[i]=true;return i}};A.prototype._removeReferences=function(e){var t=this,a;if(e.results){a=[];f(e.results,function(e,s){a.push(t._removeReferences(s))});return a}else{f(e,function(t,a){if(a){if(a["__ref"]||a["__list"]){delete e[t]}}});return e}};A.prototype._restoreReferences=function(e){var t=this,a,s=[];if(e.results){a=[];f(e.results,function(e,s){a.push(t._restoreReferences(s))});return a}else{f(e,function(a,i){if(i&&i["__ref"]){var r=t._getObject("/"+i["__ref"]);o(r,"ODataModel inconsistent: "+i["__ref"]+" not found!");if(r){delete i["__ref"];e[a]=r;t._restoreReferences(r)}}else if(i&&i["__list"]){f(i["__list"],function(e,a){var r=t._getObject("/"+i["__list"][e]);o(r,"ODataModel inconsistent: "+i["__list"][e]+" not found!");if(r){s.push(r);t._restoreReferences(r)}});delete i["__list"];i.results=s;s=[]}});return e}};A.prototype.removeData=function(){this.oData={}};A.prototype.initialize=function(){var e=this.getBindings();f(e,function(e,t){t.initialize()})};A.prototype.refresh=function(e,t){if(t){this.removeData()}this._refresh(e)};A.prototype._refresh=function(e,t,a){var s=this.getBindings();f(s,function(s,i){i.refresh(e,t,a)})};A.prototype.checkUpdate=function(e,t,a,s){if(t){if(!this.sUpdateTimer){this.sUpdateTimer=setTimeout(function(){this.checkUpdate(e,false,a)}.bind(this),0)}return}if(this.sUpdateTimer){clearTimeout(this.sUpdateTimer);this.sUpdateTimer=null}var i=this.getBindings();f(i,function(t,i){if(!s||this.isMetaModelPath(i.getPath())){i.checkUpdate(e,a)}}.bind(this))};A.prototype.bindProperty=function(e,t,a){var s=new i(this,e,t,a);return s};A.prototype.bindList=function(e,t,s,i,r){var n=new a(this,e,t,s,i,r);return n};A.prototype.bindTree=function(e,t,a,s){var i=new r(this,e,t,a,s);return i};A.prototype.createBindingContext=function(e,t,a,s,i){var r=this.resolve(e,t);i=!!i;if(typeof t=="function"){s=t;t=null}if(typeof a=="function"){s=a;a=null}if(!r){if(s){s(null)}return null}var n=this._getObject(e,t),o,d,u=this;if(!i){i=this._isReloadNeeded(r,n,a)}if(!i){o=this._getKey(n);d=this.getContext("/"+o);if(s){s(d)}return d}if(s){var h=!e.startsWith("/");if(r){var f=[],c=this.createCustomParams(a);if(c){f.push(c)}this._loadData(r,f,function(a){o=a?u._getKey(a):undefined;if(o&&t&&h){var i=t.getPath();i=i.substr(1);if(u.oData[i]){u.oData[i][e]={__ref:o}}}d=u.getContext("/"+o);s(d)},function(){s(null)})}else{s(null)}}return undefined};A.prototype._isReloadNeeded=function(e,t,a){var s,i,r,n,o,d,u=[],h=[];if(!e){return false}if(!t){return true}if(a&&a["expand"]){r=a["expand"].replace(/\s/g,"");u=r.split(",")}if(u){for(i=0;i<u.length;i++){var f=u[i].indexOf("/");if(f!==-1){var c=u[i].slice(0,f);var l=u[i].slice(f+1);u[i]=[c,l]}}}for(i=0;i<u.length;i++){var p=u[i];if(Array.isArray(p)){var y=t[p[0]];var _=p[1];if(!y||y&&y.__deferred){return true}else if(y){if(y.__list&&y.__list.length>0){for(var g=0;g<y.__list.length;g++){n="/"+y.__list[g];s=this.getObject(n);o=this._isReloadNeeded(n,s,{expand:_});if(o){return true}}}else if(y.__ref){n="/"+y.__ref;s=this.getObject(n);o=this._isReloadNeeded(n,s,{expand:_});if(o){return true}}}}else if(t[p]===undefined||t[p]&&t[p].__deferred){return true}}if(a&&a["select"]){d=a["select"].replace(/\s/g,"");h=d.split(",")}for(i=0;i<h.length;i++){if(t[h[i]]===undefined){return true}}if(h.length==0){var b=this.oMetadata._getEntityTypeByPath(e);if(!b){return false}else{for(i=0;i<b.property.length;i++){if(t[b.property[i].name]===undefined){return true}}}}return false};A.prototype.destroyBindingContext=function(e){};A.prototype.createCustomParams=function(e){var t,a,s=[],i,r={expand:true,select:true};for(a in e){if(a in r){s.push("$"+a+"="+h(e[a]))}if(a=="custom"){i=e[a];for(t in i){if(t.indexOf("$")==0){d.warning("Trying to set OData parameter "+t+" as custom query option!")}else{s.push(t+"="+h(i[t]))}}}}return s.join("&")};A.prototype.bindContext=function(e,a,s){var i=new t(this,e,a,s);return i};A.prototype.setCountSupported=function(e){this.bCountSupported=e};A.prototype.isCountSupported=function(){return this.bCountSupported};A.prototype.setDefaultCountMode=function(e){this.sDefaultCountMode=e};A.prototype.getDefaultCountMode=function(){return this.sDefaultCountMode};A.prototype._getKey=function(e,t){var a,s;if(e instanceof m){a=e.getPath().substr(1)}else if(e&&e.__metadata&&e.__metadata.uri){s=e.__metadata.uri;a=s.substr(s.lastIndexOf("/")+1)}if(t){a=decodeURIComponent(a)}return a};A.prototype.getKey=function(e,t){return this._getKey(e,t)};A.prototype.createKey=function(e,t,a){var s=this.oMetadata._getEntityTypeByPath(e),i=e,r=this,d,u,h;o(s,'Could not find entity type of collection "'+e+'" in service metadata!');i+="(";if(s.key.propertyRef.length==1){d=s.key.propertyRef[0].name;o(d in t,'Key property "'+d+'" is missing in object!');h=this.oMetadata._getPropertyMetadata(s,d);u=n.formatValue(t[d],h.type);i+=a?u:encodeURIComponent(u)}else{f(s.key.propertyRef,function(e,f){if(e>0){i+=","}d=f.name;o(d in t,'Key property "'+d+'" is missing in object!');h=r.oMetadata._getPropertyMetadata(s,d);u=n.formatValue(t[d],h.type);i+=d;i+="=";i+=a?u:encodeURIComponent(u)})}i+=")";return i};A.prototype.getProperty=function(e,t,a){var s=this._getObject(e,t);if(a==null||a==undefined){return s}if(!p(s)){return s}s=y({},s);if(a==true){return this._restoreReferences(s)}else{return this._removeReferences(s)}};A.prototype._getObject=function(e,t){var a=this.isLegacySyntax()?this.oData:null,s=this.resolve(e,t),i,r,n,o,d,u;if(this.oMetadata&&s&&s.indexOf("/#")>-1){if(this.isMetaModelPath(s)){i=s.indexOf("/##");u=this.getMetaModel();if(!this.bMetaModelLoaded){return null}r=s.substr(0,i);n=s.substr(i+3);o=u.getMetaContext(r);a=u.getProperty(n,o)}else{a=this.oMetadata._getAnnotation(s)}}else{if(t){d=t.getPath();d=d.substr(1);a=this.oData[d]}if(!e){return a}var h=e.split("/"),f=0;if(!h[0]){a=this.oData;f++}while(a&&h[f]){a=a[h[f]];if(a){if(a.__ref){a=this.oData[a.__ref]}else if(a.__list){a=a.__list}else if(a.__deferred){a=undefined}}f++}}return a};A.prototype.updateSecurityToken=function(){if(this.bTokenHandling){if(!this.oServiceData.securityToken){this.refreshSecurityToken()}if(this.bTokenHandling){this.oHeaders["x-csrf-token"]=this.oServiceData.securityToken}}};A.prototype.resetSecurityToken=function(){delete this.oServiceData.securityToken;delete this.oHeaders["x-csrf-token"]};A.prototype.getSecurityToken=function(){var e=this.oServiceData.securityToken;if(!e){this.refreshSecurityToken();e=this.oServiceData.securityToken}return e};A.prototype.refreshSecurityToken=function(e,t,a){var s=this,i,r;a=a===true;i=this._createRequestUrl("/");var n=this._createRequest(i,"GET",a);n.headers["x-csrf-token"]="Fetch";function o(t,a){if(a){r=s._getHeader("x-csrf-token",a.headers);if(r){s.oServiceData.securityToken=r;s.oHeaders["x-csrf-token"]=r}else{s.resetSecurityToken();s.bTokenHandling=false}}if(e){e(t,a)}}function d(e){s.resetSecurityToken();s.bTokenHandling=false;s._handleError(e);if(t){t(e)}}return this._request(n,o,d,undefined,undefined,this.getServiceMetadata())};A.prototype._submitRequest=function(e,t,a,s,i,r){var n=this,o,d={};function u(s,u){if(t&&i){var c=n._getBatchErrors(s);if(c.length>0){h(c[0]);return false}if(s.__batchResponses&&s.__batchResponses.length>0){o=s.__batchResponses[0].data;if(!o&&s.__batchResponses[0].__changeResponses){o=s.__batchResponses[0].__changeResponses[0].data}}s=o}if(r){if(s&&s.__batchResponses){f(s.__batchResponses,function(e,t){if(t&&t.data){n._importData(t.data,d)}})}}n._handleETag(e,u,t);n._updateRequestQueue(e,t);if(n._isRefreshNeeded(e,u)){n._refresh(false,e.keys,e.entityTypes)}if(a){a(s,u)}return undefined}function h(t){if(n.bTokenHandling&&t.response){var a=n._getHeader("x-csrf-token",t.response.headers);if(!e.bTokenReset&&t.response.statusCode=="403"&&a&&a.toLowerCase()=="required"){n.resetSecurityToken();e.bTokenReset=true;c();return}}n._handleError(t);if(s){s(t)}}function c(){if(n.bTokenHandling){delete e.headers["x-csrf-token"]}if(n.bTokenHandling&&e.method!=="GET"){n.updateSecurityToken();if(n.bTokenHandling){e.headers["x-csrf-token"]=n.oServiceData.securityToken}}if(t){return n._request(e,u,h,C.batchHandler,undefined,n.getServiceMetadata())}else{return n._request(e,u,h,n.oHandler,undefined,n.getServiceMetadata())}}return c()};A.prototype._createBatchRequest=function(e,t){var a,s,i={},r={},n={},o={};r.__batchRequests=e;a=this.sServiceUrl+"/$batch";if(this.aUrlParams.length>0){a+="?"+this.aUrlParams.join("&")}c(i,this.mCustomHeaders,this.oHeaders);delete i["Content-Type"];s={headers:i,requestUri:a,method:"POST",data:r,user:this.sUser,password:this.sPassword,async:t};if(t){s.withCredentials=this.bWithCredentials}f(e,function(e,t){if(t["__changeRequests"]){f(t["__changeRequests"],function(e,t){if(t.keys&&t.method!="POST"){f(t.keys,function(e,t){n[e]=t})}else if(t.entityTypes&&t.method=="POST"){f(t.entityTypes,function(e,t){o[e]=t})}})}});s.keys=n;s.entityTypes=o;return s};A.prototype._handleETag=function(e,t,a){var s,i,r,n,o,u;if(a){o=e.data.__batchRequests;u=t.data.__batchResponses;if(u&&o){for(var h=0;h<o.length;h++){r=o[h].__changeRequests;if(u[h]){n=u[h].__changeResponses;if(r&&n){for(var f=0;f<r.length;f++){if(r[f].method=="MERGE"||r[f].method=="PUT"){s=r[f].requestUri.replace(this.sServiceUrl+"/","");if(!s.startsWith("/")){s="/"+s}i=this._getObject(s);if(i&&i.__metadata&&n[f].headers&&n[f].headers.ETag){i.__metadata.etag=n[f].headers.ETag}}}}}else{d.warning("could not update ETags for batch request: corresponding response for request missing")}}}else{d.warning("could not update ETags for batch request: no batch responses/requests available")}}else{s=e.requestUri.replace(this.sServiceUrl+"/","");if(!s.startsWith("/")){s="/"+s}i=this._getObject(s);if(i&&i.__metadata&&t.headers.ETag){i.__metadata.etag=t.headers.ETag}}};A.prototype._handleBatchErrors=function(e,t){this._getBatchErrors(t);this._handleETag()};A.prototype._getBatchErrors=function(e){var t=[],a;f(e.__batchResponses,function(e,s){if(s.message){a="The following problem occurred: "+s.message;if(s.response){a+=s.response.statusCode+","+s.response.statusText+","+s.response.body}t.push(s);d.fatal(a)}if(s.__changeResponses){f(s.__changeResponses,function(e,s){if(s.message){a="The following problem occurred: "+s.message;if(s.response){a+=s.response.statusCode+","+s.response.statusText+","+s.response.body}t.push(s);d.fatal(a)}})}});return t};A.prototype._handleError=function(e){var t={},a;var s="The following problem occurred: "+e.message;t.message=e.message;if(e.response){if(this.bTokenHandling){a=this._getHeader("x-csrf-token",e.response.headers);if(e.response.statusCode=="403"&&a&&a.toLowerCase()=="required"){this.resetSecurityToken()}}s+=e.response.statusCode+","+e.response.statusText+","+e.response.body;t.statusCode=e.response.statusCode;t.statusText=e.response.statusText;t.responseText=e.response.body}d.fatal(s);return t};A.prototype.getData=function(e,t,a){return this.getProperty(e,t,a)};A.prototype._getETag=function(e,t,a){var s,i,r;if(a){s=a}else if(t&&t.__metadata){s=t.__metadata.etag}else if(e){i=e.replace(this.sServiceUrl+"/","");r=i.indexOf("?");if(r>-1){i=i.substr(0,r)}if(this.oData.hasOwnProperty(i)){s=this.getProperty("/"+i+"/__metadata/etag")}}return s};A.prototype._createRequest=function(e,t,a,s,i){var r={},n;c(r,this.mCustomHeaders,this.oHeaders);n=this._getETag(e,s,i);if(n&&t!="GET"){r["If-Match"]=n}if(this.bJSON&&t!="DELETE"&&this.sMaxDataServiceVersion==="2.0"){r["Content-Type"]="application/json"}if(t=="MERGE"&&!this.bUseBatch){r["x-http-method"]="MERGE";t="POST"}var o={headers:r,requestUri:e,method:t,user:this.sUser,password:this.sPassword,async:a};if(s){o.data=s}if(a){o.withCredentials=this.bWithCredentials}return o};A.prototype._isRefreshNeeded=function(e,t){var a=false,s,i=[],r=this;if(!this.bRefreshAfterChange){return a}if(e.data&&Array.isArray(e.data.__batchRequests)){if(t){i=r._getBatchErrors(t.data);f(i,function(e,t){if(t.response&&t.response.statusCode=="412"){s=t.response.statusCode;return false}return true});if(s){return false}}f(e.data.__batchRequests,function(e,t){if(Array.isArray(t.__changeRequests)){f(t.__changeRequests,function(e,t){a=a||r._isRefreshNeeded(t);return!a})}return!a})}else if(e.method==="GET"){return false}else if(t&&t.statusCode=="412"){a=false}else{a=true}return a};A.prototype.update=function(e,t,a){var s,i,r,n,o,d,u,h,f,c,l,p,y=false;if(a instanceof m||arguments.length>3){d=a;s=arguments[3];i=arguments[4];r=arguments[5]}else{d=a.context||a.oContext;s=a.success||a.fnSuccess;i=a.error||a.fnError;u=a.eTag||a.sETag;r=typeof a.merge=="undefined"?a.bMerge===true:a.merge===true;y=typeof a.async=="undefined"?a.bAsync===true:a.async===true;p=a.urlParameters}o=this._createRequestUrl(e,d,p,this.bUseBatch);if(r){n=this._createRequest(o,"MERGE",y,t,u)}else{n=this._createRequest(o,"PUT",y,t,u)}e=this._normalizePath(e,d);c=this._getObject(e);n.keys={};if(c){l=this._getKey(c);n.keys[l]=true}if(this.bUseBatch){f=this._createBatchRequest([{__changeRequests:[n]}],y);h=this._submitRequest(f,this.bUseBatch,s,i,true)}else{h=this._submitRequest(n,this.bUseBatch,s,i)}return h};A.prototype.create=function(e,t,a){var s,i,r,n,o,d,u,h,f=false,c;if(a&&typeof a=="object"&&!(a instanceof m)){d=a.context;u=a.success;c=a.urlParameters;h=a.error;f=a.async===true}else{d=a;u=arguments[3];h=arguments[4]}r=this._createRequestUrl(e,d,c,this.bUseBatch);s=this._createRequest(r,"POST",f,t);e=this._normalizePath(e,d);o=this.oMetadata._getEntityTypeByPath(e);s.entityTypes={};if(o){s.entityTypes[o.entityType]=true}if(this.bUseBatch){i=this._createBatchRequest([{__changeRequests:[s]}],f);n=this._submitRequest(i,this.bUseBatch,u,h,true)}else{n=this._submitRequest(s,this.bUseBatch,u,h)}return n};A.prototype.remove=function(e,t){var a,s,i,r,n,o,d,u,h,f,c,l,p,y,_=false,g=this;if(t instanceof m||arguments[2]){a=t;r=arguments[2];n=arguments[3]}else if(t){a=t.context||t.oContext;r=t.success||t.fnSuccess;n=t.error||t.fnError;u=t.eTag||t.sETag;f=t.payload||t.oPayload;_=typeof t.async=="undefined"?t.bAsync===true:t.async===true;y=t.urlParameters}c=function(e,t){s=d.substr(d.lastIndexOf("/")+1);if(s.indexOf("?")!=-1){s=s.substr(0,s.indexOf("?"))}delete g.oData[s];delete g.mContexts["/"+s];if(r){r(e,t)}};d=this._createRequestUrl(e,a,y,this.bUseBatch);o=this._createRequest(d,"DELETE",_,f,u);e=this._normalizePath(e,a);i=this._getObject(e);o.keys={};if(i){h=this._getKey(i);o.keys[h]=true}if(this.bUseBatch){l=this._createBatchRequest([{__changeRequests:[o]}],_);p=this._submitRequest(l,this.bUseBatch,c,n,true)}else{p=this._submitRequest(o,this.bUseBatch,c,n)}return p};A.prototype.callFunction=function(e,t){var a,s,i,r,u,h,c,l,p,y,_="GET",g={},b=this;if(t&&typeof t=="object"){_=t.method?t.method:_;h=t.urlParameters;c=t.context;l=t.success;p=t.error;y=t.async===true}else{_=t;h=arguments[2];c=arguments[3];l=arguments[4];p=arguments[5];y=arguments[6]===true}u=this.oMetadata._getFunctionImportMetadata(e,_);o(u,"Function "+e+" not found in the metadata !");if(u){i=this._createRequestUrl(e,c,null,this.bUseBatch);var m=new U(i);if(u.parameter!=null){f(h,function(t,a){var s=u.parameter.filter(function(e){return e.name==t&&e.mode=="In"});if(s.length>0){var i=s[0];g[t]=n.formatValue(a,i.type)}else{d.warning("Parameter "+t+" is not defined for function call "+e+"!")}})}if(_==="GET"){return b.read(e,c,g,true,l,p)}else{f(g,function(e,t){m.addQuery(e,t)});a=this._createRequest(m.toString(),_,y);if(this.bUseBatch){s=this._createBatchRequest([{__changeRequests:[a]}],y);r=this._submitRequest(s,this.bUseBatch,l,p,true)}else{r=this._submitRequest(a,this.bUseBatch,l,p)}return r}}return undefined};A.prototype.read=function(e,t){var a,s,i,r,o,u,h,f,c,l,p,y,_,g,b,M,R;if(t&&typeof t=="object"&&!(t instanceof m)){o=t.context;u=t.urlParameters;h=t.async!==false;f=t.success;c=t.error;l=t.filters;p=t.sorters}else{o=t;u=arguments[2];h=arguments[3]!==false;f=arguments[4];c=arguments[5]}h=h!==false;R=n._createUrlParamsArray(u);_=n.createSortParams(p);if(_){R.push(_)}if(l&&!this.oMetadata){d.fatal("Tried to use filters in read method before metadata is available.")}else{M=this._normalizePath(e,o);b=this.oMetadata&&this.oMetadata._getEntityTypeByPath(M);g=v.groupFilters(l);y=n.createFilterParams(g,this.oMetadata,b);if(y){R.push(y)}}s=this._createRequestUrl(e,o,R,this.bUseBatch);a=this._createRequest(s,"GET",h);if(this.bUseBatch){r=this._createBatchRequest([a],h);i=this._submitRequest(r,this.bUseBatch,f,c,true)}else{i=this._submitRequest(a,this.bUseBatch,f,c)}return i};A.prototype.createBatchOperation=function(e,t,a,s){var i={},r,n,o,d;c(i,this.mCustomHeaders,this.oHeaders);if(e.startsWith("/")){e=e.substr(1)}if(s){r=s.sETag}if(t!="GET"){r=this._getETag(e,a,r);if(r){i["If-Match"]=r}}if(this.bJSON){if(t!="DELETE"&&t!="GET"&&this.sMaxDataServiceVersion==="2.0"){i["Content-Type"]="application/json"}}else{i["Content-Type"]="application/atom+xml"}var u={requestUri:e,method:t.toUpperCase(),headers:i};if(a){u.data=a}if(t!="GET"&&t!="POST"){if(e&&e.indexOf("/")!=0){e="/"+e}n=this._getObject(e);if(n){o=this._getKey(n);u.keys={};u.keys[o]=true}}else if(t=="POST"){var h=e;if(e.indexOf("?")!=-1){h=e.substr(0,e.indexOf("?"))}d=this.oMetadata._getEntityTypeByPath(h);if(d){u.entityTypes={};u.entityTypes[d.entityType]=true}}return u};A.prototype.addBatchReadOperations=function(e){if(!Array.isArray(e)||e.length<=0){d.warning("No array with batch operations provided!");return false}var t=this;f(e,function(e,a){if(a.method!="GET"){d.warning("Batch operation should be a GET operation!");return false}t.aBatchOperations.push(a);return true});return undefined};A.prototype.addBatchChangeOperations=function(e){if(!Array.isArray(e)||e.length<=0){return false}f(e,function(e,t){if(t.method!="POST"&&t.method!="PUT"&&t.method!="MERGE"&&t.method!="DELETE"){d.warning("Batch operation should be a POST/PUT/MERGE/DELETE operation!");return false}return true});this.aBatchOperations.push({__changeRequests:e});return undefined};A.prototype.clearBatch=function(){this.aBatchOperations=[]};A.prototype.submitBatch=function(e,t,a,s){var i,r,n=this;function o(t,a){if(e){e(t,a,n._getBatchErrors(t))}}if(!(typeof e=="function")){var u=a;var h=t;a=e;e=h;t=u}a=a!==false;if(this.aBatchOperations.length<=0){d.warning("No batch operations in batch. No request will be triggered!");return false}i=this._createBatchRequest(this.aBatchOperations,a);r=this._submitRequest(i,true,o,t,false,s);this.clearBatch();return r};A.prototype.getServiceMetadata=function(){if(this.oMetadata&&this.oMetadata.isLoaded()){return this.oMetadata.getServiceMetadata()}return undefined};A.prototype.getServiceAnnotations=function(){if(this.oAnnotations&&this.oAnnotations.getAnnotationsData){return this.oAnnotations.getAnnotationsData()}return undefined};A.prototype.submitChanges=function(e,t,a){var s,i,r=this,n,o,d,u,h,c;if(this.sChangeKey){n=this.sChangeKey.replace(this.sServiceUrl,"");h=this._getObject(n);i=h;if(p(h)){i=y({},h);if(i.__metadata){d=i.__metadata.type;u=i.__metadata.etag;delete i.__metadata;if(d||u){i.__metadata={}}if(d){i.__metadata.type=d}if(u){i.__metadata.etag=u}}f(i,function(e,t){if(t&&t.__deferred){delete i[e]}});var _=this.oMetadata._getEntityTypeByPath(n);if(_){var g=this.oMetadata._getNavigationPropertyNames(_);f(g,function(e,t){delete i[t]})}i=this._removeReferences(i)}if(a&&a.sETag){o=a.sETag}s=this._createRequest(this.sChangeKey,"MERGE",true,i,o);if(this.sUrlParams){s.requestUri+="?"+this.sUrlParams}s.keys={};if(h){c=this._getKey(h);s.keys[c]=true}this.oRequestQueue[this.sChangeKey]=s}if(l(this.oRequestQueue)){return undefined}if(this.bUseBatch){var b=[];f(this.oRequestQueue,function(e,t){delete t._oRef;var a=y({},t);t._oRef=a;a.requestUri=a.requestUri.replace(r.sServiceUrl+"/","");if(a.data._bCreate){delete a.data._bCreate}b.push(a)});s=this._createBatchRequest([{__changeRequests:b}],true);this._submitRequest(s,this.bUseBatch,e,t,true)}else{f(this.oRequestQueue,function(a,s){delete s._oRef;var i=y({},s);s._oRef=i;if(i.data&&i.data._bCreate){delete i.data._bCreate}r._submitRequest(i,this.bUseBatch,e,t,true)})}return undefined};A.prototype._updateRequestQueue=function(e,t){var a,s,i,r=this;if(t){a=e.data.__batchRequests;if(a){for(var n=0;n<a.length;n++){s=a[n].__changeRequests;if(s){for(var o=0;o<s.length;o++){i=s[o];f(this.oRequestQueue,function(e,t){if(t._oRef===i&&e!==r.sChangeKey){delete r.oRequestQueue[e];delete r.oData[e];delete r.mContexts["/"+e]}else if(r.sChangeKey&&e===r.sChangeKey){delete r.oRequestQueue[e];r.sChangeKey=null}})}}}}}else{f(this.oRequestQueue,function(t,a){if(a._oRef===e&&t!==r.sChangeKey){delete r.oRequestQueue[t];delete r.oData[t];delete r.mContexts["/"+t]}else if(r.sChangeKey&&t===r.sChangeKey){delete r.oRequestQueue[t];r.sChangeKey=null}})}};A.prototype.resetChanges=function(e,t){var a;if(this.sChangeKey){a=this.sChangeKey.replace(this.sServiceUrl,"");this._loadData(a,null,e,t)}};A.prototype.setProperty=function(e,t,a,s){var i,r={},n={},o=this._createRequestUrl(e,a),d=e.substring(0,e.lastIndexOf("/")),u,h,f={},c=false;if(!this.resolve(e,a)){return false}o=o.replace(this.sServiceUrl+"/","");o=o.substring(0,o.indexOf("/"));o=this.sServiceUrl+"/"+o;i=e.substr(e.lastIndexOf("/")+1);n=this._getObject(d,a);if(!n){return false}h=d.split("/");for(var l=h.length-1;l>=0;l--){r=this._getObject(h.join("/"),a);if(r){u=this._getKey(r);if(u){break}}h.splice(l-1,1)}if(!u){u=this._getKey(a)}if(u){f[u]=true}if(n._bCreate){n[i]=t;c=true;this.checkUpdate(false,s,f)}else{if(!this.sChangeKey){this.sChangeKey=o}if(this.sChangeKey==o){n[i]=t;c=true;this.checkUpdate(false,s,f)}else{this.fireRejectChange({rejectedValue:t,oldValue:n[i]})}}return c};A.prototype._isHeaderPrivate=function(e){switch(e.toLowerCase()){case"accept":case"accept-language":case"maxdataserviceversion":case"dataserviceversion":return true;case"x-csrf-token":return this.bTokenHandling;default:return false}};A.prototype.setHeaders=function(e){var t={},a=this;if(e){f(e,function(e,s){if(a._isHeaderPrivate(e)){d.warning("Not allowed to modify private header: "+e)}else{t[e]=s}});this.mCustomHeaders=t}else{this.mCustomHeaders={}}if(this.oAnnotations){this.oAnnotations.setHeaders(this.mCustomHeaders)}};A.prototype.getHeaders=function(){return c({},this.mCustomHeaders,this.oHeaders)};A.prototype._getHeader=function(e,t){var a;for(a in t){if(a.toLowerCase()===e.toLowerCase()){return t[a]}}return null};A.prototype.hasPendingChanges=function(){return this.sChangeKey!=null};A.prototype.updateBindings=function(e){this.checkUpdate(e)};A.prototype.forceNoCache=function(e){this.bCache=!e};A.prototype.setTokenHandlingEnabled=function(e){this.bTokenHandling=e};A.prototype.setUseBatch=function(e){this.bUseBatch=e};A.prototype.formatValue=function(e,t){return n.formatValue(e,t)};A.prototype.deleteCreatedEntry=function(e){if(e){var t=e.getPath();delete this.mContexts[t];if(t.startsWith("/")){t=t.substr(1)}delete this.oRequestQueue[t];delete this.oData[t]}};A.prototype.createEntry=function(e,t){var a={},s,i,r;if(!e.startsWith("/")){e="/"+e}var n=this.oMetadata._getEntityTypeByPath(e);if(!n){o(n,"No Metadata for collection "+e+" found");return undefined}if(typeof t==="object"&&!Array.isArray(t)){a=t}else{for(var d=0;d<n.property.length;d++){var u=n.property[d];var h=t&&t.indexOf(u.name)>-1;if(!t||h){a[u.name]=this._createPropertyValue(u.type);if(h){t.splice(t.indexOf(u.name),1)}}}if(t){o(t.length===0,"No metadata for the following properties found: "+t.join(","))}}a._bCreate=true;s=e.substring(1)+"('"+_()+"')";this.oData[s]=a;a.__metadata={type:""+n.entityType};i=this._createRequestUrl(e);r=this._createRequest(i,"POST",true,a);r.entityTypes={};r.entityTypes[n.entityType]=true;this.oRequestQueue[s]=r;return this.getContext("/"+s)};A.prototype._createPropertyValue=function(e){var t=this.oMetadata._splitName(e);var a=t.namespace;var s=t.name;if(a.toUpperCase()!=="EDM"){var i={};var r=this.oMetadata._getObjectMetadata("complexType",s,a);o(r,"Complex type "+e+" not found in the metadata !");for(var n=0;n<r.property.length;n++){var d=r.property[n];i[d.name]=this._createPropertyValue(d.type)}return i}else{return this._getDefaultPropertyValue(s,a)}};A.prototype._getDefaultPropertyValue=function(e,t){return undefined};A.prototype._normalizePath=function(e,t){if(e&&e.indexOf("?")!=-1){e=e.substr(0,e.indexOf("?"))}if(!t&&!e.startsWith("/")){e="/"+e;d.warning(this+" path "+e+" should be absolute if no Context is set")}return this.resolve(e,t)};A.prototype.setRefreshAfterChange=function(e){this.bRefreshAfterChange=e};A.prototype.isList=function(e,t){e=this.resolve(e,t);return e&&e.substr(e.lastIndexOf("/")).indexOf("(")===-1};A.prototype.isMetaModelPath=function(e){return e.indexOf("##")==0||e.indexOf("/##")>-1};A.prototype._request=function(e,t,a,s,i,r){var n;if(this.bDestroyed){return{abort:function(){}}}var o=this;function d(e){return function(){if(o.aPendingRequestHandles){var t=o.aPendingRequestHandles.indexOf(n);if(t>-1){o.aPendingRequestHandles.splice(t,1)}}if(!(n&&n.bSuppressErrorHandlerCall)){e.apply(this,arguments)}}}n=C.request(e,d(t||C.defaultSuccess),d(a||C.defaultError),s,i,r);if(e.async!==false){this.aPendingRequestHandles.push(n)}return n};A.prototype.destroy=function(){this.bDestroyed=true;if(this.aPendingRequestHandles){for(var e=this.aPendingRequestHandles.length-1;e>=0;e--){var t=this.aPendingRequestHandles[e];if(t&&t.abort){t.bSuppressErrorHandlerCall=true;t.abort()}}delete this.aPendingRequestHandles}if(this.oMetadataLoadEvent){clearTimeout(this.oMetadataLoadEvent)}if(this.oMetadataFailedEvent){clearTimeout(this.oMetadataFailedEvent)}if(this.oMetadata){this.oMetadata.detachLoaded(this.onMetadataLoaded);this.oMetadata.detachFailed(this.onMetadataFailed);if(!this.oMetadata.isLoaded()&&!this.oMetadata.hasListeners("loaded")){this.oMetadata.destroy();delete this.oServiceData.oMetadata}delete this.oMetadata}if(this.oAnnotations){this.oAnnotations.detachFailed(this.onAnnotationsFailed);this.oAnnotations.detachLoaded(this.onAnnotationsLoaded);this.oAnnotations.destroy();delete this.oAnnotations;delete this.pAnnotationsLoaded}M.prototype.destroy.apply(this,arguments)};A.prototype._getAnnotationParser=function(e){if(!this.oAnnotations){this.oAnnotations=new R({annotationData:e,url:null,metadata:this.oMetadata,async:this.bLoadMetadataAsync,headers:this.mCustomHeaders});this.oAnnotations.attachFailed(this.onAnnotationsFailed,this);this.oAnnotations.attachLoaded(this.onAnnotationsLoaded,this)}return this.oAnnotations};A.prototype.onAnnotationsFailed=function(e){this.fireAnnotationsFailed(e.getParameters())};A.prototype.onAnnotationsLoaded=function(e){this.fireAnnotationsLoaded(e.getParameters())};A.prototype.addAnnotationUrl=function(e){var t=[].concat(e),a=[],s=[],i=[],r=this;f(t,function(e,t){var i=t.indexOf("$metadata");if(i>=0){if(i==0){t=r.sServiceUrl+"/"+t}a.push(t)}else{s.push(t)}});return this.oMetadata._addUrl(a).then(function(e){return Promise.all(e.map(function(e){i=i.concat(e.entitySets);return r.addAnnotationXML(e["metadataString"])}))}).then(function(){return r._getAnnotationParser().addUrl(s)}).then(function(e){return{annotations:e.annotations,entitySets:i}})};A.prototype.addAnnotationXML=function(e,t){return new Promise(function(a,s){this._getAnnotationParser().setXML(null,e,{success:a,error:s,fireEvents:!t})}.bind(this))};A.prototype.getMetaModel=function(){var e=this;if(!this.oMetaModel){this.oMetaModel=new T(this.oMetadata,this.oAnnotations,this);this.oMetaModel.loaded().then(function(){e.bMetaModelLoaded=true;e.checkUpdate(false,false,null,true)}).catch(()=>{})}return this.oMetaModel};A.prototype.annotationsLoaded=function(){return this.oMetadata.isLoaded()&&(!this.oAnnotations||this.oAnnotations.isLoaded())?null:this.pAnnotationsLoaded};return A});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/ODataPropertyBinding", ["./ODataMetaModel","sap/ui/model/Context","sap/ui/model/ChangeReason","sap/ui/model/PropertyBinding","sap/base/util/deepEqual"],function(t,e,i,a,s){"use strict";var o=a.extend("sap.ui.model.odata.ODataPropertyBinding",{constructor:function(t,e,i,s){a.apply(this,arguments);this.bInitial=true;this.oValue=this._getValue();this.vOriginalValue=undefined;this.getDataState().setValue(this.oValue);this.setIgnoreMessages(s&&s.ignoreMessages);this.bUseUndefinedIfUnresolved=s&&s.useUndefinedIfUnresolved}});o.prototype.initialize=function(){if(this.oModel.oMetadata.isLoaded()&&this.bInitial){this.checkUpdate(true);this.bInitial=false}};o.prototype.getValue=function(){return this.oValue};o.prototype._getValue=function(){return this.oModel._getObject(this.sPath,this.oContext,undefined,this.bUseUndefinedIfUnresolved)};o.prototype.setValue=function(t){if(this.bSuspended){return}if(!s(t,this.oValue)&&this.oModel.setProperty(this.sPath,t,this.oContext,true)){this.oValue=t;var e=this.getDataState();e.setValue(this.oValue);this.oModel.firePropertyChange({reason:i.Binding,path:this.sPath,context:this.oContext,value:t})}};o.prototype.setContext=function(t){var i,a=this.oContext;if(t&&t.isPreliminary&&t.isPreliminary()){return}if(e.hasChanged(this.oContext,t)){this.oContext=t;if(this.isRelative()){i=!!(a!==t&&this.getDataState().getMessages().length);this.checkUpdate(i)}}};o.prototype.checkUpdate=function(e){var a,o=this;if(this.bSuspended&&!e){return}a=t.getCodeListTerm(this.sPath);if(a){if(this.bInitial){this.oModel.getMetaModel().fetchCodeList(a).then(function(t){o.oValue=t;o._fireChange({reason:i.Change})},function(){})}return}var n=this.getDataState();var h=false;var r=this.oModel.getOriginalProperty(this.sPath,this.oContext);if(e||!s(r,this.vOriginalValue)){this.vOriginalValue=r;n.setOriginalValue(r);h=true}var u=this._getValue();if(e||!s(u,this.oValue)){this.oValue=u;n.setValue(this.oValue);this._fireChange({reason:i.Change});h=true}if(h){this.checkDataState()}};o.prototype.checkDataState=function(t){var e=this.oModel.resolve(this.sPath,this.oContext,true)||this.getResolvedPath();this.getDataState().setLaundering(!!t&&!!(e in t));a.prototype._checkDataState.call(this,e,t)};o.prototype.supportsIgnoreMessages=function(){return true};return o});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/ODataTreeBinding", ["./CountMode","sap/base/Log","sap/base/util/each","sap/ui/model/TreeBinding"],function(e,t,s,o){"use strict";var i=o.extend("sap.ui.model.odata.ODataTreeBinding",{constructor:function(e,s,i,r,n){o.apply(this,arguments);this.bPendingRequest=false;this.oFinalLengths={};this.oLengths={};this.oKeys={};this.bNeedsUpdate=false;this.bHasTreeAnnotations=this._hasTreeAnnotations();this.oRootContext=null;this.iNumberOfExpandedLevels=n&&n.numberOfExpandedLevels;this.sCountMode=n&&n.countMode||this.oModel.sDefaultCountMode;if(!this.bHasTreeAnnotations){if(!n||!n.navigation){t.error("A navigation paths parameter object has to be defined");this.oNavigationPaths={}}else{this.oNavigationPaths=n.navigation}}else{t.warning("Tree hierarchy annotations are deprecated and may not work correctly with the sap.ui.model.odata.ODataModel."+" Please use the sap.ui.model.odata.v2.ODataModel (since version 1.28) instead which fully supports hierarchy annotations.")}}});i.prototype.getRootContexts=function(e,t,s){var o=null,i={numberOfExpandedLevels:this.iNumberOfExpandedLevels},r=[],n=true,a=this;if(this.bHasTreeAnnotations){i.level=0;if(!this.bDisplayRootNode){i.level=1}}else{o=this.oModel.resolve(this.getPath(),this.getContext());i.navPath=this._getNavPath(this.getPath());if(i.numberOfExpandedLevels>0){var h=o;for(var l=0;l<i.numberOfExpandedLevels;l++){var f=this._getNavPath(h);i.navPath+="/"+f;h+="/"+f}}var u=this.oModel.isList(this.sPath,this.getContext());if(u){this.bDisplayRootNode=true}else{n=false;this.oModel.createBindingContext(o,null,{expand:i.navPath},function(e){r=[e];if(a.oRootContext!==e){a.oRootContext=e;a._processODataObject(e.getObject(),o,i.navPath);a.bNeedsUpdate=true}},this.bRefresh);this.bRefresh=false}}if(n){if(!this.bDisplayRootNode){r=this._getContextsForNodeId(o,0,1,0,i)}else{r=this._getContextsForNodeId(o,e,t,s,i)}}if(!this.bDisplayRootNode&&r.length>0){this.oRootContext=r[0];r=this.getNodeContexts(r[0],e,t,s)}return r};i.prototype.getNodeContexts=function(e,t,s,o){var i,r={};if(this.bHasTreeAnnotations){var n=e.getProperty(this.oTreeProperties["hierarchy-drill-state-for"]);if(n=="leaf"){return[]}i=e.getProperty(this.oTreeProperties["hierarchy-node-for"]);r.level=parseInt(e.getProperty(this.oTreeProperties["hierarchy-level-for"]))+1}else{var a=this._getNavPath(e.getPath());if(!a){return[]}i=this.oModel.resolve(a,e);r.navPath=this.oNavigationPaths[a]}return this._getContextsForNodeId(i,t,s,o,r)};i.prototype.hasChildren=function(e){if(!e){return false}if(this.bHasTreeAnnotations){var t=e.getProperty(this.oTreeProperties["hierarchy-drill-state-for"]);return t==="expanded"||t==="collapsed"}else{var s=this._getNavPath(e.getPath());var o=e.getPath()+"/"+s;return s&&this.oLengths[o]>0}};i.prototype.getChildCount=function(e){if(this.bHasTreeAnnotations){var t;if(!e){if(this.oRootContext){t=this.oRootContext.getProperty(this.oTreeProperties["hierarchy-node-for"])}else{t="000000"}}else{t=e.getProperty(this.oTreeProperties["hierarchy-node-for"])}return this.oLengths[t]}else{if(!e){return this.oLengths[this.getPath()]}return this.oLengths[e.getPath()+"/"+this._getNavPath(e.getPath())]}};i.prototype._getContextsForNodeId=function(e,t,s,o,i){var r=[],n,a;if(!t){t=0}if(!s){s=this.oModel.iSizeLimit}if(!o){o=0}if(this.bHasTreeAnnotations){if(e==null){e="000000"}if(i.level==0){i.level++}}if(this.oFinalLengths[e]&&this.oLengths[e]<s){s=this.oLengths[e]}if(this.oKeys[e]){for(var h=t;h<t+s;h++){a=this.oKeys[e][h];if(!a){break}r.push(this.oModel.getContext("/"+a))}}n=r.length!=s&&!(this.oFinalLengths[e]&&r.length>=this.oLengths[e]);if(this.oModel.getServiceMetadata()){if(!this.bPendingRequest&&n){var l=[];if(this.bHasTreeAnnotations){if(i.numberOfExpandedLevels>0){var f=i.level+i.numberOfExpandedLevels;l.push("$filter="+this.oTreeProperties["hierarchy-level-for"]+" le '0"+f+"'")}else{l.push("$filter="+this.oTreeProperties["hierarchy-level-for"]+" eq '0"+i.level+"' and "+this.oTreeProperties["hierarchy-parent-node-for"]+" eq '"+e+"'")}}else if(i.navPath){l.push("$expand="+i.navPath)}this._loadSubNodes(e,t,s,o,l,i)}}return r};i.prototype._getCountForNodeId=function(e,s,o,i,r){var n=this;var a=[];function h(t){n.oFinalLengths[e]=true;n.oLengths[e]=parseInt(t)}function l(e){var s="Request for $count failed: "+e.message;if(e.response){s+=", "+e.response.statusCode+", "+e.response.statusText+", "+e.response.body}t.warning(s)}var f;if(this.bHasTreeAnnotations){f=this.oModel.resolve(this.getPath(),this.getContext());a.push("$filter="+this.oTreeProperties["hierarchy-parent-node-for"]+" eq '"+e+"'")}else{f=e}if(f){var u=this.oModel._createRequestUrl(f+"/$count",null,a);var d=this.oModel._createRequest(u,"GET",false);d.headers["Accept"]="text/plain, */*;q=0.5";this.oModel._request(d,h,l,undefined,undefined,this.oModel.getServiceMetadata())}};i.prototype._loadSubNodes=function(t,s,o,i,r,n){var a=this,h=false;if(s||o){r.push("$skip="+s+"&$top="+o)}if(!a.bHasTreeAnnotations&&!this.oFinalLengths[t]&&(this.sCountMode==e.Inline||this.sCountMode==e.Both)){r.push("$inlinecount=allpages");h=true}function l(e){var o,i;if(e.results){if(!a.bHasTreeAnnotations){if(h&&e.__count){a.oLengths[t]=parseInt(e.__count);a.oFinalLengths[t]=true}else if(a.oModel.isCountSupported()){a._getCountForNodeId(t)}a.oKeys[t]=[];for(i=0;i<e.results.length;i++){o=e.results[i];var r=a.oModel._getKey(o);a._processODataObject(o,"/"+r,n.navPath);a.oKeys[t][i+s]=r}}else{var l={};for(i=0;i<e.results.length;i++){o=e.results[i];t=o[a.oTreeProperties["hierarchy-parent-node-for"]];if(i==0){l[t]=s}else if(l[t]==undefined){l[t]=0}if(!(t in a.oKeys)){a.oKeys[t]=[];a._getCountForNodeId(t)}a.oKeys[t][l[t]]=a.oModel._getKey(o);l[t]++}}}else{a.oKeys[null]=a.oModel._getKey(e);if(!a.bHasTreeAnnotations){a._processODataObject(e,t,n.navPath)}}a.oRequestHandle=null;a.bPendingRequest=false;a.bNeedsUpdate=true}function f(){a.fireDataReceived()}function u(e){a.oRequestHandle=null;a.bPendingRequest=false;a.fireDataReceived()}function d(e){a.oRequestHandle=e}if(t){if(!this.oFinalLengths[t]){this.bPendingRequest=true;this.fireDataRequested();var p;if(this.bHasTreeAnnotations){p=this.oModel.resolve(this.getPath(),this.getContext())}else{p=t}this.oModel._loadData(p,r,l,u,false,d,f)}}};i.prototype.resetData=function(e){if(e){var t=e.getPath();delete this.oKeys[t];delete this.oLengths[t];delete this.oFinalLengths[t]}else{this.oKeys={};this.oLengths={};this.oFinalLengths={};this.oRootContext=null}};i.prototype.refresh=function(e,t,o){var i=false;if(!e){if(o){var r=this.oModel.resolve(this.sPath,this.oContext);var n=this.oModel.oMetadata._getEntityTypeByPath(r);if(n&&n.entityType in o){i=true}}if(t&&!i){s(this.oKeys,function(e,o){s(o,function(e,s){if(s in t){i=true;return false}return true});if(i){return false}return true})}if(!t&&!o){i=true}}if(e||i){this.resetData();this.bNeedsUpdate=false;this.bRefresh=true;this._fireChange()}};i.prototype.filter=function(e){t.warning("Filtering is currently not possible in the ODataTreeBinding");return this};i.prototype.checkUpdate=function(e,t){var o=false;if(!e){if(this.bNeedsUpdate||!t){o=true}else{s(this.oKeys,function(e,i){s(i,function(e,s){if(s in t){o=true;return false}return true});if(o){return false}return true})}}if(e||o){this.bNeedsUpdate=false;this._fireChange()}};i.prototype._getNavPath=function(e){var t=this.oModel.resolve(e,this.getContext());if(!t){return undefined}var s=t.split("/"),o=s[s.length-1],i;var r=o.split("(")[0];if(r&&this.oNavigationPaths[r]){i=this.oNavigationPaths[r]}return i};i.prototype._processODataObject=function(e,t,s){var o=[],i=this;if(s&&s.indexOf("/")>-1){o=s.split("/");s=o[0];o.splice(0,1)}var r=this.oModel._getObject(t);if(Array.isArray(r)){this.oKeys[t]=r;this.oLengths[t]=r.length;this.oFinalLengths[t]=true}if(s&&e[s]){if(Array.isArray(r)){r.forEach(function(e){var t=i.getModel().getData("/"+e);i._processODataObject(t,"/"+e+"/"+s,o.join("/"))})}else if(typeof r==="object"){i._processODataObject(e,t+"/"+s,o.join("/"))}}};i.prototype._hasTreeAnnotations=function(){var e=this.oModel,o=e.oMetadata,i=e.resolve(this.getPath(),this.getContext()),r=o._getEntityTypeByPath(i),n=o.mNamespaces["sap"],a=this;this.oTreeProperties={"hierarchy-level-for":false,"hierarchy-parent-node-for":false,"hierarchy-node-for":false,"hierarchy-drill-state-for":false};if(!r){t.fatal("EntityType for path "+i+" could not be found.");return false}s(r.property,function(e,t){if(!t.extensions){return true}s(t.extensions,function(e,s){var o=s.name;if(s.namespace===n&&o in a.oTreeProperties&&!a.oTreeProperties[o]){a.oTreeProperties[o]=t.name}});return true});var h=false;s(this.oTreeProperties,function(e,t){if(!t){h=true;return false}return true});return!h};return i});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/ODataTreeBindingAdapter", ["sap/ui/model/TreeBinding","./v2/ODataTreeBinding","sap/ui/model/TreeBindingAdapter","sap/ui/model/TreeAutoExpandMode","sap/ui/model/ChangeReason","./OperationMode","sap/base/assert","sap/ui/model/Filter","sap/ui/model/odata/ODataUtils"],function(e,t,r,i,o,s,a,n,h){"use strict";var p=function(){if(!(this instanceof e)||this._bIsAdapted){return}r.apply(this);for(var t in p.prototype){if(p.prototype.hasOwnProperty(t)){this[t]=p.prototype[t]}}this.mParameters=this.mParameters||{};this._aRowIndexMap=[];this._iThreshold=0;this._iPageSize=0;this.setAutoExpandMode(this.mParameters.autoExpandMode||i.Sequential);if(this.mParameters.collapseRecursive===undefined){this.bCollapseRecursive=true}else{this.bCollapseRecursive=!!this.mParameters.collapseRecursive}this._createTreeState();if(this.mParameters.treeState&&this.sOperationMode==s.Client){this.setTreeState(this.mParameters.treeState)}};p.prototype.nodeHasChildren=function(e){a(e,"ODataTreeBindingAdapter.nodeHasChildren: No node given!");if(!e){return false}else if(e.isArtificial){return true}else{return t.prototype.hasChildren.call(this,e.context)}};p.prototype._calculateGroupID=function(e){var t="";var r="";var i;if(e.context===null){return"/"}if(e.parent){t=e.parent.groupID;t=t[t.length-1]!=="/"?t+"/":t;if(this.bHasTreeAnnotations){i=(e.context.getProperty(this.oTreeProperties["hierarchy-node-for"])+"").replace(/\//g,"%2F");r=i+"/"}else{r=e.context.sPath.substring(1)+"/"}}else if(this.bHasTreeAnnotations){t="/";i=(e.context.getProperty(this.oTreeProperties["hierarchy-node-for"])+"").replace(/\//g,"%2F");r=i+"/"}else{t="/";r=e.context.sPath[0]==="/"?e.context.sPath.substring(1):e.context.sPath}var o=t+r;return o};p.prototype.resetData=function(e,r){t.prototype.resetData.call(this,e,r);this._aRowIndexMap=[];this._oRootNode=undefined;this._iPageSize=0;this._iThreshold=0;if(!r||r.reason!==o.Sort){this.clearSelection();this._createTreeState(true)}};p.prototype.expandNodeToLevel=function(e,t,r){var i=this;if(this.sOperationMode!=="Server"){return Promise.reject(new Error("expandNodeToLevel() does not support binding operation modes other than OperationMode.Server"))}var s=this.findNode(e),a=[],p="";if(this.sOperationMode=="Server"||this.bUseServersideApplicationFilters){p=this.getFilterParams()}var d=s.context.getProperty(this.oTreeProperties["hierarchy-node-for"]);var l=this._getEntityType();var u=h._createFilterParams(new n(this.oTreeProperties["hierarchy-node-for"],"EQ",d),this.oModel.oMetadata,l);var c=this._getLevelFilterParams("LE",t);a.push("$filter="+u+"%20and%20"+c+(p?"%20and%20"+p:""));if(this.sCustomParams){a.push(this.sCustomParams)}return this._loadSubTree(s,a).then(function(e){var a=e.results.filter(function(e){return e[i.oTreeProperties["hierarchy-level-for"]]<t});this._expandSubTree(s,a);if(!r){this._fireChange({reason:o.Expand})}}.bind(this))};p.prototype._expandSubTree=function(e,t){this._updateTreeState({groupID:e.groupID,expanded:true});var r,i,o,s={},a;o=e.context.getProperty(this.oTreeProperties["hierarchy-node-for"]);s[o]=e.groupID;for(a=1;a<t.length;a++){var n,h,p,d,l;d=t[a];n=d[this.oTreeProperties["hierarchy-node-for"]];r=d[this.oTreeProperties["hierarchy-parent-node-for"]];if(d[this.oTreeProperties["hierarchy-drill-state-for"]]==="leaf"){continue}h=this.oModel._getKey(d);l=this.oModel.getContext("/"+h);i=s[r];p=this._calculateGroupID({parent:{groupID:i},context:l});s[n]=p;this._updateTreeState({groupID:p,expanded:true})}};p.prototype.getLength=function(){if((!this._oRootNode||!this._oRootNode.magnitude)&&this.oFinalLengths[null]){return this.oLengths[null]}return r.prototype.getLength.apply(this)};return p},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/ODataTreeBindingFlat", ["sap/base/assert","sap/base/Log","sap/base/util/extend","sap/base/util/isEmptyObject","sap/base/util/uid","sap/ui/model/_Helper","sap/ui/model/ChangeReason","sap/ui/model/Context","sap/ui/model/Filter","sap/ui/model/TreeBinding","sap/ui/model/TreeBindingUtils","sap/ui/model/odata/v2/ODataTreeBinding"],function(e,t,i,n,r,o,s,a,d,l,h,u){"use strict";var f="sap.ui.model.odata.ODataTreeBindingFlat";var p=function(){if(!(this instanceof l)||this._bIsAdapted){return}for(var e in p.prototype){if(p.prototype.hasOwnProperty(e)){this[e]=p.prototype[e]}}this.mParameters=this.mParameters||{};this._iPageSize=0;this._aNodes=this._aNodes||[];this._aNodeCache=[];this._aCollapsed=this._aCollapsed||[];this._aExpanded=this._aExpanded||[];this._aRemoved=[];this._aAdded=[];this._aNodeChanges=[];this._aAllChangedNodes=[];this._aTurnedToLeaf=[];this._mSubtreeHandles={};this._iLowestServerLevel=null;this._aExpandedAfterSelectAll=this._aExpandedAfterSelectAll||[];this._mSelected=this._mSelected||{};this._mDeselected=this._mDeselected||{};this._bSelectAll=false;this._iLengthDelta=0;if(this.mParameters.collapseRecursive===undefined){this.bCollapseRecursive=true}else{this.bCollapseRecursive=!!this.mParameters.collapseRecursive}this._bIsAdapted=true;this._bReadOnly=true;this._aPendingRequests=[];this._aPendingChildrenRequests=[];this._aPendingSubtreeRequests=[];this._bSubmitChangesCalled=false};p.prototype.setNumberOfExpandedLevels=function(e){this.resetData();u.prototype.setNumberOfExpandedLevels.apply(this,arguments)};p.prototype.getContexts=function(e,t,i){return this._getContextsOrNodes(false,e,t,i)};p.prototype._getContextsOrNodes=function(e,t,i,n){if(!this.isResolved()||this.isInitial()){return[]}t=t||0;i=i||this.oModel.iSizeLimit;n=n||0;this._iPageSize=i;this._iThreshold=n;if(this._aNodes.length==0&&!this.isLengthFinal()){this._loadData(t,i,n)}var r=[];var o=this._retrieveNodeSection(t,i);this._aNodeCache=[];var s;var a=0;var d=0;var l={};for(var h=0;h<o.length;h++){var u=o[h];this._aNodeCache[t+h]=u&&u.context?u:undefined;r.push(u.context);if(!u.context){if(u.serverIndex!=undefined){if(s==undefined){s=u.serverIndex}d=u.serverIndex}else if(u.positionInParent!=undefined){var f=u.parent;l[f.key]=l[f.key]||[];l[f.key].push(u)}}}a=1+Math.max(d-(s||0),0);if(s!=undefined&&a){this._loadData(s,a,n)}for(var p in l){var c=this._calculateRequestParameters(l[p]);this._loadChildren(l[p][0].parent,c.skip,c.top)}if(e){return o}else{return r}};p.prototype._calculateRequestParameters=function(e){var t,i=e[0].positionInParent,n=e[0].parent,r=Math.min(i+Math.max(this._iThreshold,e.length),n.children.length);for(t=i;t<r;t++){var o=n.children[t];if(o){break}}return{skip:i,top:t-i}};p.prototype._retrieveNodeSection=function(e,t){return this._bReadOnly?this._indexRetrieveNodeSection(e,t):this._mapRetrieveNodeSection(e,t)};p.prototype._hasPendingRequest=function(e){return this._aPendingChildrenRequests.some(t=>t.sParent===e)};p.prototype._turnNodeToLeaf=function(e){e.nodeState.collapsed=false;e.nodeState.expanded=false;e.nodeState.isLeaf=true;e.nodeState.wasExpanded=true;this._aTurnedToLeaf.push(e)};p.prototype._mapRetrieveNodeSection=function(e,t){const i=this.getLength()-1;var n=-1;var r=[];let o;this._map((s,a,d,l,h)=>{n++;if(s&&this._aRemoved.length){if(o&&o.nodeState.expanded&&o.level>=s.level&&!this._hasPendingRequest(o.key)){this._turnNodeToLeaf(o)}else if(s.nodeState.expanded&&i===n&&!this._hasPendingRequest(s.key)){this._turnNodeToLeaf(s)}}o=s;if(n>=e){if(!s){if(d=="serverIndex"){s={serverIndex:l}}else if(d=="positionInParent"){s={positionInParent:l,parent:h}}}r.push(s)}if(r.length>=t){a.broken=true}});return r};p.prototype._indexRetrieveNodeSection=function(e,t){var i,n=[],r,o;for(i=e;i<e+t;i++){r=this.getNodeInfoByRowIndex(i);if(r.index!==undefined&&r.index<this._aNodes.length){o=this._aNodes[r.index];if(!o){o={serverIndex:r.index}}}else if(r.parent){o=r.parent.children[r.childIndex];if(!o){o={parent:r.parent,positionInParent:r.childIndex}}}if(o){n.push(o);o=null}}return n};p.prototype.getNodes=function(e,t,i){return this._getContextsOrNodes(true,e,t,i)};p.prototype._map=function(e){var t,i,n,r,o={broken:false};t=function(e){if(e.addedSubtrees.length>0&&!e.nodeState.collapsed){for(var t=0;t<e.addedSubtrees.length;t++){var n=e.addedSubtrees[t];i(e,n);if(o.broken){return}}}};i=function(e,t){var i=t._getSubtree();if(t){if(Array.isArray(i)){if(t._oSubtreeRoot){r(i,t._oSubtreeRoot.serverIndex,t._oSubtreeRoot,t._oSubtreeRoot.originalLevel||0,e.level+1)}else{r(i,null,null,0,e.level+1)}}else{t._oSubtreeRoot.level=e.level+1;n(t._oSubtreeRoot,false,t._oNewParentNode,-1,t._oSubtreeRoot)}}};n=function(i,r,s,a,d){if(!r){if(!i.nodeState.removed||d==i){e(i,o,"positionInParent",a,s);if(o.broken){return}}}t(i);if(o.broken){return}if(i&&i.children&&i.nodeState.expanded){for(var l=0;l<i.children.length;l++){var h=i.children[l];if(h&&!h.nodeState.removed&&!h.nodeState.reinserted){h.level=i.level+1}if(h&&!h.nodeState.removed){n(h,false,i,l,d)}else if(!h){e(h,o,"positionInParent",l,i)}if(o.broken){return}}}};r=function(i,r,s,a,d){for(var l=0;l<i.length;l++){var h=i[l];if(h&&h.nodeState&&h.nodeState.removed&&h!=s){if(!h.initiallyCollapsed){l+=h.magnitude}continue}if(h&&a>=0&&d>=0){h.level=h.originalLevel||0;var u=h.level-a||0;h.level=d+u||0}if(r===null){e(h,o,"newNode")}else{e(h,o,"serverIndex",r+l)}if(o.broken){return}if(h&&h.nodeState){if(!h.initiallyCollapsed&&h.nodeState.collapsed){l+=h.magnitude}else if(h.initiallyCollapsed&&h.nodeState.expanded){n(h,true);if(o.broken){return}}else if(!h.initiallyCollapsed&&h.nodeState.expanded){t(h)}}if(o.broken){return}}};r(this._aNodes,0,null)};p.prototype._loadData=function(e,t,i){var n=this;if(!this.bSkipDataEvents){this.fireDataRequested()}this.bSkipDataEvents=false;return this._requestServerIndexNodes(e,t,i).then(function(e){n._addServerIndexNodes(e.oData,e.iSkip);n._fireChange({reason:s.Change});n.fireDataReceived({data:e.oData})},function(e){var t=e.statusCode===0;if(!t){n._aNodes=[];n._bLengthFinal=true;n._fireChange({reason:s.Change});n.fireDataReceived()}})};p.prototype._restoreServerIndexNodes=function(e,t,i){var n=this;return this._requestServerIndexNodes(e,t,0,i).then(function(e){n._addServerIndexNodes(e.oData,e.iSkip);return e})};p.prototype._addServerIndexNodes=function(e,i){var n,r,o,s,a=function(e,t){return!e.isDeepOne&&!e.initiallyCollapsed&&e.serverIndex<o&&e.serverIndex+e.magnitude>=o};if(!this._bLengthFinal){var d=e.__count?parseInt(e.__count):0;this._aNodes[d-1]=undefined;this._bLengthFinal=true}if(e.results&&e.results.length>0){for(s=0;s<e.results.length;s++){n=e.results[s];r=this.oModel.getKey(n);o=i+s;const d=n[this.oTreeProperties["hierarchy-node-descendant-count-for"]];let h=Number(d);if(h<0){h=0;t.error("The entry data with key '"+r+"' under binding path '"+this.getPath()+"' has a negative 'hierarchy-node-descendant-count-for' which isn't allowed.")}if(!Number.isSafeInteger(h)){t.error("The value of magnitude is not a safe integer: "+JSON.stringify(d),this.getResolvedPath(),f)}var l=this._aNodes[o]=this._aNodes[o]||{key:r,context:this.oModel.getContext("/"+r,this.oModel.resolveDeep(this.sPath,this.oContext)+r.slice(r.indexOf("("))),magnitude:h,level:n[this.oTreeProperties["hierarchy-level-for"]],originalLevel:n[this.oTreeProperties["hierarchy-level-for"]],initiallyCollapsed:n[this.oTreeProperties["hierarchy-drill-state-for"]]==="collapsed",initiallyIsLeaf:n[this.oTreeProperties["hierarchy-drill-state-for"]]==="leaf",nodeState:{isLeaf:n[this.oTreeProperties["hierarchy-drill-state-for"]]==="leaf",expanded:n[this.oTreeProperties["hierarchy-drill-state-for"]]==="expanded",collapsed:n[this.oTreeProperties["hierarchy-drill-state-for"]]==="collapsed",selected:this._mSelected[r]?this._mSelected[r].nodeState.selected:false},children:[],addedSubtrees:[],serverIndex:o,parent:null,originalParent:null,isDeepOne:false};if(this._iLowestServerLevel===null){this._iLowestServerLevel=l.level}else{this._iLowestServerLevel=Math.min(this._iLowestServerLevel,l.level)}if(this._bSelectAll){if(!this._aExpandedAfterSelectAll.some(a)){this.setNodeSelection(l,true)}}}}};p.prototype._requestServerIndexNodes=function(e,t,i,n){return new Promise(function(r,o){var s={iSkip:e,iTop:t+(i||0),iThreshold:i};this._aPendingRequests.sort(function(e,t){return e.iSkip-t.iSkip});for(var a=0;a<this._aPendingRequests.length;a++){if(h._determineRequestDelta(s,this._aPendingRequests[a])===false){return}}e=s.iSkip;t=s.iTop;function l(i){var n=this._aPendingRequests.indexOf(s);this._aPendingRequests.splice(n,1);r({oData:i,iSkip:e,iTop:t})}function u(e){var t=this._aPendingRequests.indexOf(s);this._aPendingRequests.splice(t,1);o(e)}var f=["$skip="+e,"$top="+t];if(!this._bLengthFinal||n){f.push("$inlinecount=allpages")}if(this.sCustomParams){f.push(this.sCustomParams)}var p=new d(this.oTreeProperties["hierarchy-level-for"],"LE",this.getNumberOfExpandedLevels());var c=[p];if(this.aApplicationFilters){c=c.concat(this.aApplicationFilters)}var _=this.getResolvedPath();if(_){s.oRequestHandle=this.oModel.read(_,{headers:this._getHeaders(),urlParameters:f,filters:[new d({filters:c,and:true})],sorters:this.aSorters||[],success:l.bind(this),error:u.bind(this),groupId:this.sRefreshGroupId?this.sRefreshGroupId:this.sGroupId});this._aPendingRequests.push(s)}}.bind(this))};p.prototype._propagateMagnitudeChange=function(e,t){while(e!=null&&(e.initiallyCollapsed||e.isDeepOne)){e.magnitude+=t;if(!e.nodeState.expanded){return}e=e.parent}};p.prototype._getInitialMagnitude=function(e){var t=0,i;if(e.isDeepOne){return 0}if(e.children){for(var n=0;n<e.children.length;n++){i=e.children[n];t+=i.magnitude+1}}return e.magnitude-t};p.prototype._loadChildren=function(e,t,i){var n=this;if(!this.bSkipDataEvents){this.fireDataRequested()}this.bSkipDataEvents=false;this._requestChildren(e,t,i).then(function(t){n._addChildNodes(t.oData,e,t.iSkip);n._fireChange({reason:s.Change});n.fireDataReceived({data:t.oData})},function(t){var i=t.statusCode===0;if(!i){if(e.childCount===undefined){e.children=[];e.childCount=0;n._fireChange({reason:s.Change})}n.fireDataReceived()}})};p.prototype._restoreChildren=function(e,t,i){var n=this,r=e.context.getProperty(this.oTreeProperties["hierarchy-node-for"]);return this._requestChildren(e,t,i,true).then(function(e){var t;n._map(function(e,i){if(e&&e.context.getProperty(n.oTreeProperties["hierarchy-node-for"])===r){t=e;i.broken=true}});if(t){n._addChildNodes(e.oData,t,e.iSkip);n.expand(t,true)}return e})};p.prototype._addChildNodes=function(e,t,i){if(t.childCount==undefined&&e&&e.__count){var n=e.__count?parseInt(e.__count):0;t.childCount=n;t.children[n-1]=undefined;if(t.nodeState.expanded){this._propagateMagnitudeChange(t,n)}else{t.magnitude=n}this._cleanTreeStateMaps()}if(e.results&&e.results.length>0){for(var r=0;r<e.results.length;r++){var o=e.results[r];this._createChildNode(o,t,i+r)}}};p.prototype._createChildNode=function(e,t,i){var n=this.oModel.getKey(e);var r;if(t.containingServerIndex!==undefined){r=t.containingServerIndex}else{r=t.serverIndex}var o=t.children[i]=t.children[i]||{key:n,context:this.oModel.getContext("/"+n,this.oModel.resolveDeep(this.sPath,this.oContext)+n.slice(n.indexOf("("))),magnitude:0,level:t.level+1,originalLevel:t.level+1,initiallyCollapsed:e[this.oTreeProperties["hierarchy-drill-state-for"]]==="collapsed",initiallyIsLeaf:e[this.oTreeProperties["hierarchy-drill-state-for"]]==="leaf",nodeState:{isLeaf:e[this.oTreeProperties["hierarchy-drill-state-for"]]==="leaf",expanded:e[this.oTreeProperties["hierarchy-drill-state-for"]]==="expanded",collapsed:e[this.oTreeProperties["hierarchy-drill-state-for"]]==="collapsed",selected:this._mSelected[n]?this._mSelected[n].nodeState.selected:false},positionInParent:i,children:[],addedSubtrees:[],parent:t,originalParent:t,isDeepOne:true,containingServerIndex:r};if(this._bSelectAll&&this._aExpandedAfterSelectAll.indexOf(t)===-1){this.setNodeSelection(o,true)}return o};p.prototype._requestChildren=function(e,t,i,n){return new Promise(function(r,o){var s={sParent:e.key,iSkip:t,iTop:i};this._aPendingChildrenRequests.sort(function(e,t){return e.iSkip-t.iSkip});for(var a=0;a<this._aPendingChildrenRequests.length;a++){var l=this._aPendingChildrenRequests[a];if(l.sParent===s.sParent){if(h._determineRequestDelta(s,l)===false){return}}}t=s.iSkip;i=s.iTop;function u(e){var n=this._aPendingChildrenRequests.indexOf(s);this._aPendingChildrenRequests.splice(n,1);r({oData:e,iSkip:t,iTop:i})}function f(e){var t=this._aPendingChildrenRequests.indexOf(s);this._aPendingChildrenRequests.splice(t,1);o(e)}var p=["$skip="+t,"$top="+i];if(e.childCount==undefined||n){p.push("$inlinecount=allpages")}if(this.sCustomParams){p.push(this.sCustomParams)}var c=new d(this.oTreeProperties["hierarchy-parent-node-for"],"EQ",e.context.getProperty(this.oTreeProperties["hierarchy-node-for"]));var _=[c];if(this.aApplicationFilters){_=_.concat(this.aApplicationFilters)}var v=this.getResolvedPath();if(v){s.oRequestHandle=this.oModel.read(v,{headers:this._getHeaders(),urlParameters:p,filters:[new d({filters:_,and:true})],sorters:this.aSorters||[],success:u.bind(this),error:f.bind(this),groupId:this.sRefreshGroupId?this.sRefreshGroupId:this.sGroupId});this._aPendingChildrenRequests.push(s)}}.bind(this))};p.prototype._loadSubTree=function(e,i){var n=this;var r;if(e.serverIndex!==undefined&&!e.initiallyCollapsed){var o=[];var s;var a=e.serverIndex+1;var d=a+e.magnitude;for(var l=a;l<d;l++){if(this._aNodes[l]===undefined){if(!s){s={iSkip:l,iTop:1};o.push(s)}else{s.iTop++}}else{s=null}}if(o.length){r=Promise.all(o.map(function(e){return n._loadData(e.iSkip,e.iTop)}))}}if(!r){r=Promise.resolve()}return r.then(function(){if(!n.bSkipDataEvents){n.fireDataRequested()}n.bSkipDataEvents=false;return n._requestSubTree(e,i).then(function(t){n._addSubTree(t.oData,e);n.fireDataReceived({data:t.oData})},function(e){t.warning("ODataTreeBindingFlat: Error during subtree request",e.message);var i=e.statusCode===0;if(!i){n.fireDataReceived()}})})};p.prototype._addSubTree=function(e,t){if(e.results&&e.results.length>0){var i,n,r,o,s,a=[],d={},l,h,u;if(t.serverIndex!==undefined&&!t.initiallyCollapsed){a=this._aNodes.slice(t.serverIndex,t.serverIndex+t.magnitude+1)}else{a.push(t)}for(h=a.length-1;h>=0;h--){o=a[h];if(o.nodeState.isLeaf){continue}if(o.initiallyCollapsed||o.isDeepOne){o.childCount=undefined;if(o.magnitude&&o.nodeState.expanded){this._propagateMagnitudeChange(o.parent,-o.magnitude)}o.magnitude=0}d[o.context.getProperty(this.oTreeProperties["hierarchy-node-for"])]=o}for(l=0;l<e.results.length;l++){r=e.results[l];i=r[this.oTreeProperties["hierarchy-node-for"]];if(d[i]){continue}n=r[this.oTreeProperties["hierarchy-parent-node-for"]];s=d[n];if(s.childCount===undefined){s.childCount=0}o=s.children[s.childCount];if(o){a.push(o);if(o.childCount){o.childCount=undefined;if(o.initiallyCollapsed||o.isDeepOne){o.magnitude=0}}}else{o=this._createChildNode(r,s,s.childCount);if(o.nodeState.expanded){this._aExpanded.push(o);this._sortNodes(this._aExpanded)}}s.childCount++;if(s.nodeState.expanded){this._propagateMagnitudeChange(s,1)}else{s.magnitude++}if(!o.nodeState.isLeaf){d[i]=o}}for(u=a.length-1;u>=0;u--){o=a[u];if(!o.nodeState.expanded&&!o.nodeState.isLeaf){this.expand(o,true)}}}};p.prototype._requestSubTree=function(e,t){return new Promise(function(i,n){var r={sParent:e.key,iLevel:t};for(var o=0;o<this._aPendingSubtreeRequests.length;o++){var s=this._aPendingSubtreeRequests[o];if(s.sParent===r.sParent&&s.iLevel===r.iLevel){return}}function a(e){var t=this._aPendingSubtreeRequests.indexOf(r);this._aPendingSubtreeRequests.splice(t,1);i({oData:e,sParent:r.sParent,iLevel:r.iLevel})}function l(e){var t=this._aPendingSubtreeRequests.indexOf(r);this._aPendingSubtreeRequests.splice(t,1);n(e)}var h=[];if(this.sCustomParams){h.push(this.sCustomParams)}const u=this.oTreeProperties["hierarchy-node-for"];const f=new d(u,"EQ",e.context.getProperty(u));var p=new d(this.oTreeProperties["hierarchy-level-for"],"LE",t);var c=[f,p];if(this.aApplicationFilters){c=c.concat(this.aApplicationFilters)}var _=this.getResolvedPath();if(_){r.oRequestHandle=this.oModel.read(_,{headers:this._getHeaders(),urlParameters:h,filters:[new d({filters:c,and:true})],sorters:this.aSorters||[],success:a.bind(this),error:l.bind(this),groupId:this.sRefreshGroupId?this.sRefreshGroupId:this.sGroupId});this._aPendingSubtreeRequests.push(r)}}.bind(this))};p.prototype.findNode=function(e){return this._bReadOnly?this._indexFindNode(e):this._mapFindNode(e)};p.prototype._mapFindNode=function(e){if(this.isInitial()){return undefined}var t=this._aNodeCache[e];if(t){return t}var i=-1;this._map(function(n,r,o,s,a){i++;if(i===e){t=n;r.broken=true}});return t};p.prototype._indexFindNode=function(e){if(this.isInitial()){return undefined}var t=this._aNodeCache[e];if(t){return t}var i=this.getNodeInfoByRowIndex(e);if(i.parent){t=i.parent.children[i.childIndex]}else{t=this._aNodes[i.index]}this._aNodeCache[e]=t;return t};p.prototype.toggleIndex=function(t){var i=this.findNode(t);e(i!=undefined,"toggleIndex("+t+"): Node not found!");if(i){if(i.nodeState.expanded){this.collapse(i)}else{this.expand(i)}}};p.prototype.expand=function(t,i){var n=t;if(typeof t!=="object"){n=this.findNode(t);e(n!=undefined,"expand("+t+"): Node not found!")}if(n.nodeState.expanded){return}n.nodeState.expanded=true;n.nodeState.collapsed=false;var r=this._aCollapsed.indexOf(n);if(r!=-1){this._aCollapsed.splice(r,1)}this._aExpanded.push(n);this._sortNodes(this._aExpanded);if(n.serverIndex!==undefined){this._aNodeChanges[n.serverIndex]=true}if(this._bSelectAll){this._aExpandedAfterSelectAll.push(n)}if(n.initiallyCollapsed&&n.childCount==undefined){this._loadChildren(n,0,this._iPageSize+this._iThreshold)}else{this._propagateMagnitudeChange(n.parent,n.magnitude)}this._cleanTreeStateMaps();this._aNodeCache=[];if(!i){this._fireChange({reason:s.Expand})}};p.prototype.expandToLevel=function(e){this.setNumberOfExpandedLevels(e)};p.prototype.expandNodeToLevel=function(e,t,i){if(!this._bReadOnly){return Promise.reject(new Error("ODataTreeBindingFlat: expandNodeToLevel is not supported while there are pending changes in the hierarchy"))}var n=this.findNode(e);return this._loadSubTree(n,t).then(function(){if(!i){this._fireChange({reason:s.Expand})}}.bind(this))};p.prototype.collapse=function(t,i){var n=t;if(typeof t!=="object"){n=this.findNode(t);e(n!=undefined,"expand("+t+"): Node not found!")}if(n.nodeState.collapsed){return}n.nodeState.expanded=false;n.nodeState.collapsed=true;var r=this._aExpanded.indexOf(n);if(r!=-1){this._aExpanded.splice(r,1)}if(this._bSelectAll){r=this._aExpandedAfterSelectAll.indexOf(n);if(r!==-1){this._aExpandedAfterSelectAll.splice(r,1)}}this._aCollapsed.push(n);this._sortNodes(this._aCollapsed);if(n.isDeepOne){this._propagateMagnitudeChange(n.parent,n.magnitude*-1)}if(n.serverIndex!==undefined){this._aNodeChanges[n.serverIndex]=true}this._cleanUpSelection();this._cleanTreeStateMaps();this._aNodeCache=[];if(!i){this._fireChange({reason:s.Collapse})}};p.prototype.collapseToLevel=function(e){var t=-1,i=[],n;if(this.bCollapseRecursive){for(var r in this._mSelected){var o=this._mSelected[r];if(o.level>e){n=this.getRowIndexByNode(o);i.push(n);if(this._sLeadSelectionKey==r){t=n}this.setNodeSelection(o,false)}}}this.setNumberOfExpandedLevels(e);if(this.bCollapseRecursive&&i.length){this._publishSelectionChanges({rowIndices:i,oldIndex:t,leadIndex:-1})}};p.prototype._getInvisibleSelectedNodes=function(){var e=[];var t=true;var i=function(e,i){if(e.nodeState.collapsed||e.nodeState.removed&&!e.nodeState.reinserted){t=false;i.broken=true}};for(var n in this._mSelected){var r=this._mSelected[n];t=true;this._up(r,i,false);if(!t){e.push(r)}}return e};p.prototype._cleanUpSelection=function(e){var t=this._getInvisibleSelectedNodes();t.forEach(function(t){if(t.key==this._sLeadSelectionKey){this._sLeadSelectionKey=null}if(this.bCollapseRecursive||e){this.setNodeSelection(t,false)}}.bind(this));if((this.bCollapseRecursive||e)&&t.length){this._publishSelectionChanges({rowIndices:[],indexChangesCouldNotBeDetermined:true})}};p.prototype._isInSubtree=function(e,t){var i=false;var n=function(t,n){if(t==e){n.broken=true;i=true}};this._up(t,n,false);return i};p.prototype._up=function(e,t,i){var n={broken:false};var r=this._getParent(e,i);if(r){this._structuralUp(r,t,n,i)}else{this._flatUp(e,t,n,true)}};p.prototype._structuralUp=function(e,t,i,n){var r=e;do{t(r,i);if(i.broken){return}e=r;r=this._getParent(r)}while(r);this._flatUp(e,t,i)};p.prototype._flatUp=function(e,t,i,n){var r=e.serverIndex,o=n?r-1:r,s,a;for(;o>=0;o--){if(this._aNodeChanges[o]){s=this._aNodes[o];if(s.initiallyCollapsed){continue}if(s.serverIndex+s.magnitude>=r){t(s,i);if(i.broken){return}a=this._getParent(s);if(a){this._structuralUp(a,t,i);return}}else{continue}}}};p.prototype._getParent=function(e,t){return t?e.originalParent:e.parent};p.prototype._cleanTreeStateMaps=function(){this._iLengthDelta=this._bReadOnly?this._indexCleanTreeStateMaps():this._mapCleanTreeStateMaps()};p.prototype._indexCleanTreeStateMaps=function(){return this._calcIndexDelta(this._aNodes.length)};p.prototype._mapCleanTreeStateMaps=function(){var e=this._aCollapsed.concat(this._aRemoved).concat(this._aExpanded).concat(this._aAdded),t=true,i,n=0,r=function(e,i){if(e.nodeState.isLeaf||e.nodeState.collapsed||e.nodeState.removed&&!e.nodeState.reinserted){t=false;i.broken=true}},o={};var s=[[0,1],[-1,0]];e.forEach(function(e){if(o[e.key]){return}else{o[e.key]=true}if(e.nodeState.added){if(!e.nodeState.removed||e.nodeState.reinserted){t=true;this._up(e,r,false);if(t){n++}}}else if(e.nodeState.collapsed||e.nodeState.expanded||e.nodeState.removed){t=true;this._up(e,r,false);if(t){if(e.nodeState.removed&&!e.nodeState.reinserted){if(e.isDeepOne||e.initiallyCollapsed){n-=1}else{n-=e.magnitude+1}}else{if(e.nodeState.collapsed&&e.serverIndex!==undefined&&!e.initiallyCollapsed){n-=e.magnitude}if(e.nodeState.expanded&&(e.isDeepOne||e.initiallyCollapsed)){n+=e.children.length}}}if(e.nodeState.reinserted){i=t;t=true;this._up(e,r,true);var a=s[t|0][i|0];if(a){if(e.isDeepOne){n+=a*1}else if(e.initiallyCollapsed){n+=a}else{n+=a*(1+e.magnitude)}}}}}.bind(this));return n};p.prototype.isLengthFinal=function(){return this._bLengthFinal};p.prototype.getLength=function(){return this._aNodes.length+this._iLengthDelta};p.prototype.getContextByIndex=function(e){if(this.isInitial()){return undefined}var t=this.findNode(e);return t&&t.context};p.prototype.getNodeByIndex=function(e){if(this.isInitial()){return undefined}var t=this.findNode(e);return t};p.prototype.isExpanded=function(e){var t=this.findNode(e);return t&&t.nodeState.expanded};p.prototype.hasChildren=function(e){if(!e){return false}var t=this._findNodeByContext(e);var i=t&&t.node;return!(i&&i.nodeState.isLeaf)};p.prototype.nodeHasChildren=function(e){return!(e&&e.nodeState.isLeaf)};p.prototype._hasChangedEntity=function(e){var t=false;this._map(function(i,n){if(i&&i.key in e){t=true;n.broken=true}});return t};p.prototype._isRefreshAfterChangeAllowed=function(){return!this._isRestoreTreeStateSupported()};p.prototype._isRestoreTreeStateSupported=function(){return this._bRestoreTreeStateAfterChange&&(!this.aApplicationFilters||this.aApplicationFilters.length===0)};p.prototype._hasPendingChanges=function(e){var t;if(!this.isResolved()||!this._aAllChangedNodes.length){return false}t=this._optimizeChanges();if(t.added.length||t.moved.length||t.removed.length){return true}t.creationCancelled.forEach(function(t){var i=e.indexOf(t.key);if(i>-1){e.splice(i,1)}});return false};p.prototype._getPendingChanges=function(){var e,t,i,n,r={};if(this.isResolved()){i=this._optimizeChanges();e=i.added.concat(i.moved);t=this.oTreeProperties["hierarchy-node-for"];n=this.oTreeProperties["hierarchy-parent-node-for"];e.forEach(function(e){r[e.key]={};r[e.key][n]=e.parent.context.getProperty(t)});i.removed.forEach(function(e){r[e.key]={}});i.creationCancelled.forEach(function(e){r[e.key]=null})}return r};p.prototype._resetChanges=function(e){var t,i=this.getResolvedPath();if(!i||!this._aAllChangedNodes.length){return}if(e){t=e.some(function(e){return e===i});if(!t){return}}this._aRemoved.forEach(e=>{this._resetMovedOrRemovedNode(e)});this._aAdded.forEach(e=>{this._resetParentState(e)});this._aTurnedToLeaf.forEach(e=>{if(!e.initiallyIsLeaf){e.nodeState.isLeaf=false;e.nodeState.expanded=true;e.nodeState.collapsed=false;delete e.nodeState.wasExpanded}});this._mSubtreeHandles={};this._aAdded=[];this._aRemoved=[];this._aAllChangedNodes=[];this._aNodeCache=[];this._aTurnedToLeaf=[];this._cleanTreeStateMaps();this._fireChange({reason:s.Change})};p.prototype.setNodeSelection=function(t,i){e(t,"Node must be defined!");t.nodeState.selected=i;if(i){delete this._mDeselected[t.key];this._mSelected[t.key]=t}else{delete this._mSelected[t.key];this._mDeselected[t.key]=t;if(t.key===this._sLeadSelectionKey){this._sLeadSelectionKey=null}}};p.prototype.isIndexSelected=function(e){var t=this.findNode(e);return t&&t.nodeState?t.nodeState.selected:false};p.prototype.isIndexSelectable=function(e){var t=this.findNode(e);return!!t};p.prototype._clearSelection=function(){return this._bReadOnly?this._indexClearSelection():this._mapClearSelection()};p.prototype._indexClearSelection=function(){var e=-1,t=[],i,n,r;this._bSelectAll=false;this._aExpandedAfterSelectAll=[];for(i in this._mSelected){n=this._mSelected[i];this.setNodeSelection(n,false);r=this.getRowIndexByNode(n);t.push(r);if(this._sLeadSelectionKey==i){e=r}}return{rowIndices:t,oldIndex:e,leadIndex:-1}};p.prototype._mapClearSelection=function(){var e=-1;var t=-1;var i=0;var n=[];this._bSelectAll=false;this._aExpandedAfterSelectAll=[];for(var r in this._mSelected){if(r){i++}}this._map(function(r,o,s,a,d){e++;if(r&&r.nodeState.selected){this.setNodeSelection(r,false);n.push(e);if(this._sLeadSelectionKey==r.key){t=e}if(n.length==i){o.broken=true}}}.bind(this));return{rowIndices:n,oldIndex:t,leadIndex:-1}};p.prototype.setSelectedIndex=function(e){var i=this.findNode(e);if(i){var n=this._clearSelection();var r=n.rowIndices.indexOf(e);if(r>=0){n.rowIndices.splice(r,1)}else{n.rowIndices.push(e)}n.leadKey=i.key;n.leadIndex=e;this.setNodeSelection(i,true);this._publishSelectionChanges(n)}else{t.warning("ODataTreeBindingFlat: The selection of index '"+e+"' was ignored. Please make sure to only select rows, for which data has been fetched to the client.")}};p.prototype.getSelectedIndex=function(){return this._bReadOnly?this._indexGetSelectedIndex():this._mapGetSelectedIndex()};p.prototype._indexGetSelectedIndex=function(){if(!this._sLeadSelectionKey||n(this._mSelected)){return-1}var e=this._mSelected[this._sLeadSelectionKey];if(e){return this.getRowIndexByNode(e)}else{return-1}};p.prototype._mapGetSelectedIndex=function(){if(!this._sLeadSelectionKey||n(this._mSelected)){return-1}var e=-1;this._map(function(t,i){e++;if(t){if(t.key===this._sLeadSelectionKey){i.broken=true}}}.bind(this));return e};p.prototype.getSelectedIndices=function(){return this._bReadOnly?this._indexGetSelectedIndices():this._mapGetSelectedIndices()};p.prototype._indexGetSelectedIndices=function(){var e=this._getSelectedNodesInfo();return e.map(function(e){return e.rowIndex})};p.prototype._mapGetSelectedIndices=function(){var e=[];if(n(this._mSelected)){return e}var t=-1;this._map(function(i){t++;if(i){if(i.nodeState&&i.nodeState.selected){e.push(t)}}});return e};p.prototype.getSelectedNodesCount=function(){var t;if(this._bSelectAll){if(this._bReadOnly){var i=[],n=0,r;this._aExpandedAfterSelectAll.sort(function(t,i){var n=this._getRelatedServerIndex(t);var r=this._getRelatedServerIndex(i);e(n!=undefined,"getSelectedNodesCount: (containing) Server-Index not found for node 'a'");e(r!=undefined,"getSelectedNodesCount: (containing) Server-Index not found node 'b'");if(n==r&&t.isDeepOne&&i.isDeepOne){return t.originalLevel-i.originalLevel}return n-r}.bind(this));var o=-1,s,a,d;for(d=0;d<this._aExpandedAfterSelectAll.length;d++){s=this._aExpandedAfterSelectAll[d];a=this._getRelatedServerIndex(s);if(a<=o&&!s.initiallyCollapsed){continue}if(s.initiallyCollapsed){o=a}else{o=a+s.magnitude}i.push(s);n+=s.magnitude}var l=function(e,t){if(i.indexOf(e)!==-1){n--;t.broken=true}};for(r in this._mSelected){this._up(this._mSelected[r],l,true)}var h;var u=function(e,t){if(e.nodeState.collapsed||e.nodeState.removed&&!e.nodeState.reinserted||i.indexOf(e)!==-1){h=false;t.broken=true}};for(r in this._mDeselected){h=true;this._up(this._mDeselected[r],u,true);if(h){n++}}t=this.getLength()-n}else{t=0;this._map(function(e,i,n,r,o){var s;if(e){if(e.nodeState.selected){t++}}else if(e===undefined&&n==="serverIndex"){var a=true;for(var d=r-1;d>=0;d--){if(this._aNodeChanges[d]){s=this._aNodes[d];if(s.serverIndex+s.magnitude>=r&&this._aExpandedAfterSelectAll.indexOf(s)!==-1){a=false;break}}}if(a){t++}}}.bind(this))}}else{var f=this._getInvisibleSelectedNodes();t=Math.max(Object.keys(this._mSelected).length-f.length,0)}return t};p.prototype.getSelectedContexts=function(){return this._bReadOnly?this._indexGetSelectedContexts():this._mapGetSelectedContexts()};p.prototype._indexGetSelectedContexts=function(){var e=this._getSelectedNodesInfo();return e.map(function(e){return e.node.context})};p.prototype._mapGetSelectedContexts=function(){var e=[];if(n(this._mSelected)){return e}var t=function(t){if(t){if(t.nodeState.selected&&!t.isArtificial){e.push(t.context)}}};this._map(t);return e};p.prototype.setSelectionInterval=function(e,t){var i,n,r=this._clearSelection(),o={},s=[],a=this._setSelectionInterval(e,t,true);for(n=0;n<r.rowIndices.length;n++){i=r.rowIndices[n];o[i]=true}for(n=0;n<a.rowIndices.length;n++){i=a.rowIndices[n];if(o[i]){delete o[i]}else{o[i]=true}}for(i in o){if(o[i]){s.push(parseInt(i))}}this._publishSelectionChanges({rowIndices:s,oldIndex:r.oldIndex,leadIndex:a.leadIndex,leadKey:a.leadKey})};p.prototype._setSelectionInterval=function(e,t,i){return this._bReadOnly?this._indexSetSelectionInterval(e,t,i):this._mapSetSelectionInterval(e,t,i)};p.prototype._indexSetSelectionInterval=function(e,t,i){var n=Math.min(e,t),r=Math.max(e,t),o=[],s=[],a,d,l,h;i=!!i;for(l=n;l<=r;l++){d=this.findNode(l);if(d){if(d.nodeState.selected!==i){s.push(l)}if(d.key===this._sLeadSelectionKey){a=l}this.setNodeSelection(d,i);o.push(d)}}h={rowIndices:s,oldIndex:a,leadIndex:a&&!i?-1:undefined};if(o.length>0&&i){h.leadKey=o[o.length-1].key;h.leadIndex=r}return h};p.prototype._mapSetSelectionInterval=function(e,t,i){var n=Math.min(e,t);var r=Math.max(e,t);var o=[];var s=[];var a=Math.abs(r-n)+1;var d;var l=-1;var h=function(e,t,h,u,f){l++;if(e){if(l>=n&&l<=r){if(e.nodeState.selected!==!!i){s.push(l)}if(e.key===this._sLeadSelectionKey){d=l}this.setNodeSelection(e,!!i);o.push(e);if(o.length===a){t.broken=true}}}}.bind(this);this._map(h);var u={rowIndices:s,oldIndex:d,leadIndex:d&&!i?-1:undefined};if(o.length>0&&i){var f=o[o.length-1];u.leadKey=f.key;u.leadIndex=r}return u};p.prototype.addSelectionInterval=function(e,t){var i=this._setSelectionInterval(e,t,true);this._publishSelectionChanges(i)};p.prototype.removeSelectionInterval=function(e,t){var i=this._setSelectionInterval(e,t,false);this._publishSelectionChanges(i)};p.prototype.selectAll=function(){if(this._bReadOnly){this._indexSelectAll()}else{this._mapSelectAll()}};p.prototype._indexSelectAll=function(){this._bSelectAll=true;this._aExpandedAfterSelectAll=[];var e={rowIndices:[],oldIndex:-1,selectAll:true};var t=this.getLength(),i,n;for(i=0;i<t;i++){n=this.findNode(i);if(n&&!n.isArtificial){if(n.key===this._sLeadSelectionKey){e.oldIndex=i}if(!n.nodeState.selected){e.rowIndices.push(i)}this.setNodeSelection(n,true);e.leadKey=n.key;e.leadIndex=i}}this._publishSelectionChanges(e)};p.prototype._mapSelectAll=function(){this._bSelectAll=true;this._aExpandedAfterSelectAll=[];var e={rowIndices:[],oldIndex:-1,selectAll:true};var t=-1;this._map(function(i){if(!i||!i.isArtificial){t++}if(i){if(i.key===this._sLeadSelectionKey){e.oldIndex=t}if(i){if(!i.isArtificial&&!i.nodeState.selected){e.rowIndices.push(t)}this.setNodeSelection(i,true);e.leadKey=i.key;e.leadIndex=t}}}.bind(this));this._publishSelectionChanges(e)};p.prototype.clearSelection=function(e){var t=this._clearSelection();if(!e){this._publishSelectionChanges(t)}};p.prototype._publishSelectionChanges=function(e){e.oldIndex=e.oldIndex||this.getSelectedIndex();e.rowIndices.sort(function(e,t){return e-t});if(e.leadIndex>=0&&e.leadKey){this._sLeadSelectionKey=e.leadKey}else if(e.leadIndex===-1){this._sLeadSelectionKey=undefined}else{e.leadIndex=e.oldIndex}if(e.rowIndices.length>0||e.leadIndex!=undefined&&e.leadIndex!==-1||e.indexChangesCouldNotBeDetermined){this.fireSelectionChanged(e)}};p.prototype.setCollapseRecursive=function(e){this.bCollapseRecursive=!!e};p.prototype.resetData=function(){u.prototype.resetData.apply(this,arguments);this._aNodes=[];this._aNodeCache=[];this._aCollapsed=[];this._aExpanded=[];this._aExpandedAfterSelectAll=[];this._mSelected={};this._mDeselected={};this._aAdded=[];this._aRemoved=[];this._aNodeChanges=[];this._aAllChangedNodes=[];this._bLengthFinal=false;this._iLowestServerLevel=null;this._bSelectAll=false;this._bReadOnly=true;this._iLengthDelta=0};p.prototype._findNodeByContext=function(e){for(var t in this._aNodeCache){if(this._aNodeCache[t]&&this._aNodeCache[t].context==e){return{node:this._aNodeCache[t],index:parseInt(t)}}}var i=-1;var n;this._map(function(t,r,o,s,a){i++;if(t){if(t.context===e){n=t;r.broken=true}}});return{node:n,index:i}};p.prototype.createEntry=function(e){var i,n=this.getResolvedPath();if(n){e=e||{};if(e.expand){throw new Error("Parameter 'expand' is not supported")}if(e.inactive){throw new Error("Parameter 'inactive' is not supported")}e.groupId=this.oModel._resolveGroup(n).groupId;e.refreshAfterChange=false;i=this.oModel.createEntry(n,e)}else{t.warning("ODataTreeBindingFlat: createEntry failed, as the binding path could not be resolved.")}return i};p.prototype.submitChanges=function(e){var i=this.getResolvedPath();if(!i){t.error("#submitChanges failed: binding is unresolved",this.getPath(),f);return}this._bSubmitChangesCalled=true;e=e||{};e.groupId=this.oModel._resolveGroup(i).groupId;this.oModel.submitChanges(e)};p.prototype._submitChanges=function(e){var i,n,r=e.groupId,o=this.getResolvedPath(),s=false,a=this;function d(e){t.error("Tree state restoration request failed for binding: "+o,e,f)}if(!o||r&&r!==this.oModel._resolveGroup(o).groupId){this._bSubmitChangesCalled=false;return}n=this._optimizeChanges();i=Object.values(n).some(function(e){return e.length});if(!i&&!this._bSubmitChangesCalled){return}this.bRefresh=false;this._bSubmitChangesCalled=false;e.success=function(e,i){var r,l=e.__batchResponses&&e.__batchResponses[0]&&e.__batchResponses[0].__changeResponses;if(l&&l.length>0){r=l.some(function(e){var t=parseInt(e.statusCode);return t<200||t>299});if(r){}else if(!s&&a._isRestoreTreeStateSupported()){a._restoreTreeState(n).catch(function(e){d(e);a._refresh(true)})}else if(!a.bRefresh){a._refresh(true)}}else if(i){t.warning("#submitChanges: no change response in batch response",o,f)}};this._generateSubmitData(n,function(e){d(e);s=true})};p.prototype._generateSubmitData=function(i,n){var r=i.added,o=i.creationCancelled,s=i.moved,a=i.removed,d={error:n,groupId:this.oModel._resolveGroup(this.getResolvedPath()).groupId},l=this;function h(t){e(t.context,"Node does not have a context.");var i=t.parent.context.getProperty(l.oTreeProperties["hierarchy-node-for"]);l.oModel.setProperty(l.oTreeProperties["hierarchy-parent-node-for"],i,t.context)}r.forEach(h);s.forEach(function(e){h(e);if(this._isRestoreTreeStateSupported()){this._generatePreorderPositionRequest(e,d);this._generateSiblingsPositionRequest(e,d)}}.bind(this));a.forEach(function(e){this._generateDeleteRequest(e);t.debug("ODataTreeBindingFlat: DELETE "+e.key)}.bind(this));o.forEach(function(e){this._generateDeleteRequest(e)}.bind(this))};p.prototype._generatePreorderPositionRequest=function(e,t){var i,n,r,s,a,l=[],h=this.getResolvedPath(),u=[],f=this;if(!h){return}t=t||{};r=t.success||function(){};s=function(t){f._updateNodeInfoAfterSave(e,t.results||[]);r.apply(null,arguments)};if(this.aApplicationFilters){l=l.concat(this.aApplicationFilters)}for(i=this._aTreeKeyProperties.length-1;i>=0;i--){n=this._aTreeKeyProperties[i];u.push(n);l.push(new d(n,"EQ",e.context.getProperty(n)))}l.push(new d(this.oTreeProperties["hierarchy-level-for"],"LE",this.getNumberOfExpandedLevels()));a=o.extend({},this.mParameters);u=u.concat([this.oTreeProperties["hierarchy-node-for"],this.oTreeProperties["hierarchy-node-descendant-count-for"],this.oTreeProperties["hierarchy-drill-state-for"],this.oTreeProperties["hierarchy-preorder-rank-for"]]);a.select=u.join(",");this.oModel.read(h,{headers:this._getHeaders(),filters:[new d({filters:l,and:true})],error:t.error,groupId:t.groupId||this.sGroupId,sorters:this.aSorters,success:s,urlParameters:this.oModel.createCustomParams(a)})};p.prototype._generateSiblingsPositionRequest=function(e,t){var n,r,o,s;if(t){n=t.groupId||this.sGroupId;o=t.success;s=t.error}r=i({},this.mParameters);r.select=this.oTreeProperties["hierarchy-sibling-rank-for"];this.oModel.read(e.context.getPath(),{headers:this._getHeaders(),urlParameters:this.oModel.createCustomParams(r),groupId:n,success:o,error:s})};p.prototype._nodeIsOnTopLevel=function(e){if(e&&e.serverIndex>=0){var i=e.parent==null;if(i){if(e.originalLevel==this._iLowestServerLevel){return true}else{return false}}}else{t.warning("ODataTreeBindingFlat.nodeIsOnTopLevel: Node is not defined or not a server-indexed node.")}return undefined};p.prototype._generateDeleteRequest=function(e){var t=e.context;if(e.nodeState.added){this.oModel._discardEntityChanges(t.getPath().slice(1),true);return undefined}else{var i=this.oModel.remove(t.getPath(),{groupId:this.oModel._resolveGroup(this.getResolvedPath()).groupId,refreshAfterChange:false});return i}};p.prototype._filterChangeForServerSections=function(e){var t={};t.removed=e.removed.filter(function(e){return!e.isDeepOne});t.added=e.added.filter(function(e){return!e.isDeepOne});e.moved.forEach(function(e){if(!e.newIsDeepOne){t.added.push(e)}if(!e.isDeepOne){t.removed.push(e)}});return t};p.prototype._filterChangesForDeepSections=function(e){var t={};e.removed.forEach(function(e){var i;if(e.isDeepOne){i=e.parent;if(!t[i.key]){t[i.key]={added:[],removed:[]}}t[i.key].removed.push(e)}});e.added.forEach(function(e){var i;if(e.isDeepOne){i=e.parent;if(!t[i.key]){t[i.key]={added:[],removed:[]}}t[i.key].added.push(e)}});e.moved.forEach(function(e){var i;if(e.newIsDeepOne){i=e.parent;if(!t[i.key]){t[i.key]={added:[],removed:[]}}t[i.key].added.push(e)}if(e.isDeepOne){i=e.originalParent;if(!t[i.key]){t[i.key]={added:[],removed:[]}}t[i.key].removed.push(e)}});return t};p.prototype._optimizeOptimizedChanges=function(e){var t,i=this;t=e.added.slice();t.sort(function(e,t){var n=e.newIsDeepOne!==undefined?e.newIsDeepOne:e.isDeepOne,r=t.newIsDeepOne!==undefined?t.newIsDeepOne:t.isDeepOne;if(n&&r){return 0}if(n){return 1}if(r){return-1}return e.context.getProperty(i.oTreeProperties["hierarchy-preorder-rank-for"])-t.context.getProperty(i.oTreeProperties["hierarchy-preorder-rank-for"])});var n=-1;t=t.filter(function(e,t){if(e.newIsDeepOne!==undefined?e.newIsDeepOne:e.isDeepOne){return true}if(t<=n){return false}var r=e.context.getProperty(i.oTreeProperties["hierarchy-node-descendant-count-for"]);if(r){n=t+r}return true});return{added:t,removed:e.removed,moved:e.moved}};p.prototype._updateNodeInfoAfterSave=function(e,t){var i,n,r=e.context,o=this.oTreeProperties["hierarchy-drill-state-for"],s=this.oTreeProperties["hierarchy-node-for"],a=r.getProperty(s);n=!t.some(function(e){return a===e[s]});i=r.getProperty(o)==="collapsed";if(this._aAdded.includes(e)){e.isDeepOne=n;e.initiallyCollapsed=i}else{e.newIsDeepOne=n;e.newInitiallyCollapsed=i}};p.prototype._requestExtraInfoForAddedNodes=function(e){var t=[],i=this;e.forEach(function(e){var n=new Promise(function(t,n){i._generatePreorderPositionRequest(e,{success:t,error:n})});t.push(n)});t=t.map(function(e){return e.then(function(e){return{responseData:e}},function(e){return{error:e}})});return Promise.all(t).then(function(e){var t=0;e.forEach(function(e){if(e.error){if(e.error.statusCode===0){t++}else{throw new Error("Tree state restoration request failed. Complete or partial tree state might get lost. Error: "+(e.error.message.value||e.error.message))}}});return t===0})};p.prototype._restoreTreeState=function(e){var t=this;this._abortPendingRequest();e=e||{creationCancelled:[],added:[],removed:[],moved:[]};if(!this.bSkipDataEvents){this.fireDataRequested()}this.bSkipDataEvents=false;return this._requestExtraInfoForAddedNodes(e.added).then(function(i){if(i){return t._executeRestoreTreeState(e).then(function(e){if(e){t._fireChange({reason:s.Change});t.fireDataReceived({data:e});return e}return undefined})}return undefined})};p.prototype._executeRestoreTreeState=function(e){var t,i,n,r,o={},s=[],a=this;r=this._collectServerSections(this._aNodes);e=this._optimizeOptimizedChanges(e);t=this._filterChangeForServerSections(e);this._adaptSections(r,t);r.forEach(function(e,t){s.push(a._restoreServerIndexNodes(e.iSkip,e.iTop,t===0))});n=this._filterChangesForDeepSections(e);r=this._collectDeepNodes();r.forEach(function(e){var t=e.aChildSections,i=e.oParentNode,r=n[i.key];if(r){a._adaptSections(t,r,{ignoreMagnitude:true,indexName:"positionInParent"})}t.forEach(function(e){s.push(a._restoreChildren(i,e.iSkip,e.iTop))})});this._aCollapsed.forEach(function(e){o[e.key]=true});i=this._aCollapsed.length;this.resetData(true);s=s.map(function(e){return e.then(function(e){return{responseData:e}},function(e){return{error:e}})});return Promise.all(s).then(function(e){var t=0;e.forEach(function(e){var i=e.error;if(i){if(i.statusCode===0){t++}else{throw new Error("Tree state restoration request failed. Complete or partial"+" tree state might get lost. Error: "+(i.message.value||i.message))}}});if(t<e.length){if(i>0){a._map(function(e,t){if(e&&o[e.key]){a.collapse(e,true);i--;if(i===0){t.broken=true}}})}return e}return undefined})};p.prototype._collectServerSections=function(e){var t=[];var i;for(var n=0;n<e.length;n++){if(e[n]!==undefined){if(!i){i={iSkip:n,iTop:1};t.push(i)}else{i.iTop++}}else{i=null}}return t};p.prototype._adaptSections=function(e,i,n){var r=i.removed||[],o=i.added||[],s=n&&n.indexName||"serverIndex",a,d,l,h,u,f=0,p,c,_,v,g,S,y,x=0,m,C,I=[];for(var b=o.length-1;b>=0;b--){a=o[b];if(a.newIsDeepOne!==undefined?a.newIsDeepOne:a.isDeepOne){C=this.oTreeProperties["hierarchy-sibling-rank-for"]}else{C=this.oTreeProperties["hierarchy-preorder-rank-for"];if(a.newInitiallyCollapsed!==undefined?!a.newInitiallyCollapsed:!a.initiallyCollapsed){p=a.context.getProperty(this.oTreeProperties["hierarchy-node-descendant-count-for"])}}c=a.context.getProperty(C);if(c===undefined){t.warning("ODataTreeBindingFlat","Missing "+C+" value for node "+a.key);break}I.push({position:c,magnitude:p||0,assignedToSection:false})}for(var P=0;P<e.length;P++){d=e[P];y=x;_=v;v=0;m=0;for(var N=r.length-1;N>=0;N--){a=r[N];c=a[s];if(c>=d.iSkip&&c<=d.iSkip+d.iTop){if(s==="serverIndex"){f++}p=n&&n.ignoreMagnitude?0:this._getInitialMagnitude(a);u=1+p;h=d.iSkip+d.iTop-c-u;if(h>0){m-=u}else{m-=d.iSkip+d.iTop-c;if(h<0){v=c+u}}y-=u}}if(d.iSkip<=_){g=d.iSkip-_;m+=g;if(d.iTop+m<0){v=_}}d.iSkip+=x;d.iTop+=m;if(d.iTop>0){x=0;m=0;for(var R=0;R<I.length;R++){l=I[R];c=l.position;S=n&&n.ignoreMagnitude?1:l.magnitude+1;if(c>=d.iSkip&&c<=d.iSkip+d.iTop){m+=S;I[R].assignedToSection=true}else if(c<d.iSkip){x+=S}}d.iSkip+=x;d.iTop+=m;d.iTop+=f}if(d.iTop<=0){e.splice(P,1);P--}x=y}for(var T=0;T<I.length;T++){l=I[T];S=n&&n.ignoreMagnitude?1:l.magnitude+1;if(!l.assignedToSection){e.push({iSkip:l.position,iTop:S})}}e.sort(function(e,t){return e.iSkip-t.iSkip});for(var k=0;k<e.length;k++){if(k+1<e.length){d=e[k];var D=e[k+1];if(d.iSkip+d.iTop===D.iSkip){d.iTop+=D.iTop;e.splice(k+1,1);k--}}}};p.prototype._optimizeChanges=function(){var t=[],i=[],n=[],r=[];var o=false;var s=function(e,t){if(e.nodeState.removed&&!e.nodeState.reinserted){o=true;t.broken=true}};var a=[];var d=function(e){if((e.isDeepOne||e.serverIndex>=0)&&a.indexOf(e)==-1){a.push(e)}if(e.nodeState.added){i.push(e)}};this._aAllChangedNodes.forEach(function(e){o=false;this._up(e,s,false);if(o){d(e)}else if(e.nodeState.removed&&!e.nodeState.reinserted){d(e)}else if(e.nodeState.added){n.push(e)}else{r.push(e)}}.bind(this));a.sort(function(t,i){var n=this._getRelatedServerIndex(t);var r=this._getRelatedServerIndex(i);e(n!=undefined,"_generateSubmitData: (containing) Server-Index not found for node 'a'");e(r!=undefined,"_generateSubmitData: (containing) Server-Index not found node 'b'");if(n==r&&t.isDeepOne&&i.isDeepOne){if(t.parent===i.parent){return t.positionInParent-i.positionInParent}else{return t.originalLevel-i.originalLevel}}return n-r}.bind(this));var l=function(e){var t=false;this._up(e,function(e,i){if(e.nodeState.removed&&!e.nodeState.reinserted){t=true;i.broken=true}},true);return t}.bind(this);for(var h=0;h<a.length;h++){var u=a[h];if(!l(u)){t.push(u)}}return{removed:t,creationCancelled:i,added:n,moved:r}};p.prototype._collectDeepNodes=function(){var e=[],t=this;this._map(function(i){if(i&&i.nodeState.expanded&&(i.isDeepOne||i.initiallyCollapsed||i.initiallyIsLeaf)){e.push({oParentNode:i,aChildSections:t._collectServerSections(i.children)})}});return e};p.prototype._trackChangedNode=function(e){if(this._aAllChangedNodes.indexOf(e)==-1){this._aAllChangedNodes.push(e)}};p.prototype.addContexts=function(i,n){var r=this._findNodeByContext(i),o=r.node,d=this.getModel(),l,h;e(i&&n,"ODataTreeBinding.addContexts() was called with incomplete arguments!");if(o){this._bReadOnly=false;if(o.nodeState&&o.nodeState.isLeaf){o.nodeState.isLeaf=false;o.nodeState.collapsed=true}if(!Array.isArray(n)){if(n instanceof a){n=[n]}else{t.warning("ODataTreeBinding.addContexts(): The child node argument is not of type sap.ui.model.Context.")}}var u=function(e){return function(){return[e]}};n=n.slice();n.reverse();for(var f=0;f<n.length;f++){h=n[f];if(!(h instanceof a)){t.warning("ODataTreeBindingFlat.addContexts(): no valid child context given!");return}l=this._mSubtreeHandles[h.getPath()];this._ensureHierarchyNodeIDForContext(h);if(l&&l._isRemovedSubtree){t.info("ODataTreeBindingFlat.addContexts(): Existing context added '"+h.getPath()+"'");l._oNewParentNode=o;l._oSubtreeRoot.nodeState.reinserted=true;l._oSubtreeRoot.originalParent=l._oSubtreeRoot.originalParent||l._oSubtreeRoot.parent;l._oSubtreeRoot.parent=o;l._oSubtreeRoot.containingSubtreeHandle=l;this._trackChangedNode(l._oSubtreeRoot)}else{t.info("ODataTreeBindingFlat.addContexts(): Newly created context added.");this._ensureHierarchyNodeIDForContext(h);var p={context:h,key:d.getKey(h),parent:o,nodeState:{isLeaf:true,collapsed:false,expanded:false,selected:false,added:true},addedSubtrees:[],children:[],magnitude:0};this._trackChangedNode(p);this._aAdded.push(p);l={_getSubtree:u(p),_oSubtreeRoot:null,_oNewParentNode:o}}o.addedSubtrees.unshift(l);if(o.serverIndex!==undefined){this._aNodeChanges[o.serverIndex]=true}}this._aNodeCache=[];this._cleanTreeStateMaps();this._fireChange({reason:s.Add})}else{t.warning("The given parent context could not be found in the tree. No new sub-nodes were added!")}};p.prototype._ensureHierarchyNodeIDForContext=function(e){if(e){var t=e.getProperty(this.oTreeProperties["hierarchy-node-for"]);if(e.isTransient()&&!t){this.oModel.setProperty(this.oTreeProperties["hierarchy-node-for"],r(),e)}}};p.prototype.removeContext=function(e){var i=this;var n=this._findNodeByContext(e);var r=n.node;var o=n.index;if(r){this._bReadOnly=false;r.nodeState.removed=true;this._aRemoved.push(r);this._trackChangedNode(r);if(r.serverIndex!==undefined){this._aNodeChanges[r.serverIndex]=true}if(r.containingSubtreeHandle&&r.parent!=null){var a=r.parent.addedSubtrees.indexOf(r.containingSubtreeHandle);if(a!=-1){r.parent.addedSubtrees.splice(a,1);r.nodeState.reinserted=false;r.parent=null}}this._aNodeCache=[];this.setNodeSelection(r,false);this._cleanUpSelection(true);this._cleanTreeStateMaps();this._fireChange({reason:s.Remove});this._mSubtreeHandles[e.getPath()]={_removedFromVisualIndex:o,_isRemovedSubtree:true,_oSubtreeRoot:r,_getSubtree:function(){if(r.serverIndex!=undefined&&!r.initiallyCollapsed){return i._aNodes.slice(r.serverIndex,r.serverIndex+r.magnitude+1)}else{return r}},getContext:function(){return e}};return e}else{t.warning("ODataTreeBinding.removeContext(): The given context is not part of the tree. Was it removed already?")}return undefined};p.prototype._getRelatedServerIndex=function(e){if(e.serverIndex===undefined){return e.containingServerIndex}else{return e.serverIndex}};p.prototype.getNodeInfoByRowIndex=function(e){var t=0,i=0,n,r,o=-1;while(t<this._aCollapsed.length||i<this._aExpanded.length){if(this._aCollapsed[t]&&this._aExpanded[i]){if(this._getRelatedServerIndex(this._aCollapsed[t])>this._getRelatedServerIndex(this._aExpanded[i])){n=this._aExpanded[i];i++;r=false}else{n=this._aCollapsed[t];t++;r=true}}else if(this._aCollapsed[t]){n=this._aCollapsed[t];t++;r=true}else{n=this._aExpanded[i];i++;r=false}if(e<=this._getRelatedServerIndex(n)){break}if(r){if(!n.isDeepOne&&!n.initiallyCollapsed&&n.serverIndex>o){e+=n.magnitude;o=n.serverIndex+n.magnitude}}else if(n.serverIndex>o){if(!n.isDeepOne&&n.initiallyCollapsed){e-=n.magnitude}if(e<=n.serverIndex){return this._calcDirectIndex(n,e+n.magnitude-n.serverIndex-1)}}}return{index:e}};p.prototype._calcDirectIndex=function(e,t){var i,n,r;for(n=0;n<e.children.length;n++){i=e.children[n];if(t===0){return{parent:e,childIndex:n}}r=i?i.magnitude:0;t--;if(!i||i.nodeState.collapsed){continue}if(t<r){return this._calcDirectIndex(i,t)}else{t-=r}}return undefined};p.prototype.getRowIndexByNode=function(e){var t=0;var i;var n;if(e.isDeepOne){while(e.parent){t+=e.positionInParent+1;for(n=0;n<e.positionInParent;n++){i=e.parent.children[n];if(i&&i.nodeState.expanded){t+=i.magnitude}}e=e.parent}}return this._calcIndexDelta(e.serverIndex)+e.serverIndex+t};p.prototype._getSelectedNodesInfo=function(){var e=[];if(n(this._mSelected)){return e}var t=true;var i=function(e,i){if(e.nodeState.collapsed||e.nodeState.removed&&!e.nodeState.reinserted){t=false;i.broken=true}};for(var r in this._mSelected){var o=this._mSelected[r];t=true;this._up(o,i,false);if(t){e.push({node:o,rowIndex:this.getRowIndexByNode(o)})}}e.sort(function(e,t){return e.rowIndex-t.rowIndex});return e};p.prototype._calcIndexDelta=function(e){var t,i,n,r=0,o=0,s=0;for(t=0;t<this._aCollapsed.length;t++){var a=this._aCollapsed[t];if(this._getRelatedServerIndex(a)>=e){break}if(!a.isDeepOne){if(a.serverIndex>=s&&!a.initiallyCollapsed){r-=a.magnitude;s=a.serverIndex+a.magnitude}else{}}else{}}n=this._aCollapsed.filter(function(t){return t.serverIndex>=0&&t.serverIndex<e&&!t.isDeepOne&&!t.initiallyCollapsed});var d=function(e){return n.some(function(t){return e>t.serverIndex&&e<t.serverIndex+t.magnitude})};for(t=0;t<this._aExpanded.length;t++){var l=this._aExpanded[t],h=this._getRelatedServerIndex(l);if(h>=e){break}if(l.isDeepOne){var u=l.parent;var f=false;while(u){if(u.nodeState.collapsed){f=true;break}u=u.parent}i=d(h);if(!f&&!i){o+=l.children.length}}else if(l.initiallyCollapsed){i=d(h);if(!i){o+=l.children.length}}}return o+r};p.prototype._sortNodes=function(e){var t=function(e,t){var i=this._getRelatedServerIndex(e);var n=this._getRelatedServerIndex(t);return i-n}.bind(this);e.sort(t)};p.prototype._abortPendingRequest=function(){if(this._aPendingRequests.length||this._aPendingChildrenRequests.length){this.bSkipDataEvents=true;var e,t;for(e=this._aPendingRequests.length-1;e>=0;e--){this._aPendingRequests[e].oRequestHandle.abort()}this._aPendingRequests=[];for(t=this._aPendingChildrenRequests.length-1;t>=0;t--){this._aPendingChildrenRequests[t].oRequestHandle.abort()}this._aPendingChildrenRequests=[]}};p.prototype.attachSelectionChanged=function(e,t,i){this.attachEvent("selectionChanged",e,t,i);return this};p.prototype.detachSelectionChanged=function(e,t){this.detachEvent("selectionChanged",e,t);return this};p.prototype.fireSelectionChanged=function(e){this.fireEvent("selectionChanged",e);return this};p.prototype.getRootContexts=function(){};p.prototype.getNodeContexts=function(){};p.prototype._findParentNode=function(e){if(e.parent){return e.parent}let t=e.serverIndex;let i;do{t-=1;i=this._aNodes[t];if(!i){break}}while(i.level>=e.level);return i};p.prototype._resetMovedOrRemovedNode=function(e){this._resetParentState(e);e.level=e.originalLevel;e.parent=e.originalParent;delete e.containingSubtreeHandle;delete e.nodeState.removed;delete e.nodeState.reinserted};p.prototype._resetParentState=function(e){const t=this._findParentNode(e);if(t){t.addedSubtrees=[];if(t.initiallyIsLeaf){t.nodeState.isLeaf=true;t.nodeState.expanded=false;t.nodeState.collapsed=false}else if(t.nodeState.wasExpanded){t.nodeState.isLeaf=false;t.nodeState.expanded=true;t.nodeState.collapsed=false;delete t.nodeState.wasExpanded;this._aTurnedToLeaf.splice(this._aTurnedToLeaf.indexOf(t),1)}}};return p},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/ODataUtils", ["sap/base/assert","sap/base/Log","sap/base/i18n/date/CalendarType","sap/base/security/encodeURL","sap/base/util/each","sap/ui/core/format/DateFormat","sap/ui/model/_Helper","sap/ui/model/FilterProcessor","sap/ui/model/Sorter"],function(e,t,r,n,i,a,s,o,u){"use strict";let f,l,c,d,m;const g="sap.ui.model.odata.ODataUtils";const p=/^([-+]?)0*(\d+)(\.\d+|)$/;const y=/\/(Annotations|ServiceNames|ServiceCollection)(\(|%28)/;const h=/\.$/;const v=/'$/;const b=/0+$/;function S(){if(!f){f=a.getDateInstance({pattern:"'datetime'''yyyy-MM-dd'T'HH:mm:ss''",calendarType:r.Gregorian});l=a.getDateInstance({pattern:"'datetime'''yyyy-MM-dd'T'HH:mm:ss.SSS''",calendarType:r.Gregorian});c=a.getDateInstance({pattern:"'datetimeoffset'''yyyy-MM-dd'T'HH:mm:ss'Z'''",calendarType:r.Gregorian});d=a.getDateInstance({pattern:"'datetimeoffset'''yyyy-MM-dd'T'HH:mm:ss.SSS'Z'''",calendarType:r.Gregorian});m=a.getTimeInstance({pattern:"'time''PT'HH'H'mm'M'ss'S'''",calendarType:r.Gregorian})}}var _=function(){};_.createSortParams=function(e){var r;if(!e||e.length==0){return undefined}r="$orderby=";for(var n=0;n<e.length;n++){var i=e[n];if(i instanceof u){r+=i.sPath;r+=i.bDescending?"%20desc":"%20asc";r+=","}else{t.error("Trying to use "+i+" as a Sorter, but it is a "+typeof i)}}r=r.slice(0,-1);return r};function E(e){if(e&&typeof e.convert==="function"){e=e.convert()}return e}_.createFilterParams=function(e,t,r){var n;if(Array.isArray(e)){e=e.map(E);n=o.groupFilters(e)}else{n=E(e)}if(!n){return undefined}return"$filter="+this._createFilterParams(n,t,r)};_._createFilterParams=function(e,t,r){const n=Array.isArray(e)?o.groupFilters(e):e;if(!n){return undefined}return _._processSingleFilter(n,t,r,true)};_._processSingleFilter=function(e,t,r,n){e=E(e);if(e.aFilters){return _._processMultiFilter(e,t,r,n)}return _._createFilterSegment(e,t,r)};_._processMultiFilter=function(e,t,r,n){const i=e.aFilters;const a=!!e.bAnd;if(i.length===0){return a?"true":"false"}if(i.length===1){if(i[0]._bMultiFilter){return _._processSingleFilter(i[0],t,r)}return _._processSingleFilter(i[0],t,r,true)}return(!n?"(":"")+i.map(e=>_._processSingleFilter(e,t,r)).join(a?"%20and%20":"%20or%20")+(!n?")":"")};_._createUrlParamsArray=function(e){var t,r=typeof e,n;if(Array.isArray(e)){return e}t=[];if(r==="string"||e instanceof String){if(e){t.push(e)}}else if(r==="object"){n=this._encodeURLParameters(e);if(n){t.push(n)}}return t};_._encodeURLParameters=function(e){if(!e){return""}var t=[];i(e,function(e,r){if(typeof r==="string"||r instanceof String){r=encodeURIComponent(r)}e=e.startsWith("$")?e:encodeURIComponent(e);t.push(e+"="+r)});return t.join("&")};_.setOrigin=function(e,r){var n,i,a;if(!e||!r||e.indexOf(";mo")>0){return e}if(typeof r=="string"){n=r}else{n=r.alias;if(!n){i=r.system;a=r.client;if(!i||!a){t.warning("ODataUtils.setOrigin: No Client or System ID given for Origin");return e}n="sid("+i+"."+a+")"}}var s=e.split("?");var o=s[0];var u=s[1]?"?"+s[1]:"";var f="";if(o[o.length-1]==="/"){o=o.substring(0,o.length-1);f="/"}var l=/(\/[^\/]+)$/g;var c=/(;o=[^\/;]+)/g;var d=o.match(l)[0];var m=d.match(c);var g=m?m[0]:null;if(g){if(r.force){var p=d.replace(g,";o="+n);o=o.replace(d,p);return o+f+u}return e}o=o+";o="+n+f;return o+u};_.setAnnotationOrigin=function(e,r){var n;var i=e.search(y);var a=r&&r.preOriginBaseUri?r.preOriginBaseUri.indexOf(".xsodata"):-1;if(i>=0){if(e.indexOf("/$value",i)===-1){t.warning("ODataUtils.setAnnotationOrigin: Annotation url is missing $value segment.");n=e}else{var s=e.substring(0,i);var o=e.substring(i,e.length);var u=_.setOrigin(s,r);n=u+o}}else if(a>=0){n=_.setOrigin(e,r)}else{n=e.replace(r.preOriginBaseUri,r.postOriginBaseUri)}return n};_._resolveMultiFilter=function(e,t,r){const n=e.aFilters;if(n){return"("+n.map(e=>{let n="";if(e._bMultiFilter){n=_._resolveMultiFilter(e,t,r)}else if(e.sPath){n=_._createFilterSegment(e,t,r)}return n}).join(e.bAnd?"%20and%20":"%20or%20")+")"}return""};_._createFilterSegment=function(e,r,n){let{sPath:i,oValue1:a,oValue2:o}=e;const{sOperator:u,bCaseSensitive:f=true,sFractionalSeconds1:l,sFractionalSeconds2:c}=e;let d;if(n){const e=r._getPropertyMetadata(n,i);if(e){d=e.type;if(d){a=_._formatValue(a,d,f,l);o=o===null||o===undefined?null:_._formatValue(o,d,f,c)}else{t.error("Type for property '"+i+"' of EntityType '"+n.name+"' not found!",undefined,g)}}else{t.error("Property type for property '"+i+"' of EntityType '"+n.name+"' not found!",undefined,g)}}if(a){a=s.encodeURL(String(a))}if(o){o=s.encodeURL(String(o))}if(!f&&d==="Edm.String"){i="toupper("+i+")"}switch(u){case"EQ":case"NE":case"GT":case"GE":case"LT":case"LE":return i+"%20"+u.toLowerCase()+"%20"+a;case"BT":return"("+i+"%20ge%20"+a+"%20and%20"+i+"%20le%20"+o+")";case"NB":return"not%20("+i+"%20ge%20"+a+"%20and%20"+i+"%20le%20"+o+")";case"Contains":return"substringof("+a+","+i+")";case"NotContains":return"not%20substringof("+a+","+i+")";case"StartsWith":return"startswith("+i+","+a+")";case"NotStartsWith":return"not%20startswith("+i+","+a+")";case"EndsWith":return"endswith("+i+","+a+")";case"NotEndsWith":return"not%20endswith("+i+","+a+")";default:t.error("Unknown filter operator '"+u+"'",undefined,g);return"true"}};_.formatValue=function(e,t,r){return _._formatValue(e,t,r)};_._formatValue=function(e,t,r,n){var i,a;if(r===undefined){r=true}if(e===null||e===undefined){return"null"}S();switch(t){case"Edm.String":e=r?e:e.toUpperCase();a="'"+String(e).replace(/'/g,"''")+"'";break;case"Edm.Time":if(typeof e==="object"){a=m.format(new Date(e.ms),true)}else{a="time'"+e+"'"}break;case"Edm.DateTime":i=e instanceof Date?e:new Date(e);if(i.getMilliseconds()>0){a=l.format(i,true);if(n){a=a.replace(v,n+"'")}}else{a=f.format(i,true);if(n){a=a.replace(v,".000"+n+"'")}}break;case"Edm.DateTimeOffset":i=e instanceof Date?e:new Date(e);if(i.getMilliseconds()>0){a=d.format(i,true);if(n){a=a.replace("Z'",n+"Z'")}}else{a=c.format(i,true);if(n){a=a.replace("Z'",".000"+n+"Z'")}}break;case"Edm.Guid":a="guid'"+e+"'";break;case"Edm.Decimal":a=e+"m";break;case"Edm.Int64":a=e+"l";break;case"Edm.Double":a=e+"d";break;case"Edm.Float":case"Edm.Single":a=e+"f";break;case"Edm.Binary":a="binary'"+e+"'";break;default:a=String(e);break}return a};_.parseValue=function(e){var t=e[0],r=e[e.length-1];S();if(t==="'"){return e.slice(1,-1).replace(/''/g,"'")}else if(e.startsWith("time'")){return{__edmType:"Edm.Time",ms:m.parse(e,true).getTime()}}else if(e.startsWith("datetime'")){return e.includes(".")?l.parse(e,true):f.parse(e,true)}else if(e.startsWith("datetimeoffset'")){return e.includes(".")?d.parse(e,true):c.parse(e,true)}else if(e.startsWith("guid'")){return e.slice(5,-1)}else if(e==="null"){return null}else if(r==="m"||r==="l"||r==="d"||r==="f"){return e.slice(0,-1)}else if(!isNaN(t)||t==="-"){return parseInt(e)}else if(e==="true"||e==="false"){return e==="true"}else if(e.startsWith("binary'")){return e.slice(7,-1)}throw new Error("Cannot parse value '"+e+"', no Edm type found")};function T(e,t){if(e===t){return 0}if(e===null||t===null||e===undefined||t===undefined){return NaN}return e>t?1:-1}function F(e){var t;if(typeof e!=="string"){return undefined}t=p.exec(e);if(!t){return undefined}return{sign:t[1]==="-"?-1:1,integerLength:t[2].length,abs:t[2]+t[3].replace(b,"").replace(h,"")}}function M(e,t){var r,n,i;if(e===t){return 0}r=F(e);n=F(t);if(!r||!n){return NaN}if(r.sign!==n.sign){return r.sign>n.sign?1:-1}i=T(r.integerLength,n.integerLength)||T(r.abs,n.abs);return r.sign*i}var D=/^PT(\d\d)H(\d\d)M(\d\d)S$/;function O(e){if(typeof e==="string"&&D.test(e)){e=parseInt(RegExp.$1)*36e5+parseInt(RegExp.$2)*6e4+parseInt(RegExp.$3)*1e3}if(e instanceof Date){return e.getTime()}if(e&&e.__edmType==="Edm.Time"){return e.ms}return e}_.compare=function(e,t,r){return r?M(e,t):T(O(e),O(t))};_.getComparator=function(e){switch(e){case"Edm.Date":case"Edm.DateTime":case"Edm.DateTimeOffset":case"Edm.Time":return _.compare;case"Edm.Decimal":case"Edm.Int64":return M;default:return T}};var I=/([(=,])('.*?')([,)])/g,U=/[MLDF](?=[,)](?:[^']*'[^']*')*[^']*$)/g,w=/([(=,])(X')/g,R=function(e,t,r,n){return t+encodeURIComponent(decodeURIComponent(r))+n},P=function(e){return e.toLowerCase()},$=function(e,t){return t+"binary'"};_._normalizeKey=function(e){return e.replace(I,R).replace(U,P).replace(w,$)};_._mergeIntervals=function(e){if(e.length){return{start:e[0].start,end:e[e.length-1].end}}return undefined};_._getReadIntervals=function(e,t,r,n,i){var a,s,o,u=-1,f=[],l=_._getReadRange(e,t,r,n);if(i===undefined){i=Infinity}s=Math.min(l.start+l.length,i);o=Math.min(s,Math.max(l.start,e.length)+1);for(a=l.start;a<o;a+=1){if(e[a]!==undefined){if(u>=0){f.push({start:u,end:a});u=-1}}else if(u<0){u=a}}if(u>=0){f.push({start:u,end:s})}return f};_._getReadRange=function(e,t,r,n,i){function a(t,r){const n=Math.sign(r-t);for(let a=t;a!==r;a+=n){if(e[a]===undefined||i?.(e[a])){return a}}return-1}const s=Math.ceil(n/2);let o=a(t+r,t+r+s);if(o!==-1){const e=o-(t+r);r+=e+n}o=a(t-1,Math.max(t-1-s,-1));if(o!==-1){const e=t-1-o;const i=e+n;r+=i;t-=i;if(t<0){r+=t;if(isNaN(r)){r=Infinity}t=0}}return{length:r,start:t}};_.removeOriginSegmentParameters=function(e){return e.replaceAll(/(;o=[^\/;]+|;mo)(?=\/|;|$)/g,"")};return _},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/OperationMode", function(){"use strict";var e={Default:"Default",Server:"Server",Client:"Client",Auto:"Auto"};return e},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/UpdateMethod", function(){"use strict";var e={MERGE:"MERGE",PUT:"PUT",Merge:"MERGE",Put:"PUT"};return e},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/_AnnotationHelperBasics", ["sap/base/Log","sap/base/util/extend","sap/ui/base/BindingParser","sap/ui/performance/Measurement"],function(e,t,a,n){"use strict";var i="sap.ui.model.odata.AnnotationHelper",r=/[\\\{\}:]/,o,u=/^(\/dataServices\/schema\/\d+\/entityContainer\/\d+\/entitySet\/\d+)(?:\/|$)/,d=[i],s=i+"/followPath",p=/^(\/dataServices\/schema\/\d+\/(?:complex|entity)Type\/\d+)(?:\/|$)/,f={"Edm.Boolean":"sap.ui.model.odata.type.Boolean","Edm.Byte":"sap.ui.model.odata.type.Byte","Edm.Date":"sap.ui.model.odata.type.Date","Edm.DateTime":"sap.ui.model.odata.type.DateTime","Edm.DateTimeOffset":"sap.ui.model.odata.type.DateTimeOffset","Edm.Decimal":"sap.ui.model.odata.type.Decimal","Edm.Double":"sap.ui.model.odata.type.Double","Edm.Float":"sap.ui.model.odata.type.Single","Edm.Guid":"sap.ui.model.odata.type.Guid","Edm.Int16":"sap.ui.model.odata.type.Int16","Edm.Int32":"sap.ui.model.odata.type.Int32","Edm.Int64":"sap.ui.model.odata.type.Int64","Edm.SByte":"sap.ui.model.odata.type.SByte","Edm.Single":"sap.ui.model.odata.type.Single","Edm.String":"sap.ui.model.odata.type.String","Edm.Stream":"sap.ui.model.odata.type.Stream","Edm.Time":"sap.ui.model.odata.type.Time","Edm.TimeOfDay":"sap.ui.model.odata.type.TimeOfDay"};o={descend:function(e,a,n){var i=t({},e);o.expectType(e,typeof a==="number"?"array":"object");i.path=e.path+"/"+a;i.value=e.value[a];if(n===true){i.asExpression=true}else if(n){o.expectType(i,n)}return i},error:function(t,a,n){a=t.path+": "+a;e.error(a,o.toErrorString(t.value),n||i);throw new SyntaxError(a)},expectType:function(e,t){var a,n=e.value;if(t==="array"){a=!Array.isArray(n)}else{a=typeof n!==t||n===null||Array.isArray(n)}if(a){o.error(e,"Expected "+t)}},followPath:function(e,t){var a,i,r,u,p=e.getModel(),f,l={associationSetEnd:undefined,navigationAfterMultiple:false,isMultiple:false,navigationProperties:[],resolvedPath:undefined},m,y;n.average(s,"",d);i=o.getPath(t);r=i!==undefined&&o.getStartingPoint(e,i);if(!r){n.end(s);return undefined}f=i.split("/");if(i){while(f.length&&r){m=f[0];u=m.indexOf("@");if(u===0){r+="/"+m.slice(1);f.shift();continue}y=p.getObject(r);a=p.getODataAssociationEnd(y,m);if(a){l.associationSetEnd=p.getODataAssociationSetEnd(y,m);l.navigationProperties.push(m);if(l.isMultiple){l.navigationAfterMultiple=true}l.isMultiple=a.multiplicity==="*";r=p.getODataEntityType(a.type,true);f.shift();continue}r=p.getODataProperty(y,f,true)}}l.resolvedPath=r;n.end(s);return l},getPath:function(e){if(e){if(e.hasOwnProperty("AnnotationPath")){return e.AnnotationPath}if(e.hasOwnProperty("Path")){return e.Path}if(e.hasOwnProperty("PropertyPath")){return e.PropertyPath}if(e.hasOwnProperty("NavigationPropertyPath")){return e.NavigationPropertyPath}}return undefined},getStartingPoint:function(e,t){var a,n=p.exec(e.getPath()),i;if(n){return n[1]}n=u.exec(e.getPath());if(n){if(!t){return n[1]}i=e.getModel();a=i.getObject(n[1]);return i.getODataEntityType(a.entityType,true)}return undefined},property:function(e,t,a){return o.descend(e,t,a).value},resultToString:function(e,t,n,i){var u=e.value;function d(t){var a,n,i=e.parameters&&o.toJSON(e.parameters),d=i&&i!=="{}",s,p=f[e.type];t=t&&!e.ignoreTypeInPath&&p;if(t||r.test(u)||d){s="{path:"+o.toJSON(u);if(t){s+=",type:'"+p+"'";a=o.toJSON(e.constraints);if(a&&a!=="{}"){s+=",constraints:"+a}n=e.formatOptions&&o.toJSON(e.formatOptions);if(n&&n!=="{}"){s+=",formatOptions:"+n}}if(d){s+=",parameters:"+i}return s+"}"}return"{"+u+"}"}function s(e){switch(e.type){case"Edm.Boolean":case"Edm.Double":case"Edm.Int32":return String(e.value);default:return o.toJSON(e.value)}}switch(e.result){case"binding":if(t){return(i?"%":"$")+d(n)}return d(n);case"composite":if(t){throw new Error("Trying to embed a composite binding into an expression binding")}return u;case"constant":if(e.type==="edm:Null"){if(e.value===undefined){return t?"undefined":undefined}return t?"null":null}if(t){return s(e)}return typeof u==="string"?a.complexParser.escape(u):String(u);case"expression":return t?u:"{="+u+"}";default:return undefined}},toErrorString:function(e){var t;if(typeof e!=="function"){try{t=o.toJSON(e);if(t!==undefined&&t!=="null"){return t}}catch(e){}}return String(e)},toJSON:function(e){var t,a=false,n="",i,r;t=JSON.stringify(e);if(t===undefined){return undefined}for(i=0;i<t.length;i+=1){switch(r=t.charAt(i)){case"'":n+="\\'";break;case'"':if(a){n+=r;a=false}else{n+="'"}break;case"\\":if(a){n+="\\\\"}a=!a;break;default:if(a){n+="\\";a=false}n+=r}}return n}};return o});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/_AnnotationHelperExpression", ["./_AnnotationHelperBasics","sap/base/Log","sap/base/i18n/date/CalendarType","sap/ui/base/BindingParser","sap/ui/base/ManagedObject","sap/ui/core/format/DateFormat","sap/ui/model/odata/ODataUtils","sap/ui/performance/Measurement"],function(e,t,r,a,n,i,s,o){"use strict";var u="sap.ui.model.odata.AnnotationHelper",l,p,d="\\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12]\\d|3[01])",c="[-+]?\\d+(?:\\.\\d+)?",m="9007199254740991",f="-"+m,g=[u],y=u+"/getExpression",E,v="(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(\\.\\d{1,12})?)?",T={Bool:/^true$|^false$/i,Float:new RegExp("^"+c+"(?:[eE][-+]?\\d+)?$|^NaN$|^-INF$|^INF$"),Date:new RegExp("^"+d+"$"),DateTimeOffset:new RegExp("^"+d+"T"+v+"(?:Z|[-+](?:0\\d|1[0-3]):[0-5]\\d|[-+]14:00)$","i"),Decimal:new RegExp("^"+c+"$"),Guid:/^[A-F0-9]{8}-(?:[A-F0-9]{4}-){3}[A-F0-9]{12}$/i,Int:/^[-+]?\d{1,19}$/,TimeOfDay:new RegExp("^"+v+"$")},D,x=/^\{@i18n>[^\\\{\}:]+\}$/,S=/^\d+$/,h={And:"&&",Eq:"===",Ge:">=",Gt:">",Le:"<=",Lt:"<",Ne:"!==",Not:"!",Or:"||"},O=/^(\/dataServices\/schema\/\d+)(?:\/|$)/,b={"Edm.Boolean":"boolean","Edm.Byte":"number","Edm.Date":"date","Edm.DateTime":"datetime","Edm.DateTimeOffset":"datetime","Edm.Decimal":"decimal","Edm.Double":"number","Edm.Float":"number","Edm.Guid":"string","Edm.Int16":"number","Edm.Int32":"number","Edm.Int64":"decimal","Edm.SByte":"number","Edm.Single":"number","Edm.String":"string","Edm.Time":"time","Edm.TimeOfDay":"time"},P={Bool:"Edm.Boolean",Float:"Edm.Double",Date:"Edm.Date",DateTimeOffset:"Edm.DateTimeOffset",Decimal:"Edm.Decimal",Guid:"Edm.Guid",Int:"Edm.Int64",String:"Edm.String",TimeOfDay:"Edm.TimeOfDay"},w={boolean:false,date:true,datetime:true,decimal:true,number:false,string:false,time:true};D={_setDateTimeFormatter:function(){l=i.getDateInstance({calendarType:r.Gregorian,pattern:"yyyy-MM-dd",strictParsing:true,UTC:true});p=i.getDateTimeInstance({calendarType:r.Gregorian,pattern:"yyyy-MM-dd'T'HH:mm:ss.SSSXXX",strictParsing:true});E=i.getTimeInstance({calendarType:r.Gregorian,pattern:"HH:mm:ss.SSS",strictParsing:true,UTC:true})},adjustOperands:function(e,t){if(e.result!=="constant"&&e.category==="number"&&t.result==="constant"&&t.type==="Edm.Int64"){t.category="number"}if(e.result!=="constant"&&e.category==="decimal"&&t.result==="constant"&&t.type==="Edm.Int32"){t.category="decimal";t.type=e.type}if(e.result==="constant"&&e.category==="date"&&t.result!=="constant"&&t.category==="datetime"){t.category="date"}},apply:function(t,r){var a=e.descend(r,"Name","string"),n=e.descend(r,"Parameters");switch(a.value){case"odata.concat":return D.concat(t,n);case"odata.fillUriTemplate":return D.fillUriTemplate(t,n);case"odata.uriEncode":return D.uriEncode(t,n);default:e.error(a,"unknown function: "+a.value);return undefined}},concat:function(t,r){var a=r.asExpression,n=[],i,s=[];e.expectType(r,"array");r.value.forEach(function(e,n){i=D.parameter(t,r,n);a=a||i.result==="expression";s.push(i)});s.forEach(function(t){if(a){D.wrapExpression(t)}if(t.type!=="edm:Null"){n.push(e.resultToString(t,a,r.withType))}});i=a?{result:"expression",value:n.join("+")}:{result:"composite",value:n.join("")};i.type="Edm.String";return i},conditional:function(t,r){var a=D.parameter(t,r,0,"Edm.Boolean"),n=D.parameter(t,r,1),i=D.parameter(t,r,2),s=n.type,o=r.withType;if(n.type==="edm:Null"){s=i.type}else if(i.type!=="edm:Null"&&n.type!==i.type){e.error(r,"Expected same type for second and third parameter, types are '"+n.type+"' and '"+i.type+"'")}return{result:"expression",type:s,value:e.resultToString(D.wrapExpression(a),true,false)+"?"+e.resultToString(D.wrapExpression(n),true,o)+":"+e.resultToString(D.wrapExpression(i),true,o)}},constant:function(t,r,a){var n=r.value;e.expectType(r,"string");if(a==="String"){if(x.test(n)){return{ignoreTypeInPath:true,result:"binding",type:"Edm.String",value:n.slice(1,-1)}}else if(t.getSetting&&t.getSetting("bindTexts")){return{result:"binding",type:"Edm.String",ignoreTypeInPath:true,value:"/##"+D.replaceIndexes(t.getModel(),r.path)}}a="Edm.String"}else if(!T[a].test(n)){e.error(r,"Expected "+a+" value but instead saw '"+n+"'")}else{a=P[a];if(a==="Edm.Int64"&&s.compare(n,f,true)>=0&&s.compare(n,m,true)<=0){a="Edm.Int32"}}return{result:"constant",type:a,value:n}},expression:function(t,r){var a=r.value,n,i;e.expectType(r,"object");if(a.hasOwnProperty("Type")){i=e.property(r,"Type","string");n=e.descend(r,"Value")}else{["And","Apply","Bool","Date","DateTimeOffset","Decimal","Float","Eq","Ge","Gt","Guid","If","Int","Le","Lt","Ne","Not","Null","Or","Path","PropertyPath","String","TimeOfDay"].forEach(function(t){if(a.hasOwnProperty(t)){i=t;n=e.descend(r,t)}})}switch(i){case"Apply":return D.apply(t,n);case"If":return D.conditional(t,n);case"Path":case"PropertyPath":return D.path(t,n);case"Bool":case"Date":case"DateTimeOffset":case"Decimal":case"Float":case"Guid":case"Int":case"String":case"TimeOfDay":return D.constant(t,n,i);case"And":case"Eq":case"Ge":case"Gt":case"Le":case"Lt":case"Ne":case"Or":return D.operator(t,n,i);case"Not":return D.not(t,n);case"Null":return{result:"constant",value:"null",type:"edm:Null"};default:e.error(r,"Unsupported OData expression");return undefined}},formatOperand:function(t,r,a,n){var i;if(a.result==="constant"){switch(a.category){case"boolean":case"number":return a.value;case"date":i=D.parseDate(a.value);if(!i){e.error(e.descend(t,r),"Invalid Date "+a.value)}return String(i.getTime());case"datetime":i=D.parseDateTimeOffset(a.value);if(!i){e.error(e.descend(t,r),"Invalid DateTime "+a.value)}return String(i.getTime());case"time":return String(D.parseTimeOfDay(a.value).getTime())}}if(n){D.wrapExpression(a)}return e.resultToString(a,true)},getExpression:function(r,i,s){var l;if(i===undefined){return undefined}o.average(y,"",g);if(!D.simpleParserWarningLogged&&n.bindingParser===a.simpleParser){t.warning("Complex binding syntax not active",null,u);D.simpleParserWarningLogged=true}try{l=D.expression(r,{asExpression:false,path:r.getPath(),value:i,withType:s});o.end(y);return e.resultToString(l,false,s)}catch(t){o.end(y);if(t instanceof SyntaxError){return"Unsupported: "+a.complexParser.escape(e.toErrorString(i))}throw t}},fillUriTemplate:function(t,r){var a,n,i=[],s="",o,u=r.value,l,p=D.parameter(t,r,0,"Edm.String");i.push("odata.fillUriTemplate(",e.resultToString(p,true),",{");for(a=1;a<u.length;a+=1){o=e.descend(r,a,"object");n=e.property(o,"Name","string");l=D.expression(t,e.descend(o,"Value"),true);i.push(s,e.toJSON(n),":",e.resultToString(l,true));s=","}i.push("})");return{result:"expression",value:i.join(""),type:"Edm.String"}},not:function(t,r){var a;r.asExpression=true;a=D.expression(t,r);return{result:"expression",value:"!"+e.resultToString(D.wrapExpression(a),true),type:"Edm.Boolean"}},operator:function(t,r,a){var n=a==="And"||a==="Or"?"Edm.Boolean":undefined,i=D.parameter(t,r,0,n),s=D.parameter(t,r,1,n),o,u,l,p;if(i.type!=="edm:Null"&&s.type!=="edm:Null"){i.category=b[i.type];s.category=b[s.type];D.adjustOperands(i,s);D.adjustOperands(s,i);if(i.category!==s.category){e.error(r,"Expected two comparable parameters but instead saw "+i.type+" and "+s.type)}o=i.category==="decimal"?",true":"";u=w[i.category]}l=D.formatOperand(r,0,i,!u);p=D.formatOperand(r,1,s,!u);return{result:"expression",value:u?"odata.compare("+l+","+p+o+")"+h[a]+"0":l+h[a]+p,type:"Edm.Boolean"}},parameter:function(t,r,a,n){var i=e.descend(r,a),s;i.asExpression=true;s=D.expression(t,i);if(n&&n!==s.type){e.error(i,"Expected "+n+" but instead saw "+s.type)}return s},parseDate:function(e){return l.parse(e)},parseDateTimeOffset:function(e){var t=T.DateTimeOffset.exec(e);if(t&&t[1]&&t[1].length>4){e=e.replace(t[1],t[1].slice(0,4))}return p.parse(e.toUpperCase())},parseTimeOfDay:function(e){if(e.length>12){e=e.slice(0,12)}return E.parse(e)},path:function(r,a){var n=a.value,i={},s,o,l,p=r.getModel(),d={getModel:function(){return p},getPath:function(){return a.path}},c,m={result:"binding",value:n},f;e.expectType(a,"string");f=e.followPath(d,{Path:n});if(f&&f.resolvedPath){c=p.getProperty(f.resolvedPath);m.type=c.type;switch(c.type){case"Edm.DateTime":i.displayFormat=c["sap:display-format"];break;case"Edm.Decimal":if(c.precision){i.precision=c.precision}if(c.scale){i.scale=c.scale}l=c["Org.OData.Validation.V1.Minimum"];if(l&&(l.Decimal||l.String)){i.minimum=l.Decimal||l.String;s=l["Org.OData.Validation.V1.Exclusive"];if(s){i.minimumExclusive=s.Bool||"true"}}l=c["Org.OData.Validation.V1.Maximum"];if(l&&(l.Decimal||l.String)){i.maximum=l.Decimal||l.String;s=l["Org.OData.Validation.V1.Exclusive"];if(s){i.maximumExclusive=s.Bool||"true"}}break;case"Edm.String":i.maxLength=c.maxLength;o=c["com.sap.vocabularies.Common.v1.IsDigitSequence"];if(o){i.isDigitSequence=o.Bool||"true"}break}if(c.nullable==="false"){i.nullable="false"}m.constraints=i}else{t.warning("Could not find property '"+n+"' starting from '"+a.path+"'",null,u)}return m},replaceIndexes:function(t,r){var a,n=r.split("/"),i,s;function o(r,a){var s=t.getProperty(i+"/"+r);if(typeof s==="string"){n[a]="[${"+r+"}==="+e.toJSON(s)+"]";return true}return false}a=O.exec(r);if(!a){return r}i=a[1];if(!o("namespace",3)){return r}for(var u=4;u<n.length;u+=1){i=i+"/"+n[u];if(S.test(n[u])&&!o("name",u)){s=t.getProperty(i+"/RecordType");if(s){if(s==="com.sap.vocabularies.UI.v1.DataFieldForAction"){o("Action/String",u)}else if(s==="com.sap.vocabularies.UI.v1.DataFieldForAnnotation"){o("Target/AnnotationPath",u)}else if(s.indexOf("com.sap.vocabularies.UI.v1.DataField")===0){o("Value/Path",u)}}}}return n.join("/")},simpleParserWarningLogged:false,uriEncode:function(t,r){var a=D.parameter(t,r,0);if(a.result==="constant"){if(a.type==="Edm.Date"){a.type="Edm.DateTime";a.value=a.value+"T00:00:00Z"}else if(a.type==="Edm.TimeOfDay"){a.type="Edm.Time";a.value="PT"+a.value.slice(0,2)+"H"+a.value.slice(3,5)+"M"+a.value.slice(6,8)+"S"}}return{result:"expression",value:"odata.uriEncode("+e.resultToString(a,true)+","+e.toJSON(a.type)+")",type:"Edm.String"}},wrapExpression:function(e){if(e.result==="expression"){e.value="("+e.value+")"}return e}};D._setDateTimeFormatter();return D});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/_ODataMetaModelUtils", ["./_AnnotationHelperBasics","sap/base/Log","sap/base/util/deepExtend","sap/base/util/extend"],function(e,a,t,i){"use strict";var n={Bool:"false"},r={Bool:"true"},o={fiscalyear:"IsFiscalYear",fiscalyearperiod:"IsFiscalYearPeriod",year:"IsCalendarYear",yearmonth:"IsCalendarYearMonth",yearmonthday:"IsCalendarDate",yearquarter:"IsCalendarYearQuarter",yearweek:"IsCalendarYearWeek"},s={interval:"SingleInterval","multi-value":"MultiValue","single-value":"SingleValue"},l="sap.ui.model.odata.ODataMetaModel",c={bday:"Contact",city:"Contact/adr",country:"Contact/adr",email:"Contact/email",familyname:"Contact/n",givenname:"Contact/n",honorific:"Contact/n",middlename:"Contact/n",name:"Contact",nickname:"Contact",note:"Contact",org:"Contact","org-role":"Contact","org-unit":"Contact",photo:"Contact",pobox:"Contact/adr",region:"Contact/adr",street:"Contact/adr",suffix:"Contact/n",tel:"Contact/tel",title:"Contact",zip:"Contact/adr",class:"Event",dtend:"Event",dtstart:"Event",duration:"Event",fbtype:"Event",location:"Event",status:"Event",transp:"Event",wholeday:"Event",body:"Message",from:"Message",received:"Message",sender:"Message",subject:"Message",completed:"Task",due:"Task","percent-complete":"Task",priority:"Task"},p=/(\w+)(?:;type=([\w,]+))?/,u={email:{typeMapping:{home:"home",pref:"preferred",work:"work"},v4EnumType:"com.sap.vocabularies.Communication.v1.ContactInformationType",v4PropertyAnnotation:"com.sap.vocabularies.Communication.v1.IsEmailAddress"},tel:{typeMapping:{cell:"cell",fax:"fax",home:"home",pref:"preferred",video:"video",voice:"voice",work:"work"},v4EnumType:"com.sap.vocabularies.Communication.v1.PhoneType",v4PropertyAnnotation:"com.sap.vocabularies.Communication.v1.IsPhoneNumber"}},f={creatable:{"Org.OData.Capabilities.V1.InsertRestrictions":{Insertable:n}},pageable:{"Org.OData.Capabilities.V1.SkipSupported":n,"Org.OData.Capabilities.V1.TopSupported":n},"requires-filter":{"Org.OData.Capabilities.V1.FilterRestrictions":{RequiresFilter:r}},topable:{"Org.OData.Capabilities.V1.TopSupported":n}},d={city:"locality",email:"address",familyname:"surname",givenname:"given",honorific:"prefix",middlename:"additional",name:"fn","org-role":"role","org-unit":"orgunit","percent-complete":"percentcomplete",tel:"uri",zip:"code"},m={"sap:filterable":["Org.OData.Capabilities.V1.FilterRestrictions","NonFilterableProperties"],"sap:required-in-filter":["Org.OData.Capabilities.V1.FilterRestrictions","RequiredProperties"],"sap:sortable":["Org.OData.Capabilities.V1.SortRestrictions","NonSortableProperties"]},v=/^com\.sap\.vocabularies\.Common\.v1\.ValueList(#.*)?$/,b=a.Level.WARNING,y;y={addEntitySetAnnotation:function(e,a,n,r,o){if(n==="EntitySet"&&a.value===r){if(o){t(e,f[a.name])}else{i(e,f[a.name])}}},addFilterRestriction:function(e,t){var i,n=s[e["sap:filter-restriction"]];if(!n){if(a.isLoggable(b,l)){a.warning("Unsupported sap:filter-restriction: "+e["sap:filter-restriction"],t.entityType+"."+e.name,l)}return}i=t["com.sap.vocabularies.Common.v1.FilterExpressionRestrictions"]||[];i.push({Property:{PropertyPath:e.name},AllowedExpressions:{EnumMember:"com.sap.vocabularies.Common.v1.FilterExpressionType/"+n}});t["com.sap.vocabularies.Common.v1.FilterExpressionRestrictions"]=i},addNavigationFilterRestriction:function(e,a){var t=a["Org.OData.Capabilities.V1.NavigationRestrictions"]||{};t.RestrictedProperties=t.RestrictedProperties||[];t.RestrictedProperties.push({FilterRestrictions:{Filterable:n},NavigationProperty:{NavigationPropertyPath:e.name}});a["Org.OData.Capabilities.V1.NavigationRestrictions"]=t},addPropertyToAnnotation:function(e,a,t){var i=m[e],n=i[0],r=i[1],o=a[n]||{},s=o[r]||[];s.push({PropertyPath:t.name});o[r]=s;a[n]=o},addSapSemantics:function(e){if(e.property){e.property.forEach(function(t){var i,n,s,f,m,v=t["sap:semantics"],g,h,C,P,O;if(!v){return}if(v==="url"){t["Org.OData.Core.V1.IsURL"]=r;return}if(v in o){g="com.sap.vocabularies.Common.v1."+o[v];t[g]=r;return}s=p.exec(v);if(!s){if(a.isLoggable(b,l)){a.warning("Unsupported sap:semantics: "+v,e.name+"."+t.name,l)}return}if(s[2]){v=s[1];O=y.getV4TypesForV2Semantics(v,s[2],t,e)}P=u[v];n=v==="tel"||v==="email";h=c[v];if(h){i=h.split("/");g="com.sap.vocabularies.Communication.v1."+i[0];e[g]=e[g]||{};C=e[g];f=i[1];if(f){C[f]=C[f]||(n?[]:{});if(n){m={};C[f].push(m);C=m}else{C=C[f]}}C[d[v]||v]={Path:t.name};if(O){C.type={EnumMember:O}}}if(P){t[P.v4PropertyAnnotation]=t[P.v4PropertyAnnotation]||r}})}},addUnitAnnotations:function(t,i){function n(t){(t||[]).forEach(function(t){(t.property||[]).forEach(function(n){var r,o,s,c,p,u=n["sap:unit"],f;if(u){o={getModel:function(){return i},getPath:function(){return t.$path}};p={Path:u};c=e.followPath(o,p);if(c&&c.resolvedPath){f=i.getProperty(c.resolvedPath);s=f["sap:semantics"];if(s==="unit-of-measure"){r="Org.OData.Measures.V1.Unit"}else if(s==="currency-code"){r="Org.OData.Measures.V1.ISOCurrency"}else if(a.isLoggable(b,l)){a.warning("Unsupported sap:semantics='"+s+"' at sap:unit='"+u+"'; "+"expected 'currency-code' or 'unit-of-measure'",t.namespace+"."+t.name+"/"+n.name,l)}if(r&&!(r in n)){n[r]=p}}else if(a.isLoggable(b,l)){a.warning("Path '"+u+"' for sap:unit cannot be resolved",t.namespace+"."+t.name+"/"+n.name,l)}}})})}t.forEach(function(e){n(e.complexType);n(e.entityType)})},addV4Annotation:function(e,a,t){switch(a.name){case"aggregation-role":if(a.value==="dimension"){e["com.sap.vocabularies.Analytics.v1.Dimension"]=r}else if(a.value==="measure"){e["com.sap.vocabularies.Analytics.v1.Measure"]=r}break;case"display-format":if(a.value==="NonNegative"){e["com.sap.vocabularies.Common.v1.IsDigitSequence"]=r}else if(a.value==="UpperCase"){e["com.sap.vocabularies.Common.v1.IsUpperCase"]=r}break;case"pageable":case"topable":y.addEntitySetAnnotation(e,a,t,"false",false);break;case"creatable":y.addEntitySetAnnotation(e,a,t,"false",true);break;case"deletable":case"deletable-path":y.handleXableAndXablePath(e,a,t,"Org.OData.Capabilities.V1.DeleteRestrictions","Deletable");break;case"updatable":case"updatable-path":y.handleXableAndXablePath(e,a,t,"Org.OData.Capabilities.V1.UpdateRestrictions","Updatable");break;case"requires-filter":y.addEntitySetAnnotation(e,a,t,"true",true);break;case"field-control":e["com.sap.vocabularies.Common.v1.FieldControl"]={Path:a.value};break;case"heading":e["com.sap.vocabularies.Common.v1.Heading"]={String:a.value};break;case"label":e["com.sap.vocabularies.Common.v1.Label"]={String:a.value};break;case"precision":e["Org.OData.Measures.V1.Scale"]={Path:a.value};break;case"quickinfo":e["com.sap.vocabularies.Common.v1.QuickInfo"]={String:a.value};break;case"text":e["com.sap.vocabularies.Common.v1.Text"]={Path:a.value};break;case"visible":if(a.value==="false"){e["com.sap.vocabularies.Common.v1.FieldControl"]={EnumMember:"com.sap.vocabularies.Common.v1.FieldControlType/Hidden"};e["com.sap.vocabularies.UI.v1.Hidden"]=r}break;default:}},calculateEntitySetAnnotations:function(e,a){if(a.property){a.property.forEach(function(a){if(a["sap:filterable"]==="false"){y.addPropertyToAnnotation("sap:filterable",e,a)}if(a["sap:required-in-filter"]==="true"){y.addPropertyToAnnotation("sap:required-in-filter",e,a)}if(a["sap:sortable"]==="false"){y.addPropertyToAnnotation("sap:sortable",e,a)}if(a["sap:filter-restriction"]){y.addFilterRestriction(a,e)}})}if(a.navigationProperty){a.navigationProperty.forEach(function(a){if(a["sap:filterable"]==="false"){y.addNavigationFilterRestriction(a,e);y.addPropertyToAnnotation("sap:filterable",e,a)}y.handleCreatableNavigationProperty(e,a)})}},findIndex:function(e,a,t){var i,n;t=t||"name";if(e){for(i=0,n=e.length;i<n;i+=1){if(e[i][t]===a){return i}}}return-1},findObject:function(e,a,t){var i=y.findIndex(e,a,t);return i<0?null:e[i]},getChildAnnotations:function(e,a,t){var i=t?e.EntityContainer:e.propertyAnnotations;return i&&i[a]||{}},getFromContainer:function(e,a,t,i){var n,r=i?undefined:null;if(e){n=y.findIndex(e[a],t);if(n>=0){r=i?e.$path+"/"+a+"/"+n:e[a][n]}}return r},getObject:function(e,a,t,i){var n,r=i?undefined:null,o,s,l,c;t=t||"";s=t.lastIndexOf(".");l=t.slice(0,s);c=t.slice(s+1);o=y.getSchema(e,l);if(o){n=o[a];if(n){n.some(function(e){if(e.name===c){r=i?e.$path:e;return true}return false})}}return r},getSchema:function(e,a){var t=null,i=Array.isArray(e)?e:e.getObject("/dataServices/schema");if(i){i.some(function(e){if(e.namespace===a){t=e;return true}return false})}return t},getV4TypesForV2Semantics:function(e,t,i,n){var r=[],o=u[e];if(o){t.split(",").forEach(function(e){var t=o.typeMapping[e];if(t){r.push(o.v4EnumType+"/"+t)}else if(a.isLoggable(b,l)){a.warning("Unsupported type for sap:semantics: "+e,n.name+"."+i.name,l)}})}return r.join(" ")},getValueLists:function(e){var a,t,i,n={};for(t in e){a=v.exec(t);if(a){i=(a[1]||"").slice(1);n[i]=e[t]}}return n},handleCreatableNavigationProperty:function(e,t){var i=t["sap:creatable"],n=t["sap:creatable-path"],r,o={NavigationPropertyPath:t.name},s;if(i&&n){a.warning("Inconsistent service","Use either 'sap:creatable' or 'sap:creatable-path' at navigation property "+"'"+e.entityType+"/"+t.name+"'",l);i="false";n=undefined}if(i==="false"||n){r=e["Org.OData.Capabilities.V1.InsertRestrictions"]=e["Org.OData.Capabilities.V1.InsertRestrictions"]||{};s=r["NonInsertableNavigationProperties"]=r["NonInsertableNavigationProperties"]||[];if(n){o={If:[{Not:{Path:n}},o]}}s.push(o)}},handleXableAndXablePath:function(e,t,i,r,o){var s=o.toLowerCase(),c;if(i!=="EntitySet"){return}if(e["sap:"+s]&&e["sap:"+s+"-path"]){a.warning("Inconsistent service","Use either 'sap:"+s+"' or 'sap:"+s+"-path'"+" at entity set '"+e.name+"'",l);c=n}else if(s!==t.name){c={Path:t.value}}else if(t.value==="false"){c=n}if(c){e[r]=e[r]||{};e[r][o]=c}},liftSAPData:function(e,a,t){if(!e.extensions){return}e.extensions.forEach(function(i){if(i.namespace==="http://www.sap.com/Protocols/SAPData"){e["sap:"+i.name]=i.value;if(!t){y.addV4Annotation(e,i,a)}}});if(t){return}switch(a){case"Property":if(e["sap:updatable"]==="false"){if(e["sap:creatable"]==="false"){e["Org.OData.Core.V1.Computed"]=r}else{e["Org.OData.Core.V1.Immutable"]=r}}break;case"EntitySet":if(e["sap:searchable"]!=="true"){e["Org.OData.Capabilities.V1.SearchRestrictions"]={Searchable:n}}break;default:}},merge:function(e,a,t,n){var r=a.dataServices.schema;if(!r){return}r.forEach(function(a,t){var r;delete a.annotations;y.liftSAPData(a,undefined,n);a.$path="/dataServices/schema/"+t;r=a["sap:schema-version"];if(r&&!n){a["Org.Odata.Core.V1.SchemaVersion"]={String:r}}i(a,e[a.namespace]);y.visitParents(a,e,"association",function(e,a){y.visitChildren(e.end,a)});y.visitParents(a,e,"complexType",function(e,a){y.visitChildren(e.property,a,"Property",undefined,undefined,undefined,n);if(!n){y.addSapSemantics(e)}});y.visitParents(a,e,"entityType",y.visitEntityType,undefined,n)});r.forEach(function(a){y.visitParents(a,e,"entityContainer",function(t,i){y.visitChildren(t.associationSet,i);y.visitChildren(t.entitySet,i,"EntitySet",r,undefined,undefined,n);y.visitChildren(t.functionImport,i,"",null,y.visitParameters.bind(this,e,a,t),undefined,n)})});if(!n){y.addUnitAnnotations(r,t)}},visitChildren:function(e,a,t,n,r,o,s){if(!e){return}if(o){e=e.slice(o)}e.forEach(function(e){y.liftSAPData(e,t,s)});e.forEach(function(e){var o;if(t==="EntitySet"&&!s){o=y.getObject(n,"entityType",e.entityType);y.calculateEntitySetAnnotations(e,o)}if(r){r(e,s)}i(e,a[e.name||e.role])})},visitEntityType:function(e,a,t){y.visitChildren(e.property,a,"Property",undefined,undefined,undefined,t);y.visitChildren(e.navigationProperty,a);if(!t){y.addSapSemantics(e)}},visitParameters:function(e,a,t,n,r){var o;if(!n.parameter){return}o=y.getChildAnnotations(e,a.namespace+"."+t.name,true);n.parameter.forEach(function(e){y.liftSAPData(e,undefined,r);i(e,o[n.name+"/"+e.name])})},visitParents:function(e,a,t,n,r,o){var s=e[t];function l(r,s){var l=e.namespace+"."+r.name,c=y.getChildAnnotations(a,l,t==="entityContainer");y.liftSAPData(r,undefined,o);r.namespace=e.namespace;r.$path=e.$path+"/"+t+"/"+s;n(r,c,o);i(r,a[l])}if(!s){return}if(r!==undefined){l(s[r],r)}else{s.forEach(l)}}};return y});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/Boolean", ["sap/base/Log","sap/ui/core/Lib","sap/ui/model/FormatException","sap/ui/model/ParseException","sap/ui/model/ValidateException","sap/ui/model/odata/type/ODataType"],function(e,t,n,o,a,r){"use strict";function i(){return u("EnterYesOrNo",[l(true),l(false)])}function u(e,n){return t.getResourceBundleFor("sap.ui.core").getText(e,n)}function l(e){return u(e?"YES":"NO")}function s(t,n){var o;t.oConstraints=undefined;if(n){o=n.nullable;if(o===false||o==="false"){t.oConstraints={nullable:false}}else if(o!==undefined&&o!==true&&o!=="true"){e.warning("Illegal nullable: "+o,null,t.getName())}}}var f=r.extend("sap.ui.model.odata.type.Boolean",{constructor:function(e,t){r.apply(this,arguments);s(this,t)}});f.prototype.formatValue=function(e,t){if(e===null||e===undefined){return null}switch(this.getPrimitiveType(t)){case"any":case"boolean":return e;case"string":return l(e);default:throw new n("Don't know how to format "+this.getName()+" to "+t)}};f.prototype.parseValue=function(e,t){var n;if(e===null||e===""){return null}switch(this.getPrimitiveType(t)){case"boolean":return e;case"string":n=e.trim().toLowerCase();if(n===l(true).toLowerCase()){return true}if(n===l(false).toLowerCase()){return false}throw new o(i());default:throw new o("Don't know how to parse "+this.getName()+" from "+t)}};f.prototype.validateValue=function(e){if(e===null){if(this.oConstraints&&this.oConstraints.nullable===false){throw new a(i())}return}if(typeof e!=="boolean"){throw new a("Illegal "+this.getName()+" value: "+e)}};f.prototype.getName=function(){return"sap.ui.model.odata.type.Boolean"};return f});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/Byte", ["sap/ui/model/odata/type/Int"],function(t){"use strict";var e={minimum:0,maximum:255};var n=t.extend("sap.ui.model.odata.type.Byte",{constructor:function(){t.apply(this,arguments)}});n.prototype.getName=function(){return"sap.ui.model.odata.type.Byte"};n.prototype.getRange=function(){return e};return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/Currency", ["./UnitMixin","sap/ui/model/type/Currency"],function(t,e){"use strict";var n=e.extend("sap.ui.model.odata.type.Currency",{constructor:function(t,e){this._applyUnitMixin.apply(this,arguments)}});t(n.prototype,e,"customCurrencies","Currency");n.prototype.getCustomUnitForKey=function(t,e){return{decimals:t[e].UnitSpecificScale,isoCode:t[e].StandardCode}};n.prototype.getName=function(){return"sap.ui.model.odata.type.Currency"};return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/Date", ["sap/base/Log","sap/base/i18n/date/CalendarType","sap/base/util/extend","sap/ui/core/Lib","sap/ui/core/date/UI5Date","sap/ui/core/format/DateFormat","sap/ui/model/FormatException","sap/ui/model/ParseException","sap/ui/model/ValidateException","sap/ui/model/odata/type/ODataType"],function(t,e,a,r,n,o,i,s,l,u){"use strict";var p=/\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12]\d|3[01])/,f;function c(){if(!f){f=o.getDateInstance({calendarType:e.Gregorian,pattern:"yyyy-MM-dd",strictParsing:true,UTC:true})}return f}function g(e,a){var r;e.oConstraints=undefined;if(a){r=a.nullable;if(r===false||r==="false"){e.oConstraints={nullable:false}}else if(r!==undefined&&r!==true&&r!=="true"){t.warning("Illegal nullable: "+r,null,e.getName())}}}var d=u.extend("sap.ui.model.odata.type.Date",{constructor:function(t,e){u.apply(this,arguments);this.oFormatOptions=t;g(this,e)}});d.prototype._handleLocalizationChange=function(){this.oFormat=null};d.prototype.formatValue=function(t,e){var a;if(t===undefined||t===null){return null}switch(this.getPrimitiveType(e)){case"any":return t;case"object":return t instanceof Date?n.getInstance(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate()):c().parse(t,false);case"string":a=t instanceof Date?t:c().parse(t);return a?this.getFormat().format(a):t;default:throw new i("Don't know how to format "+this.getName()+" to "+e)}};d.prototype._getErrorMessage=function(){var t=n.getInstance().getFullYear()+"-12-31";return r.getResourceBundleFor("sap.ui.core").getText("EnterDate",[this.formatValue(t,"string")])};d.prototype.getDateValue=function(t){return t?n.getInstance(t+"T00:00"):null};d.prototype.getFormat=function(){if(!this.oFormat){var t=a({strictParsing:true},this.oFormatOptions);t.UTC=true;this.oFormat=o.getDateInstance(t)}return this.oFormat};d.prototype.getISOStringFromModelValue=function(t){return t?t:null};d.prototype.getModelFormat=function(){return c()};d.prototype.getModelValue=function(t){var e;if(t===null){e=null}else{n.checkDate(t);e=n.getInstance(0);e.setUTCFullYear(t.getFullYear(),t.getMonth(),t.getDate());e=this.getModelFormat().format(e)}this.validateValue(e);return e};d.prototype.getModelValueFromISOString=function(t){return t?t:null};d.prototype.getName=function(){return"sap.ui.model.odata.type.Date"};d.prototype.parseValue=function(t,e){var a;if(t===""||t===null){return null}switch(this.getPrimitiveType(e)){case"object":return c().format(t,false);case"string":a=this.getFormat().parse(t);if(!a){throw new s(this._getErrorMessage())}return c().format(a);default:throw new s("Don't know how to parse "+this.getName()+" from "+e)}};d.prototype.validateValue=function(t){if(t===null){if(this.oConstraints&&this.oConstraints.nullable===false){throw new l(this._getErrorMessage())}}else if(typeof t!=="string"||!p.test(t)){throw new l("Illegal "+this.getName()+" value: "+t)}};d._resetModelFormatter=function(){f=undefined};return d});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/DateTime", ["sap/base/Log","sap/ui/core/date/UI5Date","sap/ui/model/odata/type/DateTimeBase"],function(t,e,a){"use strict";function n(e,a){var n={};if(a){switch(a.displayFormat){case"Date":n.isDateOnly=true;break;case undefined:break;default:t.warning("Illegal displayFormat: "+a.displayFormat,null,e.getName())}n.nullable=a.nullable}return n}var r=a.extend("sap.ui.model.odata.type.DateTime",{constructor:function(t,e){a.call(this,t,n(this,e))}});r.prototype.getConstraints=function(){var t=a.prototype.getConstraints.call(this);if(t.isDateOnly){t.displayFormat="Date";delete t.isDateOnly}return t};r.prototype.getISOStringFromModelValue=function(t){if(!t){return null}var e=t.toISOString();return this.oConstraints&&this.oConstraints.isDateOnly?e.split("T")[0]:e};r.prototype.getModelValue=function(t){var e=this._getModelValue(t);this.validateValue(e);return e};r.prototype.getModelValueFromISOString=function(t){if(!t){return null}return e.getInstance(t)};r.prototype.getName=function(){return"sap.ui.model.odata.type.DateTime"};return r});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/DateTimeBase", ["sap/base/Log","sap/base/util/extend","sap/ui/core/Lib","sap/ui/core/date/UI5Date","sap/ui/core/format/DateFormat","sap/ui/model/FormatException","sap/ui/model/ParseException","sap/ui/model/ValidateException","sap/ui/model/odata/type/ODataType"],function(t,e,a,n,o,r,s,i,l){"use strict";function u(t){return t.oConstraints&&t.oConstraints.isDateOnly}function g(e,a){var n,o;e.oConstraints=undefined;if(a){n=a.nullable;if(n===false||n==="false"){e.oConstraints={nullable:false}}else if(n!==undefined&&n!==true&&n!=="true"){t.warning("Illegal nullable: "+n,null,e.getName())}if(a.isDateOnly===true){e.oConstraints=e.oConstraints||{};e.oConstraints.isDateOnly=true}o=a.precision;if(o!==undefined){if(o===Math.floor(o)&&o>=1&&o<=12){e.oConstraints=e.oConstraints||{};e.oConstraints.precision=o}else if(o!==0){t.warning("Illegal precision: "+o,null,e.getName())}}}e._handleLocalizationChange()}var h=l.extend("sap.ui.model.odata.type.DateTimeBase",{constructor:function(t,e){l.apply(this,arguments);g(this,e);this.oFormat=null;this.oFormatOptions=t},metadata:{abstract:true}});h.prototype.getDateValue=function(t){var e;if(!t){return null}e=n.getInstance(t);if(u(this)){e.setFullYear(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate());e.setHours(0,0,0,0)}else if(this.oFormatOptions&&this.oFormatOptions.UTC){e.setFullYear(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate());e.setHours(e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds(),e.getUTCMilliseconds())}return e};h.prototype.formatValue=function(t,e){if(t===null||t===undefined){return null}switch(this.getPrimitiveType(e)){case"any":return t;case"object":if(u(this)){return this.getDateValue(t)}return t;case"string":if(!(t instanceof Date)){throw new r("Illegal "+this.getName()+" value: "+t)}return this.getFormat().format(t);default:throw new r("Don't know how to format "+this.getName()+" to "+e)}};h.prototype.getFormat=function(){if(!this.oFormat){var t=e({strictParsing:true},this.oFormatOptions);if(u(this)){t.UTC=true;this.oFormat=o.getDateInstance(t)}else{this.oFormat=o.getDateTimeInstance(t)}}return this.oFormat};h.prototype._getErrorMessage=function(){var t=n.getInstance().getFullYear(),e=u(this)?new Date(Date.UTC(t,11,31)):n.getInstance(t,11,31,23,59,58),o=u(this)?"EnterDate":"EnterDateTime",r=a.getResourceBundleFor("sap.ui.core");return r.getText(o,[this.formatValue(e,"string")])};h.prototype.parseValue=function(t,e){var a;if(t===null||t===""){return null}switch(this.getPrimitiveType(e)){case"object":if(u(this)){return this._getModelValue(t)}return t;case"string":a=this.getFormat().parse(t);if(!a){throw new s(this._getErrorMessage())}return a;default:throw new s("Don't know how to parse "+this.getName()+" from "+e)}};h.prototype._handleLocalizationChange=function(){this.oFormat=null};h.prototype.validateValue=function(t){if(t===null){if(this.oConstraints&&this.oConstraints.nullable===false){throw new i(this._getErrorMessage())}return}else if(t instanceof Date){if(t.getFullYear()===0){throw new i(this._getErrorMessage())}return}throw new i("Illegal "+this.getName()+" value: "+t)};h.prototype._getModelValue=function(t){var e;if(t===null){return null}n.checkDate(t);e=n.getInstance(t);if(u(this)){e.setUTCFullYear(t.getFullYear(),t.getMonth(),t.getDate());e.setUTCHours(0,0,0,0)}else if(this.oFormatOptions&&this.oFormatOptions.UTC){e.setUTCFullYear(t.getFullYear(),t.getMonth(),t.getDate());e.setUTCHours(t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds())}return e};return h});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/DateTimeOffset", ["sap/base/Log","sap/base/i18n/date/CalendarType","sap/ui/core/date/UI5Date","sap/ui/core/format/DateFormat","sap/ui/model/FormatException","sap/ui/model/odata/type/DateTimeBase"],function(t,e,i,r,o,n){"use strict";var a=n.extend("sap.ui.model.odata.type.DateTimeOffset",{constructor:function(e,i){var r;n.call(this,e,{nullable:i?i.nullable:undefined,precision:i?i.precision:undefined});this.rDateTimeOffset=undefined;this.oModelFormat=undefined;this.bV4=false;if(i){r=i.V4;if(r===true){this.bV4=true}else if(r!==undefined&&r!==false){t.warning("Illegal V4: "+r,null,this.getName())}}}});function s(t){var i="yyyy-MM-dd'T'HH:mm:ss",o;if(!t.oModelFormat){o=t.oConstraints&&t.oConstraints.precision;if(o){i+="."+"".padEnd(o,"S")}t.oModelFormat=r.getDateInstance({calendarType:e.Gregorian,pattern:i+"XXX",strictParsing:true,UTC:t.oFormatOptions&&t.oFormatOptions.UTC})}return t.oModelFormat}a.prototype._resetModelFormatter=function(){this.oModelFormat=undefined};a.prototype.formatValue=function(t,e){var r;if(t===undefined||t===null){return null}if(this.getPrimitiveType(e)==="object"){if(t instanceof Date){return i.getInstance(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate(),t.getUTCHours(),t.getUTCMinutes(),t.getUTCSeconds())}return s(this).parse(t)}if(typeof t==="string"&&this.getPrimitiveType(e)==="string"){r=s(this).parse(t);if(!r){throw new o("Illegal "+this.getName()+" value: "+t)}t=r}return n.prototype.formatValue.call(this,t,e)};a.prototype.getConstraints=function(){var t=n.prototype.getConstraints.call(this);if(this.bV4){t.V4=true}return t};a.prototype.getISOStringFromModelValue=function(t){if(!t){return null}return this.bV4?t:t.toISOString()};a.prototype.getModelFormat=function(){if(this.bV4){return s(this)}return n.prototype.getModelFormat.call(this)};a.prototype.getModelValue=function(t){var e=this._getModelValue(t);if(this.bV4&&e!==null){e=this.getModelFormat().format(e)}this.validateValue(e);return e};a.prototype.getModelValueFromISOString=function(t){if(!t){return null}return this.bV4?this.getModelFormat().format(i.getInstance(t),true):i.getInstance(t)};a.prototype.getName=function(){return"sap.ui.model.odata.type.DateTimeOffset"};a.prototype.parseValue=function(t,e){var i=n.prototype.parseValue.call(this,t,e);return this.bV4&&i!==null?s(this).format(i):i};a.prototype.setV4=function(){this.bV4=true;return this};a.prototype.validateValue=function(t){var e;if(this.bV4){if(typeof t==="string"){if(!this.rDateTimeOffset){e=this.oConstraints&&this.oConstraints.precision;this.rDateTimeOffset=new RegExp("^"+"\\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12]\\d|3[01])"+"T"+"(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d"+(e?"(\\.\\d{1,"+e+"})?":"")+")?"+"(?:Z|[-+](?:0\\d|1[0-3]):[0-5]\\d|[-+]14:00)$","i")}if(this.rDateTimeOffset.test(t)){return}}else if(t){t=t.toString()}}n.prototype.validateValue.call(this,t)};return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/DateTimeWithTimezone", ["sap/ui/core/Lib","sap/ui/core/date/UI5Date","sap/ui/core/format/DateFormat","sap/ui/model/_Helper","sap/ui/model/CompositeType","sap/ui/model/FormatException","sap/ui/model/ParseException"],function(e,t,o,i,n,r,a){"use strict";var s="For type 'object', at least one of the format options 'showDate' or"+" 'showTime' must be enabled";var h=n.extend("sap.ui.model.odata.type.DateTimeWithTimezone",{constructor:function(e,t){if(t&&Object.keys(t).length){throw new Error("Type "+this.getName()+" does not support constraints")}e=Object.assign({},e);n.call(this,e);this.oFormat=null;this.bParseWithValues=true;this.bUseInternalValues=true;this.vEmptyTimezoneValue=null;this.bShowDate=e.showDate===undefined||e.showDate;this.bShowTime=e.showTime===undefined||e.showTime;this.bShowTimezone=e.showTimezone===undefined||e.showTimezone;this.setConstraints=function(){throw new Error("Constraints are immutable")};this.setFormatOptions=function(){throw new Error("Format options are immutable")}}});h.prototype._getErrorMessage=function(){var o=new Date(Date.UTC(t.getInstance().getFullYear(),11,31,23,59,58)),i=!this.bShowDate&&!this.bShowTime?"EnterDateTimeTimezone":"EnterDateTime";return e.getResourceBundleFor("sap.ui.core").getText(i,[this.formatValue([o,"America/New_York"],"string")])};h.prototype.formatValue=function(e,t){var o=e&&e[0],i=e&&e[1];if(!e||i===undefined||o===undefined||!o&&!this.bShowTimezone){return null}if(o&&!(o instanceof Date)){throw new r("Timestamp value for "+this.getName()+" is not an instance of Date: "+o)}switch(this.getPrimitiveType(t)){case"object":if(!this.bShowDate&&!this.bShowTime){throw new r(s)}return o;case"string":return this.getFormat().format(o,i);default:throw new r("Don't know how to format "+this.getName()+" to "+t)}};h.prototype.getFormat=function(){if(!this.oFormat){var e=i.extend({strictParsing:true},this.oFormatOptions);this.oFormat=o.getDateTimeWithTimezoneInstance(e)}return this.oFormat};h.prototype.getName=function(){return"sap.ui.model.odata.type.DateTimeWithTimezone"};h.prototype.getPartsIgnoringMessages=function(){if(!this.bShowDate&&!this.bShowTime){return[0]}else if(!this.bShowTimezone){return[1]}return[]};h.prototype.getPlaceholderText=function(){return this.getFormat().getPlaceholderText()};h.prototype.parseValue=function(e,t,o){var i;if(!o){throw new a("'aCurrentValues' is mandatory")}switch(this.getPrimitiveType(t)){case"object":if(!this.bShowDate&&!this.bShowTime){throw new a(s)}if(!e){return[null,undefined]}if(!(e instanceof Date)){throw new a("Given value must be an instance of Date")}return[e,undefined];case"string":if(!e){if(!this.bShowDate&&!this.bShowTime){return[undefined,this.vEmptyTimezoneValue]}return[null,undefined]}try{i=this.getFormat().parse(e,o[1])}catch(e){throw new a(e.message)}if(!i){throw new a(this._getErrorMessage())}return i;default:throw new a("Don't know how to parse "+this.getName()+" from "+t)}};h.prototype.processPartTypes=function(e){var t=e[1];if(t&&t.isA("sap.ui.model.odata.type.String")&&t.getFormatOptions().parseKeepsEmptyString===true){this.vEmptyTimezoneValue=""}};h.prototype.validateValue=function(e){};h.prototype._handleLocalizationChange=function(){this.oFormat=null};return h});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/Decimal", ["sap/base/Log","sap/ui/core/Lib","sap/ui/core/format/NumberFormat","sap/ui/model/FormatException","sap/ui/model/ParseException","sap/ui/model/ValidateException","sap/ui/model/odata/ODataUtils","sap/ui/model/odata/type/ODataType"],function(t,e,i,n,r,a,o,s){"use strict";var u=/^[-+]?(\d+)(?:\.(\d+))?$/,m=/(?:(\.[0-9]*[1-9]+)0+|\.0*)$/;function l(t){return t.oConstraints&&t.oConstraints.scale||0}function f(t,i){return e.getResourceBundleFor("sap.ui.core").getText(t,i)}function c(t){if(t.indexOf(".")>=0){t=t.replace(m,"$1")}return t}function p(e,i){var n,r,a,o,s;function m(i,n){t.warning("Illegal "+n+": "+i,null,e.getName())}function l(t,e,i,n){var r=typeof t==="string"?parseInt(t):t;if(r===undefined){return e}if(typeof r!=="number"||isNaN(r)||r<i){m(t,n);return e}return r}function f(t,e){if(t){if(t.match(u)){return t}m(t,e)}return undefined}function c(t,e){if(t===true||t==="true"){return true}if(t!==undefined&&t!==false&&t!=="false"){m(t,e)}return undefined}function p(t,i,n){if(i!==n){e.oConstraints=e.oConstraints||{};e.oConstraints[t]=i}}e.oConstraints=undefined;if(i){n=i.nullable;a=i.precision;s=i.scale;o=s==="variable"?Infinity:l(s,0,0,"scale");r=l(a,Infinity,1,"precision");if(o!==Infinity&&r<o){t.warning("Illegal scale: must be less than or equal to precision (precision="+a+", scale="+s+")",null,e.getName());o=Infinity}p("precision",r,Infinity);p("scale",o,0);if(n===false||n==="false"){p("nullable",false,true)}else if(n!==undefined&&n!==true&&n!=="true"){m(n,"nullable")}p("minimum",f(i.minimum,"minimum"));p("minimumExclusive",c(i.minimumExclusive,"minimumExclusive"));p("maximum",f(i.maximum,"maximum"));p("maximumExclusive",c(i.maximumExclusive,"maximumExclusive"))}e._handleLocalizationChange()}var h=s.extend("sap.ui.model.odata.type.Decimal",{constructor:function(t,e){s.apply(this,arguments);this.oFormatOptions=t;p(this,e);this.checkParseEmptyValueToZero()}});h.prototype.formatValue=function(t,e){if(t===null||t===undefined){return null}switch(this.getPrimitiveType(e)){case"any":return t;case"float":return parseFloat(t);case"int":return Math.floor(parseFloat(t));case"string":return this.getFormat().format(c(String(t)));default:throw new n("Don't know how to format "+this.getName()+" to "+e)}};h.prototype.getFormat=function(){if(!this.oFormat){var t={groupingEnabled:true,maxIntegerDigits:Infinity},e=l(this);if(e!==Infinity){t.minFractionDigits=t.maxFractionDigits=e}var n=this.oFormatOptions||{};if(n.style!=="short"&&n.style!=="long"){t.preserveDecimals=true}Object.assign(t,this.oFormatOptions);t.parseAsString=true;delete t.parseEmptyValueToZero;this.oFormat=i.getFloatInstance(t)}return this.oFormat};h.prototype.parseValue=function(t,n){var a=this.getEmptyValue(t);if(a!==undefined){return a}var o;switch(this.getPrimitiveType(n)){case"string":o=this.getFormat().parse(t);if(!o){throw new r(e.getResourceBundleFor("sap.ui.core").getText("EnterNumber"))}o=c(o);break;case"int":case"float":o=i.getFloatInstance({maxIntegerDigits:Infinity,decimalSeparator:".",groupingEnabled:false}).format(t);break;default:throw new r("Don't know how to parse "+this.getName()+" from "+n)}return o};h.prototype._handleLocalizationChange=function(){this.oFormat=null};h.prototype.validateValue=function(t){var e,i,n,r,s,m,c,p,h;if(t===null&&(!this.oConstraints||this.oConstraints.nullable!==false)){return}if(typeof t!=="string"){throw new a(f("EnterNumber"))}n=u.exec(t);if(!n){throw new a(f("EnterNumber"))}i=n[1].length;e=(n[2]||"").length;h=l(this);p=this.oConstraints&&this.oConstraints.precision||Infinity;m=this.oConstraints&&this.oConstraints.minimum;r=this.oConstraints&&this.oConstraints.maximum;if(e>h){if(h===0){throw new a(f("EnterInt"))}else if(i+h>p){if(h!==p){throw new a(f("EnterNumberIntegerFraction",[p-h,h]))}if(n[1]!=="0"){throw new a(f("EnterNumberFractionOnly",[h]))}}throw new a(f("EnterNumberFraction",[h]))}if(h===Infinity){if(i+e>p){throw new a(f("EnterNumberPrecision",[p]))}}else if(i>p-h){if(h!==p){if(h){throw new a(f("EnterNumberInteger",[p-h]))}throw new a(f("EnterMaximumOfDigits",[p]))}if(n[1]!=="0"){throw new a(f("EnterNumberFractionOnly",[h]))}}if(m){c=this.oConstraints.minimumExclusive;if(o.compare(m,t,true)>=(c?0:1)){throw new a(f(c?"EnterNumberMinExclusive":"EnterNumberMin",[this.formatValue(m,"string")]))}}if(r){s=this.oConstraints.maximumExclusive;if(o.compare(r,t,true)<=(s?0:-1)){throw new a(f(s?"EnterNumberMaxExclusive":"EnterNumberMax",[this.formatValue(r,"string")]))}}};h.prototype.getName=function(){return"sap.ui.model.odata.type.Decimal"};return h});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/Double", ["sap/base/Log","sap/ui/core/Lib","sap/ui/core/format/NumberFormat","sap/ui/model/FormatException","sap/ui/model/ParseException","sap/ui/model/ValidateException","sap/ui/model/odata/type/ODataType"],function(e,t,a,o,r,n,i){"use strict";function s(){return t.getResourceBundleFor("sap.ui.core").getText("EnterNumber")}function l(e){return!e.oConstraints||e.oConstraints.nullable!==false}function u(t,a){var o;t.oConstraints=undefined;if(a){o=a.nullable;if(o===false||o==="false"){t.oConstraints={nullable:false}}else if(o!==undefined&&o!==true&&o!=="true"){e.warning("Illegal nullable: "+o,null,t.getName())}}t._handleLocalizationChange()}var p=i.extend("sap.ui.model.odata.type.Double",{constructor:function(e,t){i.apply(this,arguments);this.oFormatOptions=e;u(this,t);this.checkParseEmptyValueToZero()}});p.prototype.formatValue=function(e,t){var a,r;if(e===null||e===undefined){return null}if(typeof e==="number"){r=e}else if(typeof e==="string"){r=parseFloat(e)}else if(t!=="any"){throw new o("Illegal "+this.getName()+" value: "+e)}switch(this.getPrimitiveType(t)){case"any":return e;case"float":return r;case"int":return Math.floor(r);case"string":if(r&&(Math.abs(r)>=1e15||Math.abs(r)<1e-4)){a=this.getFormat().oFormatOptions;return r.toExponential().replace("e"," E").replace(".",a.decimalSeparator).replace("+",a.plusSign).replace("-",a.minusSign)}return this.getFormat().format(r);default:throw new o("Don't know how to format "+this.getName()+" to "+t)}};p.prototype.getFormat=function(){if(!this.oFormat){var e={groupingEnabled:true},t=this.oFormatOptions||{};if(t.style!=="short"&&t.style!=="long"){e.preserveDecimals=true}Object.assign(e,this.oFormatOptions);delete e.parseEmptyValueToZero;this.oFormat=a.getFloatInstance(e)}return this.oFormat};p.prototype.parseValue=function(e,t){var a=this.getEmptyValue(e,true);if(a!==undefined){return a}var o;switch(this.getPrimitiveType(t)){case"string":o=this.getFormat().parse(e);if(isNaN(o)){throw new r(s())}break;case"int":case"float":o=e;break;default:throw new r("Don't know how to parse "+this.getName()+" from "+t)}return o};p.prototype._handleLocalizationChange=function(){this.oFormat=null};p.prototype.validateValue=function(e){if(e===null&&l(this)){return}if(typeof e==="number"){return}throw new n(s())};p.prototype.getName=function(){return"sap.ui.model.odata.type.Double"};return p});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/Guid", ["sap/base/Log","sap/ui/core/Lib","sap/ui/model/FormatException","sap/ui/model/ParseException","sap/ui/model/ValidateException","sap/ui/model/odata/type/ODataType"],function(e,t,n,i,a,o){"use strict";var r=/[-\s]/g,l=/^[A-F0-9]{8}-([A-F0-9]{4}-){3}[A-F0-9]{12}$/i;function s(){return t.getResourceBundleFor("sap.ui.core").getText("EnterGuid")}function u(t,n){var i;t.oConstraints=undefined;if(n){i=n.nullable;if(i===false||i==="false"){t.oConstraints={nullable:false}}else if(i!==undefined&&i!==true&&i!=="true"){e.warning("Illegal nullable: "+i,null,t.getName())}}}var p=o.extend("sap.ui.model.odata.type.Guid",{constructor:function(e,t){o.apply(this,arguments);u(this,t)}});p.prototype.formatValue=function(e,t){if(e===undefined||e===null){return null}switch(this.getPrimitiveType(t)){case"any":case"string":return e;default:throw new n("Don't know how to format "+this.getName()+" to "+t)}};p.prototype.getName=function(){return"sap.ui.model.odata.type.Guid"};p.prototype.parseValue=function(e,t){var n;if(e===""||e===null){return null}if(this.getPrimitiveType(t)!=="string"){throw new i("Don't know how to parse "+this.getName()+" from "+t)}n=e.replace(r,"");if(n.length!==32){return e}return n.slice(0,8)+"-"+n.slice(8,12)+"-"+n.slice(12,16)+"-"+n.slice(16,20)+"-"+n.slice(20)};p.prototype.validateValue=function(e){if(e===null){if(this.oConstraints&&this.oConstraints.nullable===false){throw new a(s())}return}if(typeof e!=="string"){throw new a("Illegal "+this.getName()+" value: "+e)}if(!l.test(e)){throw new a(s())}};return p});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/Int", ["sap/base/Log","sap/base/util/extend","sap/ui/core/Lib","sap/ui/core/format/NumberFormat","sap/ui/model/FormatException","sap/ui/model/ParseException","sap/ui/model/ValidateException","sap/ui/model/odata/type/ODataType"],function(t,e,a,n,o,r,i,s){"use strict";function u(t,e){return a.getResourceBundleFor("sap.ui.core").getText(t,e)}function l(e,a){var n;e.oConstraints=undefined;if(a){n=a.nullable;if(n===false||n==="false"){e.oConstraints={nullable:false}}else if(n!==undefined&&n!==true&&n!=="true"){t.warning("Illegal nullable: "+n,null,e.getName())}}e._handleLocalizationChange()}var m=s.extend("sap.ui.model.odata.type.Int",{constructor:function(t,e){s.apply(this,arguments);this.oFormatOptions=t;l(this,e);this.checkParseEmptyValueToZero()},metadata:{abstract:true}});m.prototype._handleLocalizationChange=function(){this.oFormat=null};m.prototype.formatValue=function(t,e){if(t===undefined||t===null){return null}if(typeof t!=="number"&&e!=="any"){throw new o("Illegal "+this.getName()+" value: "+t)}switch(this.getPrimitiveType(e)){case"string":return this.getFormat().format(t);case"int":return Math.floor(t);case"float":case"any":return t;default:throw new o("Don't know how to format "+this.getName()+" to "+e)}};m.prototype.getFormat=function(){if(!this.oFormat){var t=e({groupingEnabled:true},this.oFormatOptions);delete t.parseEmptyValueToZero;this.oFormat=n.getIntegerInstance(t)}return this.oFormat};m.prototype.parseValue=function(t,e){var a=this.getEmptyValue(t,true);if(a!==undefined){return a}switch(this.getPrimitiveType(e)){case"string":var n=this.getFormat().parse(t);if(isNaN(n)){throw new r(u("EnterInt"))}return n;case"float":return Math.floor(t);case"int":return t;default:throw new r("Don't know how to parse "+this.getName()+" from "+e)}};m.prototype.validateValue=function(t){var e=this.getRange();if(t===null){if(this.oConstraints&&this.oConstraints.nullable===false){throw new i(u("EnterInt"))}return}if(typeof t!=="number"){throw new i(t+" (of type "+typeof t+") is not a valid "+this.getName()+" value")}if(Math.floor(t)!==t){throw new i(u("EnterInt"))}if(t<e.minimum){throw new i(u("EnterNumberMin",[this.formatValue(e.minimum,"string")]))}if(t>e.maximum){throw new i(u("EnterNumberMax",[this.formatValue(e.maximum,"string")]))}};return m});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/Int16", ["sap/ui/model/odata/type/Int"],function(t){"use strict";var e={minimum:-32768,maximum:32767};var n=t.extend("sap.ui.model.odata.type.Int16",{constructor:function(){t.apply(this,arguments)}});n.prototype.getName=function(){return"sap.ui.model.odata.type.Int16"};n.prototype.getRange=function(){return e};return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/Int32", ["sap/ui/model/odata/type/Int"],function(t){"use strict";var e={minimum:-2147483648,maximum:2147483647};var n=t.extend("sap.ui.model.odata.type.Int32",{constructor:function(){t.apply(this,arguments)}});n.prototype.getName=function(){return"sap.ui.model.odata.type.Int32"};n.prototype.getRange=function(){return e};return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/Int64", ["sap/base/Log","sap/base/util/extend","sap/ui/core/Lib","sap/ui/core/format/NumberFormat","sap/ui/model/FormatException","sap/ui/model/ParseException","sap/ui/model/ValidateException","sap/ui/model/odata/type/ODataType"],function(t,e,n,r,a,i,o,u){"use strict";var s=/^[-+]?(\d+)$/,l={minimum:"-9223372036854775808",maximum:"9223372036854775807"},m={minimum:"-9007199254740991",maximum:"9007199254740991"};function f(t,e,n){var r,a,i;a=s.exec(e);if(a){i=e.charAt(0)==="-";r=i?n.minimum.slice(1):n.maximum;if(a[1].length<r.length){return undefined}if(a[1].length>r.length||a[1]>r){if(i){return p("EnterNumberMin",[t.formatValue(n.minimum,"string")])}else{return p("EnterNumberMax",[t.formatValue(n.maximum,"string")])}}return undefined}return p("EnterInt")}function p(t,e){return n.getResourceBundleFor("sap.ui.core").getText(t,e)}function c(t){return!t.oConstraints||t.oConstraints.nullable!==false}function h(e,n){var r;e.oConstraints=undefined;if(n){r=n.nullable;if(r===false||r==="false"){e.oConstraints={nullable:false}}else if(r!==undefined&&r!==true&&r!=="true"){t.warning("Illegal nullable: "+r,null,e.getName())}}e._handleLocalizationChange()}var g=u.extend("sap.ui.model.odata.type.Int64",{constructor:function(t,e){u.apply(this,arguments);this.oFormatOptions=t;h(this,e);this.checkParseEmptyValueToZero()}});g.prototype.formatValue=function(t,e){var n;if(t===null||t===undefined){return null}switch(this.getPrimitiveType(e)){case"any":return t;case"float":case"int":n=f(this,t,m);if(n){throw new a(n)}return parseInt(t);case"string":return this.getFormat().format(t);default:throw new a("Don't know how to format "+this.getName()+" to "+e)}};g.prototype.getFormat=function(){if(!this.oFormat){var t=e({groupingEnabled:true},this.oFormatOptions);t.parseAsString=true;delete t.parseEmptyValueToZero;this.oFormat=r.getIntegerInstance(t)}return this.oFormat};g.prototype.getName=function(){return"sap.ui.model.odata.type.Int64"};g.prototype._handleLocalizationChange=function(){this.oFormat=null};g.prototype.parseValue=function(t,e){var n=this.getEmptyValue(t);if(n!==undefined){return n}var a;switch(this.getPrimitiveType(e)){case"string":a=this.getFormat().parse(t);if(!a){throw new i(p("EnterInt"))}break;case"int":case"float":a=r.getIntegerInstance({maxIntegerDigits:Infinity,groupingEnabled:false}).format(t);break;default:throw new i("Don't know how to parse "+this.getName()+" from "+e)}return a};g.prototype.validateValue=function(t){var e;if(t===null&&c(this)){return}if(typeof t==="string"){e=f(this,t,l);if(e){throw new o(e)}return}throw new o(p("EnterInt"))};return g});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/ODataType", ["sap/base/Log","sap/ui/model/SimpleType"],function(t,e){"use strict";var o=e.extend("sap.ui.model.odata.type.ODataType",{constructor:function(t,e){},metadata:{abstract:true}});o.prototype.checkParseEmptyValueToZero=function(){if(this.oFormatOptions&&this.oFormatOptions.parseEmptyValueToZero&&(!this.oConstraints||this.oConstraints.nullable!==false)){t.warning("The parseEmptyValueToZero format option is ignored as the nullable constraint"+" is not false.",null,this.getName())}};o.prototype.getEmptyValue=function(t,e){if(t!==null&&t!==""){return undefined}if(this.oFormatOptions&&this.oFormatOptions.parseEmptyValueToZero&&this.oConstraints&&this.oConstraints.nullable===false){return e?0:"0"}return null};o.prototype.getPlaceholderText=function(){return this.getFormat&&this.getFormat().getPlaceholderText&&this.getFormat().getPlaceholderText()};o.prototype.setConstraints=function(t){};o.prototype.setFormatOptions=function(t){};return o});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/Raw", ["sap/ui/model/FormatException","sap/ui/model/ParseException","sap/ui/model/ValidateException","sap/ui/model/odata/type/ODataType"],function(t,e,o,a){"use strict";var p=a.extend("sap.ui.model.odata.type.Raw",{constructor:function(t,e){a.apply(this,arguments);if(t!==undefined||e!==undefined||arguments.length>2){throw new Error("Unsupported arguments")}}});p.prototype.formatValue=function(e,o){if(o==="any"){return e}throw new t("Type 'sap.ui.model.odata.type.Raw' does not support formatting")};p.prototype.getName=function(){return"sap.ui.model.odata.type.Raw"};p.prototype.parseValue=function(){throw new e("Type 'sap.ui.model.odata.type.Raw' does not support parsing")};p.prototype.validateValue=function(){throw new o("Type 'sap.ui.model.odata.type.Raw' does not support validating")};return p});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/SByte", ["sap/ui/model/odata/type/Int"],function(t){"use strict";var e={minimum:-128,maximum:127};var n=t.extend("sap.ui.model.odata.type.SByte",{constructor:function(){t.apply(this,arguments)}});n.prototype.getName=function(){return"sap.ui.model.odata.type.SByte"};n.prototype.getRange=function(){return e};return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/Single", ["sap/base/Log","sap/ui/core/Lib","sap/ui/core/format/NumberFormat","sap/ui/model/FormatException","sap/ui/model/ParseException","sap/ui/model/ValidateException","sap/ui/model/odata/type/ODataType"],function(t,e,o,a,n,r,i){"use strict";function s(){return e.getResourceBundleFor("sap.ui.core").getText("EnterNumber")}function u(t){return!t.oConstraints||t.oConstraints.nullable!==false}function l(e,o){var a;e.oConstraints=undefined;if(o){a=o.nullable;if(a===false||a==="false"){e.oConstraints={nullable:false}}else if(a!==undefined&&a!==true&&a!=="true"){t.warning("Illegal nullable: "+a,null,e.getName())}}e._handleLocalizationChange()}var p=i.extend("sap.ui.model.odata.type.Single",{constructor:function(t,e){i.apply(this,arguments);this.oFormatOptions=t;l(this,e);this.checkParseEmptyValueToZero()}});p.prototype.formatValue=function(t,e){var o;if(t===null||t===undefined){return null}if(typeof t==="number"){o=t}else if(typeof t==="string"){o=parseFloat(t)}else if(e!=="any"){throw new a("Illegal "+this.getName()+" value: "+t)}switch(this.getPrimitiveType(e)){case"any":return t;case"float":return o;case"int":return Math.floor(o);case"string":return this.getFormat().format(parseFloat(o.toPrecision(7)));default:throw new a("Don't know how to format "+this.getName()+" to "+e)}};p.prototype.getFormat=function(){if(!this.oFormat){var t={groupingEnabled:true},e=this.oFormatOptions||{};if(e.style!=="short"&&e.style!=="long"){t.preserveDecimals=true}Object.assign(t,this.oFormatOptions);delete t.parseEmptyValueToZero;this.oFormat=o.getFloatInstance(t)}return this.oFormat};p.prototype.parseValue=function(t,e){var o=this.getEmptyValue(t,true);if(o!==undefined){return o}switch(this.getPrimitiveType(e)){case"string":var a=this.getFormat().parse(t);if(isNaN(a)){throw new n(s())}return Math.fround(a);case"int":case"float":return Math.fround(t);default:throw new n("Don't know how to parse "+this.getName()+" from "+e)}};p.prototype._handleLocalizationChange=function(){this.oFormat=null};p.prototype.validateValue=function(t){if(t===null&&u(this)){return}if(typeof t==="number"){return}throw new r(s())};p.prototype.getName=function(){return"sap.ui.model.odata.type.Single"};return p});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/Stream", ["sap/base/Log","sap/ui/model/FormatException","sap/ui/model/ParseException","sap/ui/model/ValidateException","sap/ui/model/odata/type/ODataType"],function(e,t,a,o,n){"use strict";function i(t,a){var o;t.oConstraints=undefined;if(a){o=a.nullable;if(o===false){t.oConstraints={nullable:false}}else if(o!==undefined&&o!==true){e.warning("Illegal nullable: "+o,null,t.getName())}}}var r=n.extend("sap.ui.model.odata.type.Stream",{constructor:function(e,t){n.apply(this,arguments);if(e!==undefined){throw new Error("Unsupported arguments")}i(this,t)}});r.prototype.formatValue=function(e,a){switch(this.getPrimitiveType(a)){case"any":case"string":return e;default:throw new t("Don't know how to format "+this.getName()+" to "+a)}};r.prototype.getName=function(){return"sap.ui.model.odata.type.Stream"};r.prototype.parseValue=function(){throw new a("Type 'sap.ui.model.odata.type.Stream' does not support parsing")};r.prototype.validateValue=function(){throw new o("Type 'sap.ui.model.odata.type.Stream' does not support validating")};return r});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/String", ["sap/base/Log","sap/ui/core/Lib","sap/ui/model/ValidateException","sap/ui/model/odata/type/ODataType","sap/ui/model/type/String"],function(e,t,i,n,s){"use strict";var r=/^\d+$/,a=/^0*(?=\d)/;function o(e,t){return t&&t.isDigitSequence&&e&&e.match(r)}function l(t,i){var n,s,r;t.oConstraints=undefined;if(i){s=i.maxLength;if(typeof s==="string"){s=parseInt(s)}if(typeof s==="number"&&!isNaN(s)&&s>0){t.oConstraints={maxLength:s}}else if(s!==undefined){e.warning("Illegal maxLength: "+i.maxLength,null,t.getName())}n=i.isDigitSequence;if(n===true||n==="true"){t.oConstraints=t.oConstraints||{};t.oConstraints.isDigitSequence=true}else if(n!==undefined&&n!==false&&n!=="false"){e.warning("Illegal isDigitSequence: "+n,null,t.getName())}r=i.nullable;if(r===false||r==="false"){t.oConstraints=t.oConstraints||{};t.oConstraints.nullable=false}else if(r!==undefined&&r!==true&&r!=="true"){e.warning("Illegal nullable: "+r,null,t.getName())}}}var u=n.extend("sap.ui.model.odata.type.String",{constructor:function(t,i){var s=t?t.parseKeepsEmptyString:undefined;n.apply(this,arguments);this.oFormatOptions=t;l(this,i);this._sParsedEmptyString=null;if(this.oConstraints&&this.oConstraints.nullable===false&&this.oConstraints.isDigitSequence){this._sParsedEmptyString="0"}else if(s!==undefined){if(s===true){this._sParsedEmptyString=""}else if(s!==false){e.warning("Illegal parseKeepsEmptyString: "+s,null,this.getName())}}}});u.prototype.formatValue=function(e,t){if(e===null&&this.getPrimitiveType(t)==="string"){return""}if(o(e,this.oConstraints)){e=e.replace(a,"");if(this.oConstraints.maxLength&&e==="0"&&this.getPrimitiveType(t)==="string"){return""}}return s.prototype.formatValue.call(this,e,t)};u.prototype.parseValue=function(e,t){var i;i=e===""?this._sParsedEmptyString:s.prototype.parseValue.apply(this,arguments);if(o(i,this.oConstraints)){i=i.replace(a,"");if(this.oConstraints.maxLength){i=i.padStart(this.oConstraints.maxLength,"0")}}return i};u.prototype.validateValue=function(e){var n=this.oConstraints||{},s=n.maxLength;if(e===null){if(n.nullable!==false){return}}else if(e===""&&this._sParsedEmptyString===""){return}else if(typeof e!=="string"){throw new i("Illegal "+this.getName()+" value: "+e)}else if(n.isDigitSequence){if(!e.match(r)){throw new i(t.getResourceBundleFor("sap.ui.core").getText("EnterDigitsOnly"))}if(s&&e.length>s){throw new i(t.getResourceBundleFor("sap.ui.core").getText("EnterMaximumOfDigits",[s]))}return}else if(!s||e.length<=s){return}throw new i(t.getResourceBundleFor("sap.ui.core").getText(s?"EnterTextMaxLength":"EnterText",[s]))};u.prototype.getName=function(){return"sap.ui.model.odata.type.String"};return u});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/Time", ["sap/base/Log","sap/base/util/extend","sap/ui/core/Lib","sap/ui/core/date/UI5Date","sap/ui/core/format/DateFormat","sap/ui/model/FormatException","sap/ui/model/ParseException","sap/ui/model/ValidateException","sap/ui/model/odata/type/ODataType"],function(t,e,n,o,r,i,a,u,s){"use strict";var l={__edmType:"Edm.Time",ms:86398e3},p={format:d,parse:g};function m(t){return n.getResourceBundleFor("sap.ui.core").getText("EnterTime",[t.formatValue(l,"string")])}function f(t){return typeof t==="object"&&t.__edmType==="Edm.Time"&&typeof t.ms==="number"}function c(e,n){var o;e.oConstraints=undefined;if(n){o=n.nullable;if(o===false||o==="false"){e.oConstraints={nullable:false}}else if(o!==undefined&&o!==true&&o!=="true"){t.warning("Illegal nullable: "+o,null,e.getName())}}}function g(t){if(!f(t)){throw new i("Illegal sap.ui.model.odata.type.Time value: "+h(t))}return new Date(t.ms)}function d(t){return{__edmType:"Edm.Time",ms:((t.getUTCHours()*60+t.getUTCMinutes())*60+t.getUTCSeconds())*1e3+t.getUTCMilliseconds()}}function h(t){try{return JSON.stringify(t)}catch(e){return String(t)}}var y=s.extend("sap.ui.model.odata.type.Time",{constructor:function(t,e){s.apply(this,arguments);c(this,e);this.oFormatOptions=t}});y.prototype.formatValue=function(t,e){if(t===undefined||t===null){return null}switch(this.getPrimitiveType(e)){case"any":return t;case"string":return this.getFormat().format(g(t));default:throw new i("Don't know how to format "+this.getName()+" to "+e)}};y.prototype.getDateValue=function(t){var e;if(!t){return null}e=o.getInstance(t.ms);e.setFullYear(1970,0,1);e.setHours(e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds(),e.getUTCMilliseconds());return e};y.prototype.getFormat=function(){if(!this.oFormat){var t=e({strictParsing:true},this.oFormatOptions);t.UTC=true;this.oFormat=r.getTimeInstance(t)}return this.oFormat};y.prototype.getISOStringFromModelValue=function(t){if(!t){return null}return o.getInstance(t.ms).toISOString().slice(11,-1)};y.prototype.getModelFormat=function(){return p};y.prototype.getModelValue=function(t){var e;if(t===null){e=null}else{o.checkDate(t);e=o.getInstance(0);e.setUTCHours(t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds());e=d(e)}this.validateValue(e);return e};y.prototype.getModelValueFromISOString=function(t){if(!t){return null}return d(o.getInstance("1970-01-01T"+t+"Z"))};y.prototype.getName=function(){return"sap.ui.model.odata.type.Time"};y.prototype.parseValue=function(t,e){var n;if(t===""||t===null){return null}if(this.getPrimitiveType(e)!=="string"){throw new a("Don't know how to parse "+this.getName()+" from "+e)}n=this.getFormat().parse(t);if(!n){throw new a(m(this))}return d(n)};y.prototype.validateValue=function(t){if(t===null){if(this.oConstraints&&this.oConstraints.nullable===false){throw new u(m(this))}return}if(!f(t)){throw new u("Illegal "+this.getName()+" value: "+h(t))}};y.prototype._handleLocalizationChange=function(){this.oFormat=null};return y});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/TimeOfDay", ["sap/base/Log","sap/base/i18n/date/CalendarType","sap/base/util/extend","sap/ui/core/Lib","sap/ui/core/date/UI5Date","sap/ui/core/format/DateFormat","sap/ui/model/FormatException","sap/ui/model/ParseException","sap/ui/model/ValidateException","sap/ui/model/odata/type/ODataType"],function(t,e,o,n,i,a,r,s,l,u){"use strict";function f(t){return n.getResourceBundleFor("sap.ui.core").getText("EnterTime",[t.formatValue("23:59:58","string")])}function p(e,o){var n,i;e.oConstraints=undefined;if(o){n=o.nullable;i=o.precision;if(n===false){e.oConstraints={nullable:false}}else if(n!==undefined&&n!==true){t.warning("Illegal nullable: "+n,null,e.getName())}if(i===Math.floor(i)&&i>0&&i<=12){e.oConstraints=e.oConstraints||{};e.oConstraints.precision=i}else if(i!==undefined&&i!==0){t.warning("Illegal precision: "+i,null,e.getName())}}}var d=u.extend("sap.ui.model.odata.type.TimeOfDay",{constructor:function(t,e){u.apply(this,arguments);this.oModelFormat=undefined;this.rTimeOfDay=undefined;this.oFormat=undefined;p(this,e);this.oFormatOptions=t}});d.prototype._handleLocalizationChange=function(){this.oFormat=null};d.prototype._resetModelFormatter=function(){this.oModelFormat=undefined};d.prototype.formatValue=function(t,e){var o,n,a;if(t===undefined||t===null){return null}a=this.getPrimitiveType(e);switch(a){case"any":return t;case"object":case"string":n=t.indexOf(".");if(n>=0){t=t.slice(0,n+4)}o=this.getModelFormat().parse(t);if(o){if(a==="object"){return i.getInstance(1970,0,1,o.getUTCHours(),o.getUTCMinutes(),o.getUTCSeconds())}return this.getFormat().format(o)}throw new r("Illegal "+this.getName()+" value: "+t);default:throw new r("Don't know how to format "+this.getName()+" to "+e)}};d.prototype.getDateValue=function(t){return t?i.getInstance("1970-01-01T"+t):null};d.prototype.getFormat=function(){if(!this.oFormat){var t=o({strictParsing:true},this.oFormatOptions);t.UTC=true;this.oFormat=a.getTimeInstance(t)}return this.oFormat};d.prototype.getISOStringFromModelValue=function(t){return t?t:null};d.prototype.getModelFormat=function(){var t="HH:mm:ss",o;if(!this.oModelFormat){o=this.oConstraints&&this.oConstraints.precision;if(o){t+="."+"".padEnd(o,"S")}this.oModelFormat=a.getTimeInstance({calendarType:e.Gregorian,pattern:t,strictParsing:true,UTC:true})}return this.oModelFormat};d.prototype.getModelValue=function(t){var e;if(t===null){e=null}else{i.checkDate(t);e=i.getInstance(0);e.setUTCHours(t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds());e=this.getModelFormat().format(e)}this.validateValue(e);return e};d.prototype.getModelValueFromISOString=function(t){return t?this.getModelFormat().format(i.getInstance("1970-01-01T"+t+"Z")):null};d.prototype.getName=function(){return"sap.ui.model.odata.type.TimeOfDay"};d.prototype.parseValue=function(t,e){var o;if(t===""||t===null){return null}switch(this.getPrimitiveType(e)){case"object":return this.getModelFormat().format(t,false);case"string":o=this.getFormat().parse(t);if(!o){throw new s(f(this))}return this.getModelFormat().format(o);default:throw new s("Don't know how to parse "+this.getName()+" from "+e)}};d.prototype.validateValue=function(t){var e;if(t===null){if(this.oConstraints&&this.oConstraints.nullable===false){throw new l(f(this))}return}if(!this.rTimeOfDay){e=this.oConstraints&&this.oConstraints.precision;this.rTimeOfDay=new RegExp("^(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d"+(e?"(\\.\\d{1,"+e+"})?":"")+")?$")}if(!this.rTimeOfDay.test(t)){throw new l("Illegal sap.ui.model.odata.type.TimeOfDay value: "+t)}};return d});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/Unit", ["./UnitMixin","sap/ui/core/format/NumberFormat","sap/ui/model/type/Unit"],function(t,e,i){"use strict";var n=i.extend("sap.ui.model.odata.type.Unit",{constructor:function(t,e,i){this._applyUnitMixin.apply(this,arguments)}});t(n.prototype,i,"customUnits","Unit");n.prototype.getCustomUnitForKey=function(t,i){return{decimals:t[i].UnitSpecificScale,displayName:t[i].Text,"unitPattern-count-other":e.getDefaultUnitPattern(i)}};n.prototype.getName=function(){return"sap.ui.model.odata.type.Unit"};return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/type/UnitMixin", ["sap/ui/core/Lib","sap/ui/model/ParseException","sap/ui/model/ValidateException"],function(t,i,e){"use strict";var n=new Map,s=/\.(\d+)$/,o=/\.$/,r=/0+$/;function a(i,e){return t.getResourceBundleFor("sap.ui.core").getText(i,e)}return function(t,u,m,l){function c(t,i){var e,s=this;if(this.mCustomUnits===undefined&&t&&t[2]!==undefined){if(t[2]===null){this.mCustomUnits=null}else{this.mCustomUnits=n.get(t[2]);if(!this.mCustomUnits){this.mCustomUnits={};Object.keys(t[2]).forEach(function(i){s.mCustomUnits[i]=s.getCustomUnitForKey(t[2],i)});n.set(t[2],this.mCustomUnits)}e={};e[m]=this.mCustomUnits;u.prototype.setFormatOptions.call(this,Object.assign(e,this.oFormatOptions))}}if(!t||t[0]===undefined||t[1]===undefined||this.mCustomUnits===undefined&&t[2]===undefined){return null}return u.prototype.formatValue.call(this,t.slice(0,2),i)}function h(){var t=u.prototype.getFormatOptions.call(this);delete t[m];return t}function p(){if(!this.bShowMeasure){return[1,2]}else if(!this.bShowNumber){return[0,2]}return[2]}function f(t){var i;if(!this.bShowNumber){i=t?a(l+".WithDecimals",[t]):a(l+".WithoutDecimals")}else{i=t?a("EnterNumberFraction",[t]):a("EnterInt")}return new e(i)}function d(t,e){var n;if(this.mCustomUnits===undefined){throw new i("Cannot parse value without customizing")}n=u.prototype.parseValue.apply(this,arguments);if(n[0]&&typeof n[0]==="string"&&n[0].includes(".")){n[0]=n[0].replace(r,"").replace(o,"")}return n}function w(t){var i,n,o,a=t[0],u=t[1];if(this.mCustomUnits===undefined){throw new e("Cannot validate value without customizing")}if(!a||!u||!this.mCustomUnits||this.oConstraints.skipDecimalsValidation){return}o=s.exec(a);n=o?o[1].replace(r,"").length:0;i=this.mCustomUnits[u].decimals;if(n>i){throw this.getValidateException(i)}}function g(t,i){var e=i?Object.keys(i):[];function n(t){if(t!=="skipDecimalsValidation"){throw new Error("Only 'skipDecimalsValidation' constraint is supported")}}if(t&&t[m]){throw new Error("Format option "+m+" is not supported")}e.forEach(n);if(arguments.length>2){throw new Error("Only parameters oFormatOptions and oConstraints are supported")}const s=!t||!("showNumber"in t)||t["showNumber"];const o=!t||!("showMeasure"in t)||t["showMeasure"];t=Object.assign({emptyString:s?0:"",parseAsString:true,unitOptional:s&&o},t);i=Object.assign({},i);u.call(this,t,i);this.mCustomUnits=undefined;this.setConstraints=function(){throw new Error("Constraints are immutable")};this.setFormatOptions=function(){throw new Error("Format options are immutable")}}t._applyUnitMixin=g;t.formatValue=c;t.getFormatOptions=h;t.getPartsIgnoringMessages=p;t.getValidateException=f;t.parseValue=d;t.validateValue=w}});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v2/BatchMode", function(){"use strict";var e={None:"None",Group:"Group"};return e},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v2/Context", ["sap/ui/base/SyncPromise","sap/ui/model/Context","sap/ui/model/_Helper"],function(t,e,i){"use strict";var n=["changeSetId","groupId","refreshAfterChange"];var r=e.extend("sap.ui.model.odata.v2.Context",{constructor:function(i,n,r,o,s,a){var u=this;e.call(this,i,n);this.oCreatePromise=undefined;this.sDeepPath=r||n;this.bForceRefresh=false;this.bPreliminary=false;this.oSyncCreatePromise=a?a.oSyncCreatePromise:o;this.bUpdated=false;this.bInactive=!!s;this.fnStartActivation=undefined;this.oStartActivationPromise=s?new t(function(t){u.fnStartActivation=t}):t.resolve();this.fnActivate=undefined;this.oActivatedPromise=s?new t(function(t){u.fnActivate=t}):t.resolve();this.mSubContexts=undefined;this.oTransientParent=a}});r.prototype.addSubContext=function(t,e,i){this.mSubContexts=this.mSubContexts||{};if(i){this.mSubContexts[t]=this.mSubContexts[t]||[];this.mSubContexts[t].push(e)}else{this.mSubContexts[t]=e}};r.prototype.cancelActivation=function(){var e=this;this.oStartActivationPromise=new t(function(t){e.fnStartActivation=t})};r.prototype.created=function(){if(this.oSyncCreatePromise&&!this.oCreatePromise){this.oCreatePromise=Promise.resolve(this.oSyncCreatePromise).then(function(){})}return this.oCreatePromise};r.prototype.delete=function(t){var e,r=this.getModel(),o=this;t=t||{};for(e in t){if(!n.includes(e)){throw new Error("Parameter '"+e+"' is not supported")}}if(this.isInactive()){r._discardEntityChanges(r._getKey(this),true);r.checkUpdate();return Promise.resolve()}else if(this.isTransient()){return r.resetChanges([this.getPath()],false,true)}return new Promise(function(e,n){var s=r._resolveGroup(o.getPath());r.remove("",i.merge({changeSetId:s.changeSetId,context:o,error:n,groupId:s.groupId,success:function(){e()}},t))})};r.prototype.fetchActivated=function(){return this.oActivatedPromise};r.prototype.fetchActivationStarted=function(){return this.oStartActivationPromise};r.prototype.finishActivation=function(){this.bInactive=false;if(this.fnActivate){this.fnActivate()}};r.prototype.getDeepPath=function(){return this.sDeepPath};r.prototype.getSubContexts=function(){return this.mSubContexts};r.prototype.getSubContextsArray=function(t){var e,i,n=[];function r(e){n.push(e);if(t){n=n.concat(e.getSubContextsArray(t))}}for(e in this.mSubContexts){i=this.mSubContexts[e];if(Array.isArray(i)){i.forEach(r)}else{r(i)}}return n};r.prototype.getSubContextsAsKey=function(t){return this.getSubContextsArray(t).map(function(t){return t.getPath().slice(1)})};r.prototype.getSubContextsAsPath=function(t){return this.getSubContextsArray(t).map(function(t){return t.getPath()})};r.prototype.hasChanged=function(){return this.bUpdated||this.bForceRefresh};r.prototype.hasSubContexts=function(){return!!this.mSubContexts};r.prototype.hasTransientParent=function(){return!!this.oTransientParent};r.prototype.isInactive=function(){return this.bInactive};r.prototype.isPreliminary=function(){return this.bPreliminary};r.prototype.isRefreshForced=function(){return this.bForceRefresh};r.prototype.isTransient=function(){return this.oSyncCreatePromise&&this.oSyncCreatePromise.isPending()};r.prototype.isUpdated=function(){return this.bUpdated};r.prototype.removeFromTransientParent=function(){if(this.oTransientParent){this.oTransientParent.removeSubContext(this);delete this.oTransientParent}};r.prototype.removeSubContext=function(t){var e,i,n;for(i in this.mSubContexts){n=this.mSubContexts[i];if(Array.isArray(n)){e=n.indexOf(t);if(e>-1){n.splice(e,1)}if(!n.length){delete this.mSubContexts[i]}}else if(n===t){delete this.mSubContexts[i]}}if(this.mSubContexts&&!Object.keys(this.mSubContexts).length){this.mSubContexts=undefined}};r.prototype.resetCreatedPromise=function(){this.oCreatePromise=undefined;this.oSyncCreatePromise=undefined};r.prototype.setDeepPath=function(t){this.sDeepPath=t};r.prototype.setForceRefresh=function(t){this.bForceRefresh=t};r.prototype.setPreliminary=function(t){this.bPreliminary=t};r.prototype.setUpdated=function(t){this.bUpdated=t};r.prototype.startActivation=function(){if(this.fnStartActivation){this.fnStartActivation()}};return r});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v2/ODataAnnotations", ["sap/base/assert","sap/base/i18n/Localization","sap/base/util/extend","sap/ui/base/EventProvider","sap/ui/core/cache/CacheManager","sap/ui/model/odata/AnnotationParser","sap/ui/thirdparty/jquery"],function(e,t,r,a,o,n,jQuery){"use strict";var i=a.extend("sap.ui.model.odata.v2.ODataAnnotations",{constructor:function(e,t){var r=this;a.apply(this,[t]);this._oMetadata=e;this._pLoaded=e.loaded();this._mCustomHeaders={};this._mAnnotations={};this._hasErrors=false;function i(e){if(!r._hasErrors){o.set(r.sCacheKey,JSON.stringify(e))}}if(!t||!t.skipMetadata){if(!t){t={}}if(!t.source){t.source=[]}else if(Array.isArray(t.source)){t.source=t.source.slice(0)}else{t.source=[t.source]}t.source.unshift({type:"xml",data:e.loaded().then(function(e){return{xml:e["metadataString"],lastModified:e["lastModified"],eTag:e["eTag"]}})})}if(t){this.sCacheKey=t.cacheKey;this.setHeaders(t.headers);if(this.sCacheKey){this._pLoaded=o.get(r.sCacheKey).then(function(e){var a;if(e){a=JSON.parse(e)}if(Array.isArray(a)){a.annotations={};a.forEach(function(e){n.restoreAnnotationsAtArrays(e.annotations);n.merge(a.annotations,e.annotations)});r._mAnnotations=a.annotations;r._fireSomeLoaded(a);r._fireLoaded(a);return a}else{return r.addSource(t.source).then(function(e){i(e);return e})}})}else{this._pLoaded=this.addSource(t.source)}}},metadata:{publicMethods:["getData","addSource","getHeaders","setHeaders","attachSuccess","detachSuccess","attachError","detachError","attachLoaded","detachLoaded","attachFailed","detachFailed"]}});i.prototype.getData=function(){return this._mAnnotations};i.prototype.getAnnotationsData=i.prototype.getData;i.prototype.getHeaders=function(){return r({},this._mCustomHeaders)};i.prototype.setHeaders=function(e){this._mCustomHeaders=r({},e)};i.prototype.loaded=function(){return this._pLoaded};i.prototype.addSource=function(e){if(!e||Array.isArray(e)&&e.length===0){return this._oMetadata.loaded()}if(!Array.isArray(e)){e=[e]}var t=this;var r=e.map(function(e){e=typeof e==="string"?{type:"url",data:e}:e;return t._loadSource(e).then(t._parseSourceXML).then(t._parseSource.bind(t)).catch(function(e){return e})});return Promise.all(r).then(function(e){return e.map(function(e){try{e=t._mergeSource(e);t._fireSuccess(e)}catch(r){t._fireError(e)}return e})}).then(function(e){e.annotations=t.getData();var r=e.filter(function(e){return e instanceof Error});if(r.length>0){t._hasErrors=true;if(r.length!==e.length){t._fireSomeLoaded(e);t._fireFailed(e)}else{t._fireFailed(e);t._fireAllFailed(e);return Promise.reject(e)}}else{t._fireSomeLoaded(e);t._fireLoaded(e)}return e})};i.prototype.attachSuccess=function(e,t,r){return this.attachEvent("success",e,t,r)};i.prototype.detachSuccess=function(e,t){return this.detachEvent("success",e,t)};i.prototype.attachError=function(e,t,r){return this.attachEvent("error",e,t,r)};i.prototype.detachError=function(e,t){return this.detachEvent("error",e,t)};i.prototype.attachLoaded=function(e,t,r){return this.attachEvent("loaded",e,t,r)};i.prototype.detachLoaded=function(e,t){return this.detachEvent("loaded",e,t)};i.prototype.attachFailed=function(e,t,r){return this.attachEvent("failed",e,t,r)};i.prototype.detachFailed=function(e,t){return this.detachEvent("failed",e,t)};i.prototype.attachSomeLoaded=function(e,t,r){return this.attachEvent("someLoaded",e,t,r)};i.prototype.detachSomeLoaded=function(e,t){return this.detachEvent("someLoaded",e,t)};i.prototype.attachAllFailed=function(e,t,r){return this.attachEvent("allFailed",e,t,r)};i.prototype.detachAllFailed=function(e,t){return this.detachEvent("allFailed",e,t)};i.prototype._fireSuccess=function(e){return this.fireEvent("success",{result:e},false,false)};i.prototype._fireError=function(e){return this.fireEvent("error",{result:e},false,false)};i.prototype._fireLoaded=function(e){return this.fireEvent("loaded",{result:e},false,false)};i.prototype._fireFailed=function(e){return this.fireEvent("failed",{result:e},false,false)};i.prototype._fireSomeLoaded=function(e){return this.fireEvent("someLoaded",{result:e},false,false)};i.prototype._fireAllFailed=function(e){return this.fireEvent("allFailed",{result:e},false,false)};i.prototype._loadSource=function(e){if(e.data instanceof Promise){return e.data.then(function(t){delete e.data;e.type="xml";e.xml=t.xml;e.lastModified=t.lastModified;e.eTag=t.eTag;return this._loadSource(e)}.bind(this))}else if(e.type==="xml"){if(typeof e.data==="string"){e.xml=e.data;delete e.data}return Promise.resolve(e)}else if(e.type==="url"){return this._loadUrl(e)}else{var t=new Error('Unknown source type: "'+e.type+'"');t.source=e;return Promise.reject(t)}};i.prototype._loadUrl=function(t){e(t.type==="url",'Source type must be "url" in order to be loaded');return new Promise(function(e,r){var a={url:t.data,async:true,headers:this._getHeaders(),beforeSend:function(e){e.overrideMimeType("text/plain")}};var o=function(r,a,o){t.xml=o.responseText;if(o.getResponseHeader("Last-Modified")){t.lastModified=new Date(o.getResponseHeader("Last-Modified"))}if(o.getResponseHeader("eTag")){t.eTag=o.getResponseHeader("eTag")}e(t)};var n=function(e,a){var o=new Error('Could not load annotation URL: "'+t.data+'"');o.source=t;r(o)};jQuery.ajax(a).done(o).fail(n)}.bind(this))};i.prototype._parseSourceXML=function(t){e(typeof t.xml==="string","Source must contain XML string in order to be parsed");return new Promise(function(e,r){var a=(new DOMParser).parseFromString(t.xml,"application/xml");if(a.getElementsByTagName("parsererror").length>0){var o=new Error("There were errors parsing the XML.");o.source={type:t.type,data:t.data,xml:t.xml,document:a};r(o)}else{t.document=a;e(t)}})};i.prototype._parseSource=function(e){return this._oMetadata.loaded().then(function(){e.annotations=n.parse(this._oMetadata,e.document,e.data);delete e.document;return e}.bind(this))};i.prototype._mergeSource=function(t){e(typeof t.annotations==="object","Source must contain an annotation object to be merged");n.merge(this._mAnnotations,t.annotations);return t};i.prototype._getHeaders=function(){return r({"sap-cancel-on-close":"true"},this.getHeaders(),{"Accept-Language":t.getLanguageTag().toString()})};return i});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v2/ODataContextBinding", ["sap/base/util/deepExtend","sap/base/util/extend","sap/ui/model/ChangeReason","sap/ui/model/Context","sap/ui/model/ContextBinding"],function(e,t,i,n,o){"use strict";var s=o.extend("sap.ui.model.odata.v2.ODataContextBinding",{constructor:function(t,i,n,s,a){o.call(this,t,i,n,s,a);this.sRefreshGroupId=undefined;this.bPendingRequest=false;this.mParameters=e({},this.mParameters);this.bCreatePreliminaryContext=this.mParameters.createPreliminaryContext||t.bPreliminaryContext;this.bUsePreliminaryContext=this.mParameters.usePreliminaryContext||t.bPreliminaryContext;this.mParameters.createPreliminaryContext=this.bCreatePreliminaryContext;this.mParameters.usePreliminaryContext=this.bUsePreliminaryContext;this.bPendingRequest=false}});s.prototype.initialize=function(){var e,t,o,s=this.oContext&&this.oContext.isPreliminary(),a=this.isRelative()&&this.oContext&&this.oContext.isTransient&&this.oContext.isTransient(),r=this;if(!this.oModel.oMetadata.isLoaded()||!this.bInitial){return}this.bInitial=false;if(s&&!this.bUsePreliminaryContext){return}o=this.getResolvedPath();if(!o||a){this.oElementContext=null;this._fireChange({reason:i.Context});return}t=this.oModel._isReloadNeeded(o,this.mParameters);if(t){this.fireDataRequested();this.bPendingRequest=true}e=this.oModel.createBindingContext(this.sPath,this.oContext,this.mParameters,function(e){var o,s=e&&e.isRefreshForced(),a=e&&e.isUpdated();if(r.bCreatePreliminaryContext&&e&&r.oElementContext){r.oElementContext.setPreliminary(false);r.oModel._updateContext(r.oElementContext,e.getPath());r._fireChange({reason:i.Context},false,true)}else if(!e||n.hasChanged(e,r.oElementContext)){r.oElementContext=e;r._fireChange({reason:i.Context},s,a)}if(t){if(r.oElementContext){o=r.oElementContext.getObject(r.mParameters)}r.oModel.callAfterUpdate(function(){r.fireDataReceived({data:o})});r.bPendingRequest=false}},t);if(e){if(this.bCreatePreliminaryContext&&this.oElementContext!==e){e.setPreliminary(true);this.oElementContext=e;this.oModel.oMetadata.loaded().then(function(){this._fireChange({reason:i.Context})}.bind(this))}}else if(this.oContext){this.oElementContext=null;this._fireChange({reason:i.Context})}};s.prototype.checkUpdate=function(){var e,t=this.mParameters,n=this.oContext&&this.oContext.isPreliminary();if(this.bInitial||this.bPendingRequest){return}if(this.oContext&&this.oContext.isUpdated()){this.setContext(this.oContext);return}if(n&&!this.bUsePreliminaryContext){return}if(t.createPreliminaryContext){t=Object.assign({},t);delete t.createPreliminaryContext}e=this.oModel.createBindingContext(this.sPath,this.oContext,t);if(e!==undefined&&e!==this.oElementContext){this.oElementContext=e;this._fireChange({reason:i.Context})}};s.prototype.refresh=function(e,t){if(typeof e==="string"){t=e;e=false}this.sRefreshGroupId=t;this._refresh(e);this.sRefreshGroupId=undefined};s.prototype._refresh=function(e,o){var s,a,r,h,l,C=false,x=this.mParameters,f=this.isRelative()&&this.oContext&&this.oContext.isTransient&&this.oContext.isTransient(),d=this.getResolvedPath(),m=this;if(this.bInitial||f){return}if(o){l=this.oModel._getObject(this.sPath,this.oContext);if(l){h=this.oModel._getKey(l);if(h in o){C=true}}}else{C=true}if(e||C){if(d){this.fireDataRequested();this.bPendingRequest=true}if(this.sRefreshGroupId){x=t({},this.mParameters);x.groupId=this.sRefreshGroupId}s=this.oModel.createBindingContext(this.sPath,this.oContext,x,function(t){if(m.bCreatePreliminaryContext&&t&&m.oElementContext){m.oElementContext.setPreliminary(false);m.oModel._updateContext(m.oElementContext,t.getPath());m._fireChange({reason:i.Context},false,true)}else if(n.hasChanged(t,m.oElementContext)||e){m.oElementContext=t;m._fireChange({reason:i.Context},e)}if(m.oElementContext){r=m.oElementContext.getObject(m.mParameters)}if(d){m.oModel.callAfterUpdate(function(){m.fireDataReceived({data:r})});m.bPendingRequest=false}},true);if(s&&this.bCreatePreliminaryContext){if(this.oElementContext!==s||e){s.setPreliminary(true);this.oElementContext=s;a=this.oElementContext.sPath;this.oModel._updateContext(this.oElementContext,d);this._fireChange({reason:i.Context},e);this.oModel._updateContext(this.oElementContext,a)}}}};s.prototype.setContext=function(e){var t,o,s,a,r,h,l=e&&e.isRefreshForced(),C=e&&e.isPreliminary(),x=e&&e.isTransient&&e.isTransient(),f=e&&e.isUpdated(),d=this;if(this.bInitial||!this.isRelative()){return}if(C&&!this.bUsePreliminaryContext){return}if(f&&this.bUsePreliminaryContext){this._fireChange({reason:i.Context});return}if(n.hasChanged(this.oContext,e)){this.oContext=e;h=this.getResolvedPath();if(h&&x){a=this.oModel.oMetadata._splitByLastNavigationProperty(h).lastNavigationProperty}if(!h||a){if(this.oElementContext!==null){this.oElementContext=null;this._fireChange({reason:i.Context})}return}s=this.oModel._getObject(this.sPath,this.oContext);r=l||this.oModel._isReloadNeeded(h,this.mParameters);if(h&&r){this.fireDataRequested();this.bPendingRequest=true}t=this.oModel.createBindingContext(this.sPath,this.oContext,this.mParameters,function(e){if(d.bCreatePreliminaryContext&&e&&d.oElementContext){d.oElementContext.setPreliminary(false);d.oModel._updateContext(d.oElementContext,e.getPath());d._fireChange({reason:i.Context},false,true)}else if(n.hasChanged(e,d.oElementContext)){d.oElementContext=e;d._fireChange({reason:i.Context},l,f)}if(h&&r){if(d.oElementContext){s=d.oElementContext.getObject(d.mParameters)}d.oModel.callAfterUpdate(function(){d.fireDataReceived({data:s})});d.bPendingRequest=false}},r);if(t){if(this.bCreatePreliminaryContext){t.setPreliminary(true);this.oElementContext=t;o=this.oElementContext.sPath;this.oModel._updateContext(this.oElementContext,h);this._fireChange({reason:i.Context},l);this.oModel._updateContext(this.oElementContext,o)}}else if(this.oContext&&this.oElementContext!==null){this.oElementContext=null;this._fireChange({reason:i.Context})}}};s.prototype._fireChange=function(e,t,i){var n;if(this.oElementContext){n=this.oElementContext.isUpdated();this.oElementContext.setForceRefresh(t);this.oElementContext.setUpdated(i)}o.prototype._fireChange.call(this,e);if(this.oElementContext){this.oElementContext.setForceRefresh(false);this.oElementContext.setUpdated(n)}};return s});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v2/ODataListBinding", ["sap/base/assert","sap/base/Log","sap/base/util/deepEqual","sap/base/util/each","sap/base/util/isEmptyObject","sap/base/util/uid","sap/ui/model/ChangeReason","sap/ui/model/Context","sap/ui/model/Filter","sap/ui/model/FilterOperator","sap/ui/model/FilterProcessor","sap/ui/model/FilterType","sap/ui/model/ListBinding","sap/ui/model/Sorter","sap/ui/model/SorterProcessor","sap/ui/model/odata/CountMode","sap/ui/model/odata/Filter","sap/ui/model/odata/ODataUtils","sap/ui/model/odata/OperationMode"],function(e,t,s,i,a,n,r,o,h,l,d,u,f,p,c,g,C,y,m){"use strict";var b="sap.ui.model.odata.v2.ODataListBinding",P=["changeSetId","error","expand","groupId","inactive","success"];var x=f.extend("sap.ui.model.odata.v2.ODataListBinding",{constructor:function(e,t,s,i,a,n){f.apply(this,arguments);this.sFilterParams=null;this.sSortParams=null;this.sCustomParams=this.oModel.createCustomParams(this.mParameters);this.mCustomParams=n&&n.custom;this.iLength=0;this.bPendingChange=false;this.aAllKeys=null;this.aKeys=[];this.sCountMode=n&&n.countMode||this.oModel.sDefaultCountMode;this.sOperationMode=n&&n.operationMode||this.oModel.sDefaultOperationMode;this.bUsePreliminaryContext=n&&n.usePreliminaryContext||e.bPreliminaryContext;if(!this.bUsePreliminaryContext&&s&&s.isPreliminary&&s.isPreliminary()){this.oContext=s=undefined}this.bRefresh=false;this.bNeedsUpdate=false;this.bDataAvailable=false;this.bIgnoreSuspend=false;this.bPendingRefresh=false;this.sGroupId=undefined;this.sRefreshGroupId=undefined;this.bLengthRequested=false;this.bUseExtendedChangeDetection=false;this.bFaultTolerant=n&&n.faultTolerant;this.bLengthFinal=false;this.iLastEndIndex=0;this.aLastContexts=null;this.aLastContextData=null;this.bInitial=true;this.mRequestHandles={};this.oCountHandle=null;this.bSkipDataEvents=false;this.bUseExpandedList=false;this.oCombinedFilter=null;this.sDeepPath=e.resolveDeep(t,s);this.bCanonicalRequest=n&&n.bCanonicalRequest;this.mNormalizeCache={};this.bTransitionMessagesOnly=!!(n&&n.transitionMessagesOnly);this.sCreatedEntitiesKey=n&&n.createdEntitiesKey||"";this.oCreatedPersistedToRemove=new Set;this.bRemovePersistedCreatedAfterRefresh=false;this.oModel.checkFilter(this.aApplicationFilters);if(n&&(n.batchGroupId||n.groupId)){this.sGroupId=n.groupId||n.batchGroupId}this.iThreshold=n&&n.threshold||0;this.bThresholdRejected=false;if(this.sCountMode==g.None){this.bThresholdRejected=true}if(!this.checkExpandedList()){this._removePersistedCreatedContexts();this.resetData()}this._reassignCreateActivate()},metadata:{publicMethods:["getLength"]}});x.prototype.attachCreateActivate=function(e,t){return this.attachEvent("createActivate",e,t)};x.prototype.detachCreateActivate=function(e,t){return this.detachEvent("createActivate",e,t)};x.prototype._updateLastStartAndLength=function(e,t,s,i){if(i){this._checkKeepCurrentSupported(s)}else{this.iLastStartIndex=e;this.iLastLength=t;this.iLastMaximumPrefetchSize=s}};x.prototype.getAllCurrentContexts=function(){var e=this._getCreatedContexts(),t=this;this.aKeys.forEach(function(s){e.push(t.oModel.getContext("/"+s))});return e};x.prototype.getContextByIndex=function(e){return this._getContexts(e,1)[0]};x.prototype.getContexts=function(e,t,s,i){var a,n,o;if(this.bInitial){return[]}if(!this.bLengthFinal&&this.sOperationMode==m.Auto&&(this.sCountMode==g.Request||this.sCountMode==g.Both)){if(!this.bLengthRequested){this._getLength();this.bLengthRequested=true}return[]}if(!this.bLengthFinal&&!this.bPendingRequest&&!this.bLengthRequested){this._getLength();this.bLengthRequested=true}this._updateLastStartAndLength(e,t,s,i);if(!e){e=0}if(!t){t=this._getMaximumLength()}if(!s){s=0}if(this.sOperationMode==m.Auto){if(this.iThreshold>=0){s=Math.max(this.iThreshold,s)}}a=this._getContexts(e,t);a.bExpectMore=this._isExpectingMoreContexts(a,e,t);if(this.oCombinedFilter===h.NONE||this._hasTransientParentContext()){}else if(this.useClientMode()){if(!this.aAllKeys&&!this.bPendingRequest&&this.oModel.getServiceMetadata()){this.loadData();a.dataRequested=true}}else{o=this._getSkipAndTop(e,t,s);if(this.oModel.getServiceMetadata()){if(!this.bPendingRequest&&o){this.loadData(o.skip,o.top);a.dataRequested=true}}}if(this.isFirstCreateAtEnd()&&this.bPendingRequest&&a.length&&a[0].isTransient()!==undefined){a.length=0}if(this.bRefresh){this.bRefresh=false;if(!a.dataRequested){this._fireChange({reason:r.Change})}}else if(!i){n=[];for(var l=0;l<a.length;l++){n.push(this.getContextData(a[l]))}if(this.bUseExtendedChangeDetection){if(this.aLastContexts&&e<this.iLastEndIndex){a.diff=this.diffData(this.aLastContextData,n)}}this.iLastEndIndex=e+t;this.aLastContexts=a.slice(0);this.aLastContextData=n}return a};x.prototype.getCurrentContexts=function(){return this.aLastContexts||[]};x.prototype.getEntryKey=function(e){return e.getPath()};x.prototype.getEntryData=function(e){return JSON.stringify(e.getObject(this.mParameters))};x.prototype._getContexts=function(e,t){var s,i,a,n,r=this.isFirstCreateAtEnd(),o=[],h=this._getCreatedContexts(),l=h.length,d=this.oModel.resolveDeep(this.sPath,this.oContext);if(!e){e=0}if(!t){t=this._getMaximumLength()}a=e+t;for(i=e;i<a;i+=1){if(!r&&i<l){s=h[i]}else if(r&&i>=this.iLength){if(i-this.iLength>=l){break}s=h[i-this.iLength]}else{n=this.aKeys[r?i:i-l];if(!n){break}s=this.oModel.getContext("/"+n,d+n.substr(n.indexOf("(")))}o.push(s)}return o};x.prototype.setContext=function(e){var s,i,a=e&&e.isRefreshForced(),n=e&&e.isPreliminary(),h=e&&e.isUpdated();if(this.bInitial||!this.isRelative()){return}if(n&&!this.bUsePreliminaryContext){return}if(h&&this.bUsePreliminaryContext&&this.oContext===e){this._fireChange({reason:r.Context});return}if(o.hasChanged(this.oContext,e)){s=this.isResolved()&&!this._hasTransientParentWithoutSubContexts();this.oContext=e;i=this.getResolvedPath();this.sDeepPath=this.oModel.resolveDeep(this.sPath,this.oContext);if(!this._checkPathType()){t.error("List Binding is not bound against a list for "+i,undefined,b)}this.checkDataState();if(!i||this._hasTransientParentWithoutSubContexts()){this.aAllKeys=null;this.aKeys=[];this.iLength=0;this.bLengthFinal=true;this.abortPendingRequest(true,true);if(s){this._fireChange({reason:r.Context})}return}this._initSortersFilters();if(this.checkExpandedList()&&!a){this.abortPendingRequest();this._fireChange({reason:r.Context})}else{this._removePersistedCreatedContexts();this._refresh()}}};x.prototype._cleanupCreatedPersisted=function(){var e=false,t=this.oModel._getObject(this.sPath,this.oContext),s=this;function i(t){s.oModel._discardEntityChanges(t,true);e=true}if(this.oCreatedPersistedToRemove.size&&!this.bSuspended){this.oCreatedPersistedToRemove.forEach(i);this.oCreatedPersistedToRemove.clear()}if(t&&t.sideEffects){this._getCreatedPersistedContexts().forEach(function(e){var a=s.oModel.getKey(e);if(!t.includes(a)){if(s.bSuspended){s.oCreatedPersistedToRemove.add(a)}else{i(a)}}})}return e};x.prototype.checkExpandedList=function(e){var t,s=this.oModel._getObject(this.sPath,this.oContext),i=this.bUseExpandedList,a=this;if(!this.isResolved()||s===undefined||!this._isExpandedListUsable()){this.bUseExpandedList=false;this.aExpandRefs=undefined;return false}else{this.bUseExpandedList=true;if(Array.isArray(s)){if(!e&&(this.oModel._isReloadNeeded("/"+s[0],this.mParameters)||this.oModel._isReloadNeeded("/"+s[s.length-1],this.mParameters))){this.bUseExpandedList=false;this.aExpandRefs=undefined;return false}this.aExpandRefs=s;if(s.sideEffects){t=this._getCreatedPersistedContexts().map(function(e){return a.oModel.getKey(e)});if(t.length){s=s.filter(function(e){return!t.includes(e)})}}this.aAllKeys=s;this.iLength=s.length;this.bLengthFinal=true;this.bDataAvailable=true;this._initSortersFilters();this.applyFilter();this.applySort();if(this.aExpandRefs.sideEffects&&!i){this.aExpandRefs=undefined;this.bUseExpandedList=false;return this.bUseExpandedList}}else{this.aExpandRefs=undefined;this.aAllKeys=null;this.aKeys=[];this.iLength=0;this.bLengthFinal=true;this.bDataAvailable=true}return true}};x.prototype.updateExpandedList=function(e){if(this.aExpandRefs){for(var t=0;t<e.length;t++){this.aExpandRefs[t]=e[t]}this.aExpandRefs.length=e.length}};x.prototype.useClientMode=function(){return this.sOperationMode===m.Client||this.sOperationMode===m.Auto&&!this.bThresholdRejected||this.sOperationMode!==m.Server&&this.bUseExpandedList};x.prototype._addFilterQueryOption=function(e,t){var s=this._getCreatedPersistedExcludeFilter();if(this.sFilterParams&&t){if(s){e.push("$filter=("+this.sFilterParams.slice(8)+")%20and%20"+s)}else{e.push(this.sFilterParams)}}else if(s){e.push("$filter="+s)}};x.prototype._getCreatedPersistedContexts=function(){return this._getCreatedContexts().filter(function(e){return!e.isTransient()})};x.prototype._getCreatedPersistedExcludeFilter=function(){var e,t,s=this._getCreatedPersistedContexts(),i=this;if(s.length>0){t=s.map(function(e){var t=e.getPath();return i._getFilterForPredicate(t.slice(t.indexOf("(")))});e="not("+y._createFilterParams(t.length===1?t[0]:new h({filters:t}),this.oModel.oMetadata,this.oEntityType)+")"}return e};x.prototype.loadData=function(e,t){var s,a,o=n(),h=false,l=this.oModel.iSizeLimit,d=this.sPath,u=this.bRemovePersistedCreatedAfterRefresh,f=[],p=this.useClientMode(),c=this;function C(){var s=[];if(t){s.push("$skip="+e+"&$top="+t)}else{e=0}if(c.sSortParams){s.push(c.sSortParams)}c._addFilterQueryOption(s,!p);if(c.sCustomParams){s.push(c.sCustomParams)}if(c.sCountMode==g.InlineRepeat||!c.bLengthFinal&&(c.sCountMode===g.Inline||c.sCountMode===g.Both)){s.push("$inlinecount=allpages");h=true}else{h=false}return s}function y(s){if(h&&s.__count!==undefined){c.iLength=parseInt(s.__count);c.bLengthFinal=true;if(c.sOperationMode==m.Auto){if(c.iLength<=c.mParameters.threshold){c.bThresholdRejected=false}else{c.bThresholdRejected=true;delete c.mRequestHandles[o];c.bPendingRequest=false;c.bNeedsUpdate=true;return}}}if(p){if(!e){c.aKeys=[]}i(s.results,function(t,s){c.aKeys[e+t]=c.oModel._getKey(s)});f.push(s.results);if(s.__next&&c.aKeys.length<l){e=c.aKeys.length;t=l-e;a.urlParameters=C();c.mRequestHandles[o]=c.oModel.read(c.sPath,a);return}c.updateExpandedList(c.aKeys);c.aAllKeys=c.aKeys.slice();c.iLength=c.aKeys.length;c.bLengthFinal=true;c.applyFilter();c.applySort()}else if(s.results.length>0){i(s.results,function(t,s){c.aKeys[e+t]=c.oModel._getKey(s)});if(c.iLength<e+s.results.length){c.iLength=e+s.results.length;c.bLengthFinal=false}if(!s.__next&&(s.results.length<t||t===undefined)){c.iLength=e+s.results.length;c.bLengthFinal=true}}else{if(c.bFaultTolerant&&s.__next){c.iLength=e;c.bLengthFinal=true}if(e===0){c.iLength=0;c.aKeys=[];c.bLengthFinal=true}if(e===c.iLength){c.bLengthFinal=true}}delete c.mRequestHandles[o];c.bPendingRequest=false;c.bNeedsUpdate=true;c.bIgnoreSuspend=true;if(u){c._removePersistedCreatedContexts()}c.oModel.callAfterUpdate(function(){if(f.length>1){c.fireDataReceived({data:{__count:String(c.iLength),results:Array.prototype.concat.apply([],f)}})}else{c.fireDataReceived({data:s})}})}function b(e){var t=e.statusCode==0;delete c.mRequestHandles[o];c.bPendingRequest=false;if(c.bFaultTolerant){c.iLength=c.aKeys.length;c.bLengthFinal=true;c.bDataAvailable=true}else if(!t){c.aKeys=[];c.aAllKeys=[];c.iLength=0;c.bLengthFinal=true;c.bDataAvailable=true;c._fireChange({reason:r.Change})}if(!c.bSkipDataEvents){c.fireDataReceived()}}if(this.isRelative()){d=this.getResolvedPath()}if(d){this.bPendingRequest=true;if(!this.bSkipDataEvents){this.fireDataRequested()}this.bSkipDataEvents=false;s=this.sRefreshGroupId?this.sRefreshGroupId:this.sGroupId;a={headers:this.bTransitionMessagesOnly?{"sap-messages":"transientOnly"}:undefined,context:this.oContext,groupId:s,urlParameters:C(),success:y,error:b,canonicalRequest:this.bCanonicalRequest,updateAggregatedMessages:this.bRefresh};this.mRequestHandles[o]=this.oModel.read(this.sPath,a)}};x.prototype.isLengthFinal=function(){return this.bLengthFinal};x.prototype.getLength=function(){var e=this.iLength+this._getCreatedContexts().length;if(this.bLengthFinal||this.iLength===0){return e}return e+(this.iLastMaximumPrefetchSize||this.iLastLength||10)};x.prototype._getLength=function(){var e,s,a=[],n=this;if(this.sCountMode!==g.Request&&this.sCountMode!==g.Both){return}this._addFilterQueryOption(a,this.sOperationMode!==m.Auto);if(this.mParameters&&this.mParameters.custom){var o={custom:{}};i(this.mParameters.custom,function(e,t){o.custom[e]=t});a.push(this.oModel.createCustomParams(o))}function h(e){n.iLength=parseInt(e);n.bLengthFinal=true;n.bLengthRequested=true;n.oCountHandle=null;if(n.sOperationMode==m.Auto){if(n.iLength<=n.mParameters.threshold){n.bThresholdRejected=false}else{n.bThresholdRejected=true}n._fireChange({reason:r.Change})}}function l(e){delete n.mRequestHandles[s];var i="Request for $count failed: "+e.message;if(e.response){i+=", "+e.response.statusCode+", "+e.response.statusText+", "+e.response.body}t.warning(i,undefined,b)}s=this.getResolvedPath();if(s){e=this.sRefreshGroupId?this.sRefreshGroupId:this.sGroupId;this.oCountHandle=this.oModel.read(this.sPath+"/$count",{context:this.oContext,withCredentials:this.oModel.bWithCredentials,groupId:e,urlParameters:a,success:h,error:l,canonicalRequest:this.bCanonicalRequest})}};x.prototype._getMaximumLength=function(){var e=this.oModel.iSizeLimit;if(this.bLengthFinal){e=Math.min(e,this.iLength+this._getCreatedContexts().length)}return e};x.prototype.refresh=function(e,t){if(typeof e==="string"){t=e;e=false}this._removePersistedCreatedContexts();this.sRefreshGroupId=t;this.bRemovePersistedCreatedAfterRefresh=true;this._refresh(e);this.sRefreshGroupId=undefined;this.bRemovePersistedCreatedAfterRefresh=false};x.prototype._refresh=function(e,t,s){var a,n,o=false;if(this._hasTransientParentWithoutSubContexts()){return}if(!e){if(s){n=this.getResolvedPath();if(n){a=this.oModel.oMetadata._getEntityTypeByPath(n);if(a&&a.entityType in s){o=true}}}if(t&&!o){i(this.aKeys,function(e,s){if(s in t){o=true;return false}return true})}if(!t&&!s){o=true}}if(e||o){if(this.bSuspended&&!this.bIgnoreSuspend&&!e){this.bPendingRefresh=true;return}this.bPendingRefresh=false;this.abortPendingRequest(true);this.resetData();this._fireRefresh({reason:r.Refresh})}};x.prototype._fireRefresh=function(e){if(this.getResolvedPath()){this.bRefresh=true;this.fireEvent("refresh",e)}};x.prototype._checkPathType=function(){var e=this.getResolvedPath();if(e){if(!this._mPathType||!this._mPathType[e]){this._mPathType={};var t=e.lastIndexOf("/");var s,i;if(t>1){i=this.oModel.oMetadata._getEntityTypeByPath(e.substring(0,t));if(i){s=this.oModel.oMetadata._getEntityAssociationEnd(i,e.substring(t+1));if(s&&s.multiplicity==="*"){this._mPathType[e]=true}}}else if(t===0){var a,n=e.substring(1);a=this.oModel.oMetadata._findEntitySetByName(n);if(a){this._mPathType[e]=true}else{var r=this.oModel.oMetadata._getFunctionImportMetadataByName(n);for(var o=0;o<r.length;o++){var h=r[o];if(h.entitySet){a=this.oModel.oMetadata._findEntitySetByName(h.entitySet);if(a){this._mPathType[e]=true}}}}}}return!!this._mPathType[e]}return true};x.prototype.initialize=function(){if(this.oModel.oMetadata&&this.oModel.oMetadata.isLoaded()&&this.bInitial&&!this._hasTransientParentWithoutSubContexts()){if(!this._checkPathType()){t.error("List Binding is not bound against a list for "+this.getResolvedPath(),undefined,b)}this.bInitial=false;this._initSortersFilters();if(!this.bSuspended){if(this.bDataAvailable){this._fireChange({reason:r.Change})}else{this.resetData();this._fireRefresh({reason:r.Refresh})}}this.checkDataState()}return this};x.prototype.checkUpdate=function(e,t){var a,n,o,h,l,d=false,u=this.sChangeReason?this.sChangeReason:r.Change,f=this._cleanupCreatedPersisted(),p=this;if(this.bSuspended&&!this.bIgnoreSuspend&&!e||this.bPendingRequest){return}if(this.bInitial){if(this.oContext&&this.oContext.isUpdated()){this.initialize()}return}this.bIgnoreSuspend=false;if(!e&&!this.bNeedsUpdate){l=this.aExpandRefs;h=this.aKeys.slice();o=this.checkExpandedList(true);if(!o&&this.useClientMode()){this.applyFilter();this.applySort()}if(!s(l,this.aExpandRefs)){d=true}else if(t){if(this.aKeys.length!==h.length){d=true}else{for(var c in t){if(this.aKeys.indexOf(c)>-1||h.indexOf(c)>-1){d=true;break}}}}else{d=true}if(d&&this.aLastContexts){d=false;a=this._getContexts(this.iLastStartIndex,this.iLastLength);if(this.aLastContexts.length!==a.length){d=true}else{i(this.aLastContextData,function(e,t){n=p.getContextData(a[e]);if(t!==n){d=true;return false}return true})}}}if(e||d||this.bNeedsUpdate||f){this.bNeedsUpdate=false;this._fireChange({reason:u})}this.sChangeReason=undefined};x.prototype.resetData=function(){this.aKeys=[];this.aAllKeys=null;this.iLength=0;this.bLengthFinal=this.oCombinedFilter===h.NONE||this._hasTransientParentContext()||!this.isResolved();this.sChangeReason=undefined;this.bDataAvailable=false;this.bLengthRequested=false;this.bThresholdRejected=false;if(this.sCountMode==g.None){this.bThresholdRejected=true}};x.prototype.abortPendingRequest=function(e,t){if(!a(this.mRequestHandles)){this.bSkipDataEvents=!t;i(this.mRequestHandles,function(e,t){t.abort()});if(e&&this.oCountHandle){this.oCountHandle.abort()}this.mRequestHandles={};this.bPendingRequest=false}};x.prototype.getDownloadUrl=function(e){var t=[],s;if(this.oCombinedFilter===h.NONE){return null}if(e){t.push("$format="+encodeURIComponent(e))}if(this.sSortParams){t.push(this.sSortParams)}else if(this.aSorters.length&&this.useClientMode()){t.push(y.createSortParams(this.aSorters))}if(this.sFilterParams){t.push(this.sFilterParams)}else if(this.oCombinedFilter&&this.useClientMode()){t.push(y.createFilterParams(this.oCombinedFilter,this.oModel.oMetadata,this.oEntityType))}if(this.sCustomParams){t.push(this.sCustomParams)}s=this.getResolvedPath();return s&&this.oModel._createRequestUrl(s,null,t)};x.prototype._moveCreatedPersistedToAllKeys=function(){var e=this,t=this._getCreatedPersistedContexts().map(function(t){return e.oModel.getKey(t)});if(t.length){this.aAllKeys=this.aAllKeys.concat(t);this._removePersistedCreatedContexts();return true}return false};x.prototype.sort=function(e,t){var s=false;this.bIgnoreSuspend=true;if(!e){e=[]}if(e instanceof p){e=[e]}this.aSorters=e;if(!this.useClientMode()){this.createSortParams(e)}if(!this.bInitial){this.addComparators(e,true);if(this.useClientMode()){if(this.aAllKeys){if(this._moveCreatedPersistedToAllKeys()||!e.length){this.applyFilter()}this.applySort();this._fireChange({reason:r.Sort})}else{this.sChangeReason=r.Sort}}else{this.iLength+=this._removePersistedCreatedContexts().length;this.aKeys=[];this.abortPendingRequest(false);this.sChangeReason=r.Sort;this._fireRefresh({reason:this.sChangeReason})}this._fireSort({sorter:e});s=true}if(t){return s}else{return this}};x.prototype.addComparators=function(s,i){var a,n,r=this.oEntityType,o;if(!r){t.warning("Cannot determine sort/filter comparators, as entity type of the collection is unknown!",undefined,b);return}s.forEach(function(t){if(t.aFilters){this.addComparators(t.aFilters)}else if(!t.fnCompare){a=this.oModel.oMetadata._getPropertyMetadata(r,t.sPath);n=a&&a.type;e(a,"PropertyType for property "+t.sPath+" of EntityType "+r.name+" not found!");o=y.getComparator(n);if(i){t.fnCompare=v(o)}else{t.fnCompare=o;R(n,t)}}}.bind(this))};function v(e){return function(t,s){if(t===s){return 0}if(t===null){return-1}if(s===null){return 1}return e(t,s)}}function R(e,t){switch(e){case"Edm.Decimal":case"Edm.Int64":if(typeof t.oValue1=="number"){t.oValue1=t.oValue1.toString()}if(typeof t.oValue2=="number"){t.oValue2=t.oValue2.toString()}break;case"Edm.Byte":case"Edm.Int16":case"Edm.Int32":case"Edm.SByte":if(typeof t.oValue1=="string"){t.oValue1=parseInt(t.oValue1)}if(typeof t.oValue2=="string"){t.oValue2=parseInt(t.oValue2)}break;case"Edm.Float":case"Edm.Single":case"Edm.Double":if(typeof t.oValue1=="string"){t.oValue1=parseFloat(t.oValue1)}if(typeof t.oValue2=="string"){t.oValue2=parseFloat(t.oValue2)}break;default:}}x.prototype.applySort=function(){var e=this,t;this.aKeys=c.apply(this.aKeys,this.aSorters,function(s,i){t=e.oModel.getContext("/"+s);return e.oModel.getProperty(i,t)})};x.prototype.createSortParams=function(e){this.sSortParams=y.createSortParams(e)};x.prototype.filter=function(e,t,s){var i=false;this.bIgnoreSuspend=true;if(!e){e=[]}if(e instanceof h){e=[e]}this.oModel.checkFilter(e);if(t===u.Application){this.aApplicationFilters=e}else{this.aFilters=e}if(!this.aFilters||!Array.isArray(this.aFilters)){this.aFilters=[]}if(!this.aApplicationFilters||!Array.isArray(this.aApplicationFilters)){this.aApplicationFilters=[]}this.convertFilters();this.oCombinedFilter=d.combineFilters(this.aFilters,this.aApplicationFilters);if(!this.useClientMode()&&this.oCombinedFilter!==h.NONE){this.createFilterParams(this.oCombinedFilter)}if(!this.bInitial){if(this.oCombinedFilter!==h.NONE){this.addComparators(this.aFilters);this.addComparators(this.aApplicationFilters)}if(this.useClientMode()){if(this.aAllKeys){this._moveCreatedPersistedToAllKeys();this.applyFilter();this.applySort();this._fireChange({reason:r.Filter})}else{this.sChangeReason=r.Filter}}else{this._removePersistedCreatedContexts();this.resetData();this.abortPendingRequest(true);this.sChangeReason=r.Filter;this._fireRefresh({reason:this.sChangeReason})}if(t===u.Application){this._fireFilter({filters:this.aApplicationFilters})}else{this._fireFilter({filters:this.aFilters})}i=true}if(s){return i}else{return this}};x.prototype.convertFilters=function(){this.aFilters=this.aFilters.map(function(e){return e instanceof C?e.convert():e});this.aApplicationFilters=this.aApplicationFilters.map(function(e){return e instanceof C?e.convert():e})};x.prototype.applyFilter=function(){var e=this,t;this.oCombinedFilter=d.combineFilters(this.aFilters,this.aApplicationFilters);this.aKeys=d.apply(this.aAllKeys,this.oCombinedFilter,function(s,i){t=e.oModel.getContext("/"+s);return e.oModel.getProperty(i,t)},this.mNormalizeCache);this.iLength=this.aKeys.length};x.prototype.createFilterParams=function(e){this.sFilterParams=y.createFilterParams(e,this.oModel.oMetadata,this.oEntityType)};x.prototype._initSortersFilters=function(){var e=this.getResolvedPath();if(!e){return}this.oEntityType=this._getEntityType();this.addComparators(this.aSorters,true);this.addComparators(this.aFilters);this.addComparators(this.aApplicationFilters);this.convertFilters();this.oCombinedFilter=d.combineFilters(this.aFilters,this.aApplicationFilters);if(!this.useClientMode()){this.createSortParams(this.aSorters);this.createFilterParams(this.oCombinedFilter)}};x.prototype._getEntityType=function(){var t=this.getResolvedPath();if(t){var s=this.oModel.oMetadata._getEntityTypeByPath(t);e(s,"EntityType for path "+t+" could not be found!");return s}return undefined};x.prototype.resume=function(){this.bIgnoreSuspend=false;this.bSuspended=false;if(this.bPendingRefresh){this._refresh()}else{this.checkUpdate()}};x.prototype.suspend=function(){if(this.bInitial){this.bPendingRefresh=true}f.prototype.suspend.apply(this,arguments)};x.prototype._checkDataStateMessages=function(e,t){if(t){e.setModelMessages(this.oModel.getMessagesByPath(this.sDeepPath,true))}};x.prototype._getFilterForPredicate=function(e){var t=[],s=e.slice(1,-1).split(","),i=this;s.forEach(function(e){var s=e.split("="),a=s[0],n=s[1];if(s.length===1){n=a;a=i.oModel.oMetadata.getKeyPropertyNamesByPath(i.sDeepPath)[0]}t.push(new h(a,l.EQ,y.parseValue(decodeURIComponent(n))))});if(t.length===1){return t[0]}return new h({and:true,filters:t})};x.prototype.create=function(e,t,s){var i,a,n,o={context:this.oContext,properties:e},h=this.isFirstCreateAtEnd();t=!!t;if(h===undefined){h=t}if(h&&!this.bLengthFinal){throw new Error("Must know the final length to create at the end")}Object.keys(s||{}).forEach(function(e){if(!P.includes(e)){throw new Error("Parameter '"+e+"' is not supported")}});if(this.bUseExpandedList){throw new Error("The collection has been read via $expand while reading the parent"+" entity")}if(!this.oModel.oMetadata.isLoaded()){throw new Error("Metadata is not loaded")}n=this.getResolvedPath();a=this.oModel._getCreatedContextsCache();Object.assign(o,s);if(!this._hasTransientParentContext()){o.refreshAfterChange=false;if(!("expand"in o)&&this.mParameters){o.expand=this.mParameters.expand}}i=this.oModel.createEntry(this.sPath,o);a.addContext(i,n,this.sCreatedEntitiesKey,t);if(o.inactive){i.fetchActivationStarted().then(this.fireCreateActivate.bind(this,i)).catch(this.oModel.getReporter(b))}this._fireChange({reason:r.Add});return i};x.prototype.requestFilterForMessages=function(e){var t=this.sDeepPath,s=null,i=[],a=new Set,n=this.getResolvedPath(),r=false,o=this;function l(e){return d.every(t=>!e.startsWith(t))}if(!n){return Promise.resolve(null)}const d=this._getCreatedContexts().map(e=>e.getDeepPath());this.oModel.getMessagesByPath(t,true).forEach(function(s){var i;if(!e||e(s)){s.aFullTargets.forEach(function(e){if(e.startsWith(t)){if(l(e)){i=e.slice(t.length).split("/")[0];if(i){a.add(i)}}else{r=true}}})}});a.forEach(function(e){i.push(o._getFilterForPredicate(e))});if(i.length===1){s=i[0]}else if(i.length>1){s=new h({filters:i})}else if(r){s=h.NONE}return Promise.resolve(s)};x.prototype.isFirstCreateAtEnd=function(){return this.oModel._getCreatedContextsCache().isAtEnd(this.getResolvedPath(),this.sCreatedEntitiesKey)};x.prototype._getCreatedContexts=function(){return this.oModel._getCreatedContextsCache().getContexts(this.getResolvedPath(),this.sCreatedEntitiesKey)};x.prototype._getSkipAndTop=function(e,t,s){var i,a,n=this._getCreatedContexts(),r=this.isFirstCreateAtEnd()===false,o=r&&this.aKeys.length?n.concat(this.aKeys):this.aKeys,h=this.bLengthFinal?this.iLength:undefined;if(r&&h){h+=n.length}a=y._getReadIntervals(o,e,t,s,h);i=y._mergeIntervals(a);if(i&&r&&this.aKeys.length){i.start-=n.length;i.end-=n.length}return i&&{skip:i.start,top:i.end-i.start}};x.prototype._removePersistedCreatedContexts=function(){return this.oModel._getCreatedContextsCache().removePersistedContexts(this.getResolvedPath(),this.sCreatedEntitiesKey)};x.prototype.getCount=function(){if(!this.isLengthFinal()){return undefined}return this.getLength()-this._getCreatedContexts().filter(function(e){return e.isInactive()}).length};x.prototype._hasTransientParentContext=function(){return this.isRelative()&&!!(this.oContext&&this.oContext.isTransient&&this.oContext.isTransient())};x.prototype._hasTransientParentWithoutSubContexts=function(){return this._hasTransientParentContext()&&!this._getCreatedContexts().length};x.prototype._isExpandedListUsable=function(){if(this.mCustomParams||this.sOperationMode===m.Server&&(this.aApplicationFilters.length>0||this.aFilters.length>0||this.aSorters.length>0)){return false}return true};x.prototype._refreshForSideEffects=function(e,t){var s=!this._hasTransientParentContext()&&e.has(this.oEntityType);if(s&&!this._isExpandedListUsable()){this.sRefreshGroupId=t;this._refresh();this.sRefreshGroupId=undefined}return s};x.prototype._reassignCreateActivate=function(){var e=this;this._getCreatedContexts().forEach(function(t){if(t.isInactive()){t.fetchActivationStarted().then(e.fireCreateActivate.bind(e,t)).catch(e.oModel.getReporter(b))}})};x.prototype.fireCreateActivate=function(e){if(!this.bIsBeingDestroyed){if(this.fireEvent("createActivate",{context:e},true)){e.finishActivation();this._fireChange({reason:r.Change})}else{e.cancelActivation();e.fetchActivationStarted().then(this.fireCreateActivate.bind(this,e)).catch(this.oModel.getReporter(b))}}};return x});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v2/ODataModel", ["./_CreatedContextsCache","./Context","./ODataAnnotations","./ODataContextBinding","./ODataListBinding","./ODataTreeBinding","sap/base/assert","sap/base/Log","sap/base/i18n/Localization","sap/base/security/encodeURL","sap/base/util/deepEqual","sap/base/util/deepExtend","sap/base/util/each","sap/base/util/extend","sap/base/util/isEmptyObject","sap/base/util/isPlainObject","sap/base/util/merge","sap/base/util/uid","sap/ui/base/SyncPromise","sap/ui/core/Messaging","sap/ui/core/message/Message","sap/ui/core/message/MessageParser","sap/ui/core/message/MessageType","sap/ui/core/Supportability","sap/ui/model/_Helper","sap/ui/model/BindingMode","sap/ui/model/Context","sap/ui/model/FilterProcessor","sap/ui/model/Model","sap/ui/model/odata/CountMode","sap/ui/model/odata/MessageScope","sap/ui/model/odata/ODataMetadata","sap/ui/model/odata/ODataMetaModel","sap/ui/model/odata/ODataMessageParser","sap/ui/model/odata/ODataPropertyBinding","sap/ui/model/odata/ODataUtils","sap/ui/model/odata/OperationMode","sap/ui/model/odata/UpdateMethod","sap/ui/thirdparty/datajs","sap/ui/thirdparty/URI","sap/ui/util/isCrossOriginURL"],function(e,t,a,r,s,n,i,o,d,u,h,f,c,p,l,g,y,_,m,v,b,C,R,P,q,M,E,S,A,T,x,U,D,I,O,k,H,w,B,L,F){"use strict";const G=false;var j="sap.ui.model.odata.v2.ODataModel",N=["context","properties"],$={},W=["groupId","urlParameters"];const K=/\/~[\w\-]+~[A-Z0-9]?\//;$[R.Error]=0;$[R.Warning]=1;$[R.Success]=2;$[R.Information]=3;$[R.None]=4;var z=A.extend("sap.ui.model.odata.v2.ODataModel",{constructor:function(t,r){A.apply(this,arguments);var s,n,i,o,u,h,f,c,p,l,g,y,_,m,v,b,C,R,q,E,S,D,I,O,B,L,G,j,N,$,W,K=this;if(typeof t==="object"){r=t;this.sServiceUrl=r.serviceUrl}else{this.sServiceUrl=t}this.mCodeListModelParams=this.createCodeListModelParameters(r);if(r){s=r.user;n=r.password;i=r.headers;o=r.tokenHandling;u=r.withCredentials;h=r.maxDataServiceVersion;f=r.useBatch;c=r.refreshAfterChange;p=r.annotationURI;l=r.loadAnnotationsJoined;_=r.defaultBindingMode;g=r.defaultCountMode;y=r.preliminaryContext;m=r.defaultOperationMode;v=r.metadataNamespaces;b=r.serviceUrlParams;C=r.metadataUrlParams;R=r.json;q=r.messageParser;E=r.skipMetadataAnnotationParsing;S=r.defaultUpdateMethod;D=r.disableHeadRequestForToken;I=r.sequentializeRequests;O=r.disableSoftStateHeader;B=r.bindableResponseHeaders;L=r.warmupUrl;G=r.canonicalRequests;j=r.tokenHandlingForGet;N=r.earlyTokenRequest;$=r.persistTechnicalMessages;W=r.ignoreAnnotationsFromMetadata}this.mPathCache={};this.mInvalidatedPaths={};this.bCanonicalRequests=!!G;this.bTokenHandlingForGet=!!j;this.sMessageScope=x.RequestedObjects;this.sWarmupUrl=L;this.bWarmup=!!L;this.mSupportedBindingModes={OneWay:true,OneTime:true,TwoWay:true};this.mUnsupportedFilterOperators={Any:true,All:true};this.sDefaultBindingMode=_||M.OneWay;this.bIsMessageScopeSupported=false;this.iPendingDeferredRequests=0;this.bJSON=R!==false;this.aPendingRequestHandles=[];this.aCallAfterUpdate=[];this.mRequests={};this.mDeferredRequests={};this.mChangedEntities={};this.mChangeHandles={};this.mDeferredGroups={};this.mLaunderingState={};S=z._fixUpdateMethod(S);this.sDefaultUpdateMethod=S||w.MERGE;this.bTokenHandling=o!==false;this.bWithCredentials=u===true;this.bUseBatch=f!==false;this.bRefreshAfterChange=c!==false;this.sMaxDataServiceVersion=h;this.bLoadAnnotationsJoined=l!==false;this.sAnnotationURI=p;this.pAnnotationChanges=null;this.sDefaultCountMode=g||T.Request;this.sDefaultOperationMode=m||H.Default;this.sMetadataLoadEvent=null;this.oMetadataFailedEvent=null;this.sRefreshGroupId=undefined;this.bIncludeInCurrentBatch=false;this.bSkipMetadataAnnotationParsing=!!E;this.bDisableHeadRequestForToken=!!D;this.bSequentializeRequests=!!I;this.bDisableSoftStateHeader=!!O;this.aBindableResponseHeaders=B?B:null;this.bPreliminaryContext=y||false;this.mMetadataUrlParams=C||{};this.mChangedEntities4checkUpdate={};this.bPersistTechnicalMessages=$===undefined?undefined:!!$;this.oCreatedContextsCache=new e;this.aSideEffectCleanUpFunctions=[];this.oTransitionMessagesOnlyGroups=new Set;this.bIgnoreAnnotationsFromMetadata=!!W;if(q){q.setProcessor(this)}this.oMessageParser=q;this.setDeferredGroups(["changes"]);this.setChangeGroups({"*":{groupId:"changes"}});this.oData={};this.oMetadata=null;this.oAnnotations=null;this.aUrlParams=[];this.fnRetryAfter=null;this.oRetryAfterError=null;this.pRetryAfter=null;this.pSequentialRequestCompleted=Promise.resolve();this.pReadyForRequest=Promise.resolve();var Q=this.sServiceUrl.split("?");if(Q.length>1){this.sServiceUrl=Q[0];if(Q[1]){this.aUrlParams.push(Q[1])}}this.sServiceUrl=this.sServiceUrl.replace(/\/$/,"");this.sUser=s;this.sPassword=n;if(P.isStatisticsEnabled()){this.aUrlParams.push("sap-statistics=true")}this.oHeaders={};this.setHeaders(i);if(!this.bDisableSoftStateHeader){this.oHeaders["sap-contextid-accept"]="header";this.mCustomHeaders["sap-contextid-accept"]="header"}this.sMetadataUrl=this.sWarmupUrl||this._createMetadataUrl("/$metadata");this.oSharedServerData=o==="skipServerCache"?undefined:z._getSharedData("server",this._getServerUrl());this.oSharedServiceData=z._getSharedData("service",this.sServiceUrl);this.oSharedMetaData=z._getSharedData("meta",this.sMetadataUrl);this.bUseCache=this._cacheSupported(this.sMetadataUrl);if(!this.oSharedMetaData.oMetadata||this.oSharedMetaData.oMetadata.bFailed){this.oMetadata=new U(this.sMetadataUrl,{async:true,cacheKey:this.bUseCache?this.sMetadataUrl:undefined,user:this.sUser,password:this.sPassword,headers:this.mCustomHeaders,namespaces:v,withCredentials:this.bWithCredentials});if(!this.bWarmup){this.oSharedMetaData.oMetadata=this.oMetadata}}else{this.oMetadata=this.oSharedMetaData.oMetadata}this.oAnnotations=new a(this.oMetadata,{source:this.sAnnotationURI,skipMetadata:this.bSkipMetadataAnnotationParsing||this.bIgnoreAnnotationsFromMetadata,headers:this.mCustomHeaders,combineEvents:true,cacheKey:this._getAnnotationCacheKey(this.sMetadataUrl),useCache:this.bUseCache});if(!this.bDisableSoftStateHeader){delete this.mCustomHeaders["sap-contextid-accept"]}this.oAnnotations.attachAllFailed(this.onAnnotationsFailed,this);this.oAnnotations.attachSomeLoaded(this.onAnnotationsLoaded,this);this.pAnnotationsLoaded=this.oAnnotations.loaded();if(b){this.aUrlParams=this.aUrlParams.concat(k._createUrlParamsArray(b))}this.onMetadataFailed=function(e){K.fireMetadataFailed(e.getParameters())};if(!this.oMetadata.isLoaded()){this.oMetadata.attachFailed(this.onMetadataFailed)}this.oMetadata.loaded().then(function(){K._initializeMetadata()});if(this.bJSON){if(this.sMaxDataServiceVersion==="3.0"){this.oHeaders["Accept"]="application/json;odata=fullmetadata"}else{this.oHeaders["Accept"]="application/json"}}else{this.oHeaders["Accept"]="application/atom+xml,application/atomsvc+xml,application/xml"}if(this.bTokenHandling){if(this.oSharedServiceData.securityToken){this.oHeaders["x-csrf-token"]=this.oSharedServiceData.securityToken}else if(this.oSharedServerData&&this.oSharedServerData.securityToken){this.oSharedServiceData.securityToken=this.oSharedServerData.securityToken;this.oHeaders["x-csrf-token"]=this.oSharedServiceData.securityToken}if(N){this.securityTokenAvailable()}}this.oHeaders["Accept-Language"]=d.getLanguageTag().toString();this.oHeaders["DataServiceVersion"]="2.0";this.oHeaders["MaxDataServiceVersion"]="2.0";if(this.sMaxDataServiceVersion){this.oHeaders["MaxDataServiceVersion"]=this.sMaxDataServiceVersion}if(!this.mCustomHeaders["X-Requested-With"]&&!F(this.sServiceUrl)){this.oHeaders["X-Requested-With"]="XMLHttpRequest"}},metadata:{publicMethods:["read","create","update","remove","submitChanges","getServiceMetadata","metadataLoaded","hasPendingChanges","getPendingChanges","refresh","refreshMetadata","resetChanges","setDefaultCountMode","setDefaultBindingMode","getDefaultBindingMode","getDefaultCountMode","setProperty","getSecurityToken","refreshSecurityToken","setHeaders","getHeaders","setUseBatch","setDeferredBatchGroups","getDeferredBatchGroups","setChangeBatchGroups","getChangeBatchGroups"],final:G}});z.M_EVENTS={MetadataLoaded:"metadataLoaded",MetadataFailed:"metadataFailed",AnnotationsLoaded:"annotationsLoaded",AnnotationsFailed:"annotationsFailed",BatchRequestFailed:"batchRequestFailed",BatchRequestSent:"batchRequestSent",BatchRequestCompleted:"batchRequestCompleted"};z.prototype.attachBatchRequestFailed=function(e,t,a){this.attachEvent("batchRequestFailed",e,t,a);return this};z.prototype.detachBatchRequestFailed=function(e,t){this.detachEvent("batchRequestFailed",e,t);return this};z.prototype.fireBatchRequestFailed=function(e){this.fireEvent("batchRequestFailed",e);return this};z.prototype.attachBatchRequestSent=function(e,t,a){this.attachEvent("batchRequestSent",e,t,a);return this};z.prototype.detachBatchRequestSent=function(e,t){this.detachEvent("batchRequestSent",e,t);return this};z.prototype.fireBatchRequestSent=function(e){this.fireEvent("batchRequestSent",e);return this};z.prototype.attachBatchRequestCompleted=function(e,t,a){this.attachEvent("batchRequestCompleted",e,t,a);return this};z.prototype.detachBatchRequestCompleted=function(e,t){this.detachEvent("batchRequestCompleted",e,t);return this};z.prototype.fireBatchRequestCompleted=function(e){this.fireEvent("batchRequestCompleted",e);return this};z.mSharedData={server:{},service:{},meta:{}};z._fixUpdateMethod=function(e){if(e==="Put"){return w.PUT}else if(e==="Merge"){return w.MERGE}return e};z._getSharedData=function(e,t){var a=this.mSharedData[e][t];if(!a){a={};this.mSharedData[e][t]=a}return a};z.prototype._initializeMetadata=function(){if(this.bDestroyed){return}this.bIsMessageScopeSupported=this.oMetadata._isMessageScopeSupported();var e=function(){this.fireMetadataLoaded({metadata:this.oMetadata});o.debug(this+" - metadataloaded fired")}.bind(this);this.initialize();if(this.bLoadAnnotationsJoined){this.oAnnotations.loaded().then(e,this.fireMetadataFailed.bind(this))}else{e()}};z.prototype.refreshMetadata=function(){if(this.oMetadata&&this.oMetadata.refresh){return this.oMetadata.refresh()}return undefined};z.prototype.fireAnnotationsLoaded=function(e){this.fireEvent("annotationsLoaded",e);return this};z.prototype.attachAnnotationsLoaded=function(e,t,a){this.attachEvent("annotationsLoaded",e,t,a);return this};z.prototype.detachAnnotationsLoaded=function(e,t){this.detachEvent("annotationsLoaded",e,t);return this};z.prototype.fireAnnotationsFailed=function(e){this.fireEvent("annotationsFailed",e);o.debug(this+" - annotationsfailed fired");return this};z.prototype.attachAnnotationsFailed=function(e,t,a){this.attachEvent("annotationsFailed",e,t,a);return this};z.prototype.detachAnnotationsFailed=function(e,t){this.detachEvent("annotationsFailed",e,t);return this};z.prototype.fireMetadataLoaded=function(e){this.fireEvent("metadataLoaded",e);return this};z.prototype.attachMetadataLoaded=function(e,t,a){this.attachEvent("metadataLoaded",e,t,a);return this};z.prototype.detachMetadataLoaded=function(e,t){this.detachEvent("metadataLoaded",e,t);return this};z.prototype.fireMetadataFailed=function(e){this.fireEvent("metadataFailed",e);return this};z.prototype.attachMetadataFailed=function(e,t,a){this.attachEvent("metadataFailed",e,t,a);return this};z.prototype.detachMetadataFailed=function(e,t){this.detachEvent("metadataFailed",e,t);return this};z.prototype._createEventInfo=function(e,t,a){var r,s,n={};n.url=e.requestUri;n.method=e.method;n.async=e.async;n.headers=e.headers;if(a){n.requests=[];for(var i=0;i<a.length;i++){s={};if(Array.isArray(a[i])){var o=a[i];for(var d=0;d<o.length;d++){e=o[d].request;r=a[i][d].response;s={};s.url=e.requestUri;s.method=e.method;s.headers=e.headers;if(r){s.response={};if(e._aborted){s.success=false;s.response.statusCode=0;s.response.statusText="abort"}else{s.success=true;if(r.message){s.response.message=r.message;r=r.response;s.response.responseText=r.body;s.success=false}s.response.headers=r.headers;s.response.statusCode=r.statusCode;s.response.statusText=r.statusText}}n.requests.push(s)}}else{e=a[i].request;r=a[i].response;s.url=e.requestUri;s.method=e.method;s.headers=e.headers;if(r){s.response={};if(e._aborted){s.success=false;s.response.statusCode=0;s.response.statusText="abort"}else{s.success=true;if(r.message){s.response.message=r.message;r=r.response;s.response.responseText=r.body;s.success=false}s.response.headers=r.headers;s.response.statusCode=r.statusCode;s.response.statusText=r.statusText}}n.requests.push(s)}}}if(t){n.response={};n.success=true;if(t.message){n.response.message=t.message;n.success=false}if(t.response){t=t.response}if(t&&t.statusCode!=undefined){n.response.headers=t.headers;n.response.statusCode=t.statusCode;n.response.statusText=t.statusText;n.response.responseText=t.body!==undefined?t.body:t.responseText;if(t.expandAfterCreateFailed){n.response.expandAfterCreateFailed=true}if(t.expandAfterFunctionCallFailed){n.response.expandAfterFunctionCallFailed=true}}}n.ID=e.requestID;return n};z.prototype._createRequestID=function(){var e;e=_();return e};z.prototype._getServerUrl=function(){var e,t;e=new L(this.sServiceUrl).absoluteTo(document.baseURI);t=new L("/").absoluteTo(e).toString();return t};z.prototype._createMetadataUrl=function(e){if(e.indexOf(this.sServiceUrl)==-1){if(!e.startsWith("/")){e="/"+e}e=this.sServiceUrl+e}var t=Object.assign({},this.mMetadataUrlParams);const a=new URL(e,"https://localhost").searchParams;for(const[e]of a){t[e]=a.get(e)}var r=k._createUrlParamsArray(t);var s=e.split("?");if(s.length>1){e=s[0]}return this._addUrlParams(e,r)};z.prototype._addUrlParams=function(e,t){var a=[];if(this.aUrlParams){a=a.concat(this.aUrlParams)}if(t){a=a.concat(t)}if(a.length>0){e+="?"+a.join("&")}return e};z.prototype._createRequestUrl=function(e,t,a,r){return this._createRequestUrlWithNormalizedPath(this._normalizePath(e,t),a,r)};z.prototype._createRequestUrlWithNormalizedPath=function(e,t,a){var r="";if(!a){r=this.sServiceUrl+e}else{r=e.substr(e.indexOf("/")+1)}return this._addUrlParams(r,t)};z.prototype._importData=function(e,t,a,r,s,n,i,o,d,u){var h=this,f,p,g,y;s=s||"";i=i||"";if(e.results&&Array.isArray(e.results)){f=[];c(e.results,function(e,r){var i=h._getKey(r);i=h._importData(r,t,a,undefined,s.substr(0,s.lastIndexOf("/")),n,i,undefined,undefined,u);if(i){f.push(i)}});return f}else{if(i){s="/"+i;n+=i.substr(i.indexOf("("))}else{i=this._getKey(e)}if(!i){return i}g=this._getEntity(i);y=g;if(!g||g.__metadata&&g.__metadata.invalid){if(!y){y=e}g=e;i=this._addEntity(g)}if(this.aBindableResponseHeaders){var _={};for(var m in a.headers){var v=m.toLowerCase();if(this.aBindableResponseHeaders.indexOf(v)>-1){_[v]=a.headers[m]}}if(!l(_)){if(!e.__metadata){e.__metadata={}}e.__metadata.headers=_}}c(e,function(e,r){if(r&&(r.__metadata&&r.__metadata.uri||r.results)&&!r.__deferred){var o=s+"/"+e;var d=n+"/"+e;p=h._importData(r,t,a,undefined,o,d,undefined,false,"/"+i+"/"+e,u);if(Array.isArray(p)){g[e]={__list:p};if(u){g[e].__list.sideEffects=true;h.aSideEffectCleanUpFunctions.push(function(){delete g[e]})}}else{if(y[e]&&y[e].__ref){if(y[e].__ref!==p){h.mInvalidatedPaths[s.substr(s.lastIndexOf("("))+"/"+e]="/"+p}}g[e]={__ref:p}}}else if(!r||!r.__deferred){if(y[e]&&r===null){h.mInvalidatedPaths[s.substr(s.lastIndexOf("("))+"/"+e]=null}g[e]=r}});if(this.hasContext("/"+i)&&this.getContext("/"+i).isPreliminary()){var b=this.getContext("/"+i);b.setUpdated(true);this.callAfterUpdate(function(){b.setUpdated(false)});b.setPreliminary(false)}if(r&&r.created&&r.key){this._cleanupAfterCreate(r,i)}this._updateChangedEntity(i,g);t[i]=true;s=s||"/"+i;n=n||s;var C=this.resolveFromCache(n);if(C==="/"+i||C&&C.split("/").length>2){this._writePathCache(C,"/"+i,o)}this._writePathCache(s,"/"+i,o);this._writePathCache(n,"/"+i,o,true);if(d){this._writePathCache(d,"/"+i,o)}return i}};z.prototype._writePathCache=function(e,t,a,r){var s,n,i,o,d,u;if(e&&t){if(!this.mPathCache[e]){this.mPathCache[e]={}}if(!a&&e.lastIndexOf("/")===0){t=e}this.mPathCache[e].canonicalPath=t;if(r){d=e.split("/");for(u=3;u<d.length;u+=1){i=d.slice(0,u).join("/");o=this.mPathCache[i];if(o){s=o.canonicalPath+e.slice(i.length);n=this.mPathCache[s];if(n){n.canonicalPath=t}}}}}};z.prototype._removeReferences=function(e){var t=this,a;if(!e){return e}if(e.results){a=[];c(e.results,function(e,r){a.push(t._removeReferences(r))});return a}else{c(e,function(t,a){if(a){if(a["__ref"]||a["__list"]){delete e[t]}}});return e}};z.prototype._restoreReferences=function(e,t){var a=this,r,s,n;function o(e){var r=t[e];if(!r){r=a._getObject("/"+e);i(r,"ODataModel inconsistent: "+e+" not found!");if(r){r=y({},r);t[e]=r;a._restoreReferences(r,t)}}return r}if(!t){t={}}c(e,function(t,a){if(a){if(a.__ref){r=a.__ref;s=o(r);if(s){e[t]=s}delete a.__ref}else if(a.__list){n=[];c(a.__list,function(e,t){s=o(t);if(s){n.push(s)}});delete a.__list;a.results=n}}});return e};z.prototype.removeData=function(){this.oData={}};z.prototype.initialize=function(){var e=this.getBindings();e.forEach(function(e){e.initialize()})};z.prototype.getServiceUrl=function(){return this.sServiceUrl};z.prototype.invalidate=function(e){var t;for(var a in this.oData){t=this.oData[a];if(!e||e(a,t)){t.__metadata.invalid=true}}};z.prototype.invalidateEntry=function(e){var t;if(typeof e==="string"){if(e.indexOf("/")===0){t=this._getObject(e)}else{t=this.oData[e]}}else if(e instanceof E){t=this._getObject(e.getPath())}if(t&&t.__metadata){t.__metadata.invalid=true}};z.prototype.invalidateEntityType=function(e){var t;for(var a in this.oData){t=this.oData[a];if(t.__metadata.type===e){t.__metadata.invalid=true}}};z.prototype.refresh=function(e,t,a){if(typeof e==="string"){a=e;e=false;t=false}if(t){this.removeData()}this._refresh(e,a)};z.prototype._refresh=function(e,t,a,r){var s=this.getBindings();this.sRefreshGroupId=t;s.forEach(function(t){t._refresh(e,a,r)});this.sRefreshGroupId=undefined};z.prototype.checkUpdate=function(e,t,a,r){if(t){this.bForceUpdate=this.bForceUpdate||e;Object.assign(this.mChangedEntities4checkUpdate,a);if(!this.sUpdateTimer){this.sUpdateTimer=setTimeout(function(){this.checkUpdate(this.bForceUpdate,false,this.mChangedEntities4checkUpdate)}.bind(this),0)}return}e=this.bForceUpdate||e;if(this.sUpdateTimer){clearTimeout(this.sUpdateTimer);this.sUpdateTimer=null;this.bForceUpdate=undefined;this.mChangedEntities4checkUpdate={}}var s=this.getBindings();s.forEach(function(t){if(!r||this.isMetaModelPath(t.getPath())){t.checkUpdate(e,a)}}.bind(this));this._processAfterUpdate()};z.prototype.checkDataState=function(e){var t=this.getBindings();t.forEach(function(t){if(t.checkDataState){t.checkDataState(e)}})};z.prototype.bindProperty=function(e,t,a){var r=new O(this,e,t,a);return r};z.prototype.bindList=function(e,t,a,r,n){var i=new s(this,e,t,a,r,n);return i};z.prototype.bindTree=function(e,t,a,r,s){var i=new n(this,e,t,a,r,s);return i};z.prototype.createBindingContext=function(e,t,a,r,s){var n,i,o,d,u,h,f,c,p,l=this;if(t!==null&&typeof t==="object"&&!(t instanceof E)){s=r;r=a;a=t;t=undefined}if(typeof t=="function"){s=a;r=t;a=undefined;t=undefined}if(typeof t=="boolean"){s=t;r=undefined;a=undefined;t=undefined}if(typeof a=="function"){s=r;r=a;a=undefined}if(typeof a=="boolean"){s=a;r=undefined;a=undefined}if(typeof r=="boolean"){s=r;r=undefined}if(a){n=a.canonicalRequest}n=this._isCanonicalRequestNeeded(n);p=this.resolve(e,t,n);if(!p&&n){p=this.resolve(e,t)}d=this.resolveDeep(e,t);if(!p){if(r){r(null)}return null}if(s===undefined){s=this._isReloadNeeded(p,a)}if(!s){i=this.resolve(e,t,true);if(i){f=this.getContext(i,d)}else{f=null}if(r){r(f)}return f}function g(a){var s=a?l._getKey(a):null,n=!(e===""||e.indexOf("/")>0),i=null,o,u;f=null;if(s){f=l.getContext("/"+s,d);i={__ref:s}}if(t&&h&&n){o=t.getPath();o=o.substr(1);u=l._getEntity(o);if(u){u[e]=i}}r(f)}function y(a){var s;if(a.statusCode=="404"&&t&&h){var n=t.getPath();n=n.substr(1);s=l._getEntity(n);if(s){s[e]={__ref:null}}}r(null)}if(r){h=!e.startsWith("/");c=[];o=this.createCustomParams(a);if(o){c.push(o)}if(a&&(a.batchGroupId||a.groupId)){u=a.groupId||a.batchGroupId}this.read(e,{canonicalRequest:n,context:t,error:y,groupId:u,success:g,updateAggregatedMessages:true,urlParameters:c})}if(a&&a.createPreliminaryContext){p=this.resolve(e,t,n);if(!p&&n){p=this.resolve(e,t)}f=this.getContext(p,d);return f}return undefined};z.prototype._updateContext=function(e,t,a){e.sPath=t;if(a!==undefined){e.sDeepPath=a}this.mContexts[t]=e};z.prototype._splitEntries=function(e){return e.replace(/\s/g,"").split(",").map(function(e){return e.split("/")})};z.prototype._filterOwnSelect=function(e,t){var a,r;if(!t){return[]}r=t.map(function(e){return e.name});a=e.filter(function(e){return e.length===1}).map(function(e){return e[0]});if(e.length===0||a.indexOf("*")!==-1||a.indexOf("**")!==-1){return r}else{return a.filter(function(e){return r.indexOf(e)!==-1})}};z.prototype._filterOwnExpand=function(e,t){return e.map(function(e){return e[0]}).filter(function(e,t,a){return a.indexOf(e)===t}).filter(function(e){return t.length===0||t.some(function(t){return t.indexOf(e)===0||t.indexOf("**")===0})})};z.prototype._filterSelectByNavProp=function(e,t){return e.filter(function(e){return e[0]===t}).map(function(e){return e.length>1?e.slice(1):["**"]})};z.prototype._filterExpandByNavProp=function(e,t){return e.filter(function(e){return e.length>1&&e[0]===t}).map(function(e){return e.slice(1)})};z.prototype._isReloadNeeded=function(e,t){var a=this,r=this.oMetadata,s,n=[],i=[];if(!this.oMetadata.isLoaded()){return true}var o;if(t){o=t.canonicalRequest}o=this._isCanonicalRequestNeeded(o);if(o){e=this.resolve(e,undefined,o)||e}var d=this._getObject(e);s=this.oMetadata._getEntityTypeByPath(e);if(this._isCreatedEntity(d)){return false}function u(e,t,s,n){var i,o,d,h,f,c,p,l,g,y;if(!e){return false}if(t===null){return false}if(!t){return true}if(t.__metadata&&t.__metadata.invalid){return true}g=a._filterOwnSelect(s,e.property);for(o=0;o<g.length;o++){y=g[o];if(t[y]===undefined){return true}}l=a._filterOwnExpand(n,s);for(o=0;o<l.length;o++){i=l[o];d=t[i];if(d===null){continue}if(d===undefined||d.__deferred){return true}f=r._getEntityTypeByNavProperty(e,i);p=a._filterSelectByNavProp(s,i);c=a._filterExpandByNavProp(n,i);if(d.__ref){h=a._getEntity(d.__ref);if(u(f,h,p,c)){return true}}if(d.__list){for(var _=0;_<d.__list.length;_++){h=a._getEntity(d.__list[_]);if(u(f,h,p,c)){return true}}}}return false}if(t){if(t.select){i=this._splitEntries(t.select)}if(t.expand){n=this._splitEntries(t.expand)}}return u(s,d,i,n)};z.prototype.createCustomParams=function(e){var t=[],a,r={expand:true,select:true};for(var s in e){if(s in r){t.push("$"+s+"="+u(e[s]))}if(s==="custom"){a=e[s];for(s in a){if(s.indexOf("$")===0){o.warning(this+" - Trying to set OData parameter '"+s+"' as custom query option!")}else if(typeof a[s]==="string"){t.push(s+"="+u(a[s]))}else{t.push(s)}}}}return t.join("&")};z.prototype.bindContext=function(e,t,a){var s=new r(this,e,t,a);return s};z.prototype.setDefaultCountMode=function(e){this.sDefaultCountMode=e};z.prototype.getDefaultCountMode=function(){return this.sDefaultCountMode};z.prototype._addEntity=function(e){var t=this._getKey(e);this.oData[t]=e;return t};z.prototype._removeEntity=function(e){e=e&&k._normalizeKey(e);delete this.oData[e];delete this.mChangedEntities[e];delete this.mContexts["/"+e]};z.prototype._getEntity=function(e){var t=this.oData[e];if(!t){e=e&&k._normalizeKey(e);t=this.oData[e]}return t};z.prototype._getKey=function(e){var t,a;if(e instanceof E){t=e.getPath().substr(1)}else if(e&&e.__metadata&&e.__metadata.uri){a=e.__metadata.uri;t=a.substr(a.lastIndexOf("/")+1)}else if(typeof e==="string"){t=e.substr(e.lastIndexOf("/")+1)}if(!this.oData[t]){t=t&&k._normalizeKey(t)}return t};z.prototype.getKey=function(e){return this._getKey(e)};z.prototype.createKey=function(e,t){var a=this.oMetadata._getEntityTypeByPath(e),r=e,s=this,n,o;i(a,'Could not find entity type of collection "'+e+'" in service metadata!');r+="(";if(a.key.propertyRef.length===1){n=a.key.propertyRef[0].name;i(n in t,'Key property "'+n+'" is missing in object!');o=this.oMetadata._getPropertyMetadata(a,n);r+=encodeURIComponent(k.formatValue(t[n],o.type))}else{c(a.key.propertyRef,function(e,d){if(e>0){r+=","}n=d.name;i(n in t,'Key property "'+n+'" is missing in object!');o=s.oMetadata._getPropertyMetadata(a,n);r+=n;r+="=";r+=encodeURIComponent(k.formatValue(t[n],o.type))})}r+=")";return r};z.prototype.getProperty=function(e,t,a){var r=this._getObject(e,t);if(!a){return r}if(!g(r)){return r}r=y({},r);if(a===true){return this._restoreReferences(r)}else{return this._removeReferences(r)}};z.prototype.getObject=function(e,t,a){if(g(t)){a=t;t=undefined}var r=this,s=this.resolve(e,t),n=this._getObject(s),i=this.oMetadata._getEntityTypeByPath(s),d=[],u=[];if(!i||!g(n)||!n.__metadata||!n.__metadata.uri){return n}if(!a||!(a.select||a.expand)){return y({},n)}function h(e,t,a,s){var n,i,d,u,f,c,p,l,g,y,_,m,v,b;if(!t){return undefined}if(!e){return undefined}_=r._filterOwnSelect(a,e.property);v={};for(i=0;i<_.length;i++){b=_[i];if(t[b]!==undefined||t.__metadata.created){v[b]=t[b]}else{o.fatal("No data loaded for select property: "+b+" of entry: "+r.getKey(t));return undefined}}if(t.__metadata){v.__metadata=t.__metadata}g=r._filterOwnExpand(s,a);for(i=0;i<g.length;i++){n=g[i];d=t[n];u=r.oMetadata._getEntityTypeByNavProperty(e,n);p=r._filterSelectByNavProp(a,n);f=r._filterExpandByNavProp(s,n);if(d&&d.__ref){c=r._getObject("/"+d.__ref);l=h(u,c,p,f);if(l!==undefined){v[n]=l}else{o.fatal("No data loaded for expand property: "+n+" of entry: "+r.getKey(l));return undefined}}if(d&&d.__list){m=[];for(var C=0;C<d.__list.length;C++){c=r._getObject("/"+d.__list[C]);l=h(u,c,p,f);if(l!==undefined){m.push(l)}else{o.fatal("No data loaded for expand property: "+n+" of entry: "+r.getKey(l));return undefined}}v[n]=m}}y=r._filterOwnSelect(a,e.navigationProperty);for(var R=0;R<y.length;R++){n=y[R];if(g.indexOf(n)===-1){var P=v.__metadata.uri+"/"+n;v[n]={__deferred:{uri:P}}}}return v}if(a.select){u=this._splitEntries(a.select)}if(a.expand){d=this._splitEntries(a.expand)}n=h(i,n,u,d);return n};z.prototype._getObject=function(e,t,a,r){var s,n,i,o,d,u,h,f,c,p,l,_=r?undefined:null;let m=_;if(this.isLegacySyntax()){m=this.oData}p=this.resolve(e,t,this.bCanonicalRequests);if(!p&&this.bCanonicalRequests){p=this.resolve(e,t)}if(!p){return m}if(e&&e.startsWith("@$ui5.")){return this._getInstanceAnnotationValue(e,t)}if(this._isMetadataPath(p)){if(this.oMetadata&&this.oMetadata.isLoaded()){if(this.isMetaModelPath(p)){h=this.getMetaModel();i=D.getCodeListTerm(p);if(i){n=h.fetchCodeList(i);if(n.isFulfilled()){return n.getResult()}if(n.isRejected()){n.caught()}return undefined}if(!this.bMetaModelLoaded){return null}l=p.indexOf("/##");o=p.substr(0,l);f=p.substr(l+3);u=h.getMetaContext(o);m=h.getProperty(f,u)}else{m=this.oMetadata._getAnnotation(p)}}else if(D.getCodeListTerm(p)){return undefined}}else{if(p==="/"){return this.oData}var v=p.split("/"),b=0;d=v[1];v.splice(0,2);s=this.mChangedEntities[d];c=this._getEntity(d);m=a?c:s||c;while(m&&v[b]){var C=s&&s.hasOwnProperty(v[b]);s=s&&s[v[b]];c=c&&c[v[b]];m=a||!C?c:s;if(m){if(m.__ref){s=this.mChangedEntities[m.__ref];c=this._getEntity(m.__ref);m=a?c:s||c}else if(m.__list){m=m.__list}else if(m.__deferred){m=undefined}}b++}}if(g(s)){m=a?c:y({},c,s)}return m};z.prototype._getInstanceAnnotationValue=function(e,t){if(e==="@$ui5.context.isInactive"){return t.isInactive()}if(e==="@$ui5.context.isTransient"){return t.isTransient()}throw new Error("Unsupported instance annotation: "+e)};z.prototype.updateSecurityToken=function(){if(this.bTokenHandling){if(!this.oSharedServiceData.securityToken){this.refreshSecurityToken()}if(this.bTokenHandling){this.oHeaders["x-csrf-token"]=this.oSharedServiceData.securityToken}}};z.prototype.resetSecurityToken=function(){delete this.oSharedServiceData.securityToken;delete this.oHeaders["x-csrf-token"];delete this.pSecurityToken};z.prototype.getSecurityToken=function(){var e=this.oSharedServiceData.securityToken;if(!e){this.refreshSecurityToken();e=this.oSharedServiceData.securityToken}return e};z.prototype.securityTokenAvailable=function(){if(!this.pSecurityToken){if(this.oSharedServiceData.securityToken){this.pSecurityToken=Promise.resolve(this.oSharedServiceData.securityToken)}else{this.pSecurityToken=new Promise(function(e,t){this.refreshSecurityToken(function(){e(this.oSharedServiceData.securityToken)}.bind(this),function(e){t(e)},true)}.bind(this))}}return this.pSecurityToken};z.prototype.refreshSecurityToken=function(e,t,a){var r,s,n=this,i={abort:function(){if(n.pRetryAfter){throw new Error("abort() during HTTP 503 'Retry-after' processing not supported")}this.request.abort()}},o=this._createRequestUrlWithNormalizedPath("/");function d(t,a){if(a){s=n._getHeader("x-csrf-token",a.headers);n._setSessionContextIdHeader(n._getHeader("sap-contextid",a.headers));if(s){if(n.oSharedServerData){n.oSharedServerData.securityToken=s}n.oSharedServiceData.securityToken=s;n.pSecurityToken=Promise.resolve(s);n.oHeaders["x-csrf-token"]=s}else{n.resetSecurityToken();n.bTokenHandling=false}}if(e){e(t,a)}}function u(e){if(e.$rejected){n.resetSecurityToken();t(e);return}n.resetSecurityToken();n.bTokenHandling=false;n._handleError(e,r);if(t){t(e)}}function h(e){if(e.$rejected){n.resetSecurityToken();t(e);return}i.request=f("GET",u)}function f(e,t){r=n._createRequest(o,"",e,n._getHeaders(undefined,true),null,null,!!a);r.headers["x-csrf-token"]="Fetch";return n._request(r,d,t,undefined,undefined,n.getServiceMetadata())}if(this.bDisableHeadRequestForToken){i.request=f("GET",u)}else{i.request=f("HEAD",h)}return i};z.prototype.checkAndProcessRetryAfterError=function(e,t,a,r,s,n,i,o,d){if(t.response?.statusCode===503&&this._getHeader("retry-after",t.response.headers)&&this.fnRetryAfter&&!this.bSequentializeRequests){if(!this.pRetryAfter){this.oRetryAfterError=this.createRetryAfterError(t);this.pRetryAfter=this.fnRetryAfter(this.oRetryAfterError)}this.pRetryAfter.then(()=>{this.pRetryAfter=this.oRetryAfterError=null;o.abort=this._request(e,a,r,s,n,i,d).abort},e=>{this.pRetryAfter=null;this.onRetryAfterRejected(r,t,e)});return true}return false};z.prototype.createRetryAfterError=function(e){const t=new Error(e.message);const a=this._getHeader("retry-after",e.response.headers);const r=parseInt(a);t.retryAfter=new Date(Number.isNaN(r)?a:Date.now()+r*1e3);return t};z.prototype.onRetryAfterRejected=function(e,t,a){if(this.bDestroyed){return}const r=a?.message?"Retry-After handler rejected with: "+a.message:"Retry-After handler rejected w/o reason";if(t){t.$rejected=true;if(this.oRetryAfterError!==a){t.$ownReason=true;t.$reported=true;o.error(r,a?.stack,j)}}e(t||{$ownReason:true,$rejected:true,$reported:true,message:r})};z.prototype._submitRequest=function(e,t,a){var r=this,s,n,i,o,d;o=new Promise(function(e,t){d=e});function u(e,a){if(t){t(e,a)}r.aSideEffectCleanUpFunctions.forEach(function(e){e()});r.aSideEffectCleanUpFunctions=[];d()}function h(t){if(r.bTokenHandling&&t.response){var s=r._getHeader("x-csrf-token",t.response.headers);if(!e.bTokenReset&&t.response.statusCode=="403"&&s&&s.toLowerCase()==="required"){r.resetSecurityToken();e.bTokenReset=true;p();return}}if(a){a(t)}d()}function f(e){if(r.bTokenHandling&&(e.method!=="GET"||r.bTokenHandlingForGet)){r.pReadyForRequest=r.securityTokenAvailable()}return r.pReadyForRequest}function p(){if(r.bTokenHandling){delete e.headers["x-csrf-token"]}f(e).then(function(t){if(r.bTokenHandling&&(e.method!=="GET"||r.bTokenHandlingForGet)){e.headers["x-csrf-token"]=t}g()},function(e){if(e.$rejected){h(e);return}g()})}function l(e,t,a){var s,n=t.eventInfo.requests;if(n){c(n,function(t,a){if(Array.isArray(a)){a.forEach(function(t){c(t.parts,function(a,n){s=r._createEventInfo(t.request,n.fnError);r["fireRequest"+e](s)})})}else if(a.parts){c(a.parts,function(t,n){s=r._createEventInfo(a.request,n.fnError);r["fireRequest"+e](s)})}else{s=r._createEventInfo(a.request,a.fnError);r["fireRequest"+e](s)}});if(t.eventInfo.batch){s=r._createEventInfo(t,a,n);r["fireBatchRequest"+e](s)}}}function g(){if(r.sSessionContextId){e.headers["sap-contextid"]=r.sSessionContextId}n=r._request(e,u,h,s,undefined,r.getServiceMetadata());if(e.eventInfo){l("Sent",e,null);delete e.eventInfo}if(i&&n){n.abort()}}s=r._getODataHandler(e.requestUri);if(this.bSequentializeRequests){this.pSequentialRequestCompleted.then(function(){p()});this.pSequentialRequestCompleted=o}else{p()}return{abort:function(){if(n){n.abort()}i=true}}};z.prototype._setSessionContextIdHeader=function(e){if(e){this.sSessionContextId=e}};z.prototype._submitSingleRequest=function(e){var t=this,a,r={},s={},n={};function i(a,i){if(a===undefined&&i.statusCode===200){o({message:"Response did not contain a valid OData result",response:i});return}function d(a,i){for(var o=0;o<e.parts.length;o++){if(e.parts[o].request._aborted){t._processAborted(e.parts[o].request,i)}else if(e.parts[o].fnSuccess){e.parts[o].fnSuccess(a,i)}}if(e.request.requestUri.indexOf("$count")===-1){t.checkUpdate(false,false,s);if(e.bRefreshAfterChange){t._refresh(false,undefined,r,n)}}}t._processSuccess(e.request,i,d,s,r,n);t._invalidatePathCache();t._setSessionContextIdHeader(t._getHeader("sap-contextid",i.headers))}function o(a){var r;if(a.message=="Request aborted"){for(r=0;r<e.parts.length;r++){t._processAborted(e.parts[r].request,a)}}else{for(r=0;r<e.parts.length;r++){t._processError(e.parts[r].request,a,e.parts[r].fnError)}}t._processAfterUpdate()}e.request.eventInfo={requests:e.parts,batch:false};a=this._submitRequest(e.request,i,o);return a};z.prototype._submitBatchRequest=function(e,t,a,r){var s=this,n={},i={},o={},d={};function u(e,t,a){var r,u,h;for(h=0;h<e.parts.length;h++){var f,c;if(a||e.parts[h].request._aborted){s._processAborted(e.parts[h].request,t)}else if(t.message){s._processError(e.parts[h].request,t,e.parts[h].fnError)}else{if(e.request.contentID){r=e.request.contentID;if(e.request.created||e.request.functionMetadata){u=s._getKey(t.data);i[r]={key:u,functionImport:!!e.request.functionMetadata,deepPath:e.request.deepPath.replace("('"+r+"')",u.slice(u.indexOf("(")))}}else{u=i[r].key;if(i[r].functionImport){f=e.request.deepPath;c=e.request.requestUri}e.request.requestUri=e.request.requestUri.replace("$"+r,u);e.request.deepPath=i[r].deepPath}}s._processSuccess(e.parts[h].request,t,e.parts[h].fnSuccess,o,n,d,false,undefined,i);if(c){e.request.deepPath=f;e.request.requestUri=c}}}}function h(r,i){if(r===undefined&&i.statusCode===200){f({message:"Response did not contain a valid OData batch result",response:i});return}var h,c,p,l=r.__batchResponses;if(l){var g,y;for(g=0;g<l.length;g++){h=l[g];if(Array.isArray(t[g])){if(h.message){for(y=0;y<t[g].length;y++){h.$reported=false;c=t[g][y];u(c,h);c.response=h}}else{p=h.__changeResponses;for(y=0;y<p.length;y++){var _=p[y];c=t[g][y];u(c,_);c.response=_}}}else{c=t[g];u(c,h);c.response=h}}s._invalidatePathCache();s.checkUpdate(false,false,o)}s._processSuccess(e,i,a,o,n,d,true,t);s._setSessionContextIdHeader(s._getHeader("sap-contextid",i.headers))}function f(a){var n=a.message=="Request aborted";a.$reported=true;c(t,function(e,t){if(Array.isArray(t)){t.forEach(function(e){u(e,a,n)})}else{u(t,a,n)}});s._processAfterUpdate();if(n){s._processAborted(e,a,true)}else{a.$reported=a.$ownReason||false;s._processError(e,a,r,true,t)}}e.eventInfo={requests:t,batch:true};var p=this._submitRequest(e,h,f);function l(e){var t;for(var a=0;a<e.parts.length;a++){t=e.parts[a].fnError;if(!e.parts[a].request._aborted&&t){t(z._createAbortedError())}}}var g={abort:function(e){c(t,function(e,t){if(Array.isArray(t)){t.forEach(function(e){l(e)})}else{l(t)}});if(r&&!e){r(z._createAbortedError())}p.abort()}};return g};z.prototype._invalidatePathCache=function(){var e=this,t;if(Object.keys(this.mInvalidatedPaths).length>0){Object.keys(this.mPathCache).forEach(function(a){for(var r in e.mInvalidatedPaths){t=a.indexOf(r);if(t>-1){if(t+r.length!==a.length){var s=a.substr(t+r.length);e.mPathCache[a].canonicalPath=e.mInvalidatedPaths[r]===null?null:e.mInvalidatedPaths[r]+s}else{e.mPathCache[a].canonicalPath=e.mInvalidatedPaths[r]}}}})}this.mInvalidatedPaths={}};z.prototype._createBatchRequest=function(e){var t,a,r={},s={},n="true";s.__batchRequests=e;for(var i in e){if(e[i]&&e[i].__changeRequests||e[i]&&e[i].headers&&e[i].headers["sap-cancel-on-close"]!=="true"){n="false";break}}t=this.sServiceUrl+"/$batch";if(this.aUrlParams.length>0){t+="?"+this.aUrlParams.join("&")}p(r,this.mCustomHeaders,this.oHeaders);r["Accept"]="multipart/mixed";delete r["Content-Type"];r["sap-cancel-on-close"]=n;a={headers:r,requestUri:t,method:"POST",data:s,user:this.sUser,password:this.sPassword,async:true};a.withCredentials=this.bWithCredentials;return a};z.prototype.abortInternalRequest=function(e,t){var a=this.mRequests;var r,s;if(t){r=t.requestKey;s=t.path}if(e in this.mDeferredGroups){a=this.mDeferredRequests}var n=function(e){for(var t=0;t<e.parts.length;t++){e.parts[t].requestHandle.abort()}};var i=a[e];if(i){if(r in i.map){n(i.map[r])}else if(s){c(i.map,function(e,t){if(e.indexOf(s)>=0){n(t)}})}else if(e&&!t){c(i.map,function(e,t){n(t)})}}};z.prototype._pushToRequestQueue=function(e,t,a,r,s,n,i,o){var d,u=e[t],h=r.key?r.key:r.method+":"+r.requestUri;if(this.bWarmup){return}if(!u){u={};u.map={};u.requests=[];e[t]=u}if(h in u.map&&(r.key||r.method==="GET")){d=u.map[h];var f=d.request;r.deepPath=f.deepPath;if(d.bRefreshAfterChange===undefined){d.bRefreshAfterChange=o}if(!r.key){d.parts.push({request:r,fnSuccess:s,fnError:n,requestHandle:i})}if(r.method==="GET"){delete f.data}else{f.method=r.method;f.headers=r.headers;f.data=r.data;f.sideEffects=r.sideEffects;if(r.method===w.PUT){delete f.headers["x-http-method"]}if(f._aborted){delete f._aborted}}if(f.functionMetadata){f.requestUri=r.requestUri;f.functionTarget=r.functionTarget}}else{d={request:r,bRefreshAfterChange:o,parts:[{request:r,fnSuccess:s,fnError:n,requestHandle:i}]};if(r.method==="GET"){u.requests.push(d)}else{if(!u.changes){u.changes={}}var c=u.changes[a];if(!c){c=[];u.changes[a]=c}d.changeSetId=a;c.push(d)}u.map[h]=d}};z.prototype._collectChangedEntities=function(e,t,a){var r=this;if(e.changes){c(e.changes,function(e,s){for(var n=0;n<s.length;n++){if(s[n].bRefreshAfterChange){var i=s[n].request,o="/"+i.requestUri.split("?")[0],d,u;if(i.method==="POST"||i.method==="DELETE"){var h=r.oMetadata._getEntityTypeByPath(o);if(h){a[h.entityType]=true}}else{d=r._getObject(o);if(d){u=r._getKey(d)}else if(o.lastIndexOf("/")===0){u=r._getKey(o)}if(u){t[u]=true}}}}})}};z.prototype._processRequestQueue=function(e,t,a,r,s){var n=this,i,o=[];function d(e,t){for(var a=0;a<e.parts.length;a++){var r=e.parts[a];if(r.request._aborted){n._processAborted(e.request,null);e.parts.splice(a,1);a--}else if(t){r.request._handle=t;t.iRelevantRequests++}}}function u(){return{iRelevantRequests:0,oRequestHandle:{},abort:function(){this.iRelevantRequests--;if(this.iRelevantRequests===0&&this.oRequestHandle){this.oRequestHandle.abort(true);if(a){a({},undefined)}}}}}if(this.bUseBatch){c(e,function(e,a){if(e===t||!t){var r={},s={};n._collectChangedEntities(a,r,s);if(Object.keys(r).length||Object.keys(s).length){n.bIncludeInCurrentBatch=true;n._refresh(false,e,r,s);n.bIncludeInCurrentBatch=false}}});c(e,function(h,f){if(h===t||!t){var p=[],l=[],g,y;var _=u();if(f.changes){c(f.changes,function(t,a){var r,o,u;g={__changeRequests:[]};y=[];for(o=0;o<a.length;o++){r=a[o].request;q.extend(r.headers,s);i="/"+n.getKey(r.data);n.increaseLaundering(i,r.data);d(a[o],_);if(a[o].parts.length>0){n.removeInternalMetadata(r.data);g.__changeRequests.push(r);if(r.expandRequest){u=a[o].parts[0];n._pushToRequestQueue(e,h,undefined,r.expandRequest,u.fnSuccess,u.fnError,u.requestHandle,false)}y.push(a[o])}}if(g.__changeRequests&&g.__changeRequests.length>0){p.push(g);l.push(y)}})}if(f.requests){var m=f.requests;for(var v=0;v<m.length;v++){d(m[v],_);if(m[v].parts.length>0){p.push(m[v].request);l.push(m[v])}}}if(p.length>0){var b=n._createBatchRequest(p);_.oRequestHandle=n._submitBatchRequest(b,l,a,r);o.push(_.oRequestHandle)}delete e[h]}})}else{c(e,function(a,r){if(a===t||!t){if(r.changes){c(r.changes,function(e,t){for(var a=0;a<t.length;a++){var r=u();i="/"+n.getKey(t[a].request.data);n.increaseLaundering(i,t[a].request.data);d(t[a],r);if(t[a].parts.length>0){n.removeInternalMetadata(t[a].request.data);r.oRequestHandle=n._submitSingleRequest(t[a]);o.push(r.oRequestHandle)}}})}if(r.requests){var s=r.requests;for(var h=0;h<s.length;h++){var f=u();d(s[h],f);if(s[h].parts.length>0){f.oRequestHandle=n._submitSingleRequest(s[h]);o.push(f.oRequestHandle)}}}delete e[a]}})}this.checkDataState(this.mLaunderingState);return o.length==1?o[0]:o};z.prototype._processRequestQueueAsync=function(e){var t=this;if(!this.pCallAsync){this.pCallAsync=this.oMetadata.loaded().then(function(){return Promise.resolve().then(function(){t._processRequestQueue(e);t.pCallAsync=undefined})})}};z.prototype._processSuccess=function(e,t,a,r,s,n,i,d,u){var h,f,l,g,_,m,v,b,C,R,P,q,M,E={},S={},A=t.data,T=this;if(!i){f=!["204","205"].includes(String(t.statusCode));M=e.requestUri;P=M.replace(this.sServiceUrl,"");if(!P.startsWith("/")){P="/"+P}C=this._normalizePath(P);_=this.oMetadata._getEntityTypeByPath(C);b=_&&_.isFunction;P=this._normalizePath(P,undefined,!b);this.decreaseLaundering(P,e.data);this._decreaseDeferredRequestCount(e);if(e.functionMetadata){if(t.headers&&t.headers.location){m=t.headers.location;q=m.lastIndexOf(this.sServiceUrl);if(q>-1){h=k._normalizeKey(m.slice(q+this.sServiceUrl.length));if(e.functionTarget===h){l=this.getDeepPathForCanonicalPath(h);if(l){e.deepPath=l}}e.functionTarget=h}}if(e.adjustDeepPath){e.deepPath=e.adjustDeepPath({deepPath:l||e.functionTarget,response:y({},t)})}else if(!l){if(!m){l=this.getDeepPathForCanonicalPath(e.functionTarget)}e.deepPath=l||e.functionTarget}if(u&&e.contentID){u[e.contentID].deepPath=e.deepPath}}if(f&&A===undefined&&t){this._parseResponse(t,e);o.fatal(this+" - No data was retrieved by service: '"+t.requestUri+"'");T.fireRequestCompleted({url:t.requestUri,type:"GET",async:t.async,info:"Accept headers:"+this.oHeaders["Accept"],infoObject:{acceptHeaders:this.oHeaders["Accept"]},success:false});return false}if(A&&!A.__metadata&&A.results&&!Array.isArray(A.results)){A=A.results}if(!t._imported&&A&&(Array.isArray(A)||typeof A=="object")){v=y({},A);if(e.key||e.created){T._importData(v,S,t,e,undefined,undefined,undefined,b,undefined,e.sideEffects)}else{T._importData(v,S,t,e,P,e.deepPath,undefined,b,undefined,e.sideEffects)}t._imported=true}g=this._getEntity(e.key);if(g&&g.__metadata.created&&g.__metadata.created.functionImport){var x=[];var U=g["$result"];if(U&&U.__list){c(S,function(e){x.push(e)});U.__list=x}else if(U&&U.__ref){c(S,function(e){U.__ref=e})}}if(!f){R=P.split("/");if(R[1]){E[R[1]]=e;this._updateChangedEntity(R[1],e.data)}if(e.method==="DELETE"&&R[2]!=="$links"){this._removeEntity(R[1])}}if(f&&e.method==="POST"||e.functionMetadata){if(_){n[_.entityType]=true}if(e.key){if(e.created){this._removeEntity(e.key)}else{delete this.mChangedEntities[e.key]}}}if(!t.$reported){this._parseResponse(t,e,S,E);t.$reported=true}p(r,S);p(s,E);this._updateETag(e,t)}if(a){a(A,t)}var D=this._createEventInfo(e,t,d);if(i){this.fireBatchRequestCompleted(D)}else{this.fireRequestCompleted(D)}return true};z.prototype._cleanupAfterCreate=function(e,t){var a,r,s,n=this.getContext("/"+e.key),i=e.deepPath,o=this._getEntity(t);if(n.isTransient()&&i.endsWith(")")){e.deepPath=i.slice(0,i.lastIndexOf("("))+t.slice(t.indexOf("("))}this._updateContext(n,"/"+t,e.deepPath);n.setUpdated(true);this.callAfterUpdate(function(){n.setUpdated(false)});delete o.__metadata.created;a=this.mChangedEntities[e.key];if(a){r=this.oMetadata._getNavigationPropertyNames(this.oMetadata._getEntityTypeByPath(t));a=q.merge({},a);a.__metadata=q.merge({},o.__metadata);a.__metadata.deepPath=e.deepPath;for(s in e.data){if(q.deepEqual(e.data[s],a[s])||r.includes(s)){delete a[s]}}this.mChangedEntities[t]=a;this.abortInternalRequest(this._resolveGroup(e.key).groupId,{requestKey:e.key})}};z.prototype._processError=function(e,t,a,r,s){var n,i;if(e.functionMetadata){e.deepPath=e.functionTarget}n=this._handleError(t,e);if(!r){i="/"+this.getKey(e.data);this.decreaseLaundering(i,e.data);this._decreaseDeferredRequestCount(e)}if(a){a(n)}var o=this._createEventInfo(e,n,s);if(r){this.fireBatchRequestCompleted(o);this.fireBatchRequestFailed(o)}else{this.fireRequestCompleted(o);this.fireRequestFailed(o)}};z.prototype._processAborted=function(e,t,a){var r,s;if(!a){s="/"+this.getKey(e.data);this.decreaseLaundering(s,e.data);this._decreaseDeferredRequestCount(e)}if(t){r=this._createEventInfo(e,z._createAbortedError());r.success=false;if(a){this.fireBatchRequestCompleted(r)}else{this.fireRequestCompleted(r)}}};z.prototype._processAfterUpdate=function(){var e=this.aCallAfterUpdate;this.aCallAfterUpdate=[];for(var t=0;t<e.length;t++){e[t]()}};z.prototype._processChange=function(e,t,a,r){var s,n,i,o,d,u,f,p,l,g,_,m,v,b,C,R="/"+e,P=this;d=this.oMetadata._getEntityTypeByPath(e);if(!r){r=this.sDefaultUpdateMethod}_=y({},this._getObject(R),t);o=_.__metadata.deepPath;i=_.__metadata.created;if(i){g=i.method?i.method:"POST";e=i.key;f=i.expandRequest;s=i.contentID;p=i.functionImport;if(p){i.urlParameters=this._createFunctionImportParameters(i.key,g,_);_=undefined}else{delete _.__metadata["uri"]}}else if(r===w.MERGE){g=w.MERGE;v=this._getEntity(e)}else{g=w.PUT}if(_&&_.__metadata){for(var q in _.__metadata){if(q!=="type"&&q!=="uri"&&q!=="etag"&&q!=="content_type"&&q!=="media_src"){delete _.__metadata[q]}}}if(_&&d){var M=this.oMetadata._getNavigationPropertyNames(d);M.forEach(function(e){delete _[e]})}if(g===w.MERGE&&d&&v){c(_,function(t,a){if(t!=="__metadata"){if(h(v[t],a)&&!P.isLaundering("/"+e+"/"+t)){delete _[t]}}});var E="/"+e,S;c(_,function(e,t){if(e!=="__metadata"){S=P.getProperty(E+"/"+e+"/#@sap:unit");if(S){if(_[S]===undefined){_[S]=v[S]}}}});if(v.__metadata.etag){_.__metadata.etag=v.__metadata.etag}}_=this._removeReferences(_);C=i&&i.urlParameters?k._createUrlParamsArray(i.urlParameters):undefined;l=i?this._getHeaders(i.headers):this._getHeaders();if(!p&&this._isTransitionMessagesOnly(a)){l["sap-messages"]="transientOnly"}u=i&&i.eTag?i.eTag:this.getETag(_);b=this._createRequestUrl("/"+e,null,C,this.bUseBatch);n=this.getContext(R);m=this._createRequest(b,o,g,l,_,u,undefined,true,n.hasSubContexts());if(i){if(f){m.expandRequest=f;m.contentID=s}if(p){m.functionTarget=this.oMetadata._getCanonicalPathOfFunctionImport(i.functionMetadata,i.urlParameters);m.functionMetadata=i.functionMetadata}else{m.created=true;this._addSubEntitiesToPayload(n,_)}}if(this.bUseBatch){m.requestUri=m.requestUri.replace(this.sServiceUrl+"/","")}return m};z.prototype._resolveGroup=function(e){var t,a,r,s,n,i,o=e.startsWith("/")?e:"/"+e;s=this._getObject(o);r=s&&s.__metadata&&s.__metadata.created;if(r){return{groupId:r.groupId,changeSetId:r.changeSetId}}n=this.oMetadata._getEntityTypeByPath(o);if(this.mChangeGroups[n.name]){t=this.mChangeGroups[n.name];i=t.groupId;a=t.single?_():t.changeSetId}else if(this.mChangeGroups["*"]){t=this.mChangeGroups["*"];i=t.groupId;a=t.single?_():t.changeSetId}return{groupId:i,changeSetId:a}};z.prototype._updateETag=function(e,t){var a,r,s;a=e.requestUri.replace(this.sServiceUrl+"/","");if(!a.startsWith("/")){a="/"+a}r=this._getObject(a.split("?")[0],undefined,true);s=this._getHeader("etag",t.headers);if(r&&r.__metadata&&s){r.__metadata.etag=s}};z.prototype._handleError=function(e,t,a){var r,s={message:e.message};if(e.response){if(!e.$reported){this._parseResponse(e.response,t);if(this.bTokenHandling){r=this._getHeader("x-csrf-token",e.response.headers);if(e.response.statusCode=="403"&&r&&r.toLowerCase()==="required"){this.resetSecurityToken()}}}s.statusCode=e.response.statusCode;s.statusText=e.response.statusText;s.headers=e.response.headers;s.responseText=e.response.body}else if(!e.$reported){o.error("The following problem occurred: "+e.message,e.stack,a||j)}e.$reported=true;return s};z.prototype.getReporter=function(e){var t=this;return function(a){t._handleError(a,undefined,e)}};z.prototype.getData=function(e,t,a){return this.getProperty(e,t,a)};z.prototype._getODataHandler=function(e){if(e.indexOf("$batch")>-1){return B.batchHandler}else if(e.indexOf("$count")>-1){return undefined}else if(this.bJSON){return B.jsonHandler}else{return B.atomHandler}};z.prototype.getETag=function(e,t,a){if(typeof e=="object"){a=e;e=""}return this._getETag(e,t,a)};z.prototype._getETag=function(e,t,a){if(!a||!a.__metadata){a=this._getObject(e,t)}if(a&&a.__metadata){return a.__metadata.etag}return null};z.prototype.forceEntityUpdate=function(e){var t=this.mChangedEntities[e];if(t&&t.__metadata){t.__metadata.etag="*"}else{o.error(this+" - Entity with key "+e+" does not exist or has no change")}};z.prototype._createRequest=function(e,t,a,r,s,n,i,d,u,h){var f;i=i!==false;if(n&&a!=="GET"){r["If-Match"]=n}if(!r["Content-Type"]&&a!=="DELETE"&&a!=="GET"){if(this.bJSON){r["Content-Type"]="application/json"}else{r["Content-Type"]="application/atom+xml"}}if(e.indexOf("$count")>-1){r["Accept"]="text/plain, */*;q=0.5"}if(a===w.MERGE&&!this.bUseBatch){r["x-http-method"]=w.MERGE;a="POST"}if(this.sMessageScope===x.BusinessObject&&r["sap-messages"]!=="transientOnly"){if(this.bIsMessageScopeSupported){r["sap-message-scope"]=this.sMessageScope}else{o.error("Message scope 'sap.ui.model.odata.MessageScope.BusinessObject' is not"+" supported by the service: "+this.sServiceUrl,undefined,j)}}d=d&&this.sMessageScope===x.BusinessObject&&this.bIsMessageScopeSupported;if(this.bUseBatch&&a!=="GET"&&a!=="HEAD"&&!r["Content-ID"]){r["Content-ID"]=_()}f={async:i,deepPath:t,headers:r,method:a,password:this.sPassword,requestUri:e,updateAggregatedMessages:d,user:this.sUser};if(u){f.sideEffects=true}if(h){f.fnRequest=h}if(s){f.data=s}if(this.bWithCredentials){f.withCredentials=this.bWithCredentials}f.requestID=this._createRequestID();return f};z.prototype._processRequest=function(e,t,a){var r,s,n=false,i=this;if(this.bWarmup){return{abort:function(){}}}if(a){this.iPendingDeferredRequests+=1}s={abort:function(){if(i.pRetryAfter){throw new Error("abort() during HTTP 503 'Retry-after' processing not supported")}if(a&&!n){i.iPendingDeferredRequests-=1}if(!n&&t){t(z._createAbortedError())}if(r){r._aborted=true;if(r._handle){r._handle.abort()}}n=true}};this.oMetadata.loaded().then(function(){r=e(s);if(r){r.deferred=!!a}i._processRequestQueueAsync(i.mRequests);if(n){s.abort()}});return s};z.prototype.update=function(e,t,a){var r,s,n,i,o,d,u,h,f,c,p,l,g,y,_,m=this,v,b,C;if(a){h=a.groupId||a.batchGroupId;f=a.changeSetId;o=a.context;r=a.success;s=a.error;d=a.eTag;p=a.headers;c=a.urlParameters;y=a.refreshAfterChange;C=a.canonicalRequest;if(a.merge!==undefined){l=a.merge?w.MERGE:w.PUT}}C=this._isCanonicalRequestNeeded(C);_=h in m.mDeferredGroups;y=this._getRefreshAfterChange(y,h);u=k._createUrlParamsArray(c);p=this._getHeaders(p);l=l?l:this.sDefaultUpdateMethod;d=d||this._getETag(e,o,t);v=this._normalizePath(e,o,C);b=this.resolveDeep(e,o);return this._processRequest(function(e){i=m._createRequestUrlWithNormalizedPath(v,u,m.bUseBatch);n=m._createRequest(i,b,l,p,t,d);g=m.mRequests;if(_){g=m.mDeferredRequests}m._pushToRequestQueue(g,h,f,n,r,s,e,y);return n},s,_)};z.prototype.create=function(e,t,a){var r,s,n,i,o,d,u,h,f,c,p,l,g,y,_,m=this,v,b,C;if(a){i=a.context;u=a.urlParameters;o=a.success;d=a.error;p=a.groupId||a.batchGroupId;g=a.changeSetId;f=a.headers;y=a.refreshAfterChange;C=a.canonicalRequest}C=this._isCanonicalRequestNeeded(C);y=this._getRefreshAfterChange(y,p);c=k._createUrlParamsArray(u);f=this._getHeaders(f);l="POST";_=p in m.mDeferredGroups;v=m._normalizePath(e,i,C);b=this.resolveDeep(e,i);return this._processRequest(function(e){s=m._createRequestUrlWithNormalizedPath(v,c,m.bUseBatch);r=m._createRequest(s,b,l,f,t);r.created=true;n=m.oMetadata._getEntityTypeByPath(v);r.entityTypes={};if(n){r.entityTypes[n.entityType]=true}h=m.mRequests;if(_){h=m.mDeferredRequests}m._pushToRequestQueue(h,p,g,r,o,d,e,y);return r},d,_)};z.prototype.remove=function(e,t){var a,r,s,n,i,o,d,u,h,f,c,p,l,g,y,_,m,v,b,C=this.bCanonicalRequests,R=this;if(t){u=t.groupId||t.batchGroupId;a=t.changeSetId;r=t.context;_=t.success;o=t.error;d=t.eTag;h=t.headers;b=t.urlParameters;l=t.refreshAfterChange;C=t.canonicalRequest}C=this._isCanonicalRequestNeeded(C);l=this._getRefreshAfterChange(l,u);v=k._createUrlParamsArray(b);h=this._getHeaders(h);c="DELETE";d=d||this._getETag(e,r);i=u in R.mDeferredGroups;p=this._normalizePath(e,r,C);n=this.resolveDeep(e,r);function P(e,t){R._removeEntity(f);if(s&&s.isTransient()===false){R.oCreatedContextsCache.findAndRemoveContext(s)}if(_){_(e,t)}}return this._processRequest(function(e){m=R._createRequestUrlWithNormalizedPath(p,v,R.bUseBatch);f=m.substr(m.lastIndexOf("/")+1);f=f.split("?")[0];s=R.mContexts["/"+f];g=R._createRequest(m,n,c,h,undefined,d,undefined,true);y=R.mRequests;if(i){y=R.mDeferredRequests}R._pushToRequestQueue(y,u,a,g,P,o,e,l);return g},o,i)};z.prototype.callFunction=function(e,t){var a,r,s,n,i,d,u,h,f,c,p,l,g,y,m=this;if(!e.startsWith("/")){o.fatal("callFunction: sFunctionName has to be absolute, but the given '"+e+"' is not absolute",this,j);return undefined}t=t||{};a=t.changeSetId;s=t.error;n=t.eTag;i=t.expand;d=t.groupId||t.batchGroupId;u=t.headers;h=t.method||"GET";f=t.refreshAfterChange;g=t.success;y=Object.assign({},t.urlParameters);if(i){if(!this.bUseBatch){throw new Error("Use 'expand' parameter only with 'useBatch' set to 'true'")}if(h!=="POST"){throw new Error("Use 'expand' parameter only with HTTP method 'POST'")}}f=this._getRefreshAfterChange(f,d);r=new Promise(function(e,t){l=e;c=t});p=this._processRequest(function(r){var p,v,b,C,R,P,q,M,E,S,A,T={},x=s,U=false,D=g;function I(){R=undefined;C=undefined;U=false}b=m.oMetadata._getFunctionImportMetadata(e,h);if(!b){o.error("Function '"+e+"' not found in the metadata",m,j);c();return undefined}if(b.entitySet||b.entitySetPath){T.$result={__list:[]};if(b.returnType&&!b.returnType.startsWith("Collection")){T.$result={__ref:{}}}}if(i&&(!T.$result||!T.$result.__ref)){c(new Error("Use 'expand' parameter only for functions returning a single"+" entity"));return undefined}if(b.parameter!=null){b.parameter.forEach(function(t){if(y[t.name]!==undefined){T[t.name]=y[t.name];y[t.name]=k.formatValue(y[t.name],t.type)}else{T[t.name]=undefined;o.warning("No value given for parameter '"+t.name+"' of function import '"+e+"'",m,j)}})}E=_();if(i){u=Object.assign({},u,{"Content-ID":E,"sap-messages":"transientOnly"});g=function(e,t){if(!R){R=e;C=t;return}if(D){e=Object.assign({},R,e);D(e,C)}I()};s=function(t){if(R){C.expandAfterFunctionCallFailed=true;t.expandAfterFunctionCallFailed=true;o.error("Function '"+e+"' was called successfully, but"+" expansion of navigation properties ("+i+") failed",t,j);if(D){D(R,C)}I();return}if(!U){U=true;if(x){x(t)}}else{t.expandAfterFunctionCallFailed=true;I()}}}T.__metadata={uri:m.sServiceUrl+e+"('"+E+"')",created:{changeSetId:a,error:s,eTag:n,functionImport:true,groupId:d,headers:Object.assign({},u),key:e.substring(1),method:h,success:g},deepPath:e};P=m._addEntity(T);p=m.getContext("/"+P);m._writePathCache("/"+P,"/"+P);l(p);A=k._createUrlParamsArray(y);S=m._createRequestUrlWithNormalizedPath(e,A,m.bUseBatch);q=m._createRequest(S,e,h,m._getHeaders(u),undefined,n,undefined,true);q.adjustDeepPath=t.adjustDeepPath;q.functionMetadata=b;T.__metadata.created.functionMetadata=b;q.functionTarget=m.oMetadata._getCanonicalPathOfFunctionImport(b,y);q.key=P;if(i){v=m._createRequest("$"+E+"?"+k._encodeURLParameters({$expand:i,$select:i}),"/$"+E,"GET",m._getHeaders(undefined,true),undefined,undefined,undefined,true);v.contentID=E;q.expandRequest=v;q.contentID=E;T.__metadata.created.expandRequest=v;T.__metadata.created.contentID=v.contentID}M=m.mRequests;if(d in m.mDeferredGroups){M=m.mDeferredRequests}m._pushToRequestQueue(M,d,a,q,g,s,r,f);return q},s);p.contextCreated=function(){return r};return p};z.prototype._createFunctionImportParameters=function(e,t,a){var r=f({},a);delete r.__metadata;delete r["$result"];var s=this.oMetadata._getFunctionImportMetadata(e,t);i(s,this+": Function "+e+" not found in the metadata !");if(!s){return undefined}if(s.parameter!=null){c(s.parameter,function(e,t){if(r&&r[t.name]!==undefined){r[t.name]=k.formatValue(r[t.name],t.type)}})}return r};z.prototype._getResourcePath=function(e,t,a,r){var s,n,i,o;if(!e){return this.resolve(a,r)}i=this.oMetadata._splitByLastNavigationProperty(t);n=i.pathBeforeLastNavigationProperty;s=i.lastNavigationProperty;if(s.includes("(")&&i.addressable){o=this.resolve(n+s,undefined,true);if(o){return o+i.pathAfterLastNavigationProperty}}o=this.resolve(n,undefined,true)||n;return o+s+i.pathAfterLastNavigationProperty};z.prototype.read=function(e,t){return this._read(e,t)};z.prototype._read=function(e,t,a,r){var s,n,i,o,d,u,h,f,c,p,l,g,y,_=this;if(t){s=t.canonicalRequest;n=t.context;i=t.error;o=t.filters;d=t.groupId||t.batchGroupId;u=t.headers;c=t.sorters;p=t.success;l=t.updateAggregatedMessages;y=t.urlParameters}s=this._isCanonicalRequestNeeded(s);if(e&&e.indexOf("?")!==-1){e=e.slice(0,e.indexOf("?"))}if(this.sRefreshGroupId){d=this.sRefreshGroupId}g=k._createUrlParamsArray(y);u=this._getHeaders(u,true);h="GET";var m={abort:function(){if(f){f._aborted=true}}};function v(t){var y,m,v,b,C,R,P=_.resolveDeep(e,n),q=_._getResourcePath(s,P,e,n);C=k.createSortParams(c);if(C){g.push(C)}y=_.oMetadata._getEntityTypeByPath(q);m=S.groupFilters(o);v=k.createFilterParams(m,_.oMetadata,y);if(v){g.push(v)}R=_._createRequestUrlWithNormalizedPath(q,g,_.bUseBatch);f=_._createRequest(R,P,h,u,null,undefined,undefined,l,a,r);b=_.mRequests;if(d in _.mDeferredGroups){b=_.mDeferredRequests}_._pushToRequestQueue(b,d,null,f,p,i,t,false);return f}if(this.bUseBatch&&this.bIncludeInCurrentBatch){f=v(m);return m}else{return this._processRequest(v,i)}};z.prototype.requestSideEffects=function(e,t){var a,r=this;t=t||{};for(a in t){if(!W.includes(a)){throw new Error("Parameter '"+a+"' is not supported")}}return new Promise(function(a,s){var n=new Set,i=[],o=t.urlParameters&&t.urlParameters["$expand"];r._read("",{context:e,error:s,groupId:t.groupId,success:function(){a(i)},updateAggregatedMessages:true,urlParameters:t.urlParameters},true);if(o){o.split(",").forEach(function(t){var a=r.oMetadata._getEntityTypeByPath(r.resolve(t,e));n.add(a)});r.getBindings().forEach(function(e){if(e.isA("sap.ui.model.odata.v2.ODataListBinding")){if(e._refreshForSideEffects(n,t.groupId)){i.push(e)}}})}})};z.prototype.getServiceMetadata=function(){if(this.oMetadata&&this.oMetadata.isLoaded()){return this.oMetadata.getServiceMetadata()}return undefined};z.prototype.metadataLoaded=function(e){var t=this.oMetadata.loaded(e);if(this.bLoadAnnotationsJoined){if(e){return Promise.all([t,this.pAnnotationsLoaded])}var a=function(){return t};return this.pAnnotationsLoaded.then(a,a)}else{return t}};z.prototype.annotationsLoaded=function(){return this.pAnnotationsLoaded};z.prototype.isMetadataLoadingFailed=function(){return this.oMetadata.isFailed()};z.prototype.getServiceAnnotations=function(){var e=this.oAnnotations.getData();return l(e)?null:e};z.prototype.onAnnotationsFailed=function(e){this.fireAnnotationsFailed(e.getParameters())};z.prototype.onAnnotationsLoaded=function(e){this.fireAnnotationsLoaded(e.getParameters())};z.prototype.addAnnotationUrl=function(e){var t=[].concat(e),a=[],r=[],s=[],n=this;t.forEach(function(e){var t=e.indexOf("$metadata");if(t>=0){e=n._createMetadataUrl(e);a.push(e)}else{r.push(e)}});return this.oMetadata._addUrl(a,this._request.bind(this)).then(function(e){return Promise.all(e.map(function(e){s=s.concat(e.entitySets);return n.oAnnotations.addSource({type:"xml",data:e["metadataString"]})}))}).then(function(){return n.oAnnotations.addSource(r)}).then(function(){return{annotations:n.oAnnotations.getData(),entitySets:s}})};z.prototype.addAnnotationXML=function(e,t){return this.oAnnotations.addSource({type:"xml",data:e})};z.prototype.submitChanges=function(e){return this.submitChangesWithChangeHeaders(e&&{batchGroupId:e.batchGroupId,error:e.error,groupId:e.groupId,merge:e.merge,success:e.success})};z.prototype.submitChangesWithChangeHeaders=function(e){var t,a,r,s,n,i,d,u,h=false,f=this.bRefreshAfterChange,p=this;e=e||{};r=e.groupId||e.batchGroupId;u=e.success;a=e.error;if(e.merge!==undefined){s=e.merge?w.MERGE:w.PUT}n=Object.keys(e.changeHeaders||{}).find(function(e){return p._isHeaderPrivate(e)});if(n){throw new Error("Must not use private header: "+n)}this.getBindings().forEach(function(e){if(e._submitChanges){var t=u||function(){},a={groupId:r};e._submitChanges(a);if(a.success){u=function(){t.apply(null,arguments);a.success.apply(null,arguments)}}}});if(r&&!this.mDeferredGroups[r]){o.fatal(this+' submitChanges: "'+r+'" is not a deferred group!')}t=y({},p.mChangedEntities);this.oMetadata.loaded().then(function(){var n,o,l,g,y,_;c(t,function(e,t){var a,n,i,o=p.getContext("/"+e),d=p._resolveGroup(e);if(o.hasTransientParent()||o.isInactive()){return}if(d.groupId===r||!r){n=p._processChange(e,t,d.groupId,s);n.key=e;a=t.__metadata&&t.__metadata.created?t.__metadata.created:{};i={abort:function(){n._aborted=true}};if(d.groupId in p.mDeferredGroups){p._pushToRequestQueue(p.mDeferredRequests,d.groupId,d.changeSetId,n,a.success,a.error,i,a.refreshAfterChange===undefined?f:a.refreshAfterChange)}}});for(y in p.mDeferredRequests){_=p.mDeferredRequests[y];for(l in _.changes){o=_.changes[l];for(g=o.length-1;g>=0;g--){n=o[g];if(n.bRefreshAfterChange===undefined){n.bRefreshAfterChange=f}}}}d=p._processRequestQueue(p.mDeferredRequests,r,u,a,e.changeHeaders);if(h){i.abort()}if(Array.isArray(d)&&d.length==0&&u){u({},undefined)}});i={abort:function(){if(p.pRetryAfter){throw new Error("abort() during HTTP 503 'Retry-after' processing not supported")}if(d){if(Array.isArray(d)){d.forEach(function(e){e.abort()})}else{d.abort()}}else{h=true}}};return i};z.prototype._updateChangedEntity=function(e,t){var a,r,s,n,i,o,d=this;function u(e,t,a){c(t,function(r){var n=a+"/"+r;if(g(t[r])&&g(e[r])){u(e[r],t[r],n);if(l(t[r])){delete t[r]}}else if(a.endsWith("__metadata")||h(t[r],e[r])&&!d.isLaundering(n)){delete t[r];if(a===o){s=d.oMetadata._getEntityTypeByPath(o);i=s&&d.oMetadata._getNavPropertyRefInfo(s,r);if(i&&t[i.name]){e[i.name]=t[i.name];delete t[i.name]}}}})}if(e in d.mChangedEntities){n=d._getObject("/"+e,null,true);a=d._getObject("/"+e);y(n,t);o="/"+e;r=d.removeInternalMetadata(a).deepPath;u(n,a,o);if(l(a)){delete d.mChangedEntities[e];d.abortInternalRequest(d._resolveGroup(e).groupId,{requestKey:e})}else{d.mChangedEntities[e]=a;a.__metadata={deepPath:r};p(a.__metadata,n.__metadata)}}};z.prototype._discardEntityChanges=function(e,t){var a,r,s=this._resolveGroup(e).groupId,n=this.oMetadata.loaded(),i=this;n.then(function(){i.abortInternalRequest(s,{requestKey:e})});if(t){a=this.getContext("/"+e);a.removeFromTransientParent();this.oCreatedContextsCache.findAndRemoveContext(a);r=this.mChangedEntities[e]&&this.mChangedEntities[e].__metadata.created;this._removeEntity(e);if(r&&r.abort){r.abort(z._createAbortedError())}}else{delete this.mChangedEntities[e]}v.removeMessages(this.getMessagesByEntity(e,true));return n};z.prototype.resetChanges=function(e,t,a){return this._resetChanges(e,t,a)};z.prototype.resetChangesWithoutUpdate=function(e,t,a){return this._resetChanges(e,t,a,false)};z.prototype._resetChanges=function(e,t,a,r){var s,n=this.oMetadata.loaded(),i=[],o=this;if(t){n.then(function(){c(o.mDeferredGroups,function(t){if(e){e.forEach(function(e){o.abortInternalRequest(t,{path:e.substring(1)})})}else{o.abortInternalRequest(t)}})})}if(e){c(e,function(e,t){var a,r,s,n,d,u={};if(o.getEntityByPath(t,null,u)){d=u.propertyPath.split("/");n=d[d.length-1];s=u.key;a=o.mChangedEntities[s];if(a){for(r=0;r<d.length-1;r+=1){if(a&&a.hasOwnProperty(d[r])){a=a[d[r]]}else{a=undefined;break}}if(a&&a.hasOwnProperty(n)){delete a[n]}a=o.mChangedEntities[s];if(z._isChangedEntityEmpty(a)||!u.propertyPath){i.push(s)}}}});s=i;i.forEach(function(e){s=s.concat(o.getContext("/"+e).getSubContextsAsKey(true))});new Set(s).forEach(function(e){o._discardEntityChanges(e,o.mChangedEntities[e].__metadata.created&&a)})}else{c(this.mChangedEntities,function(e,t){var r=o.getContext("/"+e).isInactive()?false:t.__metadata.created&&a;o._discardEntityChanges(e,r)})}this.getBindings().forEach(function(t){if(t._resetChanges){t._resetChanges(e)}});this.checkUpdate(r===undefined?true:r);return n};z.prototype.setProperty=function(e,t,a,r){var s,n,i,o,d,u,f,p,y,_,m,v,b,C,R,P,M,E,S,A,T,x,U,D,I,O={},k={},H=false,w=this;function B(e,t){c(t,function(a){if(g(t[a])&&g(e[a])){B(e[a],t[a]);if(l(t[a])){delete t[a]}}else if(h(t[a],e[a])){delete t[a]}})}I=this.resolve(e,a);o=this.resolveDeep(e,a);f=this.getEntityByPath(I,null,k);if(!f){return false}E=I.substring(I.lastIndexOf("/")+1);if(E.startsWith("@$ui5.")){throw new Error("Setting a value for an instance annotation starting with '@$ui5' is "+"not allowed: "+E)}m=k.key;C=this._getObject("/"+m,null,true);R=this._getObject(e,a,true);H=C.__metadata.created&&C.__metadata.created.functionImport;if(!this.mChangedEntities[m]){d=f.__metadata;f={};f.__metadata=Object.assign({},d);if(!H&&k.propertyPath.length>0){var L=o.lastIndexOf(k.propertyPath);f.__metadata.deepPath=o.substring(0,L-1)}this.mChangedEntities[m]=f}n=this.mChangedEntities[m];M=k.propertyPath.split("/");for(var F=0;F<M.length-1;F++){if(!n.hasOwnProperty(M[F])){n[M[F]]={}}n=n[M[F]]}n[E]=q.isPlainObject(t)?q.merge({},t):t;if(a&&a.hasTransientParent&&a.hasTransientParent()){O[m]=true;this.checkUpdate(false,r,O);return true}u=this.oMetadata._getEntityTypeByPath(k.key);b=u&&this.oMetadata._getNavPropertyRefInfo(u,E);_=b&&C[b.name]&&C[b.name].__ref;if(_&&b.keys.length===1&&this.oMetadata._getEntityTypeByPath(b.entitySet).key.propertyRef.length===1){if(t===null){S=null}else{v={};b.keys.forEach(function(e){v[e]=f[e]!==undefined?f[e]:C[e]});v[b.keys[0]]=t;S=this.createKey(b.entitySet,v)}n[b.name]={__ref:S}}D=this.oMetadata.loaded();if(f.__metadata.created&&!H){s=this.oCreatedContextsCache.findCreatedContext(I);if(s&&s.isInactive()){s.startActivation();D=Promise.all([D,s.fetchActivated()])}}if(h(t,R)&&!this.isLaundering("/"+m)&&!H){d=this.mChangedEntities[m].__metadata;i=d&&d.created;delete this.mChangedEntities[m].__metadata;if(!i){B(C,this.mChangedEntities[m])}if(l(this.mChangedEntities[m])){delete this.mChangedEntities[m];O[m]=true;this.checkUpdate(false,r,O);D.then(function(){w.abortInternalRequest(w._resolveGroup(m).groupId,{requestKey:m})});return true}this.mChangedEntities[m].__metadata=d}y=this._resolveGroup(m);p=y.groupId;x=this.mRequests;if(p in this.mDeferredGroups){x=this.mDeferredRequests}T=this._processChange(m,this._getObject("/"+m),p);T.key=m;P=n.__metadata&&n.__metadata.created?n.__metadata.created:{};A=this._getRefreshAfterChange(undefined,p);D.then(function(){U={abort:function(){T._aborted=true}};w._pushToRequestQueue(x,p,y.changeSetId,T,P.success,P.error,U,A);w._processRequestQueueAsync(w.mRequests)});O[m]=true;this.checkUpdate(false,r,O);return true};z.prototype._isHeaderPrivate=function(e){switch(e.toLowerCase()){case"accept":case"accept-language":case"maxdataserviceversion":case"dataserviceversion":return true;case"x-csrf-token":return this.bTokenHandling;case"sap-contextid-accept":case"sap-contextid":return!this.bDisableSoftStateHeader;default:return false}};z.prototype.setHeaders=function(e){var t={},a=this;this.mCustomHeaders={};if(e){c(e,function(e,r){if(a._isHeaderPrivate(e)){o.warning(this+" - modifying private header: '"+e+"' not allowed!")}else{t[e]=r}});this.mCustomHeaders=t}if(this.oAnnotations){this.oAnnotations.setHeaders(this.mCustomHeaders)}};z.prototype._getHeaders=function(e,t){var a={},r=this;if(e){c(e,function(e,t){if(r._isHeaderPrivate(e)){o.warning(this+" - modifying private header: '"+e+"' not allowed!")}else{a[e]=t}})}return p({"sap-cancel-on-close":String(!!t)},this.mCustomHeaders,a,this.oHeaders)};z.prototype.getHeaders=function(){return p({},this.mCustomHeaders,this.oHeaders)};z.prototype._getHeader=function(e,t){var a;for(a in t){if(a.toLowerCase()===e.toLowerCase()){return t[a]}}return null};z.prototype.hasPendingChanges=function(e){var t,a=Object.keys(this.mChangedEntities);t=this.getBindings().some(function(e){return e._hasPendingChanges&&e._hasPendingChanges(a)});t=t||a.length>0;if(!t&&e){t=this.iPendingDeferredRequests>0}return t};z.prototype.hasPendingRequests=function(){return this.aPendingRequestHandles.length>0};z.prototype.getPendingChanges=function(){var e,t=q.merge({},this.mChangedEntities);this.getBindings().forEach(function(e){if(e._getPendingChanges){q.merge(t,e._getPendingChanges())}});for(e in t){if(!t[e]){delete t[e]}}return t};z.prototype.updateBindings=function(e){this.checkUpdate(e)};z.prototype.setTokenHandlingEnabled=function(e){this.bTokenHandling=e};z.prototype.setUseBatch=function(e){this.bUseBatch=e};z.prototype.formatValue=function(e,t){return k.formatValue(e,t)};z.prototype.deleteCreatedEntry=function(e){var t,a,r=this;if(e){a=e.getPath().substr(1);t=this._resolveGroup(a).groupId;r.oMetadata.loaded().then(function(){r.abortInternalRequest(t,{requestKey:a})});r._removeEntity(a);v.removeMessages(this.getMessagesByEntity(e.getPath(),true))}};z.prototype.createEntry=function(e,t){var a,r,s,n,d,u,h,f,c,p,l,g,v,b,C,R,P,q,M,E,S,A,T,x,U,D={},I="POST",O=this;function H(e){R=O._addEntity(y({},D));if(!b){O.mChangedEntities[R]=D}return O.getContext("/"+R,f,d,b,e)}function w(){var t;if(h){t=O.oMetadata._getEntityTypeByPath(s.getPath());if(!O.oMetadata._getNavigationPropertyNames(t).includes(e)){throw new Error("Cannot create entity; path '"+e+"' is not a navigation property of '"+t.name+"'")}if(!C){throw new Error("Cannot create entity; deep create on navigation property '"+e+"' with single cardinality is not supported")}}}function B(){var t,n,b,B,L,F,G,N,$,W,K,z,Q=false,V=p,J=A;a=O._isCanonicalRequestNeeded(a);v=Object.assign({},v);x=k._createUrlParamsArray(U);if(!e.startsWith("/")&&!s){e="/"+e}P=O._normalizePath(e,s,a);f=O.resolveDeep(e,s);C=O.oMetadata._isCollection(f);w();c=O.oMetadata._getEntityTypeByPath(P);if(!c){i(c,"No Metadata for collection "+P+" found");return undefined}D=h?{}:O.getForeignKeysFromReferentialConstraints(P);if(typeof q==="object"&&!Array.isArray(q)){D=y(D,q)}L=c.entityType;B=O.oMetadata._getEntitySetByType(c);z=_();R=B.name+"('"+z+"')";F=O.sServiceUrl+"/"+R;if(C){f=f+"('"+z+"')"}if(h){W=O._getObject(s.getPath());r=W.__metadata.created.changeSetId;g=W.__metadata.created.groupId;D.__metadata={type:L,uri:F,created:{changeSetId:r,groupId:g}};n=H(s);s.addSubContext(e,n,C);return n}if(l){v["Content-ID"]=z;A=function(e,a){if(!t){t=e;b=a;return}if(J){e=Object.assign({},t,e);J(e,b)}u()};p=function(e){if(t){b.expandAfterCreateFailed=true;e.expandAfterCreateFailed=true;o.error("Entity creation was successful but expansion of navigation"+" properties failed",e,j);if(J){J(t,b)}u();return}if(!Q){Q=true;if(V){V(e)}}else{e.expandAfterCreateFailed=true;Q=false}}}else{A=function(e,t){if(J){J(e,t)}u()}}$=O._resolveGroup(P);g=g||$.groupId;r=r||$.changeSetId;M=O._getRefreshAfterChange(M,g);K=O._isTransitionMessagesOnly(g);if(K||l){v["sap-messages"]="transientOnly"}D.__metadata={type:L,uri:F,created:{changeSetId:r,error:p,groupId:g,headers:v,key:P.substring(1),refreshAfterChange:M,success:A,urlParameters:U},deepPath:f};d=new m(function(e,t){u=function(){if(!O.oCreatedContextsCache.getCacheInfo(n)){n.resetCreatedPromise()}if(n.hasSubContexts()){O.resetChanges(n.getSubContextsAsPath(),undefined,true)}e()};D.__metadata.created.abort=t});d.catch(function(){});n=H();T=O._createRequestUrlWithNormalizedPath(P,x,O.bUseBatch);E=O._createRequest(T,f,I,v,D);if(l){G=O._getHeaders(undefined,true);if(K){G["sap-messages"]="transientOnly"}N=O._createRequest("$"+z+"?"+k._encodeURLParameters({$expand:l,$select:l}),"/$"+z,"GET",G,null,undefined,undefined,true);N.contentID=z;E.expandRequest=N;E.contentID=z;D.__metadata.created.expandRequest=N;D.__metadata.created.contentID=z}E.key=R;E.created=true;S=O.mRequests;if(g in O.mDeferredGroups){S=O.mDeferredRequests}O.oMetadata.loaded().then(function(){n.fetchActivated().then(function(){var e={abort:function(){if(E){E._aborted=true;if(E.expandRequest){E.expandRequest._aborted=true}}}};O._pushToRequestQueue(S,g,r,E,A,p,e,M);O._processRequestQueueAsync(O.mRequests)})});return n}if(t){q=t.properties;g=t.groupId||t.batchGroupId;r=t.changeSetId;s=e.startsWith("/")?undefined:t.context;A=t.success;p=t.error;n=t.created;v=t.headers;U=t.urlParameters;M=t.refreshAfterChange;a=t.canonicalRequest;l=t.expand;b=t.inactive}if(l&&!this.bUseBatch){throw new Error("The 'expand' parameter is only supported if batch mode is used")}h=s&&s.isTransient&&s.isTransient();if(h){Object.keys(t).forEach(function(e){if(!N.includes(e)){throw new Error("deep create, unsupported parameter: "+e)}});if(s.isInactive()){throw new Error("deep create, context must not be inactive")}}if(n){this.oMetadata.loaded().then(function(){n(B())})}else if(this.oMetadata.isLoaded()){return B()}else{o.error("Tried to use createEntry without created-callback, before metadata is "+"available!")}return undefined};z.prototype.getForeignKeysFromReferentialConstraints=function(e){const t=this.oMetadata._splitByLastNavigationProperty(e);if(t.lastNavigationProperty){const e=this.oMetadata._getEntityTypeByName(t.pathBeforeLastNavigationProperty);const a=this.oMetadata._getReferentialConstraintsMapping(e,t.lastNavigationProperty.slice(1));const r=this._getObject(t.pathBeforeLastNavigationProperty);if(r){return Object.keys(a).reduce((e,t)=>{if(r[t]){e[a[t]]=r[t]}return e},{})}}return{}};z.prototype._isCreatedEntity=function(e){return!!(e&&e.__metadata&&e.__metadata.created)};z.prototype._normalizePath=function(e,t,a){if(e&&e.indexOf("?")!==-1){e=e.substr(0,e.indexOf("?"))}if(!t&&!e.startsWith("/")){o.fatal(this+" path "+e+" must be absolute if no Context is set")}return this.resolve(e,t,a)||this.resolve(e,t)};z.prototype.getRefreshAfterChange=function(){return this.bRefreshAfterChange};z.prototype.setRefreshAfterChange=function(e){this.bRefreshAfterChange=e};z.prototype.setRetryAfterHandler=function(e){this.fnRetryAfter=e};z.prototype.isList=function(e,t){e=this.resolve(e,t);return e&&e.substr(e.lastIndexOf("/")).indexOf("(")===-1};z.prototype._isMetadataPath=function(e){var t=false;if(e&&e.indexOf("/#")>-1){t=true}return t};z.prototype.isMetaModelPath=function(e){return e.indexOf("##")==0||e.indexOf("/##")>-1};z.prototype._request=function(e,t,a,r,s,n,i){var o;if(e.fnRequest){const i=e.fnRequest;delete e.fnRequest;return i(e,t,a,r,s,n,true)}if(this.bDestroyed){return{abort:function(){}}}var d=this;function u(e){return function(){if(d.aPendingRequestHandles){var t=d.aPendingRequestHandles.indexOf(o);if(t>-1){d.aPendingRequestHandles.splice(t,1)}}if(!(o&&o.bSuppressErrorHandlerCall)){e.apply(this,arguments)}}}function h(a){return function(u){if(d.checkAndProcessRetryAfterError(e,u,t,a,r,s,n,o,i)){return}a(u)}}if(this.pRetryAfter){o={abort(){}};this.pRetryAfter.then(()=>{o.abort=this._request(e,t,a,r,s,n,i).abort},e=>{this.onRetryAfterRejected(a,undefined,e)})}else{o=B.request(e,u(t||B.defaultSuccess),u(h(a||B.defaultError)),r,s,n);if(!i&&e.async!==false){this.aPendingRequestHandles.push(o)}}return o};z.prototype.destroy=function(){this.bDestroyed=true;A.prototype.destroy.apply(this,arguments);if(this.aPendingRequestHandles){for(var e=this.aPendingRequestHandles.length-1;e>=0;e--){var t=this.aPendingRequestHandles[e];if(t&&t.abort){t.bSuppressErrorHandlerCall=true;t.abort()}}delete this.aPendingRequestHandles}if(this.sMetadataLoadEvent){clearTimeout(this.sMetadataLoadEvent)}if(this.oMetadataFailedEvent){clearTimeout(this.oMetadataFailedEvent)}if(this.oMetadata){this.oMetadata.detachFailed(this.onMetadataFailed);if(!this.oMetadata.isLoaded()&&!this.oMetadata.hasListeners("loaded")){this.oMetadata.destroy();delete this.oSharedMetaData.oMetadata}delete this.oMetadata;delete this.pMetadataLoaded}if(this.oMetaModel){this.oMetaModel.destroy();delete this.oMetaModel}if(this.oAnnotations){this.oAnnotations.detachSomeLoaded(this.onAnnotationsLoaded);this.oAnnotations.detachAllFailed(this.onAnnotationsFailed);this.oAnnotations.destroy();delete this.oAnnotations;delete this.pAnnotationsLoaded}if(this.oMessageParser){this.oMessageParser.destroy();delete this.oMessageParser}};z.prototype.setDeferredBatchGroups=function(e){this.setDeferredGroups(e)};z.prototype.setDeferredGroups=function(e){var t=this;this.mDeferredGroups={};c(e,function(e,a){t.mDeferredGroups[a]=a})};z.prototype.getDeferredBatchGroups=function(){return this.getDeferredGroups()};z.prototype.getDeferredGroups=function(){return Object.keys(this.mDeferredGroups)};z.prototype.setChangeBatchGroups=function(e){c(e,function(e,t){t.groupId=t.batchGroupId});this.setChangeGroups(e)};z.prototype.setChangeGroups=function(e){this.mChangeGroups=e};z.prototype.getChangeBatchGroups=function(){return this.getChangeGroups()};z.prototype.getChangeGroups=function(){return this.mChangeGroups};z.prototype.setMessageParser=function(e){if(!(e instanceof C)){o.error("Given MessageParser is not of type sap.ui.core.message.MessageParser");return this}e.setProcessor(this);this.oMessageParser=e;return this};z.prototype._parseResponse=function(e,t,a,r){try{if(!this.oMessageParser){this.oMessageParser=new I(this.sServiceUrl,this.oMetadata,!!this.bPersistTechnicalMessages);this.oMessageParser.setProcessor(this)}this.oMessageParser.parse(e,t,a,r,this.bIsMessageScopeSupported)}catch(e){o.error("Error parsing OData messages: "+e)}};z.prototype.callAfterUpdate=function(e){this.aCallAfterUpdate.push(e)};z.prototype.getMetaModel=function(){var e=this;if(!this.oMetaModel){this.oMetaModel=new D(this.oMetadata,this.oAnnotations,this);this.oMetaModel.loaded().then(function(){e.bMetaModelLoaded=true;e.checkUpdate(false,false,null,true)},function(e){var t=e.message,a;if(!t&&e.xmlDoc&&e.xmlDoc.parseError){t=e.xmlDoc.parseError.reason;a=e.xmlDoc.parseError.srcText}o.error("error in ODataMetaModel.loaded(): "+t,a,j)})}return this.oMetaModel};z.prototype.getOriginalProperty=function(e,t){return this._getObject(e,t,true)};z.prototype.getEntityByPath=function(e,t,a){var r,s=A.prototype.resolve.call(this,e,t);if(!s){return null}var n=s.split("/"),i=null,o=[];while(n.length>0){var d=n.join("/"),u=this._getObject(d);if(g(u)){r=this._getKey(u);if(r){i=u;break}}o.unshift(n.pop())}if(i){a.propertyPath=o.join("/");a.key=r;return i}return null};z.prototype.resolveFromCache=function(e){if(!this.mPathCache){return undefined}var t,a="",r,s,n;r=this.mPathCache[e]?this.mPathCache[e].canonicalPath:undefined;if(e&&r!==e){t=r||e;if(!r){n=t.lastIndexOf("/");a=t.substr(n);t=t.substr(0,n)}s=this.resolveFromCache(t);if(s&&s!==t){r=s+a}}return r};z.prototype.resolve=function(e,t,a){var r=A.prototype.resolve.call(this,e,t);if(r&&!this._isMetadataPath(r)&&a){var s=this.resolveFromCache(r);if(!s){s=this.oMetadata._calculateCanonicalPath(r);s=this.resolveFromCache(s)||s}this._writePathCache(r,s);return s}return r};z.prototype.resolveDeep=function(e,t){var a=A.prototype.resolve.call(this,e,t);if(e&&!e.startsWith("/")){a=t?t.sDeepPath+"/"+e:a}if(e===""){a=t?t.sDeepPath:a}return a};z.prototype.isLaundering=function(e,t){var a=this.resolve(e,t);return a in this.mLaunderingState&&this.mLaunderingState[a]>0};z.prototype.increaseLaundering=function(e,t){if(!g(t)){return}for(var a in t){if(a==="__metadata"){continue}var r=t[a];if(g(r)){this.increaseLaundering(e+"/"+a,r)}else{var s=e+"/"+a;if(!(s in this.mLaunderingState)){this.mLaunderingState[s]=0}this.mLaunderingState[s]++}}if(!(e in this.mLaunderingState)){this.mLaunderingState[e]=0}this.mLaunderingState[e]++};z.prototype.decreaseLaundering=function(e,t){if(!g(t)){return}for(var a in t){if(a==="__metadata"){continue}var r=t[a],s=e+"/"+a;if(g(r)){this.decreaseLaundering(s,r)}else if(s in this.mLaunderingState){this.mLaunderingState[s]--;if(this.mLaunderingState[s]===0){delete this.mLaunderingState[s]}}}this.mLaunderingState[e]--;if(this.mLaunderingState[e]===0){delete this.mLaunderingState[e]}};z.prototype._getRefreshAfterChange=function(e,t){if(e===undefined&&!(t in this.mDeferredGroups)){return this.bRefreshAfterChange}return e};z.prototype.getMessagesByEntity=function(e,t){var a=e,r=[],s;function n(e){var a=[];for(var r=0;r<e.length;r++){if(!t||t&&!e[r].persistent){a.push(e[r])}}return a}if(!a.startsWith("/")){a="/"+a}if(this.mMessages){for(s in this.mMessages){if(typeof a=="string"&&a.length>0&&s.startsWith(a)){r=r.concat(n(this.mMessages[s]))}}return r}return null};z.hasContextToken=function(e){const t=e.split("?")[1];return t?!!new URLSearchParams(t).get("sap-context-token"):false};z.isAnnotationsCacheable=function(e){return e.every(e=>z.hasContextToken(e)||K.test(e))};z.prototype._cacheSupported=function(e){if(this.sAnnotationURI&&!Array.isArray(this.sAnnotationURI)){this.sAnnotationURI=[this.sAnnotationURI]}const t=this.sAnnotationURI??[];return z.hasContextToken(e)&&z.isAnnotationsCacheable(t)};z.prototype._getAnnotationCacheKey=function(e){var t=this.bSkipMetadataAnnotationParsing||this.bIgnoreAnnotationsFromMetadata,a;if(this.bUseCache){if(!t){a=e+"#annotations"}if(this.sAnnotationURI){if(!Array.isArray(this.sAnnotationURI)){this.sAnnotationURI=[this.sAnnotationURI]}this.sAnnotationURI=this.sAnnotationURI.map(function(e){return e+"#annotations"});a=t?this.sAnnotationURI.join("_"):a+"_"+this.sAnnotationURI.join("_")}}return a};z.prototype.canonicalRequestsEnabled=function(){return this.bCanonicalRequests};z.prototype._decreaseDeferredRequestCount=function(e){if(e.deferred){this.iPendingDeferredRequests--}};z.prototype.enableCanonicalRequests=function(e){this.bCanonicalRequests=!!e};z.prototype.getMessageScope=function(){return this.sMessageScope};z.prototype.setMessageScope=function(e){if(e!==x.RequestedObjects&&e!==x.BusinessObject){throw new Error("Unsupported message scope: "+e)}this.sMessageScope=e};z.prototype.messageScopeSupported=function(){var e=this;return this.metadataLoaded().then(function(){return e.bIsMessageScopeSupported})};z.prototype.getContext=function(e,a,r,s,n){var i=this.mContexts[e];if(!i){i=this.mContexts[e]=new t(this,e,a,r,s,n)}else{i.setDeepPath(a||i.getDeepPath()||e)}return i};z.prototype.hasContext=function(e){return this.mContexts[e]};z.prototype.removeInternalMetadata=function(e){var t,a,r,s,n;if(e&&e.__metadata){t=e.__metadata.created;a=e.__metadata.deepPath;r=e.__metadata.invalid;delete e.__metadata.created;delete e.__metadata.deepPath;delete e.__metadata.invalid}for(s in e){n=e[s];if(Array.isArray(n)){n.forEach(z.prototype.removeInternalMetadata)}else if(typeof n==="object"){z.prototype.removeInternalMetadata(n)}}return{created:t,deepPath:a,invalid:r}};z.prototype._isCanonicalRequestNeeded=function(e){if(e!==undefined){return!!e}else{return!!this.bCanonicalRequests}};z.prototype.filterMatchingMessages=function(e,t){var a=this;return this.mMessages[e].filter(function(e){return a.isMessageMatching(e,t)})};z.prototype.isMessageMatching=function(e,t){var a=t.length;return e.aFullTargets.some(function(e){return e===t||e.startsWith(t)&&(t==="/"||e[a]==="/"||e[a]==="(")})};z.prototype.getMessages=function(e){return this.getMessagesByPath(e.sDeepPath,true).sort(b.compare)};z.prototype.getDeepPathForCanonicalPath=function(e){var t,a,n,i,o,d,u,h=e.slice(e.indexOf("("));o=this.aBindings.filter(function(e){return(e instanceof r||e instanceof s)&&e.isResolved()});for(d=0,u=o.length;d<u;d+=1){t=o[d];n=this.resolveDeep(t instanceof s?t.sPath+h:t.sPath,t.oContext);a=this.resolveFromCache(n);if(a===e){if(i&&i!==n){return undefined}i=n}}return i};z.prototype.getPersistTechnicalMessages=function(){return this.bPersistTechnicalMessages};z.prototype.setPersistTechnicalMessages=function(e){e=!!e;if(this.bPersistTechnicalMessages===e){return}if(this.bPersistTechnicalMessages!==undefined){o.warning("The flag whether technical messages should always be treated as persistent"+" has been overwritten to "+e,undefined,j)}this.bPersistTechnicalMessages=e;if(this.oMessageParser){this.oMessageParser._setPersistTechnicalMessages(e)}};z.prototype.createCodeListModelParameters=function(e){e=e||{};return{defaultCountMode:T.None,disableSoftStateHeader:true,headers:e.headers&&Object.assign({},e.headers),json:e.json,metadataUrlParams:e.metadataUrlParams&&Object.assign({},e.metadataUrlParams),persistTechnicalMessages:e.persistTechnicalMessages,serviceUrl:this.sServiceUrl,serviceUrlParams:e.serviceUrlParams&&Object.assign({},e.serviceUrlParams),tokenHandling:false,useBatch:false,warmupUrl:e.warmupUrl}};z.prototype.getCodeListModelParameters=function(){return this.mCodeListModelParams};z.prototype.getMetadataUrl=function(){return this.sMetadataUrl};z._createAbortedError=function(){return{aborted:true,headers:{},message:"Request aborted",responseText:"",statusCode:0,statusText:"abort",$rejected:true}};z.prototype._getCreatedContextsCache=function(){return this.oCreatedContextsCache};z._isChangedEntityEmpty=function(e){return Object.keys(e).every(function(e){return e==="__metadata"})};z.prototype._addSubEntitiesToPayload=function(e,t){var a,r,s,n,i=e.getSubContexts(),o=this;function d(e){var t=q.merge({},o._getObject(e.getPath()));delete t.__metadata;return t}for(r in i){s=i[r];if(Array.isArray(s)){t[r]=[];for(a=0;a<s.length;a+=1){n=d(s[a]);t[r].push(n);this._addSubEntitiesToPayload(s[a],n)}}else{n=d(s);t[r]=n;this._addSubEntitiesToPayload(s,n)}}};z.prototype._isTransitionMessagesOnly=function(e){return this.oTransitionMessagesOnlyGroups.has(e)};z.prototype.setTransitionMessagesOnlyForGroup=function(e,t){var a=t?"add":"delete";this.oTransitionMessagesOnlyGroups[a](e)};z.prototype.setAnnotationChangePromise=function(e){if(this.pAnnotationChanges){throw Error("Promise is set too late; an annotation change promise has already been set or the meta model"+" is already used")}this.pAnnotationChanges=e};z.prototype._requestAnnotationChanges=function(){this.pAnnotationChanges??=m.resolve();return this.pAnnotationChanges};const Q=z.extend;z.extend=function(){o.error("[FUTURE FATAL] sap.ui.model.odata.v2.ODataModel must not be extended");return Q.apply(this,arguments)};return z});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v2/ODataTreeBinding", ["sap/base/assert","sap/base/Log","sap/base/util/deepExtend","sap/base/util/each","sap/base/util/isEmptyObject","sap/ui/model/ChangeReason","sap/ui/model/Context","sap/ui/model/Filter","sap/ui/model/FilterProcessor","sap/ui/model/FilterType","sap/ui/model/Sorter","sap/ui/model/SorterProcessor","sap/ui/model/TreeBinding","sap/ui/model/TreeBindingUtils","sap/ui/model/odata/CountMode","sap/ui/model/odata/ODataUtils","sap/ui/model/odata/OperationMode"],function(e,t,i,s,r,o,a,n,h,l,d,f,u,p,g,c,y){"use strict";var v=u.extend("sap.ui.model.odata.v2.ODataTreeBinding",{constructor:function(e,i,s,r,o,a){u.apply(this,arguments);this.mParameters=this.mParameters||o||{};this.sGroupId=undefined;this.sRefreshGroupId=undefined;this.oFinalLengths={};this.oLengths={};this.oKeys={};this.bNeedsUpdate=false;this._bRootMissing=false;this.bSkipDataEvents=false;if(a instanceof d){a=[a]}this.aSorters=a||[];this.sFilterParams="";this.mNormalizeCache={};r=r||[];if(r instanceof n){r=[r]}if(r.length>1){r=[h.groupFilters(r)]}this.aApplicationFilters=r;this.oModel.checkFilter(this.aApplicationFilters);this.mRequestHandles={};this.oRootContext=null;this.iNumberOfExpandedLevels=o&&o.numberOfExpandedLevels||0;this.iRootLevel=o&&o.rootLevel||0;this.sCountMode=o&&o.countMode||this.oModel.sDefaultCountMode;if(this.sCountMode==g.None){t.fatal("To use an ODataTreeBinding at least one CountMode must be supported by the service!")}if(o){this.sGroupId=o.groupId||o.batchGroupId}this.bInitial=true;this._mLoadedSections={};this._iPageSize=0;this.sOperationMode=o&&o.operationMode||this.oModel.sDefaultOperationMode;if(this.sOperationMode===y.Default){this.sOperationMode=y.Server}this.bClientOperation=this.sOperationMode===y.Client;this.iThreshold=o&&o.threshold||0;this.bThresholdRejected=false;this.iTotalCollectionCount=null;this.bUseServersideApplicationFilters=o&&o.useServersideApplicationFilters||false;this.bUsePreliminaryContext=this.mParameters.usePreliminaryContext||e.bPreliminaryContext;this.oAllKeys=null;this.oAllLengths=null;this.oAllFinalLengths=null;this.bTransitionMessagesOnly=!!this.mParameters.transitionMessagesOnly;this.bRefresh=false;this.iMaximumTopValue=5e3}});v.DRILLSTATES={Collapsed:"collapsed",Expanded:"expanded",Leaf:"leaf"};v.prototype._getHeaders=function(){return this.bTransitionMessagesOnly?{"sap-messages":"transientOnly"}:undefined};v.prototype._getNodeFilterParams=function(e){var t=e.isRoot?this.oTreeProperties["hierarchy-node-for"]:this.oTreeProperties["hierarchy-parent-node-for"];var i=this._getEntityType();return c._createFilterParams(new n(t,"EQ",e.id),this.oModel.oMetadata,i)};v.prototype._getLevelFilterParams=function(e,t){var i=this._getEntityType();return c._createFilterParams(new n(this.oTreeProperties["hierarchy-level-for"],e,t),this.oModel.oMetadata,i)};v.prototype._loadSingleRootNodeByNavigationProperties=function(e,t){var i=this,s;if(this.mRequestHandles[t]){this.mRequestHandles[t].abort()}s=this.sRefreshGroupId?this.sRefreshGroupId:this.sGroupId;var r=this.getResolvedPath();if(r){this.mRequestHandles[t]=this.oModel.read(r,{groupId:s,headers:this._getHeaders(),success:function(s){var r=i._getNavPath(i.getPath());if(s){var o=s;var a=i.oModel._getKey(o);var n=i.oModel.getContext("/"+a);i.oRootContext=n;i._processODataObject(n.getObject(),e,r)}else{i._bRootMissing=true}i.bNeedsUpdate=true;delete i.mRequestHandles[t];i.oModel.callAfterUpdate(function(){i.fireDataReceived({data:s})})},error:function(e){if(e&&e.statusCode!=0&&e.statusText!="abort"){i.bNeedsUpdate=true;i._bRootMissing=true;delete i.mRequestHandles[t];i.fireDataReceived()}}})}};v.prototype.getRootContexts=function(e,t,i){var s=null,r={numberOfExpandedLevels:this.iNumberOfExpandedLevels},o=[];if(this.isInitial()){return o}e=e||0;t=t||this.oModel.sizeLimit;i=i||0;var a=""+s+"-"+e+"-"+this._iPageSize+"-"+i;if(this.bHasTreeAnnotations){this.bDisplayRootNode=true;o=this._getContextsForNodeId(null,e,t,i)}else{s=this.getResolvedPath();var n=this.oModel.isList(this.sPath,this.getContext());if(n){this.bDisplayRootNode=true}if(this.bDisplayRootNode&&!n){if(this.oRootContext){return[this.oRootContext]}else if(this._bRootMissing){return[]}else{this._loadSingleRootNodeByNavigationProperties(s,a)}}else{r.navPath=this._getNavPath(this.getPath());if(!this.bDisplayRootNode){s+="/"+r.navPath}o=this._getContextsForNodeId(s,e,t,i,r)}}return o};v.prototype.getNodeContexts=function(e,t,i,s){var r,o={};if(this.isInitial()){return[]}if(this.bHasTreeAnnotations){r=this.oModel.getKey(e);o.level=parseInt(e.getProperty(this.oTreeProperties["hierarchy-level-for"]))+1}else{var a=this._getNavPath(e.getPath());if(!a){return[]}r=this.oModel.resolve(a,e);o.navPath=this.oNavigationPaths[a]}return this._getContextsForNodeId(r,t,i,s,o)};v.prototype.hasChildren=function(e){var i;if(this.bHasTreeAnnotations){if(!e){return false}var s=e.getProperty(this.oTreeProperties["hierarchy-drill-state-for"]);var r=this.oModel.getKey(e);i=this.oLengths[r];if(i===0&&this.oFinalLengths[r]){return false}if(s==="expanded"||s==="collapsed"){return true}else if(s==="leaf"){return false}else{t.warning("The entity '"+e.getPath()+"' has not specified Drilldown State property value.");if(s===undefined||s===""){return true}return false}}else{if(!e){return this.oLengths[this.getPath()]>0}i=this.oLengths[e.getPath()+"/"+this._getNavPath(e.getPath())];return i!==0}};v.prototype.getChildCount=function(e){if(this.bHasTreeAnnotations){var t;if(!e){t=null}else{t=this.oModel.getKey(e)}return this.oLengths[t]}else{if(!e){if(!this.bDisplayRootNode){return this.oLengths[this.getPath()+"/"+this._getNavPath(this.getPath())]}else{return this.oLengths[this.getPath()]}}return this.oLengths[e.getPath()+"/"+this._getNavPath(e.getPath())]}};v.prototype._getContextsForNodeId=function(e,t,i,s,r){var o=[],a;if(this.sOperationMode==y.Auto){if(this.iTotalCollectionCount==null){if(!this.bCollectionCountRequested){this._getCountForCollection();this.bCollectionCountRequested=true}return[]}}t=t||0;i=i||this.oModel.iSizeLimit;s=s||0;if(this.sOperationMode==y.Auto){if(this.iThreshold>=0){s=Math.max(this.iThreshold,s)}}if(!this._mLoadedSections[e]){this._mLoadedSections[e]=[]}if(this.oFinalLengths[e]&&this.oLengths[e]<t+i){i=Math.max(this.oLengths[e]-t,0)}var n=this;var h=function(t){for(var i=0;i<n._mLoadedSections[e].length;i++){var s=n._mLoadedSections[e][i];if(t>=s.startIndex&&t<s.startIndex+s.length){return true}}return false};var l=[];var d=Math.max(t-s-this._iPageSize,0);if(this.oKeys[e]){var f=t+i+s;if(this.oLengths[e]){f=Math.min(f,this.oLengths[e])}for(d;d<f;d++){a=this.oKeys[e][d];if(!a){if(!this.bClientOperation&&!h(d)){l=p.mergeSections(l,{startIndex:d,length:1})}}if(d>=t&&d<t+i){if(a){const e=this.oModel.resolveDeep(this.sPath,this.oContext)+a.slice(a.indexOf("("));o.push(this.oModel.getContext("/"+a,e))}else{o.push(undefined)}}}var u=Math.max(t-s-this._iPageSize,0);var g=t+i+s;var c=l[0]&&l[0].startIndex===u&&l[0].startIndex+l[0].length===g;if(l.length>0&&!c){d=Math.max(l[0].startIndex-s-this._iPageSize,0);var m=l[0].startIndex;for(d;d<m;d++){a=this.oKeys[e][d];if(!a){if(!h(d)){l=p.mergeSections(l,{startIndex:d,length:1})}}}d=l[l.length-1].startIndex+l[l.length-1].length;var P=d+s+this._iPageSize;if(this.oLengths[e]){P=Math.min(P,this.oLengths[e])}for(d;d<P;d++){a=this.oKeys[e][d];if(!a){if(!h(d)){l=p.mergeSections(l,{startIndex:d,length:1})}}}}}else if(!h(t)){var C=t-d;l=p.mergeSections(l,{startIndex:d,length:i+C+s})}if(this.oModel.getServiceMetadata()){if(l.length>0){var _=[];var R="";if(this.bHasTreeAnnotations){if(this.sOperationMode=="Server"||this.bUseServersideApplicationFilters){R=this.getFilterParams()}if(e){R=R?"%20and%20"+R:"";var b=this.oModel.getContext("/"+e);var T=b.getProperty(this.oTreeProperties["hierarchy-node-for"]);var M=this._getNodeFilterParams({id:T});_.push("$filter="+M+R)}else if(e==null){var L="";if(!this.bClientOperation||this.iRootLevel>0){var x=this.bClientOperation?"GE":"EQ";L=this._getLevelFilterParams(x,this.iRootLevel)}if(L||R){if(R&&L){R="%20and%20"+R}_.push("$filter="+L+R)}}}else{R=this.getFilterParams();if(R){_.push("$filter="+R)}}if(this.sCustomParams){_.push(this.sCustomParams)}if(!this.bClientOperation){for(d=0;d<l.length;d++){var F=l[d];this._mLoadedSections[e]=p.mergeSections(this._mLoadedSections[e],{startIndex:F.startIndex,length:F.length});this._loadSubNodes(e,F.startIndex,F.length,0,_,r,F)}}else if(!this.oAllKeys&&!this.mRequestHandles[v.REQUEST_KEY_CLIENT]){this._loadCompleteTreeWithAnnotations(_)}}}return o};v.prototype._getCountForCollection=function(){if(!this.bHasTreeAnnotations||this.sOperationMode!=y.Auto){t.error("The Count for the collection can only be retrieved with Hierarchy Annotations and in OperationMode.Auto.");return}var e=[];function i(e){var t=e.__count?parseInt(e.__count):parseInt(e);this.iTotalCollectionCount=t;if(this.sOperationMode==y.Auto){if(this.iTotalCollectionCount<=this.iThreshold){this.bClientOperation=true;this.bThresholdRejected=false}else{this.bClientOperation=false;this.bThresholdRejected=true}this._fireChange({reason:o.Change})}}function s(e){if(e&&e.statusCode===0&&e.statusText==="abort"){return}var i="Request for $count failed: "+e.message;if(e.response){i+=", "+e.response.statusCode+", "+e.response.statusText+", "+e.response.body}t.warning(i)}var r=this.getResolvedPath();var a="";if(this.iRootLevel>0){a=this._getLevelFilterParams("GE",this.getRootLevel())}var n="";if(this.bUseServersideApplicationFilters){n=this.getFilterParams()}if(a||n){if(n&&a){n="%20and%20"+n}e.push("$filter="+a+n)}var h="";let l;if(this.sCountMode==g.Request||this.sCountMode==g.Both){h="/$count"}else if(this.sCountMode==g.Inline||this.sCountMode==g.InlineRepeat){e.push("$top=0");e.push("$inlinecount=allpages");l=this._getHeaders()}if(r){this.oModel.read(r+h,{headers:l,urlParameters:e,success:i.bind(this),error:s.bind(this),groupId:this.sRefreshGroupId?this.sRefreshGroupId:this.sGroupId})}};v.prototype._getCountForNodeId=function(e){var i=this,s;var r=[];function o(t){i.oFinalLengths[e]=true;i.oLengths[e]=parseInt(t)}function a(e){if(e&&e.statusCode===0&&e.statusText==="abort"){return}var i="Request for $count failed: "+e.message;if(e.response){i+=", "+e.response.statusCode+", "+e.response.statusText+", "+e.response.body}t.warning(i)}var n;var h=this.getFilterParams()||"";var l="";if(this.bHasTreeAnnotations){n=this.getResolvedPath();if(e!=null){const t=this.oModel.getContext("/"+e);const i=t.getProperty(this.oTreeProperties["hierarchy-node-for"]);l=this._getNodeFilterParams({id:i})}else{l=this._getLevelFilterParams("EQ",this.getRootLevel())}}else{n=e}if(l||h){var d="";if(l&&h){d="%20and%20"}h="$filter="+h+d+l;r.push(h)}if(n){s=this.sRefreshGroupId?this.sRefreshGroupId:this.sGroupId;this.oModel.read(n+"/$count",{urlParameters:r,success:o,error:a,sorters:this.aSorters,groupId:s})}};v.prototype._getParentMap=function(e){var i={};for(var s=0;s<e.length;s++){var r=e[s][this.oTreeProperties["hierarchy-node-for"]];if(i[r]){t.warning("ODataTreeBinding: Duplicate key: "+r+"!")}i[r]=this.oModel._getKey(e[s])}return i};v.prototype._createKeyMap=function(e,t){if(e&&e.length>0){var i=this._getParentMap(e),s={};for(var r=t?1:0;r<e.length;r++){var o=e[r][this.oTreeProperties["hierarchy-parent-node-for"]],a=i[o];if(parseInt(e[r][this.oTreeProperties["hierarchy-level-for"]])===this.iRootLevel){a="null"}if(!s[a]){s[a]=[]}s[a].push(this.oModel._getKey(e[r]))}return s}return undefined};v.prototype._importCompleteKeysHierarchy=function(e){var t,i;for(i in e){t=e[i].length||0;this.oKeys[i]=e[i];this.oLengths[i]=t;this.oFinalLengths[i]=true;this._mLoadedSections[i]=[{startIndex:0,length:t}]}};v.prototype._updateNodeKey=function(e,t){var i=this.oModel.getKey(e.context),s,r;if(parseInt(e.context.getProperty(this.oTreeProperties["hierarchy-level-for"]))===this.iRootLevel){s="null"}else{s=this.oModel.getKey(e.parent.context)}r=this.oKeys[s].indexOf(i);if(r!==-1){this.oKeys[s][r]=t}else{this.oKeys[s].push(t)}};v.prototype._loadSubTree=function(e,t){return new Promise(function(i,s){var r,o,a;if(!this.bHasTreeAnnotations){s(new Error("_loadSubTree: doesn't support hierarchies without tree annotations"));return}r="loadSubTree-"+t.join("-");if(this.mRequestHandles[r]){this.mRequestHandles[r].abort()}var n=function(t){if(t.results.length>0){var s=this.oModel.getKey(t.results[0]);this._updateNodeKey(e,s);var o=this._createKeyMap(t.results,true);this._importCompleteKeysHierarchy(o)}delete this.mRequestHandles[r];this.bNeedsUpdate=true;this.oModel.callAfterUpdate(function(){this.fireDataReceived({data:t})}.bind(this));i(t)}.bind(this);var h=function(e){delete this.mRequestHandles[r];if(e&&e.statusCode===0&&e.statusText==="abort"){return}this.fireDataReceived();s()}.bind(this);if(!this.bSkipDataEvents){this.fireDataRequested()}this.bSkipDataEvents=false;a=this.getResolvedPath();if(a){o=this.sRefreshGroupId?this.sRefreshGroupId:this.sGroupId;this.mRequestHandles[r]=this.oModel.read(a,{headers:this._getHeaders(),urlParameters:t,success:n,error:h,sorters:this.aSorters,groupId:o})}}.bind(this))};v.prototype._loadSubNodes=function(e,t,i,s,r,o,a){var n=this,h,l=false;if((t||i)&&!this.bClientOperation){r.push("$skip="+t+"&$top="+(i+s))}if(!this.oFinalLengths[e]||this.sCountMode==g.InlineRepeat){if(this.sCountMode==g.Inline||this.sCountMode==g.InlineRepeat||this.sCountMode==g.Both){r.push("$inlinecount=allpages");l=true}else if(this.sCountMode==g.Request){n._getCountForNodeId(e)}}var d=""+e+"-"+t+"-"+this._iPageSize+"-"+s;function f(i){var s,r;if(i){n.oKeys[e]=n.oKeys[e]||[];if(l&&i.__count>=0){n.oLengths[e]=parseInt(i.__count);n.oFinalLengths[e]=true}}if(Array.isArray(i.results)&&i.results.length>0){if(n.bHasTreeAnnotations){var a={};for(r=0;r<i.results.length;r++){s=i.results[r];if(r==0){a[e]=t}else if(a[e]==undefined){a[e]=0}n.oKeys[e][a[e]]=n.oModel._getKey(s);a[e]++}}else{for(r=0;r<i.results.length;r++){s=i.results[r];var h=n.oModel._getKey(s);n._processODataObject(s,"/"+h,o.navPath);n.oKeys[e][r+t]=h}}}else if(i&&!Array.isArray(i.results)){n.oKeys[null]=n.oModel._getKey(i);if(!n.bHasTreeAnnotations){n._processODataObject(i,e,o.navPath)}}delete n.mRequestHandles[d];n.bNeedsUpdate=true;n.oModel.callAfterUpdate(function(){n.fireDataReceived({data:i})})}function u(t){if(t&&t.statusCode===0&&t.statusText==="abort"){return}n.fireDataReceived();delete n.mRequestHandles[d];if(a){var i=[];for(var s=0;s<n._mLoadedSections[e].length;s++){var r=n._mLoadedSections[e][s];if(a.startIndex>=r.startIndex&&a.startIndex+a.length<=r.startIndex+r.length){if(a.startIndex!==r.startIndex&&a.length!==r.length){i=p.mergeSections(i,{startIndex:r.startIndex,length:a.startIndex-r.startIndex});i=p.mergeSections(i,{startIndex:a.startIndex+a.length,length:r.startIndex+r.length-(a.startIndex+a.length)})}}else{i.push(r)}}n._mLoadedSections[e]=i}}if(e!==undefined){if(!this.bSkipDataEvents){this.fireDataRequested()}this.bSkipDataEvents=false;var c;if(this.bHasTreeAnnotations){c=this.getResolvedPath()}else{c=e}if(this.mRequestHandles[d]){this.mRequestHandles[d].abort()}if(c){h=this.sRefreshGroupId?this.sRefreshGroupId:this.sGroupId;this.mRequestHandles[d]=this.oModel.read(c,{headers:this._getHeaders(),urlParameters:r,success:f,error:u,sorters:this.aSorters,groupId:h})}}};v.REQUEST_KEY_CLIENT="_OPERATIONMODE_CLIENT_TREE_LOADING";v.prototype._loadCompleteTreeWithAnnotations=function(e,s=[],r=0){var a=this;var n=v.REQUEST_KEY_CLIENT;const h=e.slice();var l=function(e){if(e.results&&e.results.length>0){r+=e.results.length;s.push(e.results);if(e.__next||e.results.length===a.iMaximumTopValue){delete a.mRequestHandles[n];a._loadCompleteTreeWithAnnotations(h,s,r);return}}let o;if(r>0){o=Array.prototype.concat.apply([],s);var l={};var d;for(var f=0;f<o.length;f++){d=o[f];var u=d[a.oTreeProperties["hierarchy-node-for"]];if(l[u]){t.warning("ODataTreeBinding - Duplicate data entry for key: "+u+"!")}l[u]=a.oModel._getKey(d)}for(var p=0;p<o.length;p++){d=o[p];var g=d[a.oTreeProperties["hierarchy-parent-node-for"]];var c=l[g];if(parseInt(d[a.oTreeProperties["hierarchy-level-for"]])===a.iRootLevel){c="null"}a.oKeys[c]=a.oKeys[c]||[];var y=a.oModel._getKey(d);a.oKeys[c].push(y);a.oLengths[c]=a.oLengths[c]||0;a.oLengths[c]++;a.oFinalLengths[c]=true;a._mLoadedSections[c]=a._mLoadedSections[c]||[];a._mLoadedSections[c][0]=a._mLoadedSections[c][0]||{startIndex:0,length:0};a._mLoadedSections[c][0].length++}}else{o=[];a.oKeys["null"]=[];a.oLengths["null"]=0;a.oFinalLengths["null"]=true}a.oAllKeys=i({},a.oKeys);a.oAllLengths=i({},a.oLengths);a.oAllFinalLengths=i({},a.oFinalLengths);delete a.mRequestHandles[n];a.bNeedsUpdate=true;if(a.aApplicationFilters&&a.aApplicationFilters.length>0||a.aFilters&&a.aFilters.length>0){a._applyFilter()}if(a.aSorters&&a.aSorters.length>0){a._applySort()}a.oModel.callAfterUpdate(function(){a.fireDataReceived({data:{results:o}})})};var d=function(e){delete a.mRequestHandles[n];var t=e.statusCode==0;if(!t){a.oKeys={};a.oLengths={};a.oFinalLengths={};a.oAllKeys={};a.oAllLengths={};a.oAllFinalLengths={};a._fireChange({reason:o.Change});a.fireDataReceived()}};if(!this.bSkipDataEvents&&r===0){this.fireDataRequested()}this.bSkipDataEvents=false;if(this.mRequestHandles[n]){this.mRequestHandles[n].abort()}var f=this.getResolvedPath();if(f){if(this.iTotalCollectionCount){e.push("$top="+this.iTotalCollectionCount)}this.mRequestHandles[n]=this.oModel.read(f,{headers:this._getHeaders(),urlParameters:r?["$skip="+r+"&$top="+a.iMaximumTopValue,...h]:e,success:l,error:d,sorters:this.aSorters,groupId:this.sRefreshGroupId?this.sRefreshGroupId:this.sGroupId})}};v.prototype.resetData=function(e){var t,i=false;if(typeof e==="boolean"){i=e}else{t=e}if(t){var s=t.getPath();delete this.oKeys[s];delete this.oLengths[s];delete this.oFinalLengths[s];delete this._mLoadedSections[s]}else{this.oKeys={};this.bClientOperation=this.sOperationMode===y.Client;this.bThresholdRejected=false;this.iTotalCollectionCount=null;this.bCollectionCountRequested=false;this.oAllKeys=null;this.oAllLengths=null;this.oAllFinalLengths=null;this.oLengths={};this.oFinalLengths={};this.oRootContext=null;this._bRootMissing=false;if(!i){this._abortPendingRequest()}this._mLoadedSections={};this._iPageSize=0;this.sFilterParams=""}};v.prototype.refresh=function(e,t){if(typeof e==="string"){t=e}this.sRefreshGroupId=t;this._refresh(e);this.sRefreshGroupId=undefined};v.prototype._refresh=function(e,t,i){var s=false;if(!e){if(i){var r=this.getResolvedPath();if(r){if(r.indexOf("?")!==-1){r=r.split("?")[0]}var a=this.oModel.oMetadata._getEntityTypeByPath(r);if(a&&a.entityType in i){s=true}}}if(t&&!s){s=this._isRefreshAfterChangeAllowed()&&this._hasChangedEntity(t)}if(!t&&!i){s=true}}if(e||s){this.resetData();this.bNeedsUpdate=false;this.bRefresh=true;this._fireRefresh({reason:o.Refresh})}};v.prototype._isRefreshAfterChangeAllowed=function(){return true};v.prototype._hasChangedEntity=function(e){var t,i;for(i in this.oKeys){for(t in e){if(this.oKeys[i].includes(t)){return true}}}return false};v.prototype.filter=function(e,s,r){var a=false;s=s||l.Control;this.oModel.checkFilter(e);if(s==l.Control&&(!this.bClientOperation||this.sOperationMode==y.Server)){t.warning("Filtering with ControlFilters is ONLY possible if the ODataTreeBinding is running in OperationMode.Client or "+"OperationMode.Auto, in case the given threshold is lower than the total number of tree nodes.");return this}if(!e){e=[]}if(e instanceof n){e=[e]}if(s===l.Control){this.aFilters=e}else{if(e.length>1){e=[h.groupFilters(e)]}this.aApplicationFilters=e}if(!this.bInitial){if(this.bClientOperation&&(s===l.Control||s===l.Application&&!this.bUseServersideApplicationFilters)){if(this.oAllKeys){this.oKeys=i({},this.oAllKeys);this.oLengths=i({},this.oAllLengths);this.oFinalLengths=i({},this.oAllFinalLengths);this._applyFilter();this._applySort();this._fireChange({reason:o.Filter})}else{this.sChangeReason=o.Filter}}else{this.resetData();this.sChangeReason=o.Filter;this._fireRefresh({reason:this.sChangeReason})}a=true}if(r){return a}else{return this}};v.prototype._applyFilter=function(){var e=this;var i;if(this.bUseServersideApplicationFilters){i=h.groupFilters(this.aFilters)}else{i=h.combineFilters(this.aFilters,this.aApplicationFilters)}var s=function(t){var s=h.apply([t],i,function(t,i){var s=e.oModel.getContext("/"+t);return e.oModel.getProperty(i,s)},e.mNormalizeCache);return s.length>0};var r={};this._filterRecursive({id:"null"},r,s);this.oKeys=r;if(!this.oKeys["null"]){t.warning("Clientside filter did not match on any node!")}else{this.oLengths["null"]=this.oKeys["null"].length;this.oFinalLengths["null"]=true}};v.prototype._filterRecursive=function(e,t,i){var s=this.oKeys[e.id];if(s){e.children=e.children||[];for(var r=0;r<s.length;r++){var o=this._filterRecursive({id:s[r]},t,i);if(o.isFiltered){t[e.id]=t[e.id]||[];t[e.id].push(o.id);e.children.push(o)}}if(e.children.length>0){e.isFiltered=true}else{e.isFiltered=i(e.id)}if(e.isFiltered){this.oLengths[e.id]=e.children.length;this.oFinalLengths[e.id]=true}return e}else{e.isFiltered=i(e.id);return e}};v.prototype.sort=function(e,t){var i=false;if(e instanceof d){e=[e]}this.aSorters=e||[];if(!this.bInitial){this._abortPendingRequest();if(this.bClientOperation){this.addSortComparators(e,this.oEntityType);if(this.oAllKeys){this._applySort();this._fireChange({reason:o.Sort})}else{this.sChangeReason=o.Sort}}else{this.resetData(undefined,{reason:o.Sort});this.sChangeReason=o.Sort;this._fireRefresh({reason:this.sChangeReason})}i=true}if(t){return i}else{return this}};v.prototype.addSortComparators=function(i,r){var o,a;if(!r){t.warning("Cannot determine sort comparators, as entitytype of the collection is unknown!");return}s(i,function(t,i){if(!i.fnCompare){o=this.oModel.oMetadata._getPropertyMetadata(r,i.sPath);a=o&&o.type;e(o,"PropertyType for property "+i.sPath+" of EntityType "+r.name+" not found!");i.fnCompare=c.getComparator(a)}}.bind(this))};v.prototype._applySort=function(){var e=this,t;var i=function(i,s){t=e.oModel.getContext("/"+i);return e.oModel.getProperty(s,t)};for(var s in this.oKeys){f.apply(this.oKeys[s],this.aSorters,i)}};v.prototype.checkUpdate=function(e,t){var i=this.sChangeReason?this.sChangeReason:o.Change;var r=false;if(!e){if(this.bNeedsUpdate||!t){r=true}else{s(this.oKeys,function(e,i){s(i,function(e,i){if(i in t){r=true;return false}return true});if(r){return false}return true})}}if(e||r){this.bNeedsUpdate=false;this._fireChange({reason:i})}this.sChangeReason=undefined};v.prototype._getNavPath=function(e){var t=this.oModel.resolve(e,this.getContext());if(!t){return undefined}var i=t.split("/"),s=i[i.length-1],r;var o=s.split("(")[0];if(o&&this.oNavigationPaths[o]){r=this.oNavigationPaths[o]}return r};v.prototype._processODataObject=function(e,t,i){var s=[],r=this;if(i&&i.indexOf("/")>-1){s=i.split("/");i=s[0];s.splice(0,1)}const o=this.getModel();var a=o._getObject(t);if(Array.isArray(a)){this.oKeys[t]=a;this.oLengths[t]=a.length;this.oFinalLengths[t]=true}else if(a){this.oLengths[t]=1;this.oFinalLengths[t]=true}if(i&&e[i]){if(Array.isArray(a)){a.forEach(function(e){r._processODataObject(o.getProperty("/"+e),"/"+e+"/"+i,s.join("/"))})}else if(typeof a==="object"){r._processODataObject(e,t+"/"+i,s.join("/"))}}};v.prototype._hasTreeAnnotations=function(){var e=this.oModel.oMetadata,i=this.getResolvedPath(),r,o=e.mNamespaces["sap"],a=this;this.oTreeProperties={"hierarchy-level-for":false,"hierarchy-parent-node-for":false,"hierarchy-node-for":false,"hierarchy-drill-state-for":false};var n=function(){var e=0;var i=0;s(a.oTreeProperties,function(t,s){i++;if(s){e+=1}});if(e===i){return true}else if(e>0&&e<i){t.warning("Incomplete hierarchy tree annotations. Please check your service metadata definition!")}return false};if(this.mParameters&&this.mParameters.treeAnnotationProperties){this.oTreeProperties["hierarchy-level-for"]=this.mParameters.treeAnnotationProperties.hierarchyLevelFor;this.oTreeProperties["hierarchy-parent-node-for"]=this.mParameters.treeAnnotationProperties.hierarchyParentNodeFor;this.oTreeProperties["hierarchy-node-for"]=this.mParameters.treeAnnotationProperties.hierarchyNodeFor;this.oTreeProperties["hierarchy-drill-state-for"]=this.mParameters.treeAnnotationProperties.hierarchyDrillStateFor;return n()}if(i.indexOf("?")!==-1){i=i.split("?")[0]}r=e._getEntityTypeByPath(i);if(!r){t.fatal("EntityType for path "+i+" could not be found.");return false}s(r.property,function(e,t){if(!t.extensions){return true}s(t.extensions,function(e,i){var s=i.name;if(i.namespace===o&&s in a.oTreeProperties&&!a.oTreeProperties[s]){a.oTreeProperties[s]=t.name}});return true});return n()};v.prototype.initialize=function(){if(this.oModel.oMetadata&&this.oModel.oMetadata.isLoaded()&&this.bInitial){if(this.isResolved()){this._initialize(this._fireRefresh.bind(this,{reason:o.Refresh}))}else{this._fireRefresh({reason:o.Refresh})}}return this};v.prototype._initialize=function(e){this.bInitial=false;this.bHasTreeAnnotations=this._hasTreeAnnotations();this.oEntityType=this._getEntityType();this._processSelectParameters();this._applyAdapter(e);return this};v.prototype.setContext=function(e){if(e&&e.isPreliminary()&&!this.bUsePreliminaryContext){return}if(e&&e.isUpdated()&&this.bUsePreliminaryContext&&this.oContext===e){this._fireChange({reason:o.Context});return}if(a.hasChanged(this.oContext,e)){this.oContext=e;if(!this.isRelative()){return}if(this.getResolvedPath()){this.resetData();this._initialize(this._fireChange.bind(this,{reason:o.Context}))}else if(!r(this.oAllKeys)||!r(this.oKeys)||!r(this._aNodes)){this.resetData();this._fireChange({reason:o.Context})}}};v.prototype.applyAdapterInterface=function(){this.getContexts=this.getContexts||function(){return[]};this.getNodes=this.getNodes||function(){return[]};this.getLength=this.getLength||function(){return 0};this.isLengthFinal=this.isLengthFinal||function(){return false};this.getContextByIndex=this.getContextByIndex||function(){return};this.attachSelectionChanged=this.attachSelectionChanged||function(e,t,i){this.attachEvent("selectionChanged",e,t,i);return this};this.detachSelectionChanged=this.detachSelectionChanged||function(e,t){this.detachEvent("selectionChanged",e,t);return this};this.fireSelectionChanged=this.fireSelectionChanged||function(e){this.fireEvent("selectionChanged",e);return this};return this};v.prototype._applyAdapter=function(e){var i,r,o,a,n,h,l="sap/ui/model/odata/ODataTreeBindingAdapter",d="hierarchy-node-descendant-count-for",f="hierarchy-preorder-rank-for",u="hierarchy-sibling-rank-for",p=this;if(!this.bHasTreeAnnotations&&!this.oNavigationPaths){t.error("Neither hierarchy annotations, "+"nor navigation properties are specified to build the tree.",this);return}if(this.bHasTreeAnnotations){i=this.getResolvedPath();if(i.indexOf("?")!==-1){i=i.split("?")[0]}r=this.oModel.oMetadata._getEntityTypeByPath(i);s(r.property,function(e,t){if(!t.extensions){return true}s(t.extensions,function(e,i){h=i.name;if(i.namespace===p.oModel.oMetadata.mNamespaces["sap"]&&(h==d||h==u||h==f)){p.oTreeProperties[h]=t.name}});return true});this.oTreeProperties[d]=this.oTreeProperties[d]||this.mParameters.treeAnnotationProperties&&this.mParameters.treeAnnotationProperties.hierarchyNodeDescendantCountFor;if(this.oTreeProperties[d]&&this.sOperationMode==y.Server){this.oTreeProperties[u]=this.oTreeProperties[u]||this.mParameters.treeAnnotationProperties&&this.mParameters.treeAnnotationProperties.hierarchySiblingRankFor;this.oTreeProperties[f]=this.oTreeProperties[f]||this.mParameters.treeAnnotationProperties&&this.mParameters.treeAnnotationProperties.hierarchyPreorderRankFor;if(this.mParameters.restoreTreeStateAfterChange){if(this.oTreeProperties[u]&&this.oTreeProperties[f]){this._bRestoreTreeStateAfterChange=true;this._aTreeKeyProperties=[];for(o=r.key.propertyRef.length-1;o>=0;o--){this._aTreeKeyProperties.push(r.key.propertyRef[o].name)}}else{t.warning("Tree state restoration not possible: Missing annotation "+'"hierarchy-sibling-rank-for" and/or '+'"hierarchy-preorder-rank-for"');this._bRestoreTreeStateAfterChange=false}}else{this._bRestoreTreeStateAfterChange=false}if(this.mParameters&&this.mParameters.select){if(this.mParameters.select.indexOf(this.oTreeProperties[d])===-1){this.mParameters.select+=","+this.oTreeProperties[d]}if(this._bRestoreTreeStateAfterChange){for(a=this._aTreeKeyProperties.length-1;a>=0;a--){n=this._aTreeKeyProperties[a];if(this.mParameters.select.indexOf(n)===-1){this.mParameters.select+=","+n}}}this.sCustomParams=this.oModel.createCustomParams(this.mParameters)}l="sap/ui/model/odata/ODataTreeBindingFlat"}}sap.ui.require([l],function(t){t.apply(p);e()})};v.prototype._processSelectParameters=function(){if(this.mParameters){this.oNavigationPaths=this.mParameters.navigation;if(this.mParameters.select){var e=this.mParameters.select.split(",");var i=[];if(this.oNavigationPaths){s(this.oNavigationPaths,function(e,t){if(i.indexOf(t)==-1){i.push(t)}})}s(i,function(t,i){if(e.indexOf(i)==-1){e.push(i)}});if(this.bHasTreeAnnotations){s(this.oTreeProperties,function(t,i){if(i){if(e.indexOf(i)==-1){e.push(i)}}})}this.mParameters.select=e.join(",")}this.sCustomParams=this.oModel.createCustomParams(this.mParameters)}if(!this.bHasTreeAnnotations&&!this.oNavigationPaths){t.error("Neither navigation paths parameters, nor (complete/valid) tree hierarchy annotations where provided to the TreeBinding.");this.oNavigationPaths={}}};v.prototype.getTreeAnnotation=function(e){return this.bHasTreeAnnotations?this.oTreeProperties[e]:undefined};v.prototype.getDownloadUrl=function(e){var t=[],i;if(e){t.push("$format="+encodeURIComponent(e))}if(this.aSorters&&this.aSorters.length>0){t.push(c.createSortParams(this.aSorters))}if(this.getFilterParams()){t.push("$filter="+this.getFilterParams())}if(this.sCustomParams){t.push(this.sCustomParams)}i=this.getResolvedPath();return i&&this.oModel._createRequestUrl(i,null,t)};v.prototype.setNumberOfExpandedLevels=function(e){e=e||0;if(e<0){t.warning("ODataTreeBinding: numberOfExpandedLevels was set to 0. Negative values are prohibited.");e=0}this.iNumberOfExpandedLevels=e;this._fireChange()};v.prototype.getNumberOfExpandedLevels=function(){return this.iNumberOfExpandedLevels};v.prototype.setRootLevel=function(e){e=parseInt(e||0);if(e<0){t.warning("ODataTreeBinding: rootLevels was set to 0. Negative values are prohibited.");e=0}this.iRootLevel=e;this.refresh()};v.prototype.getRootLevel=function(){return parseInt(this.iRootLevel)};v.prototype._getEntityType=function(){var t=this.getResolvedPath();if(t){var i=this.oModel.oMetadata._getEntityTypeByPath(t);e(i,"EntityType for path "+t+" could not be found!");return i}return undefined};v.prototype.getFilterParams=function(){var e;if(this.aApplicationFilters){this.aApplicationFilters=Array.isArray(this.aApplicationFilters)?this.aApplicationFilters:[this.aApplicationFilters];if(this.aApplicationFilters.length>0&&!this.sFilterParams){e=h.groupFilters(this.aApplicationFilters);this.sFilterParams=c._createFilterParams(e,this.oModel.oMetadata,this.oEntityType);this.sFilterParams=this.sFilterParams?"("+this.sFilterParams+")":""}}else{this.sFilterParams=""}return this.sFilterParams};v.prototype.getFilterInfo=function(e){return this.aApplicationFilters[0]?this.aApplicationFilters[0].getAST(e):null};v.prototype._abortPendingRequest=function(){if(!r(this.mRequestHandles)){this.bSkipDataEvents=true;s(this.mRequestHandles,function(e,t){if(t){t.abort()}});this.mRequestHandles={}}};return v});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v2/_CreatedContextsCache", [],function(){"use strict";function t(){this.mCache={}}t.prototype.addContext=function(t,e,n,r){var i,o;o=this.mCache[e];if(!o){o=this.mCache[e]={}}i=o[n];if(!i){i=o[n]=[];i.bAtEnd=r}if(r){i.push(t)}else{i.unshift(t)}};t.prototype.findAndRemoveContext=function(t){var e=this.getCacheInfo(t);if(e){this.removeContext(t,e.cachePath,e.listID)}};t.prototype.findCreatedContext=function(t){var e;Object.values(this.mCache).some(function(n){return Object.values(n).some(function(n){return n.some(function(n){if(t.startsWith(n.getPath())){e=n;return true}return false})})});return e};t.prototype.getCacheInfo=function(t){var e,n=this;Object.keys(this.mCache).some(function(r){var i=n.mCache[r];return Object.keys(i).some(function(i){var o=n.mCache[r][i];if(o.includes(t)){e={cachePath:r,listID:i};return true}return false})});return e};t.prototype.getContexts=function(t,e){var n=this.mCache[t],r=n&&n[e];return r?r.slice():[]};t.prototype.isAtEnd=function(t,e){var n=this.mCache[t],r=n&&n[e];return r&&r.bAtEnd};t.prototype.removeContext=function(t,e,n){var r=this.mCache[e],i=r[n];i.splice(i.indexOf(t),1);if(!i.length){delete r[n];if(!Object.keys(r).length){delete this.mCache[e]}}};t.prototype.removePersistedContexts=function(t,e){var n=this.getContexts(t,e).filter(function(t){return t.isTransient()===false}),r=this;n.forEach(function(n){n.resetCreatedPromise();r.removeContext(n,t,e)});return n};return t});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/AnnotationHelper", ["./_AnnotationHelperExpression"],function(e){"use strict";var t=/[\\{}:]/,n=/\/\$count$/,r=/\$(?:(?:Annotation)|(?:(?:Navigation)?Property))?Path/,i=/^(.+?\/(\$(?:Annotation)?Path))(\/?)(.*)$/,a=/\$(?:Navigation)?PropertyPath/,o={format:function(t,n){var r,o=n.context.getModel(),s=n.context.getPath();function l(r){if(s.endsWith("/")){s=s.slice(0,-1)}return e.getExpression({asExpression:false,complexBinding:true,formatOptions:n.arguments&&n.arguments[1],ignoreAsPrefix:n.overload&&n.overload.$IsBound&&!s.includes("/$Parameter/")?n.overload.$Parameter[0].$Name+"/":"",model:o,parameters:n.arguments&&n.arguments[0],path:s,prefix:r,value:t,$$valueAsPromise:true})}if(s.endsWith("/$Path")){s=s.slice(0,-6);t={$Path:t}}else if(s.endsWith("/$PropertyPath")){s=s.slice(0,-14);t={$PropertyPath:t}}r=a.exec(s);if(r){throw new Error("Unsupported path segment "+r[0]+" in "+s)}r=i.exec(s);if(r&&s.length>r[1].length){if(i.test(r[4])){throw new Error("Only one $Path or $AnnotationPath segment is supported: "+s)}return o.fetchObject(r[1]).then(function(e){var t=r[2]==="$AnnotationPath",n=t?e.split("@")[0]:e,i;if(!t&&r[3]){n+="/"}else if(!n.endsWith("/")){i=n.lastIndexOf("/");n=i<0?"":n.slice(0,i+1)}return l(n)})}return l("")},getNavigationBinding:function(e){e=o.getNavigationPath(e);if(t.test(e)){throw new Error("Invalid OData identifier: "+e)}return e?"{"+e+"}":e},getNavigationPath:function(e){var t;if(!e||e[0]==="@"){return""}if(n.test(e)){return e.slice(0,-7)}t=e.indexOf("@");if(t>-1){e=e.slice(0,t)}if(e[e.length-1]==="/"){e=e.slice(0,-1)}if(e.includes(".")){e=e.split("/").filter(function(e){return!e.includes(".")}).join("/")}return e},getValueListType:function(e,t){var n=typeof e==="string"?"/"+t.schemaChildName+"/"+e:t.context.getPath();return t.$$valueAsPromise?t.context.getModel().fetchValueListType(n).unwrap():t.context.getModel().getValueListType(n)},isMultiple:function(e,t){var r;function i(e){return e===true}if(!e||e[0]==="@"){return false}if(n.test(e)){return true}r=e.indexOf("@");if(r>-1){e=e.slice(0,r)}if(e[e.length-1]!=="/"){e+="/"}e="/"+t.schemaChildName+"/"+e+"$isCollection";return t.$$valueAsPromise?t.context.getModel().fetchObject(e).then(i).unwrap():t.context.getObject(e)===true},label:function(e,t){var n;if(e.Label){return o.value(e.Label,{context:t.context.getModel().createBindingContext("Label",t.context)})}if(e.Value&&e.Value.$Path){n=t.context.getModel().createBindingContext("Value/$Path@com.sap.vocabularies.Common.v1.Label",t.context);if(t.$$valueAsPromise){return n.getModel().fetchObject("",n).then(function(e){return o.value(e,{context:n})}).unwrap()}return o.value(n.getObject(""),{context:n})}},resolve$Path:function(e){var t,n,i,a,o,s=e.getPath(),l,u;for(;;){o=s.match(r);if(!o){return s}i=o.index;t=i+o[0].length;l=s.slice(0,t);u=e.getModel().getObject(l);if(typeof u!=="string"){throw new Error("Cannot resolve "+l+" due to unexpected value "+u)}l=s.slice(0,i);n=l.indexOf("@");a=l.lastIndexOf("/",n);if(a===0){l=l.slice(0,n);if(n>1&&u){l+="/"}}else{l=l.slice(0,a+1)}s=l+u+s.slice(t)}},value:function(t,n){var r=n.context.getPath();if(r.endsWith("/")){r=r.slice(0,-1)}else if(r.endsWith("/$Path")){r=r.slice(0,-6);t={$Path:t}}else if(r.endsWith("/$PropertyPath")){r=r.slice(0,-14);t={$PropertyPath:t}}return e.getExpression({asExpression:false,complexBinding:false,ignoreAsPrefix:n.overload&&n.overload.$IsBound&&!r.includes("/$Parameter/")?n.overload.$Parameter[0].$Name+"/":"",model:n.context.getModel(),parameters:n.arguments&&n.arguments[0],path:r,prefix:"",value:t,$$valueAsPromise:n.$$valueAsPromise})}};return o},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/Context", ["./lib/_Helper","sap/base/Log","sap/ui/base/SyncPromise","sap/ui/model/Context"],function(e,t,i,n){"use strict";var r="sap.ui.model.odata.v4.Context",o=0,s,h=Number.MIN_SAFE_INTEGER,a=n.extend("sap.ui.model.odata.v4.Context",{constructor:d});function d(e,t,i,r,o,s,h){if(i[0]!=="/"){throw new Error("Not an absolute path: "+i)}if(i.endsWith("/")){throw new Error("Unsupported trailing slash: "+i)}n.call(this,e,i);this.oBinding=t;this.setCreated(o);this.oDeletePromise=null;this.bFiringCreateActivate=false;this.iGeneration=s||0;this.bInactive=h||undefined;this.iIndex=r;this.bKeepAlive=false;this.bOutOfPlace=false;this.bSelected=false;this.fnOnBeforeDestroy=undefined}a.prototype.adjustPredicate=function(e,t,i){var n=this.sPath;this.sPath=n.replace(e,t);if(i){i(n,this.sPath)}this.oModel.getDependentBindings(this).forEach(function(i){i.adjustPredicate(e,t)})};a.prototype.checkUpdate=function(){if(this.oModel){this.oModel.getDependentBindings(this).forEach(function(e){e.checkUpdate()})}};a.prototype.checkUpdateInternal=function(){return i.all(this.oModel.getDependentBindings(this).map(function(e){return e.checkUpdateInternal()}))};a.prototype.collapse=function(e){switch(this.getProperty("@$ui5.node.level")===0?undefined:this.isExpanded()){case true:this.oBinding.collapse(this,e);break;case false:throw new Error("Already collapsed: "+this);default:throw new Error("Not expandable: "+this)}};a.prototype.created=function(){return this.oCreatedPromise};a.prototype.delete=function(t,n){var r,o=null,s=this;if(this.isDeleted()){throw new Error("Must not delete twice: "+this)}if(e.isDataAggregation(this.oBinding.mParameters)){throw new Error("Cannot delete "+this+" when using data aggregation")}this.oBinding.checkSuspended();if(this.isTransient()){if(!this.oBinding.getHeaderContext){throw new Error("Cannot delete "+this)}if(this.iIndex===undefined){return Promise.resolve()}t=null}else if(t===null){if(this.iIndex!==undefined||!this.isKeepAlive()){throw new Error("Cannot delete "+this)}}if(this.oBinding.mParameters.$$aggregation){if(this.iIndex===undefined){throw new Error("Unsupported kept-alive context: "+this)}if(t!==null){const e=t??this.oBinding.getUpdateGroupId();if(this.oModel.isApiGroup(e)){throw new Error("Unsupported group ID: "+e)}}}if(t===null){r=i.resolve();n=true}else{e.checkGroupId(t,false,true);r=this.fetchCanonicalPath().then(function(e){return e.slice(1)});o=this.oBinding.lockGroup(t,true,true)}return Promise.resolve(r.then(function(e){if(o&&s.oModel.getMetaModel().isAddressViaNavigationPath()){e=s.getPath().slice(1)}return s.oBinding.delete(o,e,s,null,n,function(){if(s.oDeletePromise){s.oDeletePromise=null;if(s.bSelected){s.oBinding.getHeaderContext().onSelectionChanged(s)}}})}).catch(function(e){if(o){o.unlock(true)}throw e}))};a.prototype.destroy=function(){var e=this.fnOnBeforeDestroy;if(e){this.fnOnBeforeDestroy=undefined;e()}this.oModel?.getDependentBindings(this).forEach(function(e){e.setContext(undefined)});this.oBinding=undefined;delete this.mChangeListeners;this.oCreatedPromise=undefined;this.oSyncCreatePromise=undefined;this.bInactive=undefined;this.bKeepAlive=undefined;this.bSelected=false;this.oModel=undefined;n.prototype.destroy.call(this)};a.prototype.doDelete=function(e,t,i,n,o,s){var h=this.oModel,a=this;this.oDeletePromise=o.deleteFromCache(e,t,i,n,s).then(function(){var e=a.sPath.slice(1);h.getAllBindings().forEach(function(t){t.removeCachesAndMessages(e,true)})}).catch(function(e){h.reportError("Failed to delete "+a.getPath(),r,e);a.checkUpdate();throw e});if(this.bSelected){this.oBinding.getHeaderContext().onSelectionChanged(this)}if(e&&h.isApiGroup(e.getGroupId())){h.getDependentBindings(this).forEach(function(e){e.setContext(undefined)})}return this.oDeletePromise};a.prototype.doSetProperty=function(t,n,o,s,h){var a=this.oModel,d=a.getMetaModel(),u,c,l=this;if(this.isDeleted()){if(o){o.unlock()}throw new Error("Must not modify a deleted entity: "+this)}if(t==="@$ui5.context.isSelected"){this.setSelected(n);if(o){o.unlock();o=null}if(this.oBinding.getHeaderContext?.()===this){return i.resolve()}}if(o&&this.isTransient()&&!this.isInactive()){c=this.getValue();u=c&&e.getPrivateAnnotation(c,"transient");if(u instanceof Promise){o.unlock();o=o.getUnlockedCopy();this.doSetProperty(t,n,null,true,true).catch(a.getReporter());return i.resolve(u).then(function(e){return e&&l.created()}).then(function(){return l.doSetProperty(t,n,o,s)})}}if(a.bAutoExpandSelect){t=d.getReducedPath(a.resolve(t,this),this.oBinding.getBaseForPathReduction())}return this.withCache(function(i,u,c){return c.doSetProperty(u,n,o)||d.fetchUpdateData(t,l,!o).then(function(u){var f=e.getRelativePath(u.entityPath,c.oReturnValueContext?c.oReturnValueContext.getPath():c.getResolvedPath()),p=false;function g(e){a.reportError("Failed to update path "+a.resolve(t,l),r,e);P(false)}function P(e){if(p){c.firePatchCompleted(e);p=false}}function v(){p=true;c.firePatchSent()}if(!o){return i.setProperty(u.propertyPath,n,f,h)}if(l.bInactive&&!l.bFiringCreateActivate){i.setProperty(u.propertyPath,n,f,h).catch(a.getReporter());l.bFiringCreateActivate=true;l.bInactive=c.fireCreateActivate(l)?false:1;l.bFiringCreateActivate=false;i.setInactive(f,l.bInactive)}const C=d.isAddressViaNavigationPath()?u.entityPath.slice(1):u.editUrl;const y=e.hasPathSuffix(l.sPath,f)?l.setCreated.bind(l):null;return i.update(o,u.propertyPath,n,s?undefined:g,C,f,d.getUnitOrCurrencyPath(l.oModel.resolve(t,l)),c.isPatchWithoutSideEffects(),v,l.isEffectivelyKeptAlive.bind(l),y).then(function(){P(true)},function(e){P(false);throw e})})},t,false,true)};a.prototype.doSetSelected=function(e,t){if(!t&&this.bSelected!==e){this.withCache((t,i)=>{if(this.oBinding){t.setProperty("@$ui5.context.isSelected",e,i)}},"")}if(this.bSelected===e){return false}if(!e&&this.oBinding.getHeaderContext()===this){this.iSelectionCount=0}this.bSelected=e;if(!this.isDeleted()&&this.oBinding.getHeaderContext()!==this){this.oBinding.getHeaderContext().onSelectionChanged(this)}this.oBinding.onKeepAliveChanged(this);return true};a.prototype.expand=function(e){switch(this.isExpanded()){case true:if(!e){throw new Error("Already expanded: "+this)}this.oBinding.collapse(this,false,true);case false:{const t=e?Number.MAX_SAFE_INTEGER:1;return Promise.resolve(this.oBinding.expand(this,t)).then(()=>{})}default:throw new Error("Not expandable: "+this)}};a.prototype.fetchCanonicalPath=function(){return this.oModel.getMetaModel().fetchCanonicalPath(this)};a.prototype.fetchPrimitiveValue=function(e,t,n){var r,o=[this.fetchValue(e,null,n)],s=this.oModel.resolve(e,this);if(t){o.push(this.oModel.getMetaModel().fetchUI5Type(s))}return i.all(o).then(function(e){var i=e[1],n=e[0];if(n&&typeof n==="object"){r=new Error("Accessed value is not primitive: "+s);r.isNotPrimitive=true;throw r}return t?i.formatValue(n,"string"):n})};a.prototype.fetchValue=function(t,n,r){if(this.iIndex===h){return i.resolve()}if(this.oBinding.getHeaderContext?.()===this){const o=this.bSelected?undefined:this.iSelectionCount??0;if(t&&t.startsWith(this.sPath)){t=t.slice(this.sPath.length+1)}if(!t){if(n){throw new Error("Cannot register change listener for header context object")}return this.oBinding.fetchValue(this.sPath+"/$count",null,r).then(e=>({"@$ui5.context.isSelected":this.bSelected,$count:e,$selectionCount:o}))}else if(t==="@$ui5.context.isSelected"){this.mChangeListeners??={};e.registerChangeListener(this,t,n);return i.resolve(this.bSelected)}else if(t==="$selectionCount"){this.mChangeListeners??={};e.registerChangeListener(this,t,n);return i.resolve(o)}else if(t!=="$count"){throw new Error("Invalid header path: "+t)}}if(!t){t=this.sPath}else if(t[0]!=="/"){t=this.oModel.resolve(t,this);if(this.oModel.bAutoExpandSelect){t=this.oModel.getMetaModel().getReducedPath(t,this.oBinding.getBaseForPathReduction())}}return this.oBinding.fetchValue(t,n,r)};a.prototype.getAndRemoveCollection=function(e){return this.withCache(function(e,t){return e.getAndRemoveCollection(t)},e,true).unwrap()};a.prototype.getBinding=function(){return this.oBinding};a.prototype.getCanonicalPath=e.createGetMethod("fetchCanonicalPath",true);a.prototype.getFilter=function(){if(!this.oBinding.getHeaderContext||this.isTransient()){throw new Error("Not a list context path to an entity: "+this)}const t=e.getPredicateIndex(this.sPath);const i=this.sPath.slice(t).replace(/,?\$isTotal=true\)$/,")");if(i==="()"){return null}const n=this.oModel.getMetaModel();const r=e.getMetaPath(this.sPath);const o=n.getObject(r+"/");return e.getFilterForPredicate(i,o,n,r,true)};a.prototype.getGeneration=function(e){if(this.iGeneration||e){return this.iGeneration}return this.oBinding.getGeneration()};a.prototype.getGroupId=function(){return this.oBinding.getGroupId()};a.prototype.getIndex=function(){if(this.iIndex===undefined){return undefined}if(this.oBinding?.isFirstCreateAtEnd()){if(this.iIndex<0){return this.oBinding.bLengthFinal?this.oBinding.iMaxLength-this.iIndex-1:-this.iIndex-1}return this.iIndex}return this.getModelIndex()};a.prototype.getModelIndex=function(){if(this.iIndex!==undefined&&this.oBinding?.iCreatedContexts){return this.iIndex+this.oBinding.iCreatedContexts}return this.iIndex};a.prototype.getObject=function(t){return e.publicClone(this.getValue(t))};a.prototype.getParent=function(){if(!this.oBinding.fetchOrGetParent){throw new Error("Not a list binding's context: "+this)}return this.oBinding.fetchOrGetParent(this)};a.prototype.getProperty=function(e,i){var n,o;this.oBinding.checkSuspended();o=this.fetchPrimitiveValue(e,i,true);if(o.isRejected()){o.caught();n=o.getResult();if(n.isNotPrimitive){throw n}else if(!n.$cached){t.warning(n.message,e,r)}}return o.isFulfilled()?o.getResult():undefined};a.prototype.getQueryOptionsForPath=function(e){return this.oBinding.getQueryOptionsForPath(e)};a.prototype.getSibling=function(e){return this.oBinding.fetchOrGetSibling(this,e)};a.prototype.getUpdateGroupId=function(){return this.oBinding.getUpdateGroupId()};a.prototype.getValue=function(e){var t,i=this;this.oBinding.checkSuspended();t=this.fetchValue(e,null,true).catch(function(e){if(!e.$cached){i.oModel.reportError("Unexpected error",r,e)}});if(t.isFulfilled()){return t.getResult()}};a.prototype.hasPendingChanges=function(){var e=this;return this.isTransient()&&this.isInactive()!==true||this.oDeletePromise?.isPending()||this.oBinding.hasPendingChangesForPath(this.sPath)||this.oModel.getDependentBindings(this).some(function(t){return t.oCache?t._hasPendingChanges(false,e.sPath):t.hasPendingChangesInDependents(false,e.sPath)})||this.oModel.withUnresolvedBindings("hasPendingChangesInCaches",this.sPath.slice(1))};a.prototype.isAggregated=function(){this.oBinding.checkSuspended();const e=this.oBinding.mParameters.$$aggregation?.$leafLevelAggregated;if(e===undefined){return false}return e||this.oBinding.getHeaderContext()!==this&&this.isExpanded()!==undefined};a.prototype.isAncestorOf=function(e){if(!this.oBinding.isAncestorOf){throw new Error("Missing recursive hierarchy")}return this.oBinding.isAncestorOf(this,e)};a.prototype.isDeleted=function(){return!!this.oDeletePromise};a.prototype.isEffectivelyKeptAlive=function(){var t=this.oBinding.mParameters;return this.bKeepAlive&&!this.isDeleted()||!t.$$sharedRequest&&this.oBinding.getHeaderContext?.()&&this.oBinding.getHeaderContext().isSelected()!==this.isSelected()&&(t.$$ownRequest||!this.oBinding.isRelative())&&!e.isDataAggregation(t)&&this.sPath.indexOf("(",this.sPath.lastIndexOf("/"))>0};a.prototype.isExpanded=function(){return this.getProperty("@$ui5.node.isExpanded")};a.prototype.isInactive=function(){return this.bInactive};a.prototype.isKeepAlive=function(){return this.bKeepAlive};a.prototype.isOutOfPlace=function(){return this.bOutOfPlace};a.prototype.isSelected=function(){return this.bSelected&&!this.oDeletePromise};a.prototype.isTransient=function(){return this.oSyncCreatePromise?.isPending()};a.prototype.move=function({copy:e,nextSibling:t,parent:i}={}){if(t===undefined&&i===undefined){return Promise.resolve()}if(this.iIndex===undefined||this.isDeleted()||this.isTransient()){throw new Error("Cannot move "+this)}if(i&&(i.iIndex===undefined||i.isDeleted()||i.isTransient())){throw new Error("Cannot move to "+i)}if(!e&&this.isAncestorOf(i)){throw new Error("Unsupported parent context: "+i)}return Promise.resolve(this.oBinding.move(this,i,t,e))};a.prototype.onSelectionChanged=function(t){this.iSelectionCount??=0;this.iSelectionCount+=t.isSelected()?+1:-1;if(this.iSelectionCount<0||t===this){throw new Error("Unexpected $selectionCount: "+this.iSelectionCount)}e.fireChange(this.mChangeListeners,"$selectionCount",this.iSelectionCount)};a.prototype.patch=function(e){return this.withCache(function(t,i){t.patch(i,e)},"")};a.prototype.refresh=function(e,t){this.requestRefresh.apply(this,arguments).catch(this.oModel.getReporter())};a.prototype.refreshDependentBindings=function(e,t,n,r){return i.all(this.oModel.getDependentBindings(this).map(function(i){return i.refreshInternal(e,t,n,r)}))};a.prototype.replaceWith=function(t){var i;this.oBinding.checkSuspended();if(this.isTransient()||this.isDeleted()){throw new Error("Cannot replace "+this)}if(t.oBinding!==this.oBinding||t.iIndex!==undefined||t.isDeleted()||!t.isKeepAlive()){throw new Error("Cannot replace with "+t)}i=t.getValue();this.oBinding.doReplaceWith(this,i,e.getPrivateAnnotation(i,"predicate"))};a.prototype.requestCanonicalPath=e.createRequestMethod("fetchCanonicalPath");a.prototype.requestObject=function(t){this.oBinding.checkSuspended();return Promise.resolve(this.fetchValue(t)).then(e.publicClone)};a.prototype.requestParent=function(){if(!this.oBinding.fetchOrGetParent){throw new Error("Not a list binding's context: "+this)}return Promise.resolve(this.oBinding.fetchOrGetParent(this,true))};a.prototype.requestProperty=function(e,i){var n=Array.isArray(e)?e:[e],o=this;this.oBinding.checkSuspended();return Promise.all(n.map(function(e){return o.oBinding.fetchIfChildCanUseCache(o,e,undefined,true).then(function(n){if(n){return o.fetchPrimitiveValue(n,i)}t.error("Not a valid property path: "+e,undefined,r)})})).then(function(t){return Array.isArray(e)?t:t[0]})};a.prototype.requestRefresh=function(t,i){var n;e.checkGroupId(t);if(this.oBinding.mParameters.$$aggregation){throw new Error("Cannot refresh "+this+" when using data aggregation")}this.oBinding.checkSuspended();if(this.hasPendingChanges()){throw new Error("Cannot refresh entity due to pending changes: "+this)}if(this.oBinding.refreshSingle){n=this.oBinding.refreshSingle(this,this.oBinding.lockGroup(t,true),i)}else{if(arguments.length>1){throw new Error("Unsupported parameter bAllowRemoval: "+i)}n=this.oBinding.refreshReturnValueContext(this,t)||this.oBinding.requestRefresh(t)}this.oModel.withUnresolvedBindings("removeCachesAndMessages",this.sPath.slice(1));return Promise.resolve(n).then(function(){})};a.prototype.requestSibling=function(e){return Promise.resolve(this.oBinding.fetchOrGetSibling(this,e,true))};a.prototype.requestSideEffects=function(t,n){var r,o=this.oModel.getMetaModel(),s=[],h=[],a,d,u=this;function c(e){if(!e){return false}if(e==="*"){return true}if(e.endsWith("/*")){e=e.slice(0,-2)}return!e.includes("*")}this.oBinding.checkSuspended();e.checkGroupId(n);if(this.isTransient()||this.isDeleted()){throw new Error("Unsupported context: "+this)}if(!t||!t.length){throw new Error("Missing edm:(Navigation)PropertyPath expressions")}if(!this.oBinding.isResolved()){throw new Error("Cannot request side effects of unresolved binding's context: "+this)}r=o.getObject("/$EntityContainer");if(!r){throw new Error("Missing metadata")}r="/"+r+"/";t.map(function(e){if(e&&typeof e==="object"){if(c(e.$PropertyPath)){return e.$PropertyPath}if(typeof e.$NavigationPropertyPath==="string"&&!e.$NavigationPropertyPath.includes("*")){return e.$NavigationPropertyPath}}else if(typeof e==="string"&&(!e||c(e))){return e}throw new Error("Not an edm:(Navigation)PropertyPath expression: "+JSON.stringify(e))}).forEach(function(e){if(e[0]==="/"){if(!e.startsWith(r)){throw new Error("Path must start with '"+r+"': "+e)}h.push(e.slice(r.length-1))}else{s.push(e)}});a=this.oBinding.getRootBinding();d=a.getResolvedPath();s=s.reduce(function(t,i){return t.concat(o.getAllPathReductions(e.buildPath(u.getPath(),i),d))},[]);s=e.filterPaths(h,s);n??=this.getUpdateGroupId();return Promise.resolve(i.resolve(this.oModel.isAutoGroup(n)&&this.oModel.oRequestor.waitForRunningChangeRequests(n).then(function(){u.oModel.oRequestor.relocateAll("$parked."+n,n)})).then(function(){return i.all([u.oModel.requestSideEffects(n,h),u.requestSideEffectsInternal(s,n)])})).then(function(){})};a.prototype.requestSideEffectsInternal=function(t,n){var r=this,o,s=r,h,a=[],d,u=[],c,l=[];if(!t.length){return undefined}for(;;){o=s.oBinding;c=o.getPath();d=o.getContext();if(o.oCache&&(!h||o.oCache.hasChangeListeners())){h=s}if(h&&c){break}if(!o.getBoundContext){if(o.oCache===undefined){return undefined}throw new Error("Not a context binding: "+o)}s=d}o=h.oBinding;t.forEach(function(t){var i=e.getRelativePath(t,h.getPath());if(i===undefined){u.push(t)}else{a.push(i)}});if(u.length){l.push(o.getContext().requestSideEffectsInternal(u,n))}if(a.length&&o.oCache!==undefined){l.push(o.requestSideEffects(n,a,h))}return i.all(l)};a.prototype.resetChanges=function(){var e=this.oDeletePromise?[this.oDeletePromise.catch(function(){})]:[],t=this;if(this.iIndex===h||this.oBinding.getHeaderContext&&!this.bInactive&&this.isTransient()||this.oBinding.getHeaderContext?.()===this||this.oBinding.oOperation&&this.oBinding.getParameterContext()===this){throw new Error("Cannot reset: "+this)}this.oBinding.checkSuspended();this.oBinding.resetChangesForPath(this.sPath,e);if(this.bInactive===1){this.bInactive=true}this.oModel.getDependentBindings(this).forEach(function(i){if(i.oCache){e.push(i._resetChanges(t.sPath))}else{i.resetChangesInDependents(e,t.sPath);i.resetInvalidDataState()}});return Promise.all(e).then(function(){})};a.prototype.resetKeepAlive=function(){this.bKeepAlive=false;this.doSetSelected(false,true)};a.prototype.setCreated=function(e){if(e&&this.oCreatedPromise){throw new Error("Already 'created'")}this.oCreatedPromise=e&&Promise.resolve(e).then(function(){});this.oSyncCreatePromise=e};a.prototype.setInactive=function(){if(!this.bInactive){throw new Error("Not inactive: "+this.bInactive)}this.bInactive=true};a.prototype.setKeepAlive=function(t,i,n){var r=this;if(this.isTransient()||t&&this.isDeleted()){throw new Error("Unsupported context: "+this)}e.getPredicateIndex(this.sPath);this.oBinding.checkKeepAlive(this,t);if(t&&n){if(!this.oModel.bAutoExpandSelect){throw new Error("Missing parameter autoExpandSelect at model")}this.bKeepAlive=t;this.oModel.getMetaModel().fetchObject(e.getMetaPath(this.sPath)+"/@com.sap.vocabularies.Common.v1.Messages/$Path").then(function(e){if(!e){throw new Error("Missing @com.sap.vocabularies.Common.v1.Messages")}return r.oBinding.fetchIfChildCanUseCache(r,e,undefined,true)}).then(function(e){return r.fetchValue(e)}).catch(this.oModel.getReporter())}this.bKeepAlive=t;this.fnOnBeforeDestroy=t?i:undefined;this.oBinding.onKeepAliveChanged(this)};a.prototype.setNewGeneration=function(){o+=1;this.iGeneration=o};a.prototype.setOutOfPlace=function(e){if(!e){this.setPersisted()}else if(!this.created()){throw new Error("Not 'created persisted'")}this.bOutOfPlace=e};a.prototype.setPersisted=function(e){if(!e&&this.isTransient()!==false){throw new Error("Not 'created persisted'")}this.bInactive=undefined;this.oCreatedPromise=undefined;this.oSyncCreatePromise=undefined};a.prototype.setProperty=function(t,i,n,o){var s=null,h=this.oModel,a=this;this.oBinding.checkSuspended();if(typeof i==="function"||i&&typeof i==="object"){throw new Error("Not a primitive value")}if(n!==null){e.checkGroupId(n);s=this.oBinding.lockGroup(n,true,true)}return Promise.resolve(this.doSetProperty(t,i,s,!o)).catch(function(e){if(s){s.unlock(true)}h.reportError("Failed to update path "+h.resolve(t,a),r,e);throw e})};a.prototype.setSelected=function(t){if(!this.oBinding?.getHeaderContext){throw new Error("Unsupported context: "+this)}if(t&&this.isDeleted()){throw new Error("Must not select a deleted entity: "+this)}const i=this.oBinding.getHeaderContext()===this&&this.oBinding._getAllExistingContexts().reduce((e,i)=>i.doSetSelected(t)||e,false);const n=this.doSetSelected(t);if(n&&this.mChangeListeners){e.fireChange(this.mChangeListeners,"@$ui5.context.isSelected",t)}if(n||i){this.oBinding.fireSelectionChanged(this)}};a.prototype.toString=function(){var e="";if(!this.oModel){e=";destroyed"}else if(this.isDeleted()){e=";deleted"}if(this.iIndex!==undefined){if(!e){switch(this.isTransient()){case false:e=";createdPersisted";break;case true:e=this.isInactive()?";inactive":";transient";break}if(this.isSelected()){e+=";selected"}}e="["+this.iIndex+e+"]"}else if(this.isSelected()){e+=";selected"}return this.sPath+e};a.prototype.updateAfterCreate=function(e,t){i.all(this.oModel.getDependentBindings(this).map(function(i){return i.updateAfterCreate(e,t)})).catch(this.oModel.getReporter())};a.prototype.withCache=function(e,t,n,r){if(this.iIndex===h){return i.resolve()}return this.oBinding.withCache(e,this.oModel.resolve(t,this),n,r)};s={create:function(e,t,i,n,r,o){return new a(e,t,i,n,r,0,o)},createNewContext:function(e,t,i){o+=1;return new a(e,t,i,undefined,undefined,o)}};Object.defineProperty(s,"VIRTUAL",{value:h});return s},false);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/ODataBinding", ["./lib/_Helper","sap/ui/base/SyncPromise","sap/ui/model/ChangeReason","sap/ui/model/odata/OperationMode","sap/ui/model/odata/v4/Context"],function(e,t,n,i,r){"use strict";var o=[n.Context,n.Change,n.Refresh,n.Sort,n.Filter],s=/\/\d|\(\$uid=/;function a(e,t){return o.indexOf(e)>o.indexOf(t)}function h(){this.mCacheByResourcePath=undefined;this.oCache=null;this.oCachePromise=t.resolve(null);this.mCacheQueryOptions=undefined;this.fnDeregisterChangeListener=undefined;this.oFetchCacheCallToken=undefined;this.mLateQueryOptions=undefined;this.sReducedPath=undefined;this.sResumeChangeReason=undefined}h.prototype._hasPendingChanges=function(e,t){return this.isResolved()&&(this.hasPendingChangesForPath("",e)||this.hasPendingChangesInDependents(e,t))};h.prototype._resetChanges=function(e){var t=[];this.checkSuspended();this.resetChangesForPath("",t);this.resetChangesInDependents(t,e);this.resetInvalidDataState();return Promise.all(t).then(function(){})};h.prototype.adjustPredicate=function(e,t){this.sReducedPath=this.sReducedPath.replace(e,t)};h.prototype.checkBindingParameters=function(t,n){var r=this;Object.keys(t).forEach(function(o){var s=t[o];if(!o.startsWith("$$")){return}if(!n.includes(o)){throw new Error("Unsupported binding parameter: "+o)}switch(o){case"$$aggregation":break;case"$$groupId":case"$$updateGroupId":e.checkGroupId(s,false,"Unsupported value for binding parameter '"+o+"': ");break;case"$$ignoreMessages":case"$$sharedRequest":if(s!==true&&s!==false){throw new Error("Unsupported value for binding parameter '"+o+"': "+s)}break;case"$$inheritExpandSelect":if(s!==true&&s!==false){throw new Error("Unsupported value for binding parameter "+"'$$inheritExpandSelect': "+s)}if(!r.oOperation){throw new Error("Unsupported binding parameter $$inheritExpandSelect: "+"binding is not an operation binding")}if(t.$expand){throw new Error("Must not set parameter $$inheritExpandSelect on a binding "+"which has a $expand binding parameter")}break;case"$$operationMode":if(s!==i.Server){throw new Error("Unsupported operation mode: "+s)}break;case"$$getKeepAliveContext":if(r.isRelative()&&!t.$$ownRequest){throw new Error("$$getKeepAliveContext requires $$ownRequest in a relative binding")}["$$aggregation","$$canonicalPath","$$sharedRequest"].forEach(function(n,i){if(n in t&&(i>0||e.isDataAggregation(t))){throw new Error("Cannot combine $$getKeepAliveContext and "+n)}});case"$$canonicalPath":case"$$clearSelectionOnFilter":case"$$noPatch":case"$$ownRequest":case"$$patchWithoutSideEffects":if(s!==true){throw new Error("Unsupported value for binding parameter '"+o+"': "+s)}break;case"$$separate":if(t.$$aggregation){throw new Error("Cannot combine $$aggregation and $$separate")}break;default:throw new Error("Unknown binding-specific parameter: "+o)}})};h.prototype.checkSameCache=function(e){var t;if(this.oCache!==e){t=new Error(this+" is ignoring response from inactive cache: "+e);t.canceled=true;throw t}};h.prototype.checkSuspended=function(e){if(this.isRootBindingSuspended()&&(!e||this.isRoot()||this.getResumeChangeReason())){throw new Error("Must not call method when the binding's root binding is suspended: "+this)}};h.prototype.checkTransient=function(){if(this.isTransient()){throw new Error("Must not call method when the binding is part of a deep create: "+this)}};h.prototype.checkUpdate=function(e){if(arguments.length>1){throw new Error("Only the parameter bForceUpdate is supported")}this.checkUpdateInternal(e).catch(this.oModel.getReporter())};h.prototype.createAndSetCache=function(e,t,n,i,r,o){var s,a,h;this.mCacheQueryOptions=Object.assign({},this.oModel.mUriParameters,e);if(this.bRelative){s=this.mCacheByResourcePath&&this.mCacheByResourcePath[t];h=n.getGeneration&&n.getGeneration()||0;if(s&&s.$generation>=h){s.setActive(true)}else{a=this.oModel.resolve(this.sPath,n).slice(1);s=this.doCreateCache(t,this.mCacheQueryOptions,n,a,i,r,o);if(!(this.mParameters&&this.mParameters.$$sharedRequest)){this.mCacheByResourcePath??={};this.mCacheByResourcePath[t]=s}s.$deepResourcePath=a;s.$generation=h}}else{s=this.doCreateCache(t,this.mCacheQueryOptions,undefined,undefined,i,r,o)}if(o&&o!==s){this.deregisterChangeListener();o.setActive(false)}if(this.mLateQueryOptions){s.setLateQueryOptions(this.mLateQueryOptions)}this.oCache=s;return s};h.prototype.deregisterChangeListener=function(){this.fnDeregisterChangeListener?.();this.fnDeregisterChangeListener=undefined};h.prototype.destroy=function(){this.mCacheByResourcePath=undefined;this.deregisterChangeListener();this.oCachePromise.then(function(e){e?.setActive(false)},function(){});this.oCache=null;this.oCachePromise=t.resolve(null);this.mCacheQueryOptions=undefined;this.mLateQueryOptions=undefined;this.oContext=undefined;this.oFetchCacheCallToken=undefined};h.prototype.getEventingParent=function(){return this.oModel};h.prototype.fetchCache=function(e,n,i,r,o){var s=this.oCache,a={oOldCache:s===undefined?this.oFetchCacheCallToken.oOldCache:s},h,u=this;if(!this.bRelative){e=undefined}if(!s&&i){if(s===undefined){throw new Error("Unsupported bKeepQueryOptions while oCachePromise is pending")}return}this.oCache=undefined;this.oFetchCacheCallToken=a;if(i){this.oCachePromise=t.resolve(Promise.resolve()).then(function(){return u.createAndSetCache(u.mCacheQueryOptions,s.getResourcePath(),e,r,o,s)});return}h=[this.fetchOrGetQueryOptionsForOwnCache(e,n),this.oModel.oRequestor.ready()];this.mCacheQueryOptions=undefined;this.oCachePromise=t.all(h).then(function(t){var n=t[0].mQueryOptions;if(t[0].sReducedPath){u.sReducedPath=t[0].sReducedPath}if(!u.prepareDeepCreate(e,n)){return u.fetchResourcePath(e).then(function(t){if(u.oFetchCacheCallToken!==a){return u.oCachePromise.then(function(e){if(e===a.oOldCache){return e}const t=new Error("Cache discarded as a new cache has been created");t.canceled=true;throw t})}return u.oModel.waitForKeepAliveBinding(u).then(function(){u.oFetchCacheCallToken=undefined;return u.createAndSetCache(n,t,e,r,o,a.oOldCache)})})}a.oOldCache=undefined;if(s){s.setActive(false)}u.oCache=null;return null});this.oCachePromise.catch(this.oModel.getReporter())};h.prototype.fetchOrGetQueryOptionsForOwnCache=function(n,i){var r,o,s=this.oModel.resolve(this.sPath,n),a=this;function h(t,n,i){if(n&&t&&e.isEmptyObject(t)){t=undefined}return{mQueryOptions:t,sReducedPath:i||s}}function u(e,n){if(o instanceof t){if(!o.isFulfilled()){return o.then(function(t){return h(t,e,n)})}o=o.getResult()}return h(o,e,n)}if(this.oOperation||!s||this.isMeta()){return h()}o=this.doFetchOrGetQueryOptions(n);if(this.oModel.bAutoExpandSelect&&this.aChildCanUseCachePromises&&!e.isDataAggregation(this.mParameters)){o=t.all([o,Promise.resolve().then(function(){return t.all(a.aChildCanUseCachePromises)})]).then(function(e){a.aChildCanUseCachePromises=[];a.updateAggregatedQueryOptions(e[0]);return a.mAggregatedQueryOptions})}if(i||!this.bRelative||!n.fetchValue){return u()}if(this.oModel.bAutoExpandSelect){r=this.mParameters&&Object.keys(a.mParameters).some(function(e){return e[0]!=="$"||e[1]==="$"});if(r){return u()}return n.getBinding().fetchIfChildCanUseCache(n,a.sPath,o,!this.mParameters).then(function(e){if(e){o=undefined}else{o??={}}return u(false,e)})}if(this.mParameters&&!e.isEmptyObject(this.mParameters)){return u()}return u(true)};h.prototype.fetchResourcePath=function(n){var i,r,o,a=this;if(!this.bRelative){return t.resolve(this.sPath.slice(1))}n??=this.oContext;if(!n){return t.resolve()}r=n.getPath();i=n.fetchCanonicalPath&&(this.mParameters&&this.mParameters.$$canonicalPath||!this.isTransient()&&s.test(r));o=i?n.fetchCanonicalPath():t.resolve(r);return o.then(function(t){return e.buildPath(t,a.sPath).slice(1)})};h.prototype.fireDataReceived=function(e,t){this.fireEvent("dataReceived",e,false,!t)};h.prototype.fireDataRequested=function(e){this.fireEvent("dataRequested",undefined,false,!e)};h.prototype.getGroupId=function(){return this.sGroupId||this.bRelative&&this.oContext&&this.oContext.getGroupId&&this.oContext.getGroupId()||this.oModel.getGroupId()};h.prototype.getRelativePath=function(t){var n;if(t[0]==="/"){n=e.getRelativePath(t,this.getResolvedPath());if(n===undefined&&this.oReturnValueContext){n=e.getRelativePath(t,this.oReturnValueContext.getPath())}return n}return t};h.prototype.getResumeChangeReason=function(){var e=this.sResumeChangeReason;this.getDependentBindings().forEach(function(t){var n=t.getResumeChangeReason();if(n&&a(n,e)){e=n}});return e};h.prototype.getRootBinding=function(){if(this.bRelative){if(!this.oContext){return undefined}if(this.oContext.getBinding){return this.oContext.getBinding().getRootBinding()}}return this};h.prototype.getRootBindingResumePromise=function(){var e=this.getRootBinding();return e&&e.getResumePromise()||t.resolve()};h.prototype.getUpdateGroupId=function(){return this.sUpdateGroupId||this.bRelative&&this.oContext&&this.oContext.getUpdateGroupId&&this.oContext.getUpdateGroupId()||this.oModel.getUpdateGroupId()};h.prototype.hasPendingChanges=function(e){return this._hasPendingChanges(e)};h.prototype.hasPendingChangesForPath=function(e,t){return this.withCache(function(e,n,i){return e.hasPendingChangesForPath(n,t,t&&(i.isRoot()||i.mParameters.$$ownRequest))},e,true).unwrap()};h.prototype.hasPendingChangesInCaches=function(e){var t=this;if(!this.mCacheByResourcePath){return false}return Object.keys(this.mCacheByResourcePath).some(function(n){var i=t.mCacheByResourcePath[n];return i.$deepResourcePath.startsWith(e)&&i.hasPendingChangesForPath("")})};h.prototype.isInitial=function(){throw new Error("Unsupported operation: isInitial")};h.prototype.isRoot=function(){return!this.bRelative||this.oContext&&!this.oContext.getBinding};h.prototype.isRootBindingSuspended=function(){var e=this.getRootBinding();return e&&e.isSuspended()};h.prototype.isTransient=function(){return this.bRelative&&this.oContext?.getPath().includes("($uid=")};h.prototype.lockGroup=function(e,t,n,i){e??=n?this.getUpdateGroupId():this.getGroupId();return this.oModel.lockGroup(e,this,t,n,i)};h.prototype.prepareDeepCreate=function(e,t){if(e){if(e.iIndex===r.VIRTUAL){return true}if(e.getPath().includes("($uid=")){this.mCacheQueryOptions=t;return true}}return!t};h.prototype.ready=function(){return this.oCachePromise};h.prototype.refresh=function(e){if(typeof e==="boolean"){throw new Error("Unsupported parameter bForceUpdate")}this.requestRefresh(e).catch(this.oModel.getReporter())};h.prototype.refreshSuspended=function(e){if(e&&e!==this.getGroupId()){throw new Error(this+": Cannot refresh a suspended binding with group ID '"+e+"' (own group ID is '"+this.getGroupId()+"')")}this.setResumeChangeReason(n.Refresh)};h.prototype.removeCachesAndMessages=function(t,n){var i=this;if(!n&&this.oCache){this.oCache.removeMessages()}if(this.mCacheByResourcePath){Object.keys(this.mCacheByResourcePath).forEach(function(r){var o=i.mCacheByResourcePath[r],s=o.$deepResourcePath;if(e.hasPathPrefix(s,t)){if(!n){o.removeMessages()}delete i.mCacheByResourcePath[r]}})}};h.prototype.requestAbsoluteSideEffects=function(t,n){var i=[],r=e.getMetaPath(this.getResolvedPath());if(this.oCache===undefined){return undefined}n.some(function(t){var n=e.getRelativePath(t,r);if(n!==undefined){i.push(n)}else if(e.hasPathPrefix(r,t)){i=[""];return true}});if(i.length){if(this.requestSideEffects){return this.requestSideEffects(t,i)}return this.refreshInternal("",t,true,true)}};h.prototype.requestRefresh=function(t){if(!this.mParameters?.$$ownRequest&&!this.isRoot()){throw new Error("Refresh on this binding is not supported")}if(this.hasPendingChanges(true)){throw new Error("Cannot refresh due to pending changes")}e.checkGroupId(t);return Promise.resolve(this.refreshInternal("",t,true)).then(function(){})};h.prototype.resetChanges=function(){this.checkTransient();return this._resetChanges()};h.prototype.resetChangesForPath=function(e,t){t.push(this.withCache(function(e,t){e.resetChangesForPath(t)},e).unwrap())};h.prototype.resetInvalidDataState=function(){};h.prototype.setDeregisterChangeListener=function(e){this.fnDeregisterChangeListener=e};h.prototype.setResumeChangeReason=function(e){if(a(e,this.sResumeChangeReason)){this.sResumeChangeReason=e}};h.prototype.toString=function(){return this.getMetadata().getName()+": "+(this.bRelative?this.oContext+"|":"")+this.sPath};h.prototype.withCache=function(n,i="",r=false,o=false){var s=r?t.resolve(this.oCache):this.oCachePromise,a,h=this;return s.then(function(t){if(t){a=h.getRelativePath(i);if(a!==undefined){return n(t,a,h)}}else if(t===undefined){return undefined}else if(h.oOperation){return o?n(null,h.getRelativePath(i),h):undefined}if(h.bRelative&&h.oContext&&h.oContext.withCache){return h.oContext.withCache(n,i[0]==="/"?i:e.buildPath(h.sPath,i),r,o)}return undefined})};function u(e){if(this){h.apply(this,arguments)}else{Object.assign(e,h.prototype)}}["adjustPredicate","destroy","hasPendingChangesForPath"].forEach(function(e){u.prototype[e]=h.prototype[e]});return u},false);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/ODataContextBinding", ["./Context","./ODataParentBinding","./lib/_Cache","./lib/_GroupLock","./lib/_Helper","sap/ui/base/SyncPromise","sap/ui/model/Binding","sap/ui/model/ChangeReason","sap/ui/model/ContextBinding"],function(e,t,n,i,o,r,a,s,h){"use strict";var u="sap.ui.model.odata.v4.ODataContextBinding",d={AggregatedDataStateChange:true,change:true,dataReceived:true,dataRequested:true,DataStateChange:true,patchCompleted:true,patchSent:true},l=h.extend("sap.ui.model.odata.v4.ODataContextBinding",{constructor:c});function c(n,i,r,a){var s=i.indexOf("(...)"),u=this;h.call(this,n,i);t.call(this);if(i.endsWith("/")){throw new Error("Invalid path: "+i)}this.bHasFetchedExpandSelectProperties=false;this.oOperation=undefined;this.oParameterContext=null;this.oReturnValueContext=null;if(s>=0){if(s!==this.sPath.length-5){throw new Error("The path must not continue after a deferred operation: "+this.sPath)}this.oOperation={bAction:undefined,bAdditionalQueryOptionsForRVC:undefined,mChangeListeners:{},mParameters:{},mRefreshParameters:{}};if(!this.bRelative){this.oParameterContext=e.create(this.oModel,this,this.sPath+"/$Parameter")}}a=o.clone(a)||{};this.checkBindingParameters(a,["$$canonicalPath","$$groupId","$$inheritExpandSelect","$$ownRequest","$$patchWithoutSideEffects","$$updateGroupId"]);this.sGroupId=a.$$groupId;this.bInheritExpandSelect=a.$$inheritExpandSelect;this.sUpdateGroupId=a.$$updateGroupId;this.applyParameters(a);this.oElementContext=this.bRelative?null:e.createNewContext(this.oModel,this,i);if(!this.oOperation&&(!this.bRelative||r&&!r.fetchValue)){this.createReadGroupLock(this.getGroupId(),true)}this.setContext(r);n.bindingCreated(this);Promise.resolve().then(function(){u.bInitial=false})}t(l.prototype);l.prototype._invoke=function(e,t,n,i,a){var h=this.oModel.getMetaModel(),d,l,c=this.getResolvedPathWithReplacedTransientPredicates(),p=o.getMetaPath(c),f=this;function g(){f._fireChange({reason:s.Change});return f.refreshDependentBindings("",e.getGroupId(),true)}l=r.all([h.fetchObject(p+"/@$ui5.overload"),this.ready2Inherit()]).then(function([o]){var r,s,u;if(!o){d=h.getObject(p);if(!d||d.$kind!=="NavigationProperty"||!a){throw new Error("Unknown operation: "+c)}}else if(o.length!==1){throw new Error("Expected a single overload, but found "+o.length+" for "+c)}else{d=o[0]}if(f.bRelative&&f.oContext.getBinding){s=f.sPath.lastIndexOf("/");u=s>=0?f.sPath.slice(0,s):"";r=f.oContext.getValue.bind(f.oContext,u)}return f.createCacheAndRequest(e,c,d,t,r,n,i)}).then(function(e){return g().then(function(){return f.handleOperationResult(d,e,a)})},function(e){o.adjustTargetsInError(e,d,f.oParameterContext.getPath(),f.bRelative?f.oContext.getPath():undefined);return g().then(function(){throw e})}).catch(function(t){e.unlock(true);f.oModel.reportError("Failed to invoke "+c,u,t);throw t});return Promise.resolve(l)};l.prototype.addQueryOptionsForReturnValueContext=function(e,t){const n=o.getMetaPath(this.getResolvedPath()).split("/");if(!this.isReturnValueLikeBindingParameter(e)||!this.hasReturnValueContext()||n.length!==4){this.oOperation.bAdditionalQueryOptionsForRVC=false;return t}const i=this.oModel.getMetaModel();const r=i.getObject("/"+n[1]+"/$NavigationPropertyBinding/"+n[2]);const a=i.getObject("/"+n[1]+"/"+n[2]+"/$Partner");let s;if(r&&a){s={$expand:{}};s.$expand[a]={};o.selectKeyProperties(s.$expand[a],i.getObject("/"+r+"/"+a+"/"));if(t.$select){o.selectKeyProperties(s,i.getObject("/"+r+"/"))}t=o.clone(t);o.aggregateExpandSelect(t,s)}this.oOperation.bAdditionalQueryOptionsForRVC=!!s;return t};l.prototype.adjustPredicate=function(e,n){t.prototype.adjustPredicate.apply(this,arguments);if(this.mCacheQueryOptions){this.fetchCache(this.oContext,true)}if(this.oElementContext){this.oElementContext.adjustPredicate(e,n)}};l.prototype.applyParameters=function(e,t){this.mQueryOptions=this.oModel.buildQueryOptions(e,true);this.mParameters=e;if(this.isRootBindingSuspended()){if(!this.oOperation){this.sResumeChangeReason=s.Change}}else if(!this.oOperation){this.fetchCache(this.oContext);if(t){this.refreshInternal("",undefined,true).catch(this.oModel.getReporter())}}else if(this.oOperation.bAction===false){this.invoke().catch(this.oModel.getReporter())}};l.prototype.attachEvent=function(e,t,n,i){if(!(e in d)){throw new Error("Unsupported event '"+e+"': v4.ODataContextBinding#attachEvent")}return h.prototype.attachEvent.apply(this,arguments)};l.prototype.checkKeepAlive=function(){throw new Error("Unsupported "+this)};l.prototype.computeOperationQueryOptions=function(){return Object.assign({},this.oModel.mUriParameters,this.getQueryOptionsFromParameters())};l.prototype.createCacheAndRequest=function(e,t,i,a,s,h,u){var d=i.$kind==="Action",l,c=s,p=this.oModel,f=o.getMetaPath(t),g=t.slice(1),C=p.oRequestor,m=this;function x(e){if(m.isReturnValueLikeBindingParameter(i)){const t=m.getReturnValueContextPath(e);if(t){return t}if(m.oOperation.bAdditionalQueryOptionsForRVC===false&&o.getPrivateAnnotation(c,"predicate")===o.getPrivateAnnotation(e,"predicate")){return g.slice(0,g.lastIndexOf("/"))}}return g}function P(e){var t;o.adjustTargetsInError(e,i,m.oParameterContext.getPath(),m.bRelative?m.oContext.getPath():undefined);e.error.$ignoreTopLevel=true;t=u(o.extractMessages(e).map(function(e){return p.createUI5Message(e)}));if(!(t instanceof Promise)){throw new Error("Not a promise: "+t)}return t}if(u&&i.$kind!=="Action"){throw new Error("Not an action: "+t)}if(!d&&i.$kind!=="Function"&&i.$kind!=="NavigationProperty"){throw new Error("Not an operation: "+t)}if(d&&s){c=s()}if(h&&!(d&&i.$IsBound&&c!==null)){throw new Error("Not a bound action: "+t)}if(this.bInheritExpandSelect&&!this.isReturnValueLikeBindingParameter(i)){throw new Error("Must not set parameter $$inheritExpandSelect on this binding")}if(i.$kind!=="NavigationProperty"){f+="/@$ui5.overload/0/$ReturnType";if(i.$ReturnType&&!i.$ReturnType.$Type.startsWith("Edm.")){f+="/$Type"}}else if(!o.isEmptyObject(a)){throw new Error("Unsupported parameters for navigation property")}if(m.oReturnValueContext){m.oReturnValueContext.destroy();m.oReturnValueContext=null}this.oOperation.bAction=d;this.oOperation.mRefreshParameters=a;a=Object.assign({},a);this.mCacheQueryOptions=this.addQueryOptionsForReturnValueContext(i,this.computeOperationQueryOptions());t=C.getPathAndAddQueryOptions(t,i,a,this.mCacheQueryOptions,c);l=n.createSingle(C,t,this.mCacheQueryOptions,p.bAutoExpandSelect,p.bSharedRequests,undefined,d,f);this.oCache=l;this.oCachePromise=r.resolve(l);return d?l.post(e,a,c,h,u&&P,x):l.fetchValue(e,"",undefined,undefined,false,x)};l.prototype.delete=function(e,t,n,i,o,r){var a=this._findEmptyPathParentContext(this.oElementContext),h=a.getBinding(),u=h.getContext(),d=h.oReturnValueContext,l=this;function c(){r();a.oDeletePromise=null}if(!h.invoke){n.oDeletePromise=h.delete(e,t,a,n.getValue(),o,c);return n.oDeletePromise}h.oElementContext=null;if(d){h.oReturnValueContext=null}this._fireChange({reason:s.Remove});n.oDeletePromise=a.doDelete(e,t,"",null,this,function(e,t){if(t>0){c()}}).then(function(){a.destroy();if(d){d.destroy()}},function(e){c();if(!h.isRelative()||u===h.getContext()){h.oElementContext=a;if(d){h.oReturnValueContext=d}l._fireChange({reason:s.Add})}throw e});return n.oDeletePromise};l.prototype.destroy=function(){if(this.oElementContext){this.oElementContext.destroy();this.oElementContext=undefined}if(this.oParameterContext){this.oParameterContext.destroy();this.oParameterContext=undefined}if(this.oReturnValueContext){this.oReturnValueContext.destroy();this.oReturnValueContext=undefined}this.oModel.bindingDestroyed(this);this.oOperation=undefined;this.mParameters=undefined;this.mQueryOptions=undefined;t.prototype.destroy.call(this);h.prototype.destroy.call(this)};l.prototype.doCreateCache=function(e,t,i,o){return n.createSingle(this.oModel.oRequestor,e,t,this.oModel.bAutoExpandSelect,this.oModel.bSharedRequests,o)};l.prototype.doFetchExpandSelectProperties=function(){var e,t=this;if(this.bHasFetchedExpandSelectProperties||!this.oModel.bAutoExpandSelect||!this.mParameters.$expand&&!this.mParameters.$select){return}e=this.getResolvedPath();o.convertExpandSelectToPaths(this.oModel.buildQueryOptions(this.mParameters,true)).forEach(function(n){t.oContext.fetchValue(o.buildPath(e,n)).catch(t.oModel.getReporter())});this.bHasFetchedExpandSelectProperties=true};l.prototype.doFetchOrGetQueryOptions=function(e){return this.fetchResolvedQueryOptions(e)};l.prototype.doSetProperty=function(e,t,n){if(this.oOperation&&(e==="$Parameter"||e.startsWith("$Parameter/"))){o.updateAll(this.oOperation.mChangeListeners,"",this.oOperation.mParameters,o.makeUpdateData(e.split("/").slice(1),t));this.oOperation.bAction=undefined;if(n){n.unlock()}return r.resolve()}};l.prototype.doSuspend=function(){if(this.bInitial&&!this.oOperation){this.sResumeChangeReason=s.Change}};l.prototype.fetchValue=function(e,t,n){var a=n&&this.oCache!==undefined?r.resolve(this.oCache):this.oCachePromise,s=this;if(this.isRootBindingSuspended()){const e=new Error("Suspended binding provides no value");e.canceled="noDebugLog";throw e}return a.then(function(r){var a,h=false,d,l=s.getResolvedPath(),c=r||s.oOperation?s.getRelativePath(e):undefined,p;if(s.oOperation){if(c===undefined){return s.oContext.fetchValue(e,t,n)}p=c.split("/");if(p[0]==="$Parameter"){if(p.length===1){return undefined}o.registerChangeListener(s.oOperation,c.slice(11),t);const e=o.drillDown(s.oOperation.mParameters,p.slice(1));return e===undefined?null:e}}if(r&&c!==undefined){if(n){d=i.$cached}else{d=s.oReadGroupLock||s.lockGroup();s.oReadGroupLock=undefined}a=s.isRefreshWithoutBubbling();return s.resolveRefreshPromise(r.fetchValue(d,c,function(){h=true;s.fireDataRequested(a)},t)).then(function(e){s.checkSameCache(r);return e}).then(function(e){if(h){s.fireDataReceived({data:{}},a)}return e},function(e){d.unlock(true);if(h){s.oModel.reportError("Failed to read path "+l,u,e);s.fireDataReceived(e.canceled?{data:{}}:{error:e},a)}throw e})}if(!s.oOperation&&s.oContext){if(!n){s.doFetchExpandSelectProperties()}return s.oContext.fetchValue(e,t,n)}})};l.prototype.findContextForCanonicalPath=function(e){var t=this.oOperation?this.oReturnValueContext:this.oElementContext,n,i;if(t){n=t.getValue();if(n&&o.hasPrivateAnnotation(n,"predicate")){i=t.fetchCanonicalPath();i.caught();if(i.getResult()===e){return t}}}};l.prototype.getDependentBindings=function(){return this.oModel.getDependentBindings(this)};l.prototype.getParameterContext=function(){if(!this.oOperation){throw new Error("Not a deferred operation binding: "+this)}return this.oParameterContext};l.prototype.getQueryOptionsFromParameters=function(){var e,t=this.mQueryOptions;if(this.bInheritExpandSelect){e=this.oContext.getBinding().getInheritableQueryOptions();t=Object.assign({},t);if("$select"in e){t.$select&&=t.$select.slice();o.addToSelect(t,e.$select)}if("$expand"in e){t.$expand=e.$expand}}return t};l.prototype.getResolvedPathWithReplacedTransientPredicates=function(){var e="",t=this.getResolvedPath(),n,i=this;if(t&&t.includes("($uid=")){n=t.slice(1).split("/");t="";n.forEach(function(n){var r,a,s;e+="/"+n;s=n.indexOf("($uid=");if(s>=0){r=i.oContext.getValue(e);a=r&&o.getPrivateAnnotation(r,"predicate");if(!a){throw new Error("No key predicate known at "+e)}t+="/"+n.slice(0,s)+a}else{t+="/"+n}})}return t};l.prototype.getReturnValueContextPath=function(e){if(!this.hasReturnValueContext()){return undefined}const t=this.oContext.getPath().slice(1);const n=o.getPrivateAnnotation(e,"predicate");if(this.oOperation.bAdditionalQueryOptionsForRVC===false){const e=t.indexOf("(");return(e<0?t:t.slice(0,e))+n}const i=o.getMetaPath(t).split("/");const r=this.oModel.getMetaModel().getObject("/"+i[0]+"/"+i[1]+"/$Partner");const a=e[r];const s=a&&this.oModel.getKeyPredicate("/"+i[0],a);if(!(s&&n)){return undefined}return t.split("/").map((e,t)=>e.slice(0,e.indexOf("("))+(t?n:s)).join("/")};l.prototype.handleOperationResult=function(t,n,i){var a,s,h,u,d;if(this.isReturnValueLikeBindingParameter(t)){s=this.oContext.getValue();a=s&&o.getPrivateAnnotation(s,"predicate");h=o.getPrivateAnnotation(n,"predicate");if(h){if(a===h){this.oContext.patch(n)}u=this.getReturnValueContextPath(n);if(u){if(i){if(this.oOperation.bAdditionalQueryOptionsForRVC&&this.oContext.getPath().split("/")[1]!==u.split("/")[0]){throw new Error("Cannot replace due to changed key predicate"+" for navigation property in path")}this.oCache=null;this.oCachePromise=r.resolve(null);d=this.oContext.getPath().indexOf(u)===1?this.oContext:this.oContext.getBinding().doReplaceWith(this.oContext,n,h);d.setNewGeneration();return d}this.oReturnValueContext=e.createNewContext(this.oModel,this,"/"+u);this.oCache.setResourcePath(u);return this.oReturnValueContext}}}if(i){throw new Error("Cannot replace w/o return value context")}};l.prototype.hasReturnValueContext=function(){var e=o.getMetaPath(this.getResolvedPath()).split("/");if(e.length===4){return this.oOperation.bAdditionalQueryOptionsForRVC!==false}return e.length===3&&this.oModel.getMetaModel().getObject("/"+e[1]).$kind==="EntitySet"};l.prototype.initialize=function(){this.bInitial=false;if(this.isResolved()&&!this.isRootBindingSuspended()){this._fireChange({reason:s.Change})}};l.prototype.invoke=function(e,t,n,i){var r=this.getResolvedPath();this.checkSuspended();o.checkGroupId(e,false,true);if(!this.oOperation){throw new Error("The binding must be deferred: "+this.sPath)}if(this.bRelative){if(!r){throw new Error("Unresolved binding: "+this.sPath)}if(this.oContext.isTransient&&this.oContext.isTransient()){throw new Error("Invoke for transient context not allowed: "+r)}if(this.oContext.getPath().includes("(...)")){throw new Error("Nested deferred operation bindings not supported: "+r)}if(i){if(!this.oContext.getBinding){throw new Error("Cannot replace this parent context: "+this.oContext)}this.oContext.getBinding().checkKeepAlive(this.oContext,true)}}else if(i){throw new Error("Cannot replace when operation is not relative")}return this._invoke(this.lockGroup(e,true),o.publicClone(this.oOperation.mParameters,true),t,n,i)};l.prototype.execute=l.prototype.invoke;l.prototype.isReturnValueLikeBindingParameter=function(e){var t,n;if(!(this.bRelative&&this.oContext&&this.oContext.getBinding)){return false}if(e.$kind==="NavigationProperty"){if(e.$isCollection||this.sPath.includes("/")){return false}n=o.getMetaPath(this.oContext.getPath());if(n.lastIndexOf("/")>0){return false}t=this.oModel.getMetaModel().getObject(n);return t.$kind==="EntitySet"&&t.$Type===e.$Type&&t.$NavigationPropertyBinding&&t.$NavigationPropertyBinding[this.sPath.slice(0,-5)]===n.slice(1)}return e.$IsBound&&e.$ReturnType&&!e.$ReturnType.$isCollection&&e.$EntitySetPath&&!e.$EntitySetPath.includes("/")};l.prototype.ready2Inherit=function(){return this.bInheritExpandSelect&&this.bRelative&&this.oContext.getBinding?.().ready()||r.resolve()};l.prototype.refreshDependentBindings=function(e,t,n,i){return r.all(this.getDependentBindings().map(function(o){return o.refreshInternal(e,t,n,i)}))};l.prototype.refreshInternal=function(t,n,i,o){var a=this;if(this.oOperation&&this.oOperation.bAction!==false){return r.resolve()}this.bHasFetchedExpandSelectProperties=false;if(this.isRootBindingSuspended()){this.refreshSuspended(n);return this.refreshDependentBindings(t,n,i,o)}this.createReadGroupLock(n,this.isRoot());return this.oCachePromise.then(function(h){var u,d=a.oRefreshPromise,l=a.oReadGroupLock;if(!a.oElementContext){a.oElementContext=e.create(a.oModel,a,a.getResolvedPath());if(!h){a._fireChange({reason:s.Refresh})}}if(a.oOperation){a.oReadGroupLock=undefined;return a._invoke(l,a.oOperation.mRefreshParameters)}if(h&&!d){u=h.hasChangeListeners();a.removeCachesAndMessages(t);if(a.mLateQueryOptions){a.mAggregatedQueryOptions=a.mLateQueryOptions;a.mLateQueryOptions=undefined}a.fetchCache(a.oContext,false,false,n,o);if(u){d=a.createRefreshPromise(o)}else{l.unlock();a.oReadGroupLock=undefined}if(o&&d){d=d.catch(function(e){return a.fetchResourcePath(a.oContext).then(function(e){if(!a.bRelative||h.getResourcePath()===e){a.oCache=h;a.oCachePromise=r.resolve(h);h.setActive(true);return a.checkUpdateInternal()}}).then(function(){throw e})})}if(!i){a.fetchValue("").catch(a.oModel.getReporter())}}return r.all([d,a.refreshDependentBindings(t,n,i,o)])})};l.prototype.refreshReturnValueContext=function(e,t,i){var a=this.oCache,s=this.mCacheQueryOptions,h=this.oModel,u,d=this;if(this.oReturnValueContext!==e){return null}this.mCacheQueryOptions=this.computeOperationQueryOptions();if(this.mLateQueryOptions){this.mCacheQueryOptions=o.clone(this.mCacheQueryOptions);o.aggregateExpandSelect(this.mCacheQueryOptions,this.mLateQueryOptions)}this.oCache=n.createSingle(h.oRequestor,e.getPath().slice(1),this.mCacheQueryOptions,true,h.bSharedRequests);this.oCachePromise=r.resolve(this.oCache);this.createReadGroupLock(t,true);u=e.refreshDependentBindings("",t,true,i);if(i){u=u.catch(function(t){d.oCache=a;d.oCachePromise=r.resolve(a);d.mCacheQueryOptions=s;a.setActive(true);return e.checkUpdateInternal().then(function(){throw t})})}return u};l.prototype.requestObject=function(e){return this.oElementContext?this.oElementContext.requestObject(e):Promise.resolve()};l.prototype.requestSideEffects=function(e,t,n){var i=this.oModel,o=[],a=this;function s(e){return e.catch(function(e){i.reportError("Failed to request side effects",u,e);if(!e.canceled){throw e}})}if(t.indexOf("")<0){try{if(!this.oOperation||this.oReturnValueContext){o.push(this.oCache.requestSideEffects(this.lockGroup(e),t,n&&n.getPath().slice(1)))}this.visitSideEffects(e,t,n,o);return r.all(o.map(s)).then(function(){return a.refreshDependentListBindingsWithoutCache()})}catch(e){if(!e.message.startsWith("Unsupported collection-valued navigation property ")){throw e}}}return n&&this.refreshReturnValueContext(n,e,true)||this.refreshInternal("",e,true,true)};l.prototype.resumeInternal=function(e,t){var n=this.sResumeChangeReason,i=this;function o(){i.getDependentBindings().forEach(function(t){t.resumeInternal(e,!!n)})}this.sResumeChangeReason=undefined;if(this.oOperation){o();return}if(t||n){this.mAggregatedQueryOptions={};this.bAggregatedQueryOptionsInitial=true;this.mCanUseCachePromiseByChildPath={};this.removeCachesAndMessages("");this.fetchCache(this.oContext)}o();if(n){this._fireChange({reason:n})}};l.prototype.setContext=function(t){if(this.oContext!==t){if(this.bRelative&&(this.oContext||t)){this.checkSuspended(true);if(this.oElementContext){this.oElementContext.destroy();this.oElementContext=null}if(this.oReturnValueContext){this.oReturnValueContext.destroy();this.oReturnValueContext=null}if(this.oParameterContext){this.oParameterContext.destroy();this.oParameterContext=null}this.fetchCache(t);if(t){this.oElementContext=e.create(this.oModel,this,this.oModel.resolve(this.sPath,t));if(this.oOperation){this.oParameterContext=e.create(this.oModel,this,this.oModel.resolve(this.sPath+"/$Parameter",t))}}this.bHasFetchedExpandSelectProperties=false;a.prototype.setContext.call(this,t)}else{this.oContext=t}}};l.prototype.setParameter=function(e,t){var n;if(!this.oOperation){throw new Error("The binding must be deferred: "+this.sPath)}if(!e){throw new Error("Missing parameter name")}if(t===undefined){throw new Error("Missing value for parameter: "+e)}n=this.oOperation.mParameters[e];this.oOperation.mParameters[e]=t;o.informAll(this.oOperation.mChangeListeners,e,n,t);this.oOperation.bAction=undefined;return this};return l});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/ODataListBinding", ["./Context","./ODataParentBinding","./lib/_AggregationCache","./lib/_AggregationHelper","./lib/_Cache","./lib/_GroupLock","./lib/_Helper","sap/base/Log","sap/ui/base/SyncPromise","sap/ui/core/Messaging","sap/ui/model/Binding","sap/ui/model/ChangeReason","sap/ui/model/Filter","sap/ui/model/FilterOperator","sap/ui/model/FilterProcessor","sap/ui/model/FilterType","sap/ui/model/ListBinding","sap/ui/model/Sorter","sap/ui/model/odata/OperationMode"],function(e,t,i,n,r,s,o,a,h,d,u,f,c,l,g,p,C,x,v){"use strict";var P="sap.ui.model.odata.v4.ODataListBinding",m={AggregatedDataStateChange:true,change:true,createActivate:true,createCompleted:true,createSent:true,dataReceived:true,dataRequested:true,DataStateChange:true,patchCompleted:true,patchSent:true,refresh:true,selectionChanged:true,separateReceived:true},y=C.extend("sap.ui.model.odata.v4.ODataListBinding",{constructor:E});function E(i,n,r,s,a,h){C.call(this,i,n);t.call(this);if(n.endsWith("/")){throw new Error("Invalid path: "+n)}h=o.clone(h)||{};this.checkBindingParameters(h,["$$aggregation","$$canonicalPath","$$clearSelectionOnFilter","$$getKeepAliveContext","$$groupId","$$operationMode","$$ownRequest","$$patchWithoutSideEffects","$$separate","$$sharedRequest","$$updateGroupId"]);const d=o.toArray(a);if(h.$$aggregation&&d[0]===c.NONE){throw new Error("Cannot combine Filter.NONE with $$aggregation")}this.iActiveContexts=0;this.aApplicationFilters=d;this.sChangeReason=i.bAutoExpandSelect&&!o.isDataAggregation(h)?"AddVirtualContext":undefined;this.iCreatedContexts=0;this.iDeletedContexts=0;this.oDiff=undefined;this.aFilters=[];this.sGroupId=h.$$groupId;this.bHasAnalyticalInfo=false;this.oHeaderContext=this.bRelative?null:e.createNewContext(i,this,n);this.sOperationMode=h.$$operationMode||i.sOperationMode;this.mPreviousContextsByPath={};this.aPreviousData=null;this.bRefreshKeptElements=false;this.sResumeAction=undefined;this.bResetViaSideEffects=undefined;this.bSharedRequest="$$sharedRequest"in h?h.$$sharedRequest:i.bSharedRequests;this.aSorters=o.toArray(s);this.sUpdateGroupId=h.$$updateGroupId;if(!this.sOperationMode&&(this.aSorters.length||this.aApplicationFilters.length)){throw new Error("Unsupported operation mode: "+this.sOperationMode)}this.applyParameters(h);if(!this.bRelative||r&&!r.fetchValue){this.createReadGroupLock(this.getGroupId(),true)}this.setContext(r);i.bindingCreated(this)}t(y.prototype);y.prototype._checkDataStateMessages=function(e,t){if(t){e.setModelMessages(this.oModel.getMessagesByPath(t,true))}};y.prototype._getAllExistingContexts=function(e){let t=this.aContexts??[];if(e){t=t.slice(this.iCreatedContexts)}return t.filter(function(e){return e}).concat(Object.values(this.mPreviousContextsByPath).filter(function(e){return e.isEffectivelyKeptAlive()}))};y.prototype.adjustPredicate=function(e,i,n){var r=this;function s(e,t){var i=r.aPreviousData?.indexOf(e);if(i>=0){r.aPreviousData[i]=t}}if(n){n.adjustPredicate(e,i,s)}else{t.prototype.adjustPredicate.apply(this,arguments);if(this.mCacheQueryOptions&&!this.oContext.getPath().includes("($uid=")){this.fetchCache(this.oContext,true)}this.oHeaderContext.adjustPredicate(e,i);this.aContexts.forEach(function(t){t.adjustPredicate(e,i,s)})}};y.prototype.applyParameters=function(e,t,i){var r,s=this.mParameters&&this.mParameters.$$aggregation,o=this.mQueryOptions&&this.mQueryOptions.$apply;if("$$getKeepAliveContext"in e&&"$apply"in e){throw new Error("Cannot combine $$getKeepAliveContext and $apply")}if("$$aggregation"in e){if("$apply"in e){throw new Error("Cannot combine $$aggregation and $apply")}if(!t){n.validateAggregationAndSetPath(e.$$aggregation,this.oModel.bAutoExpandSelect,this.oModel.oInterface.fetchMetadata,this.getResolvedPath())}r=n.buildApply(e.$$aggregation).$apply}const a=this.mParameters?.$$clearSelectionOnFilter&&(i?.includes("$filter")||i?.includes("$search")||e.$$aggregation?.search!==this.mParameters.$$aggregation?.search);this.mQueryOptions=this.oModel.buildQueryOptions(e,true);this.oQueryOptionsPromise=undefined;this.mParameters=e;if(r){this.mQueryOptions.$apply=r}if(t===""){if(this.mQueryOptions.$apply===o&&(!this.mParameters.$$aggregation||!s||this.isUnchangedParameter("$$aggregation",s))){return}t=this.bHasAnalyticalInfo?f.Change:f.Filter}if(i){this.setResetViaSideEffects(i.every(e=>e==="$orderby"||e==="$filter"))}if(this.isRootBindingSuspended()){this.setResumeChangeReason(t);return}if(a){this.oHeaderContext?.setSelected(false)}this.removeCachesAndMessages("");this.fetchCache(this.oContext);this.reset(t);this.oHeaderContext?.checkUpdate()};y.prototype.attachCreateActivate=function(e,t){return this.attachEvent("createActivate",e,t)};y.prototype.attachCreateCompleted=function(e,t){return this.attachEvent("createCompleted",e,t)};y.prototype.attachCreateSent=function(e,t){return this.attachEvent("createSent",e,t)};y.prototype.attachEvent=function(e,t,i,n){if(!(e in m)){throw new Error("Unsupported event '"+e+"': v4.ODataListBinding#attachEvent")}return C.prototype.attachEvent.apply(this,arguments)};y.prototype.checkDeepCreate=function(){if(!this.oModel.bAutoExpandSelect){throw new Error("Deep create is only supported with autoExpandSelect")}if(y.isBelowAggregation(this.oContext)){throw new Error("Deep create is not supported with data aggregation")}if(!this.oContext.isTransient()){throw new Error("Unexpected ODataContextBinding in deep create")}if(this.sPath.includes("/")){throw new Error("Invalid path '"+this.sPath+"' in deep create")}};y.prototype.checkKeepAlive=function(e,t){if(this.isRelative()&&!this.mParameters.$$ownRequest){throw new Error("Missing $$ownRequest at "+this)}if(e===this.oHeaderContext){throw new Error("Unsupported header context "+e)}if(o.isDataAggregation(this.mParameters)){throw new Error("Unsupported $$aggregation at "+this)}if(this.bSharedRequest){throw new Error("Unsupported $$sharedRequest at "+this)}if(!t&&e&&e.getIndex()===undefined&&e.isKeepAlive()&&!e.isDeleted()&&e.hasPendingChanges()){throw new Error("Not allowed due to pending changes: "+e)}};y.prototype.collapse=function(e,t,i,n){this.checkSuspended();if(this.aContexts[e.iIndex]!==e){throw new Error("Not currently part of the hierarchy: "+e)}if(t&&!this.mParameters.$$aggregation?.hierarchyQualifier){throw new Error("Missing recursive hierarchy")}n??=this.oCache.collapse(o.getRelativePath(e.getPath(),this.oHeaderContext.getPath()),t?this.lockGroup():undefined,i);if(n>0){const t=this.aContexts;const r=e.getModelIndex();t.splice(r+1,n).forEach(e=>{if(!e.created()){this.mPreviousContextsByPath[e.getPath()]=e}});for(let e=r+1;e<t.length;e+=1){if(t[e]){t[e].iIndex=e}}this.iMaxLength-=n;if(!i){this._fireChange({reason:f.Change})}}};y.prototype.create=function(t,i,n,r){var s=this.mParameters.$$aggregation,a,d,u=s?.createInPlace,c=this.fetchResourcePath(),l,g,p=this.getUpdateGroupId(),C,x=this.getResolvedPath(),v="($uid="+o.uid()+")",m=x+v,y=this;if(!x){throw new Error("Binding is unresolved: "+this)}this.checkSuspended();if(o.isDataAggregation(this.mParameters)){throw new Error("Cannot create in "+this+" when using data aggregation")}if(this.isTransient()){this.checkDeepCreate();if(r){throw new Error("Must not create an inactive context in a deep create: "+this)}}n=!!n;if(n&&!(this.bLengthFinal||this.mParameters.$count)){throw new Error("Must know the final length to create at the end. Consider setting $count")}if(this.bFirstCreateAtEnd&&!n){throw new Error("Cannot create at the start after creation at end")}if(r){if(this.isRelative()&&!this.mParameters.$$ownRequest){throw new Error("Missing $$ownRequest at "+this)}p="$inactive."+p}else if(!s){this.iActiveContexts+=1}if(this.bFirstCreateAtEnd===undefined){this.bFirstCreateAtEnd=n}g=o.publicClone(t,true)||{};let E;if(s){if(!i){throw new Error("Missing bSkipRefresh")}if(arguments.length>2){throw new Error("Only the parameters oInitialData and bSkipRefresh are supported")}const e=t?.["@$ui5.node.parent"];if(e){a=this.aContexts.indexOf(e)+1;if(a<=0){throw new Error("Invalid parent context: "+e)}if(e.isExpanded()===false){throw new Error("Unsupported collapsed parent: "+e)}g["@$ui5.node.parent"]=e.getCanonicalPath().slice(1);E=this.oCache.isRefreshNeededAfterCreate(e.iIndex)}else{a=0}}else{this.iCreatedContexts+=1}C=this.lockGroup(p,true,true,function(){if(!y.aContexts.includes(d)){y.mPreviousContextsByPath[d.getPath()]=d;y.destroyPreviousContextsLater([d.getPath()]);return}d.doSetSelected(false,true);y.removeCreated(d);return Promise.resolve().then(function(){y._fireChange({reason:f.Remove})})});l=this.createInCache(C,c,x,v,g,this.bFirstCreateAtEnd!==n,function(e){y.oModel.reportError("POST on '"+c+"' failed; will be repeated automatically",P,e);y.fireEvent("createCompleted",{context:d,success:false})},function(){y.fireEvent("createSent",{context:d})}).then(function(e){var t,n,r;r=o.getPrivateAnnotation(e,"predicate");if(r){y.adjustPredicate(v,r,d);y.oModel.checkMessages()}y.fireEvent("createCompleted",{context:d,success:true});if(u){const t=o.getPrivateAnnotation(e,"rank");d.iIndex=t;if(t===undefined||E){d.destroy();return}d.setPersisted(true);y.insertContext(d,t)}t=o.getPrivateAnnotation(e,"deepCreate");o.deletePrivateAnnotation(e,"deepCreate");n=y.getGroupId();if(y.oModel.isApiGroup(n)){n="$auto"}return i||t?d.updateAfterCreate(i,n):y.refreshSingle(d,y.lockGroup(n))},function(e){C.unlock(true);throw e});if(E){l=h.all([l,this.requestSideEffects(p,[""])])}const $=u?undefined:a??-this.iCreatedContexts;d=e.create(this.oModel,this,m,$,l,r);d.doSetSelected(this.oHeaderContext.isSelected());if(this.isTransient()){d.created().catch(this.oModel.getReporter())}if(u){return d}d.fetchValue().then(function(e){if(e){o.setPrivateAnnotation(e,"context",d);o.setPrivateAnnotation(e,"firstCreateAtEnd",y.bFirstCreateAtEnd)}});this.insertContext(d,a,n);return d};y.prototype.createContexts=function(t,i,n){var r=false,s,a,h=i.$count,d,u=this.bLengthFinal,f=this.oModel,c=this.getResolvedPath(),l,g=t>this.aContexts.length,p=this;function C(){var e=p.iMaxLength+p.iCreatedContexts;if(e>=p.aContexts.length){return}for(let t=e;t<p.aContexts.length;t+=1){if(p.aContexts[t]){p.aContexts[t].destroy()}}while(e>0&&!p.aContexts[e-1]){e-=1}p.aContexts.length=e;r=true}for(let n=0;n<i.length;n+=1){if(this.aContexts[t+n]===undefined&&i[n]){r=true;d=t+n-this.iCreatedContexts;l=o.getPrivateAnnotation(i[n],"predicate");a=c+(l||"/"+d);s=this.mPreviousContextsByPath[a];if(s&&(!s.created()||s.isEffectivelyKeptAlive()||this.mParameters.$$aggregation?.hierarchyQualifier)){delete this.mPreviousContextsByPath[a];s.iIndex=d;s.checkUpdate()}else if(o.hasPrivateAnnotation(i[n],"context")){s=o.getPrivateAnnotation(i[n],"context");s.iIndex=d;a=s.getPath();if(this.mPreviousContextsByPath[a]===s){delete this.mPreviousContextsByPath[a]}}else{s=e.create(f,this,a,d);s.doSetSelected(this.oHeaderContext.isSelected())}this.aContexts[t+n]=s}}if(n){return r}this.destroyPreviousContextsLater(Object.keys(this.mPreviousContextsByPath));if(h!==undefined){this.bLengthFinal=true;this.iMaxLength=h-this.iActiveContexts;C()}else{if(!i.length){this.iMaxLength=t-this.iCreatedContexts;C()}else if(this.aContexts.length>this.iMaxLength+this.iCreatedContexts){this.iMaxLength=Infinity}if(!(g&&i.length===0)){this.bLengthFinal=this.aContexts.length===this.iMaxLength+this.iCreatedContexts}}if(this.bLengthFinal!==u){r=true}return r};y.prototype.createContextsForCachedData=function(e,t){if(this.bFirstCreateAtEnd){e+=this.iCreatedContexts}this.withCache((i,n)=>{const r=i.getElements(n,e,e+t);if(r){this.createContexts(e,r,true)}},"",true)};y.prototype.delete=function(t,i,n,r,s,a){var h=false,d=this;if(n.isDeleted()){return n.oDeletePromise}const u=n.isExpanded();if(u){this.collapse(n,false,true)}const c=n.iIndex<0;const l=n.iIndex===undefined?o.getRelativePath(n.getPath(),this.oHeaderContext.getPath()):String(n.getModelIndex());this.iDeletedContexts+=1;return n.doDelete(t,i,l,r,this,function(e,i){if(e!==undefined){if(i>0){delete d.mPreviousContextsByPath[n.getPath()];d.aContexts.splice(e,0,n);a()}else{d.mPreviousContextsByPath[n.getPath()]=n;d.aContexts.splice(e,1);n.iIndex=undefined;Promise.resolve().then(function(){d._fireChange({reason:f.Remove})})}if(c){d.iCreatedContexts+=i;d.iActiveContexts+=i}else{d.iMaxLength+=i}d.aContexts.forEach(function(e,t){e.iIndex=t-d.iCreatedContexts})}else if(i>0){h=true;a()}else if(d.bLengthFinal&&!s){d.oCache.requestCount(t&&!d.oModel.isApiGroup(t.getGroupId())?t.getUnlockedCopy():d.lockGroup("$auto")).then(function(e){var t=d.iMaxLength;d.iMaxLength=e-d.iActiveContexts;if(t!==d.iMaxLength){d._fireChange({reason:f.Remove})}})}}).then(function(){d.iDeletedContexts-=1;if(!d.iDeletedContexts&&!d.iCreatedContexts){d.bFirstCreateAtEnd=undefined}n.resetKeepAlive();n.iIndex=e.VIRTUAL;d.destroyPreviousContextsLater([n.getPath()])},function(e){d.iDeletedContexts-=1;a();if(h){d.oCache.reset(d.getKeepAlivePredicates());d.reset(f.Change)}else{if(u){d.expand(n,1,true).unwrap()}d._fireChange({reason:f.Add})}throw e})};y.prototype.destroy=function(){if(this.bHasAnalyticalInfo&&this.aContexts===undefined){return}this.aContexts.forEach(function(e){e.destroy()});this.destroyPreviousContexts();if(this.oHeaderContext){this.oHeaderContext.destroy()}this.oModel.bindingDestroyed(this);this.aApplicationFilters=undefined;this.aContexts=undefined;this.oDiff=undefined;this.aFilters=undefined;this.oHeaderContext=undefined;this.mParameters=undefined;this.mPreviousContextsByPath=undefined;this.aPreviousData=undefined;this.mQueryOptions=undefined;this.oQueryOptionsPromise=undefined;this.aSorters=undefined;t.prototype.destroy.call(this);C.prototype.destroy.call(this)};y.prototype.destroyLater=function(e){if(this.iCurrentEnd){this.mPreviousContextsByPath[e.getPath()]=e}else{e.destroy()}};y.prototype.destroyPreviousContexts=function(e){var t=this.mPreviousContextsByPath,i=this;if(t){(e||Object.keys(t)).forEach(function(n){var r=t[n];if(r){if(e&&(r.isEffectivelyKeptAlive()||r.isOutOfPlace()||r.oDeletePromise?.isPending())){r.iIndex=undefined}else{if(!r.isTransient()){r.destroy();if(r.iIndex===undefined&&i.oCache){i.oCache.removeKeptElement(o.getRelativePath(n,i.oHeaderContext.getPath()))}}delete t[n]}}})}};y.prototype.destroyPreviousContextsLater=function(e){if(e.length){this.oModel.addPrerenderingTask(this.destroyPreviousContexts.bind(this,e))}};y.prototype.detachCreateActivate=function(e,t){return this.detachEvent("createActivate",e,t)};y.prototype.detachCreateCompleted=function(e,t){return this.detachEvent("createCompleted",e,t)};y.prototype.detachCreateSent=function(e,t){return this.detachEvent("createSent",e,t)};y.prototype.doCreateCache=function(e,t,n,r,s,o,a){var h,d,u,f=this.bResetViaSideEffects;this.bResetViaSideEffects=undefined;if(a&&a.getResourcePath()===e&&a.$deepResourcePath===r){d=this.getKeepAlivePredicates();if(this.iCreatedContexts||this.iDeletedContexts||d.length||this.mParameters.$$aggregation?.hierarchyQualifier&&a instanceof i){if(f&&this.mParameters.$$aggregation?.hierarchyQualifier){s=this.getGroupId();o=true;a.resetOutOfPlace()}this.validateSelection(a,s);a.reset(d,o?s:undefined,t,this.mParameters.$$aggregation,this.isGrouped());return a}}t=this.inheritQueryOptions(t,n);h=this.getCacheAndMoveKeepAliveContexts(e,t);if(h&&this.mParameters.$$aggregation){u={};d=this.getKeepAlivePredicates();d.forEach(function(e){u[e]=h.getValue(e)});h.setActive(false);h=undefined}h??=i.create(this.oModel.oRequestor,e,r,t,this.mParameters.$$aggregation,this.oModel.bAutoExpandSelect||"$$separate"in this.mParameters,this.bSharedRequest,this.isGrouped());h.setSeparate?.(this.mParameters.$$separate);if(u){d.forEach(function(e){h.addKeptElement(u[e])})}else if(this.bSharedRequest){h.registerChangeListener("",this)}return h};y.prototype.doFetchOrGetQueryOptions=function(e){var t=e&&o.getMetaPath(e.getPath()),i=this;if(!(this.oQueryOptionsPromise&&this.oQueryOptionsPromise.$metaPath===t)){this.oQueryOptionsPromise=this.fetchResolvedQueryOptions(e).then(function(t){return i.fetchFilter(e,t.$filter).then(function(e){return o.mergeQueryOptions(t,i.getOrderby(t.$orderby),e)})});this.oQueryOptionsPromise.$metaPath=t}return this.oQueryOptionsPromise};y.prototype.doReplaceWith=function(t,i,n){var r=t.getModelIndex(),s,o=t.fnOnBeforeDestroy,a,h=this.oHeaderContext.getPath()+n,d=this.mPreviousContextsByPath[h];if(d){if(d===t){return d}if(d.iIndex!==undefined){throw new Error("Unexpected index: "+d)}d.iIndex=t.iIndex;delete this.mPreviousContextsByPath[h]}else{d=e.create(this.oModel,this,h,t.iIndex);s=true}if(r===undefined){this.mPreviousContextsByPath[h]=d;this.oCache.addKeptElement(i)}else{t.iIndex=undefined;this.aContexts[r]=d;this.oCache.doReplaceWith(r,i)}if(t.isKeepAlive()){this.mPreviousContextsByPath[t.getPath()]=t;if(s){if(o){a=(o.$original||o).bind(null,d);a.$original=o}d.setKeepAlive(true,a)}}else{this.destroyLater(t)}this._fireChange({reason:f.Change});return d};y.prototype.doSetProperty=function(){};y.prototype.expand=function(e,t,i){this.checkSuspended();if(this.aContexts[e.iIndex]!==e){throw new Error("Not currently part of the hierarchy: "+e)}if(t>1&&!this.mParameters.$$aggregation?.hierarchyQualifier){throw new Error("Missing recursive hierarchy")}let n=false;const r=o.getRelativePath(e.getPath(),this.oHeaderContext.getPath());return this.oCache.expand(this.lockGroup(),r,t,()=>{n=true;this.fireDataRequested()}).then(t=>{if(t<0){return this.requestSideEffects(this.getGroupId(),[""])}if(t){this.insertGap(e.getModelIndex(),t);if(!i){this._fireChange({reason:f.Change})}}if(n){this.fireDataReceived({})}},e=>{if(n){this.fireDataReceived({error:e})}throw e})};y.prototype.fetchContexts=function(e,t,i,n,r,s){var o,a=this;if(this.bFirstCreateAtEnd){e+=this.iCreatedContexts}if(!n){n=this.oReadGroupLock||this.lockGroup();this.oReadGroupLock=undefined}o=this.fetchData(e,t,i,n,s);if(r){o=Promise.resolve(o)}return o.then(function(t){var i;if(!a.aContexts){i=new Error("Binding already destroyed");i.canceled=true;throw i}if(t){t.$checkStillValid?.();return a.createContexts(e,t.value)}},function(e){n.unlock(true);throw e})};y.prototype.fetchData=function(e,t,i,n,r){var s=this.oContext,o=this;return this.oCachePromise.then(function(a){var h;if(o.bRelative&&s!==o.oContext){return undefined}if(a){if(!a.hasSentRequest()&&o.isRelative()&&y.isBelowCreated(s)){h=s.getAndRemoveCollection(o.sPath);if(h){a.setPersistedCollection(h)}}return a.read(e,t,i,n,r,undefined,o.fireSeparateReceived.bind(o)).then(function(e){e.$checkStillValid=o.checkSameCache.bind(o,a);return e})}n.unlock();return s.fetchValue(o.sReducedPath).then(function(i){var n;i??=[];n=i.$count;i=i.slice(e,e+t);i.$count=n;return{value:i}})})};y.prototype.fetchDownloadUrl=function(){var e=this.oModel.mUriParameters;this.checkTransient();if(!this.isResolved()){throw new Error("Binding is unresolved")}if(this.hasFilterNone()){return h.resolve(null)}const t=o.getMetaPath(this.getResolvedPath());const i={};for(const e in this.mChildPathsReducedToParent){const n=o.wrapChildQueryOptions(t,e,{},this.oModel.oInterface.fetchMetadata,true);o.aggregateExpandSelect(i,n)}return this.withCache(function(t,n){return t.getDownloadUrl(n,e,i)})};y.prototype.fetchFilter=function(e,t){let i;const r=this.oModel.getMetaModel();const s=r.getMetaContext(this.oModel.resolve(this.sPath,e));function a(e,t,n,r){var s,a,h,d;function u(e){return h?"tolower("+e+")":e}h=t==="Edm.String"&&e.isCaseSensitive()===false;a=r&&!i?.includes(e)?u(`$these/aggregate(${e.getPath()})`):u(decodeURIComponent(e.getPath()));d=u(o.formatLiteral(e.getValue1(),t));switch(e.getOperator()){case l.BT:s=a+" ge "+d+" and "+a+" le "+u(o.formatLiteral(e.getValue2(),t));break;case l.NB:s=f(a+" lt "+d+" or "+a+" gt "+u(o.formatLiteral(e.getValue2(),t)),n);break;case l.EQ:case l.GE:case l.GT:case l.LE:case l.LT:case l.NE:s=a+" "+e.getOperator().toLowerCase()+" "+d;break;case l.Contains:case l.EndsWith:case l.NotContains:case l.NotEndsWith:case l.NotStartsWith:case l.StartsWith:s=e.getOperator().toLowerCase().replace("not","not ")+"("+a+","+d+")";break;default:throw new Error("Unsupported operator: "+e.getOperator())}return s}function d(e,t,i,n){var o;if(!e){return h.resolve()}if(e.getFilters()){return h.all(e.getFilters().map(function(i){return d(i,t,e.isAnd(),n)})).then(function(t){return f(t.join(e.isAnd()?" and ":" or "),i&&!e.isAnd())})}o=r.resolve(u(e.getPath(),t),s);return r.fetchObject(o).then(function(r){var s,h,f;if(!r){throw new Error("Type cannot be determined, no metadata for path: "+o)}f=e.getOperator();if(f===l.All||f===l.Any){s=e.getCondition();h=e.getVariable();if(f===l.Any&&!s){return e.getPath()+"/any()"}t=Object.create(t);t[h]=u(e.getPath(),t);return d(s,t).then(function(t){return e.getPath()+"/"+e.getOperator().toLowerCase()+"("+h+":"+t+")"})}return a(e,r.$Type,i,n)})}function u(e,t){var i=e.split("/");i[0]=t[i[0]];return i[0]?i.join("/"):e}function f(e,t){return t?"("+e+")":e}const p=g.combineFilters(this.aFilters,this.aApplicationFilters);const C=o.isDataAggregation(this.mParameters)?r.fetchObject(s.getPath()+"/"):h.resolve();return C.then(e=>{const r=this.mParameters.$$aggregation;if(e){r.$leafLevelAggregated=!e.$Key?.every(e=>e in r.group||Object.keys(r.group).some(t=>r.group[t].additionally?.includes(e)))}if(!p){return[t]}if(p===c.NONE){return["false"]}const s=n.splitFilter(p,r);i=s[3];return h.all([d(s[0],{},t).then(e=>e&&t?e+" and ("+t+")":e||t),d(s[1],{}),d(s[2],{},undefined,true)])})};y.prototype.fetchOrGetParent=function(e,t){if(!this.mParameters.$$aggregation?.hierarchyQualifier){throw new Error("Missing recursive hierarchy")}if(this.aContexts[e.iIndex]!==e){throw new Error("Not currently part of a recursive hierarchy: "+e)}const i=this.oCache.getParentIndex(e.iIndex);if(i<0){return null}const n=e=>this.requestContexts(e,1).then(e=>e[0]);if(t){if(i===undefined){return this.oCache.fetchParentIndex(e.iIndex,this.lockGroup()).then(n)}return n(i)}return this.aContexts[i]};y.prototype.fetchOrGetSibling=function(e,t=+1,i=false){if(!this.mParameters.$$aggregation?.hierarchyQualifier){throw new Error("Missing recursive hierarchy")}if(t!==-1&&t!==+1){throw new Error("Unsupported offset: "+t)}if(e.isDeleted()||e.isTransient()||this.aContexts[e.iIndex]!==e){throw new Error("Unsupported context: "+e)}this.checkSuspended();let n;if(e.created()){if(t<0){return null}const r=e.getParent();if(r?.created()){return null}let s;let o;[n,s,o]=this.oCache.get1stInPlaceChildIndex(r?r.iIndex:-1);if(s){return i?this.requestContexts(n,1).then(e=>e[0]).then(e=>e.getProperty("@$ui5.node.level")===o?e:null):undefined}}else{n=this.oCache.getSiblingIndex(e.iIndex,t)}if(n<0){return null}if(n!==undefined){this.fetchContexts(n,1,0,s.$cached);return this.aContexts[n]}if(!i){return undefined}return this.oCache.requestSiblingIndex(e.iIndex,t,this.lockGroup()).then(e=>e<0?null:this.requestContexts(e,1).then(e=>e[0]))};y.prototype.fetchValue=function(e,t,i){var n=i&&this.oCache!==undefined?h.resolve(this.oCache):this.oCachePromise,r=this;return n.then(function(n){var o,a;if(n){o=i?s.$cached:r.lockGroup();a=r.getRelativePath(e);if(a!==undefined){return n.fetchValue(o,a,undefined,t)}}if(r.oContext){return r.oContext.fetchValue(e,t,i)}})};y.prototype.filter=function(e,t){var i=o.toArray(e);this.checkTransient();c.checkFilterNone(i);if(i[0]===c.NONE&&this.mParameters.$$aggregation){throw new Error("Cannot combine Filter.NONE with $$aggregation")}if(this.sOperationMode!==v.Server){throw new Error("Operation mode has to be sap.ui.model.odata.OperationMode.Server")}if(t===p.Control?o.deepEqual(i,this.aFilters):o.deepEqual(i,this.aApplicationFilters)){return this}if(this.hasPendingChanges(true)){throw new Error("Cannot filter due to pending changes")}if(t===p.Control){this.aFilters=i}else{this.aApplicationFilters=i}this.oQueryOptionsPromise=undefined;this.setResetViaSideEffects(true);if(this.isRootBindingSuspended()){this.setResumeChangeReason(f.Filter);return this}if(this.mParameters.$$clearSelectionOnFilter){this.oHeaderContext?.setSelected(false)}this.createReadGroupLock(this.getGroupId(),true);this.removeCachesAndMessages("");this.fetchCache(this.oContext);this.reset(f.Filter);this.oHeaderContext?.checkUpdate();return this};y.prototype.findContextForCanonicalPath=function(e){var t=Object.values(this.mPreviousContextsByPath).filter(function(e){return e.isEffectivelyKeptAlive()});function i(t){return t.find(function(t){var i;if(t){i=t.fetchCanonicalPath();i.caught();return i.getResult()===e}})}return i(t)||i(this.aContexts)};y.prototype.fireCreateActivate=function(e){if(this.fireEvent("createActivate",{context:e},true)){this.iActiveContexts+=1;return true}return false};y.prototype.fireSelectionChanged=function(e){this.fireEvent("selectionChanged",{context:e})};y.prototype.fireSeparateReceived=function(e,t,i,n){const r={property:e,start:t,length:i-t};if(n){r.errorMessage=this.oModel.reportTransitionMessages(o.extractMessages(n),n.resourcePath,true)[0]}const s=this.fireEvent("separateReceived",r,true);if(n&&s){d.updateMessages(undefined,[r.errorMessage])}};y.prototype.getAggregation=function(e){return o.clone(this.mParameters.$$aggregation,function(t,i){return t[0]==="$"&&!(e&&["$DistanceFromRoot","$DrillState","$NodeProperty"].includes(t))?undefined:i})};y.prototype.getAllCurrentContexts=function(){var e;this.withCache(function(t,i){e=t.getElements(i)},"",true);if(e&&this.createContexts(0,e,true)){this._fireChange({reason:f.Change})}return this._getAllExistingContexts()};y.prototype.getCacheAndMoveKeepAliveContexts=function(e,t){var i,n,r=this;if(!this.mParameters.$$getKeepAliveContext){return undefined}i=this.oModel.releaseKeepAliveBinding("/"+e);if(!i){return undefined}Object.keys(i.mParameters).concat(Object.keys(this.mParameters)).forEach(function(e){if((e[0]!=="$"||e==="$$patchWithoutSideEffects"||e==="$$updateGroupId")&&r.mParameters[e]!==i.mParameters[e]){throw new Error(r+": parameter does not match getKeepAliveContext: "+e)}});this.mLateQueryOptions=o.clone(t);o.aggregateExpandSelect(this.mLateQueryOptions,i.mLateQueryOptions);this.mPreviousContextsByPath=i.mPreviousContextsByPath;Object.values(this.mPreviousContextsByPath).forEach(function(e){e.oBinding=r});n=i.oCache;n.setQueryOptions(t);i.oCache=null;i.oCachePromise=h.resolve(null);i.mPreviousContextsByPath={};i.destroy();return n};y.prototype.getContexts=function(t=0,i,n,r){var s,o,h=false,d,u,c,l=!!this.sChangeReason,g=this.getResolvedPath(),p,C=this;a.debug(this+"#getContexts("+t+", "+i+", "+n+")",undefined,P);this.checkSuspended();if(t!==0&&this.bUseExtendedChangeDetection){throw new Error("Unsupported operation: v4.ODataListBinding#getContexts,"+" iStart must be 0 if extended change detection is enabled, but is "+t)}if(this.bUseExtendedChangeDetection){if(n!==undefined){throw new Error("Unsupported operation: v4.ODataListBinding#getContexts,"+" iMaximumPrefetchSize must not be set if extended change detection is"+" enabled")}if(r){throw new Error("Unsupported operation: v4.ODataListBinding#getContexts,"+" must not use bKeepCurrent if extended change detection is enabled")}}if(n&&r){throw new Error("Unsupported operation: v4.ODataListBinding#getContexts,"+" must not use both iMaximumPrefetchSize and bKeepCurrent")}if(!this.isResolved()){this.aPreviousData=null;return[]}s=this.sChangeReason||f.Change;this.sChangeReason=undefined;if(s==="AddVirtualContext"){this.oModel.addPrerenderingTask(function(){var e=C.bUseExtendedChangeDetection;if(C.aContexts&&!C.isRootBindingSuspended()){C.bUseExtendedChangeDetection=false;C.getContexts(t,i,n);C.bUseExtendedChangeDetection=e}C.oModel.addPrerenderingTask(function(){if(!C.isRootBindingSuspended()){C.sChangeReason="RemoveVirtualContext";C._fireChange({detailedReason:"RemoveVirtualContext",reason:f.Change});C.reset(f.Refresh)}})},true);p=e.create(this.oModel,this,g+"/"+e.VIRTUAL,e.VIRTUAL);C.mPreviousContextsByPath[p.getPath()]=p;return[p]}if(s==="RemoveVirtualContext"||this.oContext&&this.oContext.iIndex===e.VIRTUAL){return[]}i||=this.oModel.iSizeLimit;if(!n||n<0){n=0}if(!this.oDiff){u=this.isRefreshWithoutBubbling();c=this.fetchContexts(t,i,n,undefined,l,function(){if(d===undefined){d=true;C.fireDataRequested(u)}});if(!l&&c.isPending()){this.createContextsForCachedData(t,i)}this.resolveRefreshPromise(c).then(function(e){if(C.bUseExtendedChangeDetection){C.oDiff={aDiff:C.getDiff(i),iLength:i}}if(h){if(e||C.oDiff&&C.oDiff.aDiff?.length){C._fireChange({reason:s})}else{C.oDiff=undefined}}if(d){C.fireDataReceived({data:{}},u)}d=false},function(e){if(d){C.fireDataReceived(e.canceled?{data:{}}:{error:e},u)}throw e}).catch(function(e){C.oModel.reportError("Failed to get contexts for "+C.oModel.sServiceUrl+g.slice(1)+" with start index "+t+" and length "+i,P,e)});h=true}if(!r){this.iCurrentBegin=t;this.iCurrentEnd=t+i}o=this.getContextsInViewOrder(t,i);o.bExpectMore=this._isExpectingMoreContexts(o,t,i);if(this.bUseExtendedChangeDetection){if(this.oDiff&&i!==this.oDiff.iLength){throw new Error("Extended change detection protocol violation: Expected "+"getContexts(0,"+this.oDiff.iLength+"), but got getContexts(0,"+i+")")}o.dataRequested=!this.oDiff;o.diff=this.oDiff?this.oDiff.aDiff:[]}this.oDiff=undefined;return o};y.prototype.getContextsInViewOrder=function(e,t){var i,n,r;if(this.bFirstCreateAtEnd){i=[];n=Math.min(t,this.getLength()-e);for(r=0;r<n;r+=1){i[r]=this.aContexts[this.getModelIndex(e+r)]}}else{i=this.aContexts.slice(e,e+t)}return i};y.prototype.getCount=function(){return this.getHeaderContext()?.getProperty("$count")};y.prototype.getCurrentContexts=function(){var e,t=Math.min(this.iCurrentEnd,this.iMaxLength+this.iCreatedContexts)-this.iCurrentBegin;e=this.getContextsInViewOrder(this.iCurrentBegin,t);if(t<Infinity){while(e.length<t){e.push(undefined)}}return e};y.prototype.getDependentBindings=function(){var e=this;return this.oModel.getDependentBindings(this).filter(function(t){return t.oContext.isEffectivelyKeptAlive()||!(t.oContext.getPath()in e.mPreviousContextsByPath)})};y.prototype.getDiff=function(e){var t=this.aPreviousData,i=this;this.aPreviousData=this.getContextsInViewOrder(0,e).map(function(e){return i.getContextData(e)});return t?this.diffData(t,this.aPreviousData):null};y.prototype.getDistinctValues=function(e){throw new Error("Unsupported operation: v4.ODataListBinding#getDistinctValues")};y.prototype.getDownloadUrl=o.createGetMethod("fetchDownloadUrl",true);y.prototype.getEntryData=function(e){return o.publicClone(e.getValue(),false,true)};y.prototype.getEntryKey=function(e){return e.getPath()};y.prototype.getFilterInfo=function(e){var t=g.combineFilters(this.aFilters,this.aApplicationFilters),i=null,n;if(t){i=t.getAST(e)}if(this.mQueryOptions.$filter){n={expression:this.mQueryOptions.$filter,syntax:"OData "+this.oModel.getODataVersion(),type:"Custom"};if(i){i={left:i,op:"&&",right:n,type:"Logical"}}else{i=n}}return i};y.prototype.getGeneration=function(){return this.oHeaderContext.getGeneration(true)||t.prototype.getGeneration.call(this)};y.prototype.getHeaderContext=function(){return this.isResolved()?this.oHeaderContext:null};y.prototype.getKeepAliveContext=function(t,i,n){var r=this.mPreviousContextsByPath[t]||this.aContexts.find(function(e){return e&&e.getPath()===t}),s=o.getPredicateIndex(t),a=this.getResolvedPath();this.checkKeepAlive();this.checkSuspended();this.checkTransient();o.checkGroupId(n);if(!r){if(!a){throw new Error("Binding is unresolved: "+this)}if(t.slice(0,s)!==a){throw new Error(this+": Not a valid context path: "+t)}r=e.create(this.oModel,this,t);this.mPreviousContextsByPath[t]=r;this.oCachePromise.then(function(e){var i={};o.setPrivateAnnotation(i,"predicate",t.slice(s));e.addKeptElement(i);if(n){o.setPrivateAnnotation(i,"groupId",n)}});this.oModel.getMetaModel().requestObject(o.getMetaPath(a)+"/").then(function(e){return r.requestProperty(e.$Key.map(function(e){return typeof e==="object"?Object.values(e)[0]:e}))}).catch(this.oModel.getReporter())}r.setKeepAlive(true,r.fnOnBeforeDestroy,i);return r};y.prototype.getKeepAlivePredicates=function(){var e;if(!this.getHeaderContext()){return[]}e=this.getHeaderContext().getPath();return Object.values(this.mPreviousContextsByPath).concat(this.aContexts).filter(function(e){return e.isEffectivelyKeptAlive()}).map(function(t){return o.getRelativePath(t.getPath(),e)})};y.prototype.getLength=function(){if(this.bLengthFinal){return this.iMaxLength+this.iCreatedContexts}return this.aContexts.length?this.aContexts.length+10:0};y.prototype.getModelIndex=function(e){if(!this.bFirstCreateAtEnd){return e}if(!this.bLengthFinal){return this.aContexts.length-e-1}return e<this.getLength()-this.iCreatedContexts?e+this.iCreatedContexts:this.getLength()-e-1};y.prototype.getOrderby=function(e){var t=[],i=this;this.aSorters.forEach(function(e){if(e instanceof x){t.push(e.getPath()+(e.isDescending()?" desc":""))}else{throw new Error("Unsupported sorter: "+e+" - "+i)}});if(e){t.push(e)}return t.join(",")};y.prototype.getQueryOptions=function(e){var t={},i=this;if(e){throw new Error("Unsupported parameter value: bWithSystemQueryOptions: "+e)}Object.keys(this.mQueryOptions).forEach(function(e){if(e[0]!=="$"){t[e]=o.clone(i.mQueryOptions[e])}});return t};y.prototype.getQueryOptionsFromParameters=function(){return this.mQueryOptions};y.prototype.getSelectionCount=function(){return this.getHeaderContext()?.getProperty("$selectionCount")};y.prototype.hasFilterNone=function(){return this.aFilters[0]===c.NONE||this.aApplicationFilters[0]===c.NONE};y.prototype.hasPendingChangesForPath=function(e,i){if(this.oCache===undefined){return!i&&this.iActiveContexts>0}return t.prototype.hasPendingChangesForPath.apply(this,arguments)};y.prototype.inheritQueryOptions=function(e,t){var i;if(o.isEmptyObject(this.mParameters)){i=this.getQueryOptionsForPath("",t);if(e.$orderby&&i.$orderby){e.$orderby+=","+i.$orderby}if(e.$filter&&i.$filter){e.$filter="("+e.$filter+") and ("+i.$filter+")"}e=o.merge({},i,e);o.aggregateExpandSelect(e,i)}return e};y.prototype.initialize=function(){if(this.isResolved()){this.checkDataState();if(this.isRootBindingSuspended()){this.sResumeChangeReason=this.sChangeReason==="AddVirtualContext"?f.Change:f.Refresh}else if(this.sChangeReason==="AddVirtualContext"){this._fireChange({detailedReason:"AddVirtualContext",reason:f.Change})}else{this.sChangeReason=f.Refresh;this._fireRefresh({reason:f.Refresh})}}};y.prototype.insertContext=function(e,t,i){if(t!==undefined){o.insert(this.aContexts,t,e);for(let e=this.aContexts.length-1;e>t;e-=1){if(this.aContexts[e]){this.aContexts[e].iIndex+=1}}this.iMaxLength+=1}else if(this.bFirstCreateAtEnd!==i){this.aContexts.splice(this.iCreatedContexts-1,0,e);for(let e=this.iCreatedContexts-1;e>=0;e-=1){this.aContexts[e].iIndex=e-this.iCreatedContexts}}else{this.aContexts.unshift(e)}this._fireChange({reason:f.Add})};y.prototype.insertGap=function(e,t){const i=this.aContexts;if(e>=i.length){throw new Error("Array index out of bounds: "+e)}else if(e===i.length-1){i.length+=t}else{for(let n=i.length-1;n>e;n-=1){const e=i[n];if(e){e.iIndex+=t;i[n+t]=e;delete i[n]}}}this.iMaxLength+=t};y.prototype.isAncestorOf=function(e,t){if(!this.mParameters.$$aggregation?.hierarchyQualifier){throw new Error("Missing recursive hierarchy")}if(!t){return false}[e,t].forEach(e=>{if(this.aContexts[e.iIndex]!==e){throw new Error("Not currently part of a recursive hierarchy: "+e)}});return this.oCache.isAncestorOf(e.iIndex,t.iIndex)};y.prototype.isFirstCreateAtEnd=function(){return this.bFirstCreateAtEnd};y.prototype.isKeepAliveBindingFor=function(e){return this.mParameters.$$getKeepAliveContext&&this.getResolvedPath()===e&&(!this.isRootBindingSuspended()||this.aContexts.length||!o.isEmptyObject(this.mPreviousContextsByPath))};y.prototype.isLengthFinal=function(){return this.bLengthFinal};y.prototype.isUnchangedParameter=function(e,i){if(e==="$$aggregation"){i=o.clone(i);n.buildApply(i);return o.deepEqual(o.cloneNo$(this.mParameters.$$aggregation),o.cloneNo$(i))}return t.prototype.isUnchangedParameter.apply(this,arguments)};y.prototype.keepOnlyVisibleContexts=function(){const e=this.aContexts.slice(0,this.iCreatedContexts);const t=e.concat(this.getCurrentContexts().filter(t=>t&&!e.includes(t)));Object.keys(this.mPreviousContextsByPath).forEach(e=>{var i=this.mPreviousContextsByPath[e];if(i.isEffectivelyKeptAlive()){t.push(i)}});let i=0;function n(e,n,r){if(n.created()){t.push(n);i=e+r+1}else{delete this.aContexts[e+r];this.destroyLater(n)}}this.aContexts.slice(this.iCreatedContexts,this.iCurrentBegin).forEach(n.bind(this,this.iCreatedContexts));if(this.aContexts.length>this.iCurrentEnd&&this.iCurrentEnd>=this.iCreatedContexts){this.aContexts.slice(this.iCurrentEnd).forEach(n.bind(this,this.iCurrentEnd));this.aContexts.length=Math.max(i,this.iCurrentEnd)}return t.filter(e=>!e.getProperty("@$ui5.context.isTransient"))};y.prototype.move=function(e,t,i,n){const r=(e,t)=>{if(e>t){[e,t]=[t,e]}for(let i=e;i<=t;i+=1){if(this.aContexts[i]){this.aContexts[i].iIndex=i}}};if(!this.mParameters.$$aggregation?.hierarchyQualifier){throw new Error("Missing recursive hierarchy")}this.checkSuspended();const s=this.getUpdateGroupId();const a=this.lockGroup(s,true,true);const d=e.getCanonicalPath().slice(1);const u=t===null?null:t.getCanonicalPath().slice(1);const c=i===null?null:i?.getCanonicalPath().slice(1);const l=i===undefined?undefined:e.getPath().slice(1);const g=i?.isEffectivelyKeptAlive();const{promise:p,refresh:C}=this.oCache.move(a,d,u,c,l,g,n);if(C){return h.all([p,this.requestSideEffects(s,[""])]).then(([t])=>{const[n,r]=t();e.iIndex=n;if(g){i.iIndex=r}})}return p.then(([i,n,s])=>{if(i>1){this.insertGap(t.getModelIndex(),i-1)}if(s){this.collapse(e,false,true,s)}const a=e.getModelIndex();this.aContexts.splice(a,1);o.insert(this.aContexts,n,e);r(a,n);if(s){this.expand(e,1).unwrap()}else{this._fireChange({reason:f.Change})}})};y.prototype.onChange=function(){var e,t=this;if(!this.oRefreshPromise){if(this.isRootBindingSuspended()){this.sResumeAction="onChange"}else{e=this.getDependentBindings();this.reset(f.Refresh);h.all(e.map(function(e){return e.refreshInternal("")})).then(function(){return t.oHeaderContext.checkUpdateInternal()}).catch(this.oModel.getReporter())}}};y.prototype.onKeepAliveChanged=function(e){if(!e.isDeleted()&&e.getPath()in this.mPreviousContextsByPath&&!e.isEffectivelyKeptAlive()){this.destroyPreviousContextsLater([e.getPath()])}};y.prototype.prepareDeepCreate=function(t,i){var n=this;if(!t){return!i}if(t.iIndex===e.VIRTUAL){return true}if(!t.getPath().includes("($uid=")){return!i}this.mCacheQueryOptions=i;if(!this.oModel.bAutoExpandSelect||y.isBelowAggregation(t)){return true}t.withCache(function(t,r){var s=t.addTransientCollection(r,i&&i.$select),a=n.getResolvedPath();n.aContexts=s.map(function(t,i){var r,h=o.getPrivateAnnotation(t,"transientPredicate"),d=o.getPrivateAnnotation(t,"promise");r=e.create(n.oModel,n,a+h,i-s.length,d,false,true);r.created().catch(n.oModel.getReporter());o.setPrivateAnnotation(t,"context",r);o.setPrivateAnnotation(t,"firstCreateAtEnd",false);o.deletePrivateAnnotation(t,"promise");return r});n.iCreatedContexts=n.iActiveContexts=n.aContexts.length;n.bFirstCreateAtEnd=false},this.sPath);return true};y.prototype.refreshInternal=function(e,t,i,n){var r=this;function s(i){return i.map(function(i){if(i.bIsBeingDestroyed||i.getContext().isEffectivelyKeptAlive()&&i.hasPendingChanges()){return}return i.refreshInternal(e,t,false,n)})}if(this.isRootBindingSuspended()){if(this.bSharedRequest){this.sResumeAction="resetCache"}else{this.refreshSuspended(t);this.bRefreshKeptElements=true}return h.all(s(r.getDependentBindings()))}this.createReadGroupLock(t,this.isRoot());return this.oCachePromise.then(function(i){var o=r.iActiveContexts,a=r.iCreatedContexts,d=r.aContexts.slice(0,a),u,c,l=r.oRefreshPromise;if(i&&!l){r.removeCachesAndMessages(e);if(r.bSharedRequest){l=r.createRefreshPromise();i.reset([])}else{r.fetchCache(r.oContext,false,true,t,n);c=r.refreshKeptElements(t,n);if(r.iCurrentEnd>0){l=r.createRefreshPromise(n).catch(function(e){if(!n||e.canceled){throw e}return r.fetchResourcePath(r.oContext).then(function(t){var n;if(!r.bRelative||i.getResourcePath()===t){if(r.oCache===i){i.restore(true)}else{i.setActive(true);r.oCache=i;r.oCachePromise=h.resolve(i)}r.iActiveContexts=o;r.iCreatedContexts=a;for(n=0;n<a;n+=1){d[n].iIndex=n-a;delete r.mPreviousContextsByPath[d[n].getPath()]}r.aContexts=d;r._fireChange({reason:f.Change})}throw e})}).finally(function(){if(i.restore){i.restore(false)}})}}}u=r.getDependentBindings();r.reset(f.Refresh,!i||(n?false:undefined),t);return h.all(s(u).concat(l,c)).then(function(){return r.oHeaderContext?.checkUpdateInternal()})})};y.prototype.refreshKeptElements=function(e,t){var i=this;return this.oCachePromise.then(function(n){return n.refreshKeptElements(i.lockGroup(e),function e(t,n){var r=n>=0?i.aContexts[n]:i.mPreviousContextsByPath[i.getResolvedPath()+t];r.resetKeepAlive();if(n>=0){i.removeCreated(r)}},t)}).catch(function(e){i.oModel.reportError("Failed to refresh kept-alive elements",P,e);throw e})};y.prototype.refreshSingle=function(e,t,i,n,r){var s=e.getPath(),a=s.slice(1),d=this;if(e===this.oHeaderContext){throw new Error("Unsupported header context: "+e)}if(i&&r){throw new Error("Unsupported: bAllowRemoval && bWithMessages")}return this.withCache(function(u,c,l){var g=false,p=false,C=e.getModelIndex(),x=o.getRelativePath(s,d.oHeaderContext.getPath()),v=[];function m(e){if(g){d.fireDataReceived(e)}}function y(){if(!n){g=true;d.fireDataRequested()}}function E(t){var i=e.getModelIndex(),n;if(e.iIndex<0){if(t){d.mPreviousContextsByPath[s]=e}else{e.resetKeepAlive();p=true}d.removeCreated(e)}else{if(i===undefined){delete d.mPreviousContextsByPath[s]}else{d.aContexts.splice(i,1);d.iMaxLength-=1;for(n=i;n<d.aContexts.length;n+=1){if(d.aContexts[n]){d.aContexts[n].iIndex-=1}}if(t){d.mPreviousContextsByPath[s]=e}}if(!t){p=true;e.doSetSelected(false,true);e.destroy()}}if(i!==undefined){d._fireChange({reason:f.Remove})}}if(C<0){throw new Error("Cannot refresh. Hint: Side-effects refresh in parallel? "+e)}v.push((i?u.refreshSingleWithRemove(t,c,C,x,e.isEffectivelyKeptAlive(),y,E):u.refreshSingle(t,c,C,x,e.isKeepAlive(),r,y)).then(function(){var r=[];m({data:{}});l.checkSameCache(u);if(!p){r.push(e.checkUpdateInternal());if(i){r.push(e.refreshDependentBindings(a,t.getGroupId(),false,n))}}return h.all(r)},function(e){m({error:e});throw e}).catch(function(i){t.unlock(true);d.oModel.reportError("Failed to refresh entity: "+e,P,i);if(!i.canceled){throw i}}));if(!i){v.push(e.refreshDependentBindings(a,t.getGroupId(),false,n))}return h.all(v)})};y.prototype.removeCreated=function(e){var t,i;if(this.mParameters.$$aggregation){this.iMaxLength-=1;t=this.aContexts.indexOf(e);for(i=this.aContexts.length-1;i>t;i-=1){if(this.aContexts[i]){this.aContexts[i].iIndex-=1}}}else{t=e.getModelIndex();this.iCreatedContexts-=1;if(!this.iCreatedContexts){this.bFirstCreateAtEnd=undefined}if(!e.isInactive()){this.iActiveContexts-=1}for(i=0;i<t;i+=1){this.aContexts[i].iIndex+=1}}this.aContexts.splice(t,1);e.iIndex=undefined;if(!e.isEffectivelyKeptAlive()){this.destroyLater(e)}};y.prototype.requestContexts=function(e=0,t,i){var n=this;if(!this.isResolved()){throw new Error("Unresolved binding: "+this.sPath)}this.checkSuspended();o.checkGroupId(i);t||=this.oModel.iSizeLimit;const r=i&&this.lockGroup(i,true);return Promise.resolve(this.fetchContexts(e,t,0,r)).then(function(i){if(i){n._fireChange({reason:f.Change})}return n.getContextsInViewOrder(e,t)},function(i){n.oModel.reportError("Failed to get contexts for "+n.oModel.sServiceUrl+n.getResolvedPath().slice(1)+" with start index "+e+" and length "+t,P,i);throw i})};y.prototype.requestDownloadUrl=o.createRequestMethod("fetchDownloadUrl");y.prototype.requestFilterForMessages=function(e){var t=this.oModel.getMetaModel(),i,n=this.oHeaderContext&&this.oHeaderContext.getPath(),r=this;this.checkTransient();if(!n){return Promise.resolve(null)}i=o.getMetaPath(n);return t.requestObject(i+"/").then(function(s){var a,h={},d=false;r.oModel.getMessagesByPath(n,true).filter(function(t){return!e||e(t)}).forEach(function(e){e.getTargets().forEach(function(e){var t=e.slice(n.length).split("/")[0];if(t){if(t.startsWith("($uid=")){d=true}else{h[t]=true}}})});a=Object.keys(h).map(function(e){return o.getFilterForPredicate(e,s,t,i)});if(a.length===0){return d?c.NONE:null}return a.length===1?a[0]:new c({filters:a})})};y.prototype.requestSelectedContexts=function(e){if(this.bSharedRequest){throw new Error("Unsupported $$sharedRequest at "+this)}if("$$aggregation"in this.mParameters){throw new Error("Unsupported $$aggregation at "+this)}this.checkSuspended();this.checkTransient();if(this.oHeaderContext.isSelected()){throw new Error('Unsupported "Select All": '+this.oHeaderContext)}if(this.hasPendingChanges()){throw new Error("Unsupported pending changes")}o.checkGroupId(e);const t={};const i=this.getResolvedPath().length;const n=this._getAllExistingContexts().filter(e=>e.isSelected()).map(e=>{t[e.getPath()]=e;return e.getPath().slice(i)});if(!n.length){return Promise.resolve([])}return this.oCache.requestFilteredOrderedPredicates(n,this.lockGroup(e)).then(e=>e.map(e=>t[this.oHeaderContext.getPath()+e]))};y.prototype.requestSideEffects=function(e,t,i){var r=this.oModel,s,a,d=i&&i!==this.oHeaderContext,u=this;function f(e){return e.catch(function(e){r.reportError("Failed to request side effects",P,e);if(!e.canceled){throw e}})}if(o.isDataAggregation(this.mParameters)){if(d){throw new Error("Must not request side effects when using data aggregation")}if(n.isAffected(this.mParameters.$$aggregation,this.aFilters.concat(this.aApplicationFilters),t)){return this.refreshInternal("",e,false,true)}return h.resolve()}if(!d&&this.oCache&&this.oCache.isDeletingInOtherGroup(e)){throw new Error("Must not request side effects when there is a pending delete in a"+" different batch group")}if(this.oCache&&this.oCache.getPendingRequestsPromise()){return h.resolve(this.oCache.getPendingRequestsPromise()).then(function(){return u.requestSideEffects(e,t,i)})}if(t.indexOf("")<0){s=o.getPredicates(d?[i]:this.keepOnlyVisibleContexts());if(s){a=this.oCache?[this.oCache.requestSideEffects(this.lockGroup(e),t,s,d,d)]:[];this.visitSideEffects(e,t,d?i:undefined,a);return h.all(a.map(f)).then(function(){return u.refreshDependentListBindingsWithoutCache()})}}if(d){r.withUnresolvedBindings("removeCachesAndMessages",i.getPath().slice(1));return this.refreshSingle(i,this.lockGroup(e),false,true,true)}if(this.iCurrentEnd===0){return h.resolve()}return this.refreshInternal("",e,false,true)};y.prototype.reset=function(e,t,i){var n=0,r=this.iCurrentEnd===0,s=i&&i!==this.getUpdateGroupId(),o,a=this;if(t===true){this.iActiveContexts=0;this.iCreatedContexts=0}if(this.aContexts){this.aContexts.slice(this.iCreatedContexts).forEach(function(e){a.mPreviousContextsByPath[e.getPath()]=e});for(o=0;o<this.iCreatedContexts;o+=1){const e=this.aContexts[o];if(t===false?s&&e.isTransient()||e.isInactive()!==undefined:e.isTransient()){this.aContexts[n]=e;n+=1}else{this.iActiveContexts-=1;this.mPreviousContextsByPath[e.getPath()]=e}}for(o=0;o<n;o+=1){this.aContexts[o].iIndex=o-n}this.aContexts.length=this.iCreatedContexts=n}else{this.aContexts=[]}if(!this.iCreatedContexts){this.bFirstCreateAtEnd=undefined}this.iCurrentBegin=this.iCurrentEnd=0;this.iMaxLength=Infinity;this.bLengthFinal=false;if(e&&!(r&&e===f.Change)&&this.isResolved()){this.sChangeReason=e;this._fireRefresh({reason:e})}};y.prototype.resetKeepAlive=function(){var e=this.mPreviousContextsByPath;Object.keys(e).forEach(function(t){e[t].resetKeepAlive()});this.aContexts.forEach(function(e){e.resetKeepAlive()})};y.prototype.restoreCreated=function(){var e=this;this.withCache(function(t,i){if(e.aContexts.length){return}t.getCreatedElements(i).forEach(function(t,i){e.aContexts[i]=o.getPrivateAnnotation(t,"context");e.bFirstCreateAtEnd=o.getPrivateAnnotation(t,"firstCreateAtEnd");e.iCreatedContexts+=1;if(!t["@$ui5.context.isInactive"]){e.iActiveContexts+=1}})}).catch(this.oModel.getReporter())};y.prototype.resumeInternal=function(e,t){var i=this.sResumeAction,n=this.sResumeChangeReason,r=t||i||n;this.sResumeAction=undefined;this.sResumeChangeReason=undefined;if(r){if(this.mParameters.$$clearSelectionOnFilter&&n===f.Filter){this.oHeaderContext?.setSelected(false)}this.removeCachesAndMessages("");if(i==="onChange"){this.onChange();return}if(i==="resetCache"){this.oCache.reset([]);return}this.reset();this.fetchCache(this.oContext,!t);if(this.bRefreshKeptElements){this.bRefreshKeptElements=false;this.refreshKeptElements(this.getGroupId())}}this.getDependentBindings().forEach(function(e){e.resumeInternal(!r,!!n&&!e.oContext.isEffectivelyKeptAlive())});if(this.sChangeReason==="AddVirtualContext"){this._fireChange({detailedReason:"AddVirtualContext",reason:n})}else if(n){this._fireRefresh({reason:n})}else{this.removeReadGroupLock()}this.oHeaderContext.checkUpdate()};y.prototype.setAggregation=function(e){var t;function i(e){return e&&!!e.hierarchyQualifier}this.checkTransient();if(this.hasFilterNone()){throw new Error("Cannot combine Filter.NONE with $$aggregation")}if(this.hasPendingChanges()){throw new Error("Cannot set $$aggregation due to pending changes")}if(i(this.mParameters.$$aggregation)!==i(e)&&this.getKeepAlivePredicates().length){throw new Error("Cannot set $$aggregation due to a kept-alive context")}t=Object.assign({},this.mParameters);if(e===undefined){delete t.$$aggregation}else{t.$$aggregation=o.clone(e)}this.applyParameters(t,"")};y.prototype.setContext=function(t){var i;if(this.oContext!==t){if(this.bRelative){this.checkSuspended(true);this.reset(undefined,true);this.resetKeepAlive();this.fetchCache(t);if(t){this.restoreCreated();i=this.oModel.resolve(this.sPath,t);if(this.oHeaderContext&&this.oHeaderContext.getPath()!==i){this.oHeaderContext.doSetSelected(false);this.mPreviousContextsByPath[this.oHeaderContext.getPath()]=this.oHeaderContext;this.oHeaderContext=null}this.oHeaderContext??=e.create(this.oModel,this,i);if(this.mParameters.$$aggregation){n.setPath(this.mParameters.$$aggregation,i)}else if(!o.isEmptyObject(this.mChildPathsReducedToParent)&&this.oModel.bAutoExpandSelect){this.mCanUseCachePromiseByChildPath={};this.sChangeReason="AddVirtualContext"}if(t.getBinding&&t.getBinding().isRootBindingSuspended()){this.oContext=t;this.setResumeChangeReason(f.Context);return}}u.prototype.setContext.call(this,t,{detailedReason:this.sChangeReason})}else{this.oContext=t}}};y.prototype.setResetViaSideEffects=function(e){if(!e){this.bResetViaSideEffects=false}else if(this.bResetViaSideEffects===undefined){this.bResetViaSideEffects=true}};y.prototype.sort=function(e){var t=o.toArray(e);this.checkTransient();if(this.sOperationMode!==v.Server){throw new Error("Operation mode has to be sap.ui.model.odata.OperationMode.Server")}if(o.deepEqual(t,this.aSorters)){return this}if(this.hasPendingChanges(true)){throw new Error("Cannot sort due to pending changes")}this.aSorters=t;this.oQueryOptionsPromise=undefined;this.setResetViaSideEffects(true);if(this.isRootBindingSuspended()){this.setResumeChangeReason(f.Sort);return this}this.createReadGroupLock(this.getGroupId(),true);this.removeCachesAndMessages("");this.fetchCache(this.oContext);this.reset(f.Sort);if(this.oHeaderContext){this.oHeaderContext.checkUpdate()}return this};y.prototype.updateAfterCreate=function(e,i){var n,r,a=this;if(this.iCreatedContexts){if(e){this.reset(f.Change,true)}else{this.reset(undefined,true);r=this.fetchContexts(0,Infinity,0,s.$cached).then(function(){a.iCurrentEnd=a.aContexts.length;return a.requestSideEffects(i,o.getMissingPropertyPaths(a.fetchValue("",null,true).getResult(),a.mAggregatedQueryOptions))}).then(function(){a._fireChange({reason:f.Change})})}n=h.all([r,t.prototype.updateAfterCreate.apply(this,arguments)])}else{n=this.refreshInternal("",i)}return n};y.prototype.updateAnalyticalInfo=function(e){var t={aggregate:{},group:{},search:this.mParameters.$$aggregation&&this.mParameters.$$aggregation.search},i=false,n=this;e.forEach(function(e){var n={};if("total"in e){if("grouped"in e){throw new Error("Both dimension and measure: "+e.name)}if(e.as){n.name=e.name;t.aggregate[e.as]=n}else{t.aggregate[e.name]=n}if(e.min){n.min=true;i=true}if(e.max){n.max=true;i=true}if(e.with){n.with=e.with}}else if(!("grouped"in e)||e.inResult||e.visible){t.group[e.name]=n}});this.bHasAnalyticalInfo=true;this.setAggregation(t);if(i){return{measureRangePromise:Promise.resolve(this.getRootBindingResumePromise().then(function(){return n.oCachePromise}).then(function(e){return e.getMeasureRangePromise()}))}}};y.prototype.validateSelection=function(e,t){if(!this.mParameters.$$clearSelectionOnFilter||"$$aggregation"in this.mParameters||this.oHeaderContext.isSelected()){return}const i=this._getAllExistingContexts(true).filter(e=>e.isSelected());if(!i.length){return}const n=this.getResolvedPath().length;const r=i.map(e=>e.getPath().slice(n));e.requestFilteredOrderedPredicates(r,this.lockGroup(t),true).then(e=>{const t=new Set(e);i.forEach(e=>{if(!t.has(e.getPath().slice(n))){e.setSelected(false)}})},e=>{this.oModel.reportError("Failed to validate selection",P,e)})};y.isBelowAggregation=function(e){return!!e?.getBinding?.().getAggregation?.()};y.isBelowCreated=function(e){var t;if(!(e&&e.getBinding)){return false}if(e.isTransient()===false){return true}t=e.getBinding();return t&&t.isRelative()&&y.isBelowCreated(t.getContext())};return y});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/ODataMetaModel", ["./AnnotationHelper","./ValueListType","./lib/_Helper","sap/base/assert","sap/base/Log","sap/base/util/JSTokenizer","sap/base/util/ObjectPath","sap/ui/base/ManagedObject","sap/ui/base/SyncPromise","sap/ui/model/BindingMode","sap/ui/model/ChangeReason","sap/ui/model/ClientListBinding","sap/ui/model/Context","sap/ui/model/ContextBinding","sap/ui/model/MetaModel","sap/ui/model/PropertyBinding","sap/ui/model/odata/OperationMode","sap/ui/model/odata/type/Boolean","sap/ui/model/odata/type/Byte","sap/ui/model/odata/type/Date","sap/ui/model/odata/type/DateTimeOffset","sap/ui/model/odata/type/Decimal","sap/ui/model/odata/type/Double","sap/ui/model/odata/type/Guid","sap/ui/model/odata/type/Int16","sap/ui/model/odata/type/Int32","sap/ui/model/odata/type/Int64","sap/ui/model/odata/type/Raw","sap/ui/model/odata/type/SByte","sap/ui/model/odata/type/Single","sap/ui/model/odata/type/Stream","sap/ui/model/odata/type/String","sap/ui/model/odata/type/TimeOfDay","sap/ui/thirdparty/URI"],function(e,t,n,i,r,o,a,s,u,l,f,c,d,p,h,g,y,m,$,v,M,b,C,O,P,E,A,w,x,U,S,T,j,L){"use strict";var R=s.extend("sap.ui.model.odata.v4._any",{metadata:{properties:{any:"any"}}}),D,I={},V=r.Level.DEBUG,q={$kind:"ComplexType",$OpenType:true,bbox:{$kind:"Property",$Type:"Edm.Double",$isCollection:true},type:{$kind:"Property",$Nullable:false,$Type:"Edm.String"}},k={...q,coordinates:{$kind:"Property",$Nullable:false,$Type:"Edm.Double",$isCollection:true}},B={"Edm.Geography":{...q,$Abstract:true},"Edm.GeographyLineString":k,"Edm.GeographyMultiLineString":k,"Edm.GeographyMultiPoint":k,"Edm.GeographyMultiPolygon":k,"Edm.GeographyPoint":k,"Edm.GeographyPolygon":k},N=["$count","$selectionCount","@$ui5.node.groupLevelCount","@$ui5.node.level"],_,F=/\$\(/g,G=/^-?\d+$/,W="sap.ui.model.odata.v4.ODataMetaModel",K=/\(.*\)$/,H=new w,z=/\$\)/g,Q={messageChange:true},J={"Edm.Boolean":{Type:m},"Edm.Byte":{Type:$},"Edm.Date":{Type:v},"Edm.DateTimeOffset":{constraints:{$Precision:"precision"},Type:M},"Edm.Decimal":{constraints:{"@Org.OData.Validation.V1.Minimum/$Decimal":"minimum","@Org.OData.Validation.V1.Minimum@Org.OData.Validation.V1.Exclusive":"minimumExclusive","@Org.OData.Validation.V1.Maximum/$Decimal":"maximum","@Org.OData.Validation.V1.Maximum@Org.OData.Validation.V1.Exclusive":"maximumExclusive",$Precision:"precision",$Scale:"scale"},Type:b},"Edm.Double":{Type:C},"Edm.Guid":{Type:O},"Edm.Int16":{Type:P},"Edm.Int32":{Type:E},"Edm.Int64":{Type:A},"Edm.SByte":{Type:x},"Edm.Single":{Type:U},"Edm.Stream":{Type:S},"Edm.String":{constraints:{"@com.sap.vocabularies.Common.v1.IsDigitSequence":"isDigitSequence",$MaxLength:"maxLength"},Type:T},"Edm.TimeOfDay":{constraints:{$Precision:"precision"},Type:j}},X={},Y="@com.sap.vocabularies.Common.v1.ValueList",Z="@com.sap.vocabularies.Common.v1.ValueListMapping",ee="@com.sap.vocabularies.Common.v1.ValueListReferences",te="@com.sap.vocabularies.Common.v1.ValueListRelevantQualifiers",ne="@com.sap.vocabularies.Common.v1.ValueListWithFixedValues",ie=r.Level.WARNING,re,oe=h.extend("sap.ui.model.odata.v4.ODataMetaModel",{constructor:de}),ae,se;function ue(e,t){if(e===t){return""}if(e.startsWith(t)&&e[t.length]==="#"&&!e.includes("@",t.length)){return e.slice(t.length+1)}}function le(e){var t=ue(e,Z);return t!==undefined?t:ue(e,Y)}function fe(e,t){return t.some(function(t){return e==="$ReturnType"?t.$ReturnType:t.$Parameter&&t.$Parameter.some(function(t){return t.$Name===e})})}function ce(e){return e.slice(0,e.lastIndexOf(".")+1)}re=p.extend("sap.ui.model.odata.v4.ODataMetaContextBinding",{constructor:function(e,t,n){i(!n||n.getModel()===e,"oContext must belong to this model");p.call(this,e,t,n)},initialize:function(){var e=this.oModel.createBindingContext(this.sPath,this.oContext);this.bInitial=false;if(e!==this.oElementContext){this.oElementContext=e;this._fireChange()}},setContext:function(e){i(!e||e.getModel()===this.oModel,"oContext must belong to this model");if(e!==this.oContext){this.oContext=e;if(!this.bInitial){this.initialize()}}}});ae=c.extend("sap.ui.model.odata.v4.ODataMetaListBinding",{constructor:function(){c.apply(this,arguments)},_fireFilter:function(){},_fireSort:function(){},checkUpdate:function(e){var t=this.oList.length;this.update();if(e||this.oList.length!==t){this._fireChange({reason:f.Change})}},fetchContexts:function(){var e,t=this.getResolvedPath(),n=this;if(!t){return u.resolve([])}e=t.endsWith("@");if(!e&&!t.endsWith("/")){t+="/"}return this.oModel.fetchObject(t).then(function(i){if(!i){return[]}if(e){t=t.slice(0,-1)}return Object.keys(i).filter(function(t){return t[0]!=="$"&&e!==(t[0]!=="@")}).map(function(e){return new d(n.oModel,t+e)})})},getContexts:function(e,t){this.iCurrentStart=e||0;this.iCurrentLength=Math.min(t||Infinity,this.iLength-this.iCurrentStart);return this.getCurrentContexts()},getCurrentContexts:function(){var e=[],t,n=this.iCurrentStart+this.iCurrentLength;for(t=this.iCurrentStart;t<n;t+=1){e.push(this.oList[this.aIndices[t]])}if(this.oList.dataRequested){e.dataRequested=true}return e},setContexts:function(e){this.oList=e;this.updateIndices();this.applyFilter();this.applySort();this.iLength=this._getLength()},update:function(){var e=[],t=this.fetchContexts(),n=this;if(t.isFulfilled()){e=t.getResult()}else{t.then(function(e){n.setContexts(e);n._fireChange({reason:f.Change})});e.dataRequested=true}this.setContexts(e)}});se=g.extend("sap.ui.model.odata.v4.ODataMetaPropertyBinding",{constructor:function(){g.apply(this,arguments);this.vValue=undefined},checkUpdate:function(e,t){var n,i=this;function r(n){if(e||n!==i.vValue){i.vValue=n;i._fireChange({reason:t||f.Change})}return n}n=this.oModel.fetchObject(this.sPath,this.oContext,this.mParameters).then(r);if(this.mParameters&&this.mParameters.$$valueAsPromise&&n.isPending()){r(n.unwrap())}else if(n.isRejected()){n.unwrap()}},getValue:function(){return this.vValue},setContext:function(e){if(this.oContext!==e){this.oContext=e;if(this.bRelative){this.checkUpdate(false,f.Context)}}},setValue:function(){throw new Error("Unsupported operation: ODataMetaPropertyBinding#setValue")}});function de(e,t,n,i,r,o){h.call(this);this.aAnnotationUris=n&&!Array.isArray(n)?[n]:n;this.sDefaultBindingMode=l.OneTime;this.mETags={};this.sLanguage=o;this.oLastModified=new Date(0);this.oMetadataPromise=null;this.oMetaModelForAnnotations=null;this.oModel=i;this.mMetadataUrl2Promise={};this.oRequestor=e;this.mSchema2MetadataUrl={};this.mSharedModelByUrl={};this.mSupportedBindingModes={OneTime:true,OneWay:true};this.bSupportReferences=r!==false;this.mUnsupportedFilterOperators={All:true,Any:true};this.sUrl=t}oe.prototype.$$valueAsPromise=true;oe.prototype._addUrlForSchema=function(e,t,n){var i,r=this.mSchema2MetadataUrl[e];if(!r){r=this.mSchema2MetadataUrl[e]={};r[t]=false}else if(!(t in r)){i=Object.keys(r)[0];if(r[i]){this._reportAndThrowError("A schema cannot span more than one document: "+e+" - expected reference URI "+i+" but instead saw "+t,n)}r[t]=false}};oe.prototype._changeAnnotations=function(e){if(this.oMetaModelForAnnotations){Object.keys(e).forEach(t=>{if(e[t].$kind==="Schema"){this._doMergeAnnotations({$Annotations:this.oMetaModelForAnnotations._getAnnotationsForSchema(t)},e.$Annotations,true)}})}this.aAnnotationChanges?.forEach(({path:t,value:n})=>{const i=t.indexOf("@");const r=this.getObject(t.slice(0,i)+"@$ui5.target");if(r){e.$Annotations[r]??={};e.$Annotations[r][t.slice(i)]=n}})};oe.prototype._copyAnnotations=function(e){if(this.aAnnotationUris){throw new Error("Must not copy annotations when there are local annotation files")}this.oMetaModelForAnnotations=e};oe.prototype._doMergeAnnotations=function(e,t,n){let i=false;function r(e,t){for(const r in t){if(n||!(r in e)){e[r]=t[r];i=true}}}for(const n in e.$Annotations){t[n]??={};r(t[n],e.$Annotations[n])}delete e.$Annotations;return i};oe.prototype._getAnnotationsForSchema=function(e){const t={};const n=this.fetchEntityContainer().getResult();Object.keys(n.$Annotations).forEach(i=>{if(i.startsWith(e)){t[i]=n.$Annotations[i]}});return t};oe.prototype._getOrFetchSchema=function(e,t,n){var i,r,o,a,s=this;function l(i){if(!(t in i)){n(ie,r," does not contain ",t);return}n(V,"Including ",t," from ",r);let o=false;for(const n in i){if(n[0]!=="$"&&ce(n)===t){e[n]=i[n];if(s._doMergeAnnotations(e[n],e.$Annotations)){o=true}}}if(o){s._changeAnnotations(e)}}if(t in e){return e[t]}a=this.mSchema2MetadataUrl[t];if(a){o=Object.keys(a);if(o.length>1){this._reportAndThrowError("A schema cannot span more than one document: "+"schema is referenced by following URLs: "+o.join(", "),t)}r=o[0];a[r]=true;n(V,"Namespace ",t," found in $Include of ",r);i=this.mMetadataUrl2Promise[r];if(!i){n(V,"Reading ",r);i=this.mMetadataUrl2Promise[r]=u.resolve(this.oRequestor.read(r)).then(this.validate.bind(this,r))}i=i.then(l);if(t in e){return e[t]}e[t]=i;return i}};oe.prototype._mergeAnnotations=function(e,t){var n=this;this.validate(this.sUrl,e);e.$Annotations={};Object.keys(e).forEach(function(t){if(e[t].$kind==="Schema"){n._addUrlForSchema(t,n.sUrl);n._doMergeAnnotations(e[t],e.$Annotations)}});t.forEach(function(t,i){var r,o;n.validate(n.aAnnotationUris[i],t);for(o in t){if(o[0]!=="$"){if(o in e){n._reportAndThrowError("A schema cannot span more than one document: "+o,n.aAnnotationUris[i])}r=t[o];e[o]=r;if(r.$kind==="Schema"){n._addUrlForSchema(o,n.aAnnotationUris[i]);n._doMergeAnnotations(r,e.$Annotations,true)}}}})};oe.prototype._reportAndThrowError=function(e,t){var n=new Error(t+": "+e);this.oModel.reportError(e,W,n);throw n};oe.prototype.attachEvent=function(e,t,n,i){if(!(e in Q)){throw new Error("Unsupported event '"+e+"': v4.ODataMetaModel#attachEvent")}return h.prototype.attachEvent.apply(this,arguments)};oe.prototype.bindContext=function(e,t){return new re(this,e,t)};oe.prototype.bindList=function(e,t,n,i){return new ae(this,e,t,n,i)};oe.prototype.bindProperty=function(e,t,n){return new se(this,e,t,n)};oe.prototype.bindTree=function(e,t,n,i,r){throw new Error("Unsupported operation: v4.ODataMetaModel#bindTree")};oe.prototype.destroy=function(){this.oMetaModelForAnnotations=undefined;Object.values(this.mSharedModelByUrl).forEach(e=>e.destroy());this.mSharedModelByUrl=undefined;h.prototype.destroy.apply(this)};oe.prototype.fetchCanonicalPath=function(e){return this.fetchUpdateData("",e).then(function(t){if(!t.editUrl){throw new Error(e.getPath()+": No canonical path for transient entity")}if(t.propertyPath){throw new Error("Context "+e.getPath()+" does not point to an entity. It should be "+t.entityPath)}return"/"+t.editUrl})};oe.prototype.fetchData=function(){return this.fetchEntityContainer().then(function(e){return JSON.parse(JSON.stringify(e))})};oe.prototype.fetchEntityContainer=function(e){var t,n=this;if(!this.oMetadataPromise){t=[u.resolve(this.oRequestor.read(this.sUrl,false,e))];if(this.aAnnotationUris){this.aAnnotationUris.forEach(function(i){t.push(u.resolve(n.oRequestor.read(i,true,e)))})}if(!e){t.push(this.oModel._requestAnnotationChanges());this.oMetadataPromise=u.all(t).then(function(e){var t=Object.assign(e[0],B);n.aAnnotationChanges=e.pop();n._mergeAnnotations(t,e.slice(1));return t});this.oMetadataPromise.then(e=>this._changeAnnotations(e),()=>{})}}return this.oMetadataPromise};oe.prototype.fetchObject=function(e,t,n){var i=this.resolve(e,t),s=this;if(!i){r.error("Invalid relative path w/o context",e,W);return u.resolve(null)}return this.fetchEntityContainer().then(function(l){var f,c,p,h,g,y,m,$,v,M;function b(e,t,n=""){var i,r,o,a,s="";if(t){r=t.indexOf("@@");if(r>0){t=t.slice(0,r)}}else{t=e}if(f){m=a=M.filter(P);if(a.length!==1){return E(ie,"Expected a single overload, but found "+a.length)}if(f!==X){s=a[0].$Parameter[0].$isCollection?"Collection("+f+")":f}o=v+"("+s+")"+n;if(l.$Annotations[o]){if(t==="@"){M=l.$Annotations[o];i=l.$Annotations[v+n];if(i){M=Object.assign({},i,M)}return false}if(t in l.$Annotations[o]){v=o;M=l;return true}}}v+=n;M=l;return true}function C(e,t){var i,r,u,l=e.indexOf("@",2);if(l>-1){return E(ie,"Unsupported path after ",e.slice(0,l))}e=e.slice(2);u=e.indexOf("(");if(u>0){if(!e.endsWith(")")){return E(ie,"Expected ')' instead of '",e.slice(-1),"'")}try{r=o.parseJS("["+e.slice(u+1,-1).replace(F,"{").replace(z,"}")+"]")}catch(e){return E(ie,e.message,": ",e.text.slice(1,e.at),"<--",e.text.slice(e.at,-1))}e=e.slice(0,u)}i=e[0]==="."?a.get(e.slice(1),n.scope):n&&a.get(e,n.scope)||(e==="requestCurrencyCodes"||e==="requestUnitsOfMeasure"?s[e].bind(s):a.get(e));if(typeof i!=="function"){return E(ie,e," is not a function but: "+i)}try{M=i(M,{$$valueAsPromise:n&&n.$$valueAsPromise,arguments:r,context:new d(s,t),schemaChildName:$,overload:m.length===1?m[0]:undefined})}catch(t){E(ie,"Error calling ",e,": ",t)}return true}function O(e,t){var n;if(e==="$ReturnType"){if(t.$ReturnType){M=t.$ReturnType;return true}}else if(e&&t.$Parameter){n=t.$Parameter.filter(function(t){return t.$Name===e});if(n.length){M=n[0];return true}}return false}function P(e){return!e.$IsBound&&f===X||e.$IsBound&&f===e.$Parameter[0].$Type}function E(e){var t;if(r.isLoggable(e,W)){t=Array.isArray(h)?h.join("/"):h;r[e===V?"debug":"warning"](Array.prototype.slice.call(arguments,1).join("")+(t?" at /"+t:""),i,W)}if(e===ie){M=undefined}return false}function A(e,t){var n;function r(){h??=v&&t&&v+"/"+t;return E.apply(this,arguments)}f=M&&M.$Type||f;if(s.bSupportReferences&&!(e in l)){if(i.endsWith("@$ui5.target")){M=undefined;return false}n=ce(e);M=s._getOrFetchSchema(l,n,r)}if(e in l){v=g=$=e;M=m=l[$];if(!u.isThenable(M)){return true}}if(u.isThenable(M)&&M.isPending()){return r(V,"Waiting for ",n)}return r(ie,"Unknown qualified name ",e)}function w(e,t,n){var i,r,o;if(e==="$Annotations"){return E(ie,"Invalid segment: $Annotations")}e=e.replaceAll("%2F","/");if(t&&typeof M==="object"&&e in M){if(e[0]==="$"||G.test(e)){y=false}}else{i=e.indexOf("@@");if(i<0){if(e.endsWith("@sapui.name")){i=e.length-11}else{i=e.indexOf("@")}}if(i>0){if(!w(e.slice(0,i),t,n)){return false}e=e.slice(i);o=true;if(M&&(M.$kind==="EntitySet"||M.$kind==="Singleton")){c=M}}if(typeof M==="string"&&!(o&&(e==="@sapui.name"||e[1]==="@"))&&!(y&&m&&m.$kind==="EnumType")&&!x(M,n.slice(0,t))){return false}if(y){if(e[0]==="$"&&e!=="$Parameter"&&e!=="$ReturnType"||G.test(e)){y=false}else{r=typeof M==="object";if(o){}else if(e[0]!=="@"&&e.includes(".",1)){return A(e)}else if(r&&"$Type"in M){if(!A(M.$Type,"$Type")){return false}}else if(r&&"$Action"in M){if(!A(M.$Action,"$Action")){return false}f=X}else if(r&&"$Function"in M){if(!A(M.$Function,"$Function")){return false}f=X}else if(!t){v=g=$??=l.$EntityContainer;M=m??=l[$];if(Array.isArray(M)){if(f){M=M.filter(P)}if(O(e,M[0])){return true}}if(e&&e[0]!=="@"&&!(e in m)){return E(ie,"Unknown child ",e," of ",$)}}if(Array.isArray(M)){if(e==="$Parameter"){return true}if(e.startsWith("@$ui5.overload@")){e=e.slice(14);o=true}if(o){if(e[1]!=="@"&&!b(e)){return false}}else{if(e!==n[t]&&n[t][e.length+1]!=="@"&&fe(e,M)){g=e;return b(e,n[t].slice(e.length),"/"+g)}if(f){M=M.filter(P)}if(e==="@$ui5.overload"){return true}if(M.length!==1){return E(ie,"Expected a single overload, but found "+M.length)}if(O(e,M[0])){return true}M=M[0].$ReturnType;v+="/0/$ReturnType";if(M){if(e==="value"&&!(l[M.$Type]&&l[M.$Type].value)){g=undefined;return true}if(!A(M.$Type,"$Type")){return false}}if(!e){return true}}}}}if(!e){return t+1>=n.length||E(ie,"Invalid empty segment")}if(e[0]==="@"){function a(i){M=i;if(M===undefined){E(ie,"Unsupported path before "+e)}else if(t+1<n.length){E(ie,"Unsupported path after "+e)}return false}if(e==="@sapui.name"){if(g===undefined&&o&&t&&n[t-1]==="$NavigationPropertyBinding"){g=M}return a(g)}if(e==="@$ui5.target"){return a(v)}if(e[1]==="@"){if(t+1<n.length){return E(ie,"Unsupported path after ",e)}return C(e,[""].concat(n.slice(0,t),n[t].slice(0,i)).join("/"))}}if(y&&e[0]==="@"){f=M&&M.$Type||f;M=l.$Annotations[v]||{};y=false}else if(e==="$"&&t+1<n.length){return E(ie,"Unsupported path after $")}else if(!M||typeof M!=="object"){M=undefined;return!p&&E(V,"Invalid segment: ",e)}}if(e!=="@"&&e!=="$"){if(e[0]==="@"){p=true}g=y||e[0]==="@"?e:undefined;v=y?v+"/"+e:undefined;M=M[e]}return true}function x(e,t){var n;if(h){return E(ie,"Invalid recursion")}h=t;p=false;y=true;M=l;if(c){if(!e){M=c;c=h=undefined;return true}$=c.$Type;c=m=undefined}n=e.split("/").every(w);h=undefined;return n}if(!x(i.slice(1))&&u.isThenable(M)){M=M.then(function(){return s.fetchObject(e,t,n)})}return M})};oe.prototype.fetchUI5Type=function(e,t){const i=e.slice(e.lastIndexOf("/")+1);if(i[0]==="$"||i[0]==="@"){if(N.includes(i)){_??=new A;return u.resolve(_)}if(i.startsWith("@$ui5.context.is")||i.startsWith("@$ui5.node.is")){D??=new m;return u.resolve(D)}}const o=this.getMetaContext(e);return this.fetchObject(undefined,o).catch(this.oModel.getReporter()).then(a=>{var s=H,u;if(!a){r.warning("No metadata for path '"+e+"', using "+s.getName(),undefined,W);return s}if(t){if(n.isEmptyObject(t)){t=undefined}else if("parseKeepsEmptyString"in t&&a.$Type!=="Edm.String"){if(Object.keys(t).length===1){t=undefined}else{t=Object.assign({},t);delete t.parseKeepsEmptyString}}}if(!t&&a["$ui5.type"]){return a["$ui5.type"]}if(a.$isCollection&&!G.test(i)){r.warning("Unsupported collection type, using "+s.getName(),e,W)}else{u=J[a.$Type];if(u){s=new u.Type(t,this.getConstraints(a,o.getPath()))}else{r.warning("Unsupported type '"+a.$Type+"', using "+s.getName(),e,W)}}if(!t){a["$ui5.type"]=s}return s})};oe.prototype.fetchUpdateData=function(e,t,i){var r=t.getModel(),o=r.resolve(e,t),a=this;function s(e){var t=new Error(o+": "+e);if(i!==undefined){r.reportError(e,W,t)}throw t}return this.fetchObject(n.getMetaPath(o)).then(function(){return a.fetchEntityContainer()}).then(function(r){var a,l=r[r.$EntityContainer],f,c,d,p,h=false,g,y,m,$=false,v,M=false;function b(e){var t=e.indexOf("(");return t>=0?e.slice(t):""}function C(e){a.push({path:g,prefix:e})}function O(e){var t=e.indexOf("(");return t>=0?e.slice(0,t):e}m=o.slice(1).split("/");p=m.shift();g="/"+p;f=g;d=decodeURIComponent(O(p));c=l[d];if(!c){s("Not an entity set: "+d)}v=r[c.$Type];e="";y="";a=[p];$=p.includes("($uid=");m.forEach(function(t){var i,o;g+="/"+t;if(G.test(t)){C(a.pop());f+="/"+t}else{o=decodeURIComponent(O(t));y=n.buildPath(y,o);i=h?{}:v[o];if(!i){if(o.includes("@")){if(o.includes("@$ui5.")&&o!=="@$ui5.context.isSelected"){s("Read-only path must not be updated")}h=true;i={}}else{s("Not a (navigation) property: "+o)}}v=r[i.$Type];if(t.includes("($uid=")){f=g;e="";$=true}else if(!$&&i.$kind==="NavigationProperty"){if(c.$NavigationPropertyBinding&&y in c.$NavigationPropertyBinding){d=c.$NavigationPropertyBinding[y];c=l[d];y="";a=[encodeURIComponent(d)+b(t)];if(!i.$isCollection){C(a.pop())}}else{a.push(t)}f=g;e=""}else{e=n.buildPath(e,t)}}});if($||i){return u.resolve({editUrl:undefined,entityPath:f,propertyPath:e})}return u.all(a.map(function(e,r){if(typeof e==="string"){return e}return t.fetchValue(e.path).then(function(t){var o;if(i!==undefined&&r===a.length-1&&(t===null||t&&n.hasPrivateAnnotation(t,"upsert"))){M=true;return undefined}if(!t){s("No instance to calculate key predicate at "+e.path)}o=n.getPrivateAnnotation(t,"predicate");if(!o){s("No key predicate known at "+e.path)}return e.prefix+o},function(t){s(t.message+" at "+e.path)})})).then(function(t){return{editUrl:M?f.slice(1):t.join("/"),entityPath:f,propertyPath:e}})})};oe.prototype.fetchValueListMappings=function(e,t,i,r){var o=this,a=e.getMetaModel();function s(){var e=r[0],n="";if(r.length!==1){throw new Error("Expected a single overload, but found "+r.length)}if(e.$IsBound){n=e.$Parameter[0].$isCollection?"Collection("+e.$Parameter[0].$Type+")":e.$Parameter[0].$Type}return t+"("+n+")"}return a.fetchEntityContainer().then(function(r){var u,l=r.$Annotations,f,c=n.namespace(t),d={},p=o===a,h,g;if(i.$Name){f=s()+"/"+i.$Name;g=t+"/"+i.$Name}h=Object.keys(l).filter(function(t){if(n.namespace(t)===c){if(f?t===f||t===g:o.getObject("/"+t)===i){return true}if(p||g&&n.getMetaPath(t)===g){return false}throw new Error("Unexpected annotation target '"+t+"' with namespace of data service in "+e.sServiceUrl)}return false});if(!h.length){throw new Error("No annotation '"+Y.slice(1)+"' in "+e.sServiceUrl)}if(h.length===1){u=l[h[0]]}else{u=Object.assign({},l[g],l[f])}Object.keys(u).forEach(function(t){var n=le(t);if(n!==undefined){d[n]=u[t];["CollectionRoot","SearchSupported"].forEach(function(n){if(n in u[t]){throw new Error("Property '"+n+"' is not allowed in annotation '"+t.slice(1)+"' for target '"+h[0]+"' in "+e.sServiceUrl)}})}else if(!p){throw new Error("Unexpected annotation '"+t.slice(1)+"' for target '"+h[0]+"' with namespace of data service in "+e.sServiceUrl)}});return d})};oe.prototype.fetchValueListType=function(e){var n=this.getMetaContext(e),i=this;return this.fetchObject(undefined,n).then(function(r){var o,a;if(!r){throw new Error("No metadata for "+e)}o=i.getObject("@",n);if(o[ne]){return t.Fixed}for(a in o){if(ue(a,ee)!==undefined||ue(a,Z)!==undefined){return t.Standard}if(ue(a,Y)!==undefined){return o[a].SearchSupported===false?t.Fixed:t.Standard}}return t.None})};oe.prototype.filterValueListRelevantQualifiers=function(e,t,n,i){return this.requestValue4Annotation(t,n,i).then(function(t){var n={};t.forEach(function(t){if(t in e){n[t]=e[t]}});return n})};oe.prototype.getAbsoluteServiceUrl=function(e){var t=new L(this.sUrl).absoluteTo(document.baseURI).pathname().toString();return new L(e).absoluteTo(t).filename("").toString()};oe.prototype.getAllPathReductions=function(e,t,i,r){var o=t.split("/").length,a,s={},u=e.split("/"),l=this;function f(e,t,a,u){var c,d,p;function h(n){if(!i){f(e,t,p-1,true)}if(u){t=t.slice();e=e.slice()}t.splice(p,n);e.splice(p,n);if(!i){s[e.join("/")]=true}}for(p=a;p>=o;p-=1){c=G.test(e[p+1])?p+2:p+1;if(c<e.length&&t[p].$Partner===e[c]&&!t[c].$isCollection&&t[c].$Partner===e[p].replace(K,"")){h(c-p+1)}else if(Array.isArray(t[p])&&e[p+1]==="$Parameter"){d=l.getObject(n.getMetaPath(e.slice(0,p+1).join("/")+"/@$ui5.overload"));if(d.length===1&&d[0].$Parameter[0].$Name===e[p+2]){h(3)}}else if(r&&t[p].$isCollection){break}}}a=u.map(function(e,t){return t<o||e[0]==="#"||e[0]==="@"||G.test(e)||e==="$Parameter"?{}:l.getObject(n.getMetaPath(u.slice(0,t+1).join("/")))||{}});s[e]=true;if(!(r&&a[u.length-1].$isCollection)){f(u,a,u.length-2)}return i?u.join("/"):Object.keys(s)};oe.prototype.getConstraints=function(e,t){var n,i,r,o=J[e.$Type];function a(e,t){if(t!==undefined){i??={};i[e]=t}}if(o){r=o.constraints;for(n in r){a(r[n],n[0]==="@"?this.getObject(t+n):e[n])}if(e.$Nullable===false){a("nullable",false)}if(e.$Type==="Edm.DateTimeOffset"){a("V4",true)}}return i};oe.prototype.getData=n.createGetMethod("fetchData");oe.prototype.getETags=function(){return this.mETags};oe.prototype.getLastModified=function(){return this.oLastModified};oe.prototype.getMetaContext=function(e){return new d(this,n.getMetaPath(e))};oe.prototype.getMetaPath=function(e){return n.getMetaPath(e)};oe.prototype.getObject=n.createGetMethod("fetchObject");oe.prototype.getOrCreateSharedModel=function(e,t,n){e=this.getAbsoluteServiceUrl(e);const i=!!n+e;let r=this.mSharedModelByUrl;if(!t){r??={}}let o=r[i];if(!o){o=new this.oModel.constructor({autoExpandSelect:n,groupId:t?undefined:"$direct",httpHeaders:this.oModel.getHttpHeaders(),metadataUrlParams:this.sLanguage&&{"sap-language":this.sLanguage},operationMode:y.Server,serviceUrl:e,sharedRequests:true});if(t){o.getMetaModel()._copyAnnotations(this.oMetaModelForAnnotations??this)}o.setRetryAfterHandler(e=>this.oModel.getOrCreateRetryAfterPromise(e));r[i]=o}return o};oe.prototype.getOriginalProperty=function(){throw new Error("Unsupported operation: v4.ODataMetaModel#getOriginalProperty")};oe.prototype.getProperty=oe.prototype.getObject;oe.prototype.getReducedPath=function(e,t){return this.getAllPathReductions(e,t,true,true)};oe.prototype.getUI5Type=n.createGetMethod("fetchUI5Type",true);oe.prototype.getUnitOrCurrencyPath=function(e){var t=this.getObject("@",this.getMetaContext(e)),n=t&&(t["@Org.OData.Measures.V1.Unit"]||t["@Org.OData.Measures.V1.ISOCurrency"]);return n&&n.$Path};oe.prototype.getValueListType=n.createGetMethod("fetchValueListType",true);oe.prototype.isAddressViaNavigationPath=function(){return this.getObject("/@com.sap.vocabularies.Common.v1.AddressViaNavigationPath")};oe.prototype.isList=function(){throw new Error("Unsupported operation: v4.ODataMetaModel#isList")};oe.prototype.refresh=function(){throw new Error("Unsupported operation: v4.ODataMetaModel#refresh")};oe.prototype.requestCodeList=function(e,t,i){var o=this.fetchEntityContainer().getResult(),a=o[o.$EntityContainer],s=this;if(i&&i.context){if(i.context.getModel()!==this||i.context.getPath()!=="/"){throw new Error("Unsupported context: "+i.context)}}if(t!==undefined&&t!==a){throw new Error("Unsupported raw value: "+t)}return this.requestObject("/@com.sap.vocabularies.CodeList.v1."+e).then(function(e){var t,i,o,a,u,l;if(!e){return null}l=s.getAbsoluteServiceUrl(n.setLanguage(e.Url,s.sLanguage));t=e.CollectionPath+"#"+l;a=I[t];if(a){return a}const f=!s.mSharedModelByUrl;o=s.getOrCreateSharedModel(l);i=o.getMetaModel();u="/"+e.CollectionPath+"/";a=i.requestObject(u).then(function(t){var n=u+"@Org.OData.Core.V1.AlternateKeys",a=i.getObject(n),s,l=$(t.$Key),c=u+l+"@com.sap.vocabularies.Common.v1.",d,p,h=u+l+"@com.sap.vocabularies.CodeList.v1.StandardCode/$Path",g,y;function m(t,n){var i=n.getProperty(l),o={Text:n.getProperty(y),UnitSpecificScale:n.getProperty(p)};if(g){o.StandardCode=n.getProperty(g)}if(o.UnitSpecificScale===null){r.error("Ignoring customizing w/o unit-specific scale for code "+i+" from "+e.CollectionPath,e.Url,W)}else{t[i]=o}return t}function $(e){var t;if(e&&e.length===1){t=e[0]}else{throw new Error("Single key expected: "+u)}return typeof t==="string"?t:t[Object.keys(t)[0]]}if(a){if(a.length!==1){throw new Error("Single alternative expected: "+n)}else if(a[0].Key.length!==1){throw new Error("Single key expected: "+n+"/0/Key")}l=a[0].Key[0].Name.$PropertyPath}p=i.getObject(c+"UnitSpecificScale/$Path");y=i.getObject(c+"Text/$Path");d=[l,p,y];g=i.getObject(h);if(g){d.push(g)}s=o.bindList("/"+e.CollectionPath,null,null,null,{$select:d});return s.requestContexts(0,Infinity).then(function(t){if(!t.length){r.error("Customizing empty for ",o.sServiceUrl+e.CollectionPath,W)}return t.reduce(m,{})}).finally(function(){s.destroy();if(f){o.destroy()}})});I[t]=a;return a})};oe.prototype.requestCurrencyCodes=function(e,t){return this.requestCodeList("CurrencyCodes",e,t)};oe.prototype.requestData=n.createRequestMethod("fetchData");oe.prototype.requestObject=n.createRequestMethod("fetchObject");oe.prototype.requestUI5Type=n.createRequestMethod("fetchUI5Type");oe.prototype.requestUnitsOfMeasure=function(e,t){return this.requestCodeList("UnitsOfMeasure",e,t)};oe.prototype.requestValue4Annotation=function(t,i,r){let o;const a=n.getMetaPath(r.getPath());const s=i.indexOf("/",a.length+1);if(s>0){const e=this.getObject(i.slice(0,s)+"/$Partner");if(e){o={$IsBound:true,$Parameter:[{$Name:e}]}}}const u=new R({any:e.value(t,{context:this.createBindingContext(i),overload:o}),bindingContexts:r,models:r.getModel()});const l=u.getBinding("any");let f;if(l){if(l.getBindings){f=Promise.all(l.getBindings().map(function(e){return e.requestValue()}))}else{f=l.requestValue()}}else{f=Promise.resolve()}return f.then(function(){return u.getAny()})};oe.prototype.requestValueListInfo=function(e,t,i){var r=n.getMetaPath(e),o=r.slice(0,r.lastIndexOf("/")).replace("/$Parameter",""),a=o.slice(o.lastIndexOf("/")+1),s=this;if(!a.includes(".")){a=undefined}return Promise.all([a||this.requestObject(o+"/@sapui.name"),this.requestObject(r),this.requestObject(r+"@"),this.requestObject(r+ne),this.requestObject(o+"/@$ui5.overload")]).then(function(o){var a=o[2],u=o[3],l={},f=o[1],c={};function d(i,r,o,a){if("CollectionRoot"in i){a=s.getOrCreateSharedModel(i.CollectionRoot,true,t);if(c[r]&&c[r].$model===a){l[r]=undefined}}if(l[r]){throw new Error("Annotations '"+Y.slice(1)+"' with identical qualifier '"+r+"' for property "+e+" in "+l[r]+" and "+o)}l[r]=o;i=n.clone(i);i.$model=a;delete i.CollectionRoot;delete i.SearchSupported;c[r]=i}if(!f){throw new Error("No metadata for "+e)}return Promise.all(Object.keys(a).filter(function(e){return ue(e,ee)!==undefined}).map(function(e){var n=a[e];return Promise.all(n.map(function(e){var n=s.getOrCreateSharedModel(e,true,t);return s.fetchValueListMappings(n,o[0],f,o[4]).then(function(e){return{valueListMappingByQualifier:e,$model:n}})})).then(function(e){n.forEach(function(t,n){var i=e[n].valueListMappingByQualifier;Object.keys(i).forEach(function(r){d(i[r],r,t,e[n].$model)})})})})).then(function(){var t=a[te];Object.keys(a).filter(function(e){return le(e)!==undefined}).forEach(function(e){d(a[e],le(e),s.sUrl,s.oModel)});if(n.isEmptyObject(c)){throw new Error("No annotation '"+ee.slice(1)+"' for "+e)}return t&&i&&i.getBinding?s.filterValueListRelevantQualifiers(c,t,r+te,i):c}).then(function(t){var n,i;if(u){n=Object.keys(t);if(n.length!==1){throw new Error("Annotation '"+ne.slice(1)+"' but not exactly one '"+Y.slice(1)+"' for property "+e)}i=t[n[0]];i.$qualifier=n[0];return{"":i}}return t})})};oe.prototype.requestValueListType=n.createRequestMethod("fetchValueListType");oe.prototype.resolve=function(e,t){var n,i;if(!e){return t?t.getPath():undefined}i=e[0];if(i==="/"){return e}if(!t){return undefined}if(i==="."){if(e[1]!=="/"){throw new Error("Unsupported relative path: "+e)}e=e.slice(2)}n=t.getPath();return i==="@"||n.endsWith("/")?n+e:n+"/"+e};oe.prototype.setLegacySyntax=function(){throw new Error("Unsupported operation: v4.ODataMetaModel#setLegacySyntax")};oe.prototype.toString=function(){return W+": "+this.sUrl};oe.prototype.validate=function(e,t){var n,i,r,o,a,s;if(!this.bSupportReferences){return t}for(a in t.$Reference){o=t.$Reference[a];a=new L(a).absoluteTo(this.sUrl).toString();if("$IncludeAnnotations"in o){this._reportAndThrowError("Unsupported IncludeAnnotations",e)}for(s in o.$Include){r=o.$Include[s];if(r in t){this._reportAndThrowError("A schema cannot span more than one document: "+r+" - is both included and defined",e)}this._addUrlForSchema(r,a,e)}}i=t.$LastModified?new Date(t.$LastModified):null;this.mETags[e]=t.$ETag?t.$ETag:i;n=t.$Date?new Date(t.$Date):new Date;i??=n;if(this.oLastModified<i){this.oLastModified=i}delete t.$Date;delete t.$ETag;delete t.$LastModified;return t};oe.clearCodeListsCache=function(){I={}};Object.keys(B).forEach(e=>{const t=e.replace("Geography","Geometry");B[t]=B[e]});return oe});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/ODataModel", ["./ODataContextBinding","./ODataListBinding","./ODataMetaModel","./ODataPropertyBinding","./SubmitMode","./lib/_GroupLock","./lib/_Helper","./lib/_MetadataRequestor","./lib/_Parser","./lib/_Requestor","sap/base/assert","sap/base/Log","sap/base/i18n/Localization","sap/ui/base/SyncPromise","sap/ui/core/Messaging","sap/ui/core/Rendering","sap/ui/core/Supportability","sap/ui/core/cache/CacheManager","sap/ui/core/message/Message","sap/ui/core/message/MessageType","sap/ui/model/BindingMode","sap/ui/model/Context","sap/ui/model/Model","sap/ui/model/odata/OperationMode","sap/ui/thirdparty/URI"],function(e,t,r,i,o,n,s,a,u,p,d,h,c,f,l,g,y,m,v,w,E,b,P,M,R){"use strict";const A=false;var C="sap.ui.model.odata.v4.ODataModel",B=["$count","$expand","$filter","$levels","$orderby","$search","$select"],q=["$$groupId","$$patchWithoutSideEffects","$$updateGroupId"],O=[undefined,w.Success,w.Information,w.Warning,w.Error],I={dataReceived:true,dataRequested:true,messageChange:true,propertyChange:true,sessionTimeout:true},$={annotationURI:true,autoExpandSelect:true,earlyRequests:true,groupId:true,groupProperties:true,httpHeaders:true,ignoreAnnotationsFromMetadata:true,metadataUrlParams:true,odataVersion:true,operationMode:true,serviceUrl:true,sharedRequests:true,supportReferences:true,synchronizationMode:true,updateGroupId:true,withCredentials:true},D=["$apply","$count","$expand","$filter","$orderby","$search","$select"],k=/^[ -~]+$/,G=P.extend("sap.ui.model.odata.v4.ODataModel",{constructor:T,metadata:{final:A}});function T(e={}){var t,i=c.getLanguageTag().toString(),n,u,d,h,f,g,m=this;P.call(this);if("synchronizationMode"in e&&e.synchronizationMode!=="None"){throw new Error("Synchronization mode must be 'None'")}n=e.odataVersion||"4.0";this.sODataVersion=n;if(n!=="4.0"&&n!=="2.0"){throw new Error("Unsupported value for parameter odataVersion: "+n)}for(u in e){if(!(u in $)){throw new Error("Unsupported parameter: "+u)}}h=e.serviceUrl;if(!h){throw new Error("Missing service root URL")}f=new R(h);if(f.path()[f.path().length-1]!=="/"){throw new Error("Service root URL must end with '/'")}if(e.operationMode&&e.operationMode!==M.Server){throw new Error("Unsupported operation mode: "+e.operationMode)}this.sOperationMode=e.operationMode;g=this.buildQueryOptions(f.query(true),false,true);this.mUriParameters=g;if(y.isStatisticsEnabled()){g=Object.assign({"sap-statistics":true},g)}this.sServiceUrl=f.query("").toString();this.sGroupId=e.groupId;if(this.sGroupId===undefined){this.sGroupId="$auto"}if(this.sGroupId!=="$auto"&&this.sGroupId!=="$direct"){throw new Error("Group ID must be '$auto' or '$direct'")}s.checkGroupId(e.updateGroupId,false,false,"Invalid update group ID: ");this.sUpdateGroupId=e.updateGroupId||this.getGroupId();this.mGroupProperties={};for(const r in e.groupProperties){s.checkGroupId(r,true);t=e.groupProperties[r];if(typeof t!=="object"||Object.keys(t).length!==1||!(t.submit in o)){throw new Error("Group '"+r+"' has invalid properties: '"+t+"'")}}this.mGroupProperties=s.clone(e.groupProperties)||{};this.mGroupProperties.$auto={submit:o.Auto};this.mGroupProperties.$direct={submit:o.Direct};if(e.autoExpandSelect!==undefined&&typeof e.autoExpandSelect!=="boolean"){throw new Error("Value for autoExpandSelect must be true or false")}this.bAutoExpandSelect=e.autoExpandSelect===true;if("sharedRequests"in e&&e.sharedRequests!==true){throw new Error("Value for sharedRequests must be true")}this.bSharedRequests=e.sharedRequests===true;this.bIgnoreETag=false;if("ignoreAnnotationsFromMetadata"in e&&e.ignoreAnnotationsFromMetadata!==true){throw new Error("Value for ignoreAnnotationsFromMetadata must be true")}this.mHeaders={"Accept-Language":i};this.mMetadataHeaders={"Accept-Language":i};d=Object.assign({},g,e.metadataUrlParams);const v=this.getOrCreateRetryAfterPromise.bind(this);this.oMetaModel=new r(a.create(this.mMetadataHeaders,n,e.ignoreAnnotationsFromMetadata,d,e.withCredentials,v),this.sServiceUrl+"$metadata",e.annotationURI,this,e.supportReferences,d["sap-language"]);this.oInterface={fetchEntityContainer:this.oMetaModel.fetchEntityContainer.bind(this.oMetaModel),fetchMetadata:this.oMetaModel.fetchObject.bind(this.oMetaModel),fireDataReceived:this.fireDataReceived.bind(this),fireDataRequested:this.fireDataRequested.bind(this),fireSessionTimeout:function(){m.fireEvent("sessionTimeout")},getGroupProperty:this.getGroupProperty.bind(this),getMessagesByPath:this.getMessagesByPath.bind(this),getOptimisticBatchEnabler:this.getOptimisticBatchEnabler.bind(this),getOrCreateRetryAfterPromise:v,getReporter:this.getReporter.bind(this),isIgnoreETag:function(){return m.bIgnoreETag},onCreateGroup:function(e){if(m.isAutoGroup(e)){m.addPrerenderingTask(m._submitBatch.bind(m,e,true))}},onHttpResponse:function(e){const t=m.fnHttpListener;t?.({responseHeaders:e})},reportError:this.reportError.bind(this),reportStateMessages:this.reportStateMessages.bind(this),reportTransitionMessages:this.reportTransitionMessages.bind(this),updateMessages:function(e,t){l.updateMessages(e,t)}};this.oRequestor=p.create(this.sServiceUrl,this.oInterface,this.mHeaders,g,n,e.withCredentials);this.changeHttpHeaders(e.httpHeaders);this.bEarlyRequests=e.earlyRequests;if(this.bEarlyRequests){this.oMetaModel.fetchEntityContainer(true);this.initializeSecurityToken();this.oRequestor.sendOptimisticBatch()}this.aAllBindings=[];this.oAnnotationChangePromise=null;this.mKeepAliveBindingsByPath={};this.mSupportedBindingModes={OneTime:true,OneWay:true};if(e.sharedRequests){this.sDefaultBindingMode=E.OneWay}else{this.sDefaultBindingMode=E.TwoWay;this.mSupportedBindingModes.TwoWay=true}this.aPrerenderingTasks=null;this.fnHttpListener=null;this.fnOptimisticBatchEnabler=null;this.mPath2DataReceivedError={};this.mPath2DataRequestedCount={};this.fnRetryAfter=null;this.oRetryAfterPromise=null}G.prototype._requestAnnotationChanges=function(){this.oAnnotationChangePromise??=f.resolve();return this.oAnnotationChangePromise};G.prototype._submitBatch=function(e,t){var r=this;return this.oRequestor.submitBatch(e).catch(function(e){r.reportError("$batch failed",C,e);if(!t){throw e}})};G.prototype.addPrerenderingTask=function(e,t){var r,i,o=this;function n(e){clearTimeout(i);while(e.length){e.shift()()}if(o.aPrerenderingTasks===e){o.aPrerenderingTasks=null}}if(!this.aPrerenderingTasks){this.aPrerenderingTasks=[];r=n.bind(null,this.aPrerenderingTasks);g.addPrerenderingTask(r);i=setTimeout(function(){i=setTimeout(r,0)},0)}if(t){this.aPrerenderingTasks.unshift(e)}else{this.aPrerenderingTasks.push(e)}};G.prototype.attachDataReceived=function(e,t){return this.attachEvent("dataReceived",e,t)};G.prototype.attachDataRequested=function(e,t){return this.attachEvent("dataRequested",e,t)};G.prototype.attachEvent=function(e,t,r,i){if(!(e in I)){throw new Error("Unsupported event '"+e+"': v4.ODataModel#attachEvent")}return P.prototype.attachEvent.apply(this,arguments)};G.prototype.attachSessionTimeout=function(e,t){return this.attachEvent("sessionTimeout",e,t)};G.prototype.bindContext=function(t,r,i){return new e(this,t,r,i)};G.prototype.bindingCreated=function(e){this.aAllBindings.push(e)};G.prototype.bindingDestroyed=function(e){var t=this.aAllBindings.indexOf(e);if(t<0){throw new Error("Unknown "+e)}this.aAllBindings.splice(t,1)};G.prototype.bindList=function(e,r,i,o,n){return new t(this,e,r,i,o,n)};G.prototype.bindProperty=function(e,t,r){return new i(this,e,t,r)};G.prototype.bindTree=function(e,t,r,i,o){throw new Error("Unsupported operation: v4.ODataModel#bindTree")};G.prototype.buildQueryOptions=function(e,t,r){var i,o=Object.assign({},e);function n(e,r,i){var o,a,p,d=e[r];if(!t||!i.includes(r)){throw new Error("System query option "+r+" is not supported")}if((r==="$expand"||r==="$select")&&typeof d==="string"){d=u.parseSystemQueryOption(r+"="+d)[r];e[r]=d}if(r==="$expand"){d=e[r]=s.clone(d);for(p in d){a=d[p];if(a===null||typeof a!=="object"){a=d[p]={}}for(o in a){n(a,o,B)}}}else if(r==="$count"){if(typeof d==="boolean"){if(!d){delete e.$count}}else{switch(typeof d==="string"&&d.toLowerCase()){case"false":delete e.$count;break;case"true":e.$count=true;break;default:throw new Error("Invalid value for $count: "+d)}}}}if(e){for(i in e){if(i.startsWith("$$")){delete o[i]}else if(i[0]==="@"){throw new Error("Parameter "+i+" is not supported")}else if(i[0]==="$"){n(o,i,D)}else if(!r&&i.startsWith("sap-")&&!i.startsWith("sap-valid-")){throw new Error("Custom query option "+i+" is not supported")}}}return o};G.prototype.changeHttpHeaders=function(e){var t,r,i={},o,n;this.oRequestor.checkHeaderNames(e);for(n in e){r=n.toLowerCase();o=e[n];if(i[r]){throw new Error("Duplicate header "+n)}else if(!(typeof o==="string"&&k.test(o)||o===undefined)){throw new Error("Unsupported value for header '"+n+"': "+o)}else{if(r==="x-csrf-token"){n="X-CSRF-Token"}i[r]={key:n,value:o}}}this.oRequestor.checkForOpenRequests();for(n in this.mHeaders){r=n.toLowerCase();t=i[r];if(t){delete this.mHeaders[n];delete this.mMetadataHeaders[n];if(t.value!==undefined){this.mHeaders[t.key]=t.value;this.mMetadataHeaders[t.key]=t.value}delete i[r]}}for(n in i){t=i[n];if(t.value!==undefined){this.mHeaders[t.key]=t.value;if(n!=="x-csrf-token"){this.mMetadataHeaders[t.key]=t.value}}}};G.prototype.checkBatchGroupId=function(e){s.checkGroupId(e);if(this.isDirectGroup(e)){throw new Error("Group ID does not use batch requests: "+e)}};G.prototype.clearSessionContext=function(){this.oRequestor.clearSessionContext()};G.prototype.createBindingContext=function(e,t){var r,i,o,n;function s(e){var t=e.indexOf("."),r=e.indexOf("/");return t>0&&(r<0||t<r)}if(arguments.length>2){throw new Error("Only the parameters sPath and oContext are supported")}if(t&&t.getBinding){throw new Error("Unsupported type: oContext must be of type sap.ui.model.Context, "+"but was sap.ui.model.odata.v4.Context")}o=this.resolve(e,t);if(o===undefined){throw new Error("Cannot create binding context from relative path '"+e+"' without context")}n=o.indexOf("#");if(n>=0){r=o.slice(0,n);let e=o.slice(n+1);if(e[0]==="#"){e=e.slice(1)}else if(r.length>1&&e[0]!=="@"&&s(e)){return new b(this,o)}if(e[0]==="/"){e="."+e}i=this.oMetaModel.getMetaContext(r);return this.oMetaModel.createBindingContext(e,i)}return new b(this,o)};G.prototype.createUI5Message=function(e,t,r,i=e){var o=typeof e.target==="string",n=e.longtextUrl,a,u=this;function p(e){return u.normalizeMessageTarget(e[0]==="/"?e:s.buildPath("/"+t,r,e))}if(o){t&&=t.split("?")[0];a=[p(e.target)];if(e.additionalTargets){e.additionalTargets.forEach(function(e){a.push(p(e))})}}if(n&&t){n=s.makeAbsolute(n,this.sServiceUrl+t)}return new v({code:e.code,descriptionUrl:n||undefined,message:e.message,persistent:!o||e.transition,processor:this,target:o?a:"",technical:e.technical,technicalDetails:s.createTechnicalDetails(i),type:O[e.numericSeverity]||w.None})};G.prototype.delete=function(e,t,r){var i,o,n=this;if(typeof e==="string"){if(e[0]!=="/"){throw new Error("Invalid path: "+e)}i=true;o=Promise.resolve([e,"*"])}else{o=Promise.all([e.fetchCanonicalPath(),e.fetchValue("@odata.etag",null,true)])}s.checkGroupId(t,false,true);t??=this.getUpdateGroupId();if(this.isApiGroup(t)){throw new Error("Illegal update group ID: "+t)}return o.then(function(o){return n.oRequestor.request("DELETE",o[0].slice(1)+s.buildQuery(n.mUriParameters),n.lockGroup(t,n,true,true),{"If-Match":o[1]}).catch(function(e){if(r||!(e.status===404||i&&e.status===412)){n.reportError("Failed to delete "+o[0],C,e);throw e}}).then(function(){if(i){n.aAllBindings.forEach(function(t){t.onDelete(e)})}})})};G.prototype.destroy=function(){this.oMetaModel.destroy();this.oRequestor.destroy();this.mHeaders=undefined;this.mMetadataHeaders=undefined;this.oRetryAfterPromise=undefined;return P.prototype.destroy.apply(this,arguments)};G.prototype.destroyBindingContext=function(){throw new Error("Unsupported operation: v4.ODataModel#destroyBindingContext")};G.prototype.detachDataReceived=function(e,t){return this.detachEvent("dataReceived",e,t)};G.prototype.detachDataRequested=function(e,t){return this.detachEvent("dataRequested",e,t)};G.prototype.detachSessionTimeout=function(e,t){return this.detachEvent("sessionTimeout",e,t)};G.prototype.fetchKeyPredicate=function(e,t){var r={};return this.oRequestor.fetchType(r,e).then(function(){return s.getKeyPredicate(t,e,r)})};G.prototype.filterMatchingMessages=function(e,t){return s.hasPathPrefix(e,t)?this.mMessages[e]:[]};G.prototype.fireDataReceived=function(e,t){if(!(t in this.mPath2DataRequestedCount)){throw new Error("Received more data than requested")}this.mPath2DataRequestedCount[t]-=1;this.mPath2DataReceivedError[t]??=e;if(this.mPath2DataRequestedCount[t]===0){this.fireEvent("dataReceived",this.mPath2DataReceivedError[t]?{error:this.mPath2DataReceivedError[t],path:t}:{data:{},path:t});delete this.mPath2DataReceivedError[t];delete this.mPath2DataRequestedCount[t]}};G.prototype.fireDataRequested=function(e){if(e in this.mPath2DataRequestedCount){this.mPath2DataRequestedCount[e]+=1}else{this.mPath2DataRequestedCount[e]=1;this.fireEvent("dataRequested",{path:e})}};G.prototype.getAllBindings=function(){return this.aAllBindings.slice()};G.prototype.getContext=function(){throw new Error("Unsupported operation: v4.ODataModel#getContext")};G.prototype.getDependentBindings=function(e){return this.aAllBindings.filter(function(t){var r=t.getContext();return t.isRelative()&&(r===e||r&&r.getBinding&&r.getBinding()===e)})};G.prototype.getGroupId=function(){return this.sGroupId};G.prototype.getGroupProperty=function(e,t){switch(t){case"submit":if(e.startsWith("$auto.")){return o.Auto}if(e==="$single"){return"Single"}return this.mGroupProperties[e]?this.mGroupProperties[e].submit:o.API;default:throw new Error("Unsupported group property: '"+t+"'")}};G.prototype.getHttpHeaders=function(e){var t=Object.assign({},this.mHeaders);if(!e){delete t["SAP-ContextId"]}if(t["X-CSRF-Token"]===null){delete t["X-CSRF-Token"]}return t};G.prototype.getKeepAliveContext=function(e,t,r={}){var i,o,n;if(!this.bAutoExpandSelect){throw new Error("Missing parameter autoExpandSelect")}if(e[0]!=="/"){throw new Error("Not a list context path to an entity: "+e)}Object.keys(r).forEach(function(e){if(e.startsWith("sap-")&&!e.startsWith("sap-valid-")||e[0]==="$"&&!q.includes(e)){throw new Error("Invalid parameter: "+e)}});n=e.slice(0,s.getPredicateIndex(e));i=this.mKeepAliveBindingsByPath[n];if(!i){o=this.aAllBindings.filter(function(e){if(e.mParameters&&e.mParameters.$$getKeepAliveContext){e.removeCachesAndMessages(n.slice(1),true)}return e.isKeepAliveBindingFor&&e.isKeepAliveBindingFor(n)});if(o.length>1){throw new Error("Multiple bindings with $$getKeepAliveContext for: "+e)}i=o[0];if(!i){i=this.bindList(n,undefined,undefined,undefined,r);this.mKeepAliveBindingsByPath[n]=i}}return i.getKeepAliveContext(e,t,r.$$groupId)};G.prototype.getKeyPredicate=s.createGetMethod("fetchKeyPredicate",true);G.prototype.getMessages=function(e){return this.getMessagesByPath(e.getPath(),true).sort(v.compare)};G.prototype.getMetaModel=function(){return this.oMetaModel};G.prototype.getObject=function(){throw new Error("Unsupported operation: v4.ODataModel#getObject")};G.prototype.getODataVersion=function(){return this.sODataVersion};G.prototype.getOptimisticBatchEnabler=function(){return this.fnOptimisticBatchEnabler};G.prototype.getOrCreateRetryAfterPromise=function(e){if(!this.oRetryAfterPromise&&this.fnRetryAfter&&e){this.oRetryAfterPromise=this.fnRetryAfter(e);this.oRetryAfterPromise.finally(()=>{this.oRetryAfterPromise=null}).catch(()=>{});this.oRetryAfterPromise.catch(t=>{if(t===e){this.reportError(t.message,C,t)}else{t.$reported=true}})}return this.oRetryAfterPromise};G.prototype.getOriginalProperty=function(){throw new Error("Unsupported operation: v4.ODataModel#getOriginalProperty")};G.prototype.getProperty=function(){throw new Error("Unsupported operation: v4.ODataModel#getProperty")};G.prototype.getReporter=function(){var e=this;return function(t){if(!t.$reported){e.reportError(t.message,C,t)}}};G.prototype.getServiceUrl=function(){return this.sServiceUrl};G.prototype.getUpdateGroupId=function(){return this.sUpdateGroupId};G.prototype.hasPendingChanges=function(e){if(e!==undefined){this.checkBatchGroupId(e);if(this.isAutoGroup(e)&&this.oRequestor.hasPendingChanges("$parked."+e)){return true}}return this.oRequestor.hasPendingChanges(e)};G.prototype.initializeSecurityToken=function(){this.oRequestor.refreshSecurityToken().catch(function(){})};G.prototype.isApiGroup=function(e){return this.getGroupProperty(e,"submit")===o.API};G.prototype.isAutoGroup=function(e){return this.getGroupProperty(e,"submit")===o.Auto};G.prototype.isDirectGroup=function(e){return this.getGroupProperty(e,"submit")===o.Direct};G.prototype.isList=function(){throw new Error("Unsupported operation: v4.ODataModel#isList")};G.prototype.lock=function(e){var t;if(!this.isAutoGroup(e)){throw new Error("Group ID does not use automatic batch requests: "+e)}t=this.lockGroup(e,this,true);return{isLocked:function(){return t.isLocked()},unlock:function(){t.unlock()}}};G.prototype.lockGroup=function(e,t,r,i,o){return this.oRequestor.lockGroup(e,t,r,i,o)};G.prototype.normalizeMessageTarget=function(e){var t,r,i="",o=this;if(e.includes("$uid=")){return e}t=e.split("/").map(function(e){var t,n=e.indexOf("("),a,p,d;function h(e){if(e in p){return encodeURIComponent(decodeURIComponent(p[e]))}r=true}if(n<0){i=s.buildPath(i,e);return e}t=e.slice(0,n);i=s.buildPath(i,t);p=u.parseKeyPredicate(e.slice(n));if(""in p){return t+"("+h("")+")"}d=o.oMetaModel.getObject("/"+i+"/");if(!(d&&d.$Key)){r=true;return e}a=d.$Key.map(function(e){var t=h(e);return d.$Key.length>1?e+"="+t:t});return t+"("+a.join(",")+")"}).join("/");return r?e:t};G.prototype.refresh=function(e){if(typeof e==="boolean"){throw new Error("Unsupported parameter bForceUpdate")}s.checkGroupId(e);this.getBindings().forEach(function(t){if(t.isRoot()){t.refresh(t.isSuspended()?undefined:e)}})};G.prototype.releaseKeepAliveBinding=function(e){var t=this.mKeepAliveBindingsByPath[e];if(t){delete this.mKeepAliveBindingsByPath[e];return t}};G.prototype.reportError=function(e,t,r){var i;if(r.canceled==="noDebugLog"){return}i=r.stack.includes(r.message)?r.stack:r.message+"\n"+r.stack;if(r.canceled){h.debug(e,i,t);return}h.error(e,i,t);if(r.$reported){return}r.$reported=true;this.reportTransitionMessages(s.extractMessages(r),r.resourcePath)};G.prototype.reportStateMessages=function(e,t,r){var i="/"+e,o=[],n=[],a=this;Object.keys(t).forEach(function(r){t[r].forEach(function(t){o.push(a.createUI5Message(t,e,r))})});(r||[""]).forEach(function(e){var t=s.buildPath(i,e);Object.keys(a.mMessages).forEach(function(e){if(e===t||e.startsWith(t+"/")||e.startsWith(t+"(")){n=n.concat(a.mMessages[e].filter(function(e){return!e.persistent}))}})});if(o.length||n.length){l.updateMessages(n,o)}};G.prototype.reportTransitionMessages=function(e,t,r,i){var o,n;if(!e.length){return}if(t){const e=this.getMetaModel();o="/"+t.split("?")[0];const r=s.getMetaPath(o);const i=e.getObject(r);if(Array.isArray(i)){n=e.getObject(r+"/@$ui5.overload/0");o=o.slice(0,o.lastIndexOf("/"))}}const a=e.map(e=>{const r=e;if(n){e=s.clone(e);s.adjustTargets(e,n,undefined,o,i)}e.transition=true;return this.createUI5Message(e,t,undefined,r)});if(!r){l.updateMessages(undefined,a)}return a};G.prototype.requestCanonicalPath=function(e){d(e.getModel()===this,"oEntityContext must belong to this model");return e.requestCanonicalPath()};G.prototype.requestKeyPredicate=s.createRequestMethod("fetchKeyPredicate");G.prototype.requestSideEffects=function(e,t){if(!t.length){return undefined}return f.all(this.aAllBindings.filter(function(e){return e.isRoot()}).map(function(r){return r.requestAbsoluteSideEffects(e,t)}))};G.prototype.resetChanges=function(e){e??=this.sUpdateGroupId;this.checkBatchGroupId(e);if(this.isAutoGroup(e)){this.oRequestor.cancelChanges("$parked."+e);this.oRequestor.cancelChanges("$inactive."+e,true)}this.oRequestor.cancelChanges(e);this.aAllBindings.forEach(function(t){if(e===t.getUpdateGroupId()){t.resetInvalidDataState()}})};G.prototype.resolve=function(e,t){var r;if(e&&e[0]==="/"){r=e}else if(t){r=t.getPath();if(e){if(!r.endsWith("/")){r+="/"}r+=e}}if(r&&r!=="/"&&r[r.length-1]==="/"&&!r.includes("#")){r=r.slice(0,r.length-1)}return r};G.prototype.setAnnotationChangePromise=function(e){if(this.oAnnotationChangePromise){throw Error("Too late")}this.oAnnotationChangePromise=e};G.prototype.setContinueOnError=function(e){this.checkBatchGroupId(e);this.oRequestor.setContinueOnError(e)};G.prototype.setHttpListener=function(e){this.fnHttpListener=e};G.prototype.setIgnoreETag=function(e){this.bIgnoreETag=e};G.prototype.setLegacySyntax=function(){throw new Error("Unsupported operation: v4.ODataModel#setLegacySyntax")};G.prototype.setOptimisticBatchEnabler=function(e){if(!this.bEarlyRequests){throw new Error("The earlyRequests model parameter is not set")}if(this.oRequestor.isBatchSent()){throw new Error("The setter is called after a non-optimistic batch is sent")}if(typeof e!=="function"){throw new Error("The given fnOptimisticBatchEnabler parameter is not a function")}if(this.fnOptimisticBatchEnabler){throw new Error("The setter is called more than once")}this.fnOptimisticBatchEnabler=e};G.prototype.setRetryAfterHandler=function(e){this.fnRetryAfter=e};G.prototype.submitBatch=function(e){var t=this;this.checkBatchGroupId(e);if(this.isAutoGroup(e)){this.oRequestor.relocateAll("$parked."+e,e)}this.oRequestor.addChangeSet(e);return new Promise(function(r){t.addPrerenderingTask(function(){r(t._submitBatch(e))})})};G.prototype.toString=function(){return C+": "+this.sServiceUrl};G.prototype.waitForKeepAliveBinding=function(e){if(e.mParameters?.$$getKeepAliveContext){const t=this.mKeepAliveBindingsByPath[e.getResolvedPath()];if(t){return t.ready()}}return f.resolve()};G.prototype.withUnresolvedBindings=function(e,t){return this.aAllBindings.filter(function(e){return!e.isResolved()}).some(function(r){return r[e](t)})};G.cleanUpOptimisticBatch=function(e){return m.delWithFilters({olderThan:e,prefix:"sap.ui.model.odata.v4.optimisticBatch:"})};(()=>{const e=G.extend;G.extend=function(){h.error("[FUTURE FATAL] sap.ui.model.odata.v4.ODataModel must not be extended");return e.apply(this,arguments)}})();return G});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/ODataParentBinding", ["./Context","./ODataBinding","./lib/_Helper","sap/base/Log","sap/ui/base/SyncPromise","sap/ui/model/ChangeReason"],function(e,t,n,i,r,o){"use strict";function s(){t.call(this);this.mAggregatedQueryOptions={};this.bAggregatedQueryOptionsInitial=true;this.mCanUseCachePromiseByChildPath={};this.aChildCanUseCachePromises=[];this.mChildPathsReducedToParent={};this.iPatchCounter=0;this.bPatchSuccess=true;this.oReadGroupLock=undefined;this.oRefreshPromise=null;this.oResumePromise=undefined}t(s.prototype);var a="sap.ui.model.odata.v4.ODataParentBinding";s.prototype._findEmptyPathParentContext=function(e){if(this.sPath===""&&this.oContext.getBinding){return this.oContext.getBinding()._findEmptyPathParentContext(this.oContext)}return e};s.prototype._resume=function(e){var t=this;function n(){t.bSuspended=false;if(t.oResumePromise){t.resumeInternal(true);t.oResumePromise.$resolve();t.oResumePromise=undefined}}if(this.oOperation){throw new Error("Cannot resume an operation binding: "+this)}if(!this.isRoot()){throw new Error("Cannot resume a relative binding: "+this)}if(!this.bSuspended){throw new Error("Cannot resume a not suspended binding: "+this)}if(e){this.createReadGroupLock(this.getGroupId(),true,1);this.oModel.addPrerenderingTask(n)}else{this.createReadGroupLock(this.getGroupId(),true);n()}};s.prototype.aggregateQueryOptions=function(e,t,i,r){var o=n.clone(i&&this.mLateQueryOptions||this.mAggregatedQueryOptions),s=this;function a(e,t,n,o,h){function u(r){var o=!e.$expand[r],h=n+"/"+r;if(o){e.$expand[r]={};if(i&&s.oModel.getMetaModel().fetchObject(h).getResult().$isCollection){return false}}return a(e.$expand[r],t.$expand[r],h,true,o)}function c(t){if(!e.$select.includes(t)){e.$select.push(t)}return true}return(r||!o||Object.keys(e).every(function(e){return e in t||e==="$count"||e==="$expand"||e==="$select"}))&&Object.keys(t).every(function(n){switch(n){case"$count":if(t.$count){e.$count=true}return true;case"$expand":e.$expand??={};return Object.keys(t.$expand).every(u);case"$select":e.$select??=[];return t.$select.every(c);default:if(h){e[n]=t[n];return true}return t[n]===e[n]}})}if(a(o,e,t)){if(i){this.mLateQueryOptions=o}else{this.mAggregatedQueryOptions=o;if(this.mLateQueryOptions){a(this.mLateQueryOptions,e)}}return true}return false};s.prototype.attachPatchCompleted=function(e,t){return this.attachEvent("patchCompleted",e,t)};s.prototype.attachPatchSent=function(e,t){return this.attachEvent("patchSent",e,t)};s.prototype.changeParameters=function(e){var t=Object.assign({},this.mParameters),i,r=[],s,a=this;function h(n){if(a.oModel.bAutoExpandSelect&&(n==="$expand"||n==="$select")){throw new Error("Cannot change "+n+" parameter in auto-$expand/$select mode: "+JSON.stringify(e[n])+" !== "+JSON.stringify(t[n]))}if(n==="$filter"||n==="$search"){i=o.Filter}else if(n==="$orderby"&&i!==o.Filter){i=o.Sort}else{i??=o.Change}r.push(s)}this.checkTransient();if(!e){throw new Error("Missing map of binding parameters")}for(s in e){if(s.startsWith("$$")){if(this.isUnchangedParameter(s,e[s])){continue}throw new Error("Unsupported parameter: "+s)}if(e[s]===undefined&&t[s]!==undefined){h(s);delete t[s]}else if(t[s]!==e[s]){h(s);if(typeof e[s]==="object"){t[s]=n.clone(e[s])}else{t[s]=e[s]}}}if(i){if(this.hasPendingChanges(true)){throw new Error("Cannot change parameters due to pending changes")}this.applyParameters(t,i,r)}};s.prototype.checkUpdateInternal=function(e){var t=this;function n(){return r.all(t.getDependentBindings().map(function(e){return e.checkUpdateInternal()}))}if(e!==undefined){throw new Error("Unsupported operation: "+a+"#checkUpdateInternal must not"+" be called with parameters")}return this.oCachePromise.then(function(e){if(e&&t.bRelative){return t.fetchResourcePath(t.oContext).then(function(i){if(e.getResourcePath()===i){return n()}return t.refreshInternal("")})}return n()})};s.prototype.createInCache=function(e,t,i,r,o,s,a,h){var u=this;return this.oCachePromise.then(function(c){var d;if(c){d=n.getRelativePath(i,u.getResolvedPath());return c.create(e,t,d,r,o,s,a,h).then(function(e){if(u.mCacheByResourcePath){delete u.mCacheByResourcePath[c.getResourcePath()]}return e})}return u.oContext.getBinding().createInCache(e,t,i,r,o,s,a,h)})};s.prototype.createReadGroupLock=function(e,t,n){var r,o=this;function s(){o.oModel.addPrerenderingTask(function(){if(o.oReadGroupLock===r){n-=1;if(n>0){Promise.resolve().then(s)}else{i.debug("Timeout: unlocked "+r,null,a);o.removeReadGroupLock()}}})}this.removeReadGroupLock();this.oReadGroupLock=r=this.lockGroup(e,t);if(t){n=2+(n||0);s()}};s.prototype.createRefreshPromise=function(e){var t,n;t=new Promise(function(e){n=e});t.$preventBubbling=e;t.$resolve=n;this.oRefreshPromise=t;return t};s.prototype.deleteFromCache=function(e,t,n,i,r){return this.withCache(function(n,o){return n._delete(e,t,o,i,r)},n,true)};s.prototype.destroy=function(){this.mAggregatedQueryOptions=undefined;this.aChildCanUseCachePromises=[];this.mChildPathsReducedToParent={};this.removeReadGroupLock();this.oRefreshPromise=undefined;this.oResumePromise=undefined;this.mCanUseCachePromiseByChildPath=undefined;t.prototype.destroy.call(this)};s.prototype.detachPatchCompleted=function(e,t){return this.detachEvent("patchCompleted",e,t)};s.prototype.detachPatchSent=function(e,t){return this.detachEvent("patchSent",e,t)};s.prototype.doSuspend=function(){};s.prototype.fetchIfChildCanUseCache=function(t,o,s,h){var u=this.getBaseForPathReduction(),c,d,f,p=t.getPath().includes("(...)"),l=t.getIndex(),g=o[0]==="#",P=this.oModel.getMetaModel(),m=this.oContext,y,C=this.oModel.resolve(o,t),v=this;function R(){if(g){return P.fetchObject(c+"/")}return n.fetchPropertyAndType(v.oModel.oInterface.fetchMetadata,O(C))}function O(e){var t;e=n.getMetaPath(e);t=e.indexOf("@");return t>0?e.slice(0,t):e}if(p&&!C.includes("/$Parameter/")||this.isRootBindingSuspended()||n.isDataAggregation(this.mParameters)){return r.resolve(C)}f=this.mCanUseCachePromiseByChildPath[o];if(h&&this.oCache!==null&&f){return f.then(function(e){if(!e){return undefined}if(!o.includes("/")||n.getMetaPath(e)===n.getMetaPath(C)){return C}return P.getReducedPath(C,u)})}d=this.oCachePromise.isRejected()||l!==undefined&&l!==e.VIRTUAL||t.isEffectivelyKeptAlive()||this.oCache===null||this.oCache&&this.oCache.hasSentRequest();c=n.getMetaPath(t.getPath());y=[this.doFetchOrGetQueryOptions(m),R(),s];f=r.all(y).then(function(e){var t=e[2]||{},r,s=e[0],f=e[1],l,y;if(Array.isArray(f)){return undefined}y=P.getReducedPath(C,u);l=n.getRelativePath(O(y),c);if(l===undefined){v.mChildPathsReducedToParent[o]=true;return m.getBinding().fetchIfChildCanUseCache(m,n.getRelativePath(C,m.getPath()),t,h)}if(p||l==="$count"||l.endsWith("/$count")||l==="$selectionCount"){return y}if(v.bAggregatedQueryOptionsInitial){v.mAggregatedQueryOptions=n.clone(s);v.selectKeyProperties(v.mAggregatedQueryOptions,c);v.bAggregatedQueryOptionsInitial=false}if(g){r={$select:[l.slice(1)]};return v.aggregateQueryOptions(r,c,d,h)?y:undefined}if(l===""||f&&(f.$kind==="Property"||f.$kind==="NavigationProperty")){r=n.wrapChildQueryOptions(c,l,t,v.oModel.oInterface.fetchMetadata);if(r){return v.aggregateQueryOptions(r,c,d,h)?y:undefined}return undefined}if(l==="value"){return v.aggregateQueryOptions(t,c,d,h)?y:undefined}i.error("Failed to enhance query options for auto-$expand/$select as the path '"+C+"' does not point to a property",JSON.stringify(f),a);return undefined}).then(function(e){if(v.mLateQueryOptions&&!v.isTransient()){if(v.oCache){v.oCache.setLateQueryOptions(v.mLateQueryOptions)}else if(v.oCache===null){return m.getBinding().fetchIfChildCanUseCache(m,v.sPath,v.mLateQueryOptions).then(function(t){return t&&e})}}return e});if(h&&this.oCache!==null&&!t.getPath().includes("($uid=")){this.mCanUseCachePromiseByChildPath[o]=f}this.aChildCanUseCachePromises.push(f);const $=d?f:r.all([this.oCachePromise,f]).then(function(e){var i=e[0];if(i&&!i.hasSentRequest()&&!v.oOperation){if(v.bSharedRequest){i.setActive(false);i=v.createAndSetCache(v.mAggregatedQueryOptions,i.getResourcePath(),t)}else{i.setQueryOptions(n.merge({},v.oModel.mUriParameters,v.mAggregatedQueryOptions))}}return i});$.catch(function(e){v.oModel.reportError(v+": Failed to enhance query options for "+"auto-$expand/$select for child "+o,a,e)});if(!d){this.oCachePromise=$}return f};s.prototype.fetchResolvedQueryOptions=function(e){var t,i,o,s=this.oModel,a=this.getQueryOptionsFromParameters(),h=this;if(!(s.bAutoExpandSelect&&a.$select)){return r.resolve(a)}t=s.oInterface.fetchMetadata;o=n.getMetaPath(s.resolve(this.sPath,e));i=Object.assign({},n.clone(a),{$select:[]});return r.all(a.$select.map(function(e){var r=o+"/"+e;if(r.endsWith(".*")){r=r.slice(0,-1)}return n.fetchPropertyAndType(t,r).then(function(s){if(!s&&!r.endsWith("/*")){throw new Error("Invalid (navigation) property '"+e+"' in $select of "+h)}const a=n.wrapChildQueryOptions(o,e,{},t);if(a){n.aggregateExpandSelect(i,a)}else{n.addToSelect(i,[e])}})})).then(function(){return i})};s.prototype.firePatchCompleted=function(e){if(this.iPatchCounter===0){throw new Error("Completed more PATCH requests than sent")}this.iPatchCounter-=1;this.bPatchSuccess&&=e;if(this.iPatchCounter===0){this.fireEvent("patchCompleted",{success:this.bPatchSuccess});this.bPatchSuccess=true}};s.prototype.firePatchSent=function(){this.iPatchCounter+=1;if(this.iPatchCounter===1){this.fireEvent("patchSent")}};s.prototype.getBaseForPathReduction=function(){var e,t;if(!this.isRoot()){e=this.oContext.getBinding();t=e.getUpdateGroupId();if(t===this.getUpdateGroupId()||!this.oModel.isApiGroup(t)){return e.getBaseForPathReduction()}}return this.getResolvedPath()};s.prototype.getGeneration=function(){return this.bRelative&&this.oContext.getGeneration&&this.oContext.getGeneration()||0};s.prototype.getInheritableQueryOptions=function(){if(this.mLateQueryOptions){return n.merge({},this.mCacheQueryOptions,this.mLateQueryOptions)}return this.mCacheQueryOptions||n.getQueryOptionsForPath(this.oContext.getBinding().getInheritableQueryOptions(),this.sPath)};s.prototype.getQueryOptionsForPath=function(e,t){if(!n.isEmptyObject(this.mParameters)){return n.getQueryOptionsForPath(this.getQueryOptionsFromParameters(),e)}t??=this.oContext;if(!this.bRelative||!t.getQueryOptionsForPath){return{}}return t.getQueryOptionsForPath(n.buildPath(this.sPath,e))};s.prototype.getResumePromise=function(){return this.oResumePromise};s.prototype.hasPendingChangesInDependents=function(e,t){return this.getDependentBindings().some(function(n){var i=n.oCache,r,o=e;if(o){if(n.oContext.isEffectivelyKeptAlive()){return false}if(n.oContext.getIndex()!==undefined){o=false}}if(i!==undefined){if(i&&i.hasPendingChangesForPath("",false,o&&n.mParameters&&n.mParameters.$$ownRequest)){return true}}else if(n.hasPendingChangesForPath("")){return true}if(n.mCacheByResourcePath){r=Object.keys(n.mCacheByResourcePath).some(function(e){var r=n.mCacheByResourcePath[e];return(!t||e.startsWith(t.slice(1)))&&r!==i&&r.hasPendingChangesForPath("")});if(r){return true}}return n.hasPendingChangesInDependents(o,t)})||this.oModel.withUnresolvedBindings("hasPendingChangesInCaches",this.getResolvedPath().slice(1))};s.prototype.isMeta=function(){return false};s.prototype.isPatchWithoutSideEffects=function(){return this.mParameters.$$patchWithoutSideEffects||!this.isRoot()&&this.oContext&&this.oContext.getBinding().isPatchWithoutSideEffects()};s.prototype.isRefreshWithoutBubbling=function(){return this.oRefreshPromise&&this.oRefreshPromise.$preventBubbling};s.prototype.isUnchangedParameter=function(e,t){return this.mParameters[e]===t};s.prototype.onDelete=function(e){var t=this.findContextForCanonicalPath(e);if(t){this.resetChangesForPath(this.getRelativePath(t.getPath()),[]);this.oModel.getDependentBindings(t).forEach(function(e){e.resetChanges()});this.delete(null,e.slice(1),t)}};s.prototype.refreshDependentListBindingsWithoutCache=function(){return r.all(this.getDependentBindings().map(function(e){if(e.filter&&e.oCache===null){return e.refreshInternal("")}if(e.refreshDependentListBindingsWithoutCache){return e.refreshDependentListBindingsWithoutCache()}}))};s.prototype.removeReadGroupLock=function(){if(this.oReadGroupLock){this.oReadGroupLock.unlock(true);this.oReadGroupLock=undefined}};s.prototype.resetChangesInDependents=function(e,t){this.getDependentBindings().forEach(function(n){e.push(n.oCachePromise.then(function(e){if(e){e.resetChangesForPath("")}n.resetInvalidDataState()}).unwrap());if(n.mCacheByResourcePath){Object.keys(n.mCacheByResourcePath).forEach(function(e){if(!t||e.startsWith(t.slice(1))){n.mCacheByResourcePath[e].resetChangesForPath("")}})}n.resetChangesInDependents(e,t)})};s.prototype.resolveRefreshPromise=function(e){if(this.oRefreshPromise){this.oRefreshPromise.$resolve(e.catch(function(e){if(!e.canceled){throw e}}));this.oRefreshPromise=null}return e};s.prototype.resume=function(){this._resume(false)};s.prototype.resumeAsync=function(){this._resume(true);return Promise.resolve(this.oResumePromise)};s.prototype.selectKeyProperties=function(e,t){n.selectKeyProperties(e,this.oModel.getMetaModel().getObject(t+"/"))};s.prototype.suspend=function(){var e;if(this.oOperation){throw new Error("Cannot suspend an operation binding: "+this)}if(!this.isRoot()){throw new Error("Cannot suspend a relative binding: "+this)}if(this.bSuspended){throw new Error("Cannot suspend a suspended binding: "+this)}if(this.hasPendingChanges(true)){throw new Error("Cannot suspend a binding with pending changes: "+this)}this.bSuspended=true;this.oResumePromise=new r(function(t){e=t});this.oResumePromise.$resolve=e;this.removeReadGroupLock();this.doSuspend()};s.prototype.updateAfterCreate=function(e,t){return r.all(this.getDependentBindings().map(function(n){return n.updateAfterCreate(e,t)}))};s.prototype.updateAggregatedQueryOptions=function(e){var t=this.mAggregatedQueryOptions,n=Object.keys(e),i=this;if(t){n=n.concat(Object.keys(t));n.forEach(function(n){if(i.bAggregatedQueryOptionsInitial||n!=="$select"&&n!=="$expand"){if(e[n]===undefined){delete t[n]}else{t[n]=e[n]}}});if(t.$select&&!t.$select.length){t.$select=[Object.keys(t.$expand)[0]]}}};s.prototype.visitSideEffects=function(e,t,i,r,o){var s=i?this.oModel.getDependentBindings(i):this.getDependentBindings();s.forEach(function(i){var s=n.buildPath(o,i.oOperation?"":n.getMetaPath(i.getPath())),a;if(i.oCache){a=n.stripPathPrefix(s,t);if(a.length){r.push(i.requestSideEffects(e,a))}}else{i.visitSideEffects(e,t,null,r,s)}})};function h(e){if(this){s.apply(this,arguments)}else{Object.assign(e,s.prototype)}}["adjustPredicate","destroy","getGeneration","hasPendingChangesForPath","isUnchangedParameter","updateAfterCreate"].forEach(function(e){h.prototype[e]=s.prototype[e]});return h},false);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/ODataPropertyBinding", ["./Context","./ODataBinding","./lib/_Cache","./lib/_Helper","sap/base/Log","sap/ui/base/SyncPromise","sap/ui/model/BindingMode","sap/ui/model/ChangeReason","sap/ui/model/PropertyBinding"],function(e,t,o,n,i,s,r,a,h){"use strict";var d="sap.ui.model.odata.v4.ODataPropertyBinding",u=Object.freeze([]),p={AggregatedDataStateChange:true,change:true,dataReceived:true,dataRequested:true,DataStateChange:true},c="/"+e.VIRTUAL,l=h.extend("sap.ui.model.odata.v4.ODataPropertyBinding",{constructor:f});function f(e,o,i,s){h.call(this,e,o);t.call(this);if(o.endsWith("/")){throw new Error("Invalid path: "+o)}this.mScope=undefined;if(s){if(typeof s.scope==="object"){this.mScope=s.scope;s={...s};delete s.scope}this.checkBindingParameters(s,["$$groupId","$$ignoreMessages","$$noPatch"]);this.sGroupId=s.$$groupId;this.bNoPatch=s.$$noPatch;this.setIgnoreMessages(s.$$ignoreMessages)}else{this.sGroupId=undefined;this.bNoPatch=false}if(this.sPath==="@$ui5.context.isSelected"){this.bNoPatch=true}this.oCheckUpdateCallToken=undefined;this.oContext=i;this.bHasDeclaredType=undefined;this.bInitial=true;this.mQueryOptions=this.oModel.buildQueryOptions(n.clone(s),o.endsWith("$count"));this.vValue=undefined;this.fetchCache(i);e.bindingCreated(this)}t(l.prototype);l.prototype.attachEvent=function(e,t,o,n){if(!(e in p)){throw new Error("Unsupported event '"+e+"': v4.ODataPropertyBinding#attachEvent")}return h.prototype.attachEvent.apply(this,arguments)};l.prototype.checkUpdateInternal=function(e,t,o,h,u){var p=false,l=this.sPath.indexOf("##"),f=l>=0,g=this.oModel.getMetaModel(),y={data:{}},C=this.getResolvedPath(),v={forceUpdate:C&&(e||e===undefined&&this.getDataState().getControlMessages().length>0||this.oCheckUpdateCallToken&&this.oCheckUpdateCallToken.forceUpdate)},P=this.oType,R=this;this.oCheckUpdateCallToken=v;if(!P&&C&&this.sInternalType!=="any"&&!f&&!C.includes(c)){P=g.fetchUI5Type(this.sReducedPath||C)}if(u===undefined){u=this.oCachePromise.then(function(e){var t,n;if(e){return e.fetchValue(R.lockGroup(o||R.getGroupId()),undefined,function(){p=true;R.fireDataRequested(h)},R).then(function(t){R.checkSameCache(e);return t})}if(!R.isResolved()){return undefined}if(C.includes(c)){v.forceUpdate=false}if(!f){return R.oContext.fetchValue(R.sReducedPath,R)}t=R.sPath.slice(0,l);n=R.sPath.slice(l+2);if(n[0]==="/"){n="."+n}return g.fetchObject(n,g.getMetaContext(R.oModel.resolve(t,R.oContext)),R.mScope&&{scope:R.mScope})}).then(function(e){if(!e||typeof e!=="object"){return e}if(R.sInternalType==="any"&&(R.getBindingMode()===r.OneTime||!f&&(R.getBindingMode()===r.OneWay||R.sPath[R.sPath.lastIndexOf("/")+1]==="#"))){if(f){return e}else if(R.bRelative){return n.publicClone(e)}}i.error("Accessed value is not primitive",C,d)},function(e){R.oModel.reportError("Failed to read path "+C,d,e);if(e.canceled){v.forceUpdate=false;return R.vValue}y={error:e}});if(e&&u.isFulfilled()){if(P&&P.isFulfilled&&P.isFulfilled()){this.doSetType(P.getResult())}this.vValue=u.getResult()}u=Promise.resolve(u)}else if(u&&typeof u==="object"){u=n.publicClone(u)}return s.all([u,P]).then(function(e){var o=e[1],n=e[0];if(v===R.oCheckUpdateCallToken){R.oCheckUpdateCallToken=undefined;R.doSetType(o);if(v.forceUpdate||R.vValue!==n){R.bInitial=false;R.vValue=n;R._fireChange({reason:t||a.Change})}R.checkDataState()}if(p){R.fireDataReceived(y,h)}if(y.error){throw y.error}})};l.prototype.destroy=function(){this.oModel.bindingDestroyed(this);this.oCheckUpdateCallToken=undefined;this.mQueryOptions=undefined;this.mScope=undefined;this.vValue=undefined;t.prototype.destroy.call(this);h.prototype.destroy.apply(this,arguments)};l.prototype.doCreateCache=function(e,t){return o.createProperty(this.oModel.oRequestor,e,t)};l.prototype.doFetchOrGetQueryOptions=function(){return this.isRoot()?this.mQueryOptions:undefined};l.prototype.doSetType=function(e){h.prototype.setType.call(this,e,this.sInternalType)};l.prototype.getDependentBindings=function(){return u};l.prototype.getResumePromise=function(){};l.prototype.getValue=function(){return this.vValue};l.prototype.getValueListType=function(){var e=this.getResolvedPath();if(!e){throw new Error(this+" is unresolved")}return this.getModel().getMetaModel().getValueListType(e)};l.prototype.hasPendingChangesInDependents=function(){return false};l.prototype.initialize=function(){if(this.isResolved()){if(this.isRootBindingSuspended()){this.sResumeChangeReason=a.Change}else{this.checkUpdate(true)}}};l.prototype.isMeta=function(){return this.sPath.includes("##")};l.prototype.onChange=function(e,t){this.checkUpdateInternal(t,undefined,undefined,false,e).catch(this.oModel.getReporter())};l.prototype.onDelete=function(){};l.prototype.refreshInternal=function(e,t,o,n){var i=this;if(this.isRootBindingSuspended()){this.refreshSuspended(t);return s.resolve()}return this.oCachePromise.then(function(){if(i.oCache&&i.oCache.reset){i.oCache.reset()}else{i.fetchCache(i.oContext,false,true,t,n)}if(o){return i.checkUpdateInternal(undefined,a.Refresh,t,n)}})};l.prototype.requestValue=function(){var e=this;return Promise.resolve(this.checkUpdateInternal(false).then(function(){return e.getValue()}))};l.prototype.requestValueListInfo=function(e){var t=this.getResolvedPath();if(!t){throw new Error(this+" is unresolved")}return this.getModel().getMetaModel().requestValueListInfo(t,e,this.oContext)};l.prototype.requestValueListType=function(){var e=this.getResolvedPath();if(!e){throw new Error(this+" is unresolved")}return this.getModel().getMetaModel().requestValueListType(e)};l.prototype.resetChangesInDependents=function(){};l.prototype.resetInvalidDataState=function(){if(this.getDataState().isControlDirty()){this._fireChange({reason:a.Change})}};l.prototype.resume=function(){throw new Error("Unsupported operation: resume")};l.prototype.resumeInternal=function(e,t){var o=this.sResumeChangeReason;this.sResumeChangeReason=undefined;this.fetchCache(this.oContext);if(e){this.checkUpdateInternal(t?undefined:false,o).catch(this.oModel.getReporter())}};l.prototype.setContext=function(e){if(this.oContext!==e){if(this.bRelative){this.checkSuspended(true);this.deregisterChangeListener();if(e){if(this.oType&&!this.bHasDeclaredType&&n.getMetaPath(this.oModel.resolve(this.sPath,e))!==n.getMetaPath(this.sReducedPath)){this.doSetType(undefined)}this.sReducedPath=undefined}}this.oContext=e;this.sResumeChangeReason=undefined;if(this.bRelative){this.fetchCache(this.oContext);this.checkUpdateInternal(this.bInitial||undefined,a.Context).catch(this.oModel.getReporter())}}};l.prototype.setType=function(e,t){var o=this.oType;this.bHasDeclaredType=!!e;if(e&&e.getName()==="sap.ui.model.odata.type.DateTimeOffset"){e.setV4()}h.prototype.setType.apply(this,arguments);if(!this.bInitial&&o!==e){this._fireChange({reason:a.Change})}};l.prototype.setValue=function(e,t){var o,i,s=this.getResolvedPath(),r=this;function h(e){r.oModel.reportError("Failed to update path "+s,d,e);return e}this.checkSuspended();if(this.bNoPatch&&t){throw h(new Error("Must not specify a group ID ("+t+") with $$noPatch"))}n.checkGroupId(t);if(typeof e==="function"||e&&typeof e==="object"){throw h(new Error("Not a primitive value"))}if(!this.bNoPatch&&this.vValue===undefined){throw h(new Error("Must not change a property before it has been read"))}if(this.vValue!==e){if(this.oCache){h(new Error("Cannot set value on this binding as it is not relative"+" to a sap.ui.model.odata.v4.Context"));return}o=this.bNoPatch?null:this.lockGroup(t,true,true);i=this.oContext.doSetProperty(this.sPath,e,o);i.catch(function(e){if(o){o.unlock(true)}h(e)});if(!i.isRejected()&&r.oModel.hasListeners("propertyChange")){r.oModel.firePropertyChange({context:r.oContext,path:r.sPath,promise:i.isPending()?i.getResult():undefined,reason:a.Binding,resolvedPath:s,value:e})}}};l.prototype.supportsIgnoreMessages=function(){return true};l.prototype.suspend=function(){throw new Error("Unsupported operation: suspend")};l.prototype.updateAfterCreate=function(){return this.checkUpdateInternal()};l.prototype.visitSideEffects=function(){};return l});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/ODataUtils", ["sap/base/i18n/date/CalendarType","sap/ui/core/format/DateFormat","sap/ui/model/odata/ODataUtils","sap/ui/model/odata/v4/lib/_Batch","sap/ui/model/odata/v4/lib/_Helper"],function(e,t,a,r,i){"use strict";var n,s,o="\\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12]\\d|3[01])",u,c="(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(\\.\\d{1,12})?)?",p=new RegExp("^"+o+"$"),d=new RegExp("^"+o+"T"+c+"(?:Z|[-+](?:0\\d|1[0-3]):[0-5]\\d|[-+]14:00)$","i"),f=new RegExp("^"+c+"$"),m={_setDateTimeFormatter:function(){n=t.getDateInstance({calendarType:e.Gregorian,pattern:"yyyy-MM-dd",strictParsing:true,UTC:true});s=t.getDateTimeInstance({calendarType:e.Gregorian,pattern:"yyyy-MM-dd'T'HH:mm:ss.SSSXXX",strictParsing:true});u=t.getTimeInstance({calendarType:e.Gregorian,pattern:"HH:mm:ss.SSS",strictParsing:true,UTC:true})},compare:function(e,t,r){if(r===true||r==="Decimal"){return a.compare(e,t,true)}if(r==="DateTime"){return a.compare(m.parseDateTimeOffset(e),m.parseDateTimeOffset(t))}return a.compare(e,t)},deserializeBatchResponse:function(e,t){return r.deserializeBatchResponse(e,t)},formatLiteral:function(e,t){return i.formatLiteral(e,t)},parseDate:function(e){var t=p.test(e)&&n.parse(e);if(!t){throw new Error("Not a valid Edm.Date value: "+e)}return t},parseDateTimeOffset:function(e){var t,a=d.exec(e);if(a){if(a[1]&&a[1].length>4){e=e.replace(a[1],a[1].slice(0,4))}t=s.parse(e.toUpperCase())}if(!t){throw new Error("Not a valid Edm.DateTimeOffset value: "+e)}return t},parseTimeOfDay:function(e){var t;if(f.test(e)){if(e.length>12){e=e.slice(0,12)}t=u.parse(e)}if(!t){throw new Error("Not a valid Edm.TimeOfDay value: "+e)}return t},serializeBatchRequest:function(e,t){return r.serializeBatchRequest(e,t)}};m._setDateTimeFormatter();return m},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/SubmitMode", function(){"use strict";var t={API:"API",Auto:"Auto",Direct:"Direct"};return t},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/ValueListType", function(){"use strict";var e={None:"None",Fixed:"Fixed",Standard:"Standard"};return e},true);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/_AnnotationHelperExpression", ["../_AnnotationHelperBasics","sap/base/Log","sap/ui/base/BindingParser","sap/ui/base/ManagedObject","sap/ui/base/SyncPromise","sap/ui/performance/Measurement"],function(e,t,n,r,a,i){"use strict";var s="sap.ui.model.odata.v4.AnnotationHelper",u=[s],o=s+"/getExpression",l=/^{@i18n>[^\\{}:]+}$/,c={And:"&&",Eq:"===",Ge:">=",Gt:">",Le:"<=",Lt:"<",Ne:"!==",Not:"!",Or:"||"},p=false,f={"Edm.Boolean":"boolean","Edm.Byte":"number","Edm.Date":"Date","Edm.DateTimeOffset":"DateTimeOffset","Edm.Decimal":"Decimal","Edm.Double":"number","Edm.Guid":"string","Edm.Int16":"number","Edm.Int32":"number","Edm.Int64":"Decimal","Edm.SByte":"number","Edm.Single":"number","Edm.String":"string","Edm.TimeOfDay":"TimeOfDay"},m={Bool:"Edm.Boolean",Float:"Edm.Double",Date:"Edm.Date",DateTimeOffset:"Edm.DateTimeOffset",Decimal:"Edm.Decimal",Guid:"Edm.Guid",Int:"Edm.Int64",Int32:"Edm.Int32",String:"Edm.String",TimeOfDay:"Edm.TimeOfDay"},d={boolean:false,Date:false,DateTimeOffset:true,Decimal:true,number:false,string:false,TimeOfDay:false},y;function g(e,t){return a.resolve().then(function(){h(e,t)})}function h(t,n){e.error(t,n,s)}y={adjustOperands:function(e,t){if(e.result!=="constant"&&e.category==="number"&&t.result==="constant"&&t.type==="Edm.Int64"){t.category="number"}if(e.result!=="constant"&&e.category==="Decimal"&&t.result==="constant"&&t.type==="Edm.Int32"){t.category="Decimal";t.type=e.type}},apply:function(t,n){var r=e.descend(t,"$Function","string");switch(r.value){case"odata.concat":return y.concat(n);case"odata.fillUriTemplate":return y.fillUriTemplate(n);case"odata.uriEncode":return y.uriEncode(n);default:return g(r,"unknown function: "+r.value)}},collection:function(t){var n;e.expectType(t,"array");n=t.value.map(function(n,r){return y.expression(e.descend(t,r,true),true)});return a.all(n).then(function(t){t=t.map(function(t){return e.resultToString(t,true,false,true)});return{result:"expression",value:"odata.collection(["+t.join(",")+"])"}})},concat:function(t){var n;e.expectType(t,"array");n=t.value.map(function(e,n){return y.parameter(t,n)});return a.all(n).then(function(n){var r,a,i;r=t.asExpression||n.some(function(e){return e.result==="expression"});a=n.filter(function(e){return e.type!=="edm:Null"}).map(function(n){if(r){y.wrapExpression(n)}return e.resultToString(n,r,t.complexBinding)});i=r?{result:"expression",value:a.join("+")}:{result:"composite",value:a.join("")};i.type="Edm.String";return i})},conditional:function(t,n){var r=t.complexBinding,i=r?Object.assign({},t,{complexBinding:false}):t;function s(t,n,r){return e.resultToString(y.wrapExpression(t),true,n,r)}return a.all([y.parameter(i,0,"Edm.Boolean"),y.parameter(t,1),n&&t.value.length===2?{result:"constant",type:"edm:Null",value:undefined}:y.parameter(t,2)]).then(function(e){var n=e[0],a=e[1],i=e[2],u=a.type;if(a.type==="edm:Null"){u=i.type}else if(i.type!=="edm:Null"&&a.type!==i.type){h(t,"Expected same type for second and third parameter, types are '"+a.type+"' and '"+i.type+"'")}return{result:"expression",type:u,value:s(n,false,true)+"?"+s(a,r)+":"+s(i,r)}})},constant:function(e,t){var n=e.value;if(t==="String"){if(l.test(n)){return{ignoreTypeInPath:true,result:"binding",type:"Edm.String",value:n.slice(1,-1)}}}return{result:"constant",type:m[t],value:n}},expression:function(t,n){var r=t.value,i=t,s;if(r===null){s="Null"}else if(typeof r==="boolean"){s="Bool"}else if(typeof r==="number"){s=isFinite(r)&&Math.floor(r)===r?"Int32":"Float"}else if(typeof r==="string"){s="String"}else if(Array.isArray(r)){return y.collection(t)}else{e.expectType(t,"object");if(r.$kind==="Property"){t.value=t.model.getObject(t.path+"@sapui.name");return y.path(t)}["$And","$Apply","$Date","$DateTimeOffset","$Decimal","$Float","$Eq","$Ge","$Gt","$Guid","$If","$Int","$Le","$Lt","$Name","$Ne","$Not","$Null","$Or","$Path","$PropertyPath","$TimeOfDay","$LabeledElement"].forEach(function(n){if(n in r){s=n.slice(1);i=e.descend(t,n)}})}switch(s){case"Apply":return y.apply(t,i);case"If":return y.conditional(i,n);case"Name":case"Path":case"PropertyPath":return y.path(i);case"Date":case"DateTimeOffset":case"Decimal":case"Guid":case"Int":case"String":case"TimeOfDay":e.expectType(i,"string");case"Bool":case"Float":case"Int32":return a.resolve(y.constant(i,s));case"And":case"Eq":case"Ge":case"Gt":case"Le":case"Lt":case"Ne":case"Or":return y.operator(i,s);case"Not":return y.not(i);case"Null":return a.resolve({result:"constant",type:"edm:Null",value:null});default:return g(t,"Unsupported OData expression")}},fetchCurrencyOrUnit:function(t,n,r,a){var i="sap.ui.model.odata.type.Unit",s="@@requestUnitsOfMeasure",u=t.model,o=t.path+"@Org.OData.Measures.V1.Unit/$Path",l=u.getObject(o);function c(n,r,a){return e.resultToString(y.pathResult(t,r,a,n),false,true)}if(!l){i="sap.ui.model.odata.type.Currency";s="@@requestCurrencyCodes";o=t.path+"@Org.OData.Measures.V1.ISOCurrency/$Path";l=u.getObject(o)}if(!l){return undefined}return u.fetchObject(o+"/$").then(function(e){var p=u.getObject(t.path+"@com.sap.vocabularies.UI.v1.DoNotCheckScaleOfMeasuredQuantity")?",constraints:{'skipDecimalsValidation':true}":"";return{result:"composite",type:i,value:(f[r]==="number"?"{formatOptions:{parseAsString:false},":"{")+"mode:'TwoWay',parts:["+c(a,r,n)+","+c(u.getConstraints(e,o),e.$Type,l)+",{mode:'OneTime',path:'/##"+s+"',targetType:'any'}"+"],type:'"+i+"'"+p+"}"}})},fetchDateTimeWithTimezone:function(t,n,r){var a=t.model,i=t.path+"@com.sap.vocabularies.Common.v1.Timezone/$Path",s=a.getObject(i);function u(n,r,a){return e.resultToString(y.pathResult(t,r,a,n),false,true)}if(!s){return undefined}return a.fetchObject(i+"/$").then(function(e){return{result:"composite",type:"sap.ui.model.odata.type.DateTimeWithTimezone",value:"{mode:'TwoWay',parts:["+u(r,"Edm.DateTimeOffset",n)+","+u(a.getConstraints(e,i),e.$Type,s)+"],type:'sap.ui.model.odata.type.DateTimeWithTimezone'}"}})},fillUriTemplate:function(t){var n=[],r,i;t.complexBinding=false;r=[y.parameter(t,0,"Edm.String")];for(i=1;i<t.value.length;i+=1){n[i]=e.descend(t,i,"object");r.push(y.expression(e.descend(n[i],"$LabeledElement",true)))}return a.all(r).then(function(r){var a,s=[],u="";s.push("odata.fillUriTemplate(",e.resultToString(r[0],true,false,true),",{");for(i=1;i<t.value.length;i+=1){a=e.property(n[i],"$Name","string");s.push(u,e.toJSON(a),":",e.resultToString(r[i],true,false,true));u=","}s.push("})");return{result:"expression",type:"Edm.String",value:s.join("")}})},formatOperand:function(t,n){if(t.result==="constant"){switch(t.category){case"boolean":case"number":return String(t.value)}}if(n){y.wrapExpression(t)}return e.resultToString(t,true,false,true)},getExpression:function(a){if(a.value===undefined){return undefined}i.average(o,"",u);if(!p&&r.bindingParser===n.simpleParser){t.warning("Complex binding syntax not active",null,s);p=true}return y.expression(a).then(function(t){return e.resultToString(t,false,a.complexBinding)},function(t){if(t instanceof SyntaxError){return"Unsupported: "+n.complexParser.escape(e.toErrorString(a.value))}throw t}).finally(function(){i.end(o)}).unwrap()},not:function(t){t.asExpression=true;t.complexBinding=false;return y.expression(t).then(function(t){return{result:"expression",type:"Edm.Boolean",value:"!"+e.resultToString(y.wrapExpression(t),true,false,true)}})},operator:function(e,t){var n=t==="And"||t==="Or"?"Edm.Boolean":undefined;e.complexBinding=false;return a.all([y.parameter(e,0,n),y.parameter(e,1,n)]).then(function(n){var r,a=n[0],i=n[1],s="",u,o;if(a.type!=="edm:Null"&&i.type!=="edm:Null"){a.category=f[a.type];i.category=f[i.type];y.adjustOperands(a,i);y.adjustOperands(i,a);if(a.category!==i.category){h(e,"Expected two comparable parameters but instead saw "+a.type+" and "+i.type)}switch(a.category){case"Decimal":s=",'Decimal'";break;case"DateTimeOffset":s=",'DateTime'";break}r=d[a.category]}u=y.formatOperand(a,!r);o=y.formatOperand(i,!r);return{result:"expression",type:"Edm.Boolean",value:r?"odata.compare("+u+","+o+s+")"+c[t]+"0":u+c[t]+o}})},parameter:function(t,n,r){var a=e.descend(t,n,true);return y.expression(a).then(function(e){if(r&&r!==e.type){h(a,"Expected "+r+" but instead saw "+e.type)}return e})},path:function(t){var n=t.ignoreAsPrefix,r=t.model,i,s=t.value;if(n&&s.startsWith(n)){s=s.slice(n.length)}e.expectType(t,"string");i=r.fetchObject(t.path+"/$");if(i.isPending()&&!t.$$valueAsPromise){i.caught();i=a.resolve()}return i.then(function(e){var n,a,i=e&&e.$Type;if(e&&t.complexBinding){a=r.getConstraints(e,t.path);n=i==="Edm.DateTimeOffset"?y.fetchDateTimeWithTimezone(t,s,a):y.fetchCurrencyOrUnit(t,s,i,a)}return n||y.pathResult(t,i,s,a)})},pathResult:function(e,t,n,r){return{constraints:r,formatOptions:t==="Edm.String"?Object.assign({parseKeepsEmptyString:true},e.formatOptions):e.formatOptions,parameters:e.parameters,result:"binding",type:t,value:e.prefix+n}},uriEncode:function(t){return y.parameter(t,0).then(function(t){return{result:"expression",type:"Edm.String",value:t.type==="Edm.String"?"odata.uriEncode("+e.resultToString(t,true,false,true)+","+e.toJSON(t.type)+")":"String("+e.resultToString(t,true,false,true)+")"}})},wrapExpression:function(e){if(e.result==="expression"){e.value="("+e.value+")"}return e}};return y},false);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/lib/_AggregationCache", ["./_AggregationHelper","./_Cache","./_ConcatHelper","./_GroupLock","./_Helper","./_MinMaxHelper","./_TreeState","sap/base/Log","sap/ui/base/SyncPromise","sap/ui/model/odata/ODataUtils"],function(e,t,n,i,o,r,s,a,l,d){"use strict";function u(i,r,a,d,u){var c=function(){},h=null,f,g=this;t.call(this,i,r,d,true);this.oAggregation=a;this.sToString=this.getDownloadUrl("");this.aElements=[];this.aElements.$byPredicate={};this.aElements.$count=undefined;this.aElements.$created=0;this.oCountPromise=undefined;if(d.$count){if(a.hierarchyQualifier){this.oCountPromise=new l(function(e){f=e});this.oCountPromise.$resolve=f}else if(a.groupLevels.length){d.$$leaves=true;this.oCountPromise=new l(function(e){h=function(t){e(parseInt(t.UI5__leaves))}})}}this.oFirstLevel=this.createGroupLevelCache(null,u||!!h);this.addKeptElement=this.oFirstLevel.addKeptElement;this.removeKeptElement=this.oFirstLevel.removeKeptElement;this.requestSideEffects=this.oFirstLevel.requestSideEffects;this.oGrandTotalPromise=undefined;if(u){this.oGrandTotalPromise=new l(function(t){n.enhanceCache(g.oFirstLevel,a,[h,function(n){var i;if(a["grandTotal like 1.84"]){e.removeUI5grand__(n)}e.setAnnotations(n,true,true,0,e.getAllProperties(a));if(a.grandTotalAtBottomOnly===false){i=Object.assign({},n,{"@$ui5.node.isExpanded":undefined});o.setPrivateAnnotation(n,"copy",i);o.setPrivateAnnotation(i,"predicate","($isTotal=true)")}o.setPrivateAnnotation(n,"predicate","()");t(n)},c])})}else if(h){n.enhanceCache(g.oFirstLevel,a,[h,c])}this.oTreeState=new s(a.$NodeProperty,e=>o.getKeyFilter(e,this.sMetaPath,this.getTypes()));this.bUnifiedCache=this.oAggregation.expandTo>=Number.MAX_SAFE_INTEGER||!!this.oAggregation.createInPlace}u.prototype=Object.create(t.prototype);u.prototype.addTransientCollection=null;u.prototype._delete=function(e,n,i,r,s){let a=parseInt(i);if(isNaN(a)){throw new Error(`Unsupported kept-alive entity: ${this.sResourcePath}${i}`)}const d=this.aElements[a];const u=o.getPrivateAnnotation(d,"predicate");if(d["@$ui5.node.isExpanded"]){throw new Error(`Unsupported expanded node: ${this.sResourcePath}${u}`)}const c=o.getPrivateAnnotation(d,"parent");if(d["@$ui5.context.isTransient"]){return c._delete(e,n,o.getPrivateAnnotation(d,"transientPredicate"))}return l.resolve(this.oRequestor.request("DELETE",n,e,{"If-Match":d})).then(()=>{this.oTreeState.delete(d);a=t.getElementIndex(this.aElements,u,a);const e=c.removeElement(o.getPrivateAnnotation(d,"rank",0),u);const n=o.getPrivateAnnotation(d,"descendants",0);for(let t=0;t<n;t+=1){c.removeElement(e)}const i=n+1;if(c===this.oFirstLevel){this.adjustDescendantCount(d,a,-i)}else if(!c.getValue("$count")){this.makeLeaf(this.aElements[a-1])}this.shiftRank(a,-i);this.removeElement(a,u);s(a,-1)})};u.prototype.addElements=function(t,n,i,r){var s=this.aElements,a=this.oAggregation.hierarchyQualifier,d=this.oAggregation.$NodeProperty,u=this;function c(t,c){var h=s[n+c],f,g=o.getPrivateAnnotation(t,"predicate"),p=o.getPrivateAnnotation(t,"transientPredicate");if(h){if(h===t){return}e.beforeOverwritePlaceholder(h,t,i,r===undefined?undefined:r+c,d)}else if(n+c>=s.length){throw new Error("Array index out of bounds: "+(n+c))}f=s.$byPredicate[g];if(f&&f!==t&&!(f instanceof l)){if(!a||s.includes(f)){const e=i.fixDuplicatePredicate(t,g);if(e){g=e;f=t}else{throw new Error("Duplicate key predicate: "+g)}}if(!f["@odata.etag"]||t["@odata.etag"]===f["@odata.etag"]){o.updateNonExisting(t,f)}else if(u.hasPendingChangesForPath(g)){throw new Error("Modified on client and on server: "+u.sResourcePath+g)}else{o.copySelected(f,t)}}if(g){s.$byPredicate[g]=t}if(p){s.$byPredicate[p]=t}s[n+c]=t;if(i){o.setPrivateAnnotation(t,"parent",i)}if(p){r-=1}else{o.setPrivateAnnotation(t,"rank",r+c)}}if(n<0){throw new Error("Illegal offset: "+n)}if(Array.isArray(t)){t.forEach(c)}else{c(t,0)}};u.prototype.adjustDescendantCount=function(e,t,n){let i=e["@$ui5.node.level"];let r=false;for(let e=t-1;e>=0&&i>1;e-=1){const s=this.aElements[e];const a=s["@$ui5.node.level"];if(a===0){r=true}else if(a<i){if(!r||this.isAncestorOf(e,t)){const i=o.getPrivateAnnotation(s,"descendants",0)+n;o.setPrivateAnnotation(s,"descendants",i);if(i===0){this.makeLeaf(s)}t=e;r=false}i=a}}};u.prototype.beforeRequestSideEffects=function(e){if(!this.oAggregation.hierarchyQualifier){throw new Error("Missing recursive hierarchy")}delete e.$apply;if(!e.$select.includes(this.oAggregation.$NodeProperty)){e.$select.push(this.oAggregation.$NodeProperty)}};u.prototype.beforeUpdateSelected=function(t,n){e.checkNodeProperty(this.aElements.$byPredicate[t],n,this.oAggregation.$NodeProperty,true)};u.prototype.collapse=function(t,n,i,r){const s=this.getValue(t);const a=e.getCollapsedObject(s);o.updateAll(i?{}:this.mChangeListeners,t,s,a);const l=!!n;this.oTreeState.collapse(s,l,r);const d=this.aElements;const u=d.indexOf(s);let c=this.countDescendants(s,u);if(this.oAggregation.subtotalsAtBottomOnly!==undefined&&Object.keys(a).length>1){c+=1}let h=c;for(let e=u+1;e<u+1+h;e+=1){const t=d[e];if(o.hasPrivateAnnotation(t,"placeholder")){continue}if(l&&t["@$ui5.node.isExpanded"]){h-=this.collapse(o.getPrivateAnnotation(t,"predicate"),n,i,true)}if(!this.isSelectionDifferent(t)){delete d.$byPredicate[o.getPrivateAnnotation(t,"predicate")];delete d.$byPredicate[o.getPrivateAnnotation(t,"transientPredicate")]}}const f=d.splice(u+1,h);const g=s["@$ui5.node.level"];if(!l||!this.bUnifiedCache&&g>=this.oAggregation.expandTo){f.$level=g;f.$rank=o.getPrivateAnnotation(s,"rank");o.setPrivateAnnotation(s,"spliced",f)}d.$count-=h;if(l&&!r){this.validateAndDeleteExpandInfo(n,s)}return c};u.prototype.countDescendants=function(e,t){var n;const i=e["@$ui5.node.level"];const r=this.bUnifiedCache?Infinity:this.oAggregation.expandTo;let s=o.getPrivateAnnotation(e,"descendants");for(n=t+1;n<this.aElements.length;n+=1){const e=this.aElements[n];const t=e["@$ui5.node.level"];const a=t===0&&o.hasPrivateAnnotation(e,"placeholder");if(!a&&t<=i){break}if(t<=r&&o.hasPrivateAnnotation(e,"rank")){if(!s){break}s-=1;if(e["@$ui5.node.isExpanded"]===false){s-=o.getPrivateAnnotation(e,"descendants",0)}}}return n-(t+1)};u.prototype.create=function(e,t,n,i,r,s,a,l){if(s){throw new Error("Unsupported bAtEndOfCreated")}const d=r["@$ui5.node.parent"];delete r["@$ui5.node.parent"];const u=d?.slice(d.indexOf("("));const c=this.aElements;const h=c.$byPredicate[u];if(h?.["@$ui5.node.isExpanded"]===false){throw new Error("Unsupported collapsed parent: "+d)}const f=h?h["@$ui5.node.level"]+1:1;let g=f>this.oAggregation.expandTo&&!this.oAggregation.createInPlace?o.getPrivateAnnotation(h,"cache"):this.oFirstLevel;if(!g){g=this.createGroupLevelCache(h);g.setEmpty();o.setPrivateAnnotation(h,"cache",g)}o.addByPath(this.mPostRequests,i,r);const p=c.indexOf(h)+1;const P=g.create(e,t,n,i,r,s,a,l,()=>{o.removeByPath(this.mPostRequests,i,r);if(this.oAggregation.createInPlace){return}c.$count-=1;delete c.$byPredicate[i];c.splice(p,1)});if(d){o.getPrivateAnnotation(r,"postBody")[this.oAggregation.$ParentNavigationProperty+"@odata.bind"]=o.makeRelativeUrl("/"+d,"/"+this.sResourcePath)}const v=h&&h["@$ui5.node.isExpanded"]===undefined;const m=v&&h?.["@$ui5.node.level"]>=this.oAggregation.expandTo;if(m){this.oTreeState.expand(h)}const $=(e,t)=>{if(v){o.updateAll(this.mChangeListeners,u,h,{"@$ui5.node.isExpanded":true})}r["@$ui5.node.level"]=f;c.splice(e,0,null);this.addElements(r,e,g,t);c.$count+=1};const y=(e,t)=>{g.removeElement(0);o.deletePrivateAnnotation(r,"transientPredicate");delete c.$byPredicate[i];if(t!==undefined){this.adjustDescendantCount(r,e,+1);g.restoreElement(t,r);o.setPrivateAnnotation(r,"rank",t);this.shiftRank(e,+1)}};if(this.oAggregation.createInPlace){return P.then(async()=>{o.removeByPath(this.mPostRequests,i,r);delete r["@$ui5.context.isTransient"];const[t]=await Promise.all([this.requestRank(r,e),this.requestNodeProperty(r,e)]);if(m){o.setPrivateAnnotation(r,"rank",t)}else if(t===undefined){g.removeElement(0)}else{$(t,t);y(t,t)}return r})}$(p,undefined);return P.then(async()=>{o.removeByPath(this.mPostRequests,i,r);c.$byPredicate[o.getPrivateAnnotation(r,"predicate")]=r;r["@$ui5.node.level"]=f;this.oTreeState.setOutOfPlace(r,h);if(g===this.oFirstLevel&&this.oAggregation.expandTo>1){const[t]=await Promise.all([this.requestRank(r,e),this.requestNodeProperty(r,e,true)]);y(p,t)}else{await this.requestNodeProperty(r,e,true)}return r})};u.prototype.createGroupLevelCache=function(n,i){var r=this.oAggregation,s=n?n["@$ui5.node.level"]+1:1,a,l,d,c,h,f,g;if(r.hierarchyQualifier){f=Object.assign({},this.mQueryOptions)}else{a=e.getAllProperties(r);c=s>r.groupLevels.length;d=c?r.groupLevels.concat(Object.keys(r.group).sort()):r.groupLevels.slice(0,s);f=e.filterOrderby(this.mQueryOptions,r,s);g=!c&&Object.keys(r.aggregate).some(function(e){return r.aggregate[e].subtotals})}if(n){h=o.getPrivateAnnotation(n,"filter")||o.getKeyFilter(n,this.sMetaPath,this.getTypes());f.$$filterBeforeAggregate=h+(f.$$filterBeforeAggregate?" and ("+f.$$filterBeforeAggregate+")":"")}if(!i){delete f.$count;f=e.buildApply(r,f,s)}f.$count=true;l=t.create(this.oRequestor,this.sResourcePath,f,true);l.calculateKeyPredicate=r.hierarchyQualifier?u.calculateKeyPredicateRH.bind(null,n,r):u.calculateKeyPredicate.bind(null,n,d,a,c,g);if(h){l.$parentFilter=h}if(!r.hierarchyQualifier){l.fixDuplicatePredicate=u.fixDuplicatePredicate.bind(l)}return l};u.prototype.expand=function(t,n,r,s){var a,d=typeof n==="string"?this.getValue(n):n,u=o.getPrivateAnnotation(d,"spliced"),c=this;if(n!==d){o.updateAll(this.mChangeListeners,n,d,e.getOrCreateExpandedObject(this.oAggregation,d));this.oTreeState.expand(d,r)}if(r>=Number.MAX_SAFE_INTEGER){return l.resolve(this.validateAndDeleteExpandInfo(t,d)).then(()=>-1)}if(u){o.deletePrivateAnnotation(d,"spliced");const e=this.aElements;const t=e.indexOf(d)+1;this.aElements=e.concat(u,e.splice(t));this.aElements.$byPredicate=e.$byPredicate;a=u.length;this.aElements.$count=e.$count+a;o.copySelected(e,this.aElements);const n=d["@$ui5.node.level"]-u.$level;const r=o.getPrivateAnnotation(d,"rank")-u.$rank;u.forEach(function(e){var t=o.getPrivateAnnotation(e,"predicate");if(e["@$ui5.node.level"]){e["@$ui5.node.level"]+=n}if(o.getPrivateAnnotation(e,"parent")===c.oFirstLevel){const t=o.getPrivateAnnotation(e,"rank");if(t!==undefined){o.setPrivateAnnotation(e,"rank",t+r)}}if(!o.hasPrivateAnnotation(e,"placeholder")){if(u.$stale&&!c.isSelectionDifferent(e)){c.turnIntoPlaceholder(e,t)}else{c.aElements.$byPredicate[t]=e;const n=o.getPrivateAnnotation(e,"transientPredicate");if(n){c.aElements.$byPredicate[n]=e}if(o.hasPrivateAnnotation(e,"expanding")){o.deletePrivateAnnotation(e,"expanding");a+=c.expand(i.$cached,e).getResult()}}}});return l.resolve(a)}if(this.bUnifiedCache||r>1||d["@$ui5.node.level"]<this.oAggregation.expandTo){return l.resolve(-1)}let h=o.getPrivateAnnotation(d,"cache");if(!h){h=this.createGroupLevelCache(d);o.setPrivateAnnotation(d,"cache",h)}return h.read(0,this.iReadLength,0,t,s).then(function(t){var i=c.aElements.indexOf(d)+1,r=d["@$ui5.node.level"],s=e.getCollapsedObject(d),l=c.oAggregation.subtotalsAtBottomOnly!==undefined&&Object.keys(s).length>1,u;if(!d["@$ui5.node.isExpanded"]){o.deletePrivateAnnotation(d,"spliced");return 0}if(!i){o.setPrivateAnnotation(d,"expanding",true);return 0}a=t.value.$count;if(o.hasPrivateAnnotation(d,"groupLevelCount")&&o.getPrivateAnnotation(d,"groupLevelCount")!==a){throw new Error("Unexpected structural change: groupLevelCount")}o.setPrivateAnnotation(d,"groupLevelCount",a);o.updateAll(c.mChangeListeners,n,d,{"@$ui5.node.groupLevelCount":a});if(l){a+=1}if(i===c.aElements.length){c.aElements.length+=a}else{for(u=c.aElements.length-1;u>=i;u-=1){c.aElements[u+a]=c.aElements[u];delete c.aElements[u]}}c.addElements(t.value,i,h,0);for(u=i+t.value.length;u<i+t.value.$count;u+=1){c.aElements[u]=e.createPlaceholder(r+1,u-i,h)}if(l){s=Object.assign({},s);e.setAnnotations(s,undefined,true,r,e.getAllProperties(c.oAggregation));o.setPrivateAnnotation(s,"predicate",o.getPrivateAnnotation(d,"predicate").slice(0,-1)+",$isTotal=true)");c.addElements(s,i+a-1)}c.aElements.$count+=a;return a},function(t){o.updateAll(c.mChangeListeners,n,d,e.getCollapsedObject(d));c.oTreeState.collapse(d);throw t})};u.prototype.fetchParentIndex=function(e,t){const n=this.aElements[e]["@$ui5.node.level"];for(let t=e-1;t>=0;t-=1){const i=this.aElements[t]["@$ui5.node.level"];if(i===0){break}if(i===n){e=t}}const i=this.aElements[e];let r=o.getPrivateAnnotation(i,"parentIndexPromise");if(r){return r}const s=o.getKeyFilter(i,this.sMetaPath,this.getTypes());const a=Object.assign({},this.mQueryOptions);a.$apply="ancestors($root"+this.oAggregation.$path+","+this.oAggregation.hierarchyQualifier+","+this.oAggregation.$NodeProperty+",filter("+s+"),1)";const d=this.sResourcePath+this.oRequestor.buildQueryString(null,a);r=this.oRequestor.request("GET",d,t).then(async e=>{const n=e.value[0];const i=this.aElements.$byPredicate[o.getKeyPredicate(n,this.sMetaPath,this.getTypes())];if(i&&o.getPrivateAnnotation(i,"rank")!==undefined){return this.aElements.indexOf(i)}o.setPrivateAnnotation(n,"parent",this.oFirstLevel);const r=[this.oAggregation.$DistanceFromRoot,this.oAggregation.$DrillState,this.oAggregation.$LimitedDescendantCount];const[s]=await Promise.all([this.requestRank(n,t),this.requestProperties(n,r,t,true),this.requestNodeProperty(n,t,false)]);this.oFirstLevel.calculateKeyPredicate(n,this.getTypes(),this.sMetaPath);const a=this.findIndex(s);if(o.hasPrivateAnnotation(this.aElements[a],"placeholder")){this.insertNode(n,s,a)}return a}).finally(()=>{o.deletePrivateAnnotation(i,"parentIndexPromise")});r=l.resolve(r);o.setPrivateAnnotation(i,"parentIndexPromise",r);return r};u.prototype.fetchValue=function(e,t,n,i){var o=this;if(t==="$count"){if(this.oCountPromise){return this.oCountPromise}if(this.oAggregation.hierarchyQualifier||this.oAggregation.groupLevels.length){a.error("Failed to drill-down into $count, invalid segment: $count",this.toString(),"sap.ui.model.odata.v4.lib._Cache");return l.resolve()}return this.oFirstLevel.fetchValue(e,t,n,i)}return l.resolve(this.aElements.$byPredicate[t.split("/")[0]]).then(function(){o.registerChangeListener(t,i);return o.drillDown(o.aElements,t,e)})};u.prototype.findIndex=function(e,t=this.oFirstLevel){return this.aElements.findIndex(n=>o.getPrivateAnnotation(n,"rank")===e&&o.getPrivateAnnotation(n,"parent")===t)};u.prototype.get1stInPlaceChildIndex=function(e){let t=e+1;while(this.aElements[t]?.["@$ui5.context.isTransient"]!==undefined){t+=1}const n=this.aElements[t];if(!n){return[-1]}const i=n["@$ui5.node.level"];const r=e>=0?this.aElements[e]["@$ui5.node.level"]+1:1;const s=o.hasPrivateAnnotation(n,"placeholder");return i===r||i===0?[t,s,r]:[-1]};u.prototype.getCreatedElements=function(e){return[]};u.prototype.getDownloadQueryOptions=function(t){if(this.oAggregation.hierarchyQualifier){if("$count"in t){t=Object.assign({},t);delete t.$count}}else{t=e.filterOrderby(t,this.oAggregation)}return e.buildApply(this.oAggregation,t,0,true)};u.prototype.getElements=function(e,t,n){if(e){throw new Error("Unsupported path: "+e)}const i=this.aElements.slice(t,n).map(e=>o.hasPrivateAnnotation(e,"placeholder")?undefined:e);i.$count=this.aElements.$count;return i};u.prototype.getInsertIndex=function(e){var t;for(t=0;t<this.aElements.length;t+=1){const n=this.aElements[t];if(o.getPrivateAnnotation(n,"rank")>e&&!this.oTreeState.isOutOfPlace(o.getPrivateAnnotation(n,"predicate"))){return t}}return t};u.prototype.getParentIndex=function(e){const t=this.aElements[e]["@$ui5.node.level"];if(t<=1){return-1}let n=false;for(let i=e;i>=0;i-=1){const o=this.aElements[i];const r=o["@$ui5.node.level"];if(r===0){n=true}else if(r<t){if(r===t-1&&(!n||this.isAncestorOf(i,e))){return i}break}}};u.prototype.getSiblingIndex=function(t,n,i){const r=this.aElements[t];const s=o.getPrivateAnnotation(r,"parent");const a=s!==this.oFirstLevel||this.oAggregation.expandTo===1&&!this.oAggregation.$ExpandLevels;const l=o.getPrivateAnnotation(r,"rank");let d=l+n;if(n<0){if(!a){d=e.findPreviousSiblingIndex(s.aElements,l)}if(d<0){return-1}}else{d+=o.getPrivateAnnotation(r,"descendants",0);if(d>=s.aElements.$count||s.aElements[d]?.["@$ui5.node.level"]<r["@$ui5.node.level"]){return-1}}if(d>=0){const e=this.findIndex(d,s);if(e<0){return-1}const t=this.aElements[e];if(a&&i||!o.hasPrivateAnnotation(t,"placeholder")){if(t["@$ui5.context.isTransient"]!==undefined){return this.getSiblingIndex(e,n,i)}return e}}};u.prototype.getValue=function(e){var t;t=this.fetchValue(i.$cached,e);if(t.isFulfilled()){return t.getResult()}t.caught()};u.prototype.handleOutOfPlaceNodes=function([e,...t]){if(!e){return}const n=e=>o.getKeyPredicate(e,this.sMetaPath,this.getTypes());const i=e=>parseInt(o.drillDown(e,this.oAggregation.$LimitedRank));const r={};e.value.forEach(e=>{r[n(e)]=e});const s=new Set(this.oTreeState.getOutOfPlacePredicates());t.forEach(e=>{e.value.forEach(e=>{const t=n(e);s.delete(t);if(this.aElements.$byPredicate[t]){return}const a=this.oTreeState.getOutOfPlace(t).parentPredicate;const l=r[a];if(l){const e=o.drillDown(l,this.oAggregation.$DrillState);if(e==="collapsed"){return}}else if(a){return}o.merge(e,r[t]);this.oFirstLevel.calculateKeyPredicate(e,this.getTypes(),this.sMetaPath);const d=i(e);o.deleteProperty(e,this.oAggregation.$LimitedRank);this.insertNode(e,d)})});s.forEach(e=>this.oTreeState.deleteOutOfPlace(e));this.oTreeState.getOutOfPlaceGroupedByParent().forEach(e=>{const t=r[e.parentPredicate];this.moveOutOfPlaceNodes(t&&i(t),e.nodePredicates)})};u.prototype.insertNode=function(e,t,n=t){this.addElements(e,n,this.oFirstLevel,t);this.oFirstLevel.removeElement(t);this.oFirstLevel.restoreElement(t,e)};u.prototype.isAncestorOf=function(e,t){if(t===e){return true}if(t<e||!this.aElements[e]["@$ui5.node.isExpanded"]||this.aElements[e]["@$ui5.node.level"]>=this.aElements[t]["@$ui5.node.level"]){return false}return t<=e+this.countDescendants(this.aElements[e],e)};u.prototype.isDeletingInOtherGroup=function(e){return false};u.prototype.isRefreshNeededAfterCreate=function(e){const t=this.aElements[e];return this.oAggregation.createInPlace&&t["@$ui5.node.isExpanded"]===undefined&&t["@$ui5.node.level"]>=this.oAggregation.expandTo};u.prototype.isSelectionDifferent=function(e){return this.oAggregation.hierarchyQualifier&&(e["@$ui5.context.isSelected"]??false)!==(this.aElements["@$ui5.context.isSelected"]??false)};u.prototype.keepOnlyGivenElements=function(t){var n={},i=this;t.forEach(function(e){n[e]=true});return Object.values(this.aElements.$byPredicate).filter(function(t){var r=o.getPrivateAnnotation(t,"predicate");if(!r){return}if(n[r]){e.markSplicedStale(t);n[r]=false;return true}if(!(r in n)){i.turnIntoPlaceholder(t,r)}})};u.prototype.makeLeaf=function(e){o.updateAll(this.mChangeListeners,o.getPrivateAnnotation(e,"predicate"),e,{"@$ui5.node.isExpanded":undefined});delete e["@$ui5.node.isExpanded"];o.deletePrivateAnnotation(e,"descendants")};u.prototype.move=function(e,t,n,r,s,a,d){let u=!this.bUnifiedCache;const c=t.slice(t.indexOf("("));const h=this.aElements.$byPredicate[c];if(!d&&this.oTreeState.isOutOfPlace(c)){this.oTreeState.deleteOutOfPlace(c);delete h["@$ui5.context.isTransient"];u=true}const f=n?.slice(n.indexOf("("));const g=this.aElements.$byPredicate[f];if(this.oTreeState.isOutOfPlace(f)){this.oTreeState.deleteOutOfPlace(f,true);u=true}if(g?.["@$ui5.node.isExpanded"]===false||g?.["@$ui5.node.level"]>=this.oAggregation.expandTo&&!g["@$ui5.node.isExpanded"]){this.oTreeState.expand(g);if(!o.hasPrivateAnnotation(g,"spliced")){u=true}}let p;const P=()=>{if(r!==undefined){u=true;const t=s+"/"+this.oAggregation.$Actions.ChangeNextSiblingAction;const n=r?.slice(r.indexOf("("));p=this.aElements.$byPredicate[n];let i=null;if(p){this.oTreeState.deleteOutOfPlace(n);const e=this.oAggregation.$fetchMetadata(o.getMetaPath("/"+t+"/NextSibling/")).getResult();const r=Object.keys(e).filter(e=>e[0]!=="$");i=r.reduce((e,t)=>{e[t]=p[t];return e},{})}return this.oRequestor.request("POST",t,e.getUnlockedCopy(),{"If-Match":h,Prefer:"return=minimal"},{NextSibling:i})}};let v;if(d){u=true;v=this.oRequestor.request("POST",t+"/"+this.oAggregation.$Actions.CopyAction,e.getUnlockedCopy(),{"If-Match":h,Prefer:"return=minimal"},{});t="$-1"}let m=l.all([this.oRequestor.request("PATCH",t,e,{"If-Match":h,Prefer:"return=minimal"},{[this.oAggregation.$ParentNavigationProperty+"@odata.bind"]:n},null,function e(){}),P(),this.requestRank(h,e,u),a&&this.requestRank(p,e,true),v]);if(u){m=m.then(([,,e,t])=>()=>[e===undefined?undefined:this.findIndex(e),a&&this.findIndex(t)])}else{m=m.then(([e,,t])=>{const n=h["@$ui5.node.isExpanded"]?this.collapse(c):undefined;let r=1;switch(g?g["@$ui5.node.isExpanded"]:true){case false:r=this.expand(i.$cached,f).unwrap()+1;case true:break;default:o.updateAll(this.mChangeListeners,f,g,{"@$ui5.node.isExpanded":true})}const s=this.aElements.indexOf(h);const a=o.getPrivateAnnotation(h,"descendants",0)+1;this.adjustDescendantCount(h,s,-a);this.aElements.splice(s,1);const l=o.getPrivateAnnotation(h,"rank");this.shiftRankForMove(l,a,t);this.oFirstLevel.move(l,t,a);o.updateExisting(this.mChangeListeners,c,h,{"@odata.etag":e["@odata.etag"],"@$ui5.context.isTransient":undefined,"@$ui5.node.level":g?g["@$ui5.node.level"]+1:1});o.deletePrivateAnnotation(h,"rank");const d=this.getInsertIndex(t);this.aElements.splice(d,0,h);this.adjustDescendantCount(h,d,+a);o.setPrivateAnnotation(h,"rank",t);return[r,d,n]})}return{promise:m,refresh:u}};u.prototype.moveOutOfPlaceNodes=function(e,t){const n=e===undefined?-1:this.findIndex(e);t.forEach(e=>{const t=this.aElements.$byPredicate[e];if(t){this.oTreeState.stillOutOfPlace(t,e);const o=t["@$ui5.node.isExpanded"];if(o){this.collapse(e)}const r=this.aElements.indexOf(t);this.aElements.splice(r,1);this.aElements.splice(n+1,0,t);if(o){this.expand(i.$cached,e)}}})};u.prototype.read=function(e,t,n,i,r){var s,a=e,u=t,c,h,f=this.oGrandTotalPromise&&this.oAggregation.grandTotalAtBottomOnly!==true,g=[],p,P=this;function v(e,t){g.push(P.readGap(c,e,t,i.getUnlockedCopy(),r))}if(f&&!e&&t===1){if(n!==0){throw new Error("Unsupported prefetch length: "+n)}i.unlock();return this.oGrandTotalPromise.then(function(e){return{value:[e]}})}if(this.aElements.$count===undefined){this.iReadLength=t+n;if(f){if(a){a-=1}else{u-=1}}g.push(this.readCount(i),this.readFirst(a,u,n,i,r))}else{const r=d._getReadRange(this.aElements,e,t,n,e=>{switch(o.getPrivateAnnotation(e,"placeholder")){case true:return o.getPrivateAnnotation(e,"parent").isMissing(o.getPrivateAnnotation(e,"rank"));case 1:return!(this.aElements.$byPredicate[o.getPrivateAnnotation(e,"predicate")]instanceof l);default:return false}});const a=Math.min(r.start+r.length,this.aElements.length);for(p=r.start;p<a;p+=1){const e=this.aElements[p];s=o.hasPrivateAnnotation(e,"placeholder")?o.getPrivateAnnotation(e,"parent"):undefined;if(s!==c){if(h!==undefined){v(h,p);c=h=undefined}if(s){h=p;c=s}}else if(h!==undefined&&o.getPrivateAnnotation(e,"rank")!==o.getPrivateAnnotation(this.aElements[p-1],"rank")+1){v(h,p);h=p}}if(h!==undefined){v(h,p)}i.unlock()}return l.all(g).then(function(){var n=P.aElements.slice(e,e+t).map(function(e){return o.hasPrivateAnnotation(e,"placeholder")?undefined:e});n.$count=P.aElements.$count;return{value:n}})};u.prototype.readCount=function(e){var t,n=this.oCountPromise&&this.oCountPromise.$resolve,i;if(n){delete this.oCountPromise.$resolve;t=Object.assign({},this.mQueryOptions);delete t.$apply;delete t.$count;delete t.$expand;delete t.$orderby;if(this.oAggregation.search){t.$search=this.oAggregation.search}delete t.$select;i=this.sResourcePath+"/$count"+this.oRequestor.buildQueryString(null,t);return this.oRequestor.request("GET",i,e.getUnlockedCopy()).then(n)}};u.prototype.readFirst=function(t,n,r,s,a){var d=this;n+=r;const u=this.oTreeState.getOutOfPlaceCount();r=Math.max(r,u);if(t>r){n+=r;t-=r}else{n+=t;t=0}const c=this.oFirstLevel.bSentRequest;if(c&&u){s=i.$cached}return l.all([this.oFirstLevel.read(t,n,0,s,a),...c?[]:this.requestOutOfPlaceNodes(s)]).then(function([n,...i]){if(c&&u){return}var r,s,a=0,l;d.aElements.length=d.aElements.$count=n.value.$count;if(d.oGrandTotalPromise){d.aElements.$count+=1;d.aElements.length+=1;r=d.oGrandTotalPromise.getResult();switch(d.oAggregation.grandTotalAtBottomOnly){case false:a=1;d.aElements.$count+=1;d.aElements.length+=1;d.addElements(r,0);s=o.getPrivateAnnotation(r,"copy");d.addElements(s,d.aElements.length-1);break;case true:d.addElements(r,d.aElements.length-1);break;default:a=1;d.addElements(r,0)}}d.addElements(n.value,t+a,d.oFirstLevel,t);for(l=0;l<d.aElements.$count;l+=1){d.aElements[l]??=e.createPlaceholder(d.oAggregation.expandTo>1||d.bUnifiedCache?0:1,l-a,d.oFirstLevel)}d.handleOutOfPlaceNodes(i)})};u.prototype.readGap=function(e,t,n,i,r){const s=this.aElements[t];const a=o.getPrivateAnnotation(s,"rank");if(a===undefined){if(n-t!==1){throw new Error("Not just a single created persisted")}const a=o.getPrivateAnnotation(s,"predicate");const l=e.refreshSingle(i,"",-1,a,true,false,r).then(n=>{o.inheritPathValue(this.oAggregation.$NodeProperty.split("/"),s,n,true);this.addElements(n,t,e)});this.aElements.$byPredicate[a]=l;return l}const l=e.getQueryOptions();if(l.$count){delete l.$count;e.setQueryOptions(l,true)}const d=e.read(a,n-t,0,i,r,true).then(n=>{var i=false,o;if(s!==this.aElements[t]&&n.value[0]!==this.aElements[t]){i=true;t=this.aElements.indexOf(s);if(t<0){t=this.aElements.indexOf(n.value[0]);if(t<0){o=new Error("Collapse before read has finished");o.canceled=true;throw o}}}this.addElements(n.value,t,e,a);if(i){o=new Error("Collapse or expand before read has finished");o.canceled=true;throw o}});if(d.isPending()){for(let e=t;e<n;e+=1){const t=o.getPrivateAnnotation(this.aElements[e],"predicate");if(t){this.aElements.$byPredicate[t]=d}}}return d};u.prototype.refreshKeptElements=function(e,t,n,i){const o=this.oFirstLevel.refreshKeptElements;return o.call(this,e,t,n,true)};u.prototype.requestNodeProperty=async function(e,t,n){if(o.drillDown(e,this.oAggregation.$NodeProperty)!==undefined){return}await this.requestProperties(e,[this.oAggregation.$NodeProperty],t,true,n)};u.prototype.requestOutOfPlaceNodes=function(t){const n=this.oTreeState.getOutOfPlaceGroupedByParent();if(!n.length){return[]}const i=[];const o=e=>{const n=this.sResourcePath+this.oRequestor.buildQueryString(this.sMetaPath,e,false,true);i.push(this.oRequestor.request("GET",n,t.getUnlockedCopy()))};let r=e.getQueryOptionsForOutOfPlaceNodesRank(n,this.oAggregation,this.oFirstLevel.getQueryOptions());o(r);n.forEach(t=>{r=e.getQueryOptionsForOutOfPlaceNodesData(t,this.oAggregation,this.mQueryOptions);o(r)});return i};u.prototype.requestProperties=async function(t,n,i,r,s,a){function l(e){e={...e};delete e.$count;delete e.$expand;delete e.$select;return e}let d;if(a){const t={...this.oAggregation,$ExpandLevels:this.oTreeState.getExpandLevels()};d=l(e.buildApply4Hierarchy(t,this.mQueryOptions))}else{const n=o.getPrivateAnnotation(t,"parent",this.oFirstLevel);d=s?e.dropFilter(this.oAggregation,this.mQueryOptions,n.$parentFilter):l(n.getQueryOptions())}d.$filter=o.getKeyFilter(t,this.sMetaPath,this.getTypes());const u=this.sResourcePath+this.oRequestor.buildQueryString(this.sMetaPath,d,false,true);const c=await this.oRequestor.request("GET",u,i.getUnlockedCopy(),undefined,undefined,undefined,undefined,this.sMetaPath,undefined,false,{$select:n},this);const h=c.value[0];if(r&&h){n.forEach(e=>{o.inheritPathValue(e.split("/"),h,t,true)})}else{return h}};u.prototype.requestRank=async function(e,t,n){const i=await this.requestProperties(e,[this.oAggregation.$LimitedRank],t,false,false,n);return i&&parseInt(o.drillDown(i,this.oAggregation.$LimitedRank))};u.prototype.requestSiblingIndex=async function(e,t,n){const i=this.getSiblingIndex(e,t,true);if(i!==undefined){return i}const r=this.aElements[e];const s={...this.oFirstLevel.mQueryOptions,$filter:this.oAggregation.$LimitedRank+(t<0?" lt ":" gt ")+o.getPrivateAnnotation(r,"rank")+" and "+this.oAggregation.$DistanceFromRoot+" lt "+r["@$ui5.node.level"],$top:1};if(t<0){s.$orderby=this.oAggregation.$LimitedRank+" desc"}s.$select=[...s.$select,this.oAggregation.$LimitedRank];delete s.$count;const a=this.sResourcePath+this.oRequestor.buildQueryString("",s,false,true,true);const l=await this.oRequestor.request("GET",a,n);const d=l.value[0];this.oFirstLevel.calculateKeyPredicate(d,this.getTypes(),this.sMetaPath);const u=parseInt(o.drillDown(d,this.oAggregation.$LimitedRank));o.deleteProperty(d,this.oAggregation.$LimitedRank);if(o.hasPrivateAnnotation(this.aElements[u],"placeholder")){this.insertNode(d,u)}return d["@$ui5.node.level"]===r["@$ui5.node.level"]?u:-1};u.prototype.reset=function(e,t,n,i,r){var s,a=this;if(r){throw new Error("Unsupported grouping via sorter")}e.forEach(function(e){var t=a.aElements.$byPredicate[e];if(o.hasPrivateAnnotation(t,"placeholder")){throw new Error("Unexpected placeholder")}delete t["@$ui5.node.isExpanded"];delete t["@$ui5.node.level"];delete t["@$ui5._"];o.setPrivateAnnotation(t,"predicate",e)});this.oAggregation=i;const d=this.oFirstLevel.reset;d.call(this,e,t,n);this.sToString=this.getDownloadUrl("");if(t){this.oBackup.oCountPromise=this.oCountPromise;this.oBackup.oFirstLevel=this.oFirstLevel;this.oBackup.bUnifiedCache=this.bUnifiedCache;this.bUnifiedCache=true}else{this.oTreeState.reset()}this.oAggregation.$ExpandLevels=this.oTreeState.getExpandLevels();this.oCountPromise=undefined;if(n.$count){this.oCountPromise=new l(function(e){s=e});this.oCountPromise.$resolve=s}this.oFirstLevel=this.createGroupLevelCache()};u.prototype.resetOutOfPlace=function(){this.oTreeState.resetOutOfPlace()};u.prototype.restore=function(e){if(e){this.oCountPromise=this.oBackup.oCountPromise;this.oFirstLevel=this.oBackup.oFirstLevel;this.bUnifiedCache=this.oBackup.bUnifiedCache}const t=this.oFirstLevel.restore;t.call(this,e)};u.prototype.shiftRank=function(e,t){const n=this.aElements[e];const i=o.getPrivateAnnotation(n,"rank");if(i===undefined){return}const r=o.getPrivateAnnotation(n,"parent");if(r===this.oFirstLevel){e=-1}for(let s=e+1;s<this.aElements.length;s+=1){const e=this.aElements[s];if(e===n){continue}if(o.getPrivateAnnotation(e,"parent")===r){const n=o.getPrivateAnnotation(e,"rank");if(n>=i){o.setPrivateAnnotation(e,"rank",n+t)}}if(r!==this.oFirstLevel&&e["@$ui5.node.level"]<n["@$ui5.node.level"]){break}}};u.prototype.shiftRankForMove=function(e,t,n){if(e<n){this.aElements.forEach(i=>{const r=o.getPrivateAnnotation(i,"rank");if(e+t<=r&&r<n+t){o.setPrivateAnnotation(i,"rank",r-t)}})}else if(n<e){this.aElements.forEach(i=>{const r=o.getPrivateAnnotation(i,"rank");if(n<=r&&r<e){o.setPrivateAnnotation(i,"rank",r+t)}})}};u.prototype.toString=function(){return this.sToString};u.prototype.turnIntoPlaceholder=function(t,n){if(o.hasPrivateAnnotation(t,"placeholder")){return}o.setPrivateAnnotation(t,"placeholder",1);e.markSplicedStale(t);delete this.aElements.$byPredicate[n];const i=o.getPrivateAnnotation(t,"rank");if(i!==undefined){o.getPrivateAnnotation(t,"parent").drop(i,n,true)}};u.prototype.validateAndDeleteExpandInfo=async function(t,n){const i=this.oTreeState.getExpandFilters(e=>{const t=this.aElements.$byPredicate[e];return!this.aElements.includes(t)});if(!i.length){return}const r=this.getTypes();let s={...this.mQueryOptions};s.$$filterBeforeAggregate=o.getKeyFilter(n,this.sMetaPath,r);delete s.$count;delete s.$expand;delete s.$orderby;s=e.buildApply4Hierarchy(this.oAggregation,s,true);s.$filter=i.sort().join(" or ");s.$select=[];o.selectKeyProperties(s,r[this.sMetaPath]);s.$top=i.length;const a=this.sResourcePath+this.oRequestor.buildQueryString(this.sMetaPath,s,false,true,true);const l=await this.oRequestor.request("GET",a,this.oRequestor.getUnlockedAutoCopy(t));l.value.forEach(e=>{this.calculateKeyPredicate(e,r,this.sMetaPath);this.oTreeState.deleteExpandInfo(e)})};u.calculateKeyPredicate=function(t,n,i,r,s,a,l,d){var u;if(!(d in l)){return undefined}if(t){i.forEach(function(e){if(Array.isArray(e)){o.inheritPathValue(e,t,a)}else if(!(e in a)){if(t[e+"@$ui5.noData"]){a[e+"@$ui5.noData"]=true}a[e]=t[e]}})}u=r&&o.getKeyPredicate(a,d,l)||o.getKeyPredicate(a,d,l,n,true);o.setPrivateAnnotation(a,"predicate",u);if(!r){o.setPrivateAnnotation(a,"filter",o.getKeyFilter(a,d,l,n))}e.setAnnotations(a,r?undefined:false,s,t?t["@$ui5.node.level"]+1:1,t?null:i);return u};u.calculateKeyPredicateRH=function(t,n,i,r,s){var a,l,d=1,u,c;if(!(s in r)){return undefined}c=o.getKeyPredicate(i,s,r);o.setPrivateAnnotation(i,"predicate",c);if(s!==n.$metaPath){return c}switch(o.drillDown(i,n.$DrillState)){case"expanded":l=true;break;case"collapsed":l=false;break;default:}o.deleteProperty(i,n.$DrillState);if(t){d=t["@$ui5.node.level"]+1}else{a=o.drillDown(i,n.$DistanceFromRoot);if(a){o.deleteProperty(i,n.$DistanceFromRoot);d=parseInt(a)+1}}e.setAnnotations(i,l,undefined,d);if(n.$LimitedDescendantCount){u=o.drillDown(i,n.$LimitedDescendantCount);if(u){o.deleteProperty(i,n.$LimitedDescendantCount);if(u!=="0"){o.setPrivateAnnotation(i,"descendants",parseInt(u))}}}return c};u.create=function(n,i,o,s,a,l,d,c){var h,f;function g(){if("$expand"in s){throw new Error("Unsupported system query option: $expand")}if("$select"in s){throw new Error("Unsupported system query option: $select")}}if(a){h=e.hasGrandTotal(a.aggregate);f=a.groupLevels&&!!a.groupLevels.length;if(e.hasMinOrMax(a.aggregate)){if(h){throw new Error("Unsupported grand totals together with min/max")}if(f){throw new Error("Unsupported group levels together with min/max")}if(a.hierarchyQualifier){throw new Error("Unsupported recursive hierarchy together with min/max")}if(d){throw new Error("Unsupported $$sharedRequest together with min/max")}g();return r.createCache(n,i,a,s)}if(s.$filter&&(h&&!a["grandTotal like 1.84"]||f)){throw new Error("Unsupported system query option: $filter")}if(h||f||a.hierarchyQualifier){if(s.$search){throw new Error("Unsupported system query option: $search")}if(!a.hierarchyQualifier){g()}if(c){throw new Error("Unsupported grouping via sorter")}if(d){throw new Error("Unsupported $$sharedRequest")}return new u(n,i,a,s,h)}}if("$$filterOnAggregate"in s){throw new Error("Unsupported $$filterOnAggregate")}if(s.$$filterBeforeAggregate){s.$apply="filter("+s.$$filterBeforeAggregate+")/"+s.$apply;delete s.$$filterBeforeAggregate}return t.create(n,i,s,l,o,d)};u.fixDuplicatePredicate=function(e,t){if(t==="('')"||t.includes("=''")){a.warning("Duplicate key predicate: "+t,this.toString(),"sap.ui.model.odata.v4.lib._AggregationCache");const n=t.slice(0,-1)+",$duplicate="+o.uid()+")";o.setPrivateAnnotation(e,"predicate",n);if(this.aElements.$byPredicate[t]===e){delete this.aElements.$byPredicate[t];this.aElements.$byPredicate[n]=e}return n}};return u},false);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/lib/_AggregationHelper", ["./_Helper","./_Parser","sap/ui/model/Filter"],function(e,t,r){"use strict";var n=/,|%2C|%2c/,i={aggregate:{"*":{grandTotal:"boolean",max:"boolean",min:"boolean",name:"string",subtotals:"boolean",unit:"string",with:"string"}},"grandTotal like 1.84":"boolean",grandTotalAtBottomOnly:"boolean",group:{"*":{additionally:["string"]}},groupLevels:["string"],search:"string",subtotalsAtBottomOnly:"boolean"},a=Object.freeze({"@$ui5.node.isExpanded":false}),o=Object.freeze({"@$ui5.node.isExpanded":true}),l=new RegExp("^("+t.sODataIdentifier+"(?:/"+t.sODataIdentifier+")*"+")(?:"+t.sWhitespace+"+(?:asc|desc))?$"),s={createInPlace:true,expandTo:/^[1-9]\d*$/,hierarchyQualifier:"string",search:"string"},u="com.sap.vocabularies.Hierarchy.v1.",f;function c(e,t,r,n,i,a,o){var l=e.aggregate[i],s=l.name||i,u=l.unit,f=l.with;if(n){if(f==="average"||f==="countdistinct"){throw new Error("Cannot aggregate totals with '"+f+"'")}s=i;i="UI5grand__"+i}if(f){s+=" with "+f+" as "+i}else if(l.name){s+=" as "+i}r.push(s);if(u&&!r.includes(u)&&!o.includes(u,a+1)&&!t.includes(u)){r.push(u)}}function g(e){var t=[];if(e.$skip){t.push("skip("+e.$skip+")")}delete e.$skip;if(e.$top<Infinity){t.push("top("+e.$top+")")}delete e.$top;return t.join("/")}f={beforeOverwritePlaceholder:function(t,r,n,i,a){var o=e.getPrivateAnnotation(t,"parent");if(!e.hasPrivateAnnotation(t,"placeholder")){throw new Error("Unexpected element")}if(o!==n||e.getPrivateAnnotation(t,"rank")!==i||t["@$ui5.node.level"]!==r["@$ui5.node.level"]&&t["@$ui5.node.level"]!==0){throw new Error("Wrong placeholder")}["descendants","predicate"].forEach(function(n){if(e.hasPrivateAnnotation(t,n)&&e.getPrivateAnnotation(t,n)!==e.getPrivateAnnotation(r,n)){throw new Error("Unexpected structural change: "+n)}});if(a){f.checkNodeProperty(t,r,a)}e.copyPrivateAnnotation(t,"cache",r);e.copyPrivateAnnotation(t,"context",r);e.copyPrivateAnnotation(t,"spliced",r);if("@$ui5.context.isTransient"in t){r["@$ui5.context.isTransient"]=false}if(e.getPrivateAnnotation(t,"placeholder")===1){if(t["@$ui5.node.isExpanded"]===undefined!==(r["@$ui5.node.isExpanded"]===undefined)){throw new Error("Not a leaf anymore (or vice versa)")}if(t["@$ui5.node.isExpanded"]!==undefined){r["@$ui5.node.isExpanded"]=t["@$ui5.node.isExpanded"]}}},buildApply:function(e,t,r,n,i){var a,o="",l=[],s=e["grandTotal like 1.84"],u,d,p,h=[],$,y,v=[];function b(t,r){var n,a=e.aggregate[t];if(a[r]){n="UI5"+r+"__"+t;h.push(t+" with "+r+" as "+n);if(i){i[n]={measure:t,method:r}}}}if(e.hierarchyQualifier){return f.buildApply4Hierarchy(e,t,!r)}t=Object.assign({},t);e.groupLevels??=[];e.group??={};e.groupLevels.forEach(function(t){e.group[t]??={}});y=Object.keys(e.group).sort();if(y.length===e.groupLevels.length){e.groupLevels.pop()}d=!r||r>e.groupLevels.length;u=d?y.filter(function(t){return!e.groupLevels.includes(t)}):[e.groupLevels[r-1]];if(!r){u=e.groupLevels.concat(u)}e.aggregate??={};a=Object.keys(e.aggregate).sort();if(r===1&&!n){a.filter(function(t){return e.aggregate[t].grandTotal}).forEach(c.bind(null,e,[],l,s))}if(!n){a.forEach(function(e){b(e,"min");b(e,"max")})}a.filter(function(t){return d||e.aggregate[t].subtotals}).forEach(c.bind(null,e,u,v,false));if(v.length){o="aggregate("+v.join(",")+")"}if(u.length){u.forEach(function(t){var r=e.group[t].additionally;if(r){u.push.apply(u,r)}});o="groupby(("+u.join(",")+(o?"),"+o+")":"))")}if(n){delete t.$count}else if(t.$count){h.push("$count as UI5__count");delete t.$count}if(t.$filter){o+="/filter("+t.$filter+")";delete t.$filter}if(t.$orderby){o+="/orderby("+t.$orderby+")";delete t.$orderby}$=g(t);if(s&&l.length){if(e.groupLevels.length){throw new Error("Cannot combine visual grouping with grand total")}o+="/concat(aggregate("+l.join(",")+"),aggregate("+h.join(",")+"),"+($||"identity")+")"}else{if(h.length){o+="/concat(aggregate("+h.join(",")+"),"+($||"identity")+")"}else if($){o+="/"+$}if(r===1&&t.$$leaves&&!n){p="groupby(("+y.join(",")+"))/aggregate($count as UI5__leaves)"}delete t.$$leaves;if(l.length){o="concat("+(p?p+",":"")+"aggregate("+l.join(",")+"),"+o+")"}else if(p){o="concat("+p+","+o+")"}}if(t.$$filterOnAggregate){o="groupby(("+y.join(",")+"),filter("+t.$$filterOnAggregate+"))/"+o;delete t.$$filterOnAggregate}if(e.search){o="search("+e.search+")/"+o}if(t.$$filterBeforeAggregate){o="filter("+t.$$filterBeforeAggregate+")/"+o;delete t.$$filterBeforeAggregate}if(o){t.$apply=o}return t},buildApply4Hierarchy:function(e,t,r){let n;function i(r){if(t.$select){let i=e["$"+r];if(!i){n??=e.$fetchMetadata(e.$metaPath+"/@"+u+"RecursiveHierarchy#"+e.hierarchyQualifier).getResult();i=e["$"+r]=n[r+"Property"]?.$PropertyPath??n[r]?.$Path}t.$select.push(i)}}let a=e.$NodeProperty;if(!a){a="???";if(t){const t=e.$fetchMetadata(e.$metaPath+"/@Org.OData.Aggregation.V1.RecursiveHierarchy#"+e.hierarchyQualifier);if(t.isFulfilled()){a=e.$NodeProperty=t.getResult().NodeProperty.$PropertyPath;e.$ParentNavigationProperty=t.getResult().ParentNavigationProperty.$NavigationPropertyPath}}}t=Object.assign({},t);if(t.$select){t.$select=t.$select.slice();if(!t.$select.includes(a)){t.$select.push(a)}e.$Actions??=e.$fetchMetadata(e.$metaPath+"/@"+u+"RecursiveHierarchyActions#"+e.hierarchyQualifier).getResult()}let o="";if(t.$filter||e.search){let r="";if(t.$filter){o="filter("+t.$filter;r=")/";delete t.$filter}if(e.search){o+=r+"search("+e.search}o="ancestors($root"+e.$path+","+e.hierarchyQualifier+","+a+","+o+"),keep start)/"}if(t.$$filterBeforeAggregate){o+="descendants($root"+e.$path+","+e.hierarchyQualifier+","+a+",filter("+t.$$filterBeforeAggregate+(r?"))":"),1)");delete t.$$filterBeforeAggregate;if(t.$orderby){o+="/orderby("+t.$orderby+")";delete t.$orderby}}else{if(t.$orderby){o+="orderby("+t.$orderby+")/";delete t.$orderby}e.expandTo??=1;const n=!r&&e.$ExpandLevels;o+=u+"TopLevels(HierarchyNodes=$root"+(e.$path||"")+",HierarchyQualifier='"+e.hierarchyQualifier+"',NodeProperty='"+a+"'"+(r||e.expandTo>=Number.MAX_SAFE_INTEGER?"":",Levels="+e.expandTo)+(n?",ExpandLevels="+n:"")+")";if(r){i("DistanceFromRoot")}else if(e.expandTo>1||n){i("DistanceFromRoot");i("LimitedDescendantCount")}}i("DrillState");if(n&&!e.$LimitedRank){e.$LimitedRank=n.LimitedRank?.$Path??e.$DrillState.slice(0,e.$DrillState.lastIndexOf("/")+1)+"LimitedRank"}t.$apply=o;return t},checkNodeProperty:function(t,r,n,i){var a=e.drillDown(r,n),o=e.drillDown(t,n);if((i||o!==undefined)&&a!==undefined&&o!==a){throw new Error("Unexpected structural change: "+n+" from "+JSON.stringify(o)+" to "+JSON.stringify(a))}},checkTypeof:function(e,t,r){if(Array.isArray(t)){if(!Array.isArray(e)){throw new Error("Not an array value for '"+r+"'")}e.forEach(function(e,n){f.checkTypeof(e,t[0],r+"/"+n)})}else if(t instanceof RegExp){if(!t.test(e)){throw new Error("Not a matching value for '"+r+"'")}}else if(typeof t==="object"){const n="*"in t;if(typeof e!=="object"||!e||Array.isArray(e)){throw new Error("Not an object value for '"+r+"'")}Object.keys(e).forEach(function(i){if(!n&&!(i in t)){throw new Error("Unsupported property: '"+r+"/"+i+"'")}f.checkTypeof(e[i],t[n?"*":i],r+"/"+i)})}else if(t===true){if(e!==true){throw new Error("Not a true value for '"+r+"'")}}else if(typeof e!==t){throw new Error("Not a "+t+" value for '"+r+"'")}},createPlaceholder:function(t,r,n){var i={"@$ui5.node.level":t};e.setPrivateAnnotation(i,"parent",n);e.setPrivateAnnotation(i,"placeholder",true);e.setPrivateAnnotation(i,"rank",r);return i},dropFilter:function(e,t,r){e={...e};delete e.search;t={...t};delete t.$count;delete t.$expand;delete t.$filter;delete t.$orderby;delete t.$select;if(r){t.$$filterBeforeAggregate=r}else{delete t.$$filterBeforeAggregate}return f.buildApply4Hierarchy(e,t)},extractSubtotals:function(e,t,r,n){var i=t["@$ui5.node.level"];Object.keys(e.aggregate).forEach(function(a){var o=e.aggregate[a],l,s=o.unit;if(!o.subtotals){return}r[a]=t[a];if(n){n[a]=null}if(s){r[s]=t[s];if(n){l=e.groupLevels.indexOf(s);if(l<0||l>=i){n[s]=null}}}})},filterOrderby:function(e,t,r){var n=f.getFilteredOrderby(e.$orderby,t,r);e=Object.assign({},e);if(n){e.$orderby=n}else{delete e.$orderby}return e},findPreviousSiblingIndex:function(t,r){let n;const i=t[r]["@$ui5.node.level"];for(let a=r-1;a>=0;a-=1){const o=t[a];if(!o){n=true;continue}if(o["@$ui5.node.level"]<i){break}if(o["@$ui5.node.level"]>i){continue}if(a+e.getPrivateAnnotation(o,"descendants",0)===r-1){return a}break}return n?undefined:-1},getAllProperties:function(e){var t=Object.keys(e.aggregate),r=Object.keys(e.group),n=t.concat(r);t.forEach(function(t){var r=e.aggregate[t].unit;if(r){n.push(r)}});r.forEach(function(t){e.group[t].additionally?.forEach(function(e){n.push(e.includes("/")?e.split("/"):e)})});return n},getCollapsedObject:function(t){return e.getPrivateAnnotation(t,"collapsed",a)},getFilteredOrderby:function(e,t,r){var i=!r||r>t.groupLevels.length;function a(e){return Object.keys(t.aggregate).some(function(r){var n=t.aggregate[r];return n.subtotals&&e===n.unit})}function o(e){if(e in t.group&&(!r||!t.groupLevels.includes(e))){return true}return Object.keys(t.aggregate).some(function(r){return e===t.aggregate[r].unit})||Object.keys(t.group).some(function(n){return(!r||!t.groupLevels.includes(n))&&s(e,n)})}function s(e,r){return e===r||t.group[r].additionally?.includes(e)}if(e){return e.split(n).filter(function(e){var n=l.exec(e),u;if(n){u=n[1];return u in t.aggregate&&(i||t.aggregate[u].subtotals)||i&&o(u)||!i&&(s(u,t.groupLevels[r-1])||a(u))}return true}).join(",")}},getOrCreateExpandedObject:function(t,r){var n,i;if(t.subtotalsAtBottomOnly===undefined){return o}i=e.getPrivateAnnotation(r,"expanded");if(!i){n={"@$ui5.node.isExpanded":false};e.setPrivateAnnotation(r,"collapsed",n);i={"@$ui5.node.isExpanded":true};e.setPrivateAnnotation(r,"expanded",i);f.extractSubtotals(t,r,n,t.subtotalsAtBottomOnly?i:null)}return i},getQueryOptionsForOutOfPlaceNodesData:function(e,t,r){t=Object.assign({},t);t.expandTo=1;delete t.search;delete t.$ExpandLevels;r=Object.assign({},r);if(e.parentFilter){r.$$filterBeforeAggregate=e.parentFilter}delete r.$count;delete r.$filter;delete r.$orderby;r=f.buildApply(t,r,1);const n=e.nodeFilters.slice().sort();r.$filter=n.join(" or ");r.$top=n.length;const i=r.$select.indexOf(t.$DrillState);if(i>=0){r.$select.splice(i,1)}return r},getQueryOptionsForOutOfPlaceNodesRank:function(t,r,n){const i=new Set;t.forEach(function(e){if(e.parentFilter){i.add(e.parentFilter)}e.nodeFilters.forEach(function(e){i.add(e)})});const a=[r.$DistanceFromRoot,r.$DrillState,r.$LimitedRank];if(r.$LimitedDescendantCount){a.push(r.$LimitedDescendantCount)}n=Object.assign({},n,{$filter:[...i].sort().join(" or "),$select:a,$top:i.size});delete n.$count;delete n.$orderby;e.selectKeyProperties(n,r.$fetchMetadata(r.$metaPath+"/").getResult());return n},hasGrandTotal:function(e){return e&&Object.keys(e).some(function(t){return e[t].grandTotal})},hasMinOrMax:function(e){return e&&Object.keys(e).some(function(t){var r=e[t];return r.min||r.max})},isAffected:function(t,r,n){return n.some(function(n){function i(t){return e.hasPathPrefix(t,n.endsWith("/*")?n.slice(0,-2):n)||e.hasPathPrefix(n,t)}function a(e){return e.some(function(e){return e.getFilters()?a(e.getFilters()):i(e.getPath())})}return n===""||n==="*"||a(r)||Object.keys(t.aggregate).some(e=>{const r=t.aggregate[e];return i(r.name||e)||r.unit&&i(r.unit)})||Object.keys(t.group).some(e=>i(e)||t.group[e].additionally?.some(e=>i(e)))})},markSplicedStale:function(t){var r=e.getPrivateAnnotation(t,"spliced");if(r){r.$stale=true}},removeUI5grand__:function(e){Object.keys(e).forEach(function(t){if(t.startsWith("UI5grand__")){e[t.slice(10)]=e[t];delete e[t]}})},setAnnotations:function(t,r,n,i,a){e.setAnnotation(t,"@$ui5.node.isExpanded",r);e.setAnnotation(t,"@$ui5.node.isTotal",n);t["@$ui5.node.level"]=i;if(a){a.forEach(function(r){if(Array.isArray(r)){e.createMissing(t,r)}else if(!(r in t)){t[r]=undefined;t[r+"@$ui5.noData"]=true}})}},setPath:function(t,r){t.$metaPath=r&&e.getMetaPath(r);t.$path=r},splitFilter:function(e,t){var n=[],i=[],a=[];function o(e){return e.getFilters()?e.getFilters().some(o):e.getPath()in t.aggregate}function l(e){return Object.keys(t.aggregate).some(r=>t.aggregate[r].unit===e)}function s(e){if(e.getFilters()&&e.isAnd()){e.getFilters().forEach(s)}else if(e.getPath()&&l(e.getPath())){n.push(e);i.push(e);a.push(e)}else{(o(e)?a:n).push(e)}}function u(e){return e.length>1?new r(e,true):e[0]}if(!t?.aggregate){return[e]}if(!t.$leafLevelAggregated){return[undefined,e]}s(e);let c=[u(a),u(n)];if(t.groupLevels.length||!t["grandTotal like 1.84"]&&f.hasGrandTotal(t.aggregate)){c=[undefined,c[1],c[0],i]}return c},validateAggregation:function(e,t){if(e.hierarchyQualifier&&!t){throw new Error("Missing parameter autoExpandSelect at model")}f.checkTypeof(e,e.hierarchyQualifier?s:i,"$$aggregation")},validateAggregationAndSetPath:function(e,t,r,n){f.validateAggregation(e,t);e.$fetchMetadata=r;f.setPath(e,n)}};return f},false);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/lib/_Batch", ["./_Helper","sap/base/strings/escapeRegExp"],function(e,n){"use strict";var r={POST:true,PUT:true,PATCH:true,DELETE:true},t=/^\$\d+/,i=/(\S*?)=(?:"(.+)"|(\S+))/;function o(e){var r=s(e,"boundary"),t=e.trim().indexOf("multipart/mixed");if(t!==0||!r){throw new Error('Invalid $batch response header "Content-Type": '+e)}r=n(r);return new RegExp("--"+r+"(?:[ \t]*\r\n|--)")}function s(e,n){var r,t=e.split(";"),o;n=n.toLowerCase();for(r=1;r<t.length;r+=1){o=i.exec(t[r]);if(o[1].toLowerCase()===n){return o[2]||o[3]}}}function a(e){var n=f(e,"content-type");return n.startsWith("multipart/mixed;")?n:undefined}function u(e){var n=f(e,"content-id"),r;if(!n){throw new Error("Content-ID MIME header missing for the change set response.")}r=parseInt(n);if(isNaN(r)){throw new Error("Invalid Content-ID value in change set response.")}return r}function f(e,n){var r,t=e.split("\r\n"),i;for(i=0;i<t.length;i+=1){r=t[i].split(":");if(r[0].toLowerCase().trim()===n){return r[1].trim()}}}function c(e,n,r){var t=n.split(o(e)),i=[];t=t.slice(1,-1);t.forEach(function(e){var n,t,o,f,d,h,p,l,y,m,C,T,E={},w,v;T=e.indexOf("\r\n\r\n");C=e.slice(0,T);y=e.indexOf("\r\n\r\n",T+4);l=e.slice(T+4,y);n=a(C);if(n){i.push(c(n,e.slice(T+4),true));return}p=l.split("\r\n");m=p[0].split(" ");E.status=parseInt(m[1]);E.statusText=m.slice(2).join(" ");E.headers={};for(v=1;v<p.length;v+=1){f=p[v];o=f.indexOf(":");d=f.slice(0,o).trim();h=f.slice(o+1).trim();E.headers[d]=h;if(d.toLowerCase()==="content-type"){t=s(h,"charset");if(t&&t.toLowerCase()!=="utf-8"){throw new Error('Unsupported "Content-Type" charset: '+t)}}}E.responseText=e.slice(y+4,-2);if(r){w=u(C);i[w]=E}else{i.push(E)}});return i}function d(e){var n,r=[];for(n in e){r.push(n,":",e[n],"\r\n")}return r}function h(n,i,o,s){var a=(i!==undefined?"changeset_":"batch_")+e.uid(),u=i!==undefined,f=[];if(u){f.push("Content-Type: multipart/mixed;boundary=",a,"\r\n\r\n")}n.forEach(function(n,o){var c="",p=n.url;if(u){n.$ContentID=o+"."+i;c="Content-ID:"+n.$ContentID+"\r\n"}f.push("--",a,"\r\n");if(Array.isArray(n)){if(u){throw new Error("Change set must not contain a nested change set.")}f=f.concat(h(n,o,"",s).body)}else{if(u&&!r[n.method]){throw new Error("Invalid HTTP request method: "+n.method+". Change set must contain only POST, PUT, PATCH, or DELETE requests.")}if(i!==undefined&&p[0]==="$"){if(p==="$-1"){p="$"+(o-1)+"."+i}else{p=p.replace(t,"$&."+i)}}f=f.concat("Content-Type:application/http\r\n","Content-Transfer-Encoding:binary\r\n",c,"\r\n",n.method," ",p," HTTP/1.1\r\n",d(e.resolveIfMatchHeader(n.headers,s)),"\r\n",JSON.stringify(n.body)||"","\r\n")}});f.push("--",a,"--\r\n",o);return{body:f,batchBoundary:a}}return{deserializeBatchResponse:function(e,n){return c(e,n,false)},serializeBatchRequest:function(e,n,r){var t=h(e,undefined,n,r);return{body:t.body.join(""),headers:{"Content-Type":"multipart/mixed; boundary="+t.batchBoundary,"MIME-Version":"1.0"}}}}},false);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/lib/_Cache", ["./_GroupLock","./_Helper","./_Requestor","sap/base/Log","sap/ui/base/SyncPromise","sap/ui/model/odata/ODataUtils"],function(e,t,i,n,s,r){"use strict";var o="sap.ui.model.odata.v4.lib._Cache",a=/\(\$uid=[-\w]+\)$/,u=/^\$inactive\./,h="@com.sap.vocabularies.Common.v1.Messages",c=/^-?\d+$/,l=/^([^(]*)(\(.*\))$/;function d(e,t){return t===""||e===t||e.startsWith(t+"/")}function f(e,t,i,n,s,r){this.iActiveUsages=1;this.mChangeListeners={};this.mChangeRequests={};this.sOriginalResourcePath=s||t;this.iInactiveSince=Infinity;this.mEditUrl2PatchPromise={};this.oPendingRequestsPromise=null;this.mPostRequests={};this.sReportedMessagesPath=undefined;this.oRequestor=e;this.bSentRequest=false;this.bSortExpandSelect=n;this.setResourcePath(t);this.setQueryOptions(i);this.bSharedRequest=r}f.prototype._delete=function(i,n,r,o,a){var u=r.split("/"),h=u.pop(),l=u.join("/"),d=this;this.checkSharedRequest();return this.fetchValue(e.$cached,l).then(function(e){var r,u=h?e[h]||e.$byPredicate[h]:e,f,p,g,P=c.test(h)?Number(h):undefined,m=t.getPrivateAnnotation(u,"predicate"),y=t.buildPath(l,Array.isArray(e)?m:h),$=d.oRequestor.getModelInterface(),v,R=t.getPrivateAnnotation(u,"transient"),E=t.getPrivateAnnotation(u,"transientPredicate");function q(){t.removeByPath(d.mChangeRequests,y,v);if(p.length){$.updateMessages(undefined,p)}delete u["@$ui5.context.isDeleted"];if(Array.isArray(e)){P=r.index;const t=e.$deleted.indexOf(r);if(P!==undefined){d.restoreElement(P,u,t,e,l)}e.$deleted.splice(t,1)}if(d.iActiveUsages){a(P,1)}else if(P===undefined&&d.reset){d.reset([])}}if(R){if(typeof R!=="string"){throw new Error("No 'delete' allowed while waiting for server response")}if(e.$postBodyCollection){e.$postBodyCollection.splice(P,1);d.removeElement(P,E,e,l);a(P,-1);const i=new Error("Deleted from deep create");i.canceled=true;t.getPrivateAnnotation(u,"reject")(i);t.cancelNestedCreates(u,"Deleted from deep create")}else{d.oRequestor.removePost(R,u)}return undefined}p=$.getMessagesByPath(t.buildPath("/",d.sResourcePath,y),true);$.updateMessages(p);u["@$ui5.context.isDeleted"]=true;if(Array.isArray(e)){r=d.addDeleted(e,P,m,i,!!E);d.removeElement(P,m,e,l)}a(P,-1);if(i){f=i.getGroupId();d.oRequestor.relocateAll("$parked."+f,f,u)}g={"If-Match":o||u};n+=d.oRequestor.buildQueryString(d.sMetaPath,d.mQueryOptions,true);v=i?d.oRequestor.request("DELETE",n,i,g,undefined,undefined,q,undefined,t.buildPath(d.sOriginalResourcePath,y)):s.resolve();t.addByPath(d.mChangeRequests,y,v);return v.catch(function(e){if(e.status!==404){throw e}}).then(function(){t.removeByPath(d.mChangeRequests,y,v);if(Array.isArray(e)){e.$deleted.splice(e.$deleted.indexOf(r),1);delete e.$byPredicate[m];delete e.$byPredicate[E]}else if(h){t.updateExisting(d.mChangeListeners,l,e,t.makeUpdateData([h],null))}else{u["$ui5.deleted"]=true}},function(e){if(!e.canceled){p=p.filter(function(e){return!e.persistent});q()}throw e})})};f.prototype.addDeleted=function(e,t,i,n,s){var r={created:s,groupId:n&&n.getGroupId(),predicate:i,index:t},o;e.$deleted??=[];if(t===undefined){e.$deleted.unshift(r)}else{for(o=0;o<e.$deleted.length;o+=1){if(t<e.$deleted[o].index){break}}e.$deleted.splice(o,0,r)}return r};f.prototype.addPendingRequest=function(){var e;if(!this.oPendingRequestsPromise){this.oPendingRequestsPromise=new s(function(t){e=t});this.oPendingRequestsPromise.$count=0;this.oPendingRequestsPromise.$resolve=e}this.oPendingRequestsPromise.$count+=1};f.prototype.addTransientCollection=function(e,i){var n,s=e.split("/"),r=s.pop(),o=this.getValue(s.join("/")),a=t.getPrivateAnnotation(o,"postBody"),u,h=e.indexOf(")",e.indexOf("($uid="))+1,c=this.getValue(e.slice(0,h)),l=t.getPrivateAnnotation(c,"select",{}),d=this;function f(){n.$postBodyCollection=a[r]=u}this.checkSharedRequest();n=o[r]??=[];n.$count=n.$created=n.length;n.$byPredicate={};u=a[r]||[];if(n.length){f()}else{n.$postBodyCollection=f}l[t.getMetaPath(e.slice(h+1))]=i;t.setPrivateAnnotation(c,"select",l);n.forEach(function(e,i){var s="($uid="+t.uid()+")";e["@$ui5.context.isTransient"]=true;t.setPrivateAnnotation(e,"postBody",u[i]);t.setPrivateAnnotation(e,"transient",t.getPrivateAnnotation(o,"transient"));t.setPrivateAnnotation(e,"transientPredicate",s);t.setPrivateAnnotation(e,"promise",t.addPromise(e));n.$byPredicate[s]=e});this.fetchTypes().then(function(i){d.oRequestor.fetchType(i,d.sMetaPath+"/"+t.getMetaPath(e))});return n};f.prototype.adjustIndexes=function(e,t,i,n,s,r){if(i===undefined){return}if(!e&&this.aReadRequests){this.aReadRequests.forEach(function(e){if(e.iStart>=i){e.iStart+=n;e.iEnd+=n}})}(t.$deleted||[]).forEach(function(e,t){if(i<e.index||s<t||r&&(i===0||!e.created)){e.index+=n}})};f.prototype.calculateKeyPredicate=function(e,i,n){var s,r=i[n];if(r&&r.$Key){s=t.getKeyPredicate(e,n,i);if(s){t.setPrivateAnnotation(e,"predicate",s)}}return s};f.prototype.checkSharedRequest=function(){if(this.bSharedRequest){throw new Error(this+" is read-only")}};f.prototype.create=function(e,i,n,r,o,a,h,c,l){var d=this.getValue(n),f=e.getGroupId(),p,g,P=this;function m(s){var a=o["@$ui5.context.isInactive"],u=d.indexOf(o);if(s&&a){if(a===1){t.resetInactiveEntity(P.mChangeListeners,r,o)}return true}t.cancelNestedCreates(o,"Deep create of "+i.getResult()+" canceled; group: "+e.getGroupId());t.removeByPath(P.mPostRequests,n,o);d.splice(u,1);d.$created-=1;if(!o["@$ui5.context.isInactive"]){if(!n){P.iActiveElements-=1}t.addToCount(P.mChangeListeners,n,d,-1)}delete d.$byPredicate[r];P.adjustIndexes(n,d,u,-1);if(l){l()}e.cancel()}function y(){P.addPendingRequest();t.setPrivateAnnotation(o,"transient",new Promise(function(e){g=e}));c()}function $(e,i){t.setPrivateAnnotation(o,"transient",f);t.addByPath(P.mPostRequests,n,o);return s.all([P.oRequestor.request("POST",e,i,null,p,y,m,undefined,t.buildPath(P.sResourcePath,n,r)),P.fetchTypes()]).then(function([i,s]){var a,u,h;t.deletePrivateAnnotation(o,"postBody");t.deletePrivateAnnotation(o,"transient");i["@$ui5.context.isTransient"]=false;t.removeByPath(P.mPostRequests,n,o);P.visitResponse(i,s,t.getMetaPath(t.buildPath(P.sMetaPath,n)),n+r,undefined,true);a=t.getPrivateAnnotation(i,"predicate");if(a){t.setPrivateAnnotation(o,"predicate",a);if(r in d.$byPredicate){d.$byPredicate[a]=o;t.updateTransientPaths(P.mChangeListeners,r,a)}}t.cancelNestedCreates(o,"Deep create of "+e+" succeeded. Do not use this promise.");u=t.buildPath(n,a||r);const c=t.updateNestedCreates(P.mChangeListeners,P.mQueryOptions,u,o,i,t.getPrivateAnnotation(o,"select"));if(!c){h=t.getQueryOptionsForPath(P.mLateQueryOptions||P.mQueryOptions,n).$select}t.updateSelected(P.mChangeListeners,u,o,i,h,undefined,true);t.setPrivateAnnotation(o,"deepCreate",c);t.deletePrivateAnnotation(o,"select");P.removePendingRequest();g(true);return o},function(t){var i;if(t.canceled){throw t}if(g){P.removePendingRequest();g()}if(P.fetchTypes().isRejected()){h(t);throw t}f=f.replace(u,"");f=P.oRequestor.getGroupSubmitMode(f)==="API"?f:"$parked."+f;i=$(e,P.oRequestor.lockGroup(f,P,true,true));h(t);return i})}this.checkSharedRequest();if(!Array.isArray(d)){throw new Error("Create is only supported for collections; '"+n+"' does not reference a collection")}p=t.clone(o);t.setPrivateAnnotation(o,"postBody",p);t.setPrivateAnnotation(o,"transientPredicate",r);o["@$ui5.context.isTransient"]=true;if(f.startsWith("$inactive.")){t.setPrivateAnnotation(o,"initialData",t.publicClone(o,true));o["@$ui5.context.isInactive"]=true}else{if(!n){this.iActiveElements+=1}t.addToCount(this.mChangeListeners,n,d,1)}if(a){d.splice(d.$created,0,o)}else{d.unshift(o)}d.$created+=1;d.$byPredicate??={};d.$byPredicate[r]=o;P.adjustIndexes(n,d,0,1,0,true);if(d.$postBodyCollection){if(typeof d.$postBodyCollection==="function"){d.$postBodyCollection()}t.setPrivateAnnotation(o,"transient",f);if(a){d.$postBodyCollection.push(p)}else{d.$postBodyCollection.unshift(p)}e.unlock();return t.addPromise(o)}return i.then(function(t){t+=P.oRequestor.buildQueryString(P.sMetaPath,P.mQueryOptions,true);return $(t,e)})};f.prototype.drillDown=function(i,r,a,u){var h=s.resolve(i),c,d,p=false,g,P=false,m=this;function y(e,t){t||=e[0]==="("&&e.at(-1)===")";n[t?"info":"error"]("Failed to drill-down into "+r+", invalid segment: "+e,m.toString(),o);return undefined}function $(e,n,s,r){var o,u,h=g.slice(0,s).join("/"),l=t.getMetaPath(h),f;if(Array.isArray(e)){return y(n,n==="0")}if(p){return y(n,true)}if(n.includes("@")){u=n.split("@")[0];l=t.getMetaPath(h.split("@")[0]);if(P||u in e||e[u+"@$ui5.noData"]||t.isSelected(l,m.mQueryOptions)){return y(n,true)}}const $=m.mSeparateProperty2ReadRequests?.[n];if($){const t=m.aElements.indexOf(e);const i=$.find(e=>t>=e.start&&t<e.end);if(i){return i.promise}}o=e[t.getAnnotationKey(e,".Permissions",n)];if(o===0||o==="None"){return undefined}return m.oRequestor.getModelInterface().fetchMetadata(m.sMetaPath+"/"+l).then(function(s){var o=false;if(!s){return y(n)}if(s.$Type==="Edm.Stream"&&!u){f=e[n+"@odata.mediaReadLink"]||e[n+"@mediaReadLink"];if(f){return f}if(e[n+"@$ui5.noData"]||t.isSelected(l,m.mQueryOptions)){return t.buildPath(m.oRequestor.getServiceUrl()+m.sResourcePath,h)}}if(!r&&e[n+"@$ui5.noData"]){return undefined}if(!P){if(!c&&!Array.isArray(i)){c=i;d=0}if(c&&!r){o=m.fetchLateProperty(a,c,g.slice(0,d).join("/"),g.slice(d).join("/"))}return typeof o==="boolean"?y(n,o):o}if(s.$kind==="NavigationProperty"){return null}if(!s.$Type.startsWith("Edm.")){return{}}if("$DefaultValue"in s){return s.$Type==="Edm.String"?s.$DefaultValue:t.parseLiteral(s.$DefaultValue,s.$Type,h)}return null})}if(!r){return h}g=r.split("/");return g.reduce(function(i,n,r){return i.then(function i(o,h){var v,R,E;if(o===undefined){return undefined}if(n==="$count"){return Array.isArray(o)?o.$count:y(n)}if(o===null){P=true;return $({},n,r+1)}if(typeof o!=="object"||n==="@$ui5._"||Array.isArray(o)&&(n[0]==="$"||n==="length")){return y(n)}if(t.hasPrivateAnnotation(o,"predicate")){c=o;d=r}E=o;P||=o["@$ui5.context.isTransient"];R=l.exec(n);if(R){if(R[1]){o=o[R[1]]}o&&=o.$byPredicate&&o.$byPredicate[R[2]]}else{v=f.from$skip(n,o);if(u&&v===n&&(o[n]===undefined||o[n]===null)){o[n]={}}o=o[v]}if(g.length===1&&a!==e.$cached&&m.mSeparateProperty2ReadRequests){const e=m.aElements.indexOf(o);const t=[];for(const i in m.mSeparateProperty2ReadRequests){const n=m.mSeparateProperty2ReadRequests[i].find(t=>e>=t.start&&e<t.end);if(n){t.push(n.promise)}}if(t.length){return Promise.all(t).then(function(){return i(E)})}}if(o===undefined&&n[0]!=="#"&&n[0]!=="@"){o=$(E,n,r+1,h);if(o instanceof s&&o.isPending()){return o.then(function(){return i(E,true)})}}if(n.includes("@")){p=true}return o})},h)};f.prototype.fetchLateProperty=function(e,i,n,s){var r=false,o,a,u,h=s.indexOf("@"),c,l,d,f,p=t.getMetaPath(n),g=this.getTypes(),P,m=this;function y(){r=true;m.oRequestor.getModelInterface().fireDataRequested("/"+a)}function $(e,i){var n=t.buildPath(o,i),s=g[n],r;s??=m.oRequestor.fetchType(g,n).getResult();if(i){(s.$Key||[]).forEach(function(e){if(typeof e==="object"){e=e[Object.keys(e)[0]]}P.push(t.buildPath(i,e))})}if(e.$expand){r=Object.keys(e.$expand)[0];$(e.$expand[r],t.buildPath(i,r))}}if(!(this.mLateQueryOptions||this.mQueryOptions&&this.mQueryOptions.$select)){return false}if(h>=0){if(s.startsWith("@$ui5.",h)){return true}s=s.slice(0,h)}P=[s];o=t.buildPath(this.sMetaPath,p);d=this.mLateQueryOptions||{$select:this.mQueryOptions.$select,$expand:this.mQueryOptions.$expand};d=t.intersectQueryOptions(t.getQueryOptionsForPath(d,n),[s],this.oRequestor.getModelInterface().fetchMetadata,o);if(!d){return false}$(d);a=t.buildPath(this.sResourcePath,n);f=a+this.oRequestor.buildQueryString(o,d,false,true);l=this.mPropertyRequestByPath[f];if(!l){c=a+this.oRequestor.buildQueryString(o,this.mQueryOptions,true);u=t.getPrivateAnnotation(i,"groupId");l=this.oRequestor.request("GET",c,u?this.oRequestor.lockGroup(u,this):e.getUnlockedCopy(),undefined,undefined,y,undefined,o,undefined,false,d).then(function(e){m.visitResponse(e,g,o,n);return e});this.mPropertyRequestByPath[f]=l}return l.then(function(e){var s=t.getPrivateAnnotation(e,"predicate"),o=t.getPrivateAnnotation(i,"predicate");if(o&&s&&o!==s){throw new Error("GET "+f+": Key predicate changed from "+o+" to "+s)}if(i["@odata.etag"]&&e["@odata.etag"]!==i["@odata.etag"]){throw new Error("GET "+f+": ETag changed")}t.updateSelected(m.mChangeListeners,n,i,e,P);if(r){r=false;m.oRequestor.getModelInterface().fireDataReceived(undefined,"/"+a)}}).catch(function(e){if(r){m.oRequestor.getModelInterface().fireDataReceived(e,"/"+a)}throw e}).finally(function(){delete m.mPropertyRequestByPath[f]})};f.prototype.fetchTypes=function(){var e,t,i=this;function n(s,r){if(r&&r.$expand){Object.keys(r.$expand).forEach(function(o){var a=s;o.split("/").forEach(function(n){a+="/"+n;e.push(i.oRequestor.fetchType(t,a))});n(a,r.$expand[o])})}}if(!this.oTypePromise){e=[];t={};e.push(this.oRequestor.fetchType(t,this.sMetaPath));n(this.sMetaPath,this.mQueryOptions);this.oTypePromise=s.all(e).then(function(){return t})}return this.oTypePromise};f.prototype.getAndRemoveCollection=function(t){var i=t.split("/"),n=i.pop(),s=this.fetchValue(e.$cached,i.join("/")).getResult(),r=s[n];this.checkSharedRequest();if(r){if(!Array.isArray(r)){throw new Error(`${t} must point to a collection`)}if(!r.$transfer){return undefined}delete r.$transfer}delete s[n];return r};f.prototype.getCreatedElements=function(e){var t=this.getValue(e);return t?t.slice(0,t.$created):[]};f.prototype.getDownloadQueryOptions=function(e){return e};f.prototype.getDownloadUrl=function(e,i,n){var s=this.mQueryOptions;if(e){s=t.getQueryOptionsForPath(s,e);s=t.merge({},i,s)}s=t.merge({},s,n);return this.oRequestor.getServiceUrl()+t.buildPath(this.sResourcePath,e)+this.oRequestor.buildQueryString(t.buildPath(this.sMetaPath,t.getMetaPath(e)),this.getDownloadQueryOptions(s),false,true,!t.isEmptyObject(n))};f.prototype.getElements=function(e,t,i){const n=this.getValue(e);if(!n){return undefined}const r=n.slice(t,i).map(e=>e instanceof s?undefined:e);r.$count=n.$count;return r};f.prototype.getLateQueryOptions=function(){return this.mLateQueryOptions};f.prototype.getPendingRequestsPromise=function(){return this.oPendingRequestsPromise&&this.oPendingRequestsPromise.getResult()};f.prototype.getQueryOptions=function(){return this.mQueryOptions};f.prototype.getResourcePath=function(){return this.sResourcePath};f.prototype.getTypes=function(){return this.fetchTypes().getResult()};f.prototype.getValue=function(e){throw new Error("Unsupported operation")};f.prototype.hasChangeListeners=function(){return!t.isEmptyObject(this.mChangeListeners)};f.prototype.hasPendingChangesForPath=function(e,i,n){var s=this;return Object.keys(this.mChangeRequests).some(function(n){return t.hasPathPrefix(n,e)&&!(i&&s.mChangeRequests[n].every(function(e){return!e.$isKeepAlive||e.$isKeepAlive()}))})||Object.keys(this.mPostRequests).some(function(i){return n&&!i?false:t.hasPathPrefix(i,e)&&s.mPostRequests[i].some(function(e){return e["@$ui5.context.isInactive"]!==true})})};f.prototype.hasSentRequest=function(){return this.bSentRequest};f.prototype.patch=function(i,n){var s=this;this.checkSharedRequest();return this.fetchValue(e.$cached,i).then(function(e){t.updateExisting(s.mChangeListeners,i,e,n);return e})};f.prototype.refreshSingle=function(i,n,r,o,a,u,h){var c=false,l=this;this.checkSharedRequest();return this.fetchValue(e.$cached,n).then(function(e){var d=u&&n===""&&l.oRequestor.getModelInterface().fetchMetadata(l.sMetaPath+"/@com.sap.vocabularies.Common.v1.Messages/$Path").getResult(),f=t.clone(t.getQueryOptionsForPath(l.mQueryOptions,n)),p;if(r>=0){o=t.getPrivateAnnotation(e[r],"predicate")}if(!o){throw new Error("No key predicate known")}p=t.buildPath(l.sResourcePath,n,o);if(a&&l.mLateQueryOptions){t.aggregateExpandSelect(f,l.mLateQueryOptions)}if(d&&f.$select&&!f.$select.includes(d)){f.$select.push(d);c=true}delete f.$apply;delete f.$count;delete f.$filter;delete f.$orderby;delete f.$search;p+=l.oRequestor.buildQueryString(l.sMetaPath,f,false,l.bSortExpandSelect);l.bSentRequest=true;return s.all([l.oRequestor.request("GET",p,i,undefined,undefined,h),l.fetchTypes()]).then(function(t){var i=t[0];l.replaceElement(e,r,o,i,t[1],n,c);return i})})};f.prototype.refreshSingleWithRemove=function(i,n,r,o,a,u,h){var c=this;this.checkSharedRequest();return s.all([this.fetchValue(e.$cached,n),this.fetchTypes()]).then(function(e){var l=e[0],d,f,p={},g,P,m=t.clone(t.getQueryOptionsForPath(c.mQueryOptions,n)),y,$=t.buildPath(c.sResourcePath,n),v=[],R=e[1];if(r!==undefined){d=l[r];o=t.getPrivateAnnotation(d,"predicate");if(!o){throw new Error("No key predicate known")}}else{d=l.$byPredicate[o]}P=t.getKeyFilter(d,c.sMetaPath,R);f=(m.$filter?"("+m.$filter+") and ":"")+P;delete m.$count;delete m.$orderby;c.bSentRequest=true;if(a){if(c.mLateQueryOptions){t.aggregateExpandSelect(m,c.mLateQueryOptions)}p=Object.assign({},m);p.$filter=f;m.$filter=P;delete m.$search;y=$+c.oRequestor.buildQueryString(c.sMetaPath,m,false,c.bSortExpandSelect);v.push(c.oRequestor.request("GET",y,i,undefined,undefined,u));if(r!==undefined&&(P!==f||p.$search)){delete p.$select;delete p.$expand;p.$count=true;p.$top=0;g=$+c.oRequestor.buildQueryString(c.sMetaPath,p);v.push(c.oRequestor.request("GET",g,i.getUnlockedCopy()))}}else{m.$filter=f;y=$+c.oRequestor.buildQueryString(c.sMetaPath,m,false,c.bSortExpandSelect);v.push(c.oRequestor.request("GET",y,i,undefined,undefined,u))}return s.all(v).then(function(e){var i=e[0].value,s=e[1]&&e[1]["@odata.count"]==="0";if(i.length>1){throw new Error("Unexpected server response, more than one entity returned.")}else if(i.length===0){c.removeElement(r,o,l,n);c.oRequestor.getModelInterface().reportStateMessages(c.sResourcePath,{},[n+o]);h(false)}else if(s){const e=l.$byPredicate[o];t.copySelected(e,i[0]);if("@$ui5.context.isTransient"in e){i[0]["@$ui5.context.isTransient"]=false}c.removeElement(r,o,l,n);c.replaceElement(l,undefined,o,i[0],R,n);h(true)}else{c.replaceElement(l,r,o,i[0],R,n)}})})};f.prototype.registerChangeListener=function(e,i){if(!(this.bSharedRequest&&e)){t.registerChangeListener(this,e,i)}};f.prototype.removeElement=function(e,i,n=this.aElements,s=""){const r=i?n.$byPredicate[i]:n[e];if(!i){i=r&&t.getPrivateAnnotation(r,"predicate")}else if(e!==undefined){e=f.getElementIndex(n,i,e)}if(r&&!r["@$ui5.context.isDeleted"]){delete n.$byPredicate[i];delete n.$byPredicate[t.getPrivateAnnotation(r,"transientPredicate")]}if(e>=0){n.splice(e,1);t.addToCount(this.mChangeListeners,s,n,-1);if(e<n.$created){n.$created-=1;if(!s){this.iActiveElements-=1}}else if(!s){this.iLimit-=1}this.adjustIndexes(s,n,e,-1)}return e};f.prototype.removeMessages=function(){if(this.sReportedMessagesPath){this.oRequestor.getModelInterface().reportStateMessages(this.sReportedMessagesPath,{});this.sReportedMessagesPath=undefined}};f.prototype.removePendingRequest=function(){if(this.oPendingRequestsPromise){this.oPendingRequestsPromise.$count-=1;if(!this.oPendingRequestsPromise.$count){this.oPendingRequestsPromise.$resolve();this.oPendingRequestsPromise=null}}};f.prototype.replaceElement=function(e,i,n,s,r,o,a){var u,h;if(i===undefined){u=e.$byPredicate[n];e.$byPredicate[n]=s}else{i=f.getElementIndex(e,n,i);u=e[i];e[i]=e.$byPredicate[n]=s;h=t.getPrivateAnnotation(u,"transientPredicate");if(h){s["@$ui5.context.isTransient"]=false;e.$byPredicate[h]=s;t.setPrivateAnnotation(s,"transientPredicate",h)}}if(u){t.copySelected(u,s)}t.restoreUpdatingProperties(u,s);this.visitResponse(s,r,t.getMetaPath(t.buildPath(this.sMetaPath,o)),o+n,undefined,a)};f.prototype.requestCount=function(e){var i,n,s,r=this;if(this.mQueryOptions&&this.mQueryOptions.$count){n=Object.assign({},this.mQueryOptions);delete n.$expand;delete n.$orderby;delete n.$select;i=this.getExclusiveFilter();if(i){n.$filter=n.$filter?"("+n.$filter+") and "+i:i}n.$top=0;s=this.sResourcePath+this.oRequestor.buildQueryString(this.sMetaPath,n);return this.oRequestor.request("GET",s,e.getUnlockedCopy()).catch(function(t){if(t.cause&&t.cause.status===404){return r.oRequestor.request("GET",s,e.getUnlockedCopy())}throw t}).then(function(e){var i=parseInt(e["@odata.count"])+r.iActiveElements;t.setCount(r.mChangeListeners,"",r.aElements,i);r.iLimit=i;return i})}return Promise.resolve(r.iLimit)};f.prototype.resetChangesForPath=function(e){var i=this;this.checkSharedRequest();Object.keys(this.mChangeRequests).reverse().forEach(function(n){var s,r;if(t.hasPathPrefix(n,e)){s=i.mChangeRequests[n];for(r=s.length-1;r>=0;r-=1){i.oRequestor.removeChangeRequest(s[r])}delete i.mChangeRequests[n]}});Object.keys(this.mPostRequests).forEach(function(n){var s=i.mPostRequests[n],r,o,a;if(e.startsWith("($uid=")){s.forEach(function(n){o=t.getPrivateAnnotation(n,"transientPredicate");if(o===e&&n["@$ui5.context.isInactive"]===1){t.resetInactiveEntity(i.mChangeListeners,o,n)}})}else if(d(n,e)){for(a=s.length-1;a>=0;a-=1){r=t.getPrivateAnnotation(s[a],"transient");if(r.startsWith("$inactive.")){t.resetInactiveEntity(i.mChangeListeners,t.getPrivateAnnotation(s[a],"transientPredicate"),s[a])}else{i.oRequestor.removePost(r,s[a])}}}})};f.prototype.restoreElement=function(e,i,n,s=this.aElements,r=""){this.adjustIndexes(r,s,e,1,n);const o=t.getPrivateAnnotation(i,"transientPredicate");if(o){s.$created+=1;if(!r){this.iActiveElements+=1}}else if(!r){this.iLimit+=1}t.addToCount(this.mChangeListeners,r,s,1);t.insert(s,e,i);s.$byPredicate[t.getPrivateAnnotation(i,"predicate")]=i};f.prototype.setActive=function(e){if(e){this.iActiveUsages+=1;this.iInactiveSince=Infinity}else{this.iActiveUsages-=1;if(!this.iActiveUsages){this.iInactiveSince=Date.now();this.mChangeListeners={}}}};f.prototype.setLateQueryOptions=function(e){if(e){this.mLateQueryOptions={$select:e.$select,$expand:e.$expand}}else{this.mLateQueryOptions=null}};f.prototype.setProperty=function(i,n,s,r){var o=this;this.checkSharedRequest();return this.fetchValue(e.$cached,s,null,null,true).then(function(e){t.updateAll(o.mChangeListeners,s,e,t.makeUpdateData(i.split("/"),n,r))})};f.prototype.setQueryOptions=function(e={},t=false){this.checkSharedRequest();if(this.bSentRequest&&!t){throw new Error("Cannot set query options: Cache has already sent a request")}this.mQueryOptions=e;this.sQueryString=this.oRequestor.buildQueryString(this.sMetaPath,e,false,this.bSortExpandSelect)};f.prototype.setResourcePath=function(e){this.checkSharedRequest();this.sResourcePath=e;this.sMetaPath=t.getMetaPath("/"+e);this.oTypePromise=undefined;this.mLateQueryOptions=null;this.mPropertyRequestByPath={}};f.prototype.toString=function(){return this.oRequestor.getServiceUrl()+this.sResourcePath+this.sQueryString};f.prototype.update=function(i,r,a,u,h,c,l,d,f,p,g){var P,m=r.split("/"),y,$=this;this.checkSharedRequest();try{P=this.fetchValue(e.$cached,c)}catch(e){if(!e.$cached||this.oPromise!==null){throw e}P=this.oPromise=s.resolve({"@odata.etag":"*"})}const v=P.then(function(e){var P=t.buildPath(c,r),v=i.getGroupId(),R,E,q,b=t.makeUpdateData(m,a);function S(n,r){var o={"If-Match":e},a,l,m;function A(e){if(arguments.length===0){m=true;return E}if(E){t.updateNonExisting(E,e)}}function C(){t.removeByPath($.mChangeRequests,P,a);if(y){t.updateAll($.mChangeListeners,q,$.getValue(q),{[R]:null});g?.()}else{t.updateAll($.mChangeListeners,c,e,E)}}function O(){if(y&&$.iActiveUsages){$.refreshSingleNoCollection(i,c).catch($.oRequestor.getModelInterface().getReporter())}l=$.oRequestor.lockGroup(v,$,true);f()}if(y){o["If-None-Match"]="*";d=true}if(d){o.Prefer="return=minimal"}a=$.oRequestor.request("PATCH",h,n,o,b,O,C,undefined,t.buildPath($.sOriginalResourcePath,c),r,undefined,undefined,A);a.$isKeepAlive=p;t.addByPath($.mChangeRequests,P,a);return s.all([a,$.fetchTypes()]).then(function([i,n]){t.removeByPath($.mChangeRequests,P,a);if(m){return}if(!d){$.visitResponse(i,n,t.getMetaPath(t.buildPath($.sMetaPath,c)),c)}t.updateExisting($.mChangeListeners,c,e,d?{"@odata.etag":i["@odata.etag"]}:i);if(y){t.updateAll($.mChangeListeners,c,e,{"@$ui5.context.isTransient":false});t.deletePrivateAnnotation(e,"upsert")}},function(i){var n=v;if(!u&&!i.canceled){C();throw i}t.removeByPath($.mChangeRequests,P,a);if(i.canceled){throw i}l.unlock();l=undefined;u(i);if(m){return $.mEditUrl2PatchPromise[h]}switch($.oRequestor.getGroupSubmitMode(v)){case"API":break;case"Auto":if(!$.oRequestor.hasChanges(v,e)){n="$parked."+v}break;default:throw i}$.mEditUrl2PatchPromise[h]=S($.oRequestor.lockGroup(n,$,true,true),true);return $.mEditUrl2PatchPromise[h]}).finally(function(){if(l){l.unlock()}delete $.mEditUrl2PatchPromise[h]})}function A(i){t.updateAll($.mChangeListeners,c,e,b);if(l){l=t.buildPath(m.slice(0,-1).join("/"),l);const e=l.split("/");l=t.buildPath(c,l);const s=$.getValue(l);if(s===undefined){n.debug("Missing value for unit of measure "+l+" when updating "+P,$.toString(),o)}else{t.merge(i,t.makeUpdateData(e,s))}}}y=e===null;if(y){const i=c.split("/");R=i.pop();q=i.join("/");e={"@$ui5.context.isTransient":true};t.setPrivateAnnotation(e,"upsert",true);$.getValue(q)[R]=e;t.fireChanges($.mChangeListeners,c,e,false);A(b)}else{if(!e){throw new Error("Cannot update '"+r+"': '"+c+"' does not exist")}t.deleteUpdating(r,e);let n;let s=t.getPrivateAnnotation(e,"transient");if(s){if(typeof s!=="string"){throw new Error("No 'update' allowed while waiting for server response")}if(s.startsWith("$parked.")||s.startsWith("$inactive.")){n=s;s=s.slice(s.indexOf(".")+1)}if(s!==v){throw new Error("The entity will be created via group '"+s+"'. Cannot patch via group '"+v+"'")}}E=t.makeUpdateData(m,t.drillDown(e,m));const o=t.getPrivateAnnotation(e,"postBody");if(o){t.updateAll({},c,o,b)}A(s?o:b);if(s){if(n&&!e["@$ui5.context.isInactive"]){t.setPrivateAnnotation(e,"transient",s);$.oRequestor.relocate(n,o,s)}i.unlock();return Promise.resolve()}$.oRequestor.relocateAll("$parked."+v,v,e)}h+=$.oRequestor.buildQueryString($.sMetaPath,$.mQueryOptions,true);return S(i)});if(y){g?.(v)}return v};f.prototype.visitResponse=function(e,i,n,s,r,o){var u,c=false,l={},d=this.oRequestor.getServiceUrl()+this.sResourcePath,f=this;function p(e,i,n){c=true;if(e&&e.length){f.checkSharedRequest();l[i]=e;e.forEach(function(e){e.longtextUrl&&=t.makeAbsolute(e.longtextUrl,n)})}}function g(e,i){return i?t.makeAbsolute(i,e):e}function P(e,i,n,s){var o={},a,h,c,l;for(l=0;l<e.length;l+=1){h=e[l];a=n===""?r+l:l;if(h&&typeof h==="object"){m(h,i,n,s,a);c=t.getPrivateAnnotation(h,"predicate");if(!n){u.push(c||""+a)}if(c){o[c]=h;e.$byPredicate=o}}}}function m(e,n,r,o,c){var l,d,y=i[n],$=y&&y[h]&&y[h].$Path,v;o=g(o,e["@odata.context"]);d=f.calculateKeyPredicate(e,i,n);if(c!==undefined){r=t.buildPath(r,d||c)}else if(d){l=a.exec(r);if(l){r=r.slice(0,-l[0].length)+d}}if(s&&!u){u=[r]}if($){v=t.drillDown(e,$.split("/"));if(v!==undefined){p(v,r,o)}}Object.keys(e).forEach(function(i){var s,a=n+"/"+i,u=e[i],h=t.buildPath(r,i);if(i.endsWith("@odata.mediaReadLink")||i.endsWith("@mediaReadLink")){e[i]=t.makeAbsolute(u,o)}if(i===$||i.includes("@")){return}if(Array.isArray(u)){u.$created=0;s=e[i+"@odata.count"];if(s){u.$count=parseInt(s)}else if(!e[i+"@odata.nextLink"]){u.$count=u.length}else{u.$count=undefined}P(u,a,h,g(o,e[i+"@odata.context"]))}else if(u&&typeof u==="object"){m(u,a,h,o)}})}if(r!==undefined){u=[];P(e.value,n||this.sMetaPath,"",g(d,e["@odata.context"]))}else if(e&&typeof e==="object"){m(e,n||this.sMetaPath,s||"",d)}if(c&&!this.bSharedRequest){if(!o){this.sReportedMessagesPath=this.sOriginalResourcePath}this.oRequestor.getModelInterface().reportStateMessages(this.sOriginalResourcePath,l,u)}};function p(e,t,i,n,s,r){f.call(this,e,t,i,n,s,r);this.iActiveElements=0;this.oBackup=null;this.sContext=undefined;this.aElements=[];this.aElements.$byPredicate={};this.aElements.$count=undefined;this.aElements.$created=0;this.aElements.$tail=undefined;this.iLimit=Infinity;this.aReadRequests=[];this.aSeparateProperties=[];this.mSeparateProperty2ReadRequests={};this.bServerDrivenPaging=false;this.oSyncPromiseAll=undefined}p.prototype=Object.create(f.prototype);p.prototype.addKeptElement=function(e){this.checkSharedRequest();this.aElements.$byPredicate[t.getPrivateAnnotation(e,"predicate")]=e};p.prototype.checkRange=function(e,t,i){var n;if(e!==this.aElements.$tail){i=Math.min(i,this.aElements.length);for(n=t;n<i;n+=1){if(this.aElements[n]!==e){throw new Error("Found data at an index being read from the back end")}}}};p.prototype.doReplaceWith=function(e,i){var n=this.aElements[e];this.checkSharedRequest();if(n&&t.hasPrivateAnnotation(n,"transientPredicate")&&!t.hasPrivateAnnotation(i,"transientPredicate")){t.setPrivateAnnotation(i,"transientPredicate",t.getPrivateAnnotation(i,"predicate"))}this.aElements[e]=i;this.addKeptElement(i)};p.prototype.drop=function(e,i,n){if(n){e+=this.aElements.$created}const s=this.aElements[e];if(s["@$ui5.context.isTransient"]){throw new Error("Must not drop a transient element")}delete this.aElements[e];delete this.aElements.$byPredicate[i];const r=t.getPrivateAnnotation(s,"transientPredicate");if(r){this.aElements.$created-=1;this.iActiveElements-=1;this.iLimit+=1;delete this.aElements.$byPredicate[r]}};p.prototype.fetchValue=function(t,i,n,r,o){var a,u=i.split("/")[0],h,c=this;t.unlock();c.registerChangeListener(i,r);if(this.aElements.$byPredicate[u]){h=s.resolve()}else if((t===e.$cached||u!=="$count")&&this.aElements[u]!==undefined){h=s.resolve(this.aElements[u])}else{if(!this.oSyncPromiseAll){a=this.aElements.$tail?this.aElements.concat(this.aElements.$tail):this.aElements;this.oSyncPromiseAll=s.all(a)}h=this.oSyncPromiseAll}return h.then(function(){return c.drillDown(c.aElements,i,t,o)})};p.prototype.fill=function(e,t,i){var n;if(!this.aElements.$count&&i>this.aElements.length&&i-t>1024){if(this.aElements.$tail&&e){throw new Error("Cannot fill from "+t+" to "+i+", $tail already in use, # of elements is "+this.aElements.length)}this.aElements.$tail=e;i=this.aElements.length}for(n=t;n<i;n+=1){this.aElements[n]=e}this.oSyncPromiseAll=undefined};p.prototype.fixDuplicatePredicate=function(e,t){};p.prototype.getExclusiveFilter=function(){var e=[],i,n,s=this;function r(n){var r;i??=s.getTypes();r=t.getKeyFilter(n,s.sMetaPath,i);if(r){e.push(r)}}for(n=0;n<this.aElements.$created;n+=1){const e=this.aElements[n];if(!e["@$ui5.context.isTransient"]){r(e)}}(this.aElements.$deleted||[]).forEach(function(e){r(s.aElements.$byPredicate[e.predicate])});return e.length?"not ("+e.sort().join(" or ")+")":undefined};p.prototype.getQueryString=function(e){var i=this.getExclusiveFilter(),n=Object.assign({},this.mQueryOptions),s=this.sQueryString,r,o;if(this.aSeparateProperties.length){if(e){delete n.$count;n.$expand={[e]:n.$expand[e]};n.$select=[];t.selectKeyProperties(n,this.getTypes()[this.sMetaPath])}else{n.$expand={...n.$expand};this.aSeparateProperties.forEach(e=>{delete n.$expand[e]});if(t.isEmptyObject(n.$expand)){delete n.$expand}}o=true;r=true}if(i){if(n.$filter){r=true}else{s+=(s?"&":"?")+"$filter="+t.encode(i,false)}n.$filter=n.$filter?"("+n.$filter+") and "+i:i}if(r){s=this.oRequestor.buildQueryString(this.sMetaPath,n,false,this.bSortExpandSelect,o)}return s};p.prototype.getResourcePathWithQuery=function(e,t,i){var n=this.aElements.$created,s=this.getQueryString(i),r=s?"&":"?",o=t-e,a=this.sResourcePath+s;if(e<n){throw new Error("Must not request created element")}e-=n;if(e>0||o<Infinity){a+=r+"$skip="+e}if(o<Infinity){a+="&$top="+o}return a};p.prototype.getValue=function(t){var i;if(!t){return this.aElements}i=this.fetchValue(e.$cached,t);if(i.isFulfilled()){return i.getResult()}i.caught()};p.prototype.handleCount=function(e,i,n,s,r,o){var a=r["@odata.count"],u=this.aElements.$created,h,c=-1,l=this.aElements.$count,d,f=r.value.length,p;s-=o;f-=o;if(a){h=parseInt(a)-o;if(o===i||n===u&&f===h){this.iLimit=c=h}else{d=this.requestCount(this.oRequestor.getUnlockedAutoCopy(e))}}if(r["@odata.nextLink"]){this.bServerDrivenPaging=true;if(s<this.aElements.length){for(p=n+f;p<s;p+=1){delete this.aElements[p]}}else{this.aElements.length=n+f}}else if(f<s-n){if(c===-1){c=l&&l-this.iActiveElements}c=Math.min(c!==undefined?c:Infinity,n-u+f);this.aElements.length=u+c;this.iLimit=c;if(!a&&c>0&&!this.aElements[c-1]){c=undefined}}if(c!==-1){t.setCount(this.mChangeListeners,"",this.aElements,c!==undefined?c+this.iActiveElements:undefined)}return d};p.prototype.handleResponse=function(e,i,n){var s,r=this.aElements,o=r.$created,a,u=0,h,c=e.value.length,l;this.sContext=e["@odata.context"];this.visitResponse(e,n,undefined,undefined,i);for(l=0;l<c;l+=1){s=e.value[l];h=t.getPrivateAnnotation(s,"predicate");if(h){a=r.$byPredicate[h];if(a){if(o&&r.lastIndexOf(a,o-1)>=0){u+=1;r[i+c-u]=undefined;continue}const e=r.indexOf(a);if(e>=0&&e!==i+l-u){const e=this.fixDuplicatePredicate(s,h);if(e){h=e;a=s}else{throw new Error("Duplicate key predicate: "+h)}}if(!a["@odata.etag"]||s["@odata.etag"]===a["@odata.etag"]){t.updateNonExisting(a,s);s=a}else if(this.hasPendingChangesForPath(h)){throw new Error("Modified on client and on server: "+this.sResourcePath+h)}}r.$byPredicate[h]=s}r[i+l-u]=s}return u};p.prototype.isDeletingInOtherGroup=function(e){return Object.values(this.aElements.$deleted||{}).some(function(t){return t.groupId!==e})};p.prototype.isMissing=function(e){return this.aElements[e]===undefined&&!(this.$tail&&this.aReadRequests.some(t=>t.iStart<=e&&e<t.iEnd))};p.prototype.keepOnlyGivenElements=function(e){var i,n=-1,s={},r=this;e.forEach(function(e){s[e]=true});i=this.aElements.filter(function(e,i){var o;if(!e){return false}if(t.hasPrivateAnnotation(e,"transient")){n=i;return false}o=t.getPrivateAnnotation(e,"predicate");if(s[o]){n=i;delete s[o];return true}r.drop(i,o);return false});this.aElements.length=n+1;Object.keys(s).forEach(function(e){i.push(r.aElements.$byPredicate[e])});return i};p.prototype.move=function(e,t,i){const n=this.aElements;function s(e,t){while(e<t){const i=n[e];n[e]=n[t];n[t]=i;e+=1;t-=1}}function r(e,t,i){s(e,t-1);s(t,i-1);s(e,i-1)}if(i>0){if(e<t){r(e,e+i,t+i)}else if(e>t){r(t,e,e+i)}}};p.prototype.read=function(e,i,n,o,a,u,h){var c=0,l,d,f,p=this.oPendingRequestsPromise||this.aElements.$tail,g,P=0,m,y=this;if(e<0){throw new Error("Illegal index "+e+", must be >= 0")}if(i<0){throw new Error("Illegal length "+i+", must be >= 0")}if(p){return p.then(function(){return y.read(e,i,n,o,a,u,h)})}if(u){e+=this.aElements.$created}for(m=0;m<this.aElements.$created;m+=1){l=this.aElements[m];if(t.getPrivateAnnotation(l,"transient")===o.getGroupId()){P+=1}if(y.oBackup&&!l["@$ui5.context.isTransient"]){c+=1}}g=r._getReadIntervals(this.aElements,e,i,this.bServerDrivenPaging?0:Math.max(n,P,c),this.aElements.$created+this.iLimit);if(P&&(g.length>1||g.length&&g[0].start>this.aElements.$created)){o.unlock();return this.oRequestor.waitForBatchResponseReceived(o.getGroupId()).then(function(){return y.read(e,i,n,y.oRequestor.getUnlockedAutoCopy(o),a)})}g.forEach(function(e){y.requestElements(e.start,e.end,o.getUnlockedCopy(),P,a,h);a=undefined});o.unlock();f=e+i+n;d=this.aElements.slice(Math.max(0,e-n),f);if(this.aElements.$tail){d.push(this.aElements.$tail)}return s.all(d).then(function(){var t=y.aElements.slice(e,e+i);t.$count=y.aElements.$count;return{"@odata.context":y.sContext,value:t}})};p.prototype.refreshKeptElements=function(e,i,n,s){var r=this,o=Object.keys(this.aElements.$byPredicate).filter(h).sort(),a;function u(){var e,i=t.clone(r.mQueryOptions);if(r.mLateQueryOptions){t.aggregateExpandSelect(i,r.mLateQueryOptions)}if(s){delete i.$apply}delete i.$count;delete i.$orderby;delete i.$search;e=o.map(function(e){return t.getKeyFilter(r.aElements.$byPredicate[e],r.sMetaPath,a)});i.$filter=e.join(" or ");if(e.length>1){i.$top=e.length}return r.sResourcePath+r.oRequestor.buildQueryString(r.sMetaPath,i,false,true)}function h(e){var i=r.aElements.$byPredicate[e];return t.getPrivateAnnotation(i,"predicate")===e&&Object.keys(i).length>1&&!i["@$ui5.context.isDeleted"]&&!r.hasPendingChangesForPath(e,n)}this.checkSharedRequest();if(o.length===0){return undefined}a=this.getTypes();return this.oRequestor.request("GET",u(),e).then(function(e){var n;r.visitResponse(e,a,undefined,undefined,0);n=e.value.$byPredicate||{};o.forEach(function(e){var s,o;if(e in n){t.updateAll(r.mChangeListeners,e,r.aElements.$byPredicate[e],n[e])}else{s=r.aElements.$byPredicate[e];if(t.hasPrivateAnnotation(s,"transientPredicate")){o=r.removeElement(-1,e)}else{delete r.aElements.$byPredicate[e]}i(e,o)}})})};p.prototype.refreshSingleNoCollection=function(e,i){return this.requestSideEffects(e.getUnlockedCopy(),[t.getMetaPath(i)],[i.split("/")[0]],true)};p.prototype.removeKeptElement=function(e){this.checkSharedRequest();delete this.aElements.$byPredicate[e]};p.prototype.requestElements=function(e,t,i,n,r,o){var a,u={iEnd:t,bObsolete:false,iStart:e},h=this;this.aReadRequests.push(u);this.bSentRequest=true;a=s.all([this.mQueryOptions.$filter==="false"?Promise.resolve({"@odata.count":"0",value:[]}):this.oRequestor.request("GET",this.getResourcePathWithQuery(e,t),i,undefined,undefined,r),this.fetchTypes()]).then(function(e){var t;if(u.bObsolete){const e=new Error("Request is obsolete");e.canceled=true;throw e}h.checkRange(a,u.iStart,u.iEnd);if(h.aElements.$tail===a){h.aElements.$tail=undefined}t=h.handleResponse(e[0],u.iStart,e[1]);return h.handleCount(i,n,u.iStart,u.iEnd,e[0],t)},function(e){if(!e.canceled&&!u.bObsolete){h.checkRange(a,u.iStart,u.iEnd);h.fill(undefined,u.iStart,u.iEnd)}throw e}).finally(function(){h.aReadRequests.splice(h.aReadRequests.indexOf(u),1)});this.requestSeparateProperties(e,t,a,o);this.fill(a,e,t);return a};p.prototype.requestFilteredOrderedPredicates=async function(e,i,n){this.checkSharedRequest();const s=this.getTypes();const r=e.map(e=>t.getKeyFilter(this.aElements.$byPredicate[e],this.sMetaPath,s));const o={...this.mQueryOptions};delete o.$count;o.$filter=o.$filter?`${o.$filter} and (${r.join(" or ")})`:r.join(" or ");o.$top=r.length;if(n){delete o.$expand;delete o.$orderby;o.$select=[];t.selectKeyProperties(o,s[this.sMetaPath])}const a=this.sResourcePath+this.oRequestor.buildQueryString(this.sMetaPath,o,false,true,true);const u=await this.oRequestor.request("GET",a,i);this.visitResponse(u,s,undefined,undefined,0);return u.value.map(e=>{const i=t.getPrivateAnnotation(e,"predicate");if(!n){const n=this.aElements.$byPredicate[i];t.copySelected(n,e);this.aElements.$byPredicate[i]=e;this.aElements[this.aElements.indexOf(n)]=e;t.fireChanges(this.mChangeListeners,i,n,true);t.fireChanges(this.mChangeListeners,i,e)}return i})};p.prototype.requestSeparateProperties=async function(e,i,r,a){if(!this.aSeparateProperties.length){return}const u=await this.fetchTypes();this.aSeparateProperties.forEach(async h=>{let c;let l;const d={start:e,end:i,promise:new s(function(e,t){c=e;l=function(){const e=new Error("$$separate: canceled "+h);e.canceled=true;t(e)}})};d.promise.catch(()=>{});try{this.mSeparateProperty2ReadRequests[h].push(d);const s=this.getResourcePathWithQuery(e,i,h);const f=await this.oRequestor.request("GET",s,this.oRequestor.lockGroup("$single",this));let p;await r.catch(()=>{p=true});const g=this.mSeparateProperty2ReadRequests[h].indexOf(d);if(g<0){l();return}this.mSeparateProperty2ReadRequests[h].splice(g,1);if(p){l();return}this.visitResponse(f,u,undefined,undefined,e);for(const e of f.value){const i=t.getPrivateAnnotation(e,"predicate");const r=this.aElements.$byPredicate[i];if(r){if(r["@odata.etag"]===e["@odata.etag"]){t.updateSelected(this.mChangeListeners,i,r,e,[h])}else{n.error(`ETag changed: ${this.sResourcePath+i}`,s,o)}}}c();a(h,e,i)}catch(t){l();a(h,e,i,t)}})};p.prototype.requestSideEffects=function(e,i,n,r,o){var a,u,h,c,l,d=this.getTypes(),f=this;function p(e,n=t.getPrivateAnnotation(e,"predicate")){f.beforeUpdateSelected?.(n,e);t.updateSelected(f.mChangeListeners,n,f.aElements.$byPredicate[n],e,i,function e(s){s=s.slice(n.length+1);return!i.some(function(e){return t.getRelativePath(s,e)!==undefined})})}this.checkSharedRequest();h=t.intersectQueryOptions(Object.assign({},this.mQueryOptions,this.mLateQueryOptions),i,this.oRequestor.getModelInterface().fetchMetadata,this.sMetaPath,"",o);if(!h){return s.resolve()}this.beforeRequestSideEffects?.(h);delete h.$count;delete h.$orderby;delete h.$search;if(r){delete h.$filter}else{a=this.keepOnlyGivenElements(n);if(!a.length){return s.resolve()}h.$filter=a.map(function(e){return t.getKeyFilter(e,f.sMetaPath,d)}).sort().join(" or ");if(a.length>1){h.$top=a.length}t.selectKeyProperties(h,d[this.sMetaPath])}u=t.extractMergeableQueryOptions(h);c=this.sResourcePath+(r?n[0]:"")+this.oRequestor.buildQueryString(this.sMetaPath,h,false,true);return this.oRequestor.request("GET",c,e,undefined,undefined,undefined,undefined,this.sMetaPath,undefined,false,u,this,function(e){if(arguments.length){i=i.concat(e)}else{l=true;return i}}).then(function(e){if(l){return}if(r){f.visitResponse(e,d,undefined,n[0],undefined,true);p(e,n[0])}else{if(e.value.length!==a.length){throw new Error("Expected "+a.length+" row(s), but instead saw "+e.value.length)}f.visitResponse(e,d,undefined,"",NaN,true);for(let t=0,i=e.value.length;t<i;t+=1){p(e.value[t])}}})};p.prototype.reset=function(e,i,n,s,r){var o=this.aElements.$byPredicate,a=this.mChangeListeners,u=0,h,c,l,d=this;if(i){this.checkSharedRequest();this.oBackup={iActiveElements:this.iActiveElements,mChangeListeners:this.mChangeListeners,sContext:this.sContext,aElements:this.aElements.slice(),$byPredicate:o,$count:this.aElements.$count,$created:this.aElements.$created,iLimit:this.iLimit}}if(n){this.setQueryOptions(n,true)}for(l=0;l<this.aElements.$created;l+=1){h=this.aElements[l];c=t.getPrivateAnnotation(h,"transient");if(i?"@$ui5.context.isInactive"in h||c&&c!==i:c){e.push(t.getPrivateAnnotation(h,"predicate")||t.getPrivateAnnotation(h,"transientPredicate"));this.aElements[u]=h;u+=1}else{this.iActiveElements-=1}}Object.keys(o).forEach(function(t){if("@$ui5.context.isDeleted"in o[t]){e.push(t)}});this.mChangeListeners={};this.sContext=undefined;this.aElements.length=this.aElements.$created=u;this.aElements.$byPredicate={};this.aElements.$count=undefined;this.iLimit=Infinity;Object.keys(a).forEach(function(t){if(t==="$count"||e.includes(t.split("/")[0])){d.mChangeListeners[t]=a[t]}});e.forEach(function(e){d.aElements.$byPredicate[e]=o[e]});this.aReadRequests?.forEach(e=>{e.bObsolete=true});for(const e in this.mSeparateProperty2ReadRequests){this.mSeparateProperty2ReadRequests[e]=[]}if(a[""]){this.mChangeListeners[""]=a[""];t.fireChange(this.mChangeListeners,"")}Object.values(this.aElements.$deleted||{}).forEach(function(e){e.index=undefined})};p.prototype.restore=function(e){if(e){this.checkSharedRequest();this.iActiveElements=this.oBackup.iActiveElements;this.mChangeListeners=this.oBackup.mChangeListeners;this.sContext=this.oBackup.sContext;this.aElements.length=this.oBackup.aElements.length;this.oBackup.aElements.forEach(function(e,t){this[t]=e},this.aElements);this.aElements.$byPredicate=this.oBackup.$byPredicate;this.aElements.$count=this.oBackup.$count;this.aElements.$created=this.oBackup.$created;this.iLimit=this.oBackup.iLimit}this.oBackup=null};p.prototype.setEmpty=function(){this.iLimit=this.aElements.$count=0};p.prototype.setInactive=function(e,i){const n=this.getValue(e);t.updateAll(this.mChangeListeners,e,n,{"@$ui5.context.isInactive":i});if(!i){t.deletePrivateAnnotation(n,"initialData");this.iActiveElements+=1;t.addToCount(this.mChangeListeners,"",this.aElements,1)}};p.prototype.setPersistedCollection=function(e){this.aElements=e;this.iActiveElements=e.$created;this.iLimit=e.length};p.prototype.setSeparate=function(e=[]){this.aSeparateProperties=e;this.aSeparateProperties.forEach(e=>{this.mSeparateProperty2ReadRequests[e]=[]})};function g(e,t,i){f.call(this,e,t,i);this.oPromise=null}g.prototype=Object.create(f.prototype);g.prototype._delete=function(){throw new Error("Unsupported")};g.prototype.create=function(){throw new Error("Unsupported")};g.prototype.fetchValue=function(e,t,i,n,r){var o=this;if(r){throw new Error("Unsupported argument: bCreateOnDemand")}if(this.oPromise){e.unlock()}else{this.bSentRequest=true;this.oPromise=s.resolve(this.oRequestor.request("GET",this.sResourcePath+this.sQueryString,e,undefined,undefined,i,undefined,this.sMetaPath))}o.registerChangeListener("",n);return this.oPromise.then(function(e){return e&&typeof e==="object"?e.value:e})};g.prototype.update=function(){throw new Error("Unsupported")};function P(e,t,i,n,r,o,a,u,h){f.call(this,e,t,i,n,o,r);this.sMetaPath=u||this.sMetaPath;this.bPost=a;this.bPosting=false;if(h){this.oPromise=s.resolve({})}else{this.oPromise=null}}P.prototype=Object.create(f.prototype);P.prototype.buildOriginalResourcePath=function(e,t,i){if(i){this.calculateKeyPredicate(e,t,this.sMetaPath);this.sOriginalResourcePath=i(e)}};P.prototype.fetchValue=function(e,t,i,n,r,o){var a=this.sResourcePath+this.sQueryString,u=this;this.registerChangeListener(t,n);if(this.oPromise){e.unlock()}else{if(this.bPost){throw new Error("Cannot fetch a value before the POST request")}this.oPromise=s.all([this.oRequestor.request("GET",a,e,undefined,undefined,i,undefined,this.sMetaPath),this.fetchTypes()]).then(function(e){u.buildOriginalResourcePath(e[0],e[1],o);u.visitResponse(e[0],e[1]);return e[0]});this.bSentRequest=true}return this.oPromise.then(function(i){if(i&&i["$ui5.deleted"]){throw new Error("Cannot read a deleted entity")}return u.drillDown(i,t,e,r)})};P.prototype.getValue=function(t){var i;if(this.oPromise&&this.oPromise.isFulfilled()){i=this.drillDown(this.oPromise.getResult(),t,e.$cached);if(i.isFulfilled()){return i.getResult()}i.caught()}};P.prototype.post=function(e,i,n,r,o,a){var u,h={},c="POST",l,d=this;function f(){l=d.oRequestor.lockGroup(u,d,true)}function p(e){d.bPosting=true;return s.all([d.oRequestor.request(c,d.sResourcePath+d.sQueryString,e,h,i,n&&u!=="$single"&&f,undefined,undefined,"R#V#C"),d.fetchTypes()]).then(function(e){d.buildOriginalResourcePath(e[0],e[1],a);const i=t.getPrivateAnnotation(e[0],"headerMessages");if(i){d.oRequestor.getModelInterface().reportTransitionMessages(i,d.sResourcePath,false,d.sOriginalResourcePath);t.deletePrivateAnnotation(e[0],"headerMessages")}d.visitResponse(e[0],e[1]);if(d.mQueryOptions&&d.mQueryOptions.$select){t.updateSelected({},"",e[0],e[0],d.mQueryOptions.$select)}d.bPosting=false;if(l){l.unlock()}return e[0]},function(t){d.bPosting=false;if(l){l.unlock();l=undefined}if(o&&t.strictHandlingFailed){return o(t).then(function(t){var i;if(t){delete h["Prefer"];return p(e.getUnlockedCopy())}i=Error("Action canceled due to strict handling");i.canceled=true;throw i})}throw t})}this.checkSharedRequest();if(!this.bPost){throw new Error("POST request not allowed")}if(this.bPosting){throw new Error("Parallel POST requests not allowed")}if(n){u=e.getGroupId();this.oRequestor.relocateAll("$parked."+u,u,n)}if(i){c=i["X-HTTP-Method"]||c;delete i["X-HTTP-Method"];if(this.oRequestor.isActionBodyOptional()&&t.isEmptyObject(i)){i=undefined}}if(n&&!("@odata.etag"in n)){r=false}if(r||n){h["If-Match"]=r?"*":n}if(o){h["Prefer"]="handling=strict"}this.bSentRequest=true;this.oPromise=p(e);return this.oPromise};P.prototype.refreshSingleNoCollection=function(e,i){return this.requestSideEffects(e.getUnlockedCopy(),[t.getMetaPath(i)])};P.prototype.requestSideEffects=function(i,n,r){var o,a,u,h,c=this;this.checkSharedRequest();a=this.oPromise&&t.intersectQueryOptions(Object.assign({},this.mQueryOptions,this.mLateQueryOptions),n,this.oRequestor.getModelInterface().fetchMetadata,this.sMetaPath);if(!a){return s.resolve()}if(this.oPromise.isRejected()){throw new Error(this+": Cannot call requestSideEffects, cache is broken: "+this.oPromise.getResult().message)}o=t.extractMergeableQueryOptions(a);r=(r||this.sResourcePath)+this.oRequestor.buildQueryString(this.sMetaPath,a,false,true);u=s.all([this.oRequestor.request("GET",r,i,undefined,undefined,undefined,undefined,this.sMetaPath,undefined,false,o,this,function(e){if(arguments.length){n=n.concat(e)}else{h=true;return n}}),this.fetchTypes(),this.fetchValue(e.$cached,"")]).then(function(e){return e}).then(function(e){var i=e[0],s=e[2];if(h){return}t.setPrivateAnnotation(i,"predicate",t.getPrivateAnnotation(s,"predicate"));c.visitResponse(i,e[1]);t.updateSelected(c.mChangeListeners,"",s,i,n,function(e){return!n.some(function(i){return t.getRelativePath(e,i)!==undefined})})});return u};P.prototype.resetProperty=function(e){var t=this.oPromise.getResult();if(t){e.split("/").some(function(e){delete t["@odata.etag"];if(typeof t[e]==="object"){t=t[e];return false}delete t[e];return true})}};function m(e,t,i){var n=t.split("/"),s=n[0],r=s+JSON.stringify(i),o;g.call(this,e,t,{});o=e.$mSingletonCacheByPath??={};this.oSingleton=o[r]??=new P(e,s,i,undefined,undefined,undefined,undefined,undefined,true);this.sRelativePath=t.split(s+"/")[1]}m.prototype=Object.create(g.prototype);m.prototype.fetchValue=function(e,i,n,s,r){var o=this.oSingleton.sResourcePath+"/"+this.sRelativePath,a,u=this.oMetadataPromise||this.oRequestor.getModelInterface().fetchMetadata("/"+t.getMetaPath(o)),h=this;return u.then(function(){if(!h.oMetadataPromise){a=h.oSingleton.getLateQueryOptions()||{};t.aggregateExpandSelect(a,t.wrapChildQueryOptions("/"+h.oSingleton.sResourcePath,h.sRelativePath,{},h.oRequestor.getModelInterface().fetchMetadata));h.oSingleton.setLateQueryOptions(a)}h.oMetadataPromise=u;return h.oSingleton.fetchValue(e,h.sRelativePath,n,s,r)})};m.prototype.reset=function(){this.oSingleton.resetProperty(this.sRelativePath)};f.create=function(e,i,n,s,r,o){var a,u,h,c,l;if(o){h=i+e.buildQueryString(t.getMetaPath("/"+i),n,false,s);l=e.$mSharedCollectionCacheByPath??={};c=l[h];if(c){c.setActive(true)}else{u=Object.keys(l);a=u.length;if(a>100){u.filter(function(e){return!l[e].iActiveUsages}).sort(function(e,t){return l[e].iInactiveSince-l[t].iInactiveSince}).every(function(e){delete l[e];a-=1;return a>100})}c=l[h]=new p(e,i,n,s,r,o)}return c}return new p(e,i,n,s,r,o)};f.createProperty=function(e,t,i){if(t.includes("(")||t.endsWith("/$count")){return new g(e,t,i)}return new m(e,t,i)};f.createSingle=function(e,t,i,n,s,r,o,a){return new P(e,t,i,n,s,r,o,a)};f.from$skip=function(e,t){return c.test(e)?(t.$created||0)+Number(e):e};f.getElementIndex=function(e,i,n){var s=e[n];if(!s||t.getPrivateAnnotation(s,"predicate")!==i){n=e.indexOf(e.$byPredicate[i])}return n};return f},false);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/lib/_ConcatHelper", ["./_AggregationHelper"],function(e){"use strict";return{enhanceCache:function(t,n,s,i){var u;t.getResourcePathWithQuery=function(t,s){var a=e.buildApply(n,Object.assign({},this.mQueryOptions,{$skip:t,$top:s-t}),1,u,i);u=true;return this.sResourcePath+this.oRequestor.buildQueryString(this.sMetaPath,a,false,true)};t.handleResponse=function(e){s.forEach(function(t){var n;if(t){n=e.value.shift();if("UI5__count"in n){e["@odata.count"]=n.UI5__count}t(n)}});delete this.handleResponse;return this.handleResponse.apply(this,arguments)}}}},false);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/lib/_GroupLock", ["sap/ui/base/SyncPromise"],function(i){"use strict";function e(i,e,o,t,n,r){if(!e){throw new Error("Missing owner")}if(t&&!o){throw new Error("A modifying group lock has to be locked")}this.fnCancel=r;this.bCanceled=false;this.sGroupId=i;this.bLocked=!!o;this.bModifying=!!t;this.oOwner=e;this.oPromise=null;this.iSerialNumber=n===undefined?Infinity:n}e.prototype.cancel=function(){if(!this.bCanceled){this.bCanceled=true;if(this.fnCancel){this.fnCancel()}this.unlock(true)}};e.prototype.getGroupId=function(){return this.sGroupId};e.prototype.getOwner=function(){return this.oOwner};e.prototype.getSerialNumber=function(){return this.iSerialNumber};e.prototype.getUnlockedCopy=function(){return new e(this.sGroupId,this.oOwner,false,false,this.iSerialNumber)};e.prototype.isCanceled=function(){return this.bCanceled};e.prototype.isLocked=function(){return this.bLocked};e.prototype.isModifying=function(){return this.bModifying};e.prototype.toString=function(){return"sap.ui.model.odata.v4.lib._GroupLock(group="+this.sGroupId+", owner="+this.oOwner+(this.isLocked()?", locked":"")+(this.isModifying()?", modifying":"")+(this.iSerialNumber!==Infinity?", serialNumber="+this.iSerialNumber:"")+")"};e.prototype.unlock=function(i){if(this.bLocked===undefined&&!i){throw new Error("GroupLock unlocked twice")}this.bLocked=undefined;if(this.oPromise){this.oPromise.$resolve()}};e.prototype.waitFor=function(e){var o;if(this.bLocked&&this.sGroupId===e){if(!this.oPromise){this.oPromise=new i(function(i){o=i});this.oPromise.$resolve=o}return this.oPromise}};e.$cached=new e("$cached","sap.ui.model.odata.v4.lib._GroupLock");e.$cached.unlock=function(){};return e},false);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/lib/_Helper", ["./_Parser","sap/base/Log","sap/base/util/deepEqual","sap/base/util/isEmptyObject","sap/base/util/merge","sap/base/util/uid","sap/ui/base/SyncPromise","sap/ui/model/Filter","sap/ui/model/FilterOperator","sap/ui/thirdparty/URI"],function(e,t,n,r,i,a,u,o,s,f){"use strict";var c=/&/g,l=/^\w+$/,d="sap.ui.model.odata.v4.lib._Helper",p=/\=/g,g=/%29/g,h=/%28/g,y=/%27/g,$=/^(\$auto(\.\w+)?|\$direct|\w+)$/,v=/#/g,m=/\([^/]*|\/-?\d+/g,P=/\+/g,b=/'/g,E=/''/g,A=/\s+/g,j;function x(e){return e.replace(y,"'").replace(h,"(").replace(g,")")}j={addByPath:function(e,t,n){if(n){if(!e[t]){e[t]=[n]}else if(!e[t].includes(n)){e[t].push(n)}}},addChildrenWithAncestor:function(e,t,n){if(t.length){e.forEach(function(e){var r;if(t.includes(e)){n[e]=true;return}r=e.split("/");r.pop();while(r.length){if(t.indexOf(r.join("/"))>=0){n[e]=true;break}r.pop()}})}},addPromise:function(e){return new u(function(t,n){j.setPrivateAnnotation(e,"reject",n)})},addToCount:function(e,t,n,r){if(n.$count!==undefined){j.setCount(e,t,n,n.$count+r)}},addToSelect:function(e,t){e.$select??=[];t.forEach(function(t){if(!e.$select.includes(t)){e.$select.push(t)}})},adjustTargets:function(e,t,n,r,i){var a="additionalTargets"in e?"additionalTargets":j.getAnnotationKey(e,".additionalTargets"),u;u=[e.target].concat(e[a]).map(function(e){return e&&j.getAdjustedTarget(e,t,n,r,i)}).filter(function(e){return e});e.target=u[0];if(a){e[a]=u.slice(1)}},adjustTargetsInError:function(e,t,n,r){if(!e.error){return}j.adjustTargets(e.error,t,n,r);if(e.error.details){e.error.details.forEach(function(e){j.adjustTargets(e,t,n,r)})}},aggregateExpandSelect:function(e,t){if(t.$select){j.addToSelect(e,t.$select)}if(t.$expand){e.$expand??={};Object.keys(t.$expand).forEach(function(n){if(e.$expand[n]){j.aggregateExpandSelect(e.$expand[n],t.$expand[n])}else{e.$expand[n]=t.$expand[n]}})}},buildPath:function(){var e="",t,n;for(n=0;n<arguments.length;n+=1){t=arguments[n];if(t||t===0){if(e&&e!=="/"&&t[0]!=="("){e+="/"}e+=t}}return e},buildQuery:function(e,t){var n,r;if(!e){return""}n=Object.keys(e);if(n.length===0){return""}if(t){n=n.filter(e=>e[0]!=="$").concat(n.filter(e=>e[0]==="$").sort())}r=[];n.forEach(function(t){var n=e[t];if(Array.isArray(n)){n.forEach(function(e){r.push(j.encodePair(t,e))})}else{r.push(j.encodePair(t,n))}});return"?"+r.join("&")},buildSelect:function(e){var t={};if(!e||e.includes("*")){return true}e.forEach(function(e){var n=e.split("/"),r=n.length-1,i=t;n.some(function(e,t){if(t===r||n[t+1]==="*"){i[e]=true;return true}if(i[e]===true){return true}i=i[e]??={}})});return t},cancelNestedCreates:function(e,t){Object.keys(e).forEach(function(n){var r,i=e[n];if(i&&i.$postBodyCollection){r=new Error(t);r.canceled=true;i.forEach(function(e){j.getPrivateAnnotation(e,"reject")(r);j.cancelNestedCreates(e,t)})}})},checkGroupId:function(e,t,n,r){if(!t&&e===undefined||typeof e==="string"&&(t?l:$).test(e)||n&&e==="$single"){return}throw new Error((r||"Invalid group ID: ")+e)},clone:function e(t,n,r){var i;if(t===undefined||t===Infinity||t===-Infinity||Number.isNaN(t)){return t}i=JSON.stringify(t,n);return r?i:JSON.parse(i)},cloneNo$:function e(t){return j.clone(t,function(e,t){return e[0]==="$"?undefined:t})},convertExpandSelectToPaths:function(e){var t=[];function n(e,r){if(e.$select){e.$select.forEach(function(e){t.push(j.buildPath(r,e))})}if(e.$expand){Object.keys(e.$expand).forEach(function(t){n(e.$expand[t],j.buildPath(r,t))})}}n(e,"");return t},copyPrivateAnnotation:function(e,t,n){if(j.hasPrivateAnnotation(e,t)){if(j.hasPrivateAnnotation(n,t)){throw new Error("Must not overwrite: "+t)}j.setPrivateAnnotation(n,t,j.getPrivateAnnotation(e,t))}},copySelected:function(e,t){if(e["@$ui5.context.isSelected"]){t["@$ui5.context.isSelected"]=true}},createError:function(e,n,r,i){var a=e.responseText,u=e.getResponseHeader("Content-Type"),o,s=new Error(n+": "+e.status+" "+e.statusText),f=e.getResponseHeader("Retry-After"),c;s.status=e.status;s.statusText=e.statusText;s.requestUrl=r;s.resourcePath=i;if(e.status===0){s.message="Network error";return s}u&&=u.split(";")[0];if(e.status===412){o=e.getResponseHeader("Preference-Applied");if(o&&o.replace(A,"")==="handling=strict"){s.strictHandlingFailed=true}else{s.isConcurrentModification=true}}if(f){c=parseInt(f);s.retryAfter=new Date(Number.isNaN(c)?f:Date.now()+c*1e3)}if(u==="application/json"){try{s.error=JSON.parse(a).error;s.message=s.error.message;if(typeof s.message==="object"){s.message=s.error.message.value}}catch(e){t.warning(e.toString(),a,d)}}else if(u==="text/plain"){s.message=a}return s},createGetMethod:function(e,t){return function(){var n=this[e].apply(this,arguments);if(n.isFulfilled()){return n.getResult()}else if(t){if(n.isRejected()){n.caught();throw n.getResult()}else{throw new Error("Result pending")}}}},createMissing:function(e,t){t.reduce(function(e,n,r){if(!(n in e)){if(r+1<t.length){e[n]={}}else{e[n]=undefined;e[n+"@$ui5.noData"]=true}}return e[n]},e)},createRequestMethod:function(e){return function(){return Promise.resolve(this[e].apply(this,arguments))}},createTechnicalDetails:function(e){var t,n=e["@$ui5.error"],r=e["@$ui5.originalMessage"]||e,i={};if(n&&(n.status||n.cause)){n=n.cause||n;i.httpStatus=n.status;if(n.isConcurrentModification){i.isConcurrentModification=true}if(n.retryAfter){i.retryAfter=n.retryAfter}}if(!(r instanceof Error)){Object.defineProperty(i,"originalMessage",{enumerable:true,get:function(){t??=j.publicClone(r);return t}})}return i},decomposeError:function(e,t,n){var r=e.error.details&&e.error.details.map(function(e){return j.getContentID(e)}),i=j.getContentID(e.error);return t.map(function(t,a){var u=new Error(e.message);function o(e,n){if(a===0&&!n){if(e.target){e.message=e.target+": "+e.message}delete e.target;return true}return n===t.$ContentID}u.error=j.clone(e.error);u.requestUrl=n+t.url;u.resourcePath=t.$resourcePath;u.status=e.status;u.statusText=e.statusText;if(!o(u.error,i)){u.error.$ignoreTopLevel=true}if(e.strictHandlingFailed){u.strictHandlingFailed=true}u.error.details&&=u.error.details.filter(function(e,t){return o(e,r[t])});return u})},deepEqual:n,deletePrivateAnnotation:function(e,t){var n=e["@$ui5._"];if(n){delete n[t]}},deleteProperty:function(e,t){var n;if(t.includes("/")){n=t.split("/");t=n.pop();e=j.drillDown(e,n);if(!e){return}}delete e[t]},deleteUpdating:function(e,t){var n=t;e.split("/").some(function(e){var t=n[e];if(t===null||Array.isArray(t)){return true}if(typeof t==="object"){n=t;return false}delete n[e+"@$ui5.updating"]})},drillDown:function(e,t){if(typeof t==="string"){t=t.split("/")}return t.reduce(function(e,t){return e&&t in e?e[t]:undefined},e)},encode:function(e,t){var n=encodeURI(e).replace(c,"%26").replace(v,"%23").replace(P,"%2B");if(t){n=n.replace(p,"%3D")}return n},encodePair:function(e,t){return j.encode(e,true)+"="+j.encode(t,false)},extractMergeableQueryOptions:function(e){var t={};if("$expand"in e){t.$expand=e.$expand;e.$expand="~"}if("$select"in e){t.$select=e.$select;e.$select="~"}return t},extractMessages:function(e){var t=[];function n(n,r,i){var a={additionalTargets:j.getAdditionalTargets(n),code:n.code,message:n.message,numericSeverity:r,technical:i||n.technical,"@$ui5.error":e,"@$ui5.originalMessage":n};Object.keys(n).forEach(function(t){if(t[0]==="@"){if(t.endsWith(".numericSeverity")){a.numericSeverity=n[t]}else if(t.endsWith(".longtextUrl")&&e.requestUrl&&n[t]){a.longtextUrl=j.makeAbsolute(n[t],e.requestUrl)}}});if(typeof n.target==="string"){if(n.target[0]==="$"||!e.resourcePath){a.message=n.target+": "+n.message}else{a.target=n.target}}a.transition=true;t.push(a)}if(e.error){if(!e.error.$ignoreTopLevel){n(e.error,4,true)}if(e.error.details){e.error.details.forEach(function(e){n(e)})}}else{n(e,4,true)}return t},fetchPropertyAndType:function(e,t){return e(t).then(function(n){if(n&&n.$kind==="NavigationProperty"){return e(t+"/").then(function(){return n})}return n})},filterPaths:function(e,t){return t.filter(function(t){var n=j.getMetaPath(t);return e.every(function(e){return!j.hasPathPrefix(n,e)})})},fireChange:function(e,t,n,r,i){function a(e,t){for(let n=0;n<e.length;n+=1){e[n].onChange(t,r)}}if(!e){return}if(t in e){a(e[t],n)}if(i){t+="/";Object.keys(e).filter(e=>e.startsWith(t)).forEach(t=>a(e[t]))}},fireChanges:function(e,t,n,r){Object.keys(n).forEach(function(i){var a=j.buildPath(t,i),u=n[i];if(u&&typeof u==="object"){j.fireChanges(e,a,u,r)}else{j.fireChange(e,a,r?undefined:u)}});j.fireChange(e,t,r?undefined:n)},formatLiteral:function(e,t){if(e===undefined){throw new Error("Illegal value: undefined")}if(e===null){return"null"}switch(t){case"Edm.Binary":return"binary'"+e+"'";case"Edm.Boolean":case"Edm.Byte":case"Edm.Double":case"Edm.Int16":case"Edm.Int32":case"Edm.SByte":case"Edm.Single":return String(e);case"Edm.Date":case"Edm.DateTimeOffset":case"Edm.Decimal":case"Edm.Guid":case"Edm.Int64":case"Edm.TimeOfDay":return e;case"Edm.Duration":return"duration'"+e+"'";case"Edm.String":return"'"+String(e).replace(b,"''")+"'";default:throw new Error("Unsupported type: "+t)}},getAdditionalTargets:function(e){return j.getAnnotation(e,".additionalTargets")},getAdjustedTarget:function(e,t,n,r,i){var a,u,o;o=e.split("/");u=o.shift();if(u==="$Parameter"){e=o.join("/");u=o.shift()}else if(i){return"/"+i+"/"+e}if(t.$IsBound&&u===t.$Parameter[0].$Name){e=j.buildPath(r,o.join("/"));return e}if(!n){return e}a=t.$Parameter.some(function(e){return u===e.$Name});if(a){e=n+"/"+e;return e}},getAnnotation:function(e,t){var n=j.getAnnotationKey(e,t);return n&&e[n]},getAnnotationKey:function(e,n,r){var i,a,u=(r||"")+"@";Object.keys(e).forEach(function(e){if(e.startsWith(u)&&e.endsWith(n)){if(i){t.warning("Cannot distinguish "+i+" from "+e,undefined,d);a=true}i=e}});return a?undefined:i},getContentID:function(e){return j.getAnnotation(e,".ContentID")},getFilterForPredicate:function(t,n,r,i,a){var u,f=e.parseKeyPredicate(t);if(""in f){f[n.$Key[0]]=f[""];delete f[""]}u=(a?Object.keys(f):n.$Key).map(function(e){var t,n;if(typeof e==="string"){n=t=e}else{t=Object.keys(e)[0];n=e[t]}return new o(n,s.EQ,j.parseLiteral(decodeURIComponent(f[t]),r.getObject(i+"/"+n+"/$Type"),n))});return u.length===1?u[0]:new o({and:true,filters:u})},getKeyFilter:function(e,t,n,r){var i=[],a,u=j.getKeyProperties(e,t,n,r);if(!u){return undefined}for(a in u){i.push(a+" eq "+u[a])}return i.join(" and ")},getKeyPredicate:function(e,t,n,r,i){var a=j.getKeyProperties(e,t,n,r,true);if(!a){return undefined}r=Object.keys(a).map(function(e,t,n){var r=encodeURIComponent(a[e]);return i||n.length>1?encodeURIComponent(e)+"="+r:r});return"("+r.join(",")+")"},getKeyProperties:function(e,t,n,r,i){var a,u={};r??=n[t].$Key;a=r.some(function(r){var a,o,s,f,c,l,d;if(typeof r==="string"){a=o=r}else{a=Object.keys(r)[0];o=r[a];if(!i){a=o}}c=o.split("/");f=c.pop();s=j.drillDown(e,c);d=s[f];if(d===undefined||f+"@odata.type"in s){return true}l=n[j.buildPath(t,c.join("/"))];d=j.formatLiteral(d,l[f].$Type);u[a]=d});return a?undefined:u},getMetaPath:function(e){if(e[0]==="/"){return e.replace(m,"")}if(e[0]!=="("){e="/"+e}return e.replace(m,"").slice(1)},getMissingPropertyPaths:function(e,t){return(t.$select||[]).concat(Object.keys(t.$expand||{})).filter(function(t){return j.isMissingProperty(e,t)})},getPredicateIndex:function(e){var t=e?e.indexOf("(",e.lastIndexOf("/")):-1;if(t<0||!e.endsWith(")")){throw new Error("Not a list context path to an entity: "+e)}return t},getPredicates:function(e){var t,n=e.map(r);function r(e){var n=j.getPrivateAnnotation(e.getValue(),"predicate");if(!n){t=true}return n}return t?null:n},getPrivateAnnotation:function(e,t,n){const r=e["@$ui5._"]?.[t];return r===undefined?n:r},getQueryOptionsForPath:function(e,t){t=j.getMetaPath(t);if(t){t.split("/").some(function(t){e&&=e.$expand&&e.$expand[t];if(!e||e===true){e={};return true}})}return e||{}},getRelativePath:function(e,t){if(t.length){if(!e.startsWith(t)){return undefined}e=e.slice(t.length);if(e){if(e[0]==="/"){return e.slice(1)}if(e[0]!=="("){return undefined}}}return e},hasPathPrefix:function(e,t){return j.getRelativePath(e,t)!==undefined},hasPathSuffix:function(e,t){return e.endsWith(t)&&(t.startsWith("(")||e.at(-(t.length+1))==="/")},hasPrivateAnnotation:function(e,t){var n=e["@$ui5._"];return n?t in n:false},informAll:function(e,t,n,r,i){if(r===n){return}if(r&&typeof r==="object"){Object.keys(r).forEach(function(a){j.informAll(e,j.buildPath(t,a),n&&n[a],r[a],i)})}else{j.fireChange(e,t,!i&&r===undefined?null:r);r={}}if(n&&typeof n==="object"){Object.keys(n).forEach(function(a){if(!Object.hasOwn(r,a)){j.informAll(e,j.buildPath(t,a),n[a],undefined,i)}})}},inheritPathValue:function(e,t,n,r){e.forEach(function(i,a){var u=!(i in n)||r&&n[i]===null;if(a+1<e.length){if(u){n[i]={}}t=t[i];n=n[i]}else if(u){if(t[i+"@$ui5.noData"]){n[i+"@$ui5.noData"]=true}n[i]=t[i]}})},insert:function(e,t,n){if(t>=e.length){e[t]=n}else{e.splice(t,0,n)}},intersectQueryOptions:function(e,t,n,i,a,u){var o=[],s={},f=u&&n(i+"/@com.sap.vocabularies.Common.v1.Messages/$Path").getResult(),c,l,d,p={};function g(e,t){var r=t.split("/");return r.every(function(t,a){return a===0&&e||t==="$count"||n(i+"/"+r.slice(0,a+1).join("/")).getResult().$kind==="Property"})}if(t.indexOf("")>=0){throw new Error("Unsupported empty navigation property path")}if(t.indexOf("*")>=0){d=(e&&e.$select||[]).slice();if(f&&!d.includes(f)){d.push(f)}}else if(e&&e.$select&&e.$select.indexOf("*")<0){j.addChildrenWithAncestor(t,e.$select,p);j.addChildrenWithAncestor(e.$select,t,p);if(f&&t.includes(f)){p[f]=true}d=Object.keys(p).filter(g.bind(null,true))}else{d=t.filter(g.bind(null,false))}if(e&&e.$expand){o=Object.keys(e.$expand);o.forEach(function(u){var o,f=i+"/"+u,c=j.buildPath(a,u),l={},d;j.addChildrenWithAncestor([u],t,l);if(!r(l)){s[u]=e.$expand[u];return}d=j.stripPathPrefix(u,t);if(d.length){if(n(f).getResult().$isCollection){throw new Error("Unsupported collection-valued navigation property "+f)}o=j.intersectQueryOptions(e.$expand[u]||{},d,n,f,c);if(o){s[u]=o}}})}if(!d.length&&r(s)){return null}c=Object.assign({},e,{$select:d});l=n(i).getResult();if(l.$kind==="NavigationProperty"&&!l.$isCollection){j.selectKeyProperties(c,n(i+"/").getResult())}if(r(s)){delete c.$expand}else{c.$expand=s}return c},isDataAggregation:function(e){return e&&e.$$aggregation&&!e.$$aggregation.hierarchyQualifier},isEmptyObject:r,isMissingProperty:function(e,t){var n=t.split("/");function r(e,t){var i;if(Array.isArray(e)){return e.some(function(e){return r(e,t)})}i=e[n[t]];if(i&&typeof i==="object"&&t+1<n.length){return r(i,t+1)}return i===undefined}if(t.includes("*")){throw new Error("Unsupported property path "+t)}return r(e,0)},isSafeInteger:function(e){if(typeof e!=="number"||!isFinite(e)){return false}e=Math.abs(e);return e<=9007199254740991&&Math.floor(e)===e},isSelected:function(e,t){var n,r;if(!t){return false}if(t.$expand){for(n in t.$expand){r=j.getRelativePath(e,n);if(r){return j.isSelected(r,t.$expand[n])}}}return!t.$select||t.$select.includes("*")||t.$select.some(function(t){return j.hasPathPrefix(e,t)})},makeAbsolute:function(e,t){return x(new f(e).absoluteTo(t).toString())},makeRelativeUrl:function(e,t){return x(new f(e).relativeTo(t).toString())},makeUpdateData:function(e,t,n){return e.reduceRight(function(e,t){var r={};r[t]=e;if(n){r[t+"@$ui5.updating"]=true;n=false}return r},t)},merge:i,mergeQueryOptions:function(e,t,n){var r;function i(t,n){if(n&&e?.[t]!==n){r??={...e};r[t]=n}}i("$orderby",t);if(n){i("$filter",n[0]);i("$$filterBeforeAggregate",n[1]);i("$$filterOnAggregate",n[2])}return r||e},namespace:function(e){var t;e=e.split("/")[0].split("(")[0];t=e.lastIndexOf(".");return t<0?"":e.slice(0,t)},parseLiteral:function(e,t,n){function r(r){if(!isFinite(r)){throw new Error(n+": Not a valid "+t+" literal: "+e)}return r}if(e==="null"){return null}switch(t){case"Edm.Boolean":return e==="true";case"Edm.Byte":case"Edm.Int16":case"Edm.Int32":case"Edm.SByte":return r(parseInt(e));case"Edm.Date":case"Edm.DateTimeOffset":case"Edm.Decimal":case"Edm.Guid":case"Edm.Int64":case"Edm.TimeOfDay":return e;case"Edm.Double":case"Edm.Single":return e==="INF"||e==="-INF"||e==="NaN"?e:r(parseFloat(e));case"Edm.String":return e.slice(1,-1).replace(E,"'");default:throw new Error(n+": Unsupported type: "+t)}},parseRawHeaders:function(e){return e.split("\r\n").slice(0,-1).reduce((e,t)=>{const n=t.indexOf(": ");if(n<0){e[t]=""}else{e[t.slice(0,n).toLowerCase()]=t.slice(n+2)}return e},{})},publicClone:function(e,t,n){if(Array.isArray(e)){e=e.slice()}return j.clone(e,function(e,n){if(t?!e.startsWith("@$ui5."):e!=="@$ui5._"){return n}},n)},registerChangeListener:function(e,t,n){if(n){j.addByPath(e.mChangeListeners,t,n);n.setDeregisterChangeListener(function(){j.removeByPath(e.mChangeListeners,t,n)})}},removeByPath:function(e,t,n){var r=e[t],i;if(r){i=r.indexOf(n);if(i>=0){if(r.length===1){delete e[t]}else{r.splice(i,1)}}}},resetInactiveEntity:function(e,t,n){var r=j.getPrivateAnnotation(n,"initialData"),i=j.getPrivateAnnotation(n,"postBody"),a=Object.assign({},i);Object.keys(i).forEach(function(e){if(e in r){n[e]=i[e]=j.clone(r[e])}else{delete i[e];delete n[e]}});j.informAll(e,t,a,i,true);j.updateAll(e,t,n,{"@$ui5.context.isInactive":true});j.getPrivateAnnotation(n,"context").setInactive()},resolveIfMatchHeader:function(e,t){var n=e&&e["If-Match"];if(n&&typeof n==="object"){n=n["@odata.etag"];e=Object.assign({},e);if(n===undefined){delete e["If-Match"]}else{e["If-Match"]=t?"*":n}}return e},restoreUpdatingProperties:function(e,t){var n=t||{};Object.keys(e||{}).forEach(function(r){if(r.startsWith("@")){return}if(Array.isArray(e[r])){return}if(typeof e[r]==="object"){n[r]=j.restoreUpdatingProperties(e[r],n[r])}if(e[r+"@$ui5.updating"]){n[r]=e[r];n[r+"@$ui5.updating"]=e[r+"@$ui5.updating"];t=n}});return t},selectKeyProperties:function(e,t){if(t&&t.$Key){j.addToSelect(e,t.$Key.map(function(e){if(typeof e==="object"){return e[Object.keys(e)[0]]}return e}))}},setAnnotation:function(e,t,n){if(n!==undefined){e[t]=n}else{delete e[t]}},setCount:function(e,t,n,r){if(typeof r==="string"){r=parseInt(r)}j.updateExisting(e,t,n,{$count:r})},setLanguage:function(e,t){if(t&&!e.includes("?sap-language=")&&!e.includes("&sap-language=")){e+=(e.includes("?")?"&":"?")+"sap-language="+j.encode(t)}return e},setPrivateAnnotation:function(e,t,n){var r=e["@$ui5._"];r??=e["@$ui5._"]={};r[t]=n},stripPathPrefix:function(e,t){var n=e+"/";if(e===""){return t}return t.filter(function(t){return t===e||t.startsWith(n)}).map(function(e){return e.slice(n.length)})},toArray:function(e){if(e===undefined||e===null){return[]}if(Array.isArray(e)){return e.slice()}return[e]},uid:a,updateAll:function(e,t,n,r){Object.keys(r).forEach(function(i){var a=j.buildPath(t,i),u=r[i],o=n[i];if(i==="@$ui5._"){j.setPrivateAnnotation(n,"predicate",j.getPrivateAnnotation(r,"predicate"))}else if(Array.isArray(u)){n[i]=u;j.fireChange(e,a,u,false,true)}else if(u&&typeof u==="object"){o=n[i]=j.updateAll(e,a,o||{},u);j.fireChange(e,a,o)}else if(o!==u){n[i]=u;if(o&&typeof o==="object"){j.fireChanges(e,a,o,true)}else{j.fireChange(e,a,u)}}});return n},updateExisting:function(e,t,n,r){if(!r){return}Object.keys(n).forEach(function(i){var a=j.buildPath(t,i),u=n[i],o=r[i];if(i in r||i[0]==="#"){if(Array.isArray(o)){n[i]=o;j.fireChange(e,a,o,false,true)}else if(o&&typeof o==="object"){if(u){j.updateExisting(e,a,u,o);j.fireChange(e,a,u)}else{n[i]=o;j.fireChanges(e,a,o,false)}}else if(u!==o){n[i]=o;if(u&&typeof u==="object"){j.fireChanges(e,a,u,true)}else{j.fireChange(e,a,o)}}}});Object.keys(r).filter(function(e){return e[0]==="#"}).filter(function(e){return!(e in n)}).forEach(function(i){var a=r[i],u=j.buildPath(t,i);n[i]=a;j.fireChanges(e,u,a,false)})},updateNestedCreates:function(e,t,n,r,i,a){let u=false;const o=j.getQueryOptionsForPath(t,n);Object.keys(o.$expand||{}).forEach(function(e){const t=j.drillDown(r,e);if(t&&!Array.isArray(t)){u=true}});Object.keys(a||{}).filter(function(e){return!e.includes("/")}).forEach(function(o){const s=i[o];if(!s){delete r[o];return}r[o]=s;s.$count=undefined;s.$created=0;s.$byPredicate={};if(a[o]){s.$transfer=true}const f=n+"/"+o;j.setCount(e,f,s,s.length);const c={};const l=o+"/";Object.keys(a).forEach(function(e){if(e.startsWith(l)){c[e.slice(l.length)]=a[e]}});s.forEach(function(n){const r=j.getPrivateAnnotation(n,"predicate");s.$byPredicate[r]=n;j.updateNestedCreates(e,t,f+r,n,n,c)});u=true});return u},updateNonExisting:function(e,t){Object.keys(t).forEach(function(n){var r=t[n],i;if(n in e){i=e[n];if(r&&i&&typeof r==="object"&&!Array.isArray(r)){j.updateNonExisting(i,r)}}else{e[n]=r}})},updateSelected:function(e,t,n,r,i,a,u){function o(e,t){var n;if(e===true){return true}if(e[t]){return e[t]}n=t.indexOf("@");if(n===0||n>0&&e[t.slice(0,n)]){return true}}function s(t,n,r,i){Object.keys(r).forEach(function(a){if(!(a in i)&&a.includes("@")&&!a.startsWith("@$ui5.")&&o(n,a)&&!a.endsWith("@$ui5.updating")){delete r[a];j.fireChange(e,j.buildPath(t,a),undefined)}});Object.keys(i).forEach(function(u){var f=j.buildPath(t,u),c=o(n,u),l,d=i[u],p,g=r[u];if(!c){return}if(u==="@$ui5._"){l=j.getPrivateAnnotation(i,"predicate");if(a&&a(t)){p=j.getPrivateAnnotation(r,"predicate");if(l!==p){throw new Error("Key predicate of '"+t+"' changed from "+p+" to "+l)}}else{j.setPrivateAnnotation(r,"predicate",l)}}else if(Array.isArray(d)){if(!g?.$postBodyCollection){r[u]=d;j.fireChange(e,f,d,false,true)}}else if(d&&typeof d==="object"&&!u.includes("@")){r[u]=s(f,c,g||{},d);j.fireChange(e,f,d)}else if(g!==d&&!r[u+"@$ui5.updating"]){r[u]=d;if(g&&typeof g==="object"){j.fireChanges(e,f,g,true)}else if(c===true){j.fireChange(e,f,d)}}});if(u){return r}Object.keys(n).forEach(function(n){if(r[n]===undefined&&n!=="*"){r[n+"@$ui5.noData"]=true;j.fireChange(e,j.buildPath(t,n),undefined,true)}});return r}s(t,j.buildSelect(i),n,r)},updateTransientPaths:function(e,t,n){var r;for(r in e){if(r.includes(t)){e[r.replace(t,n)]=e[r];delete e[r]}}},wrapChildQueryOptions:function(e,n,i,a,u){var o="",s=n.split("/"),f,c=e,l={},p=l,g;if(n===""){return i}for(g=0;g<s.length;g+=1){c=j.buildPath(c,s[g]);o=j.buildPath(o,s[g]);if(s[g].endsWith("*")){f=null;continue}f=a(c).getResult();if(f.$kind==="NavigationProperty"){p.$expand={};if(!u&&g===s.length-1){i=Object.assign({},i);i.$select&&=i.$select.slice()}p=p.$expand[o]=g===s.length-1?i:{};if(!u){j.selectKeyProperties(p,a(c+"/").getResult())}o=""}else if(f.$kind!=="Property"){return undefined}}if(!f||f.$kind==="Property"){if(!r(i)){t.error("Failed to enhance query options for auto-$expand/$select as the"+" child binding has query options, but its path '"+n+"' points to a structural property",JSON.stringify(i),d);return undefined}j.addToSelect(p,[o])}if("$apply"in i){t.debug("Cannot wrap $apply into $expand: "+n,JSON.stringify(i),d);return undefined}return l}};return j},false);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/lib/_MetadataConverter", ["./_Helper","sap/base/Log","sap/ui/performance/Measurement"],function(e,t,o){"use strict";var s="sap.ui.model.odata.v4.lib._MetadataConverter";function r(){this.aliases={};this.oAnnotatable=null;this.entityContainer=null;this.entitySet=null;this.namespace=null;this.oOperation=null;this.reference=null;this.schema=null;this.type=null;this.result=null;this.url=null;this.xmlns=null}r.prototype.rCollection=/^Collection\((.*)\)$/;r.prototype.sEdmNamespace="http://docs.oasis-open.org/odata/ns/edm";r.prototype.sEdmxNamespace="http://docs.oasis-open.org/odata/ns/edmx";r.prototype.addToResult=function(e,o){if(e in this.result){t.warning("Duplicate qualified name "+e,undefined,s)}this.result[e]=o};r.prototype.annotatable=function(t,o,s){var r,n,a;if(typeof t==="string"){r=this.oAnnotatable;if(r){t=e.buildPath(r.path,t)}a=t;n=this.schema.$Annotations;if(n&&n[t]){t=n[t]}}this.oAnnotatable={parent:this.oAnnotatable,path:a,prefix:o||"",qualifiedName:undefined,qualifier:s,target:t}};r.prototype.convertXMLMetadata=function(e,t,s){var r;o.average("convertXMLMetadata","","sap.ui.model.odata.v4.lib._V4MetadataConverter");r=e.documentElement;if(r.localName!=="Edmx"||r.namespaceURI!==this.sRootNamespace){throw new Error(t+": expected <Edmx> in namespace '"+this.sRootNamespace+"'")}this.result={};this.url=t;this.bIgnoreAnnotations=s;this.traverse(r,this.oAliasConfig);this.traverse(r,this.oFullConfig,true);this.finalize();o.end("convertXMLMetadata");return this.result};r.prototype.getAnnotationValue=function(t,o){var s,r,n;switch(t){case"AnnotationPath":case"NavigationPropertyPath":case"Path":case"PropertyPath":o=this.resolveAliasInPath(o);case"Binary":case"Date":case"DateTimeOffset":case"Decimal":case"Duration":case"Guid":case"TimeOfDay":case"UrlRef":s={};s["$"+t]=o;return s;case"Bool":return o==="true";case"EnumMember":r=o.trim().replace(/ +/g," ").split(" ");for(n=0;n<r.length;n+=1){r[n]=this.resolveAliasInPath(r[n])}return{$EnumMember:r.join(" ")};case"Float":if(o==="NaN"||o==="INF"||o==="-INF"){return{$Float:o}}return parseFloat(o);case"Int":s=parseInt(o);return e.isSafeInteger(s)?s:{$Int:o};case"String":return o;default:return undefined}};r.prototype.getInlineAnnotationValue=function(e){var t,o=e.attributes,s,r;for(r=o.length-1;r>=0;r-=1){t=o.item(r);s=this.getAnnotationValue(t.name,t.value);if(s!==undefined){return s}}return true};r.prototype.getOrCreateArray=function(e,t){var o=e[t];o??=e[t]=[];return o};r.prototype.getOrCreateObject=function(e,t){var o=e[t];o??=e[t]={};return o};r.prototype.postProcessAnnotation=function(e,t){var o=this.oAnnotatable.parent;if(!this.bIgnoreAnnotations){o.target[o.qualifiedName]=t.length?t[0]:this.getInlineAnnotationValue(e)}};r.prototype.postProcessApply=function(e,t){var o=this.oAnnotatable.target;o.$Apply=t;o.$Function=this.resolveAlias(e.getAttribute("Function"));return o};r.prototype.postProcessCastOrIsOf=function(e,t){var o=e.localName,s=this.oAnnotatable.target;s["$"+o]=t[0];this.processTypedCollection(e.getAttribute("Type"),s);this.processFacetAttributes(e,s);return s};r.prototype.postProcessCollection=function(e,t){return t};r.prototype.postProcessLabeledElement=function(e,t){var o=this.oAnnotatable.target;o.$LabeledElement=t.length?t[0]:this.getInlineAnnotationValue(e);o.$Name=e.getAttribute("Name");return o};r.prototype.postProcessLabeledElementReference=function(e,t){return{$LabeledElementReference:this.resolveAlias(e.textContent)}};r.prototype.postProcessLeaf=function(e,t){return this.getAnnotationValue(e.localName,e.textContent)};r.prototype.postProcessNot=function(e,t){var o=this.oAnnotatable.target;o.$Not=t[0];return o};r.prototype.postProcessNull=function(e,t){var o=this.oAnnotatable,s=null;if(o.qualifiedName){s=o.target;s.$Null=null}return s};r.prototype.postProcessOperation=function(e,t){var o=this.oAnnotatable.target;o["$"+e.localName]=t;return o};r.prototype.postProcessPropertyValue=function(e,t){return{property:e.getAttribute("Property"),value:t.length?t[0]:this.getInlineAnnotationValue(e)}};r.prototype.postProcessRecord=function(e,t){var o,s=this.oAnnotatable.target,r=e.getAttribute("Type"),n;if(r){s.$Type=this.resolveAlias(r)}for(n=0;n<t.length;n+=1){o=t[n];s[o.property]=o.value}return s};r.prototype.postProcessUrlRef=function(e,t){return{$UrlRef:t[0]}};r.prototype.processAlias=function(e){var t=e.getAttribute("Alias");if(t){this.aliases[t]=e.getAttribute("Namespace")+"."}};r.prototype.processAnnotatableExpression=function(e){this.annotatable({})};r.prototype.processAnnotation=function(e){var t=this.oAnnotatable,o,s=t.prefix+"@"+this.resolveAlias(e.getAttribute("Term")),r=t.qualifier||e.getAttribute("Qualifier");if(r){s+="#"+r}if(typeof t.target==="string"){o=this.getOrCreateObject(this.schema,"$Annotations");if(this.bIgnoreAnnotations){return}t.target=o[t.target]={}}t.qualifiedName=s;this.annotatable(t.target,s)};r.prototype.processAnnotations=function(e){this.annotatable(this.resolveAliasInPath(e.getAttribute("Target"),true),undefined,e.getAttribute("Qualifier"))};r.prototype.processAttributes=function(e,t,o){var s,r;for(s in o){r=o[s](e.getAttribute(s));if(r!==undefined&&r!==null){t["$"+s]=r}}};r.prototype.processInclude=function(e){var t=this.getOrCreateArray(this.reference,"$Include");t.push(e.getAttribute("Namespace")+".")};r.prototype.processIncludeAnnotations=function(e){var t=this.reference,o={$TermNamespace:e.getAttribute("TermNamespace")+"."},s=this.getOrCreateArray(t,"$IncludeAnnotations");this.processAttributes(e,o,{TargetNamespace:function e(t){return t?t+".":t},Qualifier:this.setValue});s.push(o)};r.prototype.processPropertyValue=function(e){this.annotatable(this.oAnnotatable.target,e.getAttribute("Property"))};r.prototype.processReference=function(e){var t=this.getOrCreateObject(this.result,"$Reference");this.reference=t[e.getAttribute("Uri")]={};this.annotatable(this.reference)};r.prototype.resolveAlias=function(e){var t=e?e.indexOf("."):-1,o;if(t>=0&&!e.includes(".",t+1)){o=this.aliases[e.slice(0,t)];if(o){return o+e.slice(t+1)}}return e};r.prototype.resolveAliasInParentheses=function(e,t){var o=e?t.indexOf("("):-1;if(o>=0){return this.resolveAlias(t.slice(0,o))+"("+t.slice(o+1,-1).split(",").map(this.resolveAliasInParentheses.bind(this,e)).join(",")+")"}return this.resolveAlias(t)};r.prototype.resolveAliasInPath=function(e,t){var o,s="";if(!e.includes(".")){return e}o=e.indexOf("@");if(o>=0){s="@"+this.resolveAlias(e.slice(o+1));e=e.slice(0,o)}return e.split("/").map(this.resolveAliasInParentheses.bind(this,t)).join("/")+s};r.prototype.setIfFalse=function(e){return e==="false"?false:undefined};r.prototype.setIfTrue=function(e){return e==="true"?true:undefined};r.prototype.setNumber=function(e){return e?parseInt(e):undefined};r.prototype.setValue=function(e){return e};r.prototype.traverse=function(e,t,o){var s=this.oAnnotatable,r,n=e.childNodes,a,i,p,c,l=this.xmlns,u,f=[],_=t.__xmlns||this.xmlns,h,A;if(_&&_!==e.namespaceURI){return undefined}this.xmlns=_;if(o){this.processElement(e,t.__processor)}else if(t.__processor){t.__processor.call(this,e)}for(h=0;h<n.length;h+=1){a=n.item(h);if(a.nodeType===1){c=a.localName;r=t[c];if(!r&&t.__include){p=t.__include;for(A=0;A<p.length;A+=1){r=p[A][c];if(r){break}}}if(r){i=this.traverse(a,r,o);if(i!==undefined&&t.__postProcessor){f.push(i)}}}}if(t.__postProcessor){u=t.__postProcessor.call(this,e,f)}this.oAnnotatable=s;this.xmlns=l;return u};(function(e){var t,o,s,r,n;s={AnnotationPath:{__postProcessor:e.postProcessLeaf},Binary:{__postProcessor:e.postProcessLeaf},Bool:{__postProcessor:e.postProcessLeaf},Date:{__postProcessor:e.postProcessLeaf},DateTimeOffset:{__postProcessor:e.postProcessLeaf},Decimal:{__postProcessor:e.postProcessLeaf},Duration:{__postProcessor:e.postProcessLeaf},EnumMember:{__postProcessor:e.postProcessLeaf},Float:{__postProcessor:e.postProcessLeaf},Guid:{__postProcessor:e.postProcessLeaf},Int:{__postProcessor:e.postProcessLeaf},LabeledElementReference:{__postProcessor:e.postProcessLabeledElementReference},NavigationPropertyPath:{__postProcessor:e.postProcessLeaf},Path:{__postProcessor:e.postProcessLeaf},PropertyPath:{__postProcessor:e.postProcessLeaf},String:{__postProcessor:e.postProcessLeaf},TimeOfDay:{__postProcessor:e.postProcessLeaf}};r=[s];e.oAnnotationConfig={Annotation:{__xmlns:e.sEdmNamespace,__processor:e.processAnnotation,__postProcessor:e.postProcessAnnotation,__include:r}};t=[s,e.oAnnotationConfig];n={__processor:e.processAnnotatableExpression,__postProcessor:e.postProcessOperation,__include:t};o={And:n,Apply:{__processor:e.processAnnotatableExpression,__postProcessor:e.postProcessApply,__include:t},Cast:{__processor:e.processAnnotatableExpression,__postProcessor:e.postProcessCastOrIsOf,__include:t},Collection:{__postProcessor:e.postProcessCollection,__include:r},Eq:n,Ge:n,Gt:n,If:n,IsOf:{__processor:e.processAnnotatableExpression,__postProcessor:e.postProcessCastOrIsOf,__include:t},LabeledElement:{__processor:e.processAnnotatableExpression,__postProcessor:e.postProcessLabeledElement,__include:t},Le:n,Lt:n,Ne:n,Null:{__processor:e.processAnnotatableExpression,__postProcessor:e.postProcessNull,__include:[e.oAnnotationConfig]},Not:{__processor:e.processAnnotatableExpression,__postProcessor:e.postProcessNot,__include:t},Or:n,Record:{__processor:e.processAnnotatableExpression,__postProcessor:e.postProcessRecord,__include:[e.oAnnotationConfig],PropertyValue:{__processor:e.processPropertyValue,__postProcessor:e.postProcessPropertyValue,__include:t}},UrlRef:{__postProcessor:e.postProcessUrlRef,__include:r}};e.oAnnotationsConfig={Annotations:{__processor:e.processAnnotations,__include:[e.oAnnotationConfig]}};r.push(o);t.push(o);e.oAnnotationConfig.Annotation.Annotation=e.oAnnotationConfig.Annotation;e.oReferenceInclude={Reference:{__xmlns:e.sEdmxNamespace,__processor:e.processReference,__include:[e.oAnnotationConfig],Include:{__processor:e.processInclude},IncludeAnnotations:{__processor:e.processIncludeAnnotations}}}})(r.prototype);return r},false);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/lib/_MetadataRequestor", ["./_Helper","./_V2MetadataConverter","./_V4MetadataConverter","sap/base/Log","sap/ui/thirdparty/jquery"],function(e,t,a,r,jQuery){"use strict";return{create:function(n,i,s,o,d,u){var f={},c=e.buildQuery(o);return{read:function(l,p,h){var M;function g(e){var r=i==="4.0"||p?a:t,n=e.$XML,o=s&&!p;delete e.$XML;return Object.assign((new r).convertXMLMetadata(n,l,o),e)}if(l in f){if(h){throw new Error("Must not prefetch twice: "+l)}M=f[l].then(g);delete f[l]}else{M=new Promise(function(t,a){function i(){const s={method:"GET",headers:n};if(d){s.xhrFields={withCredentials:true}}jQuery.ajax(p?l:l+c,s).then(function(e,a,r){var n=r.getResponseHeader("Date"),i=r.getResponseHeader("ETag"),s={$XML:e},o=r.getResponseHeader("Last-Modified");if(n){s.$Date=n}if(i){s.$ETag=i}if(o){s.$LastModified=o}t(s)},function(t){var n=e.createError(t,"Could not load metadata");if(t.status===503&&t.getResponseHeader("Retry-After")&&u(n)){u().then(i,a)}else{r.error("GET "+l,n.message,"sap.ui.model.odata.v4.lib._MetadataRequestor");a(n)}})}const s=u();if(s){s.then(i,a)}else{i()}if(!p&&o&&"sap-context-token"in o){delete o["sap-context-token"];c=e.buildQuery(o)}});if(h){f[l]=M}else{M=M.then(g)}}return M}}}}},false);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/lib/_MinMaxHelper", ["./_Cache","./_ConcatHelper"],function(e,n){"use strict";return{createCache:function(r,t,u,a){var c={},i,o,f=new Promise(function(e){o=e});function s(e){var n,r={};function t(e){r[e]??={};return r[e]}for(n in c){t(c[n].measure)[c[n].method]=e[n]}o(r)}i=e.create(r,t,a,true);n.enhanceCache(i,u,[s],c);i.getMeasureRangePromise=function(){return f};return i}}},false);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/lib/_Parser", [],function(){"use strict";var e="[=(),; \t\"']|%(09|20|22|27|28|29|2c|2C|3b|3B)",t="\\$\\w+",n="[a-zA-Z_\\u0080-\\uFFFF][\\w\\u0080-\\uFFFF]*",r="(?:[ \\t]|%09|%20)",i=new RegExp(r+"+","g"),a=new RegExp("^not"+r+"+"),s="("+r+"+)(and|eq|ge|gt|le|lt|ne|or)"+r+"+",o="[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}",u="(?:\\*|%2[aA])",p=n+"(?:[./]"+n+")*"+"(?:[./]"+u+"|/\\$ref|/\\$count)?",c=u+"(?:/\\$ref)?",f=p+"|"+c,h='(?:[-+:./\\w"]|%2[bB]|%3[aA])+',d=new RegExp("^(?:"+s+"|"+e+"|("+o+")|("+f+")|("+h+")|("+t+"))"),l=/^[0-9a-f]{2}$/i,v={ceiling:{ambiguousParameters:true},concat:{type:"Edm.String"},contains:{type:"Edm.Boolean"},day:{type:"Edm.Int32",ambiguousParameters:true},endswith:{type:"Edm.Boolean"},floor:{ambiguousParameters:true},hour:{type:"Edm.Int32",ambiguousParameters:true},indexof:{type:"Edm.Int32"},length:{type:"Edm.Int32"},minute:{type:"Edm.Int32",ambiguousParameters:true},month:{type:"Edm.Int32",ambiguousParameters:true},round:{ambiguousParameters:true},second:{type:"Edm.Int32",ambiguousParameters:true},startswith:{type:"Edm.Boolean"},substring:{type:"Edm.String"},tolower:{type:"Edm.String"},toupper:{type:"Edm.String"},trim:{type:"Edm.String"},year:{type:"Edm.Int32",ambiguousParameters:true}},y={"(":{lbp:9,led:function(e,t){var n,r;if(t.id!=="PATH"){this.error("Unexpected ",e)}n=v[t.value];if(!n){this.error("Unknown function ",t)}t.id="FUNCTION";if(n.type){t.type=n.type}t.parameters=[];do{this.advanceBws();r=this.expression(0);if(n.ambiguousParameters){r.ambiguous=true}t.parameters.push(r);this.advanceBws()}while(this.advanceIf(","));this.advanceBws();this.advance(")");return t},nud:function(){var e;this.advanceBws();e=this.expression(0);this.advanceBws();this.advance(")");return e}},not:{lbp:7,nud:function(e){e.precedence=7;e.right=this.expression(7);e.type="Edm.Boolean";return e}}};function m(e,t){y[e]={lbp:t,led:function(e,n){e.type="Edm.Boolean";e.precedence=t;e.left=n;e.right=this.expression(t);return e}}}function g(e){y[e]={lbp:0,nud:function(e){e.precedence=99;return e}}}m("and",2);m("eq",3);m("ge",4);m("gt",4);m("le",4);m("lt",4);m("ne",3);m("or",1);g("PATH");g("VALUE");function w(){}w.prototype.advance=function(e){var t=this.current();if(e&&(!t||t.id!==e)){if(e==="OPTION"){e="system query option"}else if(e.length===1){e="'"+e+"'"}this.expected(e,t)}this.iCurrentToken+=1;return t};w.prototype.advanceIf=function(e){var t=this.current();if(t&&t.id===e){this.iCurrentToken+=1;return true}return false};w.prototype.current=function(){return this.aTokens[this.iCurrentToken]};w.prototype.error=function(e,t){var n;if(t){n=t.value;e+="'"+(n===" "?n:n.replace(i,""))+"' at "+t.at}else{e+="end of input"}throw new SyntaxError(e+": "+this.sText)};w.prototype.expected=function(e,t){this.error("Expected "+e+" but instead saw ",t)};w.prototype.finish=function(){if(this.iCurrentToken<this.aTokens.length){this.expected("end of input",this.aTokens[this.iCurrentToken])}};w.prototype.init=function(e){this.sText=e;this.aTokens=P(e);this.iCurrentToken=0};function E(){w.apply(this,arguments)}E.prototype=Object.create(w.prototype);E.prototype.advanceBws=function(){var e;for(;;){e=this.current();if(!e||e.id!==" "&&e.id!=="\t"){return}this.advance()}};E.prototype.expression=function(e){var t,n,r;r=this.advance();if(!r){this.expected("expression")}t=this.getSymbolValue(r,"nud");if(!t){this.expected("expression",r)}n=t.call(this,r);r=this.current();while(r&&this.getSymbolValue(r,"lbp",0)>e){n=this.getSymbolValue(r,"led").call(this,this.advance(),n);r=this.current()}return n};E.prototype.getSymbolValue=function(e,t,n){var r=y[e.id];return r&&t in r?r[t]:n};E.prototype.parse=function(e){var t;this.init(e);t=this.expression(0);this.finish();return t};function x(){w.apply(this,arguments)}x.prototype=Object.create(w.prototype);x.prototype.parse=function(e){var t,n={},r;this.init(e);this.advance("(");if(this.current().id==="VALUE"){n[""]=this.advance().value}else{do{t=this.advance("PATH").value;this.advance("=");r=this.advance("VALUE").value;n[t]=r}while(this.advanceIf(","))}this.advance(")");this.finish();return n};function b(){w.apply(this,arguments)}b.prototype=Object.create(w.prototype);b.prototype.parse=function(e){var t;this.init(e);t=this.parseSystemQueryOption();this.finish();return t};b.prototype.parseAnythingWithBrackets=function(e){var t="",n={},r,i=this;function a(){for(;;){r=i.advance();if(!r||r.id===";"){i.expected("')'",r)}t+=r.value;if(r.id===")"){return}if(r.id==="("){a()}}}this.advance("=");for(;;){r=this.current();if(!r||r.id===")"||r.id===";"){break}t+=this.advance().value;if(r.id==="("){a()}}if(!t){this.expected("an option value",r)}n[e.value]=t;return n};b.prototype.parseExpand=function(){var e={},t,n,r,i;this.advance("=");do{i=null;t=this.advance("PATH").value.replace(/%2a/i,"*");if(this.advanceIf("(")){i={};do{n=this.parseSystemQueryOption();r=Object.keys(n)[0];i[r]=n[r]}while(this.advanceIf(";"));this.advance(")")}e[t]=i}while(this.advanceIf(","));return{$expand:e}};b.prototype.parseSelect=function(){var e,t,n=[],r;this.advance("=");do{r=this.advance("PATH");e=r.value.replace(/%2a/i,"*");if(this.advanceIf("(")){t="(";do{e+=t+this.advance("PATH").value;t=","}while(this.advanceIf(","));e+=this.advance(")").value}n.push(e)}while(this.advanceIf(","));return{$select:n}};b.prototype.parseSystemQueryOption=function(){var e=this.advance("OPTION");switch(e.value){case"$expand":return this.parseExpand();case"$select":return this.parseSelect();default:return this.parseAnythingWithBrackets(e)}};function A(e){return String.fromCharCode(parseInt(e,16))}function I(e,t,n){var r;function i(t){var n=e[r];if(n==="%"&&e[r+1]==="2"&&e[r+2]==="7"){n="'";if(t){r+=2}}if(t){r+=1}return n}for(r=1;r<e.length;){if(i(true)==="'"){if(i(false)!=="'"){return e.slice(0,r)}i(true)}}throw new SyntaxError("Unterminated string at "+n+": "+t)}function T(e,t,n){var r,i,a=false,s;for(s=1;s<e.length;s+=1){if(a){a=false}else{r=e[s];if(r==="%"){i=e.slice(s+1,s+3);if(l.test(i)){r=A(i);s+=2}}if(r==='"'){return e.slice(0,s+1)}a=r==="\\"}}throw new SyntaxError("Unterminated string at "+n+": "+t)}function P(e){var t=1,n,r,i=e,s,o,u=[],p;while(i.length){r=d.exec(i);s=0;if(r){p=r[0];if(r[7]){n="OPTION"}else if(r[6]||r[4]){n="VALUE"}else if(r[5]){n="PATH";if(p==="false"||p==="true"||p==="null"){n="VALUE"}else if(p==="not"){r=a.exec(i);if(r){n="not";p=r[0]}}}else if(r[3]){n=A(r[3])}else if(r[2]){n=r[2];s=r[1].length}else{n=r[0]}if(n==='"'){n="VALUE";p=T(i,e,t)}else if(n==="'"){n="VALUE";p=I(i,e,t)}o={at:t+s,id:n,value:p}}else{throw new SyntaxError("Unknown character '"+i[0]+"' at "+t+": "+e)}i=i.slice(p.length);t+=p.length;u.push(o)}return u}return{buildFilterString:function(e){function t(e,n){var r;if(!e){return""}if(e.parameters){r=e.parameters.map(function(e){return t(e,0)}).join(",");return e.value+"("+r+")"}r=t(e.left,e.precedence)+e.value+t(e.right,e.precedence);if(e.precedence<n){r="("+r+")"}return r}return t(e,0)},parseFilter:function(e){return(new E).parse(e)},parseKeyPredicate:function(e){return(new x).parse(e)},parseSystemQueryOption:function(e){return(new b).parse(e)},sODataIdentifier:n,sWhitespace:r}},false);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/lib/_Requestor", ["./_Batch","./_GroupLock","./_Helper","./_V2Requestor","sap/base/Log","sap/ui/base/SyncPromise","sap/ui/core/cache/CacheManager","sap/ui/security/Security","sap/ui/thirdparty/jquery"],function(e,t,r,n,o,i,s,a,jQuery){"use strict";var u={Accept:"multipart/mixed"},c="sap.ui.model.odata.v4.optimisticBatch:",h="sap.ui.model.odata.v4.lib._Requestor",f="@com.sap.vocabularies.Common.v1.Messages",p=/(\$\w+)=~/g,d=/^\d+$/;function l(e){var t=Object.assign({},e);delete t["X-CSRF-Token"];return t}function m(e){var t;e=e.toLowerCase();for(t in this.headers){if(t.toLowerCase()===e){return this.headers[t]}}}function y(e,t,n,o,i){this.mBatchQueue={};this.bBatchSent=false;this.mHeaders=t||{};this.aLockedGroupLocks=[];this.oModelInterface=o;this.oOptimisticBatch=null;this.sQueryParams=r.buildQuery(n);this.mRunningChangeRequests={};this.iSessionTimer=0;this.iSerialNumber=0;this.sServiceUrl=e;this.vStatistics=n&&n["sap-statistics"];this.bWithCredentials=i;this.processSecurityTokenHandlers()}y.prototype.mFinalHeaders={"Content-Type":"application/json;charset=UTF-8;IEEE754Compatible=true"};y.prototype.mPredefinedPartHeaders={Accept:"application/json;odata.metadata=minimal;IEEE754Compatible=true"};y.prototype.mPredefinedRequestHeaders={Accept:"application/json;odata.metadata=minimal;IEEE754Compatible=true","OData-MaxVersion":"4.0","OData-Version":"4.0","X-CSRF-Token":"Fetch"};y.prototype.mReservedHeaders={accept:true,"accept-charset":true,"content-encoding":true,"content-id":true,"content-language":true,"content-length":true,"content-transfer-encoding":true,"content-type":true,"if-match":true,"if-none-match":true,isolation:true,"odata-isolation":true,"odata-maxversion":true,"odata-version":true,prefer:true,"sap-contextid":true};y.prototype.addChangeSet=function(e){var t=[],r=this.getOrCreateBatchQueue(e,true);t.iSerialNumber=this.getSerialNumber();r.iChangeSet+=1;r.splice(r.iChangeSet,0,t)};y.prototype.addChangeToGroup=function(e,t){var r;if(this.getGroupSubmitMode(t)==="Direct"){e.$resolve(this.request(e.method,e.url,this.lockGroup(t,this,true,true),e.headers,e.body,e.$submit,e.$cancel))}else{r=this.getOrCreateBatchQueue(t);r[r.iChangeSet].push(e)}};y.prototype.addQueryString=function(e,t,n){var o;n=this.convertQueryOptions(t,n,false,true);e=e.replace(p,function(e,t){var o=n[t];delete n[t];return r.encodePair(t,o)});o=r.buildQuery(n);if(!o){return e}return e+(e.includes("?")?"&"+o.slice(1):o)};y.prototype.batchRequestSent=function(e,t,r){var n,o;if(r){if(!(e in this.mRunningChangeRequests)){this.mRunningChangeRequests[e]=[]}n=new i(function(e){o=e});n.$resolve=o;n.$requests=t;this.mRunningChangeRequests[e].push(n)}};y.prototype.batchResponseReceived=function(e,t,r){var n;if(r){n=this.mRunningChangeRequests[e].filter(function(e){if(e.$requests===t){e.$resolve();return false}return true});if(n.length){this.mRunningChangeRequests[e]=n}else{delete this.mRunningChangeRequests[e]}}};y.prototype.buildQueryString=function(e,t,n,o,i){return r.buildQuery(this.convertQueryOptions(e,t,n,o),i)};y.prototype.cancelChanges=function(e,t){if(this.mRunningChangeRequests[e]){throw new Error("Cannot cancel the changes for group '"+e+"', the batch request is running")}this.cancelChangesByFilter(function(){return true},e,t);this.cancelGroupLocks(e)};y.prototype.cancelChangesByFilter=function(e,t,r){var n=false,o=this;function i(t){var i=o.mBatchQueue[t],s,a,u,c,h;for(h=i.length-1;h>=0;h-=1){if(Array.isArray(i[h])){a=i[h];for(c=a.length-1;c>=0;c-=1){s=a[c];if(s.$cancel&&e(s)){if(!s.$cancel(r)){u=new Error("Request canceled: "+s.method+" "+s.url+"; group: "+t);u.canceled=true;s.$reject(u);a.splice(c,1);n=true}}}}}}if(t){if(this.mBatchQueue[t]){i(t)}}else{for(t in this.mBatchQueue){i(t)}}return n};y.prototype.cancelGroupLocks=function(e){this.aLockedGroupLocks.forEach(function(t){if((!e||e===t.getGroupId())&&t.isModifying()&&t.isLocked()){t.cancel()}})};y.prototype.checkConflictingStrictRequest=function(e,t,r){function n(e,t){return r!==t&&e.some(o)}function o(e){return e.headers.Prefer==="handling=strict"}if(o(e)&&t.slice(0,t.iChangeSet+1).some(n)){throw new Error("All requests with strict handling must belong to the same change set")}};y.prototype.checkForOpenRequests=function(){var e=this;if(!r.isEmptyObject(this.mRunningChangeRequests)||Object.keys(this.mBatchQueue).some(function(t){return e.mBatchQueue[t].some(function(e){return Array.isArray(e)?e.length:true})})||this.aLockedGroupLocks.some(function(e){return e.isLocked()})){throw new Error("Unexpected open requests")}};y.prototype.checkHeaderNames=function(e){var t;for(t in e){if(this.mReservedHeaders[t.toLowerCase()]){throw new Error("Unsupported header: "+t)}}};y.prototype.cleanUpChangeSets=function(e){var t,n=false,o;function i(e){if(!s(e)){if(e.method==="DELETE"&&e.headers["If-Match"]&&e.headers["If-Match"]["@odata.etag"]&&t.find(function(t){return t.headers["If-Match"]===e.headers["If-Match"]})){e.headers["If-Match"]={"@odata.etag":"*"}}t.push(e)}}function s(e){if(e.method!=="PATCH"){return false}return t.some(function(t){if(t.method==="PATCH"&&t.headers["If-Match"]===e.headers["If-Match"]){r.merge(t.body,e.body);e.$resolve(t.$promise);t.$mergeRequests(e.$mergeRequests());return true}})}for(o=e.iChangeSet;o>=0;o-=1){t=[];e[o].forEach(i);if(t.length===0){e.splice(o,1)}else if(t.length===1&&this.isChangeSetOptional()){e[o]=t[0]}else{e[o]=t}n||=t.length>0}return n};y.prototype.clearSessionContext=function(e){if(e){this.oModelInterface.fireSessionTimeout()}delete this.mHeaders["SAP-ContextId"];if(this.iSessionTimer){clearInterval(this.iSessionTimer);this.iSessionTimer=0}};y.prototype.convertExpand=function(e,t){var r,n=[],o=this;if(!e||typeof e!=="object"){throw new Error("$expand must be a valid object")}r=Object.keys(e);if(t){r=r.sort()}r.forEach(function(r){var i=e[r];if(i&&typeof i==="object"){n.push(o.convertExpandOptions(r,i,t))}else{n.push(r)}});return n.join(",")};y.prototype.convertExpandOptions=function(e,t,r){var n=[];this.doConvertSystemQueryOptions(undefined,t,function(e,t){n.push(e+"="+t)},undefined,r);return n.length?e+"("+n.join(";")+")":e};y.prototype.convertQueryOptions=function(e,t,r,n){var o={};if(!t){return undefined}this.doConvertSystemQueryOptions(e,t,function(e,t){o[e]=t},r,n);return o};y.prototype.convertResourcePath=function(e){return e};y.prototype.destroy=function(){this.clearSessionContext()};y.prototype.doCheckVersionHeader=function(e,t,r){var n=e("OData-Version"),o=!n&&e("DataServiceVersion");if(o){throw new Error("Expected 'OData-Version' header with value '4.0' but received"+" 'DataServiceVersion' header with value '"+o+"' in response for "+this.sServiceUrl+t)}if(n==="4.0"||!n&&r){return}throw new Error("Expected 'OData-Version' header with value '4.0' but received value '"+n+"' in response for "+this.sServiceUrl+t)};y.prototype.doConvertResponse=function(e,t){return e};y.prototype.doConvertSystemQueryOptions=function(e,t,n,o,i){var s=this;Object.keys(t).forEach(function(e){var a=t[e];if(o&&e[0]==="$"){return}switch(e){case"$expand":if(a!=="~"){a=s.convertExpand(a,i)}break;case"$select":if(Array.isArray(a)){if(i){a=a.slice().sort();for(let e=1;e<a.length;){if(r.hasPathPrefix(a[e],a[e-1])){a.splice(e,1)}else{e+=1}}}a=a.join(",")}break;default:}n(e,a)})};y.prototype.fetchType=function(e,t){var r=this;if(t in e){return i.resolve(e[t])}return this.fetchTypeForPath(t).then(function(n){var o,s=[];if(n){o=r.getModelInterface().fetchMetadata(t+"/"+f).getResult();if(o){n=Object.create(n);n[f]=o}e[t]=n;(n.$Key||[]).forEach(function(n){if(typeof n==="object"){n=n[Object.keys(n)[0]];s.push(r.fetchType(e,t+"/"+n.slice(0,n.lastIndexOf("/"))))}});return i.all(s).then(function(){return n})}})};y.prototype.fetchTypeForPath=function(e){return this.oModelInterface.fetchMetadata(e+"/")};y.prototype.formatPropertyAsLiteral=function(e,t){return r.formatLiteral(e,t.$Type)};y.prototype.getGroupSubmitMode=function(e){return this.oModelInterface.getGroupProperty(e,"submit")};y.prototype.getModelInterface=function(){return this.oModelInterface};y.prototype.getOrCreateBatchQueue=function(e,t){var r,n=this.mBatchQueue[e];if(!n){r=[];r.iSerialNumber=0;n=this.mBatchQueue[e]=[r];n.iChangeSet=0;if(!t){this.oModelInterface.onCreateGroup(e)}}return n};y.prototype.getPathAndAddQueryOptions=function(e,t,r){var n=[],o,i={},s=this;e=e.slice(1,-5);if(t.$Parameter){t.$Parameter.forEach(function(e){i[e.$Name]=e})}if(t.$kind==="Function"){for(o in r){const e=i[o];if(e){if(e.$isCollection){throw new Error("Unsupported collection-valued parameter: "+o)}n.push(encodeURIComponent(o)+"="+encodeURIComponent(s.formatPropertyAsLiteral(r[o],e)))}}e+="("+n.join(",")+")"}else{for(o in r){if(!(o in i)){delete r[o]}}}return e};y.prototype.getSerialNumber=function(){this.iSerialNumber+=1;return this.iSerialNumber};y.prototype.getServiceUrl=function(){return this.sServiceUrl};y.prototype.getUnlockedAutoCopy=function(e){if(this.getGroupSubmitMode(e.getGroupId())!=="API"){return e.getUnlockedCopy()}return this.lockGroup("$auto",e.getOwner())};y.prototype.hasChanges=function(e,t){var r=this.mBatchQueue[e];if(r){return r.some(function(e){return Array.isArray(e)&&e.some(function(e){return e.headers["If-Match"]===t})})}return false};y.prototype.hasOnlyPatchesWithoutSideEffects=function(e){return this.getGroupSubmitMode(e)==="Auto"&&!!this.mBatchQueue[e]&&this.mBatchQueue[e].every(function(e){return Array.isArray(e)&&e.every(function(e){return e.method==="PATCH"&&e.headers.Prefer==="return=minimal"})})};y.prototype.hasPendingChanges=function(e){var t=this;function r(t){if(!e){return Object.keys(t)}return e in t?[e]:[]}return r(this.mRunningChangeRequests).length>0||this.aLockedGroupLocks.some(function(t){var r=t.getGroupId();return(e===undefined||r===e)&&t.isModifying()&&t.isLocked()&&!r.startsWith("$inactive.")})||r(this.mBatchQueue).some(function(e){return!e.startsWith("$inactive.")&&t.mBatchQueue[e].some(function(e){return Array.isArray(e)&&e.some(function(e){return e.$cancel})})})};y.prototype.isActionBodyOptional=function(){return false};y.prototype.isBatchSent=function(){return this.bBatchSent};y.prototype.isChangeSetOptional=function(){return true};y.prototype.lockGroup=function(e,r,n,o,i){var s;s=new t(e,r,n,o,this.getSerialNumber(),i);if(n){this.aLockedGroupLocks.push(s)}return s};y.prototype.mergeGetRequests=function(e){var t=[],n=this;function o(e){return e.$queryOptions&&t.some(function(t){if(t.$queryOptions&&e.url===t.url&&e.$owner===t.$owner){t.$queryOptions=r.clone(t.$queryOptions);r.aggregateExpandSelect(t.$queryOptions,e.$queryOptions);e.$resolve(t.$promise);if(t.$mergeRequests&&e.$mergeRequests){t.$mergeRequests(e.$mergeRequests())}return true}return false})}e.forEach(function(e){if(!o(e)){t.push(e)}});t.forEach(function(e){var t=e.$queryOptions;if(t){if(t.$expand&&!t.$select.length){t.$select=Object.keys(t.$expand).sort().slice(0,1)}e.url=n.addQueryString(e.url,e.$metaPath,t)}});t.iChangeSet=e.iChangeSet;if(e.bContinueOnError){t.bContinueOnError=true}return t};y.prototype.processBatch=function(e){var t,n=this.mBatchQueue[e]||[],o=this;function i(e){if(Array.isArray(e)){e.forEach(i)}else if(e.$submit){e.$submit()}}function s(e,t){if(Array.isArray(t)){t.forEach(s.bind(null,e))}else{t.$reject(e)}}function a(e,t){var n;e.forEach(function(e,i){var u,c,h=t[i];if(Array.isArray(h)){a(e,h)}else if(!h){const t=new Error("HTTP request was not processed because the previous request failed");t.cause=n;t.$reported=true;s(t,e)}else if(h.status>=400){o.oModelInterface.onHttpResponse(h.headers);h.getResponseHeader=m;n=r.createError(h,"Communication error",e.url?o.sServiceUrl+e.url:undefined,e.$resourcePath);if(Array.isArray(e)){r.decomposeError(n,e,o.sServiceUrl).forEach(function(t,r){e[r].$reject(t)})}else{e.$reject(n)}}else{o.oModelInterface.onHttpResponse(h.headers);if(h.responseText){try{o.doCheckVersionHeader(m.bind(h),e.url,true);c=o.doConvertResponse(JSON.parse(h.responseText),e.$metaPath)}catch(t){e.$reject(t);return}}else{c=e.method==="GET"?null:{}}o.reportHeaderMessages(e.$resourcePath,m.call(h,"sap-messages"),c);u=m.call(h,"ETag");if(u){c["@odata.etag"]=u}e.$resolve(c)}})}i(n);delete this.mBatchQueue[e];t=this.cleanUpChangeSets(n);if(n.length===0){return Promise.resolve()}this.bBatchSent=true;n=this.mergeGetRequests(n);this.batchRequestSent(e,n,t);return this.sendBatch(n,e,t).then(function(e){a(n,e)}).catch(function(e){var t=new Error("HTTP request was not processed because $batch failed");t.cause=e;t.$reported=true;s(t,n);throw e}).finally(function(){o.batchResponseReceived(e,n,t)})};y.prototype.processOptimisticBatch=function(e,t){var r,n,i=this.oOptimisticBatch,a,u=this;if(!i){return}a=this.oModelInterface.getOptimisticBatchEnabler();n=i.key;this.oOptimisticBatch=null;if(i.result){if(y.matchesOptimisticBatch(e,t,i.firstBatch.requests,i.firstBatch.groupId)){if(a){Promise.resolve(a(n)).then(async e=>{if(!e){await s.del(c+n);o.info("optimistic batch: disabled, batch payload deleted",n,h)}}).catch(u.oModelInterface.getReporter())}o.info("optimistic batch: success, response consumed",n,h);return i.result}o.warning("optimistic batch: mismatch, response skipped",n,h);s.del(c+n).catch(this.oModelInterface.getReporter())}if(a){r=e.some(function(e){return Array.isArray(e)||e.method!=="GET"});if(r){o.warning("optimistic batch: modifying batch not supported",n,h);return}Promise.resolve(a(n)).then(function(r){if(r){return s.set(c+n,{groupId:t,requests:e.map(function(e){return{headers:l(e.headers),method:"GET",url:e.url}})}).then(function(){o.info("optimistic batch: enabled, batch payload saved",n,h)})}o.info("optimistic batch: disabled",n,h)}).catch(u.oModelInterface.getReporter())}};y.prototype.processSecurityTokenHandlers=function(){var e=this;this.oSecurityTokenPromise=null;a.getSecurityTokenHandlers().some(function(t){var r=t(e.sServiceUrl);if(r!==undefined){e.oSecurityTokenPromise=r.then(function(t){e.checkHeaderNames(t);Object.assign(e.mHeaders,{"X-CSRF-Token":undefined},t);e.oSecurityTokenPromise=null}).catch(function(e){o.error("An error occurred within security token handler: "+t,e,h);throw e});return true}})};y.prototype.ready=function(){return i.resolve()};y.prototype.refreshSecurityToken=function(e){var t=this;if(!this.oSecurityTokenPromise){if(e!==this.mHeaders["X-CSRF-Token"]){return Promise.resolve()}this.oSecurityTokenPromise=new Promise(function(e,n){const o={method:"HEAD",headers:Object.assign({},t.mHeaders,{"X-CSRF-Token":"Fetch"})};if(t.bWithCredentials){o.xhrFields={withCredentials:true}}jQuery.ajax(t.sServiceUrl+t.sQueryParams,o).then(function(n,o,i){var s=i.getResponseHeader("X-CSRF-Token");if(s){t.mHeaders["X-CSRF-Token"]=s}else{delete t.mHeaders["X-CSRF-Token"]}t.oSecurityTokenPromise=null;t.oModelInterface.onHttpResponse(r.parseRawHeaders(i.getAllResponseHeaders()));e()},function(o){t.oSecurityTokenPromise=null;if(o.status===503&&o.getResponseHeader("Retry-After")){e()}else{n(r.createError(o,"Could not refresh security token"))}})})}return this.oSecurityTokenPromise};y.prototype.relocate=function(e,t,r){var n=this.mBatchQueue[e],o=this,i=n&&n[0].some(function(e,i){if(e.body===t){o.addChangeToGroup(e,r);n[0].splice(i,1);return true}});if(!i){throw new Error("Request not found in group '"+e+"'")}};y.prototype.relocateAll=function(e,t,r){var n=0,o=this.mBatchQueue[e],i=this;if(o){o[0].slice().forEach(function(e){if(!r||e.headers["If-Match"]===r){i.addChangeToGroup(e,t);o[0].splice(n,1)}else{n+=1}})}};y.prototype.removeChangeRequest=function(e){var t=this.cancelChangesByFilter(function(t){return t.$promise===e});if(!t){throw new Error("Cannot reset the changes, the batch request is running")}};y.prototype.removePost=function(e,t){var n=r.getPrivateAnnotation(t,"postBody"),o=this.cancelChangesByFilter(function(e){return e.body===n},e);if(!o){throw new Error("Cannot reset the changes, the batch request is running")}};y.prototype.reportHeaderMessages=function(e,t,n){if(t){const o=JSON.parse(t);if(e==="R#V#C"){r.setPrivateAnnotation(n,"headerMessages",o)}else{this.oModelInterface.reportTransitionMessages(o,e)}}};y.prototype.request=function(e,t,r,n,o,i,s,a,u,c,h,f,p){var d,l,m=r&&r.getGroupId()||"$direct",y,g=Infinity,v,S=this;if(m==="$cached"){l=new Error("Unexpected request: "+e+" "+t);l.$cached=true;throw l}if(r&&r.isCanceled()){if(s){s()}l=new Error("Request already canceled");l.canceled=true;return Promise.reject(l)}if(r){r.unlock();g=r.getSerialNumber()}t=this.convertResourcePath(t);u??=t;if(this.getGroupSubmitMode(m)!=="Direct"){if(m==="$single"&&this.mBatchQueue[m]){throw new Error("Cannot add new request to already existing $single queue")}y=new Promise(function(r,l){var y=S.getOrCreateBatchQueue(m);v={method:e,url:t,headers:Object.assign({},S.mPredefinedPartHeaders,S.mHeaders,n,S.mFinalHeaders),body:o,$cancel:s,$mergeRequests:p,$metaPath:a,$owner:f,$queryOptions:h,$reject:l,$resolve:r,$resourcePath:u,$submit:i};if(e==="GET"){y.push(v)}else if(c){y[0].unshift(v)}else{d=y.iChangeSet;while(y[d].iSerialNumber>g){d-=1}S.checkConflictingStrictRequest(v,y,d);y[d].push(v)}if(m==="$single"){S.submitBatch("$single").catch(S.oModelInterface.getReporter())}});v.$promise=y;return y}if(this.vStatistics!==undefined){h=Object.assign({"sap-statistics":this.vStatistics},h)}if(h){t=S.addQueryString(t,a,h)}if(i){i()}return this.sendRequest(e,t,Object.assign({},n,this.mFinalHeaders,e==="GET"?{"sap-cancel-on-close":"true"}:undefined),JSON.stringify(o),u==="R#V#C"?t:u).then(function(e){const t=S.doConvertResponse(typeof e.body==="string"?JSON.parse(e.body):e.body,a);S.reportHeaderMessages(u,e.messages,t);return t})};y.prototype.sendBatch=function(t,r,n){var o=e.serializeBatchRequest(t,this.getGroupSubmitMode(r)==="Auto"?"Group ID: "+r:"Group ID (API): "+r,this.oModelInterface.isIgnoreETag());return this.processOptimisticBatch(t,r)||this.sendRequest("POST","$batch"+this.sQueryParams,Object.assign(o.headers,u,n?undefined:{"sap-cancel-on-close":"true"},t.bContinueOnError?{Prefer:"odata.continue-on-error"}:undefined),o.body).then(function(t){if(t.messages!==null){throw new Error("Unexpected 'sap-messages' response header for batch request")}return e.deserializeBatchResponse(t.contentType,t.body)})};y.prototype.sendOptimisticBatch=function(){var e=window.location.href,t=this;s.get(c+e).then(function(r){var n={key:e};if(r){if(t.isBatchSent()){o.error("optimistic batch: #sendBatch called before optimistic batch "+"payload could be read",undefined,h);return}n.firstBatch=r;n.result=t.sendBatch(r.requests,r.groupId);o.info("optimistic batch: sent ",e,h)}t.oOptimisticBatch=n}).catch(this.oModelInterface.getReporter())};y.prototype.sendRequest=function(e,t,n,i,s){var a=this.sServiceUrl+t,u=this;return new Promise(function(c,f){function p(d){const l={contentType:n&&n["Content-Type"],data:i,headers:Object.assign({},u.mPredefinedRequestHeaders,u.mHeaders,r.resolveIfMatchHeader(n,u.oModelInterface.isIgnoreETag())),method:e};var m=u.mHeaders["X-CSRF-Token"];if(u.bWithCredentials){l.xhrFields={withCredentials:true}}jQuery.ajax(a,l).then(function(n,o,i){var s=i.getResponseHeader("ETag"),a=i.getResponseHeader("X-CSRF-Token");u.oModelInterface.onHttpResponse(r.parseRawHeaders(i.getAllResponseHeaders()));try{u.doCheckVersionHeader(i.getResponseHeader,t,!n)}catch(e){f(e);return}if(a){u.mHeaders["X-CSRF-Token"]=a}u.setSessionContext(i.getResponseHeader("SAP-ContextId"),i.getResponseHeader("SAP-Http-Session-Timeout"));n||=e==="GET"?null:{};if(s&&typeof n==="object"){n["@odata.etag"]=s}c({body:n,contentType:i.getResponseHeader("Content-Type"),messages:i.getResponseHeader("sap-messages"),resourcePath:t})},function(e){var t=e.getResponseHeader("SAP-ContextId"),n=e.getResponseHeader("X-CSRF-Token"),i;if(!d&&e.status===403&&n&&n.toLowerCase()==="required"){u.refreshSecurityToken(m).then(function(){p(true)},f)}else if(e.status===503&&e.getResponseHeader("Retry-After")&&u.oModelInterface.getOrCreateRetryAfterPromise(r.createError(e,""))){u.oModelInterface.getOrCreateRetryAfterPromise().then(p,f)}else{i="Communication error";if(t){u.setSessionContext(t,e.getResponseHeader("SAP-Http-Session-Timeout"))}else if(u.mHeaders["SAP-ContextId"]){i="Session not found on server";o.error(i,undefined,h);u.clearSessionContext(true)}f(r.createError(e,i,a,s))}})}const d=u.oModelInterface.getOrCreateRetryAfterPromise();if(d){d.then(p,f)}else if(u.oSecurityTokenPromise&&e!=="GET"){u.oSecurityTokenPromise.then(p)}else{p()}})};y.prototype.setContinueOnError=function(e){this.getOrCreateBatchQueue(e).bContinueOnError=true};y.prototype.setSessionContext=function(e,t){var r=d.test(t)?parseInt(t):0,n=Date.now()+30*60*1e3,i=this;this.clearSessionContext();if(e){this.mHeaders["SAP-ContextId"]=e;if(r>=60){this.iSessionTimer=setInterval(function(){if(Date.now()>=n){i.clearSessionContext(true);return}const e={method:"HEAD",headers:{"SAP-ContextId":i.mHeaders["SAP-ContextId"]}};if(i.bWithCredentials){e.xhrFields={withCredentials:true}}jQuery.ajax(i.sServiceUrl+i.sQueryParams,e).fail(function(e){if(e.getResponseHeader("SAP-Err-Id")==="ICMENOSESSION"){o.error("Session not found on server",undefined,h);i.clearSessionContext(true)}})},(r-5)*1e3)}else if(t!==null){o.warning("Unsupported SAP-Http-Session-Timeout header",t,h)}}};y.prototype.submitBatch=function(e){var t,r,n=this;r=i.all(this.aLockedGroupLocks.map(function(t){return t.waitFor(e)}));t=r.isPending();if(t){o.info("submitBatch('"+e+"') is waiting for locks",null,h)}return r.then(function(){if(n.hasOnlyPatchesWithoutSideEffects(e)){t=true;o.info("submitBatch('"+e+"') is waiting for potential side effect requests",null,h);return new Promise(function(e){setTimeout(function(){e()},0)})}}).then(function(){if(t){o.info("submitBatch('"+e+"') continues",null,h)}n.aLockedGroupLocks=n.aLockedGroupLocks.filter(function(e){return e.isLocked()});return n.processBatch(e)})};y.prototype.waitForBatchResponseReceived=function(e){return i.resolve(this.mBatchQueue[e][0][0].$promise)};y.prototype.waitForRunningChangeRequests=function(e){var t=this.mRunningChangeRequests[e];if(t){return t.length>1?i.all(t):t[0]}return i.resolve()};y.matchesOptimisticBatch=function(e,t,n,o){return t===o&&e.length===n.length&&e.every(function(e,t){return e.url===n[t].url&&r.deepEqual(l(e.headers),n[t].headers)})};y.create=function(e,t,r,o,i,s){var a=new y(e,r,o,t,s);if(i==="2.0"){n(a)}return a};return y},false);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/lib/_TreeState", ["./_Helper"],function(e){"use strict";class t{mPredicate2ExpandInfo={};mPredicate2OutOfPlace={};constructor(e,t){this.fnGetKeyFilter=t;this.sNodeProperty=e}collapse(t,i,a){if(!this.sNodeProperty){return}const r=e.getPrivateAnnotation(t,"predicate");const n=this.mPredicate2ExpandInfo[r];if(a||n&&n.levels!==0){delete this.mPredicate2ExpandInfo[r]}else{this.mPredicate2ExpandInfo[r]={collapseAll:i,filter:this.fnGetKeyFilter(t),levels:0,nodeId:e.drillDown(t,this.sNodeProperty)}}}delete(t){if(!this.sNodeProperty){return}const i=e.getPrivateAnnotation(t,"predicate");delete this.mPredicate2ExpandInfo[i];this.deleteOutOfPlace(i);e.getPrivateAnnotation(t,"spliced",[]).forEach(e=>{this.delete(e)})}deleteExpandInfo(t){delete this.mPredicate2ExpandInfo[e.getPrivateAnnotation(t,"predicate")];e.getPrivateAnnotation(t,"spliced",[]).forEach(e=>{this.deleteExpandInfo(e)})}deleteOutOfPlace(e,t){if(!this.isOutOfPlace(e)){return}if(t){for(;;){const t=this.mPredicate2OutOfPlace[e].parentPredicate;if(!this.isOutOfPlace(t)){break}e=t}}this.mPredicate2OutOfPlace[e].context.setOutOfPlace(false);delete this.mPredicate2OutOfPlace[e];Object.values(this.mPredicate2OutOfPlace).forEach(t=>{if(t.parentPredicate===e){this.deleteOutOfPlace(t.nodePredicate)}})}expand(t,i=1){if(!this.sNodeProperty){return}if(i>=Number.MAX_SAFE_INTEGER){i=null;this.deleteExpandInfo(t)}const a=e.getPrivateAnnotation(t,"predicate");const r=this.mPredicate2ExpandInfo[a];if(r&&!r.levels&&!r.collapseAll){delete this.mPredicate2ExpandInfo[a]}else{this.mPredicate2ExpandInfo[a]={filter:this.fnGetKeyFilter(t),levels:i,nodeId:e.drillDown(t,this.sNodeProperty)}}}getExpandFilters(e){return Object.keys(this.mPredicate2ExpandInfo).filter(e).map(e=>this.mPredicate2ExpandInfo[e].filter)}getExpandLevels(){const e=Object.values(this.mPredicate2ExpandInfo);return e.length?JSON.stringify(e.map(e=>({NodeID:e.nodeId,Levels:e.levels}))):undefined}getOutOfPlace(e){return this.mPredicate2OutOfPlace[e]}getOutOfPlaceCount(){return this.getOutOfPlacePredicates().length}getOutOfPlaceGroupedByParent(){const e={};for(const t of Object.values(this.mPredicate2OutOfPlace)){const i=t.parentPredicate;const a=e[i]??={nodeFilters:[],nodePredicates:[],parentFilter:t.parentFilter,parentPredicate:i};a.nodeFilters.push(t.nodeFilter);a.nodePredicates.push(t.nodePredicate)}return Object.values(e)}getOutOfPlacePredicates(){return Object.keys(this.mPredicate2OutOfPlace)}isOutOfPlace(e){return e in this.mPredicate2OutOfPlace}reset(){this.mPredicate2ExpandInfo={};this.resetOutOfPlace()}resetOutOfPlace(){this.getOutOfPlacePredicates().forEach(e=>this.deleteOutOfPlace(e))}setOutOfPlace(t,i){if(t["@$ui5.context.isTransient"]!==false){throw new Error("Not 'created persisted'")}const a={context:e.getPrivateAnnotation(t,"context"),nodeFilter:this.fnGetKeyFilter(t),nodePredicate:e.getPrivateAnnotation(t,"predicate")};a.context.setOutOfPlace(true);if(i){a.parentFilter=this.fnGetKeyFilter(i);a.parentPredicate=e.getPrivateAnnotation(i,"predicate")}this.mPredicate2OutOfPlace[a.nodePredicate]=a}stillOutOfPlace(t,i){t["@$ui5.context.isTransient"]=false;e.setPrivateAnnotation(t,"context",this.mPredicate2OutOfPlace[i].context)}}return t});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/lib/_V2MetadataConverter", ["./_Helper","./_MetadataConverter","sap/base/Log"],function(t,e,a){"use strict";var o="sap.ui.model.odata.v4.lib._V2MetadataConverter",n=/^(?:DELETE|GET|MERGE|PATCH|POST|PUT)$/,i="http://schemas.microsoft.com/ado/2007/06/edmx",r="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata",s="http://www.sap.com/Protocols/SAPData",p={creatable:{property:"Insertable",term:"@Org.OData.Capabilities.V1.InsertRestrictions"},deletable:{property:"Deletable",term:"@Org.OData.Capabilities.V1.DeleteRestrictions"},"deletable-path":{property:"Deletable",term:"@Org.OData.Capabilities.V1.DeleteRestrictions"},"field-control":{term:"@com.sap.vocabularies.Common.v1.FieldControl"},heading:{term:"@com.sap.vocabularies.Common.v1.Heading"},label:{term:"@com.sap.vocabularies.Common.v1.Label"},precision:{term:"@Org.OData.Measures.V1.Scale"},quickinfo:{term:"@com.sap.vocabularies.Common.v1.QuickInfo"},"requires-filter":{property:"RequiresFilter",term:"@Org.OData.Capabilities.V1.FilterRestrictions"},searchable:{property:"Searchable",term:"@Org.OData.Capabilities.V1.SearchRestrictions"},text:{term:"@com.sap.vocabularies.Common.v1.Text"},topable:{term:"@Org.OData.Capabilities.V1.TopSupported"},updatable:{property:"Updatable",term:"@Org.OData.Capabilities.V1.UpdateRestrictions"},"updatable-path":{property:"Updatable",term:"@Org.OData.Capabilities.V1.UpdateRestrictions"}},c={bday:{TermName:"Contact"},city:{Path:"adr",TermName:"Contact",V4Attribute:"locality"},country:{Path:"adr",TermName:"Contact"},email:{Path:"address",TermName:"Contact",V4Attribute:"uri",typeMapping:{home:"home",pref:"preferred",work:"work"},v4EnumType:"com.sap.vocabularies.Communication.v1.ContactInformationType",v4PropertyAnnotation:"@com.sap.vocabularies.Communication.v1.IsEmailAddress"},familyname:{Path:"n",TermName:"Contact",V4Attribute:"surname"},givenname:{Path:"n",TermName:"Contact",V4Attribute:"given"},honorific:{Path:"n",TermName:"Contact",V4Attribute:"prefix"},middlename:{Path:"n",TermName:"Contact",V4Attribute:"additional"},name:{TermName:"Contact",V4Attribute:"fn"},nickname:{TermName:"Contact"},note:{TermName:"Contact"},org:{TermName:"Contact"},"org-role":{TermName:"Contact",V4Attribute:"role"},"org-unit":{TermName:"Contact",V4Attribute:"orgunit"},photo:{TermName:"Contact"},pobox:{Path:"adr",TermName:"Contact"},region:{Path:"adr",TermName:"Contact"},street:{Path:"adr",TermName:"Contact"},suffix:{Path:"n",TermName:"Contact"},tel:{Path:"tel",TermName:"Contact",V4Attribute:"uri",typeMapping:{cell:"cell",fax:"fax",home:"home",pref:"preferred",video:"video",voice:"voice",work:"work"},v4EnumType:"com.sap.vocabularies.Communication.v1.PhoneType",v4PropertyAnnotation:"@com.sap.vocabularies.Communication.v1.IsPhoneNumber"},title:{TermName:"Contact"},zip:{Path:"adr",TermName:"Contact",V4Attribute:"code"},class:{TermName:"Event"},dtend:{TermName:"Event"},dtstart:{TermName:"Event"},duration:{TermName:"Event"},fbtype:{TermName:"Event"},location:{TermName:"Event"},status:{TermName:"Event"},transp:{TermName:"Event"},wholeday:{TermName:"Event"},body:{TermName:"Message"},from:{TermName:"Message"},received:{TermName:"Message"},sender:{TermName:"Message"},subject:{TermName:"Message"},completed:{TermName:"Task"},due:{TermName:"Task"},"percent-complete":{TermName:"Task",V4Attribute:"percentcomplete"},priority:{TermName:"Task"}},l={fiscalyear:"@com.sap.vocabularies.Common.v1.IsFiscalYear",fiscalyearperiod:"@com.sap.vocabularies.Common.v1.IsFiscalYearPeriod",year:"@com.sap.vocabularies.Common.v1.IsCalendarYear",yearmonth:"@com.sap.vocabularies.Common.v1.IsCalendarYearMonth",yearmonthday:"@com.sap.vocabularies.Common.v1.IsCalendarDate",yearquarter:"@com.sap.vocabularies.Common.v1.IsCalendarYearQuarter",yearweek:"@com.sap.vocabularies.Common.v1.IsCalendarYearWeek",url:"@Org.OData.Core.V1.IsURL"};function m(e,a){var o=e.oAnnotatable;if(o){a=t.buildPath(o.sPath,a)}this.oConverter=e;this.sPath=a;this.oParent=o;this.mSapAttributes=e.mSapAttributes;this.mAnnotationsForTarget=null}m.prototype.annotate=function(t,e){this.getTarget()[t]=e};m.prototype.consume=function(t){return this.oConverter.consumeSapAnnotation(t)};m.prototype.convert=function(t,e){var a,o;if(e===undefined||e===""){return}o=p[t];if(o.property){a=this.getOrCreateAnnotationRecord(o.term);a[o.property]=e}else{this.annotate(o.term,e)}};m.prototype.getOrCreateAnnotationRecord=function(t){return this.oConverter.getOrCreateObject(this.getTarget(),t)};m.prototype.getTarget=function(){if(!this.mAnnotationsForTarget){this.mAnnotationsForTarget=this.oConverter.convertedV2Annotations[this.sPath]={}}return this.mAnnotationsForTarget};m.prototype.peek=function(t){return this.oConverter.mSapAnnotations[t]};function u(){this.association=null;this.associations={};this.associationSet=null;this.associationSets=[];this.aBoundOperations=[];this.constraintRole=null;this.convertedV2Annotations={};this.defaultEntityContainer=null;this.mEntityContainersOfSchema={};this.mEntityType2EntitySetAnnotation={};this.mProperty2Semantics={};this.sPropertyName=null;this.navigationProperties=[];this.mSapAnnotations={};this.sTypeName=null;this.mProperty2Unit={};e.call(this)}u.prototype=Object.create(e.prototype);u.prototype.collectSapAnnotations=function(t){var e,a=t.attributes,o,n;this.mSapAnnotations={};for(o=0,n=a.length;o<n;o+=1){e=a.item(o);if(e.namespaceURI===s&&e.localName!=="content-version"){this.mSapAnnotations[e.localName]=e.value}}};u.prototype.consumeSapAnnotation=function(t){var e=this.mSapAnnotations[t];delete this.mSapAnnotations[t];return e};u.prototype.convertEntitySetAnnotation=function(t,e){var n,i;switch(e){case"creatable":case"deletable":case"updatable":if(t.peek(e)==="false"){t.convert(e,false)}break;case"deletable-path":case"updatable-path":n=e.slice(0,9);i=t.consume(e);if(t.peek(n)){t.convert(e,false);a.warning("Inconsistent metadata in '"+this.url+"'","Use either 'sap:"+n+"' or 'sap:"+n+"-path'"+" at entity set '"+t.sPath+"'",o)}else{t.convert(e,{$Path:i})}break;case"label":this.convertLabel(t);break;case"pageable":i=t.consume(e);if(i==="false"){t.annotate("@Org.OData.Capabilities.V1.SkipSupported",false);t.annotate("@Org.OData.Capabilities.V1.TopSupported",false)}break;case"requires-filter":i=t.consume(e);if(i==="true"){t.convert(e,true)}break;case"topable":i=t.consume(e);if(i==="false"){t.convert(e,false)}break;default:}};u.prototype.convertLabel=function(t){t.convert("label",t.consume("label"))};u.prototype.convertPropertyAnnotation=function(t,e){var a;switch(e){case"heading":case"label":case"quickinfo":t.convert(e,t.consume(e));break;case"field-control":case"precision":case"text":t.convert(e,{$Path:t.consume(e)});break;case"aggregation-role":a=t.consume(e);if(a==="dimension"){t.annotate("@com.sap.vocabularies.Analytics.v1.Dimension",true)}else if(a==="measure"){t.annotate("@com.sap.vocabularies.Analytics.v1.Measure",true)}break;case"display-format":a=t.consume(e);if(a==="NonNegative"){t.annotate("@com.sap.vocabularies.Common.v1.IsDigitSequence",true)}else if(a==="UpperCase"){t.annotate("@com.sap.vocabularies.Common.v1.IsUpperCase",true)}break;case"semantics":this.convertPropertySemanticsAnnotation(t);break;case"unit":this.mProperty2Unit[t.sPath]=t.consume("unit");break;case"visible":a=t.consume(e);if(a==="false"){t.annotate("@com.sap.vocabularies.UI.v1.Hidden",true);t.annotate("@com.sap.vocabularies.Common.v1.FieldControl",{$EnumMember:"com.sap.vocabularies.Common.v1.FieldControlType/Hidden"})}break;default:}};u.prototype.convertPropertySemanticsAnnotation=function(t){var e,n,i,r,s,p=t.peek("semantics").split(";"),m=p[0],u=c[m];if(m==="unit-of-measure"||m==="currency-code"){this.mProperty2Semantics[t.sPath]=t.consume("semantics")}else if(l[m]){t.annotate(l[m],true);t.consume("semantics")}else if(u){i={$Path:this.sPropertyName};e=t.oParent.getOrCreateAnnotationRecord("@com.sap.vocabularies.Communication.v1."+u.TermName);if(u.Path){s=this.getOrCreateObject(e,u.Path);s[u.V4Attribute||m]=i;if(u.v4PropertyAnnotation){t.annotate(u.v4PropertyAnnotation,true);if(p[1]){r=[];n=p[1].split("=")[1];n.split(",").forEach(function(t){var e=u.typeMapping[t];if(e){r.push(u.v4EnumType+"/"+e)}else{a.warning("Unsupported semantic type: "+t,undefined,o)}});if(r.length){s.type={EnumMember:r.join(" ")}}}e[u.Path]=[s]}else{e[u.Path]=s}}else{e[u.V4Attribute||m]=i}t.consume("semantics")}};u.prototype.finalize=function(){this.result.$Version="4.0";this.setDefaultEntityContainer();this.updateNavigationPropertiesAndCreateBindings();this.processBoundOperations();this.processUnitConversion()};u.prototype.mergeAnnotations=function(t,e){var a;for(a in t){if(a in e){e[a]=Object.assign(t[a],e[a])}else{e[a]=t[a]}}};u.prototype.postProcessSchema=function(e,a){var o,n,i,r,s,p;for(i in this.mEntityContainersOfSchema){n=this.mEntityContainersOfSchema[i];for(s in n){r=n[s];if(r.$kind!=="EntitySet"){continue}p=i+"/"+s;o=t.merge(this.convertedV2Annotations[p]||{},this.mEntityType2EntitySetAnnotation[r.$Type]);if(!t.isEmptyObject(o)){this.convertedV2Annotations[p]=o}}}if(this.bIgnoreAnnotations){if(!t.isEmptyObject(this.convertedV2Annotations)){this.schema.$Annotations={}}}else if(this.schema.$Annotations){this.mergeAnnotations(this.convertedV2Annotations,this.schema.$Annotations)}else if(!t.isEmptyObject(this.convertedV2Annotations)){this.schema.$Annotations=this.convertedV2Annotations}this.convertedV2Annotations={};this.mEntityContainersOfSchema={}};u.prototype.processAssociation=function(t){var e=this.namespace+t.getAttribute("Name");this.associations[e]=this.association={referentialConstraint:null,roles:{}}};u.prototype.processAssociationEnd=function(t){var e=t.getAttribute("Role");this.association.roles[e]={multiplicity:t.getAttribute("Multiplicity"),propertyName:undefined,typeName:this.resolveAlias(t.getAttribute("Type"))}};u.prototype.processAssociationSet=function(t){var e={associationName:this.resolveAlias(t.getAttribute("Association")),ends:[],entityContainer:this.entityContainer};this.associationSet=e;this.associationSets.push(e);this.consumeSapAnnotation("creatable");this.consumeSapAnnotation("deletable");this.consumeSapAnnotation("updatable")};u.prototype.processAssociationSetEnd=function(t){this.associationSet.ends.push({entitySetName:t.getAttribute("EntitySet"),roleName:t.getAttribute("Role")})};u.prototype.processBoundOperations=function(){var t=this;this.aBoundOperations.forEach(function(e){var a=t.result[e.$Parameter[0].$Type];a.$Key.forEach(function(t){e.$Parameter.some(function(a,o){if(a.$Name===t){e.$Parameter.splice(o,1);return true}})})})};u.prototype.processComplexType=function(t){this.processType(t,{$kind:"ComplexType"})};u.prototype.processDataServices=function(t){if(t.getAttributeNS(r,"DataServiceVersion")!=="2.0"){throw new Error(this.url+': expected DataServiceVersion="2.0": '+h(t))}};u.prototype.processDependent=function(t){var e=this.association.referentialConstraint;this.constraintRole=e.dependent={roleName:t.getAttribute("Role")}};u.prototype.processElement=function(t,e){this.collectSapAnnotations(t);if(e){e.call(this,t)}this.warnUnsupportedSapAnnotations(t)};u.prototype.processEntityContainer=function(t){var e=this.namespace+t.getAttribute("Name");this.mEntityContainersOfSchema[e]=this.entityContainer={$kind:"EntityContainer"};this.addToResult(e,this.entityContainer);if(t.getAttributeNS(r,"IsDefaultEntityContainer")==="true"){this.defaultEntityContainer=e}this.v2annotatable(e)};u.prototype.processEntitySet=function(t){var e,a=t.getAttribute("Name");this.entityContainer[a]=this.entitySet={$kind:"EntitySet",$Type:this.resolveAlias(t.getAttribute("EntityType"))};e=this.v2annotatable(a,this.convertEntitySetAnnotation);e.consume("creatable");e.consume("deletable");e.consume("updatable");if(e.consume("searchable")!=="true"){e.convert("searchable",false)}};u.prototype.processEntityType=function(t){var e={$kind:"EntityType"},a=this;this.processType(t,e);this.processAttributes(t,e,{Abstract:this.setIfTrue,BaseType:function(t){return t?a.resolveAlias(t):undefined}});this.convertLabel(this.oAnnotatable)};u.prototype.processEntityTypeKeyPropertyRef=function(t){var e=t.getAttribute("Name");this.getOrCreateArray(this.type,"$Key").push(e)};u.prototype.processFacetAttributes=function(t,e){var a=this;this.processAttributes(t,e,{DefaultValue:this.setValue,MaxLength:function(t){return t==="Max"?undefined:a.setNumber(t)},Nullable:this.setIfFalse,Precision:this.setNumber,Scale:this.setNumber,Unicode:this.setIfFalse});if(t.getAttribute("FixedLength")==="false"){e.$Scale="variable"}};u.prototype.processFunctionImport=function(t){var e,i=t.getAttributeNS(r,"HttpMethod"),s=i!=="GET"?"Action":"Function",c,l=t.getAttribute("Name"),m={$kind:s},u={$kind:s+"Import"},h=this.namespace+l,y=t.getAttribute("ReturnType"),f;u["$"+s]=h;this.processAttributes(t,u,{EntitySet:this.setValue});if(y){m.$ReturnType=f={};this.processTypedCollection(y,f)}if(!n.test(i)){a.warning("Unsupported HttpMethod at FunctionImport '"+l+"', removing this FunctionImport",undefined,o);this.consumeSapAnnotation("action-for");this.consumeSapAnnotation("applicable-path")}else{if(i!=="GET"&&i!=="POST"){m.$v2HttpMethod=i}this.addToResult(h,[m]);e=this.consumeSapAnnotation("action-for");if(e){m.$IsBound=true;m.$Parameter=[{$Name:null,$Nullable:false,$Type:this.resolveAlias(e)}];this.aBoundOperations.push(m);this.consumeSapAnnotation("applicable-path");c=this.consumeSapAnnotation("label");if(c){m[p["label"].term]=c}}else{this.entityContainer[l]=u;this.v2annotatable(l);this.convertLabel(this.oAnnotatable)}}this.oOperation=m};u.prototype.processParameter=function(t){var e,a=this.oOperation,o={$Name:t.getAttribute("Name")};this.processFacetAttributes(t,o);this.processTypedCollection(t.getAttribute("Type"),o);this.getOrCreateArray(a,"$Parameter").push(o);e=this.consumeSapAnnotation("label");if(e){o[p["label"].term]=e}};u.prototype.processPrincipal=function(t){var e=this.association.referentialConstraint;this.constraintRole=e.principal={roleName:t.getAttribute("Role")}};u.prototype.processReferentialConstraint=function(t){this.association.referentialConstraint={}};u.prototype.processReferentialConstraintPropertyRef=function(t){this.constraintRole.propertyRef=t.getAttribute("Name")};u.prototype.processSchema=function(t){var e=this.consumeSapAnnotation("schema-version");this.namespace=t.getAttribute("Namespace")+".";this.schema={$kind:"Schema"};this.addToResult(this.namespace,this.schema);if(e){this.schema["@Org.Odata.Core.V1.SchemaVersion"]=e}};u.prototype.processType=function(t,e){var a=this.namespace+t.getAttribute("Name");this.sTypeName=a;this.type=e;this.addToResult(a,e);this.v2annotatable(a)};u.prototype.processTypedCollection=function(t,e){var a=this.rCollection.exec(t);if(a){e.$isCollection=true;t=a[1]}if(!t.includes(".")){t="Edm."+t}switch(t){case"Edm.DateTime":e.$v2Type=t;if(this.mSapAnnotations["display-format"]==="Date"){t="Edm.Date";delete e.$Precision}else{t="Edm.DateTimeOffset"}break;case"Edm.Float":e.$v2Type=t;t="Edm.Single";break;case"Edm.Time":e.$v2Type=t;t="Edm.TimeOfDay";break;default:t=this.resolveAlias(t)}e.$Type=t};u.prototype.processTypeNavigationProperty=function(t){var e=this.consumeSapAnnotation("creatable"),n=this.consumeSapAnnotation("creatable-path"),i=this.consumeSapAnnotation("filterable"),r,s,p=t.getAttribute("Name"),c,l={$kind:"NavigationProperty"},m=this;function u(t,e,a){s=m.getOrCreateObject(m.mEntityType2EntitySetAnnotation,m.sTypeName);s=m.getOrCreateObject(s,t);s=m.getOrCreateArray(s,e);s.push(a)}this.type[p]=l;this.navigationProperties.push({associationName:this.resolveAlias(t.getAttribute("Relationship")),fromRoleName:t.getAttribute("FromRole"),property:l,propertyName:p,toRoleName:t.getAttribute("ToRole")});this.v2annotatable(p);if(e){c={$NavigationPropertyPath:p};if(n){a.warning("Inconsistent metadata in '"+this.url+"'","Use either 'sap:creatable' or 'sap:creatable-path' at navigation property '"+this.oAnnotatable.sPath+"'",o)}else if(e==="true"){c=null}}else if(n){c={$If:[{$Not:{$Path:n}},{$NavigationPropertyPath:p}]}}if(c){u("@Org.OData.Capabilities.V1.InsertRestrictions","NonInsertableNavigationProperties",c)}if(i==="false"){r={NavigationProperty:{$NavigationPropertyPath:p},FilterRestrictions:{Filterable:false}};u("@Org.OData.Capabilities.V1.NavigationRestrictions","RestrictedProperties",r)}};u.prototype.processTypeProperty=function(t){var e,n,i,r,s=t.getAttribute("Name"),p={$kind:"Property"},c=this;function l(t,n,i){if(c.type.$kind==="EntityType"){r=c.getOrCreateObject(c.mEntityType2EntitySetAnnotation,c.sTypeName);r=c.getOrCreateObject(r,t);r=c.getOrCreateArray(r,n);r.push({$PropertyPath:s})}else{a.warning("Unsupported SAP annotation at a complex type in '"+c.url+"'","sap:"+i+" at property '"+e.sPath+"'",o)}}this.sPropertyName=s;this.type[s]=p;this.processFacetAttributes(t,p);this.processTypedCollection(t.getAttribute("Type"),p);e=this.v2annotatable(s,this.convertPropertyAnnotation);if(e.consume("updatable")==="false"){if(e.consume("creatable")==="false"){e.annotate("@Org.OData.Core.V1.Computed",true)}else{e.annotate("@Org.OData.Core.V1.Immutable",true)}}if(e.consume("filterable")==="false"){l("@Org.OData.Capabilities.V1.FilterRestrictions","NonFilterableProperties","filterable")}i=e.consume("filter-restriction");if(i){switch(i){case"interval":n="SingleInterval";break;case"multi-value":n="MultiValue";break;case"single-value":n="SingleValue";break;default:a.warning("Inconsistent metadata in '"+this.url+"'",'Unsupported sap:filter-restriction="'+i+"\" at property '"+e.sPath+"'",o)}if(n){if(this.type.$kind==="EntityType"){r=this.getOrCreateObject(this.mEntityType2EntitySetAnnotation,this.sTypeName);r=this.getOrCreateArray(r,"@com.sap.vocabularies.Common.v1.FilterExpressionRestrictions");r.push({AllowedExpressions:{EnumMember:"com.sap.vocabularies.Common.v1.FilterExpressionType/"+n},Property:{$PropertyPath:s}})}else{a.warning("Unsupported SAP annotation at a complex type in '"+this.url+"'","sap:filter-restriction at property '"+e.sPath+"'",o)}}}if(e.consume("required-in-filter")==="true"){l("@Org.OData.Capabilities.V1.FilterRestrictions","RequiredProperties","required-in-filter")}if(e.consume("sortable")==="false"){l("@Org.OData.Capabilities.V1.SortRestrictions","NonSortableProperties","sortable")}};u.prototype.processUnitConversion=function(){var e=this;Object.keys(this.mProperty2Unit).forEach(function(n){var i,r,s=n.split("/")[0],p,c=e.mProperty2Unit[n],l=c.split("/"),m,u,h,y=l.length;for(h=0;h<y;h+=1){r=e.result[s];m=r[l[h]];if(!m){a.warning("Path '"+c+"' for sap:unit cannot be resolved",n,o);return}if(h<y-1){s=m.$Type}}u=e.mProperty2Semantics[s+"/"+l[y-1]];if(!u){a.warning("Unsupported sap:semantics at sap:unit='"+c+"'; expected 'currency-code' or 'unit-of-measure'",n,o);return}p=u==="currency-code"?"ISOCurrency":"Unit";p="@Org.OData.Measures.V1."+p;i=e.getOrCreateObject(e.result[t.namespace(n)+"."],"$Annotations");if(e.bIgnoreAnnotations){return}i=e.getOrCreateObject(i,n);if(!(p in i)){i[p]={$Path:c}}})};function h(t){var e,a=t.attributes,o="<"+t.nodeName,n,i;for(n=0,i=a.length;n<i;n+=1){e=a.item(n);o+=" "+e.name+'="'+e.value+'"'}return o+(t.childNodes.length?">":"/>")}u.prototype.setDefaultEntityContainer=function(){var t=this.defaultEntityContainer,e,a=this.result;if(t){a.$EntityContainer=t}else{e=Object.keys(a).filter(function(t){return a[t].$kind==="EntityContainer"});if(e.length===1){a.$EntityContainer=e[0]}}};u.prototype.updateNavigationPropertiesAndCreateBindings=function(){var t=this;this.navigationProperties.forEach(function(e){var a=t.associations[e.associationName],o=a.referentialConstraint,n=e.property,i=a.roles[e.toRoleName];n.$Type=i.typeName;i.propertyName=e.propertyName;if(i.multiplicity==="1"){n.$Nullable=false}if(i.multiplicity==="*"){n.$isCollection=true}if(o&&o.principal.roleName===e.toRoleName){n.$ReferentialConstraint={};n.$ReferentialConstraint[o.dependent.propertyRef]=o.principal.propertyRef}});this.associationSets.forEach(function(e){var a=t.associations[e.associationName],o=e.entityContainer;function n(t,e){var n=o[t.entitySetName],i=a.roles[e.roleName];if(i.propertyName){n.$NavigationPropertyBinding??={};n.$NavigationPropertyBinding[i.propertyName]=e.entitySetName}}n(e.ends[0],e.ends[1]);n(e.ends[1],e.ends[0])})};u.prototype.v2annotatable=function(t,e){var a=new m(this,t);this.oAnnotatable=a;if(e){e=e.bind(this);Object.keys(this.mSapAnnotations).forEach(function(t){e(a,t)})}return a};u.prototype.warnUnsupportedSapAnnotations=function(t){Object.keys(this.mSapAnnotations).forEach(function(e){a.warning("Unsupported annotation 'sap:"+e+"'",h(t),o)})};(function(t){var a;t.sRootNamespace=i;t.oAliasConfig={Reference:{__xmlns:e.sEdmxNamespace,Include:{__processor:t.processAlias}},DataServices:{Schema:{__processor:t.processAlias}}};a={NavigationProperty:{__processor:t.processTypeNavigationProperty},Property:{__processor:t.processTypeProperty}};t.oFullConfig={__include:[t.oReferenceInclude],DataServices:{__processor:t.processDataServices,Schema:{__postProcessor:t.postProcessSchema,__processor:t.processSchema,__include:[t.oAnnotationsConfig],Association:{__processor:t.processAssociation,End:{__processor:t.processAssociationEnd},ReferentialConstraint:{__processor:t.processReferentialConstraint,Dependent:{__processor:t.processDependent,PropertyRef:{__processor:t.processReferentialConstraintPropertyRef}},Principal:{__processor:t.processPrincipal,PropertyRef:{__processor:t.processReferentialConstraintPropertyRef}}}},ComplexType:{__processor:t.processComplexType,__include:[a]},EntityContainer:{__processor:t.processEntityContainer,AssociationSet:{__processor:t.processAssociationSet,End:{__processor:t.processAssociationSetEnd}},EntitySet:{__processor:t.processEntitySet},FunctionImport:{__processor:t.processFunctionImport,Parameter:{__processor:t.processParameter}}},EntityType:{__processor:t.processEntityType,__include:[a],Key:{PropertyRef:{__processor:t.processEntityTypeKeyPropertyRef}}}}}}})(u.prototype);return u},false);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/lib/_V2Requestor", ["./_Helper","./_Parser","sap/base/i18n/date/CalendarType","sap/ui/core/format/DateFormat","sap/ui/model/odata/ODataUtils"],function(e,t,r,a,n){"use strict";var i=/^\/Date\((-?\d+)\)\/$/,o,s=/^\/Date\((-?\d+)(?:([-+])(\d\d)(\d\d))?\)\/$/,c,u={},f=/\+/g,d=/^([^(]+)(\(.+\))$/,l=/\//g,p=/^PT(?:(?:(\d+)H)?(?:(\d+)M)?(?:(\d+)(\.\d+)?S)?)$/i,m;const y={};y.mFinalHeaders={"Content-Type":"application/json;charset=UTF-8"};y.mPredefinedPartHeaders={Accept:"application/json"};y.mPredefinedRequestHeaders={Accept:"application/json",MaxDataServiceVersion:"2.0",DataServiceVersion:"2.0","X-CSRF-Token":"Fetch"};y.mReservedHeaders={accept:true,"content-id":true,"content-transfer-encoding":true,"content-type":true,dataserviceversion:true,"if-match":true,"if-none-match":true,maxdataserviceversion:true,"sap-contextid":true,"x-http-method":true};y.convertBinary=function(e){return e.replace(f,"-").replace(l,"_")};y.convertDate=function(e){var t,r=i.exec(e);if(!r){throw new Error("Not a valid Edm.DateTime value '"+e+"'")}t=new Date(parseInt(r[1]));if(Number(r[1]%(24*60*60*1e3))!==0){throw new Error("Cannot convert Edm.DateTime value '"+e+"' to Edm.Date because it contains a time of day")}return o.format(t)};y.convertDateTimeOffset=function(e,t){var n=s.exec(e),i,o,c,f,d="yyyy-MM-dd'T'HH:mm:ss",l=t.$Precision,p;if(!n){throw new Error("Not a valid Edm.DateTimeOffset value '"+e+"'")}p=parseInt(n[1]);o=parseInt(n[3]);c=parseInt(n[4]);if(!n[2]||o===0&&c===0){i="Z"}else{f=n[2]==="-"?-1:1;p+=f*(o*60*60*1e3+c*60*1e3);i=n[2]+n[3]+":"+n[4]}if(l>0){d+="."+"".padEnd(l,"S")}u[d]??=a.getDateTimeInstance({calendarType:r.Gregorian,pattern:d,UTC:true});return u[d].format(new Date(p))+i};y.convertDoubleSingle=function(e){switch(e){case"NaN":case"INF":case"-INF":return e;default:return parseFloat(e)}};y.convertFilter=function(r,a){var n=t.parseFilter(r),i=this;function o(t,r){var a,n=c(r);if(n.$Type!=="Edm.String"){a=e.parseLiteral(t.value,n.$Type,n.path);t.value=i.formatPropertyAsLiteral(a,n)}}function s(e,t){throw new Error("Cannot convert filter to V2, "+t+" at "+e.at+": "+r)}function c(e){var t;if(e.type){return{$Type:e.type}}if(e.id==="PATH"){t=i.oModelInterface.fetchMetadata(a+"/"+e.value).getResult();if(!t){throw new Error("Invalid filter path: "+e.value)}return{path:e.value,$Type:t.$Type,$v2Type:t.$v2Type}}return c(e.parameters[0])}function u(e){if(e){if(e.id==="VALUE"&&e.ambiguous){s(e,"ambiguous type for the literal")}u(e.left);u(e.right);if(e.parameters){if(e.value==="contains"){e.value="substringof";e.parameters.push(e.parameters.shift())}e.parameters.forEach(u)}if(e.left&&e.right){if(e.left.id==="VALUE"){if(e.right.id==="VALUE"){s(e,"saw literals on both sides of '"+e.id+"'")}o(e.left,e.right)}else if(e.right.id==="VALUE"){o(e.right,e.left)}}}}u(n);return t.buildFilterString(n)};y.convertKeyPredicate=function(r,a){var n=this.fetchTypeForPath(e.getMetaPath(a)).getResult(),i=t.parseKeyPredicate(decodeURIComponent(r)),o=this;function s(t,r){var i=n[t];if(i.$Type!=="Edm.String"){r=o.formatPropertyAsLiteral(e.parseLiteral(r,i.$Type,a),i)}return encodeURIComponent(r)}if(""in i){return"("+s(n.$Key[0],i[""])+")"}return"("+n.$Key.map(function(e){return encodeURIComponent(e)+"="+s(e,i[e])}).join(",")+")"};y.convertNonPrimitive=function(e){var t,r,a,n,i=this;if(Array.isArray(e.results)){e.results.forEach(function(e){i.convertNonPrimitive(e)});return e.results}if(!e.__metadata||!e.__metadata.type){throw new Error("Cannot convert structured value without type information in "+"__metadata.type: "+JSON.stringify(e))}a=e.__metadata.type;r=i.getTypeForName(a);delete e.__metadata;for(t in e){n=e[t];if(n===null){continue}if(typeof n==="object"){if(n.__deferred){delete e[t]}else{e[t]=this.convertNonPrimitive(n)}continue}e[t]=this.convertPrimitive(n,r[t],a,t)}return e};y.convertPrimitive=function(e,t,r,a){switch(t&&t.$Type){case"Edm.Binary":return this.convertBinary(e);case"Edm.Date":return this.convertDate(e);case"Edm.DateTimeOffset":return this.convertDateTimeOffset(e,t);case"Edm.Boolean":case"Edm.Byte":case"Edm.Decimal":case"Edm.Guid":case"Edm.Int16":case"Edm.Int32":case"Edm.Int64":case"Edm.SByte":case"Edm.String":return e;case"Edm.Double":case"Edm.Single":return this.convertDoubleSingle(e);case"Edm.TimeOfDay":return this.convertTimeOfDay(e);default:throw new Error("Type '"+(t&&t.$Type)+"' of property '"+a+"' in type '"+r+"' is unknown; cannot convert value: "+e)}};y.convertResourcePath=function(e){var t=e.indexOf("?"),r="",a,n=-1,i=this;if(t>0){r=e.slice(t);e=e.slice(0,t)}a=e.split("/");return a.map(function(t){var r=d.exec(t);n+=t.length+1;if(r){t=r[1]+i.convertKeyPredicate(r[2],"/"+e.slice(0,n))}return t}).join("/")+r};y.convertTimeOfDay=function(e){var t,r=p.exec(e),a;if(!r){throw new Error("Not a valid Edm.Time value '"+e+"'")}a=Date.UTC(1970,0,1,r[1]||0,r[2]||0,r[3]||0);t=new Date(a);return m.format(t)+(r[4]||"")};y.doCheckVersionHeader=function(e,t,r){var a=e("DataServiceVersion"),n=!a&&e("OData-Version");if(n){throw new Error("Expected 'DataServiceVersion' header with value '1.0' or '2.0' but "+"received 'OData-Version' header with value '"+n+"' in response for "+this.sServiceUrl+t)}if(!a){return}a=a.split(";")[0];if(a==="1.0"||a==="2.0"){return}throw new Error("Expected 'DataServiceVersion' header with value '1.0' or '2.0' but "+"received value '"+a+"' in response for "+this.sServiceUrl+t)};y.doConvertResponse=function(e,t){var r,a,n,i,o,s=this;e=e.d;a=Array.isArray(e.results);if(!a&&!e.__metadata){n=Object.keys(e);r=e[n[0]];if(n.length===1){if(r===null){return{value:null}}else if(typeof r!=="object"){return{value:this.convertPrimitive(r,this.oModelInterface.fetchMetadata(t).getResult(),t,n[0])}}else if(r.__metadata){e=r}}}if(a&&!e.results.length){i=[]}else if(a&&!e.results[0].__metadata){o=this.oModelInterface.fetchMetadata(t).getResult();i=e.results.map(function(e){return s.convertPrimitive(e,o,t,"")})}else{i=this.convertNonPrimitive(e)}if(a){i={value:i};if(e.__count){i["@odata.count"]=e.__count}if(e.__next){i["@odata.nextLink"]=e.__next}}return i};y.doConvertSystemQueryOptions=function(t,r,a,n,i){var o,s={},c=this;function u(t,r){if(!Array.isArray(t)){t=t.split(",")}t.forEach(function(t){var a=t.indexOf("/");if(a>=0&&!t.includes(".")){t=t.slice(0,a)}s[e.buildPath(r,t)]=true})}function f(t,r,a){if(!r||typeof r!=="object"){throw new Error("$expand must be a valid object")}Object.keys(r).forEach(function(n){var i=e.buildPath(a,n),o=r[n];t.push(i);if(typeof o==="object"){Object.keys(o).forEach(function(e){switch(e){case"$expand":f(t,o.$expand,i);break;case"$select":u(o.$select,i);break;default:throw new Error("Unsupported query option in $expand: "+e)}})}if(!o.$select){s[i+"/*"]=true}});return t}Object.keys(r).forEach(function(e){var o=e[0]==="$",s=r[e];if(n&&o){return}switch(e){case"$count":e="$inlinecount";s=s?"allpages":"none";break;case"$expand":s=f([],s,"");s=(i?s.sort():s).join(",");break;case"$orderby":case"$search":break;case"$select":u(s);return;case"$filter":s=c.convertFilter(s,t);break;default:if(o){throw new Error("Unsupported system query option: "+e)}}a(e,s)});o=Object.keys(s);if(o.length){if(!r.$select){o.push("*")}a("$select",(i?o.sort():o).join(","))}};y.formatPropertyAsLiteral=function(e,t){function r(e,r){var a=e.parse(r);if(!a){throw new Error("Not a valid "+t.$Type+" value: "+r)}return a}if(e===null){return"null"}switch(t.$Type){case"Edm.Boolean":case"Edm.Byte":case"Edm.Decimal":case"Edm.Double":case"Edm.Guid":case"Edm.Int16":case"Edm.Int32":case"Edm.Int64":case"Edm.SByte":case"Edm.Single":case"Edm.String":break;case"Edm.Date":e=r(o,e);break;case"Edm.DateTimeOffset":e=r(c,e);break;case"Edm.TimeOfDay":e={__edmType:"Edm.Time",ms:r(m,e).getTime()};break;default:throw new Error("Type '"+t.$Type+"' in the key predicate is not supported")}return n.formatValue(e,t.$v2Type||t.$Type)};y.getPathAndAddQueryOptions=function(e,t,r,a,n){var i,o,s=this;e=e.slice(1,-5);if(t.$IsBound){e=e.slice(e.lastIndexOf(".")+1);if(typeof n==="function"){n=n()}o=this.getTypeForName(t.$Parameter[0].$Type);o.$Key.forEach(function(e){a[e]=s.formatPropertyAsLiteral(n[e],o[e])})}if(t.$Parameter){t.$Parameter.forEach(function(e){i=e.$Name;if(i in r){if(e.$isCollection){throw new Error("Unsupported collection-valued parameter: "+i)}a[i]=s.formatPropertyAsLiteral(r[i],e);delete r[i]}})}for(i in r){delete r[i]}if(t.$v2HttpMethod){r["X-HTTP-Method"]=t.$v2HttpMethod}return e};y.getTypeForName=function(e){this.mTypesByName??={};this.mTypesByName[e]??=this.oModelInterface.fetchMetadata("/"+e).getResult();return this.mTypesByName[e]};y.isActionBodyOptional=function(){return true};y.isChangeSetOptional=function(){return false};y.ready=function(){return this.oModelInterface.fetchEntityContainer().then(function(){})};function h(e){Object.assign(e,y);e.oModelInterface.reportStateMessages=function(){};e.oModelInterface.reportTransitionMessages=function(){}}h._setDateTimeFormatter=function(){o=a.getDateInstance({calendarType:r.Gregorian,pattern:"yyyy-MM-dd",UTC:true});c=a.getDateTimeInstance({calendarType:r.Gregorian,pattern:"yyyy-MM-dd'T'HH:mm:ss.SSSZ"});m=a.getTimeInstance({calendarType:r.Gregorian,pattern:"HH:mm:ss",UTC:true})};h._setDateTimeFormatter();return h},false);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/odata/v4/lib/_V4MetadataConverter", ["./_Helper","./_MetadataConverter"],function(t,e){"use strict";function o(){this.enumType=null;this.enumTypeMemberCounter=0;this.navigationProperty=null;e.call(this)}o.prototype=Object.create(e.prototype);o.prototype.finalize=function(){if(this.result.$Version!=="4.0"){throw new Error(this.url+": Unsupported OData version "+this.result.$Version)}};o.prototype.processActionOrFunction=function(t){var e=t.localName,o={$kind:e},s,i,n=this.namespace+t.getAttribute("Name"),r="",a=this;function p(t){var e={};a.processTypedCollection(t.getAttribute("Type"),e);return e.$isCollection?"Collection("+e.$Type+")":e.$Type}this.processAttributes(t,o,{IsBound:this.setIfTrue,EntitySetPath:this.setValue,IsComposable:this.setIfTrue});s=this.getOrCreateArray(this.result,n);if(!Array.isArray(s)){s=[];this.addToResult(n,s)}s.push(o);this.oOperation=o;if(o.$IsBound){i=t.getElementsByTagName("Parameter");r=t.localName==="Action"?p(i[0]):Array.prototype.map.call(i,p).join(",")}this.annotatable(n+"("+r+")")};o.prototype.processComplexType=function(t){this.processType(t,{$kind:"ComplexType"})};o.prototype.processEdmx=function(t){this.processAttributes(t,this.result,{Version:this.setValue})};o.prototype.processElement=function(t,e){if(e){e.call(this,t)}};o.prototype.processEntityContainer=function(t){var e=this.namespace+t.getAttribute("Name");this.entityContainer={$kind:"EntityContainer"};this.addToResult(e,this.entityContainer);this.addToResult("$EntityContainer",e);this.annotatable(e)};o.prototype.processEntitySet=function(t){var e=t.getAttribute("Name");this.entityContainer[e]=this.entitySet={$kind:"EntitySet",$Type:this.resolveAlias(t.getAttribute("EntityType"))};this.processAttributes(t,this.entitySet,{IncludeInServiceDocument:this.setIfFalse});this.annotatable(e)};o.prototype.processEntityType=function(t){this.processType(t,{$kind:"EntityType"})};o.prototype.processEntityTypeKeyPropertyRef=function(t){var e=t.getAttribute("Alias"),o,s=t.getAttribute("Name");if(e){o={};o[e]=s}else{o=s}this.getOrCreateArray(this.type,"$Key").push(o)};o.prototype.processEnumType=function(t){var e=this.namespace+t.getAttribute("Name"),o={$kind:"EnumType"};this.processAttributes(t,o,{IsFlags:this.setIfTrue,UnderlyingType:function(t){return t!=="Edm.Int32"?t:undefined}});this.enumType=o;this.addToResult(e,o);this.enumTypeMemberCounter=0;this.annotatable(e)};o.prototype.processEnumTypeMember=function(e){var o=e.getAttribute("Name"),s=e.getAttribute("Value"),i;if(s){i=parseInt(s);if(!t.isSafeInteger(i)){i=s}}else{i=this.enumTypeMemberCounter;this.enumTypeMemberCounter+=1}this.enumType[o]=i;this.annotatable(o)};o.prototype.processFacetAttributes=function(t,e){var o=this;this.processAttributes(t,e,{MaxLength:function(t){return t==="max"?undefined:o.setNumber(t)},Precision:this.setNumber,Scale:function(t){return t==="variable"?t:o.setNumber(t)},SRID:this.setValue,Unicode:this.setIfFalse})};o.prototype.processImport=function(t){var e=t.localName,o={$kind:e},s=t.getAttribute("Name"),i=this;e=e.replace("Import","");o["$"+e]=this.resolveAlias(t.getAttribute(e));this.processAttributes(t,o,{EntitySet:function(t){return i.resolveTargetPath(t)},IncludeInServiceDocument:this.setIfTrue});this.entityContainer[s]=o;this.annotatable(s)};o.prototype.processNavigationPropertyBinding=function(t){var e=this.getOrCreateObject(this.entitySet,"$NavigationPropertyBinding");e[t.getAttribute("Path")]=this.resolveTargetPath(t.getAttribute("Target"))};o.prototype.processParameter=function(t){var e=this.oOperation,o={};this.processTypedCollection(t.getAttribute("Type"),o);this.processAttributes(t,o,{Name:this.setValue,Nullable:this.setIfFalse});this.processFacetAttributes(t,o);this.getOrCreateArray(e,"$Parameter").push(o);this.annotatable(o.$Name)};o.prototype.processReturnType=function(t){var e=this.oOperation,o={};this.processTypedCollection(t.getAttribute("Type"),o);this.processAttributes(t,o,{Nullable:this.setIfFalse});this.processFacetAttributes(t,o);e.$ReturnType=o;this.annotatable("$ReturnType")};o.prototype.processSchema=function(t){this.namespace=t.getAttribute("Namespace")+".";this.schema={$kind:"Schema"};this.addToResult(this.namespace,this.schema);this.annotatable(this.schema)};o.prototype.processSingleton=function(t){var e=t.getAttribute("Name");this.entityContainer[e]=this.entitySet={$kind:"Singleton",$Type:this.resolveAlias(t.getAttribute("Type"))};this.annotatable(e)};o.prototype.processTerm=function(t){var e=this.namespace+t.getAttribute("Name"),o={$kind:"Term"},s=this;this.processTypedCollection(t.getAttribute("Type"),o);this.processAttributes(t,o,{Nullable:this.setIfFalse,BaseTerm:function(t){return t?s.resolveAlias(t):undefined}});this.processFacetAttributes(t,o);this.addToResult(e,o);this.annotatable(e)};o.prototype.processType=function(t,e){var o=this.namespace+t.getAttribute("Name"),s=this;this.processAttributes(t,e,{OpenType:s.setIfTrue,HasStream:s.setIfTrue,Abstract:s.setIfTrue,BaseType:function(t){return t?s.resolveAlias(t):undefined}});this.type=e;this.addToResult(o,e);this.annotatable(o)};o.prototype.processTypedCollection=function(t,e){var o=this.rCollection.exec(t);if(o){e.$isCollection=true;t=o[1]}e.$Type=this.resolveAlias(t)};o.prototype.processTypeDefinition=function(t){var e=this.namespace+t.getAttribute("Name"),o={$kind:"TypeDefinition",$UnderlyingType:t.getAttribute("UnderlyingType")};this.addToResult(e,o);this.processFacetAttributes(t,o);this.annotatable(e)};o.prototype.processTypeNavigationProperty=function(t){var e=t.getAttribute("Name"),o={$kind:"NavigationProperty"};this.processTypedCollection(t.getAttribute("Type"),o);this.processAttributes(t,o,{Nullable:this.setIfFalse,Partner:this.setValue,ContainsTarget:this.setIfTrue});this.type[e]=this.navigationProperty=o;this.annotatable(e)};o.prototype.processTypeNavigationPropertyOnDelete=function(t){this.navigationProperty.$OnDelete=t.getAttribute("Action");this.annotatable(this.navigationProperty,"$OnDelete")};o.prototype.processTypeNavigationPropertyReferentialConstraint=function(t){var e=t.getAttribute("Property"),o=this.getOrCreateObject(this.navigationProperty,"$ReferentialConstraint");o[e]=t.getAttribute("ReferencedProperty");this.annotatable(o,e)};o.prototype.processTypeProperty=function(t){var e=t.getAttribute("Name"),o={$kind:"Property"};this.processTypedCollection(t.getAttribute("Type"),o);this.processAttributes(t,o,{Nullable:this.setIfFalse,DefaultValue:this.setValue});this.processFacetAttributes(t,o);this.type[e]=o;this.annotatable(e)};o.prototype.resolveTargetPath=function(t){var e;if(!t){return t}t=this.resolveAliasInPath(t);e=t.indexOf("/");if(e>=0&&!t.includes("/",e+1)){if(t.slice(0,e)===this.result.$EntityContainer){return t.slice(e+1)}}return t};(function(t){var e,o,s;t.sRootNamespace=t.sEdmxNamespace;t.oAliasConfig={__xmlns:t.sEdmxNamespace,Reference:{Include:{__processor:t.processAlias}},DataServices:{Schema:{__xmlns:t.sEdmNamespace,__processor:t.processAlias}}};s={Property:{__processor:t.processTypeProperty,__include:[t.oAnnotationConfig]},NavigationProperty:{__processor:t.processTypeNavigationProperty,__include:[t.oAnnotationConfig],OnDelete:{__processor:t.processTypeNavigationPropertyOnDelete,__include:[t.oAnnotationConfig]},ReferentialConstraint:{__processor:t.processTypeNavigationPropertyReferentialConstraint,__include:[t.oAnnotationConfig]}}};o={NavigationPropertyBinding:{__processor:t.processNavigationPropertyBinding}};e={Parameter:{__processor:t.processParameter,__include:[t.oAnnotationConfig]},ReturnType:{__processor:t.processReturnType,__include:[t.oAnnotationConfig]}};t.oFullConfig={__xmlns:t.sEdmxNamespace,__processor:t.processEdmx,__include:[t.oReferenceInclude],DataServices:{Schema:{__xmlns:t.sEdmNamespace,__processor:t.processSchema,__include:[t.oAnnotationsConfig,t.oAnnotationConfig],Action:{__processor:t.processActionOrFunction,__include:[e,t.oAnnotationConfig]},Function:{__processor:t.processActionOrFunction,__include:[e,t.oAnnotationConfig]},EntityType:{__processor:t.processEntityType,__include:[s,t.oAnnotationConfig],Key:{PropertyRef:{__processor:t.processEntityTypeKeyPropertyRef}}},ComplexType:{__processor:t.processComplexType,__include:[s,t.oAnnotationConfig]},EntityContainer:{__processor:t.processEntityContainer,__include:[t.oAnnotationConfig],ActionImport:{__processor:t.processImport,__include:[t.oAnnotationConfig]},EntitySet:{__processor:t.processEntitySet,__include:[o,t.oAnnotationConfig]},FunctionImport:{__processor:t.processImport,__include:[t.oAnnotationConfig]},Singleton:{__processor:t.processSingleton,__include:[o,t.oAnnotationConfig]}},EnumType:{__processor:t.processEnumType,__include:[t.oAnnotationConfig],Member:{__processor:t.processEnumTypeMember,__include:[t.oAnnotationConfig]}},Term:{__processor:t.processTerm,__include:[t.oAnnotationConfig]},TypeDefinition:{__processor:t.processTypeDefinition,__include:[t.oAnnotationConfig]}}}}})(o.prototype);return o},false);
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/resource/ResourceModel", ["sap/base/Log","sap/base/i18n/ResourceBundle","sap/ui/base/SyncPromise","sap/ui/core/Supportability","sap/ui/model/BindingMode","sap/ui/model/Model","./ResourcePropertyBinding"],function(e,n,t,i,o,r,s){"use strict";var a="sap.ui.model.resource.ResourceModel",u=/^(?:\/|\.)*/;var c=r.extend("sap.ui.model.resource.ResourceModel",{constructor:function(t){var i;r.apply(this,arguments);this.aCustomBundles=[];this.bReenhance=false;this.bAsync=!!(t&&t.async);if(!this.bAsync){e.warning("Usage of synchronous loading is deprecated. For performance reasons, asynchronous loading"+" is strongly recommended.",undefined,a)}this.sDefaultBindingMode=t.defaultBindingMode||o.OneWay;this.mSupportedBindingModes={OneWay:true,TwoWay:false,OneTime:!this.bAsync};if(this.bAsync&&this.sDefaultBindingMode==o.OneTime){e.warning("Using binding mode OneTime for asynchronous ResourceModel is not supported!")}this.oData=Object.assign({},t);i=Array.isArray(this.oData.enhanceWith)&&this.oData.enhanceWith.some(function(e){return e instanceof n});if(t&&t.bundle){this._oResourceBundle=t.bundle;i=true}else if(t&&(t.bundleUrl||t.bundleName)){if(i){delete this.oData.enhanceWith;if(t.terminologies||t.activeTerminologies){throw new Error("'terminologies' parameter and 'activeTerminologies' parameter are not"+" supported in configuration when enhanceWith contains ResourceBundles")}}l(this)}else{throw new Error("At least bundle, bundleName or bundleUrl must be provided!")}if(i&&Array.isArray(t.enhanceWith)){if(this.bAsync){this._pEnhanced=t.enhanceWith.reduce(function(e,n){return e.then(this.enhance.bind(this,n))}.bind(this),Promise.resolve())}else{t.enhanceWith.forEach(this.enhance.bind(this))}}}});c._sanitizeBundleName=function(n){if(n&&(n[0]==="/"||n[0]===".")){e.error('Incorrect resource bundle name "'+n+'"',"Leading slashes or dots in resource bundle names are ignored, since such names are"+' invalid UI5 module names. Please check whether the resource bundle "'+n+'" is actually needed by your application.',a);n=n.replace(u,"")}return n};c.loadResourceBundle=function(e,t){var o=e.bundleLocale,r;e.bundleName=c._sanitizeBundleName(e.bundleName);r=Object.assign({async:t,includeInfo:i.collectOriginInfo(),locale:o},e);return n.create(r)};c.prototype.enhance=function(e){var t=this,i,o=this.bAsync?new Promise(function(e){i=e}):null;function r(){if(e instanceof n){t._oResourceBundle._enhance(e);t.checkUpdate(true);if(o){i(true)}}else{if(e.terminologies){throw new Error("'terminologies' parameter is not"+" supported for enhancement")}var r=c.loadResourceBundle(e,t.bAsync);if(r instanceof Promise){r.then(function(e){t._oResourceBundle._enhance(e);t.checkUpdate(true);i(true)},function(){i(true)})}else if(r){t._oResourceBundle._enhance(r);t.checkUpdate(true)}}}if(this._oPromise){Promise.resolve(this._oPromise).then(r)}else{r()}if(!this.bReenhance){this.aCustomBundles.push(e)}return o};c.prototype.bindProperty=function(e){return new s(this,e)};c.prototype.getProperty=function(e){return this._oResourceBundle?this._oResourceBundle.getText(e):null};c.prototype.getResourceBundle=function(){if(!this.bAsync){return this._oResourceBundle}else{var e=this._oPromise;if(e){return new Promise(function(n,t){function i(e){n(e)}e.then(i,i)})}else{return Promise.resolve(this._oResourceBundle)}}};c.prototype._handleLocalizationChange=function(){var i=this;t.resolve(this.getResourceBundle()).then(function(e){var o;if(i.bAsync){o={url:n._getUrl(i.oData.bundleUrl,c._sanitizeBundleName(i.oData.bundleName)),async:true};i.fireRequestSent(o)}var r=e._recreate();if(r instanceof Promise){i._oPromise=r}return t.resolve(r).then(function(e){i._oResourceBundle=e;i._reenhance();delete i._oPromise;i.checkUpdate(true)}).finally(function(){if(i.bAsync){i.fireRequestCompleted(o)}})}).catch(function(n){e.error("Failed to reload bundles after localization change",n,a)})};c.prototype._reenhance=function(){this.bReenhance=true;this.aCustomBundles.forEach(function(e){this.enhance(e)}.bind(this));this.bReenhance=false};function l(e){var t=e.oData;if(t&&(t.bundleUrl||t.bundleName)){var i=c.loadResourceBundle(t,t.async);if(i instanceof Promise){var o={url:n._getUrl(t.bundleUrl,c._sanitizeBundleName(t.bundleName)),async:true};e.fireRequestSent(o);e._oPromise=i;e._oPromise.then(function(n){e._oResourceBundle=n;e._reenhance();delete e._oPromise;e.checkUpdate(true);e.fireRequestCompleted(o)})}else{e._oResourceBundle=i;e._reenhance();e.checkUpdate(true)}}}return c});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/resource/ResourcePropertyBinding", ["sap/ui/model/PropertyBinding","sap/ui/model/ChangeReason"],function(e,t){"use strict";var o=e.extend("sap.ui.model.resource.ResourcePropertyBinding",{constructor:function(t,o){e.apply(this,arguments);this.oValue=this.oModel.getProperty(o)}});o.prototype.getValue=function(){return this.oValue};o.prototype.checkUpdate=function(e){if(!this.bSuspended){var o=this.oModel.getProperty(this.sPath);if(e||o!=this.oValue){this.oValue=o;this._fireChange({reason:t.Change})}}};return o});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/type/Boolean", ["sap/ui/core/Lib","sap/ui/model/SimpleType","sap/ui/model/FormatException","sap/ui/model/ParseException"],function(e,t,o,n){"use strict";var r=t.extend("sap.ui.model.type.Boolean",{constructor:function(){t.apply(this,arguments);this.sName="Boolean"}});r.prototype.formatValue=function(e,t){if(e==undefined||e==null){return null}switch(this.getPrimitiveType(t)){case"any":case"boolean":return e;case"string":return e.toString();default:throw new o("Don't know how to format Boolean to "+t)}};r.prototype.parseValue=function(t,o){var r;switch(this.getPrimitiveType(o)){case"boolean":return t;case"string":if(t.toLowerCase()=="true"||t=="X"){return true}if(t.toLowerCase()=="false"||t==""||t==" "){return false}r=e.getResourceBundleFor("sap.ui.core");throw new n(r.getText("Boolean.Invalid"));default:throw new n("Don't know how to parse Boolean from "+o)}};r.prototype.validateValue=function(){};return r});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/type/Currency", ["sap/base/Log","sap/base/util/each","sap/base/util/extend","sap/base/util/isEmptyObject","sap/ui/core/Lib","sap/ui/core/format/NumberFormat","sap/ui/model/CompositeType","sap/ui/model/FormatException","sap/ui/model/ParseException","sap/ui/model/ValidateException"],function(t,e,r,i,o,s,a,n,u,p){"use strict";var h=a.extend("sap.ui.model.type.Currency",{constructor:function(t){a.apply(this,arguments);this.sName="Currency";this.bShowMeasure=!t||!("showMeasure"in t)||t.showMeasure;this.bShowNumber=!t||!("showNumber"in t)||t.showNumber;this.bUseRawValues=true}});h.prototype.formatValue=function(t,e){var r=t;if(t==undefined||t==null){return null}if(this.oInputFormat){r=this.oInputFormat.parse(t)}if(!Array.isArray(r)){throw new n("Cannot format currency: "+t+" has the wrong format")}if((r[0]==undefined||r[0]==null)&&this.bShowNumber){return null}switch(this.getPrimitiveType(e)){case"string":return this.oOutputFormat.format(r);default:throw new n("Don't know how to format currency to "+e)}};h.prototype.parseValue=function(t,e){var r;switch(this.getPrimitiveType(e)){case"string":r=this.oOutputFormat.parse(t);if(!Array.isArray(r)||this.bShowNumber&&isNaN(r[0])){throw this.getParseException()}break;default:throw new u("Don't know how to parse Currency from "+e)}if(this.oInputFormat){r=this.oInputFormat.format(r)}return r};h.prototype.validateValue=function(r){if(this.oConstraints){var i=o.getResourceBundleFor("sap.ui.core"),s=[],a=[],n=r,u;if(this.oInputFormat){n=this.oInputFormat.parse(r)}u=n[0];e(this.oConstraints,function(e,r){switch(e){case"minimum":if(u<r){s.push("minimum");a.push(i.getText("Currency.Minimum",[r]))}break;case"maximum":if(u>r){s.push("maximum");a.push(i.getText("Currency.Maximum",[r]))}break;default:t.warning("Unknown constraint '"+e+"': Value is not validated.",null,"sap.ui.model.type.Currency")}});if(s.length>0){throw new p(this.combineMessages(a),s)}}};h.prototype.setFormatOptions=function(t){this.oFormatOptions=Object.assign(t.style!=="short"&&t.style!=="long"?{preserveDecimals:true}:{},t);this._createFormats()};h.prototype._handleLocalizationChange=function(){this._createFormats()};h.prototype._createFormats=function(){var t=this.oFormatOptions.source;this.oOutputFormat=s.getCurrencyInstance(this.iScale>=0?r({},{maxFractionDigits:this.iScale},this.oFormatOptions):this.oFormatOptions);if(t){if(i(t)){t={groupingEnabled:false,groupingSeparator:",",decimalSeparator:"."}}this.oInputFormat=s.getCurrencyInstance(t)}};h.prototype.getParseException=function(){var t=o.getResourceBundleFor("sap.ui.core"),e;if(!this.bShowNumber){e=t.getText("Currency.InvalidMeasure")}else if(!this.bShowMeasure){e=t.getText("EnterNumber")}else{e=t.getText("Currency.Invalid")}return new u(e)};h.prototype.getPartsIgnoringMessages=function(){if(!this.bShowMeasure){return[1]}else if(!this.bShowNumber){return[0]}return[]};h.prototype.getPartsListeningToTypeChanges=function(){return this.bShowNumber?[0]:[]};h.prototype.processPartTypes=function(t){const e=this.iScale;const r=t[0];if(r?.isA("sap.ui.model.odata.type.Decimal")){this.iScale=r.oConstraints?.scale||0}if(e!==this.iScale){this._createFormats()}};return h});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/type/Date", ["sap/base/util/each","sap/base/util/isEmptyObject","sap/ui/core/Lib","sap/ui/core/date/UI5Date","sap/ui/core/format/DateFormat","sap/ui/model/FormatException","sap/ui/model/ParseException","sap/ui/model/SimpleType","sap/ui/model/ValidateException"],function(t,e,o,a,r,i,s,n,u){"use strict";var p=n.extend("sap.ui.model.type.Date",{constructor:function(){n.apply(this,arguments);this.sName="Date"}});p.prototype.formatValue=function(t,e){var o;switch(this.getPrimitiveType(e)){case"string":case"any":if(t==null){return""}if(this.oFormatOptions.source&&this.oFormatOptions.source.pattern!=="timestamp"&&t===""){return""}o=this.getModelFormat();t=o.parse(t);return this.oOutputFormat.format(t);default:throw new i("Don't know how to format Date to "+e)}};p.prototype.parseValue=function(t,e){var a,r;switch(this.getPrimitiveType(e)){case"string":if(t===""){return null}a=this.oOutputFormat.parse(t);if(!a){r=o.getResourceBundleFor("sap.ui.core");throw new s(r.getText("Enter"+this.getName(),[this.oOutputFormat.format(this.oOutputFormat.getSampleValue()[0])]))}if(this.oInputFormat){if(this.oFormatOptions.source.pattern=="timestamp"){a=a.getTime()}else{a=this.oInputFormat.format(a)}}return a;default:throw new s("Don't know how to parse Date from "+e)}};p.prototype.validateValue=function(e){if(this.oConstraints){var a=o.getResourceBundleFor("sap.ui.core"),r=[],i=[],s=this.oInputFormat,n,p=this;if(s&&this.oFormatOptions.source.pattern!="timestamp"){e=s.parse(e)}t(this.oConstraints,function(t,o){if(s){o=s.parse(o)}n=p.oOutputFormat.format(o);switch(t){case"minimum":if(e<o){r.push("minimum");i.push(a.getText(p.sName+".Minimum",[n]))}break;case"maximum":if(e>o){r.push("maximum");i.push(a.getText(p.sName+".Maximum",[n]))}break;default:break}});if(r.length>0){throw new u(this.combineMessages(i),r)}}};var m={format:function(t){if(t instanceof Date){return t.getTime()}return null},parse:function(t){if(typeof t!="number"){if(isNaN(t)){throw new i("Cannot format date: "+t+" is not a valid Timestamp")}else{t=parseInt(t)}}t=a.getInstance(t);return t}};p.prototype.getModelFormat=function(){if(this.oInputFormat){if(this.oFormatOptions.source.pattern=="timestamp"){return m}else{return this.oInputFormat}}else{return n.prototype.getModelFormat.call(this)}};p.prototype.setFormatOptions=function(t){this.oFormatOptions=t;this._createFormats()};p.prototype.getOutputPattern=function(){return this.oOutputFormat.oFormatOptions.pattern};p.prototype._handleLocalizationChange=function(){this._createFormats()};p.prototype._createFormats=function(){var t=this.oFormatOptions.source;this.oOutputFormat=r.getInstance(this.oFormatOptions);if(t){if(e(t)){t={pattern:"yyyy-MM-dd"}}this.oInputFormat=r.getInstance(t)}};p.prototype.getPlaceholderText=function(){return this.oOutputFormat.getPlaceholderText()};return p});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/type/DateInterval", ["sap/base/util/isEmptyObject","sap/ui/core/Lib","sap/ui/core/date/UI5Date","sap/ui/core/format/DateFormat","sap/ui/model/CompositeType","sap/ui/model/FormatException","sap/ui/model/ParseException","sap/ui/model/ValidateException"],function(t,e,o,a,i,r,n,s){"use strict";var u=i.extend("sap.ui.model.type.DateInterval",{constructor:function(){i.apply(this,arguments);this.sName="DateInterval";this.bUseInternalValues=true}});u.prototype.formatValue=function(t,e){var a=this;if(!Array.isArray(t)){throw new r("Cannot format date interval: "+t+" is expected as an Array but given the wrong format")}switch(this.getPrimitiveType(e)){case"string":case"any":if(!t[0]||!t[1]&&!this.oFormatOptions.singleIntervalValue){return""}if(this.oInputFormat){t=t.map(function(t){if(a.oFormatOptions.source.pattern==="timestamp"){if(typeof t!=="number"){if(isNaN(t)){throw new r("Cannot format date: "+t+" is not a valid Timestamp")}else{t=parseInt(t)}}t=o.getInstance(t)}else{t=a.oInputFormat.parse(t);if(t==null){throw new r("Cannot format date: "+t+" has the wrong format")}}return t})}return this.oOutputFormat.format(t);default:throw new r("Don't know how to format Date to "+e)}};u.prototype.parseValue=function(t,o){var a,i,r=this;switch(this.getPrimitiveType(o)){case"string":if(t===""){return[null,null]}i=this.oOutputFormat.parse(t);if(!i[0]||!i[1]&&!this.oFormatOptions.singleIntervalValue){a=e.getResourceBundleFor("sap.ui.core");throw new n(a.getText("Enter"+this.getName(),[this.oOutputFormat.format(this.oOutputFormat.getSampleValue()[0])]))}if(i[1]&&this.sName==="DateInterval"){if(this.oFormatOptions.UTC){i[1].setUTCHours(23,59,59,0)}else{i[1].setHours(23,59,59,0)}}if(this.oInputFormat){i=i.map(function(t){return r.oFormatOptions.source.pattern==="timestamp"?t.getTime():r.oInputFormat.format(t)})}return i;default:throw new n("Don't know how to parse a date interval from "+o)}};u.prototype.validateValue=function(t){var o,a,i=e.getResourceBundleFor("sap.ui.core"),r=[],n=[],u=this;if(this.oInputFormat&&this.oFormatOptions.source.pattern!="timestamp"){t=t.map(function(t){return u.oInputFormat.parse(t)})}o=!this.oFormatOptions.singleIntervalValue||t[1]!==null;if(this.oConstraints.minimum){a=this.oConstraints.minimum;if(t[0]<a||o&&t[1]<a){r.push("minimum");n.push(i.getText("Date.Minimum",[a]))}}if(this.oConstraints.maximum){a=this.oConstraints.maximum;if(t[0]>a||o&&t[1]>a){r.push("maximum");n.push(i.getText("Date.Maximum",[a]))}}if(r.length>0){throw new s(this.combineMessages(n),r)}};u.prototype.setFormatOptions=function(t){this.oFormatOptions=t;this._createFormats()};u.prototype._handleLocalizationChange=function(){this._createFormats()};u.prototype._createFormats=function(){var e=this.oFormatOptions.source;this.oFormatOptions.interval=true;this.oOutputFormat=a.getDateInstance(this.oFormatOptions);if(e){if(t(e)){e={pattern:"yyyy-MM-dd"}}this.oInputFormat=a.getDateInstance(e)}};u.prototype.getPlaceholderText=function(){return this.oOutputFormat.getPlaceholderText()};return u});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/type/DateTime", ["./Date","sap/ui/core/format/DateFormat"],function(t,e){"use strict";var o=t.extend("sap.ui.model.type.DateTime",{constructor:function(){t.apply(this,arguments);this.sName="DateTime"}});o.prototype._createFormats=function(){this.oOutputFormat=e.getDateTimeInstance(this.oFormatOptions);if(this.oFormatOptions.source){this.oInputFormat=e.getDateTimeInstance(this.oFormatOptions.source)}};return o});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/type/DateTimeInterval", ["./DateInterval","sap/ui/core/format/DateFormat"],function(t,e){"use strict";var o=t.extend("sap.ui.model.type.DateTimeInterval",{constructor:function(){t.apply(this,arguments);this.sName="DateTimeInterval"}});o.prototype._createFormats=function(){this.oFormatOptions.interval=true;this.oOutputFormat=e.getDateTimeInstance(this.oFormatOptions);if(this.oFormatOptions.source){this.oInputFormat=e.getDateTimeInstance(this.oFormatOptions.source)}};return o});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/type/FileSize", ["sap/base/util/each","sap/ui/core/Lib","sap/ui/core/format/FileSizeFormat","sap/ui/model/FormatException","sap/ui/model/ParseException","sap/ui/model/SimpleType","sap/ui/model/ValidateException"],function(t,e,i,o,n,r,s){"use strict";var a=r.extend("sap.ui.model.type.FileSize",{constructor:function(){r.apply(this,arguments);this.sName="FileSize"}});a.prototype.formatValue=function(t,e){var i;if(t==undefined||t==null){return null}if(this.oInputFormat&&typeof t==="string"){i=this.oInputFormat.parse(t);if(isNaN(i)){throw new o("Cannot format file size: "+t+" has the wrong format")}}else if(!this.oInputFormat&&typeof t==="string"){throw new o("Cannot format file size: "+t+" of type string without input/source formatter")}else if(typeof t==="number"){i=t}else{throw new o("Cannot format file size: "+t+" has wrong type: "+typeof t)}if(i==undefined||i==null){return null}switch(this.getPrimitiveType(e)){case"string":return this.oOutputFormat.format(i);case"int":return Math.floor(i);case"float":case"any":return i;default:throw new o("Don't know how to format FileSize to "+e)}};a.prototype.parseValue=function(t,i){var o,r;if(t==undefined||t==null){return null}switch(this.getPrimitiveType(i)){case"string":o=this.oOutputFormat.parse(t);if(isNaN(o)){r=e.getResourceBundleFor("sap.ui.core");throw new n(r.getText("FileSize.Invalid"))}break;case"int":case"float":o=t;break;default:throw new n("Don't know how to parse FileSize from "+i)}if(this.oInputFormat){o=this.oInputFormat.format(o)}return o};a.prototype.validateValue=function(i){if(this.oConstraints){var o=e.getResourceBundleFor("sap.ui.core"),n=[],r=[],a=this.oInputFormat;if(a&&typeof i==="string"){i=a.parse(i)}else if(!a&&typeof i==="string"){throw new Error("No Validation possible: '"+i+"' is of type string but not input/source format specified.")}t(this.oConstraints,function(t,e){if(a&&typeof e==="string"){e=a.parse(e)}else if(!a&&typeof e==="string"){throw new Error("No Validation possible: Compare value ("+t+") '"+e+"' is of type string but not input/source format specified.")}switch(t){case"minimum":if(i<e){n.push("minimum");r.push(o.getText("FileSize.Minimum",[e]))}break;case"maximum":if(i>e){n.push("maximum");r.push(o.getText("FileSize.Maximum",[e]))}break;default:break}});if(n.length>0){throw new s(this.combineMessages(r),n)}}};a.prototype.setFormatOptions=function(t){this.oFormatOptions=t;this._handleLocalizationChange()};a.prototype._handleLocalizationChange=function(){this.oOutputFormat=i.getInstance(this.oFormatOptions);if(this.oFormatOptions.source){this.oInputFormat=i.getInstance(this.oFormatOptions.source)}};return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/type/Float", ["sap/base/util/each","sap/base/util/isEmptyObject","sap/ui/core/Lib","sap/ui/core/format/NumberFormat","sap/ui/model/FormatException","sap/ui/model/ParseException","sap/ui/model/SimpleType","sap/ui/model/ValidateException"],function(t,o,e,a,i,r,s,n){"use strict";var u=s.extend("sap.ui.model.type.Float",{constructor:function(){s.apply(this,arguments);this.sName="Float"}});u.prototype.formatValue=function(t,o){var e=t;if(t==undefined||t==null){return null}if(this.oInputFormat){e=this.oInputFormat.parse(t);if(e==null){throw new i("Cannot format float: "+t+" has the wrong format")}}switch(this.getPrimitiveType(o)){case"string":return this.oOutputFormat.format(e);case"int":return Math.floor(e);case"float":case"any":return e;default:throw new i("Don't know how to format Float to "+o)}};u.prototype.parseValue=function(t,o){var a,i;switch(this.getPrimitiveType(o)){case"string":a=this.oOutputFormat.parse(t);if(isNaN(a)){i=e.getResourceBundleFor("sap.ui.core");throw new r(i.getText("Float.Invalid"))}break;case"int":case"float":a=t;break;default:throw new r("Don't know how to parse Float from "+o)}if(this.oInputFormat){a=this.oInputFormat.format(a)}return a};u.prototype.validateValue=function(o){if(this.oConstraints){var a=e.getResourceBundleFor("sap.ui.core"),i=[],r=[],s=o,u=this;if(this.oInputFormat){s=this.oInputFormat.parse(o)}t(this.oConstraints,function(t,o){switch(t){case"minimum":if(s<o){i.push("minimum");r.push(a.getText("Float.Minimum",[u.oOutputFormat.format(o)]))}break;case"maximum":if(s>o){i.push("maximum");r.push(a.getText("Float.Maximum",[u.oOutputFormat.format(o)]))}break;default:break}});if(i.length>0){throw new n(this.combineMessages(r),i)}}};u.prototype.setFormatOptions=function(t){this.oFormatOptions=Object.assign(t.style!=="short"&&t.style!=="long"?{preserveDecimals:true}:{},t);this._createFormats()};u.prototype._handleLocalizationChange=function(){this._createFormats()};u.prototype._createFormats=function(){var t=this.oFormatOptions.source;this.oOutputFormat=a.getFloatInstance(this.oFormatOptions);if(t){if(o(t)){t={groupingEnabled:false,groupingSeparator:",",decimalSeparator:"."}}this.oInputFormat=a.getFloatInstance(t)}};return u});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/type/Integer", ["sap/base/util/each","sap/base/util/isEmptyObject","sap/ui/core/Lib","sap/ui/core/format/NumberFormat","sap/ui/model/FormatException","sap/ui/model/ParseException","sap/ui/model/SimpleType","sap/ui/model/ValidateException"],function(t,e,o,a,r,i,n,s){"use strict";var u=n.extend("sap.ui.model.type.Integer",{constructor:function(){n.apply(this,arguments);this.sName="Integer"}});u.prototype.formatValue=function(t,e){var o=t;if(t==undefined||t==null){return null}if(this.oInputFormat){o=this.oInputFormat.parse(t);if(o==null){throw new r("Cannot format float: "+t+" has the wrong format")}}switch(this.getPrimitiveType(e)){case"string":return this.oOutputFormat.format(o);case"int":case"float":case"any":return o;default:throw new r("Don't know how to format Integer to "+e)}};u.prototype.parseValue=function(t,e){var a,r;switch(this.getPrimitiveType(e)){case"string":a=this.oOutputFormat.parse(String(t));if(isNaN(a)){r=o.getResourceBundleFor("sap.ui.core");throw new i(r.getText("EnterInt"))}break;case"float":a=Math.floor(t);if(a!=t){r=o.getResourceBundleFor("sap.ui.core");throw new i(r.getText("EnterInt"))}break;case"int":a=t;break;default:throw new i("Don't know how to parse Integer from "+e)}if(this.oInputFormat){a=this.oInputFormat.format(a)}return a};u.prototype.validateValue=function(e){if(this.oConstraints){var a=o.getResourceBundleFor("sap.ui.core"),r=[],i=[],n=e,u=this;if(this.oInputFormat){n=this.oInputFormat.parse(e)}t(this.oConstraints,function(t,e){switch(t){case"minimum":if(n<e){r.push("minimum");i.push(a.getText("Integer.Minimum",[u.oOutputFormat.format(e)]))}break;case"maximum":if(n>e){r.push("maximum");i.push(a.getText("Integer.Maximum",[u.oOutputFormat.format(e)]))}break;default:break}});if(r.length>0){throw new s(this.combineMessages(i),r)}}};u.prototype.setFormatOptions=function(t){this.oFormatOptions=t;this._createFormats()};u.prototype._handleLocalizationChange=function(){this._createFormats()};u.prototype._createFormats=function(){var t=this.oFormatOptions.source;this.oOutputFormat=a.getIntegerInstance(this.oFormatOptions);if(t){if(e(t)){t={groupingEnabled:false,groupingSeparator:",",decimalSeparator:"."}}this.oInputFormat=a.getIntegerInstance(t)}};return u});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/type/String", ["sap/base/Log","sap/base/util/each","sap/ui/core/Lib","sap/ui/model/FormatException","sap/ui/model/ParseException","sap/ui/model/SimpleType","sap/ui/model/ValidateException"],function(t,e,s,n,a,i,r){"use strict";var o=i.extend("sap.ui.model.type.String",{constructor:function(){i.apply(this,arguments);this.sName="String";if(this.oConstraints.search&&typeof this.oConstraints.search=="string"){this.oConstraints.search=new RegExp(this.oConstraints.search)}}});o.prototype.formatValue=function(t,e){if(t==undefined||t==null){return null}switch(this.getPrimitiveType(e)){case"string":case"any":return t;case"int":var s=parseInt(t);if(isNaN(s)){throw new n(t+" is not a valid int value")}return s;case"float":var a=parseFloat(t);if(isNaN(a)){throw new n(t+" is not a valid float value")}return a;case"boolean":if(t.toLowerCase()=="true"||t=="X"){return true}if(t.toLowerCase()=="false"||t==""){return false}throw new n(t+" is not a valid boolean value");default:throw new n("Don't know how to format String to "+e)}};o.prototype.parseValue=function(t,e){switch(this.getPrimitiveType(e)){case"string":return t;case"boolean":case"int":case"float":return t.toString();default:throw new a("Don't know how to parse String from "+e)}};o.prototype.validateValue=function(n){if(this.oConstraints){var a=s.getResourceBundleFor("sap.ui.core"),i=[],o=[];if(n===null){n=""}e(this.oConstraints,function(e,s){switch(e){case"maxLength":if(n.length>s){i.push("maxLength");o.push(a.getText("String.MaxLength",[s]))}break;case"minLength":if(n.length<s){i.push("minLength");o.push(a.getText("String.MinLength",[s]))}break;case"startsWith":if(!(typeof s=="string"&&s.length>0&&n.startsWith(s))){i.push("startsWith");o.push(a.getText("String.StartsWith",[s]))}break;case"startsWithIgnoreCase":if(!(typeof s=="string"&&s!=""?n.toLowerCase().startsWith(s.toLowerCase()):false)){i.push("startsWithIgnoreCase");o.push(a.getText("String.StartsWith",[s]))}break;case"endsWith":if(!(typeof s=="string"&&s.length>0&&n.endsWith(s))){i.push("endsWith");o.push(a.getText("String.EndsWith",[s]))}break;case"endsWithIgnoreCase":if(!(typeof s=="string"&&s!=""?n.toLowerCase().endsWith(s.toLowerCase()):false)){i.push("endsWithIgnoreCase");o.push(a.getText("String.EndsWith",[s]))}break;case"contains":if(n.indexOf(s)==-1){i.push("contains");o.push(a.getText("String.Contains",[s]))}break;case"equals":if(n!=s){i.push("equals");o.push(a.getText("String.Equals",[s]))}break;case"search":if(n.search(s)==-1){i.push("search");o.push(a.getText("String.Search",[s]))}break;default:t.warning("Ignoring unknown constraint: '"+e+"'",null,"sap.ui.model.type.String")}});if(i.length>0){throw new r(this.combineMessages(o),i)}}};return o});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/type/Time", ["./Date","sap/ui/core/format/DateFormat"],function(t,o){"use strict";var e=t.extend("sap.ui.model.type.Time",{constructor:function(){t.apply(this,arguments);this.sName="Time"}});e.prototype._createFormats=function(){this.oOutputFormat=o.getTimeInstance(this.oFormatOptions);if(this.oFormatOptions.source){this.oInputFormat=o.getTimeInstance(this.oFormatOptions.source)}};return e});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/type/TimeInterval", ["./DateInterval","sap/ui/core/format/DateFormat"],function(t,e){"use strict";var o=t.extend("sap.ui.model.type.TimeInterval",{constructor:function(){t.apply(this,arguments);this.sName="TimeInterval"}});o.prototype._createFormats=function(){this.oFormatOptions.interval=true;this.oOutputFormat=e.getTimeInstance(this.oFormatOptions);if(this.oFormatOptions.source){this.oInputFormat=e.getTimeInstance(this.oFormatOptions.source)}};return o});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/type/Unit", ["sap/base/i18n/Formatting","sap/base/strings/hash","sap/base/util/each","sap/base/util/extend","sap/base/util/isEmptyObject","sap/ui/core/Lib","sap/ui/core/Locale","sap/ui/core/LocaleData","sap/ui/core/format/NumberFormat","sap/ui/model/CompositeType","sap/ui/model/FormatException","sap/ui/model/ParseException","sap/ui/model/ValidateException"],function(t,e,a,i,s,n,o,r,u,c,p,m,h){"use strict";var l=c.extend("sap.ui.model.type.Unit",{constructor:function(t,e,a){c.apply(this,arguments);this.sName="Unit";this.bShowMeasure=!t||!("showMeasure"in t)||t.showMeasure;this.bShowNumber=!t||!("showNumber"in t)||t.showNumber;this.bUseRawValues=true;this.aDynamicFormatOptionNames=a}});l.prototype._getInstance=function(a,s){var n=this.createFormatOptions(a);if(s&&!this.oFormatOptions.customUnits&&!n.customUnits){var c=new o(t.getLanguageTag());var p=r.getInstance(c);var m=p.getUnitFromMapping(s)||s;var h=p.getUnitFormat(m);if(h){var f=i({},h);f.decimals=n.decimals!=undefined?n.decimals:f.decimals;f.precision=n.precision!=undefined?n.precision:f.precision;n.customUnits={};n.customUnits[s]=f}}var g=n;if(this.oFormatOptions){g=i({},this.oFormatOptions,n)}if(this.iScale>=0){g=i({},{maxFractionDigits:this.iScale},g)}if(this.getMetadata().getClass()!==l){var d=this.getMetadata();d._mTypeInstanceCache=d._mTypeInstanceCache||{};var y=e(JSON.stringify(g)||"");var F=d._mTypeInstanceCache[y];if(!F){F=u.getUnitInstance(g);d._mTypeInstanceCache[y]=F}return F}else{return u.getUnitInstance(g)}};l.prototype._clearInstances=function(){if(this.getMetadata().getClass()!==l){var t=this.getMetadata();if(t._mTypeInstanceCache){t._mTypeInstanceCache={}}}};l.prototype.createFormatOptions=function(t){var e={};if(this.aDynamicFormatOptionNames&&t.length>=this.aDynamicFormatOptionNames.length){this.aDynamicFormatOptionNames.forEach(function(a,i){if(a){e[a]=t[i]}})}return e};l.prototype.extractArguments=function(t){return Array.isArray(t)&&t.length>2?t.slice(2):[]};l.prototype.formatValue=function(t,e){var a=t;if(t==undefined||t==null){return null}if(this.oInputFormat){a=this.oInputFormat.parse(t)}if(!Array.isArray(a)){throw new p("Cannot format Unit: "+t+" has the wrong format")}if((a[0]==undefined||a[0]==null)&&this.bShowNumber){return null}switch(this.getPrimitiveType(e)){case"string":this.aDynamicValues=this.extractArguments(a);this.oOutputFormat=this._getInstance(this.aDynamicValues,a[1]);return this.oOutputFormat.format(a);case"int":case"float":case"any":default:throw new p("Don't know how to format Unit to "+e)}};l.prototype.getPartsListeningToTypeChanges=function(){return this.bShowNumber?[0]:[]};l.prototype.parseValue=function(t,e){var a;switch(this.getPrimitiveType(e)){case"string":this.oOutputFormat=this._getInstance(this.aDynamicValues);a=this.oOutputFormat.parse(t);if(!Array.isArray(a)||this.bShowNumber&&isNaN(a[0])){throw this.getParseException()}break;case"int":case"float":default:throw new m("Don't know how to parse Unit from "+e)}if(this.oInputFormat){a=this.oInputFormat.format(a)}return a};l.prototype.processPartTypes=function(t){const e=t[0];if(e?.isA("sap.ui.model.odata.type.Decimal")){this.iScale=e.oConstraints?.scale||0}};l.prototype.validateValue=function(t){if(this.oConstraints){var e=n.getResourceBundleFor("sap.ui.core"),i=[],s=[],o=t,r;if(this.oInputFormat){o=this.oInputFormat.parse(t)}r=o[0];a(this.oConstraints,function(t,a){switch(t){case"minimum":if(r<a){i.push("minimum");s.push(e.getText("Unit.Minimum",[a]))}break;case"maximum":if(r>a){i.push("maximum");s.push(e.getText("Unit.Maximum",[a]))}break;case"decimals":var n=u._shiftDecimalPoint(r,a);if(Math.floor(n)!==n){i.push("decimals");s.push(e.getText("Unit.Decimals",[a]))}break;default:break}});if(i.length>0){throw new h(s.join(" "),i)}}};l.prototype.setFormatOptions=function(t){const e=t.maxFractionDigits===undefined&&t.minFractionDigits===undefined&&t.decimals===undefined;this.oFormatOptions={...t.style!=="short"&&t.style!=="long"?{preserveDecimals:true}:{},...t,...e?{decimals:3}:{}};this._clearInstances();this._createInputFormat()};l.prototype._handleLocalizationChange=function(){this._clearInstances();this._createInputFormat()};l.prototype._createInputFormat=function(){var t=this.oFormatOptions.source;if(t){if(s(t)){t={groupingEnabled:false,groupingSeparator:",",decimalSeparator:"."}}this.oInputFormat=u.getUnitInstance(t)}};l.prototype.getParseException=function(){var t=n.getResourceBundleFor("sap.ui.core"),e;if(!this.bShowNumber){e=t.getText("Unit.InvalidMeasure")}else if(!this.bShowMeasure){e=t.getText("EnterNumber")}else{e=t.getText("Unit.Invalid")}return new m(e)};l.prototype.getPartsIgnoringMessages=function(){if(!this.bShowMeasure){return[1]}else if(!this.bShowNumber){return[0]}return[]};return l});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/xml/XMLListBinding", ["sap/ui/model/ChangeReason","sap/ui/model/ClientListBinding","sap/ui/util/XMLHelper","sap/base/util/deepEqual","sap/base/util/each"],function(t,e,i,s,n){"use strict";var h=e.extend("sap.ui.model.xml.XMLListBinding");h.prototype.getEntryData=function(t){return i.serialize(t.getObject())};h.prototype.update=function(){var t=this.oModel._getObject(this.sPath,this.oContext);if(t){this.oList=[];var e=this;if(this.bUseExtendedChangeDetection){n(t,function(t,i){e.oList.push(i.cloneNode(true))})}else{this.oList=t.slice(0)}this.updateIndices();this.applyFilter();this.applySort();this.iLength=this._getLength()}else{this.oList=[];this.aIndices=[];this.iLength=0}};h.prototype.checkUpdate=function(e){var i;if(this.bSuspended&&!this.bIgnoreSuspend&&!e){return}if(!this.bUseExtendedChangeDetection){i=this.oModel._getObject(this.sPath,this.oContext)||[];if(i.length!=this.oList.length||e){this.update();this._fireChange({reason:t.Change})}}else{var h=false;var a=this;i=this.oModel._getObject(this.sPath,this.oContext)||[];if(this.oList.length!=i.length){h=true}if(!s(this.oList,i)){this.update()}var o=this._getContexts(this.iLastStartIndex,this.iLastLength);if(this.aLastContexts){if(this.aLastContexts.length!=o.length){h=true}else{n(this.aLastContextData,function(t,e){var i=a.getContextData(o[t]);if(i!==e){h=true;return false}return true})}}else{h=true}if(h||e){this._fireChange({reason:t.Change})}}};return h});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/xml/XMLModel", ["sap/ui/model/ClientModel","sap/ui/model/Context","./XMLListBinding","./XMLPropertyBinding","./XMLTreeBinding","sap/ui/util/XMLHelper","sap/base/Log","sap/base/util/each"],function(e,t,r,s,i,a,o,n){"use strict";var u=e.extend("sap.ui.model.xml.XMLModel",{constructor:function(t){e.apply(this,arguments);this.oNameSpaces=null;if(t&&t.documentElement){this.setData(t)}},metadata:{publicMethods:["setXML","getXML","setNameSpace"]}});u.prototype.setXML=function(e){var t=a.parse(e);if(t.parseError.errorCode!=0){var r=t.parseError;o.fatal("The following problem occurred: XML parse Error for "+r.url+" code: "+r.errorCode+" reason: "+r.reason+" src: "+r.srcText+" line: "+r.line+" linepos: "+r.linepos+" filepos: "+r.filepos);this.fireParseError({url:r.url,errorCode:r.errorCode,reason:r.reason,srcText:r.srcText,line:r.line,linepos:r.linepos,filepos:r.filepos})}this.setData(t)};u.prototype.getXML=function(){return a.serialize(this.oData)};u.prototype.setData=function(e){this.oData=e;this.checkUpdate()};u.prototype.loadData=function(e,t,r,s,i,a){var n=this;r=r!==false;s=s||"GET";i=i===undefined?this.bCache:i;this.fireRequestSent({url:e,type:s,async:r,headers:a,info:"cache="+i,infoObject:{cache:i}});this._ajax({url:e,async:r,cache:i,dataType:"xml",data:t,headers:a,type:s,success:function(t){if(!t){o.fatal("The following problem occurred: No data was retrieved by service: "+e)}n.setData(t);n.fireRequestCompleted({url:e,type:s,async:r,headers:a,info:"cache="+i,infoObject:{cache:i},success:true})},error:function(t,u,c){var f={message:u,statusCode:t.status,statusText:t.statusText,responseText:t.responseText};o.fatal("The following problem occurred: "+u,t.responseText+","+t.status+","+t.statusText);n.fireRequestCompleted({url:e,type:s,async:r,headers:a,info:"cache="+i,infoObject:{cache:i},success:false,errorobject:f});n.fireRequestFailed(f)}})};u.prototype.setNameSpace=function(e,t){if(!t){t=""}if(!this.oNameSpaces){this.oNameSpaces={}}this.oNameSpaces[t]=e};u.prototype.bindProperty=function(e,t,r){var i=new s(this,e,t,r);return i};u.prototype.bindList=function(e,t,s,i,a){var o=new r(this,e,t,s,i,a);return o};u.prototype.bindTree=function(e,t,r,s,a){var o=new i(this,e,t,r,s,a);return o};u.prototype.setProperty=function(e,t,r,s){var i=e.substring(0,e.lastIndexOf("/")+1),a=e.substr(e.lastIndexOf("/")+1);if(!this.resolve(e,r)){return false}if(!this.oData.documentElement){o.warning("Trying to set property "+e+", but no document exists.");return false}var n;if(a.indexOf("@")==0){n=this._getObject(i,r);if(n[0]){n[0].setAttribute(a.substr(1),t);this.checkUpdate(false,s);return true}}else{n=this._getObject(e,r);if(n[0]){n[0].textContent=t;this.checkUpdate(false,s);return true}}return false};u.prototype.getProperty=function(e,t){var r=this._getObject(e,t);if(r&&typeof r!="string"){r=r[0]?r[0].textContent:""}return r};u.prototype.getObject=function(e,t){var r=this._getObject(e,t);if(Array.isArray(r)){r=r[0]}return r};u.prototype._getObject=function(e,r){var s=this.oData.documentElement;if(!s){return null}let i=[];if(this.isLegacySyntax()){i=[s]}if(r instanceof t){i=this._getObject(r.getPath())}else if(r){i=[r]}if(!e){return i}var a=e.split("/"),o,n=0;if(!a[0]){i=s;n++}i=i.length==undefined?[i]:i;i=i[0]?i:null;while(i&&i.length>0&&a[n]){o=a[n];if(o.indexOf("@")==0){i=this._getAttribute(i[0],o.substr(1))}else if(o=="text()"){i=i[0]?i[0].textContent:""}else if(isNaN(o)){i=this._getChildElementsByTagName(i[0],o)}else{i=[i[o]]}n++}return i};u.prototype._getAttribute=function(e,t){if(!this.oNameSpaces||t.indexOf(":")==-1){return e.getAttribute(t)}var r=this._getNameSpace(t),s=this._getLocalName(t);return e.getAttributeNS(r,s)};u.prototype._getChildElementsByTagName=function(e,t){var r=e.childNodes,s=[];if(this.oNameSpaces){var i=this._getNameSpace(t),a=this._getLocalName(t),o;n(r,function(e,t){o=t.localName||t.baseName;if(t.nodeType==1&&o==a&&t.namespaceURI==i){s.push(t)}})}else{n(r,function(e,r){if(r.nodeType==1&&r.nodeName==t){s.push(r)}})}return s};u.prototype._getNameSpace=function(e){var t=e.indexOf(":"),r="";if(t>0){r=e.substr(0,t)}return this.oNameSpaces[r]};u.prototype._getLocalName=function(e){var t=e.indexOf(":"),r=e;if(t>0){r=e.substr(t+1)}return r};u.prototype._getDocNSPrefixes=function(){var e={},t=this.oData&&this.oData.documentElement;if(!t){return e}var r=t.attributes;n(r,function(t,r){var s=r.name,i=r.value;if(s=="xmlns"){e[i]=""}else if(s.indexOf("xmlns")==0){e[i]=s.substr(6)}});return e};u.prototype._resolve=function(e,t){var r=!e.startsWith("/"),s=e;if(r){if(t){s=t.getPath()+"/"+e}else{s=undefined;if(this.isLegacySyntax()){s="/"+e}}}return s};u.prototype.isList=function(e,t){return false};u.prototype._setMetaModel=function(e){this._oMetaModel=e};u.prototype.getMetaModel=function(){return this._oMetaModel};return u});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/xml/XMLPropertyBinding", ["sap/ui/model/ChangeReason","sap/ui/model/ClientPropertyBinding","sap/base/util/deepEqual"],function(e,t,i){"use strict";var a=t.extend("sap.ui.model.xml.XMLPropertyBinding");a.prototype.setValue=function(t){if(this.bSuspended){return}if(this.oValue!=t){if(this.oModel.setProperty(this.sPath,t,this.oContext,true)){this.oValue=t;this.oModel.firePropertyChange({reason:e.Binding,path:this.sPath,context:this.oContext,value:t})}}};a.prototype.checkUpdate=function(t){if(this.bSuspended&&!t){return}var a=this._getValue();if(!i(a,this.oValue)||t){this.oValue=a;this.getDataState().setValue(this.oValue);this.checkDataState();this._fireChange({reason:e.Change})}};return a});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/model/xml/XMLTreeBinding", ["sap/ui/model/ClientTreeBinding","sap/base/util/each"],function(e,t){"use strict";var i=e.extend("sap.ui.model.xml.XMLTreeBinding");i.prototype.getNodeContexts=function(e,i,n){if(!i){i=0}if(!n){n=this.oModel.iSizeLimit}var o=e.getPath();if(!o.endsWith("/")){o=o+"/"}if(!o.startsWith("/")){o="/"+o}var s=[],d={},a=this,l=this.oModel._getObject(e.getPath()),r,f;t(l[0].childNodes,function(e,t){if(t.nodeType==1){if(d[t.nodeName]==undefined){d[t.nodeName]=0}else{d[t.nodeName]++}r=o+t.nodeName+"/"+d[t.nodeName];f=a.oModel.getContext(r);if(a.oCombinedFilter&&!a.bIsFiltering){if(a.filterInfo.aFilteredContexts&&a.filterInfo.aFilteredContexts.indexOf(f)!=-1){s.push(f)}}else{s.push(f)}}});this._applySorter(s);this._setLengthCache(o,s.length);return s.slice(i,i+n)};return i});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/util/Mobile", ["sap/ui/Device","sap/base/Log","sap/base/util/extend","sap/ui/dom/_ready"],function(e,t,o,n){"use strict";var i={};var a=false;function r(e,t){if(e!=="meta"||t&&!document.querySelector("meta[name='"+t.name+"']")){t=t||{};var o=document.createElement(e);for(var n in t){if(t[n]){o.setAttribute(n,t[n])}}document.head.appendChild(o)}}function c(e){var t=document.head.querySelectorAll(e);for(var o=0,n=t.length;o<n;o++){t[o].remove(t[o])}}i.init=function(t){if(!a){a=true;t=o({},{viewport:true,statusBar:"default",hideBrowser:true,preventScroll:true,preventPhoneNumberDetection:true,useFullScreenHeight:true,homeIconPrecomposed:false,mobileWebAppCapable:"default"},t);var c=e.os.ios||e.os.macintosh&&e.browser.mobile;if(t.preventPhoneNumberDetection){r("meta",{name:"format-detection",content:"telephone=no"})}if(t.viewport){var s;var l=e.resize.height;var p=e.resize.width;s="width=device-width, initial-scale=1.0";if(c){s+=", maximum-scale=1.0, user-scalable=no"}r("meta",{name:"viewport",content:s});setTimeout(()=>{if((l!==window.innerHeight||p!==window.innerWidth)&&e.resize._update){e.resize._update()}},50)}if(t.useFullScreenHeight){n().then(function(){document.documentElement.style.height="100%"})}if(t.preventScroll&&c){n().then(function(){document.documentElement.style.position="fixed";document.documentElement.style.overflow="hidden";document.documentElement.style.height="100%";document.documentElement.style.width="100%"})}}if(t){if(t.homeIcon){var m;if(typeof t.homeIcon==="string"){m={phone:t.homeIcon,favicon:t.homeIcon}}else{m=Object.assign({},t.homeIcon);m.phone=t.homeIcon.phone||t.homeIcon.icon||m.favicon;m.favicon=m.favicon||t.homeIcon.icon||t.homeIcon.phone;m.icon=undefined}m.precomposed=t.homeIconPrecomposed||m.precomposed;i.setIcons(m)}if(t.hasOwnProperty("mobileWebAppCapable")){i.setWebAppCapable(t.mobileWebAppCapable,t.statusBar)}}};i.setIcons=function(e){if(!e||typeof e!=="object"){t.warning("Call to sap/ui/util/Mobile.setIcons() has been ignored because there were no icons given or the argument was not an object.");return}var o=e.precomposed?"-precomposed":"",n={phone:"",tablet:"152x152","phone@2":"180x180","tablet@2":"167x167"};if(e["favicon"]){c("link[rel=icon]");r("link",{rel:"icon",href:e["favicon"]})}var i=Object.keys(n).some(function(t){return e.hasOwnProperty(t)});if(i){c("[rel=apple-touch-icon]");c("[rel=apple-touch-icon-precomposed]")}for(var a in n){if(e[a]){r("link",{rel:"apple-touch-icon"+o,href:e[a],sizes:n[a]})}}};i.setWebAppCapable=function(t,o){if(!e.system.tablet&&!e.system.phone){return}var n=["","apple"],i="mobile-web-app-capable",a=t?"yes":"no",c,s,l;for(c=0;c<n.length;c++){s=n[c]?n[c]+"-"+i:i;l=document.head.querySelector('meta[name="'+s+'"]');if(l){l.setAttribute("content",a)}else{r("meta",{name:s,content:a});if(n[c]==="apple"){r("meta",{name:"apple-mobile-web-app-status-bar-style",content:o?o:"default"})}}}};return i});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/util/Storage", ["sap/base/assert"],function(t){"use strict";var e="state.key_";var n=function(r,i){var s="unknown",o=(i||e)+"-",u;if(!r||typeof r==="string"){s=r||n.Type.session;try{u=window[s+"Storage"];if(u){var f=o+"___sapui5TEST___";u.setItem(f,"1");u.removeItem(f)}}catch(t){u=null}}else if(typeof r==="object"){s=r.getType?r.getType():"unknown";u=r}var a=function(t){try{if(this.isSupported()){t();return true}}catch(t){return false}return false}.bind(this);this.isSupported=function(){return typeof u.isSupported=="function"?u.isSupported():true};this.put=function(e,n){t(typeof e==="string"&&e.length>0,"key must be a non-empty string");return a(function(){u.setItem(o+e,JSON.stringify(n))})};this.get=function(e){t(typeof e==="string"&&e.length>0,"key must be a non-empty string");var n;a(function(){n=JSON.parse(u.getItem(o+e))});return n!==undefined?n:null};this.remove=function(e){t(typeof e==="string"&&e.length>0,"key must be a non-empty string");return a(function(){u.removeItem(o+e)})};this.removeAll=function(t){return a(function(){var e=o+(t||""),n=[],r,i;for(i=0;i<u.length;i++){r=u.key(i);if(r&&r.startsWith(e)){n.push(r)}}for(i=0;i<n.length;i++){u.removeItem(n[i])}})};this.clear=function(){return a(function(){u.clear()})};this.getType=function(){return s}};n.Type={local:"local",session:"session"};Object.assign(n,new n);return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/util/_FeatureDetection", [],function(){"use strict";var i={};function t(){var t=document.createElement("div");t.innerHTML='<div dir="rtl"><div><span></span><span></span></div></div>';t.firstChild.style="width: 1px; height: 1px; position: fixed; top: 0px; left: 0px; overflow: hidden";t.firstChild.firstChild.style="width: 2px";t.firstChild.firstChild.firstChild.style="display: inline-block; width: 1px";t.firstChild.firstChild.lastChild.style="display: inline-block; width: 1px";document.documentElement.appendChild(t);var e=t.firstChild;i.initialZero=e.scrollLeft==0;document.documentElement.removeChild(t)}t();var e={initialScrollPositionIsZero:function(){return i.initialZero}};return e});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/util/defaultLinkTypes", [],function(){"use strict";var r=function r(e,n){e=typeof e==="string"?e.trim():e;if(!e&&n&&n!=="_self"){return"noopener noreferrer"}return e};return r});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/util/isCrossOriginURL", [],function(){"use strict";function n(n){var i=new URL(n,document.baseURI);return i.origin==="null"||window.location.origin==="null"||i.origin!==window.location.origin}return n});
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.predefine("sap/ui/util/openWindow", [],function(){"use strict";var n=function n(r,e){var o="noopener,noreferrer";return window.open(r,e,o)};return n});
sap.ui.require.preload({
	"jquery.sap.logger.js":function(){
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
jQuery.sap.declare("jquery.sap.logger",false);
},
	"sap/ui/core/boot/_bootConfig.js":function(){
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
sap.ui.loader.config({map:{"*":{"sap/ui/core/Core":"sap/ui/core/boot"}}});sap.ui.loader.config({depCacheUI5:{"Eventing-preload-1.js":["Eventing-preload-0.js"]},bundlesUI5:{"Calendar-preload.js":["sap/base/future.js","sap/base/i18n/Formatting.js","sap/base/i18n/date/CalendarWeekNumbering.js","sap/base/util/ObjectPath.js","sap/base/util/array/uniqueSort.js","sap/base/util/deepEqual.js","sap/base/util/isEmptyObject.js","sap/base/util/resolveReference.js","sap/ui/base/DataType.js","sap/ui/base/Metadata.js","sap/ui/base/Object.js","sap/ui/core/Locale.js","sap/ui/core/LocaleData.js","sap/ui/core/date/Buddhist.js","sap/ui/core/date/CalendarUtils.js","sap/ui/core/date/CalendarWeekNumbering.js","sap/ui/core/date/Gregorian.js","sap/ui/core/date/Islamic.js","sap/ui/core/date/Japanese.js","sap/ui/core/date/Persian.js","sap/ui/core/date/UI5Date.js","sap/ui/core/date/UniversalDate.js","sap/ui/core/date/UniversalDateUtils.js","sap/ui/core/date/_Calendars.js"],"Eventing-preload-0.js":["sap/base/i18n/ResourceBundle.js","sap/base/security/encodeCSS.js","sap/base/security/encodeXML.js","sap/base/strings/camelize.js","sap/base/strings/capitalize.js","sap/base/strings/escapeRegExp.js","sap/base/strings/formatMessage.js","sap/base/strings/toHex.js","sap/base/util/JSTokenizer.js","sap/base/util/Properties.js","sap/base/util/Version.js","sap/base/util/deepClone.js","sap/base/util/deepExtend.js","sap/base/util/merge.js","sap/ui/Global.js","sap/ui/VersionInfo.js","sap/ui/base/BindingInfo.js","sap/ui/base/BindingParser.js","sap/ui/base/DesignTime.js","sap/ui/base/Event.js","sap/ui/base/EventProvider.js","sap/ui/base/ExpressionParser.js","sap/ui/base/ManagedObject.js","sap/ui/base/ManagedObjectMetadata.js","sap/ui/base/ManagedObjectRegistry.js","sap/ui/core/AnimationMode.js","sap/ui/core/Configuration.js","sap/ui/core/ControlBehavior.js","sap/ui/core/Element.js","sap/ui/core/ElementMetadata.js","sap/ui/core/ElementRegistry.js","sap/ui/core/EnabledPropagator.js","sap/ui/core/FocusHandler.js","sap/ui/core/FocusMode.js","sap/ui/core/InvisibleRenderer.js","sap/ui/core/LabelEnablement.js","sap/ui/core/Lib.js","sap/ui/core/Patcher.js","sap/ui/core/RenderManager.js","sap/ui/core/Renderer.js","sap/ui/core/Rendering.js","sap/ui/core/Supportability.js","sap/ui/core/Theming.js","sap/ui/core/UIAreaRegistry.js","sap/ui/core/_UrlResolver.js","sap/ui/core/getCompatibilityVersion.js"],"Library-preload.js":["sap/base/future.js","sap/base/i18n/ResourceBundle.js","sap/base/strings/formatMessage.js","sap/base/util/ObjectPath.js","sap/base/util/Properties.js","sap/base/util/Version.js","sap/base/util/array/uniqueSort.js","sap/base/util/deepExtend.js","sap/base/util/isEmptyObject.js","sap/base/util/merge.js","sap/base/util/resolveReference.js","sap/ui/Global.js","sap/ui/VersionInfo.js","sap/ui/base/DataType.js","sap/ui/base/Event.js","sap/ui/base/EventProvider.js","sap/ui/base/Metadata.js","sap/ui/base/Object.js","sap/ui/core/Lib.js","sap/ui/core/Supportability.js","sap/ui/core/_UrlResolver.js","sap/ui/thirdparty/URI.js"],"Eventing-preload-1.js":["sap/ui/core/theming/ThemeHelper.js","sap/ui/core/util/_LocalizationHelper.js","sap/ui/dom/findTabbable.js","sap/ui/dom/jquery/Selectors.js","sap/ui/events/ControlEvents.js","sap/ui/events/F6Navigation.js","sap/ui/events/KeyCodes.js","sap/ui/events/PseudoEvents.js","sap/ui/events/TouchToMouseMapping.js","sap/ui/events/checkMouseEnterOrLeave.js","sap/ui/events/jquery/EventSimulation.js","sap/ui/model/BindingMode.js","sap/ui/model/Filter.js","sap/ui/model/FilterOperator.js","sap/ui/model/Sorter.js","sap/ui/performance/Measurement.js","sap/ui/performance/trace/Interaction.js","sap/ui/security/Security.js","sap/ui/util/ActivityDetection.js","sap/ui/util/_enforceNoReturnValue.js","sap/ui/thirdparty/URI.js","sap/ui/thirdparty/jquery-compat.js","sap/ui/thirdparty/jquery-mobile-custom.js","sap/ui/thirdparty/jquery.js"],"Theming-preload.js":["sap/base/util/each.js","sap/ui/core/theming/ThemeManager.js","sap/ui/dom/includeStylesheet.js"]}});globalThis["sap-ui-config"]=globalThis["sap-ui-config"]?globalThis["sap-ui-config"]:{};globalThis["sap-ui-config"].bootManifest="sap/ui/core/boot/manifest.json";globalThis["sap-ui-config"].xxMaxLoaderTaskDuration=0;
},
	"sap/ui/core/boot/_runBoot.js":function(){
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */
(function(){"use strict";sap.ui.require(["sap/ui/core/boot"])})();
},
	"sap/ui/core/boot/manifest.json":'{"extends":"","preBoot":[],"boot":["sap/ui/core/boot/loadCalendar","sap/ui/core/boot/loadModules"],"postBoot":["sap/ui/core/boot/onInit"]}',
	"sap/ui/core/manifest.json":'{"_version":"1.21.0","sap.app":{"id":"sap.ui.core","type":"library","embeds":[],"applicationVersion":{"version":"1.135.0"},"title":"The SAPUI5 Core Runtime.","description":"The SAPUI5 Core Runtime.\\n\\n  Contains the UI5 jQuery plugins (jQuery.sap.*), the Core and all its components,\\n  base classes for Controls, Components and the Model View Controller classes.","ach":"CA-UI5-COR","resources":"resources.json","offline":true,"openSourceComponents":[{"name":"jquery-3","packagedWithMySelf":true,"version":"3.6.0"},{"name":"jquery-1","packagedWithMySelf":true,"version":"1.7.1"},{"name":"jquery_UI_1-8-17","packagedWithMySelf":true,"version":"1.8.17"},{"name":"jquery_UI-1-10-4","packagedWithMySelf":true,"version":"1.10.4"},{"name":"jquery_UI_1-11-1","packagedWithMySelf":true,"version":"1.11.1"},{"name":"qunit","packagedWithMySelf":true,"version":"1.18.0"},{"name":"qunit-2","packagedWithMySelf":true,"version":"2.3.2"},{"name":"qunit-2.18","packagedWithMySelf":true,"version":"2.18.0"},{"name":"jquery-migrate","packagedWithMySelf":true,"version":"3.3.1"},{"name":"jquery_mobile","packagedWithMySelf":true,"version":"1.3.1"},{"name":"jquery.rtl-scroll-type","packagedWithMySelf":true,"version":"2.0.0"},{"name":"qunit-composite","packagedWithMySelf":true,"version":"1.0.2-pre"},{"name":"qunit-reporter-junit","packagedWithMySelf":true,"version":"1.1.1"},{"name":"iscroll","packagedWithMySelf":true,"version":"4.2.5"},{"name":"iscroll-lite","packagedWithMySelf":true,"version":"4.1.6"},{"name":"swipeview","packagedWithMySelf":true,"version":"1.0"},{"name":"zynga","packagedWithMySelf":true,"version":"1.2.1-0-g5d43806"},{"name":"less","packagedWithMySelf":true,"version":"1.6.3"},{"name":"datajs","packagedWithMySelf":true,"version":"unknown"},{"name":"d3","packagedWithMySelf":true,"version":"3.4.12"},{"name":"jszip","packagedWithMySelf":true,"version":"2.2.0"},{"name":"caja","packagedWithMySelf":true,"version":"Build 4884"},{"name":"cldr","packagedWithMySelf":true,"version":"46.1.0"},{"name":"mobiscroll","packagedWithMySelf":true,"version":"2.9.0"},{"name":"sinonjs","packagedWithMySelf":true,"version":"1.14.1"},{"name":"sinonjs4","packagedWithMySelf":true,"version":"4.4.6"},{"name":"sinonjs14","packagedWithMySelf":true,"version":"14.0.0"},{"name":"sinon-qunit","packagedWithMySelf":true,"version":"2.0.0"},{"name":"urijs","packagedWithMySelf":true,"version":"1.19.11"},{"name":"punycodejs","packagedWithMySelf":true,"version":"1.4.0"},{"name":"handlebars","packagedWithMySelf":true,"version":"4.7.7"},{"name":"requirejs","packagedWithMySelf":true,"version":"2.1.8"},{"name":"crossroadsjs","packagedWithMySelf":true,"version":"0.12.0"},{"name":"hasherjs","packagedWithMySelf":true,"version":"1.2.0"},{"name":"jssignals","packagedWithMySelf":true,"version":"1.0.0"},{"name":"blanket","packagedWithMySelf":true,"version":"1.1.5"},{"name":"json-in-js","packagedWithMySelf":true,"version":"ff55d8d451"},{"name":"tdop","packagedWithMySelf":true,"version":"unknown"},{"name":"klayjs","packagedWithMySelf":true,"version":"0.4.1"},{"name":"bignumber","packagedWithMySelf":true,"version":"6.0.0"},{"name":"lodash","packagedWithMySelf":true,"version":"4.17.21"},{"name":"hyphenopoly","packagedWithMySelf":true,"version":"3.4.0"},{"name":"p-cancelable","packagedWithMySelf":true,"version":"2.0.0"},{"name":"@babel/helpers","packagedWithMySelf":true,"version":"7.10.4"},{"name":"jalaali","packagedWithMySelf":true,"version":"unknown"},{"name":"vkbeautify","packagedWithMySelf":true,"version":"0.99.00.beta"},{"name":"node-lru-cache","packagedWithMySelf":true,"version":"2.7.3"}]},"sap.ui":{"technology":"UI5","supportedThemes":["base","sap_hcb"]},"sap.ui5":{"dependencies":{"minUI5Version":"1.135","libs":{}},"library":{"i18n":{"bundleUrl":"messagebundle.properties","supportedLocales":["","ar","bg","ca","cnr","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","id","it","iw","ja","kk","ko","lt","lv","mk","ms","nl","no","pl","pt","pt-PT","ro","ru","sh","sk","sl","sr","sv","th","tr","uk","vi","zh-CN","zh-TW"]},"content":{"controls":["sap.ui.core.ComponentContainer","sap.ui.core.Control","sap.ui.core.HTML","sap.ui.core.Icon","sap.ui.core.InvisibleText","sap.ui.core.LocalBusyIndicator","sap.ui.core.ScrollBar","sap.ui.core.TooltipBase","sap.ui.core.XMLComposite","sap.ui.core.mvc.HTMLView","sap.ui.core.mvc.JSONView","sap.ui.core.mvc.JSView","sap.ui.core.mvc.TemplateView","sap.ui.core.mvc.View","sap.ui.core.mvc.XMLView","sap.ui.core.tmpl.DOMElement","sap.ui.core.tmpl.TemplateControl","sap.ui.core.util.Export"],"elements":["sap.ui.core.CustomData","sap.ui.core.Element","sap.ui.core.Item","sap.ui.core.LayoutData","sap.ui.core.ListItem","sap.ui.core.Message","sap.ui.core.SeparatorItem","sap.ui.core.Title","sap.ui.core.VariantLayoutData","sap.ui.core.dnd.DragDropBase","sap.ui.core.dnd.DragInfo","sap.ui.core.dnd.DropInfo","sap.ui.core.dnd.DragDropInfo","sap.ui.core.search.OpenSearchProvider","sap.ui.core.search.SearchProvider","sap.ui.core.tmpl.DOMAttribute","sap.ui.core.util.ExportCell","sap.ui.core.InvisibleMessage"],"types":["any","boolean","float","int","object","string","void","sap.ui.core.AbsoluteCSSSize","sap.ui.core.AccessibleRole","sap.ui.core.AccessibleLandmarkRole","sap.ui.core.aria.HasPopup","sap.ui.core.BarColor","sap.ui.core.BusyIndicatorSize","sap.ui.core.CalendarType","sap.ui.core.CSSColor","sap.ui.core.CSSGapShortHand","sap.ui.core.CSSSize","sap.ui.core.CSSSizeShortHand","sap.ui.core.Collision","sap.ui.core.ComponentLifecycle","sap.ui.core.Design","sap.ui.core.Dock","sap.ui.core.HorizontalAlign","sap.ui.core.ID","sap.ui.core.IconColor","sap.ui.core.ImeMode","sap.ui.core.IndicationColor","sap.ui.core.ItemSelectionMode","sap.ui.core.MessageType","sap.ui.core.OpenState","sap.ui.core.Orientation","sap.ui.core.Percentage","sap.ui.core.Priority","sap.ui.core.ScrollBarAction","sap.ui.core.Scrolling","sap.ui.core.SortOrder","sap.ui.core.TextAlign","sap.ui.core.TextDirection","sap.ui.core.TitleLevel","sap.ui.core.URI","sap.ui.core.ValueState","sap.ui.core.VerticalAlign","sap.ui.core.Wrapping","sap.ui.core.InvisibleMessageMode","sap.ui.core.dnd.DropEffect","sap.ui.core.dnd.DropLayout","sap.ui.core.dnd.DropPosition","sap.ui.core.mvc.ViewType","sap.ui.core.routing.HistoryDirection"],"interfaces":["sap.ui.core.IShrinkable","sap.ui.core.Label","sap.ui.core.ILabelable","sap.ui.core.PopupInterface","sap.ui.core.Toolbar","sap.ui.core.IContextMenu","sap.ui.core.IFormContent","sap.ui.core.dnd.IDragInfo","sap.ui.core.dnd.IDropInfo","sap.ui.core.IDScope","sap.ui.core.ITitleContent","sap.ui.core.IAsyncContentCreation","sap.ui.core.IPlaceholderSupport","sap.ui.core.IColumnHeaderMenu"]}}}}',
	"sap/ui/model/odata/v4/ts.js":function(){
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */

},
	"sap/ui/thirdparty/caja-html-sanitizer.js":function(){
(function(){
/* Copyright Google Inc.
 * Licensed under the Apache Licence Version 2.0
 * Autogenerated at Tue May 22 10:18:21 PDT 2012
 * \@overrides window
 * \@provides cssSchema, CSS_PROP_BIT_QUANTITY, CSS_PROP_BIT_HASH_VALUE, CSS_PROP_BIT_NEGATIVE_QUANTITY, CSS_PROP_BIT_QSTRING_CONTENT, CSS_PROP_BIT_QSTRING_URL, CSS_PROP_BIT_HISTORY_INSENSITIVE, CSS_PROP_BIT_Z_INDEX, CSS_PROP_BIT_ALLOWED_IN_LINK */
var e=1;var r=2;var t=4;var s=8;var o=16;var i=32;var a=64;var n=128;var c=function(){var e=["rgb(?:\\(\\s*(?:\\d+|0|\\d+(?:\\.\\d+)?%)\\s*,\\s*(?:\\d+|0|\\d+(?:\\.\\d+)?%)\\s*,\\s*(?:\\d+|0|\\d+(?:\\.\\d+)?%)|a\\(\\s*(?:\\d+|0|\\d+(?:\\.\\d+)?%)\\s*,\\s*(?:\\d+|0|\\d+(?:\\.\\d+)?%)\\s*,\\s*(?:\\d+|0|\\d+(?:\\.\\d+)?%)\\s*,\\s*(?:\\d+|0(?:\\.\\d+)?|\\.\\d+|1(?:\\.0+)?|0|\\d+(?:\\.\\d+)?%)) *\\)"],r=[/^ *$/i,RegExp("^ *(?:\\s*"+e[0]+"|(?:\\s*"+e[0]+")?)+ *$","i"),RegExp("^ *\\s*"+e[0]+" *$","i"),RegExp("^ *\\s*"+e[0]+"\\s*"+e[0]+" *$","i")],t=[["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"],["all-scroll","col-resize","crosshair","default","e-resize","hand","help","move","n-resize","ne-resize","no-drop","not-allowed","nw-resize","pointer","progress","row-resize","s-resize","se-resize","sw-resize","text","vertical-text","w-resize","wait"],["-moz-inline-box","-moz-inline-stack","block","inline","inline-block","inline-table","list-item","run-in","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group"],["armenian","circle","decimal","decimal-leading-zero","disc","georgian","lower-alpha","lower-greek","lower-latin","lower-roman","square","upper-alpha","upper-latin","upper-roman"],["100","200","300","400","500","600","700","800","900","bold","bolder","lighter"],["condensed","expanded","extra-condensed","extra-expanded","narrower","semi-condensed","semi-expanded","ultra-condensed","ultra-expanded","wider"],["behind","center-left","center-right","far-left","far-right","left-side","leftwards","right-side","rightwards"],["large","larger","small","smaller","x-large","x-small","xx-large","xx-small"],["-moz-pre-wrap","-o-pre-wrap","-pre-wrap","nowrap","pre","pre-line","pre-wrap"],["dashed","dotted","double","groove","outset","ridge","solid"],["baseline","middle","sub","super","text-bottom","text-top"],["caption","icon","menu","message-box","small-caption","status-bar"],["fast","faster","slow","slower","x-fast","x-slow"],["above","below","higher","level","lower"],["border-box","contain","content-box","cover","padding-box"],["cursive","fantasy","monospace","sans-serif","serif"],["loud","silent","soft","x-loud","x-soft"],["no-repeat","repeat-x","repeat-y","round","space"],["blink","line-through","overline","underline"],["high","low","x-high","x-low"],["absolute","relative","static"],["capitalize","lowercase","uppercase"],["child","female","male"],["bidi-override","embed"],["bottom","top"],["clip","ellipsis"],["continuous","digits"],["hide","show"],["inside","outside"],["italic","oblique"],["left","right"],["ltr","rtl"],["no-content","no-display"],["suppress","unrestricted"],["thick","thin"],[","],["/"],["always"],["auto"],["avoid"],["both"],["break-word"],["center"],["code"],["collapse"],["fixed"],["hidden"],["inherit"],["inset"],["invert"],["justify"],["local"],["medium"],["mix"],["none"],["normal"],["once"],["repeat"],["scroll"],["separate"],["small-caps"],["spell-out"],["transparent"],["visible"]];return{"-moz-border-radius":{cssExtra:r[0],cssPropBits:5,cssLitGroup:[t[36]]},"-moz-border-radius-bottomleft":{cssExtra:r[0],cssPropBits:5},"-moz-border-radius-bottomright":{cssExtra:r[0],cssPropBits:5},"-moz-border-radius-topleft":{cssExtra:r[0],cssPropBits:5},"-moz-border-radius-topright":{cssExtra:r[0],cssPropBits:5},"-moz-box-shadow":{cssExtra:r[1],cssAlternates:["boxShadow"],cssPropBits:7,cssLitGroup:[t[0],t[35],t[48],t[54]]},"-moz-opacity":{cssPropBits:1,cssLitGroup:[t[47]]},"-moz-outline":{cssExtra:r[3],cssPropBits:7,cssLitGroup:[t[0],t[9],t[34],t[46],t[47],t[48],t[49],t[52],t[54]]},"-moz-outline-color":{cssExtra:r[2],cssPropBits:2,cssLitGroup:[t[0],t[47],t[49]]},"-moz-outline-style":{cssPropBits:0,cssLitGroup:[t[9],t[46],t[47],t[48],t[54]]},"-moz-outline-width":{cssPropBits:5,cssLitGroup:[t[34],t[47],t[52]]},"-o-text-overflow":{cssPropBits:0,cssLitGroup:[t[25]]},"-webkit-border-bottom-left-radius":{cssExtra:r[0],cssPropBits:5},"-webkit-border-bottom-right-radius":{cssExtra:r[0],cssPropBits:5},"-webkit-border-radius":{cssExtra:r[0],cssPropBits:5,cssLitGroup:[t[36]]},"-webkit-border-radius-bottom-left":{cssExtra:r[0],cssPropBits:5},"-webkit-border-radius-bottom-right":{cssExtra:r[0],cssPropBits:5},"-webkit-border-radius-top-left":{cssExtra:r[0],cssPropBits:5},"-webkit-border-radius-top-right":{cssExtra:r[0],cssPropBits:5},"-webkit-border-top-left-radius":{cssExtra:r[0],cssPropBits:5},"-webkit-border-top-right-radius":{cssExtra:r[0],cssPropBits:5},"-webkit-box-shadow":{cssExtra:r[1],cssAlternates:["boxShadow"],cssPropBits:7,cssLitGroup:[t[0],t[35],t[48],t[54]]},azimuth:{cssPropBits:5,cssLitGroup:[t[6],t[30],t[42],t[47]]},background:{cssExtra:RegExp("^ *(?:\\s*"+e[0]+"){0,2} *$","i"),cssPropBits:23,cssLitGroup:[t[0],t[14],t[17],t[24],t[30],t[35],t[36],t[38],t[42],t[45],t[47],t[51],t[54],t[57],t[58],t[62]]},"background-attachment":{cssExtra:r[0],cssPropBits:0,cssLitGroup:[t[35],t[45],t[51],t[58]]},"background-color":{cssExtra:r[2],cssPropBits:130,cssLitGroup:[t[0],t[47],t[62]]},"background-image":{cssExtra:r[0],cssPropBits:16,cssLitGroup:[t[35],t[54]]},"background-position":{cssExtra:r[0],cssPropBits:5,cssLitGroup:[t[24],t[30],t[35],t[42]]},"background-repeat":{cssExtra:r[0],cssPropBits:0,cssLitGroup:[t[17],t[35],t[57]]},border:{cssExtra:r[3],cssPropBits:7,cssLitGroup:[t[0],t[9],t[34],t[46],t[47],t[48],t[52],t[54],t[62]]},"border-bottom":{cssExtra:r[3],cssPropBits:7,cssLitGroup:[t[0],t[9],t[34],t[46],t[47],t[48],t[52],t[54],t[62]]},"border-bottom-color":{cssExtra:r[2],cssPropBits:2,cssLitGroup:[t[0],t[47],t[62]]},"border-bottom-left-radius":{cssExtra:r[0],cssPropBits:5},"border-bottom-right-radius":{cssExtra:r[0],cssPropBits:5},"border-bottom-style":{cssPropBits:0,cssLitGroup:[t[9],t[46],t[47],t[48],t[54]]},"border-bottom-width":{cssPropBits:5,cssLitGroup:[t[34],t[47],t[52]]},"border-collapse":{cssPropBits:0,cssLitGroup:[t[44],t[47],t[59]]},"border-color":{cssExtra:RegExp("^ *(?:\\s*"+e[0]+"){1,4} *$","i"),cssPropBits:2,cssLitGroup:[t[0],t[47],t[62]]},"border-left":{cssExtra:r[3],cssPropBits:7,cssLitGroup:[t[0],t[9],t[34],t[46],t[47],t[48],t[52],t[54],t[62]]},"border-left-color":{cssExtra:r[2],cssPropBits:2,cssLitGroup:[t[0],t[47],t[62]]},"border-left-style":{cssPropBits:0,cssLitGroup:[t[9],t[46],t[47],t[48],t[54]]},"border-left-width":{cssPropBits:5,cssLitGroup:[t[34],t[47],t[52]]},"border-radius":{cssExtra:r[0],cssPropBits:5,cssLitGroup:[t[36]]},"border-right":{cssExtra:r[3],cssPropBits:7,cssLitGroup:[t[0],t[9],t[34],t[46],t[47],t[48],t[52],t[54],t[62]]},"border-right-color":{cssExtra:r[2],cssPropBits:2,cssLitGroup:[t[0],t[47],t[62]]},"border-right-style":{cssPropBits:0,cssLitGroup:[t[9],t[46],t[47],t[48],t[54]]},"border-right-width":{cssPropBits:5,cssLitGroup:[t[34],t[47],t[52]]},"border-spacing":{cssExtra:r[0],cssPropBits:5,cssLitGroup:[t[47]]},"border-style":{cssPropBits:0,cssLitGroup:[t[9],t[46],t[47],t[48],t[54]]},"border-top":{cssExtra:r[3],cssPropBits:7,cssLitGroup:[t[0],t[9],t[34],t[46],t[47],t[48],t[52],t[54],t[62]]},"border-top-color":{cssExtra:r[2],cssPropBits:2,cssLitGroup:[t[0],t[47],t[62]]},"border-top-left-radius":{cssExtra:r[0],cssPropBits:5},"border-top-right-radius":{cssExtra:r[0],cssPropBits:5},"border-top-style":{cssPropBits:0,cssLitGroup:[t[9],t[46],t[47],t[48],t[54]]},"border-top-width":{cssPropBits:5,cssLitGroup:[t[34],t[47],t[52]]},"border-width":{cssPropBits:5,cssLitGroup:[t[34],t[47],t[52]]},bottom:{cssPropBits:5,cssLitGroup:[t[38],t[47]]},"box-shadow":{cssExtra:r[1],cssPropBits:7,cssLitGroup:[t[0],t[35],t[48],t[54]]},"caption-side":{cssPropBits:0,cssLitGroup:[t[24],t[47]]},clear:{cssPropBits:0,cssLitGroup:[t[30],t[40],t[47],t[54]]},clip:{cssExtra:/^ *\s*rect\(\s*(?:0|[+\-]?\d+(?:\.\d+)?(?:[cem]m|ex|in|p[ctx])|auto)\s*,\s*(?:0|[+\-]?\d+(?:\.\d+)?(?:[cem]m|ex|in|p[ctx])|auto)\s*,\s*(?:0|[+\-]?\d+(?:\.\d+)?(?:[cem]m|ex|in|p[ctx])|auto)\s*,\s*(?:0|[+\-]?\d+(?:\.\d+)?(?:[cem]m|ex|in|p[ctx])|auto) *\) *$/i,cssPropBits:0,cssLitGroup:[t[38],t[47]]},color:{cssExtra:r[2],cssPropBits:130,cssLitGroup:[t[0],t[47]]},content:{cssPropBits:0},"counter-increment":{cssExtra:r[0],cssPropBits:5,cssLitGroup:[t[47],t[54]]},"counter-reset":{cssExtra:r[0],cssPropBits:5,cssLitGroup:[t[47],t[54]]},cue:{cssPropBits:16,cssLitGroup:[t[47],t[54]]},"cue-after":{cssPropBits:16,cssLitGroup:[t[47],t[54]]},"cue-before":{cssPropBits:16,cssLitGroup:[t[47],t[54]]},cursor:{cssExtra:r[0],cssPropBits:144,cssLitGroup:[t[1],t[35],t[38],t[47]]},direction:{cssPropBits:0,cssLitGroup:[t[31],t[47]]},display:{cssPropBits:32,cssLitGroup:[t[2],t[47],t[54]]},elevation:{cssPropBits:5,cssLitGroup:[t[13],t[47]]},"empty-cells":{cssPropBits:0,cssLitGroup:[t[27],t[47]]},filter:{cssExtra:/^ *(?:\s*alpha\(\s*opacity\s*=\s*(?:0|\d+(?:\.\d+)?%|[+\-]?\d+(?:\.\d+)?) *\))+ *$/i,cssPropBits:32},float:{cssAlternates:["cssFloat","styleFloat"],cssPropBits:32,cssLitGroup:[t[30],t[47],t[54]]},font:{cssExtra:r[0],cssPropBits:9,cssLitGroup:[t[4],t[7],t[11],t[15],t[29],t[35],t[36],t[47],t[52],t[55],t[60]]},"font-family":{cssExtra:r[0],cssPropBits:8,cssLitGroup:[t[15],t[35],t[47]]},"font-size":{cssPropBits:1,cssLitGroup:[t[7],t[47],t[52]]},"font-stretch":{cssPropBits:0,cssLitGroup:[t[5],t[55]]},"font-style":{cssPropBits:0,cssLitGroup:[t[29],t[47],t[55]]},"font-variant":{cssPropBits:0,cssLitGroup:[t[47],t[55],t[60]]},"font-weight":{cssPropBits:0,cssLitGroup:[t[4],t[47],t[55]],cssLitNumeric:true},height:{cssPropBits:37,cssLitGroup:[t[38],t[47]]},left:{cssPropBits:37,cssLitGroup:[t[38],t[47]]},"letter-spacing":{cssPropBits:5,cssLitGroup:[t[47],t[55]]},"line-height":{cssPropBits:1,cssLitGroup:[t[47],t[55]]},"list-style":{cssPropBits:16,cssLitGroup:[t[3],t[28],t[47],t[54]]},"list-style-image":{cssPropBits:16,cssLitGroup:[t[47],t[54]]},"list-style-position":{cssPropBits:0,cssLitGroup:[t[28],t[47]]},"list-style-type":{cssPropBits:0,cssLitGroup:[t[3],t[47],t[54]]},margin:{cssPropBits:5,cssLitGroup:[t[38],t[47]]},"margin-bottom":{cssPropBits:5,cssLitGroup:[t[38],t[47]]},"margin-left":{cssPropBits:5,cssLitGroup:[t[38],t[47]]},"margin-right":{cssPropBits:5,cssLitGroup:[t[38],t[47]]},"margin-top":{cssPropBits:5,cssLitGroup:[t[38],t[47]]},"max-height":{cssPropBits:1,cssLitGroup:[t[38],t[47],t[54]]},"max-width":{cssPropBits:1,cssLitGroup:[t[38],t[47],t[54]]},"min-height":{cssPropBits:1,cssLitGroup:[t[38],t[47]]},"min-width":{cssPropBits:1,cssLitGroup:[t[38],t[47]]},opacity:{cssPropBits:33,cssLitGroup:[t[47]]},outline:{cssExtra:r[3],cssPropBits:7,cssLitGroup:[t[0],t[9],t[34],t[46],t[47],t[48],t[49],t[52],t[54]]},"outline-color":{cssExtra:r[2],cssPropBits:2,cssLitGroup:[t[0],t[47],t[49]]},"outline-style":{cssPropBits:0,cssLitGroup:[t[9],t[46],t[47],t[48],t[54]]},"outline-width":{cssPropBits:5,cssLitGroup:[t[34],t[47],t[52]]},overflow:{cssPropBits:32,cssLitGroup:[t[38],t[46],t[47],t[58],t[63]]},"overflow-x":{cssPropBits:0,cssLitGroup:[t[32],t[38],t[46],t[58],t[63]]},"overflow-y":{cssPropBits:0,cssLitGroup:[t[32],t[38],t[46],t[58],t[63]]},padding:{cssPropBits:1,cssLitGroup:[t[47]]},"padding-bottom":{cssPropBits:33,cssLitGroup:[t[47]]},"padding-left":{cssPropBits:33,cssLitGroup:[t[47]]},"padding-right":{cssPropBits:33,cssLitGroup:[t[47]]},"padding-top":{cssPropBits:33,cssLitGroup:[t[47]]},"page-break-after":{cssPropBits:0,cssLitGroup:[t[30],t[37],t[38],t[39],t[47]]},"page-break-before":{cssPropBits:0,cssLitGroup:[t[30],t[37],t[38],t[39],t[47]]},"page-break-inside":{cssPropBits:0,cssLitGroup:[t[38],t[39],t[47]]},pause:{cssPropBits:5,cssLitGroup:[t[47]]},"pause-after":{cssPropBits:5,cssLitGroup:[t[47]]},"pause-before":{cssPropBits:5,cssLitGroup:[t[47]]},pitch:{cssPropBits:5,cssLitGroup:[t[19],t[47],t[52]]},"pitch-range":{cssPropBits:5,cssLitGroup:[t[47]]},"play-during":{cssExtra:r[0],cssPropBits:16,cssLitGroup:[t[38],t[47],t[53],t[54],t[57]]},position:{cssPropBits:32,cssLitGroup:[t[20],t[47]]},quotes:{cssExtra:r[0],cssPropBits:0,cssLitGroup:[t[47],t[54]]},richness:{cssPropBits:5,cssLitGroup:[t[47]]},right:{cssPropBits:37,cssLitGroup:[t[38],t[47]]},speak:{cssPropBits:0,cssLitGroup:[t[47],t[54],t[55],t[61]]},"speak-header":{cssPropBits:0,cssLitGroup:[t[37],t[47],t[56]]},"speak-numeral":{cssPropBits:0,cssLitGroup:[t[26],t[47]]},"speak-punctuation":{cssPropBits:0,cssLitGroup:[t[43],t[47],t[54]]},"speech-rate":{cssPropBits:5,cssLitGroup:[t[12],t[47],t[52]]},stress:{cssPropBits:5,cssLitGroup:[t[47]]},"table-layout":{cssPropBits:0,cssLitGroup:[t[38],t[45],t[47]]},"text-align":{cssPropBits:0,cssLitGroup:[t[30],t[42],t[47],t[50]]},"text-decoration":{cssPropBits:0,cssLitGroup:[t[18],t[47],t[54]]},"text-indent":{cssPropBits:5,cssLitGroup:[t[47]]},"text-overflow":{cssPropBits:0,cssLitGroup:[t[25]]},"text-shadow":{cssExtra:r[1],cssPropBits:7,cssLitGroup:[t[0],t[35],t[48],t[54]]},"text-transform":{cssPropBits:0,cssLitGroup:[t[21],t[47],t[54]]},"text-wrap":{cssPropBits:0,cssLitGroup:[t[33],t[54],t[55]]},top:{cssPropBits:37,cssLitGroup:[t[38],t[47]]},"unicode-bidi":{cssPropBits:0,cssLitGroup:[t[23],t[47],t[55]]},"vertical-align":{cssPropBits:5,cssLitGroup:[t[10],t[24],t[47]]},visibility:{cssPropBits:32,cssLitGroup:[t[44],t[46],t[47],t[63]]},"voice-family":{cssExtra:r[0],cssPropBits:8,cssLitGroup:[t[22],t[35],t[47]]},volume:{cssPropBits:1,cssLitGroup:[t[16],t[47],t[52]]},"white-space":{cssPropBits:0,cssLitGroup:[t[8],t[47],t[55]]},width:{cssPropBits:33,cssLitGroup:[t[38],t[47]]},"word-spacing":{cssPropBits:5,cssLitGroup:[t[47],t[55]]},"word-wrap":{cssPropBits:0,cssLitGroup:[t[41],t[55]]},"z-index":{cssPropBits:69,cssLitGroup:[t[38],t[47]]},zoom:{cssPropBits:1,cssLitGroup:[t[55]]}}}();if(typeof window!=="undefined"){window["cssSchema"]=c}
// Copyright (C) 2011 Google Inc.
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//      http://www.apache.org/licenses/LICENSE-2.0
// distributed under the License is distributed on an "AS IS" BASIS,
// See the License for the specific language governing permissions and
// limitations under the License.
var l;var u;(function(){function e(e){var r=parseInt(e.substring(1),16);if(r>65535){return r-=65536,String.fromCharCode(55296+(r>>10),56320+(r&1023))}else if(r==r){return String.fromCharCode(r)}else if(e[1]<" "){return""}else{return e[1]}}function r(e,r){return'"'+e.replace(/[\u0000-\u001f\\\"<>]/g,r)+'"'}function t(e){return o[e]||(o[e]="\\"+e.charCodeAt(0).toString(16)+" ")}function s(e){return i[e]||(i[e]=(e<""?"%0":"%")+e.charCodeAt(0).toString(16))}var o={"\\":"\\\\"};var i={"\\":"%5c"};var a="[\\t\\n\\f ]";var n=a+"*";var c="[\\n\\f]";var p="[\\ud800-\\udbff][\\udc00-\\udfff]";var d="[\\u0080-\\ud7ff\\ue000-\\ufffd]|"+p;var f="[0-9a-fA-F]{1,6}"+a+"?";var h="\\\\"+f;var m="(?:"+f+"|[\\u0020-\\u007e\\u0080-\\ud7ff\\ue000\\ufffd]|"+p+")";var g="\\\\"+m;var b="(?:[\\t\\x21\\x23-\\x26\\x28-\\x5b\\x5d-\\x7e]|"+d+"|"+g+")";var v="[^'\"\\n\\f\\\\]|\\\\[\\s\\S]";var w="\"(?:'|"+v+')*"'+"|'(?:\"|"+v+")*'";var L="[-+]?(?:[0-9]+(?:[.][0-9]+)?|[.][0-9]+)";var P="(?:[a-zA-Z_]|"+d+"|"+g+")";var x="(?:[a-zA-Z0-9_-]|"+d+"|"+g+")";var y=x+"+";var B="-?"+P+x+"*";var E="@"+B;var G="#"+y;var k=L;var A="(?:@?-?"+P+"|#)"+x+"*";var T=L+"%";var S=L+B;var C=L+"(?:%|"+B+")?";var z="url[(]"+n+"(?:"+w+"|"+b+"*)"+n+"[)]";var N="U[+][0-9A-F?]{1,6}(?:-[0-9A-F]{1,6})?";var R="\x3c!--";var M="--\x3e";var D=a+"+";var O="/(?:[*][^*]*[*]+(?:[^/][^*]*[*]+)*/|/[^\\n\\f]*)";var $="(?!url[(])(?=("+B+"))\\1[(]";var j="~=";var I="[|]=";var _="[^]=";var q="[$]=";var F="[*]=";var U="[~|^$*]=";var Y="[^\"'\\\\/]|/(?![/*])";var Z="\\uFEFF";var H=new RegExp([Z,N,z,$,A,w,C,R,M,D,O,U,Y].join("|"),"gi");u=function(r){return r.replace(new RegExp("\\\\(?:"+m+"|"+c+")","g"),e)};l=function(e){e=""+e;var o=e.replace(/\r\n?/g,"\n").match(H)||[];var i=0;var a=" ";for(var c=0,l=o.length;c<l;++c){var p=u(o[c]);var d=p.length;var f=p.charCodeAt(0);p=f=='"'.charCodeAt(0)||f=="'".charCodeAt(0)?r(p.substring(1,d-1),t):f=="/".charCodeAt(0)&&d>1||p=="\\"||p==M||p==R||p=="\ufeff"||f<=" ".charCodeAt(0)?" ":/url\(/i.test(p)?"url("+r(p.replace(new RegExp("^url\\("+n+"[\"']?|[\"']?"+n+"\\)$","gi"),""),s)+")":p;if(a!=p||p!=" "){o[i++]=a=p}}o.length=i;return o}})();if(typeof window!=="undefined"){window["lexCss"]=l;window["decodeCss"]=u}
// Copyright (C) 2011 Google Inc.
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//      http://www.apache.org/licenses/LICENSE-2.0
// distributed under the License is distributed on an "AS IS" BASIS,
// See the License for the specific language governing permissions and
// limitations under the License.
var p=function(){var i='url("about:blank")';var n=/[\n\f\r\"\'()*<>]/g;var c={"\n":"%0a","\f":"%0c","\r":"%0d",'"':"%22","'":"%27","(":"%28",")":"%29","*":"%2a","<":"%3c",">":"%3e"};function l(e){if("string"===typeof e){return'url("'+e.replace(n,p)+'")'}else{return i}}function p(e){return c[e]}var d=new RegExp("^"+"(?:"+"([^:/?# ]+)"+":)?");var f=/^(?:https?|mailto)$/i;function h(e,r,t){if(!t){return null}var s=(""+e).match(d);if(s&&(!s[1]||f.test(s[1]))){return t(e,r)}else{return null}}function m(e){var r={};for(var t=e.length;--t>=0;){var s=e[t];for(var o=s.length;--o>=0;){r[s[o]]=b}}return r}function g(e,r){var t=1,s=r+1,o=e.length;while(s<o&&t){var i=e[s++];t+=i==="("?1:i===")"?-1:0}return s}var b={};return function(n,c,p,d){var f=c.cssPropBits;var v=f&(s|o);var w=NaN;var L=0,P=0;for(;L<p.length;++L){var x=p[L].toLowerCase();var y=x.charCodeAt(0),B,E,G,k,A;var T,S;x=y===" ".charCodeAt(0)?"":y==='"'.charCodeAt(0)?v===o&&d?l(h(u(p[L].substring(1,x.length-1)),n,d)):v===s?x:"":y==="#".charCodeAt(0)&&/^#(?:[0-9a-f]{3}){1,2}$/.test(x)?f&r?x:"":"0".charCodeAt(0)<=y&&y<="9".charCodeAt(0)&&!c.cssLitNumeric?f&e?f&a?x.match(/^\d{1,7}$/)?x:"":x:"":(B=x.charCodeAt(1),E=x.charCodeAt(2),G="0".charCodeAt(0)<=B&&B<="9".charCodeAt(0),k="0".charCodeAt(0)<=E&&E<="9".charCodeAt(0),y==="+".charCodeAt(0)&&(G||B===".".charCodeAt(0)&&k))?f&e?f&a?x.match(/^\+\d{1,7}$/)?x:"":(G?"":"0")+x.substring(1):"":y==="-".charCodeAt(0)&&(G||B===".".charCodeAt(0)&&k)?f&t?f&a?x.match(/^\-\d{1,7}$/)?x:"":(G?"-":"-0")+x.substring(1):f&e?"0":"":y===".".charCodeAt(0)&&G?f&e?"0"+x:"":"url("===x.substring(0,4)?d&&v&o?l(h(p[L].substring(5,x.length-2),n,d)):"":(x.charAt(x.length-1)==="("&&(A=g(p,L),p.splice(L,A-L,x=p.slice(L,A).join(" "))),T=c.cssLitGroup,S=T?c.cssLitMap||(c.cssLitMap=m(T)):b,S[x]===b||c.cssExtra&&c.cssExtra.test(x))?x:/^\w+$/.test(x)&&v===s?w+1===P?(p[w]=p[w].substring(0,p[w].length-1)+" "+x+'"',x=""):(w=P,'"'+x+'"'):"";if(x){p[P++]=x}}if(P===1&&p[0]===i){P=0}p.length=P}}();function d(e,r){var t=[];var s=[];var o=0,i;for(i=0;i<e.length;++i){if(!(e[i]==" "&&(e[i-1]==">"||e[i+1]==">"))){e[o++]=e[i]}}e.length=o;var a=e.length,n=0;for(i=0;i<a;++i){if(e[i]==","){c(n,i);n=i+1}}c(n,a);function c(o,i){var a=false;if(e[o]===" "){++o}if(i-1!==o&&e[i]===" "){--i}var n=[];var c=o;var l="";for(var u=o;u<i;++u){var p=e[u];var d=p===">";if(d||p===" "){l=f(c,u,false);if(!l||d&&/^html/i.test(l)){return}c=u+1;n.push(l,d?" > ":" ")}}l=f(c,i,true);if(!l){return}n.push(l);function f(t,s,o){var i=t,n=s;var c,l,u,p,d;c="";if(t<s){p=e[t].toLowerCase();if(p==="*"||p==="body"&&t+1!==s&&!o||"number"===typeof(d=g.ELEMENTS[p])&&!(d&g.eflags.UNSAFE)){++t;c=p}}l="";while(t<s){p=e[t];if(p.charAt(0)==="#"){if(/^#_|__$|[^#0-9A-Za-z:_\-]/.test(p)){return null}l+=p+"-"+r}else if(p==="."){if(++t<s&&/^[0-9A-Za-z:_\-]+$/.test(p=e[t])&&!/^_|__$/.test(p)){l+="."+p}else{return null}}else{break}++t}u="";if(t<s&&e[t]===":"){p=e[++t];if(p==="visited"||p==="link"){if(!/^[a*]?$/.test(c)){return null}a=true;u=":"+p;c="a";++t}}if(t===s){return c+l+u}return null}var h=n.join("");if(/^body\b/.test(h)){h=".vdoc-body___."+r+h.substring(4)}else{h="."+r+" "+h}(a?t:s).push(h)}return[s,t]}var f=function(){var e={};var r={braille:e,embossed:e,handheld:e,print:e,projection:e,screen:e,speech:e,tty:e,tv:e};function t(e){var r=false;for(var t=0,s=e.length;t<s-1;++t){var o=e[t];if(":"===e[t+1]){r=!(c[o].cssPropBits&n)}if(r){e[t]=""}if(";"===o){r=false}}return e.join("")}return function(s,o,i){var a=void 0;var n=[];var l=false;h(s,{startStylesheet:function(){a=[]},endStylesheet:function(){},startAtrule:function(t,s){if(l){t=null}else if(t==="@media"){s=s.filter(function(t){return r[t]==e});if(s.length){a.push(t,s.join(","),"{")}else{t=null}}else{if(t==="@import"){if(window.console){window.console.log("@import "+s.join(" ")+" elided")}}t=null}l=!t;n.push(t)},endAtrule:function(){var e=n.pop();if(!l){a.push(";")}u()},startBlock:function(){if(!l){a.push("{")}},endBlock:function(){if(!l){a.push("}");l=true}},startRuleset:function(e){var r=void 0;var t=false;if(!l){var s=d(e,o);var i=s[0];r=s[1];if(!i.length&&!r.length){l=true}else{var c=i.join(", ");if(!c){c="head > html";t=true}a.push(c,"{")}}n.push(l?null:{historySensitiveSelectors:r,endOfSelectors:a.length-1,removeHistoryInsensitiveSelectors:t})},endRuleset:function(){var e=n.pop();var r=a.length;if(!l){a.push("}");if(e){var s=e.historySensitiveSelectors;if(s.length){var o=a.slice(e.endOfSelectors);a.push(s.join(", "),t(o))}}}if(e&&e.removeHistoryInsensitiveSelectors){a.splice(e.endOfSelectors-1,r+1)}u()},declaration:function(e,r){if(!l){var t=c[e];if(t){p(e,t,r,i);if(r.length){a.push(e,":",r.join(" "),";")}}}}});function u(){l=n.length!==0&&n[n.length-1]!==null}return a.join("")}}();if(typeof window!=="undefined"){window["sanitizeCssProperty"]=p;window["sanitizeCssSelectors"]=d;window["sanitizeStylesheet"]=f}
// Copyright (C) 2010 Google Inc.
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//      http://www.apache.org/licenses/LICENSE-2.0
// distributed under the License is distributed on an "AS IS" BASIS,
// See the License for the specific language governing permissions and
// limitations under the License.
var h;var m;(function(){h=function(r,t){var s=l(r);if(t.startStylesheet){t.startStylesheet()}for(var o=0,i=s.length;o<i;){o=s[o]===" "?o+1:e(s,o,i,t)}if(t.endStylesheet){t.endStylesheet()}};function e(e,t,o,i){if(t<o){var a=e[t];if(a.charAt(0)==="@"){return r(e,t,o,i,true)}else{return s(e,t,o,i)}}else{return t}}function r(e,r,s,o,i){var a=r++;while(r<s&&e[r]!=="{"&&e[r]!==";"){++r}if(r<s&&(i||e[r]===";")){var n=a+1,c=r;if(n<s&&e[n]===" "){++n}if(c>n&&e[c-1]===" "){--c}if(o.startAtrule){o.startAtrule(e[a].toLowerCase(),e.slice(n,c))}r=e[r]==="{"?t(e,r,s,o):r+1;if(o.endAtrule){o.endAtrule()}}return r}function t(e,o,i,a){++o;if(a.startBlock){a.startBlock()}while(o<i){var n=e[o].charAt(0);if(n=="}"){++o;break}if(n===" "||n===";"){o=o+1}else if(n==="@"){o=r(e,o,i,a,false)}else if(n==="{"){o=t(e,o,i,a)}else{o=s(e,o,i,a)}}if(a.endBlock){a.endBlock()}return o}function s(e,r,t,s){var i=r,n=o(e,r,t,true);if(n<0){n=~n;return r===n?n+1:n}r=n;if(n>i&&e[n-1]===" "){--n}var c=e[r];++r;if(c!=="{"){return r}if(s.startRuleset){s.startRuleset(e.slice(i,n))}while(r<t){c=e[r];if(c==="}"){++r;break}if(c===" "){r=r+1}else{r=a(e,r,t,s)}}if(s.endRuleset){s.endRuleset()}return r<t?r+1:r}function o(e,r,t,s){var o=r;var i;var a=[],n=-1;for(;r<t;++r){i=e[r].charAt(0);if(i==="["||i==="("){a[++n]=i}else if(i==="]"&&a[n]==="["||i===")"&&a[n]==="("){--n}else if(i==="{"||i==="}"||i===";"||i==="@"||i===":"&&!s){break}}if(n>=0){r=~(r+1)}return r}var i=/^-?[a-z]/i;function a(e,r,t,s){var a=e[r++];if(!i.test(a)){return r+1}var n;if(r<t&&e[r]===" "){++r}if(r==t||e[r]!==":"){while(r<t&&(n=e[r])!==";"&&n!=="}"){++r}return r}++r;if(r<t&&e[r]===" "){++r}var c=r,l=o(e,r,t,false);if(l<0){l=~l}else{var u=[],p=0;for(var d=c;d<l;++d){n=e[d];if(n!==" "){u[p++]=n}}if(l<t){do{n=e[l];if(n===";"||n==="}"){break}p=0}while(++l<t);if(n===";"){++l}}if(p&&s.declaration){s.declaration(a.toLowerCase(),u)}}return l}m=function(e,r){var t=l(e);for(var s=0,o=t.length;s<o;){s=t[s]!==" "?a(t,s,o,r):s+1}}})();if(typeof window!=="undefined"){window["parseCssStylesheet"]=h;window["parseCssDeclarations"]=m}
/*!
 * OpenUI5
 * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
 * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
 */var g={};g.atype={NONE:0,URI:1,URI_FRAGMENT:11,SCRIPT:2,STYLE:3,ID:4,IDREF:5,IDREFS:6,GLOBAL_NAME:7,LOCAL_NAME:8,CLASSES:9,FRAME_TARGET:10};g.ATTRIBS={"*::accesskey":0,"*::class":9,"*::contenteditable":0,"*::contextmenu":0,"*::dir":0,"*::draggable":0,"*::dropzone":0,"*::hidden":0,"*::id":4,"*::lang":0,"*::onabort":2,"*::onblur":2,"*::oncanplay":2,"*::oncanplaythrough":2,"*::onchange":2,"*::onclick":2,"*::oncontextmenu":2,"*::oncuechange":2,"*::ondblclick":2,"*::ondrag":2,"*::ondragend":2,"*::ondragenter":2,"*::ondragleave":2,"*::ondragover":2,"*::ondragstart":2,"*::ondrop":2,"*::ondurationchange":2,"*::onemptied":2,"*::onended":2,"*::onerror":2,"*::onfocus":2,"*::oninput":2,"*::oninvalid":2,"*::onkeydown":2,"*::onkeypress":2,"*::onkeyup":2,"*::onload":2,"*::onloadeddata":2,"*::onloadedmetadata":2,"*::onloadstart":2,"*::onmousedown":2,"*::onmousemove":2,"*::onmouseout":2,"*::onmouseover":2,"*::onmouseup":2,"*::onmousewheel":2,"*::onpause":2,"*::onplay":2,"*::onplaying":2,"*::onprogress":2,"*::onratechange":2,"*::onreadystatechange":2,"*::onreset":2,"*::onscroll":2,"*::onseeked":2,"*::onseeking":2,"*::onselect":2,"*::onshow":2,"*::onstalled":2,"*::onsubmit":2,"*::onsuspend":2,"*::ontimeupdate":2,"*::onvolumechange":2,"*::onwaiting":2,"*::spellcheck":0,"*::style":3,"*::tabindex":0,"*::title":0,"a::href":1,"a::hreflang":0,"a::media":0,"a::rel":0,"a::target":0,"a::type":0,"area::alt":0,"area::coords":0,"area::href":1,"area::hreflang":0,"area::media":0,"area::rel":0,"area::shape":0,"area::target":10,"area::type":0,"audio::autoplay":0,"audio::controls":0,"audio::loop":0,"audio::mediagroup":0,"audio::preload":0,"audio::src":1,"base::href":1,"base::target":10,"blockquote::cite":1,"body::onafterprint":2,"body::onbeforeprint":2,"body::onbeforeunload":2,"body::onblur":2,"body::onerror":2,"body::onfocus":2,"body::onhashchange":2,"body::onload":2,"body::onmessage":2,"body::onoffline":2,"body::ononline":2,"body::onpagehide":2,"body::onpageshow":2,"body::onpopstate":2,"body::onredo":2,"body::onresize":2,"body::onscroll":2,"body::onstorage":2,"body::onundo":2,"body::onunload":2,"button::autofocus":0,"button::disabled":0,"button::form":0,"button::formaction":1,"button::formenctype":0,"button::formmethod":0,"button::formnovalidate":0,"button::formtarget":10,"button::name":8,"button::type":0,"button::value":0,"canvas::height":0,"canvas::width":0,"col::span":0,"colgroup::span":0,"command::checked":0,"command::disabled":0,"command::icon":1,"command::label":0,"command::radiogroup":0,"command::type":0,"del::cite":1,"del::datetime":0,"details::open":0,"embed::height":0,"embed::src":1,"embed::type":0,"embed::width":0,"fieldset::disabled":0,"fieldset::form":0,"fieldset::name":8,"form::accept-charset":0,"form::action":1,"form::autocomplete":0,"form::enctype":0,"form::method":0,"form::name":7,"form::novalidate":0,"form::target":10,"html:: manifest":1,"iframe::height":0,"iframe::name":7,"iframe::sandbox":0,"iframe::seamless":0,"iframe::src":1,"iframe::srcdoc":10,"iframe::width":0,"img::alt":0,"img::height":0,"img::ismap":0,"img::name":7,"img::src":1,"img::usemap":11,"img::width":0,"input::accept":0,"input::alt":0,"input::autocomplete":0,"input::autofocus":0,"input::checked":0,"input::dirname":0,"input::disabled":0,"input::form":0,"input::formaction":1,"input::formenctype":0,"input::formmethod":0,"input::formnovalidate":0,"input::formtarget":10,"input::height":0,"input::list":0,"input::max":0,"input::maxlength":0,"input::min":0,"input::multiple":0,"input::name":8,"input::pattern":0,"input::placeholder":0,"input::readonly":0,"input::required":0,"input::step":0,"input::size":0,"input::src":1,"input::type":0,"input::value":0,"input::width":0,"ins::cite":1,"ins::datetime":0,"keygen::autofocus":0,"keygen::challenge":0,"keygen::disabled":0,"keygen::form":0,"keygen::keytype":0,"keygen::name":8,"label::for":5,"label::form":0,"link::href":1,"link::hreflang":0,"link::media":0,"link::rel":0,"link::sizes":0,"link::type":0,"li::value":0,"map::name":7,"menu::label":0,"menu::type":0,"meta::charset":0,"meta::content":0,"meta::http-equiv":0,"meta::name":7,"meter::form":0,"meter::high":0,"meter::low":0,"meter::max":0,"meter::min":0,"meter::optimum":0,"meter::value":0,"object::data":1,"object::form":0,"object::height":0,"object::name":8,"object::type":0,"object::usemap":11,"object::width":0,"ol::reversed":0,"ol::start":0,"optgroup::disabled":0,"optgroup::label":0,"option::disabled":0,"option::label":0,"option::selected":0,"option::value":0,"output::for":5,"output::form":0,"output::name":8,"param::name":8,"param::value":0,"progress::form":0,"progress::max":0,"progress::value":0,"q::cite":1,"script::async":0,"script::charset":0,"script::defer":0,"script::src":1,"script::type":0,"select::autofocus":0,"select::disabled":0,"select::form":0,"select::multiple":0,"select::name":8,"select::required":0,"select::size":0,"source::media":0,"source::src":1,"source::type":0,"style::media":0,"style::scoped":0,"style::type":0,"table::border":0,"td::colspan":0,"td::headers":6,"td::rowspan":0,"textarea::autofocus":0,"textarea::cols":0,"textarea::disabled":0,"textarea::form":0,"textarea::maxlength":0,"textarea::name":8,"textarea::placeholder":0,"textarea::readonly":0,"textarea::required":0,"textarea::rows":0,"textarea::wrap":0,"th::colspan":0,"th::headers":6,"th::rowspan":0,"th::scope":0,"time::datetime":0,"time::pubdate":0,"track::default":0,"track::kind":0,"track::label":0,"track::src":1,"track::srclang":0,"video::autoplay":0,"video::controls":0,"video::height":0,"video::loop":0,"video::mediagroup":0,"video::poster":1,"video::preload":0,"video::src":1,"video::width":0};g.eflags={OPTIONAL_ENDTAG:1,EMPTY:2,CDATA:4,RCDATA:8,UNSAFE:16,FOLDABLE:32,SCRIPT:64,STYLE:128};g.ELEMENTS={a:0,abbr:0,address:0,area:2,article:0,aside:0,audio:0,b:0,base:18,bdi:0,bdo:0,blockquote:0,body:49,br:2,button:0,canvas:0,caption:0,cite:0,code:0,col:2,colgroup:1,command:2,datalist:0,dd:1,del:0,details:0,dfn:0,div:0,dl:0,dt:1,em:0,embed:18,fieldset:0,figcaption:0,figure:0,footer:0,form:0,h1:0,h2:0,h3:0,h4:0,h5:0,h6:0,head:49,header:0,hgroup:0,hr:2,html:49,i:0,iframe:0,img:2,input:2,ins:0,kbd:0,keygen:2,label:0,legend:0,li:1,link:18,map:0,mark:0,menu:0,meta:18,meter:0,nav:0,noscript:20,object:16,ol:0,optgroup:1,option:1,output:0,p:1,param:18,pre:0,progress:0,q:0,rp:1,rt:1,ruby:0,s:0,samp:0,script:84,section:0,select:0,small:0,source:2,span:0,strong:0,style:148,sub:0,summary:0,sup:0,table:0,tbody:1,td:1,textarea:8,tfoot:1,th:1,thead:1,time:0,title:24,tr:1,track:2,u:0,ul:0,var:0,video:0,wbr:2};g.ueffects={NOT_LOADED:0,SAME_DOCUMENT:1,NEW_DOCUMENT:2};g.URIEFFECTS={"a::href":2,"area::href":2,"audio::src":1,"base::href":2,"blockquote::cite":0,"button::formaction":2,"command::icon":1,"del::cite":0,"embed::src":1,"form::action":2,"html:: manifest":1,"iframe::src":1,"img::src":1,"input::formaction":2,"input::src":1,"ins::cite":0,"link::href":2,"object::data":1,"q::cite":0,"script::src":1,"source::src":1,"track::src":1,"video::poster":1,"video::src":1};g.ltypes={UNSANDBOXED:2,SANDBOXED:1,DATA:0};g.LOADERTYPES={"a::href":2,"area::href":2,"audio::src":1,"base::href":2,"blockquote::cite":2,"button::formaction":2,"command::icon":1,"del::cite":2,"embed::src":1,"form::action":2,"html:: manifest":1,"iframe::src":1,"img::src":1,"input::formaction":2,"input::src":1,"ins::cite":2,"link::href":2,"object::data":0,"q::cite":2,"script::src":1,"source::src":1,"track::src":1,"video::poster":1,"video::src":1};if(typeof window!=="undefined"){window["html4"]=g}// Copyright (C) 2006 Google Inc.
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//      http://www.apache.org/licenses/LICENSE-2.0
// distributed under the License is distributed on an "AS IS" BASIS,
// See the License for the specific language governing permissions and
// limitations under the License.
var b=function(e){var r,t,s;if("undefined"!==typeof window){r=window["parseCssDeclarations"];t=window["sanitizeCssProperty"];s=window["cssSchema"]}var o;if("script"==="SCRIPT".toLowerCase()){o=function(e){return e.toLowerCase()}}else{o=function(e){return e.replace(/[A-Z]/g,function(e){return String.fromCharCode(e.charCodeAt(0)|32)})}}var i={lt:"<",gt:">",amp:"&",nbsp:" ",quot:'"',apos:"'"};var a=/^#(\d+)$/;var n=/^#x([0-9A-Fa-f]+)$/;function c(e){e=o(e);if(i.hasOwnProperty(e)){return i[e]}var r=e.match(a);if(r){return String.fromCharCode(parseInt(r[1],10))}else if(!!(r=e.match(n))){return String.fromCharCode(parseInt(r[1],16))}return""}function l(e,r){return c(r)}var u=/\0/g;function p(e){return e.replace(u,"")}var d=/&(#\d+|#x[0-9A-Fa-f]+|\w+);/g;function f(e){return e.replace(d,l)}var h=/&/g;var m=/&([^a-z#]|#(?:[^0-9x]|x(?:[^0-9a-f]|$)|$)|$)/gi;var g=/[<]/g;var b=/>/g;var v=/\"/g;function w(e){return(""+e).replace(h,"&amp;").replace(g,"&lt;").replace(b,"&gt;").replace(v,"&#34;")}function L(e){return e.replace(m,"&amp;$1").replace(g,"&lt;").replace(b,"&gt;")}var P=new RegExp("^\\s*"+"([a-z][a-z-]*)"+"(?:"+("\\s*(=)\\s*"+"("+('(")[^"]*("|$)'+"|"+"(')[^']*('|$)"+"|"+"(?=[a-z][a-z-]*\\s*=)"+"|"+"[^\"'\\s]*")+")")+")?","i");var x=/^(#[0-9]+|#x[0-9a-f]+|\w+);/i;var y="a,b".split(/(,)/).length===3;var B=e.eflags.CDATA|e.eflags.RCDATA;function E(e){return function(r,t){return k(r,e,t)}}var G={};function k(e,r,t){var s=r;var o,i,a;var n=S(e);var c={noMoreGT:false,noMoreEndComments:false};T(r,n,0,c,t)}function A(e,r,t,s,o){return function(){T(e,r,t,s,o)}}function T(r,t,s,i,a){try{if(r.startDoc&&s==0){r.startDoc(a)}var n,c,l;for(var u=s,p=t.length;u<p;){var d=t[u++];var f=t[u];switch(d){case"&":if(x.test(f)){if(r.pcdata){r.pcdata("&"+f,a,G,A(r,t,u,i,a))}u++}else{if(r.pcdata){r.pcdata("&amp;",a,G,A(r,t,u,i,a))}}break;case"</":if(n=/^(\w+)[^\'\"]*/.exec(f)){if(n[0].length===f.length&&t[u+1]===">"){u+=2;l=o(n[1]);if(e.ELEMENTS.hasOwnProperty(l)){if(r.endTag){r.endTag(l,a,G,A(r,t,u,i,a))}}}else{u=C(t,u,r,a,G,i)}}else{if(r.pcdata){r.pcdata("&lt;/",a,G,A(r,t,u,i,a))}}break;case"<":if(n=/^(\w+)\s*\/?/.exec(f)){if(n[0].length===f.length&&t[u+1]===">"){u+=2;l=o(n[1]);if(e.ELEMENTS.hasOwnProperty(l)){if(r.startTag){r.startTag(l,[],a,G,A(r,t,u,i,a))}var h=e.ELEMENTS[l];if(h&B){var m={name:l,next:u,eflags:h};u=R(t,m,r,a,G,i)}}}else{u=z(t,u,r,a,G,i)}}else{if(r.pcdata){r.pcdata("&lt;",a,G,A(r,t,u,i,a))}}break;case"\x3c!--":if(!i.noMoreEndComments){for(c=u+1;c<p;c++){if(t[c]===">"&&/--$/.test(t[c-1])){break}}if(c<p){u=c+1}else{i.noMoreEndComments=true}}if(i.noMoreEndComments){if(r.pcdata){r.pcdata("&lt;!--",a,G,A(r,t,u,i,a))}}break;case"<!":if(!/^\w/.test(f)){if(r.pcdata){r.pcdata("&lt;!",a,G,A(r,t,u,i,a))}}else{if(!i.noMoreGT){for(c=u+1;c<p;c++){if(t[c]===">"){break}}if(c<p){u=c+1}else{i.noMoreGT=true}}if(i.noMoreGT){if(r.pcdata){r.pcdata("&lt;!",a,G,A(r,t,u,i,a))}}}break;case"<?":if(!i.noMoreGT){for(c=u+1;c<p;c++){if(t[c]===">"){break}}if(c<p){u=c+1}else{i.noMoreGT=true}}if(i.noMoreGT){if(r.pcdata){r.pcdata("&lt;?",a,G,A(r,t,u,i,a))}}break;case">":if(r.pcdata){r.pcdata("&gt;",a,G,A(r,t,u,i,a))}break;case"":break;default:if(r.pcdata){r.pcdata(d,a,G,A(r,t,u,i,a))}break}}if(r.endDoc){r.endDoc(a)}}catch(e){if(e!==G){throw e}}}function S(e){var r=/(<\/|<\!--|<[!?]|[&<>])/g;e+="";if(y){return e.split(r)}else{var t=[];var s=0;var o;while((o=r.exec(e))!==null){t.push(e.substring(s,o.index));t.push(o[0]);s=o.index+o[0].length}t.push(e.substring(s));return t}}function C(e,r,t,s,o,i){var a=M(e,r);if(!a){return e.length}if(a.eflags!==void 0){if(t.endTag){t.endTag(a.name,s,o,A(t,e,r,i,s))}}return a.next}function z(e,r,t,s,o,i){var a=M(e,r);if(!a){return e.length}if(a.eflags!==void 0){if(t.startTag){t.startTag(a.name,a.attrs,s,o,A(t,e,a.next,i,s))}if(a.eflags&B){return R(e,a,t,s,o,i)}}return a.next}var N={};function R(r,t,s,o,i,a){var n=r.length;if(!N.hasOwnProperty(t.name)){N[t.name]=new RegExp("^"+t.name+"(?:[\\s\\/]|$)","i")}var c=N[t.name];var l=t.next;var u=t.next+1;for(;u<n;u++){if(r[u-1]==="</"&&c.test(r[u])){break}}if(u<n){u-=1}var p=r.slice(l,u).join("");if(t.eflags&e.eflags.CDATA){if(s.cdata){s.cdata(p,o,i,A(s,r,u,a,o))}}else if(t.eflags&e.eflags.RCDATA){if(s.rcdata){s.rcdata(L(p),o,i,A(s,r,u,a,o))}}else{throw new Error("bug")}return u}function M(r,t){var s=/^(\w+)/.exec(r[t]);var i={name:o(s[1])};if(e.ELEMENTS.hasOwnProperty(i.name)){i.eflags=e.ELEMENTS[i.name]}else{i.eflags=void 0}var a=r[t].substr(s[0].length);var n=t+1;var c=r.length;for(;n<c;n++){if(r[n]===">"){break}a+=r[n]}if(c<=n){return void 0}var l=[];while(a!==""){s=P.exec(a);if(!s){a=a.replace(/^[\s\S][^a-z\s]*/,"")}else if(s[4]&&!s[5]||s[6]&&!s[7]){var u=s[4]||s[6];var p=false;var d=[a,r[n++]];for(;n<c;n++){if(p){if(r[n]===">"){break}}else if(0<=r[n].indexOf(u)){p=true}d.push(r[n])}if(c<=n){break}a=d.join("");continue}else{var f=o(s[1]);var h=s[2]?D(s[3]):f;l.push(f,h);a=a.substr(s[0].length)}}i.attrs=l;i.next=n+1;return i}function D(e){var r=e.charCodeAt(0);if(r===34||r===39){e=e.substr(1,e.length-2)}return f(p(e))}function O(r){var t;var s;var o=function(e,r){if(!s){r.push(e)}};return E({startDoc:function(e){t=[];s=false},startTag:function(o,i,a){if(s){return}if(!e.ELEMENTS.hasOwnProperty(o)){return}var n=e.ELEMENTS[o];if(n&e.eflags.FOLDABLE){return}i=r(o,i);if(!i){s=!(n&e.eflags.EMPTY);return}if(!(n&e.eflags.EMPTY)){t.push(o)}a.push("<",o);for(var c=0,l=i.length;c<l;c+=2){var u=i[c],p=i[c+1];if(p!==null&&p!==void 0){a.push(" ",u,'="',w(p),'"')}}a.push(">")},endTag:function(r,o){if(s){s=false;return}if(!e.ELEMENTS.hasOwnProperty(r)){return}var i=e.ELEMENTS[r];if(!(i&(e.eflags.EMPTY|e.eflags.FOLDABLE))){var a;if(i&e.eflags.OPTIONAL_ENDTAG){for(a=t.length;--a>=0;){var n=t[a];if(n===r){break}if(!(e.ELEMENTS[n]&e.eflags.OPTIONAL_ENDTAG)){return}}}else{for(a=t.length;--a>=0;){if(t[a]===r){break}}}if(a<0){return}for(var c=t.length;--c>a;){var n=t[c];if(!(e.ELEMENTS[n]&e.eflags.OPTIONAL_ENDTAG)){o.push("</",n,">")}}t.length=a;o.push("</",r,">")}},pcdata:o,rcdata:o,cdata:o,endDoc:function(e){for(;t.length;t.length--){e.push("</",t[t.length-1],">")}}})}var $=new RegExp("^"+"(?:"+"([^:/?# ]+)"+":)?");var j=/^(?:https?|mailto)$/i;function I(e,r){if(!r){return null}var t=(""+e).match($);if(t&&(!t[1]||j.test(t[1]))){return r(e)}else{return null}}function _(o,i,a,n){for(var c=0;c<i.length;c+=2){var l=i[c];var u=i[c+1];var p=null,d;if((d=o+"::"+l,e.ATTRIBS.hasOwnProperty(d))||(d="*::"+l,e.ATTRIBS.hasOwnProperty(d))){p=e.ATTRIBS[d]}if(p!==null){switch(p){case e.atype.NONE:break;case e.atype.SCRIPT:u=null;break;case e.atype.STYLE:if("undefined"===typeof r){u=null;break}var f=[];r(u,{declaration:function(e,r){var o=e.toLowerCase();var i=s[o];if(!i){return}t(o,i,r,a);f.push(e+": "+r.join(" "))}});u=f.length>0?f.join(" ; "):null;break;case e.atype.ID:case e.atype.IDREF:case e.atype.IDREFS:case e.atype.GLOBAL_NAME:case e.atype.LOCAL_NAME:case e.atype.CLASSES:u=n?n(u):u;break;case e.atype.URI:u=I(u,a);break;case e.atype.URI_FRAGMENT:if(u&&"#"===u.charAt(0)){u=u.substring(1);u=n?n(u):u;if(u!==null&&u!==void 0){u="#"+u}}else{u=null}break;default:u=null;break}}else{u=null}i[c+1]=u}return i}function q(r,t){return function(s,o){if(!(e.ELEMENTS[s]&e.eflags.UNSAFE)){return _(s,o,r,t)}}}function F(e,r){var t=[];O(r)(e,t);return t.join("")}function U(e,r,t){var s=q(r,t);return F(e,s)}return{escapeAttrib:w,makeHtmlSanitizer:O,makeSaxParser:E,makeTagPolicy:q,normalizeRCData:L,sanitize:U,sanitizeAttribs:_,sanitizeWithPolicy:F,unescapeEntities:f}}(g);var v=b.sanitize;if(typeof window!=="undefined"){window["html"]=b;window["html_sanitize"]=v}})();
},
	"sap/ui/thirdparty/crossroads.js":function(){
/** @license
 * crossroads <http://millermedeiros.github.com/crossroads.js/>
 * Author: Miller Medeiros | MIT License
 * v0.12.0 (2013/01/21 13:47)
 */
(function(){var e=function(e){var t,r,i;r=/t(.+)?/.exec("t")[1]==="";function s(e,t){if(e.indexOf){return e.indexOf(t)}else{var r=e.length;while(r--){if(e[r]===t){return r}}return-1}}function n(e,t){var r=s(e,t);if(r!==-1){e.splice(r,1)}}function a(e,t){return"[object "+t+"]"===Object.prototype.toString.call(e)}function o(e){return a(e,"RegExp")}function u(e){return a(e,"Array")}function h(e){return typeof e==="function"}function l(e){var t;if(e===null||e==="null"){t=null}else if(e==="true"){t=true}else if(e==="false"){t=false}else if(e===i||e==="undefined"){t=i}else if(e===""||isNaN(e)){t=e}else{t=parseFloat(e)}return t}function f(e){var t=e.length,r=[];while(t--){r[t]=l(e[t])}return r}function c(e,t){var r=(e||"").replace("?","").split("&"),i=r.length,s={},n,a;while(i--){n=r[i].split("=");a=t?l(n[1]):n[1];s[n[0]]=typeof a==="string"?decodeURIComponent(a):a}return s}function p(){this.bypassed=new e.Signal;this.routed=new e.Signal;this._routes=[];this._prevRoutes=[];this._piped=[];this.resetState()}p.prototype={greedy:false,greedyEnabled:true,ignoreCase:true,ignoreState:false,shouldTypecast:false,normalizeFn:null,resetState:function(){this._prevRoutes.length=0;this._prevMatchedRequest=null;this._prevBypassedRequest=null},create:function(){return new p},addRoute:function(e,t,r){var i=new d(e,t,r,this);this._sortedInsert(i);return i},removeRoute:function(e){n(this._routes,e);e._destroy()},removeAllRoutes:function(){var e=this.getNumRoutes();while(e--){this._routes[e]._destroy()}this._routes.length=0},parse:function(e,t){e=e||"";t=t||[];if(!this.ignoreState&&(e===this._prevMatchedRequest||e===this._prevBypassedRequest)){return}var r=this._getMatchedRoutes(e),i=0,s=r.length,n;if(s){this._prevMatchedRequest=e;this._notifyPrevRoutes(r,e);this._prevRoutes=r;while(i<s){n=r[i];n.route.matched.dispatch.apply(n.route.matched,t.concat(n.params));n.isFirst=!i;this.routed.dispatch.apply(this.routed,t.concat([e,n]));i+=1}}else{this._prevBypassedRequest=e;this.bypassed.dispatch.apply(this.bypassed,t.concat([e]))}this._pipeParse(e,t)},_notifyPrevRoutes:function(e,t){var r=0,i;while(i=this._prevRoutes[r++]){if(i.route.switched&&this._didSwitch(i.route,e)){i.route.switched.dispatch(t)}}},_didSwitch:function(e,t){var r,i=0;while(r=t[i++]){if(r.route===e){return false}}return true},_pipeParse:function(e,t){var r=0,i;while(i=this._piped[r++]){i.parse(e,t)}},getNumRoutes:function(){return this._routes.length},_sortedInsert:function(e){var t=this._routes,r=t.length;do{--r}while(t[r]&&e._priority<=t[r]._priority);t.splice(r+1,0,e)},_getMatchedRoutes:function(e){var t=[],r=this._routes,i=r.length,s;while(s=r[--i]){if((!t.length||this.greedy||s.greedy)&&s.match(e)){t.push({route:s,params:s._getParamsArray(e)})}if(!this.greedyEnabled&&t.length){break}}return t},pipe:function(e){this._piped.push(e)},unpipe:function(e){n(this._piped,e)},toString:function(){return"[crossroads numRoutes:"+this.getNumRoutes()+"]"}};t=new p;t.VERSION="0.12.0";t.NORM_AS_ARRAY=function(e,t){return[t.vals_]};t.NORM_AS_OBJECT=function(e,t){return[t]};function d(t,r,i,s){var n=o(t),a=s.patternLexer;this._router=s;this._pattern=t;this._paramsIds=n?null:a.getParamIds(t);this._optionalParamsIds=n?null:a.getOptionalParamsIds(t);this._matchRegexp=n?t:a.compilePattern(t,s.ignoreCase);this.matched=new e.Signal;this.switched=new e.Signal;if(r){this.matched.add(r)}this._priority=i||0}d.prototype={greedy:false,rules:void 0,match:function(e){e=e||"";return this._matchRegexp.test(e)&&this._validateParams(e)},_validateParams:function(e){var t=this.rules,r=this._getParamsObject(e),i;for(i in t){if(i!=="normalize_"&&t.hasOwnProperty(i)&&!this._isValidParam(e,i,r)){return false}}return true},_isValidParam:function(e,t,r){var i=this.rules[t],n=r[t],a=false,l=t.indexOf("?")===0;if(n==null&&this._optionalParamsIds&&s(this._optionalParamsIds,t)!==-1){a=true}else if(o(i)){if(l){n=r[t+"_"]}a=i.test(n)}else if(u(i)){if(l){n=r[t+"_"]}a=this._isValidArrayRule(i,n)}else if(h(i)){a=i(n,e,r)}return a},_isValidArrayRule:function(e,t){if(!this._router.ignoreCase){return s(e,t)!==-1}if(typeof t==="string"){t=t.toLowerCase()}var r=e.length,i,n;while(r--){i=e[r];n=typeof i==="string"?i.toLowerCase():i;if(n===t){return true}}return false},_getParamsObject:function(e){var t=this._router.shouldTypecast,i=this._router.patternLexer.getParamValues(e,this._matchRegexp,t),n={},a=i.length,o,u;while(a--){u=i[a];if(this._paramsIds){o=this._paramsIds[a];if(o.indexOf("?")===0&&u){n[o+"_"]=u;u=c(u,t);i[a]=u}if(r&&u===""&&s(this._optionalParamsIds,o)!==-1){u=void 0;i[a]=u}n[o]=u}n[a]=u}n.request_=t?l(e):e;n.vals_=i;return n},_getParamsArray:function(e){var t=this.rules?this.rules.normalize_:null,r;t=t||this._router.normalizeFn;if(t&&h(t)){r=t(e,this._getParamsObject(e))}else{r=this._getParamsObject(e).vals_}return r},interpolate:function(e){var t=this._router.patternLexer.interpolate(this._pattern,e);if(!this._validateParams(t)){throw new Error("Generated string doesn't validate against `Route.rules`.")}return t},extrapolate:function(e){var t={};if(!e){return t}var r=this._getParamsObject(e);this._paramsIds.forEach(function(e){if(r.hasOwnProperty(e)){t[e]=r[e]}});return t},dispose:function(){this._router.removeRoute(this)},_destroy:function(){this.matched.dispose();this.switched.dispose();this.matched=this.switched=this._pattern=this._matchRegexp=null},toString:function(){return'[Route pattern:"'+this._pattern+'", numListeners:'+this.matched.getNumListeners()+"]"}};p.prototype.patternLexer=function(){var e=/[\\.+*?\^$\[\](){}\/'#]/g,t=/^\/|\/$/g,r=/\/$/g,i=/(?:\{|:)([^}:]+)(?:\}|:)/g,s=function(e,t,r){var i=r.lastIndexOf("__CR_RS__"),s=r.indexOf("__CR_RQ__"),a=r.indexOf("__CR_OQ__"),o=r.indexOf("\\/",t),u=Math.min(a===-1?r.length:a,s===-1?r.length:s),h=t+e.length;if(h>=u||h<i||h<o){return n.OS.res_normal}else{return n.OS.res_arsbq}},n={OS:{rgx:/([:})]|\w(?=\/))\/?(:|(?:\{\?))/g,save:"$1{{id}}$2",res:s,res_normal:"\\/?",res_arsbq:"(?:(?:\\/(?=(?:[^\\/?]+)?))|(?:\\/?(?=\\?))|^\\/?|\\/?$)"},RS:{rgx:/([:}])\/?(\{)/g,save:"$1{{id}}$2",res:"\\/"},RQ:{rgx:/\{\?([^}]+)\}/g,res:"\\?(.+)"},OQ:{rgx:/:\?([^:]+):/g,res:"(?:\\?(.*))?"},OR:{rgx:/:([^:]+)\*:/g,res:"(.*)?"},RR:{rgx:/\{([^}]+)\*\}/g,res:"(.+)"},RP:{rgx:/\{([^}]+)\}/g,res:"([^\\/?]+)"},OP:{rgx:/:([^:]+):/g,res:"([^\\/?]+)?(?:\\/(?!\\/))?"}},a=1,o=2,u=3,h=a;function l(){var e,t;for(e in n){if(n.hasOwnProperty(e)){t=n[e];t.id="__CR_"+e+"__";t.save="save"in t?t.save.replace("{{id}}",t.id):t.id;t.rRestore=new RegExp(t.id,"g")}}}l();function c(e,t){var r=[],i;e.lastIndex=0;while(i=e.exec(t)){r.push(i[1])}return r}function p(e){return c(i,e)}function d(e){return c(n.OP.rgx,e)}function _(i,s){i=i||"";if(i){if(h===a){i=i.replace(t,"")}else if(h===u){i=i.replace(r,"")}i=g(i,"rgx","save");i=i.replace(e,"\\$&");i=g(i,"rRestore","res");if(h===a){i="\\/?"+i}}if(h!==o){i+="\\/?"}return new RegExp("^"+i+"$",s?"i":"")}function g(e,t,r){var i,s;for(s in n){if(n.hasOwnProperty(s)){i=n[s];e=e.replace(i[t],i[r])}}return e}function v(e,t,r){var i=t.exec(e);if(i){i.shift();if(r){i=f(i)}}return i}function m(e,t){if(typeof e!=="string"){throw new Error("Route pattern should be a string.")}var r=function(e,r){var i,s;if(r.charAt(0)==="?"){s=t[r]||t[r.substring(1)]}else{s=t[r]}if(s!=null){if(e.indexOf("{")!==-1&&s===""){throw new Error('The required segment "'+e+'" cannot accept empty string as value.')}if(typeof s==="object"){var n=[];for(var a in s){n.push(encodeURI(a+"="+s[a]))}i="?"+n.join("&")}else{i=String(s)}if(e.indexOf("*")===-1&&i.indexOf("/")!==-1){throw new Error('Invalid value "'+i+'" for segment "'+e+'".')}}else if(e.indexOf("{")!==-1){throw new Error("The segment "+e+" is required.")}else{i=""}return i};if(!n.OS.trail){n.OS.trail=new RegExp("(?:"+n.OS.id+")+$")}return e.replace(n.OS.rgx,n.OS.save).replace(i,r).replace(n.OS.trail,"").replace(n.OS.rRestore,"/")}return{strict:function(){h=o},loose:function(){h=a},legacy:function(){h=u},getParamIds:p,getOptionalParamsIds:d,getParamValues:v,compilePattern:_,interpolate:m}}();return t};if(typeof define==="function"&&define.amd){define(["signals"],e)}else{window["crossroads"]=e(window["signals"])}})();
},
	"sap/ui/thirdparty/hasher.js":function(){
/*!!
 * Hasher <http://github.com/millermedeiros/hasher>
 * @author Miller Medeiros
 * @version 1.2.0 (2013/11/11 03:18 PM)
 * Released under the MIT License
 */
(function(){var e=function(e){var n=function(n){var t=25,i=n.document,a=n.history,r=e.Signal,o,s,c,f,l,u,p=/#(.*)$/,d=/(\?.*)|(\#.*)/,h=/^\#/,v=!+"\v1",g="onhashchange"in n&&i.documentMode!==7,w=v&&!g,m=location.protocol==="file:";function H(e){return String(e||"").replace(/\W/g,"\\$&")}function y(e){if(!e)return"";var n=new RegExp("^"+H(o.prependHash)+"|"+H(o.appendHash)+"$","g");return e.replace(n,"")}function E(){var e=p.exec(o.getURL());var n=e&&e[1]||"";try{return o.raw?n:decodeURIComponent(n)}catch(e){return n}}function R(){return l?l.contentWindow.frameHash:null}function L(){l=i.createElement("iframe");l.src="about:blank";l.style.display="none";i.body.appendChild(l)}function b(){if(l&&s!==R()){var e=l.contentWindow.document;e.open();e.write("<html><head><title>"+i.title+'</title><script type="text/javascript">var frameHash="'+s+'";<\/script></head><body>&nbsp;</body></html>');e.close()}}function x(e,n){if(s!==e){var t=s;s=e;if(w){if(!n){b()}else{l.contentWindow.frameHash=e}}return function(){o.changed.dispatch(y(e),y(t))}}}if(w){u=function(){var e=E(),n=R(),t;if(n!==s&&n!==e){o.setHash(y(n))}else if(e!==s){t=x(e);t&&t()}}}else{u=function(){var e=E(),n;if(e!==s){n=x(e);n&&n()}}}function I(e,n,t){if(e.addEventListener){e.addEventListener(n,t,false)}else if(e.attachEvent){e.attachEvent("on"+n,t)}}function U(e,n,t){if(e.removeEventListener){e.removeEventListener(n,t,false)}else if(e.detachEvent){e.detachEvent("on"+n,t)}}function z(e){e=Array.prototype.slice.call(arguments);var n=e.join(o.separator);n=n?o.prependHash+n.replace(h,"")+o.appendHash:n;return n}function S(e){e=encodeURI(e);if(v&&m){e=e.replace(/\?/,"%3F")}return e}o={VERSION:"1.2.0",raw:false,appendHash:"",prependHash:"/",separator:"/",changed:new r,stopped:new r,initialized:new r,init:function(){if(f)return;s=E();if(g){I(n,"hashchange",u)}else{if(w){if(!l){L()}b()}c=setInterval(u,t)}f=true;o.initialized.dispatch(y(s))},stop:function(){if(!f)return;if(g){U(n,"hashchange",u)}else{clearInterval(c);c=null}f=false;o.stopped.dispatch(y(s))},isActive:function(){return f},getURL:function(){return n.location.href},getBaseURL:function(){return o.getURL().replace(d,"")},setHash:function(e){var t;e=z.apply(null,arguments);if(e!==s){t=x(e);if(!o.raw){e=S(e)}n.location.hash="#"+e;t&&t()}},replaceHash:function(e){var t,i=n.location.href,a=i.indexOf("#");e=z.apply(null,arguments);if(e!==s){t=x(e);if(!o.raw){e=S(e)}if(a!==-1){i=i.slice(0,a)}n.location.replace(i+"#"+e);t&&t()}},getHash:function(){return y(s)},getHashAsArray:function(){return o.getHash().split(o.separator)},dispose:function(){o.stop();o.initialized.dispose();o.stopped.dispose();o.changed.dispose();l=o=n.hasher=null},toString:function(){return'[hasher version="'+o.VERSION+'" hash="'+o.getHash()+'"]'}};o.initialized.memorize=true;return o}(window);return n};if(typeof define==="function"&&define.amd){define(["signals"],e)}else if(typeof exports==="object"){module.exports=e(require("signals"))}else{window["hasher"]=e(window["signals"])}})();
},
	"sap/ui/thirdparty/jqueryui/jquery-ui-core.js":function(){
/*!
 * jQuery UI Core 1.10.4
 * http://jqueryui.com
 *
 * Copyright 2014 jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/category/ui-core/
 */
(function(e,t){e.fn.zIndex=t;e.fn.enableSelection=t;e.fn.disableSelection=t;e.expr.pseudos.focusable=t;var n=0,i=/^ui-id-\d+$/;e.ui=e.ui||{};e.extend(e.ui,{version:"1.10.4",keyCode:{BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38}});e.fn.extend({focus:function(t){return function(n,i){return typeof n==="number"?this.each(function(){var t=this;setTimeout(function(){e(t).trigger("focus");if(i){i.call(t)}},n)}):t.apply(this,arguments)}}(e.fn.focus),scrollParent:function(){var t;if(e.ui.ie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))){t=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(e.css(this,"position"))&&/(auto|scroll)/.test(e.css(this,"overflow")+e.css(this,"overflow-y")+e.css(this,"overflow-x"))}).eq(0)}else{t=this.parents().filter(function(){return/(auto|scroll)/.test(e.css(this,"overflow")+e.css(this,"overflow-y")+e.css(this,"overflow-x"))}).eq(0)}return/fixed/.test(this.css("position"))||!t.length?e(document):t},zIndex:function(n){if(n!==t){return this.css("zIndex",n)}if(this.length){var i=e(this[0]),r,s;while(i.length&&i[0]!==document){r=i.css("position");if(r==="absolute"||r==="relative"||r==="fixed"){s=parseInt(i.css("zIndex"),10);if(!isNaN(s)&&s!==0){return s}}i=i.parent()}}return 0},uniqueId:function(){return this.each(function(){if(!this.id){this.id="ui-id-"+ ++n}})},removeUniqueId:function(){return this.each(function(){if(i.test(this.id)){e(this).removeAttr("id")}})}});function r(t,n){var i,r,o,u=t.nodeName.toLowerCase();if("area"===u){i=t.parentNode;r=i.name;if(!t.href||!r||i.nodeName.toLowerCase()!=="map"){return false}o=e("img[usemap='#"+r+"']")[0];return!!o&&s(o)}return(/input|select|textarea|button|object/.test(u)?!t.disabled:"a"===u?t.href||n:n)&&s(t)}function s(t){return e.expr.filters.visible(t)&&!e(t).parents().addBack().filter(function(){return e.css(this,"visibility")==="hidden"}).length}e.extend(e.expr.pseudos,{data:e.expr.createPseudo?e.expr.createPseudo(function(t){return function(n){return!!e.data(n,t)}}):function(t,n,i){return!!e.data(t,i[3])},focusable:function(t){return r(t,!isNaN(e.attr(t,"tabindex")))},tabbable:function(t){var n=e.attr(t,"tabindex"),i=isNaN(n);return(i||n>=0)&&r(t,!i)}});if(!e("<a>").outerWidth(1).jquery){e.each(["Width","Height"],function(n,i){var r=i==="Width"?["Left","Right"]:["Top","Bottom"],s=i.toLowerCase(),o={innerWidth:e.fn.innerWidth,innerHeight:e.fn.innerHeight,outerWidth:e.fn.outerWidth,outerHeight:e.fn.outerHeight};function u(t,n,i,s){e.each(r,function(){n-=parseFloat(e.css(t,"padding"+this))||0;if(i){n-=parseFloat(e.css(t,"border"+this+"Width"))||0}if(s){n-=parseFloat(e.css(t,"margin"+this))||0}});return n}e.fn["inner"+i]=function(n){if(n===t){return o["inner"+i].call(this)}return this.each(function(){e(this).css(s,u(this,n)+"px")})};e.fn["outer"+i]=function(t,n){if(typeof t!=="number"){return o["outer"+i].call(this,t)}return this.each(function(){e(this).css(s,u(this,t,true,n)+"px")})}})}if(!e.fn.addBack){e.fn.addBack=function(e){return this.add(e==null?this.prevObject:this.prevObject.filter(e))}}if(e("<a>").data("a-b","a").removeData("a-b").data("a-b")){e.fn.removeData=function(t){return function(n){if(arguments.length){return t.call(this,e.camelCase(n))}else{return t.call(this)}}}(e.fn.removeData)}e.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());e.support.selectstart="onselectstart"in document.createElement("div");e.fn.extend({disableSelection:function(){return this.on((e.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.off(".ui-disableSelection")}});e.extend(e.ui,{plugin:{add:function(t,n,i){var r,s=e.ui[t].prototype;for(r in i){s.plugins[r]=s.plugins[r]||[];s.plugins[r].push([n,i[r]])}},call:function(e,t,n){var i,r=e.plugins[t];if(!r||!e.element[0].parentNode||e.element[0].parentNode.nodeType===11){return}for(i=0;i<r.length;i++){if(e.options[r[i][0]]){r[i][1].apply(e.element,n)}}}},hasScroll:function(t,n){if(e(t).css("overflow")==="hidden"){return false}var i=n&&n==="left"?"scrollLeft":"scrollTop",r=false;if(t[i]>0){return true}t[i]=1;r=t[i]>0;t[i]=0;return r}})})(jQuery);
},
	"sap/ui/thirdparty/jqueryui/jquery-ui-datepicker.js":function(){
/*!
 * jQuery UI Datepicker 1.10.4
 * http://jqueryui.com
 *
 * Copyright 2014 jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/datepicker/
 *
 * Depends:
 *	jquery.ui.core.js
 */
(function(e,t){e.extend(e.ui,{datepicker:{version:"1.10.4"}});var a="datepicker",i;function s(){this._curInst=null;this._keyEvent=false;this._disabledInputs=[];this._datepickerShowing=false;this._inDialog=false;this._mainDivId="ui-datepicker-div";this._inlineClass="ui-datepicker-inline";this._appendClass="ui-datepicker-append";this._triggerClass="ui-datepicker-trigger";this._dialogClass="ui-datepicker-dialog";this._disableClass="ui-datepicker-disabled";this._unselectableClass="ui-datepicker-unselectable";this._currentClass="ui-datepicker-current-day";this._dayOverClass="ui-datepicker-days-cell-over";this.regional=[];this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:false,showMonthAfterYear:false,yearSuffix:""};this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:false,hideIfNoPrevNext:false,navigationAsDateFormat:false,gotoCurrent:false,changeMonth:false,changeYear:false,yearRange:"c-10:c+10",showOtherMonths:false,selectOtherMonths:false,showWeek:false,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:true,showButtonPanel:false,autoSize:false,disabled:false};e.extend(this._defaults,this.regional[""]);this.dpDiv=r(e("<div id='"+this._mainDivId+"' class='ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all'></div>"))}e.extend(s.prototype,{markerClassName:"hasDatepicker",maxRows:4,_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(e){n(this._defaults,e||{});return this},_attachDatepicker:function(t,a){var i,s,r;i=t.nodeName.toLowerCase();s=i==="div"||i==="span";if(!t.id){this.uuid+=1;t.id="dp"+this.uuid}r=this._newInst(e(t),s);r.settings=e.extend({},a||{});if(i==="input"){this._connectDatepicker(t,r)}else if(s){this._inlineDatepicker(t,r)}},_newInst:function(t,a){var i=t[0].id.replace(/([^A-Za-z0-9_\-])/g,"\\\\$1");return{id:i,input:t,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:a,dpDiv:!a?this.dpDiv:r(e("<div class='"+this._inlineClass+" ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all'></div>"))}},_connectDatepicker:function(t,i){var s=e(t);i.append=e([]);i.trigger=e([]);if(s.hasClass(this.markerClassName)){return}this._attachments(s,i);s.addClass(this.markerClassName).on("keydown",this._doKeyDown).keypress(this._doKeyPress).on("keyup",this._doKeyUp);this._autoSize(i);e.data(t,a,i);if(i.settings.disabled){this._disableDatepicker(t)}},_attachments:function(t,a){var i,s,r,n=this._get(a,"appendText"),l=this._get(a,"isRTL");if(a.append){a.append.remove()}if(n){a.append=e("<span></span>").addClass(this._appendClass).text(n);t[l?"before":"after"](a.append)}t.off("focus",this._showDatepicker);if(a.trigger){a.trigger.remove()}i=this._get(a,"showOn");if(i==="focus"||i==="both"){t.on("focus",this._showDatepicker)}if(i==="button"||i==="both"){s=this._get(a,"buttonText");r=this._get(a,"buttonImage");if(this._get(a,"buttonImageOnly")){a.trigger=e("<img>").addClass(this._triggerClass).attr({src:r,alt:s,title:s})}else{a.trigger=e("<button type='button'></button>").addClass(this._triggerClass);if(r){a.trigger.html(e("<img>").attr({src:r,alt:s,title:s}))}else{a.trigger.text(s)}}t[l?"before":"after"](a.trigger);a.trigger.click(function(){if(e.datepicker._datepickerShowing&&e.datepicker._lastInput===t[0]){e.datepicker._hideDatepicker()}else if(e.datepicker._datepickerShowing&&e.datepicker._lastInput!==t[0]){e.datepicker._hideDatepicker();e.datepicker._showDatepicker(t[0])}else{e.datepicker._showDatepicker(t[0])}return false})}},_autoSize:function(e){if(this._get(e,"autoSize")&&!e.inline){var t,a,i,s,r=new Date(2009,12-1,20),n=this._get(e,"dateFormat");if(n.match(/[DM]/)){t=function(e){a=0;i=0;for(s=0;s<e.length;s++){if(e[s].length>a){a=e[s].length;i=s}}return i};r.setMonth(t(this._get(e,n.match(/MM/)?"monthNames":"monthNamesShort")));r.setDate(t(this._get(e,n.match(/DD/)?"dayNames":"dayNamesShort"))+20-r.getDay())}e.input.attr("size",this._formatDate(e,r).length)}},_inlineDatepicker:function(t,i){var s=e(t);if(s.hasClass(this.markerClassName)){return}s.addClass(this.markerClassName).append(i.dpDiv);e.data(t,a,i);this._setDate(i,this._getDefaultDate(i),true);this._updateDatepicker(i);this._updateAlternate(i);if(i.settings.disabled){this._disableDatepicker(t)}i.dpDiv.css("display","block")},_dialogDatepicker:function(t,i,s,r,l){var d,c,o,u,h,p=this._dialogInst;if(!p){this.uuid+=1;d="dp"+this.uuid;this._dialogInput=e("<input type='text' id='"+d+"'/>").css({position:"absolute",top:"-100px",width:"0px"});this._dialogInput.on("keydown",this._doKeyDown);e("body").append(this._dialogInput);p=this._dialogInst=this._newInst(this._dialogInput,false);p.settings={};e.data(this._dialogInput[0],a,p)}n(p.settings,r||{});i=i&&i.constructor===Date?this._formatDate(p,i):i;this._dialogInput.val(i);this._pos=l?l.length?l:[l.pageX,l.pageY]:null;if(!this._pos){c=document.documentElement.clientWidth;o=document.documentElement.clientHeight;u=document.documentElement.scrollLeft||document.body.scrollLeft;h=document.documentElement.scrollTop||document.body.scrollTop;this._pos=[c/2-100+u,o/2-150+h]}this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px");p.settings.onSelect=s;this._inDialog=true;this.dpDiv.addClass(this._dialogClass);this._showDatepicker(this._dialogInput[0]);if(e.blockUI){e.blockUI(this.dpDiv)}e.data(this._dialogInput[0],a,p);return this},_destroyDatepicker:function(t){var i,s=e(t),r=e.data(t,a);if(!s.hasClass(this.markerClassName)){return}i=t.nodeName.toLowerCase();e.removeData(t,a);if(i==="input"){r.append.remove();r.trigger.remove();s.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)}else if(i==="div"||i==="span"){s.removeClass(this.markerClassName).empty()}},_enableDatepicker:function(t){var i,s,r=e(t),n=e.data(t,a);if(!r.hasClass(this.markerClassName)){return}i=t.nodeName.toLowerCase();if(i==="input"){t.disabled=false;n.trigger.filter("button").each(function(){this.disabled=false}).end().filter("img").css({opacity:"1.0",cursor:""})}else if(i==="div"||i==="span"){s=r.children("."+this._inlineClass);s.children().removeClass("ui-state-disabled");s.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",false)}this._disabledInputs=e.map(this._disabledInputs,function(e){return e===t?null:e})},_disableDatepicker:function(t){var i,s,r=e(t),n=e.data(t,a);if(!r.hasClass(this.markerClassName)){return}i=t.nodeName.toLowerCase();if(i==="input"){t.disabled=true;n.trigger.filter("button").each(function(){this.disabled=true}).end().filter("img").css({opacity:"0.5",cursor:"default"})}else if(i==="div"||i==="span"){s=r.children("."+this._inlineClass);s.children().addClass("ui-state-disabled");s.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",true)}this._disabledInputs=e.map(this._disabledInputs,function(e){return e===t?null:e});this._disabledInputs[this._disabledInputs.length]=t},_isDisabledDatepicker:function(e){if(!e){return false}for(var t=0;t<this._disabledInputs.length;t++){if(this._disabledInputs[t]===e){return true}}return false},_getInst:function(t){try{return e.data(t,a)}catch(e){throw"Missing instance data for this datepicker"}},_optionDatepicker:function(a,i,s){var r,l,d,c,o=this._getInst(a);if(arguments.length===2&&typeof i==="string"){return i==="defaults"?e.extend({},e.datepicker._defaults):o?i==="all"?e.extend({},o.settings):this._get(o,i):null}r=i||{};if(typeof i==="string"){r={};r[i]=s}if(o){if(this._curInst===o){this._hideDatepicker()}l=this._getDateDatepicker(a,true);d=this._getMinMaxDate(o,"min");c=this._getMinMaxDate(o,"max");n(o.settings,r);if(d!==null&&r.dateFormat!==t&&r.minDate===t){o.settings.minDate=this._formatDate(o,d)}if(c!==null&&r.dateFormat!==t&&r.maxDate===t){o.settings.maxDate=this._formatDate(o,c)}if("disabled"in r){if(r.disabled){this._disableDatepicker(a)}else{this._enableDatepicker(a)}}this._attachments(e(a),o);this._autoSize(o);this._setDate(o,l);this._updateAlternate(o);this._updateDatepicker(o)}},_changeDatepicker:function(e,t,a){this._optionDatepicker(e,t,a)},_refreshDatepicker:function(e){var t=this._getInst(e);if(t){this._updateDatepicker(t)}},_setDateDatepicker:function(e,t){var a=this._getInst(e);if(a){this._setDate(a,t);this._updateDatepicker(a);this._updateAlternate(a)}},_getDateDatepicker:function(e,t){var a=this._getInst(e);if(a&&!a.inline){this._setDateFromField(a,t)}return a?this._getDate(a):null},_doKeyDown:function(t){var a,i,s,r=e.datepicker._getInst(t.target),n=true,l=r.dpDiv.is(".ui-datepicker-rtl");r._keyEvent=true;if(e.datepicker._datepickerShowing){switch(t.keyCode){case 9:e.datepicker._hideDatepicker();n=false;break;case 13:s=e("td."+e.datepicker._dayOverClass+":not(."+e.datepicker._currentClass+")",r.dpDiv);if(s[0]){e.datepicker._selectDay(t.target,r.selectedMonth,r.selectedYear,s[0])}a=e.datepicker._get(r,"onSelect");if(a){i=e.datepicker._formatDate(r);a.apply(r.input?r.input[0]:null,[i,r])}else{e.datepicker._hideDatepicker()}return false;case 27:e.datepicker._hideDatepicker();break;case 33:e.datepicker._adjustDate(t.target,t.ctrlKey?-e.datepicker._get(r,"stepBigMonths"):-e.datepicker._get(r,"stepMonths"),"M");break;case 34:e.datepicker._adjustDate(t.target,t.ctrlKey?+e.datepicker._get(r,"stepBigMonths"):+e.datepicker._get(r,"stepMonths"),"M");break;case 35:if(t.ctrlKey||t.metaKey){e.datepicker._clearDate(t.target)}n=t.ctrlKey||t.metaKey;break;case 36:if(t.ctrlKey||t.metaKey){e.datepicker._gotoToday(t.target)}n=t.ctrlKey||t.metaKey;break;case 37:if(t.ctrlKey||t.metaKey){e.datepicker._adjustDate(t.target,l?+1:-1,"D")}n=t.ctrlKey||t.metaKey;if(t.originalEvent.altKey){e.datepicker._adjustDate(t.target,t.ctrlKey?-e.datepicker._get(r,"stepBigMonths"):-e.datepicker._get(r,"stepMonths"),"M")}break;case 38:if(t.ctrlKey||t.metaKey){e.datepicker._adjustDate(t.target,-7,"D")}n=t.ctrlKey||t.metaKey;break;case 39:if(t.ctrlKey||t.metaKey){e.datepicker._adjustDate(t.target,l?-1:+1,"D")}n=t.ctrlKey||t.metaKey;if(t.originalEvent.altKey){e.datepicker._adjustDate(t.target,t.ctrlKey?+e.datepicker._get(r,"stepBigMonths"):+e.datepicker._get(r,"stepMonths"),"M")}break;case 40:if(t.ctrlKey||t.metaKey){e.datepicker._adjustDate(t.target,+7,"D")}n=t.ctrlKey||t.metaKey;break;default:n=false}}else if(t.keyCode===36&&t.ctrlKey){e.datepicker._showDatepicker(this)}else{n=false}if(n){t.preventDefault();t.stopPropagation()}},_doKeyPress:function(t){var a,i,s=e.datepicker._getInst(t.target);if(e.datepicker._get(s,"constrainInput")){a=e.datepicker._possibleChars(e.datepicker._get(s,"dateFormat"));i=String.fromCharCode(t.charCode==null?t.keyCode:t.charCode);return t.ctrlKey||t.metaKey||(i<" "||!a||a.indexOf(i)>-1)}},_doKeyUp:function(t){var a,i=e.datepicker._getInst(t.target);if(i.input.val()!==i.lastVal){try{a=e.datepicker.parseDate(e.datepicker._get(i,"dateFormat"),i.input?i.input.val():null,e.datepicker._getFormatConfig(i));if(a){e.datepicker._setDateFromField(i);e.datepicker._updateAlternate(i);e.datepicker._updateDatepicker(i)}}catch(e){}}return true},_showDatepicker:function(t){t=t.target||t;if(t.nodeName.toLowerCase()!=="input"){t=e("input",t.parentNode)[0]}if(e.datepicker._isDisabledDatepicker(t)||e.datepicker._lastInput===t){return}var a,i,s,r,l,d,c;a=e.datepicker._getInst(t);if(e.datepicker._curInst&&e.datepicker._curInst!==a){e.datepicker._curInst.dpDiv.stop(true,true);if(a&&e.datepicker._datepickerShowing){e.datepicker._hideDatepicker(e.datepicker._curInst.input[0])}}i=e.datepicker._get(a,"beforeShow");s=i?i.apply(t,[t,a]):{};if(s===false){return}n(a.settings,s);a.lastVal=null;e.datepicker._lastInput=t;e.datepicker._setDateFromField(a);if(e.datepicker._inDialog){t.value=""}if(!e.datepicker._pos){e.datepicker._pos=e.datepicker._findPos(t);e.datepicker._pos[1]+=t.offsetHeight}r=false;e(t).parents().each(function(){r|=e(this).css("position")==="fixed";return!r});l={left:e.datepicker._pos[0],top:e.datepicker._pos[1]};e.datepicker._pos=null;a.dpDiv.empty();a.dpDiv.css({position:"absolute",display:"block",top:"-1000px"});e.datepicker._updateDatepicker(a);l=e.datepicker._checkOffset(a,l,r);a.dpDiv.css({position:e.datepicker._inDialog&&e.blockUI?"static":r?"fixed":"absolute",display:"none",left:l.left+"px",top:l.top+"px"});if(!a.inline){d=e.datepicker._get(a,"showAnim");c=e.datepicker._get(a,"duration");a.dpDiv.zIndex(e(t).zIndex()+1);e.datepicker._datepickerShowing=true;if(e.effects&&e.effects.effect[d]){a.dpDiv.show(d,e.datepicker._get(a,"showOptions"),c)}else{a.dpDiv[d||"show"](d?c:null)}if(e.datepicker._shouldFocusInput(a)){a.input.focus()}e.datepicker._curInst=a}},_updateDatepicker:function(t){this.maxRows=4;i=t;t.dpDiv.empty().append(this._generateHTML(t));this._attachHandlers(t);t.dpDiv.find("."+this._dayOverClass+" a").mouseover();var a,s=this._getNumberOfMonths(t),r=s[1],n=17;t.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width("");if(r>1){t.dpDiv.addClass("ui-datepicker-multi-"+r).css("width",n*r+"em")}t.dpDiv[(s[0]!==1||s[1]!==1?"add":"remove")+"Class"]("ui-datepicker-multi");t.dpDiv[(this._get(t,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl");if(t===e.datepicker._curInst&&e.datepicker._datepickerShowing&&e.datepicker._shouldFocusInput(t)){t.input.focus()}if(t.yearshtml){a=t.yearshtml;setTimeout(function(){if(a===t.yearshtml&&t.yearshtml){t.dpDiv.find("select.ui-datepicker-year:first").replaceWith(t.yearshtml)}a=t.yearshtml=null},0)}},_shouldFocusInput:function(e){return e.input&&e.input.is(":visible")&&!e.input.is(":disabled")&&!e.input.is(":focus")},_checkOffset:function(t,a,i){var s=t.dpDiv.outerWidth(),r=t.dpDiv.outerHeight(),n=t.input?t.input.outerWidth():0,l=t.input?t.input.outerHeight():0,d=document.documentElement.clientWidth+(i?0:e(document).scrollLeft()),c=document.documentElement.clientHeight+(i?0:e(document).scrollTop());a.left-=this._get(t,"isRTL")?s-n:0;a.left-=i&&a.left===t.input.offset().left?e(document).scrollLeft():0;a.top-=i&&a.top===t.input.offset().top+l?e(document).scrollTop():0;a.left-=Math.min(a.left,a.left+s>d&&d>s?Math.abs(a.left+s-d):0);a.top-=Math.min(a.top,a.top+r>c&&c>r?Math.abs(r+l):0);return a},_findPos:function(t){var a,i=this._getInst(t),s=this._get(i,"isRTL");while(t&&(t.type==="hidden"||t.nodeType!==1||e.expr.filters.hidden(t))){t=t[s?"previousSibling":"nextSibling"]}a=e(t).offset();return[a.left,a.top]},_hideDatepicker:function(t){var i,s,r,n,l=this._curInst;if(!l||t&&l!==e.data(t,a)){return}if(this._datepickerShowing){i=this._get(l,"showAnim");s=this._get(l,"duration");r=function(){e.datepicker._tidyDialog(l)};if(e.effects&&(e.effects.effect[i]||e.effects[i])){l.dpDiv.hide(i,e.datepicker._get(l,"showOptions"),s,r)}else{l.dpDiv[i==="slideDown"?"slideUp":i==="fadeIn"?"fadeOut":"hide"](i?s:null,r)}if(!i){r()}this._datepickerShowing=false;n=this._get(l,"onClose");if(n){n.apply(l.input?l.input[0]:null,[l.input?l.input.val():"",l])}this._lastInput=null;if(this._inDialog){this._dialogInput.css({position:"absolute",left:"0",top:"-100px"});if(e.blockUI){e.unblockUI();e("body").append(this.dpDiv)}}this._inDialog=false}},_tidyDialog:function(e){e.dpDiv.removeClass(this._dialogClass).off(".ui-datepicker-calendar")},_checkExternalClick:function(t){if(!e.datepicker._curInst){return}var a=e(t.target),i=e.datepicker._getInst(a[0]);if(a[0].id!==e.datepicker._mainDivId&&a.parents("#"+e.datepicker._mainDivId).length===0&&!a.hasClass(e.datepicker.markerClassName)&&!a.closest("."+e.datepicker._triggerClass).length&&e.datepicker._datepickerShowing&&!(e.datepicker._inDialog&&e.blockUI)||a.hasClass(e.datepicker.markerClassName)&&e.datepicker._curInst!==i){e.datepicker._hideDatepicker()}},_adjustDate:function(t,a,i){var s=e(t),r=this._getInst(s[0]);if(this._isDisabledDatepicker(s[0])){return}this._adjustInstDate(r,a+(i==="M"?this._get(r,"showCurrentAtPos"):0),i);this._updateDatepicker(r)},_gotoToday:function(t){var a,i=e(t),s=this._getInst(i[0]);if(this._get(s,"gotoCurrent")&&s.currentDay){s.selectedDay=s.currentDay;s.drawMonth=s.selectedMonth=s.currentMonth;s.drawYear=s.selectedYear=s.currentYear}else{a=new Date;s.selectedDay=a.getDate();s.drawMonth=s.selectedMonth=a.getMonth();s.drawYear=s.selectedYear=a.getFullYear()}this._notifyChange(s);this._adjustDate(i)},_selectMonthYear:function(t,a,i){var s=e(t),r=this._getInst(s[0]);r["selected"+(i==="M"?"Month":"Year")]=r["draw"+(i==="M"?"Month":"Year")]=parseInt(a.options[a.selectedIndex].value,10);this._notifyChange(r);this._adjustDate(s)},_selectDay:function(t,a,i,s){var r,n=e(t);if(e(s).hasClass(this._unselectableClass)||this._isDisabledDatepicker(n[0])){return}r=this._getInst(n[0]);r.selectedDay=r.currentDay=e("a",s).html();r.selectedMonth=r.currentMonth=a;r.selectedYear=r.currentYear=i;this._selectDate(t,this._formatDate(r,r.currentDay,r.currentMonth,r.currentYear))},_clearDate:function(t){var a=e(t);this._selectDate(a,"")},_selectDate:function(t,a){var i,s=e(t),r=this._getInst(s[0]);a=a!=null?a:this._formatDate(r);if(r.input){r.input.val(a)}this._updateAlternate(r);i=this._get(r,"onSelect");if(i){i.apply(r.input?r.input[0]:null,[a,r])}else if(r.input){r.input.trigger("change")}if(r.inline){this._updateDatepicker(r)}else{this._hideDatepicker();this._lastInput=r.input[0];if(typeof r.input[0]!=="object"){r.input.focus()}this._lastInput=null}},_updateAlternate:function(t){var a,i,s,r=this._get(t,"altField");if(r){a=this._get(t,"altFormat")||this._get(t,"dateFormat");i=this._getDate(t);s=this.formatDate(a,i,this._getFormatConfig(t));e(document).find(r).val(s)}},noWeekends:function(e){var t=e.getDay();return[t>0&&t<6,""]},iso8601Week:function(e){var t,a=new Date(e.getTime());a.setDate(a.getDate()+4-(a.getDay()||7));t=a.getTime();a.setMonth(0);a.setDate(1);return Math.floor(Math.round((t-a)/864e5)/7)+1},parseDate:function(t,a,i){if(t==null||a==null){throw"Invalid arguments"}a=typeof a==="object"?a.toString():a+"";if(a===""){return null}var s,r,n,l=0,d=(i?i.shortYearCutoff:null)||this._defaults.shortYearCutoff,c=typeof d!=="string"?d:(new Date).getFullYear()%100+parseInt(d,10),o=(i?i.dayNamesShort:null)||this._defaults.dayNamesShort,u=(i?i.dayNames:null)||this._defaults.dayNames,h=(i?i.monthNamesShort:null)||this._defaults.monthNamesShort,p=(i?i.monthNames:null)||this._defaults.monthNames,f=-1,g=-1,_=-1,k=-1,D=false,m,y=function(e){var a=s+1<t.length&&t.charAt(s+1)===e;if(a){s++}return a},v=function(e){var t=y(e),i=e==="@"?14:e==="!"?20:e==="y"&&t?4:e==="o"?3:2,s=new RegExp("^\\d{1,"+i+"}"),r=a.substring(l).match(s);if(!r){throw"Missing number at position "+l}l+=r[0].length;return parseInt(r[0],10)},M=function(t,i,s){var r=-1,n=e.map(y(t)?s:i,function(e,t){return[[t,e]]}).sort(function(e,t){return-(e[1].length-t[1].length)});e.each(n,function(e,t){var i=t[1];if(a.substr(l,i.length).toLowerCase()===i.toLowerCase()){r=t[0];l+=i.length;return false}});if(r!==-1){return r+1}else{throw"Unknown name at position "+l}},w=function(){if(a.charAt(l)!==t.charAt(s)){throw"Unexpected literal at position "+l}l++};for(s=0;s<t.length;s++){if(D){if(t.charAt(s)==="'"&&!y("'")){D=false}else{w()}}else{switch(t.charAt(s)){case"d":_=v("d");break;case"D":M("D",o,u);break;case"o":k=v("o");break;case"m":g=v("m");break;case"M":g=M("M",h,p);break;case"y":f=v("y");break;case"@":m=new Date(v("@"));f=m.getFullYear();g=m.getMonth()+1;_=m.getDate();break;case"!":m=new Date((v("!")-this._ticksTo1970)/1e4);f=m.getFullYear();g=m.getMonth()+1;_=m.getDate();break;case"'":if(y("'")){w()}else{D=true}break;default:w()}}}if(l<a.length){n=a.substr(l);if(!/^\s+/.test(n)){throw"Extra/unparsed characters found in date: "+n}}if(f===-1){f=(new Date).getFullYear()}else if(f<100){f+=(new Date).getFullYear()-(new Date).getFullYear()%100+(f<=c?0:-100)}if(k>-1){g=1;_=k;do{r=this._getDaysInMonth(f,g-1);if(_<=r){break}g++;_-=r}while(true)}m=this._daylightSavingAdjust(new Date(f,g-1,_));if(m.getFullYear()!==f||m.getMonth()+1!==g||m.getDate()!==_){throw"Invalid date"}return m},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:((1970-1)*365+Math.floor(1970/4)-Math.floor(1970/100)+Math.floor(1970/400))*24*60*60*1e7,formatDate:function(e,t,a){if(!t){return""}var i,s=(a?a.dayNamesShort:null)||this._defaults.dayNamesShort,r=(a?a.dayNames:null)||this._defaults.dayNames,n=(a?a.monthNamesShort:null)||this._defaults.monthNamesShort,l=(a?a.monthNames:null)||this._defaults.monthNames,d=function(t){var a=i+1<e.length&&e.charAt(i+1)===t;if(a){i++}return a},c=function(e,t,a){var i=""+t;if(d(e)){while(i.length<a){i="0"+i}}return i},o=function(e,t,a,i){return d(e)?i[t]:a[t]},u="",h=false;if(t){for(i=0;i<e.length;i++){if(h){if(e.charAt(i)==="'"&&!d("'")){h=false}else{u+=e.charAt(i)}}else{switch(e.charAt(i)){case"d":u+=c("d",t.getDate(),2);break;case"D":u+=o("D",t.getDay(),s,r);break;case"o":u+=c("o",Math.round((new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime()-new Date(t.getFullYear(),0,0).getTime())/864e5),3);break;case"m":u+=c("m",t.getMonth()+1,2);break;case"M":u+=o("M",t.getMonth(),n,l);break;case"y":u+=d("y")?t.getFullYear():(t.getYear()%100<10?"0":"")+t.getYear()%100;break;case"@":u+=t.getTime();break;case"!":u+=t.getTime()*1e4+this._ticksTo1970;break;case"'":if(d("'")){u+="'"}else{h=true}break;default:u+=e.charAt(i)}}}}return u},_possibleChars:function(e){var t,a="",i=false,s=function(a){var i=t+1<e.length&&e.charAt(t+1)===a;if(i){t++}return i};for(t=0;t<e.length;t++){if(i){if(e.charAt(t)==="'"&&!s("'")){i=false}else{a+=e.charAt(t)}}else{switch(e.charAt(t)){case"d":case"m":case"y":case"@":a+="0123456789";break;case"D":case"M":return null;case"'":if(s("'")){a+="'"}else{i=true}break;default:a+=e.charAt(t)}}}return a},_get:function(e,a){return e.settings[a]!==t?e.settings[a]:this._defaults[a]},_setDateFromField:function(e,t){if(e.input.val()===e.lastVal){return}var a=this._get(e,"dateFormat"),i=e.lastVal=e.input?e.input.val():null,s=this._getDefaultDate(e),r=s,n=this._getFormatConfig(e);try{r=this.parseDate(a,i,n)||s}catch(e){i=t?"":i}e.selectedDay=r.getDate();e.drawMonth=e.selectedMonth=r.getMonth();e.drawYear=e.selectedYear=r.getFullYear();e.currentDay=i?r.getDate():0;e.currentMonth=i?r.getMonth():0;e.currentYear=i?r.getFullYear():0;this._adjustInstDate(e)},_getDefaultDate:function(e){return this._restrictMinMax(e,this._determineDate(e,this._get(e,"defaultDate"),new Date))},_determineDate:function(t,a,i){var s=function(e){var t=new Date;t.setDate(t.getDate()+e);return t},r=function(a){try{return e.datepicker.parseDate(e.datepicker._get(t,"dateFormat"),a,e.datepicker._getFormatConfig(t))}catch(e){}var i=(a.toLowerCase().match(/^c/)?e.datepicker._getDate(t):null)||new Date,s=i.getFullYear(),r=i.getMonth(),n=i.getDate(),l=/([+\-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,d=l.exec(a);while(d){switch(d[2]||"d"){case"d":case"D":n+=parseInt(d[1],10);break;case"w":case"W":n+=parseInt(d[1],10)*7;break;case"m":case"M":r+=parseInt(d[1],10);n=Math.min(n,e.datepicker._getDaysInMonth(s,r));break;case"y":case"Y":s+=parseInt(d[1],10);n=Math.min(n,e.datepicker._getDaysInMonth(s,r));break}d=l.exec(a)}return new Date(s,r,n)},n=a==null||a===""?i:typeof a==="string"?r(a):typeof a==="number"?isNaN(a)?i:s(a):new Date(a.getTime());n=n&&n.toString()==="Invalid Date"?i:n;if(n){n.setHours(0);n.setMinutes(0);n.setSeconds(0);n.setMilliseconds(0)}return this._daylightSavingAdjust(n)},_daylightSavingAdjust:function(e){if(!e){return null}e.setHours(e.getHours()>12?e.getHours()+2:0);return e},_setDate:function(e,t,a){var i=!t,s=e.selectedMonth,r=e.selectedYear,n=this._restrictMinMax(e,this._determineDate(e,t,new Date));e.selectedDay=e.currentDay=n.getDate();e.drawMonth=e.selectedMonth=e.currentMonth=n.getMonth();e.drawYear=e.selectedYear=e.currentYear=n.getFullYear();if((s!==e.selectedMonth||r!==e.selectedYear)&&!a){this._notifyChange(e)}this._adjustInstDate(e);if(e.input){e.input.val(i?"":this._formatDate(e))}},_getDate:function(e){var t=!e.currentYear||e.input&&e.input.val()===""?null:this._daylightSavingAdjust(new Date(e.currentYear,e.currentMonth,e.currentDay));return t},_attachHandlers:function(t){var a=this._get(t,"stepMonths"),i="#"+t.id.replace(/\\\\/g,"\\");t.dpDiv.find("[data-handler]").map(function(){var t={prev:function(){e.datepicker._adjustDate(i,-a,"M")},next:function(){e.datepicker._adjustDate(i,+a,"M")},hide:function(){e.datepicker._hideDatepicker()},today:function(){e.datepicker._gotoToday(i)},selectDay:function(){e.datepicker._selectDay(i,+this.getAttribute("data-month"),+this.getAttribute("data-year"),this);return false},selectMonth:function(){e.datepicker._selectMonthYear(i,this,"M");return false},selectYear:function(){e.datepicker._selectMonthYear(i,this,"Y");return false}};e(this).on(this.getAttribute("data-event"),t[this.getAttribute("data-handler")])})},_generateHTML:function(t){var a,i,s,r,n,l,d,c,o,u,h,p,f,g,_,k,D,m,y,v,M,w,b,C,I,x,Y,S,F,N,T,A,K,j,O,L,R,H,W,E=new Date,P=this._daylightSavingAdjust(new Date(E.getFullYear(),E.getMonth(),E.getDate())),z=this._get(t,"isRTL"),U=this._get(t,"showButtonPanel"),B=this._get(t,"hideIfNoPrevNext"),J=this._get(t,"navigationAsDateFormat"),V=this._getNumberOfMonths(t),Q=this._get(t,"showCurrentAtPos"),X=this._get(t,"stepMonths"),Z=V[0]!==1||V[1]!==1,$=this._daylightSavingAdjust(!t.currentDay?new Date(9999,9,9):new Date(t.currentYear,t.currentMonth,t.currentDay)),q=this._getMinMaxDate(t,"min"),G=this._getMinMaxDate(t,"max"),ee=t.drawMonth-Q,te=t.drawYear;if(ee<0){ee+=12;te--}if(G){a=this._daylightSavingAdjust(new Date(G.getFullYear(),G.getMonth()-V[0]*V[1]+1,G.getDate()));a=q&&a<q?q:a;while(this._daylightSavingAdjust(new Date(te,ee,1))>a){ee--;if(ee<0){ee=11;te--}}}t.drawMonth=ee;t.drawYear=te;i=this._get(t,"prevText");i=!J?i:this.formatDate(i,this._daylightSavingAdjust(new Date(te,ee-X,1)),this._getFormatConfig(t));if(this._canAdjustMonth(t,-1,te,ee)){s=e("<a></a>").attr({class:"ui-datepicker-prev ui-corner-all","data-handler":"prev","data-event":"click",title:i}).append(e("<span></span>").addClass("ui-icon ui-icon-circle-triangle-"+(z?"e":"w")).text(i))[0].outerHTML}else if(B){s=""}else{s=e("<a></a>").attr({class:"ui-datepicker-prev ui-corner-all ui-state-disabled",title:i}).append(e("<span></span>").addClass("ui-icon ui-icon-circle-triangle-"+(z?"e":"w")).text(i))[0].outerHTML}r=this._get(t,"nextText");r=!J?r:this.formatDate(r,this._daylightSavingAdjust(new Date(te,ee+X,1)),this._getFormatConfig(t));if(this._canAdjustMonth(t,+1,te,ee)){n=e("<a></a>").attr({class:"ui-datepicker-next ui-corner-all","data-handler":"next","data-event":"click",title:r}).append(e("<span></span>").addClass("ui-icon ui-icon-circle-triangle-"+(z?"w":"e")).text(r))[0].outerHTML}else if(B){n=""}else{n=e("<a></a>").attr({class:"ui-datepicker-next ui-corner-all ui-state-disabled",title:r}).append(e("<span></span>").attr("class","ui-icon ui-icon-circle-triangle-"+(z?"w":"e")).text(r))[0].outerHTML}l=this._get(t,"currentText");d=this._get(t,"gotoCurrent")&&t.currentDay?$:P;l=!J?l:this.formatDate(l,d,this._getFormatConfig(t));c="";if(!t.inline){c=e("<button></button>").attr({type:"button",class:"ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all","data-handler":"hide","data-event":"click"}).text(this._get(t,"closeText"))[0].outerHTML}o="";if(U){o=e("<div class='ui-datepicker-buttonpane ui-widget-content'></div>").append(z?c:"").append(this._isInRange(t,d)?e("<button></button>").attr({type:"button",class:"ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all","data-handler":"today","data-event":"click"}).text(l):"").append(z?"":c)[0].outerHTML}u=parseInt(this._get(t,"firstDay"),10);u=isNaN(u)?0:u;h=this._get(t,"showWeek");p=this._get(t,"dayNames");f=this._get(t,"dayNamesMin");g=this._get(t,"monthNames");_=this._get(t,"monthNamesShort");k=this._get(t,"beforeShowDay");D=this._get(t,"showOtherMonths");m=this._get(t,"selectOtherMonths");y=this._getDefaultDate(t);v="";M;for(w=0;w<V[0];w++){b="";this.maxRows=4;for(C=0;C<V[1];C++){I=this._daylightSavingAdjust(new Date(te,ee,t.selectedDay));x=" ui-corner-all";Y="";if(Z){Y+="<div class='ui-datepicker-group";if(V[1]>1){switch(C){case 0:Y+=" ui-datepicker-group-first";x=" ui-corner-"+(z?"right":"left");break;case V[1]-1:Y+=" ui-datepicker-group-last";x=" ui-corner-"+(z?"left":"right");break;default:Y+=" ui-datepicker-group-middle";x="";break}}Y+="'>"}Y+="<div class='ui-datepicker-header ui-widget-header ui-helper-clearfix"+x+"'>"+(/all|left/.test(x)&&w===0?z?n:s:"")+(/all|right/.test(x)&&w===0?z?s:n:"")+this._generateMonthYearHeader(t,ee,te,q,G,w>0||C>0,g,_)+"</div><table class='ui-datepicker-calendar'><thead>"+"<tr>";S=h?"<th class='ui-datepicker-week-col'>"+this._get(t,"weekHeader")+"</th>":"";for(M=0;M<7;M++){F=(M+u)%7;S+="<th"+((M+u+6)%7>=5?" class='ui-datepicker-week-end'":"")+">"+"<span title='"+p[F]+"'>"+f[F]+"</span></th>"}Y+=S+"</tr></thead><tbody>";N=this._getDaysInMonth(te,ee);if(te===t.selectedYear&&ee===t.selectedMonth){t.selectedDay=Math.min(t.selectedDay,N)}T=(this._getFirstDayOfMonth(te,ee)-u+7)%7;A=Math.ceil((T+N)/7);K=Z?this.maxRows>A?this.maxRows:A:A;this.maxRows=K;j=this._daylightSavingAdjust(new Date(te,ee,1-T));for(O=0;O<K;O++){Y+="<tr>";L=!h?"":"<td class='ui-datepicker-week-col'>"+this._get(t,"calculateWeek")(j)+"</td>";for(M=0;M<7;M++){R=k?k.apply(t.input?t.input[0]:null,[j]):[true,""];H=j.getMonth()!==ee;W=H&&!m||!R[0]||q&&j<q||G&&j>G;L+="<td class='"+((M+u+6)%7>=5?" ui-datepicker-week-end":"")+(H?" ui-datepicker-other-month":"")+(j.getTime()===I.getTime()&&ee===t.selectedMonth&&t._keyEvent||y.getTime()===j.getTime()&&y.getTime()===I.getTime()?" "+this._dayOverClass:"")+(W?" "+this._unselectableClass+" ui-state-disabled":"")+(H&&!D?"":" "+R[1]+(j.getTime()===$.getTime()?" "+this._currentClass:"")+(j.getTime()===P.getTime()?" ui-datepicker-today":""))+"'"+((!H||D)&&R[2]?" title='"+R[2].replace(/'/g,"&#39;")+"'":"")+(W?"":" data-handler='selectDay' data-event='click' data-month='"+j.getMonth()+"' data-year='"+j.getFullYear()+"'")+">"+(H&&!D?"&#xa0;":W?"<span class='ui-state-default'>"+j.getDate()+"</span>":"<a class='ui-state-default"+(j.getTime()===P.getTime()?" ui-state-highlight":"")+(j.getTime()===$.getTime()?" ui-state-active":"")+(H?" ui-priority-secondary":"")+"' href='#'>"+j.getDate()+"</a>")+"</td>";j.setDate(j.getDate()+1);j=this._daylightSavingAdjust(j)}Y+=L+"</tr>"}ee++;if(ee>11){ee=0;te++}Y+="</tbody></table>"+(Z?"</div>"+(V[0]>0&&C===V[1]-1?"<div class='ui-datepicker-row-break'></div>":""):"");b+=Y}v+=b}v+=o;t._keyEvent=false;return v},_generateMonthYearHeader:function(e,t,a,i,s,r,n,l){var d,c,o,u,h,p,f,g,_=this._get(e,"changeMonth"),k=this._get(e,"changeYear"),D=this._get(e,"showMonthAfterYear"),m="<div class='ui-datepicker-title'>",y="";if(r||!_){y+="<span class='ui-datepicker-month'>"+n[t]+"</span>"}else{d=i&&i.getFullYear()===a;c=s&&s.getFullYear()===a;y+="<select class='ui-datepicker-month' data-handler='selectMonth' data-event='change'>";for(o=0;o<12;o++){if((!d||o>=i.getMonth())&&(!c||o<=s.getMonth())){y+="<option value='"+o+"'"+(o===t?" selected='selected'":"")+">"+l[o]+"</option>"}}y+="</select>"}if(!D){m+=y+(r||!(_&&k)?"&#xa0;":"")}if(!e.yearshtml){e.yearshtml="";if(r||!k){m+="<span class='ui-datepicker-year'>"+a+"</span>"}else{u=this._get(e,"yearRange").split(":");h=(new Date).getFullYear();p=function(e){var t=e.match(/c[+\-].*/)?a+parseInt(e.substring(1),10):e.match(/[+\-].*/)?h+parseInt(e,10):parseInt(e,10);return isNaN(t)?h:t};f=p(u[0]);g=Math.max(f,p(u[1]||""));f=i?Math.max(f,i.getFullYear()):f;g=s?Math.min(g,s.getFullYear()):g;e.yearshtml+="<select class='ui-datepicker-year' data-handler='selectYear' data-event='change'>";for(;f<=g;f++){e.yearshtml+="<option value='"+f+"'"+(f===a?" selected='selected'":"")+">"+f+"</option>"}e.yearshtml+="</select>";m+=e.yearshtml;e.yearshtml=null}}m+=this._get(e,"yearSuffix");if(D){m+=(r||!(_&&k)?"&#xa0;":"")+y}m+="</div>";return m},_adjustInstDate:function(e,t,a){var i=e.drawYear+(a==="Y"?t:0),s=e.drawMonth+(a==="M"?t:0),r=Math.min(e.selectedDay,this._getDaysInMonth(i,s))+(a==="D"?t:0),n=this._restrictMinMax(e,this._daylightSavingAdjust(new Date(i,s,r)));e.selectedDay=n.getDate();e.drawMonth=e.selectedMonth=n.getMonth();e.drawYear=e.selectedYear=n.getFullYear();if(a==="M"||a==="Y"){this._notifyChange(e)}},_restrictMinMax:function(e,t){var a=this._getMinMaxDate(e,"min"),i=this._getMinMaxDate(e,"max"),s=a&&t<a?a:t;return i&&s>i?i:s},_notifyChange:function(e){var t=this._get(e,"onChangeMonthYear");if(t){t.apply(e.input?e.input[0]:null,[e.selectedYear,e.selectedMonth+1,e])}},_getNumberOfMonths:function(e){var t=this._get(e,"numberOfMonths");return t==null?[1,1]:typeof t==="number"?[1,t]:t},_getMinMaxDate:function(e,t){return this._determineDate(e,this._get(e,t+"Date"),null)},_getDaysInMonth:function(e,t){return 32-this._daylightSavingAdjust(new Date(e,t,32)).getDate()},_getFirstDayOfMonth:function(e,t){return new Date(e,t,1).getDay()},_canAdjustMonth:function(e,t,a,i){var s=this._getNumberOfMonths(e),r=this._daylightSavingAdjust(new Date(a,i+(t<0?t:s[0]*s[1]),1));if(t<0){r.setDate(this._getDaysInMonth(r.getFullYear(),r.getMonth()))}return this._isInRange(e,r)},_isInRange:function(e,t){var a,i,s=this._getMinMaxDate(e,"min"),r=this._getMinMaxDate(e,"max"),n=null,l=null,d=this._get(e,"yearRange");if(d){a=d.split(":");i=(new Date).getFullYear();n=parseInt(a[0],10);l=parseInt(a[1],10);if(a[0].match(/[+\-].*/)){n+=i}if(a[1].match(/[+\-].*/)){l+=i}}return(!s||t.getTime()>=s.getTime())&&(!r||t.getTime()<=r.getTime())&&(!n||t.getFullYear()>=n)&&(!l||t.getFullYear()<=l)},_getFormatConfig:function(e){var t=this._get(e,"shortYearCutoff");t=typeof t!=="string"?t:(new Date).getFullYear()%100+parseInt(t,10);return{shortYearCutoff:t,dayNamesShort:this._get(e,"dayNamesShort"),dayNames:this._get(e,"dayNames"),monthNamesShort:this._get(e,"monthNamesShort"),monthNames:this._get(e,"monthNames")}},_formatDate:function(e,t,a,i){if(!t){e.currentDay=e.selectedDay;e.currentMonth=e.selectedMonth;e.currentYear=e.selectedYear}var s=t?typeof t==="object"?t:this._daylightSavingAdjust(new Date(i,a,t)):this._daylightSavingAdjust(new Date(e.currentYear,e.currentMonth,e.currentDay));return this.formatDate(this._get(e,"dateFormat"),s,this._getFormatConfig(e))}});function r(t){var a="button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a";return t.delegate(a,"mouseout",function(){e(this).removeClass("ui-state-hover");if(this.className.indexOf("ui-datepicker-prev")!==-1){e(this).removeClass("ui-datepicker-prev-hover")}if(this.className.indexOf("ui-datepicker-next")!==-1){e(this).removeClass("ui-datepicker-next-hover")}}).delegate(a,"mouseover",function(){if(!e.datepicker._isDisabledDatepicker(i.inline?t.parent()[0]:i.input[0])){e(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover");e(this).addClass("ui-state-hover");if(this.className.indexOf("ui-datepicker-prev")!==-1){e(this).addClass("ui-datepicker-prev-hover")}if(this.className.indexOf("ui-datepicker-next")!==-1){e(this).addClass("ui-datepicker-next-hover")}}})}function n(t,a){e.extend(t,a);for(var i in a){if(a[i]==null){t[i]=a[i]}}return t}e.fn.datepicker=function(t){if(!this.length){return this}if(!e.datepicker.initialized){e(document).on("mousedown",e.datepicker._checkExternalClick);e.datepicker.initialized=true}if(e("#"+e.datepicker._mainDivId).length===0){e("body").append(e.datepicker.dpDiv)}var a=Array.prototype.slice.call(arguments,1);if(typeof t==="string"&&(t==="isDisabled"||t==="getDate"||t==="widget")){return e.datepicker["_"+t+"Datepicker"].apply(e.datepicker,[this[0]].concat(a))}if(t==="option"&&arguments.length===2&&typeof arguments[1]==="string"){return e.datepicker["_"+t+"Datepicker"].apply(e.datepicker,[this[0]].concat(a))}return this.each(function(){typeof t==="string"?e.datepicker["_"+t+"Datepicker"].apply(e.datepicker,[this].concat(a)):e.datepicker._attachDatepicker(this,t)})};e.datepicker=new s;e.datepicker.initialized=false;e.datepicker.uuid=(new Date).getTime();e.datepicker.version="1.10.4"})(jQuery);
},
	"sap/ui/thirdparty/signals.js":function(){
/** @license
 * JS Signals <http://millermedeiros.github.com/js-signals/>
 * Released under the MIT license
 * Author: Miller Medeiros
 * Version: 1.0.0 - Build: 268 (2012/11/29 05:48 PM)
 */
(function(i){function t(i,t,e,n,s){this._listener=t;this._isOnce=e;this.context=n;this._signal=i;this._priority=s||0}t.prototype={active:true,params:null,execute:function(i){var t,e;if(this.active&&!!this._listener){e=this.params?this.params.concat(i):i;t=this._listener.apply(this.context,e);if(this._isOnce){this.detach()}}return t},detach:function(){return this.isBound()?this._signal.remove(this._listener,this.context):null},isBound:function(){return!!this._signal&&!!this._listener},isOnce:function(){return this._isOnce},getListener:function(){return this._listener},getSignal:function(){return this._signal},_destroy:function(){delete this._signal;delete this._listener;delete this.context},toString:function(){return"[SignalBinding isOnce:"+this._isOnce+", isBound:"+this.isBound()+", active:"+this.active+"]"}};function e(i,t){if(typeof i!=="function"){throw new Error("listener is a required param of {fn}() and should be a Function.".replace("{fn}",t))}}function n(){this._bindings=[];this._prevParams=null;var i=this;this.dispatch=function(){n.prototype.dispatch.apply(i,arguments)}}n.prototype={VERSION:"1.0.0",memorize:false,_shouldPropagate:true,active:true,_registerListener:function(i,e,n,s){var r=this._indexOfListener(i,n),h;if(r!==-1){h=this._bindings[r];if(h.isOnce()!==e){throw new Error("You cannot add"+(e?"":"Once")+"() then add"+(!e?"":"Once")+"() the same listener without removing the relationship first.")}}else{h=new t(this,i,e,n,s);this._addBinding(h)}if(this.memorize&&this._prevParams){h.execute(this._prevParams)}return h},_addBinding:function(i){var t=this._bindings.length;do{--t}while(this._bindings[t]&&i._priority<=this._bindings[t]._priority);this._bindings.splice(t+1,0,i)},_indexOfListener:function(i,t){var e=this._bindings.length,n;while(e--){n=this._bindings[e];if(n._listener===i&&n.context===t){return e}}return-1},has:function(i,t){return this._indexOfListener(i,t)!==-1},add:function(i,t,n){e(i,"add");return this._registerListener(i,false,t,n)},addOnce:function(i,t,n){e(i,"addOnce");return this._registerListener(i,true,t,n)},remove:function(i,t){e(i,"remove");var n=this._indexOfListener(i,t);if(n!==-1){this._bindings[n]._destroy();this._bindings.splice(n,1)}return i},removeAll:function(){var i=this._bindings.length;while(i--){this._bindings[i]._destroy()}this._bindings.length=0},getNumListeners:function(){return this._bindings.length},halt:function(){this._shouldPropagate=false},dispatch:function(i){if(!this.active){return}var t=Array.prototype.slice.call(arguments),e=this._bindings.length,n;if(this.memorize){this._prevParams=t}if(!e){return}n=this._bindings.slice();this._shouldPropagate=true;do{e--}while(n[e]&&this._shouldPropagate&&n[e].execute(t)!==false)},forget:function(){this._prevParams=null},dispose:function(){this.removeAll();delete this._bindings;delete this._prevParams},toString:function(){return"[Signal active:"+this.active+" numListeners:"+this.getNumListeners()+"]"}};var s=n;s.Signal=n;if(typeof define==="function"&&define.amd){define(function(){return s})}else{i["signals"]=s}})(this);
}
},"sap/ui/core/library-preload");
//# sourceMappingURL=library-preload.js.map
