text: /*!
   * UI development toolkit for HTML5 (OpenUI5)
   * (c) Copyright 2009-2017 SAP SE or an SAP affiliate company.
   * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
   */
  window.sapUiSupportReport=window.sapUiSupportReport||{};window.sapUiSupportReport.collapseExpand=(function(){'use strict';function c(e){var t=this.getAttribute('data-expandableElement');var b=document.getElementById(t);var d=b.classList.contains('collapsed');if(d){b.classList.remove('collapsed');b.classList.add('expanded');this.classList.remove('collapsed-content');this.classList.add('expanded-content');}else{b.classList.remove('expanded');b.classList.add('collapsed');this.classList.remove('expanded-content');this.classList.add('collapsed-content');}}function a(){try{var e=document.getElementsByClassName('expandable-control');if(!e){return;}for(var i=0;i<e.length;i++){e[i].addEventListener('click',c);var b=e[i].getAttribute('data-expandableElement');var d=document.getElementById(b);if(e[i].classList.contains('collapsed-content')){d.classList.add('collapsed');}else{d.classList.add('expanded');}e[i].setAttribute('style','cursor: pointer;');}}catch(f){console.log('There was a problem initializing collapse/expand functionality.');}}return{init:a};}());window.sapUiSupportReport=window.sapUiSupportReport||{};window.sapUiSupportReport.filter=(function(){'use strict';function u(){var g=document.querySelectorAll('[data-groupName]');for(var i=0;i<g.length;i++){var c=g[i];var d=c.getAttribute('data-expandableElement');var e=c.getAttribute('data-groupName');var h=c.getAttribute('data-groupNumber');var j=document.querySelectorAll('#'+d+' > tr');var n=0;var l=0;for(var k=0;k<j.length;k++){var m=j[k];var o=m.querySelectorAll('tr.filterable:not(.filtered)');var p=o.length;if(p===0){m.classList.add('filtered');}else{l++;n+=p;m.querySelector('span.rule-issue-number').innerText='('+p+' issues)';}}if(l===0){c.classList.add('filtered');}else{c.classList.remove('filtered');c.querySelector('span').innerText=' '+h+'. '+e+' ('+l+' rules, '+n+' issues)';}}}function s(c){if(c.classList.contains('filter-active')){return;}var d=document.getElementsByClassName('filter-active');for(var k=0;k<d.length;k++){d[k].classList.remove('filter-active');}c.classList.add('filter-active');}function r(){var c=document.querySelectorAll('.filtered');for(var i=0;i<c.length;i++){c[i].classList.remove('filtered');}}function f(c){r();if(c==='Total'){return;}var e=document.querySelectorAll('.filterable:not([data-severity="'+c+'"])');for(var i=0;i<e.length;i++){e[i].classList.add('filtered');}}function a(e){s(this);var c=this.getAttribute('data-severity');f(c);u();}function b(){try{var c=document.getElementsByClassName('filter');if(!c){return;}for(var i=0;i<c.length;i++){if(c[i].classList.contains('filter-initialized')){continue;}c[i].addEventListener('click',a);c[i].classList.add('filter-initialized');}}catch(e){console.log('There was a problem initializing filters.');}}return{init:b};}());jQuery.sap.declare('sap.ui.support.library-all');jQuery.sap.declare('sap.ui.support.supportRules.report.resources.collapseExpand');jQuery.sap.declare('sap.ui.support.supportRules.report.resources.filter');if(!jQuery.sap.isDeclared('sap.ui.core.CoreHelper.support')){jQuery.sap.declare('sap.ui.core.CoreHelper.support');jQuery.sap.require('jquery.sap.global');sap.ui.define("sap/ui/core/CoreHelper.support",["jquery.sap.global"],function(q){"use strict";var C={nodeHasUI5ParentControl:function(n,s){var a=["sap.ui.core.HTML"],p=q(n).control()[0];if(!p){return false;}var b=p.getMetadata().getName(),i=a.indexOf(b)===-1,c=s.getElements().indexOf(p)>-1;return i&&c;},getExternalStyleSheets:function(){return Array.from(document.styleSheets).filter(function(s){var t=sap.ui.getCore().getConfiguration().getTheme(),a="/themes/"+t+"/library.css",h=!s.href||!s.href.endsWith(a),b=!!s.rules;return h&&b;});},getStyleSheetName:function(s){return s.href||"Inline";},getStyleSource:function(s){var a;if(s.href){a=s.href.substr(s.href.lastIndexOf("/"),s.href.length-1);}else{a=" <style> tag ";}return a;}};return C;},true);};if(!jQuery.sap.isDeclared('sap.ui.support.library')){jQuery.sap.declare('sap.ui.support.library');jQuery.sap.require('sap.ui.core.library');sap.ui.define("sap/ui/support/library",["sap/ui/core/library"],function(l){"use strict";sap.ui.getCore().initLibrary({name:"sap.ui.support",dependencies:["sap.ui.core","sap.ui.fl","sap.m","sap.ui.layout"],types:["sap.ui.support.Severity"],interfaces:[],controls:[],elements:[],noLibraryCSS:false,version:"1.50.7"});sap.ui.support.Severity={Medium:"Medium",High:"High",Low:"Low"};sap.ui.support.Audiences={Control:"Control",Internal:"Internal",Application:"Application"};sap.ui.support.Categories={Accessibility:"Accessibility",Performance:"Performance",Memory:"Memory",Bindings:"Bindings",Consistency:"Consistency",Functionality:"Functionality",Usability:"Usability",DataModel:"DataModel",Usage:"Usage",Other:"Other"};return sap.ui.support;});};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.Analyzer')){jQuery.sap.declare('sap.ui.support.supportRules.Analyzer');jQuery.sap.require('jquery.sap.global');jQuery.sap.require('sap.ui.base.Object');sap.ui.define("sap/ui/support/supportRules/Analyzer",["jquery.sap.global","sap/ui/base/Object"],function(q,B){"use strict";var A=function(){this.reset();};A.prototype.getProgress=function(){return this._iTotalProgress;};A.prototype.addTask=function(t,T,o){var a={name:t,handler:T,objects:q.extend(true,{arr:o},{}).arr,progress:0};this._aTasks.push(a);this._iTotalSteps=this._iTotalSteps+a.objects.length;};A.prototype.reset=function(){this._iTotalProgress=0;this._iTotalCompletedSteps=0;this._iTotalSteps=0;this._aTasks=[];this._oCurrent={};this._bRunning=false;this._iStartTS=0;this.startedAt=null;this.finishedAt=null;this.elapsedTime=null;};A.prototype.running=function(){return this._bRunning;};A.prototype.start=function(r){var t=this;t.resolve=r;t.startedAt=new Date();var p=new Promise(function(a,b){t._iStartTS=performance.now();t._start(undefined,a);});return p;};A.prototype._start=function(c,r){if(this._bRunning&&!c){return;}if(this._oCurrent.task){if(c){this._next(r);}return;}for(var i=0;i<this._aTasks.length;i++){if(this._aTasks[i].progress<100){this._oCurrent={task:this._aTasks[i],index:-1};this._bRunning=true;q.sap.delayedCall(1,this,"_next",[r]);break;}else{this._bRunning=false;}}};A.prototype._next=function(r){if(!this._bRunning){return;}var c=this._oCurrent;if(c.task){c.index++;if(c.task.objects[c.index]){this._iTotalCompletedSteps++;this._iTotalProgress=Math.min(Math.ceil((this._iTotalCompletedSteps/this._iTotalSteps)*100),100);c.task.handler(c.task.objects[c.index]);c.task.progress=Math.min(Math.ceil((c.index/c.task.objects.length)*100),100);}else{c.task.progress=100;this._iTotalCompletedSteps=this._iTotalCompletedSteps+(c.task.objects.length-c.index);this._iTotalProgress=Math.min(Math.ceil((this._iTotalCompletedSteps/this._iTotalSteps)*100),100);this._oCurrent={};this.finishedAt=new Date();this.elapsedTime=this.finishedAt.getTime()-this.startedAt.getTime();this._bRunning=false;r();}if(performance.now()-this._iStartTS>100){q.sap.delayedCall(5,this,"_start",[true,r]);this._iStartTS=performance.now();}else{q.sap.delayedCall(0,this,"_start",[true,r]);}}};A.prototype.getElapsedTimeString=function(){if(!this.elapsedTime){return;}var d=new Date(null);d.setHours(0,0,0,0);d.setMilliseconds(this.elapsedTime);var b=[(d.getHours()<10?"0":"")+d.getHours(),(d.getMinutes()<10?"0":"")+d.getMinutes(),(d.getSeconds()<10?"0":"")+d.getSeconds(),d.getMilliseconds()];return b.join(":");};return A;},false);};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.Constants')){jQuery.sap.declare('sap.ui.support.supportRules.Constants');sap.ui.define("sap/ui/support/supportRules/Constants",[],function(){"use strict";return{TEMP_RULESETS_NAME:"temporary",SUPPORT_ASSISTANT_NAME:"Support Assistant",LOCAL_STORAGE_TEMP_RULES_KEY:"support-assistant-temprules",LOCAL_STORAGE_SELECTED_RULES_KEY:"support-assistant-selected-rules",LOCAL_STORAGE_SELECTED_CONTEXT_KEY:"support-assistant-settings-selected-context",LOCAL_STORAGE_SELECTED_CONTEXT_COMPONENT_KEY:"support-assistant-settings-selected-context-components",COOKIE_NAME:"persistence-cookie"};},true);};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.CoreFacade')){jQuery.sap.declare('sap.ui.support.supportRules.CoreFacade');sap.ui.define("sap/ui/support/supportRules/CoreFacade",[],function(){"use strict";var c=null;function C(o){c=o;return{getMetadata:function(){return c.getMetadata();},getUIAreas:function(){return c.mUIAreas;},getComponents:function(){return c.mObjects.component;},getModels:function(){return c.oModels;}};}return C;},true);};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.ExecutionScope')){jQuery.sap.declare('sap.ui.support.supportRules.ExecutionScope');jQuery.sap.require('jquery.sap.global');sap.ui.define("sap/ui/support/supportRules/ExecutionScope",["jquery.sap.global"],function(q){"use strict";var c=null,_=null,e=[];var g={setScope:function(){for(var i in c.mElements){e.push(c.mElements[i]);}}};var s={setScope:function(){var p=sap.ui.getCore().byId(_.parentId);e=p.findAggregatedObjects(true);}};var a={setScope:function(){var d={};_.components.forEach(function(f){var h=c.mObjects.component[f],j=h.findAggregatedObjects(true);j.forEach(function(k){d[k.getId()]=k;});});for(var i in d){if(d.hasOwnProperty(i)){e.push(d[i]);}}}};var b={global:g,subtree:s,components:a};function E(d,f){c=d;e=[];_=f;b[_.type].setScope();return{getElements:function(){return e;},getElementsByClassName:function(h){if(typeof h==="string"){return e.filter(function(i){return i.getMetadata().getName()===h;});}if(typeof h==="function"){return e.filter(function(i){return i instanceof h;});}},getLoggedObjects:function(t){var l=q.sap.log.getLog(),h=[];l.forEach(function(i){if(!i.supportInfo){return;}var j=e.map(function(o){return o.getId();});var k=!!i.supportInfo.elementId,m=i.supportInfo.type===t||t===undefined,n=!k||(q.inArray(i.supportInfo.elementId,j)>-1);if(typeof t==="function"&&t(i)&&n){h.push(i);return;}if(m&&n){h.push(i);}});return h;},_getType:function(){return _.type;},_getContext:function(){return _;}};}E.possibleScopes=Object.getOwnPropertyNames(b);return E;},true);};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.IssueManager')){jQuery.sap.declare('sap.ui.support.supportRules.IssueManager');jQuery.sap.require('jquery.sap.global');jQuery.sap.require('sap.ui.base.Object');sap.ui.define("sap/ui/support/supportRules/IssueManager",["jquery.sap.global","sap/ui/base/Object"],function(q,B){"use strict";var _=[];var a=[];var b=function(i){var e=sap.ui.getCore().byId(i.context.id),d="";if(i.context.id==="WEBPAGE"){d="sap.ui.core";}else if(e){d=e.getMetadata().getName();}return{severity:i.severity,name:i.rule.title,description:i.rule.description,resolution:i.rule.resolution,resolutionUrls:i.rule.resolutionurls,audiences:i.rule.audiences,categories:i.rule.categories,details:i.details,ruleLibName:i.rule.libName,ruleId:i.rule.id,context:{className:d,id:i.context.id}};};var I={addIssue:function(i){_.push(i);},walkIssues:function(C){_.forEach(C);},clearIssues:function(){_=[];},saveHistory:function(){a.push({issues:_.slice()});},getHistory:function(){return a.slice();},getConvertedHistory:function(){var t=this,i=t.getHistory(),d=[],e=null;i.forEach(function(r){e=t.groupIssues(t.convertToViewModel(r.issues));d.push({issues:e});});return d;},getIssuesModel:function(){var v=[];this.walkIssues(function(i){v.push(b(i));});return v;},getRulesViewModel:function(r,s,i){var d={},e=0,g={},l={},f={},h=q.extend(true,{},r),j=q.extend(true,{},i);for(g in h){d[g]=q.extend(true,{},h[g].ruleset._mRules);l=d[g];Object.defineProperty(l,'selected',{enumerable:false,configurable:true,writable:true,value:false});Object.defineProperty(l,'issueCount',{enumerable:false,configurable:true,writable:true,value:0});for(f in h[g].ruleset._mRules){l[f]=q.extend(true,[],l[f]);Object.defineProperty(l[f],'selected',{enumerable:false,configurable:true,writable:true,value:false});Object.defineProperty(l[f],'issueCount',{enumerable:false,configurable:true,writable:true,value:0});if(s[f]){l[f].selected=true;l.selected=true;}if(j[g]&&j[g][f]){l[f].push.apply(l[f],j[g][f]);e=j[g][f].length;l[f].issueCount=e;l.issueCount+=e;}}}return d;},getTreeTableViewModel:function(r){var i=0,d=0,t={},e;e=this.getRulesViewModel(r,[],[]);for(var l in e){t[i]={name:l,type:"lib",rules:[]};for(var f in e[l]){t[i][d]={name:e[l][f].title,description:e[l][f].description,id:e[l][f].id,audiences:e[l][f].audiences,categories:e[l][f].categories,minversion:e[l][f].minversion,resolution:e[l][f].resolution,title:e[l][f].title,libName:l};d++;}i++;}return t;},getIssuesViewModel:function(i){var t={},d=0,e=0,f=0;for(var l in i){t[d]={name:l,showAudiences:false,showCategories:false,type:"lib"};for(var r in i[l]){t[d][e]={name:i[l][r][0].name+" ("+i[l][r].length+" issues)",showAudiences:true,showCategories:true,categories:i[l][r][0].categories.join(", "),audiences:i[l][r][0].audiences.join(", "),issueCount:i[l][r].length,description:i[l][r][0].description,resolution:i[l][r][0].resolution,type:"rule",ruleLibName:i[l][r][0].ruleLibName,ruleId:i[l][r][0].ruleId,selected:i[l][r][0].selected,details:i[l][r][0].details,severity:i[l][r][0].severity};f+=i[l][r].length;e++;}t[d].name+=" ("+f+" issues)";t[d].issueCount=f;f=0;e=0;d++;}return t;},clearHistory:function(){a=[];},convertToViewModel:function(o){var v=[];for(var i=0;i<o.length;i++){v.push(b(o[i]));}return v;},groupIssues:function(o){var g={},d={};for(var i=0;i<o.length;i++){d=o[i];if(!g[d.ruleLibName]){g[d.ruleLibName]={};}if(!g[d.ruleLibName][d.ruleId]){g[d.ruleLibName][d.ruleId]=[];}g[d.ruleLibName][d.ruleId].push(d);}return g;},createIssueManagerFacade:function(r){return new c(r);}};var c=function(r){this.oRule=r;};c.prototype.addIssue=function(i){i.rule=this.oRule;if(!sap.ui.support.Severity[i.severity]){throw"The issue from rule "+this.oRule.title+" does not have proper severity defined. Allowed values can be found"+"in sap.ui.support.Severity";}if(!i.context||!i.context.id){throw"The issue from rule '"+this.oRule.title+"' should provide a context id.";}if(!i.details){throw"The issue from rule '"+this.oRule.title+"' should provide details for the generated issue.";}I.addIssue(i);};return I;},true);};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.RuleSerializer')){jQuery.sap.declare('sap.ui.support.supportRules.RuleSerializer');sap.ui.define("sap/ui/support/supportRules/RuleSerializer",[],function(){"use strict";return{serialize:function serializeRule(r){var a=function(k,v){if(typeof v==="function"){return v.toString();}else{return v;}};var b=JSON.stringify(r,a);return b;},deserialize:function(serializedRule,stringifyCheck){var rule;if(typeof serializedRule==='string'){rule=JSON.parse(serializedRule);}else{rule=serializedRule;}if(!stringifyCheck&&rule.check!==undefined){eval("rule.check = "+rule.check);}return rule;}};},true);};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.Storage')){jQuery.sap.declare('sap.ui.support.supportRules.Storage');sap.ui.define("sap/ui/support/supportRules/Storage",["sap/ui/support/supportRules/RuleSerializer","sap/ui/support/supportRules/Constants"],function(R,a){"use strict";function e(D){return window.btoa(unescape(encodeURIComponent(D)));}function d(D){return decodeURIComponent(escape(window.atob(D)));}return{getRules:function(){var r=localStorage.getItem(a.LOCAL_STORAGE_TEMP_RULES_KEY);if(!r){return null;}var t=JSON.parse(d(r));t=t.map(function(b){return R.deserialize(b);});return t;},setRules:function(r){var s=e(JSON.stringify(r));localStorage.setItem(a.LOCAL_STORAGE_TEMP_RULES_KEY,s);},getSelectedRules:function(){var r=localStorage.getItem(a.LOCAL_STORAGE_SELECTED_RULES_KEY);if(!r){return null;}return JSON.parse(r);},setSelectedRules:function(s){localStorage.setItem(a.LOCAL_STORAGE_SELECTED_RULES_KEY,JSON.stringify(s));},setSelectedContext:function(s){localStorage.setItem(a.LOCAL_STORAGE_SELECTED_CONTEXT_KEY,JSON.stringify(s));},getSelectedContext:function(){return JSON.parse(localStorage.getItem(a.LOCAL_STORAGE_SELECTED_CONTEXT_KEY));},setSelectedScopeComponents:function(c){localStorage.setItem(a.LOCAL_STORAGE_SELECTED_CONTEXT_COMPONENT_KEY,JSON.stringify(c));},getSelectedScopeComponents:function(){var c=localStorage.getItem(a.LOCAL_STORAGE_SELECTED_CONTEXT_COMPONENT_KEY);return JSON.parse(c);},removeSelectedRules:function(s){this.setRules(s);},removeAllData:function(){localStorage.removeItem(a.LOCAL_STORAGE_TEMP_RULES_KEY);localStorage.removeItem(a.LOCAL_STORAGE_SELECTED_CONTEXT_KEY);localStorage.removeItem(a.LOCAL_STORAGE_SELECTED_CONTEXT_COMPONENT_KEY);},createPersistenceCookie:function(c,C){document.cookie=c+"="+C;},readPersistenceCookie:function(C){var n=C+"=",b=decodeURIComponent(document.cookie),f=b.split(';'),o="";for(var i=0;i<f.length;i++){var c=f[i];while(c.charAt(0)==' '){c=c.substring(1);}if(c.indexOf(n)==0){o=c.substring(n.length,c.length);return o;}}return o;},deletePersistenceCookie:function(c){document.cookie=c+'=;expires=Thu, 01 Jan 1970 00:00:01 GMT;';}};},true);};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.WCBChannels')){jQuery.sap.declare('sap.ui.support.supportRules.WCBChannels');sap.ui.define("sap/ui/support/supportRules/WCBChannels",[],function(){"use strict";return{ON_CORE_STATE_CHANGE:"ON_CORE_STATE_CHANGE",ON_SHOW_REPORT_REQUEST:"ON_SHOW_REPORT_REQUEST",ON_DOWNLOAD_REPORT_REQUEST:"ON_DOWNLOAD_REPORT_REQUEST",ON_ANALYZE_REQUEST:"ON_ANALYZE_REQUEST",ON_INIT_ANALYSIS_CTRL:"ON_INIT_ANALYSIS_CTRL",ON_PROGRESS_UPDATE:"ON_PROGRESS_UPDATE",ON_ANALYZE_FINISH:"ON_ANALYZE_FINISH",VERIFY_CREATE_RULE:"VERIFY_CREATE_RULE",VERIFY_RULE_CREATE_RESULT:"VERIFY_RULE_CREATE_RESULT",VERIFY_UPDATE_RULE:"VERIFY_UPDATE_RULE",VERIFY_RULE_UPDATE_RESULT:"VERIFY_RULE_UPDATE_RESULT",POST_AVAILABLE_LIBRARIES:"POST_AVAILABLE_LIBRARIES",LOAD_RULESETS:"LOAD_RULESETS",GET_AVAILABLE_COMPONENTS:"GET_AVAILABLE_COMPONENTS",POST_AVAILABLE_COMPONENTS:"POST_AVAILABLE_COMPONENTS",HIGHLIGHT_ELEMENT:"HIGHLIGHT_ELEMENT",OPEN_URL:"OPEN_URL",TREE_ELEMENT_MOUSE_ENTER:"TREE_ELEMENT_MOUSE_ENTER",TREE_ELEMENT_MOUSE_OUT:"TREE_ELEMENT_MOUSE_OUT",UPDATE_SUPPORT_RULES:"UPDATE_SUPPORT_RULES",EXTERNAL_MODULE_UPLOADED:"EXTERNAL_MODULE_UPLOADED",TOGGLE_FRAME_HIDDEN:"TOGGLE_FRAME_HIDDEN",ENSURE_FRAME_OPENED:"ENSURE_FRAME_OPENED",RESIZE_FRAME:"RESIZE_FRAME",REQUEST_RULES_MODEL:"REQUEST_RULES_MODEL",GET_RULES_MODEL:"GET_RULES_MODEL",REQUEST_ISSUES:"REQUEST_ISSUES",GET_ISSUES:"GET_ISSUES"};},true);};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.WindowCommunicationBus')){jQuery.sap.declare('sap.ui.support.supportRules.WindowCommunicationBus');jQuery.sap.require('jquery.sap.global');sap.ui.define("sap/ui/support/supportRules/WindowCommunicationBus",["jquery.sap.global"],function(q){"use strict";var C={channels:{},onMessageChecks:[]};var o=q.sap.getUriParameters().get("sap-ui-xx-support-origin");var a=o;var f=q.sap.getUriParameters().get("sap-ui-xx-frame-identifier")||'_unnamed_frame_-_use_message_origin_';if(!a){var m=new window.URI(q.sap.getModulePath("sap.ui.support"));var p=m.protocol()===""?window.location.protocol.replace(":",""):m.protocol();var h=m.host()===""?window.location.host:m.host();a=p+"://"+h;}C.origin=a;C.subscribe=function(c,b,d){if(!this.channels[c]){this.channels[c]=[{callback:b,context:d}];return;}this.channels[c].push({callback:b,context:d});};C.publish=function(c,P){var r=this._getReceivingWindow(),d={channelName:c,params:P,_frameIdentifier:f,_origin:window.location.href};r.postMessage(d,this.origin);};C.destroyChanels=function(){C.channels={};};C._getReceivingWindow=function(){if(window.communicationWindows&&window.communicationWindows.hasOwnProperty("supportTool")){return window.communicationWindows.supportTool;}return window.opener||window.parent;};C._onmessage=function(e){var c=C.onMessageChecks.every(function(M){return M.call(null,e);});if(!c){q.sap.log.error("Message was received but failed validation");return;}var b=e.data.channelName,d=e.data.params,g=C.channels[b];if(!g){return;}g.forEach(function(i){i.callback.apply(i.context,[d]);});};if(window.addEventListener){window.addEventListener("message",C._onmessage,false);}else{window.attachEvent("onmessage",C._onmessage);}if(o){C.publish("COMM_BUS_INTERNAL","READY");}return C;},true);};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.report.AnalysisHistoryFormatter')){jQuery.sap.declare('sap.ui.support.supportRules.report.AnalysisHistoryFormatter');sap.ui.define("sap/ui/support/supportRules/report/AnalysisHistoryFormatter",[],function(){"use strict";var _=Array(196).join("-"),a="|";function f(t,e){var g="",t=t||"";if(!e){e=50;}g=t.replace(/(\r\n|\n|\r)/gm," ").replace(/(\")/gm,"");if(g.length>e){g=g.substring(0,e-3)+"...";}else{while(g.length<e){g+=" ";}}return g;}function b(r){var t=_+"\n";t+=a+f("rule id: "+r[0].ruleId,193)+a+"\n";t+=a+f("name: "+r[0].name,193)+a+"\n";t+=a+f("library: "+r[0].ruleLibName,193)+a+"\n";t+=a+f("categories: "+r[0].categories.join(", "),193)+a+"\n";t+=a+f("audiences: "+r[0].audiences.join(", "),193)+a+"\n";t+=a+f("description: "+r[0].description,193)+a+"\n";t+=a+f("resolution: "+r[0].resolution,193)+a+"\n";t+=_+"\n";t+=a+f("id",50);t+=a+f("class name",30);t+=a+f("status",10);t+=a+f("details",100);t+=a+"\n";t+=_+"\n";for(var i=0;i<r.length;i++){t+=a+f(r[i].context.id,50);t+=a+f(r[i].context.className,30);t+=a+f(r[i].severity,10);t+=a+f(r[i].details,100);t+=a+"\n";}t+=_+"\n";return t;}function c(l){var t="";if(!l){return t;}for(var e in l){for(var r in l[e]){t+=b(l[e][r]);}t+="\n";}t+="\n";return t;}function d(e){var t="";if(!e){return t;}for(var i=0;i<e.length;i++){t+="\n";t+="Run "+(i+1)+"\n";t+=c(e[i].issues);t+="\n";}return t;}return{format:d};},true);};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.report.Archiver')){jQuery.sap.declare('sap.ui.support.supportRules.report.Archiver');jQuery.sap.require('jquery.sap.global');jQuery.sap.require('sap.ui.thirdparty.jszip');jQuery.sap.require('sap.ui.core.util.File');sap.ui.define("sap/ui/support/supportRules/report/Archiver",['jquery.sap.global','sap/ui/thirdparty/jszip','sap/ui/core/util/File'],function(q,J,F){"use strict";var A=function(){this._mData={};};A.prototype.add=function(n,d,t){if(!n){q.sap.log.error("Archiver: No name was given.");return false;}if(!d){q.sap.log.error("Archiver: No data was given.");return false;}if(typeof d==="string"){this._mData[n]=d;return true;}else if(t){if((t==="json"||t==="har")&&(q.isPlainObject(d)||q.isArray(d))){try{this._mData[n]=JSON.stringify(d);return true;}catch(e){q.sap.log.error("Archiver: JSON data could not be serialized for "+n);}}else{q.sap.log.error("Archiver: JSON data could not be serialized for "+t+". Either the type is unknown or the data has a wrong format.");}}else{q.sap.log.error("Archiver: Data could not be serialized for "+n+". Data is is not a string or has a an invalid type.");return false;}return false;};A.prototype.download=function(f){var z=new J();if(z){for(var n in this._mData){z.file(n,this._mData[n]);}var c=z.generate({type:"blob"});F.save(c,f,"zip","application/zip");}};A.prototype.clear=function(){this._mData={};return true;};A.prototype.hasData=function(n){if(n!==undefined){return this._mData.hasOwnProperty(n);}return Object.keys(this._mData).length>0;};return A;},true);};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.report.DataCollector')){jQuery.sap.declare('sap.ui.support.supportRules.report.DataCollector');jQuery.sap.require('jquery.sap.global');jQuery.sap.require('sap.ui.core.support.ToolsAPI');jQuery.sap.require('sap.ui.thirdparty.URI');sap.ui.define("sap/ui/support/supportRules/report/DataCollector",['jquery.sap.global','sap/ui/core/support/ToolsAPI','sap/ui/thirdparty/URI'],function(q,T,U){"use strict";var D=function(c){this._oCore=c;};D.prototype.getAppInfo=function(){var a=[];for(var c in this._oCore.mObjects.component){var b=this._oCore.mObjects.component[c];var s=b.getMetadata().getManifestEntry('sap.app');a.push(s);}return a;};D.prototype.getTechInfoJSON=function(){var c=T.getFrameworkInformation();var t={sapUi5Version:null,version:c.commonInformation.version,build:c.commonInformation.buildTime,change:c.commonInformation.lastChange,jquery:c.commonInformation.jquery,useragent:c.commonInformation.userAgent,docmode:c.commonInformation.documentMode,debug:c.commonInformation.debugMode,bootconfig:c.configurationBootstrap,config:c.configurationComputed,libraries:c.libraries,loadedLibraries:c.loadedLibraries,modules:c.loadedModules,uriparams:c.URLParameters,appurl:c.commonInformation.applicationHREF,title:c.commonInformation.documentTitle,statistics:c.commonInformation.statistics,resourcePaths:[],themePaths:[],locationsearch:document.location.search,locationhash:document.location.hash};var m=q.sap.getAllDeclaredModules();var r=[];for(var i=0;i<m.length;i++){r.push({moduleName:m[i],relativePath:q.sap.getResourcePath(m[i]),absolutePath:U(q.sap.getResourcePath(m[i])).absoluteTo(document.location.origin+document.location.pathname).toString()});}t.resourcePaths=r;var l=this._oCore.getLoadedLibraries();r=[];for(var n in l){var p=this._oCore._getThemePath(n,this._oCore.oConfiguration.theme);r.push({theme:this._oCore.oConfiguration.theme,library:n,relativePath:p,absolutePath:U(p).absoluteTo(document.location.origin+document.location.pathname).toString()});}t.themePaths=r;try{t.sapUi5Version={version:sap.ui.getVersionInfo(),path:sap.ui.resource("","sap-ui-version.json")};}catch(e){t.sapUi5Version=null;}return t;};return D;},true);};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.report.IssueRenderer')){jQuery.sap.declare('sap.ui.support.supportRules.report.IssueRenderer');jQuery.sap.require('jquery.sap.global');sap.ui.define("sap/ui/support/supportRules/report/IssueRenderer",['jquery.sap.global'],function(q){'use strict';var _=false;function g(v){if(v){if(q.isArray(v)){return q.sap.escapeHTML(v.join(', '));}else{return q.sap.escapeHTML(v);}}else{return'';}}function r(f,h,j,l){var m='';var n='';var o=1;var t=0;for(var p in h){var s=h[p];t+=s.length;var u=s[0];n+='<tr id="'+j+'_rule_'+o+'" >';n+='<td>';n+='<div class="expandable-control collapsed-content" data-expandableElement="'+j+'_rule_'+o+'_content">';n+='<div class="expandable-title"> '+o+'. '+g(u.name)+' <span class="rule-issue-number">('+s.length+' issues)</span></div></div>';n+='<div id="'+j+'_rule_'+o+'_content">';n+='<div><span class="sapUiSupportLabel">Description: </span>'+g(u.description)+'</div>';n+='<div><span class="sapUiSupportLabel">Resolution: </span>'+g(u.resolution)+'</div>';n+='<div>';if(u.resolutionUrls){for(var k=0;k<u.resolutionUrls.length;k++){n+='<div><a href="'+g(u.resolutionUrls[k].href)+'" target="_blank">'+g(u.resolutionUrls[k].text)+'</a></div>';}}n+='</div>';n+='<table class="sapUiTable"><tr><th></th><th>Element Id</th><th>Class</th><th>Status</th><th>Details</th></tr>';for(var i=0;i<s.length;i++){n+='<tr class="filterable" data-severity="'+g(s[i].severity)+'"><td>'+(i+1)+'</td><td>'+g(s[i].context.id)+'</td>';n+='<td>'+g(s[i].context.className)+'</td>';n+='<td class="'+g(s[i].severity)+'">'+g(s[i].severity)+'</td>';n+='<td>'+g(s[i].details)+'</td></tr>';}n+='</table>';n+='</div></td>';n+='<td>'+g(u.categories)+'</td>';n+='<td>'+g(u.audiences)+'</td>';n+='</tr>';o++;}var v='collapsed-content';if(l===1){v='expanded-content';}m+='<tr>';m+='<td colspan="100" class="expandable-control '+v+'" data-expandableElement="'+j+'" data-groupName="'+f+'" data-groupNumber="'+l+'">';m+='<span class="sapUiSupportLabel expandable-title"> '+l+'. '+f+' ('+(o-1)+' rules, '+t+' issues)</span>';m+='</td></tr><tbody id="'+j+'">';m+=n;m+='</tbody>';return m;}function a(f){var h='';var i=1;if(!f){return h;}try{h+='<table class="sapUiTable"><tr><th>Title</th><th>Categories</th><th>Audiences</th></tr>';for(var j in f){h+=r(j,f[j],'group'+i,i);i++;}h+='</table>';}catch(k){q.sap.log.warning('There was a problem extracting issues info.');h='';}return h;}function b(s,f,i){if(!f){return'';}var h=i?'filter-active':'';return'<div data-severity="'+s+'" class="filter '+h+' '+s+'">'+s+'('+f+')</div>'+' | ';}function c(f){var h='',s={},j,i,t=0,k=[],l={},m={},n={};if(!f){return h;}try{for(n in f){l=f[n];for(m in l){k=l[m];for(i=0;i<k.length;i++){j=k[i].severity;if(s[j]){s[j]++;}else{s[j]=1;}t++;}}}h+=b('Total',t,true);h+=b('High',s['High'],false);h+=b('Medium',s['Medium'],false);h+=b('Low',s['Low'],false);}catch(o){q.sap.log.warning('There was a problem creating severity filters.');h='';}return h;}function d(i,f){var h='';if(f){h+='<div class="filters">'+c(i)+'<div>\n';}h+='<div>'+a(i)+'</div>';return'<div>'+h+'</div>';}function e(i){if(!q("#qunit")||!i){return;}var f=q(this.render(i));q("#qunit").append(f);if(!_){var s=[q.sap.getResourcePath('sap/ui/support/supportRules/report/resources/styles.css'),q.sap.getResourcePath('sap/ui/support/supportRules/report/resources/collapseExpand.css'),q.sap.getResourcePath('sap/ui/support/supportRules/report/resources/filter.css')];var h=q.sap.getResourcePath('sap/ui/support/supportRules/report/resources/collapseExpand.js');var j=q.sap.getResourcePath('sap/ui/support/supportRules/report/resources/filter.js');q.each(s,function(k,v){q('<link>').appendTo('head').attr({type:'text/css',rel:'stylesheet',href:v});});q.getScript(h,function(){window.sapUiSupportReport.collapseExpand.init();});q.getScript(j,function(){window.sapUiSupportReport.filter.init();});_=true;}else{window.sapUiSupportReport.collapseExpand.init();window.sapUiSupportReport.filter.init();}}return{render:d,renderIssuesForOPA:e};},true);};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.report.ReportProvider')){jQuery.sap.declare('sap.ui.support.supportRules.report.ReportProvider');jQuery.sap.require('jquery.sap.global');jQuery.sap.require('sap.ui.thirdparty.handlebars');sap.ui.define("sap/ui/support/supportRules/report/ReportProvider",['jquery.sap.global','sap/ui/thirdparty/handlebars','sap/ui/support/supportRules/report/Archiver','sap/ui/support/supportRules/report/IssueRenderer'],function(q,H,A,I){'use strict';var r=q.sap.getResourcePath('sap/ui/support/supportRules/report/resources');var b=[{url:r+'/ReportTemplate.html',type:'template'},{url:r+'/styles.css',type:'css'},{url:r+'/filter.css',type:'css'},{url:r+'/collapseExpand.css',type:'css'},{url:r+'/filter.js',type:'js'},{url:r+'/collapseExpand.js',type:'js'}];var t={line:function(a,i,u,v,w){a.push("<tr><td ",i?"align='right' ":"","valign='top'>","<label class='sapUiSupportLabel'>",q.sap.escapeHTML(v||""),"</label></td><td",u?" class='sapUiSupportTechInfoBorder'":"",">");var x=w;if(q.isFunction(w)){x=w(a);}a.push(q.sap.escapeHTML(x||""));a.push("</td></tr>");},multiline:function(a,u,w,x,y){var z=this;z.line(a,u,w,x,function(a){a.push("<table border='0' cellspacing='0' cellpadding='3'>");q.each(y,function(i,v){var B="";if(v){if(typeof(v)==="string"||typeof(v)==="string"||typeof(v)==="boolean"){B=v;}else if((q.isArray(v)||q.isPlainObject(v))&&window.JSON){B=window.JSON.stringify(v);}}z.line(a,false,false,i,""+B);});a.push("</table>");});}};function g(a){return q.ajax({type:'GET',url:a.url,dataType:'text'}).then(function(i){return{content:i,type:a.type};});}function c(){var a=[];for(var i=0;i<b.length;i++){a.push(g(b[i]));}return q.when.apply(q,a);}function d(a){var u='';if(!a){return new H.SafeString(u);}try{a.modules.sort();var w=["<div class='sapUiSupportToolbar'>","<div><div class='sapUiSupportTechInfoCntnt'>","<table border='0' cellpadding='3'>"];t.line(w,true,true,"SAPUI5 Version",function(i){var v=a.sapUi5Version;if(v&&v.version){var V=v.version;var y=q.sap.escapeHTML(V.version||"");i.push(y," (built at ",q.sap.escapeHTML(V.buildTimestamp||""),", last change ",q.sap.escapeHTML(V.scmRevision||""),")");}else{i.push("not available");}});t.line(w,true,true,"Core Version",function(i){return a.version+" (built at "+a.build+", last change "+a.change+")";});t.line(w,true,true,"Loaded jQuery Version",function(i){return a.jquery;});t.line(w,true,true,"User Agent",function(i){return a.useragent+(a.docmode?", Document Mode '"+a.docmode+"'":"");});t.line(w,true,true,"Application",a.appurl);t.multiline(w,true,true,"Configuration (bootstrap)",a.bootconfig);t.multiline(w,true,true,"Configuration (computed)",a.config);if(!q.isEmptyObject(a.libraries)){t.multiline(w,true,true,"Libraries",a.libraries);}t.multiline(w,true,true,"Loaded Libraries",a.loadedLibraries);t.line(w,true,true,"Loaded Modules",function(y){q.each(a.modules,function(i,v){if(v.indexOf("sap.ui.core.support")<0){y.push("<span>",q.sap.escapeHTML(v||""),"</span>");if(i<a.modules.length-1){y.push(", ");}}});});t.multiline(w,true,true,"URI Parameters",a.uriparams);w.push("</table></div>");u=w.join('');}catch(x){q.sap.log.warning('There was a problem extracting technical info.');}return new H.SafeString(u);}function e(v){var a='<td>';if(v){a+=q.sap.escapeHTML(v);}a+='</td>';return a;}function f(a){var u='';if(!a){return new H.SafeString(u);}u+='<table class="sapUiTable"><tr><th>Component ID</th><th>Type</th><th>Title</th><th>Subtitle</th><th>Application version</th><th>Description</th><th>BCP Component</th></tr>';try{for(var i=0;i<a.length;i++){var v=a[i];u+='<tr>';u+=e(v.id);u+=e(v.type);u+=e(v.title);u+=e(v.subTitle);if(v.applicationVersion){u+=e(v.applicationVersion.version);}else{u+='<td></td>';}u+=e(v.description);u+=e(v.ach);u+='</tr>';}u+='</table>';}catch(w){q.sap.log.warning('There was a problem extracting app info.');u='';}return new H.SafeString(u);}function h(a){var i='';i+='<div><span class="sapUiSupportLabel">'+a.displayName+'</span>';i+='<span> ('+a.description+')</span></div>';return i;}function j(a,i){var u='';u+='<div><span class="sapUiSupportLabel">'+i.displayName+' with id:</span> '+a;u+='<span> ('+i.description+')</span></div>';return u;}function k(a,u){var v='';if(a.length>5){v+='<div class="expandable-control collapsed-content" data-expandableElement="execution-scope-components">';v+='<span class="expandable-title"><span class="sapUiSupportLabel">'+u.displayName+'</span>';v+='<span> ('+u.description+')</span></span></div>';}else{v+='<div><span class="sapUiSupportLabel">'+u.displayName+'</span>';v+='<span> ('+u.description+')</span></div>';}v+='<ol id="execution-scope-components" class="top-margin-xsmall">';for(var i=0;i<a.length;i++){v+='<li>'+a[i]+'</li>';}v+='</ol>';return v;}function l(a){var i='';try{var u=a.executionScope._getType();var v=a.scopeDisplaySettings.executionScopes[u];var w=a.scopeDisplaySettings.executionScopeTitle;i+='<div class="sapUiSupportLabel">'+w+': </div>';switch(u){case'global':i+=h(v);break;case'subtree':i+=j(a.executionScope._getContext().parentId,v);break;case'components':i+=k(a.executionScope._getContext().components,v);break;}}catch(x){q.sap.log.warning('There was a problem extracting scope info.');i='';}return new H.SafeString(i);}function m(a){var i='';if(!a){return new H.SafeString(i);}try{var u=1;i+='<table class="sapUiTable"><tbody><tr><th>Name</th><th>Description</th></tr></tbody>';for(var v in a){var w=a[v];var x='collapsed-content';if(u===1){x='expanded-content';}var y=a[v].selected?' ('+a[v].issueCount+' issues)':'';var z='<span class="checked" style="'+(a[v].selected?'':'visibility: hidden;')+'"> &#10004; </span>';i+='<tbody><tr><td colspan="100" ';i+='class="expandable-control '+x+'" data-expandableElement="section-selected-rules-group'+u+'">'+z;i+='<span class="sapUiSupportLabel expandable-title"> '+v+y+'</span>';i+='</td></tr></tbody>';var B='';for(var C in w){var D=w[C].selected?' ('+w[C].issueCount+' issues)':'';var E='<span class="checked" style="'+(w[C].selected?'':'visibility: hidden;')+'"> &#10004; </span>';B+='<tr><td>'+E+w[C].title+D+'</td><td>'+w[C].description+'</td></tr>';}i+='<tbody id="section-selected-rules-group'+u+'">'+B+'</tbody>';u++;}i+='</table>';}catch(F){q.sap.log.warning('There was a problem extracting selected rules info.');i='';}return new H.SafeString(i);}function n(b,a){var u='';if(a!=='script'&&a!=='style'){return u;}for(var i=0;i<b.length;i++){switch(a){case'script':u+='<script>'+b[i]+'</script>\n';break;case'style':u+='<style type="text/css">'+b[i]+'</style>\n';break;}}return new H.SafeString(u);}H.registerHelper('getTechnicalInformation',function(a){return d(a);});H.registerHelper('getRules',function(a){return m(a);});H.registerHelper('getIssues',function(i){return new H.SafeString(I.render(i,true));});H.registerHelper('getAppInfo',function(a){return f(a);});H.registerHelper('getScope',function(a){return l(a);});H.registerHelper('getScripts',function(a){return n(a,'script');});H.registerHelper('getStyles',function(a){return n(a,'style');});function o(D){return c().then(function(){var a=[],u=[],v='',i,w={},x={};for(i=0;i<arguments.length;i++){switch(arguments[i].type){case'template':v=arguments[i].content;break;case'css':a.push(arguments[i].content);break;case'js':u.push(arguments[i].content);break;}}w=H.compile(v);x={technicalInfo:D.technical,issues:D.issues,appInfo:D.application,rules:D.rules,metadata:{title:D.name+' Analysis Results',title_TechnicalInfo:'Technical Information',title_Issues:'Issues',title_AppInfo:'Application Information',title_SelectedRules:'Available and (<span class="checked">&#10004;</span>) Executed Rules',timestamp:new Date(),scope:D.scope,analysisDuration:D.analysisDuration,analysisDurationTitle:D.analysisDurationTitle,styles:a,scripts:u}};return w(x);});}function p(D){this.getReportHtml(D).done(function(a){var i='<!DOCTYPE HTML><html><head><title>Report</title></head><body><div id="sap-report-content">'+a+'</div></body></html>';var u={'issues':D.issues};var v={'appInfos':D.application};var w={'technicalInfo':D.technical};var x=new A();x.add('technicalInfo.json',w,'json');x.add('issues.json',u,'json');x.add('appInfos.json',v,'json');x.add('report.html',i);x.download("SupportAssistantReport");x.clear();});}function s(D){var i='';var a=q('<a style="display: none;"/>');a.on('click',function(){var u=window.open('','_blank');q(u.document).ready(function(){if(u.document.getElementById('sap-report-content')){u.document.getElementById('sap-report-content').innerHtml=i;}else{u.document.write('<div id="sap-report-content">'+i+'</div>');}u.document.title='Report';});});q('body').append(a);this.getReportHtml(D).then(function(u){i=u;a[0].click();a.remove();});}return{getReportHtml:o,downloadReportZip:p,openReport:s};},true);};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.ui.IFrameController')){jQuery.sap.declare('sap.ui.support.supportRules.ui.IFrameController');jQuery.sap.require('jquery.sap.global');jQuery.sap.require('sap.ui.base.ManagedObject');sap.ui.define("sap/ui/support/supportRules/ui/IFrameController",["jquery.sap.global","sap/ui/base/ManagedObject","sap/ui/support/supportRules/WindowCommunicationBus","sap/ui/support/supportRules/WCBChannels","sap/ui/support/supportRules/Constants"],function(q,M,C,c,a){"use strict";var i=null;var f;var F;var s;function b(u){var e=new window.URI(u);var O=(e.protocol()||window.location.protocol.replace(':',''))+'://'+(e.host()||window.location.host);return O;}function g(){return''+ +new Date();}function o(u){var t=document.createElement("IFRAME");var e=t.style;t.id="sap-ui-supportToolsFrame";t.src=u;e.width="100%";e.height="28px";e.position="absolute";e.left="0";e.bottom="0";e.border="none";e.zIndex="1001";e.boxShadow="1px -10px 42px -4px #888";document.body.appendChild(t);setInterval(function(){if(t.parentNode.nodeName!=="BODY"){document.body.appendChild(t);window.communicationWindows.supportTool=t.contentWindow;}},1000);window.communicationWindows.supportTool=t.contentWindow;}function d(u){window.communicationWindows.supportTool=window.open(u,"sapUiSupportTool","width=1024,height=400,status=no,toolbar=no,menubar=no,resizable=yes,location=no,directories=no,scrollbars=no");window.communicationWindows.supportTool.window.onload=function(){window.communicationWindows.supportTool.document.title=a.SUPPORT_ASSISTANT_NAME;};}var I=M.extend("sap.ui.support.IFrameController",{constructor:function(){if(!i){M.apply(this,arguments);}else{q.sap.log.warning("Only one support tool allowed");return i;}}});I.prototype._setCommunicationSubscriptions=function(){C.subscribe(c.ENSURE_FRAME_OPENED,function(){if(document.getElementById("sap-ui-supportToolsFrame").style.height==="28px"){this.resizeFrame(true);this.toggleHide();}},this);C.subscribe(c.RESIZE_FRAME,function(p){i.resizeFrame(p.bigger);});};I.prototype.injectFrame=function(e){F=g();s=q.sap.getModulePath("sap.ui.support.supportRules.ui","/overlay.html?sap-ui-xx-formfactor=compact&sap-ui-xx-support-origin="+window.location.protocol+"//"+window.location.host+"&"+"sap-ui-xx-frame-identifier="+F);f=b(s);window.communicationWindows=window.communicationWindows||{};if(e.indexOf("window")>-1){d(s);}else{o(s);this._setCommunicationSubscriptions();}};I.prototype.resizeFrame=function(e){var t=document.getElementById("sap-ui-supportToolsFrame").style;if(e){if(t.height==="50%"){t.height="100%";}else if(t.height==="28px"){t.height="50%";}}else{if(t.height==="100%"){t.height="50%";}else if(t.height==="50%"){t.height="28px";}}};I.prototype.toggleHide=function(h){var t=document.getElementById("sap-ui-supportToolsFrame").style;if(h){this._originalSize={width:t.width,height:t.height};t.width="170px";t.height="28px";}else{if(this._originalSize){t.width=this._originalSize.width;t.height=this._originalSize.height;this._originalSize=null;}}};I.prototype._stop=function(){this._oCssLink.parentNode.removeChild(this._oCssLink);this._oDomRef.parentNode.removeChild(this._oCssLink);this._oCore=null;};I.prototype.getFrameOrigin=function(){return f;};I.prototype.getFrameIdentifier=function(){return F;};I.prototype.getFrameUrl=function(){return s;};i=new I();return i;},true);};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.ui.external.ElementTree')){jQuery.sap.declare('sap.ui.support.supportRules.ui.external.ElementTree');jQuery.sap.require('jquery.sap.global');jQuery.sap.require('sap.ui.base.ManagedObject');sap.ui.define("sap/ui/support/supportRules/ui/external/ElementTree",["jquery.sap.global","sap/ui/base/ManagedObject"],function(q,M){"use strict";function _(h){return(typeof h==="object"&&!Array.isArray(h)&&h!==null);}function a(o){return"<ul "+o.attributes.join(" ")+">";}function b(){return"</ul>";}function c(o,h){var i="<li data-id=\""+o.id+"\" ";if(h){i+="issue";}i+=">";return i;}function d(){return"</li>";}function e(h,p){var i="<offset style=\"padding-left:"+p+"px\" >";if(h.content.length>0){i+="<arrow down=\"true\"></arrow>";}else{i+="<place-holder></place-holder>";}i+="</offset>";return i;}function f(h,n){var s=h.name.split(".");var i=s[s.length-1];var j=h.name.replace(i,"");var k=(n>0)?"showNumbOfIssues":"hideNumbOfIssues";return"<tag data-search=\""+h.name+h.id+"\">"+"&#60;"+"<namespace>"+j+"</namespace>"+i+"<attribute>&#32;id=\"<attribute-value>"+h.id+"</attribute-value>\"</attribute>"+"&#62;"+"</tag>"+"<span class = "+k+">["+n+"  issue(s)] </span>";}function g(h,p){while(h.nodeName!==p){if(h.nodeName==="CONTROL-TREE"){break;}h=h.parentNode;}return h;}function E(i,h){var j=_(h);var o;if(j){o=h;}else{o={};}this._ElementTreeContainer=document.getElementById(i);this.onIssueCountClicked=o.onIssueCountClicked?o.onIssueCountClicked:function(){};this.onSelectionChanged=o.onSelectionChanged?o.onSelectionChanged:function(s){};this.onHoverChanged=o.onHoverChanged?o.onHoverChanged:function(k){};this.onMouseOut=o.onMouseOut?o.onMouseOut:function(){};this.onInitialRendering=o.onInitialRendering?o.onInitialRendering:function(){};this.setData(o.data);}E.prototype.init=function(){if(!this._ElementTreeContainer){return;}this._createHTML();this._createHandlers();this.onInitialRendering();};E.prototype.getData=function(){return this._data;};E.prototype.setData=function(h){var o=this.getData();var i=_(h);if(i===false){q.sap.log.warning("The parameter should be an Object");return;}if(JSON.stringify(o)===JSON.stringify(h)){return;}this._data=h;if(this._isFirstRendering===undefined){this.init();this._isFirstRendering=true;}else{this._createTree();}return this;};E.prototype.setContainerId=function(i){this._ElementTreeContainer=document.getElementById(i);this.init();};E.prototype.getSelectedElement=function(){return this._selectedElement;};E.prototype.setSelectedElement=function(h,n){var s;if(typeof h!=="string"){q.sap.log.warning("Please use a valid string parameter");return;}s=this._ElementTreeContainer.querySelector("[data-id="+h+"]");if(s===null){q.sap.log.warning("The selected element is not a child of the ElementTree");return;}this._selectedElement=s;this._selectTreeElement(s,n);return this;};E.prototype.clearSelection=function(){var s=this._ElementTreeContainer.querySelector("[selected]");if(s){s.removeAttribute("selected");}};E.prototype._createHTML=function(){var h;h=this._createFilter();h+=this._createTreeContainer();this._ElementTreeContainer.innerHTML=h;this._setReferences();if(this.getData()!==undefined){this._createTree();}};E.prototype._createFilter=function(){return"<filter>"+"<end>"+"<label><input type=\"checkbox\" issues checked/>Issues</label>"+"<label><input type=\"checkbox\" namespaces checked/>Namespaces</label>"+"<label><input type=\"checkbox\" attributes/>Attributes</label>"+"</end>"+"</filter>";};E.prototype._createTreeContainer=function(){return"<tree show-namespaces show-problematic-elements></tree>";};E.prototype._createTree=function(){var h=this.getData().controls;this._treeContainer.innerHTML=this._createTreeHTML(h);};E.prototype._createTreeHTML=function(h,l){if(h===undefined||h.length===0){return"";}var i="";var n=l||0;var p=++n*10;var t=this;var j=this.getData().issuesIds;h.forEach(function(k){i+=a({attributes:["expanded=\"true\""]});var m=j[k.id]!==undefined?true:false;var o=0;var o=m?j[k.id].length:0;i+=c({id:k.id},m);i+=e(k,p);i+=f(k,o);i+=d();i+=t._createTreeHTML(k.content,n);i+=b();});return i;};E.prototype._toggleCollapse=function(t){var h=g(t.parentNode,"UL");if(t.getAttribute("right")==="true"){t.removeAttribute("right");t.setAttribute("down","true");h.setAttribute("expanded","true");}else if(t.getAttribute("down")==="true"){t.removeAttribute("down");h.removeAttribute("expanded");t.setAttribute("right","true");}};E.prototype._selectTreeElement=function(t,n){var h=g(t,"LI");var i=h.attributes["data-id"];if(!i){return;}var j=i.value;if(j===this._ElementTreeContainer.id){return;}this._scrollToElement(h,window);if(n){this.onSelectionChanged(j);}this.clearSelection();h.setAttribute("selected","true");if(n){this.onIssueCountClicked(j);}};E.prototype._scrollToElement=function(t,w){var h=this._treeContainer.offsetHeight-this._treeContainer.offsetTop+this._treeContainer.scrollTop;if(t.offsetTop>h||t.offsetTop<this._treeContainer.scrollTop){this._treeContainer.scrollTop=t.offsetTop-w.innerHeight/6;}};E.prototype._searchInTree=function(u){var s=this._ElementTreeContainer.querySelectorAll("[data-search]");var h=u.toLocaleLowerCase();var j;for(var i=0;i<s.length;i++){j=s[i].getAttribute("data-search").toLocaleLowerCase();if(j.indexOf(h)!==-1){s[i].parentNode.setAttribute("matching",true);}else{s[i].parentNode.removeAttribute("matching");}}};E.prototype._removeAttributesFromSearch=function(){var h=this._treeContainer.querySelectorAll("[matching]");for(var i=0;i<h.length;i++){h[i].removeAttribute("matching");}};E.prototype._setSearchResultCount=function(h){this._filterContainer.querySelector("results").innerHTML="("+h+")";};E.prototype._onArrowClick=function(h){var t=h.target;if(t.nodeName==="ARROW"){this._toggleCollapse(t);}else{this._selectTreeElement(t,true);}};E.prototype._onSearchInput=function(h){var t=h.target;var s;if(t.getAttribute("search")!==null){if(t.value.length!==0){this._searchInTree(t.value);}else{this._removeAttributesFromSearch("matching");}s=this._treeContainer.querySelectorAll("[matching]").length;this._setSearchResultCount(s);}};E.prototype._onSearchEvent=function(h){var s;if(h.target.value.length===0){this._removeAttributesFromSearch("matching");s=this._treeContainer.querySelectorAll("[matching]").length;this._setSearchResultCount(s);}};E.prototype._onOptionsChange=function(h){var t=h.target;if(t.getAttribute("filter")!==null){if(t.checked){this._treeContainer.setAttribute("show-filtered-elements",true);}else{this._treeContainer.removeAttribute("show-filtered-elements");}}if(t.getAttribute("issues")!==null){if(t.checked){this._treeContainer.setAttribute("show-problematic-elements",true);}else{this._treeContainer.removeAttribute("show-problematic-elements");}}if(t.getAttribute("namespaces")!==null){if(t.checked){this._treeContainer.setAttribute("show-namespaces",true);}else{this._treeContainer.removeAttribute("show-namespaces");}}if(t.getAttribute("attributes")!==null){if(t.checked){this._treeContainer.setAttribute("show-attributes",true);}else{this._treeContainer.removeAttribute("show-attributes");}}};E.prototype._onTreeElementMouseHover=function(h){var t=g(h.target,"LI");var i=this._ElementTreeContainer.querySelector("[hover]");if(i){i.removeAttribute("hover");}t.setAttribute("hover","true");var j=t.attributes["data-id"];this.onHoverChanged(j&&j.value);};E.prototype._onTreeElementMouseOut=function(h){this.onMouseOut();};E.prototype._createHandlers=function(){this._treeContainer.onclick=this._onArrowClick.bind(this);this._filterContainer.onkeyup=this._onSearchInput.bind(this);this._filterContainer.onsearch=this._onSearchEvent.bind(this);this._filterContainer.onchange=this._onOptionsChange.bind(this);this._ElementTreeContainer.onmouseover=this._onTreeElementMouseHover.bind(this);this._ElementTreeContainer.onmouseout=this._onTreeElementMouseOut.bind(this);};E.prototype._setReferences=function(){this._filterContainer=this._ElementTreeContainer.querySelector("filter");this._treeContainer=this._ElementTreeContainer.querySelector("tree");};return E;});};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.ui.external.Highlighter')){jQuery.sap.declare('sap.ui.support.supportRules.ui.external.Highlighter');sap.ui.define("sap/ui/support/supportRules/ui/external/Highlighter",[],function(){"use strict";var _=null;function a(){_.style.display="none";}function b(){_.style.display="block";}function c(){var h=document.createElement("div");h.style.cssText="box-sizing: border-box;border:1px solid blue;background: rgba(20, 20, 200, 0.4);position: absolute";var d=document.createElement("div");d.id="ui5-highlighter";d.style.cssText="position: fixed;top:0;right:0;bottom:0;left:0;z-index: 1000;overflow: hidden;";d.appendChild(h);document.body.appendChild(d);_=document.getElementById("ui5-highlighter");_.onmouseover=a;}return{highlight:function(e){var h;var t;var d;if(_===null&&!document.getElementById("ui5-highlighter")){c();}else{b();}h=_.firstElementChild;t=document.getElementById(e);if(t){d=t.getBoundingClientRect();h.style.top=d.top+"px";h.style.left=d.left+"px";h.style.height=d.height+"px";h.style.width=d.width+"px";}return this;},hideHighLighter:a};});};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.ui.models.SharedModel')){jQuery.sap.declare('sap.ui.support.supportRules.ui.models.SharedModel');jQuery.sap.require('sap.ui.model.json.JSONModel');sap.ui.define("sap/ui/support/supportRules/ui/models/SharedModel",["sap/ui/model/json/JSONModel"],function(J){"use strict";var e={global:{key:"global",displayName:"Global",description:"The Rules will be / are executed on the complete application with all loaded elements and components, including all previously loaded pages"},subtree:{key:"subtree",displayName:"Sub-tree",description:"The Rules will be / are executed on the specified sub-tree root element, including all child elements (aggregated sub-elements)"},components:{key:"components",displayName:"Component(s)",description:"The Rules will be / are executed on the selected components from the list of currently loaded components (or fragments)"}};var m=new J({selectedRule:null,libraries:null,selectedIssue:null,issues:[],progress:0.1,showProgressIndicator:false,coreStateChanged:true,analyzePressed:false,selectedRulePreviewKey:"ruleProperties",selectedRuleCreateKey:"ruleProperties",selectedRuleEditKey:"ruleProperties",selectedSetPreviewKey:"availableRules",newRule:{},newRuleStringified:"",updateRuleStringified:"",subtreeExecutionContextId:"",availableComponents:[],audiences:sap.ui.support.Audiences,categories:sap.ui.support.Categories,severities:sap.ui.support.Severity,audiencesFilter:["All"].concat(Object.keys(sap.ui.support.Audiences)),categoriesFilter:["All"].concat(Object.keys(sap.ui.support.Categories)),severitiesFilter:["All"].concat(Object.keys(sap.ui.support.Severity)),newEmptyRule:{libName:"",id:"",categories:[sap.ui.support.Categories.Other],audiences:[sap.ui.support.Audiences.Internal],title:"",description:"",resolution:"",resolutionurls:[],check:"function(oIssueManager, oCoreFacade, oScope) {\n\t/* \n\t oIssueManager - allows you to add new issues with the addIssue() method \n\t oCoreFacade - gives you access to state of the core: getMetadata(), getUIAreas(), getComponents(), getModels() \n\t oScope - retrieves elements in the scope with these methods: getElements(), getElementsByClassName(className), getLoggedObjects(type) \n\t*/ \n}",selected:true},editRule:null,tempLink:{href:"",text:""},selectedRuleStringify:"",analyzeContext:e.global,executionScopes:e,executionScopeTitle:"Execution scope",lastAnalysisElapsedTime:"",analysisDurationTitle:"Last analysis duration",costants:"",executionScopeComponents:[],persistingSettings:false,loadingAdditionalRuleSets:false,analyzedFinish:false,selectedRules:true,filteredIssues:null,issuesCount:0,visibleRowCountMode:"Auto",visibleRowCount:10,heightDetailsArea:"inherit"});return m;});};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.ui.models.formatter')){jQuery.sap.declare('sap.ui.support.supportRules.ui.models.formatter');sap.ui.define("sap/ui/support/supportRules/ui/models/formatter",[],function(){"use strict";return{resolutionUrl:function(u,U){var s=u.indexOf(U)===u.length-1?"":", \u00a0";return U.text+s;}};});};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.util.StringAnalyzer')){jQuery.sap.declare('sap.ui.support.supportRules.util.StringAnalyzer');sap.ui.define("sap/ui/support/supportRules/util/StringAnalyzer",[],function(){"use strict";var S={calculateLevenshteinDistance:function(w,W){var l=w.length;var L=W.length;if(l===0){return L;}if(L===0){return l;}var m=new Array(L+1);var i;for(i=0;i<=L;i++){m[i]=new Array(l+1);m[i][0]=i;}var I;for(I=0;I<=l;I++){m[0][I]=I;}var a=0;var b;var c;for(b=1;b<=L;b++){for(c=1;c<=l;c++){var d=m[b-1][c]+1;var e=m[b][c-1]+1;var s=m[b-1][c-1];if(w[c]!==W[b]){s+=1;}a=Math.min(d,e,s);m[b][c]=a;}}return a;}};return S;},false);};if(!jQuery.sap.isDeclared('sap.ui.table.TableHelper.support')){jQuery.sap.declare('sap.ui.table.TableHelper.support');jQuery.sap.require('jquery.sap.global');sap.ui.define("sap/ui/table/TableHelper.support",["jquery.sap.global","sap/ui/support/library"],function(q,S){"use strict";var A=S.Audiences,C=S.Categories,a=S.Severity;var T={DOCU_REF:"https://sapui5.hana.ondemand.com/",DEFAULT_RULE_DEF:{audiences:[A.Application],categories:[C.Other],enabled:true,minversion:"1.38",maxversion:"-",title:"",description:"",resolution:"",resolutionurls:[],check:function(i,c,s){}},normalizeRule:function(r){return q.extend({},T.DEFAULT_RULE_DEF,r);},addRuleToRuleset:function(r,R){r=T.normalizeRule(r);var s=R.addRule(r);if(s!="success"){q.sap.log.warning("Support Rule '"+r.id+"' for library sap.ui.table not applied: "+s);}},createDocuRef:function(t,r){return{text:t,href:T.DOCU_REF+r};},reportIssue:function(i,t,s,c){i.addIssue({severity:s||a.Medium,details:t,context:{id:c||"WEBPAGE"}});},isInstanceOf:function(o,t){if(!o||!t){return false;}var b=sap.ui.require(t);return!!(b&&(o instanceof b));},find:function(s,v,t){var e=s.getElements();var r=[];for(var n in e){var E=e[n];if(T.isInstanceOf(E,t)){if(v&&E.getDomRef()||!v){r.push(E);}}}return r;},checkLogEntries:function(f,c){var l=q.sap.log.getLogEntries();var L;for(var i=0;i<l.length;i++){L=l[i];if(f(L)){if(c(L)){return;}}}}};return T;},true);};if(!jQuery.sap.isDeclared('sap.uxap.ObjectPageLayout.support')){jQuery.sap.declare('sap.uxap.ObjectPageLayout.support');jQuery.sap.require('jquery.sap.global');sap.ui.define("sap/uxap/ObjectPageLayout.support",["jquery.sap.global","sap/ui/support/library"],function(q,S){"use strict";var C=S.Categories,a=S.Severity,A=S.Audiences;var r=[];function c(R){r.push(R);}c({id:"objectPageComponentContainerHeight",audiences:[A.Control],categories:[C.Usability],enabled:true,minversion:"1.26",title:"ObjectPageLayout: Height of componentContainer",description:"The componentContainer of ObjectPageLayout should always have a '100%' height explicitly set",resolution:"Set a '100%' height to the ComponentContainer of ObjectPageLayout",resolutionurls:[{text:"SAP Fiori Design Guidelines: Object Page",href:"https://experience.sap.com/fiori-design-web/object-page/#guidelines"}],check:function(i,o,s){var b=s.getElementsByClassName("sap.ui.core.ComponentContainer"),p=s.getElementsByClassName("sap.uxap.ObjectPageLayout"),P=[],g=function(f){var h=f.getParent();while(h){if(h instanceof sap.ui.core.Component){return h;}else{h=h.getParent();}}},d=function(f){return(P.indexOf(f.getComponent())>-1);},e=function(f){var h=g(f);return h&&h.getId();};P=p.map(e);b.forEach(function(f){if(d(f)&&(f.getHeight()!=="100%")){var E=f.getId(),h=f.getMetadata().getElementName();i.addIssue({severity:a.Medium,details:"ComponentContainer '"+h+"' ("+E+") does not have '100%' height.",context:{id:E}});}});}});return{addRulesToRuleset:function(R){q.each(r,function(i,o){R.addRule(o);});}};},true);};if(!jQuery.sap.isDeclared('sap.m.Button.support')){jQuery.sap.declare('sap.m.Button.support');jQuery.sap.require('jquery.sap.global');sap.ui.define("sap/m/Button.support",["jquery.sap.global","sap/ui/support/library"],function(q,S){"use strict";var C=S.Categories,a=S.Severity,A=S.Audiences;var r=[];function c(R){r.push(R);}c({id:"onlyIconButtonNeedsTooltip",audiences:[A.Control],categories:[C.Usability],enabled:true,minversion:"1.28",title:"Button: Consists of only an icon, needs a tooltip",description:"A button without text needs a tooltip, so that the user knows what the button does",resolution:"Add a value to the tooltip property of the button",resolutionurls:[{text:"SAP Fiori Design Guidelines: Button",href:"https://experience.sap.com/fiori-design-web/button/#guidelines"}],check:function(i,o,s){s.getElementsByClassName("sap.m.Button").forEach(function(e){if(!q.isEmptyObject(e.getProperty("icon"))&&q.isEmptyObject(e.getProperty("text"))&&q.isEmptyObject(e.getAggregation("tooltip"))){var E=e.getId(),b=e.getMetadata().getElementName();i.addIssue({severity:a.Medium,details:"Button '"+b+"' ("+E+") consists of only an icon but has no tooltip",context:{id:E}});}});}});return{addRulesToRuleset:function(R){q.each(r,function(i,o){R.addRule(o);});}};},true);};if(!jQuery.sap.isDeclared('sap.m.Dialog.support')){jQuery.sap.declare('sap.m.Dialog.support');jQuery.sap.require('jquery.sap.global');sap.ui.define("sap/m/Dialog.support",["jquery.sap.global","sap/ui/support/library"],function(q,S){"use strict";var C=S.Categories,a=S.Severity,A=S.Audiences;var r=[];function c(R){r.push(R);}c({id:"dialogarialabelledby",audiences:[A.Control],categories:[C.Accessibility],enabled:true,minversion:"1.28",title:"Dialog accessibility",description:"Dialogs with content should have ariaLabelledBy association set",resolution:"Use ariaLabelledBy association so that dialog content is read out",resolutionurls:[{text:"Set ariaLabelledBy",href:"https://uacp2.hana.ondemand.com/viewer/DRAFT/SAPUI5_Internal/5709e73d51f2401a9a5a89d8f5479132.html"}],check:function(i,o,s){s.getElementsByClassName("sap.m.Dialog").forEach(function(e){var b=e.getAssociation("ariaLabelledBy"),d,E=e.getTitle(),f=e.getId(),g=e.getMetadata().getElementName();if((e.getContent()&&e.getContent().length>0)&&(!b||b.length==0)){if(E){d="'"+E+"' "+g+" ("+f+") has content but ariaLabelledBy association is not set. Set the association so that dialog's content is read out.";}else{d=g+" ("+f+") has content but ariaLabelledBy association is not set. Set the association so that dialog's content is read out.";}i.addIssue({severity:a.Medium,details:d,context:{id:e.getId()}});}});}});return{addRulesToRuleset:function(R){q.each(r,function(i,o){R.addRule(o);});}};},true);};if(!jQuery.sap.isDeclared('sap.m.Input.support')){jQuery.sap.declare('sap.m.Input.support');jQuery.sap.require('jquery.sap.global');sap.ui.define("sap/m/Input.support",["jquery.sap.global","sap/ui/support/library"],function(q,S){"use strict";var C=S.Categories,a=S.Severity,A=S.Audiences;var r=[];function c(R){r.push(R);}c({id:"inputNeedsLabel",audiences:[A.Control],categories:[C.Usability],enabled:true,minversion:"1.28",title:"Input field: Missing label",description:"An input field needs a label",resolution:"Define a sap.m.Label for the input field in the xml view and set the labelFor property to this input field Id.",resolutionurls:[{text:"SAP Fiori Design Guidelines: Input field",href:"https://experience.sap.com/fiori-design-web/input-field/#guidelines"}],check:function(i,o,s){var I=s.getElementsByClassName("sap.m.Input").map(function(b){return b.getId();});s.getElementsByClassName("sap.m.Label").forEach(function(l){var L=l.getLabelFor();if(I.includes(L)){var b=I.indexOf(L);I.splice(b,1);}});if(I.length>0){I.forEach(function(b){i.addIssue({severity:a.Medium,details:"Input field"+" ("+b+") is missing a label.",context:{id:b}});});}}});return{addRulesToRuleset:function(R){q.each(r,function(i,o){R.addRule(o);});}};},true);};if(!jQuery.sap.isDeclared('sap.ui.core.App.support')){jQuery.sap.declare('sap.ui.core.App.support');jQuery.sap.require('jquery.sap.global');sap.ui.define("sap/ui/core/App.support",["jquery.sap.global","sap/ui/support/library"],function(q,S){"use strict";var C=S.Categories;var a=S.Severity;var A=S.Audiences;return{addRulesToRuleSet:function(r,c){c=c||{};r.addRule({id:"controllerSyncCodeCheck",audiences:[A.Internal],categories:[C.Consistency],enabled:true,minversion:"1.32",title:"Synchronous calls in controller code",description:"Synchronous calls are deprecated within the Google Chrome browser and block the UI.",resolution:"Use asynchronous XHR calls instead",resolutionurls:[{text:'Documentation: Loading a Module',href:'https://sapui5.hana.ondemand.com/#docs/guide/d12024e38385472a89c1ad204e1edb48.html'}],check:function(i,o,s){var O=c.aObsoleteFunctionNames||[];var e=s.getElementsByClassName(sap.ui.core.mvc.View);var b=[];e.forEach(function(E){if(E.getController){var d=E.getController();if(d){b.push({controller:d,viewId:E.getId()});}}});var g=function(d,f,I,p){var _=[];Object.keys(d).forEach(function(P){var F=d[P].toString().replace(/(\r\n|\n|\r)/gm,"");I.forEach(function(h){if(F.indexOf(h)>0){p(d.getMetadata().getName(),P,h,f);}});});return _;};var v={};b.forEach(function(d){var m=function(j,F,I,V){v[V]=v[V]||[];v[V].push({controllerName:j,functionName:F,invalidContent:I});};var f=d.controller;while(f){g(f,d.viewId,O,m);var h=Object.getPrototypeOf(f);if(f===h||h===sap.ui.core.mvc.Controller.prototype){break;}f=h;}});Object.keys(v).forEach(function(V){var d=v[V];i.addIssue({severity:a.Medium,details:d.map(function(f){return"\nSynchronous call "+f.invalidContent+" found in "+f.controllerName+"#"+f.functionName;}),context:{id:V}});});}});}};},true);};if(!jQuery.sap.isDeclared('sap.ui.core.Config.support')){jQuery.sap.declare('sap.ui.core.Config.support');jQuery.sap.require('jquery.sap.global');sap.ui.define("sap/ui/core/Config.support",["jquery.sap.global","sap/ui/support/library"],function(q,S){"use strict";var C=S.Categories;var a=S.Severity;var A=S.Audiences;return{addRulesToRuleSet:function(r){r.addRule({id:"preloadAsyncCheck",audiences:[A.Control,A.Internal],categories:[C.Performance],enabled:true,minversion:"1.32",maxversion:"-",title:"Preload Configuration",description:"Checks whether the preload configuration was set correctly to async",resolution:"Add \"data-sap-ui-preload=\"async\"\" to script tag that includes \"sap-ui-core.js\"",resolutionurls:[{text:"Performance: Speed Up Your App",href:"https://sapui5.hana.ondemand.com/#docs/guide/408b40efed3c416681e1bd8cdd8910d4.html"}],check:function(i,c){if(sap.ui.getCore().getConfiguration().getPreload()!=="async"){i.addIssue({severity:a.High,details:"None",context:{id:"WEBPAGE"}});}}});r.addRule({id:"cacheBusterToken",audiences:[A.Application],categories:[C.Performance],enabled:true,minversion:"1.28",title:"Cache Buster Token",description:"Checks whether the application uses cache buster tokens in its requests for static resources from SAPUI5 repositories.",resolution:"Change the application.\n"+"Note: Not using cache buster tokens negatively impacts performance.\n"+"For more information, see the SAPUI5 developer guide.",resolutionurls:[{text:"SAPUI5 developer guide: ",href:"https://sapui5.hana.ondemand.com/#docs/guide/4cfe7eff3001447a9d4b0abeaba95166.html"}],check:function(I,c,s){var u="/sap/bc/ui5_ui5/";var b=[];var d;var R=q.sap.measure.getRequestTimings();for(var i=0;i<R.length;i++){var U=R[i].name;if(U.indexOf(u)>0){if(!U.match(/\/~[A-Z0-9]*~/g)){if(U.indexOf("/sap-ui-cachebuster/sap-ui-core.js")<0&&U.indexOf("sap-ui-cachebuster-info.json")<0){var e=U.split(u);e=e[1].split("/");d=e[0]==="sap"?e[1]:"/"+e[0]+"/"+e[1];if(b.indexOf(d)<0){b.push(d);}}}}}for(var i=0;i<b.length;i++){d=b[i];var f=u+(d.charAt(0)==="/"?d.substr(1):"sap/"+d);I.addIssue({severity:a.Medium,details:"Application '"+d+"' is lacking cache buster tokens in some or all of its requests.\n "+"For more information about the URLs affected under application '"+d+"' please check the network trace for URLs starting with '"+f+"'",context:{id:"WEBPAGE"}});}}});}};},true);};if(!jQuery.sap.isDeclared('sap.ui.core.Misc.support')){jQuery.sap.declare('sap.ui.core.Misc.support');jQuery.sap.require('jquery.sap.global');sap.ui.define("sap/ui/core/Misc.support",["jquery.sap.global","sap/ui/support/library","./CoreHelper.support"],function(q,S,C){"use strict";var a=S.Categories;var b=S.Severity;var A=S.Audiences;return{addRulesToRuleSet:function(r){r.addRule({id:"errorLogs",audiences:[A.Control,A.Internal],categories:[a.Performance],enabled:true,minversion:"1.32",title:"Error logs",description:"Checks for the amount of error logs in the console",resolution:"Error logs should be fixed",resolutionurls:[],check:function(i,c){var d=0,m="";var l=q.sap.log.getLog();l.forEach(function(e){if(e.level===q.sap.log.Level.ERROR){d++;if(d<=20){m+="- "+e.message+"\n";}}});i.addIssue({severity:b.Low,details:"Total error logs: "+d+"\n"+m,context:{id:"WEBPAGE"}});}});r.addRule({id:"cssCheckCustomStyles",audiences:[A.Application],categories:[a.Consistency],enabled:true,minversion:"1.38",title:"CSS modifications - List of custom styles",description:"Checks and report for custom CSS files/styles that overwrite standard UI5 control's CSS values ",resolution:"Avoid CSS manipulations with custom CSS values as this could lead to rendering issues ",resolutionurls:[{text:'CSS Styling Issues',href:'https://openui5.hana.ondemand.com/#docs/guide/9d87f925dfbb4e99b9e2963693aa00ef.html'},{text:'General Guidelines',href:'https://openui5.hana.ondemand.com/#docs/guide/5e08ff90b7434990bcb459513d8c52c4.html'}],check:function(i,c,s){var d="Following stylesheet file(s) contain 'custom' CSS that could affects (overwrites) UI5 controls' own styles: \n",e=C.getExternalStyleSheets(),f=0;e.forEach(function(g){var h=false;Array.from(g.rules).forEach(function(j){var k=j.selectorText,m=document.querySelectorAll(k);m.forEach(function(n){var l=C.nodeHasUI5ParentControl(n,s);if(l){h=true;}});});if(h){d+="- "+C.getStyleSheetName(g)+"\n";f++;}});if(f>0){i.addIssue({severity:sap.ui.support.Severity.Medium,details:d,context:{id:"WEBPAGE"}});}}});r.addRule({id:"cssCheckCustomStylesThatAffectControls",audiences:[A.Application],categories:[a.Consistency],enabled:true,minversion:"1.38",title:"CSS modifications - List of affected controls",description:"Checks and report all overwritten standard control's CSS values ",resolution:"Avoid CSS manipulations with custom CSS values as this could lead to rendering issues ",resolutionurls:[{text:'CSS Styling Issues',href:'https://openui5.hana.ondemand.com/#docs/guide/9d87f925dfbb4e99b9e2963693aa00ef.html'},{text:'General Guidelines',href:'https://openui5.hana.ondemand.com/#docs/guide/5e08ff90b7434990bcb459513d8c52c4.html'}],check:function(i,c,s){var d={},e=C.getExternalStyleSheets();e.forEach(function(f){Array.from(f.rules).forEach(function(g){var h=g.selectorText,m=document.querySelectorAll(h);m.forEach(function(n){var j=C.nodeHasUI5ParentControl(n,s);if(j){var u=q(n).control()[0];if(!d.hasOwnProperty(u.getId())){d[u.getId()]="";}var k=C.getStyleSource(f);d[u.getId()]+="'"+h+"'"+" from "+k+",\n";}});});});Object.keys(d).forEach(function(f){i.addIssue({severity:sap.ui.support.Severity.Low,details:"The following selector(s) "+d[f]+" affects standard style setting for control",context:{id:f}});});}});}};},true);};if(!jQuery.sap.isDeclared('sap.ui.core.Model.support')){jQuery.sap.declare('sap.ui.core.Model.support');jQuery.sap.require('jquery.sap.global');jQuery.sap.require('sap.ui.model.ListBinding');jQuery.sap.require('sap.ui.model.json.JSONModel');jQuery.sap.require('sap.ui.model.odata.ODataMetadata');jQuery.sap.require('sap.ui.model.CompositeBinding');jQuery.sap.require('sap.ui.model.PropertyBinding');sap.ui.define("sap/ui/core/Model.support",["jquery.sap.global","sap/ui/support/library","sap/ui/support/supportRules/util/StringAnalyzer","sap/ui/model/ListBinding","sap/ui/model/json/JSONModel","sap/ui/model/odata/ODataMetadata","sap/ui/model/CompositeBinding","sap/ui/model/PropertyBinding"],function(q,S,a,L,J,O,C,P){"use strict";var b=S.Categories;var c=S.Severity;var A=S.Audiences;return{addRulesToRuleSet:function(r){r.addRule({id:"unresolvedPropertyBindings",audiences:[A.Control,A.Application],categories:[b.Bindings],enabled:true,minversion:"1.32",title:"Unresolved Property Bindings",description:"Unresolved bindings might be caused by typos in their path",resolution:"Check the binding path for typos",resolutionurls:[{href:"https://sapui5.hana.ondemand.com/#docs/api/symbols/sap.ui.model.Context.html",text:"Context class"},{href:"https://sapui5.hana.ondemand.com/#docs/guide/e5310932a71f42daa41f3a6143efca9c.html",text:"Data binding"},{href:"https://sapui5.hana.ondemand.com/#docs/guide/97830de2d7314e93b5c1ee3878a17be9.html",text:"Aggregation binding with templates"},{href:"https://sapui5.hana.ondemand.com/#docs/guide/6c7c5c266b534e7ea9a28f861dc515f5.html",text:"Element binding"}],check:function(i,o,s){var e=s.getElements();for(var n in e){var E=e[n],B=E.mBindingInfos;for(var m in B){var d=B[m].binding;if(d){if(!(d instanceof C)&&d instanceof P&&d.getModel()){if(d.getValue()===undefined){i.addIssue({severity:c.Low,details:"Element "+E.getId()+" has unresolved bindings.",context:{id:E.getId()}});}}}}}}});function _(v,B){var j=-1;var s=false;v.forEach(function(k){var i=a.calculateLevenshteinDistance(B,k);if(j===-1||i<j){j=i;s=k;}});return s;}r.addRule({id:"bindingPathSyntaxValidation",audiences:[A.Control,A.Application],categories:[b.Bindings],enabled:true,minversion:"1.32",title:"Model: Unresolved binding path",description:"The binding path used in the model could not be resolved",resolution:"Check the binding path for typos",resolutionurls:[{href:"https://sapui5.hana.ondemand.com/#docs/api/symbols/sap.ui.model.Context.html",text:"API Reference: Context"},{href:"https://sapui5.hana.ondemand.com/#docs/guide/e5310932a71f42daa41f3a6143efca9c.html",text:"Documentation: Data Binding"},{href:"https://sapui5.hana.ondemand.com/#docs/guide/97830de2d7314e93b5c1ee3878a17be9.html",text:"Data Binding Tutorial - Step 12: Aggregation Binding Using Templates"},{href:"https://sapui5.hana.ondemand.com/#docs/guide/6c7c5c266b534e7ea9a28f861dc515f5.html",text:"Data Binding Tutorial - Step 13: Element Binding"}],check:function(i,o,s){var e=s.getElements();Object.keys(e).forEach(function(E){var d=e[E],B=d.mBindingInfos;Object.keys(B).forEach(function(f){var g=B[f].binding;if(g&&!(g instanceof C)&&g.getModel&&g.getModel()){var m=g.getModel();if((g.getValue&&g.getValue()===undefined)||(g instanceof L&&g.getLength()===0)){var j=false;if(m instanceof J){var h=m.getObject(g.getPath());if(!h){var D=m.getData();j=_(Object.keys(D),g.getPath());}}else if(m.oMetadata&&m.oMetadata instanceof O){var k=m.oMetadata._getEntityTypeByPath(g.getPath());if(!k){var v=[];m.oMetadata.getServiceMetadata().dataServices.schema.forEach(function(l){if(l.entityContainer){l.entityContainer.forEach(function(n){if(n.entitySet){n.entitySet.forEach(function(p){if(p.name){v.push(p.name);}});}});}});j=_(v,g.getPath());}}if(j){i.addIssue({severity:c.High,details:"Element "+d.getId()+" "+g.getPath()+" has unresolved bindings.",resolution:"You could try '"+j+"' instead",context:{id:d.getId()}});}}else if(g.getValue&&g.getValue()===g.getPath()){i.addIssue({severity:c.Low,details:"Element "+d.getId()+" "+g.getPath()+" has the same value as the path. Potential Error.",context:{id:d.getId()}});}}});});}});}};},true);};if(!jQuery.sap.isDeclared('sap.ui.core.View.support')){jQuery.sap.declare('sap.ui.core.View.support');jQuery.sap.require('jquery.sap.global');sap.ui.define("sap/ui/core/View.support",["jquery.sap.global","sap/ui/support/library"],function(q,S){"use strict";var C=S.Categories;var a=S.Severity;var A=S.Audiences;return{addRulesToRuleSet:function(r,c){c=c||{};r.addRule({id:"XMLViewWrongNamespace",audiences:[A.Application],categories:[C.Functionality],enabled:true,title:"XML View is not configured with namespace 'sap.ui.core.mvc'",description:"For consistency and proper resource loading, the root node of an XML view must be configured with the namespace 'mvc'",resolution:"Define the XML view as '<core:View ...>' and configure the XML namepspace as 'xmlns:mvc=\"sap.ui.core.mvc\"'",resolutionurls:[{text:"Documentation: Namespaces in XML Views",href:"https://sapui5.hana.ondemand.com/#docs/guide/2421a2c9fa574b2e937461b5313671f0.html"}],check:function(i,o,s){var x=s.getElements().filter(function(b){return b.getMetadata().getName()==="sap.ui.core.mvc.XMLView";});x.forEach(function(X){if(X._xContent.namespaceURI!=="sap.ui.core.mvc"){var v=X.getViewName().split("\.").pop();i.addIssue({severity:a.Medium,details:"The view '"+v+"' ("+X.getId()+") is configured with namespace '"+X._xContent.namespaceURI+"' instead of 'sap.ui.core.mvc'",context:{id:X.getId()}});}});}});r.addRule({id:"XMLViewDefaultNamespace",audiences:[A.Control,A.Application],categories:[C.Performance],enabled:true,title:"Default namespace missing in XML view",description:"If the default namespace is missing, the code is less readable and parsing performance may be slow",resolution:"Set the namespace of the control library that holds most of the controls you use as default namespace (e.g. xmlns=\"sap.m\")",resolutionurls:[{text:"Documentation: Namespaces in XML Views",href:"https://sapui5.hana.ondemand.com/#docs/guide/2421a2c9fa574b2e937461b5313671f0.html"}],check:function(i,o,s){var x=s.getElements().filter(function(b){return b.getMetadata().getName()==="sap.ui.core.mvc.XMLView";});x.forEach(function(X){if(!X._xContent.attributes.getNamedItem("xmlns")){var v=X.getViewName().split("\.").pop();i.addIssue({severity:a.Low,details:"The view '"+v+"' ("+X.getId()+") does not contain a default namespace",context:{id:X.getId()}});}});}});r.addRule({id:"XMLViewUnusedNamespaces",audiences:[A.Control,A.Application],categories:[C.Performance],enabled:true,title:"Unused namespaces in XML view",description:"Namespaces that are declared but not used have a negative impact on performance (and may confuse readers of the code)",resolution:"Remove the unused namespaces from the view definition",resolutionurls:[{text:"Documentation: Namespaces in XML Views",href:"https://sapui5.hana.ondemand.com/#docs/guide/2421a2c9fa574b2e937461b5313671f0.html"}],check:function(I,o,s){var x=s.getElements().filter(function(b){return b.getMetadata().getName()==="sap.ui.core.mvc.XMLView";});x.forEach(function(X){for(var i=0;i<X._xContent.attributes.length;i++){var n=X._xContent.attributes.item(i).name;var l=X._xContent.attributes.item(i).localName;var f=X._xContent.attributes.item(i).value;if(n.match("xmlns:")&&l!=="xmlns:support"&&l!=="mvc"){for(var j=0;j<X._xContent.children.length;j++){var b=X._xContent.children[j].outerHTML;if(!b.match("<"+l+":")){var v=X.getViewName().split("\.").pop();I.addIssue({severity:a.Medium,details:"View '"+v+"' ("+X.getId()+") contains an unused XML namespace '"+l+"' referencing library '"+f+"'",context:{id:X.getId()}});}}}}});}});}};},true);};if(!jQuery.sap.isDeclared('sap.ui.layout.Form.support')){jQuery.sap.declare('sap.ui.layout.Form.support');jQuery.sap.require('jquery.sap.global');sap.ui.define("sap/ui/layout/Form.support",["jquery.sap.global","sap/ui/support/library"],function(q,S){"use strict";var C=S.Categories;var a=S.Severity;var A=S.Audiences;var r=[];function c(R){r.push(R);}function i(o){if(o){var m=o.getMetadata();if(m.getName()=="sap.ui.layout.form.SimpleForm"){return true;}}return false;}function b(o){if(o){var m=o.getMetadata();if(m.getName()=="sap.ui.comp.smartform.SmartForm"||(m.getName()=="sap.m.Panel"&&o.getParent().getMetadata().getName()=="sap.ui.comp.smartform.SmartForm")){return true;}}return false;}c({id:"formResponsiveLayout",audiences:[A.Control],categories:[C.Functionality],enabled:true,minversion:"1.48",title:"Form: Use of ResponsiveLayout",description:"ResponsiveLayout should not be used any longer because of UX requirements",resolution:"Use the ResponsiveGridLayout instead",resolutionurls:[{text:"API Reference: Form",href:"https://sapui5.hana.ondemand.com/#docs/api/symbols/sap.ui.layout.form.Form.html"},{text:"API Reference: SimpleForm",href:"https://sapui5.hana.ondemand.com/#docs/api/symbols/sap.ui.layout.form.SimpleForm.html"},{text:"API Reference: ResponsiveGridLayout",href:"https://sapui5.hana.ondemand.com/#docs/api/symbols/sap.ui.layout.form.ResponsiveGridLayout.html"}],check:function(I,o,s){s.getElementsByClassName("sap.ui.layout.form.Form").forEach(function(f){var l=f.getLayout();if(l&&l.getMetadata().getName()=="sap.ui.layout.form.ResponsiveLayout"){var p=f.getParent();var d;var n="Form";if(i(p)){d=p.getId();n="SimpleForm";}else if(b(p)){return;}else{d=f.getId();}I.addIssue({severity:a.Medium,details:n+" "+d+" uses ResponsiveLayout.",context:{id:d}});}});}});return{addRulesToRuleset:function(R){q.each(r,function(d,o){R.addRule(o);});}};},true);};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.RuleSet')){jQuery.sap.declare('sap.ui.support.supportRules.RuleSet');jQuery.sap.require('jquery.sap.global');sap.ui.define("sap/ui/support/supportRules/RuleSet",["jquery.sap.global","sap/ui/support/supportRules/Storage","sap/ui/support/supportRules/Constants"],function(q,s,c){"use strict";var r={};var R=function(S){S=S||{};if(!S.name){q.sap.log.error("Please provide a name for the RuleSet.");}if(r[S.name]){return r[S.name];}this._oSettings=S;this._mRules={};r[S.name]=this;};R.clearAllRuleSets=function(){r={};};R.prototype.getRules=function(){return this._mRules;};R.prototype.updateRule=function(a,O){var b=this._verifySettingsObject(O,true);if(b==="success"){delete this._mRules[a];this._mRules[O.id]=O;}return b;};R.prototype._verifySettingsObject=function(S,u){if(!S.id){q.sap.log.error("Support rule needs an id.");return"Support rule needs an unique id.";}if(!u&&this._mRules[S.id]){q.sap.log.error("Support rule with the id "+S.id+" already exists.");return"Support rule with the id "+S.id+" already exists.";}if(!S.check){q.sap.log.error("Support rule with the id "+S.id+" needs a check function.");return"Support rule with the id "+S.id+" needs a check function.";}if(!S.title){q.sap.log.error("Support rule with the id "+S.id+" needs a title.");return"Support rule with the id "+S.id+" needs a title.";}if(!S.description){q.sap.log.error("Support rule with the id "+S.id+" needs a description.");return"Support rule with the id "+S.id+" needs a description.";}if(!S.resolution&&(!S.resolutionurls||!S.resolutionurls.length>0)){q.sap.log.error("Support rule with the id "+S.id+" needs either a resolution or resolutionurls or should have a ticket handler function");return"Support rule with the id "+S.id+" needs either a resolution or resolutionurls or should have a ticket handler function";}if(!S.audiences||S.audiences.length===0){q.sap.log.error("Support rule with the id "+S.id+" should have an audience. Applying audience ['Control']");S.audiences=[sap.ui.support.Audiences.Control];}if(S.audiences&&S.audiences.forEach){var i=false,a="";S.audiences.forEach(function(b){if(!sap.ui.support.Audiences[b]){i=true;a=b;}});if(i){q.sap.log.error("Audience "+a+" does not exist. Please use the audiences from sap.ui.support.Audiences");return"Audience "+a+" does not exist. Please use the audiences from sap.ui.support.Audiences";}}if(!S.categories||S.categories.length===0){q.sap.log.error("Support rule with the id "+S.id+" should have a category. Applying category ['Performance']");S.categories=["Performance"];}if(S.categories&&S.categories.forEach){var I=false,C="";S.categories.forEach(function(b){if(!sap.ui.support.Categories[b]){I=true;C=b;}});if(I){q.sap.log.error("Category "+C+" does not exist. Please use the categories from sap.ui.support.Categories");return"Category "+C+" does not exist. Please use the categories from sap.ui.support.Categories";}}return"success";};R.prototype.addRule=function(S){var C=R.versionInfo?R.versionInfo.version:'';var a=S.minversion?S.minversion:'';if(a==='-'){a='';}if(a&&q.sap.Version(C).compareTo(a)<0){return"Rule "+S.id+" should be used with a version >= "+S.minversion;}var b=this._verifySettingsObject(S);if(b==="success"){this._mRules[S.id]=S;S.libName=this._oSettings.name;}return b;};R.addToTempRules=function(l,t){if(t){t.forEach(function(a){var b=a.id;l[c.TEMP_RULESETS_NAME].RuleSet._mRules[b]=a;});}};R.storeSelectionOfRules=function(l){var a=R._extractRulesSettingsToSave(l);s.setSelectedRules(a);};R.loadSelectionOfRules=function(l){var a=s.getSelectedRules();if(!a){return;}for(var i=0;i<l.length;i+=1){var b=l[i].rules;var d=l[i].title;for(var e=0;e<b.length;e+=1){if(a[d]&&a[d].hasOwnProperty(b[e].id)){b[e].selected=a[d][b[e].id].selected;}}}};R._extractRulesSettingsToSave=function(l){var L={};var a;var b=l.length;var d;var e;var f;for(var g=0;g<b;g+=1){e=l[g].title;L[e]={};a=l[g].rules;d=a.length;for(var h=0;h<d;h+=1){f={};f.id=a[h].id;f.selected=a[h].selected;L[e][f.id]=f;}}return L;};return R;},true);};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.ui.controllers.Analysis.controller')){jQuery.sap.declare('sap.ui.support.supportRules.ui.controllers.Analysis.controller');jQuery.sap.require('jquery.sap.global');jQuery.sap.require('sap.ui.core.mvc.Controller');jQuery.sap.require('sap.ui.model.json.JSONModel');jQuery.sap.require('sap.m.Panel');jQuery.sap.require('sap.m.List');jQuery.sap.require('sap.m.ListItemBase');jQuery.sap.require('sap.m.StandardListItem');jQuery.sap.require('sap.m.InputListItem');jQuery.sap.require('sap.m.Button');jQuery.sap.require('sap.m.Toolbar');jQuery.sap.require('sap.m.ToolbarSpacer');jQuery.sap.require('sap.m.Label');jQuery.sap.require('sap.m.MessageToast');sap.ui.define("sap/ui/support/supportRules/ui/controllers/Analysis.controller",["jquery.sap.global","sap/ui/core/mvc/Controller","sap/ui/model/json/JSONModel","sap/m/Panel","sap/m/List","sap/m/ListItemBase","sap/m/StandardListItem","sap/m/InputListItem","sap/m/Button","sap/m/Toolbar","sap/m/ToolbarSpacer","sap/m/Label","sap/m/MessageToast","sap/ui/support/supportRules/WindowCommunicationBus","sap/ui/support/supportRules/WCBChannels","sap/ui/support/supportRules/ui/models/SharedModel","sap/ui/support/supportRules/RuleSerializer","sap/ui/support/supportRules/Constants","sap/ui/support/supportRules/RuleSet","sap/ui/support/supportRules/Storage"],function($,Controller,JSONModel,Panel,List,ListItemBase,StandardListItem,InputListItem,Button,Toolbar,ToolbarSpacer,Label,MessageToast,CommunicationBus,channelNames,SharedModel,RuleSerializer,constants,Ruleset,storage){"use strict";return Controller.extend("sap.ui.support.supportRules.ui.controllers.Analysis",{onInit:function(){this.model=SharedModel;this.setCommunicationSubscriptions();this.initSettingsPopover();CommunicationBus.publish(channelNames.ON_INIT_ANALYSIS_CTRL);this.tempRulesLoaded=false;this.getView().setModel(this.model);this.treeTable=this.getView().byId("ruleList");this.cookie=storage.readPersistenceCookie(constants.COOKIE_NAME);this.persistingSettings=this.model.getProperty("/persistingSettings");},getTemporaryLib:function(){var l=this.model.getProperty("/libraries");for(var i=0;i<l.length;i++){if(l[i].title==constants.TEMP_RULESETS_NAME){return l[i];}}},setCommunicationSubscriptions:function(){CommunicationBus.subscribe(channelNames.UPDATE_SUPPORT_RULES,this.updatesupportRules,this);CommunicationBus.subscribe(channelNames.VERIFY_RULE_CREATE_RESULT,function(d){var r=d.result,n=RuleSerializer.deserialize(d.newRule,true),t=this.getTemporaryLib(),a=this.model.getProperty('/treeViewModel');if(r=="success"){t.rules.push(n);this._syncTreeTableVieModelTempRulesLib(t,a);if(this.persistingSettings){storage.setRules(t.rules);if(this.showRuleCreatedToast){MessageToast.show('Your temporary rule "'+n.id+'" was persisted in the local storage');this.showRuleCreatedToast=false;}}var e=this.model.getProperty("/newEmptyRule");this.model.setProperty("/newRule",jQuery.extend(true,{},e));this.goToRuleProperties();this.model.setProperty("/selectedRule",n);}else{MessageToast.show("Add rule failed because: "+r);}},this);CommunicationBus.subscribe(channelNames.VERIFY_RULE_UPDATE_RESULT,function(d){var r=d.result,u=RuleSerializer.deserialize(d.updateRule,true),t=this;if(r==="success"){var a=this.model.getProperty("/editRuleSource"),b=this.model.getProperty('/treeViewModel');var l=this.model.getProperty('/libraries');l.forEach(function(c,e){if(c.title===constants.TEMP_RULESETS_NAME){c.rules.forEach(function(f,g){if(f.id===a.id){c.rules[g]=u;if(t.persistingSettings){storage.setRules(c.rules);}}});t._syncTreeTableVieModelTempRule(u,b);}});this.model.checkUpdate(true);this.model.setProperty('/selectedRule',u);this.goToRuleProperties();}else{MessageToast.show("Update rule failed because: "+r);}},this);CommunicationBus.subscribe(channelNames.POST_AVAILABLE_LIBRARIES,function(d){this.model.setProperty("/availableLibrariesSet",d.libNames);if(this.loadingFromLoadButton){MessageToast.show("Libraries ruleset loaded");this.loadingFromLoadButton=false;}},this);CommunicationBus.subscribe(channelNames.POST_AVAILABLE_COMPONENTS,function(d){var e=[],m=this.model.getProperty("/executionScopeComponents"),s=storage.getSelectedScopeComponents(),i;for(var c=0;c<d.length;c+=1){e.push({text:d[c]});}if(m&&m.length>0){for(i=0;i<e.length;i++){e[i].selected=this.checkIfComponentIsSelected(e[i],m);}}else if(s&&s.length>0){for(i=0;i<e.length;i++){e[i].selected=this.checkIfComponentIsSelected(e[i],s);}}this.model.setProperty("/executionScopeComponents",e);},this);CommunicationBus.subscribe(channelNames.GET_RULES_MODEL,function(t){this.model.setProperty("/treeViewModel",t);},this);},checkIfComponentIsSelected:function(c,s){for(var i=0;i<s.length;i+=1){if(s[i].text==c.text&&s[i].selected){return true;}}return false;},onAnalyze:function(){var s=this._getSelectedRules(),e=this._getExecutionContext();if(s.length>0){CommunicationBus.publish(channelNames.ON_ANALYZE_REQUEST,{selectedRules:s,executionContext:e});this.model.setProperty("/showProgressIndicator",true);}else{MessageToast.show("Select some rules to be analyzed.");}},initSettingsPopover:function(){this._settingsPopover=sap.ui.xmlfragment("sap.ui.support.supportRules.ui.views.AnalyzeSettings",this);this._settingsPopover.setModel(SharedModel);this.getView().addDependent(this._oPopover);},_getExecutionContext:function(){var c={type:this.model.getProperty("/analyzeContext/key")};if(c.type==="subtree"){c.parentId=this.model.getProperty("/subtreeExecutionContextId");}if(c.type==="components"){var s=sap.ui.getCore().byId("componentsSelectionContainer"),a=s.getContent();c.components=[];a.forEach(function(b){if(b.getSelected()){c.components.push(b.getText());}});}return c;},_getSelectedRules:function(){var s=[],a=this.treeTable.getSelectedIndices(),t=this;a.forEach(function(i){if(t.treeTable.getContextByIndex(i).getObject().id){s.push({libName:t.treeTable.getContextByIndex(i).getObject().libName,ruleId:t.treeTable.getContextByIndex(i).getObject().id});}});return s;},_syncTreeTableVieModelTempRulesLib:function(t,a){var b=0;for(var r in t.rules){for(var i in a){if(a[i].name===constants.TEMP_RULESETS_NAME){a[i][b]={name:t.rules[r].title,description:t.rules[r].description,id:t.rules[r].id,audiences:t.rules[r].audiences,categories:t.rules[r].categories,minversion:t.rules[r].minversion,resolution:t.rules[r].resolution,title:t.rules[r].title,libName:a[i].name,check:t.rules[r].check};}}b++;}},_syncTreeTableVieModelTempRule:function(t,a){var r=this.model.getProperty("/editRuleSource");for(var i in a){if(a[i].name===constants.TEMP_RULESETS_NAME){for(var b in a[i]){if(a[i][b].id===r.id){a[i][b]={name:t.title,description:t.description,id:t.id,audiences:t.audiences,categories:t.categories,minversion:t.minversion,resolution:t.resolution,title:t.title,libName:a[i].name,check:t.check};}}}}},onAnalyzeSettings:function(e){CommunicationBus.publish(channelNames.GET_AVAILABLE_COMPONENTS);this._settingsPopover.openBy(e.getSource());},onContextSelect:function(e){if(e.getParameter("selected")){var s=e.getSource(),r=s.getCustomData()[0].getValue(),a=this.model.getProperty("/executionScopes")[r];this.model.setProperty("/analyzeContext",a);}if(this.cookie){this.persistExecutionScope();}},onExecutionContextChange:function(e){var v=e.getSource().getValue();if(v){this.model.setProperty("/subtreeExecutionContextId",v);}if(this.cookie){this.persistExecutionScope();}},persistExecutionScope:function(){var s={analyzeContext:this.model.getProperty("/analyzeContext"),subtreeExecutionContextId:this.model.getProperty("/subtreeExecutionContextId")};storage.setSelectedContext(s);},onScopeComponentSelect:function(e){var s=this.model.getProperty("/executionScopeComponents");if(this.cookie){storage.setSelectedScopeComponents(s);}},onBeforePopoverOpen:function(){if(this.model.getProperty("/executionScopeComponents").length===0){CommunicationBus.publish(channelNames.GET_AVAILABLE_COMPONENTS);}},createNewRulePress:function(e){var a=this.model.getProperty("/newEmptyRule");this.model.setProperty("/selectedSetPreviewKey","availableRules");this.model.setProperty("/newRule",jQuery.extend(true,{},a));this.goToCreateRule();},goToRuleProperties:function(){var n=this.getView().byId("rulesNavContainer");n.to(this.getView().byId("rulesDisplayPage"),"show");},createRuleString:function(r){if(!r){return'';}var s="{\n",c=0,k=Object.keys(r).length;for(var a in r){var v=r[a];c++;s+="\t";s+=a+": ";if(a==="check"){s+=v.split("\n").join("\n\t");}else{s+=JSON.stringify(v);}if(c<k){s+=",";}s+="\n";}s+="}";return s;},updateRule:function(){var o=this.model.getProperty("/editRuleSource/id"),u=this.model.getProperty("/editRule");if(this.checkFunctionString(u.check)){CommunicationBus.publish(channelNames.VERIFY_UPDATE_RULE,{oldId:o,updateObj:RuleSerializer.serialize(u)});}},updatesupportRules:function(d){d=RuleSerializer.deserialize(d);CommunicationBus.publish(channelNames.REQUEST_RULES_MODEL,d);var l=[],t=this,p=this.model.getProperty("/persistingSettings");for(var i in d){var r=[],a=d[i].ruleset._mRules;for(var j in a){var b=a[j];b.libName=i;b.selected=true;r.push(b);}l.push({title:i,type:"library",rules:r});}var f;if(l[0].rules[0]){f=l[0].rules[0];}else{f=l[1].rules[0];}t.placeTemporaryRulesetAtStart(l);t.model.setProperty("/selectedRuleStringify","");t.model.setProperty("/selectedRule",f);t.model.setProperty("/selectedRuleStringify",t.createRuleString(f));t.model.setProperty("/libraries",l);var c=storage.getRules(),e=t.model.getProperty("/loadingAdditionalRuleSets");if(c&&!e&&!this.tempRulesLoaded){this.tempRulesLoaded=true;c.forEach(function(g){CommunicationBus.publish(channelNames.VERIFY_CREATE_RULE,RuleSerializer.serialize(g));});}t.model.setProperty("/loadingAdditionalRuleSets",false);if(p){var s=storage.getSelectedRules();s.forEach(function(g){t.treeTable.setSelectedIndex(g);});}else{this.treeTable.selectAll();}},placeTemporaryRulesetAtStart:function(l){for(var i=0;i<l.length;i++){var r=l[i];if(r.title===constants.TEMP_RULESETS_NAME){var t=r;l.splice(i,1);l.unshift(t);return;}}},addLinkToRule:function(e){var t=this.model.getProperty("/tempLink"),c=jQuery.extend(true,{},t),a=e.getSource().getProperty("text"),r=a==='Add'?"/newRule":"/editRule",u=this.model.getProperty(r+"/resolutionurls");if(u){u.push(c);}else{this.model.setProperty(r+"/resolutionurls","");u.push(c);}this.model.checkUpdate(true,true);},goToCreateRule:function(){var n=this.getView().byId("rulesNavContainer");n.to(this.getView().byId("rulesCreatePage"),"show");},checkFunctionString:function(functionString){try{eval("var testAsignedVar = "+functionString);}catch(err){MessageToast.show("Your check function contains errors, and can't be evaluated:"+err);return false;}return true;},addNewRule:function(){var n=this.model.getProperty("/newRule");if(this.checkFunctionString(n.check)){this.showRuleCreatedToast=true;CommunicationBus.publish(channelNames.VERIFY_CREATE_RULE,RuleSerializer.serialize(n));}},rulesToolbarITHSelect:function(e){if(e.getParameter("key")==="jsonOutput"){var n=this.model.getProperty("/newRule"),s=this.createRuleString(n);this.model.setProperty("/newRuleStringified",s);}},rulesToolbarEditITHSelect:function(e){if(e.getParameter("key")==="jsonOutput"){var n=this.model.getProperty("/editRule"),s=this.createRuleString(n);this.model.setProperty("/updateRuleStringified",s);}},loadMarkedSupportLibraries:function(){var l=this.getView().byId("availableLibrariesSet"),a=l.getSelectedItems().map(function(i){return i.getTitle();});l.getItems().forEach(function(i){i.setSelected(false);});if(a.length>0){this.loadingFromLoadButton=true;CommunicationBus.publish(channelNames.LOAD_RULESETS,{libNames:a});this.model.setProperty("/loadingAdditionalRuleSets",true);}},onCellClick:function(e){if(e.getParameter("rowBindingContext")){var s=e.getParameter("rowBindingContext").getObject(),a;if(s.id){a=this.getMainModelFromTreeViewModel(s);var b=this.createRuleString(a);this.model.setProperty("/selectedRuleStringify",b);}this.model.setProperty("/selectedRule",a);}},getMainModelFromTreeViewModel:function(s){var a=this.model.getProperty("/libraries"),m=null;a.forEach(function(l,i){a[i].rules.forEach(function(e){if(s.id===e.id){m=e;}});});return m;},duplicateRule:function(e){var p=e.getSource().getBindingContext().getPath(),s=this.getView().getModel().getProperty(p),a=this.getMainModelFromTreeViewModel(s),b=jQuery.extend(true,{},a);this.model.setProperty("/newRule",b);this.model.checkUpdate(true,false);this.goToCreateRule();},editRule:function(e){var p=e.getSource().getBindingContext().getPath(),s=this.getView().getModel().getProperty(p),a=this.getMainModelFromTreeViewModel(s);this.model.setProperty("/editRuleSource",a);this.model.setProperty("/editRule",jQuery.extend(true,{},a));this.model.checkUpdate(true,true);var n=this.getView().byId("rulesNavContainer");n.to(this.getView().byId("ruleUpdatePage"),"show");},deleteTemporaryRule:function(e){var s=this.getObjectOnTreeRow(e),t=this.model.getProperty("/treeViewModel"),m=this.model.getProperty("/libraries"),r=[];m.forEach(function(l,b){if(l.title===constants.TEMP_RULESETS_NAME){l.rules.forEach(function(c,d){if(c.id===s.id){l.rules.splice(d,1);return;}else{r.push(c);}});}});for(var i in t){if(t[i].name===constants.TEMP_RULESETS_NAME){for(var a in t[i]){if(t[i][a].id===s.id){delete t[i][a];}}}}this.model.setProperty("/treeViewModel",t);storage.removeSelectedRules(r);},getObjectOnTreeRow:function(e){var p=e.getSource().getBindingContext().getPath(),s=this.getView().getModel().getProperty(p),l=this.model.getProperty("/libraries");l.forEach(function(a,b){a.rules.forEach(function(r){if(r.id===s.id){s.check=r.check;}});});return s;}});});};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.ui.controllers.Issues.controller')){jQuery.sap.declare('sap.ui.support.supportRules.ui.controllers.Issues.controller');jQuery.sap.require('jquery.sap.global');jQuery.sap.require('sap.ui.core.mvc.Controller');jQuery.sap.require('sap.ui.model.json.JSONModel');sap.ui.define("sap/ui/support/supportRules/ui/controllers/Issues.controller",["jquery.sap.global","sap/ui/core/mvc/Controller","sap/ui/model/json/JSONModel","sap/ui/support/supportRules/WindowCommunicationBus","sap/ui/support/supportRules/ui/models/SharedModel","sap/ui/support/supportRules/ui/external/ElementTree","sap/ui/support/supportRules/IssueManager","sap/ui/support/supportRules/WCBChannels","sap/ui/support/supportRules/ui/models/formatter"],function($,C,J,a,S,E,I,c,f){"use strict";var i={severitytexts:{High:"High",Medium:"Medium",Low:"Low",All:"All Severities"},severitystates:{High:"Error",Medium:"Warning",Low:"None",All:"None"},severityicons:{High:"sap-icon://message-error",Medium:"sap-icon://message-warning",Low:"sap-icon://message-information",All:"sap-icon://multiselect-all"}};return C.extend("sap.ui.support.supportRules.ui.controllers.Issues",{ISSUES_LIMIT:1000,formatter:f,onInit:function(){this.model=S;this.setCommunicationSubscriptions();this.getView().setModel(this.model);this.clearFilters();this._initElementTree();this.treeTable=this.getView().byId("issuesList");this.issueTable=this.getView().byId("issueTable");},setCommunicationSubscriptions:function(){a.subscribe(c.ON_ANALYZE_FINISH,function(d){var t=this;var p={};t.data=d;d.issues.forEach(function(b){if(!b.context||!b.context.id){return;}if(!p[b.context.id]){p[b.context.id]=[b.name];}else{p[b.context.id].push(b.name);}});this.model.setSizeLimit(this.ISSUES_LIMIT);this.model.setProperty("/issues",d.issues);this.model.setProperty('/analyzePressed',true);this.model.setProperty("/issuesCount",this.data.issues.length);this.model.setProperty("/selectedIssue","");this.elementTree.setData({controls:d.elementTree,issuesIds:p});this.clearFilters();},this);a.subscribe(c.GET_ISSUES,function(d){this.structuredIssuesModel=d.groupedIssues;this.model.setProperty("/issues",d.issuesModel);if(d.issuesModel[0]){this._setSelectedRule(d.issuesModel[0][0]);this.treeTable.setSelectedIndex(1);this.issueTable.setSelectedIndex(0);}},this);},_initElementTree:function(){var t=this;this.elementTree=new E(null,{onIssueCountClicked:function(s){t.clearFilters();t.model.setProperty("/elementFilter",s);t.updateIssuesVisibility();},onHoverChanged:function(h){a.publish(c.TREE_ELEMENT_MOUSE_ENTER,h);},onMouseOut:function(){a.publish(c.TREE_ELEMENT_MOUSE_OUT);}});},onAfterRendering:function(){this.elementTree.setContainerId(this.getView().byId("elementTreeContainer").getId());},clearFilters:function(){this.model.setProperty("/severityFilter","All");this.model.setProperty("/categoryFilter","All");this.model.setProperty("/elementFilter","All");this.model.setProperty("/audienceFilter","All");if(this.data){this.model.setProperty("/issues",this.data.issues);this.setToolbarHeight();}this.updateIssuesVisibility();},clearFiltersAndElementSelection:function(){this.clearFilters();this.elementTree.clearSelection();},onIssuePressed:function(e){var s=this.model.getProperty("/selectedIssue");this.elementTree.setSelectedElement(s.context.id,false);},onRowSelectionChanged:function(e){if(e.getParameter("rowContext")){var s=e.getParameter("rowContext").getObject();if(s.type==="rule"){this._setSelectedRule(s);}else{this.model.setProperty("/selectedIssue","");}if(s.issueCount<4){this._setPropertiesOfResponsiveDetailsAndTable("Fixed","inherit");this.model.setProperty("/visibleRowCount",4);}else{this._setPropertiesOfResponsiveDetailsAndTable("Auto","5rem");}}},openDocumentation:function(e){var l=sap.ui.getCore().byId(e.mParameters.id),u=l.getBindingContext().getProperty("href");a.publish(c.OPEN_URL,u);},updateIssuesVisibility:function(){if(this.data){var b=this.data.issues.filter(this.filterIssueListItems,this);a.publish(c.REQUEST_ISSUES,b);this.model.setProperty("/visibleIssuesCount",b.length);}this.setToolbarHeight();},filterIssueListItems:function(b){var s=this.model.getProperty("/severityFilter"),d=b.severity===s||s==='All',e=this.model.getProperty("/categoryFilter"),g=$.inArray(e,b.categories)>-1||e==='All',h=this.model.getProperty("/elementFilter"),j=h===b.context.id||h==='All',k=this.model.getProperty("/audienceFilter"),l=$.inArray(k,b.audiences)>-1||k==='All';return d&&g&&j&&l;},filterSevirityIcon:function(v){return i.severityicons[v];},filterSevirityState:function(v){return i.severitystates[v];},filterSevirityText:function(v){return i.severitytexts[v];},setToolbarHeight:function(){this.model.setProperty("/filterBarHeight","4rem");},onReportPress:function(e){var o=e.getParameter("item"),b=o.getText(),d=this._getReportData();if(b==='View'){a.publish(c.ON_SHOW_REPORT_REQUEST,d);}else{a.publish(c.ON_DOWNLOAD_REPORT_REQUEST,d);}},_getReportData:function(){return{executionScopes:this.model.getProperty("/executionScopes"),executionScopeTitle:this.model.getProperty("/executionScopeTitle"),analysisDurationTitle:this.model.getProperty("/analysisDurationTitle")};},onRowSelection:function(e){if(e.getParameter("rowContext")){var s=e.getParameter("rowContext").getObject();this.elementTree.setSelectedElement(s.context.id,false);this.model.setProperty("/selectedIssue/details",s.details);}},_setSelectedRule:function(s){var b,d;if(this.model.getProperty("/visibleIssuesCount")>0){b=this.structuredIssuesModel[s.ruleLibName][s.ruleId];d=jQuery.extend(true,{},s);d.issues=b;d.resolutionUrls=b[0].resolutionUrls;this.issueTable.setSelectedIndex(0);this.model.setProperty("/selectedIssue/details",d.details);this.model.setProperty("/selectedIssue",d);}else{this.model.setProperty("/selectedIssue","");}},_setPropertiesOfResponsiveDetailsAndTable:function(v,h){this.model.setProperty("/visibleRowCountMode",v);this.model.setProperty("/heightDetailsArea",h);}});});};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.ui.controllers.Main.controller')){jQuery.sap.declare('sap.ui.support.supportRules.ui.controllers.Main.controller');jQuery.sap.require('sap.ui.core.mvc.Controller');jQuery.sap.require('sap.ui.model.json.JSONModel');sap.ui.define("sap/ui/support/supportRules/ui/controllers/Main.controller",["sap/ui/core/mvc/Controller","sap/ui/model/json/JSONModel","sap/ui/support/supportRules/WindowCommunicationBus","sap/ui/support/supportRules/ui/models/SharedModel","sap/ui/support/supportRules/WCBChannels","sap/ui/support/supportRules/Constants","sap/ui/support/supportRules/Storage"],function(C,J,a,S,c,b,s){"use strict";return C.extend("sap.ui.support.supportRules.ui.controllers.Main",{onInit:function(){this.model=S;this.getView().setModel(this.model);this.resizeDown();this.setCommunicationSubscriptions();this.initSettingsPopover();this.hidden=false;this.model.setProperty("/hasNoOpener",window.opener?false:true);this.model.setProperty("/constants",b);this.updateShowButton();this._setContextSettings();},initSettingsPopover:function(){this._settingsPopover=sap.ui.xmlfragment("sap.ui.support.supportRules.ui.views.StorageSettings",this);this._settingsPopover.setModel(S);this.getView().addDependent(this._oPopover);},setCommunicationSubscriptions:function(){a.subscribe(c.ON_ANALYZE_FINISH,function(d){this._clearProcessIndicator();this.ensureOpened();this.model.setProperty("/showProgressIndicator",false);this.model.setProperty("/coreStateChanged",false);this.model.setProperty("/lastAnalysisElapsedTime",d.elapsedTime);this.goToIssues();this.model.setProperty("/analyzedFinish",true);},this);a.subscribe(c.ON_PROGRESS_UPDATE,function(d){var e=d.currentProgress,p=this.getView().byId("progressIndicator");p.setDisplayValue(e+"/"+100);this.model.setProperty("/progress",e);},this);a.subscribe(c.ON_CORE_STATE_CHANGE,function(){this.model.setProperty("/coreStateChanged",true);},this);},resizeUp:function(){a.publish(c.RESIZE_FRAME,{bigger:true});},ensureOpened:function(){a.publish(c.ENSURE_FRAME_OPENED);},resizeDown:function(){a.publish(c.RESIZE_FRAME,{bigger:false});},onPersistedSettingSelect:function(){if(this.model.getProperty("/persistingSettings")){s.createPersistenceCookie(b.COOKIE_NAME,true);this.model.getProperty("/libraries").forEach(function(l){if(l.title==b.TEMP_RULESETS_NAME){s.setRules(l.rules);}});this.persistExecutionScope();}else{s.deletePersistenceCookie(b.COOKIE_NAME);this.deletePersistedData();}},onSettings:function(e){a.publish(c.ENSURE_FRAME_OPENED);var t=this,d=e.getSource();setTimeout(function(){t._settingsPopover.openBy(d);},0);},goToAnalysis:function(e){var n=this.getView().byId("navCon");n.to(this.getView().byId("analysis"),"show");this.ensureOpened();},goToIssues:function(){var n=this.getView().byId("navCon");n.to(this.getView().byId("issues"),"show");this.ensureOpened();},goToWiki:function(){var u,v="",f=sap.ui.getVersionInfo().version,m=jQuery.sap.Version(f).getMajor(),d=jQuery.sap.Version(f).getMinor();if(d%2!==0){d--;}v+=String(m)+String(d);u="https://help.sap.com/viewer/DRAFT/OpenUI5_"+v+"/615d9e4aaa34447fbd4aa5f19dfde9b8.html";window.open(u,'_blank');},setRulesLabel:function(l){var d=0;if(l===null){return"Rules ("+d+")";}else{l.forEach(function(e,f){d+=e.rules.length;});return"Rules ("+d+")";}},updateShowButton:function(){this.getView().byId("sapSTShowButtonBar").setVisible(this.hidden);},toggleHide:function(){this.hidden=!this.hidden;this.updateShowButton();a.publish(c.TOGGLE_FRAME_HIDDEN,this.hidden);},persistExecutionScope:function(){var d={analyzeContext:this.model.getProperty("/analyzeContext"),subtreeExecutionContextId:this.model.getProperty("/subtreeExecutionContextId")},e=this.model.getProperty("/executionScopeComponents");s.setSelectedScopeComponents(e);s.setSelectedContext(d);},deletePersistedData:function(){s.deletePersistenceCookie(b.COOKIE_NAME);this.model.setProperty("/persistingSettings",false);s.removeAllData();},_clearProcessIndicator:function(){var p=this.getView().byId("progressIndicator");p.setDisplayValue("None");this.model.setProperty("/progress",0.1);},_setContextSettings:function(){var d=s.readPersistenceCookie(b.COOKIE_NAME);if(d){this.model.setProperty("/persistingSettings",true);var e=s.getSelectedContext();if(e){this.model.setProperty("/analyzeContext",e.analyzeContext);this.model.setProperty("/subtreeExecutionContextId",e.subtreeExecutionContextId);}else{this.model.setProperty("/analyzeContext",this.model.getProperty("/analyzeContext"));this.model.setProperty("/subtreeExecutionContextId","");}}}});});};if(!jQuery.sap.isDeclared('sap.ui.table.library.support')){jQuery.sap.declare('sap.ui.table.library.support');jQuery.sap.require('jquery.sap.global');jQuery.sap.require('sap.ui.Device');sap.ui.define("sap/ui/table/library.support",["jquery.sap.global","sap/ui/support/library","sap/ui/support/supportRules/RuleSet","./TableHelper.support",'sap/ui/Device'],function(q,S,R,a,D){"use strict";var C=S.Categories,b=S.Severity;var l={name:"sap.ui.table",niceName:"UI5 Table library"};var r=new R(l);function c(o){o.id="gridTable"+o.id;a.addRuleToRuleset(o,r);}function d(f,s,t){var T=a.find(s,true,"sap/ui/table/Table");var e,o;for(var i=0;i<T.length;i++){e=T[i].getColumns();for(var k=0;k<e.length;k++){o=e[k].getTemplate();if(o&&(!t||a.isInstanceOf(o,t))){f(T[i],e[k],o);}}}}c({id:"ContentDensity",categories:[C.Usage],title:"Content Density Usage",description:"Checks whether the content densities 'Cozy', 'Compact' and 'Condensed' are used correctly.",resolution:"Ensure that either only the 'Cozy' or 'Compact' content density is used or the 'Condensed' and 'Compact' content densities in combination are used.",resolutionurls:[a.createDocuRef("Documentation: Content Densities","#docs/guide/e54f729da8e3405fae5e4fe8ae7784c1.html")],check:function(i,o,s){var $=q("html");var e=$.find(".sapUiSizeCozy");var f=$.find(".sapUiSizeCompact");var g=$.find(".sapUiSizeCondensed");function h(j,t,m){var F=false;j.each(function(){if(q(this).closest(t).length){F=true;}});if(F&&m){a.reportIssue(i,m,b.High);}return F;}h(f,".sapUiSizeCozy","'Compact' content density is used within 'Cozy' area.");h(e,".sapUiSizeCompact","'Cozy' content density is used within 'Compact' area.");h(g,".sapUiSizeCozy","'Condensed' content density is used within 'Cozy' area.");h(e,".sapUiSizeCondensed","'Cozy' content density is used within 'Condensed' area.");if(g.length>0){var F=h(g,".sapUiSizeCompact");if(!F){a.reportIssue(i,"'Condensed' content density must be used in combination with 'Compact'.",b.High);}}}});c({id:"AccessibleLabel",categories:[C.Accessibility],title:"Accessible Label",description:"Checks whether 'sap.ui.table.Table' controls have an accessible label.",resolution:"Use the 'title' aggregation or the 'ariaLabelledBy' association of the 'sap.ui.table.Table' control to define a proper accessible labeling.",check:function(I,o,s){var t=a.find(s,true,"sap/ui/table/Table");for(var i=0;i<t.length;i++){if(!t[i].getTitle()&&t[i].getAriaLabelledBy().length==0){a.reportIssue(I,"Table '"+t[i].getId()+"' does not have an accessible label.",b.High,t[i].getId());}}}});c({id:"ColumnTemplateIcon",categories:[C.Accessibility],title:"Column template validation - 'sap.ui.core.Icon'",description:"The 'decorative' property of control 'sap.ui.core.Icon' is set to 'true' although the control is used as column template.",resolution:"Set the 'decorative' property of control 'sap.ui.core.Icon' to 'false' if the control is used as column template.",check:function(i,o,s){d(function(t,e,I){if(!I.isBound("decorative")&&I.getDecorative()){var f=e.getId();a.reportIssue(i,"Column '"+f+"' of table '"+t.getId()+"' uses decorative 'sap.ui.core.Icon' control.",b.High,f);}},s,"sap/ui/core/Icon");}});c({id:"ColumnTemplateTextWrapping",categories:[C.Usage],title:"Column template validation - 'sap.m.Text'",description:"The 'wrapping' property of the control 'sap.m.Text' is set to 'true' although the control is used as a column template.",resolution:"Set the 'wrapping' property of the control 'sap.m.Text' to 'false' if the control is used as a column template.",check:function(i,o,s){d(function(t,e,m){if(!m.isBound("wrapping")&&m.getWrapping()){var f=e.getId();a.reportIssue(i,"Column '"+f+"' of table '"+t.getId()+"' uses an 'sap.m.Text' control with wrapping enabled.",b.High,f);}},s,"sap/m/Text");}});c({id:"AnalyticsNoDeviatingUnits",categories:[C.Bindings],title:"Analytical Binding reports 'No deviating units found...'",description:"The analytical service returns duplicate IDs. This could also lead to many requests because the analytical binding "+"will request the measures without deviating units again and expects to receive just one record, but again gets several ones ...",resolution:"Adjust the service implementation.",check:function(I,o,s){var t=a.find(s,true,"sap/ui/table/AnalyticalTable");var A="NO_DEVIATING_UNITS";var e={};a.checkLogEntries(function(L){if(L.level!=q.sap.log.Level.ERROR&&L.level!=q.sap.log.Level.FATAL){return false;}var i=L.supportInfo;if(i&&i.type==="sap.ui.model.analytics.AnalyticalBinding"&&i.analyticalError===A){return true;}return false;},function(L){var B=L.supportInfo.analyticalBindingId;if(B&&!e[A+"-"+B]){var f;for(var i=0;i<t.length;i++){f=t[i].getBinding("rows");if(f&&f.__supportUID===B){e[A+"-"+B]=true;a.reportIssue(I,"Analytical Binding reports 'No deviating units found...'",b.High,t[i].getId());}}}});}});c({id:"RowHeights",categories:[C.Usage],title:"Row heights",description:"Checks whether the currently visible rows have the expected height.",resolution:"Check whether content densities are correctly used, and only the supported controls are used as column templates, with their"+" wrapping property set to \"false\"",resolutionurls:[a.createDocuRef("Documentation: Content Densities","#docs/guide/e54f729da8e3405fae5e4fe8ae7784c1.html"),a.createDocuRef("Documentation: Supported controls","#docs/guide/148892ff9aea4a18b912829791e38f3e.html"),{text:"SAP Fiori Design Guidelines: Grid Table",href:"https://experience.sap.com/fiori-design-web/grid-table/"}],check:function(I,o,s){var t=a.find(s,true,"sap/ui/table/Table");var v;var A;var e;var f;var g=D.browser.chrome&&window.devicePixelRatio!=1;var u=false;for(var i=0;i<t.length;i++){v=t[i].getRows();e=t[i]._getDefaultRowHeight();for(var j=0;j<v.length;j++){f=v[j].getDomRef();if(f!=null){A=f.getBoundingClientRect().height;if(g){var n=Math.abs(e-A);if(n>1){u=true;}}else if(A!==e){u=true;}if(u){a.reportIssue(I,"The row height was expected to be "+e+"px, but was "+A+"px instead."+" This causes issues with vertical scrolling.",b.High,v[j].getId());break;}}}}}});return{lib:l,ruleset:r};},true);};if(!jQuery.sap.isDeclared('sap.uxap.library.support')){jQuery.sap.declare('sap.uxap.library.support');jQuery.sap.require('jquery.sap.global');sap.ui.define("sap/uxap/library.support",["jquery.sap.global","sap/ui/support/library","sap/ui/support/supportRules/RuleSet","./ObjectPageLayout.support"],function(q,S,R,O){"use strict";var l={name:"sap.uxap",niceName:"ObjectPage library"};var r=new R(l);O.addRulesToRuleset(r);return{lib:l,ruleset:r};},true);};if(!jQuery.sap.isDeclared('sap.m.library.support')){jQuery.sap.declare('sap.m.library.support');jQuery.sap.require('jquery.sap.global');sap.ui.define("sap/m/library.support",["jquery.sap.global","sap/ui/support/library","sap/ui/support/supportRules/RuleSet","./Button.support","./Dialog.support","./Input.support"],function(q,S,R,B,D,I){"use strict";var l={name:"sap.m",niceName:"UI5 Main Library"};var r=new R(l);B.addRulesToRuleset(r);D.addRulesToRuleset(r);I.addRulesToRuleset(r);return{lib:l,ruleset:r};},true);};if(!jQuery.sap.isDeclared('sap.ui.core.library.support')){jQuery.sap.declare('sap.ui.core.library.support');jQuery.sap.require('jquery.sap.global');sap.ui.define("sap/ui/core/library.support",["jquery.sap.global","sap/ui/support/supportRules/RuleSet","./Misc.support","./Config.support","./Model.support","./View.support","./App.support"],function(q,R,M,C,a,V,A){"use strict";var l={name:"sap.ui.core",niceName:"UI5 Core Library"};var r=new R(l);M.addRulesToRuleSet(r);C.addRulesToRuleSet(r);a.addRulesToRuleSet(r);V.addRulesToRuleSet(r,{iNumberOfControlsThreshold:20000});var o=["jQuery.sap.require","$.sap.require","sap.ui.requireSync","jQuery.sap.sjax"];if(q&&q.sap&&q.sap.sjax){o.push("jQuery.sap.syncHead","jQuery.sap.syncGet","jQuery.sap.syncPost","jQuery.sap.syncGetText","jQuery.sap.syncGetJSON");}A.addRulesToRuleSet(r,{aObsoleteFunctionNames:o});return{lib:l,ruleset:r};},true);};if(!jQuery.sap.isDeclared('sap.ui.layout.library.support')){jQuery.sap.declare('sap.ui.layout.library.support');jQuery.sap.require('jquery.sap.global');sap.ui.define("sap/ui/layout/library.support",["jquery.sap.global","sap/ui/support/library","sap/ui/support/supportRules/RuleSet","./Form.support"],function(q,S,R,F){"use strict";var l={name:"sap.ui.layout",niceName:"UI5 Layout Library"};var r=new R(l);F.addRulesToRuleset(r);return{lib:l,ruleset:r};},true);};if(!jQuery.sap.isDeclared('sap.ui.support.supportRules.Main')){jQuery.sap.declare('sap.ui.support.supportRules.Main');jQuery.sap.require('jquery.sap.global');jQuery.sap.require('sap.ui.base.ManagedObject');jQuery.sap.require('sap.ui.model.json.JSONModel');sap.ui.define("sap/ui/support/supportRules/Main",["jquery.sap.global","sap/ui/base/ManagedObject","sap/ui/model/json/JSONModel","sap/ui/support/supportRules/Analyzer","sap/ui/support/supportRules/CoreFacade","sap/ui/support/supportRules/ExecutionScope","sap/ui/support/supportRules/ui/external/Highlighter","sap/ui/support/supportRules/WindowCommunicationBus","sap/ui/support/supportRules/RuleSerializer","sap/ui/support/supportRules/RuleSet","sap/ui/support/supportRules/IssueManager","sap/ui/support/supportRules/report/DataCollector","sap/ui/support/supportRules/WCBChannels","sap/ui/support/supportRules/Constants"],function(q,M,J,A,C,E,H,a,R,b,I,D,c,d){"use strict";var f=null;var m=null;var g='sprt';var h=M.extend("sap.ui.support.Main",{constructor:function(){if(!m){var t=this;this._oCore=null;this._rulesCreated=false;this._mRuleSets={};this._oAnalyzer=new A();t._initTempRulesLib();M.apply(this,arguments);q.sap.support={analyze:function(o,r){return m.analyze(o,r);},getLastAnalysisHistory:function(){var i=this.getAnalysisHistory();if(q.isArray(i)&&i.length>0){return i[i.length-1];}else{return null;}},getAnalysisHistory:function(){if(t._oAnalyzer.running()){return null;}return I.getHistory();},getFormattedAnalysisHistory:function(){if(t._oAnalyzer.running()){return;}return new Promise(function(r,i){sap.ui.require(["sap/ui/support/supportRules/report/AnalysisHistoryFormatter"],function(j){r(j.format(I.getConvertedHistory()));});});}};var e=document.createEvent("CustomEvent");e.initCustomEvent("supportToolLoaded",true,true,{});}else{q.sap.log.warning("Only one support tool allowed");return m;}}});h.prototype._isInIframe=function(){try{return window.self!==window.top;}catch(e){return true;}};h.prototype.startPlugin=function(s){if(this._pluginStarted){return;}this._pluginStarted=true;var t=this;sap.ui.getCore().registerPlugin({startPlugin:function(o){t._supportModeConfig=s=s||o.getConfiguration().getSupportMode();t._setCommunicationSubscriptions();var F=t._isInIframe()&&s.indexOf("frame-force-ui")!==-1;t._oCore=o;t._oDataCollector=new D(o);t._oCoreFacade=C(o);t._oExecutionScope=null;t._createCoreSpies();o.attachLibraryChanged(t._onLibraryChanged,t);if(!s||s.indexOf("silent")===-1||F){sap.ui.require(["sap/ui/support/supportRules/ui/IFrameController"],function(e){f=e;f.injectFrame(s);a.onMessageChecks.push(function(i){return i.origin===f.getFrameOrigin();});a.onMessageChecks.push(function(i){return i.data._frameIdentifier===f.getFrameIdentifier();});a.onMessageChecks.push(function(i){var j=f.getFrameUrl();j=j.replace(/\.\.\//g,'');return i.data._origin.indexOf(j)>-1;});});}else{t._fetchSupportRuleSets();}},stopPlugin:function(){f._stop();t._pluginStarted=false;t._oCore=null;t._oCoreFacade=null;t._oDataCollector=null;t._oExecutionScope=null;t._rulesCreated=false;t._mRuleSets=null;}});};h.prototype._onLibraryChanged=function(e){if(e.getParameter("stereotype")==="library"&&this._rulesCreated){var t=this;this._fetchSupportRuleSets().then(function(){t._fetchNonLoadedRuleSets();});}};h.prototype._createCoreSpies=function(){var t=this,n=500;this._fnDirtyTimeoutHandle=null;var s=function(N){var o=t._oCore[N];t._oCore[N]=function(){o.apply(t._oCore,arguments);clearTimeout(t._fnDirtyTimeoutHandle);t._fnDirtyTimeoutHandle=setTimeout(function(){a.publish(c.ON_CORE_STATE_CHANGE);},n);};};s("registerElement");s("deregisterElement");};h.prototype._setCommunicationSubscriptions=function(){if(this._supportModeConfig.indexOf("silent")<0){a.subscribe(c.VERIFY_CREATE_RULE,function(t){var e=R.deserialize(t),i=this._mRuleSets[d.TEMP_RULESETS_NAME].ruleset,r=i.addRule(e);a.publish(c.VERIFY_RULE_CREATE_RESULT,{result:r,newRule:R.serialize(e)});},this);a.subscribe(c.VERIFY_UPDATE_RULE,function(e){var t=R.deserialize(e.updateObj),i=this._mRuleSets[d.TEMP_RULESETS_NAME].ruleset,r=i.updateRule(e.oldId,t);a.publish(c.VERIFY_RULE_UPDATE_RESULT,{result:r,updateRule:R.serialize(t)});},this);a.subscribe(c.OPEN_URL,function(u){var w=window.open(u,"_blank");w.focus();},this);a.subscribe(c.ON_DOWNLOAD_REPORT_REQUEST,function(r){var e=this._getReportData(r);sap.ui.require(["sap/ui/support/supportRules/report/ReportProvider"],function(i){i.downloadReportZip(e);});},this);a.subscribe(c.HIGHLIGHT_ELEMENT,function(i){var $=sap.ui.getCore().byId(i).$();$.css("background-color","red");},this);a.subscribe(c.TREE_ELEMENT_MOUSE_ENTER,function(e){H.highlight(e);},this);a.subscribe(c.TREE_ELEMENT_MOUSE_OUT,function(){H.hideHighLighter();},this);a.subscribe(c.TOGGLE_FRAME_HIDDEN,function(e){f.toggleHide(e);},this);}a.subscribe(c.GET_AVAILABLE_COMPONENTS,function(){a.publish(c.POST_AVAILABLE_COMPONENTS,Object.keys(this._oCore.mObjects.component));},this);a.subscribe(c.ON_ANALYZE_REQUEST,function(e){this.analyze(e.executionContext,e.selectedRules);},this);a.subscribe(c.ON_INIT_ANALYSIS_CTRL,function(){var o=this._fetchSupportRuleSets(),t=this;o.then(function(){t._fetchNonLoadedRuleSets();});},this);a.subscribe(c.ON_SHOW_REPORT_REQUEST,function(r){var e=this._getReportData(r);sap.ui.require(["sap/ui/support/supportRules/report/ReportProvider"],function(i){i.openReport(e);});},this);a.subscribe(c.LOAD_RULESETS,function(e){var o=this._fetchSupportRuleSets(e.libNames),t=this;o.then(function(){t._fetchNonLoadedRuleSets();});},this);a.subscribe(c.REQUEST_RULES_MODEL,function(e){if(e){a.publish(c.GET_RULES_MODEL,I.getTreeTableViewModel(e));}},this);a.subscribe(c.REQUEST_ISSUES,function(i){if(i){var e=I.groupIssues(i),j=I.getIssuesViewModel(e);a.publish(c.GET_ISSUES,{groupedIssues:e,issuesModel:j});}},this);};h.prototype._getLoadFromSupportOrigin=function(){var l=false;var e=new window.URI(q.sap.getModulePath("sap.ui.core"));var s=new window.URI(q.sap.getModulePath("sap.ui.support"));if(e.protocol()!==s.protocol()||e.host()!==s.host()){l=true;}return l;};h.prototype._fetchLibraryFiles=function(l,p){var e=[],t=this;var s=q.sap.getModulePath("sap.ui.support");var i=s.replace("sap/ui/support","");l.forEach(function(j){var k=j.replace(/\./g,"/");var n=j;var o=t._getLoadFromSupportOrigin();if(o){n+='.'+g;q.sap.registerModulePath(n,i+j.replace(/\./g,"/"));}var r=n+'.internal';var u=i.replace('resources/','')+'test-resources/'+k+'/internal';q.sap.registerModulePath(r,u);if(t._mRuleSets[j]){return;}e.push(new Promise(function(v){try{sap.ui.require([(r).replace(/\./g,"/")+"/library.support"],function(){p(r);v();});}catch(w){v();}}));e.push(new Promise(function(v){try{sap.ui.require([n.replace(/\./g,"/")+"/library.support"],function(){p(n);v();});}catch(w){v();}}));});return e;};h.prototype._createRuleSet=function(l){var L={name:l.name,niceName:l.niceName};var r=new b(L);for(var i=0;i<l.ruleset.length;i++){var e=l.ruleset[i];if(q.isArray(e)){for(var k=0;k<e.length;k++){r.addRule(e[k]);}}else{r.addRule(e);}}return{lib:L,ruleset:r};};h.prototype._fetchSupportRuleSets=function(l){l=l||[];l=l.concat(Object.keys(sap.ui.getCore().getLoadedLibraries()));var t=this;var e=new Promise(function(r){sap.ui.getVersionInfo({async:true}).then(function(v){t._versionInfo=v;b.versionInfo=v;var i=t._fetchLibraryFiles(l,function(j){var n=j.replace("."+g,"").replace(".internal",""),k=q.sap.getObject(j).library.support,o=t._mRuleSets[n];if(k.ruleset instanceof b){if(o){o.ruleset._mRules=q.extend(o.ruleset._mRules,k.ruleset._mRules);}else{o=k;}}else{if(o){o.ruleset._mRules=q.extend(o.ruleset._mRules,t._createRuleSet(k));}else{o=t._createRuleSet(k);}}t._mRuleSets[n]=o;});Promise.all(i).then(function(){t._rulesCreated=true;a.publish(c.UPDATE_SUPPORT_RULES,R.serialize(t._mRuleSets));r();});});});return e;};h.prototype._fetchNonLoadedRuleSets=function(){var l=this._versionInfo.libraries,e=[];var L=l.map(function(j){return j.name;});var i=this._fetchLibraryFiles(L,function(s){s=s.replace("."+g,"").replace(".internal","");if(e.indexOf(s)<0){e.push(s);}});Promise.all(i).then(function(){a.publish(c.POST_AVAILABLE_LIBRARIES,{libNames:e});});};h.prototype._initTempRulesLib=function(){if(this._mRuleSets[d.TEMP_RULESETS_NAME]){return;}this._mRuleSets[d.TEMP_RULESETS_NAME]={lib:{name:d.TEMP_RULESETS_NAME},ruleset:new b({name:d.TEMP_RULESETS_NAME})};};h.prototype.analyze=function(e,r){var t=this;if(this._oAnalyzer&&this._oAnalyzer.running()){return;}if(e&&E.possibleScopes.indexOf(e.type)===-1){q.sap.log.error("Invalid execution scope type. Type must be one of the following: "+E.possibleScopes.join(", "));return;}if(e&&e.selectors){this._mapExecutionScope(e);}e=e||{type:"global"};this._oAnalyzer.reset();this.setExecutionScope(e);if(Array.isArray(r)){if(r.length>0){this._addTasksForSelectedRules(r);}}else if(r&&typeof r==="object"&&r.ruleId&&r.libName){this._addTasksForSelectedRules([r]);}else{this._addTasksForAllRules();}I.clearIssues();return new Promise(function(i){t._oAnalyzer.start(i);});};h.prototype._addTasksForSelectedRules=function(r){var t=this;this._oSelectedRulesIds={};r.forEach(function(e){var l=t._mRuleSets[e.libName],i=l.ruleset.getRules()[e.ruleId];t._oAnalyzer.addTask([i.title],function(o){t._analyzeSupportRule(o);},[i]);t._oSelectedRulesIds[e.ruleId]=true;});};h.prototype._addTasksForAllRules=function(){var t=this;this._oSelectedRulesIds={};Object.keys(t._mRuleSets).map(function(l){var r=t._mRuleSets[l].ruleset.getRules();Object.keys(r).map(function(e){var i=r[e];t._oAnalyzer.addTask([i.title],function(o){t._analyzeSupportRule(o);},[i]);t._oSelectedRulesIds[e]=true;});});};h.prototype.setExecutionScope=function(s){this._oExecutionScope=E(this._oCore,s);};h.prototype._mapExecutionScope=function(e){if(e.type==="subtree"){if(typeof e.selectors==="string"){e.parentId=e.selectors;}else if(Array.isArray(e.selectors)){e.parentId=e.selectors[0];}}else if(e.type==="components"){if(typeof e.selectors==="string"){e.components=[e.selectors];}else if(Array.isArray(e.selectors)){e.components=e.selectors;}}delete e.selectors;};h.prototype._done=function(){var i=I.getIssuesModel(),e=this._createElementTree();a.publish(c.ON_ANALYZE_FINISH,{issues:i,elementTree:e,elapsedTime:this._oAnalyzer.getElapsedTimeString()});I.saveHistory();this._oAnalyzer.resolve();};h.prototype._createElementTree=function(){var e=this._copyElementsStructure(),j=[];this._setContextElementReferences(e);for(var i in e){if(e[i].skip){continue;}j.push(e[i]);}return[{content:j,id:"WEBPAGE",name:"WEBPAGE"}];};h.prototype._setContextElementReferences=function(o){var e=this._oCore.mElements;for(var i in o){var j=o[i],p=e[i]==undefined?undefined:e[i].getParent();if(e[i]instanceof sap.ui.core.ComponentContainer){var k=e[i],l=k.getComponent();if(l){j.content.push(o[l]);o[l].skip=true;}}if(p){var n=p.getId();if(!o[n]){continue;}o[n].content.push(o[i]);o[i].skip=true;}}};h.prototype._copyElementsStructure=function(){var e={},t=this;var j=function(l,n){for(var i in l){if(l.hasOwnProperty(i)){var o=l[i];var r={content:[],id:o.getId(),name:(n==undefined)?o.getMetadata().getName():n};e[o.getId()]=r;}}};j(this._oExecutionScope.getElements());this._oExecutionScope.getElements().forEach(function(i){if(i instanceof sap.ui.core.ComponentContainer){var l=i.getComponent(),n=t._oCore.mObjects.component[l];if(n){j([n],"sap-ui-component");}}});switch(this._oExecutionScope._getType()){case"global":j(this._oCoreFacade.getUIAreas(),"sap-ui-area");j(this._oCoreFacade.getComponents(),"sap-ui-component");break;case"subtree":var p=this._oExecutionScope._getContext().parentId;j([this._oCore.mElements[p]]);break;case"components":var k=this._oExecutionScope._getContext().components;k.forEach(function(i){j([t._oCore.mObjects.component[i]],"sap-ui-component");});break;}return e;};h.prototype._getReportData=function(r){var i=I.groupIssues(I.getIssuesModel()),e=this._mRuleSets,s=this._oSelectedRulesIds;return{issues:i,technical:this._oDataCollector.getTechInfoJSON(),application:this._oDataCollector.getAppInfo(),rules:I.getRulesViewModel(e,s,i),scope:{executionScope:this._oExecutionScope,scopeDisplaySettings:{executionScopes:r.executionScopes,executionScopeTitle:r.executionScopeTitle}},analysisDuration:this._oAnalyzer.getElapsedTimeString(),analysisDurationTitle:r.analysisDurationTitle,name:d.SUPPORT_ASSISTANT_NAME};};h.prototype._analyzeSupportRule=function(r){try{r.check(I.createIssueManagerFacade(r),this._oCoreFacade,this._oExecutionScope);}catch(e){var s="["+d.SUPPORT_ASSISTANT_NAME+"] Error while execution rule \""+r.id+"\": "+e.message;q.sap.log.error(s);}a.publish(c.ON_PROGRESS_UPDATE,{currentProgress:this._oAnalyzer.getProgress()});if(this._iDoneTimer){q.sap.clearDelayedCall(this._iDoneTimer);}this._iDoneTimer=q.sap.delayedCall(100,this,"_done");};var m=new h();return m;},true);};if(!jQuery.sap.isDeclared('sap.ui.support.Bootstrap')){jQuery.sap.declare('sap.ui.support.Bootstrap');jQuery.sap.require('jquery.sap.global');sap.ui.define("sap/ui/support/Bootstrap",["jquery.sap.global","./library","sap/ui/support/supportRules/Main"],function(q,l,M){"use strict";var B={initSupportRules:function(s){if(s[0].toLowerCase()==="true"||s[0].toLowerCase()==="silent"){M.startPlugin(s);if('logSupportInfo'in q.sap.log){q.sap.log.logSupportInfo(true);}}}};return B;});};
  