application-sidebar 1.0.21 → 1.0.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -18,7 +18,7 @@ export class RestApiService {
|
|
|
18
18
|
this.cookie = cookie;
|
|
19
19
|
let domain = window.location.hostname;
|
|
20
20
|
if ((domain.includes('apptest.intentwise.com') || domain.includes('herokuapp') ||
|
|
21
|
-
domain.includes('localhost'))
|
|
21
|
+
domain.includes('localhost')) && !localStorage.getItem('useProd')) {
|
|
22
22
|
this.baseURL = constants.baseStagingURL;
|
|
23
23
|
this.DSPbaseURL = constants.kBaseDspTestApiURL;
|
|
24
24
|
}
|
|
@@ -94,4 +94,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
94
94
|
providedIn: 'root'
|
|
95
95
|
}]
|
|
96
96
|
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.CookieService }]; } });
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdC1hcGkuc2VydmljZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcHBsaWNhdGlvbi1zaWRlYmFyL3NyYy9saWIvc2VydmljZXMvcmVzdC1hcGkuc2VydmljZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRS9ELE9BQU8sRUFBcUIsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7Ozs7QUFLekMsTUFBTSxPQUFPLGNBQWM7SUFPTDtJQUF5QjtJQUxyQyxPQUFPLEdBQVUsU0FBUyxDQUFDLFdBQVcsQ0FBQztJQUN2QyxVQUFVLEdBQVUsU0FBUyxDQUFDLGNBQWMsQ0FBQztJQUM3QyxLQUFLLENBQUs7SUFDVixXQUFXLENBQUM7SUFFcEIsWUFBb0IsSUFBZ0IsRUFBUyxNQUFxQjtRQUE5QyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQVMsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUNoRSxJQUFJLE1BQU0sR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQztRQUN0QyxJQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDO1lBQzdFLE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUM7WUFDaEUsSUFBSSxDQUFDLE9BQU8sR0FBRyxTQUFTLENBQUMsY0FBYyxDQUFDO1lBQ3hDLElBQUksQ0FBQyxV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O1lBQ1osTUFBTSxLQUFLLENBQUM7U0FDZjtJQUNILENBQUM7SUFDTSxnQkFBZ0IsQ0FBQyxrQkFBa0I7UUFDeEMsSUFBSTtZQUVGLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQztpQkFDekMsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLEdBQUcsT0FBTyxHQUFHLENBQUEsQ0FBQyxDQUFDLENBQUMsQ0FDN0IsQ0FBQztTQUNIO1FBQUMsT0FBTyxLQUFLLEVBQUU7WUFDWixNQUFNLEtBQUssQ0FBQztTQUNmO0lBQ0gsQ0FBQzsySEE1RlEsY0FBYzsrSEFBZCxjQUFjLGNBSGIsTUFBTTs7NEZBR1AsY0FBYztrQkFKMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IE9ic2VydmFibGUsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHJldHJ5LCBjYXRjaEVycm9yLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBDb29raWVTZXJ2aWNlIH0gZnJvbSAnbmd4LWNvb2tpZS1zZXJ2aWNlJztcbmltcG9ydCB7IGNvbnN0YW50cyB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcblxuZXhwb3J0IGNsYXNzIFJlc3RBcGlTZXJ2aWNlIHtcblxuICBwcml2YXRlIGJhc2VVUkw6c3RyaW5nID0gY29uc3RhbnRzLmJhc2VQcm9kVVJMO1xuICBwcml2YXRlIERTUGJhc2VVUkw6c3RyaW5nID0gY29uc3RhbnRzLmtCYXNlRHNwQXBpVVJMO1xuICBwcml2YXRlIHRva2VuOmFueTtcbiAgcHJpdmF0ZSBodHRwT3B0aW9ucztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQscHJpdmF0ZSBjb29raWU6IENvb2tpZVNlcnZpY2UpIHsgXG4gICAgbGV0IGRvbWFpbiA9IHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZTtcbiAgICBpZigoZG9tYWluLmluY2x1ZGVzKCdhcHB0ZXN0LmludGVudHdpc2UuY29tJykgfHwgZG9tYWluLmluY2x1ZGVzKCdoZXJva3VhcHAnKSB8fCBcbiAgICBkb21haW4uaW5jbHVkZXMoJ2xvY2FsaG9zdCcpKSAmJiAhbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3VzZVByb2QnKSl7XG4gICAgICB0aGlzLmJhc2VVUkwgPSBjb25zdGFudHMuYmFzZVN0YWdpbmdVUkw7XG4gICAgICB0aGlzLkRTUGJhc2VVUkwgPSBjb25zdGFudHMua0Jhc2VEc3BUZXN0QXBpVVJMO1xuICAgIH1cbiAgICBjb25zdCBpc0Nvb2tpZUV4aXN0czogYm9vbGVhbiA9IHRoaXMuY29va2llLmNoZWNrKCdsb2dnZWRJblVzZXInKTtcblxuICAgIGlmIChpc0Nvb2tpZUV4aXN0cykge1xuICAgICAgICBjb25zdCBsb2dnZWRJblVzZXIgPSBKU09OLnBhcnNlKHRoaXMuY29va2llLmdldCgnbG9nZ2VkSW5Vc2VyJykpO1xuICAgICAgICB0aGlzLnRva2VuID0gbG9nZ2VkSW5Vc2VyLnRva2VuO1xuICAgIH0gXG4gICAgICAgIFxuICAgIHRoaXMuaHR0cE9wdGlvbnMgPSB7XG4gICAgICBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoe1xuICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAnWC1BdXRoLVRva2VuJyA6IHRoaXMudG9rZW5cbiAgICAgIH0pXG4gICAgfSAgXG5cbiAgfVxuXG4gIC8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIENSVUQgTWV0aG9kcyBmb3IgY29uc3VtaW5nIFJFU1RmdWwgQVBJXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuICBnZXQgbWVudURvd25sb2FkVVJMKCl7XG4gICAgbGV0IGRvbWFpbiA9IHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZTtcbiAgICBsZXQgYXBpVVJMID0gY29uc3RhbnRzLlBST0RfTUVOVV9CVUNLRVQrJy9uYXZtZW51Lmpzb24nXG4gICAgaWYoZG9tYWluLmluY2x1ZGVzKCdhcHB0ZXN0LmludGVudHdpc2UuY29tJykgfHwgZG9tYWluLmluY2x1ZGVzKCdoZXJva3VhcHAnKSB8fCBkb21haW4uaW5jbHVkZXMoJ2xvY2FsaG9zdCcpKXtcbiAgICAgIGFwaVVSTCA9IGNvbnN0YW50cy5TVEFHSU5HX01FTlVfQlVDS0VUKycvbmF2bWVudS5qc29uJztcbiAgICB9XG4gICAgcmV0dXJuIGFwaVVSTDtcbiAgfVxuXG4gIC8vIEh0dHAgT3B0aW9uc1xuIFxuXG4gIHB1YmxpYyBnZXRSZWNvbW1lbmRhdGlvbkRhdGEob3JnSWQsIGJ1c2luZXNzSWQsIGFjY291bnRJZCkgOiBPYnNlcnZhYmxlPGFueT57XG4gICAgICAgIGxldCB1cmwgPSB0aGlzLmJhc2VVUkwrICdvcmdhbml6YXRpb24vJyArIG9yZ0lkICsgJy9idXNpbmVzc2dyb3VwLycgKyBidXNpbmVzc0lkICsgJy9hY2NvdW50LycgKyBhY2NvdW50SWQgKycvcmVjb21tZW5kYXRpb24/dmVyc2lvbj12Mic7XG4gICAgICAgIGxldCByZXNwb25zZVR5cGUgPSBudWxsO1xuICAgICAgICBsZXQgbWV0aG9kID0gJ0dFVCc7XG4gICAgICAgIGxldCBib2R5ID0gW107XG5cbiAgICAgICB0aGlzLmh0dHBPcHRpb25zID0ge1xuICAgICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgJ1gtQXV0aC1Ub2tlbicgOiB0aGlzLnRva2VuXG4gICAgICAgICAgfSlcbiAgICAgICAgfSAgXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHVybCwgdGhpcy5odHRwT3B0aW9ucylcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICBtYXAoKHJlcykgPT4geyByZXR1cm4gcmVzIH0pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljICBnZXRTdHJ1Y3R1cmVBUElTdXBwb3J0RGF0YShvcmdhbml6YXRpb25JZCwgYnVzaW5lc3NHcm91cElkLCBhbXNBY2NvdW50SWQpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgbGV0IHVybCA9IHRoaXMuRFNQYmFzZVVSTCArICdvcmdhbml6YXRpb24vJyArIG9yZ2FuaXphdGlvbklkICsgJy9idXNpbmVzc0dyb3VwLycgKyBidXNpbmVzc0dyb3VwSWQgKyAnL2FjY291bnQvJyArIGFtc0FjY291bnRJZCArJy9kc3Avc3RydWN0dXJlYXBpc3VwcG9ydCc7XG5cbiAgICAgICAgdGhpcy5odHRwT3B0aW9ucyA9IHtcbiAgICAgICAgICBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoe1xuICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgICAgICdhdXRodG9rZW4nIDogdGhpcy50b2tlblxuICAgICAgICAgIH0pXG4gICAgICAgIH0gIFxuICAgICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodXJsLCB0aGlzLmh0dHBPcHRpb25zKVxuICAgICAgICAucGlwZShcbiAgICAgICAgICAgIG1hcCgocmVzKSA9PiB7IHJldHVybiByZXMgfSlcbiAgICAgICAgKTtcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICB9XG4gICAgfVxuICAgIHB1YmxpYyBnZXRqc29uTWVudWxpc3RzKGFwcGxpY2F0aW9uRGV0YWlscyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICB0cnkge1xuICAgICAgIFxuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldCh0aGlzLm1lbnVEb3dubG9hZFVSTClcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgbWFwKChyZXMpID0+IHsgcmV0dXJuIHJlcyB9KVxuICAgICAgICApO1xuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICAgIH1cbiAgICB9XG5cblxufSJdfQ==
|
|
@@ -75,7 +75,7 @@ class RestApiService {
|
|
|
75
75
|
this.cookie = cookie;
|
|
76
76
|
let domain = window.location.hostname;
|
|
77
77
|
if ((domain.includes('apptest.intentwise.com') || domain.includes('herokuapp') ||
|
|
78
|
-
domain.includes('localhost'))
|
|
78
|
+
domain.includes('localhost')) && !localStorage.getItem('useProd')) {
|
|
79
79
|
this.baseURL = constants.baseStagingURL;
|
|
80
80
|
this.DSPbaseURL = constants.kBaseDspTestApiURL;
|
|
81
81
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application-sidebar.mjs","sources":["../../../projects/application-sidebar/src/lib/constants.ts","../../../projects/application-sidebar/src/lib/services/rest-api.services.ts","../../../projects/application-sidebar/src/lib/services/url-context.service.ts","../../../projects/application-sidebar/src/lib/translations/translations-en.ts","../../../projects/application-sidebar/src/lib/translations/translations-ja.ts","../../../projects/application-sidebar/src/lib/services/translation.service.ts","../../../projects/application-sidebar/src/lib/services/application-sidebar.service.ts","../../../projects/application-sidebar/src/lib/nav-menu.directive.ts","../../../projects/application-sidebar/src/lib/nav-menus/nav-menus.component.ts","../../../projects/application-sidebar/src/lib/nav-menus/nav-menus.component.html","../../../projects/application-sidebar/src/lib/application-sidebar.component.ts","../../../projects/application-sidebar/src/lib/application-sidebar.template.html","../../../projects/application-sidebar/src/lib/application-sidebar.module.ts","../../../projects/application-sidebar/src/public-api.ts","../../../projects/application-sidebar/src/application-sidebar.ts"],"sourcesContent":["export const constants = {\n baseProdURL:'https://api.intentwise.com/',\n baseStagingURL:'https://apitest.intentwise.com/',\n kBaseDspApiURL: 'https://dspapi.intentwise.com/',\n kBaseDspTestApiURL: 'https://dspapi-test.intentwise.com/',\n STAGING_MENU_BUCKET:'https://s3.us-west-2.amazonaws.com/stagemenu.intentwise.com',\n PROD_MENU_BUCKET:'https://s3.us-west-2.amazonaws.com/menu.intentwise.com',\n}","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable, throwError } from 'rxjs';\nimport { retry, catchError, map } from 'rxjs/operators';\nimport { CookieService } from 'ngx-cookie-service';\nimport { constants } from '../constants';\n@Injectable({\n providedIn: 'root'\n})\n\nexport class RestApiService {\n\n private baseURL:string = constants.baseProdURL;\n private DSPbaseURL:string = constants.kBaseDspApiURL;\n private token:any;\n private httpOptions;\n\n constructor(private http: HttpClient,private cookie: CookieService) { \n let domain = window.location.hostname;\n if((domain.includes('apptest.intentwise.com') || domain.includes('herokuapp') || \n domain.includes('localhost')) || localStorage.getItem('useProd') == \"true\" ){\n this.baseURL = constants.baseStagingURL;\n this.DSPbaseURL = constants.kBaseDspTestApiURL;\n }\n const isCookieExists: boolean = this.cookie.check('loggedInUser');\n\n if (isCookieExists) {\n const loggedInUser = JSON.parse(this.cookie.get('loggedInUser'));\n this.token = loggedInUser.token;\n } \n \n this.httpOptions = {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json',\n 'X-Auth-Token' : this.token\n })\n } \n\n }\n\n /*========================================\n CRUD Methods for consuming RESTful API\n =========================================*/\n\n get menuDownloadURL(){\n let domain = window.location.hostname;\n let apiURL = constants.PROD_MENU_BUCKET+'/navmenu.json'\n if(domain.includes('apptest.intentwise.com') || domain.includes('herokuapp') || domain.includes('localhost')){\n apiURL = constants.STAGING_MENU_BUCKET+'/navmenu.json';\n }\n return apiURL;\n }\n\n // Http Options\n \n\n public getRecommendationData(orgId, businessId, accountId) : Observable<any>{\n let url = this.baseURL+ 'organization/' + orgId + '/businessgroup/' + businessId + '/account/' + accountId +'/recommendation?version=v2';\n let responseType = null;\n let method = 'GET';\n let body = [];\n\n this.httpOptions = {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json',\n 'X-Auth-Token' : this.token\n })\n } \n return this.http.get(url, this.httpOptions)\n .pipe(\n map((res) => { return res })\n );\n }\n\n public getStructureAPISupportData(organizationId, businessGroupId, amsAccountId): Observable<any> {\n try {\n let url = this.DSPbaseURL + 'organization/' + organizationId + '/businessGroup/' + businessGroupId + '/account/' + amsAccountId +'/dsp/structureapisupport';\n\n this.httpOptions = {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json',\n 'authtoken' : this.token\n })\n } \n return this.http.get(url, this.httpOptions)\n .pipe(\n map((res) => { return res })\n );\n } catch (error) {\n throw error;\n }\n }\n public getjsonMenulists(applicationDetails): Observable<any> {\n try {\n \n return this.http.get(this.menuDownloadURL)\n .pipe(\n map((res) => { return res })\n );\n } catch (error) {\n throw error;\n }\n }\n\n\n}","import { Injectable } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport * as momentImported from 'moment'; const moment = momentImported;\n\n@Injectable()\nexport class UrlContextService {\n private queryParams;\n \n\n constructor(private activatedRoute: ActivatedRoute, public router: Router) {\n this.activatedRoute.queryParams.subscribe(params => {\n this.queryParams = params;\n });\n }\n\n public prepareUrlWithQueryParams = function(url, params) {\n if(Object.keys(params).length > 0) {\n url += \"?\";\n for(var key in params) {\n url += key + \"=\" + params[key] + \"&\";\n }\n url = url.replace(/&\\s*$/, \"\");\n }\n return url;\n }\n\n public setDateRangeUrlVal = function(dateRange) {\n if(typeof dateRange == 'object') {\n if(dateRange.value == 'custom') {\n return moment(dateRange.startDate).format('X') + ',' +\n moment(dateRange.endDate).format('X') + ',' +\n moment(dateRange.prevStartDate).format('X') + ',' +\n moment(dateRange.prevEndDate).format('X');\n } else {\n return dateRange.name;\n }\n } else {\n return dateRange;\n }\n }\n\n public validateKeyStroke = function(event) {\n var keystroke;\n console.log(event);\n if(navigator.platform.toUpperCase().indexOf('MAC')>=0) {\n keystroke = 'metaKey';\n } else {\n keystroke = 'ctrlKey';\n }\n\n if(event[keystroke]) return true;\n else return false;\n }\n\n public setUrlAndOpenTab = function(url, params, isRouterLink){\n if(Object.keys(params).length > 0) {\n url = this.prepareUrlWithQueryParams(url, params);\n url += \"&\";\n } else {\n url += \"?\";\n }\n url += 'tid=' + Math.random().toString(36).substring(7) + \"-\" + Math.random().toString(36).substring(7) + \"-\"\n + Math.random().toString(36).substring(7) + \"-\" + Math.random().toString(36).substring(7);\n \n\n if(this.queryParams.hasOwnProperty('useProd')) {\n url += '&useProd='+this.queryParams['useProd'];\n }\n if(isRouterLink){\n console.log(\"New Tab Router Url =\", url);\n this.router.navigate([], { relativeTo: this.activatedRoute, queryParams: this.queryParams, replaceUrl: true}).then(result => { window.open(url, '_blank'); });\n }\n else{\n console.log(\"New Tab Link Url \", `${window.location.origin}/${url}`);\n window.open(`${window.location.origin}/${url}`, '_blank');\n }\n }\n get isDevEnvironment(){\n try{\n if( window.location.href.indexOf('herokuapp') > -1 || window.location.href.indexOf('localhost') > -1 || window.location.href.indexOf('test') > -1){\n if(this.queryParams.hasOwnProperty('useProd') || (localStorage.getItem('useProd') && localStorage.getItem('useProd') !== null)){\n return false;\n }else{\n return true\n }\n }else{\n return false\n }\n }catch(error){\n throw error;\n }\n \n \n }\n}","export const EN_LABELS = {\n \"AMAZON_SPONSORED_ADS\": \"Amazon Sponsored Ads\",\n \"INTENTWISE_ANALYTICS_CLOUD\": \"Intentwise Analytics Cloud\",\n \"INTENTWISE_EXPLORE\": \"Intentwise Explore (AMC)\",\n \"ANALYTICS_CLOUD\": \"Analytics Cloud\",\n \"EXPLORE\": \"Explore (AMC)\",\n \"SHARE_OF_VOICE\": \"Share Of Voice\",\n \"CONTENT_ANALYTICS\": \"Content Analytics\",\n \"AMAZON_DSP\": \"Amazon DSP\",\n \"WALMART\": \"Walmart\",\n \"CRITEO\": \"Criteo\",\n \"INSTACART\": \"Instacart\",\n \"AMAZON_ATTRIBUTION\": \"Amazon Attribution\",\n \"AMAZON_VENDOR_CENTRAL\": \"Amazon Vendor Central\",\n \"AMAZON_SELLER_CENTRAL\": \"Amazon Seller Central\",\n \"GLOBAL_SETTINGS\": \"Global Settings\",\n \"AMAZON_SELLER_ANALYTICS\" : \"Amazon Seller Analytics\",\n \"AMAZON_VENDOR_ANALYTICS\" : \"Amazon Vendor Analytics\",\n \"GETTING_STARTED\": \"Getting Started\",\n \"QUERIES\": \"Queries\",\n \"QUERY_RESULTS\": \"Query Results\",\n \"AUDIENCES\": \"Audiences\",\n \"INSIGHTS\": \"Insights\",\n \"INSTANCES\": \"Instances\",\n \"DASHBOARD_TEMPLATES\": \"Dashboard Templates\",\n\n \"MY_CONNECTIONS\": \"My Connections\",\n \"ANALYTICS_LAB\": \"Analytics Lab\",\n \"SYSTEM_HEALTH\": \"System Health\",\n\n \"ACCOUNT_MANAGEMENT\": \"Account Management\",\n \"BRAND_TERMS\": \"Brand Terms\",\n \"LABELS\": \"Labels\",\n \"SUB_BRANDS\": \"Sub-Brands\",\n \"PRODUCT_META_DATA\": \"Product Meta Data\",\n \"SELLER_ANALYTICS_APP\" : \"Amazon Seller Analytics\",\n \"VENDOR_ANALYTICS_APP\" : \"Amazon Vendor Analytics\",\n\n \"HOURLY_METRICS\": \"Hourly Metrics\",\n \"SPONSORED_PRODUCTS\": \"Sponsored Products\",\n \"SPONSORED_BRANDS\": \"Sponsored Brands\",\n \"SPONSORED_DISPLAY\": \"Sponsored Display\",\n \"CUSTOM_REPORTS\": \"Custom Reports\",\n \"INVENTORY_OVERVIEW\": \"Inventory Overview\",\n \"WHAT_CHANGED\":\"What Changed?\",\n \"SETTINGS\": \"Settings\",\n\n \"ALL_ACCOUNTS\": \"All Accounts\",\n \"USER_SETTINGS\": \"User Settings\",\n \"OVERVIEW\": \"Overview\",\n \"RECOMMENDATIONS\": \"Recommendations\",\n \"CAMPAIGNS\": \"Campaigns\",\n \"AD_GROUPS\": \"Ad Groups\",\n \"KEYWORDS\": \"Keywords\",\n \"PRODUCT_TARGETING\": \"Product Targeting\",\n \"PRODUCTS\": \"Products\",\n \"SEARCH_TERMS\": \"Search Terms\",\n \n \"AMAZON_MARKETING_STREAM\": \"Amazon Marketing Stream\",\n \"RETAIL_ANALYTICS\": \"Retail Analytics\",\n \n \"PLACEMENT\": \"Placement\",\n \"AUTO_TARGETING\": \"Auto Targeting\",\n \n \"PRODUCT_ADS\": \"Product Ads\",\n \"CATEGORY_BENCHMARK\": \"Category Benchmark\",\n \"PRODUCT_AUD_TARGETING\": \"Product/Aud Targeting\",\n \n \"HIGH_LEVEL_METRICS\": \"High Level Metrics\",\n \"ORGANIC_RANKING\": \"Organic Ranking\",\n \"ST_RECOMMENDATIONS\": \"ST Recommendations\",\n \"ASIN_OVERVIEW\": \"ASIN Overview\",\n \"CAMPAIGN_REPORT_DOWNLOAD\": \"Campaign Report Download\",\n \"SC_ORDER_REPORTS\": \"SC Order Reports\",\n \"INVENTORY_FORECAST\": \"Inventory Forecast\",\n \"CONTENT_CHANGE_TRACKER\": \"Content Change Tracker\",\n \"ACCOUNT_VIEW\": \"Account View\",\n \"VENDOR_SALES_AND_AMS\": \"Vendor Sales and AMS\",\n \"DEMAND_AND_FORCAST\": \"Demand and Forcast\",\n \"VENDOR_CHARGE_BACKS\": \"Vendor Charge Backs\",\n \"VENDOR_PRODUCT_MARGIN\": \"Vendor Product Margin\",\n \"SC_TACOS_VIEW\": \"SC Tacos View\",\n \"INTERNAL_DASHBOARD\": \"Internal Dashboard\",\n \"PRODUCT_OVERVIEW_DOWNLOAD\": \"Product Overview Download\",\n \"REVIEW_DETAILS\": \"Review Details\",\n \"SELLER_PRODUCT_PERFORMANCE\": \"Seller Product Performance\",\n \"BUY_BOX_TRACKING\": \"Buy Box Tracking\",\n \"PERFORMANCE_DIAGNOSTICS\": \"Performance Diagnostics\",\n \"PERF_DIAGNOSTICS_DETAIL\": \"Perf Diagnostics Detail\",\n \"POS_NEW_PRODUCTS\": \"POS New Products\",\n \"COMPETITIVE_AD_TRACKING\": \"Competitive Ad Tracking\",\n \n \"ALERTS\": \"Alerts\",\n \"AUTOMATED_RULES\": \"Automated Rules\",\n \"CHANGE_HISTORY\": \"Change History\",\n \"MONTHLY_BUDGET\": \"Monthly Budget\",\n \"CUSTOM_PRODUCT_ATTRIBUTES\": \"Custom Product Attributes\",\n \"PRODUCT_COSTS\": \"Product Costs\"\n}","export const JA_LABELS = {\n \"AMAZON_SPONSORED_ADS\": \"Amazon のスポンサー広告\",\n \"INTENTWISE_ANALYTICS_CLOUD\": \"Intentwise アナリティクス クラウド\",\n \"INTENTWISE_EXPLORE\": \"Intentwise エクスプロア (AMC)\",\n \"ANALYTICS_CLOUD\": \"アナリティクス クラウド\",\n \"EXPLORE\": \"エクスプロア (AMC)\",\n \"SHARE_OF_VOICE\": \"シェア・オブ・ボイス\",\n \"CONTENT_ANALYTICS\": \"コンテンツアナリティクス\",\n \"AMAZON_DSP\": \"Amazon DSP\",\n \"WALMART\": \"ウォルマート\",\n \"CRITEO\": \"クリテオ\",\n \"INSTACART\": \"インスタカート\",\n \"AMAZON_ATTRIBUTION\": \"アマゾンの帰属\",\n \"AMAZON_VENDOR_CENTRAL\": \"アマゾンベンダーセントラル\",\n \"AMAZON_SELLER_CENTRAL\": \"Amazon セラーセントラル\",\n \"GLOBAL_SETTINGS\": \"全体設定\",\n \"AMAZON_SELLER_ANALYTICS\" : \"Amazon セーラーアナリティクス\",\n \"AMAZON_VENDOR_ANALYTICS\" : \"Amazon ベンダーアナリティクス\",\n \"GETTING_STARTED\": \"はじめる\",\n \"QUERIES\": \"クエリ\",\n \"QUERY_RESULTS\": \"クエリ結果\",\n \"AUDIENCES\": \"オーディエンス\",\n \"INSIGHTS\": \"インサイト\",\n \"INSTANCES\": \"インスタンス\",\n \"DASHBOARD_TEMPLATES\": \"ダッシュボードテンプレート\",\n\n \"MY_CONNECTIONS\": \"コネクション\",\n \"ANALYTICS_LAB\": \"アナリティクスラボ\",\n \"SYSTEM_HEALTH\": \"システムヘルス\",\n\n \"ACCOUNT_MANAGEMENT\": \"アカウント管理\",\n \"BRAND_TERMS\": \"ブランドキーワード\",\n \"LABELS\": \"ラベル\",\n \"SUB_BRANDS\": \"サブブランド\",\n \"PRODUCT_META_DATA\": \"製品メタデータ\",\n \"SELLER_ANALYTICS_APP\" : \"Amazon セーラーアナリティクス\",\n \"VENDOR_ANALYTICS_APP\" : \"Amazon ベンダーアナリティクス\",\n\n \"HOURLY_METRICS\": \"時間ごとのメトリクス\",\n \"SPONSORED_PRODUCTS\": \"スポンサープロダクト\",\n \"SPONSORED_BRANDS\": \"スポンサーブランド\",\n \"SPONSORED_DISPLAY\": \"スポンサーディスプレイ\",\n \"CUSTOM_REPORTS\": \"カスタムレポート\",\n \"INVENTORY_OVERVIEW\": \"インベントリの概要\",\n \"WHAT_CHANGED\":\"何が変わったのでしょうか?\",\n \"SETTINGS\": \"設定\",\n \n \"ALL_ACCOUNTS\": \"すべてのアカウント\",\n \"USER_SETTINGS\": \"ユーザー設定\",\n \"OVERVIEW\": \"概要\",\n \"RECOMMENDATIONS\": \"推奨事項\",\n \"CAMPAIGNS\": \"キャンペーン\",\n \"AD_GROUPS\": \"広告グループ\",\n \"KEYWORDS\": \"キーワード\",\n \"PRODUCT_TARGETING\": \"商品ターゲティング\",\n \"PRODUCTS\": \"商品\",\n \"SEARCH_TERMS\": \"検索キーワード\",\n \n \"AMAZON_MARKETING_STREAM\": \"Amazonマーケティングストリーム\",\n \"RETAIL_ANALYTICS\": \"リテールアナリティクス\",\n \n \"PLACEMENT\": \"プレイスメント\",\n \"AUTO_TARGETING\": \"オートターゲティング\",\n \n \"PRODUCT_ADS\": \"商品広告\",\n \"CATEGORY_BENCHMARK\": \"カテゴリベンチマーク\",\n \"PRODUCT_AUD_TARGETING\": \"商品/オーディエンスターゲティング\",\n\n \"HIGH_LEVEL_METRICS\": \"高レベルのメトリクス\",\n \"ORGANIC_RANKING\": \"オーガニックランキング\",\n \"ST_RECOMMENDATIONS\": \"STの推奨事項\",\n \"ASIN_OVERVIEW\": \"ASINの概要\",\n \"CAMPAIGN_REPORT_DOWNLOAD\": \"キャンペーンレポートダウンロード\",\n \"SC_ORDER_REPORTS\": \"SC注文レポート\",\n \"INVENTORY_FORECAST\": \"在庫予測\",\n \"CONTENT_CHANGE_TRACKER\": \"コンテンツ変更トラッカー\",\n \"ACCOUNT_VIEW\": \"アカウントビュー\",\n \"VENDOR_SALES_AND_AMS\": \"ベンダー販売とAMS\",\n \"DEMAND_AND_FORCAST\": \"需要と予測\",\n \"VENDOR_CHARGE_BACKS\": \"ベンダーのチャージバック\",\n \"VENDOR_PRODUCT_MARGIN\": \"ベンダー製品マージン\",\n \"SC_TACOS_VIEW\": \"SCタコスビュー\",\n \"INTERNAL_DASHBOARD\": \"内部ダッシュボード\",\n \"PRODUCT_OVERVIEW_DOWNLOAD\": \"製品概要のダウンロード\",\n \"REVIEW_DETAILS\": \"レビューの詳細\",\n \"SELLER_PRODUCT_PERFORMANCE\": \"販売者の製品パフォーマンス\",\n \"BUY_BOX_TRACKING\": \"購入ボックス追跡\",\n \"PERFORMANCE_DIAGNOSTICS\": \"パフォーマンス診断\",\n \"PERF_DIAGNOSTICS_DETAIL\": \"パフォーマンス診断の詳細\",\n \"POS_NEW_PRODUCTS\": \"POS新製品\",\n \"COMPETITIVE_AD_TRACKING\": \"競合広告の追跡\",\n \n \"ALERTS\": \"アラート\",\n \"AUTOMATED_RULES\": \"自動化されたルール\",\n \"CHANGE_HISTORY\": \"履歴を変更\",\n \"MONTHLY_BUDGET\": \"月々の予算\",\n \"CUSTOM_PRODUCT_ATTRIBUTES\": \"カスタム商品属性\",\n \"PRODUCT_COSTS\": \"商品コスト\",\n}","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, CanLoad, Route, RouterStateSnapshot, UrlSegment, UrlTree } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { EN_LABELS } from '../translations/translations-en';\nimport { JA_LABELS } from '../translations/translations-ja';\nimport { CookieService } from 'ngx-cookie-service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class TranslationService {\n private translation: any;\n constructor(private cookie: CookieService){\n if (this.cookie.get('selectedLanguage') && this.cookie.get('selectedLanguage') == 'ja') {\n this.translation = JA_LABELS;\n } else {\n this.translation = EN_LABELS;\n }\n }\n\n public getLabel(key){\n return this.translation[key];\n }\n public selectedApplication(applicationDetails, headmenu){\n if(applicationDetails && headmenu){\n let siteId = applicationDetails?.sidebarInfo?.siteId ? applicationDetails?.sidebarInfo?.siteId : 1;\n let name = Number(siteId) == 1 ? headmenu?.name : headmenu?.name.replace(/Intentwise/gi, \"\");\n return this.translateName(name) ? this.translateName(name) : name;\n }\n return '';\n }\n public translateName(name){\n let translateName = name;\n if(name.includes('TranslationService')){\n translateName = name.replace(/TranslationService.getLabel/gi,'').replace(/[\\])}[{(]/g, '').replace(/(\"|')/g, \"\");\n }\n return this.translation[translateName] ? this.translation[translateName] : translateName; \n }\n}","import { Injectable } from '@angular/core';\nimport { RestApiService } from './rest-api.services';\nimport {ActivatedRoute } from '@angular/router';\nimport { UrlContextService } from './url-context.service';\nimport { EN_LABELS } from '../translations/translations-en';\nimport { JA_LABELS } from '../translations/translations-ja';\nimport { TranslationService } from './translation.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ApplicationSidebarService {\n\n\tconditions \t\t\t= ['org_user_ctrl', 'visibility_roles', 'visibility_roles_not_in', 'account_ids', 'customer_types_not_in','customer_types','organization_ids', 'organization_ids_not_in', 'account_type', 'account_ids_not_in', 'organization_setting', 'organization_setting_not_in', 'app_spacific_config_check', 'campaign_types', 'incontext_campaign_targeting', 'incontext_campaign_targeting_walmart', 'subscription_types', 'siteIds', 'siteNotIds', 'not_account_type', 'not_account_name', 'disable_readonly_org', 'user_emails', 'hide_for_user', 'app_org_setting','app_org_setting_not_in','ng_app_setting','ng_app_setting_not_in','targetting_types','targetting_types_not_in','hide_for_user'];\n\tMenuList \t\t\t= [];\n\n\tapplicationIds \t\t= [];\n\tenableAllMenusByOrg = [30780]\n\t\n\tappDetails:\tany;\n\tisStructureApiSupport:\tany;\n\tSettingsMenuList: any[];\n\tappNames: string[];\n\tprivate menulists: any;\n\tcontentAppRoutes\t\t\t=['content-insight','content-analytics','content','product-meta-data','brand-terms-settings','labels-settings','sub-brands','sub-brands-mapping','sov-settings' ,'content-settings']\n\tsovAppRoutes\t\t\t\t=['insights','share-of-voice','sov','product-meta-data','brand-terms-settings','labels-settings','sub-brands','sub-brands-mapping','sov-settings' ,'content-settings']\n\tsellerAnalyticsAppRoutes \t=['seller/insights','product-meta-data','brand-terms-settings','labels-settings','sub-brands','sub-brands-mapping','sov-settings' ,'content-settings']\n\tvendorAnalyticsAppRoutes\t=['vendor/insights','product-meta-data','brand-terms-settings','labels-settings','sub-brands','sub-brands-mapping','sov-settings' ,'content-settings']\n\t\n\ttypeStatusConfigs = {\n 'SPONSORED_KEYWORD_BIDS' : true,\n 'SPONSORED_PRODUCT_MANUAL_TARGETING_BIDS' : true,\n 'SPONSORED_PRODUCT_AUTO_TARGETING_BIDS' : true,\n 'SPONSORED_KEYWORD_AUTO' : true,\n 'SPONSORED_KEYWORD' : true,\n 'SP_KEYWORDS_BID_GAP' : false,\n 'SP_PLACEMENT_BID' : false,\n 'SP_TARGETING_TYPE_BREAKDOWN' : false,\n 'SP_MATCH_TYPE_BREAKDOWN' : false,\n 'SP_SB_KEYWORD_PARITY' : true,\n 'HEADLINE_KEYWORD_BIDS' : true,\n 'SB_KEYWORDS_BID_GAP' : false,\n 'SB_MATCH_TYPE_BREAKDOWN' : false,\n 'SB_SP_KEYWORD_PARITY' : true,\n 'NO_KEYWORD_BIDS' : true,\n 'CAMPAIGN_TYPE_BREAKDOWN' : false,\n 'AUTO_TO_MANUAL_ASIN_PARITY' : true,\n 'MANUAL_TO_AUTO_ASIN_PARITY' : true,\n 'COMPETITOR_PRODUCT' : true,\n 'SPONSORED_BRAND_KEYWORD': true\n }\n\n\t\n\n\tconstructor(\n\t\tprivate RestApiService: RestApiService,\n\t\tprivate activatedRoute:ActivatedRoute,\n\t\tprivate translate:TranslationService,\n\t\tprivate urlContextService: UrlContextService) {}\n\n\tgetTypeStatusConfigs(){\n\t\treturn this.typeStatusConfigs;\n\t}\n\tconstructChildMenus(menuItems) {\n if (this.appDetails.listMenus) {\n for (let item of menuItems) {\n if (this.appDetails.appSet) {\n if (item.id.includes(this.appDetails.applicationId)) {\n for (let listMenuItem of this.appDetails.listMenus) {\n if (item.id == listMenuItem.id) {\n item.children = listMenuItem.children;\n }\n }\n }\n }\n else if (item.id == this.appDetails.applicationId) {\n item.children = this.appDetails.listMenus;\n }\n }\n }\n return menuItems;\n }\n\n\tgetMenuList(appDetails, menulists) {\n this.appDetails = appDetails;\n this.MenuList = [];\n let appendChildMenus;\n if (window.location.href.indexOf('herokuapp') > -1 || window.location.href.indexOf('localhost') > -1) {\n appendChildMenus = this.constructChildMenus(menulists);\n }\n else {\n appendChildMenus = menulists;\n }\n appendChildMenus.forEach((menu) => {\n menu.name = this.translate.translateName(menu.name);\n menu.children && menu.children.forEach((childMenu) => {\n childMenu.name = this.translate.translateName(childMenu.name);\n childMenu.children && childMenu.children.forEach((child) => {\n child.name = this.translate.translateName(child.name);\n });\n });\n });\n this.menulists = appendChildMenus.filter(list => list.id !== 'app_global_settings');\n let sortedMenulists = this.menulists.sort((a, b) => (a.order > b.order) ? 1 : -1);\n this.applicationIds = sortedMenulists.map((appId) => appId.id);\n this.appNames = this.applicationIds;\n if((this.appDetails.currentOrganization.organizationId === 10390 ||\n this.appDetails.currentOrganization.organizationId === 10530) &&\n this.appDetails.userInfo.email == \"sreenath@intentwise.com\") {\n this.appNames = this.applicationIds.filter((name) => {\n return (name != 'ads_amazon_content_share_of_voice' && name != 'ads_amazon_content_content_analytics');\n });\n }\n for (let appName of sortedMenulists) {\n if (this.appNames.indexOf(appName.id) >= 0) {\n let list = this.getApplicationMenuItem(appName);\n if (list && list.children != undefined) {\n if (appName.id == 'ads_amazon_dsp') {\n if (list.children && list.children.length > 0) {\n for (let child of list.children) {\n if (!this.isStructureApiSupport && child.id == \"ams_dsp_settings\") {\n child.children = child.children.filter(s_child => s_child.id !== 'ams_dsp_rules');\n }\n }\n }\n this.MenuList.push(list);\n }\n else {\n this.MenuList.push(list);\n }\n }\n }\n else if (appName.type != 'expandable') {\n let list = this.getApplicationMenuItem(appName);\n if (list != undefined) {\n this.MenuList.push(list);\n }\n }\n }\n return this.MenuList;\n }\n\n\tgetApplicationMenuItem(currentMenuItem:any): any {\n\t\tlet menuItem = {\n\t\t\tchildren : []\n\t\t};\n\n\t\tif(currentMenuItem.type != 'expandable'){\n\t\t\tlet allKeys = Object.keys(currentMenuItem);\n\t\t\tconst hasConditionstoCheck = this.conditions.some(condition => allKeys.includes(condition))\n\t\t\tif(hasConditionstoCheck){\n\t\t\t\tlet isMenuAllowed = this.checkAllConditions(currentMenuItem, this.conditions, allKeys);\n\t\t\t\tif(isMenuAllowed){\n\t\t\t\t\tmenuItem = currentMenuItem;\n\t\t\t\t}\n\t\t\t\telse{\n\t\t\t\t\t// console.log('return empty');\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t\telse{\n\t\t\t\tmenuItem = currentMenuItem;\n\t\t\t}\n\t\t}\n\t\telse{\n\t\t\tlet allKeys = Object.keys(currentMenuItem);\n\t\t\tconst hasConditionstoCheck = this.conditions.some(condition => allKeys.includes(condition))\n\t\t\tif(!hasConditionstoCheck || (hasConditionstoCheck && this.checkAllConditions(currentMenuItem, this.conditions, allKeys))) {\n\t\t\t\tObject.keys(currentMenuItem).forEach((key)=>{ \n\t\t\t\t\tif (typeof currentMenuItem[key] != \"object\" ) {\n\t\t\t\t\t\tmenuItem[key] = currentMenuItem[key];\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t\tmenuItem.children = [];\n\t\t\t\tfor(let child of currentMenuItem.children){\n\t\t\t\t\tlet nav_menu = this.getApplicationMenuItem(child);\n\t\t\t\t\tif(nav_menu != null){ \n\t\t\t\t\t\tif(nav_menu.children != undefined){\n\t\t\t\t\t\t\tif(nav_menu.children.length > 0){\n\t\t\t\t\t\t\t\tmenuItem.children.push(nav_menu);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse{\n\t\t\t\t\t\t\tmenuItem.children.push(nav_menu);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}else{\n\t\t\t\treturn;\n\t\t\t}\t\t\t\n\t\t}\n\t\treturn menuItem;\n\t}\n\n\tgetGlobalSettingsMenu(appDetails : any, menulists) {\n\t\tthis.appDetails = appDetails;\t\n\t\tthis.SettingsMenuList = [];\n\t\tlet globalSettingMenus = menulists.filter(list=> list.id == 'app_global_settings')\n\t\tlet GLOBAL_SETTING_LIST_SORTED = globalSettingMenus.sort((a, b) => (a.order > b.order) ? 1 : -1);\n\t\tfor (let appName of GLOBAL_SETTING_LIST_SORTED) {\n\t\t\tif(appName.type == 'expandable'){\n\t\t\t\tlet list = this.getApplicationMenuItem(appName);\n\t\t\t\tif(list && list.children && list.children.length > 0){\n\t\t\t\t\tthis.SettingsMenuList.push(list);\n\t\t\t\t}\t\t\t\t\n\t\t\t}else if(appName.type != 'expandable'){\n\t\t\t\tlet list = this.getApplicationMenuItem(appName);\n\t\t\t\tif(list != undefined){\n\t\t\t\t\tthis.SettingsMenuList.push(list)\n\t\t\t\t}\n\t\t\t}\n\t\t}\t\t\n\t\treturn this.SettingsMenuList;\n\t}\n\n\tcheckAllConditions(currentMenuItem: any, conditions, allKeys: string[]): any {\n\t\tlet includeMenu = false;\n\t\tif((!this.appDetails.currentAccount && currentMenuItem.id == \"ads_overview\" && \n\t\t\t!this.appDetails.currentOrganization['noActiveAccounts'])){\n\t\t\treturn true;\n\t\t}\n\t\telse if(currentMenuItem.id === \"ads_signup_overview\") {\n\t\t\tif(!this.appDetails.currentAccount && this.appDetails.currentOrganization['noActiveAccounts']){\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\telse{\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\tfor(let cond of conditions){\n\t\t\tif(currentMenuItem[cond] != undefined){\n\t\t\t\tswitch(cond){\n\t\t\t\t\tcase 'visibility_roles': { \n\t\t\t\t\t\tincludeMenu = this.checkForRoles(currentMenuItem[cond]);\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\tbreak; \n\t\t\t\t\t} \n\t\t\t\t\tcase 'visibility_roles_not_in': { \n\t\t\t\t\t\tincludeMenu = this.checkForvisibilityRolesNotIn(currentMenuItem[cond]);\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\tbreak; \n\t\t\t\t\t} \n\t\t\t\t\tcase 'disable_readonly_org':{\n\t\t\t\t\t\tincludeMenu = this.disableForOrgwithReadOnly(currentMenuItem[cond]);\n\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'organization_ids' : {\n\t\t\t\t\t\tif(this.appDetails.currentAccount && this.appDetails.currentAccount.organizationId) {\n\t\t\t\t\t\t\tincludeMenu = this.checkForSpecifiedIds(currentMenuItem[cond],currentMenuItem,this.appDetails.currentAccount.organizationId);\t\t\t\t\t\t\t\n\t\t\t\t\t\t} else if(this.appDetails.currentOrganization && this.appDetails.currentOrganization.organizationId) {\n\t\t\t\t\t\t\tincludeMenu = this.checkForSpecifiedIds(currentMenuItem[cond],currentMenuItem,this.appDetails.currentOrganization.organizationId);\t\t\t\t\t\t\t\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tincludeMenu = false;\n\t\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'organization_ids_not_in' : {\n\t\t\t\t\t\tif(this.appDetails.currentAccount && this.appDetails.currentAccount.organizationId) {\n\t\t\t\t\t\t\tincludeMenu = this.checkForSpecifiedIdsNotIn(currentMenuItem[cond],currentMenuItem,this.appDetails.currentAccount.organizationId);\n\t\t\t\t\t\t} else if(this.appDetails.currentOrganization && this.appDetails.currentOrganization.organizationId) {\n\t\t\t\t\t\t\tincludeMenu = this.checkForSpecifiedIdsNotIn(currentMenuItem[cond],currentMenuItem,this.appDetails.currentOrganization.organizationId);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tincludeMenu = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'org_user_ctrl':{\n\t\t\t\t\t\tif(this.appDetails.currentOrganization && this.appDetails.currentOrganization.organizationId) {\n\t\t\t\t\t\t\tincludeMenu = this.checkForOrgWithUserRole(currentMenuItem[cond],currentMenuItem,this.appDetails.currentOrganization.organizationId);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tincludeMenu = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'account_ids' : { \n\t\t\t\t\t\tif(this.appDetails.currentAccount && this.appDetails.currentAccount.amsAccountId) {\n\t\t\t\t\t\t\tincludeMenu = this.checkForSpecifiedIds(currentMenuItem[cond],currentMenuItem,this.appDetails.currentAccount.amsAccountId);\t\t\t\t\t\t\t\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tincludeMenu = false;\n\t\t\t\t\t\t}\n\t\t\t\t\tbreak; \n\t\t\t\t\t}\n\t\t\t\t\tcase 'account_ids_not_in' : {\n\t\t\t\t\t\tincludeMenu = this.checkForSpecifiedAccountIdsNotIn(currentMenuItem[cond],currentMenuItem,this.appDetails.currentAccount.amsAccountId);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\t\t\t\t\t\n\t\t\t\t\tcase 'not_account_name' : {\n\t\t\t\t\t\tif(this.appDetails.currentAccount){\n\t\t\t\t\t\t\tincludeMenu = this.checkForNotAccName(currentMenuItem[cond]);\n\t\t\t\t\t\t}else {\n\t\t\t\t\t\t\tincludeMenu = false;\n\t\t\t\t\t\t}\t\t\t\t\t\t\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'account_type' : { \n\t\t\t\t\t\tif(this.appDetails.currentAccount && this.appDetails.currentAccount.type) {\n\t\t\t\t\t\t\tincludeMenu = this.checkForAccType(currentMenuItem);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tincludeMenu = false;\n\t\t\t\t\t\t}\n\t\t\t\t\tbreak; \n\t\t\t\t\t}\n\t\t\t\t\tcase 'organization_setting' : { \n\t\t\t\t\t\tincludeMenu = this.checkForOrgSettings(currentMenuItem[cond]);\t\t\t\t\t\t\n\t\t\t\t\tbreak; \n\t\t\t\t\t}case 'app_org_setting' : { \n\t\t\t\t\t\tincludeMenu = this.checkForOrgAppSettings(currentMenuItem[cond]);\t\t\t\t\t\t\n\t\t\t\t\tbreak; \n\t\t\t\t\t}\n\t\t\t\t\tcase 'app_org_setting_not_in': {\n\t\t\t\t\t\tincludeMenu = this.checkForOrgAppSettingsNotIn(currentMenuItem[cond]);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'organization_setting_not_in' : { \n\t\t\t\t\t\tincludeMenu = this.checkForNotOrgSettings(currentMenuItem[cond]);\t\t\t\t\t\t\n\t\t\t\t\tbreak; \n\t\t\t\t\t} \n\t\t\t\t\t// TODO : This is temporery solution for Amc spacific org setting check.\n\t\t\t\t\tcase 'app_spacific_config_check': {\n\t\t\t\t\t\tincludeMenu = this.appSpecificConfig(currentMenuItem[cond]);\n\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'siteIds' : { \n\t\t\t\t\t\tincludeMenu = this.checkForSiteIds(currentMenuItem[cond]);\n\t\t\t\t\tbreak; \n\t\t\t\t\t} \n\t\t\t\t\tcase 'siteNotIds' : { \n\t\t\t\t\t\tincludeMenu = this.checkForSiteNotIds(currentMenuItem[cond]);\n\t\t\t\t\tbreak; \n\t\t\t\t\t} \n\t\t\t\t\tcase 'subscription_types' : { \n\t\t\t\t\t\tif(currentMenuItem['account_type'] == undefined){\n\t\t\t\t\t\t\tif(this.appDetails.currentAccount && this.appDetails.currentAccount.subscription) {\n\t\t\t\t\t\t\t\tincludeMenu = this.checkForSubscriptions(currentMenuItem[cond])\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tincludeMenu = false;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}else{\n\t\t\t\t\t\t\tif(this.appDetails.currentAccount && this.appDetails.currentAccount.type) {\n\t\t\t\t\t\t\t\tincludeMenu = this.checkForAccType(currentMenuItem);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tincludeMenu = false;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\tbreak; \n\t\t\t\t\t} \n\t\t\t\t\tcase 'campaign_types' : {\n\t\t\t\t\t\tif(this.appDetails.campaignInContext){\n\t\t\t\t\t\t\tincludeMenu = this.checkForCampaignType(currentMenuItem[cond])\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse{\n\t\t\t\t\t\t\tincludeMenu = true;\n\t\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'targetting_types': {\n\t\t\t\t\t\tif (this.appDetails.campaignInContext) {\n\t\t\t\t\t\t\tincludeMenu = this.checkForTargettingType(currentMenuItem[cond])\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tincludeMenu = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'targetting_types_not_in': {\n\t\t\t\t\t\tif (this.appDetails.campaignInContext) {\n\t\t\t\t\t\t\tincludeMenu = this.checkForNotTargettingType(currentMenuItem[cond])\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tincludeMenu = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'incontext_campaign_targeting' : { \n\t\t\t\t\t\tif(this.appDetails.campaignInContext){\n\t\t\t\t\t\t\tincludeMenu = this.checkForCampaignTargeting(currentMenuItem[cond])\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse{\n\t\t\t\t\t\t\tincludeMenu = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak; \n\t\t\t\t\t}\n\t\t\t\t\tcase 'incontext_campaign_targeting_walmart' : { \n\t\t\t\t\t\tif(this.appDetails.campaignInContextwalmart){\n\t\t\t\t\t\t\tincludeMenu = this.checkForCampaignTargetingWalmart(currentMenuItem[cond])\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse{\n\t\t\t\t\t\t\tincludeMenu = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak; \n\t\t\t\t\t}\n\t\t\t\t\tcase 'user_emails' : { \n\t\t\t\t\t\tincludeMenu = this.authenticateUserMailMenu(currentMenuItem[cond])\n\t\t\t\t\t\tbreak; \n\t\t\t\t\t}\n\t\t\t\t\tcase 'hide_for_user' : {\n\t\t\t\t\t\tincludeMenu = this.checkForHiddenUserRole(currentMenuItem[cond])\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'ng_app_setting': {\n\t\t\t\t\t\tif (!this.appDetails.campaignInContext) {\n\t\t\t\t\t\t\tincludeMenu = this.checkContextSettings(currentMenuItem[cond])\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'ng_app_setting_not_in': {\n\t\t\t\t\t\tincludeMenu = this.checkContextSettingNotIn(currentMenuItem[cond]);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'customer_types': {\n\t\t\t\t\t\tincludeMenu = this.checkCustomerTypeIn(currentMenuItem[cond]);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'customer_types_not_in': {\n\t\t\t\t\t\tincludeMenu = this.checkCustomerTypeNotIn(currentMenuItem[cond]);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\t// default: { \n\t\t\t\t\t// //statements; \n\t\t\t\t\t// break; \n\t\t\t\t\t// } \n\t\t\t\t}\n\t\t\t\tif(!includeMenu){\n\t\t\t\t\treturn false;\n\t\t\t\t}\t\t\t\n\t\t\t}else{\n\t\t\t\tincludeMenu = true;\n\t\t\t}\n\t\t}\n\n\t\treturn includeMenu;\n\t}\n\n\tcheckForNotAccName(possibleValues: any): boolean {\n\t\tif(possibleValues.indexOf(this.appDetails.currentAccount.name) == -1){\n\t\t\treturn true;\n\t\t}\n\t\telse{\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tcheckForCampaignType(possibleValues: any):boolean{\n\t\tif(this.appDetails.campaignInContext && possibleValues.indexOf(this.appDetails.campaignInContext[0].dataType) >= 0){\n\t\t\treturn true;\n\t\t}\n\t\telse{\n\t\t\treturn false;\n\t\t}\n\t}\n\tcheckForTargettingType(possibleValues: any):boolean{\n\t\tvar allow = false;\n\t\tif(this.appDetails.campaignInContext && possibleValues.indexOf(this.appDetails.campaignInContext[0].targetingType) >= 0){\n\t\t\tallow = true;\n\t\t}\n\t\treturn allow;\n\t}\n\tcheckForNotTargettingType(possibleValues: any):boolean{\n\t\tvar allow = true;\n\t\tif(this.appDetails.campaignInContext && possibleValues.indexOf(this.appDetails.campaignInContext[0].targetingType) >= 0){\n\t\t\tallow = false;\n\t\t}\n\t\treturn allow;\n\t}\n\tcheckForCampaignTargeting(possibleValues: any):boolean{\n\t\tif(this.appDetails.campaignInContext && possibleValues.indexOf(this.appDetails.campaignInContext[0].campaignTargeting) >= 0){\n\t\t\treturn true;\n\t\t}\n\t\telse{\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tcheckForCampaignTargetingWalmart(possibleValues: any):boolean{\n\t\tif(this.appDetails.campaignInContextwalmart && possibleValues.indexOf(this.appDetails.campaignInContextwalmart[0].campaignTargeting) >= 0){\n\t\t\treturn true;\n\t\t}\n\t\telse{\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tauthenticateUserMailMenu(possibleValues: any):boolean{\n\t\treturn possibleValues && possibleValues.includes(this.appDetails.userInfo.email);\n\t}\n\n\tcheckForSubscriptions(possibleValues: any): boolean{\n\t\tfor(let settings of this.appDetails.currentAccount.subscription){\n\t\t\tif((possibleValues.indexOf(settings.type) >= 0) && settings.status == \"ACTIVE\"){\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tcheckForSiteIds(possibleValues: any): boolean {\n\t\tif(this.appDetails.sidebarInfo && this.appDetails.sidebarInfo.siteId && possibleValues.includes(Number(this.appDetails.sidebarInfo.siteId))){\n\t\t\treturn true;\n\t\t}\n\t\telse{\n\t\t\treturn false;\n\t\t}\n\t}\n\tcheckForSiteNotIds(possibleValues: any): boolean {\n\t\tif(this.appDetails.sidebarInfo && this.appDetails.sidebarInfo.siteId && possibleValues.includes(Number(this.appDetails.sidebarInfo.siteId))){\n\t\t\treturn false;\n\t\t}\n\t\telse{\n\t\t\treturn true;\n\t\t}\n\t}\n\n\t// TODO : This is temporery solution for Amc spacific org setting check.\n\tappSpecificConfig(possibleValues: Array<String>): boolean {\n\t\ttry {\n\t\t\tconst role = ['SUPER_ADMIN', 'SUPER_ADMIN_READ_ONLY'];\n\t\t\t// Check role condition and org setting is availablity\n\t\t\tif (!role.includes(this.appDetails.userInfo.role) && this.appDetails.orgSettings && this.appDetails.orgSettings.length > 0) {\n\t\t\t\tlet allow = false;\n\n\t\t\t\t// To verify if the org setting is available\n\t\t\t\t\n\t\t\t\tlet keymatched = possibleValues.some((key: String) => {\n\t\t\t\t\treturn this.appDetails.orgSettings.findIndex(function (setting: any) { return key == setting.setting; }) > -1\n\t\t\t\t});\n\n\t\t\t\t// To verify if the org setting is available and enabled/Active\n\n\t\t\t\tlet AllActive = possibleValues.every((key: String) => {\n\t\t\t\t\treturn this.appDetails.orgSettings.findIndex(function (setting: any) { return key == setting.setting && setting.value == \"ACTIVE\"; }) > -1\n\t\t\t\t});\n\n\t\t\t\t// If No org setting is available OR setting is available but with active status\n\t\t\t\tif (!keymatched || AllActive) {\n\t\t\t\t\tallow = true;\n\t\t\t\t}\n\t\t\t\treturn allow;\n\t\t\t} else {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconsole.error(error)\n\t\t}\n\t}\n\n\tcheckForOrgSettings(possibleValues: any): boolean {\n\t\ttry{\n\t\t\tvar allow = false;\n\t\t\tif (this.appDetails.orgSettings && this.appDetails.orgSettings.length > 0) {\n\t\t\t\tallow = this.appDetails.orgSettings.some(function(orgSetting){\n\t\t\t\t\tif(!orgSetting.value || orgSetting.value && orgSetting.value == 'ACTIVE') {\n\t\t\t\t\t\treturn possibleValues.includes(orgSetting.setting);\n\t\t\t\t\t};\n\t\t\t\t})\n\t\t\t\treturn allow;\n\t\t\t} else {\n\t\t\t\treturn allow;\n\t\t\t}\n\t\t}catch(error){\n\t\t\tconsole.error(error)\n\t\t}\n\t}\n\n\tcheckForOrgAppSettings(possibleValues: any): boolean {\n\t\tif(this.appDetails.orgAppSettings){\n\t\t\tfor(let settings of this.appDetails.orgAppSettings){\n\t\t\t\tif(possibleValues.indexOf(settings.type) >= 0 && settings.status == 'ACTIVE'){\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t}else{\n\t\t\treturn false;\n\t\t}\n\t}\n\tcheckForOrgAppSettingsNotIn(possibleValues: any): boolean {\n\t\ttry{\n\t\t\tvar allow = true;\n\t\t\tif (this.appDetails.orgAppSettings && this.appDetails.orgAppSettings.length > 0) {\n\t\t\t\tallow = this.appDetails.orgAppSettings.some((orgAppSetting) => {\n\t\t\t\t\treturn (!possibleValues.includes(orgAppSetting.type) || \n\t\t\t\t\t\t\t(possibleValues.includes(orgAppSetting.type) && \n\t\t\t\t\t\t\torgAppSetting.status && orgAppSetting.status == 'IN_ACTIVE'))\n\t\t\t\t});\n\t\t\t\treturn allow;\n\t\t\t} else {\n\t\t\t\treturn allow;\n\t\t\t}\n\t\t}catch(error){\n\t\t\tconsole.error(error)\n\t\t}\n\t}\n\n\tcheckCustomerTypeIn(possibleValues: any): boolean {\n\t\tif (this.appDetails.currentOrganization.customerType && \n\t\t\tpossibleValues.includes(this.appDetails.currentOrganization.customerType)) {\n\t\t\treturn true;\n\t\t}\n\t\telse {\n\t\t\treturn false;\n\t\t}\n\t}\n\tcheckCustomerTypeNotIn(possibleValues: any): boolean {\n\t\tif (!this.appDetails.currentOrganization.customerType || (this.appDetails.currentOrganization.customerType && \n\t\t\t!possibleValues.includes(this.appDetails.currentOrganization.customerType))) {\n\t\t\treturn true;\n\t\t}\n\t\telse {\n\t\t\treturn false;\n\t\t}\n\t}\n\tcheckForNotOrgSettings(possibleValues: any): boolean {\n\t\tlet allow = true;\n\t\tif(this.appDetails.orgSettings && this.appDetails.orgSettings.length > 0){\n\t\t\tallow = this.appDetails.orgSettings.some(function(orgSetting){\n\t\t\t\treturn (!possibleValues.includes(orgSetting.setting) || \n\t\t\t\t\t(possibleValues.includes(orgSetting.setting) && \n\t\t\t\t\torgSetting.value && orgSetting.value == 'IN_ACTIVE'))\n\t\t\t\t \n\t\t\t});\n\t\t\treturn allow;\n\t\t}else{\n\t\t\treturn allow;\n\t\t}\n\t}\n\t\n\tcheckContextSettings(possibleValues: any): boolean {\n\t\tvar allow = false;\n\t\tif(this.appDetails.ngOrgSettings){\n\t\t\tfor (let item of possibleValues) {\n\t\t\t\tallow = this.appDetails.ngOrgSettings[item];\n\t\t\t\tallow = allow == undefined ? true : allow;\n\t\t\t}\n\t\t}\n\t\treturn allow;\n\t}\n\n\tcheckContextSettingNotIn(possibleValues: any): boolean {\n\t\tvar allow = true;\n\t\tif(this.appDetails.ngOrgSettings){\n\t\t\tfor (let item of possibleValues) {\n\t\t\t\tallow = !this.appDetails.ngOrgSettings[item];\n\t\t\t}\n\t\t}\n\t\treturn allow;\n\t}\n\n\tcheckForAccType(menuItem: any): boolean {\n\t\tif(menuItem['account_type'].indexOf(this.appDetails.currentAccount.type) >= 0){\n\t\t\treturn true;\n\t\t}\n\t\telse{\n\t\t\tif(menuItem['subscription_types']){\n\t\t\t\treturn this.checkForSubscriptions(menuItem['subscription_types'])\n\t\t\t}\n\t\t\telse{\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\n\tcheckForSpecifiedIds(possibleValues: any , currentMenuItem:any , id:number): boolean {\n\t\tif(possibleValues[0].id){\n\t\t\tfor (let item of possibleValues) {\n\t\t\t\tif( item.id === id ){\n\t\t\t\t\tObject.keys(item).forEach((key)=>{ \n\t\t\t\t\t\tif (key != 'id') {\n\t\t\t\t\t\t\tcurrentMenuItem[key] = item[key];\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t\tconsole.log('Link changed to '+currentMenuItem.link+' and route changed to '+currentMenuItem.route);\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\telse {\n\t\t\tif(possibleValues.indexOf(id) >= 0){\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\telse{\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\tcheckForOrgWithUserRole(possibleValues: any , currentMenuItem:any , id:number): boolean {\n\t\tlet allow = true;\n\t\tif (possibleValues && possibleValues.length > 0) {\n\t\t\tvar flagArray = [];\n\t\t\tfor (let item of possibleValues) {\n\t\t\t\tvar allKeys = Object.keys(item);\n\t\t\t\tvar flag = this.checkAllConditions(item, allKeys, allKeys)\n\t\t\t\tflagArray.push(flag);\n\t\t\t}\n\t\t\tallow = flagArray.includes(true) ? true : false;\n\t\t\t\n\t\t}\n\t\treturn allow;\n\t}\n\tcheckForSpecifiedIdsNotIn(possibleValues: any , currentMenuItem:any , id:number): boolean {\n\t\treturn possibleValues.indexOf(id) < 0;\n\t}\n\n\tcheckForSpecifiedAccountIdsNotIn(possibleValues: any , currentMenuItem:any , id:number): boolean {\n\t\treturn possibleValues.indexOf(id) < 0;\n\t}\n\n\tcheckForRoles(possibleValues: any): boolean {\n\t\tif(possibleValues && possibleValues.length > 0){\n\t\t\tif(possibleValues.indexOf(this.appDetails.userInfo.role) >= 0){\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\telse{\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\n\tcheckForvisibilityRolesNotIn(possibleValues: any): boolean {\n\t\tif(possibleValues && possibleValues.length > 0){\n\t\t\tif(possibleValues.indexOf(this.appDetails.userInfo.role) >= 0){\n\t\t\t\treturn false;\n\t\t\t}else{\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\n\tcheckForHiddenUserRole(possibleValues: any): boolean {\n\t\tif(possibleValues && possibleValues.length > 0){\n\t\t\tif(possibleValues.indexOf(this.appDetails.userInfo.role) >= 0 && this.appDetails.userInfo.isHiddenUser){\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\telse{\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\n\tpublic disableForOrgwithReadOnly(possibleValues: any): boolean{\n\t\tif(this.appDetails.userInfo.role === 'READ_ONLY' && possibleValues.indexOf(this.appDetails.currentAccount.organizationId) >= 0){\n\t\t\treturn false;\n\t\t}\n\t\telse{\n\t\t\treturn true;\n\t\t}\n\t}\n\n\tpublic getHostOriginAndNavigate(route , applicationId=undefined) {\n\t\tif (window.location.href.indexOf(route) == -1) {\n\t\t\tthis.activatedRoute.queryParams.subscribe(params => {\n\t\t\t\tif (applicationId) {\n\t\t\t\t\tparams = {...params, ...applicationId};\t\n\t\t\t\t}\n\n\t\t\t\tif (route.indexOf('?') > -1 && route.indexOf('usermgmt') > -1){\n\t\t\t\t\troute = route.split('?')[0];\n\t\t\t\t\tlet newQParam = { usermgmt : true}\n\t\t\t\t\tparams = { ...params , ...newQParam}\n\t\t\t\t}\n\t\t\t\tlet urlToNavigate = this.urlContextService.prepareUrlWithQueryParams(route, params);\n\t\t\t\turlToNavigate = `${window.location.origin}/${urlToNavigate}`\n\t\t\t\t// urlToNavigate = `http://localhost:3000/${urlToNavigate}`\n\t\t\t\tconsole.log('Navigating to - ',urlToNavigate);\n\t\t\t\twindow.open(urlToNavigate, '_self');\n\t\t\t});\n\t\t}\n }\n\t\n\tpublic fetchKeyValue(key: string) {\n\t\tif(this.appDetails && this.appDetails.currentAccount) {\n\t\t\treturn (this.appDetails.currentAccount[key]);\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t\t\n\t}\n\n\tpublic setActiveRecoCount(count:number){\n\t\tthis.appDetails.currentAccount['activeRecommendation'] = count;\n\t}\n\t\n\tpublic isHavingAnyActiveSubs(id,subs,type){\n if(id === 'ads_amazon_attribution' && this.checkSubscriptionActive(subs, type, 'AMS_ATTRIBUTION')) {\n return true;\n } else if(id === 'ads_amazon_dsp' && this.checkSubscriptionActive(subs, type, 'DSP')) {\n return true;\n } else if((id === 'ads_amazon_content') && this.checkSubscriptionActive(subs, type, 'CONTENT')) {\n return true;\n } else if((id === 'ads_instacart') && this.checkSubscriptionActive(subs, type, 'INSTACART')) {\n return true;\n }else if((id === 'ads_criteo') && this.checkSubscriptionActive(subs, type, 'CRITEO')) {\n\t\treturn true;\n\t}else if((id === 'ads_walmart') && this.checkSubscriptionActive(subs, type, 'WALMART')) {\n\t\treturn true;\n\t}else if(id === 'ads_data_platform'|| id === 'amc-platform-web' || id === 'ads_amazon_seller') {\n\t\treturn true;\n\t}else if(id === 'ads_amazon_advertising' || id === 'ads_vendor_sales' || id === 'ads_seller_sales') {\n for(let settings of subs){\n if(settings.type != type && settings.status == \"ACTIVE\"){\n return true;\n }\n }\n return false;\n }\n return false\n \t}\n\n\tpublic checkSubscriptionActive(subs, accType ,subType) {\n\t\tif(subType === accType){\n\t\treturn true;\n\t\t}\n\t\tconst currentTypeSub = subs.filter(subscription => subscription.type === subType);\n\t\tif(currentTypeSub.length === 0) {\n\t\treturn false;\n\t\t}\n\t\tif (currentTypeSub[0].status === 'ACTIVE' || currentTypeSub[0].type === accType) {\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic getApplicationID() {\n\t\tlet urlArray = this.urlContextService.router.url.split('/');\n\t\tlet currentRoute = urlArray[urlArray.length - 1];\n\t\t\n\t\tif(this.contentAppRoutes.indexOf(currentRoute)>-1 ) {\n\t\t\treturn \"ads_amazon_content_content_analytics\";\n\t\t} else if(this.sovAppRoutes.indexOf(currentRoute)>-1) {\n\t\t\treturn \"ads_amazon_content_share_of_voice\";\n\t\t}\n\t}\n}","import { Directive, ElementRef, Input } from '@angular/core';\n\n@Directive({ selector: '[appOffsetTop]'})\nexport class OffsetTopDirective {\n constructor(private _el: ElementRef) { }\n @Input() isActiveItem: boolean;\n get offsetTop(): number { return this._el.nativeElement.offsetTop; }\n}\n\n@Directive({selector: '[appScrollable]'})\nexport class ScrollableDirective {\n constructor(private _el: ElementRef) {}\n set scrollTop(value: number) { this._el.nativeElement.scrollTop = value; }\n}","import { Component, ElementRef, HostBinding, Input, OnInit, QueryList, ViewChild, Output, EventEmitter } from '@angular/core';\nimport { NavMenuItem } from '../nav-menu-item';\nimport {Router,ActivatedRoute } from '@angular/router';\nimport { ApplicationSidebarService } from '../services/application-sidebar.service'\nimport { UrlContextService } from '../services/url-context.service';\nimport { CookieService } from 'ngx-cookie-service';\nimport { MatMenuTrigger } from '@angular/material/menu';\nimport { TranslationService } from '../services/translation.service';\n@Component({\n selector: 'lnc-nav-menus',\n templateUrl: './nav-menus.component.html',\n styleUrls: ['./nav-menus.component.scss']\n})\nexport class NavMenusComponent implements OnInit {\n @Output() menuClicked = new EventEmitter<object>();\n @Input() item: NavMenuItem;\n @Input() applicationId:string;\n @Input() parentMenuId:string;\n @Input() parentPanelId:string;\n @Input() isActiveItem:boolean\n expanded: boolean;\n\n queryParams: any;\n @ViewChild(MatMenuTrigger)\n contextMenu: MatMenuTrigger;\n\n contextMenuPosition = { x: '0px', y: '0px' };\n\n translation: any;\n recCount: any;\n\n constructor(\n public navigation: ApplicationSidebarService, \n private router: Router,\n private activatedRoute:ActivatedRoute,\n private urlContextService: UrlContextService,\n private cookie: CookieService,\n private translate:TranslationService\n ) {\n this.activatedRoute.queryParams.subscribe(params => {\n this.queryParams = Object.assign({}, params);\n });\n\n }\n\n ngOnInit() {\n // @HostBinding('attr.aria-expanded') ariaExpanded = this.expanded;\n }\n\n public hasIcon(item:NavMenuItem){\n return (item.icon != undefined && item.icon != '');\n }\n\n public hasWalmartRecommendation(item:NavMenuItem){\n if(item.id == \"walmart_recommendations\"){\n this.recCount = this.navigation.appDetails.recCount;\n if(this.recCount && this.recCount>0){\n return true;\n } else {\n return false;\n } \n } else {\n return false;\n }\n }\n \n public selectedApplication(name){\n return this.translate.selectedApplication(this.navigation.appDetails, name);\n }\n \n public getSpecifiedValue(key:string){\n return this.navigation.fetchKeyValue(key);\n }\n\n public onSelectMenu(event:any,listMenu:NavMenuItem, appId?:any) {\n var promise = new Promise<void>(async (resolve, reject) => {\n console.log('appId' , this.parentPanelId , this.applicationId);\n // on shift+click open url in new tab along with context params\n if((this.parentPanelId === 'iac_insights' && this.applicationId === 'ads_data_platform') || this.parentMenuId === 'app_global_settings' || appId === 'app_global_settings'){\n if(listMenu.id === 'global_account_mgmt' || listMenu.id === 'iac_insights_user_mgmt'){\n const url = listMenu.route;\n if (this.applicationId == \"ads_amazon_content\") {\n this.applicationId = this.navigation.getApplicationID();\n }\n if(this.urlContextService.validateKeyStroke(event)) {\n this.openInNewTab(url,false,{ appId : this.applicationId})\n resolve();\n }else{\n this.showLoader();\n this.navigation.getHostOriginAndNavigate(url , { appId : this.applicationId});\n resolve();\n }\n }else{\n if (listMenu.route != '') {\n if(this.urlContextService.validateKeyStroke(event)) {\n this.openInNewTab(listMenu.route,true)\n resolve();\n }else{\n console.log(\"Query Params = \" ,this.queryParams);\n this.router.navigate([listMenu.route] , { queryParams : this.queryParams })\n this.menuClicked.emit({activePanel : this.parentPanelId});\n resolve();\n }\n }else{\n alert('no route to navigate');\n resolve();\n }\n }\n }else if(listMenu.defaulturl){\n const url = listMenu.defaulturl;\n if(listMenu.id == \"ads_vendor_sales\" || listMenu.id == 'ads_seller_sales'){\n this.showLoader();\n this.navigation.getHostOriginAndNavigate(url, { appId : listMenu.id});\n resolve();\n }\n if(this.urlContextService.validateKeyStroke(event)) {\n this.openInNewTab(url,false);\n resolve();\n }else{\n this.showLoader();\n this.navigation.getHostOriginAndNavigate(url);\n resolve();\n }\n }else{\n if(listMenu.external_link && listMenu.external_link != ''){\n window.open(`${listMenu.external_link}`, '_blank');\n resolve();\n }\n if((this.parentMenuId.indexOf(this.applicationId) >= 0 && !appId) || (appId && appId.indexOf(this.applicationId) >= 0) ){\n if (listMenu.route != '') {\n if(this.urlContextService.validateKeyStroke(event)) {\n this.openInNewTab(listMenu.route,true)\n resolve();\n }else{\n console.log(\"Length = \" ,this.queryParams);\n if (this.isActiveItem == false) {\n if(Object.keys(this.queryParams).length != 0){\n \n await this.router.navigate([listMenu.route], { queryParams : this.queryParams })\n this.menuClicked.emit({activePanel : this.parentPanelId});\n resolve();\n }\n else{\n await this.router.navigate([listMenu.route])\n this.menuClicked.emit({activePanel : this.parentPanelId});\n resolve();\n }\n } else {\n reject();\n }\n }\n } \n else{\n alert('no route to navigate');\n resolve();\n }\n }else{\n const url = listMenu.link;\n if(this.urlContextService.validateKeyStroke(event)) {\n this.openInNewTab(url,false)\n resolve();\n }\n else{\n this.showLoader();\n this.navigation.getHostOriginAndNavigate(url);\n resolve();\n }\n }\n }\n });\n }\n\n public onContextMenu(event: MouseEvent, item: NavMenuItem) {\n event.preventDefault();\n this.contextMenuPosition.x = event.clientX + 'px';\n this.contextMenuPosition.y = event.clientY + 'px';\n this.contextMenu.menuData = { 'item': item };\n this.contextMenu.menu.focusFirstItem('mouse');\n this.contextMenu.openMenu();\n }\n\n onContextMenuAction(item: NavMenuItem) {\n\n if(this.parentMenuId === 'app_global_settings'){\n if(item.id === 'global_account_mgmt'){\n const url = item.route;\n this.openInNewTab(url,false,{ appId : this.applicationId})\n }\n else if(item.route != '') {\n this.openInNewTab(item.route,true)\n }\n }else{\n if(item.external_link && item.external_link != ''){\n window.open(`${item.external_link}`, '_blank');\n return;\n }\n else if(item.id === 'iac_insights_user_mgmt'){\n const url = item.route.split('?')[0];\n this.openInNewTab(url,false,{ appId : this.applicationId , usermgmt : true})\n }\n else if(this.parentMenuId.indexOf(this.applicationId) >= 0 ){\n if (item.route != '') {\n this.openInNewTab(item.route,true)\n }\n } \n else{\n const url = item.link;\n this.openInNewTab(url,false)\n }\n }\n }\n\n public openInNewTab(link,isRouterLink,applicationId = undefined){\n let dateTitle = this.fetchDateRange();\n let dateRangeVal = this.urlContextService.setDateRangeUrlVal(dateTitle);\n \n if (this.navigation.appDetails.currentAccount == undefined){\n let queryParams = {\n oid : this.navigation.appDetails.currentOrganization.organizationId,\n dr : dateRangeVal,\n }\n if(applicationId){\n queryParams = {...queryParams, ...applicationId}\n }\n this.urlContextService.setUrlAndOpenTab(link,queryParams,isRouterLink);\n return\n } else {\n let queryParams = {\n aid : this.navigation.appDetails.currentAccount.amsAccountId,\n bid : this.navigation.appDetails.currentAccount.businessGroupId,\n oid : this.navigation.appDetails.currentAccount.organizationId,\n dr : dateRangeVal,\n }\n if(applicationId){\n queryParams = {...queryParams, ...applicationId}\n }\n this.urlContextService.setUrlAndOpenTab(link,queryParams,isRouterLink);\n return;\n }\n }\n\n public fetchDateRange(){\n if(this.queryParams.hasOwnProperty('tid') && this.queryParams.hasOwnProperty('dr')){\n return this.queryParams['dr'];\n }else{\n const loggedInUser = JSON.parse(this.cookie.get('loggedInUser'));\n console.log('Logged = ',loggedInUser);\n return loggedInUser.dateRange;\n }\n }\n\n public showLoader(){\n let loader_div=document.getElementById('loader_sov');\n if(loader_div){\n loader_div.style.display = \"block\";\n }\n \n setTimeout(function() {\n if(loader_div){\n loader_div.style.display = \"none\";\n }\n }, 5000);\n }\n\n}\n","<a appOffsetTop class=\"sidemenu-option {{item.style_classes}}\" mat-list-item (click)=\"onSelectMenu($event,item)\"\n *ngIf=\"item.type === 'leaf'\" [ngClass]=\"{'active': isActiveItem}\" (contextmenu)=\"onContextMenu($event, item)\">\n <!-- <span class=\"{{item.id}}_icon\" *ngIf=\"item.id == 'global_account_mgmt'\"></span> -->\n <h3 matLine class=\"sidemenu-text font-color-black navMenus applicationMenu\" [ngClass]=\"{'margin-left-10': item.level == 'two', \n 'margin-left-36': item.level != 'two'}\">\n {{selectedApplication(item)}}\n <span id=\"activeCount\" *ngIf=\"item.countKey && getSpecifiedValue(item.countKey)\" class=\"ng-binding ng-scope\">\n {{ getSpecifiedValue(item.countKey) }}\n </span>\n <!-- <span id=\"activeRecCount\" *ngIf=\"item.name == 'Recommendations' && item.recCount != '' && item.recCount != '0' && item.recCount != null\" class=\"activeRecCount\">{{item.recCount}}</span> -->\n <span *ngIf=\"item.badge\" class=\"badge-text sov-beta-position\" [innerHTML]=\"item.badge\"></span>\n <span id=\"activeRecCount\" class=\"activeRecCount\" *ngIf=\"hasWalmartRecommendation(item)\">{{recCount}}</span> \n </h3>\n</a>\n<div style=\"visibility: hidden; position: fixed\" [style.left]=\"contextMenuPosition.x\"\n [style.top]=\"contextMenuPosition.y\" [matMenuTriggerFor]=\"contextMenu\">\n</div>\n<mat-menu #contextMenu=\"matMenu\">\n <ng-template matMenuContent let-item=\"item\">\n <button mat-menu-item class=\"newTabMenu\"></button>\n <button mat-menu-item (click)=\"onContextMenuAction(item)\" class=\"newTabMenu\" id=\"newTabActionBtn\">Open in new\n tab</button>\n <button mat-menu-item class=\"newTabMenu\"></button>\n </ng-template>\n</mat-menu>\n<mat-divider *ngIf=\"item.type === 'separator'\" class=\"separator\"></mat-divider>","import { ChangeDetectorRef } from '@angular/core';\nimport { Router, RouterEvent, NavigationStart, Route } from '@angular/router';\nimport { Component, OnInit, OnDestroy, Input, ChangeDetectionStrategy, ViewChildren, QueryList, ViewChild } from '@angular/core';\nimport { ApplicationSidebarService } from './services/application-sidebar.service'\nimport { MatSidenav } from '@angular/material/sidenav';\nimport { appDetails } from './app-details'\nimport { OffsetTopDirective, ScrollableDirective } from './nav-menu.directive';\nimport { RestApiService } from './services/rest-api.services'\nimport { NavMenusComponent } from './nav-menus/nav-menus.component'\nimport { CookieService } from 'ngx-cookie-service';\nimport { TranslationService } from './services/translation.service';\nimport { GLOBAL_LIST } from './navmenu1';\n\n@Component({\n selector: 'lnc-navigation-sidebar',\n templateUrl:'./application-sidebar.template.html',\n styleUrls:['./application-sidebar.scss','application-sidebar.theme.scss'],\n // changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ApplicationSidebarComponent implements OnInit, OnDestroy {\n\n @Input() applicationDetails :appDetails;\n\n @Input() sidenav: MatSidenav;\n\n @ViewChildren(OffsetTopDirective) listItems: QueryList<OffsetTopDirective>;\n @ViewChild(ScrollableDirective) list: ScrollableDirective;\n @ViewChild('navMenusComponent') navMenusComponent:NavMenusComponent;\n\n accountName: any;\n activePanel: any;\n navCollapsed:boolean = false;\n oldListItems: QueryList<OffsetTopDirective>;\n isAdminRole: boolean = false;\n adminRoles = ['SUPER_ADMIN','SUPER_ADMIN_READ_ONLY'];\n currentApp: any;\n sideNavStatusSubscription: any;\n myObserver: any;\n expandGlobalSettings: any = false;\n inContextInsightsWLApp: boolean;\n\n // isGlobalSettingsMenuActive:boolean = false\n\n constructor(\n public navigation: ApplicationSidebarService,\n private router: Router,\n private RestApiService: RestApiService,\n private cookie: CookieService,\n private cdref: ChangeDetectorRef,\n private translation:TranslationService\n ) {\n this.myObserver = this.router.events.subscribe((event) => {\n if (event instanceof NavigationStart) {\n this.expandGlobalSettings = this.router.getCurrentNavigation().extras.state && this.router.getCurrentNavigation().extras.state.expandPanel; \n }\n });\n }\n\n panelOpenState = false;\n mainPanelOpenState = false;\n public prevActiveHeadMenu;\n public toDisplayApplications = [];\n public toDisplayGlobalSettingsMenu: any[];\n public errorMsg:string;\n\n\n public ngOnInit(): void {\n if(this.applicationDetails['userInfo']){\n let userRole = this.applicationDetails['userInfo'].role;\n this.isAdminRole = this.adminRoles.indexOf(userRole) > -1 ? true : false;\n }\n this.calculateLeftnavStatus();\n // const configs = this.router.config;\n // for(let config of configs){\n // if(config.children){\n // for(let child of config.children){\n // child.canActivate = [CanLoadGuard]\n // }\n // }\n // }\n // this.router.resetConfig(configs);\n this.checkApplicationDetails(this.applicationDetails);\n }\n\n calculateLeftnavStatus(){\n if(this.sidenav && this.sidenav.openedChange){\n let status = sessionStorage.getItem('leftNavOpenStatus');\n this.navCollapsed = status && status == 'false' ? false : true;\n this.sidenav.opened = status && status == 'false' ? false : true;\n this.sideNavStatusSubscription = this.sidenav.openedChange.subscribe((status)=>{\n sessionStorage.setItem('leftNavOpenStatus',JSON.stringify(status));\n this.navCollapsed = status;\n this.sidenav.opened = status;\n });\n }\n }\n\n public checkApplicationDetails(applicationDetails: appDetails) {\n this.errorMsg = '';\n if(applicationDetails.applicationId=='ads_amazon_dsp'){\n this.getStructureAPISupportData(applicationDetails.currentAccount);\n }else{\n this.createAppDetails(applicationDetails)\n }\n }\n\n public createAppDetails(applicationDetails: appDetails){\n this.createNavigationSideBar(this.applicationDetails);\n // if(this.applicationDetails.currentAccount){\n // this.getActiveRecoCount(this.applicationDetails.currentAccount);\n // }\n }\n\n public createNavigationSideBar(applicationDetails: appDetails) {\n this.RestApiService.getjsonMenulists(applicationDetails).subscribe((menulists: any) => {\n // let menulists = GLOBAL_LIST\n this.toDisplayApplications = this.navigation.getMenuList(applicationDetails, menulists);\n this.toDisplayGlobalSettingsMenu = this.navigation.getGlobalSettingsMenu(applicationDetails, menulists);\n this.expandCurrentMenuOnly(applicationDetails, false);\n this.expandChildMenuOnly(this.toDisplayGlobalSettingsMenu);\n this.checkForRedirection(this.toDisplayApplications,this.toDisplayGlobalSettingsMenu,applicationDetails);\n console.log(this.toDisplayApplications , this.toDisplayGlobalSettingsMenu);\n this.scrollToActiveMenu();\n this.setMenuList(applicationDetails.applicationId,this.toDisplayApplications);\n this.inContextInsightsWLApp = this.hideMenuForWL();\n })\n }\n\n private setMenuList(appId,menuList){\n var appDetails:any = new Object();\n appDetails.appicationId = appId;\n appDetails.menuList = menuList.find((menu)=>{ return menu.id == appId})\n localStorage.setItem('appDetails',JSON.stringify(appDetails));\n }\n\n public menuClicked(obj: any) {\n this.expandCurrentMenuOnly(this.applicationDetails, true);\n this.expandChildMenuOnly(this.toDisplayGlobalSettingsMenu);\n if(obj) {\n this.activePanel = obj.activePanel;\n }\n }\n \n public expandChildMenuOnly(toDisplayGlobalSettingsMenu) {\n setTimeout(()=>{\n // this.isGlobalSettingsMenuActive = false;\n let urlArray = this.router.url.split('/');\n let routeUrl = urlArray[urlArray.length - 1];\n let currentRoute = routeUrl.split('?')[0];\n if(toDisplayGlobalSettingsMenu && toDisplayGlobalSettingsMenu.length) {\n toDisplayGlobalSettingsMenu[0].panelOpenState = false;\n if(toDisplayGlobalSettingsMenu[0].children && toDisplayGlobalSettingsMenu[0].children.length){\n for(let menu of toDisplayGlobalSettingsMenu[0].children){\n if(menu.route==currentRoute){\n toDisplayGlobalSettingsMenu[0].panelOpenState = true;\n // this.isGlobalSettingsMenuActive = true;\n break;\n }\n }\n }\n }\n }, 100)\n \n }\n\n public expandCurrentMenuOnly(applicationDetails, onMenuClicked) {\n for(let headMenu of this.toDisplayApplications) {\n headMenu.panelOpenState = false;\n }\n \n for(let headMenu of this.toDisplayApplications) {\n if(headMenu.id == applicationDetails.applicationId) {\n headMenu.panelOpenState = true;\n this.currentApp = headMenu;\n } else if(headMenu.id.indexOf(applicationDetails.applicationId) > -1) {\n headMenu.panelOpenState = false;\n\n let urlArray = this.router.url.split('/');\n let routeUrl = urlArray[urlArray.length - 1];\n if((headMenu.id== \"ads_amazon_seller_seller_analytics\" || headMenu.id== \"ads_amazon_seller_vendor_analytics\") && urlArray.length >2){\n urlArray= urlArray.slice(urlArray.length-2);\n routeUrl= urlArray.join('/');\n }\n let currentRoute = routeUrl.split('?')[0];\n if(headMenu.id == \"ads_amazon_content_content_analytics\" && this.navigation.contentAppRoutes.indexOf(currentRoute)>-1 ) {\n headMenu.panelOpenState = true;\n this.currentApp = headMenu;\n } else if(headMenu.id == \"ads_amazon_content_share_of_voice\" && this.navigation.sovAppRoutes.indexOf(currentRoute)>-1) {\n if((currentRoute != 'product-meta-data' && currentRoute != 'brand-terms-settings' && currentRoute != 'labels-settings' && currentRoute != 'sub-brands' && currentRoute != 'sub-brands-mapping' && currentRoute != 'sov-settings' && currentRoute != 'content-settings') || !this.currentApp || this.currentApp.name == 'Share Of Voice') {\n headMenu.panelOpenState = true;\n this.currentApp = headMenu;\n if(onMenuClicked || this.currentApp.name == 'Share Of Voice') {\n break;\n }\n }\n\n }\n else if(headMenu.id == \"ads_amazon_seller_seller_analytics\" && this.navigation.sellerAnalyticsAppRoutes.indexOf(currentRoute)>-1){\n headMenu.panelOpenState = true;\n this.currentApp = headMenu;\n }\n else if(headMenu.id == \"ads_amazon_seller_vendor_analytics\" && this.navigation.vendorAnalyticsAppRoutes.indexOf(currentRoute)>-1) {\n if((currentRoute != 'product-meta-data' && currentRoute != 'brand-terms-settings' && currentRoute != 'labels-settings' && currentRoute != 'sub-brands' && currentRoute != 'sub-brands-mapping' && currentRoute != 'sov-settings' && currentRoute != 'content-settings') || !this.currentApp || this.currentApp.name == 'Vendor Analytics') {\n headMenu.panelOpenState = true;\n this.currentApp = headMenu;\n if(onMenuClicked || this.currentApp.name == 'Vendor Analytics') {\n break;\n }\n }\n }\n } else {\n headMenu.panelOpenState = false;\n }\n // if(headMenu.children){\n // headMenu.children.forEach(menu => {\n // if (menu.children && menu.type == \"expandable\") {\n // headMenu.children.forEach(submenu => {\n // if(this.isCheckActiveRoute(submenu.route,headMenu)){\n // menu.panelOpenState = true;\n // headMenu.panelOpenState = true;\n\n // }\n // })\n // }\n // });\n // }\n }\n this.cdref.detectChanges();\n }\n\n public getTooltipInfo(headmenu){\n if(this.sidenav && this.sidenav.opened){\n return null;\n }else{\n return this.selectedApplication(headmenu);\n }\n }\n\n public selectedApplication(headmenu){\n return this.translation.selectedApplication(this.applicationDetails, headmenu);\n }\n get sideIdInfo(){\n if(this.applicationDetails && this.applicationDetails.sidebarInfo && this.applicationDetails.sidebarInfo.siteId){\n return Number(this.applicationDetails.sidebarInfo.siteId)\n }else if(this.applicationDetails && this.applicationDetails && this.applicationDetails['siteId']){\n return Number(this.applicationDetails['siteId'])\n }\n return 1;\n }\n\n\n public checkForRedirection(appMenus, gsMenus, applicationDetails) {\n const currentRoute = this.router.url.split('?')[0];\n const currentAppMenus = appMenus.find(app => app.id.indexOf(applicationDetails.applicationId) >= 0);\n\n if (currentAppMenus) {\n const allMenus = [currentAppMenus, ...gsMenus];\n const isMenuAvailable = findLink(allMenus);\n if (!isMenuAvailable) {\n this.navigation.getHostOriginAndNavigate(currentAppMenus.defaulturl);\n }\n } else {\n this.navigation.getHostOriginAndNavigate(this.toDisplayApplications[0].defaulturl);\n }\n\n\n function isMenuRouteMatch(link) {\n return currentRoute === `/${link}`;\n } \n\n function findLink(menuArray) {\n return menuArray.some(function(menu) {\n // If the menu has children, search recursively\n if (menu.children) {\n return findLink(menu.children);\n }\n\n // Check if the current menu item has a matching link\n if (isMenuRouteMatch(menu.route)) {\n return true;\n }\n\n // If there are child routes, search within them\n if (menu.child_routes) {\n return menu.child_routes.some(function(childRoute) {\n return isMenuRouteMatch(childRoute);\n });\n }\n\n return false;\n });\n }\n }\n\n\n\n\n\n // public checkForRedirection(applicationDetails: appDetails, menulists) {\n // try{\n // let isMenuVisibleByorgSetting = true;\n // let isMenuVisibleByRole = true;\n // let isMenuNotVisibleByRole = true;\n // let isMenurOrgWithUserRole = true;\n // let isMenuNotVisibleByappspacificconfigcheck =true;\n // let isredirected = false;\n // let applicationIdList = [\"ads_amazon_seller_seller_analytics\" , \"ads_amazon_seller_vendor_analytics\"]\n\n // let menulist = applicationIdList.indexOf(applicationDetails.applicationId) > -1 && applicationDetails.listMenus && applicationDetails.listMenus.length > 0 ? applicationDetails.listMenus : menulists;\n\n // const role = ['SUPER_ADMIN', 'SUPER_ADMIN_READ_ONLY'];\n // if (role.indexOf(applicationDetails.userInfo.role) == -1) {\n \n // let applicationMenues = menulist && menulist.length > 0 && menulist.find((menus)=>{\n // return menus.id == applicationDetails.applicationId\n // })\n\n // if (applicationMenues && applicationMenues.organization_setting_not_in) {\n // isMenuVisibleByorgSetting = this.navigation.checkForNotOrgSettings(applicationMenues.organization_setting_not_in);\n // }\n\n // if (applicationMenues && applicationMenues.visibility_roles) {\n // isMenuVisibleByRole = this.navigation.checkForRoles(applicationMenues.visibility_roles);\n // }\n // if (applicationMenues && applicationMenues.visibility_roles_not_in) {\n // isMenuNotVisibleByRole = this.navigation.checkForvisibilityRolesNotIn(applicationMenues.visibility_roles_not_in);\n // }\n\n // if (applicationMenues && applicationMenues.app_spacific_config_check) {\n // isMenuNotVisibleByappspacificconfigcheck = this.navigation.appSpecificConfig(applicationMenues.app_spacific_config_check);\n // }\n\n // if (applicationMenues && applicationMenues.org_user_ctrl) {\n // isMenurOrgWithUserRole = this.navigation.checkForOrgWithUserRole(applicationMenues.org_user_ctrl,applicationMenues, applicationDetails.currentOrganization.organizationId);\n // }\n // if (applicationMenues && applicationMenues.id == \"amc-platform-web\" && applicationMenues.children) {\n // let isChildMenuVisibleByRole = true;\n // let isChildMenuNotVisibleByRole = true;\n // let isChildMenurOrgWithUserRole = true;\n\n // const childmenu = this.validateRouteByState( this.router , applicationMenues.children);\n\n // if (childmenu && childmenu.visibility_roles_not_in) {\n // isChildMenuNotVisibleByRole = this.navigation.checkForvisibilityRolesNotIn(childmenu.visibility_roles_not_in);\n // }\n\n // if (childmenu && childmenu.visibility_roles) {\n // isChildMenuVisibleByRole = this.navigation.checkForRoles(childmenu.visibility_roles);\n // }\n\n // if (childmenu && childmenu.org_user_ctrl) {\n // isChildMenurOrgWithUserRole = this.navigation.checkForOrgWithUserRole(childmenu.org_user_ctrl,childmenu, applicationDetails.currentOrganization.organizationId);\n // }\n\n // if ((!isChildMenuNotVisibleByRole || !isChildMenuVisibleByRole || !isChildMenurOrgWithUserRole) && childmenu) {\n // isredirected = true;\n // this.router.navigate([\"/\"]);\n // }\n // }\n // if ((!isMenuVisibleByorgSetting || !isMenuVisibleByRole || !isMenuNotVisibleByRole || !isMenurOrgWithUserRole || !isMenuNotVisibleByappspacificconfigcheck) && !isredirected) {\n // if (!this.currentApp) {\n // this.navigation.getHostOriginAndNavigate(this.toDisplayApplications[0].defaulturl); \n // }else{\n // this.navigation.getHostOriginAndNavigate(applicationMenues.defaulturl);\n // }\n // }\n // }\n // }catch(error){\n // throw error;\n // }\n // }\n\n validateRouteByState(state , listMenus){\n try{\n const findRoute = listMenus.find(list => {\n if(list.link == 'amc'+state.url) {\n return list;\n } else if(list.matchRoutes && list.matchRoutes.length > 0){\n if(list.matchRoutes.includes(state.url)){\n return list;\n };\n }\n });\n return findRoute;\n }catch(error){\n throw error;\n }\n}\n \n // public checkForRedirection(applicationDetails: appDetails) {\n // let route = '';\n // if(applicationDetails.currentAccount && !(this.navigation.isHavingAnyActiveSubs(applicationDetails.applicationId,applicationDetails.currentAccount.subscription,applicationDetails.currentAccount.type))){\n // switch(applicationDetails.currentAccount.type){\n // case 'CONTENT': {\n // route = 'content/share-of-voice'\n // break;\n // }\n // case 'DSP': {\n // route = 'dsp/order'\n // break;\n // }\n // case 'AMS_ATTRIBUTION': {\n // route = 'attribution/attribution-campaigns'\n // break;\n // }\n // case 'SELLER_CENTRAL': {\n // route = '#!/ams-content-dashboard/seller-sales-overview';\n // break;\n // }\n // case 'VENDOR_CENTRAL': {\n // route = '#!/ams-content-dashboard/custom-reports-vendor-sales-overview';\n // break;\n // }\n // case 'INSTACART': {\n // route = 'instacart/instacart-overview';\n // break;\n // }\n // case 'CRITEO': {\n // route = 'criteo/criteo-overview';\n // break;\n // }\n // case 'WALMART': {\n // route = 'walmart/';\n // break;\n // }\n // case 'AMAZON_MARKETING_CLOUD': {\n // route = 'dp/data-analytics-getting-started';\n // break;\n // }\n // case 'AMS_VENDOR':\n // case 'AMS_SELLER': {\n // route = '#!/ams-page-overview';\n // break;\n // }\n // }\n // this.navigation.getHostOriginAndNavigate(route);\n // }\n // }\n\n public async getStructureAPISupportData(currentAccount){\n try {\n this.RestApiService.getStructureAPISupportData(currentAccount.organizationId,currentAccount.businessGroupId,currentAccount.amsAccountId).subscribe( \n (response:any) => {\n this.navigation.isStructureApiSupport = response ? response['structureApiSupport'] : undefined;\n this.createAppDetails(this.applicationDetails);\n },\n (error:any) =>{\n this.navigation.isStructureApiSupport = undefined;\n this.createAppDetails(this.applicationDetails);\n });\n } catch (error) {\n throw error;\n }\n\n }\n \n public scrollToActiveMenu(){\n setTimeout(() => {\n if(this.listItems && this.listItems.find((_, i) => _.isActiveItem) != undefined){\n this.list.scrollTop = this.listItems.find((_, i) => _.isActiveItem).offsetTop;\n }\n }, 500);\n }\n\n public isCheckActiveRoute(menu,headmenu,parentMenu = null) {\n // let urlArray = this.router.url.split('/');\n // let routeUrl = urlArray[urlArray.length - 1];\n // let currentRoute = routeUrl.split('?')[0];\n // let route=menu.route;\n // let pageName;\n // if(route){\n // let splitedURL = route.split(\"/\");\n // pageName = splitedURL.length >0 ? splitedURL[splitedURL.length - 1] : route;\n // }\n\n let routeUrl = this.router.url;\n let currentRoute = routeUrl.split('?')[0];\n let route=menu.route;\n let pageName;\n if(route){\n pageName = route;\n }\n\n if ((currentRoute === \"/\"+pageName || currentRoute === \"/\"+pageName+\"/keyword-report\" || currentRoute === \"/\"+pageName+\"/keyword-suggestions/auto\" || currentRoute === \"/\"+pageName+\"/keyword-suggestions/manual\") && headmenu!=undefined) {\n if(this.prevActiveHeadMenu=== undefined){\n headmenu.isActive=true;\n this.prevActiveHeadMenu=headmenu;\n }else{\n this.prevActiveHeadMenu.isActive=false;\n headmenu.isActive=true;\n this.prevActiveHeadMenu=headmenu;\n }\n if(parentMenu != null){\n this.activePanel = parentMenu.id;\n }\n return true;\n }else if(menu && menu.matchRoutes && this.router.url){\n if (menu.matchRoutes.indexOf(this.router.url.split('?')[0]) > -1) {\n headmenu.isActive=true;\n this.prevActiveHeadMenu=headmenu;\n\n if(parentMenu != null){\n this.activePanel = parentMenu.id;\n }\n return true;\n }\n else{\n return false;\n }\n }\n else{\n return false;\n }\n }\n\n public keepMenuExpanded(parentMenuId:string) {\n if(parentMenuId.indexOf(this.applicationDetails.applicationId) >= 0 ){\n return true;\n }\n else{\n return false;\n }\n }\n\n public allMenuCollapse(){\n for(let headMenu of this.toDisplayGlobalSettingsMenu) {\n headMenu.panelOpenState = false;\n }\n }\n\n public modficationData(data: any): any {\n let configs = this.navigation.getTypeStatusConfigs();\n\t\tlet order = Object.keys(configs);\n\t\tif(order.indexOf(data.type) > -1){\n\t\t\tdata.active = configs[data.type] ? configs[data.type] : false;\n\t\t}\n\t\treturn data;\n\t}\n\n ngOnChanges() {\n // this.showMenuIcon();\n this.checkApplicationDetails(this.applicationDetails);\n\n }\n\n public goToApplication(item) {\n if(item.defaulturl){\n this.goToAppDefaultPage(item, item.id);\n }else{\n if(item.children && item.children.length > 0) {\n if(item.children[0].children && item.children[0].children.length > 0) {\n this.goToAppDefaultPage(item.children[0].children[0], item.id);\n } else {\n this.goToAppDefaultPage(item.children[0], item.id);\n }\n } else {\n this.goToAppDefaultPage(item, item.id);\n }\n }\n }\n\n public ngOnDestroy(): void {\n if(this.sideNavStatusSubscription){\n this.sideNavStatusSubscription.unsubscribe();\n }\n }\n\n public goToAppDefaultPage(item, appId) {\n this.navMenusComponent.onSelectMenu(event, item, appId);\n }\n\n public hideMenuForWL(){\n let isOrgSetting;\n if(this.applicationDetails['userInfo'].role === 'IAC_BRAND_READ_ONLY' || (this.applicationDetails.orgSettings && this.applicationDetails.orgSettings.length == 0)){\n return true;\n }else{\n if (this.applicationDetails.orgSettings && this.applicationDetails.orgSettings.length > 0) {\n isOrgSetting = this.applicationDetails.orgSettings.filter(function(orgSetting){\n if( orgSetting.setting === 'IAC_INSIGHTS' && (!orgSetting.value || orgSetting.value && orgSetting.value == 'ACTIVE')) {\n return true;\n };\n })\n }\n return (isOrgSetting != null && ( this.applicationDetails.sidebarInfo.siteId > 11 || this.applicationDetails['userInfo'].role === 'IAC_BRAND_READ_ONLY'));\n }\n }\n\n // public isApplicationActive(parentMenuId) {\n // if(parentMenuId.indexOf(this.applicationDetails.applicationId) >= 0 && this.isGlobalSettingsMenuActive){\n // return true;\n // }\n // else{\n // return false;\n // }\n // }\n\n \n}\n","<div id=\"loader_sov\">\n <div id=\"loading_div\" *ngIf=\"applicationDetails?.sidebarInfo\">\n <div>\n <div id=\"loader\" *ngIf=\"sideIdInfo !== 1\"\n class=\"site_{{sideIdInfo}}\">\n <img src=\"{{applicationDetails?.sidebarInfo?.logo}}\">\n </div>\n <div id=\"loader_img\" *ngIf=\"sideIdInfo == 1\">\n <img src=\"/assets/images/happy_eyes_closed_small.svg\">\n </div>\n <mat-progress-bar class=\"loader_progress-bar-position\" mode=\"indeterminate\"></mat-progress-bar>\n </div>\n </div>\n</div>\n\n<div fxLayout=\"column\" fxFlexFill *ngIf=\"errorMsg.length == 0 else errorBlock\" translate=\"no\" id=\"angular-16-version\">\n <mat-toolbar class=\"portal-side-menu-top-toolbar\">\n <mat-toolbar-row fxLayout=\"row\">\n <div class=\"portal-forget-heading-card\">\n <div class=\"sidemenu-logo-holder\">\n <span *ngIf=\"sideIdInfo !== 1\">\n <img [src]=\"applicationDetails?.sidebarInfo?.favicon\" style=\"width: 40px !important;display: flex !important;\" *ngIf=\"!navCollapsed\" [alt]=\"applicationDetails?.sidebarInfo?.firstName\" class=\"favicon-dimension\" />\n <img [src]=\"applicationDetails?.sidebarInfo?.logo\" style=\"display: flex !important;\" *ngIf=\"navCollapsed\" class=\"logo-dimension\" />\n </span>\n <span *ngIf=\"sideIdInfo == 1\">\n <img src=\"assets/logos/intentwiselogo.svg\" style=\"width: 40px !important;display: flex !important;\" *ngIf=\"!navCollapsed\" [alt]=\"applicationDetails?.sidebarInfo?.firstName\" class=\"favicon-dimension intentwise-favicon\">\n <img src=\"assets/logos/Intentwise.svg\" style=\"display: flex !important;\" *ngIf=\"navCollapsed\" [alt]=\"applicationDetails?.sidebarInfo?.firstName\" class=\"logo-dimension intentwise-logo\">\n </span>\n </div>\n </div>\n </mat-toolbar-row>\n </mat-toolbar>\n <!-- <div class=\"sidebar-collapse-icon\" *ngIf=\"isAdminRole\">\n <button mat-menu-item class=\"sidemenu-icon-top\" (click)=\"allMenuCollapse()\">\n <mat-icon *ngIf=\"sidenav && sidenav.opened\">keyboard_arrow_up</mat-icon>\n </button>\n </div> -->\n <div *ngIf=\"sidenav && sidenav.opened && !inContextInsightsWLApp\" class=\"app-menu-container\">\n <button class=\"app-menu-button\" *ngIf=\"toDisplayApplications && toDisplayApplications.length == 1\">\n <span class=\"app-name\">\n <mat-icon *ngIf=\"currentApp?.name\" class=\"sideNavIcon {{currentApp?.name.split(' ').join('')}}\"></mat-icon>\n <label style=\"margin-left: -4px;\" [innerHTML]=\"selectedApplication(currentApp)\"></label>\n <span *ngIf=\"currentApp?.badge\" class=\"badge-text sov-beta-position\">{{currentApp.badge}}</span>\n </span>\n </button>\n <button class=\"app-menu-button\" [mat-menu-trigger-for]=\"appMenu\" *ngIf=\"toDisplayApplications && toDisplayApplications.length > 1\">\n <span class=\"app-name\">\n <mat-icon *ngIf=\"currentApp?.name\" class=\"sideNavIcon {{currentApp?.name.split(' ').join('')}}\"></mat-icon>\n <label style=\"margin-left: -4px;\" [innerHTML]=\"selectedApplication(currentApp)\"></label>\n <span *ngIf=\"currentApp?.badge\" class=\"badge-text sov-beta-position\">{{currentApp.badge}}</span>\n </span>\n <span class=\"dropdown-icon\"></span>\n </button>\n <mat-menu #appMenu=\"matMenu\" class=\"app-menu\" [backdropClass]=\"'all-module-menus'\">\n <ng-container *ngFor=\"let headmenu of toDisplayApplications\">\n <button class=\"menu-option\" mat-menu-item (click)=\"goToApplication(headmenu)\" [ngClass]=\"{'active': headmenu.panelOpenState}\" class=\"{{headmenu.id}}_icon\" *ngIf=\"headmenu.name != 'Account Management'\" translate=\"no\">\n <mat-icon class=\"sideNavIcon children-icon\" [ngClass]=\"headmenu.name.split(' ').join('')\"></mat-icon>\n <label [innerHTML]=\"selectedApplication(headmenu)\"></label>\n <span *ngIf=\"headmenu.badge\" class=\"badge-text sov-beta-position\" [innerHTML]=\"headmenu.badge\"></span>\n </button>\n </ng-container>\n </mat-menu>\n </div>\n <div class=\"portal-sidnav-menu\" fxFlex=\"nogrow noshrink\" appScrollable [ngClass]=\"{'whiteLabelSidenav' : inContextInsightsWLApp}\">\n <mat-expansion-panel [expanded]=\"headmenu.panelOpenState == true\" hideToggle=\"true\"\n *ngFor=\"let headmenu of toDisplayApplications\" [ngClass]=\"{'active': headmenu.isActive }\"\n (opened)=\"headmenu.panelOpenState = true\" (closed)=\"headmenu.panelOpenState = false\">\n <mat-expansion-panel-header matTooltip=\"{{getTooltipInfo(headmenu)}}\" matTooltipClass=\"left-nav-tooltip\"\n *ngIf=\"headmenu.type == 'expandable' else singleMenus\" class=\"main-expansion-panel-header\"\n (click)=\"goToApplication(headmenu)\">\n <mat-panel-title>\n <span class=\"{{headmenu.id}}_icon\"></span>\n <h3 class=\"sidemenu-heading applicationMenu\">\n <label [innerHTML]=\"selectedApplication(headmenu)\"></label>\n <span *ngIf=\"headmenu.badge\" class=\"badge-text sov-beta-position\" [innerHTML]=\"headmenu.badge\"></span>\n </h3>\n </mat-panel-title>\n <mat-panel-description>\n <mat-icon class=\"main-chevron-icon\" *ngIf=\"!headmenu.panelOpenState\">arrow_right</mat-icon>\n <mat-icon class=\"main-chevron-icon\" *ngIf=\"headmenu.panelOpenState\">arrow_drop_down</mat-icon>\n </mat-panel-description>\n </mat-expansion-panel-header>\n <mat-list class=\"padding-0px\" *ngFor=\"let menu of headmenu.children\" [attr.id]=\"headmenu.id\" [ngClass]=\"{'group-nav-menu': menu.children }\">\n <mat-expansion-panel *ngIf=\"menu.children else listMenu\" class=\"div-background-color-white\" [expanded]=\"menu.id == activePanel\"\n [ngClass]=\"{'activePanel': menu.id == activePanel , 'whiteLabelActive' : inContextInsightsWLApp}\" hideToggle=\"true\"\n (opened)=\"menu.panelOpenState = true\" (closed)=\"menu.panelOpenState = false\">\n <mat-expansion-panel-header\n [ngClass]=\"{'header-border': menu.panelOpenState === true, 'header-border-none': menu.panelOpenState === false }\">\n <mat-panel-title>\n <span class=\"{{menu.id}}_icon\"></span>\n <img style=\"margin-right: 10px\" *ngIf=\"(menu.icon && menu.icon != '') else displayInitials\"\n class=\"side-menu-icon side-menu-icon-color\" src=\"assets/sidemenu-icons/{{menu.icon}}\" />\n <ng-template #displayInitials>\n <div class=\"sidemenu-symbol\">\n {{menu.symbol}}\n </div>\n </ng-template>\n <h3 class=\"menu-heading applicationSubmenus\"><span class=\"menu-name-expandable\" [innerHTML]=\"selectedApplication(menu)\"></span>\n <span *ngIf=\"menu.badge\" class=\"badge-text sov-beta-position level-two-badge\"\n [innerHTML]=\"menu.badge\"></span>\n </h3>\n </mat-panel-title>\n <mat-panel-description>\n <mat-icon class=\"sub-chevron-icon\" *ngIf=\"!menu.panelOpenState\">keyboard_arrow_right</mat-icon>\n <mat-icon class=\"sub-chevron-icon\" *ngIf=\"menu.panelOpenState\">keyboard_arrow_down</mat-icon>\n </mat-panel-description>\n </mat-expansion-panel-header>\n <!-- <mat-divider></mat-divider> -->\n <mat-nav-list *ngFor=\"let childMenu of menu.children;\" class=\"sub-child-menu\">\n <lnc-nav-menus appOffsetTop [isActiveItem]=\"isCheckActiveRoute(childMenu,headmenu,menu)\" [item]=\"childMenu\"\n [applicationId]=\"applicationDetails.applicationId\" [parentMenuId]=\"headmenu.id\" [parentPanelId]=\"menu.id\"\n (menuClicked)=\"menuClicked($event)\" #navMenusComponent>\n </lnc-nav-menus>\n </mat-nav-list>\n </mat-expansion-panel>\n <ng-template #listMenu>\n <mat-nav-list>\n <lnc-nav-menus appOffsetTop [isActiveItem]=\"isCheckActiveRoute(menu,headmenu)\" [item]=\"menu\"\n [applicationId]=\"applicationDetails.applicationId\" [parentMenuId]=\"headmenu.id\"\n (menuClicked)=\"menuClicked($event)\" #navMenusComponent>\n </lnc-nav-menus>\n </mat-nav-list>\n </ng-template>\n </mat-list>\n <ng-template #singleMenus>\n <mat-list>\n <lnc-nav-menus id=\"{{headmenu.id}}\" appOffsetTop [isActiveItem]=\"isCheckActiveRoute(headmenu,headmenu)\"\n [item]=\"headmenu\" [applicationId]=\"applicationDetails.applicationId\" [parentMenuId]=\"headmenu.id\"\n matTooltip=\"{{getTooltipInfo(headmenu)}}\" matTooltipClass=\"left-nav-tooltip\"\n (menuClicked)=\"menuClicked($event)\" #navMenusComponent>\n </lnc-nav-menus>\n </mat-list>\n </ng-template>\n </mat-expansion-panel>\n </div>\n <div class=\"portal-global-setting-menu sticky_bottom_menu\" *ngIf=\"!inContextInsightsWLApp\">\n <mat-expansion-panel [expanded]=\"settingsHeadMenu.panelOpenState == true || expandGlobalSettings\" hideToggle=\"true\" id=\"{{settingsHeadMenu.id + 'menu'}}\"\n *ngFor=\"let settingsHeadMenu of toDisplayGlobalSettingsMenu\" [ngClass]=\"{'active': settingsHeadMenu.isActive }\"\n (opened)=\"sidenav.open(); settingsHeadMenu.panelOpenState = true\" (closed)=\"settingsHeadMenu.panelOpenState = false; expandGlobalSettings = false\">\n <mat-expansion-panel-header matTooltip=\"{{getTooltipInfo(settingsHeadMenu)}}\" matTooltipClass=\"left-nav-tooltip\"\n *ngIf=\"settingsHeadMenu.type == 'expandable' else singleMenus\" class=\"main-expansion-panel-header\"\n [ngClass]=\"sidenav && sidenav.opened ? '' : 'sticky-bottom-closed'\">\n <mat-panel-title>\n <span class=\"ads_account_mgmt_icon\"></span>\n <h3 class=\"sidemenu-heading applicationMenu\">\n <label [innerHTML]=\"selectedApplication(settingsHeadMenu)\"></label>\n <span *ngIf=\"settingsHeadMenu.badge\" class=\"badge-text sov-beta-position\"\n [innerHTML]=\"settingsHeadMenu.badge\"></span>\n </h3>\n </mat-panel-title>\n <mat-panel-description>\n <mat-icon class=\"main-chevron-icon\" *ngIf=\"!settingsHeadMenu.panelOpenState\">arrow_right</mat-icon>\n <mat-icon class=\"main-chevron-icon\" *ngIf=\"settingsHeadMenu.panelOpenState\">arrow_drop_down</mat-icon>\n </mat-panel-description>\n </mat-expansion-panel-header>\n <mat-list class=\"padding-0px\" *ngFor=\"let menu of settingsHeadMenu.children\" [attr.id]=\"settingsHeadMenu.id\"\n [ngClass]=\"{'group-nav-menu': menu.children }\">\n <mat-nav-list>\n <lnc-nav-menus appOffsetTop [isActiveItem]=\"isCheckActiveRoute(menu,settingsHeadMenu)\" [item]=\"menu\"\n [applicationId]=\"applicationDetails.applicationId\" [parentMenuId]=\"settingsHeadMenu.id\"\n (menuClicked)=\"menuClicked($event)\" #navMenusComponent>\n </lnc-nav-menus>\n </mat-nav-list>\n </mat-list>\n <ng-template #singleMenus>\n <mat-list>\n <lnc-nav-menus [attr.id]=\"settingsHeadMenu.id\" appOffsetTop\n [isActiveItem]=\"isCheckActiveRoute(settingsHeadMenu,settingsHeadMenu)\" [item]=\"settingsHeadMenu\"\n [applicationId]=\"applicationDetails.applicationId\" [parentMenuId]=\"settingsHeadMenu.id\"\n matTooltip=\"{{getTooltipInfo(settingsHeadMenu)}}\" matTooltipClass=\"left-nav-tooltip\"\n (menuClicked)=\"menuClicked($event)\" #navMenusComponent>\n </lnc-nav-menus>\n </mat-list>\n </ng-template>\n </mat-expansion-panel>\n\n </div>\n</div>\n<ng-template #errorBlock>\n <div class=\"errorMsg\">\n <span class=\"material-icons\">error</span>\n <span class=\"errorTxt\">{{errorMsg}}</span>\n </div>\n</ng-template>\n\n<a class=\"hamburger-icon expanded-hamburger-icon\" title=\"Toggle Menu\" (click)=\"sidenav.close();allMenuCollapse(); \">\n <mat-icon class=\"left-chevron-icon\">keyboard_arrow_left</mat-icon>\n</a>\n\n<!-- <img *ngIf=\"showMenuIcon()\" class=\"favicon-dimension\" src={{applicationDetails.sidebarInfo.favicon}} alt=\"Intentwise Favicon\" />\n <a *ngIf=\"showMenuIcon()\" title=\"Toggle Menu\" class=\"hamburger-icon collapsed-hamburger\"\n (click)=\"sidenav.open()\">\n <mat-icon class=\"right-chevron-icon\">keyboard_arrow_right</mat-icon>\n </a> -->","import { NgModule } from '@angular/core';\nimport { ApplicationSidebarComponent } from './application-sidebar.component';\nimport { CdkTableModule } from '@angular/cdk/table';\nimport { CommonModule } from '@angular/common';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { HttpClientModule } from '@angular/common/http';\nimport { UrlContextService } from './services/url-context.service'\n\n//Navigation\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { MatMenuModule } from '@angular/material/menu';\n\n//Layout\nimport { MatListModule } from '@angular/material/list';\nimport { MatGridListModule } from '@angular/material/grid-list';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatStepperModule } from '@angular/material/stepper';\n\n//Buttons & Indicators\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\n\n// Form Controls.\nimport {\tMatCheckboxModule\t}\tfrom '@angular/material/checkbox';\nimport {\tMatInputModule\t}\tfrom '@angular/material/input';\nimport {\tMatRadioModule\t}\tfrom '@angular/material/radio';\nimport {\tMatDatepickerModule\t}\tfrom '@angular/material/datepicker';\nimport {\tMatNativeDateModule\t}\tfrom '@angular/material/core';\nimport {\tMatAutocompleteModule\t}\tfrom '@angular/material/autocomplete';\nimport {\tMatSliderModule\t}\tfrom '@angular/material/slider';\nimport {\tMatSlideToggleModule\t}\tfrom '@angular/material/slide-toggle';\nimport {\tMatSelectModule\t}\tfrom '@angular/material/select';\n\n//Popups & Modals\nimport {\tMatDialogModule\t}\tfrom '@angular/material/dialog';\nimport {\tMatTooltipModule\t}\tfrom '@angular/material/tooltip';\nimport {\tMatSnackBarModule\t}\tfrom '@angular/material/snack-bar';\n\n//Tables\nimport {\tMatTableModule\t}\tfrom\t'@angular/material/table';\nimport {\tMatSortModule\t}\tfrom\t'@angular/material/sort';\nimport {\tMatPaginatorModule\t}\tfrom\t'@angular/material/paginator';\n\n//Services\nimport { NavMenusComponent } from './nav-menus/nav-menus.component';\nimport { OffsetTopDirective, ScrollableDirective } from './nav-menu.directive';\n\nconst matModules = [\n // Navigation.\n MatToolbarModule,\n MatSidenavModule,\n MatMenuModule,\n\n // Layout\n MatListModule,\n MatGridListModule,\n MatExpansionModule,\n MatCardModule,\n MatTabsModule,\n MatStepperModule,\n\n // Buttons & Indicators\n MatButtonModule,\n MatButtonToggleModule,\n MatChipsModule,\n MatIconModule,\n MatProgressSpinnerModule,\n MatProgressBarModule,\n\n // Form Controls.\n MatCheckboxModule,\n MatInputModule,\n MatRadioModule,\n MatDatepickerModule,\n MatNativeDateModule,\n MatAutocompleteModule,\n MatSliderModule,\n MatSlideToggleModule,\n MatSelectModule,\n\n // Popups & Modals\n MatDialogModule,\n MatTooltipModule,\n MatSnackBarModule,\n\n // Table\n CdkTableModule,\n MatTableModule,\n MatSortModule,\n MatPaginatorModule\n];\n\n@NgModule({\n declarations: [ApplicationSidebarComponent, NavMenusComponent,ScrollableDirective, OffsetTopDirective],\n imports: [\n matModules, \n CommonModule,\n BrowserAnimationsModule,\n FlexLayoutModule,\n HttpClientModule\n ],\n exports: [ApplicationSidebarComponent],\n providers:[UrlContextService]\n})\nexport class ApplicationSidebarModule { }\n","/*\n * Public API Surface of application-sidebar\n */\n\nexport * from './lib/services/application-sidebar.service';\nexport * from './lib/application-sidebar.component';\nexport * from './lib/application-sidebar.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i1","i1.RestApiService","i3.TranslationService","i4.UrlContextService","i1.ApplicationSidebarService","i3.UrlContextService","i5.TranslationService","i7","i8","i10","i12.OffsetTopDirective","i3.RestApiService","i6","i9","i11","i15","i16.NavMenusComponent","i17.ScrollableDirective","i17.OffsetTopDirective"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAO,MAAM,SAAS,GAAG;AACrB,IAAA,WAAW,EAAC,6BAA6B;AACzC,IAAA,cAAc,EAAC,iCAAiC;AAChD,IAAA,cAAc,EAAE,gCAAgC;AAChD,IAAA,kBAAkB,EAAE,qCAAqC;AACzD,IAAA,mBAAmB,EAAC,6DAA6D;AACjF,IAAA,gBAAgB,EAAC,wDAAwD;CAC5E;;MCGY,cAAc,CAAA;AAOL,IAAA,IAAA,CAAA;AAAyB,IAAA,MAAA,CAAA;AALrC,IAAA,OAAO,GAAU,SAAS,CAAC,WAAW,CAAC;AACvC,IAAA,UAAU,GAAU,SAAS,CAAC,cAAc,CAAC;AAC7C,IAAA,KAAK,CAAK;AACV,IAAA,WAAW,CAAC;IAEpB,WAAoB,CAAA,IAAgB,EAAS,MAAqB,EAAA;QAA9C,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAY;QAAS,IAAM,CAAA,MAAA,GAAN,MAAM,CAAe;AAChE,QAAA,IAAI,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;AACtC,QAAA,IAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;AAC3E,YAAA,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,MAAM,EAAE;AAC5E,YAAA,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,cAAc,CAAC;AACxC,YAAA,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,kBAAkB,CAAC;AAChD,SAAA;QACD,MAAM,cAAc,GAAY,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;AAElE,QAAA,IAAI,cAAc,EAAE;AAChB,YAAA,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC;AACjE,YAAA,IAAI,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC;AACnC,SAAA;QAED,IAAI,CAAC,WAAW,GAAG;YACjB,OAAO,EAAE,IAAI,WAAW,CAAC;AACvB,gBAAA,cAAc,EAAE,kBAAkB;gBAClC,cAAc,EAAG,IAAI,CAAC,KAAK;aAC5B,CAAC;SACH,CAAA;KAEF;AAED;;AAE2C;AAE3C,IAAA,IAAI,eAAe,GAAA;AACjB,QAAA,IAAI,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;AACtC,QAAA,IAAI,MAAM,GAAG,SAAS,CAAC,gBAAgB,GAAC,eAAe,CAAA;QACvD,IAAG,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAC;AAC3G,YAAA,MAAM,GAAG,SAAS,CAAC,mBAAmB,GAAC,eAAe,CAAC;AACxD,SAAA;AACD,QAAA,OAAO,MAAM,CAAC;KACf;;AAKM,IAAA,qBAAqB,CAAC,KAAK,EAAE,UAAU,EAAE,SAAS,EAAA;AACnD,QAAA,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,GAAE,eAAe,GAAG,KAAK,GAAG,iBAAiB,GAAG,UAAU,GAAG,WAAW,GAAG,SAAS,GAAE,4BAA4B,CAAC;QACzI,IAAI,YAAY,GAAG,IAAI,CAAC;QACxB,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,IAAI,GAAG,EAAE,CAAC;QAEf,IAAI,CAAC,WAAW,GAAG;YAChB,OAAO,EAAE,IAAI,WAAW,CAAC;AACvB,gBAAA,cAAc,EAAE,kBAAkB;gBAClC,cAAc,EAAG,IAAI,CAAC,KAAK;aAC5B,CAAC;SACH,CAAA;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC;AAC1C,aAAA,IAAI,CACD,GAAG,CAAC,CAAC,GAAG,KAAO,EAAA,OAAO,GAAG,CAAA,EAAE,CAAC,CAC/B,CAAC;KACL;AAEO,IAAA,0BAA0B,CAAC,cAAc,EAAE,eAAe,EAAE,YAAY,EAAA;QAC9E,IAAI;AACF,YAAA,IAAI,GAAG,GAAG,IAAI,CAAC,UAAU,GAAG,eAAe,GAAG,cAAc,GAAG,iBAAiB,GAAG,eAAe,GAAG,WAAW,GAAG,YAAY,GAAE,0BAA0B,CAAC;YAE5J,IAAI,CAAC,WAAW,GAAG;gBACjB,OAAO,EAAE,IAAI,WAAW,CAAC;AACvB,oBAAA,cAAc,EAAE,kBAAkB;oBAClC,WAAW,EAAG,IAAI,CAAC,KAAK;iBACzB,CAAC;aACH,CAAA;YACH,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC;AACxC,iBAAA,IAAI,CACD,GAAG,CAAC,CAAC,GAAG,KAAO,EAAA,OAAO,GAAG,CAAA,EAAE,CAAC,CAC/B,CAAC;AACH,SAAA;AAAC,QAAA,OAAO,KAAK,EAAE;AACZ,YAAA,MAAM,KAAK,CAAC;AACf,SAAA;KACF;AACM,IAAA,gBAAgB,CAAC,kBAAkB,EAAA;QACxC,IAAI;YAEF,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC;AACzC,iBAAA,IAAI,CACH,GAAG,CAAC,CAAC,GAAG,KAAO,EAAA,OAAO,GAAG,CAAA,EAAE,CAAC,CAC7B,CAAC;AACH,SAAA;AAAC,QAAA,OAAO,KAAK,EAAE;AACZ,YAAA,MAAM,KAAK,CAAC;AACf,SAAA;KACF;2HA5FQ,cAAc,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,EAAA,CAAA,aAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAd,uBAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,cAHb,MAAM,EAAA,CAAA,CAAA;;4FAGP,cAAc,EAAA,UAAA,EAAA,CAAA;kBAJ1B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;ACNyC,MAAM,MAAM,GAAG,cAAc,CAAC;MAG3D,iBAAiB,CAAA;AAIN,IAAA,cAAA,CAAA;AAAuC,IAAA,MAAA,CAAA;AAHnD,IAAA,WAAW,CAAC;IAGpB,WAAoB,CAAA,cAA8B,EAAS,MAAc,EAAA;QAArD,IAAc,CAAA,cAAA,GAAd,cAAc,CAAgB;QAAS,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QACrE,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,IAAG;AAC/C,YAAA,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;AAC9B,SAAC,CAAC,CAAC;KACN;AAEM,IAAA,yBAAyB,GAAG,UAAS,GAAG,EAAE,MAAM,EAAA;QACnD,IAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YAC/B,GAAG,IAAI,GAAG,CAAC;AACX,YAAA,KAAI,IAAI,GAAG,IAAI,MAAM,EAAE;gBACnB,GAAG,IAAI,GAAG,GAAG,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;AACxC,aAAA;YACD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AAClC,SAAA;AACD,QAAA,OAAO,GAAG,CAAC;AACf,KAAC,CAAA;IAEM,kBAAkB,GAAG,UAAS,SAAS,EAAA;AAC1C,QAAA,IAAG,OAAO,SAAS,IAAI,QAAQ,EAAE;AAC7B,YAAA,IAAG,SAAS,CAAC,KAAK,IAAI,QAAQ,EAAE;AAC5B,gBAAA,OAAO,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG;oBAC5C,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG;oBAC3C,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG;oBACjD,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AACrD,aAAA;AAAM,iBAAA;gBACH,OAAO,SAAS,CAAC,IAAI,CAAC;AACzB,aAAA;AACJ,SAAA;AAAM,aAAA;AACH,YAAA,OAAO,SAAS,CAAC;AACpB,SAAA;AACL,KAAC,CAAA;IAEM,iBAAiB,GAAG,UAAS,KAAK,EAAA;AACrC,QAAA,IAAI,SAAS,CAAC;AACd,QAAA,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACnB,QAAA,IAAG,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAE,CAAC,EAAE;YACnD,SAAS,GAAG,SAAS,CAAC;AACzB,SAAA;AAAM,aAAA;YACH,SAAS,GAAG,SAAS,CAAC;AACzB,SAAA;QAED,IAAG,KAAK,CAAC,SAAS,CAAC;AAAE,YAAA,OAAO,IAAI,CAAC;;AAC5B,YAAA,OAAO,KAAK,CAAC;AACtB,KAAC,CAAA;AAEM,IAAA,gBAAgB,GAAG,UAAS,GAAG,EAAE,MAAM,EAAE,YAAY,EAAA;QACxD,IAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YAC/B,GAAG,GAAG,IAAI,CAAC,yBAAyB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAClD,GAAG,IAAI,GAAG,CAAC;AACd,SAAA;AAAM,aAAA;YACH,GAAG,IAAI,GAAG,CAAC;AACd,SAAA;AACD,QAAA,GAAG,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG;AAC/E,cAAA,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAGtH,IAAG,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE;YAC3C,GAAG,IAAI,WAAW,GAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;AAClD,SAAA;AACD,QAAA,IAAG,YAAY,EAAC;AACZ,YAAA,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,GAAG,CAAC,CAAC;YACzC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,cAAc,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,IAAI,EAAC,CAAC,CAAC,IAAI,CAAC,MAAM,MAAO,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;AAClK,SAAA;AACG,aAAA;AACA,YAAA,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAG,EAAA,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAA,CAAA,EAAI,GAAG,CAAA,CAAE,CAAC,CAAC;AACrE,YAAA,MAAM,CAAC,IAAI,CAAC,CAAA,EAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,IAAI,GAAG,CAAA,CAAE,EAAE,QAAQ,CAAC,CAAC;AAC7D,SAAA;AACL,KAAC,CAAA;AACD,IAAA,IAAI,gBAAgB,GAAA;QAChB,IAAG;AACC,YAAA,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAC;gBAC9I,IAAG,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,SAAS,CAAC,KAAK,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,EAAC;AAC3H,oBAAA,OAAO,KAAK,CAAC;AAChB,iBAAA;AAAI,qBAAA;AACD,oBAAA,OAAO,IAAI,CAAA;AACd,iBAAA;AACJ,aAAA;AAAI,iBAAA;AACD,gBAAA,OAAO,KAAK,CAAA;AACf,aAAA;AACJ,SAAA;AAAA,QAAA,OAAM,KAAK,EAAC;AACT,YAAA,MAAM,KAAK,CAAC;AACf,SAAA;KAGJ;2HAxFQ,iBAAiB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,EAAA,CAAA,cAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,EAAA,CAAA,MAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;+HAAjB,iBAAiB,EAAA,CAAA,CAAA;;4FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAD7B,UAAU;;;ACJJ,MAAM,SAAS,GAAG;AACrB,IAAA,sBAAsB,EAAE,sBAAsB;AAC9C,IAAA,4BAA4B,EAAE,4BAA4B;AAC1D,IAAA,oBAAoB,EAAE,0BAA0B;AAChD,IAAA,iBAAiB,EAAE,iBAAiB;AACpC,IAAA,SAAS,EAAE,eAAe;AAC1B,IAAA,gBAAgB,EAAE,gBAAgB;AAClC,IAAA,mBAAmB,EAAE,mBAAmB;AACxC,IAAA,YAAY,EAAE,YAAY;AAC1B,IAAA,SAAS,EAAE,SAAS;AACpB,IAAA,QAAQ,EAAE,QAAQ;AAClB,IAAA,WAAW,EAAE,WAAW;AACxB,IAAA,oBAAoB,EAAE,oBAAoB;AAC1C,IAAA,uBAAuB,EAAE,uBAAuB;AAChD,IAAA,uBAAuB,EAAE,uBAAuB;AAChD,IAAA,iBAAiB,EAAE,iBAAiB;AACpC,IAAA,yBAAyB,EAAG,yBAAyB;AACrD,IAAA,yBAAyB,EAAG,yBAAyB;AACrD,IAAA,iBAAiB,EAAE,iBAAiB;AACpC,IAAA,SAAS,EAAE,SAAS;AACpB,IAAA,eAAe,EAAE,eAAe;AAChC,IAAA,WAAW,EAAE,WAAW;AACxB,IAAA,UAAU,EAAE,UAAU;AACtB,IAAA,WAAW,EAAE,WAAW;AACxB,IAAA,qBAAqB,EAAE,qBAAqB;AAE5C,IAAA,gBAAgB,EAAE,gBAAgB;AAClC,IAAA,eAAe,EAAE,eAAe;AAChC,IAAA,eAAe,EAAE,eAAe;AAEhC,IAAA,oBAAoB,EAAE,oBAAoB;AAC1C,IAAA,aAAa,EAAE,aAAa;AAC5B,IAAA,QAAQ,EAAE,QAAQ;AAClB,IAAA,YAAY,EAAE,YAAY;AAC1B,IAAA,mBAAmB,EAAE,mBAAmB;AACxC,IAAA,sBAAsB,EAAG,yBAAyB;AAClD,IAAA,sBAAsB,EAAG,yBAAyB;AAElD,IAAA,gBAAgB,EAAE,gBAAgB;AAClC,IAAA,oBAAoB,EAAE,oBAAoB;AAC1C,IAAA,kBAAkB,EAAE,kBAAkB;AACtC,IAAA,mBAAmB,EAAE,mBAAmB;AACxC,IAAA,gBAAgB,EAAE,gBAAgB;AAClC,IAAA,oBAAoB,EAAE,oBAAoB;AAC1C,IAAA,cAAc,EAAC,eAAe;AAC9B,IAAA,UAAU,EAAE,UAAU;AAEtB,IAAA,cAAc,EAAE,cAAc;AAC9B,IAAA,eAAe,EAAE,eAAe;AAChC,IAAA,UAAU,EAAE,UAAU;AACtB,IAAA,iBAAiB,EAAE,iBAAiB;AACpC,IAAA,WAAW,EAAE,WAAW;AACxB,IAAA,WAAW,EAAE,WAAW;AACxB,IAAA,UAAU,EAAE,UAAU;AACtB,IAAA,mBAAmB,EAAE,mBAAmB;AACxC,IAAA,UAAU,EAAE,UAAU;AACtB,IAAA,cAAc,EAAE,cAAc;AAE9B,IAAA,yBAAyB,EAAE,yBAAyB;AACpD,IAAA,kBAAkB,EAAE,kBAAkB;AAEtC,IAAA,WAAW,EAAE,WAAW;AACxB,IAAA,gBAAgB,EAAE,gBAAgB;AAElC,IAAA,aAAa,EAAE,aAAa;AAC5B,IAAA,oBAAoB,EAAE,oBAAoB;AAC1C,IAAA,uBAAuB,EAAE,uBAAuB;AAEhD,IAAA,oBAAoB,EAAE,oBAAoB;AAC1C,IAAA,iBAAiB,EAAE,iBAAiB;AACpC,IAAA,oBAAoB,EAAE,oBAAoB;AAC1C,IAAA,eAAe,EAAE,eAAe;AAChC,IAAA,0BAA0B,EAAE,0BAA0B;AACtD,IAAA,kBAAkB,EAAE,kBAAkB;AACtC,IAAA,oBAAoB,EAAE,oBAAoB;AAC1C,IAAA,wBAAwB,EAAE,wBAAwB;AAClD,IAAA,cAAc,EAAE,cAAc;AAC9B,IAAA,sBAAsB,EAAE,sBAAsB;AAC9C,IAAA,oBAAoB,EAAE,oBAAoB;AAC1C,IAAA,qBAAqB,EAAE,qBAAqB;AAC5C,IAAA,uBAAuB,EAAE,uBAAuB;AAChD,IAAA,eAAe,EAAE,eAAe;AAChC,IAAA,oBAAoB,EAAE,oBAAoB;AAC1C,IAAA,2BAA2B,EAAE,2BAA2B;AACxD,IAAA,gBAAgB,EAAE,gBAAgB;AAClC,IAAA,4BAA4B,EAAE,4BAA4B;AAC1D,IAAA,kBAAkB,EAAE,kBAAkB;AACtC,IAAA,yBAAyB,EAAE,yBAAyB;AACpD,IAAA,yBAAyB,EAAE,yBAAyB;AACpD,IAAA,kBAAkB,EAAE,kBAAkB;AACtC,IAAA,yBAAyB,EAAE,yBAAyB;AAEpD,IAAA,QAAQ,EAAE,QAAQ;AAClB,IAAA,iBAAiB,EAAE,iBAAiB;AACpC,IAAA,gBAAgB,EAAE,gBAAgB;AAClC,IAAA,gBAAgB,EAAE,gBAAgB;AAClC,IAAA,2BAA2B,EAAE,2BAA2B;AACxD,IAAA,eAAe,EAAE,eAAe;CACnC;;AClGM,MAAM,SAAS,GAAG;AACrB,IAAA,sBAAsB,EAAE,iBAAiB;AACzC,IAAA,4BAA4B,EAAE,yBAAyB;AACvD,IAAA,oBAAoB,EAAE,yBAAyB;AAC/C,IAAA,iBAAiB,EAAE,cAAc;AACjC,IAAA,SAAS,EAAE,cAAc;AACzB,IAAA,gBAAgB,EAAE,YAAY;AAC9B,IAAA,mBAAmB,EAAE,cAAc;AACnC,IAAA,YAAY,EAAE,YAAY;AAC1B,IAAA,SAAS,EAAE,QAAQ;AACnB,IAAA,QAAQ,EAAE,MAAM;AAChB,IAAA,WAAW,EAAE,SAAS;AACtB,IAAA,oBAAoB,EAAE,SAAS;AAC/B,IAAA,uBAAuB,EAAE,eAAe;AACxC,IAAA,uBAAuB,EAAE,iBAAiB;AAC1C,IAAA,iBAAiB,EAAE,MAAM;AACzB,IAAA,yBAAyB,EAAG,oBAAoB;AAChD,IAAA,yBAAyB,EAAG,oBAAoB;AAChD,IAAA,iBAAiB,EAAE,MAAM;AACzB,IAAA,SAAS,EAAE,KAAK;AAChB,IAAA,eAAe,EAAE,OAAO;AACxB,IAAA,WAAW,EAAE,SAAS;AACtB,IAAA,UAAU,EAAE,OAAO;AACnB,IAAA,WAAW,EAAE,QAAQ;AACrB,IAAA,qBAAqB,EAAE,eAAe;AAEtC,IAAA,gBAAgB,EAAE,QAAQ;AAC1B,IAAA,eAAe,EAAE,WAAW;AAC5B,IAAA,eAAe,EAAE,SAAS;AAE1B,IAAA,oBAAoB,EAAE,SAAS;AAC/B,IAAA,aAAa,EAAE,WAAW;AAC1B,IAAA,QAAQ,EAAE,KAAK;AACf,IAAA,YAAY,EAAE,QAAQ;AACtB,IAAA,mBAAmB,EAAE,SAAS;AAC9B,IAAA,sBAAsB,EAAG,oBAAoB;AAC7C,IAAA,sBAAsB,EAAG,oBAAoB;AAE7C,IAAA,gBAAgB,EAAE,YAAY;AAC9B,IAAA,oBAAoB,EAAE,YAAY;AAClC,IAAA,kBAAkB,EAAE,WAAW;AAC/B,IAAA,mBAAmB,EAAE,aAAa;AAClC,IAAA,gBAAgB,EAAE,UAAU;AAC5B,IAAA,oBAAoB,EAAE,WAAW;AACjC,IAAA,cAAc,EAAC,eAAe;AAC9B,IAAA,UAAU,EAAE,IAAI;AAEhB,IAAA,cAAc,EAAE,WAAW;AAC3B,IAAA,eAAe,EAAE,QAAQ;AACzB,IAAA,UAAU,EAAE,IAAI;AAChB,IAAA,iBAAiB,EAAE,MAAM;AACzB,IAAA,WAAW,EAAE,QAAQ;AACrB,IAAA,WAAW,EAAE,QAAQ;AACrB,IAAA,UAAU,EAAE,OAAO;AACnB,IAAA,mBAAmB,EAAE,WAAW;AAChC,IAAA,UAAU,EAAE,IAAI;AAChB,IAAA,cAAc,EAAE,SAAS;AAEzB,IAAA,yBAAyB,EAAE,oBAAoB;AAC/C,IAAA,kBAAkB,EAAE,aAAa;AAEjC,IAAA,WAAW,EAAE,SAAS;AACtB,IAAA,gBAAgB,EAAE,YAAY;AAE9B,IAAA,aAAa,EAAE,MAAM;AACrB,IAAA,oBAAoB,EAAE,YAAY;AAClC,IAAA,uBAAuB,EAAE,mBAAmB;AAE5C,IAAA,oBAAoB,EAAE,YAAY;AAClC,IAAA,iBAAiB,EAAE,aAAa;AAChC,IAAA,oBAAoB,EAAE,SAAS;AAC/B,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,0BAA0B,EAAE,kBAAkB;AAC9C,IAAA,kBAAkB,EAAE,UAAU;AAC9B,IAAA,oBAAoB,EAAE,MAAM;AAC5B,IAAA,wBAAwB,EAAE,cAAc;AACxC,IAAA,cAAc,EAAE,UAAU;AAC1B,IAAA,sBAAsB,EAAE,YAAY;AACpC,IAAA,oBAAoB,EAAE,OAAO;AAC7B,IAAA,qBAAqB,EAAE,cAAc;AACrC,IAAA,uBAAuB,EAAE,YAAY;AACrC,IAAA,eAAe,EAAE,UAAU;AAC3B,IAAA,oBAAoB,EAAE,WAAW;AACjC,IAAA,2BAA2B,EAAE,aAAa;AAC1C,IAAA,gBAAgB,EAAE,SAAS;AAC3B,IAAA,4BAA4B,EAAE,eAAe;AAC7C,IAAA,kBAAkB,EAAE,UAAU;AAC9B,IAAA,yBAAyB,EAAE,WAAW;AACtC,IAAA,yBAAyB,EAAE,cAAc;AACzC,IAAA,kBAAkB,EAAE,QAAQ;AAC5B,IAAA,yBAAyB,EAAE,SAAS;AAEpC,IAAA,QAAQ,EAAE,MAAM;AAChB,IAAA,iBAAiB,EAAE,WAAW;AAC9B,IAAA,gBAAgB,EAAE,OAAO;AACzB,IAAA,gBAAgB,EAAE,OAAO;AACzB,IAAA,2BAA2B,EAAE,UAAU;AACvC,IAAA,eAAe,EAAE,OAAO;CAC3B;;MCxFY,kBAAkB,CAAA;AAEP,IAAA,MAAA,CAAA;AADZ,IAAA,WAAW,CAAM;AACzB,IAAA,WAAA,CAAoB,MAAqB,EAAA;QAArB,IAAM,CAAA,MAAA,GAAN,MAAM,CAAe;AACrC,QAAA,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,IAAI,EAAE;AACpF,YAAA,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;AAChC,SAAA;AAAM,aAAA;AACP,YAAA,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;AAC5B,SAAA;KACJ;AAEM,IAAA,QAAQ,CAAC,GAAG,EAAA;AACf,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;KAChC;IACM,mBAAmB,CAAC,kBAAkB,EAAE,QAAQ,EAAA;QACnD,IAAG,kBAAkB,IAAI,QAAQ,EAAC;AAC9B,YAAA,IAAI,MAAM,GAAG,kBAAkB,EAAE,WAAW,EAAE,MAAM,GAAG,kBAAkB,EAAE,WAAW,EAAE,MAAM,GAAG,CAAC,CAAC;YACnG,IAAI,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,EAAE,IAAI,GAAG,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;AAC7F,YAAA,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AACrE,SAAA;AACD,QAAA,OAAO,EAAE,CAAC;KACb;AACM,IAAA,aAAa,CAAC,IAAI,EAAA;QACrB,IAAI,aAAa,GAAG,IAAI,CAAC;AACzB,QAAA,IAAG,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAC;YACnC,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,+BAA+B,EAAC,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AACpH,SAAA;AACD,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,GAAG,aAAa,CAAC;KAC5F;2HA3BQ,kBAAkB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,EAAA,CAAA,aAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAlB,uBAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,cAFf,MAAM,EAAA,CAAA,CAAA;;4FAET,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAH9B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;;MCEY,yBAAyB,CAAA;AA4C5B,IAAA,cAAA,CAAA;AACA,IAAA,cAAA,CAAA;AACA,IAAA,SAAA,CAAA;AACA,IAAA,iBAAA,CAAA;AA7CT,IAAA,UAAU,GAAM,CAAC,eAAe,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,aAAa,EAAE,uBAAuB,EAAC,gBAAgB,EAAC,kBAAkB,EAAE,yBAAyB,EAAE,cAAc,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,gBAAgB,EAAE,8BAA8B,EAAE,sCAAsC,EAAE,oBAAoB,EAAE,SAAS,EAAE,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,aAAa,EAAE,eAAe,EAAE,iBAAiB,EAAC,wBAAwB,EAAC,gBAAgB,EAAC,uBAAuB,EAAC,kBAAkB,EAAC,yBAAyB,EAAC,eAAe,CAAC,CAAC;IAC7qB,QAAQ,GAAM,EAAE,CAAC;IAEjB,cAAc,GAAK,EAAE,CAAC;AACtB,IAAA,mBAAmB,GAAG,CAAC,KAAK,CAAC,CAAA;AAE7B,IAAA,UAAU,CAAM;AAChB,IAAA,qBAAqB,CAAM;AAC3B,IAAA,gBAAgB,CAAQ;AACxB,IAAA,QAAQ,CAAW;AACX,IAAA,SAAS,CAAM;IACvB,gBAAgB,GAAI,CAAC,iBAAiB,EAAC,mBAAmB,EAAC,SAAS,EAAC,mBAAmB,EAAC,sBAAsB,EAAC,iBAAiB,EAAC,YAAY,EAAC,oBAAoB,EAAC,cAAc,EAAE,kBAAkB,CAAC,CAAA;IACvM,YAAY,GAAK,CAAC,UAAU,EAAC,gBAAgB,EAAC,KAAK,EAAC,mBAAmB,EAAC,sBAAsB,EAAC,iBAAiB,EAAC,YAAY,EAAC,oBAAoB,EAAC,cAAc,EAAE,kBAAkB,CAAC,CAAA;AACtL,IAAA,wBAAwB,GAAG,CAAC,iBAAiB,EAAC,mBAAmB,EAAC,sBAAsB,EAAC,iBAAiB,EAAC,YAAY,EAAC,oBAAoB,EAAC,cAAc,EAAE,kBAAkB,CAAC,CAAA;AAChL,IAAA,wBAAwB,GAAE,CAAC,iBAAiB,EAAC,mBAAmB,EAAC,sBAAsB,EAAC,iBAAiB,EAAC,YAAY,EAAC,oBAAoB,EAAC,cAAc,EAAE,kBAAkB,CAAC,CAAA;AAE/K,IAAA,iBAAiB,GAAG;AACb,QAAA,wBAAwB,EAAG,IAAI;AAC/B,QAAA,yCAAyC,EAAG,IAAI;AAChD,QAAA,uCAAuC,EAAG,IAAI;AAC9C,QAAA,wBAAwB,EAAG,IAAI;AAC/B,QAAA,mBAAmB,EAAG,IAAI;AAC1B,QAAA,qBAAqB,EAAG,KAAK;AAC7B,QAAA,kBAAkB,EAAG,KAAK;AAC1B,QAAA,6BAA6B,EAAG,KAAK;AACrC,QAAA,yBAAyB,EAAG,KAAK;AACjC,QAAA,sBAAsB,EAAG,IAAI;AAC7B,QAAA,uBAAuB,EAAG,IAAI;AAC9B,QAAA,qBAAqB,EAAG,KAAK;AAC7B,QAAA,yBAAyB,EAAG,KAAK;AACjC,QAAA,sBAAsB,EAAG,IAAI;AAC7B,QAAA,iBAAiB,EAAG,IAAI;AACxB,QAAA,yBAAyB,EAAG,KAAK;AACjC,QAAA,4BAA4B,EAAG,IAAI;AACnC,QAAA,4BAA4B,EAAG,IAAI;AACnC,QAAA,oBAAoB,EAAG,IAAI;AAC3B,QAAA,yBAAyB,EAAE,IAAI;KAClC,CAAA;AAIJ,IAAA,WAAA,CACS,cAA8B,EAC9B,cAA6B,EAC7B,SAA4B,EAC5B,iBAAoC,EAAA;QAHpC,IAAc,CAAA,cAAA,GAAd,cAAc,CAAgB;QAC9B,IAAc,CAAA,cAAA,GAAd,cAAc,CAAe;QAC7B,IAAS,CAAA,SAAA,GAAT,SAAS,CAAmB;QAC5B,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAAmB;KAAI;IAEjD,oBAAoB,GAAA;QACnB,OAAO,IAAI,CAAC,iBAAiB,CAAC;KAC9B;AACD,IAAA,mBAAmB,CAAC,SAAS,EAAA;AACtB,QAAA,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;AAC3B,YAAA,KAAK,IAAI,IAAI,IAAI,SAAS,EAAE;AACxB,gBAAA,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;AACxB,oBAAA,IAAI,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE;wBACjD,KAAK,IAAI,YAAY,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;AAChD,4BAAA,IAAI,IAAI,CAAC,EAAE,IAAI,YAAY,CAAC,EAAE,EAAE;AAC5B,gCAAA,IAAI,CAAC,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC;AACzC,6BAAA;AACJ,yBAAA;AACJ,qBAAA;AACJ,iBAAA;qBACI,IAAI,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE;oBAC/C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;AAC7C,iBAAA;AACJ,aAAA;AACJ,SAAA;AACD,QAAA,OAAO,SAAS,CAAC;KACpB;IAEJ,WAAW,CAAC,UAAU,EAAE,SAAS,EAAA;AAC1B,QAAA,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;AAC7B,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;AACnB,QAAA,IAAI,gBAAgB,CAAC;QACrB,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE;AAClG,YAAA,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;AAC1D,SAAA;AACI,aAAA;YACD,gBAAgB,GAAG,SAAS,CAAC;AAChC,SAAA;AACD,QAAA,gBAAgB,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AAC9B,YAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACpD,YAAA,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,SAAS,KAAI;AACjD,gBAAA,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;AAC9D,gBAAA,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,KAAI;AACvD,oBAAA,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC1D,iBAAC,CAAC,CAAC;AACP,aAAC,CAAC,CAAC;AACP,SAAC,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,SAAS,GAAG,gBAAgB,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,qBAAqB,CAAC,CAAC;AACpF,QAAA,IAAI,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAClF,QAAA,IAAI,CAAC,cAAc,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,EAAE,CAAC,CAAC;AAC/D,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC;QACpC,IAAG,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,cAAc,KAAK,KAAK;YAC5D,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,cAAc,KAAK,KAAK;YAC5D,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,IAAI,yBAAyB,EAAE;AAC7D,YAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,IAAI,KAAI;gBAChD,QAAQ,IAAI,IAAI,mCAAmC,IAAI,IAAI,IAAI,sCAAsC,EAAE;AAC3G,aAAC,CAAC,CAAC;AACN,SAAA;AACD,QAAA,KAAK,IAAI,OAAO,IAAI,eAAe,EAAE;AACjC,YAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;gBACxC,IAAI,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;AAChD,gBAAA,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,IAAI,SAAS,EAAE;AACpC,oBAAA,IAAI,OAAO,CAAC,EAAE,IAAI,gBAAgB,EAAE;wBAChC,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;AAC3C,4BAAA,KAAK,IAAI,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE;gCAC7B,IAAI,CAAC,IAAI,CAAC,qBAAqB,IAAI,KAAK,CAAC,EAAE,IAAI,kBAAkB,EAAE;AAC/D,oCAAA,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,EAAE,KAAK,eAAe,CAAC,CAAC;AACrF,iCAAA;AACJ,6BAAA;AACJ,yBAAA;AACD,wBAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,qBAAA;AACI,yBAAA;AACD,wBAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,qBAAA;AACJ,iBAAA;AACJ,aAAA;AACI,iBAAA,IAAI,OAAO,CAAC,IAAI,IAAI,YAAY,EAAE;gBACnC,IAAI,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;gBAChD,IAAI,IAAI,IAAI,SAAS,EAAE;AACnB,oBAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,iBAAA;AACJ,aAAA;AACJ,SAAA;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;KACxB;AAEJ,IAAA,sBAAsB,CAAC,eAAmB,EAAA;AACzC,QAAA,IAAI,QAAQ,GAAG;AACd,YAAA,QAAQ,EAAG,EAAE;SACb,CAAC;AAEF,QAAA,IAAG,eAAe,CAAC,IAAI,IAAI,YAAY,EAAC;YACvC,IAAI,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;AAC3C,YAAA,MAAM,oBAAoB,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAA;AAC3F,YAAA,IAAG,oBAAoB,EAAC;AACvB,gBAAA,IAAI,aAAa,GAAG,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;AACvF,gBAAA,IAAG,aAAa,EAAC;oBAChB,QAAQ,GAAG,eAAe,CAAC;AAC3B,iBAAA;AACG,qBAAA;;oBAEH,OAAO;AACP,iBAAA;AACD,aAAA;AACG,iBAAA;gBACH,QAAQ,GAAG,eAAe,CAAC;AAC3B,aAAA;AACD,SAAA;AACG,aAAA;YACH,IAAI,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;AAC3C,YAAA,MAAM,oBAAoB,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAA;AAC3F,YAAA,IAAG,CAAC,oBAAoB,KAAK,oBAAoB,IAAI,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,EAAE;gBACzH,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,KAAG;AAC3C,oBAAA,IAAI,OAAO,eAAe,CAAC,GAAG,CAAC,IAAI,QAAQ,EAAG;wBAC7C,QAAQ,CAAC,GAAG,CAAC,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;AACrC,qBAAA;AACF,iBAAC,CAAC,CAAA;AACF,gBAAA,QAAQ,CAAC,QAAQ,GAAG,EAAE,CAAC;AACvB,gBAAA,KAAI,IAAI,KAAK,IAAI,eAAe,CAAC,QAAQ,EAAC;oBACzC,IAAI,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;oBAClD,IAAG,QAAQ,IAAI,IAAI,EAAC;AACnB,wBAAA,IAAG,QAAQ,CAAC,QAAQ,IAAI,SAAS,EAAC;AACjC,4BAAA,IAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAC;AAC/B,gCAAA,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACjC,6BAAA;AACD,yBAAA;AACG,6BAAA;AACH,4BAAA,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACjC,yBAAA;AACD,qBAAA;AACD,iBAAA;AACD,aAAA;AAAI,iBAAA;gBACJ,OAAO;AACP,aAAA;AACD,SAAA;AACD,QAAA,OAAO,QAAQ,CAAC;KAChB;IAED,qBAAqB,CAAC,UAAgB,EAAE,SAAS,EAAA;AAChD,QAAA,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;AAC7B,QAAA,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;AAC3B,QAAA,IAAI,kBAAkB,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,IAAG,IAAI,CAAC,EAAE,IAAI,qBAAqB,CAAC,CAAA;AAClF,QAAA,IAAI,0BAA0B,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACjG,QAAA,KAAK,IAAI,OAAO,IAAI,0BAA0B,EAAE;AAC/C,YAAA,IAAG,OAAO,CAAC,IAAI,IAAI,YAAY,EAAC;gBAC/B,IAAI,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;AAChD,gBAAA,IAAG,IAAI,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAC;AACpD,oBAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACjC,iBAAA;AACD,aAAA;AAAK,iBAAA,IAAG,OAAO,CAAC,IAAI,IAAI,YAAY,EAAC;gBACrC,IAAI,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;gBAChD,IAAG,IAAI,IAAI,SAAS,EAAC;AACpB,oBAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAChC,iBAAA;AACD,aAAA;AACD,SAAA;QACD,OAAO,IAAI,CAAC,gBAAgB,CAAC;KAC7B;AAED,IAAA,kBAAkB,CAAC,eAAoB,EAAE,UAAU,EAAE,OAAiB,EAAA;QACrE,IAAI,WAAW,GAAG,KAAK,CAAC;AACxB,QAAA,KAAI,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,eAAe,CAAC,EAAE,IAAI,cAAc;YAC1E,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,GAAE;AAC1D,YAAA,OAAO,IAAI,CAAC;AACZ,SAAA;AACI,aAAA,IAAG,eAAe,CAAC,EAAE,KAAK,qBAAqB,EAAE;AACrD,YAAA,IAAG,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,EAAC;AAC7F,gBAAA,OAAO,IAAI,CAAC;AACZ,aAAA;AACG,iBAAA;AACH,gBAAA,OAAO,KAAK,CAAC;AACb,aAAA;AACD,SAAA;AACD,QAAA,KAAI,IAAI,IAAI,IAAI,UAAU,EAAC;AAC1B,YAAA,IAAG,eAAe,CAAC,IAAI,CAAC,IAAI,SAAS,EAAC;AACrC,gBAAA,QAAO,IAAI;oBACV,KAAK,kBAAkB,EAAE;wBACxB,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;wBACzD,MAAM;AACL,qBAAA;oBACD,KAAK,yBAAyB,EAAE;wBAC/B,WAAW,GAAG,IAAI,CAAC,4BAA4B,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;wBACxE,MAAM;AACL,qBAAA;oBACD,KAAK,sBAAsB,EAAC;wBAC3B,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;wBACrE,MAAM;AACL,qBAAA;oBACD,KAAK,kBAAmB,EAAE;AACzB,wBAAA,IAAG,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,cAAc,EAAE;4BACnF,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,IAAI,CAAC,EAAC,eAAe,EAAC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;AAC7H,yBAAA;AAAM,6BAAA,IAAG,IAAI,CAAC,UAAU,CAAC,mBAAmB,IAAI,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,cAAc,EAAE;4BACpG,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,IAAI,CAAC,EAAC,eAAe,EAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC;AAClI,yBAAA;AAAM,6BAAA;4BACN,WAAW,GAAG,KAAK,CAAC;AACpB,yBAAA;wBACF,MAAM;AACL,qBAAA;oBACD,KAAK,yBAA0B,EAAE;AAChC,wBAAA,IAAG,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,cAAc,EAAE;4BACnF,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,eAAe,CAAC,IAAI,CAAC,EAAC,eAAe,EAAC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;AAClI,yBAAA;AAAM,6BAAA,IAAG,IAAI,CAAC,UAAU,CAAC,mBAAmB,IAAI,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,cAAc,EAAE;4BACpG,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,eAAe,CAAC,IAAI,CAAC,EAAC,eAAe,EAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC;AACvI,yBAAA;AAAM,6BAAA;4BACN,WAAW,GAAG,KAAK,CAAC;AACpB,yBAAA;wBACD,MAAM;AACN,qBAAA;oBACD,KAAK,eAAe,EAAC;AACpB,wBAAA,IAAG,IAAI,CAAC,UAAU,CAAC,mBAAmB,IAAI,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,cAAc,EAAE;4BAC7F,WAAW,GAAG,IAAI,CAAC,uBAAuB,CAAC,eAAe,CAAC,IAAI,CAAC,EAAC,eAAe,EAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC;AACrI,yBAAA;AAAM,6BAAA;4BACN,WAAW,GAAG,KAAK,CAAC;AACpB,yBAAA;wBACD,MAAM;AACN,qBAAA;oBACD,KAAK,aAAc,EAAE;AACpB,wBAAA,IAAG,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,YAAY,EAAE;4BACjF,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,IAAI,CAAC,EAAC,eAAe,EAAC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;AAC3H,yBAAA;AAAM,6BAAA;4BACN,WAAW,GAAG,KAAK,CAAC;AACpB,yBAAA;wBACF,MAAM;AACL,qBAAA;oBACD,KAAK,oBAAqB,EAAE;wBAC3B,WAAW,GAAG,IAAI,CAAC,gCAAgC,CAAC,eAAe,CAAC,IAAI,CAAC,EAAC,eAAe,EAAC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;wBACvI,MAAM;AACN,qBAAA;oBACD,KAAK,kBAAmB,EAAE;AACzB,wBAAA,IAAG,IAAI,CAAC,UAAU,CAAC,cAAc,EAAC;4BACjC,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7D,yBAAA;AAAK,6BAAA;4BACL,WAAW,GAAG,KAAK,CAAC;AACpB,yBAAA;wBACD,MAAM;AACN,qBAAA;oBACD,KAAK,cAAe,EAAE;AACrB,wBAAA,IAAG,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,EAAE;AACzE,4BAAA,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;AACpD,yBAAA;AAAM,6BAAA;4BACN,WAAW,GAAG,KAAK,CAAC;AACpB,yBAAA;wBACF,MAAM;AACL,qBAAA;oBACD,KAAK,sBAAuB,EAAE;wBAC7B,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;wBAC/D,MAAM;AACL,qBAAA;oBAAA,KAAK,iBAAkB,EAAE;wBACzB,WAAW,GAAG,IAAI,CAAC,sBAAsB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;wBAClE,MAAM;AACL,qBAAA;oBACD,KAAK,wBAAwB,EAAE;wBAC9B,WAAW,GAAG,IAAI,CAAC,2BAA2B,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;wBACtE,MAAM;AACN,qBAAA;oBACD,KAAK,6BAA8B,EAAE;wBACpC,WAAW,GAAG,IAAI,CAAC,sBAAsB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;wBAClE,MAAM;AACL,qBAAA;;oBAED,KAAK,2BAA2B,EAAE;wBACjC,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;wBAC7D,MAAM;AACL,qBAAA;oBACD,KAAK,SAAU,EAAE;wBAChB,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;wBAC3D,MAAM;AACL,qBAAA;oBACD,KAAK,YAAa,EAAE;wBACnB,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;wBAC9D,MAAM;AACL,qBAAA;oBACD,KAAK,oBAAqB,EAAE;AAC3B,wBAAA,IAAG,eAAe,CAAC,cAAc,CAAC,IAAI,SAAS,EAAC;AAC/C,4BAAA,IAAG,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,YAAY,EAAE;gCACjF,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAA;AAC/D,6BAAA;AAAM,iCAAA;gCACN,WAAW,GAAG,KAAK,CAAC;AACpB,6BAAA;AACD,yBAAA;AAAI,6BAAA;AACJ,4BAAA,IAAG,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,EAAE;AACzE,gCAAA,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;AACpD,6BAAA;AAAM,iCAAA;gCACN,WAAW,GAAG,KAAK,CAAC;AACpB,6BAAA;AACD,yBAAA;wBACF,MAAM;AACL,qBAAA;oBACD,KAAK,gBAAiB,EAAE;AACvB,wBAAA,IAAG,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAC;4BACpC,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAA;AAC9D,yBAAA;AACG,6BAAA;4BACH,WAAW,GAAG,IAAI,CAAC;AACnB,yBAAA;wBACF,MAAM;AACL,qBAAA;oBACD,KAAK,kBAAkB,EAAE;AACxB,wBAAA,IAAI,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE;4BACtC,WAAW,GAAG,IAAI,CAAC,sBAAsB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAA;AAChE,yBAAA;AACI,6BAAA;4BACJ,WAAW,GAAG,IAAI,CAAC;AACnB,yBAAA;wBACD,MAAM;AACN,qBAAA;oBACD,KAAK,yBAAyB,EAAE;AAC/B,wBAAA,IAAI,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE;4BACtC,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAA;AACnE,yBAAA;AACI,6BAAA;4BACJ,WAAW,GAAG,IAAI,CAAC;AACnB,yBAAA;wBACD,MAAM;AACN,qBAAA;oBACD,KAAK,8BAA+B,EAAE;AACrC,wBAAA,IAAG,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAC;4BACpC,WAAW,GAAG,IAAI,CAAC,yBAAyB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAA;AACnE,yBAAA;AACG,6BAAA;4BACH,WAAW,GAAG,IAAI,CAAC;AACnB,yBAAA;wBACD,MAAM;AACN,qBAAA;oBACD,KAAK,sCAAuC,EAAE;AAC7C,wBAAA,IAAG,IAAI,CAAC,UAAU,CAAC,wBAAwB,EAAC;4BAC3C,WAAW,GAAG,IAAI,CAAC,gCAAgC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAA;AAC1E,yBAAA;AACG,6BAAA;4BACH,WAAW,GAAG,IAAI,CAAC;AACnB,yBAAA;wBACD,MAAM;AACN,qBAAA;oBACD,KAAK,aAAc,EAAE;wBACpB,WAAW,GAAG,IAAI,CAAC,wBAAwB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAA;wBAClE,MAAM;AACN,qBAAA;oBACD,KAAK,eAAgB,EAAE;wBACtB,WAAW,GAAG,IAAI,CAAC,sBAAsB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAA;wBAChE,MAAM;AACN,qBAAA;oBACD,KAAK,gBAAgB,EAAE;AACtB,wBAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE;4BACvC,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAA;AAC9D,yBAAA;wBACD,MAAM;AACN,qBAAA;oBACD,KAAK,uBAAuB,EAAE;wBAC7B,WAAW,GAAG,IAAI,CAAC,wBAAwB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;wBACnE,MAAM;AACN,qBAAA;oBACD,KAAK,gBAAgB,EAAE;wBACtB,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;wBAC9D,MAAM;AACN,qBAAA;oBACD,KAAK,uBAAuB,EAAE;wBAC7B,WAAW,GAAG,IAAI,CAAC,sBAAsB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;wBACjE,MAAM;AACN,qBAAA;;;;;AAKD,iBAAA;gBACD,IAAG,CAAC,WAAW,EAAC;AACf,oBAAA,OAAO,KAAK,CAAC;AACb,iBAAA;AACD,aAAA;AAAI,iBAAA;gBACJ,WAAW,GAAG,IAAI,CAAC;AACnB,aAAA;AACD,SAAA;AAED,QAAA,OAAO,WAAW,CAAC;KACnB;AAED,IAAA,kBAAkB,CAAC,cAAmB,EAAA;AACrC,QAAA,IAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAC;AACpE,YAAA,OAAO,IAAI,CAAC;AACZ,SAAA;AACG,aAAA;AACH,YAAA,OAAO,KAAK,CAAC;AACb,SAAA;KACD;AAED,IAAA,oBAAoB,CAAC,cAAmB,EAAA;QACvC,IAAG,IAAI,CAAC,UAAU,CAAC,iBAAiB,IAAI,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAC;AAClH,YAAA,OAAO,IAAI,CAAC;AACZ,SAAA;AACG,aAAA;AACH,YAAA,OAAO,KAAK,CAAC;AACb,SAAA;KACD;AACD,IAAA,sBAAsB,CAAC,cAAmB,EAAA;QACzC,IAAI,KAAK,GAAG,KAAK,CAAC;QAClB,IAAG,IAAI,CAAC,UAAU,CAAC,iBAAiB,IAAI,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,EAAC;YACvH,KAAK,GAAG,IAAI,CAAC;AACb,SAAA;AACD,QAAA,OAAO,KAAK,CAAC;KACb;AACD,IAAA,yBAAyB,CAAC,cAAmB,EAAA;QAC5C,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,IAAG,IAAI,CAAC,UAAU,CAAC,iBAAiB,IAAI,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,EAAC;YACvH,KAAK,GAAG,KAAK,CAAC;AACd,SAAA;AACD,QAAA,OAAO,KAAK,CAAC;KACb;AACD,IAAA,yBAAyB,CAAC,cAAmB,EAAA;QAC5C,IAAG,IAAI,CAAC,UAAU,CAAC,iBAAiB,IAAI,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAC;AAC3H,YAAA,OAAO,IAAI,CAAC;AACZ,SAAA;AACG,aAAA;AACH,YAAA,OAAO,KAAK,CAAC;AACb,SAAA;KACD;AAED,IAAA,gCAAgC,CAAC,cAAmB,EAAA;QACnD,IAAG,IAAI,CAAC,UAAU,CAAC,wBAAwB,IAAI,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAC;AACzI,YAAA,OAAO,IAAI,CAAC;AACZ,SAAA;AACG,aAAA;AACH,YAAA,OAAO,KAAK,CAAC;AACb,SAAA;KACD;AAED,IAAA,wBAAwB,CAAC,cAAmB,EAAA;AAC3C,QAAA,OAAO,cAAc,IAAI,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KACjF;AAED,IAAA,qBAAqB,CAAC,cAAmB,EAAA;QACxC,KAAI,IAAI,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,YAAY,EAAC;AAC/D,YAAA,IAAG,CAAC,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,MAAM,IAAI,QAAQ,EAAC;AAC9E,gBAAA,OAAO,IAAI,CAAC;AACZ,aAAA;AACD,SAAA;AACD,QAAA,OAAO,KAAK,CAAC;KACb;AAED,IAAA,eAAe,CAAC,cAAmB,EAAA;AAClC,QAAA,IAAG,IAAI,CAAC,UAAU,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,IAAI,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,EAAC;AAC3I,YAAA,OAAO,IAAI,CAAC;AACZ,SAAA;AACG,aAAA;AACH,YAAA,OAAO,KAAK,CAAC;AACb,SAAA;KACD;AACD,IAAA,kBAAkB,CAAC,cAAmB,EAAA;AACrC,QAAA,IAAG,IAAI,CAAC,UAAU,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,IAAI,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,EAAC;AAC3I,YAAA,OAAO,KAAK,CAAC;AACb,SAAA;AACG,aAAA;AACH,YAAA,OAAO,IAAI,CAAC;AACZ,SAAA;KACD;;AAGD,IAAA,iBAAiB,CAAC,cAA6B,EAAA;QAC9C,IAAI;AACH,YAAA,MAAM,IAAI,GAAG,CAAC,aAAa,EAAE,uBAAuB,CAAC,CAAC;;AAEtD,YAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC3H,IAAI,KAAK,GAAG,KAAK,CAAC;;gBAIlB,IAAI,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,GAAW,KAAI;oBACpD,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,OAAY,EAAI,EAAA,OAAO,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;AAC9G,iBAAC,CAAC,CAAC;;gBAIH,IAAI,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC,GAAW,KAAI;AACpD,oBAAA,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,OAAY,EAAI,EAAA,OAAO,GAAG,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,KAAK,IAAI,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;AAC3I,iBAAC,CAAC,CAAC;;AAGH,gBAAA,IAAI,CAAC,UAAU,IAAI,SAAS,EAAE;oBAC7B,KAAK,GAAG,IAAI,CAAC;AACb,iBAAA;AACD,gBAAA,OAAO,KAAK,CAAC;AACb,aAAA;AAAM,iBAAA;AACN,gBAAA,OAAO,IAAI,CAAC;AACZ,aAAA;AACD,SAAA;AAAC,QAAA,OAAO,KAAK,EAAE;AACf,YAAA,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;AACpB,SAAA;KACD;AAED,IAAA,mBAAmB,CAAC,cAAmB,EAAA;QACtC,IAAG;YACF,IAAI,KAAK,GAAG,KAAK,CAAC;AAClB,YAAA,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC1E,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,UAAS,UAAU,EAAA;AAC3D,oBAAA,IAAG,CAAC,UAAU,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,IAAI,QAAQ,EAAE;wBACzE,OAAO,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AACnD,qBAAA;oBAAA,CAAC;AACH,iBAAC,CAAC,CAAA;AACF,gBAAA,OAAO,KAAK,CAAC;AACb,aAAA;AAAM,iBAAA;AACN,gBAAA,OAAO,KAAK,CAAC;AACb,aAAA;AACD,SAAA;AAAA,QAAA,OAAM,KAAK,EAAC;AACZ,YAAA,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;AACpB,SAAA;KACD;AAED,IAAA,sBAAsB,CAAC,cAAmB,EAAA;AACzC,QAAA,IAAG,IAAI,CAAC,UAAU,CAAC,cAAc,EAAC;YACjC,KAAI,IAAI,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,EAAC;AAClD,gBAAA,IAAG,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,EAAC;AAC5E,oBAAA,OAAO,IAAI,CAAC;AACZ,iBAAA;AACD,aAAA;AACD,YAAA,OAAO,KAAK,CAAC;AACb,SAAA;AAAI,aAAA;AACJ,YAAA,OAAO,KAAK,CAAC;AACb,SAAA;KACD;AACD,IAAA,2BAA2B,CAAC,cAAmB,EAAA;QAC9C,IAAG;YACF,IAAI,KAAK,GAAG,IAAI,CAAC;AACjB,YAAA,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;AAChF,gBAAA,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,aAAa,KAAI;oBAC7D,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC;AAClD,yBAAC,cAAc,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC;4BAC5C,aAAa,CAAC,MAAM,IAAI,aAAa,CAAC,MAAM,IAAI,WAAW,CAAC,EAAC;AAChE,iBAAC,CAAC,CAAC;AACH,gBAAA,OAAO,KAAK,CAAC;AACb,aAAA;AAAM,iBAAA;AACN,gBAAA,OAAO,KAAK,CAAC;AACb,aAAA;AACD,SAAA;AAAA,QAAA,OAAM,KAAK,EAAC;AACZ,YAAA,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;AACpB,SAAA;KACD;AAED,IAAA,mBAAmB,CAAC,cAAmB,EAAA;AACtC,QAAA,IAAI,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,YAAY;YACnD,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,YAAY,CAAC,EAAE;AAC3E,YAAA,OAAO,IAAI,CAAC;AACZ,SAAA;AACI,aAAA;AACJ,YAAA,OAAO,KAAK,CAAC;AACb,SAAA;KACD;AACD,IAAA,sBAAsB,CAAC,cAAmB,EAAA;AACzC,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,YAAY,KAAK,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,YAAY;AACzG,YAAA,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC,EAAE;AAC7E,YAAA,OAAO,IAAI,CAAC;AACZ,SAAA;AACI,aAAA;AACJ,YAAA,OAAO,KAAK,CAAC;AACb,SAAA;KACD;AACD,IAAA,sBAAsB,CAAC,cAAmB,EAAA;QACzC,IAAI,KAAK,GAAG,IAAI,CAAC;AACjB,QAAA,IAAG,IAAI,CAAC,UAAU,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAC;YACxE,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,UAAS,UAAU,EAAA;gBAC3D,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC;AACnD,qBAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC;wBAC5C,UAAU,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,IAAI,WAAW,CAAC,EAAC;AAEvD,aAAC,CAAC,CAAC;AACH,YAAA,OAAO,KAAK,CAAC;AACb,SAAA;AAAI,aAAA;AACJ,YAAA,OAAO,KAAK,CAAC;AACb,SAAA;KACD;AAED,IAAA,oBAAoB,CAAC,cAAmB,EAAA;QACvC,IAAI,KAAK,GAAG,KAAK,CAAC;AAClB,QAAA,IAAG,IAAI,CAAC,UAAU,CAAC,aAAa,EAAC;AAChC,YAAA,KAAK,IAAI,IAAI,IAAI,cAAc,EAAE;gBAChC,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;AAC5C,gBAAA,KAAK,GAAG,KAAK,IAAI,SAAS,GAAG,IAAI,GAAG,KAAK,CAAC;AAC1C,aAAA;AACD,SAAA;AACD,QAAA,OAAO,KAAK,CAAC;KACb;AAED,IAAA,wBAAwB,CAAC,cAAmB,EAAA;QAC3C,IAAI,KAAK,GAAG,IAAI,CAAC;AACjB,QAAA,IAAG,IAAI,CAAC,UAAU,CAAC,aAAa,EAAC;AAChC,YAAA,KAAK,IAAI,IAAI,IAAI,cAAc,EAAE;gBAChC,KAAK,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;AAC7C,aAAA;AACD,SAAA;AACD,QAAA,OAAO,KAAK,CAAC;KACb;AAED,IAAA,eAAe,CAAC,QAAa,EAAA;AAC5B,QAAA,IAAG,QAAQ,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAC;AAC7E,YAAA,OAAO,IAAI,CAAC;AACZ,SAAA;AACG,aAAA;AACH,YAAA,IAAG,QAAQ,CAAC,oBAAoB,CAAC,EAAC;gBACjC,OAAO,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAA;AACjE,aAAA;AACG,iBAAA;AACH,gBAAA,OAAO,KAAK,CAAC;AACb,aAAA;AACD,SAAA;KACD;AAED,IAAA,oBAAoB,CAAC,cAAmB,EAAG,eAAmB,EAAG,EAAS,EAAA;AACzE,QAAA,IAAG,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,EAAC;AACvB,YAAA,KAAK,IAAI,IAAI,IAAI,cAAc,EAAE;AAChC,gBAAA,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE;oBACnB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,KAAG;wBAChC,IAAI,GAAG,IAAI,IAAI,EAAE;4BAChB,eAAe,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;AACjC,yBAAA;AACF,qBAAC,CAAC,CAAA;AACF,oBAAA,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAC,eAAe,CAAC,IAAI,GAAC,wBAAwB,GAAC,eAAe,CAAC,KAAK,CAAC,CAAC;AACpG,oBAAA,OAAO,IAAI,CAAC;AACZ,iBAAA;AACD,aAAA;AACD,YAAA,OAAO,IAAI,CAAC;AACZ,SAAA;AACI,aAAA;YACJ,IAAG,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,EAAC;AAClC,gBAAA,OAAO,IAAI,CAAC;AACZ,aAAA;AACG,iBAAA;AACH,gBAAA,OAAO,KAAK,CAAC;AACb,aAAA;AACD,SAAA;KACD;AACD,IAAA,uBAAuB,CAAC,cAAmB,EAAG,eAAmB,EAAG,EAAS,EAAA;QAC5E,IAAI,KAAK,GAAG,IAAI,CAAC;AACjB,QAAA,IAAI,cAAc,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;YAChD,IAAI,SAAS,GAAG,EAAE,CAAC;AACnB,YAAA,KAAK,IAAI,IAAI,IAAI,cAAc,EAAE;gBAChC,IAAI,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChC,gBAAA,IAAI,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;AAC1D,gBAAA,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACrB,aAAA;AACD,YAAA,KAAK,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AAEhD,SAAA;AACD,QAAA,OAAO,KAAK,CAAC;KACb;AACD,IAAA,yBAAyB,CAAC,cAAmB,EAAG,eAAmB,EAAG,EAAS,EAAA;QAC9E,OAAO,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;KACtC;AAED,IAAA,gCAAgC,CAAC,cAAmB,EAAG,eAAmB,EAAG,EAAS,EAAA;QACrF,OAAO,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;KACtC;AAED,IAAA,aAAa,CAAC,cAAmB,EAAA;AAChC,QAAA,IAAG,cAAc,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAC;AAC9C,YAAA,IAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAC;AAC7D,gBAAA,OAAO,IAAI,CAAC;AACZ,aAAA;AACG,iBAAA;AACH,gBAAA,OAAO,KAAK,CAAC;AACb,aAAA;AACD,SAAA;AACD,QAAA,OAAO,IAAI,CAAC;KACZ;AAED,IAAA,4BAA4B,CAAC,cAAmB,EAAA;AAC/C,QAAA,IAAG,cAAc,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAC;AAC9C,YAAA,IAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAC;AAC7D,gBAAA,OAAO,KAAK,CAAC;AACb,aAAA;AAAI,iBAAA;AACJ,gBAAA,OAAO,IAAI,CAAC;AACZ,aAAA;AACD,SAAA;AACD,QAAA,OAAO,IAAI,CAAC;KACZ;AAED,IAAA,sBAAsB,CAAC,cAAmB,EAAA;AACzC,QAAA,IAAG,cAAc,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAC;YAC9C,IAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,YAAY,EAAC;AACtG,gBAAA,OAAO,KAAK,CAAC;AACb,aAAA;AACG,iBAAA;AACH,gBAAA,OAAO,IAAI,CAAC;AACZ,aAAA;AACD,SAAA;AACD,QAAA,OAAO,IAAI,CAAC;KACZ;AAEM,IAAA,yBAAyB,CAAC,cAAmB,EAAA;QACnD,IAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,KAAK,WAAW,IAAI,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,EAAC;AAC9H,YAAA,OAAO,KAAK,CAAC;AACb,SAAA;AACG,aAAA;AACH,YAAA,OAAO,IAAI,CAAC;AACZ,SAAA;KACD;AAEM,IAAA,wBAAwB,CAAC,KAAK,EAAG,aAAa,GAAC,SAAS,EAAA;AAC9D,QAAA,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE;YAC9C,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,IAAG;AAClD,gBAAA,IAAI,aAAa,EAAE;oBAClB,MAAM,GAAG,EAAC,GAAG,MAAM,EAAE,GAAG,aAAa,EAAC,CAAC;AACvC,iBAAA;AAED,gBAAA,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAC;oBAC7D,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5B,oBAAA,IAAI,SAAS,GAAG,EAAE,QAAQ,EAAG,IAAI,EAAC,CAAA;oBAClC,MAAM,GAAG,EAAE,GAAG,MAAM,EAAG,GAAG,SAAS,EAAC,CAAA;AACpC,iBAAA;AACD,gBAAA,IAAI,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;gBACpF,aAAa,GAAG,CAAG,EAAA,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAA,CAAA,EAAI,aAAa,CAAA,CAAE,CAAA;;AAE5D,gBAAA,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAC,aAAa,CAAC,CAAC;AAC9C,gBAAA,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;AACrC,aAAC,CAAC,CAAC;AACH,SAAA;KACE;AAEG,IAAA,aAAa,CAAC,GAAW,EAAA;QAC/B,IAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE;YACrD,QAAQ,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;AAC7C,SAAA;AAAM,aAAA;AACN,YAAA,OAAO,IAAI,CAAC;AACZ,SAAA;KAED;AAEM,IAAA,kBAAkB,CAAC,KAAY,EAAA;QACrC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,sBAAsB,CAAC,GAAG,KAAK,CAAC;KAC/D;AAEM,IAAA,qBAAqB,CAAC,EAAE,EAAC,IAAI,EAAC,IAAI,EAAA;AACtC,QAAA,IAAG,EAAE,KAAK,wBAAwB,IAAI,IAAI,CAAC,uBAAuB,CAAC,IAAI,EAAE,IAAI,EAAE,iBAAiB,CAAC,EAAE;AACjG,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;AAAM,aAAA,IAAG,EAAE,KAAK,gBAAgB,IAAI,IAAI,CAAC,uBAAuB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE;AACpF,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;AAAM,aAAA,IAAG,CAAC,EAAE,KAAK,oBAAoB,KAAK,IAAI,CAAC,uBAAuB,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE;AAC9F,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;AAAM,aAAA,IAAG,CAAC,EAAE,KAAK,eAAe,KAAK,IAAI,CAAC,uBAAuB,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,EAAE;AAC3F,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;AAAK,aAAA,IAAG,CAAC,EAAE,KAAK,YAAY,KAAK,IAAI,CAAC,uBAAuB,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE;AACxF,YAAA,OAAO,IAAI,CAAC;AACZ,SAAA;AAAK,aAAA,IAAG,CAAC,EAAE,KAAK,aAAa,KAAK,IAAI,CAAC,uBAAuB,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE;AACvF,YAAA,OAAO,IAAI,CAAC;AACZ,SAAA;aAAK,IAAG,EAAE,KAAK,mBAAmB,IAAG,EAAE,KAAK,kBAAkB,IAAI,EAAE,KAAK,mBAAmB,EAAE;AAC9F,YAAA,OAAO,IAAI,CAAC;AACZ,SAAA;aAAK,IAAG,EAAE,KAAK,wBAAwB,IAAI,EAAE,KAAK,kBAAkB,IAAI,EAAE,KAAK,kBAAkB,EAAE;AAC/F,YAAA,KAAI,IAAI,QAAQ,IAAI,IAAI,EAAC;gBACvB,IAAG,QAAQ,CAAC,IAAI,IAAI,IAAI,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,EAAC;AACtD,oBAAA,OAAO,IAAI,CAAC;AACb,iBAAA;AACF,aAAA;AACD,YAAA,OAAO,KAAK,CAAC;AACd,SAAA;AACD,QAAA,OAAO,KAAK,CAAA;KACZ;AAEI,IAAA,uBAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAA;QACpD,IAAG,OAAO,KAAK,OAAO,EAAC;AACvB,YAAA,OAAO,IAAI,CAAC;AACX,SAAA;AACD,QAAA,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,YAAY,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;AAClF,QAAA,IAAG,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE;AAChC,YAAA,OAAO,KAAK,CAAC;AACZ,SAAA;AACD,QAAA,IAAI,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,IAAI,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE;AAChF,YAAA,OAAO,IAAI,CAAC;AACZ,SAAA;AAAM,aAAA;AACN,YAAA,OAAO,KAAK,CAAC;AACb,SAAA;KACD;IAEM,gBAAgB,GAAA;AACtB,QAAA,IAAI,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5D,IAAI,YAAY,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAEjD,IAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,YAAY,CAAC,GAAC,CAAC,CAAC,EAAG;AACnD,YAAA,OAAO,sCAAsC,CAAC;AAC9C,SAAA;aAAM,IAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,GAAC,CAAC,CAAC,EAAE;AACrD,YAAA,OAAO,mCAAmC,CAAC;AAC3C,SAAA;KACD;2HAtzBW,yBAAyB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,cAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,kBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAzB,uBAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,yBAAyB,cAFxB,MAAM,EAAA,CAAA,CAAA;;4FAEP,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAHrC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;MCPY,kBAAkB,CAAA;AACT,IAAA,GAAA,CAAA;AAApB,IAAA,WAAA,CAAoB,GAAe,EAAA;QAAf,IAAG,CAAA,GAAA,GAAH,GAAG,CAAY;KAAK;AAC/B,IAAA,YAAY,CAAU;AAC/B,IAAA,IAAI,SAAS,GAAA,EAAa,OAAO,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE;2HAHzD,kBAAkB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;+GAAlB,kBAAkB,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,YAAA,EAAA,cAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAD9B,SAAS;mBAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAC,CAAA;iGAG7B,YAAY,EAAA,CAAA;sBAApB,KAAK;;MAKK,mBAAmB,CAAA;AACV,IAAA,GAAA,CAAA;AAApB,IAAA,WAAA,CAAoB,GAAe,EAAA;QAAf,IAAG,CAAA,GAAA,GAAH,GAAG,CAAY;KAAI;AACvC,IAAA,IAAI,SAAS,CAAC,KAAa,EAAA,EAAI,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,SAAS,GAAG,KAAK,CAAC,EAAE;2HAF/D,mBAAmB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;+GAAnB,mBAAmB,EAAA,QAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAD/B,SAAS;mBAAC,EAAC,QAAQ,EAAE,iBAAiB,EAAC,CAAA;;;MCI3B,iBAAiB,CAAA;AAmBnB,IAAA,UAAA,CAAA;AACC,IAAA,MAAA,CAAA;AACA,IAAA,cAAA,CAAA;AACA,IAAA,iBAAA,CAAA;AACA,IAAA,MAAA,CAAA;AACA,IAAA,SAAA,CAAA;AAvBA,IAAA,WAAW,GAAG,IAAI,YAAY,EAAU,CAAC;AAC1C,IAAA,IAAI,CAAc;AAClB,IAAA,aAAa,CAAQ;AACrB,IAAA,YAAY,CAAQ;AACpB,IAAA,aAAa,CAAQ;AACrB,IAAA,YAAY,CAAQ;AAC7B,IAAA,QAAQ,CAAU;AAElB,IAAA,WAAW,CAAM;AAEjB,IAAA,WAAW,CAAiB;IAE5B,mBAAmB,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;AAE7C,IAAA,WAAW,CAAM;AACjB,IAAA,QAAQ,CAAM;IAEd,WACS,CAAA,UAAqC,EACpC,MAAc,EACd,cAA6B,EAC7B,iBAAoC,EACpC,MAAqB,EACrB,SAA4B,EAAA;QAL7B,IAAU,CAAA,UAAA,GAAV,UAAU,CAA2B;QACpC,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QACd,IAAc,CAAA,cAAA,GAAd,cAAc,CAAe;QAC7B,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAAmB;QACpC,IAAM,CAAA,MAAA,GAAN,MAAM,CAAe;QACrB,IAAS,CAAA,SAAA,GAAT,SAAS,CAAmB;QAEpC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,IAAG;YACjD,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;AAC/C,SAAC,CAAC,CAAC;KAEJ;IAED,QAAQ,GAAA;;KAEP;AAEM,IAAA,OAAO,CAAC,IAAgB,EAAA;AAC7B,QAAA,QAAQ,IAAI,CAAC,IAAI,IAAI,SAAS,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE;KACpD;AAEM,IAAA,wBAAwB,CAAC,IAAgB,EAAA;AAC9C,QAAA,IAAG,IAAI,CAAC,EAAE,IAAI,yBAAyB,EAAC;YACtC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC;YACpD,IAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,GAAC,CAAC,EAAC;AAClC,gBAAA,OAAO,IAAI,CAAC;AACb,aAAA;AAAM,iBAAA;AACL,gBAAA,OAAO,KAAK,CAAC;AACd,aAAA;AACF,SAAA;AAAM,aAAA;AACL,YAAA,OAAO,KAAK,CAAC;AACd,SAAA;KACF;AAEM,IAAA,mBAAmB,CAAC,IAAI,EAAA;AAC7B,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;KAC7E;AAEM,IAAA,iBAAiB,CAAC,GAAU,EAAA;QACjC,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;KAC3C;AAEM,IAAA,YAAY,CAAC,KAAS,EAAC,QAAoB,EAAE,KAAU,EAAA;QAC5D,IAAI,OAAO,GAAG,IAAI,OAAO,CAAO,OAAO,OAAO,EAAE,MAAM,KAAI;AACxD,YAAA,OAAO,CAAC,GAAG,CAAC,OAAO,EAAG,IAAI,CAAC,aAAa,EAAG,IAAI,CAAC,aAAa,CAAC,CAAC;;YAE/D,IAAG,CAAC,IAAI,CAAC,aAAa,KAAK,cAAc,IAAI,IAAI,CAAC,aAAa,KAAK,mBAAmB,KAAK,IAAI,CAAC,YAAY,KAAK,qBAAqB,IAAI,KAAK,KAAK,qBAAqB,EAAC;gBACzK,IAAG,QAAQ,CAAC,EAAE,KAAK,qBAAqB,IAAI,QAAQ,CAAC,EAAE,KAAK,wBAAwB,EAAC;AACnF,oBAAA,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC;AAC3B,oBAAA,IAAI,IAAI,CAAC,aAAa,IAAI,oBAAoB,EAAE;wBAC9C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC;AACzD,qBAAA;oBACD,IAAG,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE;AAClD,wBAAA,IAAI,CAAC,YAAY,CAAC,GAAG,EAAC,KAAK,EAAC,EAAE,KAAK,EAAG,IAAI,CAAC,aAAa,EAAC,CAAC,CAAA;AAC1D,wBAAA,OAAO,EAAE,CAAC;AACX,qBAAA;AAAI,yBAAA;wBACH,IAAI,CAAC,UAAU,EAAE,CAAC;AAClB,wBAAA,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,GAAG,EAAG,EAAE,KAAK,EAAG,IAAI,CAAC,aAAa,EAAC,CAAC,CAAC;AAC9E,wBAAA,OAAO,EAAE,CAAC;AACX,qBAAA;AACF,iBAAA;AAAI,qBAAA;AACH,oBAAA,IAAI,QAAQ,CAAC,KAAK,IAAI,EAAE,EAAE;wBACtB,IAAG,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE;4BAClD,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,EAAC,IAAI,CAAC,CAAA;AACtC,4BAAA,OAAO,EAAE,CAAC;AACX,yBAAA;AAAI,6BAAA;4BACD,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;AACjD,4BAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAG,EAAE,WAAW,EAAG,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;AAC3E,4BAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAC,WAAW,EAAG,IAAI,CAAC,aAAa,EAAC,CAAC,CAAC;AAC1D,4BAAA,OAAO,EAAE,CAAC;AACb,yBAAA;AACJ,qBAAA;AAAI,yBAAA;wBACH,KAAK,CAAC,sBAAsB,CAAC,CAAC;AAC9B,wBAAA,OAAO,EAAE,CAAC;AACX,qBAAA;AACF,iBAAA;AACF,aAAA;iBAAK,IAAG,QAAQ,CAAC,UAAU,EAAC;AAC3B,gBAAA,MAAM,GAAG,GAAG,QAAQ,CAAC,UAAU,CAAC;gBAChC,IAAG,QAAQ,CAAC,EAAE,IAAI,kBAAkB,IAAI,QAAQ,CAAC,EAAE,IAAI,kBAAkB,EAAC;oBACxE,IAAI,CAAC,UAAU,EAAE,CAAC;AAClB,oBAAA,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,GAAG,EAAE,EAAE,KAAK,EAAG,QAAQ,CAAC,EAAE,EAAC,CAAC,CAAC;AACtE,oBAAA,OAAO,EAAE,CAAC;AACX,iBAAA;gBACD,IAAG,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE;AAClD,oBAAA,IAAI,CAAC,YAAY,CAAC,GAAG,EAAC,KAAK,CAAC,CAAC;AAC7B,oBAAA,OAAO,EAAE,CAAC;AACX,iBAAA;AAAI,qBAAA;oBACH,IAAI,CAAC,UAAU,EAAE,CAAC;AAClB,oBAAA,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,GAAG,CAAC,CAAC;AAC9C,oBAAA,OAAO,EAAE,CAAC;AACX,iBAAA;AACF,aAAA;AAAI,iBAAA;gBACH,IAAG,QAAQ,CAAC,aAAa,IAAI,QAAQ,CAAC,aAAa,IAAI,EAAE,EAAC;oBACxD,MAAM,CAAC,IAAI,CAAC,CAAG,EAAA,QAAQ,CAAC,aAAa,CAAE,CAAA,EAAE,QAAQ,CAAC,CAAC;AACnD,oBAAA,OAAO,EAAE,CAAC;AACX,iBAAA;AACD,gBAAA,IAAG,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE;AACtH,oBAAA,IAAI,QAAQ,CAAC,KAAK,IAAI,EAAE,EAAE;wBACtB,IAAG,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE;4BAClD,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,EAAC,IAAI,CAAC,CAAA;AACtC,4BAAA,OAAO,EAAE,CAAC;AACX,yBAAA;AAAI,6BAAA;4BACH,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;AAC3C,4BAAA,IAAI,IAAI,CAAC,YAAY,IAAI,KAAK,EAAE;AAC9B,gCAAA,IAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,IAAI,CAAC,EAAC;oCAE3C,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,WAAW,EAAG,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;AAChF,oCAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAC,WAAW,EAAG,IAAI,CAAC,aAAa,EAAC,CAAC,CAAC;AAC1D,oCAAA,OAAO,EAAE,CAAC;AACX,iCAAA;AACG,qCAAA;AACF,oCAAA,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAA;AAC5C,oCAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAC,WAAW,EAAG,IAAI,CAAC,aAAa,EAAC,CAAC,CAAC;AAC1D,oCAAA,OAAO,EAAE,CAAC;AACX,iCAAA;AACF,6BAAA;AAAM,iCAAA;AACL,gCAAA,MAAM,EAAE,CAAC;AACV,6BAAA;AACF,yBAAA;AACJ,qBAAA;AACG,yBAAA;wBACF,KAAK,CAAC,sBAAsB,CAAC,CAAC;AAC9B,wBAAA,OAAO,EAAE,CAAC;AACX,qBAAA;AACF,iBAAA;AAAI,qBAAA;AACH,oBAAA,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC;oBAC1B,IAAG,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE;AAClD,wBAAA,IAAI,CAAC,YAAY,CAAC,GAAG,EAAC,KAAK,CAAC,CAAA;AAC5B,wBAAA,OAAO,EAAE,CAAC;AACX,qBAAA;AACG,yBAAA;wBACF,IAAI,CAAC,UAAU,EAAE,CAAC;AAClB,wBAAA,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,GAAG,CAAC,CAAC;AAC9C,wBAAA,OAAO,EAAE,CAAC;AACX,qBAAA;AACF,iBAAA;AACF,aAAA;AACH,SAAC,CAAC,CAAC;KACJ;IAEM,aAAa,CAAC,KAAiB,EAAE,IAAiB,EAAA;QACvD,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QAClD,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QAClD,IAAI,CAAC,WAAW,CAAC,QAAQ,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QAC7C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;AAC9C,QAAA,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;KAC7B;AAED,IAAA,mBAAmB,CAAC,IAAiB,EAAA;AAEnC,QAAA,IAAG,IAAI,CAAC,YAAY,KAAK,qBAAqB,EAAC;AAC7C,YAAA,IAAG,IAAI,CAAC,EAAE,KAAK,qBAAqB,EAAC;AACnC,gBAAA,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;AACvB,gBAAA,IAAI,CAAC,YAAY,CAAC,GAAG,EAAC,KAAK,EAAC,EAAE,KAAK,EAAG,IAAI,CAAC,aAAa,EAAC,CAAC,CAAA;AAC3D,aAAA;AACI,iBAAA,IAAG,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE;gBACxB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,EAAC,IAAI,CAAC,CAAA;AACnC,aAAA;AACF,SAAA;AAAI,aAAA;YACH,IAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,IAAI,EAAE,EAAC;gBAChD,MAAM,CAAC,IAAI,CAAC,CAAG,EAAA,IAAI,CAAC,aAAa,CAAE,CAAA,EAAE,QAAQ,CAAC,CAAC;gBAC/C,OAAO;AACR,aAAA;AACI,iBAAA,IAAG,IAAI,CAAC,EAAE,KAAK,wBAAwB,EAAC;AAC3C,gBAAA,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACrC,gBAAA,IAAI,CAAC,YAAY,CAAC,GAAG,EAAC,KAAK,EAAC,EAAE,KAAK,EAAG,IAAI,CAAC,aAAa,EAAG,QAAQ,EAAG,IAAI,EAAC,CAAC,CAAA;AAC7E,aAAA;AACI,iBAAA,IAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAG;AAC3D,gBAAA,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE;oBACpB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,EAAC,IAAI,CAAC,CAAA;AACnC,iBAAA;AACF,aAAA;AACG,iBAAA;AACA,gBAAA,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;AACtB,gBAAA,IAAI,CAAC,YAAY,CAAC,GAAG,EAAC,KAAK,CAAC,CAAA;AAC/B,aAAA;AACF,SAAA;KACF;AAEM,IAAA,YAAY,CAAC,IAAI,EAAC,YAAY,EAAC,aAAa,GAAG,SAAS,EAAA;AAC7D,QAAA,IAAI,SAAS,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACtC,IAAI,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAExE,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,cAAc,IAAI,SAAS,EAAC;AACzD,YAAA,IAAI,WAAW,GAAG;gBAChB,GAAG,EAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,mBAAmB,CAAC,cAAc;AACnE,gBAAA,EAAE,EAAG,YAAY;aAClB,CAAA;AACD,YAAA,IAAG,aAAa,EAAC;gBACf,WAAW,GAAG,EAAC,GAAG,WAAW,EAAE,GAAG,aAAa,EAAC,CAAA;AACjD,aAAA;YACD,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,IAAI,EAAC,WAAW,EAAC,YAAY,CAAC,CAAC;YACzE,OAAM;AACL,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,WAAW,GAAG;gBAChB,GAAG,EAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,cAAc,CAAC,YAAY;gBAC5D,GAAG,EAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,cAAc,CAAC,eAAe;gBAC/D,GAAG,EAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,cAAc,CAAC,cAAc;AAC9D,gBAAA,EAAE,EAAG,YAAY;aAClB,CAAA;AACD,YAAA,IAAG,aAAa,EAAC;gBACf,WAAW,GAAG,EAAC,GAAG,WAAW,EAAE,GAAG,aAAa,EAAC,CAAA;AACjD,aAAA;YACD,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,IAAI,EAAC,WAAW,EAAC,YAAY,CAAC,CAAC;YACzE,OAAO;AACN,SAAA;KACF;IAEM,cAAc,GAAA;AACnB,QAAA,IAAG,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,IAAI,CAAC,EAAC;AACjF,YAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;AAC/B,SAAA;AAAI,aAAA;AACH,YAAA,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC;AACjE,YAAA,OAAO,CAAC,GAAG,CAAC,WAAW,EAAC,YAAY,CAAC,CAAC;YACtC,OAAO,YAAY,CAAC,SAAS,CAAC;AAC/B,SAAA;KACF;IAEM,UAAU,GAAA;QACf,IAAI,UAAU,GAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;AACnD,QAAA,IAAG,UAAU,EAAC;AACZ,YAAA,UAAU,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;AACpC,SAAA;AAEF,QAAA,UAAU,CAAC,YAAA;AACV,YAAA,IAAG,UAAU,EAAC;AACX,gBAAA,UAAU,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;AACpC,aAAA;SACD,EAAE,IAAI,CAAC,CAAC;KACX;2HAzPU,iBAAiB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,yBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,aAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;+GAAjB,iBAAiB,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,aAAA,EAAA,eAAA,EAAA,YAAA,EAAA,cAAA,EAAA,aAAA,EAAA,eAAA,EAAA,YAAA,EAAA,cAAA,EAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,aAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAUjB,cAAc,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECvB3B,sxDAyB+E,EAAA,MAAA,EAAA,CAAA,yiEAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,WAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,MAAA,CAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,cAAA,EAAA,QAAA,EAAA,6BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,cAAA,EAAA,QAAA,EAAA,6CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,WAAA,EAAA,QAAA,EAAA,wDAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,UAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,GAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,GAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,6NAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,YAAA,EAAA,YAAA,EAAA,YAAA,EAAA,YAAA,EAAA,YAAA,EAAA,eAAA,EAAA,eAAA,EAAA,eAAA,EAAA,eAAA,EAAA,eAAA,EAAA,eAAA,EAAA,eAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,kBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FDZlE,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAL7B,SAAS;+BACE,eAAe,EAAA,QAAA,EAAA,sxDAAA,EAAA,MAAA,EAAA,CAAA,yiEAAA,CAAA,EAAA,CAAA;sPAKf,WAAW,EAAA,CAAA;sBAApB,MAAM;gBACE,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBACG,aAAa,EAAA,CAAA;sBAArB,KAAK;gBACG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,aAAa,EAAA,CAAA;sBAArB,KAAK;gBACG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBAKN,WAAW,EAAA,CAAA;sBADV,SAAS;uBAAC,cAAc,CAAA;;;MEJd,2BAA2B,CAAA;AAyB7B,IAAA,UAAA,CAAA;AACC,IAAA,MAAA,CAAA;AACA,IAAA,cAAA,CAAA;AACA,IAAA,MAAA,CAAA;AACA,IAAA,KAAA,CAAA;AACA,IAAA,WAAA,CAAA;AA5BD,IAAA,kBAAkB,CAAa;AAE/B,IAAA,OAAO,CAAa;AAEK,IAAA,SAAS,CAAgC;AAC3C,IAAA,IAAI,CAAsB;AAC1B,IAAA,iBAAiB,CAAmB;AAEpE,IAAA,WAAW,CAAM;AACjB,IAAA,WAAW,CAAM;IACjB,YAAY,GAAW,KAAK,CAAC;AAC7B,IAAA,YAAY,CAAgC;IAC5C,WAAW,GAAY,KAAK,CAAC;AAC7B,IAAA,UAAU,GAAG,CAAC,aAAa,EAAC,uBAAuB,CAAC,CAAC;AACrD,IAAA,UAAU,CAAM;AAChB,IAAA,yBAAyB,CAAM;AAC/B,IAAA,UAAU,CAAM;IAChB,oBAAoB,GAAQ,KAAK,CAAC;AAClC,IAAA,sBAAsB,CAAU;;IAIhC,WACS,CAAA,UAAqC,EACpC,MAAc,EACd,cAA8B,EAC9B,MAAqB,EACrB,KAAwB,EACxB,WAA8B,EAAA;QAL/B,IAAU,CAAA,UAAA,GAAV,UAAU,CAA2B;QACpC,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;QACd,IAAc,CAAA,cAAA,GAAd,cAAc,CAAgB;QAC9B,IAAM,CAAA,MAAA,GAAN,MAAM,CAAe;QACrB,IAAK,CAAA,KAAA,GAAL,KAAK,CAAmB;QACxB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAmB;AAEpC,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,KAAI;YACvD,IAAI,KAAK,YAAY,eAAe,EAAE;gBACpC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC;AAC5I,aAAA;AACH,SAAC,CAAC,CAAC;KACN;IAED,cAAc,GAAG,KAAK,CAAC;IACvB,kBAAkB,GAAG,KAAK,CAAC;AACpB,IAAA,kBAAkB,CAAC;IACnB,qBAAqB,GAAG,EAAE,CAAC;AAC3B,IAAA,2BAA2B,CAAQ;AACnC,IAAA,QAAQ,CAAQ;IAGhB,QAAQ,GAAA;AACb,QAAA,IAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,EAAC;YACrC,IAAI,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC;YACxD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AAC1E,SAAA;QACD,IAAI,CAAC,sBAAsB,EAAE,CAAC;;;;;;;;;;AAU9B,QAAA,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;KACvD;IAED,sBAAsB,GAAA;QACpB,IAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,EAAC;YAC3C,IAAI,MAAM,GAAY,cAAc,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAClE,YAAA,IAAI,CAAC,YAAY,GAAK,MAAM,IAAI,MAAM,IAAI,OAAO,GAAG,KAAK,GAAG,IAAI,CAAC;AACjE,YAAA,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,MAAM,IAAI,MAAM,IAAI,OAAO,GAAG,KAAK,GAAG,IAAI,CAAC;AACjE,YAAA,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,MAAM,KAAG;AAC7E,gBAAA,cAAc,CAAC,OAAO,CAAC,mBAAmB,EAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;AACnE,gBAAA,IAAI,CAAC,YAAY,GAAK,MAAM,CAAC;AAC7B,gBAAA,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;AAC/B,aAAC,CAAC,CAAC;AACJ,SAAA;KACF;AAEO,IAAA,uBAAuB,CAAC,kBAA8B,EAAA;AAC5D,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;AACnB,QAAA,IAAG,kBAAkB,CAAC,aAAa,IAAE,gBAAgB,EAAC;AACpD,YAAA,IAAI,CAAC,0BAA0B,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;AACpE,SAAA;AAAI,aAAA;AACH,YAAA,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAA;AAC1C,SAAA;KACF;AAEM,IAAA,gBAAgB,CAAC,kBAA8B,EAAA;AACpD,QAAA,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;;;;KAIvD;AAEM,IAAA,uBAAuB,CAAC,kBAA8B,EAAA;AAC3D,QAAA,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC,SAAS,CAAC,CAAC,SAAc,KAAI;;AAEpF,YAAA,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;AACxF,YAAA,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;AACxG,YAAA,IAAI,CAAC,qBAAqB,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;AACtD,YAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;AAC3D,YAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,qBAAqB,EAAC,IAAI,CAAC,2BAA2B,EAAC,kBAAkB,CAAC,CAAC;YACzG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,qBAAqB,EAAG,IAAI,CAAC,2BAA2B,CAAC,CAAC;YAC3E,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC1B,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,aAAa,EAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;AAC9E,YAAA,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;AACrD,SAAC,CAAC,CAAA;KACH;IAEO,WAAW,CAAC,KAAK,EAAC,QAAQ,EAAA;AAChC,QAAA,IAAI,UAAU,GAAO,IAAI,MAAM,EAAE,CAAC;AAClC,QAAA,UAAU,CAAC,YAAY,GAAG,KAAK,CAAC;QAChC,UAAU,CAAC,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,OAAK,OAAO,IAAI,CAAC,EAAE,IAAI,KAAK,CAAA,EAAC,CAAC,CAAA;AACvE,QAAA,YAAY,CAAC,OAAO,CAAC,YAAY,EAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;KAC/D;AAEM,IAAA,WAAW,CAAC,GAAQ,EAAA;QACzB,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;AAC1D,QAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;AAC3D,QAAA,IAAG,GAAG,EAAE;AACN,YAAA,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,WAAW,CAAC;AACpC,SAAA;KACF;AAEM,IAAA,mBAAmB,CAAC,2BAA2B,EAAA;QACpD,UAAU,CAAC,MAAI;;AAEb,YAAA,IAAI,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC1C,IAAI,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC7C,IAAI,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACxC,YAAA,IAAG,2BAA2B,IAAI,2BAA2B,CAAC,MAAM,EAAE;AACpE,gBAAA,2BAA2B,CAAC,CAAC,CAAC,CAAC,cAAc,GAAG,KAAK,CAAC;AACxD,gBAAA,IAAG,2BAA2B,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,2BAA2B,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAC;oBAC3F,KAAI,IAAI,IAAI,IAAI,2BAA2B,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAC;AACtD,wBAAA,IAAG,IAAI,CAAC,KAAK,IAAE,YAAY,EAAC;AAC1B,4BAAA,2BAA2B,CAAC,CAAC,CAAC,CAAC,cAAc,GAAG,IAAI,CAAC;;4BAErD,MAAM;AACP,yBAAA;AACF,qBAAA;AACF,iBAAA;AACF,aAAA;SACF,EAAE,GAAG,CAAC,CAAA;KAER;IAEM,qBAAqB,CAAC,kBAAkB,EAAE,aAAa,EAAA;AAC5D,QAAA,KAAI,IAAI,QAAQ,IAAI,IAAI,CAAC,qBAAqB,EAAE;AAC9C,YAAA,QAAQ,CAAC,cAAc,GAAG,KAAK,CAAC;AACjC,SAAA;AAED,QAAA,KAAI,IAAI,QAAQ,IAAI,IAAI,CAAC,qBAAqB,EAAE;AAC5C,YAAA,IAAG,QAAQ,CAAC,EAAE,IAAI,kBAAkB,CAAC,aAAa,EAAE;AAClD,gBAAA,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC;AAC/B,gBAAA,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;AAC5B,aAAA;AAAM,iBAAA,IAAG,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,kBAAkB,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE;AACpE,gBAAA,QAAQ,CAAC,cAAc,GAAG,KAAK,CAAC;AAEhC,gBAAA,IAAI,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC1C,IAAI,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAC7C,gBAAA,IAAG,CAAC,QAAQ,CAAC,EAAE,IAAG,oCAAoC,IAAI,QAAQ,CAAC,EAAE,IAAG,oCAAoC,KAAK,QAAQ,CAAC,MAAM,GAAE,CAAC,EAAC;oBAClI,QAAQ,GAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAC,CAAC,CAAC,CAAC;AAC5C,oBAAA,QAAQ,GAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC9B,iBAAA;gBACD,IAAI,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1C,gBAAA,IAAG,QAAQ,CAAC,EAAE,IAAI,sCAAsC,IAAI,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,OAAO,CAAC,YAAY,CAAC,GAAC,CAAC,CAAC,EAAG;AACtH,oBAAA,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC;AAC/B,oBAAA,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;AAC5B,iBAAA;AAAM,qBAAA,IAAG,QAAQ,CAAC,EAAE,IAAI,mCAAmC,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,GAAC,CAAC,CAAC,EAAE;AACnH,oBAAA,IAAG,CAAC,YAAY,IAAI,mBAAmB,IAAI,YAAY,IAAI,sBAAsB,IAAI,YAAY,IAAI,iBAAiB,IAAI,YAAY,IAAI,YAAY,IAAI,YAAY,IAAI,oBAAoB,IAAI,YAAY,IAAI,cAAc,IAAI,YAAY,IAAI,kBAAkB,KAAK,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,gBAAgB,EAAE;AACvU,wBAAA,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC;AAC/B,wBAAA,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;wBAC3B,IAAG,aAAa,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,gBAAgB,EAAE;4BAC5D,MAAM;AACP,yBAAA;AACF,qBAAA;AAEJ,iBAAA;AACI,qBAAA,IAAG,QAAQ,CAAC,EAAE,IAAI,oCAAoC,IAAI,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,OAAO,CAAC,YAAY,CAAC,GAAC,CAAC,CAAC,EAAC;AAC/H,oBAAA,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC;AAC/B,oBAAA,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;AAC5B,iBAAA;AACI,qBAAA,IAAG,QAAQ,CAAC,EAAE,IAAI,oCAAoC,IAAI,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,OAAO,CAAC,YAAY,CAAC,GAAC,CAAC,CAAC,EAAE;AAChI,oBAAA,IAAG,CAAC,YAAY,IAAI,mBAAmB,IAAI,YAAY,IAAI,sBAAsB,IAAI,YAAY,IAAI,iBAAiB,IAAK,YAAY,IAAI,YAAY,IAAI,YAAY,IAAI,oBAAoB,IAAI,YAAY,IAAI,cAAc,IAAI,YAAY,IAAI,kBAAkB,KAAK,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,kBAAkB,EAAE;AAC1U,wBAAA,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC;AAC/B,wBAAA,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;wBAC3B,IAAG,aAAa,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,kBAAkB,EAAE;4BAC9D,MAAM;AACP,yBAAA;AACF,qBAAA;AACF,iBAAA;AACF,aAAA;AAAM,iBAAA;AACL,gBAAA,QAAQ,CAAC,cAAc,GAAG,KAAK,CAAC;AACjC,aAAA;;;;;;;;;;;;;AAcF,SAAA;AACD,QAAA,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;KAC5B;AAEI,IAAA,cAAc,CAAC,QAAQ,EAAA;QAC5B,IAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAC;AACrC,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;AAAI,aAAA;AACH,YAAA,OAAO,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;AAC3C,SAAA;KACF;AAEM,IAAA,mBAAmB,CAAC,QAAQ,EAAA;AACjC,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,IAAI,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;KAChF;AACD,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,IAAG,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,kBAAkB,CAAC,WAAW,IAAI,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,MAAM,EAAC;YAC9G,OAAO,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;AAC1D,SAAA;AAAK,aAAA,IAAG,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAC;YAC/F,OAAO,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAA;AACjD,SAAA;AACD,QAAA,OAAO,CAAC,CAAC;KACV;AAGM,IAAA,mBAAmB,CAAC,QAAQ,EAAE,OAAO,EAAE,kBAAkB,EAAA;AAC9D,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD,MAAM,eAAe,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAK,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,kBAAkB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;AAErG,QAAA,IAAI,eAAe,EAAE;YACnB,MAAM,QAAQ,GAAG,CAAC,eAAe,EAAE,GAAG,OAAO,CAAC,CAAC;AAC/C,YAAA,MAAM,eAAe,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC3C,IAAI,CAAC,eAAe,EAAE;gBACpB,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;AACtE,aAAA;AACF,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;AACpF,SAAA;QAGD,SAAS,gBAAgB,CAAC,IAAI,EAAA;AAC5B,YAAA,OAAO,YAAY,KAAK,CAAI,CAAA,EAAA,IAAI,EAAE,CAAC;SACpC;QAED,SAAS,QAAQ,CAAC,SAAS,EAAA;AACzB,YAAA,OAAO,SAAS,CAAC,IAAI,CAAC,UAAS,IAAI,EAAA;;gBAE/B,IAAI,IAAI,CAAC,QAAQ,EAAE;AACf,oBAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAClC,iBAAA;;AAGD,gBAAA,IAAI,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AAC9B,oBAAA,OAAO,IAAI,CAAC;AACf,iBAAA;;gBAGD,IAAI,IAAI,CAAC,YAAY,EAAE;AACnB,oBAAA,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,UAAS,UAAU,EAAA;AAC7C,wBAAA,OAAO,gBAAgB,CAAC,UAAU,CAAC,CAAC;AACxC,qBAAC,CAAC,CAAC;AACN,iBAAA;AAED,gBAAA,OAAO,KAAK,CAAC;AACjB,aAAC,CAAC,CAAC;SACN;KACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAgFD,oBAAoB,CAAC,KAAK,EAAG,SAAS,EAAA;QACpC,IAAG;YACC,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,IAAG;gBACpC,IAAG,IAAI,CAAC,IAAI,IAAI,KAAK,GAAC,KAAK,CAAC,GAAG,EAAE;AAC7B,oBAAA,OAAO,IAAI,CAAC;AACf,iBAAA;qBAAM,IAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAC;oBACtD,IAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAC;AACtC,wBAAA,OAAO,IAAI,CAAC;AACb,qBAAA;oBAAA,CAAC;AACL,iBAAA;AACL,aAAC,CAAC,CAAC;AACH,YAAA,OAAO,SAAS,CAAC;AACpB,SAAA;AAAA,QAAA,OAAM,KAAK,EAAC;AACT,YAAA,MAAM,KAAK,CAAC;AACf,SAAA;KACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAoDQ,MAAM,0BAA0B,CAAC,cAAc,EAAA;QACpD,IAAI;YACJ,IAAI,CAAC,cAAc,CAAC,0BAA0B,CAAC,cAAc,CAAC,cAAc,EAAC,cAAc,CAAC,eAAe,EAAC,cAAc,CAAC,YAAY,CAAC,CAAC,SAAS,CAChJ,CAAC,QAAY,KAAI;AACf,gBAAA,IAAI,CAAC,UAAU,CAAC,qBAAqB,GAAG,QAAQ,GAAG,QAAQ,CAAC,qBAAqB,CAAC,GAAG,SAAS,CAAC;AAC/F,gBAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;AACjD,aAAC,EACD,CAAC,KAAS,KAAI;AACZ,gBAAA,IAAI,CAAC,UAAU,CAAC,qBAAqB,GAAG,SAAS,CAAC;AAClD,gBAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;AACjD,aAAC,CAAC,CAAC;AACN,SAAA;AAAC,QAAA,OAAO,KAAK,EAAE;AACd,YAAA,MAAM,KAAK,CAAC;AACb,SAAA;KAEA;IAEM,kBAAkB,GAAA;QACvB,UAAU,CAAC,MAAK;YACd,IAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAM,CAAC,CAAC,YAAY,CAAC,IAAI,SAAS,EAAC;gBAC/E,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAM,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC;AAChF,aAAA;SACF,EAAE,GAAG,CAAC,CAAC;KACT;AAEM,IAAA,kBAAkB,CAAC,IAAI,EAAC,QAAQ,EAAC,UAAU,GAAG,IAAI,EAAA;;;;;;;;;;AAWvD,QAAA,IAAI,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;QAC/B,IAAI,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1C,QAAA,IAAI,KAAK,GAAC,IAAI,CAAC,KAAK,CAAC;AACrB,QAAA,IAAI,QAAQ,CAAC;AACb,QAAA,IAAG,KAAK,EAAC;YACP,QAAQ,GAAG,KAAK,CAAC;AAClB,SAAA;AAED,QAAA,IAAI,CAAC,YAAY,KAAK,GAAG,GAAC,QAAQ,IAAI,YAAY,KAAK,GAAG,GAAC,QAAQ,GAAC,iBAAiB,IAAI,YAAY,KAAK,GAAG,GAAC,QAAQ,GAAC,2BAA2B,IAAI,YAAY,KAAK,GAAG,GAAC,QAAQ,GAAC,6BAA6B,KAAK,QAAQ,IAAE,SAAS,EAAE;AACzO,YAAA,IAAG,IAAI,CAAC,kBAAkB,KAAI,SAAS,EAAC;AACtC,gBAAA,QAAQ,CAAC,QAAQ,GAAC,IAAI,CAAC;AACvB,gBAAA,IAAI,CAAC,kBAAkB,GAAC,QAAQ,CAAC;AAClC,aAAA;AAAI,iBAAA;AACH,gBAAA,IAAI,CAAC,kBAAkB,CAAC,QAAQ,GAAC,KAAK,CAAC;AACvC,gBAAA,QAAQ,CAAC,QAAQ,GAAC,IAAI,CAAC;AACvB,gBAAA,IAAI,CAAC,kBAAkB,GAAC,QAAQ,CAAC;AAClC,aAAA;YACD,IAAG,UAAU,IAAI,IAAI,EAAC;AACpB,gBAAA,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,EAAE,CAAC;AAClC,aAAA;AACD,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;aAAK,IAAG,IAAI,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,EAAC;YACnD,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE;AAChE,gBAAA,QAAQ,CAAC,QAAQ,GAAC,IAAI,CAAC;AACvB,gBAAA,IAAI,CAAC,kBAAkB,GAAC,QAAQ,CAAC;gBAEjC,IAAG,UAAU,IAAI,IAAI,EAAC;AACpB,oBAAA,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,EAAE,CAAC;AAClC,iBAAA;AACD,gBAAA,OAAO,IAAI,CAAC;AACb,aAAA;AACG,iBAAA;AACF,gBAAA,OAAO,KAAK,CAAC;AACd,aAAA;AACF,SAAA;AACG,aAAA;AACF,YAAA,OAAO,KAAK,CAAC;AACd,SAAA;KACF;AAEM,IAAA,gBAAgB,CAAC,YAAmB,EAAA;AACzC,QAAA,IAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,IAAI,CAAC,EAAG;AACpE,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;AACG,aAAA;AACF,YAAA,OAAO,KAAK,CAAC;AACd,SAAA;KACF;IAEM,eAAe,GAAA;AACpB,QAAA,KAAI,IAAI,QAAQ,IAAI,IAAI,CAAC,2BAA2B,EAAE;AAClD,YAAA,QAAQ,CAAC,cAAc,GAAG,KAAK,CAAC;AACnC,SAAA;KACF;AAEM,IAAA,eAAe,CAAC,IAAS,EAAA;QAC9B,IAAI,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,oBAAoB,EAAE,CAAC;QACvD,IAAI,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjC,IAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAC;YAChC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;AAC9D,SAAA;AACD,QAAA,OAAO,IAAI,CAAC;KACZ;IAEA,WAAW,GAAA;;AAET,QAAA,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;KAEvD;AAEM,IAAA,eAAe,CAAC,IAAI,EAAA;QACzB,IAAG,IAAI,CAAC,UAAU,EAAC;YACjB,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;AACxC,SAAA;AAAI,aAAA;YACH,IAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC5C,IAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;AACpE,oBAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;AAChE,iBAAA;AAAM,qBAAA;AACL,oBAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;AACpD,iBAAA;AACF,aAAA;AAAM,iBAAA;gBACL,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;AACxC,aAAA;AACF,SAAA;KACF;IAEM,WAAW,GAAA;QAChB,IAAG,IAAI,CAAC,yBAAyB,EAAC;AAChC,YAAA,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE,CAAC;AAC9C,SAAA;KACF;IAEM,kBAAkB,CAAC,IAAI,EAAE,KAAK,EAAA;QACnC,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;KACzD;IAEM,aAAa,GAAA;AAChB,QAAA,IAAI,YAAY,CAAC;AACjB,QAAA,IAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,IAAI,KAAK,qBAAqB,KAAK,IAAI,CAAC,kBAAkB,CAAC,WAAW,IAAI,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,MAAM,IAAI,CAAC,CAAC,EAAC;AAChK,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;AAAI,aAAA;AACH,YAAA,IAAI,IAAI,CAAC,kBAAkB,CAAC,WAAW,IAAI,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;gBACzF,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,MAAM,CAAC,UAAS,UAAU,EAAA;oBAC3E,IAAI,UAAU,CAAC,OAAO,KAAK,cAAc,KAAK,CAAC,UAAU,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,IAAI,QAAQ,CAAC,EAAE;AACpH,wBAAA,OAAO,IAAI,CAAC;AACb,qBAAA;oBAAA,CAAC;AACJ,iBAAC,CAAC,CAAA;AACH,aAAA;AACD,YAAA,QAAQ,YAAY,IAAI,IAAI,KAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,MAAM,GAAG,EAAE,IAAI,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,IAAI,KAAK,qBAAqB,CAAC,EAAE;AAC3J,SAAA;KACJ;2HAtjBU,2BAA2B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAN,yBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAAO,cAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,aAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAL,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA3B,uBAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,2BAA2B,EAO3B,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,MAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,mBAAmB,EADhB,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,mBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,WAAA,EAAA,SAAA,EAAA,kBAAkB,qECzBlC,g0YAiMU,EAAA,MAAA,EAAA,CAAA,mw2EAAA,EAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAM,IAAA,CAAA,UAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,aAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAL,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,WAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,MAAA,CAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,cAAA,EAAA,QAAA,EAAA,6CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAM,IAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAAA,YAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,aAAA,EAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,uBAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,gBAAA,EAAA,iBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,sBAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,4BAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,KAAA,CAAA,cAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,OAAA,EAAA,aAAA,EAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,sBAAA,EAAA,QAAA,EAAA,4OAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,aAAA,EAAA,aAAA,EAAA,aAAA,EAAA,aAAA,EAAA,aAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,gNAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,WAAA,EAAA,WAAA,EAAA,WAAA,EAAA,WAAA,EAAA,WAAA,EAAA,cAAA,EAAA,cAAA,EAAA,cAAA,EAAA,cAAA,EAAA,cAAA,EAAA,cAAA,EAAA,cAAA,EAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,GAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,6NAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,YAAA,EAAA,YAAA,EAAA,YAAA,EAAA,YAAA,EAAA,YAAA,EAAA,eAAA,EAAA,eAAA,EAAA,eAAA,EAAA,eAAA,EAAA,eAAA,EAAA,eAAA,EAAA,eAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,iBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,eAAA,EAAA,cAAA,EAAA,eAAA,EAAA,cAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,mBAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,kBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FD9KG,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBANvC,SAAS;+BACE,wBAAwB,EAAA,QAAA,EAAA,g0YAAA,EAAA,MAAA,EAAA,CAAA,mw2EAAA,CAAA,EAAA,CAAA;sPAOzB,kBAAkB,EAAA,CAAA;sBAA1B,KAAK;gBAEG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAE4B,SAAS,EAAA,CAAA;sBAA1C,YAAY;uBAAC,kBAAkB,CAAA;gBACA,IAAI,EAAA,CAAA;sBAAnC,SAAS;uBAAC,mBAAmB,CAAA;gBACE,iBAAiB,EAAA,CAAA;sBAAhD,SAAS;uBAAC,mBAAmB,CAAA;;;AE4BhC,MAAM,UAAU,GAAG;;IAEjB,gBAAgB;IAChB,gBAAgB;IAChB,aAAa;;IAGb,aAAa;IACb,iBAAiB;IACjB,kBAAkB;IAClB,aAAa;IACb,aAAa;IACb,gBAAgB;;IAGhB,eAAe;IACf,qBAAqB;IACrB,cAAc;IACd,aAAa;IACb,wBAAwB;IACxB,oBAAoB;;IAGpB,iBAAiB;IACjB,cAAc;IACd,cAAc;IACd,mBAAmB;IACnB,mBAAmB;IACnB,qBAAqB;IACrB,eAAe;IACf,oBAAoB;IACpB,eAAe;;IAGf,eAAe;IACf,gBAAgB;IAChB,iBAAiB;;IAGjB,cAAc;IACd,cAAc;IACd,aAAa;IACb,kBAAkB;CACnB,CAAC;MAcW,wBAAwB,CAAA;2HAAxB,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAxB,uBAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wBAAwB,iBAXpB,2BAA2B,EAAE,iBAAiB,EAAC,mBAAmB,EAAE,kBAAkB,CAAA,EAAA,OAAA,EAAA;;YA5CrG,gBAAgB;YAChB,gBAAgB;YAChB,aAAa;;YAGb,aAAa;YACb,iBAAiB;YACjB,kBAAkB;YAClB,aAAa;YACb,aAAa;YACb,gBAAgB;;YAGhB,eAAe;YACf,qBAAqB;YACrB,cAAc;YACd,aAAa;YACb,wBAAwB;YACxB,oBAAoB;;YAGpB,iBAAiB;YACjB,cAAc;YACd,cAAc;YACd,mBAAmB;YACnB,mBAAmB;YACnB,qBAAqB;YACrB,eAAe;YACf,oBAAoB;YACpB,eAAe;;YAGf,eAAe;YACf,gBAAgB;YAChB,iBAAiB;;YAGjB,cAAc;YACd,cAAc;YACd,aAAa;AACb,YAAA,kBAAkB,EAOhB,YAAY;YACZ,uBAAuB;YACvB,gBAAgB;AAChB,YAAA,gBAAgB,aAER,2BAA2B,CAAA,EAAA,CAAA,CAAA;AAG1B,uBAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wBAAwB,EAFzB,SAAA,EAAA,CAAC,iBAAiB,CAAC,YAP3B,UAAU;YACV,YAAY;YACZ,uBAAuB;YACvB,gBAAgB;YAChB,gBAAgB,CAAA,EAAA,CAAA,CAAA;;4FAKP,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAZpC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,2BAA2B,EAAE,iBAAiB,EAAC,mBAAmB,EAAE,kBAAkB,CAAC;AACtG,oBAAA,OAAO,EAAE;wBACP,UAAU;wBACV,YAAY;wBACZ,uBAAuB;wBACvB,gBAAgB;wBAChB,gBAAgB;AACjB,qBAAA;oBACD,OAAO,EAAE,CAAC,2BAA2B,CAAC;oBACtC,SAAS,EAAC,CAAC,iBAAiB,CAAC;AAC9B,iBAAA,CAAA;;;AC/GD;;AAEG;;ACFH;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"application-sidebar.mjs","sources":["../../../projects/application-sidebar/src/lib/constants.ts","../../../projects/application-sidebar/src/lib/services/rest-api.services.ts","../../../projects/application-sidebar/src/lib/services/url-context.service.ts","../../../projects/application-sidebar/src/lib/translations/translations-en.ts","../../../projects/application-sidebar/src/lib/translations/translations-ja.ts","../../../projects/application-sidebar/src/lib/services/translation.service.ts","../../../projects/application-sidebar/src/lib/services/application-sidebar.service.ts","../../../projects/application-sidebar/src/lib/nav-menu.directive.ts","../../../projects/application-sidebar/src/lib/nav-menus/nav-menus.component.ts","../../../projects/application-sidebar/src/lib/nav-menus/nav-menus.component.html","../../../projects/application-sidebar/src/lib/application-sidebar.component.ts","../../../projects/application-sidebar/src/lib/application-sidebar.template.html","../../../projects/application-sidebar/src/lib/application-sidebar.module.ts","../../../projects/application-sidebar/src/public-api.ts","../../../projects/application-sidebar/src/application-sidebar.ts"],"sourcesContent":["export const constants = {\n baseProdURL:'https://api.intentwise.com/',\n baseStagingURL:'https://apitest.intentwise.com/',\n kBaseDspApiURL: 'https://dspapi.intentwise.com/',\n kBaseDspTestApiURL: 'https://dspapi-test.intentwise.com/',\n STAGING_MENU_BUCKET:'https://s3.us-west-2.amazonaws.com/stagemenu.intentwise.com',\n PROD_MENU_BUCKET:'https://s3.us-west-2.amazonaws.com/menu.intentwise.com',\n}","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable, throwError } from 'rxjs';\nimport { retry, catchError, map } from 'rxjs/operators';\nimport { CookieService } from 'ngx-cookie-service';\nimport { constants } from '../constants';\n@Injectable({\n providedIn: 'root'\n})\n\nexport class RestApiService {\n\n private baseURL:string = constants.baseProdURL;\n private DSPbaseURL:string = constants.kBaseDspApiURL;\n private token:any;\n private httpOptions;\n\n constructor(private http: HttpClient,private cookie: CookieService) { \n let domain = window.location.hostname;\n if((domain.includes('apptest.intentwise.com') || domain.includes('herokuapp') || \n domain.includes('localhost')) && !localStorage.getItem('useProd')){\n this.baseURL = constants.baseStagingURL;\n this.DSPbaseURL = constants.kBaseDspTestApiURL;\n }\n const isCookieExists: boolean = this.cookie.check('loggedInUser');\n\n if (isCookieExists) {\n const loggedInUser = JSON.parse(this.cookie.get('loggedInUser'));\n this.token = loggedInUser.token;\n } \n \n this.httpOptions = {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json',\n 'X-Auth-Token' : this.token\n })\n } \n\n }\n\n /*========================================\n CRUD Methods for consuming RESTful API\n =========================================*/\n\n get menuDownloadURL(){\n let domain = window.location.hostname;\n let apiURL = constants.PROD_MENU_BUCKET+'/navmenu.json'\n if(domain.includes('apptest.intentwise.com') || domain.includes('herokuapp') || domain.includes('localhost')){\n apiURL = constants.STAGING_MENU_BUCKET+'/navmenu.json';\n }\n return apiURL;\n }\n\n // Http Options\n \n\n public getRecommendationData(orgId, businessId, accountId) : Observable<any>{\n let url = this.baseURL+ 'organization/' + orgId + '/businessgroup/' + businessId + '/account/' + accountId +'/recommendation?version=v2';\n let responseType = null;\n let method = 'GET';\n let body = [];\n\n this.httpOptions = {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json',\n 'X-Auth-Token' : this.token\n })\n } \n return this.http.get(url, this.httpOptions)\n .pipe(\n map((res) => { return res })\n );\n }\n\n public getStructureAPISupportData(organizationId, businessGroupId, amsAccountId): Observable<any> {\n try {\n let url = this.DSPbaseURL + 'organization/' + organizationId + '/businessGroup/' + businessGroupId + '/account/' + amsAccountId +'/dsp/structureapisupport';\n\n this.httpOptions = {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json',\n 'authtoken' : this.token\n })\n } \n return this.http.get(url, this.httpOptions)\n .pipe(\n map((res) => { return res })\n );\n } catch (error) {\n throw error;\n }\n }\n public getjsonMenulists(applicationDetails): Observable<any> {\n try {\n \n return this.http.get(this.menuDownloadURL)\n .pipe(\n map((res) => { return res })\n );\n } catch (error) {\n throw error;\n }\n }\n\n\n}","import { Injectable } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport * as momentImported from 'moment'; const moment = momentImported;\n\n@Injectable()\nexport class UrlContextService {\n private queryParams;\n \n\n constructor(private activatedRoute: ActivatedRoute, public router: Router) {\n this.activatedRoute.queryParams.subscribe(params => {\n this.queryParams = params;\n });\n }\n\n public prepareUrlWithQueryParams = function(url, params) {\n if(Object.keys(params).length > 0) {\n url += \"?\";\n for(var key in params) {\n url += key + \"=\" + params[key] + \"&\";\n }\n url = url.replace(/&\\s*$/, \"\");\n }\n return url;\n }\n\n public setDateRangeUrlVal = function(dateRange) {\n if(typeof dateRange == 'object') {\n if(dateRange.value == 'custom') {\n return moment(dateRange.startDate).format('X') + ',' +\n moment(dateRange.endDate).format('X') + ',' +\n moment(dateRange.prevStartDate).format('X') + ',' +\n moment(dateRange.prevEndDate).format('X');\n } else {\n return dateRange.name;\n }\n } else {\n return dateRange;\n }\n }\n\n public validateKeyStroke = function(event) {\n var keystroke;\n console.log(event);\n if(navigator.platform.toUpperCase().indexOf('MAC')>=0) {\n keystroke = 'metaKey';\n } else {\n keystroke = 'ctrlKey';\n }\n\n if(event[keystroke]) return true;\n else return false;\n }\n\n public setUrlAndOpenTab = function(url, params, isRouterLink){\n if(Object.keys(params).length > 0) {\n url = this.prepareUrlWithQueryParams(url, params);\n url += \"&\";\n } else {\n url += \"?\";\n }\n url += 'tid=' + Math.random().toString(36).substring(7) + \"-\" + Math.random().toString(36).substring(7) + \"-\"\n + Math.random().toString(36).substring(7) + \"-\" + Math.random().toString(36).substring(7);\n \n\n if(this.queryParams.hasOwnProperty('useProd')) {\n url += '&useProd='+this.queryParams['useProd'];\n }\n if(isRouterLink){\n console.log(\"New Tab Router Url =\", url);\n this.router.navigate([], { relativeTo: this.activatedRoute, queryParams: this.queryParams, replaceUrl: true}).then(result => { window.open(url, '_blank'); });\n }\n else{\n console.log(\"New Tab Link Url \", `${window.location.origin}/${url}`);\n window.open(`${window.location.origin}/${url}`, '_blank');\n }\n }\n get isDevEnvironment(){\n try{\n if( window.location.href.indexOf('herokuapp') > -1 || window.location.href.indexOf('localhost') > -1 || window.location.href.indexOf('test') > -1){\n if(this.queryParams.hasOwnProperty('useProd') || (localStorage.getItem('useProd') && localStorage.getItem('useProd') !== null)){\n return false;\n }else{\n return true\n }\n }else{\n return false\n }\n }catch(error){\n throw error;\n }\n \n \n }\n}","export const EN_LABELS = {\n \"AMAZON_SPONSORED_ADS\": \"Amazon Sponsored Ads\",\n \"INTENTWISE_ANALYTICS_CLOUD\": \"Intentwise Analytics Cloud\",\n \"INTENTWISE_EXPLORE\": \"Intentwise Explore (AMC)\",\n \"ANALYTICS_CLOUD\": \"Analytics Cloud\",\n \"EXPLORE\": \"Explore (AMC)\",\n \"SHARE_OF_VOICE\": \"Share Of Voice\",\n \"CONTENT_ANALYTICS\": \"Content Analytics\",\n \"AMAZON_DSP\": \"Amazon DSP\",\n \"WALMART\": \"Walmart\",\n \"CRITEO\": \"Criteo\",\n \"INSTACART\": \"Instacart\",\n \"AMAZON_ATTRIBUTION\": \"Amazon Attribution\",\n \"AMAZON_VENDOR_CENTRAL\": \"Amazon Vendor Central\",\n \"AMAZON_SELLER_CENTRAL\": \"Amazon Seller Central\",\n \"GLOBAL_SETTINGS\": \"Global Settings\",\n \"AMAZON_SELLER_ANALYTICS\" : \"Amazon Seller Analytics\",\n \"AMAZON_VENDOR_ANALYTICS\" : \"Amazon Vendor Analytics\",\n \"GETTING_STARTED\": \"Getting Started\",\n \"QUERIES\": \"Queries\",\n \"QUERY_RESULTS\": \"Query Results\",\n \"AUDIENCES\": \"Audiences\",\n \"INSIGHTS\": \"Insights\",\n \"INSTANCES\": \"Instances\",\n \"DASHBOARD_TEMPLATES\": \"Dashboard Templates\",\n\n \"MY_CONNECTIONS\": \"My Connections\",\n \"ANALYTICS_LAB\": \"Analytics Lab\",\n \"SYSTEM_HEALTH\": \"System Health\",\n\n \"ACCOUNT_MANAGEMENT\": \"Account Management\",\n \"BRAND_TERMS\": \"Brand Terms\",\n \"LABELS\": \"Labels\",\n \"SUB_BRANDS\": \"Sub-Brands\",\n \"PRODUCT_META_DATA\": \"Product Meta Data\",\n \"SELLER_ANALYTICS_APP\" : \"Amazon Seller Analytics\",\n \"VENDOR_ANALYTICS_APP\" : \"Amazon Vendor Analytics\",\n\n \"HOURLY_METRICS\": \"Hourly Metrics\",\n \"SPONSORED_PRODUCTS\": \"Sponsored Products\",\n \"SPONSORED_BRANDS\": \"Sponsored Brands\",\n \"SPONSORED_DISPLAY\": \"Sponsored Display\",\n \"CUSTOM_REPORTS\": \"Custom Reports\",\n \"INVENTORY_OVERVIEW\": \"Inventory Overview\",\n \"WHAT_CHANGED\":\"What Changed?\",\n \"SETTINGS\": \"Settings\",\n\n \"ALL_ACCOUNTS\": \"All Accounts\",\n \"USER_SETTINGS\": \"User Settings\",\n \"OVERVIEW\": \"Overview\",\n \"RECOMMENDATIONS\": \"Recommendations\",\n \"CAMPAIGNS\": \"Campaigns\",\n \"AD_GROUPS\": \"Ad Groups\",\n \"KEYWORDS\": \"Keywords\",\n \"PRODUCT_TARGETING\": \"Product Targeting\",\n \"PRODUCTS\": \"Products\",\n \"SEARCH_TERMS\": \"Search Terms\",\n \n \"AMAZON_MARKETING_STREAM\": \"Amazon Marketing Stream\",\n \"RETAIL_ANALYTICS\": \"Retail Analytics\",\n \n \"PLACEMENT\": \"Placement\",\n \"AUTO_TARGETING\": \"Auto Targeting\",\n \n \"PRODUCT_ADS\": \"Product Ads\",\n \"CATEGORY_BENCHMARK\": \"Category Benchmark\",\n \"PRODUCT_AUD_TARGETING\": \"Product/Aud Targeting\",\n \n \"HIGH_LEVEL_METRICS\": \"High Level Metrics\",\n \"ORGANIC_RANKING\": \"Organic Ranking\",\n \"ST_RECOMMENDATIONS\": \"ST Recommendations\",\n \"ASIN_OVERVIEW\": \"ASIN Overview\",\n \"CAMPAIGN_REPORT_DOWNLOAD\": \"Campaign Report Download\",\n \"SC_ORDER_REPORTS\": \"SC Order Reports\",\n \"INVENTORY_FORECAST\": \"Inventory Forecast\",\n \"CONTENT_CHANGE_TRACKER\": \"Content Change Tracker\",\n \"ACCOUNT_VIEW\": \"Account View\",\n \"VENDOR_SALES_AND_AMS\": \"Vendor Sales and AMS\",\n \"DEMAND_AND_FORCAST\": \"Demand and Forcast\",\n \"VENDOR_CHARGE_BACKS\": \"Vendor Charge Backs\",\n \"VENDOR_PRODUCT_MARGIN\": \"Vendor Product Margin\",\n \"SC_TACOS_VIEW\": \"SC Tacos View\",\n \"INTERNAL_DASHBOARD\": \"Internal Dashboard\",\n \"PRODUCT_OVERVIEW_DOWNLOAD\": \"Product Overview Download\",\n \"REVIEW_DETAILS\": \"Review Details\",\n \"SELLER_PRODUCT_PERFORMANCE\": \"Seller Product Performance\",\n \"BUY_BOX_TRACKING\": \"Buy Box Tracking\",\n \"PERFORMANCE_DIAGNOSTICS\": \"Performance Diagnostics\",\n \"PERF_DIAGNOSTICS_DETAIL\": \"Perf Diagnostics Detail\",\n \"POS_NEW_PRODUCTS\": \"POS New Products\",\n \"COMPETITIVE_AD_TRACKING\": \"Competitive Ad Tracking\",\n \n \"ALERTS\": \"Alerts\",\n \"AUTOMATED_RULES\": \"Automated Rules\",\n \"CHANGE_HISTORY\": \"Change History\",\n \"MONTHLY_BUDGET\": \"Monthly Budget\",\n \"CUSTOM_PRODUCT_ATTRIBUTES\": \"Custom Product Attributes\",\n \"PRODUCT_COSTS\": \"Product Costs\"\n}","export const JA_LABELS = {\n \"AMAZON_SPONSORED_ADS\": \"Amazon のスポンサー広告\",\n \"INTENTWISE_ANALYTICS_CLOUD\": \"Intentwise アナリティクス クラウド\",\n \"INTENTWISE_EXPLORE\": \"Intentwise エクスプロア (AMC)\",\n \"ANALYTICS_CLOUD\": \"アナリティクス クラウド\",\n \"EXPLORE\": \"エクスプロア (AMC)\",\n \"SHARE_OF_VOICE\": \"シェア・オブ・ボイス\",\n \"CONTENT_ANALYTICS\": \"コンテンツアナリティクス\",\n \"AMAZON_DSP\": \"Amazon DSP\",\n \"WALMART\": \"ウォルマート\",\n \"CRITEO\": \"クリテオ\",\n \"INSTACART\": \"インスタカート\",\n \"AMAZON_ATTRIBUTION\": \"アマゾンの帰属\",\n \"AMAZON_VENDOR_CENTRAL\": \"アマゾンベンダーセントラル\",\n \"AMAZON_SELLER_CENTRAL\": \"Amazon セラーセントラル\",\n \"GLOBAL_SETTINGS\": \"全体設定\",\n \"AMAZON_SELLER_ANALYTICS\" : \"Amazon セーラーアナリティクス\",\n \"AMAZON_VENDOR_ANALYTICS\" : \"Amazon ベンダーアナリティクス\",\n \"GETTING_STARTED\": \"はじめる\",\n \"QUERIES\": \"クエリ\",\n \"QUERY_RESULTS\": \"クエリ結果\",\n \"AUDIENCES\": \"オーディエンス\",\n \"INSIGHTS\": \"インサイト\",\n \"INSTANCES\": \"インスタンス\",\n \"DASHBOARD_TEMPLATES\": \"ダッシュボードテンプレート\",\n\n \"MY_CONNECTIONS\": \"コネクション\",\n \"ANALYTICS_LAB\": \"アナリティクスラボ\",\n \"SYSTEM_HEALTH\": \"システムヘルス\",\n\n \"ACCOUNT_MANAGEMENT\": \"アカウント管理\",\n \"BRAND_TERMS\": \"ブランドキーワード\",\n \"LABELS\": \"ラベル\",\n \"SUB_BRANDS\": \"サブブランド\",\n \"PRODUCT_META_DATA\": \"製品メタデータ\",\n \"SELLER_ANALYTICS_APP\" : \"Amazon セーラーアナリティクス\",\n \"VENDOR_ANALYTICS_APP\" : \"Amazon ベンダーアナリティクス\",\n\n \"HOURLY_METRICS\": \"時間ごとのメトリクス\",\n \"SPONSORED_PRODUCTS\": \"スポンサープロダクト\",\n \"SPONSORED_BRANDS\": \"スポンサーブランド\",\n \"SPONSORED_DISPLAY\": \"スポンサーディスプレイ\",\n \"CUSTOM_REPORTS\": \"カスタムレポート\",\n \"INVENTORY_OVERVIEW\": \"インベントリの概要\",\n \"WHAT_CHANGED\":\"何が変わったのでしょうか?\",\n \"SETTINGS\": \"設定\",\n \n \"ALL_ACCOUNTS\": \"すべてのアカウント\",\n \"USER_SETTINGS\": \"ユーザー設定\",\n \"OVERVIEW\": \"概要\",\n \"RECOMMENDATIONS\": \"推奨事項\",\n \"CAMPAIGNS\": \"キャンペーン\",\n \"AD_GROUPS\": \"広告グループ\",\n \"KEYWORDS\": \"キーワード\",\n \"PRODUCT_TARGETING\": \"商品ターゲティング\",\n \"PRODUCTS\": \"商品\",\n \"SEARCH_TERMS\": \"検索キーワード\",\n \n \"AMAZON_MARKETING_STREAM\": \"Amazonマーケティングストリーム\",\n \"RETAIL_ANALYTICS\": \"リテールアナリティクス\",\n \n \"PLACEMENT\": \"プレイスメント\",\n \"AUTO_TARGETING\": \"オートターゲティング\",\n \n \"PRODUCT_ADS\": \"商品広告\",\n \"CATEGORY_BENCHMARK\": \"カテゴリベンチマーク\",\n \"PRODUCT_AUD_TARGETING\": \"商品/オーディエンスターゲティング\",\n\n \"HIGH_LEVEL_METRICS\": \"高レベルのメトリクス\",\n \"ORGANIC_RANKING\": \"オーガニックランキング\",\n \"ST_RECOMMENDATIONS\": \"STの推奨事項\",\n \"ASIN_OVERVIEW\": \"ASINの概要\",\n \"CAMPAIGN_REPORT_DOWNLOAD\": \"キャンペーンレポートダウンロード\",\n \"SC_ORDER_REPORTS\": \"SC注文レポート\",\n \"INVENTORY_FORECAST\": \"在庫予測\",\n \"CONTENT_CHANGE_TRACKER\": \"コンテンツ変更トラッカー\",\n \"ACCOUNT_VIEW\": \"アカウントビュー\",\n \"VENDOR_SALES_AND_AMS\": \"ベンダー販売とAMS\",\n \"DEMAND_AND_FORCAST\": \"需要と予測\",\n \"VENDOR_CHARGE_BACKS\": \"ベンダーのチャージバック\",\n \"VENDOR_PRODUCT_MARGIN\": \"ベンダー製品マージン\",\n \"SC_TACOS_VIEW\": \"SCタコスビュー\",\n \"INTERNAL_DASHBOARD\": \"内部ダッシュボード\",\n \"PRODUCT_OVERVIEW_DOWNLOAD\": \"製品概要のダウンロード\",\n \"REVIEW_DETAILS\": \"レビューの詳細\",\n \"SELLER_PRODUCT_PERFORMANCE\": \"販売者の製品パフォーマンス\",\n \"BUY_BOX_TRACKING\": \"購入ボックス追跡\",\n \"PERFORMANCE_DIAGNOSTICS\": \"パフォーマンス診断\",\n \"PERF_DIAGNOSTICS_DETAIL\": \"パフォーマンス診断の詳細\",\n \"POS_NEW_PRODUCTS\": \"POS新製品\",\n \"COMPETITIVE_AD_TRACKING\": \"競合広告の追跡\",\n \n \"ALERTS\": \"アラート\",\n \"AUTOMATED_RULES\": \"自動化されたルール\",\n \"CHANGE_HISTORY\": \"履歴を変更\",\n \"MONTHLY_BUDGET\": \"月々の予算\",\n \"CUSTOM_PRODUCT_ATTRIBUTES\": \"カスタム商品属性\",\n \"PRODUCT_COSTS\": \"商品コスト\",\n}","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, CanLoad, Route, RouterStateSnapshot, UrlSegment, UrlTree } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { EN_LABELS } from '../translations/translations-en';\nimport { JA_LABELS } from '../translations/translations-ja';\nimport { CookieService } from 'ngx-cookie-service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class TranslationService {\n private translation: any;\n constructor(private cookie: CookieService){\n if (this.cookie.get('selectedLanguage') && this.cookie.get('selectedLanguage') == 'ja') {\n this.translation = JA_LABELS;\n } else {\n this.translation = EN_LABELS;\n }\n }\n\n public getLabel(key){\n return this.translation[key];\n }\n public selectedApplication(applicationDetails, headmenu){\n if(applicationDetails && headmenu){\n let siteId = applicationDetails?.sidebarInfo?.siteId ? applicationDetails?.sidebarInfo?.siteId : 1;\n let name = Number(siteId) == 1 ? headmenu?.name : headmenu?.name.replace(/Intentwise/gi, \"\");\n return this.translateName(name) ? this.translateName(name) : name;\n }\n return '';\n }\n public translateName(name){\n let translateName = name;\n if(name.includes('TranslationService')){\n translateName = name.replace(/TranslationService.getLabel/gi,'').replace(/[\\])}[{(]/g, '').replace(/(\"|')/g, \"\");\n }\n return this.translation[translateName] ? this.translation[translateName] : translateName; \n }\n}","import { Injectable } from '@angular/core';\nimport { RestApiService } from './rest-api.services';\nimport {ActivatedRoute } from '@angular/router';\nimport { UrlContextService } from './url-context.service';\nimport { EN_LABELS } from '../translations/translations-en';\nimport { JA_LABELS } from '../translations/translations-ja';\nimport { TranslationService } from './translation.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ApplicationSidebarService {\n\n\tconditions \t\t\t= ['org_user_ctrl', 'visibility_roles', 'visibility_roles_not_in', 'account_ids', 'customer_types_not_in','customer_types','organization_ids', 'organization_ids_not_in', 'account_type', 'account_ids_not_in', 'organization_setting', 'organization_setting_not_in', 'app_spacific_config_check', 'campaign_types', 'incontext_campaign_targeting', 'incontext_campaign_targeting_walmart', 'subscription_types', 'siteIds', 'siteNotIds', 'not_account_type', 'not_account_name', 'disable_readonly_org', 'user_emails', 'hide_for_user', 'app_org_setting','app_org_setting_not_in','ng_app_setting','ng_app_setting_not_in','targetting_types','targetting_types_not_in','hide_for_user'];\n\tMenuList \t\t\t= [];\n\n\tapplicationIds \t\t= [];\n\tenableAllMenusByOrg = [30780]\n\t\n\tappDetails:\tany;\n\tisStructureApiSupport:\tany;\n\tSettingsMenuList: any[];\n\tappNames: string[];\n\tprivate menulists: any;\n\tcontentAppRoutes\t\t\t=['content-insight','content-analytics','content','product-meta-data','brand-terms-settings','labels-settings','sub-brands','sub-brands-mapping','sov-settings' ,'content-settings']\n\tsovAppRoutes\t\t\t\t=['insights','share-of-voice','sov','product-meta-data','brand-terms-settings','labels-settings','sub-brands','sub-brands-mapping','sov-settings' ,'content-settings']\n\tsellerAnalyticsAppRoutes \t=['seller/insights','product-meta-data','brand-terms-settings','labels-settings','sub-brands','sub-brands-mapping','sov-settings' ,'content-settings']\n\tvendorAnalyticsAppRoutes\t=['vendor/insights','product-meta-data','brand-terms-settings','labels-settings','sub-brands','sub-brands-mapping','sov-settings' ,'content-settings']\n\t\n\ttypeStatusConfigs = {\n 'SPONSORED_KEYWORD_BIDS' : true,\n 'SPONSORED_PRODUCT_MANUAL_TARGETING_BIDS' : true,\n 'SPONSORED_PRODUCT_AUTO_TARGETING_BIDS' : true,\n 'SPONSORED_KEYWORD_AUTO' : true,\n 'SPONSORED_KEYWORD' : true,\n 'SP_KEYWORDS_BID_GAP' : false,\n 'SP_PLACEMENT_BID' : false,\n 'SP_TARGETING_TYPE_BREAKDOWN' : false,\n 'SP_MATCH_TYPE_BREAKDOWN' : false,\n 'SP_SB_KEYWORD_PARITY' : true,\n 'HEADLINE_KEYWORD_BIDS' : true,\n 'SB_KEYWORDS_BID_GAP' : false,\n 'SB_MATCH_TYPE_BREAKDOWN' : false,\n 'SB_SP_KEYWORD_PARITY' : true,\n 'NO_KEYWORD_BIDS' : true,\n 'CAMPAIGN_TYPE_BREAKDOWN' : false,\n 'AUTO_TO_MANUAL_ASIN_PARITY' : true,\n 'MANUAL_TO_AUTO_ASIN_PARITY' : true,\n 'COMPETITOR_PRODUCT' : true,\n 'SPONSORED_BRAND_KEYWORD': true\n }\n\n\t\n\n\tconstructor(\n\t\tprivate RestApiService: RestApiService,\n\t\tprivate activatedRoute:ActivatedRoute,\n\t\tprivate translate:TranslationService,\n\t\tprivate urlContextService: UrlContextService) {}\n\n\tgetTypeStatusConfigs(){\n\t\treturn this.typeStatusConfigs;\n\t}\n\tconstructChildMenus(menuItems) {\n if (this.appDetails.listMenus) {\n for (let item of menuItems) {\n if (this.appDetails.appSet) {\n if (item.id.includes(this.appDetails.applicationId)) {\n for (let listMenuItem of this.appDetails.listMenus) {\n if (item.id == listMenuItem.id) {\n item.children = listMenuItem.children;\n }\n }\n }\n }\n else if (item.id == this.appDetails.applicationId) {\n item.children = this.appDetails.listMenus;\n }\n }\n }\n return menuItems;\n }\n\n\tgetMenuList(appDetails, menulists) {\n this.appDetails = appDetails;\n this.MenuList = [];\n let appendChildMenus;\n if (window.location.href.indexOf('herokuapp') > -1 || window.location.href.indexOf('localhost') > -1) {\n appendChildMenus = this.constructChildMenus(menulists);\n }\n else {\n appendChildMenus = menulists;\n }\n appendChildMenus.forEach((menu) => {\n menu.name = this.translate.translateName(menu.name);\n menu.children && menu.children.forEach((childMenu) => {\n childMenu.name = this.translate.translateName(childMenu.name);\n childMenu.children && childMenu.children.forEach((child) => {\n child.name = this.translate.translateName(child.name);\n });\n });\n });\n this.menulists = appendChildMenus.filter(list => list.id !== 'app_global_settings');\n let sortedMenulists = this.menulists.sort((a, b) => (a.order > b.order) ? 1 : -1);\n this.applicationIds = sortedMenulists.map((appId) => appId.id);\n this.appNames = this.applicationIds;\n if((this.appDetails.currentOrganization.organizationId === 10390 ||\n this.appDetails.currentOrganization.organizationId === 10530) &&\n this.appDetails.userInfo.email == \"sreenath@intentwise.com\") {\n this.appNames = this.applicationIds.filter((name) => {\n return (name != 'ads_amazon_content_share_of_voice' && name != 'ads_amazon_content_content_analytics');\n });\n }\n for (let appName of sortedMenulists) {\n if (this.appNames.indexOf(appName.id) >= 0) {\n let list = this.getApplicationMenuItem(appName);\n if (list && list.children != undefined) {\n if (appName.id == 'ads_amazon_dsp') {\n if (list.children && list.children.length > 0) {\n for (let child of list.children) {\n if (!this.isStructureApiSupport && child.id == \"ams_dsp_settings\") {\n child.children = child.children.filter(s_child => s_child.id !== 'ams_dsp_rules');\n }\n }\n }\n this.MenuList.push(list);\n }\n else {\n this.MenuList.push(list);\n }\n }\n }\n else if (appName.type != 'expandable') {\n let list = this.getApplicationMenuItem(appName);\n if (list != undefined) {\n this.MenuList.push(list);\n }\n }\n }\n return this.MenuList;\n }\n\n\tgetApplicationMenuItem(currentMenuItem:any): any {\n\t\tlet menuItem = {\n\t\t\tchildren : []\n\t\t};\n\n\t\tif(currentMenuItem.type != 'expandable'){\n\t\t\tlet allKeys = Object.keys(currentMenuItem);\n\t\t\tconst hasConditionstoCheck = this.conditions.some(condition => allKeys.includes(condition))\n\t\t\tif(hasConditionstoCheck){\n\t\t\t\tlet isMenuAllowed = this.checkAllConditions(currentMenuItem, this.conditions, allKeys);\n\t\t\t\tif(isMenuAllowed){\n\t\t\t\t\tmenuItem = currentMenuItem;\n\t\t\t\t}\n\t\t\t\telse{\n\t\t\t\t\t// console.log('return empty');\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t\telse{\n\t\t\t\tmenuItem = currentMenuItem;\n\t\t\t}\n\t\t}\n\t\telse{\n\t\t\tlet allKeys = Object.keys(currentMenuItem);\n\t\t\tconst hasConditionstoCheck = this.conditions.some(condition => allKeys.includes(condition))\n\t\t\tif(!hasConditionstoCheck || (hasConditionstoCheck && this.checkAllConditions(currentMenuItem, this.conditions, allKeys))) {\n\t\t\t\tObject.keys(currentMenuItem).forEach((key)=>{ \n\t\t\t\t\tif (typeof currentMenuItem[key] != \"object\" ) {\n\t\t\t\t\t\tmenuItem[key] = currentMenuItem[key];\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t\tmenuItem.children = [];\n\t\t\t\tfor(let child of currentMenuItem.children){\n\t\t\t\t\tlet nav_menu = this.getApplicationMenuItem(child);\n\t\t\t\t\tif(nav_menu != null){ \n\t\t\t\t\t\tif(nav_menu.children != undefined){\n\t\t\t\t\t\t\tif(nav_menu.children.length > 0){\n\t\t\t\t\t\t\t\tmenuItem.children.push(nav_menu);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse{\n\t\t\t\t\t\t\tmenuItem.children.push(nav_menu);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}else{\n\t\t\t\treturn;\n\t\t\t}\t\t\t\n\t\t}\n\t\treturn menuItem;\n\t}\n\n\tgetGlobalSettingsMenu(appDetails : any, menulists) {\n\t\tthis.appDetails = appDetails;\t\n\t\tthis.SettingsMenuList = [];\n\t\tlet globalSettingMenus = menulists.filter(list=> list.id == 'app_global_settings')\n\t\tlet GLOBAL_SETTING_LIST_SORTED = globalSettingMenus.sort((a, b) => (a.order > b.order) ? 1 : -1);\n\t\tfor (let appName of GLOBAL_SETTING_LIST_SORTED) {\n\t\t\tif(appName.type == 'expandable'){\n\t\t\t\tlet list = this.getApplicationMenuItem(appName);\n\t\t\t\tif(list && list.children && list.children.length > 0){\n\t\t\t\t\tthis.SettingsMenuList.push(list);\n\t\t\t\t}\t\t\t\t\n\t\t\t}else if(appName.type != 'expandable'){\n\t\t\t\tlet list = this.getApplicationMenuItem(appName);\n\t\t\t\tif(list != undefined){\n\t\t\t\t\tthis.SettingsMenuList.push(list)\n\t\t\t\t}\n\t\t\t}\n\t\t}\t\t\n\t\treturn this.SettingsMenuList;\n\t}\n\n\tcheckAllConditions(currentMenuItem: any, conditions, allKeys: string[]): any {\n\t\tlet includeMenu = false;\n\t\tif((!this.appDetails.currentAccount && currentMenuItem.id == \"ads_overview\" && \n\t\t\t!this.appDetails.currentOrganization['noActiveAccounts'])){\n\t\t\treturn true;\n\t\t}\n\t\telse if(currentMenuItem.id === \"ads_signup_overview\") {\n\t\t\tif(!this.appDetails.currentAccount && this.appDetails.currentOrganization['noActiveAccounts']){\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\telse{\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\tfor(let cond of conditions){\n\t\t\tif(currentMenuItem[cond] != undefined){\n\t\t\t\tswitch(cond){\n\t\t\t\t\tcase 'visibility_roles': { \n\t\t\t\t\t\tincludeMenu = this.checkForRoles(currentMenuItem[cond]);\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\tbreak; \n\t\t\t\t\t} \n\t\t\t\t\tcase 'visibility_roles_not_in': { \n\t\t\t\t\t\tincludeMenu = this.checkForvisibilityRolesNotIn(currentMenuItem[cond]);\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\tbreak; \n\t\t\t\t\t} \n\t\t\t\t\tcase 'disable_readonly_org':{\n\t\t\t\t\t\tincludeMenu = this.disableForOrgwithReadOnly(currentMenuItem[cond]);\n\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'organization_ids' : {\n\t\t\t\t\t\tif(this.appDetails.currentAccount && this.appDetails.currentAccount.organizationId) {\n\t\t\t\t\t\t\tincludeMenu = this.checkForSpecifiedIds(currentMenuItem[cond],currentMenuItem,this.appDetails.currentAccount.organizationId);\t\t\t\t\t\t\t\n\t\t\t\t\t\t} else if(this.appDetails.currentOrganization && this.appDetails.currentOrganization.organizationId) {\n\t\t\t\t\t\t\tincludeMenu = this.checkForSpecifiedIds(currentMenuItem[cond],currentMenuItem,this.appDetails.currentOrganization.organizationId);\t\t\t\t\t\t\t\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tincludeMenu = false;\n\t\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'organization_ids_not_in' : {\n\t\t\t\t\t\tif(this.appDetails.currentAccount && this.appDetails.currentAccount.organizationId) {\n\t\t\t\t\t\t\tincludeMenu = this.checkForSpecifiedIdsNotIn(currentMenuItem[cond],currentMenuItem,this.appDetails.currentAccount.organizationId);\n\t\t\t\t\t\t} else if(this.appDetails.currentOrganization && this.appDetails.currentOrganization.organizationId) {\n\t\t\t\t\t\t\tincludeMenu = this.checkForSpecifiedIdsNotIn(currentMenuItem[cond],currentMenuItem,this.appDetails.currentOrganization.organizationId);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tincludeMenu = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'org_user_ctrl':{\n\t\t\t\t\t\tif(this.appDetails.currentOrganization && this.appDetails.currentOrganization.organizationId) {\n\t\t\t\t\t\t\tincludeMenu = this.checkForOrgWithUserRole(currentMenuItem[cond],currentMenuItem,this.appDetails.currentOrganization.organizationId);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tincludeMenu = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'account_ids' : { \n\t\t\t\t\t\tif(this.appDetails.currentAccount && this.appDetails.currentAccount.amsAccountId) {\n\t\t\t\t\t\t\tincludeMenu = this.checkForSpecifiedIds(currentMenuItem[cond],currentMenuItem,this.appDetails.currentAccount.amsAccountId);\t\t\t\t\t\t\t\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tincludeMenu = false;\n\t\t\t\t\t\t}\n\t\t\t\t\tbreak; \n\t\t\t\t\t}\n\t\t\t\t\tcase 'account_ids_not_in' : {\n\t\t\t\t\t\tincludeMenu = this.checkForSpecifiedAccountIdsNotIn(currentMenuItem[cond],currentMenuItem,this.appDetails.currentAccount.amsAccountId);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\t\t\t\t\t\n\t\t\t\t\tcase 'not_account_name' : {\n\t\t\t\t\t\tif(this.appDetails.currentAccount){\n\t\t\t\t\t\t\tincludeMenu = this.checkForNotAccName(currentMenuItem[cond]);\n\t\t\t\t\t\t}else {\n\t\t\t\t\t\t\tincludeMenu = false;\n\t\t\t\t\t\t}\t\t\t\t\t\t\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'account_type' : { \n\t\t\t\t\t\tif(this.appDetails.currentAccount && this.appDetails.currentAccount.type) {\n\t\t\t\t\t\t\tincludeMenu = this.checkForAccType(currentMenuItem);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tincludeMenu = false;\n\t\t\t\t\t\t}\n\t\t\t\t\tbreak; \n\t\t\t\t\t}\n\t\t\t\t\tcase 'organization_setting' : { \n\t\t\t\t\t\tincludeMenu = this.checkForOrgSettings(currentMenuItem[cond]);\t\t\t\t\t\t\n\t\t\t\t\tbreak; \n\t\t\t\t\t}case 'app_org_setting' : { \n\t\t\t\t\t\tincludeMenu = this.checkForOrgAppSettings(currentMenuItem[cond]);\t\t\t\t\t\t\n\t\t\t\t\tbreak; \n\t\t\t\t\t}\n\t\t\t\t\tcase 'app_org_setting_not_in': {\n\t\t\t\t\t\tincludeMenu = this.checkForOrgAppSettingsNotIn(currentMenuItem[cond]);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'organization_setting_not_in' : { \n\t\t\t\t\t\tincludeMenu = this.checkForNotOrgSettings(currentMenuItem[cond]);\t\t\t\t\t\t\n\t\t\t\t\tbreak; \n\t\t\t\t\t} \n\t\t\t\t\t// TODO : This is temporery solution for Amc spacific org setting check.\n\t\t\t\t\tcase 'app_spacific_config_check': {\n\t\t\t\t\t\tincludeMenu = this.appSpecificConfig(currentMenuItem[cond]);\n\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'siteIds' : { \n\t\t\t\t\t\tincludeMenu = this.checkForSiteIds(currentMenuItem[cond]);\n\t\t\t\t\tbreak; \n\t\t\t\t\t} \n\t\t\t\t\tcase 'siteNotIds' : { \n\t\t\t\t\t\tincludeMenu = this.checkForSiteNotIds(currentMenuItem[cond]);\n\t\t\t\t\tbreak; \n\t\t\t\t\t} \n\t\t\t\t\tcase 'subscription_types' : { \n\t\t\t\t\t\tif(currentMenuItem['account_type'] == undefined){\n\t\t\t\t\t\t\tif(this.appDetails.currentAccount && this.appDetails.currentAccount.subscription) {\n\t\t\t\t\t\t\t\tincludeMenu = this.checkForSubscriptions(currentMenuItem[cond])\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tincludeMenu = false;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}else{\n\t\t\t\t\t\t\tif(this.appDetails.currentAccount && this.appDetails.currentAccount.type) {\n\t\t\t\t\t\t\t\tincludeMenu = this.checkForAccType(currentMenuItem);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tincludeMenu = false;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\tbreak; \n\t\t\t\t\t} \n\t\t\t\t\tcase 'campaign_types' : {\n\t\t\t\t\t\tif(this.appDetails.campaignInContext){\n\t\t\t\t\t\t\tincludeMenu = this.checkForCampaignType(currentMenuItem[cond])\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse{\n\t\t\t\t\t\t\tincludeMenu = true;\n\t\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'targetting_types': {\n\t\t\t\t\t\tif (this.appDetails.campaignInContext) {\n\t\t\t\t\t\t\tincludeMenu = this.checkForTargettingType(currentMenuItem[cond])\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tincludeMenu = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'targetting_types_not_in': {\n\t\t\t\t\t\tif (this.appDetails.campaignInContext) {\n\t\t\t\t\t\t\tincludeMenu = this.checkForNotTargettingType(currentMenuItem[cond])\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tincludeMenu = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'incontext_campaign_targeting' : { \n\t\t\t\t\t\tif(this.appDetails.campaignInContext){\n\t\t\t\t\t\t\tincludeMenu = this.checkForCampaignTargeting(currentMenuItem[cond])\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse{\n\t\t\t\t\t\t\tincludeMenu = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak; \n\t\t\t\t\t}\n\t\t\t\t\tcase 'incontext_campaign_targeting_walmart' : { \n\t\t\t\t\t\tif(this.appDetails.campaignInContextwalmart){\n\t\t\t\t\t\t\tincludeMenu = this.checkForCampaignTargetingWalmart(currentMenuItem[cond])\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse{\n\t\t\t\t\t\t\tincludeMenu = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak; \n\t\t\t\t\t}\n\t\t\t\t\tcase 'user_emails' : { \n\t\t\t\t\t\tincludeMenu = this.authenticateUserMailMenu(currentMenuItem[cond])\n\t\t\t\t\t\tbreak; \n\t\t\t\t\t}\n\t\t\t\t\tcase 'hide_for_user' : {\n\t\t\t\t\t\tincludeMenu = this.checkForHiddenUserRole(currentMenuItem[cond])\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'ng_app_setting': {\n\t\t\t\t\t\tif (!this.appDetails.campaignInContext) {\n\t\t\t\t\t\t\tincludeMenu = this.checkContextSettings(currentMenuItem[cond])\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'ng_app_setting_not_in': {\n\t\t\t\t\t\tincludeMenu = this.checkContextSettingNotIn(currentMenuItem[cond]);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'customer_types': {\n\t\t\t\t\t\tincludeMenu = this.checkCustomerTypeIn(currentMenuItem[cond]);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'customer_types_not_in': {\n\t\t\t\t\t\tincludeMenu = this.checkCustomerTypeNotIn(currentMenuItem[cond]);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\t// default: { \n\t\t\t\t\t// //statements; \n\t\t\t\t\t// break; \n\t\t\t\t\t// } \n\t\t\t\t}\n\t\t\t\tif(!includeMenu){\n\t\t\t\t\treturn false;\n\t\t\t\t}\t\t\t\n\t\t\t}else{\n\t\t\t\tincludeMenu = true;\n\t\t\t}\n\t\t}\n\n\t\treturn includeMenu;\n\t}\n\n\tcheckForNotAccName(possibleValues: any): boolean {\n\t\tif(possibleValues.indexOf(this.appDetails.currentAccount.name) == -1){\n\t\t\treturn true;\n\t\t}\n\t\telse{\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tcheckForCampaignType(possibleValues: any):boolean{\n\t\tif(this.appDetails.campaignInContext && possibleValues.indexOf(this.appDetails.campaignInContext[0].dataType) >= 0){\n\t\t\treturn true;\n\t\t}\n\t\telse{\n\t\t\treturn false;\n\t\t}\n\t}\n\tcheckForTargettingType(possibleValues: any):boolean{\n\t\tvar allow = false;\n\t\tif(this.appDetails.campaignInContext && possibleValues.indexOf(this.appDetails.campaignInContext[0].targetingType) >= 0){\n\t\t\tallow = true;\n\t\t}\n\t\treturn allow;\n\t}\n\tcheckForNotTargettingType(possibleValues: any):boolean{\n\t\tvar allow = true;\n\t\tif(this.appDetails.campaignInContext && possibleValues.indexOf(this.appDetails.campaignInContext[0].targetingType) >= 0){\n\t\t\tallow = false;\n\t\t}\n\t\treturn allow;\n\t}\n\tcheckForCampaignTargeting(possibleValues: any):boolean{\n\t\tif(this.appDetails.campaignInContext && possibleValues.indexOf(this.appDetails.campaignInContext[0].campaignTargeting) >= 0){\n\t\t\treturn true;\n\t\t}\n\t\telse{\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tcheckForCampaignTargetingWalmart(possibleValues: any):boolean{\n\t\tif(this.appDetails.campaignInContextwalmart && possibleValues.indexOf(this.appDetails.campaignInContextwalmart[0].campaignTargeting) >= 0){\n\t\t\treturn true;\n\t\t}\n\t\telse{\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tauthenticateUserMailMenu(possibleValues: any):boolean{\n\t\treturn possibleValues && possibleValues.includes(this.appDetails.userInfo.email);\n\t}\n\n\tcheckForSubscriptions(possibleValues: any): boolean{\n\t\tfor(let settings of this.appDetails.currentAccount.subscription){\n\t\t\tif((possibleValues.indexOf(settings.type) >= 0) && settings.status == \"ACTIVE\"){\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tcheckForSiteIds(possibleValues: any): boolean {\n\t\tif(this.appDetails.sidebarInfo && this.appDetails.sidebarInfo.siteId && possibleValues.includes(Number(this.appDetails.sidebarInfo.siteId))){\n\t\t\treturn true;\n\t\t}\n\t\telse{\n\t\t\treturn false;\n\t\t}\n\t}\n\tcheckForSiteNotIds(possibleValues: any): boolean {\n\t\tif(this.appDetails.sidebarInfo && this.appDetails.sidebarInfo.siteId && possibleValues.includes(Number(this.appDetails.sidebarInfo.siteId))){\n\t\t\treturn false;\n\t\t}\n\t\telse{\n\t\t\treturn true;\n\t\t}\n\t}\n\n\t// TODO : This is temporery solution for Amc spacific org setting check.\n\tappSpecificConfig(possibleValues: Array<String>): boolean {\n\t\ttry {\n\t\t\tconst role = ['SUPER_ADMIN', 'SUPER_ADMIN_READ_ONLY'];\n\t\t\t// Check role condition and org setting is availablity\n\t\t\tif (!role.includes(this.appDetails.userInfo.role) && this.appDetails.orgSettings && this.appDetails.orgSettings.length > 0) {\n\t\t\t\tlet allow = false;\n\n\t\t\t\t// To verify if the org setting is available\n\t\t\t\t\n\t\t\t\tlet keymatched = possibleValues.some((key: String) => {\n\t\t\t\t\treturn this.appDetails.orgSettings.findIndex(function (setting: any) { return key == setting.setting; }) > -1\n\t\t\t\t});\n\n\t\t\t\t// To verify if the org setting is available and enabled/Active\n\n\t\t\t\tlet AllActive = possibleValues.every((key: String) => {\n\t\t\t\t\treturn this.appDetails.orgSettings.findIndex(function (setting: any) { return key == setting.setting && setting.value == \"ACTIVE\"; }) > -1\n\t\t\t\t});\n\n\t\t\t\t// If No org setting is available OR setting is available but with active status\n\t\t\t\tif (!keymatched || AllActive) {\n\t\t\t\t\tallow = true;\n\t\t\t\t}\n\t\t\t\treturn allow;\n\t\t\t} else {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconsole.error(error)\n\t\t}\n\t}\n\n\tcheckForOrgSettings(possibleValues: any): boolean {\n\t\ttry{\n\t\t\tvar allow = false;\n\t\t\tif (this.appDetails.orgSettings && this.appDetails.orgSettings.length > 0) {\n\t\t\t\tallow = this.appDetails.orgSettings.some(function(orgSetting){\n\t\t\t\t\tif(!orgSetting.value || orgSetting.value && orgSetting.value == 'ACTIVE') {\n\t\t\t\t\t\treturn possibleValues.includes(orgSetting.setting);\n\t\t\t\t\t};\n\t\t\t\t})\n\t\t\t\treturn allow;\n\t\t\t} else {\n\t\t\t\treturn allow;\n\t\t\t}\n\t\t}catch(error){\n\t\t\tconsole.error(error)\n\t\t}\n\t}\n\n\tcheckForOrgAppSettings(possibleValues: any): boolean {\n\t\tif(this.appDetails.orgAppSettings){\n\t\t\tfor(let settings of this.appDetails.orgAppSettings){\n\t\t\t\tif(possibleValues.indexOf(settings.type) >= 0 && settings.status == 'ACTIVE'){\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t}else{\n\t\t\treturn false;\n\t\t}\n\t}\n\tcheckForOrgAppSettingsNotIn(possibleValues: any): boolean {\n\t\ttry{\n\t\t\tvar allow = true;\n\t\t\tif (this.appDetails.orgAppSettings && this.appDetails.orgAppSettings.length > 0) {\n\t\t\t\tallow = this.appDetails.orgAppSettings.some((orgAppSetting) => {\n\t\t\t\t\treturn (!possibleValues.includes(orgAppSetting.type) || \n\t\t\t\t\t\t\t(possibleValues.includes(orgAppSetting.type) && \n\t\t\t\t\t\t\torgAppSetting.status && orgAppSetting.status == 'IN_ACTIVE'))\n\t\t\t\t});\n\t\t\t\treturn allow;\n\t\t\t} else {\n\t\t\t\treturn allow;\n\t\t\t}\n\t\t}catch(error){\n\t\t\tconsole.error(error)\n\t\t}\n\t}\n\n\tcheckCustomerTypeIn(possibleValues: any): boolean {\n\t\tif (this.appDetails.currentOrganization.customerType && \n\t\t\tpossibleValues.includes(this.appDetails.currentOrganization.customerType)) {\n\t\t\treturn true;\n\t\t}\n\t\telse {\n\t\t\treturn false;\n\t\t}\n\t}\n\tcheckCustomerTypeNotIn(possibleValues: any): boolean {\n\t\tif (!this.appDetails.currentOrganization.customerType || (this.appDetails.currentOrganization.customerType && \n\t\t\t!possibleValues.includes(this.appDetails.currentOrganization.customerType))) {\n\t\t\treturn true;\n\t\t}\n\t\telse {\n\t\t\treturn false;\n\t\t}\n\t}\n\tcheckForNotOrgSettings(possibleValues: any): boolean {\n\t\tlet allow = true;\n\t\tif(this.appDetails.orgSettings && this.appDetails.orgSettings.length > 0){\n\t\t\tallow = this.appDetails.orgSettings.some(function(orgSetting){\n\t\t\t\treturn (!possibleValues.includes(orgSetting.setting) || \n\t\t\t\t\t(possibleValues.includes(orgSetting.setting) && \n\t\t\t\t\torgSetting.value && orgSetting.value == 'IN_ACTIVE'))\n\t\t\t\t \n\t\t\t});\n\t\t\treturn allow;\n\t\t}else{\n\t\t\treturn allow;\n\t\t}\n\t}\n\t\n\tcheckContextSettings(possibleValues: any): boolean {\n\t\tvar allow = false;\n\t\tif(this.appDetails.ngOrgSettings){\n\t\t\tfor (let item of possibleValues) {\n\t\t\t\tallow = this.appDetails.ngOrgSettings[item];\n\t\t\t\tallow = allow == undefined ? true : allow;\n\t\t\t}\n\t\t}\n\t\treturn allow;\n\t}\n\n\tcheckContextSettingNotIn(possibleValues: any): boolean {\n\t\tvar allow = true;\n\t\tif(this.appDetails.ngOrgSettings){\n\t\t\tfor (let item of possibleValues) {\n\t\t\t\tallow = !this.appDetails.ngOrgSettings[item];\n\t\t\t}\n\t\t}\n\t\treturn allow;\n\t}\n\n\tcheckForAccType(menuItem: any): boolean {\n\t\tif(menuItem['account_type'].indexOf(this.appDetails.currentAccount.type) >= 0){\n\t\t\treturn true;\n\t\t}\n\t\telse{\n\t\t\tif(menuItem['subscription_types']){\n\t\t\t\treturn this.checkForSubscriptions(menuItem['subscription_types'])\n\t\t\t}\n\t\t\telse{\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\n\tcheckForSpecifiedIds(possibleValues: any , currentMenuItem:any , id:number): boolean {\n\t\tif(possibleValues[0].id){\n\t\t\tfor (let item of possibleValues) {\n\t\t\t\tif( item.id === id ){\n\t\t\t\t\tObject.keys(item).forEach((key)=>{ \n\t\t\t\t\t\tif (key != 'id') {\n\t\t\t\t\t\t\tcurrentMenuItem[key] = item[key];\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t\tconsole.log('Link changed to '+currentMenuItem.link+' and route changed to '+currentMenuItem.route);\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\telse {\n\t\t\tif(possibleValues.indexOf(id) >= 0){\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\telse{\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\tcheckForOrgWithUserRole(possibleValues: any , currentMenuItem:any , id:number): boolean {\n\t\tlet allow = true;\n\t\tif (possibleValues && possibleValues.length > 0) {\n\t\t\tvar flagArray = [];\n\t\t\tfor (let item of possibleValues) {\n\t\t\t\tvar allKeys = Object.keys(item);\n\t\t\t\tvar flag = this.checkAllConditions(item, allKeys, allKeys)\n\t\t\t\tflagArray.push(flag);\n\t\t\t}\n\t\t\tallow = flagArray.includes(true) ? true : false;\n\t\t\t\n\t\t}\n\t\treturn allow;\n\t}\n\tcheckForSpecifiedIdsNotIn(possibleValues: any , currentMenuItem:any , id:number): boolean {\n\t\treturn possibleValues.indexOf(id) < 0;\n\t}\n\n\tcheckForSpecifiedAccountIdsNotIn(possibleValues: any , currentMenuItem:any , id:number): boolean {\n\t\treturn possibleValues.indexOf(id) < 0;\n\t}\n\n\tcheckForRoles(possibleValues: any): boolean {\n\t\tif(possibleValues && possibleValues.length > 0){\n\t\t\tif(possibleValues.indexOf(this.appDetails.userInfo.role) >= 0){\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\telse{\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\n\tcheckForvisibilityRolesNotIn(possibleValues: any): boolean {\n\t\tif(possibleValues && possibleValues.length > 0){\n\t\t\tif(possibleValues.indexOf(this.appDetails.userInfo.role) >= 0){\n\t\t\t\treturn false;\n\t\t\t}else{\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\n\tcheckForHiddenUserRole(possibleValues: any): boolean {\n\t\tif(possibleValues && possibleValues.length > 0){\n\t\t\tif(possibleValues.indexOf(this.appDetails.userInfo.role) >= 0 && this.appDetails.userInfo.isHiddenUser){\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\telse{\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\n\tpublic disableForOrgwithReadOnly(possibleValues: any): boolean{\n\t\tif(this.appDetails.userInfo.role === 'READ_ONLY' && possibleValues.indexOf(this.appDetails.currentAccount.organizationId) >= 0){\n\t\t\treturn false;\n\t\t}\n\t\telse{\n\t\t\treturn true;\n\t\t}\n\t}\n\n\tpublic getHostOriginAndNavigate(route , applicationId=undefined) {\n\t\tif (window.location.href.indexOf(route) == -1) {\n\t\t\tthis.activatedRoute.queryParams.subscribe(params => {\n\t\t\t\tif (applicationId) {\n\t\t\t\t\tparams = {...params, ...applicationId};\t\n\t\t\t\t}\n\n\t\t\t\tif (route.indexOf('?') > -1 && route.indexOf('usermgmt') > -1){\n\t\t\t\t\troute = route.split('?')[0];\n\t\t\t\t\tlet newQParam = { usermgmt : true}\n\t\t\t\t\tparams = { ...params , ...newQParam}\n\t\t\t\t}\n\t\t\t\tlet urlToNavigate = this.urlContextService.prepareUrlWithQueryParams(route, params);\n\t\t\t\turlToNavigate = `${window.location.origin}/${urlToNavigate}`\n\t\t\t\t// urlToNavigate = `http://localhost:3000/${urlToNavigate}`\n\t\t\t\tconsole.log('Navigating to - ',urlToNavigate);\n\t\t\t\twindow.open(urlToNavigate, '_self');\n\t\t\t});\n\t\t}\n }\n\t\n\tpublic fetchKeyValue(key: string) {\n\t\tif(this.appDetails && this.appDetails.currentAccount) {\n\t\t\treturn (this.appDetails.currentAccount[key]);\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t\t\n\t}\n\n\tpublic setActiveRecoCount(count:number){\n\t\tthis.appDetails.currentAccount['activeRecommendation'] = count;\n\t}\n\t\n\tpublic isHavingAnyActiveSubs(id,subs,type){\n if(id === 'ads_amazon_attribution' && this.checkSubscriptionActive(subs, type, 'AMS_ATTRIBUTION')) {\n return true;\n } else if(id === 'ads_amazon_dsp' && this.checkSubscriptionActive(subs, type, 'DSP')) {\n return true;\n } else if((id === 'ads_amazon_content') && this.checkSubscriptionActive(subs, type, 'CONTENT')) {\n return true;\n } else if((id === 'ads_instacart') && this.checkSubscriptionActive(subs, type, 'INSTACART')) {\n return true;\n }else if((id === 'ads_criteo') && this.checkSubscriptionActive(subs, type, 'CRITEO')) {\n\t\treturn true;\n\t}else if((id === 'ads_walmart') && this.checkSubscriptionActive(subs, type, 'WALMART')) {\n\t\treturn true;\n\t}else if(id === 'ads_data_platform'|| id === 'amc-platform-web' || id === 'ads_amazon_seller') {\n\t\treturn true;\n\t}else if(id === 'ads_amazon_advertising' || id === 'ads_vendor_sales' || id === 'ads_seller_sales') {\n for(let settings of subs){\n if(settings.type != type && settings.status == \"ACTIVE\"){\n return true;\n }\n }\n return false;\n }\n return false\n \t}\n\n\tpublic checkSubscriptionActive(subs, accType ,subType) {\n\t\tif(subType === accType){\n\t\treturn true;\n\t\t}\n\t\tconst currentTypeSub = subs.filter(subscription => subscription.type === subType);\n\t\tif(currentTypeSub.length === 0) {\n\t\treturn false;\n\t\t}\n\t\tif (currentTypeSub[0].status === 'ACTIVE' || currentTypeSub[0].type === accType) {\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tpublic getApplicationID() {\n\t\tlet urlArray = this.urlContextService.router.url.split('/');\n\t\tlet currentRoute = urlArray[urlArray.length - 1];\n\t\t\n\t\tif(this.contentAppRoutes.indexOf(currentRoute)>-1 ) {\n\t\t\treturn \"ads_amazon_content_content_analytics\";\n\t\t} else if(this.sovAppRoutes.indexOf(currentRoute)>-1) {\n\t\t\treturn \"ads_amazon_content_share_of_voice\";\n\t\t}\n\t}\n}","import { Directive, ElementRef, Input } from '@angular/core';\n\n@Directive({ selector: '[appOffsetTop]'})\nexport class OffsetTopDirective {\n constructor(private _el: ElementRef) { }\n @Input() isActiveItem: boolean;\n get offsetTop(): number { return this._el.nativeElement.offsetTop; }\n}\n\n@Directive({selector: '[appScrollable]'})\nexport class ScrollableDirective {\n constructor(private _el: ElementRef) {}\n set scrollTop(value: number) { this._el.nativeElement.scrollTop = value; }\n}","import { Component, ElementRef, HostBinding, Input, OnInit, QueryList, ViewChild, Output, EventEmitter } from '@angular/core';\nimport { NavMenuItem } from '../nav-menu-item';\nimport {Router,ActivatedRoute } from '@angular/router';\nimport { ApplicationSidebarService } from '../services/application-sidebar.service'\nimport { UrlContextService } from '../services/url-context.service';\nimport { CookieService } from 'ngx-cookie-service';\nimport { MatMenuTrigger } from '@angular/material/menu';\nimport { TranslationService } from '../services/translation.service';\n@Component({\n selector: 'lnc-nav-menus',\n templateUrl: './nav-menus.component.html',\n styleUrls: ['./nav-menus.component.scss']\n})\nexport class NavMenusComponent implements OnInit {\n @Output() menuClicked = new EventEmitter<object>();\n @Input() item: NavMenuItem;\n @Input() applicationId:string;\n @Input() parentMenuId:string;\n @Input() parentPanelId:string;\n @Input() isActiveItem:boolean\n expanded: boolean;\n\n queryParams: any;\n @ViewChild(MatMenuTrigger)\n contextMenu: MatMenuTrigger;\n\n contextMenuPosition = { x: '0px', y: '0px' };\n\n translation: any;\n recCount: any;\n\n constructor(\n public navigation: ApplicationSidebarService, \n private router: Router,\n private activatedRoute:ActivatedRoute,\n private urlContextService: UrlContextService,\n private cookie: CookieService,\n private translate:TranslationService\n ) {\n this.activatedRoute.queryParams.subscribe(params => {\n this.queryParams = Object.assign({}, params);\n });\n\n }\n\n ngOnInit() {\n // @HostBinding('attr.aria-expanded') ariaExpanded = this.expanded;\n }\n\n public hasIcon(item:NavMenuItem){\n return (item.icon != undefined && item.icon != '');\n }\n\n public hasWalmartRecommendation(item:NavMenuItem){\n if(item.id == \"walmart_recommendations\"){\n this.recCount = this.navigation.appDetails.recCount;\n if(this.recCount && this.recCount>0){\n return true;\n } else {\n return false;\n } \n } else {\n return false;\n }\n }\n \n public selectedApplication(name){\n return this.translate.selectedApplication(this.navigation.appDetails, name);\n }\n \n public getSpecifiedValue(key:string){\n return this.navigation.fetchKeyValue(key);\n }\n\n public onSelectMenu(event:any,listMenu:NavMenuItem, appId?:any) {\n var promise = new Promise<void>(async (resolve, reject) => {\n console.log('appId' , this.parentPanelId , this.applicationId);\n // on shift+click open url in new tab along with context params\n if((this.parentPanelId === 'iac_insights' && this.applicationId === 'ads_data_platform') || this.parentMenuId === 'app_global_settings' || appId === 'app_global_settings'){\n if(listMenu.id === 'global_account_mgmt' || listMenu.id === 'iac_insights_user_mgmt'){\n const url = listMenu.route;\n if (this.applicationId == \"ads_amazon_content\") {\n this.applicationId = this.navigation.getApplicationID();\n }\n if(this.urlContextService.validateKeyStroke(event)) {\n this.openInNewTab(url,false,{ appId : this.applicationId})\n resolve();\n }else{\n this.showLoader();\n this.navigation.getHostOriginAndNavigate(url , { appId : this.applicationId});\n resolve();\n }\n }else{\n if (listMenu.route != '') {\n if(this.urlContextService.validateKeyStroke(event)) {\n this.openInNewTab(listMenu.route,true)\n resolve();\n }else{\n console.log(\"Query Params = \" ,this.queryParams);\n this.router.navigate([listMenu.route] , { queryParams : this.queryParams })\n this.menuClicked.emit({activePanel : this.parentPanelId});\n resolve();\n }\n }else{\n alert('no route to navigate');\n resolve();\n }\n }\n }else if(listMenu.defaulturl){\n const url = listMenu.defaulturl;\n if(listMenu.id == \"ads_vendor_sales\" || listMenu.id == 'ads_seller_sales'){\n this.showLoader();\n this.navigation.getHostOriginAndNavigate(url, { appId : listMenu.id});\n resolve();\n }\n if(this.urlContextService.validateKeyStroke(event)) {\n this.openInNewTab(url,false);\n resolve();\n }else{\n this.showLoader();\n this.navigation.getHostOriginAndNavigate(url);\n resolve();\n }\n }else{\n if(listMenu.external_link && listMenu.external_link != ''){\n window.open(`${listMenu.external_link}`, '_blank');\n resolve();\n }\n if((this.parentMenuId.indexOf(this.applicationId) >= 0 && !appId) || (appId && appId.indexOf(this.applicationId) >= 0) ){\n if (listMenu.route != '') {\n if(this.urlContextService.validateKeyStroke(event)) {\n this.openInNewTab(listMenu.route,true)\n resolve();\n }else{\n console.log(\"Length = \" ,this.queryParams);\n if (this.isActiveItem == false) {\n if(Object.keys(this.queryParams).length != 0){\n \n await this.router.navigate([listMenu.route], { queryParams : this.queryParams })\n this.menuClicked.emit({activePanel : this.parentPanelId});\n resolve();\n }\n else{\n await this.router.navigate([listMenu.route])\n this.menuClicked.emit({activePanel : this.parentPanelId});\n resolve();\n }\n } else {\n reject();\n }\n }\n } \n else{\n alert('no route to navigate');\n resolve();\n }\n }else{\n const url = listMenu.link;\n if(this.urlContextService.validateKeyStroke(event)) {\n this.openInNewTab(url,false)\n resolve();\n }\n else{\n this.showLoader();\n this.navigation.getHostOriginAndNavigate(url);\n resolve();\n }\n }\n }\n });\n }\n\n public onContextMenu(event: MouseEvent, item: NavMenuItem) {\n event.preventDefault();\n this.contextMenuPosition.x = event.clientX + 'px';\n this.contextMenuPosition.y = event.clientY + 'px';\n this.contextMenu.menuData = { 'item': item };\n this.contextMenu.menu.focusFirstItem('mouse');\n this.contextMenu.openMenu();\n }\n\n onContextMenuAction(item: NavMenuItem) {\n\n if(this.parentMenuId === 'app_global_settings'){\n if(item.id === 'global_account_mgmt'){\n const url = item.route;\n this.openInNewTab(url,false,{ appId : this.applicationId})\n }\n else if(item.route != '') {\n this.openInNewTab(item.route,true)\n }\n }else{\n if(item.external_link && item.external_link != ''){\n window.open(`${item.external_link}`, '_blank');\n return;\n }\n else if(item.id === 'iac_insights_user_mgmt'){\n const url = item.route.split('?')[0];\n this.openInNewTab(url,false,{ appId : this.applicationId , usermgmt : true})\n }\n else if(this.parentMenuId.indexOf(this.applicationId) >= 0 ){\n if (item.route != '') {\n this.openInNewTab(item.route,true)\n }\n } \n else{\n const url = item.link;\n this.openInNewTab(url,false)\n }\n }\n }\n\n public openInNewTab(link,isRouterLink,applicationId = undefined){\n let dateTitle = this.fetchDateRange();\n let dateRangeVal = this.urlContextService.setDateRangeUrlVal(dateTitle);\n \n if (this.navigation.appDetails.currentAccount == undefined){\n let queryParams = {\n oid : this.navigation.appDetails.currentOrganization.organizationId,\n dr : dateRangeVal,\n }\n if(applicationId){\n queryParams = {...queryParams, ...applicationId}\n }\n this.urlContextService.setUrlAndOpenTab(link,queryParams,isRouterLink);\n return\n } else {\n let queryParams = {\n aid : this.navigation.appDetails.currentAccount.amsAccountId,\n bid : this.navigation.appDetails.currentAccount.businessGroupId,\n oid : this.navigation.appDetails.currentAccount.organizationId,\n dr : dateRangeVal,\n }\n if(applicationId){\n queryParams = {...queryParams, ...applicationId}\n }\n this.urlContextService.setUrlAndOpenTab(link,queryParams,isRouterLink);\n return;\n }\n }\n\n public fetchDateRange(){\n if(this.queryParams.hasOwnProperty('tid') && this.queryParams.hasOwnProperty('dr')){\n return this.queryParams['dr'];\n }else{\n const loggedInUser = JSON.parse(this.cookie.get('loggedInUser'));\n console.log('Logged = ',loggedInUser);\n return loggedInUser.dateRange;\n }\n }\n\n public showLoader(){\n let loader_div=document.getElementById('loader_sov');\n if(loader_div){\n loader_div.style.display = \"block\";\n }\n \n setTimeout(function() {\n if(loader_div){\n loader_div.style.display = \"none\";\n }\n }, 5000);\n }\n\n}\n","<a appOffsetTop class=\"sidemenu-option {{item.style_classes}}\" mat-list-item (click)=\"onSelectMenu($event,item)\"\n *ngIf=\"item.type === 'leaf'\" [ngClass]=\"{'active': isActiveItem}\" (contextmenu)=\"onContextMenu($event, item)\">\n <!-- <span class=\"{{item.id}}_icon\" *ngIf=\"item.id == 'global_account_mgmt'\"></span> -->\n <h3 matLine class=\"sidemenu-text font-color-black navMenus applicationMenu\" [ngClass]=\"{'margin-left-10': item.level == 'two', \n 'margin-left-36': item.level != 'two'}\">\n {{selectedApplication(item)}}\n <span id=\"activeCount\" *ngIf=\"item.countKey && getSpecifiedValue(item.countKey)\" class=\"ng-binding ng-scope\">\n {{ getSpecifiedValue(item.countKey) }}\n </span>\n <!-- <span id=\"activeRecCount\" *ngIf=\"item.name == 'Recommendations' && item.recCount != '' && item.recCount != '0' && item.recCount != null\" class=\"activeRecCount\">{{item.recCount}}</span> -->\n <span *ngIf=\"item.badge\" class=\"badge-text sov-beta-position\" [innerHTML]=\"item.badge\"></span>\n <span id=\"activeRecCount\" class=\"activeRecCount\" *ngIf=\"hasWalmartRecommendation(item)\">{{recCount}}</span> \n </h3>\n</a>\n<div style=\"visibility: hidden; position: fixed\" [style.left]=\"contextMenuPosition.x\"\n [style.top]=\"contextMenuPosition.y\" [matMenuTriggerFor]=\"contextMenu\">\n</div>\n<mat-menu #contextMenu=\"matMenu\">\n <ng-template matMenuContent let-item=\"item\">\n <button mat-menu-item class=\"newTabMenu\"></button>\n <button mat-menu-item (click)=\"onContextMenuAction(item)\" class=\"newTabMenu\" id=\"newTabActionBtn\">Open in new\n tab</button>\n <button mat-menu-item class=\"newTabMenu\"></button>\n </ng-template>\n</mat-menu>\n<mat-divider *ngIf=\"item.type === 'separator'\" class=\"separator\"></mat-divider>","import { ChangeDetectorRef } from '@angular/core';\nimport { Router, RouterEvent, NavigationStart, Route } from '@angular/router';\nimport { Component, OnInit, OnDestroy, Input, ChangeDetectionStrategy, ViewChildren, QueryList, ViewChild } from '@angular/core';\nimport { ApplicationSidebarService } from './services/application-sidebar.service'\nimport { MatSidenav } from '@angular/material/sidenav';\nimport { appDetails } from './app-details'\nimport { OffsetTopDirective, ScrollableDirective } from './nav-menu.directive';\nimport { RestApiService } from './services/rest-api.services'\nimport { NavMenusComponent } from './nav-menus/nav-menus.component'\nimport { CookieService } from 'ngx-cookie-service';\nimport { TranslationService } from './services/translation.service';\nimport { GLOBAL_LIST } from './navmenu1';\n\n@Component({\n selector: 'lnc-navigation-sidebar',\n templateUrl:'./application-sidebar.template.html',\n styleUrls:['./application-sidebar.scss','application-sidebar.theme.scss'],\n // changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ApplicationSidebarComponent implements OnInit, OnDestroy {\n\n @Input() applicationDetails :appDetails;\n\n @Input() sidenav: MatSidenav;\n\n @ViewChildren(OffsetTopDirective) listItems: QueryList<OffsetTopDirective>;\n @ViewChild(ScrollableDirective) list: ScrollableDirective;\n @ViewChild('navMenusComponent') navMenusComponent:NavMenusComponent;\n\n accountName: any;\n activePanel: any;\n navCollapsed:boolean = false;\n oldListItems: QueryList<OffsetTopDirective>;\n isAdminRole: boolean = false;\n adminRoles = ['SUPER_ADMIN','SUPER_ADMIN_READ_ONLY'];\n currentApp: any;\n sideNavStatusSubscription: any;\n myObserver: any;\n expandGlobalSettings: any = false;\n inContextInsightsWLApp: boolean;\n\n // isGlobalSettingsMenuActive:boolean = false\n\n constructor(\n public navigation: ApplicationSidebarService,\n private router: Router,\n private RestApiService: RestApiService,\n private cookie: CookieService,\n private cdref: ChangeDetectorRef,\n private translation:TranslationService\n ) {\n this.myObserver = this.router.events.subscribe((event) => {\n if (event instanceof NavigationStart) {\n this.expandGlobalSettings = this.router.getCurrentNavigation().extras.state && this.router.getCurrentNavigation().extras.state.expandPanel; \n }\n });\n }\n\n panelOpenState = false;\n mainPanelOpenState = false;\n public prevActiveHeadMenu;\n public toDisplayApplications = [];\n public toDisplayGlobalSettingsMenu: any[];\n public errorMsg:string;\n\n\n public ngOnInit(): void {\n if(this.applicationDetails['userInfo']){\n let userRole = this.applicationDetails['userInfo'].role;\n this.isAdminRole = this.adminRoles.indexOf(userRole) > -1 ? true : false;\n }\n this.calculateLeftnavStatus();\n // const configs = this.router.config;\n // for(let config of configs){\n // if(config.children){\n // for(let child of config.children){\n // child.canActivate = [CanLoadGuard]\n // }\n // }\n // }\n // this.router.resetConfig(configs);\n this.checkApplicationDetails(this.applicationDetails);\n }\n\n calculateLeftnavStatus(){\n if(this.sidenav && this.sidenav.openedChange){\n let status = sessionStorage.getItem('leftNavOpenStatus');\n this.navCollapsed = status && status == 'false' ? false : true;\n this.sidenav.opened = status && status == 'false' ? false : true;\n this.sideNavStatusSubscription = this.sidenav.openedChange.subscribe((status)=>{\n sessionStorage.setItem('leftNavOpenStatus',JSON.stringify(status));\n this.navCollapsed = status;\n this.sidenav.opened = status;\n });\n }\n }\n\n public checkApplicationDetails(applicationDetails: appDetails) {\n this.errorMsg = '';\n if(applicationDetails.applicationId=='ads_amazon_dsp'){\n this.getStructureAPISupportData(applicationDetails.currentAccount);\n }else{\n this.createAppDetails(applicationDetails)\n }\n }\n\n public createAppDetails(applicationDetails: appDetails){\n this.createNavigationSideBar(this.applicationDetails);\n // if(this.applicationDetails.currentAccount){\n // this.getActiveRecoCount(this.applicationDetails.currentAccount);\n // }\n }\n\n public createNavigationSideBar(applicationDetails: appDetails) {\n this.RestApiService.getjsonMenulists(applicationDetails).subscribe((menulists: any) => {\n // let menulists = GLOBAL_LIST\n this.toDisplayApplications = this.navigation.getMenuList(applicationDetails, menulists);\n this.toDisplayGlobalSettingsMenu = this.navigation.getGlobalSettingsMenu(applicationDetails, menulists);\n this.expandCurrentMenuOnly(applicationDetails, false);\n this.expandChildMenuOnly(this.toDisplayGlobalSettingsMenu);\n this.checkForRedirection(this.toDisplayApplications,this.toDisplayGlobalSettingsMenu,applicationDetails);\n console.log(this.toDisplayApplications , this.toDisplayGlobalSettingsMenu);\n this.scrollToActiveMenu();\n this.setMenuList(applicationDetails.applicationId,this.toDisplayApplications);\n this.inContextInsightsWLApp = this.hideMenuForWL();\n })\n }\n\n private setMenuList(appId,menuList){\n var appDetails:any = new Object();\n appDetails.appicationId = appId;\n appDetails.menuList = menuList.find((menu)=>{ return menu.id == appId})\n localStorage.setItem('appDetails',JSON.stringify(appDetails));\n }\n\n public menuClicked(obj: any) {\n this.expandCurrentMenuOnly(this.applicationDetails, true);\n this.expandChildMenuOnly(this.toDisplayGlobalSettingsMenu);\n if(obj) {\n this.activePanel = obj.activePanel;\n }\n }\n \n public expandChildMenuOnly(toDisplayGlobalSettingsMenu) {\n setTimeout(()=>{\n // this.isGlobalSettingsMenuActive = false;\n let urlArray = this.router.url.split('/');\n let routeUrl = urlArray[urlArray.length - 1];\n let currentRoute = routeUrl.split('?')[0];\n if(toDisplayGlobalSettingsMenu && toDisplayGlobalSettingsMenu.length) {\n toDisplayGlobalSettingsMenu[0].panelOpenState = false;\n if(toDisplayGlobalSettingsMenu[0].children && toDisplayGlobalSettingsMenu[0].children.length){\n for(let menu of toDisplayGlobalSettingsMenu[0].children){\n if(menu.route==currentRoute){\n toDisplayGlobalSettingsMenu[0].panelOpenState = true;\n // this.isGlobalSettingsMenuActive = true;\n break;\n }\n }\n }\n }\n }, 100)\n \n }\n\n public expandCurrentMenuOnly(applicationDetails, onMenuClicked) {\n for(let headMenu of this.toDisplayApplications) {\n headMenu.panelOpenState = false;\n }\n \n for(let headMenu of this.toDisplayApplications) {\n if(headMenu.id == applicationDetails.applicationId) {\n headMenu.panelOpenState = true;\n this.currentApp = headMenu;\n } else if(headMenu.id.indexOf(applicationDetails.applicationId) > -1) {\n headMenu.panelOpenState = false;\n\n let urlArray = this.router.url.split('/');\n let routeUrl = urlArray[urlArray.length - 1];\n if((headMenu.id== \"ads_amazon_seller_seller_analytics\" || headMenu.id== \"ads_amazon_seller_vendor_analytics\") && urlArray.length >2){\n urlArray= urlArray.slice(urlArray.length-2);\n routeUrl= urlArray.join('/');\n }\n let currentRoute = routeUrl.split('?')[0];\n if(headMenu.id == \"ads_amazon_content_content_analytics\" && this.navigation.contentAppRoutes.indexOf(currentRoute)>-1 ) {\n headMenu.panelOpenState = true;\n this.currentApp = headMenu;\n } else if(headMenu.id == \"ads_amazon_content_share_of_voice\" && this.navigation.sovAppRoutes.indexOf(currentRoute)>-1) {\n if((currentRoute != 'product-meta-data' && currentRoute != 'brand-terms-settings' && currentRoute != 'labels-settings' && currentRoute != 'sub-brands' && currentRoute != 'sub-brands-mapping' && currentRoute != 'sov-settings' && currentRoute != 'content-settings') || !this.currentApp || this.currentApp.name == 'Share Of Voice') {\n headMenu.panelOpenState = true;\n this.currentApp = headMenu;\n if(onMenuClicked || this.currentApp.name == 'Share Of Voice') {\n break;\n }\n }\n\n }\n else if(headMenu.id == \"ads_amazon_seller_seller_analytics\" && this.navigation.sellerAnalyticsAppRoutes.indexOf(currentRoute)>-1){\n headMenu.panelOpenState = true;\n this.currentApp = headMenu;\n }\n else if(headMenu.id == \"ads_amazon_seller_vendor_analytics\" && this.navigation.vendorAnalyticsAppRoutes.indexOf(currentRoute)>-1) {\n if((currentRoute != 'product-meta-data' && currentRoute != 'brand-terms-settings' && currentRoute != 'labels-settings' && currentRoute != 'sub-brands' && currentRoute != 'sub-brands-mapping' && currentRoute != 'sov-settings' && currentRoute != 'content-settings') || !this.currentApp || this.currentApp.name == 'Vendor Analytics') {\n headMenu.panelOpenState = true;\n this.currentApp = headMenu;\n if(onMenuClicked || this.currentApp.name == 'Vendor Analytics') {\n break;\n }\n }\n }\n } else {\n headMenu.panelOpenState = false;\n }\n // if(headMenu.children){\n // headMenu.children.forEach(menu => {\n // if (menu.children && menu.type == \"expandable\") {\n // headMenu.children.forEach(submenu => {\n // if(this.isCheckActiveRoute(submenu.route,headMenu)){\n // menu.panelOpenState = true;\n // headMenu.panelOpenState = true;\n\n // }\n // })\n // }\n // });\n // }\n }\n this.cdref.detectChanges();\n }\n\n public getTooltipInfo(headmenu){\n if(this.sidenav && this.sidenav.opened){\n return null;\n }else{\n return this.selectedApplication(headmenu);\n }\n }\n\n public selectedApplication(headmenu){\n return this.translation.selectedApplication(this.applicationDetails, headmenu);\n }\n get sideIdInfo(){\n if(this.applicationDetails && this.applicationDetails.sidebarInfo && this.applicationDetails.sidebarInfo.siteId){\n return Number(this.applicationDetails.sidebarInfo.siteId)\n }else if(this.applicationDetails && this.applicationDetails && this.applicationDetails['siteId']){\n return Number(this.applicationDetails['siteId'])\n }\n return 1;\n }\n\n\n public checkForRedirection(appMenus, gsMenus, applicationDetails) {\n const currentRoute = this.router.url.split('?')[0];\n const currentAppMenus = appMenus.find(app => app.id.indexOf(applicationDetails.applicationId) >= 0);\n\n if (currentAppMenus) {\n const allMenus = [currentAppMenus, ...gsMenus];\n const isMenuAvailable = findLink(allMenus);\n if (!isMenuAvailable) {\n this.navigation.getHostOriginAndNavigate(currentAppMenus.defaulturl);\n }\n } else {\n this.navigation.getHostOriginAndNavigate(this.toDisplayApplications[0].defaulturl);\n }\n\n\n function isMenuRouteMatch(link) {\n return currentRoute === `/${link}`;\n } \n\n function findLink(menuArray) {\n return menuArray.some(function(menu) {\n // If the menu has children, search recursively\n if (menu.children) {\n return findLink(menu.children);\n }\n\n // Check if the current menu item has a matching link\n if (isMenuRouteMatch(menu.route)) {\n return true;\n }\n\n // If there are child routes, search within them\n if (menu.child_routes) {\n return menu.child_routes.some(function(childRoute) {\n return isMenuRouteMatch(childRoute);\n });\n }\n\n return false;\n });\n }\n }\n\n\n\n\n\n // public checkForRedirection(applicationDetails: appDetails, menulists) {\n // try{\n // let isMenuVisibleByorgSetting = true;\n // let isMenuVisibleByRole = true;\n // let isMenuNotVisibleByRole = true;\n // let isMenurOrgWithUserRole = true;\n // let isMenuNotVisibleByappspacificconfigcheck =true;\n // let isredirected = false;\n // let applicationIdList = [\"ads_amazon_seller_seller_analytics\" , \"ads_amazon_seller_vendor_analytics\"]\n\n // let menulist = applicationIdList.indexOf(applicationDetails.applicationId) > -1 && applicationDetails.listMenus && applicationDetails.listMenus.length > 0 ? applicationDetails.listMenus : menulists;\n\n // const role = ['SUPER_ADMIN', 'SUPER_ADMIN_READ_ONLY'];\n // if (role.indexOf(applicationDetails.userInfo.role) == -1) {\n \n // let applicationMenues = menulist && menulist.length > 0 && menulist.find((menus)=>{\n // return menus.id == applicationDetails.applicationId\n // })\n\n // if (applicationMenues && applicationMenues.organization_setting_not_in) {\n // isMenuVisibleByorgSetting = this.navigation.checkForNotOrgSettings(applicationMenues.organization_setting_not_in);\n // }\n\n // if (applicationMenues && applicationMenues.visibility_roles) {\n // isMenuVisibleByRole = this.navigation.checkForRoles(applicationMenues.visibility_roles);\n // }\n // if (applicationMenues && applicationMenues.visibility_roles_not_in) {\n // isMenuNotVisibleByRole = this.navigation.checkForvisibilityRolesNotIn(applicationMenues.visibility_roles_not_in);\n // }\n\n // if (applicationMenues && applicationMenues.app_spacific_config_check) {\n // isMenuNotVisibleByappspacificconfigcheck = this.navigation.appSpecificConfig(applicationMenues.app_spacific_config_check);\n // }\n\n // if (applicationMenues && applicationMenues.org_user_ctrl) {\n // isMenurOrgWithUserRole = this.navigation.checkForOrgWithUserRole(applicationMenues.org_user_ctrl,applicationMenues, applicationDetails.currentOrganization.organizationId);\n // }\n // if (applicationMenues && applicationMenues.id == \"amc-platform-web\" && applicationMenues.children) {\n // let isChildMenuVisibleByRole = true;\n // let isChildMenuNotVisibleByRole = true;\n // let isChildMenurOrgWithUserRole = true;\n\n // const childmenu = this.validateRouteByState( this.router , applicationMenues.children);\n\n // if (childmenu && childmenu.visibility_roles_not_in) {\n // isChildMenuNotVisibleByRole = this.navigation.checkForvisibilityRolesNotIn(childmenu.visibility_roles_not_in);\n // }\n\n // if (childmenu && childmenu.visibility_roles) {\n // isChildMenuVisibleByRole = this.navigation.checkForRoles(childmenu.visibility_roles);\n // }\n\n // if (childmenu && childmenu.org_user_ctrl) {\n // isChildMenurOrgWithUserRole = this.navigation.checkForOrgWithUserRole(childmenu.org_user_ctrl,childmenu, applicationDetails.currentOrganization.organizationId);\n // }\n\n // if ((!isChildMenuNotVisibleByRole || !isChildMenuVisibleByRole || !isChildMenurOrgWithUserRole) && childmenu) {\n // isredirected = true;\n // this.router.navigate([\"/\"]);\n // }\n // }\n // if ((!isMenuVisibleByorgSetting || !isMenuVisibleByRole || !isMenuNotVisibleByRole || !isMenurOrgWithUserRole || !isMenuNotVisibleByappspacificconfigcheck) && !isredirected) {\n // if (!this.currentApp) {\n // this.navigation.getHostOriginAndNavigate(this.toDisplayApplications[0].defaulturl); \n // }else{\n // this.navigation.getHostOriginAndNavigate(applicationMenues.defaulturl);\n // }\n // }\n // }\n // }catch(error){\n // throw error;\n // }\n // }\n\n validateRouteByState(state , listMenus){\n try{\n const findRoute = listMenus.find(list => {\n if(list.link == 'amc'+state.url) {\n return list;\n } else if(list.matchRoutes && list.matchRoutes.length > 0){\n if(list.matchRoutes.includes(state.url)){\n return list;\n };\n }\n });\n return findRoute;\n }catch(error){\n throw error;\n }\n}\n \n // public checkForRedirection(applicationDetails: appDetails) {\n // let route = '';\n // if(applicationDetails.currentAccount && !(this.navigation.isHavingAnyActiveSubs(applicationDetails.applicationId,applicationDetails.currentAccount.subscription,applicationDetails.currentAccount.type))){\n // switch(applicationDetails.currentAccount.type){\n // case 'CONTENT': {\n // route = 'content/share-of-voice'\n // break;\n // }\n // case 'DSP': {\n // route = 'dsp/order'\n // break;\n // }\n // case 'AMS_ATTRIBUTION': {\n // route = 'attribution/attribution-campaigns'\n // break;\n // }\n // case 'SELLER_CENTRAL': {\n // route = '#!/ams-content-dashboard/seller-sales-overview';\n // break;\n // }\n // case 'VENDOR_CENTRAL': {\n // route = '#!/ams-content-dashboard/custom-reports-vendor-sales-overview';\n // break;\n // }\n // case 'INSTACART': {\n // route = 'instacart/instacart-overview';\n // break;\n // }\n // case 'CRITEO': {\n // route = 'criteo/criteo-overview';\n // break;\n // }\n // case 'WALMART': {\n // route = 'walmart/';\n // break;\n // }\n // case 'AMAZON_MARKETING_CLOUD': {\n // route = 'dp/data-analytics-getting-started';\n // break;\n // }\n // case 'AMS_VENDOR':\n // case 'AMS_SELLER': {\n // route = '#!/ams-page-overview';\n // break;\n // }\n // }\n // this.navigation.getHostOriginAndNavigate(route);\n // }\n // }\n\n public async getStructureAPISupportData(currentAccount){\n try {\n this.RestApiService.getStructureAPISupportData(currentAccount.organizationId,currentAccount.businessGroupId,currentAccount.amsAccountId).subscribe( \n (response:any) => {\n this.navigation.isStructureApiSupport = response ? response['structureApiSupport'] : undefined;\n this.createAppDetails(this.applicationDetails);\n },\n (error:any) =>{\n this.navigation.isStructureApiSupport = undefined;\n this.createAppDetails(this.applicationDetails);\n });\n } catch (error) {\n throw error;\n }\n\n }\n \n public scrollToActiveMenu(){\n setTimeout(() => {\n if(this.listItems && this.listItems.find((_, i) => _.isActiveItem) != undefined){\n this.list.scrollTop = this.listItems.find((_, i) => _.isActiveItem).offsetTop;\n }\n }, 500);\n }\n\n public isCheckActiveRoute(menu,headmenu,parentMenu = null) {\n // let urlArray = this.router.url.split('/');\n // let routeUrl = urlArray[urlArray.length - 1];\n // let currentRoute = routeUrl.split('?')[0];\n // let route=menu.route;\n // let pageName;\n // if(route){\n // let splitedURL = route.split(\"/\");\n // pageName = splitedURL.length >0 ? splitedURL[splitedURL.length - 1] : route;\n // }\n\n let routeUrl = this.router.url;\n let currentRoute = routeUrl.split('?')[0];\n let route=menu.route;\n let pageName;\n if(route){\n pageName = route;\n }\n\n if ((currentRoute === \"/\"+pageName || currentRoute === \"/\"+pageName+\"/keyword-report\" || currentRoute === \"/\"+pageName+\"/keyword-suggestions/auto\" || currentRoute === \"/\"+pageName+\"/keyword-suggestions/manual\") && headmenu!=undefined) {\n if(this.prevActiveHeadMenu=== undefined){\n headmenu.isActive=true;\n this.prevActiveHeadMenu=headmenu;\n }else{\n this.prevActiveHeadMenu.isActive=false;\n headmenu.isActive=true;\n this.prevActiveHeadMenu=headmenu;\n }\n if(parentMenu != null){\n this.activePanel = parentMenu.id;\n }\n return true;\n }else if(menu && menu.matchRoutes && this.router.url){\n if (menu.matchRoutes.indexOf(this.router.url.split('?')[0]) > -1) {\n headmenu.isActive=true;\n this.prevActiveHeadMenu=headmenu;\n\n if(parentMenu != null){\n this.activePanel = parentMenu.id;\n }\n return true;\n }\n else{\n return false;\n }\n }\n else{\n return false;\n }\n }\n\n public keepMenuExpanded(parentMenuId:string) {\n if(parentMenuId.indexOf(this.applicationDetails.applicationId) >= 0 ){\n return true;\n }\n else{\n return false;\n }\n }\n\n public allMenuCollapse(){\n for(let headMenu of this.toDisplayGlobalSettingsMenu) {\n headMenu.panelOpenState = false;\n }\n }\n\n public modficationData(data: any): any {\n let configs = this.navigation.getTypeStatusConfigs();\n\t\tlet order = Object.keys(configs);\n\t\tif(order.indexOf(data.type) > -1){\n\t\t\tdata.active = configs[data.type] ? configs[data.type] : false;\n\t\t}\n\t\treturn data;\n\t}\n\n ngOnChanges() {\n // this.showMenuIcon();\n this.checkApplicationDetails(this.applicationDetails);\n\n }\n\n public goToApplication(item) {\n if(item.defaulturl){\n this.goToAppDefaultPage(item, item.id);\n }else{\n if(item.children && item.children.length > 0) {\n if(item.children[0].children && item.children[0].children.length > 0) {\n this.goToAppDefaultPage(item.children[0].children[0], item.id);\n } else {\n this.goToAppDefaultPage(item.children[0], item.id);\n }\n } else {\n this.goToAppDefaultPage(item, item.id);\n }\n }\n }\n\n public ngOnDestroy(): void {\n if(this.sideNavStatusSubscription){\n this.sideNavStatusSubscription.unsubscribe();\n }\n }\n\n public goToAppDefaultPage(item, appId) {\n this.navMenusComponent.onSelectMenu(event, item, appId);\n }\n\n public hideMenuForWL(){\n let isOrgSetting;\n if(this.applicationDetails['userInfo'].role === 'IAC_BRAND_READ_ONLY' || (this.applicationDetails.orgSettings && this.applicationDetails.orgSettings.length == 0)){\n return true;\n }else{\n if (this.applicationDetails.orgSettings && this.applicationDetails.orgSettings.length > 0) {\n isOrgSetting = this.applicationDetails.orgSettings.filter(function(orgSetting){\n if( orgSetting.setting === 'IAC_INSIGHTS' && (!orgSetting.value || orgSetting.value && orgSetting.value == 'ACTIVE')) {\n return true;\n };\n })\n }\n return (isOrgSetting != null && ( this.applicationDetails.sidebarInfo.siteId > 11 || this.applicationDetails['userInfo'].role === 'IAC_BRAND_READ_ONLY'));\n }\n }\n\n // public isApplicationActive(parentMenuId) {\n // if(parentMenuId.indexOf(this.applicationDetails.applicationId) >= 0 && this.isGlobalSettingsMenuActive){\n // return true;\n // }\n // else{\n // return false;\n // }\n // }\n\n \n}\n","<div id=\"loader_sov\">\n <div id=\"loading_div\" *ngIf=\"applicationDetails?.sidebarInfo\">\n <div>\n <div id=\"loader\" *ngIf=\"sideIdInfo !== 1\"\n class=\"site_{{sideIdInfo}}\">\n <img src=\"{{applicationDetails?.sidebarInfo?.logo}}\">\n </div>\n <div id=\"loader_img\" *ngIf=\"sideIdInfo == 1\">\n <img src=\"/assets/images/happy_eyes_closed_small.svg\">\n </div>\n <mat-progress-bar class=\"loader_progress-bar-position\" mode=\"indeterminate\"></mat-progress-bar>\n </div>\n </div>\n</div>\n\n<div fxLayout=\"column\" fxFlexFill *ngIf=\"errorMsg.length == 0 else errorBlock\" translate=\"no\" id=\"angular-16-version\">\n <mat-toolbar class=\"portal-side-menu-top-toolbar\">\n <mat-toolbar-row fxLayout=\"row\">\n <div class=\"portal-forget-heading-card\">\n <div class=\"sidemenu-logo-holder\">\n <span *ngIf=\"sideIdInfo !== 1\">\n <img [src]=\"applicationDetails?.sidebarInfo?.favicon\" style=\"width: 40px !important;display: flex !important;\" *ngIf=\"!navCollapsed\" [alt]=\"applicationDetails?.sidebarInfo?.firstName\" class=\"favicon-dimension\" />\n <img [src]=\"applicationDetails?.sidebarInfo?.logo\" style=\"display: flex !important;\" *ngIf=\"navCollapsed\" class=\"logo-dimension\" />\n </span>\n <span *ngIf=\"sideIdInfo == 1\">\n <img src=\"assets/logos/intentwiselogo.svg\" style=\"width: 40px !important;display: flex !important;\" *ngIf=\"!navCollapsed\" [alt]=\"applicationDetails?.sidebarInfo?.firstName\" class=\"favicon-dimension intentwise-favicon\">\n <img src=\"assets/logos/Intentwise.svg\" style=\"display: flex !important;\" *ngIf=\"navCollapsed\" [alt]=\"applicationDetails?.sidebarInfo?.firstName\" class=\"logo-dimension intentwise-logo\">\n </span>\n </div>\n </div>\n </mat-toolbar-row>\n </mat-toolbar>\n <!-- <div class=\"sidebar-collapse-icon\" *ngIf=\"isAdminRole\">\n <button mat-menu-item class=\"sidemenu-icon-top\" (click)=\"allMenuCollapse()\">\n <mat-icon *ngIf=\"sidenav && sidenav.opened\">keyboard_arrow_up</mat-icon>\n </button>\n </div> -->\n <div *ngIf=\"sidenav && sidenav.opened && !inContextInsightsWLApp\" class=\"app-menu-container\">\n <button class=\"app-menu-button\" *ngIf=\"toDisplayApplications && toDisplayApplications.length == 1\">\n <span class=\"app-name\">\n <mat-icon *ngIf=\"currentApp?.name\" class=\"sideNavIcon {{currentApp?.name.split(' ').join('')}}\"></mat-icon>\n <label style=\"margin-left: -4px;\" [innerHTML]=\"selectedApplication(currentApp)\"></label>\n <span *ngIf=\"currentApp?.badge\" class=\"badge-text sov-beta-position\">{{currentApp.badge}}</span>\n </span>\n </button>\n <button class=\"app-menu-button\" [mat-menu-trigger-for]=\"appMenu\" *ngIf=\"toDisplayApplications && toDisplayApplications.length > 1\">\n <span class=\"app-name\">\n <mat-icon *ngIf=\"currentApp?.name\" class=\"sideNavIcon {{currentApp?.name.split(' ').join('')}}\"></mat-icon>\n <label style=\"margin-left: -4px;\" [innerHTML]=\"selectedApplication(currentApp)\"></label>\n <span *ngIf=\"currentApp?.badge\" class=\"badge-text sov-beta-position\">{{currentApp.badge}}</span>\n </span>\n <span class=\"dropdown-icon\"></span>\n </button>\n <mat-menu #appMenu=\"matMenu\" class=\"app-menu\" [backdropClass]=\"'all-module-menus'\">\n <ng-container *ngFor=\"let headmenu of toDisplayApplications\">\n <button class=\"menu-option\" mat-menu-item (click)=\"goToApplication(headmenu)\" [ngClass]=\"{'active': headmenu.panelOpenState}\" class=\"{{headmenu.id}}_icon\" *ngIf=\"headmenu.name != 'Account Management'\" translate=\"no\">\n <mat-icon class=\"sideNavIcon children-icon\" [ngClass]=\"headmenu.name.split(' ').join('')\"></mat-icon>\n <label [innerHTML]=\"selectedApplication(headmenu)\"></label>\n <span *ngIf=\"headmenu.badge\" class=\"badge-text sov-beta-position\" [innerHTML]=\"headmenu.badge\"></span>\n </button>\n </ng-container>\n </mat-menu>\n </div>\n <div class=\"portal-sidnav-menu\" fxFlex=\"nogrow noshrink\" appScrollable [ngClass]=\"{'whiteLabelSidenav' : inContextInsightsWLApp}\">\n <mat-expansion-panel [expanded]=\"headmenu.panelOpenState == true\" hideToggle=\"true\"\n *ngFor=\"let headmenu of toDisplayApplications\" [ngClass]=\"{'active': headmenu.isActive }\"\n (opened)=\"headmenu.panelOpenState = true\" (closed)=\"headmenu.panelOpenState = false\">\n <mat-expansion-panel-header matTooltip=\"{{getTooltipInfo(headmenu)}}\" matTooltipClass=\"left-nav-tooltip\"\n *ngIf=\"headmenu.type == 'expandable' else singleMenus\" class=\"main-expansion-panel-header\"\n (click)=\"goToApplication(headmenu)\">\n <mat-panel-title>\n <span class=\"{{headmenu.id}}_icon\"></span>\n <h3 class=\"sidemenu-heading applicationMenu\">\n <label [innerHTML]=\"selectedApplication(headmenu)\"></label>\n <span *ngIf=\"headmenu.badge\" class=\"badge-text sov-beta-position\" [innerHTML]=\"headmenu.badge\"></span>\n </h3>\n </mat-panel-title>\n <mat-panel-description>\n <mat-icon class=\"main-chevron-icon\" *ngIf=\"!headmenu.panelOpenState\">arrow_right</mat-icon>\n <mat-icon class=\"main-chevron-icon\" *ngIf=\"headmenu.panelOpenState\">arrow_drop_down</mat-icon>\n </mat-panel-description>\n </mat-expansion-panel-header>\n <mat-list class=\"padding-0px\" *ngFor=\"let menu of headmenu.children\" [attr.id]=\"headmenu.id\" [ngClass]=\"{'group-nav-menu': menu.children }\">\n <mat-expansion-panel *ngIf=\"menu.children else listMenu\" class=\"div-background-color-white\" [expanded]=\"menu.id == activePanel\"\n [ngClass]=\"{'activePanel': menu.id == activePanel , 'whiteLabelActive' : inContextInsightsWLApp}\" hideToggle=\"true\"\n (opened)=\"menu.panelOpenState = true\" (closed)=\"menu.panelOpenState = false\">\n <mat-expansion-panel-header\n [ngClass]=\"{'header-border': menu.panelOpenState === true, 'header-border-none': menu.panelOpenState === false }\">\n <mat-panel-title>\n <span class=\"{{menu.id}}_icon\"></span>\n <img style=\"margin-right: 10px\" *ngIf=\"(menu.icon && menu.icon != '') else displayInitials\"\n class=\"side-menu-icon side-menu-icon-color\" src=\"assets/sidemenu-icons/{{menu.icon}}\" />\n <ng-template #displayInitials>\n <div class=\"sidemenu-symbol\">\n {{menu.symbol}}\n </div>\n </ng-template>\n <h3 class=\"menu-heading applicationSubmenus\"><span class=\"menu-name-expandable\" [innerHTML]=\"selectedApplication(menu)\"></span>\n <span *ngIf=\"menu.badge\" class=\"badge-text sov-beta-position level-two-badge\"\n [innerHTML]=\"menu.badge\"></span>\n </h3>\n </mat-panel-title>\n <mat-panel-description>\n <mat-icon class=\"sub-chevron-icon\" *ngIf=\"!menu.panelOpenState\">keyboard_arrow_right</mat-icon>\n <mat-icon class=\"sub-chevron-icon\" *ngIf=\"menu.panelOpenState\">keyboard_arrow_down</mat-icon>\n </mat-panel-description>\n </mat-expansion-panel-header>\n <!-- <mat-divider></mat-divider> -->\n <mat-nav-list *ngFor=\"let childMenu of menu.children;\" class=\"sub-child-menu\">\n <lnc-nav-menus appOffsetTop [isActiveItem]=\"isCheckActiveRoute(childMenu,headmenu,menu)\" [item]=\"childMenu\"\n [applicationId]=\"applicationDetails.applicationId\" [parentMenuId]=\"headmenu.id\" [parentPanelId]=\"menu.id\"\n (menuClicked)=\"menuClicked($event)\" #navMenusComponent>\n </lnc-nav-menus>\n </mat-nav-list>\n </mat-expansion-panel>\n <ng-template #listMenu>\n <mat-nav-list>\n <lnc-nav-menus appOffsetTop [isActiveItem]=\"isCheckActiveRoute(menu,headmenu)\" [item]=\"menu\"\n [applicationId]=\"applicationDetails.applicationId\" [parentMenuId]=\"headmenu.id\"\n (menuClicked)=\"menuClicked($event)\" #navMenusComponent>\n </lnc-nav-menus>\n </mat-nav-list>\n </ng-template>\n </mat-list>\n <ng-template #singleMenus>\n <mat-list>\n <lnc-nav-menus id=\"{{headmenu.id}}\" appOffsetTop [isActiveItem]=\"isCheckActiveRoute(headmenu,headmenu)\"\n [item]=\"headmenu\" [applicationId]=\"applicationDetails.applicationId\" [parentMenuId]=\"headmenu.id\"\n matTooltip=\"{{getTooltipInfo(headmenu)}}\" matTooltipClass=\"left-nav-tooltip\"\n (menuClicked)=\"menuClicked($event)\" #navMenusComponent>\n </lnc-nav-menus>\n </mat-list>\n </ng-template>\n </mat-expansion-panel>\n </div>\n <div class=\"portal-global-setting-menu sticky_bottom_menu\" *ngIf=\"!inContextInsightsWLApp\">\n <mat-expansion-panel [expanded]=\"settingsHeadMenu.panelOpenState == true || expandGlobalSettings\" hideToggle=\"true\" id=\"{{settingsHeadMenu.id + 'menu'}}\"\n *ngFor=\"let settingsHeadMenu of toDisplayGlobalSettingsMenu\" [ngClass]=\"{'active': settingsHeadMenu.isActive }\"\n (opened)=\"sidenav.open(); settingsHeadMenu.panelOpenState = true\" (closed)=\"settingsHeadMenu.panelOpenState = false; expandGlobalSettings = false\">\n <mat-expansion-panel-header matTooltip=\"{{getTooltipInfo(settingsHeadMenu)}}\" matTooltipClass=\"left-nav-tooltip\"\n *ngIf=\"settingsHeadMenu.type == 'expandable' else singleMenus\" class=\"main-expansion-panel-header\"\n [ngClass]=\"sidenav && sidenav.opened ? '' : 'sticky-bottom-closed'\">\n <mat-panel-title>\n <span class=\"ads_account_mgmt_icon\"></span>\n <h3 class=\"sidemenu-heading applicationMenu\">\n <label [innerHTML]=\"selectedApplication(settingsHeadMenu)\"></label>\n <span *ngIf=\"settingsHeadMenu.badge\" class=\"badge-text sov-beta-position\"\n [innerHTML]=\"settingsHeadMenu.badge\"></span>\n </h3>\n </mat-panel-title>\n <mat-panel-description>\n <mat-icon class=\"main-chevron-icon\" *ngIf=\"!settingsHeadMenu.panelOpenState\">arrow_right</mat-icon>\n <mat-icon class=\"main-chevron-icon\" *ngIf=\"settingsHeadMenu.panelOpenState\">arrow_drop_down</mat-icon>\n </mat-panel-description>\n </mat-expansion-panel-header>\n <mat-list class=\"padding-0px\" *ngFor=\"let menu of settingsHeadMenu.children\" [attr.id]=\"settingsHeadMenu.id\"\n [ngClass]=\"{'group-nav-menu': menu.children }\">\n <mat-nav-list>\n <lnc-nav-menus appOffsetTop [isActiveItem]=\"isCheckActiveRoute(menu,settingsHeadMenu)\" [item]=\"menu\"\n [applicationId]=\"applicationDetails.applicationId\" [parentMenuId]=\"settingsHeadMenu.id\"\n (menuClicked)=\"menuClicked($event)\" #navMenusComponent>\n </lnc-nav-menus>\n </mat-nav-list>\n </mat-list>\n <ng-template #singleMenus>\n <mat-list>\n <lnc-nav-menus [attr.id]=\"settingsHeadMenu.id\" appOffsetTop\n [isActiveItem]=\"isCheckActiveRoute(settingsHeadMenu,settingsHeadMenu)\" [item]=\"settingsHeadMenu\"\n [applicationId]=\"applicationDetails.applicationId\" [parentMenuId]=\"settingsHeadMenu.id\"\n matTooltip=\"{{getTooltipInfo(settingsHeadMenu)}}\" matTooltipClass=\"left-nav-tooltip\"\n (menuClicked)=\"menuClicked($event)\" #navMenusComponent>\n </lnc-nav-menus>\n </mat-list>\n </ng-template>\n </mat-expansion-panel>\n\n </div>\n</div>\n<ng-template #errorBlock>\n <div class=\"errorMsg\">\n <span class=\"material-icons\">error</span>\n <span class=\"errorTxt\">{{errorMsg}}</span>\n </div>\n</ng-template>\n\n<a class=\"hamburger-icon expanded-hamburger-icon\" title=\"Toggle Menu\" (click)=\"sidenav.close();allMenuCollapse(); \">\n <mat-icon class=\"left-chevron-icon\">keyboard_arrow_left</mat-icon>\n</a>\n\n<!-- <img *ngIf=\"showMenuIcon()\" class=\"favicon-dimension\" src={{applicationDetails.sidebarInfo.favicon}} alt=\"Intentwise Favicon\" />\n <a *ngIf=\"showMenuIcon()\" title=\"Toggle Menu\" class=\"hamburger-icon collapsed-hamburger\"\n (click)=\"sidenav.open()\">\n <mat-icon class=\"right-chevron-icon\">keyboard_arrow_right</mat-icon>\n </a> -->","import { NgModule } from '@angular/core';\nimport { ApplicationSidebarComponent } from './application-sidebar.component';\nimport { CdkTableModule } from '@angular/cdk/table';\nimport { CommonModule } from '@angular/common';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { HttpClientModule } from '@angular/common/http';\nimport { UrlContextService } from './services/url-context.service'\n\n//Navigation\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { MatMenuModule } from '@angular/material/menu';\n\n//Layout\nimport { MatListModule } from '@angular/material/list';\nimport { MatGridListModule } from '@angular/material/grid-list';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatStepperModule } from '@angular/material/stepper';\n\n//Buttons & Indicators\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\n\n// Form Controls.\nimport {\tMatCheckboxModule\t}\tfrom '@angular/material/checkbox';\nimport {\tMatInputModule\t}\tfrom '@angular/material/input';\nimport {\tMatRadioModule\t}\tfrom '@angular/material/radio';\nimport {\tMatDatepickerModule\t}\tfrom '@angular/material/datepicker';\nimport {\tMatNativeDateModule\t}\tfrom '@angular/material/core';\nimport {\tMatAutocompleteModule\t}\tfrom '@angular/material/autocomplete';\nimport {\tMatSliderModule\t}\tfrom '@angular/material/slider';\nimport {\tMatSlideToggleModule\t}\tfrom '@angular/material/slide-toggle';\nimport {\tMatSelectModule\t}\tfrom '@angular/material/select';\n\n//Popups & Modals\nimport {\tMatDialogModule\t}\tfrom '@angular/material/dialog';\nimport {\tMatTooltipModule\t}\tfrom '@angular/material/tooltip';\nimport {\tMatSnackBarModule\t}\tfrom '@angular/material/snack-bar';\n\n//Tables\nimport {\tMatTableModule\t}\tfrom\t'@angular/material/table';\nimport {\tMatSortModule\t}\tfrom\t'@angular/material/sort';\nimport {\tMatPaginatorModule\t}\tfrom\t'@angular/material/paginator';\n\n//Services\nimport { NavMenusComponent } from './nav-menus/nav-menus.component';\nimport { OffsetTopDirective, ScrollableDirective } from './nav-menu.directive';\n\nconst matModules = [\n // Navigation.\n MatToolbarModule,\n MatSidenavModule,\n MatMenuModule,\n\n // Layout\n MatListModule,\n MatGridListModule,\n MatExpansionModule,\n MatCardModule,\n MatTabsModule,\n MatStepperModule,\n\n // Buttons & Indicators\n MatButtonModule,\n MatButtonToggleModule,\n MatChipsModule,\n MatIconModule,\n MatProgressSpinnerModule,\n MatProgressBarModule,\n\n // Form Controls.\n MatCheckboxModule,\n MatInputModule,\n MatRadioModule,\n MatDatepickerModule,\n MatNativeDateModule,\n MatAutocompleteModule,\n MatSliderModule,\n MatSlideToggleModule,\n MatSelectModule,\n\n // Popups & Modals\n MatDialogModule,\n MatTooltipModule,\n MatSnackBarModule,\n\n // Table\n CdkTableModule,\n MatTableModule,\n MatSortModule,\n MatPaginatorModule\n];\n\n@NgModule({\n declarations: [ApplicationSidebarComponent, NavMenusComponent,ScrollableDirective, OffsetTopDirective],\n imports: [\n matModules, \n CommonModule,\n BrowserAnimationsModule,\n FlexLayoutModule,\n HttpClientModule\n ],\n exports: [ApplicationSidebarComponent],\n providers:[UrlContextService]\n})\nexport class ApplicationSidebarModule { }\n","/*\n * Public API Surface of application-sidebar\n */\n\nexport * from './lib/services/application-sidebar.service';\nexport * from './lib/application-sidebar.component';\nexport * from './lib/application-sidebar.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i1","i1.RestApiService","i3.TranslationService","i4.UrlContextService","i1.ApplicationSidebarService","i3.UrlContextService","i5.TranslationService","i7","i8","i10","i12.OffsetTopDirective","i3.RestApiService","i6","i9","i11","i15","i16.NavMenusComponent","i17.ScrollableDirective","i17.OffsetTopDirective"],"mappings":"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"}
|
package/package.json
CHANGED