@propmix/profet-common-header 1.0.9 → 1.0.10

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.
@@ -2,7 +2,7 @@ import { Component, inject, ViewEncapsulation, Input, Output, EventEmitter } fro
2
2
  import { CommonHeaderService } from '../common-header.service';
3
3
  import { Router } from '@angular/router';
4
4
  import { MatSnackBar } from '@angular/material/snack-bar';
5
- import { Auth } from 'aws-amplify';
5
+ import { Amplify, Auth } from 'aws-amplify';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "@angular/common";
8
8
  import * as i2 from "@angular/material/toolbar";
@@ -26,6 +26,10 @@ export class HeaderComponent {
26
26
  this._ser.getApps().subscribe({
27
27
  next: (v) => {
28
28
  this.portalUrl = v?.data?.portalUrl;
29
+ let config = Auth.configure();
30
+ let signoutUrl = `${this.portalUrl}/login`;
31
+ config.oauth = { ...config.oauth, ...{ "redirectSignOut": signoutUrl } };
32
+ Amplify.configure(config);
29
33
  if (v?.data?.applications && v.data.applications.length > 0) {
30
34
  // this.fetchCompanyData(v.data.applications);
31
35
  this.appList = [];
@@ -159,4 +163,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
159
163
  }], menuEvent: [{
160
164
  type: Output
161
165
  }] } });
162
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbW1vbi1oZWFkZXIvc3JjL2xpYi9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbW1vbi1oZWFkZXIvc3JjL2xpYi9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFhLGlCQUFpQixFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFlLE1BQU0sZUFBZSxDQUFDO0FBQ2xJLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRS9ELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFMUQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGFBQWEsQ0FBQzs7Ozs7O0FBU25DLE1BQU0sT0FBTyxlQUFlO0lBZTFCO1FBYkEsYUFBUSxHQUFXLEVBQUUsQ0FBQztRQUVaLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBRTlDLFlBQU8sR0FBZSxFQUFFLENBQUM7UUFFekIsd0JBQW1CLEdBQVksS0FBSyxDQUFDO1FBRXJDLGNBQVMsR0FBVyxFQUFFLENBQUM7UUFDZixZQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3pCLGNBQVMsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDaEMsU0FBSSxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBR3pDLE9BQU8sQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDaEQsT0FBTyxDQUFDLEdBQUcsQ0FB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USxDQUFDLElBQUksQ0FBQyxjQUFjLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUM7NEJBQ2xFLE1BQU0sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO3lCQUM5Qjt3QkFDRCwrRUFBK0U7d0JBQy9FLDRCQUE0QjtxQkFDN0I7eUJBQ0k7d0JBQ0gsd0VBQXdFO3dCQUN4RSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxxRUFBcUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQTtxQkFDckg7Z0JBQ0gsQ0FBQztnQkFDRCxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtvQkFDWCx3RUFBd0U7b0JBQ3hFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLHFFQUFxRSxFQUFFLElBQUksRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFBO2dCQUN0SCxDQUFDO2FBQ0YsQ0FBQyxDQUFBO1NBQ0g7SUFDSCxDQUFDOzs2R0F6SlUsZUFBZTtpR0FBZixlQUFlLHlIQ2Y1Qixpa0VBbUNjOzRGRHBCRCxlQUFlO2tCQU4zQixTQUFTOytCQUNFLFlBQVksaUJBR1AsaUJBQWlCLENBQUMsSUFBSTswRUFLNUIsUUFBUTtzQkFBaEIsS0FBSztnQkFDSSxTQUFTO3NCQUFsQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIGluamVjdCwgVmlld0NoaWxkLCBWaWV3RW5jYXBzdWxhdGlvbiwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uSGVhZGVyU2VydmljZSB9IGZyb20gJy4uL2NvbW1vbi1oZWFkZXIuc2VydmljZSc7XG5pbXBvcnQgeyBNYXRTaWRlbmF2IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2lkZW5hdic7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTWF0U25hY2tCYXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zbmFjay1iYXInO1xuaW1wb3J0IHsgVXNlckRldGFpbHMgfSBmcm9tICcuLi91dGlscy9Vc2VyRGV0YWlscyc7XG5pbXBvcnQgeyBBdXRoIH0gZnJvbSAnYXdzLWFtcGxpZnknO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItaGVhZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2hlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2hlYWRlci5jb21wb25lbnQuY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgSGVhZGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0e1xuICBcbiAgdXNlcm5hbWU6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSB0ZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XG4gIEBPdXRwdXQoKSBtZW51RXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgc2lkZW5hdiE6IE1hdFNpZGVuYXY7XG4gIGFwcExpc3Q6IEFycmF5PGFueT4gPSBbXTtcbiAgdXNlckNvbXBhbmllczogYW55O1xuICBzaG93U3dpdGNoQ29tcGFuaWVzOiBib29sZWFuID0gZmFsc2U7XG4gIGNvbXBhbnlQcm9maWxlJCE6IE9ic2VydmFibGU8YW55PjtcbiAgcG9ydGFsVXJsOiBzdHJpbmcgPSAnJztcbiAgcHJpdmF0ZSBfcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIHByaXZhdGUgX3NuYWNrYmFyID0gaW5qZWN0KE1hdFNuYWNrQmFyKTtcbiAgcHJpdmF0ZSBfc2VyID0gaW5qZWN0KENvbW1vbkhlYWRlclNlcnZpY2UpO1xuXG4gIGNvbnN0cnVjdG9yKCl7XG4gICAgY29uc29sZS5sb2coJ2xpYiBkb21haW4nLGRvY3VtZW50LmxvY2F0aW9uLmhvc3QpXG4gICAgY29uc29sZS5sb2coJ3ZlciA9PiAxLjAuNicpXG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmZldGNoQ29tcGFueVByb2ZpbGUoKTtcbiAgICB0aGlzLl9zZXIuZ2V0QXBwcygpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAodikgPT4ge1xuICAgICAgICB0aGlzLnBvcnRhbFVybCA9IHY/LmRhdGE/LnBvcnRhbFVybDtcbiAgICAgICAgaWYodj8uZGF0YT8uYXBwbGljYXRpb25zICYmIHYuZGF0YS5hcHBsaWNhdGlvbnMubGVuZ3RoID4gMCl7XG4gICAgICAgICAgLy8gdGhpcy5mZXRjaENvbXBhbnlEYXRhKHYuZGF0YS5hcHBsaWNhdGlvbnMpO1xuICAgICAgICAgIHRoaXMuYXBwTGlzdCA9IFtdO1xuICAgICAgICAgIHYuZGF0YS5hcHBsaWNhdGlvbnMuZm9yRWFjaCgoZWxlbWVudDphbnkpID0+IHtcbiAgICAgICAgICAgIHRoaXMuYXBwTGlzdC5wdXNoKHtcbiAgICAgICAgICAgICAgbmFtZTogZWxlbWVudC5kaXNwbGF5TmFtZSxcbiAgICAgICAgICAgICAgdmFsdWU6IGVsZW1lbnQsXG4gICAgICAgICAgICAgIGFwcFVybDogZWxlbWVudC5hcHBVcmxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZXJyb3I6IChlKSA9PiB7XG4gICAgICAgIGNvbnNvbGUubG9nKGUpXG4gICAgICB9XG4gICAgfSk7XG4gICAgQXV0aC5jdXJyZW50QXV0aGVudGljYXRlZFVzZXIoKS50aGVuKHVzZXIgPT4ge1xuICAgICAgdGhpcy51c2VybmFtZSA9IHVzZXIuYXR0cmlidXRlcy5naXZlbl9uYW1lO1xuICAgIH0pXG4gICAgICAuY2F0Y2goKCkgPT4gY29uc29sZS5sb2coXCJVc2VyIG5vdCBsb2dnZWQgaW5cIikpO1xuICAgIHRoaXMuZ2V0VXNlckNvbXBhbnkoKTtcbiAgfVxuXG4gIG1lbnVBY3Rpb24oKXtcbiAgICB0aGlzLm1lbnVFdmVudC5lbWl0KCk7XG4gIH1cblxuICBmZXRjaENvbXBhbnlQcm9maWxlKCl7XG4gICAgbGV0IHJlcSA9IHtcbiAgICAgIGNvbXBhbnlOYW1lOiBkb2N1bWVudC5sb2NhdGlvbi5ob3N0LnNwbGl0KCcuJylbMF1cbiAgICB9O1xuICAgIHRoaXMuY29tcGFueVByb2ZpbGUkID0gdGhpcy5fc2VyLmZldGNoQ29tcGFueVByb2ZpbGUocmVxKTtcbiAgfVxuICBmZXRjaENvbXBhbnlEYXRhKGFsbEFwcHM6QXJyYXk8YW55Pikge1xuICAgIHRoaXMuX3Nlci5nZXRDb21wYW55QXBwbGljYXRpb25zKCkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6ICh2KSA9PiB7XG4gICAgICAgIGlmICh2Py5kYXRhLmVuYWJsZWRBcHBsaWNhdGlvbnMpIHtcbiAgICAgICAgICB0aGlzLmFwcExpc3QgPSBbXTtcbiAgICAgICAgICBsZXQgYXBwSW5mbyA9IFtdO1xuICAgICAgICAgIGxldCBmZXRjaGVkQXBwbGljYXRpb25zID0gdi5kYXRhLmVuYWJsZWRBcHBsaWNhdGlvbnMuc3BsaXQoJywnKTtcblxuICAgICAgICAgIGlmIChmZXRjaGVkQXBwbGljYXRpb25zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGZldGNoZWRBcHBsaWNhdGlvbnMuZm9yRWFjaCgoZWxlbWVudDphbnkpID0+IHtcbiAgICAgICAgICAgICAgYXBwSW5mbyA9IGFsbEFwcHMuZmlsdGVyKGVsZSA9PiBlbGUubmFtZSA9PSBlbGVtZW50KTtcbiAgICAgICAgICAgICAgaWYgKGFwcEluZm8gJiYgYXBwSW5mby5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgaWYoYXBwSW5mb1swXS5uYW1lICE9ICdtY2EnKXtcbiAgICAgICAgICAgICAgICAgIHRoaXMuYXBwTGlzdC5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogYXBwSW5mb1swXS5kaXNwbGF5TmFtZSxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IGVsZW1lbnQsXG4gICAgICAgICAgICAgICAgICAgIGFwcFVybDogYXBwSW5mb1swXS5hcHBVcmxcbiAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgZ2V0VXNlckNvbXBhbnkoKXtcbiAgICB0aGlzLl9zZXIuZ2V0VXNlckNvbXBhbmllcygpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAodXNlckNvbXBhbmllc0RhdGE6IGFueSkgPT4ge1xuICAgICAgICBpZiAodXNlckNvbXBhbmllc0RhdGEgJiYgdXNlckNvbXBhbmllc0RhdGEuZGF0YSAmJiB1c2VyQ29tcGFuaWVzRGF0YS5kYXRhLmNvbXBhbmllcykge1xuICAgICAgICAgIHRoaXMudXNlckNvbXBhbmllcyA9IHVzZXJDb21wYW5pZXNEYXRhLmRhdGEuY29tcGFuaWVzO1xuICAgICAgICAgIGlmICh0aGlzLnVzZXJDb21wYW5pZXMubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgdGhpcy5zaG93U3dpdGNoQ29tcGFuaWVzID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBlcnJvcjogKGUpID0+IHtcbiAgICAgICAgY29uc29sZS5sb2coXCJFcnJvciBpbiBmZXRjaGluZyBjb21wYW5pZXMgZm9yIHRoZSB1c2VyXCIpO1xuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBhcHBSZWRpcmVjdChhcHA6YW55KSB7XG4gICAgLy8gaWYgKGFwcC5uYW1lICE9ICdPcmRlciBNYW5hZ2VtZW50Jykge1xuICAgICAgd2luZG93Lm9wZW4oYXBwLmFwcFVybCwgXCJfc2VsZlwiKTtcbiAgICAvLyB9XG4gIH1cbiAgcHJvZmlsZSgpIHtcbiAgICAvLyB0aGlzLmZldGNoVXNlckRhdGEoKTtcbiAgICBpZih0aGlzLl9zZXIucG9ydGFsRnJvbnRlbmRVcmwpe1xuICAgICAgbGV0IHVybCA9IHRoaXMucG9ydGFsVXJsKycvYXBwL3Byb2ZpbGUnO1xuICAgICAgZG9jdW1lbnQubG9jYXRpb24uaHJlZiA9IHVybDtcbiAgICB9XG4gICAgZWxzZXtcbiAgICAgIHRoaXMuX3JvdXRlci5uYXZpZ2F0ZUJ5VXJsKCcvYXBwL3Byb2ZpbGUnKTtcbiAgICB9XG4gIH1cbiAgb25Mb2dvdXRDbGljaygpIHtcbiAgICBBdXRoLnNpZ25PdXQoeyBnbG9iYWw6IHRydWUgfSlcbiAgICAgIC50aGVuKGRhdGEgPT4gY29uc29sZS5sb2coZGF0YSkpXG4gICAgICAuY2F0Y2goZXJyID0+IHtcbiAgICAgICAgY29uc29sZS5sb2coZXJyKVxuICAgICAgICBBdXRoLnNpZ25PdXQoKTtcbiAgICAgIH0pO1xuICB9XG4gIHN3aXRjaENvbXBhbnkoY29tcGFueTogYW55KSB7XG4gICAgLy8gc3dpdGNoIHRoZSB1c2VyIHRvIHRoZSBzZWxlY3RlYyBjb21wYW55XG5cbiAgICAvLyBGaW5kIHRoZSBkb21haW4gaW5mb3JtYXRpb25cbiAgICBsZXQgZG9tYWluSW5mbyA9IHRoaXMuX3Nlci5nZXREb21haW5JbmZvKCk7XG4gICAgaWYoZG9tYWluSW5mbyl7XG4gICAgICBsZXQgcmVxOmFueSA9IHsgY29tcGFueUtleTogY29tcGFueS5jb21wYW55S2V5LGFwcE5hbWU6IGRvbWFpbkluZm8uYXBwQ29kZSB9O1xuICAgICAgdGhpcy5fc2VyLnVwZGF0ZVVzZXJDb21wYW55KHJlcSkuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogKHJlc3BvbnNlOiBhbnkpID0+IHtcbiAgICAgICAgICBpZiAocmVzcG9uc2UgJiYgcmVzcG9uc2UudHlwZSAmJiByZXNwb25zZS50eXBlID09IFwiT0tcIikge1xuICAgICAgICAgICAgaWYocmVzcG9uc2UuZGF0YS5hcHBsaWNhdGlvblVSTCl7XG4gICAgICAgICAgICAgIGxldCB1cmwgPSByZXNwb25zZS5kYXRhLmFwcGxpY2F0aW9uVVJMICsgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lO1xuICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSh1cmwpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gcmVmcmVzaCB0aGUgY3VycmVudCBwYWdlIHRvIHJlbG9hZCB0aGUgY29udGVudHMgYmFzZWQgb24gdGhlIGN1cnJlbnQgY29tcGFueVxuICAgICAgICAgICAgLy8gd2luZG93LmxvY2F0aW9uLnJlbG9hZCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIC8vIGRpc3BsYXkgYSBtZXNzYWdlIHRvIHRoZSB1c2VyIHRoYXQgdGhlIGNvbXBhbnkgY291bGQgbm90IGJlIHN3aXRjaGVkLlxuICAgICAgICAgICAgdGhpcy5fc25hY2tiYXIub3BlbignQ29tcGFueSBjb3VsZCBub3QgYmUgc3dpdGNoZWQuIFBsZWFzZSB0cnkgYWdhaW4gb3IgY29udGFjdCBzdXBwb3J0LicsICdPSycsIHsgZHVyYXRpb246IDUwMDAgfSlcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yOiAoZSkgPT4ge1xuICAgICAgICAgIC8vIGRpc3BsYXkgYSBtZXNzYWdlIHRvIHRoZSB1c2VyIHRoYXQgdGhlIGNvbXBhbnkgY291bGQgbm90IGJlIHN3aXRjaGVkLlxuICAgICAgICAgIHRoaXMuX3NuYWNrYmFyLm9wZW4oJ0NvbXBhbnkgY291bGQgbm90IGJlIHN3aXRjaGVkLiBQbGVhc2UgdHJ5IGFnYWluIG9yIGNvbnRhY3Qgc3VwcG9ydC4nLCAnT0snLCB7IGR1cmF0aW9uOiA1MDAwIH0pXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfVxuICB9XG4gIFxufVxuIiwiPG1hdC10b29sYmFyIGNvbG9yPVwicHJpbWFyeVwiIGNsYXNzPVwiY29tbW9uX2hlYWRlciBzaGFkb3ctc21cIj5cbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cIm1lbnVBY3Rpb24oKVwiIGFyaWEtbGFiZWw9XCJtYWluIG1lbnVcIiB0YWJpbmRleD1cIjBcIiBjbGFzcz1cIm1lbnVIYW1iZXJnZXIgbWUtNFwiPlxuICAgIDxpbWcgc3JjPVwiLi4vYXNzZXRzL2ltYWdlcy9oYW1idXJnZXJfbWVudS5zdmdcIiBzdHlsZT1cIndpZHRoOiAyMHB4O2hlaWdodDogMjBweDtcIj5cbiAgPC9idXR0b24+XG4gIDxhIGNsYXNzPVwibmF2YmFyLWJyYW5kIG1lLWF1dG9cIiBocmVmPVwiI1wiPlxuICAgIDxpbWcgKm5nSWY9XCJjb21wYW55UHJvZmlsZSQgfCBhc3luY1wiIFtzcmNdPVwiKGNvbXBhbnlQcm9maWxlJCB8IGFzeW5jKT8ubG9nb1wiIGFsdD1cIkxvZ29cIiBzdHlsZT1cImhlaWdodDogMzBweDtcIj5cbiAgPC9hPlxuICA8c3BhbiBjbGFzcz1cImV4YW1wbGUtc3BhY2VyXCI+PC9zcGFuPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwidGVtcGxhdGVcIiBbbmdUZW1wbGF0ZU91dGxldF09XCJ0ZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICA8YnV0dG9uICpuZ0lmPVwiYXBwTGlzdC5sZW5ndGggPiAwXCIgbWF0LWljb24tYnV0dG9uIGNsYXNzPVwibWUtMyBzd2l0Y2hCdXR0b25cIiBbbWF0TWVudVRyaWdnZXJGb3JdPVwiYXBwc1wiPlxuICAgIDxpbWcgc3JjPVwiLi4vYXNzZXRzL2ltYWdlcy9hcHBzLnBuZ1wiIGFsdD1cImFwcHMgaWNvblwiIHN0eWxlPVwid2lkdGg6MjBweDtoZWlnaHQ6IDIwcHg7XCI+XG4gIDwvYnV0dG9uPlxuICA8bWF0LW1lbnUgI2FwcHM9XCJtYXRNZW51XCIgY2xhc3M9XCJhY2NvdW50c19kcnBtZW51XCI+XG4gICAgPGRpdiAqbmdGb3I9XCJsZXQgYXBwIG9mIGFwcExpc3RcIj5cbiAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPVwiYXBwUmVkaXJlY3QoYXBwKVwiPnt7YXBwLm5hbWV9fTwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L21hdC1tZW51PlxuICA8ZGl2IGNsYXNzPVwicHJvZmlsZS1uYW1lXCI+XG4gICAgPHAgKm5nSWY9XCJ1c2VybmFtZVwiIGNsYXNzPVwieHNIaWRkZW5Vc2VybmFtZSBtYi0wXCI+e3t1c2VybmFtZX19PC9wPlxuICAgIDwhLS08c3BhbiBjbGFzcz1cInhzSGlkZGVuVXNlcm5hbWUgbWItMFwiICpuZ0Zvcj1cImxldCByb2xlIG9mIHVzZXJSb2xlXCI+e3tyb2xlIHwgZm9ybWF0V29yZDogdHJ1ZTonXyd9fTwvc3Bhbj4tLT5cbiAgPC9kaXY+XG4gIDxidXR0b24gbWF0LWJ1dHRvbiBbbWF0TWVudVRyaWdnZXJGb3JdPVwibWVudVwiPlxuICAgIDxpbWcgY2xhc3M9XCJhdmF0YXJMb2dvXCIgc3JjPVwiLi4vYXNzZXRzL2ltYWdlcy9kcC5wbmdcIiBhbHQ9XCJBdmF0YXIgTG9nb1wiIGNsYXNzPVwiYXZhdGFyTG9nbyByb3VuZGVkLXBpbGxcIj5cbiAgPC9idXR0b24+XG4gIDxtYXQtbWVudSAjbWVudT1cIm1hdE1lbnVcIiBjbGFzcz1cImFjY291bnRzX2RycG1lbnVcIj5cbiAgICA8c3BhbiAqbmdJZj1cInVzZXJuYW1lXCIgY2xhc3M9XCJ4c1Nob3dVc2VybmFtZVwiPnt7dXNlcm5hbWV9fTwvc3Bhbj5cbiAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cInByb2ZpbGUoKVwiPlByb2ZpbGU8L2J1dHRvbj5cbiAgICA8YnV0dG9uICpuZ0lmPVwic2hvd1N3aXRjaENvbXBhbmllc1wiIG1hdC1tZW51LWl0ZW0gW21hdE1lbnVUcmlnZ2VyRm9yXT1cImNvbXBhbmllc1wiPlN3aXRjaCBDb21wYW55PC9idXR0b24+XG4gICAgPG1hdC1tZW51ICNjb21wYW5pZXM9XCJtYXRNZW51XCIgY2xhc3M9XCJhY2NvdW50c19kcnBtZW51XCI+XG4gICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBjb21wYW55IG9mIHVzZXJDb21wYW5pZXNcIj5cbiAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJzd2l0Y2hDb21wYW55KGNvbXBhbnkpXCI+e3tjb21wYW55Lm5hbWV9fTwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9tYXQtbWVudT5cbiAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cIm9uTG9nb3V0Q2xpY2soKVwiPkxvZ291dDwvYnV0dG9uPlxuICA8L21hdC1tZW51PlxuPC9tYXQtdG9vbGJhcj4iXX0=
166
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbW1vbi1oZWFkZXIvc3JjL2xpYi9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbW1vbi1oZWFkZXIvc3JjL2xpYi9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFhLGlCQUFpQixFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFlLE1BQU0sZUFBZSxDQUFDO0FBQ2xJLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRS9ELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFMUQsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7OztBQVM1QyxNQUFNLE9BQU8sZUFBZTtJQWUxQjtRQWJBLGFBQVEsR0FBVyxFQUFFLENBQUM7UUFFWixjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUU5QyxZQUFPLEdBQWUsRUFBRSxDQUFDO1FBRXpCLHdCQUFtQixHQUFZLEtBQUssQ0FBQztRQUVyQyxjQUFTLEdBQVcsRUFBRSxDQUFDO1FBQ2YsWUFBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN6QixjQUFTLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2hDLFNBQUksR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUd6QyxPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ2hELE9BQU8sQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUE7SUFDN0IsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLFNBQVMsQ0FBQztZQUM1QixJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDVixJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxDQUFDO2dCQUNwQyxJQUFJLE1BQU0sR0FBUSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQ25DLElBQUksVUFBVSxHQUFHLEdBQUcsSUFBSSxDQUFDLFNBQVMsUUFBUSxDQUFDO2dCQUMzQyxNQUFNLENBQUMsS0FBSyxHQUFHLEVBQUMsR0FBRyxNQUFNLENBQUMsS0FBSyxFQUFDLEdBQUcsRUFBQyxpQkFBaUIsRUFBRSxVQUFVLEVBQUMsRUFBQyxDQUFDO2dCQUNwRSxPQUFPLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUMxQixJQUFHLENBQUMsRUFBRSxJQUFJLEVBQUUsWUFBWSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUM7b0JBQ3pELDhDQUE4QztvQkFDOUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7b0JBQ2xCLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQVcsRUFBRSxFQUFFO3dCQUMxQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQzs0QkFDaEIsSUFBSSxFQUFFLE9BQU8sQ0FBQyxXQUFXOzRCQUN6QixLQUFLLEVBQUUsT0FBTzs0QkFDZCxNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU07eUJBQ3ZCLENBQUMsQ0FBQztvQkFDTCxDQUFDLENBQUMsQ0FBQztpQkFDSjtZQUNILENBQUM7WUFDRCxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDWCxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFBO1lBQ2hCLENBQUM7U0FDRixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDMUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQztRQUM3QyxDQUFDLENBQUM7YUFDQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUM7UUFDbEQsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLElBQUksR0FBRyxHQUFHO1lBQ1IsV0FBVyxFQUFFLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDbEQsQ0FBQztRQUNGLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBQ0QsZ0JBQWdCLENBQUMsT0FBa0I7UUFDakMsSUFBSSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLFNBQVMsQ0FBQztZQUMzQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDVixJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsbUJBQW1CLEVBQUU7b0JBQy9CLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO29CQUNsQixJQUFJLE9BQU8sR0FBRyxFQUFFLENBQUM7b0JBQ2pCLElBQUksbUJBQW1CLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBRWhFLElBQUksbUJBQW1CLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTt3QkFDbEMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBVyxFQUFFLEVBQUU7NEJBQzFDLE9BQU8sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksSUFBSSxPQUFPLENBQUMsQ0FBQzs0QkFDckQsSUFBSSxPQUFPLElBQUksT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0NBQ2pDLElBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxLQUFLLEVBQUM7b0NBQzFCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO3dDQUNoQixJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVc7d0NBQzVCLEtBQUssRUFBRSxPQUFPO3dDQUNkLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTTtxQ0FDMUIsQ0FBQyxDQUFDO2lDQUNKOzZCQUNGO3dCQUNILENBQUMsQ0FBQyxDQUFDO3FCQUNKO2lCQUNGO1lBRUgsQ0FBQztTQUNGLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxjQUFjO1FBQ1osSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLFNBQVMsQ0FBQztZQUNyQyxJQUFJLEVBQUUsQ0FBQyxpQkFBc0IsRUFBRSxFQUFFO2dCQUMvQixJQUFJLGlCQUFpQixJQUFJLGlCQUFpQixDQUFDLElBQUksSUFBSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFO29CQUNuRixJQUFJLENBQUMsYUFBYSxHQUFHLGlCQUFpQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7b0JBQ3RELElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO3dCQUNqQyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO3FCQUNqQztpQkFDRjtZQUNILENBQUM7WUFDRCxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDWCxPQUFPLENBQUMsR0FBRyxDQUFDLDBDQUEwQyxDQUFDLENBQUM7WUFDMUQsQ0FBQztTQUNGLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxXQUFXLENBQUMsR0FBTztRQUNqQix3Q0FBd0M7UUFDdEMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ25DLElBQUk7SUFDTixDQUFDO0lBQ0QsT0FBTztRQUNMLHdCQUF3QjtRQUN4QixJQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUM7WUFDN0IsSUFBSSxHQUFHLEdBQUcsSUFBSSxDQUFDLFNBQVMsR0FBQyxjQUFjLENBQUM7WUFDeEMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDO1NBQzlCO2FBQ0c7WUFDRixJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUM1QztJQUNILENBQUM7SUFDRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQzthQUMzQixJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQy9CLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNYLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUE7WUFDaEIsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2pCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUNELGFBQWEsQ0FBQyxPQUFZO1FBQ3hCLDBDQUEwQztRQUUxQyw4QkFBOEI7UUFDOUIsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMzQyxJQUFHLFVBQVUsRUFBQztZQUNaLElBQUksR0FBRyxHQUFPLEVBQUUsVUFBVSxFQUFFLE9BQU8sQ0FBQyxVQUFVLEVBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUM3RSxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQztnQkFDekMsSUFBSSxFQUFFLENBQUMsUUFBYSxFQUFFLEVBQUU7b0JBQ3RCLElBQUksUUFBUSxJQUFJLFFBQVEsQ0FBQyxJQUFJLElBQUksUUFBUSxDQUFDLElBQUksSUFBSSxJQUFJLEVBQUU7d0JBQ3RELElBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUM7NEJBQzlCLElBQUksR0FBRyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsY0FBYyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDOzRCQUNsRSxNQUFNLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQzt5QkFDOUI7d0JBQ0QsK0VBQStFO3dCQUMvRSw0QkFBNEI7cUJBQzdCO3lCQUNJO3dCQUNILHdFQUF3RTt3QkFDeEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMscUVBQXFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUE7cUJBQ3JIO2dCQUNILENBQUM7Z0JBQ0QsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7b0JBQ1gsd0VBQXdFO29CQUN4RSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxxRUFBcUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQTtnQkFDdEgsQ0FBQzthQUNGLENBQUMsQ0FBQTtTQUNIO0lBQ0gsQ0FBQzs7NkdBN0pVLGVBQWU7aUdBQWYsZUFBZSx5SENmNUIsaWtFQW1DYzs0RkRwQkQsZUFBZTtrQkFOM0IsU0FBUzsrQkFDRSxZQUFZLGlCQUdQLGlCQUFpQixDQUFDLElBQUk7MEVBSzVCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0ksU0FBUztzQkFBbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBpbmplY3QsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24sIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbkhlYWRlclNlcnZpY2UgfSBmcm9tICcuLi9jb21tb24taGVhZGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgTWF0U2lkZW5hdiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NpZGVuYXYnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE1hdFNuYWNrQmFyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJztcbmltcG9ydCB7IFVzZXJEZXRhaWxzIH0gZnJvbSAnLi4vdXRpbHMvVXNlckRldGFpbHMnO1xuaW1wb3J0IHsgQW1wbGlmeSwgQXV0aCB9IGZyb20gJ2F3cy1hbXBsaWZ5JztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9oZWFkZXIuY29tcG9uZW50LmNzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIEhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdHtcbiAgXG4gIHVzZXJuYW1lOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgdGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBAT3V0cHV0KCkgbWVudUV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIHNpZGVuYXYhOiBNYXRTaWRlbmF2O1xuICBhcHBMaXN0OiBBcnJheTxhbnk+ID0gW107XG4gIHVzZXJDb21wYW5pZXM6IGFueTtcbiAgc2hvd1N3aXRjaENvbXBhbmllczogYm9vbGVhbiA9IGZhbHNlO1xuICBjb21wYW55UHJvZmlsZSQhOiBPYnNlcnZhYmxlPGFueT47XG4gIHBvcnRhbFVybDogc3RyaW5nID0gJyc7XG4gIHByaXZhdGUgX3JvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuICBwcml2YXRlIF9zbmFja2JhciA9IGluamVjdChNYXRTbmFja0Jhcik7XG4gIHByaXZhdGUgX3NlciA9IGluamVjdChDb21tb25IZWFkZXJTZXJ2aWNlKTtcblxuICBjb25zdHJ1Y3Rvcigpe1xuICAgIGNvbnNvbGUubG9nKCdsaWIgZG9tYWluJyxkb2N1bWVudC5sb2NhdGlvbi5ob3N0KVxuICAgIGNvbnNvbGUubG9nKCd2ZXIgPT4gMS4wLjYnKVxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5mZXRjaENvbXBhbnlQcm9maWxlKCk7XG4gICAgdGhpcy5fc2VyLmdldEFwcHMoKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHYpID0+IHtcbiAgICAgICAgdGhpcy5wb3J0YWxVcmwgPSB2Py5kYXRhPy5wb3J0YWxVcmw7XG4gICAgICAgIGxldCBjb25maWc6IGFueSA9IEF1dGguY29uZmlndXJlKCk7XG4gICAgICAgIGxldCBzaWdub3V0VXJsID0gYCR7dGhpcy5wb3J0YWxVcmx9L2xvZ2luYDtcbiAgICAgICAgY29uZmlnLm9hdXRoID0gey4uLmNvbmZpZy5vYXV0aCwuLi57XCJyZWRpcmVjdFNpZ25PdXRcIjogc2lnbm91dFVybH19O1xuICAgICAgICBBbXBsaWZ5LmNvbmZpZ3VyZShjb25maWcpO1xuICAgICAgICBpZih2Py5kYXRhPy5hcHBsaWNhdGlvbnMgJiYgdi5kYXRhLmFwcGxpY2F0aW9ucy5sZW5ndGggPiAwKXtcbiAgICAgICAgICAvLyB0aGlzLmZldGNoQ29tcGFueURhdGEodi5kYXRhLmFwcGxpY2F0aW9ucyk7XG4gICAgICAgICAgdGhpcy5hcHBMaXN0ID0gW107XG4gICAgICAgICAgdi5kYXRhLmFwcGxpY2F0aW9ucy5mb3JFYWNoKChlbGVtZW50OmFueSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5hcHBMaXN0LnB1c2goe1xuICAgICAgICAgICAgICBuYW1lOiBlbGVtZW50LmRpc3BsYXlOYW1lLFxuICAgICAgICAgICAgICB2YWx1ZTogZWxlbWVudCxcbiAgICAgICAgICAgICAgYXBwVXJsOiBlbGVtZW50LmFwcFVybFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBlcnJvcjogKGUpID0+IHtcbiAgICAgICAgY29uc29sZS5sb2coZSlcbiAgICAgIH1cbiAgICB9KTtcbiAgICBBdXRoLmN1cnJlbnRBdXRoZW50aWNhdGVkVXNlcigpLnRoZW4odXNlciA9PiB7XG4gICAgICB0aGlzLnVzZXJuYW1lID0gdXNlci5hdHRyaWJ1dGVzLmdpdmVuX25hbWU7XG4gICAgfSlcbiAgICAgIC5jYXRjaCgoKSA9PiBjb25zb2xlLmxvZyhcIlVzZXIgbm90IGxvZ2dlZCBpblwiKSk7XG4gICAgdGhpcy5nZXRVc2VyQ29tcGFueSgpO1xuICB9XG5cbiAgbWVudUFjdGlvbigpe1xuICAgIHRoaXMubWVudUV2ZW50LmVtaXQoKTtcbiAgfVxuXG4gIGZldGNoQ29tcGFueVByb2ZpbGUoKXtcbiAgICBsZXQgcmVxID0ge1xuICAgICAgY29tcGFueU5hbWU6IGRvY3VtZW50LmxvY2F0aW9uLmhvc3Quc3BsaXQoJy4nKVswXVxuICAgIH07XG4gICAgdGhpcy5jb21wYW55UHJvZmlsZSQgPSB0aGlzLl9zZXIuZmV0Y2hDb21wYW55UHJvZmlsZShyZXEpO1xuICB9XG4gIGZldGNoQ29tcGFueURhdGEoYWxsQXBwczpBcnJheTxhbnk+KSB7XG4gICAgdGhpcy5fc2VyLmdldENvbXBhbnlBcHBsaWNhdGlvbnMoKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHYpID0+IHtcbiAgICAgICAgaWYgKHY/LmRhdGEuZW5hYmxlZEFwcGxpY2F0aW9ucykge1xuICAgICAgICAgIHRoaXMuYXBwTGlzdCA9IFtdO1xuICAgICAgICAgIGxldCBhcHBJbmZvID0gW107XG4gICAgICAgICAgbGV0IGZldGNoZWRBcHBsaWNhdGlvbnMgPSB2LmRhdGEuZW5hYmxlZEFwcGxpY2F0aW9ucy5zcGxpdCgnLCcpO1xuXG4gICAgICAgICAgaWYgKGZldGNoZWRBcHBsaWNhdGlvbnMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgZmV0Y2hlZEFwcGxpY2F0aW9ucy5mb3JFYWNoKChlbGVtZW50OmFueSkgPT4ge1xuICAgICAgICAgICAgICBhcHBJbmZvID0gYWxsQXBwcy5maWx0ZXIoZWxlID0+IGVsZS5uYW1lID09IGVsZW1lbnQpO1xuICAgICAgICAgICAgICBpZiAoYXBwSW5mbyAmJiBhcHBJbmZvLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICBpZihhcHBJbmZvWzBdLm5hbWUgIT0gJ21jYScpe1xuICAgICAgICAgICAgICAgICAgdGhpcy5hcHBMaXN0LnB1c2goe1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBhcHBJbmZvWzBdLmRpc3BsYXlOYW1lLFxuICAgICAgICAgICAgICAgICAgICB2YWx1ZTogZWxlbWVudCxcbiAgICAgICAgICAgICAgICAgICAgYXBwVXJsOiBhcHBJbmZvWzBdLmFwcFVybFxuICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBnZXRVc2VyQ29tcGFueSgpe1xuICAgIHRoaXMuX3Nlci5nZXRVc2VyQ29tcGFuaWVzKCkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6ICh1c2VyQ29tcGFuaWVzRGF0YTogYW55KSA9PiB7XG4gICAgICAgIGlmICh1c2VyQ29tcGFuaWVzRGF0YSAmJiB1c2VyQ29tcGFuaWVzRGF0YS5kYXRhICYmIHVzZXJDb21wYW5pZXNEYXRhLmRhdGEuY29tcGFuaWVzKSB7XG4gICAgICAgICAgdGhpcy51c2VyQ29tcGFuaWVzID0gdXNlckNvbXBhbmllc0RhdGEuZGF0YS5jb21wYW5pZXM7XG4gICAgICAgICAgaWYgKHRoaXMudXNlckNvbXBhbmllcy5sZW5ndGggPiAxKSB7XG4gICAgICAgICAgICB0aGlzLnNob3dTd2l0Y2hDb21wYW5pZXMgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIGVycm9yOiAoZSkgPT4ge1xuICAgICAgICBjb25zb2xlLmxvZyhcIkVycm9yIGluIGZldGNoaW5nIGNvbXBhbmllcyBmb3IgdGhlIHVzZXJcIik7XG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIGFwcFJlZGlyZWN0KGFwcDphbnkpIHtcbiAgICAvLyBpZiAoYXBwLm5hbWUgIT0gJ09yZGVyIE1hbmFnZW1lbnQnKSB7XG4gICAgICB3aW5kb3cub3BlbihhcHAuYXBwVXJsLCBcIl9zZWxmXCIpO1xuICAgIC8vIH1cbiAgfVxuICBwcm9maWxlKCkge1xuICAgIC8vIHRoaXMuZmV0Y2hVc2VyRGF0YSgpO1xuICAgIGlmKHRoaXMuX3Nlci5wb3J0YWxGcm9udGVuZFVybCl7XG4gICAgICBsZXQgdXJsID0gdGhpcy5wb3J0YWxVcmwrJy9hcHAvcHJvZmlsZSc7XG4gICAgICBkb2N1bWVudC5sb2NhdGlvbi5ocmVmID0gdXJsO1xuICAgIH1cbiAgICBlbHNle1xuICAgICAgdGhpcy5fcm91dGVyLm5hdmlnYXRlQnlVcmwoJy9hcHAvcHJvZmlsZScpO1xuICAgIH1cbiAgfVxuICBvbkxvZ291dENsaWNrKCkge1xuICAgIEF1dGguc2lnbk91dCh7IGdsb2JhbDogdHJ1ZSB9KVxuICAgICAgLnRoZW4oZGF0YSA9PiBjb25zb2xlLmxvZyhkYXRhKSlcbiAgICAgIC5jYXRjaChlcnIgPT4ge1xuICAgICAgICBjb25zb2xlLmxvZyhlcnIpXG4gICAgICAgIEF1dGguc2lnbk91dCgpO1xuICAgICAgfSk7XG4gIH1cbiAgc3dpdGNoQ29tcGFueShjb21wYW55OiBhbnkpIHtcbiAgICAvLyBzd2l0Y2ggdGhlIHVzZXIgdG8gdGhlIHNlbGVjdGVjIGNvbXBhbnlcblxuICAgIC8vIEZpbmQgdGhlIGRvbWFpbiBpbmZvcm1hdGlvblxuICAgIGxldCBkb21haW5JbmZvID0gdGhpcy5fc2VyLmdldERvbWFpbkluZm8oKTtcbiAgICBpZihkb21haW5JbmZvKXtcbiAgICAgIGxldCByZXE6YW55ID0geyBjb21wYW55S2V5OiBjb21wYW55LmNvbXBhbnlLZXksYXBwTmFtZTogZG9tYWluSW5mby5hcHBDb2RlIH07XG4gICAgICB0aGlzLl9zZXIudXBkYXRlVXNlckNvbXBhbnkocmVxKS5zdWJzY3JpYmUoe1xuICAgICAgICBuZXh0OiAocmVzcG9uc2U6IGFueSkgPT4ge1xuICAgICAgICAgIGlmIChyZXNwb25zZSAmJiByZXNwb25zZS50eXBlICYmIHJlc3BvbnNlLnR5cGUgPT0gXCJPS1wiKSB7XG4gICAgICAgICAgICBpZihyZXNwb25zZS5kYXRhLmFwcGxpY2F0aW9uVVJMKXtcbiAgICAgICAgICAgICAgbGV0IHVybCA9IHJlc3BvbnNlLmRhdGEuYXBwbGljYXRpb25VUkwgKyB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWU7XG4gICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKHVybCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyByZWZyZXNoIHRoZSBjdXJyZW50IHBhZ2UgdG8gcmVsb2FkIHRoZSBjb250ZW50cyBiYXNlZCBvbiB0aGUgY3VycmVudCBjb21wYW55XG4gICAgICAgICAgICAvLyB3aW5kb3cubG9jYXRpb24ucmVsb2FkKCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgLy8gZGlzcGxheSBhIG1lc3NhZ2UgdG8gdGhlIHVzZXIgdGhhdCB0aGUgY29tcGFueSBjb3VsZCBub3QgYmUgc3dpdGNoZWQuXG4gICAgICAgICAgICB0aGlzLl9zbmFja2Jhci5vcGVuKCdDb21wYW55IGNvdWxkIG5vdCBiZSBzd2l0Y2hlZC4gUGxlYXNlIHRyeSBhZ2FpbiBvciBjb250YWN0IHN1cHBvcnQuJywgJ09LJywgeyBkdXJhdGlvbjogNTAwMCB9KVxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgZXJyb3I6IChlKSA9PiB7XG4gICAgICAgICAgLy8gZGlzcGxheSBhIG1lc3NhZ2UgdG8gdGhlIHVzZXIgdGhhdCB0aGUgY29tcGFueSBjb3VsZCBub3QgYmUgc3dpdGNoZWQuXG4gICAgICAgICAgdGhpcy5fc25hY2tiYXIub3BlbignQ29tcGFueSBjb3VsZCBub3QgYmUgc3dpdGNoZWQuIFBsZWFzZSB0cnkgYWdhaW4gb3IgY29udGFjdCBzdXBwb3J0LicsICdPSycsIHsgZHVyYXRpb246IDUwMDAgfSlcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG4gIH1cbiAgXG59XG4iLCI8bWF0LXRvb2xiYXIgY29sb3I9XCJwcmltYXJ5XCIgY2xhc3M9XCJjb21tb25faGVhZGVyIHNoYWRvdy1zbVwiPlxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwibWVudUFjdGlvbigpXCIgYXJpYS1sYWJlbD1cIm1haW4gbWVudVwiIHRhYmluZGV4PVwiMFwiIGNsYXNzPVwibWVudUhhbWJlcmdlciBtZS00XCI+XG4gICAgPGltZyBzcmM9XCIuLi9hc3NldHMvaW1hZ2VzL2hhbWJ1cmdlcl9tZW51LnN2Z1wiIHN0eWxlPVwid2lkdGg6IDIwcHg7aGVpZ2h0OiAyMHB4O1wiPlxuICA8L2J1dHRvbj5cbiAgPGEgY2xhc3M9XCJuYXZiYXItYnJhbmQgbWUtYXV0b1wiIGhyZWY9XCIjXCI+XG4gICAgPGltZyAqbmdJZj1cImNvbXBhbnlQcm9maWxlJCB8IGFzeW5jXCIgW3NyY109XCIoY29tcGFueVByb2ZpbGUkIHwgYXN5bmMpPy5sb2dvXCIgYWx0PVwiTG9nb1wiIHN0eWxlPVwiaGVpZ2h0OiAzMHB4O1wiPlxuICA8L2E+XG4gIDxzcGFuIGNsYXNzPVwiZXhhbXBsZS1zcGFjZXJcIj48L3NwYW4+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJ0ZW1wbGF0ZVwiIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gIDxidXR0b24gKm5nSWY9XCJhcHBMaXN0Lmxlbmd0aCA+IDBcIiBtYXQtaWNvbi1idXR0b24gY2xhc3M9XCJtZS0zIHN3aXRjaEJ1dHRvblwiIFttYXRNZW51VHJpZ2dlckZvcl09XCJhcHBzXCI+XG4gICAgPGltZyBzcmM9XCIuLi9hc3NldHMvaW1hZ2VzL2FwcHMucG5nXCIgYWx0PVwiYXBwcyBpY29uXCIgc3R5bGU9XCJ3aWR0aDoyMHB4O2hlaWdodDogMjBweDtcIj5cbiAgPC9idXR0b24+XG4gIDxtYXQtbWVudSAjYXBwcz1cIm1hdE1lbnVcIiBjbGFzcz1cImFjY291bnRzX2RycG1lbnVcIj5cbiAgICA8ZGl2ICpuZ0Zvcj1cImxldCBhcHAgb2YgYXBwTGlzdFwiPlxuICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJhcHBSZWRpcmVjdChhcHApXCI+e3thcHAubmFtZX19PC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvbWF0LW1lbnU+XG4gIDxkaXYgY2xhc3M9XCJwcm9maWxlLW5hbWVcIj5cbiAgICA8cCAqbmdJZj1cInVzZXJuYW1lXCIgY2xhc3M9XCJ4c0hpZGRlblVzZXJuYW1lIG1iLTBcIj57e3VzZXJuYW1lfX08L3A+XG4gICAgPCEtLTxzcGFuIGNsYXNzPVwieHNIaWRkZW5Vc2VybmFtZSBtYi0wXCIgKm5nRm9yPVwibGV0IHJvbGUgb2YgdXNlclJvbGVcIj57e3JvbGUgfCBmb3JtYXRXb3JkOiB0cnVlOidfJ319PC9zcGFuPi0tPlxuICA8L2Rpdj5cbiAgPGJ1dHRvbiBtYXQtYnV0dG9uIFttYXRNZW51VHJpZ2dlckZvcl09XCJtZW51XCI+XG4gICAgPGltZyBjbGFzcz1cImF2YXRhckxvZ29cIiBzcmM9XCIuLi9hc3NldHMvaW1hZ2VzL2RwLnBuZ1wiIGFsdD1cIkF2YXRhciBMb2dvXCIgY2xhc3M9XCJhdmF0YXJMb2dvIHJvdW5kZWQtcGlsbFwiPlxuICA8L2J1dHRvbj5cbiAgPG1hdC1tZW51ICNtZW51PVwibWF0TWVudVwiIGNsYXNzPVwiYWNjb3VudHNfZHJwbWVudVwiPlxuICAgIDxzcGFuICpuZ0lmPVwidXNlcm5hbWVcIiBjbGFzcz1cInhzU2hvd1VzZXJuYW1lXCI+e3t1c2VybmFtZX19PC9zcGFuPlxuICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPVwicHJvZmlsZSgpXCI+UHJvZmlsZTwvYnV0dG9uPlxuICAgIDxidXR0b24gKm5nSWY9XCJzaG93U3dpdGNoQ29tcGFuaWVzXCIgbWF0LW1lbnUtaXRlbSBbbWF0TWVudVRyaWdnZXJGb3JdPVwiY29tcGFuaWVzXCI+U3dpdGNoIENvbXBhbnk8L2J1dHRvbj5cbiAgICA8bWF0LW1lbnUgI2NvbXBhbmllcz1cIm1hdE1lbnVcIiBjbGFzcz1cImFjY291bnRzX2RycG1lbnVcIj5cbiAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGNvbXBhbnkgb2YgdXNlckNvbXBhbmllc1wiPlxuICAgICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cInN3aXRjaENvbXBhbnkoY29tcGFueSlcIj57e2NvbXBhbnkubmFtZX19PC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L21hdC1tZW51PlxuICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPVwib25Mb2dvdXRDbGljaygpXCI+TG9nb3V0PC9idXR0b24+XG4gIDwvbWF0LW1lbnU+XG48L21hdC10b29sYmFyPiJdfQ==
@@ -4,7 +4,7 @@ import { HttpClient, HttpClientModule } from '@angular/common/http';
4
4
  import { Observable, reduce } from 'rxjs';
5
5
  import { Router } from '@angular/router';
6
6
  import { MatSnackBar, MatSnackBarModule } from '@angular/material/snack-bar';
7
- import { Auth } from 'aws-amplify';
7
+ import { Auth, Amplify } from 'aws-amplify';
8
8
  import * as i1 from '@angular/common';
9
9
  import { CommonModule } from '@angular/common';
10
10
  import * as i2 from '@angular/material/toolbar';
@@ -219,6 +219,10 @@ class HeaderComponent {
219
219
  next: (v) => {
220
220
  var _a, _b;
221
221
  this.portalUrl = (_a = v === null || v === void 0 ? void 0 : v.data) === null || _a === void 0 ? void 0 : _a.portalUrl;
222
+ let config = Auth.configure();
223
+ let signoutUrl = `${this.portalUrl}/login`;
224
+ config.oauth = Object.assign(Object.assign({}, config.oauth), { "redirectSignOut": signoutUrl });
225
+ Amplify.configure(config);
222
226
  if (((_b = v === null || v === void 0 ? void 0 : v.data) === null || _b === void 0 ? void 0 : _b.applications) && v.data.applications.length > 0) {
223
227
  // this.fetchCompanyData(v.data.applications);
224
228
  this.appList = [];
@@ -1 +1 @@
1
- {"version":3,"file":"propmix-profet-common-header.mjs","sources":["../../../projects/common-header/src/lib/api-endpoints.def.ts","../../../projects/common-header/src/lib/api-gateway.service.ts","../../../projects/common-header/src/lib/utils/Utilities.ts","../../../projects/common-header/src/lib/utils/HeaderConfig.ts","../../../projects/common-header/src/lib/common-header.service.ts","../../../projects/common-header/src/lib/header/header.component.ts","../../../projects/common-header/src/lib/header/header.component.html","../../../projects/common-header/src/lib/common-header.module.ts","../../../projects/common-header/src/lib/utils/app.constants.ts","../../../projects/common-header/src/public-api.ts","../../../projects/common-header/src/propmix-profet-common-header.ts"],"sourcesContent":["export class EndPoints {\n public static API_URLS = {\n getAppsApi: '/api/company/getAllUserAccessApplications',\n getCompanyApplications: '/api/company/getCompanyApplications',\n getUserCompanies: '/api/profile/getUserCompanies',\n updateUserCompany: '/api/company/updateUserCompany',\n fetchCompanyProfile: '/fetchCompanyProfile'\n }\n}","import { HttpClient } from '@angular/common/http';\nimport { Injectable, inject } from '@angular/core';\nimport { Observable } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ApiGatewayService {\n private _http = inject(HttpClient);\n \n doGet(url: string, config?: any): Observable<any> {\n return new Observable(observer => {\n if (!config) {\n config = {\n isLoaderHidden: false\n };\n };\n let headers:any;\n if(config.isUnauthorized){\n headers = {\n skip: \"true\"\n }\n }\n \n // this._loaderService.requestStarted(config);\n this._http\n .get(url,{headers: headers})\n .subscribe({\n next: (data) => {\n // this._loaderService.requestEnded();\n observer.next(data);\n observer.complete();\n },\n error: (error) => {\n // this.handleError(error, config, observer);\n }\n });\n })\n }\n doPost(url: string, req_body?: any): Observable<any> {\n return new Observable(observer => {\n let headers:any;\n this._http\n .post(url, req_body,{headers: headers})\n .subscribe({\n next: (data) => {\n if (data && data.hasOwnProperty('status')) {\n observer.next(data);\n observer.complete();\n } else {\n observer.next(data);\n observer.complete();\n }\n },\n error: (error:any) => {\n // this.handleError(error, config, observer);\n }\n })\n });\n }\n}\n","export class Utilities {\n public static convertObjectToQueryString(obj:any) {\n let str = '';\n for (const key of Object.keys(obj)) {\n if (obj[key] !== '' && obj[key] != null) {\n if (str != '') {\n str += '&';\n }\n if(Array.isArray(obj[key])){\n let arLength = obj[key].length;\n obj[key].forEach((ar:any,index:number) => {\n str += key + \"=\" + encodeURIComponent(ar);\n if(index < arLength-1){\n str += '&';\n }\n });\n \n }\n else if(typeof(obj[key]) == 'object'){\n if(Object.keys(obj[key]) && Object.keys(obj[key]).length > 0){\n let i = 0;\n for (const subKey of Object.keys(obj[key])){\n if(i > 0){\n str += '&';\n }\n str += key + \".\" + subKey + \"=\" + encodeURIComponent(obj[key][subKey]);\n ++i;\n }\n }\n else{\n str += key + \"=\" + encodeURIComponent(obj[key]);\n }\n }\n else{\n str += key + \"=\" + encodeURIComponent(obj[key]);\n }\n }\n }\n return str;\n }\n}","export class HeaderConfig {\n apiUrl: string = '';\n portalFrontendUrl?: string = '';\n}","import { HttpClient } from '@angular/common/http';\nimport { Inject, Injectable, inject } from '@angular/core';\nimport { HeaderConfig } from './utils/HeaderConfig';\nimport { EndPoints } from './api-endpoints.def';\nimport { ApiGatewayService } from './api-gateway.service';\nimport { Utilities } from './utils/Utilities';\nimport { reduce } from 'rxjs';\nimport { APP_DOMAIN } from '../public-api';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CommonHeaderService {\n private baseUrl: string = '';\n portalFrontendUrl: string;\n private _apiGatewayService = inject(ApiGatewayService);\n constructor(@Inject('headerConfig') private config: HeaderConfig) { \n this.baseUrl = this.config.apiUrl;\n this.portalFrontendUrl = config.portalFrontendUrl!;\n }\n\n getDomainInfo(){\n let dom = document.location.host.split('.');\n let domainInfo = APP_DOMAIN.find(x => x.domain === dom[0]);\n if (domainInfo) {\n return domainInfo;\n }\n\n // Check if the second part of the domain exists before using it\n domainInfo = dom[1] ? APP_DOMAIN.find(x => x.domain === dom[1]) : undefined;\n return domainInfo || undefined;\n }\n\n getApps() {\n let url = `${this.baseUrl + EndPoints.API_URLS.getAppsApi}`;\n return this._apiGatewayService.doGet(url);\n }\n getCompanyApplications() {\n let url = `${this.baseUrl + EndPoints.API_URLS.getCompanyApplications}`;\n return this._apiGatewayService.doGet(url);\n }\n getUserCompanies() {\n let url = `${this.baseUrl + EndPoints.API_URLS.getUserCompanies}`;\n return this._apiGatewayService.doGet(url);\n }\n updateUserCompany(reqBody: any) {\n let url = `${this.baseUrl + EndPoints.API_URLS.updateUserCompany}`;\n return this._apiGatewayService.doPost(url, reqBody);\n }\n\n fetchCompanyProfile(reqBody: any){\n let config: any = {\n isUnauthorized: true\n }\n let url = `${this.baseUrl + EndPoints.API_URLS.fetchCompanyProfile+ '?' + Utilities.convertObjectToQueryString(reqBody)}`;\n return this._apiGatewayService.doGet(url,config).pipe(\n reduce((acc,res) => {\n if(res?.data){\n acc = res.data;\n }\n return acc;\n },{})\n );\n }\n}\n","import { Component, OnInit, inject, ViewChild, ViewEncapsulation, Input, Output, EventEmitter, TemplateRef } from '@angular/core';\nimport { CommonHeaderService } from '../common-header.service';\nimport { MatSidenav } from '@angular/material/sidenav';\nimport { Router } from '@angular/router';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { UserDetails } from '../utils/UserDetails';\nimport { Auth } from 'aws-amplify';\nimport { Observable } from 'rxjs';\n\n@Component({\n selector: 'lib-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.css'],\n encapsulation: ViewEncapsulation.None\n})\nexport class HeaderComponent implements OnInit{\n \n username: string = '';\n @Input() template!: TemplateRef<any>;\n @Output() menuEvent = new EventEmitter<any>();\n sidenav!: MatSidenav;\n appList: Array<any> = [];\n userCompanies: any;\n showSwitchCompanies: boolean = false;\n companyProfile$!: Observable<any>;\n portalUrl: string = '';\n private _router = inject(Router);\n private _snackbar = inject(MatSnackBar);\n private _ser = inject(CommonHeaderService);\n\n constructor(){\n console.log('lib domain',document.location.host)\n console.log('ver => 1.0.6')\n }\n\n ngOnInit(): void {\n this.fetchCompanyProfile();\n this._ser.getApps().subscribe({\n next: (v) => {\n this.portalUrl = v?.data?.portalUrl;\n if(v?.data?.applications && v.data.applications.length > 0){\n // this.fetchCompanyData(v.data.applications);\n this.appList = [];\n v.data.applications.forEach((element:any) => {\n this.appList.push({\n name: element.displayName,\n value: element,\n appUrl: element.appUrl\n });\n });\n }\n },\n error: (e) => {\n console.log(e)\n }\n });\n Auth.currentAuthenticatedUser().then(user => {\n this.username = user.attributes.given_name;\n })\n .catch(() => console.log(\"User not logged in\"));\n this.getUserCompany();\n }\n\n menuAction(){\n this.menuEvent.emit();\n }\n\n fetchCompanyProfile(){\n let req = {\n companyName: document.location.host.split('.')[0]\n };\n this.companyProfile$ = this._ser.fetchCompanyProfile(req);\n }\n fetchCompanyData(allApps:Array<any>) {\n this._ser.getCompanyApplications().subscribe({\n next: (v) => {\n if (v?.data.enabledApplications) {\n this.appList = [];\n let appInfo = [];\n let fetchedApplications = v.data.enabledApplications.split(',');\n\n if (fetchedApplications.length > 0) {\n fetchedApplications.forEach((element:any) => {\n appInfo = allApps.filter(ele => ele.name == element);\n if (appInfo && appInfo.length > 0) {\n if(appInfo[0].name != 'mca'){\n this.appList.push({\n name: appInfo[0].displayName,\n value: element,\n appUrl: appInfo[0].appUrl\n });\n }\n }\n });\n }\n }\n\n }\n })\n }\n\n getUserCompany(){\n this._ser.getUserCompanies().subscribe({\n next: (userCompaniesData: any) => {\n if (userCompaniesData && userCompaniesData.data && userCompaniesData.data.companies) {\n this.userCompanies = userCompaniesData.data.companies;\n if (this.userCompanies.length > 1) {\n this.showSwitchCompanies = true;\n }\n }\n },\n error: (e) => {\n console.log(\"Error in fetching companies for the user\");\n }\n })\n }\n\n appRedirect(app:any) {\n // if (app.name != 'Order Management') {\n window.open(app.appUrl, \"_self\");\n // }\n }\n profile() {\n // this.fetchUserData();\n if(this._ser.portalFrontendUrl){\n let url = this.portalUrl+'/app/profile';\n document.location.href = url;\n }\n else{\n this._router.navigateByUrl('/app/profile');\n }\n }\n onLogoutClick() {\n Auth.signOut({ global: true })\n .then(data => console.log(data))\n .catch(err => {\n console.log(err)\n Auth.signOut();\n });\n }\n switchCompany(company: any) {\n // switch the user to the selectec company\n\n // Find the domain information\n let domainInfo = this._ser.getDomainInfo();\n if(domainInfo){\n let req:any = { companyKey: company.companyKey,appName: domainInfo.appCode };\n this._ser.updateUserCompany(req).subscribe({\n next: (response: any) => {\n if (response && response.type && response.type == \"OK\") {\n if(response.data.applicationURL){\n let url = response.data.applicationURL + window.location.pathname;\n window.location.replace(url);\n }\n // refresh the current page to reload the contents based on the current company\n // window.location.reload();\n }\n else {\n // display a message to the user that the company could not be switched.\n this._snackbar.open('Company could not be switched. Please try again or contact support.', 'OK', { duration: 5000 })\n }\n },\n error: (e) => {\n // display a message to the user that the company could not be switched.\n this._snackbar.open('Company could not be switched. Please try again or contact support.', 'OK', { duration: 5000 })\n }\n })\n }\n }\n \n}\n","<mat-toolbar color=\"primary\" class=\"common_header shadow-sm\">\n <button mat-icon-button (click)=\"menuAction()\" aria-label=\"main menu\" tabindex=\"0\" class=\"menuHamberger me-4\">\n <img src=\"../assets/images/hamburger_menu.svg\" style=\"width: 20px;height: 20px;\">\n </button>\n <a class=\"navbar-brand me-auto\" href=\"#\">\n <img *ngIf=\"companyProfile$ | async\" [src]=\"(companyProfile$ | async)?.logo\" alt=\"Logo\" style=\"height: 30px;\">\n </a>\n <span class=\"example-spacer\"></span>\n <ng-container *ngIf=\"template\" [ngTemplateOutlet]=\"template\"></ng-container>\n <button *ngIf=\"appList.length > 0\" mat-icon-button class=\"me-3 switchButton\" [matMenuTriggerFor]=\"apps\">\n <img src=\"../assets/images/apps.png\" alt=\"apps icon\" style=\"width:20px;height: 20px;\">\n </button>\n <mat-menu #apps=\"matMenu\" class=\"accounts_drpmenu\">\n <div *ngFor=\"let app of appList\">\n <button mat-menu-item (click)=\"appRedirect(app)\">{{app.name}}</button>\n </div>\n </mat-menu>\n <div class=\"profile-name\">\n <p *ngIf=\"username\" class=\"xsHiddenUsername mb-0\">{{username}}</p>\n <!--<span class=\"xsHiddenUsername mb-0\" *ngFor=\"let role of userRole\">{{role | formatWord: true:'_'}}</span>-->\n </div>\n <button mat-button [matMenuTriggerFor]=\"menu\">\n <img class=\"avatarLogo\" src=\"../assets/images/dp.png\" alt=\"Avatar Logo\" class=\"avatarLogo rounded-pill\">\n </button>\n <mat-menu #menu=\"matMenu\" class=\"accounts_drpmenu\">\n <span *ngIf=\"username\" class=\"xsShowUsername\">{{username}}</span>\n <button mat-menu-item (click)=\"profile()\">Profile</button>\n <button *ngIf=\"showSwitchCompanies\" mat-menu-item [matMenuTriggerFor]=\"companies\">Switch Company</button>\n <mat-menu #companies=\"matMenu\" class=\"accounts_drpmenu\">\n <div *ngFor=\"let company of userCompanies\">\n <button mat-menu-item (click)=\"switchCompany(company)\">{{company.name}}</button>\n </div>\n </mat-menu>\n <button mat-menu-item (click)=\"onLogoutClick()\">Logout</button>\n </mat-menu>\n</mat-toolbar>","import { NgModule } from '@angular/core';\nimport { HeaderComponent } from './header/header.component';\nimport {MatToolbarModule} from '@angular/material/toolbar';\nimport {MatIconModule} from '@angular/material/icon'\nimport { HttpClientModule } from '@angular/common/http';\nimport {MatButtonModule} from '@angular/material/button'\nimport {MatSidenavModule} from '@angular/material/sidenav';\nimport {MatMenuModule} from '@angular/material/menu';\nimport { CommonModule } from '@angular/common';\nimport { MatSnackBarModule } from \"@angular/material/snack-bar\";\n\n@NgModule({\n declarations: [\n HeaderComponent\n ],\n imports: [\n CommonModule,\n MatToolbarModule,\n MatIconModule,\n HttpClientModule,\n MatButtonModule,\n MatSidenavModule,\n MatMenuModule,\n MatSnackBarModule\n ],\n exports: [\n HeaderComponent\n ]\n})\nexport class CommonHeaderModule { }\n","export const APP_DOMAIN = [\n { domain: 'portal', appCode: 'profet_portal'},\n { domain: 'profet-portal', appCode: 'profet_portal'},\n { domain: 'orders', appCode: 'appraisal_management'},\n { domain: 'review', appCode: 'appraisal_review'},\n { domain: 'valuation', appCode: 'appraisal_valuation'}\n]","/*\n * Public API Surface of common-header\n */\n\nexport * from './lib/common-header.service';\nexport * from './lib/common-header.module';\nexport * from './lib/header/header.component';\nexport * from './lib/utils/HeaderConfig';\nexport * from './lib/utils/UserDetails';\nexport * from './lib/utils/app.constants';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"propmix-profet-common-header.mjs","sources":["../../../projects/common-header/src/lib/api-endpoints.def.ts","../../../projects/common-header/src/lib/api-gateway.service.ts","../../../projects/common-header/src/lib/utils/Utilities.ts","../../../projects/common-header/src/lib/utils/HeaderConfig.ts","../../../projects/common-header/src/lib/common-header.service.ts","../../../projects/common-header/src/lib/header/header.component.ts","../../../projects/common-header/src/lib/header/header.component.html","../../../projects/common-header/src/lib/common-header.module.ts","../../../projects/common-header/src/lib/utils/app.constants.ts","../../../projects/common-header/src/public-api.ts","../../../projects/common-header/src/propmix-profet-common-header.ts"],"sourcesContent":["export class EndPoints {\n public static API_URLS = {\n getAppsApi: '/api/company/getAllUserAccessApplications',\n getCompanyApplications: '/api/company/getCompanyApplications',\n getUserCompanies: '/api/profile/getUserCompanies',\n updateUserCompany: '/api/company/updateUserCompany',\n fetchCompanyProfile: '/fetchCompanyProfile'\n }\n}","import { HttpClient } from '@angular/common/http';\nimport { Injectable, inject } from '@angular/core';\nimport { Observable } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ApiGatewayService {\n private _http = inject(HttpClient);\n \n doGet(url: string, config?: any): Observable<any> {\n return new Observable(observer => {\n if (!config) {\n config = {\n isLoaderHidden: false\n };\n };\n let headers:any;\n if(config.isUnauthorized){\n headers = {\n skip: \"true\"\n }\n }\n \n // this._loaderService.requestStarted(config);\n this._http\n .get(url,{headers: headers})\n .subscribe({\n next: (data) => {\n // this._loaderService.requestEnded();\n observer.next(data);\n observer.complete();\n },\n error: (error) => {\n // this.handleError(error, config, observer);\n }\n });\n })\n }\n doPost(url: string, req_body?: any): Observable<any> {\n return new Observable(observer => {\n let headers:any;\n this._http\n .post(url, req_body,{headers: headers})\n .subscribe({\n next: (data) => {\n if (data && data.hasOwnProperty('status')) {\n observer.next(data);\n observer.complete();\n } else {\n observer.next(data);\n observer.complete();\n }\n },\n error: (error:any) => {\n // this.handleError(error, config, observer);\n }\n })\n });\n }\n}\n","export class Utilities {\n public static convertObjectToQueryString(obj:any) {\n let str = '';\n for (const key of Object.keys(obj)) {\n if (obj[key] !== '' && obj[key] != null) {\n if (str != '') {\n str += '&';\n }\n if(Array.isArray(obj[key])){\n let arLength = obj[key].length;\n obj[key].forEach((ar:any,index:number) => {\n str += key + \"=\" + encodeURIComponent(ar);\n if(index < arLength-1){\n str += '&';\n }\n });\n \n }\n else if(typeof(obj[key]) == 'object'){\n if(Object.keys(obj[key]) && Object.keys(obj[key]).length > 0){\n let i = 0;\n for (const subKey of Object.keys(obj[key])){\n if(i > 0){\n str += '&';\n }\n str += key + \".\" + subKey + \"=\" + encodeURIComponent(obj[key][subKey]);\n ++i;\n }\n }\n else{\n str += key + \"=\" + encodeURIComponent(obj[key]);\n }\n }\n else{\n str += key + \"=\" + encodeURIComponent(obj[key]);\n }\n }\n }\n return str;\n }\n}","export class HeaderConfig {\n apiUrl: string = '';\n portalFrontendUrl?: string = '';\n}","import { HttpClient } from '@angular/common/http';\nimport { Inject, Injectable, inject } from '@angular/core';\nimport { HeaderConfig } from './utils/HeaderConfig';\nimport { EndPoints } from './api-endpoints.def';\nimport { ApiGatewayService } from './api-gateway.service';\nimport { Utilities } from './utils/Utilities';\nimport { reduce } from 'rxjs';\nimport { APP_DOMAIN } from '../public-api';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CommonHeaderService {\n private baseUrl: string = '';\n portalFrontendUrl: string;\n private _apiGatewayService = inject(ApiGatewayService);\n constructor(@Inject('headerConfig') private config: HeaderConfig) { \n this.baseUrl = this.config.apiUrl;\n this.portalFrontendUrl = config.portalFrontendUrl!;\n }\n\n getDomainInfo(){\n let dom = document.location.host.split('.');\n let domainInfo = APP_DOMAIN.find(x => x.domain === dom[0]);\n if (domainInfo) {\n return domainInfo;\n }\n\n // Check if the second part of the domain exists before using it\n domainInfo = dom[1] ? APP_DOMAIN.find(x => x.domain === dom[1]) : undefined;\n return domainInfo || undefined;\n }\n\n getApps() {\n let url = `${this.baseUrl + EndPoints.API_URLS.getAppsApi}`;\n return this._apiGatewayService.doGet(url);\n }\n getCompanyApplications() {\n let url = `${this.baseUrl + EndPoints.API_URLS.getCompanyApplications}`;\n return this._apiGatewayService.doGet(url);\n }\n getUserCompanies() {\n let url = `${this.baseUrl + EndPoints.API_URLS.getUserCompanies}`;\n return this._apiGatewayService.doGet(url);\n }\n updateUserCompany(reqBody: any) {\n let url = `${this.baseUrl + EndPoints.API_URLS.updateUserCompany}`;\n return this._apiGatewayService.doPost(url, reqBody);\n }\n\n fetchCompanyProfile(reqBody: any){\n let config: any = {\n isUnauthorized: true\n }\n let url = `${this.baseUrl + EndPoints.API_URLS.fetchCompanyProfile+ '?' + Utilities.convertObjectToQueryString(reqBody)}`;\n return this._apiGatewayService.doGet(url,config).pipe(\n reduce((acc,res) => {\n if(res?.data){\n acc = res.data;\n }\n return acc;\n },{})\n );\n }\n}\n","import { Component, OnInit, inject, ViewChild, ViewEncapsulation, Input, Output, EventEmitter, TemplateRef } from '@angular/core';\nimport { CommonHeaderService } from '../common-header.service';\nimport { MatSidenav } from '@angular/material/sidenav';\nimport { Router } from '@angular/router';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { UserDetails } from '../utils/UserDetails';\nimport { Amplify, Auth } from 'aws-amplify';\nimport { Observable } from 'rxjs';\n\n@Component({\n selector: 'lib-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.css'],\n encapsulation: ViewEncapsulation.None\n})\nexport class HeaderComponent implements OnInit{\n \n username: string = '';\n @Input() template!: TemplateRef<any>;\n @Output() menuEvent = new EventEmitter<any>();\n sidenav!: MatSidenav;\n appList: Array<any> = [];\n userCompanies: any;\n showSwitchCompanies: boolean = false;\n companyProfile$!: Observable<any>;\n portalUrl: string = '';\n private _router = inject(Router);\n private _snackbar = inject(MatSnackBar);\n private _ser = inject(CommonHeaderService);\n\n constructor(){\n console.log('lib domain',document.location.host)\n console.log('ver => 1.0.6')\n }\n\n ngOnInit(): void {\n this.fetchCompanyProfile();\n this._ser.getApps().subscribe({\n next: (v) => {\n this.portalUrl = v?.data?.portalUrl;\n let config: any = Auth.configure();\n let signoutUrl = `${this.portalUrl}/login`;\n config.oauth = {...config.oauth,...{\"redirectSignOut\": signoutUrl}};\n Amplify.configure(config);\n if(v?.data?.applications && v.data.applications.length > 0){\n // this.fetchCompanyData(v.data.applications);\n this.appList = [];\n v.data.applications.forEach((element:any) => {\n this.appList.push({\n name: element.displayName,\n value: element,\n appUrl: element.appUrl\n });\n });\n }\n },\n error: (e) => {\n console.log(e)\n }\n });\n Auth.currentAuthenticatedUser().then(user => {\n this.username = user.attributes.given_name;\n })\n .catch(() => console.log(\"User not logged in\"));\n this.getUserCompany();\n }\n\n menuAction(){\n this.menuEvent.emit();\n }\n\n fetchCompanyProfile(){\n let req = {\n companyName: document.location.host.split('.')[0]\n };\n this.companyProfile$ = this._ser.fetchCompanyProfile(req);\n }\n fetchCompanyData(allApps:Array<any>) {\n this._ser.getCompanyApplications().subscribe({\n next: (v) => {\n if (v?.data.enabledApplications) {\n this.appList = [];\n let appInfo = [];\n let fetchedApplications = v.data.enabledApplications.split(',');\n\n if (fetchedApplications.length > 0) {\n fetchedApplications.forEach((element:any) => {\n appInfo = allApps.filter(ele => ele.name == element);\n if (appInfo && appInfo.length > 0) {\n if(appInfo[0].name != 'mca'){\n this.appList.push({\n name: appInfo[0].displayName,\n value: element,\n appUrl: appInfo[0].appUrl\n });\n }\n }\n });\n }\n }\n\n }\n })\n }\n\n getUserCompany(){\n this._ser.getUserCompanies().subscribe({\n next: (userCompaniesData: any) => {\n if (userCompaniesData && userCompaniesData.data && userCompaniesData.data.companies) {\n this.userCompanies = userCompaniesData.data.companies;\n if (this.userCompanies.length > 1) {\n this.showSwitchCompanies = true;\n }\n }\n },\n error: (e) => {\n console.log(\"Error in fetching companies for the user\");\n }\n })\n }\n\n appRedirect(app:any) {\n // if (app.name != 'Order Management') {\n window.open(app.appUrl, \"_self\");\n // }\n }\n profile() {\n // this.fetchUserData();\n if(this._ser.portalFrontendUrl){\n let url = this.portalUrl+'/app/profile';\n document.location.href = url;\n }\n else{\n this._router.navigateByUrl('/app/profile');\n }\n }\n onLogoutClick() {\n Auth.signOut({ global: true })\n .then(data => console.log(data))\n .catch(err => {\n console.log(err)\n Auth.signOut();\n });\n }\n switchCompany(company: any) {\n // switch the user to the selectec company\n\n // Find the domain information\n let domainInfo = this._ser.getDomainInfo();\n if(domainInfo){\n let req:any = { companyKey: company.companyKey,appName: domainInfo.appCode };\n this._ser.updateUserCompany(req).subscribe({\n next: (response: any) => {\n if (response && response.type && response.type == \"OK\") {\n if(response.data.applicationURL){\n let url = response.data.applicationURL + window.location.pathname;\n window.location.replace(url);\n }\n // refresh the current page to reload the contents based on the current company\n // window.location.reload();\n }\n else {\n // display a message to the user that the company could not be switched.\n this._snackbar.open('Company could not be switched. Please try again or contact support.', 'OK', { duration: 5000 })\n }\n },\n error: (e) => {\n // display a message to the user that the company could not be switched.\n this._snackbar.open('Company could not be switched. Please try again or contact support.', 'OK', { duration: 5000 })\n }\n })\n }\n }\n \n}\n","<mat-toolbar color=\"primary\" class=\"common_header shadow-sm\">\n <button mat-icon-button (click)=\"menuAction()\" aria-label=\"main menu\" tabindex=\"0\" class=\"menuHamberger me-4\">\n <img src=\"../assets/images/hamburger_menu.svg\" style=\"width: 20px;height: 20px;\">\n </button>\n <a class=\"navbar-brand me-auto\" href=\"#\">\n <img *ngIf=\"companyProfile$ | async\" [src]=\"(companyProfile$ | async)?.logo\" alt=\"Logo\" style=\"height: 30px;\">\n </a>\n <span class=\"example-spacer\"></span>\n <ng-container *ngIf=\"template\" [ngTemplateOutlet]=\"template\"></ng-container>\n <button *ngIf=\"appList.length > 0\" mat-icon-button class=\"me-3 switchButton\" [matMenuTriggerFor]=\"apps\">\n <img src=\"../assets/images/apps.png\" alt=\"apps icon\" style=\"width:20px;height: 20px;\">\n </button>\n <mat-menu #apps=\"matMenu\" class=\"accounts_drpmenu\">\n <div *ngFor=\"let app of appList\">\n <button mat-menu-item (click)=\"appRedirect(app)\">{{app.name}}</button>\n </div>\n </mat-menu>\n <div class=\"profile-name\">\n <p *ngIf=\"username\" class=\"xsHiddenUsername mb-0\">{{username}}</p>\n <!--<span class=\"xsHiddenUsername mb-0\" *ngFor=\"let role of userRole\">{{role | formatWord: true:'_'}}</span>-->\n </div>\n <button mat-button [matMenuTriggerFor]=\"menu\">\n <img class=\"avatarLogo\" src=\"../assets/images/dp.png\" alt=\"Avatar Logo\" class=\"avatarLogo rounded-pill\">\n </button>\n <mat-menu #menu=\"matMenu\" class=\"accounts_drpmenu\">\n <span *ngIf=\"username\" class=\"xsShowUsername\">{{username}}</span>\n <button mat-menu-item (click)=\"profile()\">Profile</button>\n <button *ngIf=\"showSwitchCompanies\" mat-menu-item [matMenuTriggerFor]=\"companies\">Switch Company</button>\n <mat-menu #companies=\"matMenu\" class=\"accounts_drpmenu\">\n <div *ngFor=\"let company of userCompanies\">\n <button mat-menu-item (click)=\"switchCompany(company)\">{{company.name}}</button>\n </div>\n </mat-menu>\n <button mat-menu-item (click)=\"onLogoutClick()\">Logout</button>\n </mat-menu>\n</mat-toolbar>","import { NgModule } from '@angular/core';\nimport { HeaderComponent } from './header/header.component';\nimport {MatToolbarModule} from '@angular/material/toolbar';\nimport {MatIconModule} from '@angular/material/icon'\nimport { HttpClientModule } from '@angular/common/http';\nimport {MatButtonModule} from '@angular/material/button'\nimport {MatSidenavModule} from '@angular/material/sidenav';\nimport {MatMenuModule} from '@angular/material/menu';\nimport { CommonModule } from '@angular/common';\nimport { MatSnackBarModule } from \"@angular/material/snack-bar\";\n\n@NgModule({\n declarations: [\n HeaderComponent\n ],\n imports: [\n CommonModule,\n MatToolbarModule,\n MatIconModule,\n HttpClientModule,\n MatButtonModule,\n MatSidenavModule,\n MatMenuModule,\n MatSnackBarModule\n ],\n exports: [\n HeaderComponent\n ]\n})\nexport class CommonHeaderModule { }\n","export const APP_DOMAIN = [\n { domain: 'portal', appCode: 'profet_portal'},\n { domain: 'profet-portal', appCode: 'profet_portal'},\n { domain: 'orders', appCode: 'appraisal_management'},\n { domain: 'review', appCode: 'appraisal_review'},\n { domain: 'valuation', appCode: 'appraisal_valuation'}\n]","/*\n * Public API Surface of common-header\n */\n\nexport * from './lib/common-header.service';\nexport * from './lib/common-header.module';\nexport * from './lib/header/header.component';\nexport * from './lib/utils/HeaderConfig';\nexport * from './lib/utils/UserDetails';\nexport * from './lib/utils/app.constants';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import { HttpClient, HttpClientModule } from '@angular/common/http';
4
4
  import { Observable, reduce } from 'rxjs';
5
5
  import { Router } from '@angular/router';
6
6
  import { MatSnackBar, MatSnackBarModule } from '@angular/material/snack-bar';
7
- import { Auth } from 'aws-amplify';
7
+ import { Auth, Amplify } from 'aws-amplify';
8
8
  import * as i1 from '@angular/common';
9
9
  import { CommonModule } from '@angular/common';
10
10
  import * as i2 from '@angular/material/toolbar';
@@ -216,6 +216,10 @@ class HeaderComponent {
216
216
  this._ser.getApps().subscribe({
217
217
  next: (v) => {
218
218
  this.portalUrl = v?.data?.portalUrl;
219
+ let config = Auth.configure();
220
+ let signoutUrl = `${this.portalUrl}/login`;
221
+ config.oauth = { ...config.oauth, ...{ "redirectSignOut": signoutUrl } };
222
+ Amplify.configure(config);
219
223
  if (v?.data?.applications && v.data.applications.length > 0) {
220
224
  // this.fetchCompanyData(v.data.applications);
221
225
  this.appList = [];
@@ -1 +1 @@
1
- {"version":3,"file":"propmix-profet-common-header.mjs","sources":["../../../projects/common-header/src/lib/api-endpoints.def.ts","../../../projects/common-header/src/lib/api-gateway.service.ts","../../../projects/common-header/src/lib/utils/Utilities.ts","../../../projects/common-header/src/lib/utils/HeaderConfig.ts","../../../projects/common-header/src/lib/common-header.service.ts","../../../projects/common-header/src/lib/header/header.component.ts","../../../projects/common-header/src/lib/header/header.component.html","../../../projects/common-header/src/lib/common-header.module.ts","../../../projects/common-header/src/lib/utils/app.constants.ts","../../../projects/common-header/src/public-api.ts","../../../projects/common-header/src/propmix-profet-common-header.ts"],"sourcesContent":["export class EndPoints {\n public static API_URLS = {\n getAppsApi: '/api/company/getAllUserAccessApplications',\n getCompanyApplications: '/api/company/getCompanyApplications',\n getUserCompanies: '/api/profile/getUserCompanies',\n updateUserCompany: '/api/company/updateUserCompany',\n fetchCompanyProfile: '/fetchCompanyProfile'\n }\n}","import { HttpClient } from '@angular/common/http';\nimport { Injectable, inject } from '@angular/core';\nimport { Observable } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ApiGatewayService {\n private _http = inject(HttpClient);\n \n doGet(url: string, config?: any): Observable<any> {\n return new Observable(observer => {\n if (!config) {\n config = {\n isLoaderHidden: false\n };\n };\n let headers:any;\n if(config.isUnauthorized){\n headers = {\n skip: \"true\"\n }\n }\n \n // this._loaderService.requestStarted(config);\n this._http\n .get(url,{headers: headers})\n .subscribe({\n next: (data) => {\n // this._loaderService.requestEnded();\n observer.next(data);\n observer.complete();\n },\n error: (error) => {\n // this.handleError(error, config, observer);\n }\n });\n })\n }\n doPost(url: string, req_body?: any): Observable<any> {\n return new Observable(observer => {\n let headers:any;\n this._http\n .post(url, req_body,{headers: headers})\n .subscribe({\n next: (data) => {\n if (data && data.hasOwnProperty('status')) {\n observer.next(data);\n observer.complete();\n } else {\n observer.next(data);\n observer.complete();\n }\n },\n error: (error:any) => {\n // this.handleError(error, config, observer);\n }\n })\n });\n }\n}\n","export class Utilities {\n public static convertObjectToQueryString(obj:any) {\n let str = '';\n for (const key of Object.keys(obj)) {\n if (obj[key] !== '' && obj[key] != null) {\n if (str != '') {\n str += '&';\n }\n if(Array.isArray(obj[key])){\n let arLength = obj[key].length;\n obj[key].forEach((ar:any,index:number) => {\n str += key + \"=\" + encodeURIComponent(ar);\n if(index < arLength-1){\n str += '&';\n }\n });\n \n }\n else if(typeof(obj[key]) == 'object'){\n if(Object.keys(obj[key]) && Object.keys(obj[key]).length > 0){\n let i = 0;\n for (const subKey of Object.keys(obj[key])){\n if(i > 0){\n str += '&';\n }\n str += key + \".\" + subKey + \"=\" + encodeURIComponent(obj[key][subKey]);\n ++i;\n }\n }\n else{\n str += key + \"=\" + encodeURIComponent(obj[key]);\n }\n }\n else{\n str += key + \"=\" + encodeURIComponent(obj[key]);\n }\n }\n }\n return str;\n }\n}","export class HeaderConfig {\n apiUrl: string = '';\n portalFrontendUrl?: string = '';\n}","import { HttpClient } from '@angular/common/http';\nimport { Inject, Injectable, inject } from '@angular/core';\nimport { HeaderConfig } from './utils/HeaderConfig';\nimport { EndPoints } from './api-endpoints.def';\nimport { ApiGatewayService } from './api-gateway.service';\nimport { Utilities } from './utils/Utilities';\nimport { reduce } from 'rxjs';\nimport { APP_DOMAIN } from '../public-api';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CommonHeaderService {\n private baseUrl: string = '';\n portalFrontendUrl: string;\n private _apiGatewayService = inject(ApiGatewayService);\n constructor(@Inject('headerConfig') private config: HeaderConfig) { \n this.baseUrl = this.config.apiUrl;\n this.portalFrontendUrl = config.portalFrontendUrl!;\n }\n\n getDomainInfo(){\n let dom = document.location.host.split('.');\n let domainInfo = APP_DOMAIN.find(x => x.domain === dom[0]);\n if (domainInfo) {\n return domainInfo;\n }\n\n // Check if the second part of the domain exists before using it\n domainInfo = dom[1] ? APP_DOMAIN.find(x => x.domain === dom[1]) : undefined;\n return domainInfo || undefined;\n }\n\n getApps() {\n let url = `${this.baseUrl + EndPoints.API_URLS.getAppsApi}`;\n return this._apiGatewayService.doGet(url);\n }\n getCompanyApplications() {\n let url = `${this.baseUrl + EndPoints.API_URLS.getCompanyApplications}`;\n return this._apiGatewayService.doGet(url);\n }\n getUserCompanies() {\n let url = `${this.baseUrl + EndPoints.API_URLS.getUserCompanies}`;\n return this._apiGatewayService.doGet(url);\n }\n updateUserCompany(reqBody: any) {\n let url = `${this.baseUrl + EndPoints.API_URLS.updateUserCompany}`;\n return this._apiGatewayService.doPost(url, reqBody);\n }\n\n fetchCompanyProfile(reqBody: any){\n let config: any = {\n isUnauthorized: true\n }\n let url = `${this.baseUrl + EndPoints.API_URLS.fetchCompanyProfile+ '?' + Utilities.convertObjectToQueryString(reqBody)}`;\n return this._apiGatewayService.doGet(url,config).pipe(\n reduce((acc,res) => {\n if(res?.data){\n acc = res.data;\n }\n return acc;\n },{})\n );\n }\n}\n","import { Component, OnInit, inject, ViewChild, ViewEncapsulation, Input, Output, EventEmitter, TemplateRef } from '@angular/core';\nimport { CommonHeaderService } from '../common-header.service';\nimport { MatSidenav } from '@angular/material/sidenav';\nimport { Router } from '@angular/router';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { UserDetails } from '../utils/UserDetails';\nimport { Auth } from 'aws-amplify';\nimport { Observable } from 'rxjs';\n\n@Component({\n selector: 'lib-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.css'],\n encapsulation: ViewEncapsulation.None\n})\nexport class HeaderComponent implements OnInit{\n \n username: string = '';\n @Input() template!: TemplateRef<any>;\n @Output() menuEvent = new EventEmitter<any>();\n sidenav!: MatSidenav;\n appList: Array<any> = [];\n userCompanies: any;\n showSwitchCompanies: boolean = false;\n companyProfile$!: Observable<any>;\n portalUrl: string = '';\n private _router = inject(Router);\n private _snackbar = inject(MatSnackBar);\n private _ser = inject(CommonHeaderService);\n\n constructor(){\n console.log('lib domain',document.location.host)\n console.log('ver => 1.0.6')\n }\n\n ngOnInit(): void {\n this.fetchCompanyProfile();\n this._ser.getApps().subscribe({\n next: (v) => {\n this.portalUrl = v?.data?.portalUrl;\n if(v?.data?.applications && v.data.applications.length > 0){\n // this.fetchCompanyData(v.data.applications);\n this.appList = [];\n v.data.applications.forEach((element:any) => {\n this.appList.push({\n name: element.displayName,\n value: element,\n appUrl: element.appUrl\n });\n });\n }\n },\n error: (e) => {\n console.log(e)\n }\n });\n Auth.currentAuthenticatedUser().then(user => {\n this.username = user.attributes.given_name;\n })\n .catch(() => console.log(\"User not logged in\"));\n this.getUserCompany();\n }\n\n menuAction(){\n this.menuEvent.emit();\n }\n\n fetchCompanyProfile(){\n let req = {\n companyName: document.location.host.split('.')[0]\n };\n this.companyProfile$ = this._ser.fetchCompanyProfile(req);\n }\n fetchCompanyData(allApps:Array<any>) {\n this._ser.getCompanyApplications().subscribe({\n next: (v) => {\n if (v?.data.enabledApplications) {\n this.appList = [];\n let appInfo = [];\n let fetchedApplications = v.data.enabledApplications.split(',');\n\n if (fetchedApplications.length > 0) {\n fetchedApplications.forEach((element:any) => {\n appInfo = allApps.filter(ele => ele.name == element);\n if (appInfo && appInfo.length > 0) {\n if(appInfo[0].name != 'mca'){\n this.appList.push({\n name: appInfo[0].displayName,\n value: element,\n appUrl: appInfo[0].appUrl\n });\n }\n }\n });\n }\n }\n\n }\n })\n }\n\n getUserCompany(){\n this._ser.getUserCompanies().subscribe({\n next: (userCompaniesData: any) => {\n if (userCompaniesData && userCompaniesData.data && userCompaniesData.data.companies) {\n this.userCompanies = userCompaniesData.data.companies;\n if (this.userCompanies.length > 1) {\n this.showSwitchCompanies = true;\n }\n }\n },\n error: (e) => {\n console.log(\"Error in fetching companies for the user\");\n }\n })\n }\n\n appRedirect(app:any) {\n // if (app.name != 'Order Management') {\n window.open(app.appUrl, \"_self\");\n // }\n }\n profile() {\n // this.fetchUserData();\n if(this._ser.portalFrontendUrl){\n let url = this.portalUrl+'/app/profile';\n document.location.href = url;\n }\n else{\n this._router.navigateByUrl('/app/profile');\n }\n }\n onLogoutClick() {\n Auth.signOut({ global: true })\n .then(data => console.log(data))\n .catch(err => {\n console.log(err)\n Auth.signOut();\n });\n }\n switchCompany(company: any) {\n // switch the user to the selectec company\n\n // Find the domain information\n let domainInfo = this._ser.getDomainInfo();\n if(domainInfo){\n let req:any = { companyKey: company.companyKey,appName: domainInfo.appCode };\n this._ser.updateUserCompany(req).subscribe({\n next: (response: any) => {\n if (response && response.type && response.type == \"OK\") {\n if(response.data.applicationURL){\n let url = response.data.applicationURL + window.location.pathname;\n window.location.replace(url);\n }\n // refresh the current page to reload the contents based on the current company\n // window.location.reload();\n }\n else {\n // display a message to the user that the company could not be switched.\n this._snackbar.open('Company could not be switched. Please try again or contact support.', 'OK', { duration: 5000 })\n }\n },\n error: (e) => {\n // display a message to the user that the company could not be switched.\n this._snackbar.open('Company could not be switched. Please try again or contact support.', 'OK', { duration: 5000 })\n }\n })\n }\n }\n \n}\n","<mat-toolbar color=\"primary\" class=\"common_header shadow-sm\">\n <button mat-icon-button (click)=\"menuAction()\" aria-label=\"main menu\" tabindex=\"0\" class=\"menuHamberger me-4\">\n <img src=\"../assets/images/hamburger_menu.svg\" style=\"width: 20px;height: 20px;\">\n </button>\n <a class=\"navbar-brand me-auto\" href=\"#\">\n <img *ngIf=\"companyProfile$ | async\" [src]=\"(companyProfile$ | async)?.logo\" alt=\"Logo\" style=\"height: 30px;\">\n </a>\n <span class=\"example-spacer\"></span>\n <ng-container *ngIf=\"template\" [ngTemplateOutlet]=\"template\"></ng-container>\n <button *ngIf=\"appList.length > 0\" mat-icon-button class=\"me-3 switchButton\" [matMenuTriggerFor]=\"apps\">\n <img src=\"../assets/images/apps.png\" alt=\"apps icon\" style=\"width:20px;height: 20px;\">\n </button>\n <mat-menu #apps=\"matMenu\" class=\"accounts_drpmenu\">\n <div *ngFor=\"let app of appList\">\n <button mat-menu-item (click)=\"appRedirect(app)\">{{app.name}}</button>\n </div>\n </mat-menu>\n <div class=\"profile-name\">\n <p *ngIf=\"username\" class=\"xsHiddenUsername mb-0\">{{username}}</p>\n <!--<span class=\"xsHiddenUsername mb-0\" *ngFor=\"let role of userRole\">{{role | formatWord: true:'_'}}</span>-->\n </div>\n <button mat-button [matMenuTriggerFor]=\"menu\">\n <img class=\"avatarLogo\" src=\"../assets/images/dp.png\" alt=\"Avatar Logo\" class=\"avatarLogo rounded-pill\">\n </button>\n <mat-menu #menu=\"matMenu\" class=\"accounts_drpmenu\">\n <span *ngIf=\"username\" class=\"xsShowUsername\">{{username}}</span>\n <button mat-menu-item (click)=\"profile()\">Profile</button>\n <button *ngIf=\"showSwitchCompanies\" mat-menu-item [matMenuTriggerFor]=\"companies\">Switch Company</button>\n <mat-menu #companies=\"matMenu\" class=\"accounts_drpmenu\">\n <div *ngFor=\"let company of userCompanies\">\n <button mat-menu-item (click)=\"switchCompany(company)\">{{company.name}}</button>\n </div>\n </mat-menu>\n <button mat-menu-item (click)=\"onLogoutClick()\">Logout</button>\n </mat-menu>\n</mat-toolbar>","import { NgModule } from '@angular/core';\nimport { HeaderComponent } from './header/header.component';\nimport {MatToolbarModule} from '@angular/material/toolbar';\nimport {MatIconModule} from '@angular/material/icon'\nimport { HttpClientModule } from '@angular/common/http';\nimport {MatButtonModule} from '@angular/material/button'\nimport {MatSidenavModule} from '@angular/material/sidenav';\nimport {MatMenuModule} from '@angular/material/menu';\nimport { CommonModule } from '@angular/common';\nimport { MatSnackBarModule } from \"@angular/material/snack-bar\";\n\n@NgModule({\n declarations: [\n HeaderComponent\n ],\n imports: [\n CommonModule,\n MatToolbarModule,\n MatIconModule,\n HttpClientModule,\n MatButtonModule,\n MatSidenavModule,\n MatMenuModule,\n MatSnackBarModule\n ],\n exports: [\n HeaderComponent\n ]\n})\nexport class CommonHeaderModule { }\n","export const APP_DOMAIN = [\n { domain: 'portal', appCode: 'profet_portal'},\n { domain: 'profet-portal', appCode: 'profet_portal'},\n { domain: 'orders', appCode: 'appraisal_management'},\n { domain: 'review', appCode: 'appraisal_review'},\n { domain: 'valuation', appCode: 'appraisal_valuation'}\n]","/*\n * Public API Surface of common-header\n */\n\nexport * from './lib/common-header.service';\nexport * from './lib/common-header.module';\nexport * from './lib/header/header.component';\nexport * from './lib/utils/HeaderConfig';\nexport * from './lib/utils/UserDetails';\nexport * from './lib/utils/app.constants';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"propmix-profet-common-header.mjs","sources":["../../../projects/common-header/src/lib/api-endpoints.def.ts","../../../projects/common-header/src/lib/api-gateway.service.ts","../../../projects/common-header/src/lib/utils/Utilities.ts","../../../projects/common-header/src/lib/utils/HeaderConfig.ts","../../../projects/common-header/src/lib/common-header.service.ts","../../../projects/common-header/src/lib/header/header.component.ts","../../../projects/common-header/src/lib/header/header.component.html","../../../projects/common-header/src/lib/common-header.module.ts","../../../projects/common-header/src/lib/utils/app.constants.ts","../../../projects/common-header/src/public-api.ts","../../../projects/common-header/src/propmix-profet-common-header.ts"],"sourcesContent":["export class EndPoints {\n public static API_URLS = {\n getAppsApi: '/api/company/getAllUserAccessApplications',\n getCompanyApplications: '/api/company/getCompanyApplications',\n getUserCompanies: '/api/profile/getUserCompanies',\n updateUserCompany: '/api/company/updateUserCompany',\n fetchCompanyProfile: '/fetchCompanyProfile'\n }\n}","import { HttpClient } from '@angular/common/http';\nimport { Injectable, inject } from '@angular/core';\nimport { Observable } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ApiGatewayService {\n private _http = inject(HttpClient);\n \n doGet(url: string, config?: any): Observable<any> {\n return new Observable(observer => {\n if (!config) {\n config = {\n isLoaderHidden: false\n };\n };\n let headers:any;\n if(config.isUnauthorized){\n headers = {\n skip: \"true\"\n }\n }\n \n // this._loaderService.requestStarted(config);\n this._http\n .get(url,{headers: headers})\n .subscribe({\n next: (data) => {\n // this._loaderService.requestEnded();\n observer.next(data);\n observer.complete();\n },\n error: (error) => {\n // this.handleError(error, config, observer);\n }\n });\n })\n }\n doPost(url: string, req_body?: any): Observable<any> {\n return new Observable(observer => {\n let headers:any;\n this._http\n .post(url, req_body,{headers: headers})\n .subscribe({\n next: (data) => {\n if (data && data.hasOwnProperty('status')) {\n observer.next(data);\n observer.complete();\n } else {\n observer.next(data);\n observer.complete();\n }\n },\n error: (error:any) => {\n // this.handleError(error, config, observer);\n }\n })\n });\n }\n}\n","export class Utilities {\n public static convertObjectToQueryString(obj:any) {\n let str = '';\n for (const key of Object.keys(obj)) {\n if (obj[key] !== '' && obj[key] != null) {\n if (str != '') {\n str += '&';\n }\n if(Array.isArray(obj[key])){\n let arLength = obj[key].length;\n obj[key].forEach((ar:any,index:number) => {\n str += key + \"=\" + encodeURIComponent(ar);\n if(index < arLength-1){\n str += '&';\n }\n });\n \n }\n else if(typeof(obj[key]) == 'object'){\n if(Object.keys(obj[key]) && Object.keys(obj[key]).length > 0){\n let i = 0;\n for (const subKey of Object.keys(obj[key])){\n if(i > 0){\n str += '&';\n }\n str += key + \".\" + subKey + \"=\" + encodeURIComponent(obj[key][subKey]);\n ++i;\n }\n }\n else{\n str += key + \"=\" + encodeURIComponent(obj[key]);\n }\n }\n else{\n str += key + \"=\" + encodeURIComponent(obj[key]);\n }\n }\n }\n return str;\n }\n}","export class HeaderConfig {\n apiUrl: string = '';\n portalFrontendUrl?: string = '';\n}","import { HttpClient } from '@angular/common/http';\nimport { Inject, Injectable, inject } from '@angular/core';\nimport { HeaderConfig } from './utils/HeaderConfig';\nimport { EndPoints } from './api-endpoints.def';\nimport { ApiGatewayService } from './api-gateway.service';\nimport { Utilities } from './utils/Utilities';\nimport { reduce } from 'rxjs';\nimport { APP_DOMAIN } from '../public-api';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CommonHeaderService {\n private baseUrl: string = '';\n portalFrontendUrl: string;\n private _apiGatewayService = inject(ApiGatewayService);\n constructor(@Inject('headerConfig') private config: HeaderConfig) { \n this.baseUrl = this.config.apiUrl;\n this.portalFrontendUrl = config.portalFrontendUrl!;\n }\n\n getDomainInfo(){\n let dom = document.location.host.split('.');\n let domainInfo = APP_DOMAIN.find(x => x.domain === dom[0]);\n if (domainInfo) {\n return domainInfo;\n }\n\n // Check if the second part of the domain exists before using it\n domainInfo = dom[1] ? APP_DOMAIN.find(x => x.domain === dom[1]) : undefined;\n return domainInfo || undefined;\n }\n\n getApps() {\n let url = `${this.baseUrl + EndPoints.API_URLS.getAppsApi}`;\n return this._apiGatewayService.doGet(url);\n }\n getCompanyApplications() {\n let url = `${this.baseUrl + EndPoints.API_URLS.getCompanyApplications}`;\n return this._apiGatewayService.doGet(url);\n }\n getUserCompanies() {\n let url = `${this.baseUrl + EndPoints.API_URLS.getUserCompanies}`;\n return this._apiGatewayService.doGet(url);\n }\n updateUserCompany(reqBody: any) {\n let url = `${this.baseUrl + EndPoints.API_URLS.updateUserCompany}`;\n return this._apiGatewayService.doPost(url, reqBody);\n }\n\n fetchCompanyProfile(reqBody: any){\n let config: any = {\n isUnauthorized: true\n }\n let url = `${this.baseUrl + EndPoints.API_URLS.fetchCompanyProfile+ '?' + Utilities.convertObjectToQueryString(reqBody)}`;\n return this._apiGatewayService.doGet(url,config).pipe(\n reduce((acc,res) => {\n if(res?.data){\n acc = res.data;\n }\n return acc;\n },{})\n );\n }\n}\n","import { Component, OnInit, inject, ViewChild, ViewEncapsulation, Input, Output, EventEmitter, TemplateRef } from '@angular/core';\nimport { CommonHeaderService } from '../common-header.service';\nimport { MatSidenav } from '@angular/material/sidenav';\nimport { Router } from '@angular/router';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { UserDetails } from '../utils/UserDetails';\nimport { Amplify, Auth } from 'aws-amplify';\nimport { Observable } from 'rxjs';\n\n@Component({\n selector: 'lib-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.css'],\n encapsulation: ViewEncapsulation.None\n})\nexport class HeaderComponent implements OnInit{\n \n username: string = '';\n @Input() template!: TemplateRef<any>;\n @Output() menuEvent = new EventEmitter<any>();\n sidenav!: MatSidenav;\n appList: Array<any> = [];\n userCompanies: any;\n showSwitchCompanies: boolean = false;\n companyProfile$!: Observable<any>;\n portalUrl: string = '';\n private _router = inject(Router);\n private _snackbar = inject(MatSnackBar);\n private _ser = inject(CommonHeaderService);\n\n constructor(){\n console.log('lib domain',document.location.host)\n console.log('ver => 1.0.6')\n }\n\n ngOnInit(): void {\n this.fetchCompanyProfile();\n this._ser.getApps().subscribe({\n next: (v) => {\n this.portalUrl = v?.data?.portalUrl;\n let config: any = Auth.configure();\n let signoutUrl = `${this.portalUrl}/login`;\n config.oauth = {...config.oauth,...{\"redirectSignOut\": signoutUrl}};\n Amplify.configure(config);\n if(v?.data?.applications && v.data.applications.length > 0){\n // this.fetchCompanyData(v.data.applications);\n this.appList = [];\n v.data.applications.forEach((element:any) => {\n this.appList.push({\n name: element.displayName,\n value: element,\n appUrl: element.appUrl\n });\n });\n }\n },\n error: (e) => {\n console.log(e)\n }\n });\n Auth.currentAuthenticatedUser().then(user => {\n this.username = user.attributes.given_name;\n })\n .catch(() => console.log(\"User not logged in\"));\n this.getUserCompany();\n }\n\n menuAction(){\n this.menuEvent.emit();\n }\n\n fetchCompanyProfile(){\n let req = {\n companyName: document.location.host.split('.')[0]\n };\n this.companyProfile$ = this._ser.fetchCompanyProfile(req);\n }\n fetchCompanyData(allApps:Array<any>) {\n this._ser.getCompanyApplications().subscribe({\n next: (v) => {\n if (v?.data.enabledApplications) {\n this.appList = [];\n let appInfo = [];\n let fetchedApplications = v.data.enabledApplications.split(',');\n\n if (fetchedApplications.length > 0) {\n fetchedApplications.forEach((element:any) => {\n appInfo = allApps.filter(ele => ele.name == element);\n if (appInfo && appInfo.length > 0) {\n if(appInfo[0].name != 'mca'){\n this.appList.push({\n name: appInfo[0].displayName,\n value: element,\n appUrl: appInfo[0].appUrl\n });\n }\n }\n });\n }\n }\n\n }\n })\n }\n\n getUserCompany(){\n this._ser.getUserCompanies().subscribe({\n next: (userCompaniesData: any) => {\n if (userCompaniesData && userCompaniesData.data && userCompaniesData.data.companies) {\n this.userCompanies = userCompaniesData.data.companies;\n if (this.userCompanies.length > 1) {\n this.showSwitchCompanies = true;\n }\n }\n },\n error: (e) => {\n console.log(\"Error in fetching companies for the user\");\n }\n })\n }\n\n appRedirect(app:any) {\n // if (app.name != 'Order Management') {\n window.open(app.appUrl, \"_self\");\n // }\n }\n profile() {\n // this.fetchUserData();\n if(this._ser.portalFrontendUrl){\n let url = this.portalUrl+'/app/profile';\n document.location.href = url;\n }\n else{\n this._router.navigateByUrl('/app/profile');\n }\n }\n onLogoutClick() {\n Auth.signOut({ global: true })\n .then(data => console.log(data))\n .catch(err => {\n console.log(err)\n Auth.signOut();\n });\n }\n switchCompany(company: any) {\n // switch the user to the selectec company\n\n // Find the domain information\n let domainInfo = this._ser.getDomainInfo();\n if(domainInfo){\n let req:any = { companyKey: company.companyKey,appName: domainInfo.appCode };\n this._ser.updateUserCompany(req).subscribe({\n next: (response: any) => {\n if (response && response.type && response.type == \"OK\") {\n if(response.data.applicationURL){\n let url = response.data.applicationURL + window.location.pathname;\n window.location.replace(url);\n }\n // refresh the current page to reload the contents based on the current company\n // window.location.reload();\n }\n else {\n // display a message to the user that the company could not be switched.\n this._snackbar.open('Company could not be switched. Please try again or contact support.', 'OK', { duration: 5000 })\n }\n },\n error: (e) => {\n // display a message to the user that the company could not be switched.\n this._snackbar.open('Company could not be switched. Please try again or contact support.', 'OK', { duration: 5000 })\n }\n })\n }\n }\n \n}\n","<mat-toolbar color=\"primary\" class=\"common_header shadow-sm\">\n <button mat-icon-button (click)=\"menuAction()\" aria-label=\"main menu\" tabindex=\"0\" class=\"menuHamberger me-4\">\n <img src=\"../assets/images/hamburger_menu.svg\" style=\"width: 20px;height: 20px;\">\n </button>\n <a class=\"navbar-brand me-auto\" href=\"#\">\n <img *ngIf=\"companyProfile$ | async\" [src]=\"(companyProfile$ | async)?.logo\" alt=\"Logo\" style=\"height: 30px;\">\n </a>\n <span class=\"example-spacer\"></span>\n <ng-container *ngIf=\"template\" [ngTemplateOutlet]=\"template\"></ng-container>\n <button *ngIf=\"appList.length > 0\" mat-icon-button class=\"me-3 switchButton\" [matMenuTriggerFor]=\"apps\">\n <img src=\"../assets/images/apps.png\" alt=\"apps icon\" style=\"width:20px;height: 20px;\">\n </button>\n <mat-menu #apps=\"matMenu\" class=\"accounts_drpmenu\">\n <div *ngFor=\"let app of appList\">\n <button mat-menu-item (click)=\"appRedirect(app)\">{{app.name}}</button>\n </div>\n </mat-menu>\n <div class=\"profile-name\">\n <p *ngIf=\"username\" class=\"xsHiddenUsername mb-0\">{{username}}</p>\n <!--<span class=\"xsHiddenUsername mb-0\" *ngFor=\"let role of userRole\">{{role | formatWord: true:'_'}}</span>-->\n </div>\n <button mat-button [matMenuTriggerFor]=\"menu\">\n <img class=\"avatarLogo\" src=\"../assets/images/dp.png\" alt=\"Avatar Logo\" class=\"avatarLogo rounded-pill\">\n </button>\n <mat-menu #menu=\"matMenu\" class=\"accounts_drpmenu\">\n <span *ngIf=\"username\" class=\"xsShowUsername\">{{username}}</span>\n <button mat-menu-item (click)=\"profile()\">Profile</button>\n <button *ngIf=\"showSwitchCompanies\" mat-menu-item [matMenuTriggerFor]=\"companies\">Switch Company</button>\n <mat-menu #companies=\"matMenu\" class=\"accounts_drpmenu\">\n <div *ngFor=\"let company of userCompanies\">\n <button mat-menu-item (click)=\"switchCompany(company)\">{{company.name}}</button>\n </div>\n </mat-menu>\n <button mat-menu-item (click)=\"onLogoutClick()\">Logout</button>\n </mat-menu>\n</mat-toolbar>","import { NgModule } from '@angular/core';\nimport { HeaderComponent } from './header/header.component';\nimport {MatToolbarModule} from '@angular/material/toolbar';\nimport {MatIconModule} from '@angular/material/icon'\nimport { HttpClientModule } from '@angular/common/http';\nimport {MatButtonModule} from '@angular/material/button'\nimport {MatSidenavModule} from '@angular/material/sidenav';\nimport {MatMenuModule} from '@angular/material/menu';\nimport { CommonModule } from '@angular/common';\nimport { MatSnackBarModule } from \"@angular/material/snack-bar\";\n\n@NgModule({\n declarations: [\n HeaderComponent\n ],\n imports: [\n CommonModule,\n MatToolbarModule,\n MatIconModule,\n HttpClientModule,\n MatButtonModule,\n MatSidenavModule,\n MatMenuModule,\n MatSnackBarModule\n ],\n exports: [\n HeaderComponent\n ]\n})\nexport class CommonHeaderModule { }\n","export const APP_DOMAIN = [\n { domain: 'portal', appCode: 'profet_portal'},\n { domain: 'profet-portal', appCode: 'profet_portal'},\n { domain: 'orders', appCode: 'appraisal_management'},\n { domain: 'review', appCode: 'appraisal_review'},\n { domain: 'valuation', appCode: 'appraisal_valuation'}\n]","/*\n * Public API Surface of common-header\n */\n\nexport * from './lib/common-header.service';\nexport * from './lib/common-header.module';\nexport * from './lib/header/header.component';\nexport * from './lib/utils/HeaderConfig';\nexport * from './lib/utils/UserDetails';\nexport * from './lib/utils/app.constants';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@propmix/profet-common-header",
3
- "version": "1.0.9",
3
+ "version": "1.0.10",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^15.2.0",
6
6
  "@angular/core": "^15.2.0",