@mis-wis/common 0.1.0 → 0.1.2-test

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.
Files changed (65) hide show
  1. package/esm2020/lib/components/loader/loader.component.mjs +15 -0
  2. package/esm2020/lib/components/sidenav/sidenav.component.mjs +13 -0
  3. package/{esm2015/lib/functions/cookie.function.js → esm2020/lib/functions/cookie.function.mjs} +2 -1
  4. package/esm2020/lib/interceptors/auth.interceptor.mjs +44 -0
  5. package/{esm2015/lib/models/configurations.model.js → esm2020/lib/models/configurations.model.mjs} +1 -1
  6. package/esm2020/lib/modules/auth/auth.module.mjs +28 -0
  7. package/esm2020/lib/modules/auth/auth.service.mjs +17 -0
  8. package/{esm2015/lib/modules/logger/logger.functions.js → esm2020/lib/modules/logger/logger.functions.mjs} +2 -2
  9. package/esm2020/lib/modules/logger/logger.module.mjs +41 -0
  10. package/esm2020/lib/modules/logger/logger.service.mjs +52 -0
  11. package/esm2020/lib/services/configuration.service.mjs +14 -0
  12. package/esm2020/lib/services/http.service.mjs +27 -0
  13. package/esm2020/lib/services/loader.service.mjs +61 -0
  14. package/esm2020/lib/services/mfe-communication.service.mjs +14 -0
  15. package/esm2020/lib/wis-common.module.mjs +32 -0
  16. package/esm2020/mis-wis-common.mjs +5 -0
  17. package/esm2020/public-api.mjs +19 -0
  18. package/fesm2015/mis-wis-common.mjs +400 -0
  19. package/fesm2015/mis-wis-common.mjs.map +1 -0
  20. package/fesm2020/mis-wis-common.mjs +400 -0
  21. package/fesm2020/mis-wis-common.mjs.map +1 -0
  22. package/index.d.ts +5 -0
  23. package/lib/components/loader/loader.component.d.ts +3 -0
  24. package/lib/components/sidenav/sidenav.component.d.ts +3 -0
  25. package/lib/interceptors/auth.interceptor.d.ts +3 -0
  26. package/lib/models/configurations.model.d.ts +5 -0
  27. package/lib/modules/auth/auth.module.d.ts +5 -0
  28. package/lib/modules/auth/auth.service.d.ts +3 -0
  29. package/lib/modules/logger/logger.module.d.ts +5 -0
  30. package/lib/modules/logger/logger.service.d.ts +3 -0
  31. package/lib/services/configuration.service.d.ts +3 -0
  32. package/lib/services/http.service.d.ts +3 -0
  33. package/lib/services/loader.service.d.ts +3 -0
  34. package/lib/services/mfe-communication.service.d.ts +6 -0
  35. package/lib/wis-common.module.d.ts +9 -0
  36. package/package.json +21 -8
  37. package/public-api.d.ts +3 -0
  38. package/bundles/mis-wis-common.umd.js +0 -747
  39. package/bundles/mis-wis-common.umd.js.map +0 -1
  40. package/bundles/mis-wis-common.umd.min.js +0 -2
  41. package/bundles/mis-wis-common.umd.min.js.map +0 -1
  42. package/esm2015/lib/components/loader/loader.component.js +0 -14
  43. package/esm2015/lib/components/sidenav/sidenav.component.js +0 -14
  44. package/esm2015/lib/interceptors/auth.interceptor.js +0 -39
  45. package/esm2015/lib/modules/auth/auth.module.js +0 -23
  46. package/esm2015/lib/modules/auth/auth.service.js +0 -16
  47. package/esm2015/lib/modules/logger/logger.module.js +0 -36
  48. package/esm2015/lib/modules/logger/logger.service.js +0 -50
  49. package/esm2015/lib/services/configuration.service.js +0 -13
  50. package/esm2015/lib/services/http.service.js +0 -26
  51. package/esm2015/lib/services/loader.service.js +0 -64
  52. package/esm2015/lib/wis-common.module.js +0 -28
  53. package/esm2015/mis-wis-common.js +0 -10
  54. package/esm2015/public-api.js +0 -16
  55. package/fesm2015/mis-wis-common.js +0 -369
  56. package/fesm2015/mis-wis-common.js.map +0 -1
  57. package/mis-wis-common.d.ts +0 -11
  58. package/mis-wis-common.metadata.json +0 -1
  59. /package/{esm2015/lib/constants/emp-web-exp.constants.js → esm2020/lib/constants/emp-web-exp.constants.mjs} +0 -0
  60. /package/{esm2015/lib/functions/nav-filter.function.js → esm2020/lib/functions/nav-filter.function.mjs} +0 -0
  61. /package/{esm2015/lib/functions/url.functions.js → esm2020/lib/functions/url.functions.mjs} +0 -0
  62. /package/{esm2015/lib/models/env.model.js → esm2020/lib/models/env.model.mjs} +0 -0
  63. /package/{esm2015/lib/modules/auth/auth.model.js → esm2020/lib/modules/auth/auth.model.mjs} +0 -0
  64. /package/{esm2015/lib/modules/logger/logger.constant.js → esm2020/lib/modules/logger/logger.constant.mjs} +0 -0
  65. /package/{esm2015/lib/modules/logger/logger.model.js → esm2020/lib/modules/logger/logger.model.mjs} +0 -0
@@ -0,0 +1,19 @@
1
+ /*
2
+ * Public API Surface of wis-common
3
+ */
4
+ export * from "./lib/modules/auth/auth.service";
5
+ export * from "./lib/modules/auth/auth.module";
6
+ export * from "./lib/services/configuration.service";
7
+ export * from "./lib/models/configurations.model";
8
+ export * from "./lib/functions/nav-filter.function";
9
+ export * from "./lib/functions/cookie.function";
10
+ export * from "./lib/functions/url.functions";
11
+ export * from "./lib/interceptors/auth.interceptor";
12
+ export * from "./lib/services/loader.service";
13
+ export * from "./lib/modules/logger/logger.module";
14
+ export * from "./lib/modules/logger/logger.service";
15
+ export * from "./lib/wis-common.module";
16
+ export * from "./lib/modules/logger/logger.model";
17
+ export * from "./lib/components/sidenav/sidenav.component";
18
+ export * from "./lib/services/mfe-communication.service";
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYnJhcmllcy93aXMtY29tbW9uL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsMENBQTBDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIHdpcy1jb21tb25cbiAqL1xuXG5leHBvcnQgKiBmcm9tIFwiLi9saWIvbW9kdWxlcy9hdXRoL2F1dGguc2VydmljZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vbGliL21vZHVsZXMvYXV0aC9hdXRoLm1vZHVsZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vbGliL3NlcnZpY2VzL2NvbmZpZ3VyYXRpb24uc2VydmljZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vbGliL21vZGVscy9jb25maWd1cmF0aW9ucy5tb2RlbFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vbGliL2Z1bmN0aW9ucy9uYXYtZmlsdGVyLmZ1bmN0aW9uXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9saWIvZnVuY3Rpb25zL2Nvb2tpZS5mdW5jdGlvblwiO1xuZXhwb3J0ICogZnJvbSBcIi4vbGliL2Z1bmN0aW9ucy91cmwuZnVuY3Rpb25zXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9saWIvaW50ZXJjZXB0b3JzL2F1dGguaW50ZXJjZXB0b3JcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2xpYi9zZXJ2aWNlcy9sb2FkZXIuc2VydmljZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vbGliL21vZHVsZXMvbG9nZ2VyL2xvZ2dlci5tb2R1bGVcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2xpYi9tb2R1bGVzL2xvZ2dlci9sb2dnZXIuc2VydmljZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vbGliL3dpcy1jb21tb24ubW9kdWxlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9saWIvbW9kdWxlcy9sb2dnZXIvbG9nZ2VyLm1vZGVsXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9saWIvY29tcG9uZW50cy9zaWRlbmF2L3NpZGVuYXYuY29tcG9uZW50XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9saWIvc2VydmljZXMvbWZlLWNvbW11bmljYXRpb24uc2VydmljZVwiO1xuIl19
@@ -0,0 +1,400 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Injectable, NgModule, Component, Inject } from '@angular/core';
3
+ import * as i1$1 from '@angular/common';
4
+ import { CommonModule } from '@angular/common';
5
+ import * as i1$3 from '@angular/common/http';
6
+ import { HttpErrorResponse } from '@angular/common/http';
7
+ import { tap } from 'rxjs/operators';
8
+ import * as i1 from '@angular/router';
9
+ import * as i2 from 'mis-crystal-design-system/toast';
10
+ import * as i1$2 from '@angular/cdk/overlay';
11
+ import { OverlayConfig, OverlayModule } from '@angular/cdk/overlay';
12
+ import { ComponentPortal } from '@angular/cdk/portal';
13
+ import * as i2$1 from 'mis-crystal-design-system/loader';
14
+ import { LoaderModule } from 'mis-crystal-design-system/loader';
15
+
16
+ class AuthService {
17
+ constructor() { }
18
+ init(user) {
19
+ this.userDetails = user;
20
+ }
21
+ }
22
+ AuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: AuthService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
23
+ AuthService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: AuthService, providedIn: "root" });
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: AuthService, decorators: [{
25
+ type: Injectable,
26
+ args: [{
27
+ providedIn: "root"
28
+ }]
29
+ }], ctorParameters: function () { return []; } });
30
+
31
+ class AuthModule {
32
+ /**
33
+ *
34
+ * @returns ModuleWithProviders<AuthModule>
35
+ */
36
+ static forRoot() {
37
+ return {
38
+ ngModule: AuthModule,
39
+ providers: [AuthService]
40
+ };
41
+ }
42
+ }
43
+ AuthModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: AuthModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
44
+ AuthModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: AuthModule, imports: [CommonModule] });
45
+ AuthModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: AuthModule, imports: [CommonModule] });
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: AuthModule, decorators: [{
47
+ type: NgModule,
48
+ args: [{
49
+ declarations: [],
50
+ imports: [CommonModule],
51
+ providers: []
52
+ }]
53
+ }] });
54
+
55
+ class ConfigurationService {
56
+ constructor() { }
57
+ }
58
+ ConfigurationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ConfigurationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
59
+ ConfigurationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ConfigurationService, providedIn: "root" });
60
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ConfigurationService, decorators: [{
61
+ type: Injectable,
62
+ args: [{
63
+ providedIn: "root"
64
+ }]
65
+ }], ctorParameters: function () { return []; } });
66
+
67
+ const filterNavList = (navList, features) => {
68
+ return navList.filter(nav => {
69
+ const mustHave = nav.mustHaveBasedProperty && nav.mustHaveBasedProperty.every(basedProperty => features[basedProperty]);
70
+ const canHave = nav.canHaveBasedProperty && nav.canHaveBasedProperty.some(basedProperty => features[basedProperty]);
71
+ if ((mustHave || canHave) && nav.children) {
72
+ nav.children = filterNavList(nav.children, features);
73
+ }
74
+ return mustHave || canHave;
75
+ });
76
+ };
77
+
78
+ function getCookie(name) {
79
+ const cookies = {};
80
+ const cookieString = document.cookie;
81
+ cookieString.split("; ").forEach(cookie => {
82
+ const [key, value] = cookie.split("=");
83
+ cookies[key] = value;
84
+ });
85
+ return cookies[name] || undefined;
86
+ }
87
+ function setCookie(name, value, options) {
88
+ let cookieStr = `${name}=${value};`;
89
+ if (options) {
90
+ const optsSelected = Object.keys(options);
91
+ for (const opt of optsSelected) {
92
+ cookieStr += ` ${opt}${(typeof options[opt] === "string" && `=${options[opt]}`) || ""};`;
93
+ }
94
+ }
95
+ cookieStr += ';secure; SameSite=Strict;';
96
+ document.cookie = cookieStr;
97
+ }
98
+ function removeCookie(name, domain) {
99
+ setCookie(name, "", { expires: new Date(0).toUTCString(), domain });
100
+ }
101
+
102
+ function getQueryParam(queryString) {
103
+ const results = new RegExp("[?&]" + queryString + "=([^&#]*)").exec(window.location.href);
104
+ if (results === null) {
105
+ return null;
106
+ }
107
+ else {
108
+ return decodeURIComponent(results[1]) || null;
109
+ }
110
+ }
111
+
112
+ const TOKEN_NAME = "x-wis-token";
113
+ class AuthInterceptor {
114
+ constructor(route, toast) {
115
+ this.route = route;
116
+ this.toast = toast;
117
+ }
118
+ intercept(request, next) {
119
+ const paramsMap = this.route.snapshot.queryParamMap;
120
+ const buid = getQueryParam("buid") || getQueryParam("buId") || "";
121
+ const empGuid = getQueryParam("empGuid") || getQueryParam("empGuId") || getQueryParam("userId") || "";
122
+ // const source = getQueryParam("source");
123
+ const authToken = getQueryParam("auth-token");
124
+ const token = getCookie(`sso-wis-token-${buid}`);
125
+ const mobile_app_token = getCookie(TOKEN_NAME);
126
+ const cloneReq = request.clone({
127
+ setHeaders: Object.assign(Object.assign(Object.assign({ "x-tenant-id": buid, "x-user-id": empGuid }, (!!token && { [TOKEN_NAME]: token })), (!!authToken && { [TOKEN_NAME]: authToken })), (!!mobile_app_token && { [TOKEN_NAME]: mobile_app_token }))
128
+ });
129
+ return next.handle(cloneReq).pipe(tap(() => { }, err => {
130
+ if (err instanceof HttpErrorResponse && err.status === 401) {
131
+ this.toast.displayMsg("Your session has expired. Please login again.");
132
+ }
133
+ }));
134
+ }
135
+ }
136
+ AuthInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: AuthInterceptor, deps: [{ token: i1.ActivatedRoute }, { token: i2.ToastService }], target: i0.ɵɵFactoryTarget.Injectable });
137
+ AuthInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: AuthInterceptor });
138
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: AuthInterceptor, decorators: [{
139
+ type: Injectable
140
+ }], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i2.ToastService }]; } });
141
+
142
+ class LoaderComponent {
143
+ constructor() { }
144
+ ngOnInit() { }
145
+ }
146
+ LoaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LoaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
147
+ LoaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: LoaderComponent, selector: "mis-common-loader", ngImport: i0, template: "<div class=\"message-wrapper\" *ngIf=\"message; else noMessageLoader\">\n <span><mis-loader type=\"block\"></mis-loader></span>\n <p>{{ message }}</p>\n</div>\n<ng-template #noMessageLoader>\n <mis-loader></mis-loader>\n</ng-template>\n", styles: [".message-wrapper{max-width:343px;background-color:#fff;display:flex;flex-wrap:nowrap;align-items:center;padding:20px 16px;border-radius:6px}.message-wrapper span{position:relative;background-color:#fff;display:inline-block;width:40px;height:40px;margin-right:16px}.message-wrapper p{margin:0}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$1.LoaderComponent, selector: "mis-loader", inputs: ["mobileView"] }] });
148
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LoaderComponent, decorators: [{
149
+ type: Component,
150
+ args: [{ selector: "mis-common-loader", template: "<div class=\"message-wrapper\" *ngIf=\"message; else noMessageLoader\">\n <span><mis-loader type=\"block\"></mis-loader></span>\n <p>{{ message }}</p>\n</div>\n<ng-template #noMessageLoader>\n <mis-loader></mis-loader>\n</ng-template>\n", styles: [".message-wrapper{max-width:343px;background-color:#fff;display:flex;flex-wrap:nowrap;align-items:center;padding:20px 16px;border-radius:6px}.message-wrapper span{position:relative;background-color:#fff;display:inline-block;width:40px;height:40px;margin-right:16px}.message-wrapper p{margin:0}\n"] }]
151
+ }], ctorParameters: function () { return []; } });
152
+
153
+ /** @format */
154
+ class LoaderService {
155
+ constructor(overlay) {
156
+ this.overlay = overlay;
157
+ this.loading = false;
158
+ }
159
+ show(message) {
160
+ var _a;
161
+ this.loading = true;
162
+ if ((_a = this.overlayRef) === null || _a === void 0 ? void 0 : _a.hasAttached()) {
163
+ return;
164
+ }
165
+ const { positionStrategy, width, backdropClass, hasMessage } = this.calcLoaderProperties(!!message);
166
+ const config = new OverlayConfig({
167
+ hasBackdrop: true,
168
+ positionStrategy,
169
+ scrollStrategy: this.overlay.scrollStrategies.noop(),
170
+ width,
171
+ backdropClass
172
+ });
173
+ this.overlayRef = this.overlay.create(config);
174
+ const portal = new ComponentPortal(LoaderComponent, null);
175
+ const componentRef = this.overlayRef.attach(portal);
176
+ if (hasMessage) {
177
+ componentRef.instance.message = message;
178
+ }
179
+ }
180
+ hide() {
181
+ var _a, _b;
182
+ this.loading = false;
183
+ (_a = this.overlayRef) === null || _a === void 0 ? void 0 : _a.detach();
184
+ (_b = this.overlayRef) === null || _b === void 0 ? void 0 : _b.dispose();
185
+ }
186
+ calcLoaderProperties(hasMessage) {
187
+ const positionStrategy = this.overlay.position().global();
188
+ let width = "100vh";
189
+ let backdropClass = "cdk-overlay-transparent-backdrop";
190
+ if (hasMessage) {
191
+ width = "initial";
192
+ backdropClass = "wis-common-loader-bg";
193
+ positionStrategy.centerHorizontally().centerVertically();
194
+ }
195
+ else {
196
+ positionStrategy.top("0px").right("0px");
197
+ }
198
+ return { positionStrategy, width, backdropClass, hasMessage };
199
+ }
200
+ }
201
+ LoaderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LoaderService, deps: [{ token: i1$2.Overlay }], target: i0.ɵɵFactoryTarget.Injectable });
202
+ LoaderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LoaderService, providedIn: "root" });
203
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LoaderService, decorators: [{
204
+ type: Injectable,
205
+ args: [{
206
+ providedIn: "root"
207
+ }]
208
+ }], ctorParameters: function () { return [{ type: i1$2.Overlay }]; } });
209
+
210
+ /** @format */
211
+ const CONSTANTS_LOGGER = {
212
+ APP_NAME: "wisLoggerApp",
213
+ ENV_VAR: "wisLoggerEnv"
214
+ };
215
+
216
+ const envMap = {
217
+ dev: "https://wisbff-dev.moveinsync.com",
218
+ qa: "https://wisbff.stage.moveinsync.com",
219
+ prod: "https://wisempweb.moveinsync.com",
220
+ uat: "https://wisbff-uat.moveinsync.com",
221
+ "prod-green": "https://wisempweb-green.moveinsync.com",
222
+ "prod-beta": "https://wisempweb-beta.workinsync.io",
223
+ "prod-eu": "https://wisempweb.eu.moveinsync.com",
224
+ "prod-eu-green": "https://wisempweb-green.eu.moveinsync.com"
225
+ };
226
+ function environmentHandler(env) {
227
+ if (!env) {
228
+ return "/bff";
229
+ }
230
+ return envMap[env];
231
+ }
232
+
233
+ class LoggerService {
234
+ constructor(http, appName, appEnv) {
235
+ this.http = http;
236
+ this.appName = appName;
237
+ this.appEnv = appEnv;
238
+ this.cookies = false;
239
+ }
240
+ useCookies(useCookies) {
241
+ this.cookies = useCookies;
242
+ }
243
+ logRequest(data, logLevel) {
244
+ const request = {
245
+ data,
246
+ cookies: this.cookies ? document.cookie : undefined,
247
+ logLevel
248
+ };
249
+ this.postLog(request);
250
+ }
251
+ postLog(request) {
252
+ const url = `${environmentHandler(this.appEnv)}/report-log/${this.appName}`;
253
+ this.http.post(`${url}`, request).subscribe();
254
+ }
255
+ info(data) {
256
+ this.logRequest(data, "info");
257
+ }
258
+ warn(data) {
259
+ this.logRequest(data, "warn");
260
+ }
261
+ error(data, componentName, serviceUrl) {
262
+ this.logRequest(Object.assign(Object.assign({}, data), { componentName, serviceUrl }), "error");
263
+ }
264
+ }
265
+ LoggerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LoggerService, deps: [{ token: i1$3.HttpClient }, { token: CONSTANTS_LOGGER.APP_NAME }, { token: CONSTANTS_LOGGER.ENV_VAR }], target: i0.ɵɵFactoryTarget.Injectable });
266
+ LoggerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LoggerService, providedIn: "root" });
267
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LoggerService, decorators: [{
268
+ type: Injectable,
269
+ args: [{
270
+ providedIn: "root"
271
+ }]
272
+ }], ctorParameters: function () {
273
+ return [{ type: i1$3.HttpClient }, { type: undefined, decorators: [{
274
+ type: Inject,
275
+ args: [CONSTANTS_LOGGER.APP_NAME]
276
+ }] }, { type: undefined, decorators: [{
277
+ type: Inject,
278
+ args: [CONSTANTS_LOGGER.ENV_VAR]
279
+ }] }];
280
+ } });
281
+
282
+ class LoggerModule {
283
+ /**
284
+ *
285
+ * @param appName any app name eg. FAQ, Floor Plan, In App Popup, etc.
286
+ * @param env "dev" | "qa" | "uat" | "prod" | "prod-beta" | "prod-green" | "prod-eu" | "prod-eu-green" | undefined
287
+ * @returns ModuleWithProviders<LoggerModule>
288
+ */
289
+ static forChild(appName, env) {
290
+ return {
291
+ ngModule: LoggerModule,
292
+ providers: [
293
+ {
294
+ provide: CONSTANTS_LOGGER.APP_NAME,
295
+ useValue: appName
296
+ },
297
+ {
298
+ provide: CONSTANTS_LOGGER.ENV_VAR,
299
+ useValue: env
300
+ },
301
+ LoggerService
302
+ ]
303
+ };
304
+ }
305
+ }
306
+ LoggerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LoggerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
307
+ LoggerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: LoggerModule, imports: [CommonModule] });
308
+ LoggerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LoggerModule, imports: [CommonModule] });
309
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LoggerModule, decorators: [{
310
+ type: NgModule,
311
+ args: [{
312
+ declarations: [],
313
+ imports: [CommonModule],
314
+ providers: []
315
+ }]
316
+ }] });
317
+
318
+ /** @format */
319
+ const CONSTANTS_WIS_COMMON = {
320
+ ENV_VAR: "wisCommonEnvironment"
321
+ };
322
+
323
+ const API_URLS = {
324
+ CONFIGURATIONS: "configurations"
325
+ };
326
+ class HttpService {
327
+ constructor(env, auth, http) {
328
+ this.env = env;
329
+ this.auth = auth;
330
+ this.http = http;
331
+ }
332
+ getConfigurations() {
333
+ return this.http.get(`${this.env.empExp}/${this.auth.userDetails.buid}/${API_URLS.CONFIGURATIONS}`);
334
+ }
335
+ }
336
+ HttpService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HttpService, deps: [{ token: CONSTANTS_WIS_COMMON }, { token: AuthService }, { token: i1$3.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
337
+ HttpService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HttpService });
338
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HttpService, decorators: [{
339
+ type: Injectable
340
+ }], ctorParameters: function () {
341
+ return [{ type: undefined, decorators: [{
342
+ type: Inject,
343
+ args: [CONSTANTS_WIS_COMMON]
344
+ }] }, { type: AuthService }, { type: i1$3.HttpClient }];
345
+ } });
346
+
347
+ class SidenavComponent {
348
+ constructor() { }
349
+ ngOnInit() { }
350
+ }
351
+ SidenavComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SidenavComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
352
+ SidenavComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SidenavComponent, selector: "wis-common-sidenav", ngImport: i0, template: "<div class=\"wis-sidenav-wrapper\">\n <div class=\"wis-sidenav-header\">\n <div class=\"wis-sidenav-header-logo\">\n <img src=\"assets/sidenav/assets/Wis-icon.svg\" alt=\"\" />\n </div>\n <div class=\"wis-sidenav-header-title\">\n <h1>WIS</h1>\n </div>\n </div>\n <div class=\"wis-sidenav-body\">\n <div class=\"wis-sidenav-body-item\">\n <div class=\"wis-sidenav-body-item-icon\">\n <i class=\"fas fa-home\"></i>\n </div>\n <div class=\"wis-sidenav-body-item-text\">\n <h3>Home</h3>\n </div>\n </div>\n <div class=\"wis-sidenav-body-item\">\n <div class=\"wis-sidenav-body-item-icon\">\n <i class=\"fas fa-user\"></i>\n </div>\n <div class=\"wis-sidenav-body-item-text\">\n <h3>Profile</h3>\n </div>\n </div>\n <div class=\"wis-sidenav-body-item\">\n <div class=\"wis-sidenav-body-item-icon\">\n <i class=\"fas fa-users\"></i>\n </div>\n <div class=\"wis-sidenav-body-item-text\">\n <h3>Users</h3>\n </div>\n </div>\n <div class=\"wis-sidenav-body-item\">\n <div class=\"wis-sidenav-body-item-icon\">\n <i class=\"fas fa-cog\"></i>\n </div>\n <div class=\"wis-sidenav-body-item-text\">\n <h3>Settings</h3>\n </div>\n </div>\n </div>\n</div>\n", styles: [".wis-sidenav-wrapper{width:72px;border-right:1px solid #e0e0e0}\n"] });
353
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SidenavComponent, decorators: [{
354
+ type: Component,
355
+ args: [{ selector: "wis-common-sidenav", template: "<div class=\"wis-sidenav-wrapper\">\n <div class=\"wis-sidenav-header\">\n <div class=\"wis-sidenav-header-logo\">\n <img src=\"assets/sidenav/assets/Wis-icon.svg\" alt=\"\" />\n </div>\n <div class=\"wis-sidenav-header-title\">\n <h1>WIS</h1>\n </div>\n </div>\n <div class=\"wis-sidenav-body\">\n <div class=\"wis-sidenav-body-item\">\n <div class=\"wis-sidenav-body-item-icon\">\n <i class=\"fas fa-home\"></i>\n </div>\n <div class=\"wis-sidenav-body-item-text\">\n <h3>Home</h3>\n </div>\n </div>\n <div class=\"wis-sidenav-body-item\">\n <div class=\"wis-sidenav-body-item-icon\">\n <i class=\"fas fa-user\"></i>\n </div>\n <div class=\"wis-sidenav-body-item-text\">\n <h3>Profile</h3>\n </div>\n </div>\n <div class=\"wis-sidenav-body-item\">\n <div class=\"wis-sidenav-body-item-icon\">\n <i class=\"fas fa-users\"></i>\n </div>\n <div class=\"wis-sidenav-body-item-text\">\n <h3>Users</h3>\n </div>\n </div>\n <div class=\"wis-sidenav-body-item\">\n <div class=\"wis-sidenav-body-item-icon\">\n <i class=\"fas fa-cog\"></i>\n </div>\n <div class=\"wis-sidenav-body-item-text\">\n <h3>Settings</h3>\n </div>\n </div>\n </div>\n</div>\n", styles: [".wis-sidenav-wrapper{width:72px;border-right:1px solid #e0e0e0}\n"] }]
356
+ }], ctorParameters: function () { return []; } });
357
+
358
+ class WisCommonModule {
359
+ static forRoot(env) {
360
+ return {
361
+ ngModule: WisCommonModule,
362
+ providers: [{ provide: CONSTANTS_WIS_COMMON, useValue: env }, ConfigurationService, LoaderService]
363
+ };
364
+ }
365
+ }
366
+ WisCommonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: WisCommonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
367
+ WisCommonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: WisCommonModule, declarations: [LoaderComponent, SidenavComponent], imports: [CommonModule, OverlayModule, LoaderModule], exports: [SidenavComponent] });
368
+ WisCommonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: WisCommonModule, providers: [HttpService], imports: [CommonModule, OverlayModule, LoaderModule] });
369
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: WisCommonModule, decorators: [{
370
+ type: NgModule,
371
+ args: [{
372
+ declarations: [LoaderComponent, SidenavComponent],
373
+ imports: [CommonModule, OverlayModule, LoaderModule],
374
+ providers: [HttpService],
375
+ exports: [SidenavComponent]
376
+ }]
377
+ }] });
378
+
379
+ class MfeCommunicationService {
380
+ constructor() { }
381
+ }
382
+ MfeCommunicationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: MfeCommunicationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
383
+ MfeCommunicationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: MfeCommunicationService, providedIn: 'root' });
384
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: MfeCommunicationService, decorators: [{
385
+ type: Injectable,
386
+ args: [{
387
+ providedIn: 'root'
388
+ }]
389
+ }], ctorParameters: function () { return []; } });
390
+
391
+ /*
392
+ * Public API Surface of wis-common
393
+ */
394
+
395
+ /**
396
+ * Generated bundle index. Do not edit.
397
+ */
398
+
399
+ export { AuthInterceptor, AuthModule, AuthService, ConfigurationService, LoaderService, LoggerModule, LoggerService, MfeCommunicationService, SidenavComponent, WisCommonModule, filterNavList, getCookie, getQueryParam, removeCookie, setCookie };
400
+ //# sourceMappingURL=mis-wis-common.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mis-wis-common.mjs","sources":["../../../libraries/wis-common/src/lib/modules/auth/auth.service.ts","../../../libraries/wis-common/src/lib/modules/auth/auth.module.ts","../../../libraries/wis-common/src/lib/services/configuration.service.ts","../../../libraries/wis-common/src/lib/functions/nav-filter.function.ts","../../../libraries/wis-common/src/lib/functions/cookie.function.ts","../../../libraries/wis-common/src/lib/functions/url.functions.ts","../../../libraries/wis-common/src/lib/interceptors/auth.interceptor.ts","../../../libraries/wis-common/src/lib/components/loader/loader.component.ts","../../../libraries/wis-common/src/lib/components/loader/loader.component.html","../../../libraries/wis-common/src/lib/services/loader.service.ts","../../../libraries/wis-common/src/lib/modules/logger/logger.constant.ts","../../../libraries/wis-common/src/lib/modules/logger/logger.functions.ts","../../../libraries/wis-common/src/lib/modules/logger/logger.service.ts","../../../libraries/wis-common/src/lib/modules/logger/logger.module.ts","../../../libraries/wis-common/src/lib/constants/emp-web-exp.constants.ts","../../../libraries/wis-common/src/lib/services/http.service.ts","../../../libraries/wis-common/src/lib/components/sidenav/sidenav.component.ts","../../../libraries/wis-common/src/lib/components/sidenav/sidenav.component.html","../../../libraries/wis-common/src/lib/wis-common.module.ts","../../../libraries/wis-common/src/lib/services/mfe-communication.service.ts","../../../libraries/wis-common/src/public-api.ts","../../../libraries/wis-common/src/mis-wis-common.ts"],"sourcesContent":["import { Inject, Injectable } from \"@angular/core\";\nimport { IUserInfo } from \"./auth.model\";\n\n@Injectable({\n providedIn: \"root\"\n})\nexport class AuthService {\n userDetails: IUserInfo;\n\n constructor() {}\n\n init(user: IUserInfo) {\n this.userDetails = user;\n }\n}\n","import { ErrorHandler, ModuleWithProviders, NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\nimport { AuthService } from \"./auth.service\";\n\n@NgModule({\n declarations: [],\n imports: [CommonModule],\n providers: []\n})\nexport class AuthModule {\n /**\n *\n * @returns ModuleWithProviders<AuthModule>\n */\n static forRoot(): ModuleWithProviders<AuthModule> {\n return {\n ngModule: AuthModule,\n providers: [AuthService]\n };\n }\n}\n","import { Injectable } from \"@angular/core\";\n\n@Injectable({\n providedIn: \"root\"\n})\nexport class ConfigurationService {\n constructor() {}\n}\n","import { NsWISConfigurations } from \"../models/configurations.model\";\n\nexport const filterNavList = (\n navList: NsWISConfigurations.ISidenavLink[],\n features: NsWISConfigurations.IFeaturesMap\n): NsWISConfigurations.ISidenavLink[] => {\n return navList.filter(nav => {\n const mustHave = nav.mustHaveBasedProperty && nav.mustHaveBasedProperty.every(basedProperty => features[basedProperty]);\n const canHave = nav.canHaveBasedProperty && nav.canHaveBasedProperty.some(basedProperty => features[basedProperty]);\n if ((mustHave || canHave) && nav.children) {\n nav.children = filterNavList(nav.children, features);\n }\n return mustHave || canHave;\n });\n};\n","interface ICookieOptions {\n expires?: string;\n path?: string;\n domain?: string;\n \"Max-Age\"?: string;\n Secure?: boolean;\n HttpOnly?: boolean;\n SameSite?: \"Strict\" | \"Lax\" | \"None\";\n}\n\nexport function getCookie(name: string): string {\n const cookies = {};\n const cookieString = document.cookie;\n cookieString.split(\"; \").forEach(cookie => {\n const [key, value] = cookie.split(\"=\");\n cookies[key] = value;\n });\n return cookies[name] || undefined;\n}\n\nexport function setCookie(name: string, value: string, options?: ICookieOptions): void {\n let cookieStr = `${name}=${value};`;\n if (options) {\n const optsSelected = Object.keys(options);\n for (const opt of optsSelected) {\n cookieStr += ` ${opt}${(typeof options[opt] === \"string\" && `=${options[opt]}`) || \"\"};`;\n }\n }\n cookieStr += ';secure; SameSite=Strict;'\n document.cookie = cookieStr;\n}\n\nexport function removeCookie(name: string, domain?: string): void {\n setCookie(name, \"\", { expires: new Date(0).toUTCString(), domain });\n}\n","export function getQueryParam(queryString: string): string | null {\n const results = new RegExp(\"[?&]\" + queryString + \"=([^&#]*)\").exec(window.location.href);\n if (results === null) {\n return null;\n } else {\n return decodeURIComponent(results[1]) || null;\n }\n}\n","import { Injectable } from \"@angular/core\";\nimport { HttpErrorResponse, HttpHandler, HttpInterceptor, HttpRequest } from \"@angular/common/http\";\nimport { tap } from \"rxjs/operators\";\nimport { ToastService } from \"mis-crystal-design-system/toast\";\nimport { ActivatedRoute } from \"@angular/router\";\nimport { getCookie } from \"../functions/cookie.function\";\nimport { getQueryParam } from \"../functions/url.functions\";\n\nconst TOKEN_NAME = \"x-wis-token\";\n@Injectable()\nexport class AuthInterceptor implements HttpInterceptor {\n constructor(private route: ActivatedRoute, private toast: ToastService) {}\n\n intercept(request: HttpRequest<any>, next: HttpHandler) {\n const paramsMap = this.route.snapshot.queryParamMap;\n const buid = getQueryParam(\"buid\") || getQueryParam(\"buId\") || \"\";\n const empGuid = getQueryParam(\"empGuid\") || getQueryParam(\"empGuId\") || getQueryParam(\"userId\") || \"\";\n // const source = getQueryParam(\"source\");\n const authToken = getQueryParam(\"auth-token\");\n const token = getCookie(`sso-wis-token-${buid}`);\n const mobile_app_token = getCookie(TOKEN_NAME);\n const cloneReq = request.clone({\n setHeaders: {\n \"x-tenant-id\": buid,\n \"x-user-id\": empGuid,\n ...(!!token && { [TOKEN_NAME]: token }),\n ...(!!authToken && { [TOKEN_NAME]: authToken }),\n ...(!!mobile_app_token && { [TOKEN_NAME]: mobile_app_token })\n }\n });\n return next.handle(cloneReq).pipe(\n tap(\n () => {},\n err => {\n if (err instanceof HttpErrorResponse && err.status === 401) {\n this.toast.displayMsg(\"Your session has expired. Please login again.\");\n }\n }\n )\n );\n }\n}\n","import { Component, OnInit } from \"@angular/core\";\n\n@Component({\n selector: \"mis-common-loader\",\n templateUrl: \"./loader.component.html\",\n styleUrls: [\"./loader.component.scss\"]\n})\nexport class LoaderComponent implements OnInit {\n message: string;\n constructor() {}\n\n ngOnInit(): void {}\n}\n","<div class=\"message-wrapper\" *ngIf=\"message; else noMessageLoader\">\n <span><mis-loader type=\"block\"></mis-loader></span>\n <p>{{ message }}</p>\n</div>\n<ng-template #noMessageLoader>\n <mis-loader></mis-loader>\n</ng-template>\n","/** @format */\n\nimport { GlobalPositionStrategy, Overlay, OverlayConfig, OverlayRef } from \"@angular/cdk/overlay\";\nimport { ComponentPortal } from \"@angular/cdk/portal\";\nimport { Injectable } from \"@angular/core\";\nimport { LoaderComponent } from \"../components/loader/loader.component\";\n\n@Injectable({\n providedIn: \"root\"\n})\nexport class LoaderService {\n private overlayRef: OverlayRef;\n public loading = false;\n\n constructor(private overlay: Overlay) {}\n\n show(message?: string): void {\n this.loading = true;\n if (this.overlayRef?.hasAttached()) {\n return;\n }\n const { positionStrategy, width, backdropClass, hasMessage } = this.calcLoaderProperties(!!message);\n const config = new OverlayConfig({\n hasBackdrop: true,\n positionStrategy,\n scrollStrategy: this.overlay.scrollStrategies.noop(),\n width,\n backdropClass\n });\n this.overlayRef = this.overlay.create(config);\n const portal = new ComponentPortal(LoaderComponent, null);\n const componentRef = this.overlayRef.attach(portal);\n if (hasMessage) {\n componentRef.instance.message = message;\n }\n }\n\n hide(): void {\n this.loading = false;\n this.overlayRef?.detach();\n this.overlayRef?.dispose();\n }\n\n private calcLoaderProperties(hasMessage: boolean): {\n positionStrategy: GlobalPositionStrategy;\n width: string;\n backdropClass: string;\n hasMessage: boolean;\n } {\n const positionStrategy = this.overlay.position().global();\n let width = \"100vh\";\n let backdropClass = \"cdk-overlay-transparent-backdrop\";\n if (hasMessage) {\n width = \"initial\";\n backdropClass = \"wis-common-loader-bg\";\n positionStrategy.centerHorizontally().centerVertically();\n } else {\n positionStrategy.top(\"0px\").right(\"0px\");\n }\n return { positionStrategy, width, backdropClass, hasMessage };\n }\n}\n","/** @format */\n\nexport const CONSTANTS_LOGGER = {\n APP_NAME: \"wisLoggerApp\",\n ENV_VAR: \"wisLoggerEnv\"\n};\n","import { TEnvName } from \"./logger.model\";\nconst envMap = {\n dev: \"https://wisbff-dev.moveinsync.com\",\n qa: \"https://wisbff.stage.moveinsync.com\",\n prod: \"https://wisempweb.moveinsync.com\",\n uat: \"https://wisbff-uat.moveinsync.com\",\n \"prod-green\": \"https://wisempweb-green.moveinsync.com\",\n \"prod-beta\": \"https://wisempweb-beta.workinsync.io\",\n \"prod-eu\": \"https://wisempweb.eu.moveinsync.com\",\n \"prod-eu-green\": \"https://wisempweb-green.eu.moveinsync.com\"\n};\nexport function environmentHandler(env: TEnvName) {\n if (!env) {\n return \"/bff\";\n }\n return envMap[env];\n}\n","import { TEnvName } from \"./logger.model\";\nimport { CONSTANTS_LOGGER } from \"./logger.constant\";\nimport { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\nimport { environmentHandler } from \"./logger.functions\";\n@Injectable({\n providedIn: \"root\"\n})\nexport class LoggerService {\n private cookies: boolean = false;\n\n constructor(\n private http: HttpClient,\n @Inject(CONSTANTS_LOGGER.APP_NAME) private appName: string,\n @Inject(CONSTANTS_LOGGER.ENV_VAR) private appEnv: TEnvName\n ) {}\n\n useCookies(useCookies: boolean) {\n this.cookies = useCookies;\n }\n\n private logRequest(data: any, logLevel: \"info\" | \"error\" | \"warn\") {\n const request = {\n data,\n cookies: this.cookies ? document.cookie : undefined,\n logLevel\n };\n this.postLog(request);\n }\n\n private postLog(request) {\n const url = `${environmentHandler(this.appEnv)}/report-log/${this.appName}`;\n this.http.post(`${url}`, request).subscribe();\n }\n\n info(data: any) {\n this.logRequest(data, \"info\");\n }\n\n warn(data: any) {\n this.logRequest(data, \"warn\");\n }\n\n error(data: any, componentName: string, serviceUrl?: string) {\n this.logRequest({ ...data, componentName, serviceUrl }, \"error\");\n }\n}\n","import { CONSTANTS_LOGGER } from \"./logger.constant\";\nimport { ErrorHandler, ModuleWithProviders, NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\nimport { LoggerService } from \"./logger.service\";\nimport { TEnvName } from \"./logger.model\";\n\n@NgModule({\n declarations: [],\n imports: [CommonModule],\n providers: []\n})\nexport class LoggerModule {\n /**\n *\n * @param appName any app name eg. FAQ, Floor Plan, In App Popup, etc.\n * @param env \"dev\" | \"qa\" | \"uat\" | \"prod\" | \"prod-beta\" | \"prod-green\" | \"prod-eu\" | \"prod-eu-green\" | undefined\n * @returns ModuleWithProviders<LoggerModule>\n */\n static forChild(appName: string, env?: TEnvName): ModuleWithProviders<LoggerModule> {\n return {\n ngModule: LoggerModule,\n providers: [\n {\n provide: CONSTANTS_LOGGER.APP_NAME,\n useValue: appName\n },\n {\n provide: CONSTANTS_LOGGER.ENV_VAR,\n useValue: env\n },\n LoggerService\n ]\n };\n }\n}\n","/** @format */\n\nexport const CONSTANTS_WIS_COMMON = {\n ENV_VAR: \"wisCommonEnvironment\"\n};\n","import { HttpClient } from \"@angular/common/http\";\nimport { Inject, Injectable } from \"@angular/core\";\nimport { Observable } from \"rxjs\";\nimport { CONSTANTS_WIS_COMMON } from \"../constants/emp-web-exp.constants\";\nimport { NsWISConfigurations } from \"../models/configurations.model\";\nimport { NsWISCommon } from \"../models/env.model\";\nimport { AuthService } from \"../modules/auth/auth.service\";\n\nconst API_URLS = {\n CONFIGURATIONS: \"configurations\"\n};\n\n@Injectable()\nexport class HttpService {\n constructor(@Inject(CONSTANTS_WIS_COMMON) public env: NsWISCommon.IEnv, private auth: AuthService, private http: HttpClient) {}\n\n getConfigurations(): Observable<NsWISConfigurations.IConfigurations> {\n return this.http.get<NsWISConfigurations.IConfigurations>(`${this.env.empExp}/${this.auth.userDetails.buid}/${API_URLS.CONFIGURATIONS}`);\n }\n}\n","import { Component, OnInit } from \"@angular/core\";\n\n@Component({\n selector: \"wis-common-sidenav\",\n templateUrl: \"./sidenav.component.html\",\n styleUrls: [\"./sidenav.component.scss\"]\n})\nexport class SidenavComponent implements OnInit {\n constructor() {}\n\n ngOnInit(): void {}\n}\n","<div class=\"wis-sidenav-wrapper\">\n <div class=\"wis-sidenav-header\">\n <div class=\"wis-sidenav-header-logo\">\n <img src=\"assets/sidenav/assets/Wis-icon.svg\" alt=\"\" />\n </div>\n <div class=\"wis-sidenav-header-title\">\n <h1>WIS</h1>\n </div>\n </div>\n <div class=\"wis-sidenav-body\">\n <div class=\"wis-sidenav-body-item\">\n <div class=\"wis-sidenav-body-item-icon\">\n <i class=\"fas fa-home\"></i>\n </div>\n <div class=\"wis-sidenav-body-item-text\">\n <h3>Home</h3>\n </div>\n </div>\n <div class=\"wis-sidenav-body-item\">\n <div class=\"wis-sidenav-body-item-icon\">\n <i class=\"fas fa-user\"></i>\n </div>\n <div class=\"wis-sidenav-body-item-text\">\n <h3>Profile</h3>\n </div>\n </div>\n <div class=\"wis-sidenav-body-item\">\n <div class=\"wis-sidenav-body-item-icon\">\n <i class=\"fas fa-users\"></i>\n </div>\n <div class=\"wis-sidenav-body-item-text\">\n <h3>Users</h3>\n </div>\n </div>\n <div class=\"wis-sidenav-body-item\">\n <div class=\"wis-sidenav-body-item-icon\">\n <i class=\"fas fa-cog\"></i>\n </div>\n <div class=\"wis-sidenav-body-item-text\">\n <h3>Settings</h3>\n </div>\n </div>\n </div>\n</div>\n","import { ModuleWithProviders, NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\nimport { ConfigurationService } from \"./services/configuration.service\";\nimport { NsWISCommon } from \"./models/env.model\";\nimport { CONSTANTS_WIS_COMMON } from \"./constants/emp-web-exp.constants\";\nimport { HttpService } from \"./services/http.service\";\nimport { LoaderModule } from \"mis-crystal-design-system/loader\";\nimport { LoaderComponent } from \"./components/loader/loader.component\";\nimport { LoaderService } from \"./services/loader.service\";\nimport { OverlayModule } from \"@angular/cdk/overlay\";\nimport { SidenavComponent } from \"./components/sidenav/sidenav.component\";\n\n@NgModule({\n declarations: [LoaderComponent, SidenavComponent],\n imports: [CommonModule, OverlayModule, LoaderModule],\n providers: [HttpService],\n exports: [SidenavComponent]\n})\nexport class WisCommonModule {\n static forRoot(env: NsWISCommon.IEnv): ModuleWithProviders<WisCommonModule> {\n return {\n ngModule: WisCommonModule,\n providers: [{ provide: CONSTANTS_WIS_COMMON, useValue: env }, ConfigurationService, LoaderService]\n };\n }\n}\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MfeCommunicationService {\n\n constructor() { }\n}\n","/*\n * Public API Surface of wis-common\n */\n\nexport * from \"./lib/modules/auth/auth.service\";\nexport * from \"./lib/modules/auth/auth.module\";\nexport * from \"./lib/services/configuration.service\";\nexport * from \"./lib/models/configurations.model\";\nexport * from \"./lib/functions/nav-filter.function\";\nexport * from \"./lib/functions/cookie.function\";\nexport * from \"./lib/functions/url.functions\";\nexport * from \"./lib/interceptors/auth.interceptor\";\nexport * from \"./lib/services/loader.service\";\nexport * from \"./lib/modules/logger/logger.module\";\nexport * from \"./lib/modules/logger/logger.service\";\nexport * from \"./lib/wis-common.module\";\nexport * from \"./lib/modules/logger/logger.model\";\nexport * from \"./lib/components/sidenav/sidenav.component\";\nexport * from \"./lib/services/mfe-communication.service\";\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i1.AuthService"],"mappings":"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"}