@bnsights/bbsf-utilities 1.0.5 → 1.0.6
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.
- package/bnsights-bbsf-utilities-1.0.6.tgz +0 -0
- package/bnsights-bbsf-utilities.metadata.json +1 -1
- package/bundles/bnsights-bbsf-utilities.umd.js +6 -2
- package/bundles/bnsights-bbsf-utilities.umd.js.map +1 -1
- package/esm2015/lib/shared/services/requesthandler.service.js +6 -2
- package/esm2015/lib/shared/services/utility.service.js +3 -3
- package/fesm2015/bnsights-bbsf-utilities.js +7 -3
- package/fesm2015/bnsights-bbsf-utilities.js.map +1 -1
- package/lib/shared/services/utility.service.d.ts +2 -2
- package/package.json +1 -1
- package/bnsights-bbsf-utilities-1.0.5.tgz +0 -0
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"__symbolic":"module","version":4,"metadata":{"AppInjector":{"__symbolic":"error","message":"Variable not initialized","line":17,"character":11,"module":"./lib/bbsf-utilities.module"},"BBSFUtilitiesModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":19,"character":1},"arguments":[{"declarations":[],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":23,"character":4},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"ng-block-ui","name":"BlockUIModule","line":24,"character":4},"member":"forRoot"}},{"__symbolic":"reference","module":"@angular/http","name":"HttpModule","line":25,"character":4},{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":26,"character":4},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"ngx-toastr","name":"ToastrModule","line":27,"character":4},"member":"forRoot"}}],"exports":[],"providers":[{"__symbolic":"reference","name":"UtilityService"},{"__symbolic":"reference","name":"EnvironmentService"},{"__symbolic":"reference","name":"AuthService"},{"__symbolic":"reference","name":"RequestHandlerService"},{"__symbolic":"reference","name":"StylesBundleService"},{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService","line":39,"character":4},{"__symbolic":"reference","name":"BBSFTranslateService"},{"__symbolic":"reference","name":"ControlValidationService"},{"__symbolic":"reference","name":"MasterLayoutService"}]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":47,"character":32}]}]}},"UtilityService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":10,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"blockUI":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"ng-block-ui","name":"BlockUI","line":16,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"BBSFTranslateService"},{"__symbolic":"reference","name":"AuthService"},{"__symbolic":"reference","name":"EnvironmentService"}]}],"getResourceValue":[{"__symbolic":"method"}],"getCurrentLanguage":[{"__symbolic":"method"}],"isCurrentLanguageEnglish":[{"__symbolic":"method"}],"isCurrentLanguageArabic":[{"__symbolic":"method"}],"notifySuccessMessage":[{"__symbolic":"method"}],"notifyErrorMessage":[{"__symbolic":"method"}],"notifyWarningMessage":[{"__symbolic":"method"}],"startBlockUI":[{"__symbolic":"method"}],"stopBlockUI":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"EnvironmentService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":3,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"getEnvironmentObject":[{"__symbolic":"method"}],"getBaseUrl":[{"__symbolic":"method"}],"getApiUrl":[{"__symbolic":"method"}],"getProductionMode":[{"__symbolic":"method"}],"getDefaultLanguage":[{"__symbolic":"method"}],"getIdentityServerUrl":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"RequestHandlerService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":12,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClient","line":19,"character":20},{"__symbolic":"reference","name":"AuthService"},{"__symbolic":"reference","name":"EnvironmentService"},{"__symbolic":"reference","name":"UtilityService"},{"__symbolic":"reference","name":"BBSFTranslateService"}]}],"getLuckyNumber":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}],"post":[{"__symbolic":"method"}],"delete":[{"__symbolic":"method"}],"put":[{"__symbolic":"method"}],"destroyHandler":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"StylesBundleService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":10,"character":15},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":10,"character":22}]}],null],"parameters":[{"__symbolic":"error","message":"Could not resolve type","line":10,"character":50,"context":{"typeName":"Document"},"module":"./lib/shared/services/stylesbundle.service"},{"__symbolic":"reference","name":"BBSFTranslateService"}]}],"loadThemes":[{"__symbolic":"method"}],"loadStyleBundle":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"BBSFTranslateService":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService","line":6,"character":42},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":3,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{},"statics":{"ɵprov":{}}},"ControlValidationService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":12,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"UtilityService"}]}],"blockUI":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"ng-block-ui","name":"BlockUI","line":27,"character":3}}]}],"showGlobalError":[{"__symbolic":"method"}],"RemoveGlobalError":[{"__symbolic":"method"}],"showInputErro":[{"__symbolic":"method"}],"removeElementsByClass":[{"__symbolic":"method"}],"renderServerErrors":[{"__symbolic":"method"}],"hasControlName":[{"__symbolic":"method"}],"setFieldError":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"MasterLayoutService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":8,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":13,"character":32},{"__symbolic":"reference","name":"RequestHandlerService"},{"__symbolic":"reference","name":"AuthService"},{"__symbolic":"reference","name":"StylesBundleService"},{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService","line":13,"character":177}]}],"switchLang":[{"__symbolic":"method"}],"reloadComponent":[{"__symbolic":"method"}],"changeLanguage":[{"__symbolic":"method"}],"updateUserInfo":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"TranslationResolverService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"BBSFTranslateService"}]}],"resolve":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"environment":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"Object"},"member":"assign"},"arguments":[{},{"__symbolic":"select","expression":{"__symbolic":"reference","name":"window"},"member":"Envirnment"}]},"AuthService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":8,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClient","line":40,"character":28},{"__symbolic":"reference","name":"EnvironmentService"},{"__symbolic":"reference","name":"BBSFTranslateService"}]}],"login":[{"__symbolic":"method"}],"getUser":[{"__symbolic":"method"}],"storUser":[{"__symbolic":"method"}],"revokeAccessToken":[{"__symbolic":"method"}],"signinSilent":[{"__symbolic":"method"}],"completeAuthentication":[{"__symbolic":"method"}],"refreshToken":[{"__symbolic":"method"}],"getCurrentUser":[{"__symbolic":"method"}],"isAuthenticated":[{"__symbolic":"method"}],"isUserInRole":[{"__symbolic":"method"}],"authorizationHeaderValue":[{"__symbolic":"method"}],"name":[{"__symbolic":"method"}],"setUrl":[{"__symbolic":"method"}],"getUrl":[{"__symbolic":"method"}],"signinSilentCallback":[{"__symbolic":"method"}],"signout":[{"__symbolic":"method"}]},"statics":{"user":null,"ɵprov":{}}},"RequestOptionsModel":{"__symbolic":"class","members":{}}},"origins":{"AppInjector":"./lib/bbsf-utilities.module","BBSFUtilitiesModule":"./lib/bbsf-utilities.module","UtilityService":"./lib/shared/services/utility.service","EnvironmentService":"./lib/shared/services/environment.service","RequestHandlerService":"./lib/shared/services/requesthandler.service","StylesBundleService":"./lib/shared/services/stylesbundle.service","BBSFTranslateService":"./lib/shared/services/translate.service","ControlValidationService":"./lib/shared/services/controlvalidation.service","MasterLayoutService":"./lib/shared/services/masterlayout.service","TranslationResolverService":"./lib/shared/services/translationresolver.service","environment":"./lib/shared/config/environment","AuthService":"./lib/shared/authentication/auth.service","RequestOptionsModel":"./lib/shared/models/RequestOptionsModel"},"importAs":"@bnsights/bbsf-utilities"}
|
|
1
|
+
{"__symbolic":"module","version":4,"metadata":{"AppInjector":{"__symbolic":"error","message":"Variable not initialized","line":17,"character":11,"module":"./lib/bbsf-utilities.module"},"BBSFUtilitiesModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":19,"character":1},"arguments":[{"declarations":[],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":23,"character":4},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"ng-block-ui","name":"BlockUIModule","line":24,"character":4},"member":"forRoot"}},{"__symbolic":"reference","module":"@angular/http","name":"HttpModule","line":25,"character":4},{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":26,"character":4},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"ngx-toastr","name":"ToastrModule","line":27,"character":4},"member":"forRoot"}}],"exports":[],"providers":[{"__symbolic":"reference","name":"UtilityService"},{"__symbolic":"reference","name":"EnvironmentService"},{"__symbolic":"reference","name":"AuthService"},{"__symbolic":"reference","name":"RequestHandlerService"},{"__symbolic":"reference","name":"StylesBundleService"},{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService","line":39,"character":4},{"__symbolic":"reference","name":"BBSFTranslateService"},{"__symbolic":"reference","name":"ControlValidationService"},{"__symbolic":"reference","name":"MasterLayoutService"}]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":47,"character":32}]}]}},"UtilityService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":10,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"blockUI":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"ng-block-ui","name":"BlockUI","line":16,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"BBSFTranslateService"},{"__symbolic":"reference","name":"AuthService"},{"__symbolic":"reference","name":"EnvironmentService"}]}],"getResourceValue":[{"__symbolic":"method"}],"getCurrentLanguage":[{"__symbolic":"method"}],"isCurrentLanguageEnglish":[{"__symbolic":"method"}],"isCurrentLanguageArabic":[{"__symbolic":"method"}],"notifySuccessMessage":[{"__symbolic":"method"}],"notifyErrorMessage":[{"__symbolic":"method"}],"notifyWarningMessage":[{"__symbolic":"method"}],"startBlockUI":[{"__symbolic":"method"}],"stopBlockUI":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"EnvironmentService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":3,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"getEnvironmentObject":[{"__symbolic":"method"}],"getBaseUrl":[{"__symbolic":"method"}],"getApiUrl":[{"__symbolic":"method"}],"getProductionMode":[{"__symbolic":"method"}],"getDefaultLanguage":[{"__symbolic":"method"}],"getIdentityServerUrl":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"RequestHandlerService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":14,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClient","line":21,"character":20},{"__symbolic":"reference","name":"AuthService"},{"__symbolic":"reference","name":"EnvironmentService"},{"__symbolic":"reference","name":"UtilityService"},{"__symbolic":"reference","name":"BBSFTranslateService"}]}],"getLuckyNumber":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}],"post":[{"__symbolic":"method"}],"delete":[{"__symbolic":"method"}],"put":[{"__symbolic":"method"}],"destroyHandler":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"StylesBundleService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":10,"character":15},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":10,"character":22}]}],null],"parameters":[{"__symbolic":"error","message":"Could not resolve type","line":10,"character":50,"context":{"typeName":"Document"},"module":"./lib/shared/services/stylesbundle.service"},{"__symbolic":"reference","name":"BBSFTranslateService"}]}],"loadThemes":[{"__symbolic":"method"}],"loadStyleBundle":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"BBSFTranslateService":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService","line":6,"character":42},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":3,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{},"statics":{"ɵprov":{}}},"ControlValidationService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":12,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"UtilityService"}]}],"blockUI":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"ng-block-ui","name":"BlockUI","line":27,"character":3}}]}],"showGlobalError":[{"__symbolic":"method"}],"RemoveGlobalError":[{"__symbolic":"method"}],"showInputErro":[{"__symbolic":"method"}],"removeElementsByClass":[{"__symbolic":"method"}],"renderServerErrors":[{"__symbolic":"method"}],"hasControlName":[{"__symbolic":"method"}],"setFieldError":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"MasterLayoutService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":8,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":13,"character":32},{"__symbolic":"reference","name":"RequestHandlerService"},{"__symbolic":"reference","name":"AuthService"},{"__symbolic":"reference","name":"StylesBundleService"},{"__symbolic":"reference","module":"@ngx-translate/core","name":"TranslateService","line":13,"character":177}]}],"switchLang":[{"__symbolic":"method"}],"reloadComponent":[{"__symbolic":"method"}],"changeLanguage":[{"__symbolic":"method"}],"updateUserInfo":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"TranslationResolverService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"BBSFTranslateService"}]}],"resolve":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"environment":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"Object"},"member":"assign"},"arguments":[{},{"__symbolic":"select","expression":{"__symbolic":"reference","name":"window"},"member":"Envirnment"}]},"AuthService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":8,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClient","line":40,"character":28},{"__symbolic":"reference","name":"EnvironmentService"},{"__symbolic":"reference","name":"BBSFTranslateService"}]}],"login":[{"__symbolic":"method"}],"getUser":[{"__symbolic":"method"}],"storUser":[{"__symbolic":"method"}],"revokeAccessToken":[{"__symbolic":"method"}],"signinSilent":[{"__symbolic":"method"}],"completeAuthentication":[{"__symbolic":"method"}],"refreshToken":[{"__symbolic":"method"}],"getCurrentUser":[{"__symbolic":"method"}],"isAuthenticated":[{"__symbolic":"method"}],"isUserInRole":[{"__symbolic":"method"}],"authorizationHeaderValue":[{"__symbolic":"method"}],"name":[{"__symbolic":"method"}],"setUrl":[{"__symbolic":"method"}],"getUrl":[{"__symbolic":"method"}],"signinSilentCallback":[{"__symbolic":"method"}],"signout":[{"__symbolic":"method"}]},"statics":{"user":null,"ɵprov":{}}},"RequestOptionsModel":{"__symbolic":"class","members":{}}},"origins":{"AppInjector":"./lib/bbsf-utilities.module","BBSFUtilitiesModule":"./lib/bbsf-utilities.module","UtilityService":"./lib/shared/services/utility.service","EnvironmentService":"./lib/shared/services/environment.service","RequestHandlerService":"./lib/shared/services/requesthandler.service","StylesBundleService":"./lib/shared/services/stylesbundle.service","BBSFTranslateService":"./lib/shared/services/translate.service","ControlValidationService":"./lib/shared/services/controlvalidation.service","MasterLayoutService":"./lib/shared/services/masterlayout.service","TranslationResolverService":"./lib/shared/services/translationresolver.service","environment":"./lib/shared/config/environment","AuthService":"./lib/shared/authentication/auth.service","RequestOptionsModel":"./lib/shared/models/RequestOptionsModel"},"importAs":"@bnsights/bbsf-utilities"}
|
|
@@ -644,10 +644,10 @@
|
|
|
644
644
|
return currentLanguage;
|
|
645
645
|
};
|
|
646
646
|
UtilityService.prototype.isCurrentLanguageEnglish = function () {
|
|
647
|
-
this.getCurrentLanguage() == "en";
|
|
647
|
+
return this.getCurrentLanguage() == "en";
|
|
648
648
|
};
|
|
649
649
|
UtilityService.prototype.isCurrentLanguageArabic = function () {
|
|
650
|
-
this.getCurrentLanguage() == "ar";
|
|
650
|
+
return this.getCurrentLanguage() == "ar";
|
|
651
651
|
};
|
|
652
652
|
UtilityService.prototype.notifySuccessMessage = function (Message, title, time) {
|
|
653
653
|
var MessageTemplate = this.getResourceValue("SuccessMessage");
|
|
@@ -758,9 +758,13 @@
|
|
|
758
758
|
headers = headers.set('ignore-cookies', 'true');
|
|
759
759
|
if (!this.requestOptions.disableBlockUI)
|
|
760
760
|
this.utilityService.startBlockUI();
|
|
761
|
+
var object;
|
|
761
762
|
return this.http.get(this.environmentService.getApiUrl() + Url, { headers: headers, params: params }).pipe(operators.takeUntil(this.onDestroy$), operators.tap(function (result) {
|
|
762
763
|
if (!_this.requestOptions.disableBlockUI)
|
|
763
764
|
_this.utilityService.stopBlockUI();
|
|
765
|
+
}), operators.map(function (data) {
|
|
766
|
+
var result = data;
|
|
767
|
+
return result;
|
|
764
768
|
}));
|
|
765
769
|
};
|
|
766
770
|
RequestHandlerService.prototype.post = function (Url, model, params, requestOptions) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bnsights-bbsf-utilities.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/bbsf-utilities/src/lib/shared/config/environment.ts","../../../projects/bbsf-utilities/src/lib/shared/services/environment.service.ts","../../../projects/bbsf-utilities/src/lib/shared/services/translate.service.ts","../../../projects/bbsf-utilities/src/lib/shared/authentication/auth.service.ts","../../../projects/bbsf-utilities/src/lib/shared/services/utility.service.ts","../../../projects/bbsf-utilities/src/lib/shared/models/RequestOptionsModel.ts","../../../projects/bbsf-utilities/src/lib/shared/services/requesthandler.service.ts","../../../projects/bbsf-utilities/src/lib/shared/services/stylesbundle.service.ts","../../../projects/bbsf-utilities/src/lib/shared/services/controlvalidation.service.ts","../../../projects/bbsf-utilities/src/lib/shared/services/masterlayout.service.ts","../../../projects/bbsf-utilities/src/lib/bbsf-utilities.module.ts","../../../projects/bbsf-utilities/src/lib/shared/services/translationresolver.service.ts","../../../projects/bbsf-utilities/src/public-api.ts","../../../projects/bbsf-utilities/src/bnsights-bbsf-utilities.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build ---prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = Object.assign({\r\n},\r\n(window as any).Envirnment);\r\n\r\n\r\n/*\r\n * In development mode, to ignore zone related error stack frames such as\r\n * `zone.run`, `zoneDelegate.invokeTask` for easier debugging, you can\r\n * import the following file, but please comment it out in production mode\r\n * because it will have performance impact when throw error\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import { Injectable } from '@angular/core';\r\nimport { environment } from '../config/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class EnvironmentService {\r\n\r\n getEnvironmentObject() {\r\n return environment;\r\n }\r\n\r\n getBaseUrl() {\r\n let Url = environment[\"BBSF_BaseUrl\"]\r\n return Url;\r\n }\r\n getApiUrl() {\r\n let Url = environment[\"BBSF_ApiUrl\"]\r\n return Url;\r\n }\r\n\r\n\r\n getProductionMode() {\r\n let Mode = environment[\"BBSF_IsProduction\"] as boolean\r\n return Mode;\r\n }\r\n\r\n getDefaultLanguage() {\r\n let Mode = environment[\"BBSF_DefaultLanguage\"] as string\r\n return Mode;\r\n }\r\n getIdentityServerUrl() {\r\n let Url = environment[\"BBSF_IdentityServerUrl\"]\r\n return Url;\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class BBSFTranslateService extends TranslateService {\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { UserManager, UserManagerSettings, User, WebStorageStateStore } from 'oidc-client';\r\nimport { BehaviorSubject, Subject } from 'rxjs';\r\nimport { EnvironmentService } from '../services/environment.service';\r\nimport { BBSFTranslateService } from '../services/translate.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class AuthService {\r\n\r\n // Observable navItem source\r\n private _authNavStatusSource = new BehaviorSubject<boolean>(false);\r\n // Observable navItem stream\r\n authNavStatus$ = this._authNavStatusSource.asObservable();\r\n // Observable navItem source\r\n private _userSource: Subject<User> = new Subject<User>();\r\n UserStatus$ = this._userSource.asObservable();\r\n private manager = new UserManager(\r\n {\r\n authority: this.environmentService.getIdentityServerUrl(),\r\n client_id: 'angular_spa',\r\n redirect_uri: this.environmentService.getIdentityServerUrl() +'/Admin/authentication/auth-callback',\r\n post_logout_redirect_uri: this.environmentService.getBaseUrl(),\r\n response_type: \"id_token token\",\r\n scope: \"openid profile email IdentityServerApi\",\r\n filterProtocolClaims: true,\r\n loadUserInfo: true,\r\n automaticSilentRenew: true,\r\n silent_redirect_uri: this.environmentService.getIdentityServerUrl() + '/assets/silent-callback.html',\r\n userStore: new WebStorageStateStore({ store: window.localStorage })\r\n }\r\n );\r\n public redirectUrl: string = \"\"\r\n static user: User | null = null;\r\n user: User | null;\r\n\r\n constructor(private http: HttpClient, private environmentService: EnvironmentService,private translateService:BBSFTranslateService) {\r\n this.manager.getUser().then(async user => {\r\n this.manager.storeUser(user);\r\n AuthService.user = user;\r\n this.user = user;\r\n this._authNavStatusSource.next(await this.isAuthenticated());\r\n });\r\n this.manager.events.addAccessTokenExpired(_ => {\r\n this._authNavStatusSource.next(false);\r\n })\r\n }\r\n\r\n login() {\r\n return this.manager.signinRedirect();\r\n }\r\n\r\n getUser() {\r\n this.manager.getUser().then(async user => {\r\n ;\r\n AuthService.user = user;\r\n this.user = user\r\n this._authNavStatusSource.next(await this.isAuthenticated());\r\n });\r\n }\r\n storUser(User: any) {\r\n this.manager.storeUser(User);\r\n }\r\n\r\n revokeAccessToken() {\r\n this.manager.revokeAccessToken();\r\n }\r\n\r\n signinSilent() {\r\n\r\n let x = this.manager.signinSilentCallback()\r\n x.then(s => {\r\n //console.log(s)\r\n })\r\n }\r\n\r\n async completeAuthentication() {\r\n this.user = await this.manager.signinRedirectCallback();\r\n AuthService.user = this.user\r\n localStorage.setItem(\"language\",this.user.profile.locale)\r\n if(this.translateService.currentLang!=this.user.profile.locale)\r\n {\r\n this.translateService.resetLang(this.translateService.currentLang)\r\n await this.translateService.reloadLang(this.user.profile.locale).subscribe((res)=>{\r\n console.log(res)\r\n })\r\n }\r\n this._userSource.next(AuthService.user)\r\n this._authNavStatusSource.next(await this.isAuthenticated());\r\n }\r\n\r\n \r\n\r\n\r\n async refreshToken(token) {\r\n const httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Authorization': token\r\n })\r\n };\r\n \r\n this.manager.revokeAccessToken()\r\n return await this.http.post<any>(`${this.environmentService.getIdentityServerUrl()}/users/refresh-token`, httpOptions, { withCredentials: true }).subscribe((user) => {\r\n this._userSource.next(user)\r\n AuthService.user = user\r\n this.user = user;\r\n })\r\n }\r\n\r\n getCurrentUser() {\r\n return this.manager.getUser()\r\n }\r\n\r\n async isAuthenticated(): Promise<boolean> {\r\n let user = await this.manager.getUser().then(user => {\r\n return user;\r\n })\r\n return this.user != null && !this.user.expired ;\r\n\r\n }\r\n isUserInRole(allowedPermission: number[]) {\r\n let selectedPermissionSetID = this.user.profile[\"selectedPermissionSetID\"] as number\r\n return allowedPermission.includes(selectedPermissionSetID);\r\n }\r\n\r\n authorizationHeaderValue(): string {\r\n return AuthService.user? `${AuthService.user.token_type} ${AuthService.user.access_token}`:\"\";\r\n }\r\n\r\n name(): string {\r\n return AuthService.user != null ? AuthService.user.profile.given_name : '';\r\n }\r\n setUrl(url) {\r\n localStorage.setItem(\"redirectUrl\", url)\r\n\r\n }\r\n getUrl() {\r\n return localStorage.getItem(\"redirectUrl\");\r\n }\r\n async signinSilentCallback() {\r\n let user = await this.manager.signinSilentCallback()\r\n //await this.manager.storeUser(user);\r\n AuthService.user = user;\r\n console.log(\"Token from signinSilentCallback :\"+AuthService.user)\r\n this.user = user;\r\n }\r\n async signout() {\r\n localStorage.clear();\r\n await this.manager.signoutRedirect();\r\n\r\n }\r\n\r\n}\r\n\r\n\r\n","import { Injectable, Optional, Host, SkipSelf, Component } from '@angular/core';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BlockUI, NgBlockUI } from 'ng-block-ui';\r\nimport { AuthService } from '../authentication/auth.service';\r\nimport { BBSFTranslateService } from './translate.service';\r\nimport { AppInjector } from '../../bbsf-utilities.module';\r\nimport { EnvironmentService } from './environment.service';\r\n\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UtilityService {\r\n\r\n isCreatedBefore = false;\r\n @BlockUI() blockUI: NgBlockUI;\r\n\r\n constructor(private translator: BBSFTranslateService, private authService: AuthService , private environmentService: EnvironmentService,) {\r\n\r\n }\r\n\r\n\r\n getResourceValue(Key: string): string {\r\n let ResourceValue =this.translator.instant(Key)\r\n return ResourceValue;\r\n\r\n }\r\n\r\n getCurrentLanguage() {\r\n let currentLanguage = this.environmentService.getDefaultLanguage();\r\n let lang = localStorage.getItem('language');\r\n if ( lang) \r\n currentLanguage=lang;\r\n else \r\n localStorage.setItem('language', currentLanguage);\r\n return currentLanguage;\r\n }\r\n isCurrentLanguageEnglish() {\r\n this.getCurrentLanguage() == \"en\"\r\n }\r\n isCurrentLanguageArabic() {\r\n this.getCurrentLanguage() == \"ar\"\r\n }\r\n\r\n notifySuccessMessage(Message?: string, title?: string, time?: number) {\r\n\r\n let MessageTemplate = this.getResourceValue(\"SuccessMessage\");\r\n let titleTemplate = this.getResourceValue(\"Success\");\r\n if (Message) {\r\n MessageTemplate = Message;\r\n }\r\n if (title) {\r\n titleTemplate = title;\r\n }\r\n let toaster = AppInjector.get(ToastrService);\r\n toaster.success(MessageTemplate, titleTemplate);\r\n }\r\n\r\n notifyErrorMessage(Message?: string, title?: string, time?: number) {\r\n\r\n let MessageTemplate = this.getResourceValue(\"ErrorMessage\");\r\n let titleTemplate = this.getResourceValue(\"Error\");\r\n if (Message) {\r\n MessageTemplate = Message;\r\n }\r\n if (title) {\r\n titleTemplate = title;\r\n }\r\n const toaster = AppInjector.get(ToastrService);\r\n toaster.error(MessageTemplate, titleTemplate);\r\n }\r\n\r\n notifyWarningMessage(Message?: string, title?: string, time?: number) {\r\n\r\n let MessageTemplate = this.getResourceValue(\"WarningMessage\");\r\n let titleTemplate = this.getResourceValue(\"Warning\");\r\n if (Message) {\r\n MessageTemplate = Message;\r\n }\r\n if (title) {\r\n titleTemplate = title;\r\n }\r\n const toaster = AppInjector.get(ToastrService);\r\n toaster.warning(MessageTemplate, titleTemplate);\r\n }\r\n\r\n startBlockUI() {\r\n this.blockUI.start();\r\n }\r\n stopBlockUI() {\r\n this.blockUI.stop();\r\n }\r\n}\r\n","import { FormGroup } from \"@angular/forms\";\r\n\r\nexport class RequestOptionsModel {\r\n disableSuccessNotification: boolean=false;\r\n disableBlockUI: boolean=false;\r\n customSuccessMessage: string;\r\n customErrorMessage: string;\r\n responseType:any=\"\"\r\n formGroup:FormGroup=null\r\n}\r\n","import { Injectable, OnDestroy, Pipe } from '@angular/core';\r\nimport { HttpClient, HttpErrorResponse, HttpHeaders, HttpParams } from \"@angular/common/http\";\r\nimport { RequestOptionsModel } from '../models/RequestOptionsModel';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { AuthService } from '../authentication/auth.service';\r\nimport { EnvironmentService } from './environment.service';\r\nimport { Subject } from 'rxjs';\r\nimport { UtilityService } from './utility.service';\r\nimport { takeUntil, tap } from 'rxjs/operators';\r\nimport { ControlValidationService } from './controlvalidation.service';\r\nimport { BBSFTranslateService } from './translate.service';\r\n\r\n@Injectable()\r\nexport class RequestHandlerService implements OnDestroy {\r\n private requestOptions: RequestOptionsModel = new RequestOptionsModel();\r\n private currentLanguage = \"\";\r\n public onDestroy$: Subject<void> = new Subject<void>();\r\n constructor\r\n (\r\n private http: HttpClient,\r\n private authService: AuthService,\r\n private environmentService: EnvironmentService,\r\n private utilityService: UtilityService,\r\n private bbsfTranslateService: BBSFTranslateService\r\n ) {\r\n //using localStorage to avoid call getCurrentLanguage() because it is not all to use async in constructor\r\n\r\n this.bbsfTranslateService.onLangChange.subscribe((event) => {\r\n if (this.currentLanguage != event.lang) {\r\n this.currentLanguage = event.lang;\r\n }\r\n })\r\n }\r\n\r\n public getLuckyNumber(): Observable<number> {\r\n \r\n return Observable.create((subject: Subject<number>) => {\r\n setInterval(() => {\r\n const number = Math.floor(Math.random() * 10);\r\n console.log(number)\r\n subject.next(number);\r\n }, 1000);\r\n }).pipe(\r\n takeUntil(this.onDestroy$));\r\n }\r\n\r\n\r\n get<T>(Url: string, params?: HttpParams, requestOptions?: RequestOptionsModel):Observable<T>{\r\n if (requestOptions)\r\n this.requestOptions = requestOptions;\r\n let headers = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Authorization': this.authService.authorizationHeaderValue(),\r\n });\r\n this.currentLanguage = localStorage.getItem('language');\r\n headers = headers.set('Accept-Language', this.currentLanguage.toString());\r\n headers = headers.set('ignore-cookies', 'true');\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.startBlockUI();\r\n \r\n return this.http.get<T>(this.environmentService.getApiUrl() + Url, { headers: headers, params: params }).pipe(\r\n takeUntil(this.onDestroy$),\r\n tap((result) => {\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.stopBlockUI();\r\n })\r\n );\r\n }\r\n\r\n post<T>(Url: string, model?: any, params?: HttpParams, requestOptions?: RequestOptionsModel):Observable<T> {\r\n \r\n \r\n if (requestOptions)\r\n this.requestOptions = requestOptions;\r\n let headers = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Authorization': this.authService.authorizationHeaderValue(),\r\n\r\n });\r\n this.currentLanguage = localStorage.getItem('language');\r\n headers = headers.set('Accept-Language', this.currentLanguage.toString());\r\n headers = headers.set('ignore-cookies', 'true');\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.startBlockUI();\r\n return this.http.post<T>(this.environmentService.getApiUrl() + Url, model, { headers: headers, params: params, responseType: this.requestOptions.responseType }).pipe(\r\n takeUntil(this.onDestroy$),\r\n tap((result) => {\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.stopBlockUI();\r\n })\r\n );\r\n }\r\n\r\n\r\n \r\n delete<T>(Url: string,deletedId:string,params?: HttpParams, requestOptions?: RequestOptionsModel):Observable<T>{\r\n if (requestOptions)\r\n this.requestOptions = requestOptions;\r\n let headers = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Authorization': this.authService.authorizationHeaderValue(),\r\n });\r\n this.currentLanguage = localStorage.getItem('language');\r\n headers = headers.set('Accept-Language', this.currentLanguage.toString());\r\n headers = headers.set('ignore-cookies', 'true');\r\n\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.startBlockUI();\r\n return this.http.delete<T>(this.environmentService.getApiUrl() + Url+`/${deletedId}`, { headers: headers, params: params }).pipe(\r\n takeUntil(this.onDestroy$),\r\n tap((result) => {\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.stopBlockUI();\r\n })\r\n );\r\n }\r\n\r\n\r\n put<T>(Url: string, model?: any, params?: HttpParams, requestOptions?: RequestOptionsModel):Observable<T> {\r\n if (requestOptions)\r\n this.requestOptions = requestOptions;\r\n let headers = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Authorization': this.authService.authorizationHeaderValue(),\r\n\r\n });\r\n this.currentLanguage = localStorage.getItem('language');\r\n headers = headers.set('Accept-Language', this.currentLanguage.toString());\r\n headers = headers.set('ignore-cookies', 'true');\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.startBlockUI();\r\n return this.http.put<T>(this.environmentService.getApiUrl() + Url, model, { headers: headers, params: params, responseType: this.requestOptions.responseType }).pipe(\r\n takeUntil(this.onDestroy$),\r\n tap((result) => {\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.stopBlockUI();\r\n })\r\n );\r\n }\r\n \r\n public destroyHandler(): void {\r\n this.onDestroy$.next();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n console.log(\"clearInterval\")\r\n this.destroyHandler()\r\n }\r\n}\r\n\r\n","import { DOCUMENT } from '@angular/common';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { BlockUI, NgBlockUI } from 'ng-block-ui';\r\nimport { BBSFTranslateService } from './translate.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class StylesBundleService {\r\n\r\n constructor(@Inject(DOCUMENT) private document: Document,private translateService: BBSFTranslateService){}\r\n\r\n loadThemes(lang: string,bundleEnglishName:string,bundleArabicName:string) {\r\n if (lang == \"ar\") {\r\n this.loadStyleBundle(bundleArabicName.toString())\r\n document.querySelector('html').setAttribute(\"lang\", \"ar\");\r\n document.querySelector('html').setAttribute(\"dir\", \"rtl\");\r\n } else {\r\n this.loadStyleBundle(bundleEnglishName.toString())\r\n document.querySelector('html').setAttribute(\"lang\", \"en\");\r\n document.querySelector('html').setAttribute(\"dir\", \"ltr\");\r\n }\r\n \r\n }\r\n\r\n loadStyleBundle(styleName: string) {\r\n const head = this.document.getElementsByTagName('head')[0];\r\n\r\n let themeLink = this.document.getElementById('client-theme') as HTMLLinkElement;\r\n\r\n if (themeLink && themeLink.href.includes(styleName)) {\r\n return;\r\n }\r\n else if (themeLink && !themeLink.href.includes(styleName)) {\r\n themeLink.remove();\r\n }\r\n const style = this.document.createElement('link');\r\n style.id = 'client-theme';\r\n style.rel = 'stylesheet';\r\n style.href = `${styleName}`;\r\n head.appendChild(style);\r\n }\r\n\r\n}\r\n\r\n","import { Injectable, Optional, Host, SkipSelf, Component } from '@angular/core';\r\nimport { IndividualConfig, ToastrService } from 'ngx-toastr';\r\nimport { BlockUI, NgBlockUI } from 'ng-block-ui';\r\nimport { AbstractControl, ControlContainer, ControlValueAccessor, NG_VALUE_ACCESSOR, FormControl, FormsModule, FormGroup } from '@angular/forms';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { ErrorModel } from '../models/ErrorModel';\r\nimport { UtilityService } from './utility.service';\r\nimport { RequestOptionsModel } from '../models/RequestOptionsModel';\r\n\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ControlValidationService {\r\n private requestOptions: RequestOptionsModel = new RequestOptionsModel();\r\n\r\n constructor\r\n (\r\n private utilityService: UtilityService\r\n ) {\r\n\r\n }\r\n\r\n isCreatedBefor = false;\r\n\r\n @BlockUI() blockUI: NgBlockUI;\r\n\r\n showGlobalError(errorMessage?: string | string[], formId?: string, deleteOld?: boolean) {\r\n let globalErorrElement = document.getElementsByClassName('alert alert-danger alert-InvalidValidation')\r\n if (globalErorrElement.length > 0) {\r\n this.removeElementsByClass('alert alert-danger alert-InvalidValidation');\r\n }\r\n\r\n\r\n if (this.isCreatedBefor == true) {\r\n this.removeElementsByClass('alert alert-danger alert-InvalidValidation');\r\n }\r\n\r\n // tslint:disable-next-line: prefer-const\r\n if (!formId)\r\n formId = \"currentForm\"\r\n var object = document.getElementById(formId);\r\n const tagName = 'div';\r\n // tslint:disable-next-line: prefer-const\r\n var elementToAppend = document.createElement(tagName); // Your tag name here\r\n let message: string | string[] = \"\";\r\n\r\n\r\n if (!errorMessage || (typeof errorMessage == \"string\")) {\r\n if (localStorage.getItem('language') == \"ar\")\r\n message = errorMessage ? errorMessage : \"لديك بعص الأخطاء . من فضلك قم بالمراجعه \";\r\n else\r\n message = errorMessage ? errorMessage : \"You have some validation errors. Please check below\"\r\n elementToAppend.innerHTML = \"<ul><li>\" + message + \"</li></ul>\";\r\n elementToAppend.className += 'alert alert-danger alert-InvalidValidation';\r\n elementToAppend.id += 'errorId';\r\n // tslint:disable-next-line: prefer-for-of\r\n const elementToAppen = elementToAppend.cloneNode(true);\r\n // let targetElement = object.getElementsByClassName(\"b-control\")[0];\r\n object.insertBefore(elementToAppen, object.firstChild);\r\n }\r\n else {\r\n elementToAppend.innerHTML = \"<ul>\";\r\n\r\n for (const iterator of errorMessage) {\r\n\r\n elementToAppend.innerHTML = \"<li>\" + iterator + \"</li>\";\r\n }\r\n\r\n elementToAppend.innerHTML = \"</ul>\";\r\n elementToAppend.className += 'alert alert-danger alert-InvalidValidation';\r\n elementToAppend.id += 'errorId';\r\n // tslint:disable-next-line: prefer-for-of\r\n const elementToAppen = elementToAppend.cloneNode(true);\r\n // let targetElement = object.getElementsByClassName(\"b-control\")[0];\r\n object.insertBefore(elementToAppen, object.firstChild);\r\n }\r\n\r\n this.isCreatedBefor = true;\r\n\r\n }\r\n\r\n RemoveGlobalError() {\r\n const removedList = document.getElementsByClassName('alert alert-danger alert-InvalidValidation');\r\n // tslint:disable-next-line: prefer-for-of\r\n for (let index = 0; index < removedList.length; index++) {\r\n const element = removedList[index];\r\n element.remove();\r\n }\r\n this.isCreatedBefor = false;\r\n }\r\n\r\n showInputErro(errors: any) {\r\n\r\n // show error on top of form \r\n this.showGlobalError();\r\n // remove old error from server\r\n this.removeElementsByClass('errortemplet');\r\n // Looping in error Object\r\n for (const key in errors) {\r\n if (errors.hasOwnProperty(key)) {\r\n for (const iterator of errors[key]) {\r\n const input = document.querySelectorAll('[ng-reflect-name=' + key + ']')[0];\r\n if ((input.attributes['ng-reflect-name'].value as string) === key) {\r\n this.removeElementsByClass('erroclass-' + key);\r\n const tagName = 'p'\r\n const elementToAppend = document.createElement(tagName); // Your tag name here\r\n elementToAppend.innerHTML = iterator;\r\n elementToAppend.style.color = 'red'\r\n elementToAppend.className += 'errortemplet erroclass-' + key;\r\n const elementToappen = elementToAppend.cloneNode(true);\r\n input.parentNode.insertBefore(elementToappen, input.lastChild);\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n removeElementsByClass(className) {\r\n const elements = document.getElementsByClassName(className);\r\n while (elements.length > 0) {\r\n elements[0].parentNode.removeChild(elements[0]);\r\n }\r\n }\r\n\r\n\r\n renderServerErrors(form: FormGroup, err: HttpErrorResponse, requestOptions: RequestOptionsModel, formId?: string) {\r\n if (err.error == null) {\r\n return;\r\n }\r\n let errorsArray: string[] = [];\r\n\r\n this.requestOptions = requestOptions;\r\n err.error.validation_errors.forEach((element: ErrorModel) => {\r\n let fieldName = element.field;\r\n let controlName = element.controlName;\r\n let message = element.message;\r\n if (form == null) {\r\n this.requestOptions.customErrorMessage ? this.utilityService.notifyErrorMessage(this.requestOptions.customErrorMessage) : this.utilityService.notifyErrorMessage(`${fieldName}: ${message}`);\r\n }\r\n else if (controlName && !this.hasControlName(form, controlName)) {\r\n errorsArray.push(`${fieldName}: ${message}`);\r\n // this.showGlobalError(`${fieldName}: ${message}`,formId )\r\n }\r\n else {\r\n this.setFieldError(form, controlName, fieldName, message);\r\n }\r\n });\r\n if (errorsArray.length > 0)\r\n this.showGlobalError(errorsArray, formId)\r\n\r\n\r\n }\r\n\r\n private hasControlName(form: FormGroup, controlName: string): boolean {\r\n let control = form.get(controlName);\r\n return control != null;\r\n }\r\n\r\n private setFieldError(form: FormGroup, controlName: string, fieldName: string, message: string) {\r\n let control = null\r\n if (controlName)\r\n control = form.get(controlName);\r\n else\r\n control = form.get(fieldName.split('.')[0]);\r\n let errors = { \"errorMassage\": message };\r\n let fieldNameArray = fieldName.split('.');\r\n if (fieldNameArray.length >= 1) {\r\n switch (fieldNameArray[fieldNameArray.length - 1].toLocaleLowerCase()) {\r\n case \"english\":\r\n let englishControl = control.get(\"English\")\r\n englishControl.setErrors(errors);\r\n break;\r\n case \"arabic\":\r\n let arabicControl = control.get(\"Arabic\")\r\n arabicControl.setErrors(errors);\r\n break;\r\n\r\n default:\r\n control.setErrors(errors);\r\n }\r\n\r\n }\r\n else if (fieldNameArray.length == 1) {\r\n control.setErrors(errors);\r\n }\r\n else {\r\n this.requestOptions.customErrorMessage ? this.utilityService.notifyErrorMessage(this.requestOptions.customErrorMessage) : this.utilityService.notifyErrorMessage(`${fieldName}: ${message}`)\r\n }\r\n\r\n\r\n }\r\n\r\n\r\n}\r\n","import { HttpParams } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { AuthService } from \"../authentication/auth.service\";\r\nimport { RequestHandlerService } from \"./requesthandler.service\";\r\nimport { StylesBundleService } from \"./stylesbundle.service\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MasterLayoutService {\r\n ApiUrl=\"/api/admin/Users/\"\r\n constructor(private router: Router, private http: RequestHandlerService, private authService: AuthService,private stylesBundleService:StylesBundleService ,private translate:TranslateService) {\r\n }\r\n switchLang(lang: string, bundleEnglishName: string, bundleArabicName: string) {\r\n this.changeLanguage(lang).subscribe((result) => {\r\n this.updateUserInfo().subscribe((Value) => {\r\n let UserInfoObject =Value ;\r\n this.authService.getUser();\r\n this.authService.user.profile = Object.assign( this.authService.user.profile, UserInfoObject);\r\n this.authService.storUser(this.authService.user);\r\n this.stylesBundleService.loadThemes(lang,bundleEnglishName,bundleArabicName);\r\n localStorage.setItem('language', lang);\r\n this.translate.use(lang);\r\n });\r\n });\r\n }\r\n reloadComponent() {\r\n let currentUrl = this.router.url;\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n this.router.onSameUrlNavigation = 'reload';\r\n this.router.navigate([currentUrl]);\r\n }\r\n\r\n private changeLanguage(key: string) {\r\n\r\n let params = new HttpParams();\r\n params = params.append(\"UserId\", this.authService.user.profile.id);\r\n params = params.append(\"LanguageKey\", key);\r\n return this.http.post(this.ApiUrl + 'updateLaguage', null, params)\r\n }\r\n\r\n private updateUserInfo() {\r\n return this.http.get('/connect/userinfo')\r\n }\r\n\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injector, NgModule } from '@angular/core';\r\nimport { RouterModule } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { BlockUIModule } from 'ng-block-ui';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { HttpModule } from '@angular/http';\r\nimport { UtilityService } from './shared/services/utility.service';\r\nimport { EnvironmentService } from './shared/services/environment.service';\r\nimport { AuthService } from './shared/authentication/auth.service';\r\nimport { RequestHandlerService } from './shared/services/requesthandler.service';\r\nimport { StylesBundleService } from './shared/services/stylesbundle.service';\r\nimport { BBSFTranslateService } from './shared/services/translate.service';\r\nimport { ControlValidationService } from './shared/services/controlvalidation.service';\r\nimport { MasterLayoutService } from './shared/services/masterlayout.service';\r\n\r\nexport let AppInjector: Injector;\r\n\r\n@NgModule({\r\n declarations: [\r\n ],\r\n imports: [\r\n CommonModule,\r\n BlockUIModule.forRoot(),\r\n HttpModule,\r\n RouterModule,\r\n ToastrModule.forRoot(),\r\n\r\n ],\r\n exports: [\r\n \r\n ],\r\n providers:[\r\n UtilityService,\r\n EnvironmentService,\r\n AuthService,\r\n RequestHandlerService,\r\n StylesBundleService,\r\n TranslateService,\r\n BBSFTranslateService,\r\n ControlValidationService,\r\n MasterLayoutService\r\n ]\r\n})\r\nexport class BBSFUtilitiesModule { \r\n\r\n constructor(private injector: Injector) {\r\n AppInjector = this.injector;\r\n\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Resolve } from \"@angular/router\";\r\nimport { Observable } from \"rxjs\";\r\nimport { BBSFTranslateService } from \"./translate.service\";\r\n\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class TranslationResolverService implements Resolve<any> {\r\n constructor(private translateService: BBSFTranslateService) {}\r\n\r\n resolve(): Observable<any> {\r\n return this.translateService.getTranslation(\r\n this.translateService.currentLang\r\n );\r\n }\r\n}\r\n","/*\r\n * Public API Surface of @bnsights/bbsf-utilities\r\n */\r\n\r\nexport * from './lib/bbsf-utilities.module';\r\n\r\nexport * from './lib/shared/services/utility.service';\r\nexport * from './lib/shared/services/environment.service';\r\nexport * from './lib/shared/services/requesthandler.service'\r\nexport * from './lib/shared/services/stylesbundle.service'\r\nexport * from './lib/shared/services/translate.service'\r\nexport * from './lib/shared/services/controlvalidation.service'\r\nexport * from './lib/shared/services/masterlayout.service'\r\nexport * from './lib/shared/services/translationresolver.service'\r\n\r\n\r\nexport * from './lib/shared/config/environment';\r\n\r\n\r\nexport * from './lib/shared/authentication/auth.service';\r\n\r\n\r\nexport * from './lib/shared/models/RequestOptionsModel';\r\n\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["Injectable","TranslateService","BehaviorSubject","Subject","UserManager","WebStorageStateStore","HttpHeaders","HttpClient","AppInjector","ToastrService","BlockUI","Observable","takeUntil","tap","Inject","DOCUMENT","HttpParams","Router","NgModule","CommonModule","BlockUIModule","HttpModule","RouterModule","ToastrModule","Injector"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bnsights-bbsf-utilities.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/bbsf-utilities/src/lib/shared/config/environment.ts","../../../projects/bbsf-utilities/src/lib/shared/services/environment.service.ts","../../../projects/bbsf-utilities/src/lib/shared/services/translate.service.ts","../../../projects/bbsf-utilities/src/lib/shared/authentication/auth.service.ts","../../../projects/bbsf-utilities/src/lib/shared/services/utility.service.ts","../../../projects/bbsf-utilities/src/lib/shared/models/RequestOptionsModel.ts","../../../projects/bbsf-utilities/src/lib/shared/services/requesthandler.service.ts","../../../projects/bbsf-utilities/src/lib/shared/services/stylesbundle.service.ts","../../../projects/bbsf-utilities/src/lib/shared/services/controlvalidation.service.ts","../../../projects/bbsf-utilities/src/lib/shared/services/masterlayout.service.ts","../../../projects/bbsf-utilities/src/lib/bbsf-utilities.module.ts","../../../projects/bbsf-utilities/src/lib/shared/services/translationresolver.service.ts","../../../projects/bbsf-utilities/src/public-api.ts","../../../projects/bbsf-utilities/src/bnsights-bbsf-utilities.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build ---prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = Object.assign({\r\n},\r\n(window as any).Envirnment);\r\n\r\n\r\n/*\r\n * In development mode, to ignore zone related error stack frames such as\r\n * `zone.run`, `zoneDelegate.invokeTask` for easier debugging, you can\r\n * import the following file, but please comment it out in production mode\r\n * because it will have performance impact when throw error\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import { Injectable } from '@angular/core';\r\nimport { environment } from '../config/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class EnvironmentService {\r\n\r\n getEnvironmentObject() {\r\n return environment;\r\n }\r\n\r\n getBaseUrl() {\r\n let Url = environment[\"BBSF_BaseUrl\"]\r\n return Url;\r\n }\r\n getApiUrl() {\r\n let Url = environment[\"BBSF_ApiUrl\"]\r\n return Url;\r\n }\r\n\r\n\r\n getProductionMode() {\r\n let Mode = environment[\"BBSF_IsProduction\"] as boolean\r\n return Mode;\r\n }\r\n\r\n getDefaultLanguage() {\r\n let Mode = environment[\"BBSF_DefaultLanguage\"] as string\r\n return Mode;\r\n }\r\n getIdentityServerUrl() {\r\n let Url = environment[\"BBSF_IdentityServerUrl\"]\r\n return Url;\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class BBSFTranslateService extends TranslateService {\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { UserManager, UserManagerSettings, User, WebStorageStateStore } from 'oidc-client';\r\nimport { BehaviorSubject, Subject } from 'rxjs';\r\nimport { EnvironmentService } from '../services/environment.service';\r\nimport { BBSFTranslateService } from '../services/translate.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class AuthService {\r\n\r\n // Observable navItem source\r\n private _authNavStatusSource = new BehaviorSubject<boolean>(false);\r\n // Observable navItem stream\r\n authNavStatus$ = this._authNavStatusSource.asObservable();\r\n // Observable navItem source\r\n private _userSource: Subject<User> = new Subject<User>();\r\n UserStatus$ = this._userSource.asObservable();\r\n private manager = new UserManager(\r\n {\r\n authority: this.environmentService.getIdentityServerUrl(),\r\n client_id: 'angular_spa',\r\n redirect_uri: this.environmentService.getIdentityServerUrl() +'/Admin/authentication/auth-callback',\r\n post_logout_redirect_uri: this.environmentService.getBaseUrl(),\r\n response_type: \"id_token token\",\r\n scope: \"openid profile email IdentityServerApi\",\r\n filterProtocolClaims: true,\r\n loadUserInfo: true,\r\n automaticSilentRenew: true,\r\n silent_redirect_uri: this.environmentService.getIdentityServerUrl() + '/assets/silent-callback.html',\r\n userStore: new WebStorageStateStore({ store: window.localStorage })\r\n }\r\n );\r\n public redirectUrl: string = \"\"\r\n static user: User | null = null;\r\n user: User | null;\r\n\r\n constructor(private http: HttpClient, private environmentService: EnvironmentService,private translateService:BBSFTranslateService) {\r\n this.manager.getUser().then(async user => {\r\n this.manager.storeUser(user);\r\n AuthService.user = user;\r\n this.user = user;\r\n this._authNavStatusSource.next(await this.isAuthenticated());\r\n });\r\n this.manager.events.addAccessTokenExpired(_ => {\r\n this._authNavStatusSource.next(false);\r\n })\r\n }\r\n\r\n login() {\r\n return this.manager.signinRedirect();\r\n }\r\n\r\n getUser() {\r\n this.manager.getUser().then(async user => {\r\n ;\r\n AuthService.user = user;\r\n this.user = user\r\n this._authNavStatusSource.next(await this.isAuthenticated());\r\n });\r\n }\r\n storUser(User: any) {\r\n this.manager.storeUser(User);\r\n }\r\n\r\n revokeAccessToken() {\r\n this.manager.revokeAccessToken();\r\n }\r\n\r\n signinSilent() {\r\n\r\n let x = this.manager.signinSilentCallback()\r\n x.then(s => {\r\n //console.log(s)\r\n })\r\n }\r\n\r\n async completeAuthentication() {\r\n this.user = await this.manager.signinRedirectCallback();\r\n AuthService.user = this.user\r\n localStorage.setItem(\"language\",this.user.profile.locale)\r\n if(this.translateService.currentLang!=this.user.profile.locale)\r\n {\r\n this.translateService.resetLang(this.translateService.currentLang)\r\n await this.translateService.reloadLang(this.user.profile.locale).subscribe((res)=>{\r\n console.log(res)\r\n })\r\n }\r\n this._userSource.next(AuthService.user)\r\n this._authNavStatusSource.next(await this.isAuthenticated());\r\n }\r\n\r\n \r\n\r\n\r\n async refreshToken(token) {\r\n const httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Authorization': token\r\n })\r\n };\r\n \r\n this.manager.revokeAccessToken()\r\n return await this.http.post<any>(`${this.environmentService.getIdentityServerUrl()}/users/refresh-token`, httpOptions, { withCredentials: true }).subscribe((user) => {\r\n this._userSource.next(user)\r\n AuthService.user = user\r\n this.user = user;\r\n })\r\n }\r\n\r\n getCurrentUser() {\r\n return this.manager.getUser()\r\n }\r\n\r\n async isAuthenticated(): Promise<boolean> {\r\n let user = await this.manager.getUser().then(user => {\r\n return user;\r\n })\r\n return this.user != null && !this.user.expired ;\r\n\r\n }\r\n isUserInRole(allowedPermission: number[]) {\r\n let selectedPermissionSetID = this.user.profile[\"selectedPermissionSetID\"] as number\r\n return allowedPermission.includes(selectedPermissionSetID);\r\n }\r\n\r\n authorizationHeaderValue(): string {\r\n return AuthService.user? `${AuthService.user.token_type} ${AuthService.user.access_token}`:\"\";\r\n }\r\n\r\n name(): string {\r\n return AuthService.user != null ? AuthService.user.profile.given_name : '';\r\n }\r\n setUrl(url) {\r\n localStorage.setItem(\"redirectUrl\", url)\r\n\r\n }\r\n getUrl() {\r\n return localStorage.getItem(\"redirectUrl\");\r\n }\r\n async signinSilentCallback() {\r\n let user = await this.manager.signinSilentCallback()\r\n //await this.manager.storeUser(user);\r\n AuthService.user = user;\r\n console.log(\"Token from signinSilentCallback :\"+AuthService.user)\r\n this.user = user;\r\n }\r\n async signout() {\r\n localStorage.clear();\r\n await this.manager.signoutRedirect();\r\n\r\n }\r\n\r\n}\r\n\r\n\r\n","import { Injectable, Optional, Host, SkipSelf, Component } from '@angular/core';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BlockUI, NgBlockUI } from 'ng-block-ui';\r\nimport { AuthService } from '../authentication/auth.service';\r\nimport { BBSFTranslateService } from './translate.service';\r\nimport { AppInjector } from '../../bbsf-utilities.module';\r\nimport { EnvironmentService } from './environment.service';\r\n\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UtilityService {\r\n\r\n isCreatedBefore = false;\r\n @BlockUI() blockUI: NgBlockUI;\r\n\r\n constructor(private translator: BBSFTranslateService, private authService: AuthService , private environmentService: EnvironmentService,) {\r\n\r\n }\r\n\r\n\r\n getResourceValue(Key: string): string {\r\n let ResourceValue =this.translator.instant(Key)\r\n return ResourceValue;\r\n\r\n }\r\n\r\n getCurrentLanguage() {\r\n let currentLanguage = this.environmentService.getDefaultLanguage();\r\n let lang = localStorage.getItem('language');\r\n if ( lang) \r\n currentLanguage=lang;\r\n else \r\n localStorage.setItem('language', currentLanguage);\r\n return currentLanguage;\r\n }\r\n isCurrentLanguageEnglish() {\r\n return this.getCurrentLanguage() == \"en\"\r\n }\r\n isCurrentLanguageArabic() {\r\n return this.getCurrentLanguage() == \"ar\"\r\n }\r\n\r\n notifySuccessMessage(Message?: string, title?: string, time?: number) {\r\n\r\n let MessageTemplate = this.getResourceValue(\"SuccessMessage\");\r\n let titleTemplate = this.getResourceValue(\"Success\");\r\n if (Message) {\r\n MessageTemplate = Message;\r\n }\r\n if (title) {\r\n titleTemplate = title;\r\n }\r\n let toaster = AppInjector.get(ToastrService);\r\n toaster.success(MessageTemplate, titleTemplate);\r\n }\r\n\r\n notifyErrorMessage(Message?: string, title?: string, time?: number) {\r\n\r\n let MessageTemplate = this.getResourceValue(\"ErrorMessage\");\r\n let titleTemplate = this.getResourceValue(\"Error\");\r\n if (Message) {\r\n MessageTemplate = Message;\r\n }\r\n if (title) {\r\n titleTemplate = title;\r\n }\r\n const toaster = AppInjector.get(ToastrService);\r\n toaster.error(MessageTemplate, titleTemplate);\r\n }\r\n\r\n notifyWarningMessage(Message?: string, title?: string, time?: number) {\r\n\r\n let MessageTemplate = this.getResourceValue(\"WarningMessage\");\r\n let titleTemplate = this.getResourceValue(\"Warning\");\r\n if (Message) {\r\n MessageTemplate = Message;\r\n }\r\n if (title) {\r\n titleTemplate = title;\r\n }\r\n const toaster = AppInjector.get(ToastrService);\r\n toaster.warning(MessageTemplate, titleTemplate);\r\n }\r\n\r\n startBlockUI() {\r\n this.blockUI.start();\r\n }\r\n stopBlockUI() {\r\n this.blockUI.stop();\r\n }\r\n}\r\n","import { FormGroup } from \"@angular/forms\";\r\n\r\nexport class RequestOptionsModel {\r\n disableSuccessNotification: boolean=false;\r\n disableBlockUI: boolean=false;\r\n customSuccessMessage: string;\r\n customErrorMessage: string;\r\n responseType:any=\"\"\r\n formGroup:FormGroup=null\r\n}\r\n","import { Injectable, OnDestroy, Pipe } from '@angular/core';\r\nimport { HttpClient, HttpErrorResponse, HttpHeaders, HttpParams } from \"@angular/common/http\";\r\nimport { RequestOptionsModel } from '../models/RequestOptionsModel';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { AuthService } from '../authentication/auth.service';\r\nimport { EnvironmentService } from './environment.service';\r\nimport { Subject } from 'rxjs';\r\nimport { UtilityService } from './utility.service';\r\nimport { map, takeUntil, tap } from 'rxjs/operators';\r\nimport { ControlValidationService } from './controlvalidation.service';\r\nimport { BBSFTranslateService } from './translate.service';\r\nimport { result } from 'lodash';\r\n\r\n\r\n@Injectable()\r\nexport class RequestHandlerService implements OnDestroy {\r\n private requestOptions: RequestOptionsModel = new RequestOptionsModel();\r\n private currentLanguage = \"\";\r\n public onDestroy$: Subject<void> = new Subject<void>();\r\n constructor\r\n (\r\n private http: HttpClient,\r\n private authService: AuthService,\r\n private environmentService: EnvironmentService,\r\n private utilityService: UtilityService,\r\n private bbsfTranslateService: BBSFTranslateService\r\n ) {\r\n //using localStorage to avoid call getCurrentLanguage() because it is not all to use async in constructor\r\n\r\n this.bbsfTranslateService.onLangChange.subscribe((event) => {\r\n if (this.currentLanguage != event.lang) {\r\n this.currentLanguage = event.lang;\r\n }\r\n })\r\n }\r\n\r\n public getLuckyNumber(): Observable<number> {\r\n \r\n return Observable.create((subject: Subject<number>) => {\r\n setInterval(() => {\r\n const number = Math.floor(Math.random() * 10);\r\n console.log(number)\r\n subject.next(number);\r\n }, 1000);\r\n }).pipe(\r\n takeUntil(this.onDestroy$));\r\n }\r\n\r\n\r\n get<T>(Url: string, params?: HttpParams, requestOptions?: RequestOptionsModel):Observable<T>{\r\n if (requestOptions)\r\n this.requestOptions = requestOptions;\r\n let headers = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Authorization': this.authService.authorizationHeaderValue(),\r\n });\r\n this.currentLanguage = localStorage.getItem('language');\r\n headers = headers.set('Accept-Language', this.currentLanguage.toString());\r\n headers = headers.set('ignore-cookies', 'true');\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.startBlockUI();\r\n let object:T;\r\n return this.http.get<T>(this.environmentService.getApiUrl() + Url, { headers: headers, params: params }).pipe(\r\n takeUntil(this.onDestroy$),\r\n tap((result) => {\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.stopBlockUI();\r\n }),map((data: T) => {\r\n let result:T= <T>data;\r\n return result\r\n })\r\n );\r\n }\r\n\r\n post<T>(Url: string, model?: any, params?: HttpParams, requestOptions?: RequestOptionsModel):Observable<T> {\r\n \r\n \r\n if (requestOptions)\r\n this.requestOptions = requestOptions;\r\n let headers = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Authorization': this.authService.authorizationHeaderValue(),\r\n\r\n });\r\n this.currentLanguage = localStorage.getItem('language');\r\n headers = headers.set('Accept-Language', this.currentLanguage.toString());\r\n headers = headers.set('ignore-cookies', 'true');\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.startBlockUI();\r\n return this.http.post<T>(this.environmentService.getApiUrl() + Url, model, { headers: headers, params: params, responseType: this.requestOptions.responseType }).pipe(\r\n takeUntil(this.onDestroy$),\r\n tap((result) => {\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.stopBlockUI();\r\n })\r\n );\r\n }\r\n\r\n\r\n \r\n delete<T>(Url: string,deletedId:string,params?: HttpParams, requestOptions?: RequestOptionsModel):Observable<T>{\r\n if (requestOptions)\r\n this.requestOptions = requestOptions;\r\n let headers = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Authorization': this.authService.authorizationHeaderValue(),\r\n });\r\n this.currentLanguage = localStorage.getItem('language');\r\n headers = headers.set('Accept-Language', this.currentLanguage.toString());\r\n headers = headers.set('ignore-cookies', 'true');\r\n\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.startBlockUI();\r\n return this.http.delete<T>(this.environmentService.getApiUrl() + Url+`/${deletedId}`, { headers: headers, params: params }).pipe(\r\n takeUntil(this.onDestroy$),\r\n tap((result) => {\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.stopBlockUI();\r\n })\r\n );\r\n }\r\n\r\n\r\n put<T>(Url: string, model?: any, params?: HttpParams, requestOptions?: RequestOptionsModel):Observable<T> {\r\n if (requestOptions)\r\n this.requestOptions = requestOptions;\r\n let headers = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Authorization': this.authService.authorizationHeaderValue(),\r\n\r\n });\r\n this.currentLanguage = localStorage.getItem('language');\r\n headers = headers.set('Accept-Language', this.currentLanguage.toString());\r\n headers = headers.set('ignore-cookies', 'true');\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.startBlockUI();\r\n return this.http.put<T>(this.environmentService.getApiUrl() + Url, model, { headers: headers, params: params, responseType: this.requestOptions.responseType }).pipe(\r\n takeUntil(this.onDestroy$),\r\n tap((result) => {\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.stopBlockUI();\r\n })\r\n );\r\n }\r\n \r\n public destroyHandler(): void {\r\n this.onDestroy$.next();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n console.log(\"clearInterval\")\r\n this.destroyHandler()\r\n }\r\n}\r\n\r\n","import { DOCUMENT } from '@angular/common';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { BlockUI, NgBlockUI } from 'ng-block-ui';\r\nimport { BBSFTranslateService } from './translate.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class StylesBundleService {\r\n\r\n constructor(@Inject(DOCUMENT) private document: Document,private translateService: BBSFTranslateService){}\r\n\r\n loadThemes(lang: string,bundleEnglishName:string,bundleArabicName:string) {\r\n if (lang == \"ar\") {\r\n this.loadStyleBundle(bundleArabicName.toString())\r\n document.querySelector('html').setAttribute(\"lang\", \"ar\");\r\n document.querySelector('html').setAttribute(\"dir\", \"rtl\");\r\n } else {\r\n this.loadStyleBundle(bundleEnglishName.toString())\r\n document.querySelector('html').setAttribute(\"lang\", \"en\");\r\n document.querySelector('html').setAttribute(\"dir\", \"ltr\");\r\n }\r\n \r\n }\r\n\r\n loadStyleBundle(styleName: string) {\r\n const head = this.document.getElementsByTagName('head')[0];\r\n\r\n let themeLink = this.document.getElementById('client-theme') as HTMLLinkElement;\r\n\r\n if (themeLink && themeLink.href.includes(styleName)) {\r\n return;\r\n }\r\n else if (themeLink && !themeLink.href.includes(styleName)) {\r\n themeLink.remove();\r\n }\r\n const style = this.document.createElement('link');\r\n style.id = 'client-theme';\r\n style.rel = 'stylesheet';\r\n style.href = `${styleName}`;\r\n head.appendChild(style);\r\n }\r\n\r\n}\r\n\r\n","import { Injectable, Optional, Host, SkipSelf, Component } from '@angular/core';\r\nimport { IndividualConfig, ToastrService } from 'ngx-toastr';\r\nimport { BlockUI, NgBlockUI } from 'ng-block-ui';\r\nimport { AbstractControl, ControlContainer, ControlValueAccessor, NG_VALUE_ACCESSOR, FormControl, FormsModule, FormGroup } from '@angular/forms';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { ErrorModel } from '../models/ErrorModel';\r\nimport { UtilityService } from './utility.service';\r\nimport { RequestOptionsModel } from '../models/RequestOptionsModel';\r\n\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ControlValidationService {\r\n private requestOptions: RequestOptionsModel = new RequestOptionsModel();\r\n\r\n constructor\r\n (\r\n private utilityService: UtilityService\r\n ) {\r\n\r\n }\r\n\r\n isCreatedBefor = false;\r\n\r\n @BlockUI() blockUI: NgBlockUI;\r\n\r\n showGlobalError(errorMessage?: string | string[], formId?: string, deleteOld?: boolean) {\r\n let globalErorrElement = document.getElementsByClassName('alert alert-danger alert-InvalidValidation')\r\n if (globalErorrElement.length > 0) {\r\n this.removeElementsByClass('alert alert-danger alert-InvalidValidation');\r\n }\r\n\r\n\r\n if (this.isCreatedBefor == true) {\r\n this.removeElementsByClass('alert alert-danger alert-InvalidValidation');\r\n }\r\n\r\n // tslint:disable-next-line: prefer-const\r\n if (!formId)\r\n formId = \"currentForm\"\r\n var object = document.getElementById(formId);\r\n const tagName = 'div';\r\n // tslint:disable-next-line: prefer-const\r\n var elementToAppend = document.createElement(tagName); // Your tag name here\r\n let message: string | string[] = \"\";\r\n\r\n\r\n if (!errorMessage || (typeof errorMessage == \"string\")) {\r\n if (localStorage.getItem('language') == \"ar\")\r\n message = errorMessage ? errorMessage : \"لديك بعص الأخطاء . من فضلك قم بالمراجعه \";\r\n else\r\n message = errorMessage ? errorMessage : \"You have some validation errors. Please check below\"\r\n elementToAppend.innerHTML = \"<ul><li>\" + message + \"</li></ul>\";\r\n elementToAppend.className += 'alert alert-danger alert-InvalidValidation';\r\n elementToAppend.id += 'errorId';\r\n // tslint:disable-next-line: prefer-for-of\r\n const elementToAppen = elementToAppend.cloneNode(true);\r\n // let targetElement = object.getElementsByClassName(\"b-control\")[0];\r\n object.insertBefore(elementToAppen, object.firstChild);\r\n }\r\n else {\r\n elementToAppend.innerHTML = \"<ul>\";\r\n\r\n for (const iterator of errorMessage) {\r\n\r\n elementToAppend.innerHTML = \"<li>\" + iterator + \"</li>\";\r\n }\r\n\r\n elementToAppend.innerHTML = \"</ul>\";\r\n elementToAppend.className += 'alert alert-danger alert-InvalidValidation';\r\n elementToAppend.id += 'errorId';\r\n // tslint:disable-next-line: prefer-for-of\r\n const elementToAppen = elementToAppend.cloneNode(true);\r\n // let targetElement = object.getElementsByClassName(\"b-control\")[0];\r\n object.insertBefore(elementToAppen, object.firstChild);\r\n }\r\n\r\n this.isCreatedBefor = true;\r\n\r\n }\r\n\r\n RemoveGlobalError() {\r\n const removedList = document.getElementsByClassName('alert alert-danger alert-InvalidValidation');\r\n // tslint:disable-next-line: prefer-for-of\r\n for (let index = 0; index < removedList.length; index++) {\r\n const element = removedList[index];\r\n element.remove();\r\n }\r\n this.isCreatedBefor = false;\r\n }\r\n\r\n showInputErro(errors: any) {\r\n\r\n // show error on top of form \r\n this.showGlobalError();\r\n // remove old error from server\r\n this.removeElementsByClass('errortemplet');\r\n // Looping in error Object\r\n for (const key in errors) {\r\n if (errors.hasOwnProperty(key)) {\r\n for (const iterator of errors[key]) {\r\n const input = document.querySelectorAll('[ng-reflect-name=' + key + ']')[0];\r\n if ((input.attributes['ng-reflect-name'].value as string) === key) {\r\n this.removeElementsByClass('erroclass-' + key);\r\n const tagName = 'p'\r\n const elementToAppend = document.createElement(tagName); // Your tag name here\r\n elementToAppend.innerHTML = iterator;\r\n elementToAppend.style.color = 'red'\r\n elementToAppend.className += 'errortemplet erroclass-' + key;\r\n const elementToappen = elementToAppend.cloneNode(true);\r\n input.parentNode.insertBefore(elementToappen, input.lastChild);\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n removeElementsByClass(className) {\r\n const elements = document.getElementsByClassName(className);\r\n while (elements.length > 0) {\r\n elements[0].parentNode.removeChild(elements[0]);\r\n }\r\n }\r\n\r\n\r\n renderServerErrors(form: FormGroup, err: HttpErrorResponse, requestOptions: RequestOptionsModel, formId?: string) {\r\n if (err.error == null) {\r\n return;\r\n }\r\n let errorsArray: string[] = [];\r\n\r\n this.requestOptions = requestOptions;\r\n err.error.validation_errors.forEach((element: ErrorModel) => {\r\n let fieldName = element.field;\r\n let controlName = element.controlName;\r\n let message = element.message;\r\n if (form == null) {\r\n this.requestOptions.customErrorMessage ? this.utilityService.notifyErrorMessage(this.requestOptions.customErrorMessage) : this.utilityService.notifyErrorMessage(`${fieldName}: ${message}`);\r\n }\r\n else if (controlName && !this.hasControlName(form, controlName)) {\r\n errorsArray.push(`${fieldName}: ${message}`);\r\n // this.showGlobalError(`${fieldName}: ${message}`,formId )\r\n }\r\n else {\r\n this.setFieldError(form, controlName, fieldName, message);\r\n }\r\n });\r\n if (errorsArray.length > 0)\r\n this.showGlobalError(errorsArray, formId)\r\n\r\n\r\n }\r\n\r\n private hasControlName(form: FormGroup, controlName: string): boolean {\r\n let control = form.get(controlName);\r\n return control != null;\r\n }\r\n\r\n private setFieldError(form: FormGroup, controlName: string, fieldName: string, message: string) {\r\n let control = null\r\n if (controlName)\r\n control = form.get(controlName);\r\n else\r\n control = form.get(fieldName.split('.')[0]);\r\n let errors = { \"errorMassage\": message };\r\n let fieldNameArray = fieldName.split('.');\r\n if (fieldNameArray.length >= 1) {\r\n switch (fieldNameArray[fieldNameArray.length - 1].toLocaleLowerCase()) {\r\n case \"english\":\r\n let englishControl = control.get(\"English\")\r\n englishControl.setErrors(errors);\r\n break;\r\n case \"arabic\":\r\n let arabicControl = control.get(\"Arabic\")\r\n arabicControl.setErrors(errors);\r\n break;\r\n\r\n default:\r\n control.setErrors(errors);\r\n }\r\n\r\n }\r\n else if (fieldNameArray.length == 1) {\r\n control.setErrors(errors);\r\n }\r\n else {\r\n this.requestOptions.customErrorMessage ? this.utilityService.notifyErrorMessage(this.requestOptions.customErrorMessage) : this.utilityService.notifyErrorMessage(`${fieldName}: ${message}`)\r\n }\r\n\r\n\r\n }\r\n\r\n\r\n}\r\n","import { HttpParams } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { AuthService } from \"../authentication/auth.service\";\r\nimport { RequestHandlerService } from \"./requesthandler.service\";\r\nimport { StylesBundleService } from \"./stylesbundle.service\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MasterLayoutService {\r\n ApiUrl=\"/api/admin/Users/\"\r\n constructor(private router: Router, private http: RequestHandlerService, private authService: AuthService,private stylesBundleService:StylesBundleService ,private translate:TranslateService) {\r\n }\r\n switchLang(lang: string, bundleEnglishName: string, bundleArabicName: string) {\r\n this.changeLanguage(lang).subscribe((result) => {\r\n this.updateUserInfo().subscribe((Value) => {\r\n let UserInfoObject =Value ;\r\n this.authService.getUser();\r\n this.authService.user.profile = Object.assign( this.authService.user.profile, UserInfoObject);\r\n this.authService.storUser(this.authService.user);\r\n this.stylesBundleService.loadThemes(lang,bundleEnglishName,bundleArabicName);\r\n localStorage.setItem('language', lang);\r\n this.translate.use(lang);\r\n });\r\n });\r\n }\r\n reloadComponent() {\r\n let currentUrl = this.router.url;\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n this.router.onSameUrlNavigation = 'reload';\r\n this.router.navigate([currentUrl]);\r\n }\r\n\r\n private changeLanguage(key: string) {\r\n\r\n let params = new HttpParams();\r\n params = params.append(\"UserId\", this.authService.user.profile.id);\r\n params = params.append(\"LanguageKey\", key);\r\n return this.http.post(this.ApiUrl + 'updateLaguage', null, params)\r\n }\r\n\r\n private updateUserInfo() {\r\n return this.http.get('/connect/userinfo')\r\n }\r\n\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injector, NgModule } from '@angular/core';\r\nimport { RouterModule } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { BlockUIModule } from 'ng-block-ui';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { HttpModule } from '@angular/http';\r\nimport { UtilityService } from './shared/services/utility.service';\r\nimport { EnvironmentService } from './shared/services/environment.service';\r\nimport { AuthService } from './shared/authentication/auth.service';\r\nimport { RequestHandlerService } from './shared/services/requesthandler.service';\r\nimport { StylesBundleService } from './shared/services/stylesbundle.service';\r\nimport { BBSFTranslateService } from './shared/services/translate.service';\r\nimport { ControlValidationService } from './shared/services/controlvalidation.service';\r\nimport { MasterLayoutService } from './shared/services/masterlayout.service';\r\n\r\nexport let AppInjector: Injector;\r\n\r\n@NgModule({\r\n declarations: [\r\n ],\r\n imports: [\r\n CommonModule,\r\n BlockUIModule.forRoot(),\r\n HttpModule,\r\n RouterModule,\r\n ToastrModule.forRoot(),\r\n\r\n ],\r\n exports: [\r\n \r\n ],\r\n providers:[\r\n UtilityService,\r\n EnvironmentService,\r\n AuthService,\r\n RequestHandlerService,\r\n StylesBundleService,\r\n TranslateService,\r\n BBSFTranslateService,\r\n ControlValidationService,\r\n MasterLayoutService\r\n ]\r\n})\r\nexport class BBSFUtilitiesModule { \r\n\r\n constructor(private injector: Injector) {\r\n AppInjector = this.injector;\r\n\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Resolve } from \"@angular/router\";\r\nimport { Observable } from \"rxjs\";\r\nimport { BBSFTranslateService } from \"./translate.service\";\r\n\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class TranslationResolverService implements Resolve<any> {\r\n constructor(private translateService: BBSFTranslateService) {}\r\n\r\n resolve(): Observable<any> {\r\n return this.translateService.getTranslation(\r\n this.translateService.currentLang\r\n );\r\n }\r\n}\r\n","/*\r\n * Public API Surface of @bnsights/bbsf-utilities\r\n */\r\n\r\nexport * from './lib/bbsf-utilities.module';\r\n\r\nexport * from './lib/shared/services/utility.service';\r\nexport * from './lib/shared/services/environment.service';\r\nexport * from './lib/shared/services/requesthandler.service'\r\nexport * from './lib/shared/services/stylesbundle.service'\r\nexport * from './lib/shared/services/translate.service'\r\nexport * from './lib/shared/services/controlvalidation.service'\r\nexport * from './lib/shared/services/masterlayout.service'\r\nexport * from './lib/shared/services/translationresolver.service'\r\n\r\n\r\nexport * from './lib/shared/config/environment';\r\n\r\n\r\nexport * from './lib/shared/authentication/auth.service';\r\n\r\n\r\nexport * from './lib/shared/models/RequestOptionsModel';\r\n\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["Injectable","TranslateService","BehaviorSubject","Subject","UserManager","WebStorageStateStore","HttpHeaders","HttpClient","AppInjector","ToastrService","BlockUI","Observable","takeUntil","tap","map","Inject","DOCUMENT","HttpParams","Router","NgModule","CommonModule","BlockUIModule","HttpModule","RouterModule","ToastrModule","Injector"],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import { AuthService } from '../authentication/auth.service';
|
|
|
6
6
|
import { EnvironmentService } from './environment.service';
|
|
7
7
|
import { Subject } from 'rxjs';
|
|
8
8
|
import { UtilityService } from './utility.service';
|
|
9
|
-
import { takeUntil, tap } from 'rxjs/operators';
|
|
9
|
+
import { map, takeUntil, tap } from 'rxjs/operators';
|
|
10
10
|
import { BBSFTranslateService } from './translate.service';
|
|
11
11
|
export class RequestHandlerService {
|
|
12
12
|
constructor(http, authService, environmentService, utilityService, bbsfTranslateService) {
|
|
@@ -46,9 +46,13 @@ export class RequestHandlerService {
|
|
|
46
46
|
headers = headers.set('ignore-cookies', 'true');
|
|
47
47
|
if (!this.requestOptions.disableBlockUI)
|
|
48
48
|
this.utilityService.startBlockUI();
|
|
49
|
+
let object;
|
|
49
50
|
return this.http.get(this.environmentService.getApiUrl() + Url, { headers: headers, params: params }).pipe(takeUntil(this.onDestroy$), tap((result) => {
|
|
50
51
|
if (!this.requestOptions.disableBlockUI)
|
|
51
52
|
this.utilityService.stopBlockUI();
|
|
53
|
+
}), map((data) => {
|
|
54
|
+
let result = data;
|
|
55
|
+
return result;
|
|
52
56
|
}));
|
|
53
57
|
}
|
|
54
58
|
post(Url, model, params, requestOptions) {
|
|
@@ -120,4 +124,4 @@ RequestHandlerService.ctorParameters = () => [
|
|
|
120
124
|
{ type: UtilityService },
|
|
121
125
|
{ type: BBSFTranslateService }
|
|
122
126
|
];
|
|
123
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdGhhbmRsZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtdXRpbGl0aWVzL3NyYy9saWIvc2hhcmVkL3NlcnZpY2VzL3JlcXVlc3RoYW5kbGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBbUIsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFFLFVBQVUsRUFBcUIsV0FBVyxFQUFjLE1BQU0sc0JBQXNCLENBQUM7QUFDOUYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDcEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM3RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUcsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWpELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRzNELE1BQU0sT0FBTyxxQkFBcUI7SUFJaEMsWUFFWSxJQUFnQixFQUNoQixXQUF3QixFQUN4QixrQkFBc0MsRUFDdEMsY0FBOEIsRUFDOUIsb0JBQTBDO1FBRXBELDBHQUEwRztRQU5oRyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFUOUMs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QUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDMUUsT0FBTyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDaEQsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsY0FBYztZQUNyQyxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3JDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsRUFBRSxHQUFHLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQ2xLLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQzFCLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsY0FBYztnQkFDcEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN2QyxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVNLGNBQWM7UUFDbkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUE7UUFDNUIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFBO0lBQ3ZCLENBQUM7OztZQXZJRixVQUFVOzs7WUFYRixVQUFVO1lBR1YsV0FBVztZQUNYLGtCQUFrQjtZQUVsQixjQUFjO1lBR2Qsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95LCBQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBFcnJvclJlc3BvbnNlLCBIdHRwSGVhZGVycywgSHR0cFBhcmFtcyB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQgeyBSZXF1ZXN0T3B0aW9uc01vZGVsIH0gZnJvbSAnLi4vbW9kZWxzL1JlcXVlc3RPcHRpb25zTW9kZWwnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcy9pbnRlcm5hbC9PYnNlcnZhYmxlJztcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi9hdXRoZW50aWNhdGlvbi9hdXRoLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBFbnZpcm9ubWVudFNlcnZpY2UgfSBmcm9tICcuL2Vudmlyb25tZW50LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFV0aWxpdHlTZXJ2aWNlIH0gZnJvbSAnLi91dGlsaXR5LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyAgdGFrZVVudGlsLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IENvbnRyb2xWYWxpZGF0aW9uU2VydmljZSB9IGZyb20gJy4vY29udHJvbHZhbGlkYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IEJCU0ZUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnLi90cmFuc2xhdGUuc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBSZXF1ZXN0SGFuZGxlclNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xyXG4gIHByaXZhdGUgcmVxdWVzdE9wdGlvbnM6IFJlcXVlc3RPcHRpb25zTW9kZWwgPSBuZXcgUmVxdWVzdE9wdGlvbnNNb2RlbCgpO1xyXG4gIHByaXZhdGUgY3VycmVudExhbmd1YWdlID0gXCJcIjtcclxuICBwdWJsaWMgb25EZXN0cm95JDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgY29uc3RydWN0b3JcclxuICAgIChcclxuICAgICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxyXG4gICAgICBwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSxcclxuICAgICAgcHJpdmF0ZSBlbnZpcm9ubWVudFNlcnZpY2U6IEVudmlyb25tZW50U2VydmljZSxcclxuICAgICAgcHJpdmF0ZSB1dGlsaXR5U2VydmljZTogVXRpbGl0eVNlcnZpY2UsXHJcbiAgICAgIHByaXZhdGUgYmJzZlRyYW5zbGF0ZVNlcnZpY2U6IEJCU0ZUcmFuc2xhdGVTZXJ2aWNlXHJcbiAgICApIHtcclxuICAgIC8vdXNpbmcgbG9jYWxTdG9yYWdlICB0byBhdm9pZCBjYWxsIGdldEN1cnJlbnRMYW5ndWFnZSgpIGJlY2F1c2UgaXQgaXMgbm90IGFsbCB0byB1c2UgYXN5bmMgaW4gY29uc3RydWN0b3JcclxuXHJcbiAgICB0aGlzLmJic2ZUcmFuc2xhdGVTZXJ2aWNlLm9uTGFuZ0NoYW5nZS5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLmN1cnJlbnRMYW5ndWFnZSAhPSBldmVudC5sYW5nKSB7XHJcbiAgICAgICAgdGhpcy5jdXJyZW50TGFuZ3VhZ2UgPSBldmVudC5sYW5nO1xyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldEx1Y2t5TnVtYmVyKCk6IE9ic2VydmFibGU8bnVtYmVyPiB7XHJcbiAgICBcclxuICAgIHJldHVybiBPYnNlcnZhYmxlLmNyZWF0ZSgoc3ViamVjdDogU3ViamVjdDxudW1iZXI+KSA9PiB7XHJcbiAgICAgICAgc2V0SW50ZXJ2YWwoKCkgPT4ge1xyXG4gICAgICAgICAgY29uc3QgbnVtYmVyID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMTApO1xyXG4gICAgICAgICAgY29uc29sZS5sb2cobnVtYmVyKVxyXG4gICAgICAgICAgc3ViamVjdC5uZXh0KG51bWJlcik7XHJcbiAgICAgICAgfSwgMTAwMCk7XHJcbiAgICAgIH0pLnBpcGUoXHJcbiAgICAgICAgdGFrZVVudGlsKHRoaXMub25EZXN0cm95JCkpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgZ2V0PFQ+KFVybDogc3RyaW5nLCBwYXJhbXM/OiBIdHRwUGFyYW1zLCByZXF1ZXN0T3B0aW9ucz86IFJlcXVlc3RPcHRpb25zTW9kZWwpOk9ic2VydmFibGU8VD57XHJcbiAgICBpZiAocmVxdWVzdE9wdGlvbnMpXHJcbiAgICAgIHRoaXMucmVxdWVzdE9wdGlvbnMgPSByZXF1ZXN0T3B0aW9ucztcclxuICAgIGxldCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKHtcclxuICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcclxuICAgICAgJ0F1dGhvcml6YXRpb24nOiB0aGlzLmF1dGhTZXJ2aWNlLmF1dGhvcml6YXRpb25IZWFkZXJWYWx1ZSgpLFxyXG4gICAgfSk7XHJcbiAgICB0aGlzLmN1cnJlbnRMYW5ndWFnZSA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdsYW5ndWFnZScpO1xyXG4gICAgaGVhZGVycyA9IGhlYWRlcnMuc2V0KCdBY2NlcHQtTGFuZ3VhZ2UnLCB0aGlzLmN1cnJlbnRMYW5ndWFnZS50b1N0cmluZygpKTtcclxuICAgIGhlYWRlcnMgPSBoZWFkZXJzLnNldCgnaWdub3JlLWNvb2tpZXMnLCAndHJ1ZScpO1xyXG4gICAgaWYgKCF0aGlzLnJlcXVlc3RPcHRpb25zLmRpc2FibGVCbG9ja1VJKVxyXG4gICAgICB0aGlzLnV0aWxpdHlTZXJ2aWNlLnN0YXJ0QmxvY2tVSSgpO1xyXG4gICAgICBcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PFQ+KHRoaXMuZW52aXJvbm1lbnRTZXJ2aWNlLmdldEFwaVVybCgpICsgVXJsLCB7IGhlYWRlcnM6IGhlYWRlcnMsIHBhcmFtczogcGFyYW1zIH0pLnBpcGUoXHJcbiAgICAgIHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSQpLFxyXG4gICAgICB0YXAoKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgIGlmICghdGhpcy5yZXF1ZXN0T3B0aW9ucy5kaXNhYmxlQmxvY2tVSSlcclxuICAgICAgICAgIHRoaXMudXRpbGl0eVNlcnZpY2Uuc3RvcEJsb2NrVUkoKTtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwb3N0PFQ+KFVybDogc3RyaW5nLCBtb2RlbD86IGFueSwgcGFyYW1zPzogSHR0cFBhcmFtcywgcmVxdWVzdE9wdGlvbnM/OiBSZXF1ZXN0T3B0aW9uc01vZGVsKTpPYnNlcnZhYmxlPFQ+ICAge1xyXG4gICAgXHJcbiAgIFxyXG4gICAgaWYgKHJlcXVlc3RPcHRpb25zKVxyXG4gICAgICB0aGlzLnJlcXVlc3RPcHRpb25zID0gcmVxdWVzdE9wdGlvbnM7XHJcbiAgICBsZXQgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycyh7XHJcbiAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXHJcbiAgICAgICdBdXRob3JpemF0aW9uJzogdGhpcy5hdXRoU2VydmljZS5hdXRob3JpemF0aW9uSGVhZGVyVmFsdWUoKSxcclxuXHJcbiAgICB9KTtcclxuICAgIHRoaXMuY3VycmVudExhbmd1YWdlID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2xhbmd1YWdlJyk7XHJcbiAgICBoZWFkZXJzID0gaGVhZGVycy5zZXQoJ0FjY2VwdC1MYW5ndWFnZScsIHRoaXMuY3VycmVudExhbmd1YWdlLnRvU3RyaW5nKCkpO1xyXG4gICAgaGVhZGVycyA9IGhlYWRlcnMuc2V0KCdpZ25vcmUtY29va2llcycsICd0cnVlJyk7XHJcbiAgICBpZiAoIXRoaXMucmVxdWVzdE9wdGlvbnMuZGlzYWJsZUJsb2NrVUkpXHJcbiAgICAgIHRoaXMudXRpbGl0eVNlcnZpY2Uuc3RhcnRCbG9ja1VJKCk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8VD4odGhpcy5lbnZpcm9ubWVudFNlcnZpY2UuZ2V0QXBpVXJsKCkgKyBVcmwsIG1vZGVsLCB7IGhlYWRlcnM6IGhlYWRlcnMsIHBhcmFtczogcGFyYW1zLCByZXNwb25zZVR5cGU6IHRoaXMucmVxdWVzdE9wdGlvbnMucmVzcG9uc2VUeXBlIH0pLnBpcGUoXHJcbiAgICAgIHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSQpLFxyXG4gICAgICB0YXAoKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgIGlmICghdGhpcy5yZXF1ZXN0T3B0aW9ucy5kaXNhYmxlQmxvY2tVSSlcclxuICAgICAgICAgICB0aGlzLnV0aWxpdHlTZXJ2aWNlLnN0b3BCbG9ja1VJKCk7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcblxyXG4gIFxyXG4gIGRlbGV0ZTxUPihVcmw6IHN0cmluZyxkZWxldGVkSWQ6c3RyaW5nLHBhcmFtcz86IEh0dHBQYXJhbXMsIHJlcXVlc3RPcHRpb25zPzogUmVxdWVzdE9wdGlvbnNNb2RlbCk6T2JzZXJ2YWJsZTxUPntcclxuICAgIGlmIChyZXF1ZXN0T3B0aW9ucylcclxuICAgICAgdGhpcy5yZXF1ZXN0T3B0aW9ucyA9IHJlcXVlc3RPcHRpb25zO1xyXG4gICAgbGV0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoe1xyXG4gICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxyXG4gICAgICAnQXV0aG9yaXphdGlvbic6IHRoaXMuYXV0aFNlcnZpY2UuYXV0aG9yaXphdGlvbkhlYWRlclZhbHVlKCksXHJcbiAgICB9KTtcclxuICAgIHRoaXMuY3VycmVudExhbmd1YWdlID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2xhbmd1YWdlJyk7XHJcbiAgICBoZWFkZXJzID0gaGVhZGVycy5zZXQoJ0FjY2VwdC1MYW5ndWFnZScsIHRoaXMuY3VycmVudExhbmd1YWdlLnRvU3RyaW5nKCkpO1xyXG4gICAgaGVhZGVycyA9IGhlYWRlcnMuc2V0KCdpZ25vcmUtY29va2llcycsICd0cnVlJyk7XHJcblxyXG4gICAgaWYgKCF0aGlzLnJlcXVlc3RPcHRpb25zLmRpc2FibGVCbG9ja1VJKVxyXG4gICAgICB0aGlzLnV0aWxpdHlTZXJ2aWNlLnN0YXJ0QmxvY2tVSSgpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kZWxldGU8VD4odGhpcy5lbnZpcm9ubWVudFNlcnZpY2UuZ2V0QXBpVXJsKCkgKyBVcmwrYC8ke2RlbGV0ZWRJZH1gLCB7IGhlYWRlcnM6IGhlYWRlcnMsIHBhcmFtczogcGFyYW1zIH0pLnBpcGUoXHJcbiAgICAgIHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSQpLFxyXG4gICAgICB0YXAoKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgIGlmICghdGhpcy5yZXF1ZXN0T3B0aW9ucy5kaXNhYmxlQmxvY2tVSSlcclxuICAgICAgICAgIHRoaXMudXRpbGl0eVNlcnZpY2Uuc3RvcEJsb2NrVUkoKTtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuXHJcbiAgcHV0PFQ+KFVybDogc3RyaW5nLCBtb2RlbD86IGFueSwgcGFyYW1zPzogSHR0cFBhcmFtcywgcmVxdWVzdE9wdGlvbnM/OiBSZXF1ZXN0T3B0aW9uc01vZGVsKTpPYnNlcnZhYmxlPFQ+IHtcclxuICAgIGlmIChyZXF1ZXN0T3B0aW9ucylcclxuICAgICAgdGhpcy5yZXF1ZXN0T3B0aW9ucyA9IHJlcXVlc3RPcHRpb25zO1xyXG4gICAgbGV0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoe1xyXG4gICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxyXG4gICAgICAnQXV0aG9yaXphdGlvbic6IHRoaXMuYXV0aFNlcnZpY2UuYXV0aG9yaXphdGlvbkhlYWRlclZhbHVlKCksXHJcblxyXG4gICAgfSk7XHJcbiAgICB0aGlzLmN1cnJlbnRMYW5ndWFnZSA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdsYW5ndWFnZScpO1xyXG4gICAgaGVhZGVycyA9IGhlYWRlcnMuc2V0KCdBY2NlcHQtTGFuZ3VhZ2UnLCB0aGlzLmN1cnJlbnRMYW5ndWFnZS50b1N0cmluZygpKTtcclxuICAgIGhlYWRlcnMgPSBoZWFkZXJzLnNldCgnaWdub3JlLWNvb2tpZXMnLCAndHJ1ZScpO1xyXG4gICAgaWYgKCF0aGlzLnJlcXVlc3RPcHRpb25zLmRpc2FibGVCbG9ja1VJKVxyXG4gICAgICB0aGlzLnV0aWxpdHlTZXJ2aWNlLnN0YXJ0QmxvY2tVSSgpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQ8VD4odGhpcy5lbnZpcm9ubWVudFNlcnZpY2UuZ2V0QXBpVXJsKCkgKyBVcmwsIG1vZGVsLCB7IGhlYWRlcnM6IGhlYWRlcnMsIHBhcmFtczogcGFyYW1zLCByZXNwb25zZVR5cGU6IHRoaXMucmVxdWVzdE9wdGlvbnMucmVzcG9uc2VUeXBlIH0pLnBpcGUoXHJcbiAgICAgIHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSQpLFxyXG4gICAgICB0YXAoKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgIGlmICghdGhpcy5yZXF1ZXN0T3B0aW9ucy5kaXNhYmxlQmxvY2tVSSlcclxuICAgICAgICAgICB0aGlzLnV0aWxpdHlTZXJ2aWNlLnN0b3BCbG9ja1VJKCk7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuICBcclxuICBwdWJsaWMgZGVzdHJveUhhbmRsZXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLm9uRGVzdHJveSQubmV4dCgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICBjb25zb2xlLmxvZyhcImNsZWFySW50ZXJ2YWxcIilcclxuICAgIHRoaXMuZGVzdHJveUhhbmRsZXIoKVxyXG4gIH1cclxufVxyXG5cclxuIl19
|
|
127
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdGhhbmRsZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jic2YtdXRpbGl0aWVzL3NyYy9saWIvc2hhcmVkL3NlcnZpY2VzL3JlcXVlc3RoYW5kbGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBbUIsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFFLFVBQVUsRUFBcUIsV0FBVyxFQUFjLE1BQU0sc0JBQXNCLENBQUM7QUFDOUYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDcEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM3RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUszRCxNQUFNLE9BQU8scUJBQXFCO0lBSWhDLFlBRVksSUFBZ0IsRUFDaEIsV0FBd0IsRUFDeEIsa0JBQXNDLEVBQ3RDLGNBQThCLEVBQzlCLG9CQUEwQztRQUVwRCwwR0FBMEc7UUFOaEcsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4Qix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQ3RDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5Qix5QkFBb0IsR0FBcEIsb0JBQW9CLENB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RixVQUFVOzs7WUFiRixVQUFVO1lBR1YsV0FBVztZQUNYLGtCQUFrQjtZQUVsQixjQUFjO1lBR2Qsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95LCBQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBFcnJvclJlc3BvbnNlLCBIdHRwSGVhZGVycywgSHR0cFBhcmFtcyB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQgeyBSZXF1ZXN0T3B0aW9uc01vZGVsIH0gZnJvbSAnLi4vbW9kZWxzL1JlcXVlc3RPcHRpb25zTW9kZWwnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcy9pbnRlcm5hbC9PYnNlcnZhYmxlJztcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi9hdXRoZW50aWNhdGlvbi9hdXRoLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBFbnZpcm9ubWVudFNlcnZpY2UgfSBmcm9tICcuL2Vudmlyb25tZW50LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFV0aWxpdHlTZXJ2aWNlIH0gZnJvbSAnLi91dGlsaXR5LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBtYXAsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBDb250cm9sVmFsaWRhdGlvblNlcnZpY2UgfSBmcm9tICcuL2NvbnRyb2x2YWxpZGF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBCQlNGVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJy4vdHJhbnNsYXRlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyByZXN1bHQgfSBmcm9tICdsb2Rhc2gnO1xyXG5cclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIFJlcXVlc3RIYW5kbGVyU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcbiAgcHJpdmF0ZSByZXF1ZXN0T3B0aW9uczogUmVxdWVzdE9wdGlvbnNNb2RlbCA9IG5ldyBSZXF1ZXN0T3B0aW9uc01vZGVsKCk7XHJcbiAgcHJpdmF0ZSBjdXJyZW50TGFuZ3VhZ2UgPSBcIlwiO1xyXG4gIHB1YmxpYyBvbkRlc3Ryb3kkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICBjb25zdHJ1Y3RvclxyXG4gICAgKFxyXG4gICAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXHJcbiAgICAgIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLFxyXG4gICAgICBwcml2YXRlIGVudmlyb25tZW50U2VydmljZTogRW52aXJvbm1lbnRTZXJ2aWNlLFxyXG4gICAgICBwcml2YXRlIHV0aWxpdHlTZXJ2aWNlOiBVdGlsaXR5U2VydmljZSxcclxuICAgICAgcHJpdmF0ZSBiYnNmVHJhbnNsYXRlU2VydmljZTogQkJTRlRyYW5zbGF0ZVNlcnZpY2VcclxuICAgICkge1xyXG4gICAgLy91c2luZyBsb2NhbFN0b3JhZ2UgIHRvIGF2b2lkIGNhbGwgZ2V0Q3VycmVudExhbmd1YWdlKCkgYmVjYXVzZSBpdCBpcyBub3QgYWxsIHRvIHVzZSBhc3luYyBpbiBjb25zdHJ1Y3RvclxyXG5cclxuICAgIHRoaXMuYmJzZlRyYW5zbGF0ZVNlcnZpY2Uub25MYW5nQ2hhbmdlLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcclxuICAgICAgaWYgKHRoaXMuY3VycmVudExhbmd1YWdlICE9IGV2ZW50LmxhbmcpIHtcclxuICAgICAgICB0aGlzLmN1cnJlbnRMYW5ndWFnZSA9IGV2ZW50Lmxhbmc7XHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0THVja3lOdW1iZXIoKTogT2JzZXJ2YWJsZTxudW1iZXI+IHtcclxuICAgIFxyXG4gICAgcmV0dXJuIE9ic2VydmFibGUuY3JlYXRlKChzdWJqZWN0OiBTdWJqZWN0PG51bWJlcj4pID0+IHtcclxuICAgICAgICBzZXRJbnRlcnZhbCgoKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBudW1iZXIgPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAxMCk7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhudW1iZXIpXHJcbiAgICAgICAgICBzdWJqZWN0Lm5leHQobnVtYmVyKTtcclxuICAgICAgICB9LCAxMDAwKTtcclxuICAgICAgfSkucGlwZShcclxuICAgICAgICB0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kkKSk7XHJcbiAgICB9XHJcblxyXG5cclxuICBnZXQ8VD4oVXJsOiBzdHJpbmcsIHBhcmFtcz86IEh0dHBQYXJhbXMsIHJlcXVlc3RPcHRpb25zPzogUmVxdWVzdE9wdGlvbnNNb2RlbCk6T2JzZXJ2YWJsZTxUPntcclxuICAgIGlmIChyZXF1ZXN0T3B0aW9ucylcclxuICAgICAgdGhpcy5yZXF1ZXN0T3B0aW9ucyA9IHJlcXVlc3RPcHRpb25zO1xyXG4gICAgbGV0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoe1xyXG4gICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxyXG4gICAgICAnQXV0aG9yaXphdGlvbic6IHRoaXMuYXV0aFNlcnZpY2UuYXV0aG9yaXphdGlvbkhlYWRlclZhbHVlKCksXHJcbiAgICB9KTtcclxuICAgIHRoaXMuY3VycmVudExhbmd1YWdlID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2xhbmd1YWdlJyk7XHJcbiAgICBoZWFkZXJzID0gaGVhZGVycy5zZXQoJ0FjY2VwdC1MYW5ndWFnZScsIHRoaXMuY3VycmVudExhbmd1YWdlLnRvU3RyaW5nKCkpO1xyXG4gICAgaGVhZGVycyA9IGhlYWRlcnMuc2V0KCdpZ25vcmUtY29va2llcycsICd0cnVlJyk7XHJcbiAgICBpZiAoIXRoaXMucmVxdWVzdE9wdGlvbnMuZGlzYWJsZUJsb2NrVUkpXHJcbiAgICAgIHRoaXMudXRpbGl0eVNlcnZpY2Uuc3RhcnRCbG9ja1VJKCk7XHJcbiAgICAgIGxldCBvYmplY3Q6VDtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PFQ+KHRoaXMuZW52aXJvbm1lbnRTZXJ2aWNlLmdldEFwaVVybCgpICsgVXJsLCB7IGhlYWRlcnM6IGhlYWRlcnMsIHBhcmFtczogcGFyYW1zIH0pLnBpcGUoXHJcbiAgICAgIHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSQpLFxyXG4gICAgICB0YXAoKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgIGlmICghdGhpcy5yZXF1ZXN0T3B0aW9ucy5kaXNhYmxlQmxvY2tVSSlcclxuICAgICAgICAgIHRoaXMudXRpbGl0eVNlcnZpY2Uuc3RvcEJsb2NrVUkoKTtcclxuICAgICAgfSksbWFwKChkYXRhOiBUKSA9PiB7XHJcbiAgICAgICAgbGV0IHJlc3VsdDpUPSA8VD5kYXRhO1xyXG4gICAgICAgIHJldHVybiByZXN1bHRcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwb3N0PFQ+KFVybDogc3RyaW5nLCBtb2RlbD86IGFueSwgcGFyYW1zPzogSHR0cFBhcmFtcywgcmVxdWVzdE9wdGlvbnM/OiBSZXF1ZXN0T3B0aW9uc01vZGVsKTpPYnNlcnZhYmxlPFQ+ICAge1xyXG4gICAgXHJcbiAgIFxyXG4gICAgaWYgKHJlcXVlc3RPcHRpb25zKVxyXG4gICAgICB0aGlzLnJlcXVlc3RPcHRpb25zID0gcmVxdWVzdE9wdGlvbnM7XHJcbiAgICBsZXQgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycyh7XHJcbiAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXHJcbiAgICAgICdBdXRob3JpemF0aW9uJzogdGhpcy5hdXRoU2VydmljZS5hdXRob3JpemF0aW9uSGVhZGVyVmFsdWUoKSxcclxuXHJcbiAgICB9KTtcclxuICAgIHRoaXMuY3VycmVudExhbmd1YWdlID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2xhbmd1YWdlJyk7XHJcbiAgICBoZWFkZXJzID0gaGVhZGVycy5zZXQoJ0FjY2VwdC1MYW5ndWFnZScsIHRoaXMuY3VycmVudExhbmd1YWdlLnRvU3RyaW5nKCkpO1xyXG4gICAgaGVhZGVycyA9IGhlYWRlcnMuc2V0KCdpZ25vcmUtY29va2llcycsICd0cnVlJyk7XHJcbiAgICBpZiAoIXRoaXMucmVxdWVzdE9wdGlvbnMuZGlzYWJsZUJsb2NrVUkpXHJcbiAgICAgIHRoaXMudXRpbGl0eVNlcnZpY2Uuc3RhcnRCbG9ja1VJKCk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8VD4odGhpcy5lbnZpcm9ubWVudFNlcnZpY2UuZ2V0QXBpVXJsKCkgKyBVcmwsIG1vZGVsLCB7IGhlYWRlcnM6IGhlYWRlcnMsIHBhcmFtczogcGFyYW1zLCByZXNwb25zZVR5cGU6IHRoaXMucmVxdWVzdE9wdGlvbnMucmVzcG9uc2VUeXBlIH0pLnBpcGUoXHJcbiAgICAgIHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSQpLFxyXG4gICAgICB0YXAoKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgIGlmICghdGhpcy5yZXF1ZXN0T3B0aW9ucy5kaXNhYmxlQmxvY2tVSSlcclxuICAgICAgICAgICB0aGlzLnV0aWxpdHlTZXJ2aWNlLnN0b3BCbG9ja1VJKCk7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcblxyXG4gIFxyXG4gIGRlbGV0ZTxUPihVcmw6IHN0cmluZyxkZWxldGVkSWQ6c3RyaW5nLHBhcmFtcz86IEh0dHBQYXJhbXMsIHJlcXVlc3RPcHRpb25zPzogUmVxdWVzdE9wdGlvbnNNb2RlbCk6T2JzZXJ2YWJsZTxUPntcclxuICAgIGlmIChyZXF1ZXN0T3B0aW9ucylcclxuICAgICAgdGhpcy5yZXF1ZXN0T3B0aW9ucyA9IHJlcXVlc3RPcHRpb25zO1xyXG4gICAgbGV0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoe1xyXG4gICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxyXG4gICAgICAnQXV0aG9yaXphdGlvbic6IHRoaXMuYXV0aFNlcnZpY2UuYXV0aG9yaXphdGlvbkhlYWRlclZhbHVlKCksXHJcbiAgICB9KTtcclxuICAgIHRoaXMuY3VycmVudExhbmd1YWdlID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2xhbmd1YWdlJyk7XHJcbiAgICBoZWFkZXJzID0gaGVhZGVycy5zZXQoJ0FjY2VwdC1MYW5ndWFnZScsIHRoaXMuY3VycmVudExhbmd1YWdlLnRvU3RyaW5nKCkpO1xyXG4gICAgaGVhZGVycyA9IGhlYWRlcnMuc2V0KCdpZ25vcmUtY29va2llcycsICd0cnVlJyk7XHJcblxyXG4gICAgaWYgKCF0aGlzLnJlcXVlc3RPcHRpb25zLmRpc2FibGVCbG9ja1VJKVxyXG4gICAgICB0aGlzLnV0aWxpdHlTZXJ2aWNlLnN0YXJ0QmxvY2tVSSgpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kZWxldGU8VD4odGhpcy5lbnZpcm9ubWVudFNlcnZpY2UuZ2V0QXBpVXJsKCkgKyBVcmwrYC8ke2RlbGV0ZWRJZH1gLCB7IGhlYWRlcnM6IGhlYWRlcnMsIHBhcmFtczogcGFyYW1zIH0pLnBpcGUoXHJcbiAgICAgIHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSQpLFxyXG4gICAgICB0YXAoKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgIGlmICghdGhpcy5yZXF1ZXN0T3B0aW9ucy5kaXNhYmxlQmxvY2tVSSlcclxuICAgICAgICAgIHRoaXMudXRpbGl0eVNlcnZpY2Uuc3RvcEJsb2NrVUkoKTtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuXHJcbiAgcHV0PFQ+KFVybDogc3RyaW5nLCBtb2RlbD86IGFueSwgcGFyYW1zPzogSHR0cFBhcmFtcywgcmVxdWVzdE9wdGlvbnM/OiBSZXF1ZXN0T3B0aW9uc01vZGVsKTpPYnNlcnZhYmxlPFQ+IHtcclxuICAgIGlmIChyZXF1ZXN0T3B0aW9ucylcclxuICAgICAgdGhpcy5yZXF1ZXN0T3B0aW9ucyA9IHJlcXVlc3RPcHRpb25zO1xyXG4gICAgbGV0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoe1xyXG4gICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxyXG4gICAgICAnQXV0aG9yaXphdGlvbic6IHRoaXMuYXV0aFNlcnZpY2UuYXV0aG9yaXphdGlvbkhlYWRlclZhbHVlKCksXHJcblxyXG4gICAgfSk7XHJcbiAgICB0aGlzLmN1cnJlbnRMYW5ndWFnZSA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdsYW5ndWFnZScpO1xyXG4gICAgaGVhZGVycyA9IGhlYWRlcnMuc2V0KCdBY2NlcHQtTGFuZ3VhZ2UnLCB0aGlzLmN1cnJlbnRMYW5ndWFnZS50b1N0cmluZygpKTtcclxuICAgIGhlYWRlcnMgPSBoZWFkZXJzLnNldCgnaWdub3JlLWNvb2tpZXMnLCAndHJ1ZScpO1xyXG4gICAgaWYgKCF0aGlzLnJlcXVlc3RPcHRpb25zLmRpc2FibGVCbG9ja1VJKVxyXG4gICAgICB0aGlzLnV0aWxpdHlTZXJ2aWNlLnN0YXJ0QmxvY2tVSSgpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQ8VD4odGhpcy5lbnZpcm9ubWVudFNlcnZpY2UuZ2V0QXBpVXJsKCkgKyBVcmwsIG1vZGVsLCB7IGhlYWRlcnM6IGhlYWRlcnMsIHBhcmFtczogcGFyYW1zLCByZXNwb25zZVR5cGU6IHRoaXMucmVxdWVzdE9wdGlvbnMucmVzcG9uc2VUeXBlIH0pLnBpcGUoXHJcbiAgICAgIHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSQpLFxyXG4gICAgICB0YXAoKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgIGlmICghdGhpcy5yZXF1ZXN0T3B0aW9ucy5kaXNhYmxlQmxvY2tVSSlcclxuICAgICAgICAgICB0aGlzLnV0aWxpdHlTZXJ2aWNlLnN0b3BCbG9ja1VJKCk7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuICBcclxuICBwdWJsaWMgZGVzdHJveUhhbmRsZXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLm9uRGVzdHJveSQubmV4dCgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICBjb25zb2xlLmxvZyhcImNsZWFySW50ZXJ2YWxcIilcclxuICAgIHRoaXMuZGVzdHJveUhhbmRsZXIoKVxyXG4gIH1cclxufVxyXG5cclxuIl19
|
|
@@ -31,10 +31,10 @@ export class UtilityService {
|
|
|
31
31
|
return currentLanguage;
|
|
32
32
|
}
|
|
33
33
|
isCurrentLanguageEnglish() {
|
|
34
|
-
this.getCurrentLanguage() == "en";
|
|
34
|
+
return this.getCurrentLanguage() == "en";
|
|
35
35
|
}
|
|
36
36
|
isCurrentLanguageArabic() {
|
|
37
|
-
this.getCurrentLanguage() == "ar";
|
|
37
|
+
return this.getCurrentLanguage() == "ar";
|
|
38
38
|
}
|
|
39
39
|
notifySuccessMessage(Message, title, time) {
|
|
40
40
|
let MessageTemplate = this.getResourceValue("SuccessMessage");
|
|
@@ -93,4 +93,4 @@ UtilityService.ctorParameters = () => [
|
|
|
93
93
|
__decorate([
|
|
94
94
|
BlockUI()
|
|
95
95
|
], UtilityService.prototype, "blockUI", void 0);
|
|
96
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
96
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbGl0eS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi11dGlsaXRpZXMvc3JjL2xpYi9zaGFyZWQvc2VydmljZXMvdXRpbGl0eS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUF1QyxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxPQUFPLEVBQWEsTUFBTSxhQUFhLENBQUM7QUFDakQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzdELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzNELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7QUFPM0QsTUFBTSxPQUFPLGNBQWM7SUFLdkIsWUFBb0IsVUFBZ0MsRUFBVSxXQUF3QixFQUFXLGtCQUFzQztRQUFuSCxlQUFVLEdBQVYsVUFBVSxDQUFzQjtRQUFVLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQVcsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUh2SSxvQkFBZSxHQUFHLEtBQUssQ0FBQztJQUt4QixDQUFDO0lBR0QsZ0JBQWdCLENBQUMsR0FBVztRQUN4QixJQUFJLGFBQWEsR0FBRSxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUMvQyxPQUFPLGFBQWEsQ0FBQztJQUV6QixDQUFDO0lBRUEsa0JBQWtCO1FBQ2IsSUFBSSxlQUFlLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDbkUsSUFBSSxJQUFJLEdBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM1QyxJQUFLLElBQUk7WUFDVCxlQUFlLEdBQUMsSUFBSSxDQUFDOztZQUVwQixZQUFZLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxlQUFlLENBQUMsQ0FBQztRQUNuRCxPQUFPLGVBQWUsQ0FBQztJQUM3QixDQUFDO0lBQ0Esd0JBQXdCO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixFQUFFLElBQUksSUFBSSxDQUFBO0lBQzVDLENBQUM7SUFDRCx1QkFBdUI7UUFDbkIsT0FBUyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsSUFBSSxJQUFJLENBQUE7SUFDOUMsQ0FBQztJQUVELG9CQUFvQixDQUFDLE9BQWdCLEVBQUUsS0FBYyxFQUFFLElBQWE7UUFFaEUsSUFBSSxlQUFlLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDOUQsSUFBSSxhQUFhLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3JELElBQUksT0FBTyxFQUFFO1lBQ1QsZUFBZSxHQUFHLE9BQU8sQ0FBQztTQUM3QjtRQUNELElBQUksS0FBSyxFQUFFO1lBQ1AsYUFBYSxHQUFHLEtBQUssQ0FBQztTQUN6QjtRQUNELElBQUksT0FBTyxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDN0MsT0FBTyxDQUFDLE9BQU8sQ0FBQyxlQUFlLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELGtCQUFrQixDQUFDLE9BQWdCLEVBQUUsS0FBYyxFQUFFLElBQWE7UUFFOUQsSUFBSSxlQUFlLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzVELElBQUksYUFBYSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNuRCxJQUFJLE9BQU8sRUFBRTtZQUNULGVBQWUsR0FBRyxPQUFPLENBQUM7U0FDN0I7UUFDRCxJQUFJLEtBQUssRUFBRTtZQUNQLGFBQWEsR0FBRyxLQUFLLENBQUM7U0FDekI7UUFDRCxNQUFNLE9BQU8sR0FBRyxXQUFXLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQy9DLE9BQU8sQ0FBQyxLQUFLLENBQUMsZUFBZSxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxPQUFnQixFQUFFLEtBQWMsRUFBRSxJQUFhO1FBRWhFLElBQUksZUFBZSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzlELElBQUksYUFBYSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNyRCxJQUFJLE9BQU8sRUFBRTtZQUNULGVBQWUsR0FBRyxPQUFPLENBQUM7U0FDN0I7UUFDRCxJQUFJLEtBQUssRUFBRTtZQUNQLGFBQWEsR0FBRyxLQUFLLENBQUM7U0FDekI7UUFDRCxNQUFNLE9BQU8sR0FBRyxXQUFXLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQy9DLE9BQU8sQ0FBQyxPQUFPLENBQUMsZUFBZSxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCxZQUFZO1FBQ1IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBQ0QsV0FBVztRQUNQLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEIsQ0FBQzs7OztZQWxGSixVQUFVLFNBQUM7Z0JBQ1IsVUFBVSxFQUFFLE1BQU07YUFDckI7OztZQVJRLG9CQUFvQjtZQURwQixXQUFXO1lBR1gsa0JBQWtCOztBQVVaO0lBQVYsT0FBTyxFQUFFOytDQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE9wdGlvbmFsLCBIb3N0LCBTa2lwU2VsZiwgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRvYXN0clNlcnZpY2UgfSBmcm9tICduZ3gtdG9hc3RyJztcclxuaW1wb3J0IHsgQmxvY2tVSSwgTmdCbG9ja1VJIH0gZnJvbSAnbmctYmxvY2stdWknO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uL2F1dGhlbnRpY2F0aW9uL2F1dGguc2VydmljZSc7XHJcbmltcG9ydCB7IEJCU0ZUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnLi90cmFuc2xhdGUuc2VydmljZSc7XHJcbmltcG9ydCB7IEFwcEluamVjdG9yIH0gZnJvbSAnLi4vLi4vYmJzZi11dGlsaXRpZXMubW9kdWxlJztcclxuaW1wb3J0IHsgRW52aXJvbm1lbnRTZXJ2aWNlIH0gZnJvbSAnLi9lbnZpcm9ubWVudC5zZXJ2aWNlJztcclxuXHJcblxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVdGlsaXR5U2VydmljZSB7XHJcblxyXG4gICAgaXNDcmVhdGVkQmVmb3JlID0gZmFsc2U7XHJcbiAgICBAQmxvY2tVSSgpIGJsb2NrVUk6IE5nQmxvY2tVSTtcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRyYW5zbGF0b3I6IEJCU0ZUcmFuc2xhdGVTZXJ2aWNlLCBwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSAsIHByaXZhdGUgZW52aXJvbm1lbnRTZXJ2aWNlOiBFbnZpcm9ubWVudFNlcnZpY2UsKSB7XHJcblxyXG4gICAgfVxyXG5cclxuXHJcbiAgICBnZXRSZXNvdXJjZVZhbHVlKEtleTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICBsZXQgUmVzb3VyY2VWYWx1ZSA9dGhpcy50cmFuc2xhdG9yLmluc3RhbnQoS2V5KVxyXG4gICAgICAgIHJldHVybiBSZXNvdXJjZVZhbHVlO1xyXG5cclxuICAgIH1cclxuXHJcbiAgICAgZ2V0Q3VycmVudExhbmd1YWdlKCkge1xyXG4gICAgICAgICAgbGV0IGN1cnJlbnRMYW5ndWFnZSA9IHRoaXMuZW52aXJvbm1lbnRTZXJ2aWNlLmdldERlZmF1bHRMYW5ndWFnZSgpO1xyXG4gICAgICAgICAgbGV0IGxhbmcgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnbGFuZ3VhZ2UnKTtcclxuICAgICAgICAgIGlmICggbGFuZykgXHJcbiAgICAgICAgICBjdXJyZW50TGFuZ3VhZ2U9bGFuZztcclxuICAgICAgICAgIGVsc2UgXHJcbiAgICAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2xhbmd1YWdlJywgY3VycmVudExhbmd1YWdlKTtcclxuICAgICAgICAgIHJldHVybiBjdXJyZW50TGFuZ3VhZ2U7XHJcbiAgICB9XHJcbiAgICAgaXNDdXJyZW50TGFuZ3VhZ2VFbmdsaXNoKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmdldEN1cnJlbnRMYW5ndWFnZSgpID09IFwiZW5cIlxyXG4gICAgfVxyXG4gICAgaXNDdXJyZW50TGFuZ3VhZ2VBcmFiaWMoKSB7XHJcbiAgICAgICAgcmV0dXJuICAgdGhpcy5nZXRDdXJyZW50TGFuZ3VhZ2UoKSA9PSBcImFyXCJcclxuICAgIH1cclxuXHJcbiAgICBub3RpZnlTdWNjZXNzTWVzc2FnZShNZXNzYWdlPzogc3RyaW5nLCB0aXRsZT86IHN0cmluZywgdGltZT86IG51bWJlcikge1xyXG5cclxuICAgICAgICBsZXQgTWVzc2FnZVRlbXBsYXRlID0gdGhpcy5nZXRSZXNvdXJjZVZhbHVlKFwiU3VjY2Vzc01lc3NhZ2VcIik7XHJcbiAgICAgICAgbGV0IHRpdGxlVGVtcGxhdGUgPSB0aGlzLmdldFJlc291cmNlVmFsdWUoXCJTdWNjZXNzXCIpO1xyXG4gICAgICAgIGlmIChNZXNzYWdlKSB7XHJcbiAgICAgICAgICAgIE1lc3NhZ2VUZW1wbGF0ZSA9IE1lc3NhZ2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aXRsZSkge1xyXG4gICAgICAgICAgICB0aXRsZVRlbXBsYXRlID0gdGl0bGU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCB0b2FzdGVyID0gQXBwSW5qZWN0b3IuZ2V0KFRvYXN0clNlcnZpY2UpO1xyXG4gICAgICAgIHRvYXN0ZXIuc3VjY2VzcyhNZXNzYWdlVGVtcGxhdGUsIHRpdGxlVGVtcGxhdGUpO1xyXG4gICAgfVxyXG5cclxuICAgIG5vdGlmeUVycm9yTWVzc2FnZShNZXNzYWdlPzogc3RyaW5nLCB0aXRsZT86IHN0cmluZywgdGltZT86IG51bWJlcikge1xyXG5cclxuICAgICAgICBsZXQgTWVzc2FnZVRlbXBsYXRlID0gdGhpcy5nZXRSZXNvdXJjZVZhbHVlKFwiRXJyb3JNZXNzYWdlXCIpO1xyXG4gICAgICAgIGxldCB0aXRsZVRlbXBsYXRlID0gdGhpcy5nZXRSZXNvdXJjZVZhbHVlKFwiRXJyb3JcIik7XHJcbiAgICAgICAgaWYgKE1lc3NhZ2UpIHtcclxuICAgICAgICAgICAgTWVzc2FnZVRlbXBsYXRlID0gTWVzc2FnZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHRpdGxlKSB7XHJcbiAgICAgICAgICAgIHRpdGxlVGVtcGxhdGUgPSB0aXRsZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgdG9hc3RlciA9IEFwcEluamVjdG9yLmdldChUb2FzdHJTZXJ2aWNlKTtcclxuICAgICAgICB0b2FzdGVyLmVycm9yKE1lc3NhZ2VUZW1wbGF0ZSwgdGl0bGVUZW1wbGF0ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgbm90aWZ5V2FybmluZ01lc3NhZ2UoTWVzc2FnZT86IHN0cmluZywgdGl0bGU/OiBzdHJpbmcsIHRpbWU/OiBudW1iZXIpIHtcclxuXHJcbiAgICAgICAgbGV0IE1lc3NhZ2VUZW1wbGF0ZSA9IHRoaXMuZ2V0UmVzb3VyY2VWYWx1ZShcIldhcm5pbmdNZXNzYWdlXCIpO1xyXG4gICAgICAgIGxldCB0aXRsZVRlbXBsYXRlID0gdGhpcy5nZXRSZXNvdXJjZVZhbHVlKFwiV2FybmluZ1wiKTtcclxuICAgICAgICBpZiAoTWVzc2FnZSkge1xyXG4gICAgICAgICAgICBNZXNzYWdlVGVtcGxhdGUgPSBNZXNzYWdlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGl0bGUpIHtcclxuICAgICAgICAgICAgdGl0bGVUZW1wbGF0ZSA9IHRpdGxlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCB0b2FzdGVyID0gQXBwSW5qZWN0b3IuZ2V0KFRvYXN0clNlcnZpY2UpO1xyXG4gICAgICAgIHRvYXN0ZXIud2FybmluZyhNZXNzYWdlVGVtcGxhdGUsIHRpdGxlVGVtcGxhdGUpO1xyXG4gICAgfVxyXG5cclxuICAgIHN0YXJ0QmxvY2tVSSgpIHtcclxuICAgICAgICB0aGlzLmJsb2NrVUkuc3RhcnQoKTtcclxuICAgIH1cclxuICAgIHN0b3BCbG9ja1VJKCkge1xyXG4gICAgICAgIHRoaXMuYmxvY2tVSS5zdG9wKCk7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -15,7 +15,7 @@ import { HttpHeaders, HttpClient, HttpParams } from '@angular/common/http';
|
|
|
15
15
|
import { UserManager, WebStorageStateStore } from 'oidc-client';
|
|
16
16
|
import { BehaviorSubject, Subject } from 'rxjs';
|
|
17
17
|
import { Observable } from 'rxjs/internal/Observable';
|
|
18
|
-
import { takeUntil, tap } from 'rxjs/operators';
|
|
18
|
+
import { takeUntil, tap, map } from 'rxjs/operators';
|
|
19
19
|
|
|
20
20
|
// This file can be replaced during build by using the `fileReplacements` array.
|
|
21
21
|
// `ng build ---prod` replaces `environment.ts` with `environment.prod.ts`.
|
|
@@ -237,10 +237,10 @@ class UtilityService {
|
|
|
237
237
|
return currentLanguage;
|
|
238
238
|
}
|
|
239
239
|
isCurrentLanguageEnglish() {
|
|
240
|
-
this.getCurrentLanguage() == "en";
|
|
240
|
+
return this.getCurrentLanguage() == "en";
|
|
241
241
|
}
|
|
242
242
|
isCurrentLanguageArabic() {
|
|
243
|
-
this.getCurrentLanguage() == "ar";
|
|
243
|
+
return this.getCurrentLanguage() == "ar";
|
|
244
244
|
}
|
|
245
245
|
notifySuccessMessage(Message, title, time) {
|
|
246
246
|
let MessageTemplate = this.getResourceValue("SuccessMessage");
|
|
@@ -347,9 +347,13 @@ class RequestHandlerService {
|
|
|
347
347
|
headers = headers.set('ignore-cookies', 'true');
|
|
348
348
|
if (!this.requestOptions.disableBlockUI)
|
|
349
349
|
this.utilityService.startBlockUI();
|
|
350
|
+
let object;
|
|
350
351
|
return this.http.get(this.environmentService.getApiUrl() + Url, { headers: headers, params: params }).pipe(takeUntil(this.onDestroy$), tap((result) => {
|
|
351
352
|
if (!this.requestOptions.disableBlockUI)
|
|
352
353
|
this.utilityService.stopBlockUI();
|
|
354
|
+
}), map((data) => {
|
|
355
|
+
let result = data;
|
|
356
|
+
return result;
|
|
353
357
|
}));
|
|
354
358
|
}
|
|
355
359
|
post(Url, model, params, requestOptions) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bnsights-bbsf-utilities.js","sources":["../../../projects/bbsf-utilities/src/lib/shared/config/environment.ts","../../../projects/bbsf-utilities/src/lib/shared/services/environment.service.ts","../../../projects/bbsf-utilities/src/lib/shared/services/translate.service.ts","../../../projects/bbsf-utilities/src/lib/shared/authentication/auth.service.ts","../../../projects/bbsf-utilities/src/lib/shared/services/utility.service.ts","../../../projects/bbsf-utilities/src/lib/shared/models/RequestOptionsModel.ts","../../../projects/bbsf-utilities/src/lib/shared/services/requesthandler.service.ts","../../../projects/bbsf-utilities/src/lib/shared/services/stylesbundle.service.ts","../../../projects/bbsf-utilities/src/lib/shared/services/controlvalidation.service.ts","../../../projects/bbsf-utilities/src/lib/shared/services/masterlayout.service.ts","../../../projects/bbsf-utilities/src/lib/bbsf-utilities.module.ts","../../../projects/bbsf-utilities/src/lib/shared/services/translationresolver.service.ts","../../../projects/bbsf-utilities/src/public-api.ts","../../../projects/bbsf-utilities/src/bnsights-bbsf-utilities.ts"],"sourcesContent":["// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build ---prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = Object.assign({\r\n},\r\n(window as any).Envirnment);\r\n\r\n\r\n/*\r\n * In development mode, to ignore zone related error stack frames such as\r\n * `zone.run`, `zoneDelegate.invokeTask` for easier debugging, you can\r\n * import the following file, but please comment it out in production mode\r\n * because it will have performance impact when throw error\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import { Injectable } from '@angular/core';\r\nimport { environment } from '../config/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class EnvironmentService {\r\n\r\n getEnvironmentObject() {\r\n return environment;\r\n }\r\n\r\n getBaseUrl() {\r\n let Url = environment[\"BBSF_BaseUrl\"]\r\n return Url;\r\n }\r\n getApiUrl() {\r\n let Url = environment[\"BBSF_ApiUrl\"]\r\n return Url;\r\n }\r\n\r\n\r\n getProductionMode() {\r\n let Mode = environment[\"BBSF_IsProduction\"] as boolean\r\n return Mode;\r\n }\r\n\r\n getDefaultLanguage() {\r\n let Mode = environment[\"BBSF_DefaultLanguage\"] as string\r\n return Mode;\r\n }\r\n getIdentityServerUrl() {\r\n let Url = environment[\"BBSF_IdentityServerUrl\"]\r\n return Url;\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class BBSFTranslateService extends TranslateService {\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { UserManager, UserManagerSettings, User, WebStorageStateStore } from 'oidc-client';\r\nimport { BehaviorSubject, Subject } from 'rxjs';\r\nimport { EnvironmentService } from '../services/environment.service';\r\nimport { BBSFTranslateService } from '../services/translate.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class AuthService {\r\n\r\n // Observable navItem source\r\n private _authNavStatusSource = new BehaviorSubject<boolean>(false);\r\n // Observable navItem stream\r\n authNavStatus$ = this._authNavStatusSource.asObservable();\r\n // Observable navItem source\r\n private _userSource: Subject<User> = new Subject<User>();\r\n UserStatus$ = this._userSource.asObservable();\r\n private manager = new UserManager(\r\n {\r\n authority: this.environmentService.getIdentityServerUrl(),\r\n client_id: 'angular_spa',\r\n redirect_uri: this.environmentService.getIdentityServerUrl() +'/Admin/authentication/auth-callback',\r\n post_logout_redirect_uri: this.environmentService.getBaseUrl(),\r\n response_type: \"id_token token\",\r\n scope: \"openid profile email IdentityServerApi\",\r\n filterProtocolClaims: true,\r\n loadUserInfo: true,\r\n automaticSilentRenew: true,\r\n silent_redirect_uri: this.environmentService.getIdentityServerUrl() + '/assets/silent-callback.html',\r\n userStore: new WebStorageStateStore({ store: window.localStorage })\r\n }\r\n );\r\n public redirectUrl: string = \"\"\r\n static user: User | null = null;\r\n user: User | null;\r\n\r\n constructor(private http: HttpClient, private environmentService: EnvironmentService,private translateService:BBSFTranslateService) {\r\n this.manager.getUser().then(async user => {\r\n this.manager.storeUser(user);\r\n AuthService.user = user;\r\n this.user = user;\r\n this._authNavStatusSource.next(await this.isAuthenticated());\r\n });\r\n this.manager.events.addAccessTokenExpired(_ => {\r\n this._authNavStatusSource.next(false);\r\n })\r\n }\r\n\r\n login() {\r\n return this.manager.signinRedirect();\r\n }\r\n\r\n getUser() {\r\n this.manager.getUser().then(async user => {\r\n ;\r\n AuthService.user = user;\r\n this.user = user\r\n this._authNavStatusSource.next(await this.isAuthenticated());\r\n });\r\n }\r\n storUser(User: any) {\r\n this.manager.storeUser(User);\r\n }\r\n\r\n revokeAccessToken() {\r\n this.manager.revokeAccessToken();\r\n }\r\n\r\n signinSilent() {\r\n\r\n let x = this.manager.signinSilentCallback()\r\n x.then(s => {\r\n //console.log(s)\r\n })\r\n }\r\n\r\n async completeAuthentication() {\r\n this.user = await this.manager.signinRedirectCallback();\r\n AuthService.user = this.user\r\n localStorage.setItem(\"language\",this.user.profile.locale)\r\n if(this.translateService.currentLang!=this.user.profile.locale)\r\n {\r\n this.translateService.resetLang(this.translateService.currentLang)\r\n await this.translateService.reloadLang(this.user.profile.locale).subscribe((res)=>{\r\n console.log(res)\r\n })\r\n }\r\n this._userSource.next(AuthService.user)\r\n this._authNavStatusSource.next(await this.isAuthenticated());\r\n }\r\n\r\n \r\n\r\n\r\n async refreshToken(token) {\r\n const httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Authorization': token\r\n })\r\n };\r\n \r\n this.manager.revokeAccessToken()\r\n return await this.http.post<any>(`${this.environmentService.getIdentityServerUrl()}/users/refresh-token`, httpOptions, { withCredentials: true }).subscribe((user) => {\r\n this._userSource.next(user)\r\n AuthService.user = user\r\n this.user = user;\r\n })\r\n }\r\n\r\n getCurrentUser() {\r\n return this.manager.getUser()\r\n }\r\n\r\n async isAuthenticated(): Promise<boolean> {\r\n let user = await this.manager.getUser().then(user => {\r\n return user;\r\n })\r\n return this.user != null && !this.user.expired ;\r\n\r\n }\r\n isUserInRole(allowedPermission: number[]) {\r\n let selectedPermissionSetID = this.user.profile[\"selectedPermissionSetID\"] as number\r\n return allowedPermission.includes(selectedPermissionSetID);\r\n }\r\n\r\n authorizationHeaderValue(): string {\r\n return AuthService.user? `${AuthService.user.token_type} ${AuthService.user.access_token}`:\"\";\r\n }\r\n\r\n name(): string {\r\n return AuthService.user != null ? AuthService.user.profile.given_name : '';\r\n }\r\n setUrl(url) {\r\n localStorage.setItem(\"redirectUrl\", url)\r\n\r\n }\r\n getUrl() {\r\n return localStorage.getItem(\"redirectUrl\");\r\n }\r\n async signinSilentCallback() {\r\n let user = await this.manager.signinSilentCallback()\r\n //await this.manager.storeUser(user);\r\n AuthService.user = user;\r\n console.log(\"Token from signinSilentCallback :\"+AuthService.user)\r\n this.user = user;\r\n }\r\n async signout() {\r\n localStorage.clear();\r\n await this.manager.signoutRedirect();\r\n\r\n }\r\n\r\n}\r\n\r\n\r\n","import { Injectable, Optional, Host, SkipSelf, Component } from '@angular/core';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BlockUI, NgBlockUI } from 'ng-block-ui';\r\nimport { AuthService } from '../authentication/auth.service';\r\nimport { BBSFTranslateService } from './translate.service';\r\nimport { AppInjector } from '../../bbsf-utilities.module';\r\nimport { EnvironmentService } from './environment.service';\r\n\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UtilityService {\r\n\r\n isCreatedBefore = false;\r\n @BlockUI() blockUI: NgBlockUI;\r\n\r\n constructor(private translator: BBSFTranslateService, private authService: AuthService , private environmentService: EnvironmentService,) {\r\n\r\n }\r\n\r\n\r\n getResourceValue(Key: string): string {\r\n let ResourceValue =this.translator.instant(Key)\r\n return ResourceValue;\r\n\r\n }\r\n\r\n getCurrentLanguage() {\r\n let currentLanguage = this.environmentService.getDefaultLanguage();\r\n let lang = localStorage.getItem('language');\r\n if ( lang) \r\n currentLanguage=lang;\r\n else \r\n localStorage.setItem('language', currentLanguage);\r\n return currentLanguage;\r\n }\r\n isCurrentLanguageEnglish() {\r\n this.getCurrentLanguage() == \"en\"\r\n }\r\n isCurrentLanguageArabic() {\r\n this.getCurrentLanguage() == \"ar\"\r\n }\r\n\r\n notifySuccessMessage(Message?: string, title?: string, time?: number) {\r\n\r\n let MessageTemplate = this.getResourceValue(\"SuccessMessage\");\r\n let titleTemplate = this.getResourceValue(\"Success\");\r\n if (Message) {\r\n MessageTemplate = Message;\r\n }\r\n if (title) {\r\n titleTemplate = title;\r\n }\r\n let toaster = AppInjector.get(ToastrService);\r\n toaster.success(MessageTemplate, titleTemplate);\r\n }\r\n\r\n notifyErrorMessage(Message?: string, title?: string, time?: number) {\r\n\r\n let MessageTemplate = this.getResourceValue(\"ErrorMessage\");\r\n let titleTemplate = this.getResourceValue(\"Error\");\r\n if (Message) {\r\n MessageTemplate = Message;\r\n }\r\n if (title) {\r\n titleTemplate = title;\r\n }\r\n const toaster = AppInjector.get(ToastrService);\r\n toaster.error(MessageTemplate, titleTemplate);\r\n }\r\n\r\n notifyWarningMessage(Message?: string, title?: string, time?: number) {\r\n\r\n let MessageTemplate = this.getResourceValue(\"WarningMessage\");\r\n let titleTemplate = this.getResourceValue(\"Warning\");\r\n if (Message) {\r\n MessageTemplate = Message;\r\n }\r\n if (title) {\r\n titleTemplate = title;\r\n }\r\n const toaster = AppInjector.get(ToastrService);\r\n toaster.warning(MessageTemplate, titleTemplate);\r\n }\r\n\r\n startBlockUI() {\r\n this.blockUI.start();\r\n }\r\n stopBlockUI() {\r\n this.blockUI.stop();\r\n }\r\n}\r\n","import { FormGroup } from \"@angular/forms\";\r\n\r\nexport class RequestOptionsModel {\r\n disableSuccessNotification: boolean=false;\r\n disableBlockUI: boolean=false;\r\n customSuccessMessage: string;\r\n customErrorMessage: string;\r\n responseType:any=\"\"\r\n formGroup:FormGroup=null\r\n}\r\n","import { Injectable, OnDestroy, Pipe } from '@angular/core';\r\nimport { HttpClient, HttpErrorResponse, HttpHeaders, HttpParams } from \"@angular/common/http\";\r\nimport { RequestOptionsModel } from '../models/RequestOptionsModel';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { AuthService } from '../authentication/auth.service';\r\nimport { EnvironmentService } from './environment.service';\r\nimport { Subject } from 'rxjs';\r\nimport { UtilityService } from './utility.service';\r\nimport { takeUntil, tap } from 'rxjs/operators';\r\nimport { ControlValidationService } from './controlvalidation.service';\r\nimport { BBSFTranslateService } from './translate.service';\r\n\r\n@Injectable()\r\nexport class RequestHandlerService implements OnDestroy {\r\n private requestOptions: RequestOptionsModel = new RequestOptionsModel();\r\n private currentLanguage = \"\";\r\n public onDestroy$: Subject<void> = new Subject<void>();\r\n constructor\r\n (\r\n private http: HttpClient,\r\n private authService: AuthService,\r\n private environmentService: EnvironmentService,\r\n private utilityService: UtilityService,\r\n private bbsfTranslateService: BBSFTranslateService\r\n ) {\r\n //using localStorage to avoid call getCurrentLanguage() because it is not all to use async in constructor\r\n\r\n this.bbsfTranslateService.onLangChange.subscribe((event) => {\r\n if (this.currentLanguage != event.lang) {\r\n this.currentLanguage = event.lang;\r\n }\r\n })\r\n }\r\n\r\n public getLuckyNumber(): Observable<number> {\r\n \r\n return Observable.create((subject: Subject<number>) => {\r\n setInterval(() => {\r\n const number = Math.floor(Math.random() * 10);\r\n console.log(number)\r\n subject.next(number);\r\n }, 1000);\r\n }).pipe(\r\n takeUntil(this.onDestroy$));\r\n }\r\n\r\n\r\n get<T>(Url: string, params?: HttpParams, requestOptions?: RequestOptionsModel):Observable<T>{\r\n if (requestOptions)\r\n this.requestOptions = requestOptions;\r\n let headers = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Authorization': this.authService.authorizationHeaderValue(),\r\n });\r\n this.currentLanguage = localStorage.getItem('language');\r\n headers = headers.set('Accept-Language', this.currentLanguage.toString());\r\n headers = headers.set('ignore-cookies', 'true');\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.startBlockUI();\r\n \r\n return this.http.get<T>(this.environmentService.getApiUrl() + Url, { headers: headers, params: params }).pipe(\r\n takeUntil(this.onDestroy$),\r\n tap((result) => {\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.stopBlockUI();\r\n })\r\n );\r\n }\r\n\r\n post<T>(Url: string, model?: any, params?: HttpParams, requestOptions?: RequestOptionsModel):Observable<T> {\r\n \r\n \r\n if (requestOptions)\r\n this.requestOptions = requestOptions;\r\n let headers = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Authorization': this.authService.authorizationHeaderValue(),\r\n\r\n });\r\n this.currentLanguage = localStorage.getItem('language');\r\n headers = headers.set('Accept-Language', this.currentLanguage.toString());\r\n headers = headers.set('ignore-cookies', 'true');\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.startBlockUI();\r\n return this.http.post<T>(this.environmentService.getApiUrl() + Url, model, { headers: headers, params: params, responseType: this.requestOptions.responseType }).pipe(\r\n takeUntil(this.onDestroy$),\r\n tap((result) => {\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.stopBlockUI();\r\n })\r\n );\r\n }\r\n\r\n\r\n \r\n delete<T>(Url: string,deletedId:string,params?: HttpParams, requestOptions?: RequestOptionsModel):Observable<T>{\r\n if (requestOptions)\r\n this.requestOptions = requestOptions;\r\n let headers = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Authorization': this.authService.authorizationHeaderValue(),\r\n });\r\n this.currentLanguage = localStorage.getItem('language');\r\n headers = headers.set('Accept-Language', this.currentLanguage.toString());\r\n headers = headers.set('ignore-cookies', 'true');\r\n\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.startBlockUI();\r\n return this.http.delete<T>(this.environmentService.getApiUrl() + Url+`/${deletedId}`, { headers: headers, params: params }).pipe(\r\n takeUntil(this.onDestroy$),\r\n tap((result) => {\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.stopBlockUI();\r\n })\r\n );\r\n }\r\n\r\n\r\n put<T>(Url: string, model?: any, params?: HttpParams, requestOptions?: RequestOptionsModel):Observable<T> {\r\n if (requestOptions)\r\n this.requestOptions = requestOptions;\r\n let headers = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Authorization': this.authService.authorizationHeaderValue(),\r\n\r\n });\r\n this.currentLanguage = localStorage.getItem('language');\r\n headers = headers.set('Accept-Language', this.currentLanguage.toString());\r\n headers = headers.set('ignore-cookies', 'true');\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.startBlockUI();\r\n return this.http.put<T>(this.environmentService.getApiUrl() + Url, model, { headers: headers, params: params, responseType: this.requestOptions.responseType }).pipe(\r\n takeUntil(this.onDestroy$),\r\n tap((result) => {\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.stopBlockUI();\r\n })\r\n );\r\n }\r\n \r\n public destroyHandler(): void {\r\n this.onDestroy$.next();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n console.log(\"clearInterval\")\r\n this.destroyHandler()\r\n }\r\n}\r\n\r\n","import { DOCUMENT } from '@angular/common';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { BlockUI, NgBlockUI } from 'ng-block-ui';\r\nimport { BBSFTranslateService } from './translate.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class StylesBundleService {\r\n\r\n constructor(@Inject(DOCUMENT) private document: Document,private translateService: BBSFTranslateService){}\r\n\r\n loadThemes(lang: string,bundleEnglishName:string,bundleArabicName:string) {\r\n if (lang == \"ar\") {\r\n this.loadStyleBundle(bundleArabicName.toString())\r\n document.querySelector('html').setAttribute(\"lang\", \"ar\");\r\n document.querySelector('html').setAttribute(\"dir\", \"rtl\");\r\n } else {\r\n this.loadStyleBundle(bundleEnglishName.toString())\r\n document.querySelector('html').setAttribute(\"lang\", \"en\");\r\n document.querySelector('html').setAttribute(\"dir\", \"ltr\");\r\n }\r\n \r\n }\r\n\r\n loadStyleBundle(styleName: string) {\r\n const head = this.document.getElementsByTagName('head')[0];\r\n\r\n let themeLink = this.document.getElementById('client-theme') as HTMLLinkElement;\r\n\r\n if (themeLink && themeLink.href.includes(styleName)) {\r\n return;\r\n }\r\n else if (themeLink && !themeLink.href.includes(styleName)) {\r\n themeLink.remove();\r\n }\r\n const style = this.document.createElement('link');\r\n style.id = 'client-theme';\r\n style.rel = 'stylesheet';\r\n style.href = `${styleName}`;\r\n head.appendChild(style);\r\n }\r\n\r\n}\r\n\r\n","import { Injectable, Optional, Host, SkipSelf, Component } from '@angular/core';\r\nimport { IndividualConfig, ToastrService } from 'ngx-toastr';\r\nimport { BlockUI, NgBlockUI } from 'ng-block-ui';\r\nimport { AbstractControl, ControlContainer, ControlValueAccessor, NG_VALUE_ACCESSOR, FormControl, FormsModule, FormGroup } from '@angular/forms';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { ErrorModel } from '../models/ErrorModel';\r\nimport { UtilityService } from './utility.service';\r\nimport { RequestOptionsModel } from '../models/RequestOptionsModel';\r\n\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ControlValidationService {\r\n private requestOptions: RequestOptionsModel = new RequestOptionsModel();\r\n\r\n constructor\r\n (\r\n private utilityService: UtilityService\r\n ) {\r\n\r\n }\r\n\r\n isCreatedBefor = false;\r\n\r\n @BlockUI() blockUI: NgBlockUI;\r\n\r\n showGlobalError(errorMessage?: string | string[], formId?: string, deleteOld?: boolean) {\r\n let globalErorrElement = document.getElementsByClassName('alert alert-danger alert-InvalidValidation')\r\n if (globalErorrElement.length > 0) {\r\n this.removeElementsByClass('alert alert-danger alert-InvalidValidation');\r\n }\r\n\r\n\r\n if (this.isCreatedBefor == true) {\r\n this.removeElementsByClass('alert alert-danger alert-InvalidValidation');\r\n }\r\n\r\n // tslint:disable-next-line: prefer-const\r\n if (!formId)\r\n formId = \"currentForm\"\r\n var object = document.getElementById(formId);\r\n const tagName = 'div';\r\n // tslint:disable-next-line: prefer-const\r\n var elementToAppend = document.createElement(tagName); // Your tag name here\r\n let message: string | string[] = \"\";\r\n\r\n\r\n if (!errorMessage || (typeof errorMessage == \"string\")) {\r\n if (localStorage.getItem('language') == \"ar\")\r\n message = errorMessage ? errorMessage : \"لديك بعص الأخطاء . من فضلك قم بالمراجعه \";\r\n else\r\n message = errorMessage ? errorMessage : \"You have some validation errors. Please check below\"\r\n elementToAppend.innerHTML = \"<ul><li>\" + message + \"</li></ul>\";\r\n elementToAppend.className += 'alert alert-danger alert-InvalidValidation';\r\n elementToAppend.id += 'errorId';\r\n // tslint:disable-next-line: prefer-for-of\r\n const elementToAppen = elementToAppend.cloneNode(true);\r\n // let targetElement = object.getElementsByClassName(\"b-control\")[0];\r\n object.insertBefore(elementToAppen, object.firstChild);\r\n }\r\n else {\r\n elementToAppend.innerHTML = \"<ul>\";\r\n\r\n for (const iterator of errorMessage) {\r\n\r\n elementToAppend.innerHTML = \"<li>\" + iterator + \"</li>\";\r\n }\r\n\r\n elementToAppend.innerHTML = \"</ul>\";\r\n elementToAppend.className += 'alert alert-danger alert-InvalidValidation';\r\n elementToAppend.id += 'errorId';\r\n // tslint:disable-next-line: prefer-for-of\r\n const elementToAppen = elementToAppend.cloneNode(true);\r\n // let targetElement = object.getElementsByClassName(\"b-control\")[0];\r\n object.insertBefore(elementToAppen, object.firstChild);\r\n }\r\n\r\n this.isCreatedBefor = true;\r\n\r\n }\r\n\r\n RemoveGlobalError() {\r\n const removedList = document.getElementsByClassName('alert alert-danger alert-InvalidValidation');\r\n // tslint:disable-next-line: prefer-for-of\r\n for (let index = 0; index < removedList.length; index++) {\r\n const element = removedList[index];\r\n element.remove();\r\n }\r\n this.isCreatedBefor = false;\r\n }\r\n\r\n showInputErro(errors: any) {\r\n\r\n // show error on top of form \r\n this.showGlobalError();\r\n // remove old error from server\r\n this.removeElementsByClass('errortemplet');\r\n // Looping in error Object\r\n for (const key in errors) {\r\n if (errors.hasOwnProperty(key)) {\r\n for (const iterator of errors[key]) {\r\n const input = document.querySelectorAll('[ng-reflect-name=' + key + ']')[0];\r\n if ((input.attributes['ng-reflect-name'].value as string) === key) {\r\n this.removeElementsByClass('erroclass-' + key);\r\n const tagName = 'p'\r\n const elementToAppend = document.createElement(tagName); // Your tag name here\r\n elementToAppend.innerHTML = iterator;\r\n elementToAppend.style.color = 'red'\r\n elementToAppend.className += 'errortemplet erroclass-' + key;\r\n const elementToappen = elementToAppend.cloneNode(true);\r\n input.parentNode.insertBefore(elementToappen, input.lastChild);\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n removeElementsByClass(className) {\r\n const elements = document.getElementsByClassName(className);\r\n while (elements.length > 0) {\r\n elements[0].parentNode.removeChild(elements[0]);\r\n }\r\n }\r\n\r\n\r\n renderServerErrors(form: FormGroup, err: HttpErrorResponse, requestOptions: RequestOptionsModel, formId?: string) {\r\n if (err.error == null) {\r\n return;\r\n }\r\n let errorsArray: string[] = [];\r\n\r\n this.requestOptions = requestOptions;\r\n err.error.validation_errors.forEach((element: ErrorModel) => {\r\n let fieldName = element.field;\r\n let controlName = element.controlName;\r\n let message = element.message;\r\n if (form == null) {\r\n this.requestOptions.customErrorMessage ? this.utilityService.notifyErrorMessage(this.requestOptions.customErrorMessage) : this.utilityService.notifyErrorMessage(`${fieldName}: ${message}`);\r\n }\r\n else if (controlName && !this.hasControlName(form, controlName)) {\r\n errorsArray.push(`${fieldName}: ${message}`);\r\n // this.showGlobalError(`${fieldName}: ${message}`,formId )\r\n }\r\n else {\r\n this.setFieldError(form, controlName, fieldName, message);\r\n }\r\n });\r\n if (errorsArray.length > 0)\r\n this.showGlobalError(errorsArray, formId)\r\n\r\n\r\n }\r\n\r\n private hasControlName(form: FormGroup, controlName: string): boolean {\r\n let control = form.get(controlName);\r\n return control != null;\r\n }\r\n\r\n private setFieldError(form: FormGroup, controlName: string, fieldName: string, message: string) {\r\n let control = null\r\n if (controlName)\r\n control = form.get(controlName);\r\n else\r\n control = form.get(fieldName.split('.')[0]);\r\n let errors = { \"errorMassage\": message };\r\n let fieldNameArray = fieldName.split('.');\r\n if (fieldNameArray.length >= 1) {\r\n switch (fieldNameArray[fieldNameArray.length - 1].toLocaleLowerCase()) {\r\n case \"english\":\r\n let englishControl = control.get(\"English\")\r\n englishControl.setErrors(errors);\r\n break;\r\n case \"arabic\":\r\n let arabicControl = control.get(\"Arabic\")\r\n arabicControl.setErrors(errors);\r\n break;\r\n\r\n default:\r\n control.setErrors(errors);\r\n }\r\n\r\n }\r\n else if (fieldNameArray.length == 1) {\r\n control.setErrors(errors);\r\n }\r\n else {\r\n this.requestOptions.customErrorMessage ? this.utilityService.notifyErrorMessage(this.requestOptions.customErrorMessage) : this.utilityService.notifyErrorMessage(`${fieldName}: ${message}`)\r\n }\r\n\r\n\r\n }\r\n\r\n\r\n}\r\n","import { HttpParams } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { AuthService } from \"../authentication/auth.service\";\r\nimport { RequestHandlerService } from \"./requesthandler.service\";\r\nimport { StylesBundleService } from \"./stylesbundle.service\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MasterLayoutService {\r\n ApiUrl=\"/api/admin/Users/\"\r\n constructor(private router: Router, private http: RequestHandlerService, private authService: AuthService,private stylesBundleService:StylesBundleService ,private translate:TranslateService) {\r\n }\r\n switchLang(lang: string, bundleEnglishName: string, bundleArabicName: string) {\r\n this.changeLanguage(lang).subscribe((result) => {\r\n this.updateUserInfo().subscribe((Value) => {\r\n let UserInfoObject =Value ;\r\n this.authService.getUser();\r\n this.authService.user.profile = Object.assign( this.authService.user.profile, UserInfoObject);\r\n this.authService.storUser(this.authService.user);\r\n this.stylesBundleService.loadThemes(lang,bundleEnglishName,bundleArabicName);\r\n localStorage.setItem('language', lang);\r\n this.translate.use(lang);\r\n });\r\n });\r\n }\r\n reloadComponent() {\r\n let currentUrl = this.router.url;\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n this.router.onSameUrlNavigation = 'reload';\r\n this.router.navigate([currentUrl]);\r\n }\r\n\r\n private changeLanguage(key: string) {\r\n\r\n let params = new HttpParams();\r\n params = params.append(\"UserId\", this.authService.user.profile.id);\r\n params = params.append(\"LanguageKey\", key);\r\n return this.http.post(this.ApiUrl + 'updateLaguage', null, params)\r\n }\r\n\r\n private updateUserInfo() {\r\n return this.http.get('/connect/userinfo')\r\n }\r\n\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injector, NgModule } from '@angular/core';\r\nimport { RouterModule } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { BlockUIModule } from 'ng-block-ui';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { HttpModule } from '@angular/http';\r\nimport { UtilityService } from './shared/services/utility.service';\r\nimport { EnvironmentService } from './shared/services/environment.service';\r\nimport { AuthService } from './shared/authentication/auth.service';\r\nimport { RequestHandlerService } from './shared/services/requesthandler.service';\r\nimport { StylesBundleService } from './shared/services/stylesbundle.service';\r\nimport { BBSFTranslateService } from './shared/services/translate.service';\r\nimport { ControlValidationService } from './shared/services/controlvalidation.service';\r\nimport { MasterLayoutService } from './shared/services/masterlayout.service';\r\n\r\nexport let AppInjector: Injector;\r\n\r\n@NgModule({\r\n declarations: [\r\n ],\r\n imports: [\r\n CommonModule,\r\n BlockUIModule.forRoot(),\r\n HttpModule,\r\n RouterModule,\r\n ToastrModule.forRoot(),\r\n\r\n ],\r\n exports: [\r\n \r\n ],\r\n providers:[\r\n UtilityService,\r\n EnvironmentService,\r\n AuthService,\r\n RequestHandlerService,\r\n StylesBundleService,\r\n TranslateService,\r\n BBSFTranslateService,\r\n ControlValidationService,\r\n MasterLayoutService\r\n ]\r\n})\r\nexport class BBSFUtilitiesModule { \r\n\r\n constructor(private injector: Injector) {\r\n AppInjector = this.injector;\r\n\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Resolve } from \"@angular/router\";\r\nimport { Observable } from \"rxjs\";\r\nimport { BBSFTranslateService } from \"./translate.service\";\r\n\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class TranslationResolverService implements Resolve<any> {\r\n constructor(private translateService: BBSFTranslateService) {}\r\n\r\n resolve(): Observable<any> {\r\n return this.translateService.getTranslation(\r\n this.translateService.currentLang\r\n );\r\n }\r\n}\r\n","/*\r\n * Public API Surface of @bnsights/bbsf-utilities\r\n */\r\n\r\nexport * from './lib/bbsf-utilities.module';\r\n\r\nexport * from './lib/shared/services/utility.service';\r\nexport * from './lib/shared/services/environment.service';\r\nexport * from './lib/shared/services/requesthandler.service'\r\nexport * from './lib/shared/services/stylesbundle.service'\r\nexport * from './lib/shared/services/translate.service'\r\nexport * from './lib/shared/services/controlvalidation.service'\r\nexport * from './lib/shared/services/masterlayout.service'\r\nexport * from './lib/shared/services/translationresolver.service'\r\n\r\n\r\nexport * from './lib/shared/config/environment';\r\n\r\n\r\nexport * from './lib/shared/authentication/auth.service';\r\n\r\n\r\nexport * from './lib/shared/models/RequestOptionsModel';\r\n\r\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":"bnsights-bbsf-utilities.js","sources":["../../../projects/bbsf-utilities/src/lib/shared/config/environment.ts","../../../projects/bbsf-utilities/src/lib/shared/services/environment.service.ts","../../../projects/bbsf-utilities/src/lib/shared/services/translate.service.ts","../../../projects/bbsf-utilities/src/lib/shared/authentication/auth.service.ts","../../../projects/bbsf-utilities/src/lib/shared/services/utility.service.ts","../../../projects/bbsf-utilities/src/lib/shared/models/RequestOptionsModel.ts","../../../projects/bbsf-utilities/src/lib/shared/services/requesthandler.service.ts","../../../projects/bbsf-utilities/src/lib/shared/services/stylesbundle.service.ts","../../../projects/bbsf-utilities/src/lib/shared/services/controlvalidation.service.ts","../../../projects/bbsf-utilities/src/lib/shared/services/masterlayout.service.ts","../../../projects/bbsf-utilities/src/lib/bbsf-utilities.module.ts","../../../projects/bbsf-utilities/src/lib/shared/services/translationresolver.service.ts","../../../projects/bbsf-utilities/src/public-api.ts","../../../projects/bbsf-utilities/src/bnsights-bbsf-utilities.ts"],"sourcesContent":["// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build ---prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = Object.assign({\r\n},\r\n(window as any).Envirnment);\r\n\r\n\r\n/*\r\n * In development mode, to ignore zone related error stack frames such as\r\n * `zone.run`, `zoneDelegate.invokeTask` for easier debugging, you can\r\n * import the following file, but please comment it out in production mode\r\n * because it will have performance impact when throw error\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import { Injectable } from '@angular/core';\r\nimport { environment } from '../config/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class EnvironmentService {\r\n\r\n getEnvironmentObject() {\r\n return environment;\r\n }\r\n\r\n getBaseUrl() {\r\n let Url = environment[\"BBSF_BaseUrl\"]\r\n return Url;\r\n }\r\n getApiUrl() {\r\n let Url = environment[\"BBSF_ApiUrl\"]\r\n return Url;\r\n }\r\n\r\n\r\n getProductionMode() {\r\n let Mode = environment[\"BBSF_IsProduction\"] as boolean\r\n return Mode;\r\n }\r\n\r\n getDefaultLanguage() {\r\n let Mode = environment[\"BBSF_DefaultLanguage\"] as string\r\n return Mode;\r\n }\r\n getIdentityServerUrl() {\r\n let Url = environment[\"BBSF_IdentityServerUrl\"]\r\n return Url;\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class BBSFTranslateService extends TranslateService {\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { UserManager, UserManagerSettings, User, WebStorageStateStore } from 'oidc-client';\r\nimport { BehaviorSubject, Subject } from 'rxjs';\r\nimport { EnvironmentService } from '../services/environment.service';\r\nimport { BBSFTranslateService } from '../services/translate.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class AuthService {\r\n\r\n // Observable navItem source\r\n private _authNavStatusSource = new BehaviorSubject<boolean>(false);\r\n // Observable navItem stream\r\n authNavStatus$ = this._authNavStatusSource.asObservable();\r\n // Observable navItem source\r\n private _userSource: Subject<User> = new Subject<User>();\r\n UserStatus$ = this._userSource.asObservable();\r\n private manager = new UserManager(\r\n {\r\n authority: this.environmentService.getIdentityServerUrl(),\r\n client_id: 'angular_spa',\r\n redirect_uri: this.environmentService.getIdentityServerUrl() +'/Admin/authentication/auth-callback',\r\n post_logout_redirect_uri: this.environmentService.getBaseUrl(),\r\n response_type: \"id_token token\",\r\n scope: \"openid profile email IdentityServerApi\",\r\n filterProtocolClaims: true,\r\n loadUserInfo: true,\r\n automaticSilentRenew: true,\r\n silent_redirect_uri: this.environmentService.getIdentityServerUrl() + '/assets/silent-callback.html',\r\n userStore: new WebStorageStateStore({ store: window.localStorage })\r\n }\r\n );\r\n public redirectUrl: string = \"\"\r\n static user: User | null = null;\r\n user: User | null;\r\n\r\n constructor(private http: HttpClient, private environmentService: EnvironmentService,private translateService:BBSFTranslateService) {\r\n this.manager.getUser().then(async user => {\r\n this.manager.storeUser(user);\r\n AuthService.user = user;\r\n this.user = user;\r\n this._authNavStatusSource.next(await this.isAuthenticated());\r\n });\r\n this.manager.events.addAccessTokenExpired(_ => {\r\n this._authNavStatusSource.next(false);\r\n })\r\n }\r\n\r\n login() {\r\n return this.manager.signinRedirect();\r\n }\r\n\r\n getUser() {\r\n this.manager.getUser().then(async user => {\r\n ;\r\n AuthService.user = user;\r\n this.user = user\r\n this._authNavStatusSource.next(await this.isAuthenticated());\r\n });\r\n }\r\n storUser(User: any) {\r\n this.manager.storeUser(User);\r\n }\r\n\r\n revokeAccessToken() {\r\n this.manager.revokeAccessToken();\r\n }\r\n\r\n signinSilent() {\r\n\r\n let x = this.manager.signinSilentCallback()\r\n x.then(s => {\r\n //console.log(s)\r\n })\r\n }\r\n\r\n async completeAuthentication() {\r\n this.user = await this.manager.signinRedirectCallback();\r\n AuthService.user = this.user\r\n localStorage.setItem(\"language\",this.user.profile.locale)\r\n if(this.translateService.currentLang!=this.user.profile.locale)\r\n {\r\n this.translateService.resetLang(this.translateService.currentLang)\r\n await this.translateService.reloadLang(this.user.profile.locale).subscribe((res)=>{\r\n console.log(res)\r\n })\r\n }\r\n this._userSource.next(AuthService.user)\r\n this._authNavStatusSource.next(await this.isAuthenticated());\r\n }\r\n\r\n \r\n\r\n\r\n async refreshToken(token) {\r\n const httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Authorization': token\r\n })\r\n };\r\n \r\n this.manager.revokeAccessToken()\r\n return await this.http.post<any>(`${this.environmentService.getIdentityServerUrl()}/users/refresh-token`, httpOptions, { withCredentials: true }).subscribe((user) => {\r\n this._userSource.next(user)\r\n AuthService.user = user\r\n this.user = user;\r\n })\r\n }\r\n\r\n getCurrentUser() {\r\n return this.manager.getUser()\r\n }\r\n\r\n async isAuthenticated(): Promise<boolean> {\r\n let user = await this.manager.getUser().then(user => {\r\n return user;\r\n })\r\n return this.user != null && !this.user.expired ;\r\n\r\n }\r\n isUserInRole(allowedPermission: number[]) {\r\n let selectedPermissionSetID = this.user.profile[\"selectedPermissionSetID\"] as number\r\n return allowedPermission.includes(selectedPermissionSetID);\r\n }\r\n\r\n authorizationHeaderValue(): string {\r\n return AuthService.user? `${AuthService.user.token_type} ${AuthService.user.access_token}`:\"\";\r\n }\r\n\r\n name(): string {\r\n return AuthService.user != null ? AuthService.user.profile.given_name : '';\r\n }\r\n setUrl(url) {\r\n localStorage.setItem(\"redirectUrl\", url)\r\n\r\n }\r\n getUrl() {\r\n return localStorage.getItem(\"redirectUrl\");\r\n }\r\n async signinSilentCallback() {\r\n let user = await this.manager.signinSilentCallback()\r\n //await this.manager.storeUser(user);\r\n AuthService.user = user;\r\n console.log(\"Token from signinSilentCallback :\"+AuthService.user)\r\n this.user = user;\r\n }\r\n async signout() {\r\n localStorage.clear();\r\n await this.manager.signoutRedirect();\r\n\r\n }\r\n\r\n}\r\n\r\n\r\n","import { Injectable, Optional, Host, SkipSelf, Component } from '@angular/core';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BlockUI, NgBlockUI } from 'ng-block-ui';\r\nimport { AuthService } from '../authentication/auth.service';\r\nimport { BBSFTranslateService } from './translate.service';\r\nimport { AppInjector } from '../../bbsf-utilities.module';\r\nimport { EnvironmentService } from './environment.service';\r\n\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UtilityService {\r\n\r\n isCreatedBefore = false;\r\n @BlockUI() blockUI: NgBlockUI;\r\n\r\n constructor(private translator: BBSFTranslateService, private authService: AuthService , private environmentService: EnvironmentService,) {\r\n\r\n }\r\n\r\n\r\n getResourceValue(Key: string): string {\r\n let ResourceValue =this.translator.instant(Key)\r\n return ResourceValue;\r\n\r\n }\r\n\r\n getCurrentLanguage() {\r\n let currentLanguage = this.environmentService.getDefaultLanguage();\r\n let lang = localStorage.getItem('language');\r\n if ( lang) \r\n currentLanguage=lang;\r\n else \r\n localStorage.setItem('language', currentLanguage);\r\n return currentLanguage;\r\n }\r\n isCurrentLanguageEnglish() {\r\n return this.getCurrentLanguage() == \"en\"\r\n }\r\n isCurrentLanguageArabic() {\r\n return this.getCurrentLanguage() == \"ar\"\r\n }\r\n\r\n notifySuccessMessage(Message?: string, title?: string, time?: number) {\r\n\r\n let MessageTemplate = this.getResourceValue(\"SuccessMessage\");\r\n let titleTemplate = this.getResourceValue(\"Success\");\r\n if (Message) {\r\n MessageTemplate = Message;\r\n }\r\n if (title) {\r\n titleTemplate = title;\r\n }\r\n let toaster = AppInjector.get(ToastrService);\r\n toaster.success(MessageTemplate, titleTemplate);\r\n }\r\n\r\n notifyErrorMessage(Message?: string, title?: string, time?: number) {\r\n\r\n let MessageTemplate = this.getResourceValue(\"ErrorMessage\");\r\n let titleTemplate = this.getResourceValue(\"Error\");\r\n if (Message) {\r\n MessageTemplate = Message;\r\n }\r\n if (title) {\r\n titleTemplate = title;\r\n }\r\n const toaster = AppInjector.get(ToastrService);\r\n toaster.error(MessageTemplate, titleTemplate);\r\n }\r\n\r\n notifyWarningMessage(Message?: string, title?: string, time?: number) {\r\n\r\n let MessageTemplate = this.getResourceValue(\"WarningMessage\");\r\n let titleTemplate = this.getResourceValue(\"Warning\");\r\n if (Message) {\r\n MessageTemplate = Message;\r\n }\r\n if (title) {\r\n titleTemplate = title;\r\n }\r\n const toaster = AppInjector.get(ToastrService);\r\n toaster.warning(MessageTemplate, titleTemplate);\r\n }\r\n\r\n startBlockUI() {\r\n this.blockUI.start();\r\n }\r\n stopBlockUI() {\r\n this.blockUI.stop();\r\n }\r\n}\r\n","import { FormGroup } from \"@angular/forms\";\r\n\r\nexport class RequestOptionsModel {\r\n disableSuccessNotification: boolean=false;\r\n disableBlockUI: boolean=false;\r\n customSuccessMessage: string;\r\n customErrorMessage: string;\r\n responseType:any=\"\"\r\n formGroup:FormGroup=null\r\n}\r\n","import { Injectable, OnDestroy, Pipe } from '@angular/core';\r\nimport { HttpClient, HttpErrorResponse, HttpHeaders, HttpParams } from \"@angular/common/http\";\r\nimport { RequestOptionsModel } from '../models/RequestOptionsModel';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { AuthService } from '../authentication/auth.service';\r\nimport { EnvironmentService } from './environment.service';\r\nimport { Subject } from 'rxjs';\r\nimport { UtilityService } from './utility.service';\r\nimport { map, takeUntil, tap } from 'rxjs/operators';\r\nimport { ControlValidationService } from './controlvalidation.service';\r\nimport { BBSFTranslateService } from './translate.service';\r\nimport { result } from 'lodash';\r\n\r\n\r\n@Injectable()\r\nexport class RequestHandlerService implements OnDestroy {\r\n private requestOptions: RequestOptionsModel = new RequestOptionsModel();\r\n private currentLanguage = \"\";\r\n public onDestroy$: Subject<void> = new Subject<void>();\r\n constructor\r\n (\r\n private http: HttpClient,\r\n private authService: AuthService,\r\n private environmentService: EnvironmentService,\r\n private utilityService: UtilityService,\r\n private bbsfTranslateService: BBSFTranslateService\r\n ) {\r\n //using localStorage to avoid call getCurrentLanguage() because it is not all to use async in constructor\r\n\r\n this.bbsfTranslateService.onLangChange.subscribe((event) => {\r\n if (this.currentLanguage != event.lang) {\r\n this.currentLanguage = event.lang;\r\n }\r\n })\r\n }\r\n\r\n public getLuckyNumber(): Observable<number> {\r\n \r\n return Observable.create((subject: Subject<number>) => {\r\n setInterval(() => {\r\n const number = Math.floor(Math.random() * 10);\r\n console.log(number)\r\n subject.next(number);\r\n }, 1000);\r\n }).pipe(\r\n takeUntil(this.onDestroy$));\r\n }\r\n\r\n\r\n get<T>(Url: string, params?: HttpParams, requestOptions?: RequestOptionsModel):Observable<T>{\r\n if (requestOptions)\r\n this.requestOptions = requestOptions;\r\n let headers = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Authorization': this.authService.authorizationHeaderValue(),\r\n });\r\n this.currentLanguage = localStorage.getItem('language');\r\n headers = headers.set('Accept-Language', this.currentLanguage.toString());\r\n headers = headers.set('ignore-cookies', 'true');\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.startBlockUI();\r\n let object:T;\r\n return this.http.get<T>(this.environmentService.getApiUrl() + Url, { headers: headers, params: params }).pipe(\r\n takeUntil(this.onDestroy$),\r\n tap((result) => {\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.stopBlockUI();\r\n }),map((data: T) => {\r\n let result:T= <T>data;\r\n return result\r\n })\r\n );\r\n }\r\n\r\n post<T>(Url: string, model?: any, params?: HttpParams, requestOptions?: RequestOptionsModel):Observable<T> {\r\n \r\n \r\n if (requestOptions)\r\n this.requestOptions = requestOptions;\r\n let headers = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Authorization': this.authService.authorizationHeaderValue(),\r\n\r\n });\r\n this.currentLanguage = localStorage.getItem('language');\r\n headers = headers.set('Accept-Language', this.currentLanguage.toString());\r\n headers = headers.set('ignore-cookies', 'true');\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.startBlockUI();\r\n return this.http.post<T>(this.environmentService.getApiUrl() + Url, model, { headers: headers, params: params, responseType: this.requestOptions.responseType }).pipe(\r\n takeUntil(this.onDestroy$),\r\n tap((result) => {\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.stopBlockUI();\r\n })\r\n );\r\n }\r\n\r\n\r\n \r\n delete<T>(Url: string,deletedId:string,params?: HttpParams, requestOptions?: RequestOptionsModel):Observable<T>{\r\n if (requestOptions)\r\n this.requestOptions = requestOptions;\r\n let headers = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Authorization': this.authService.authorizationHeaderValue(),\r\n });\r\n this.currentLanguage = localStorage.getItem('language');\r\n headers = headers.set('Accept-Language', this.currentLanguage.toString());\r\n headers = headers.set('ignore-cookies', 'true');\r\n\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.startBlockUI();\r\n return this.http.delete<T>(this.environmentService.getApiUrl() + Url+`/${deletedId}`, { headers: headers, params: params }).pipe(\r\n takeUntil(this.onDestroy$),\r\n tap((result) => {\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.stopBlockUI();\r\n })\r\n );\r\n }\r\n\r\n\r\n put<T>(Url: string, model?: any, params?: HttpParams, requestOptions?: RequestOptionsModel):Observable<T> {\r\n if (requestOptions)\r\n this.requestOptions = requestOptions;\r\n let headers = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Authorization': this.authService.authorizationHeaderValue(),\r\n\r\n });\r\n this.currentLanguage = localStorage.getItem('language');\r\n headers = headers.set('Accept-Language', this.currentLanguage.toString());\r\n headers = headers.set('ignore-cookies', 'true');\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.startBlockUI();\r\n return this.http.put<T>(this.environmentService.getApiUrl() + Url, model, { headers: headers, params: params, responseType: this.requestOptions.responseType }).pipe(\r\n takeUntil(this.onDestroy$),\r\n tap((result) => {\r\n if (!this.requestOptions.disableBlockUI)\r\n this.utilityService.stopBlockUI();\r\n })\r\n );\r\n }\r\n \r\n public destroyHandler(): void {\r\n this.onDestroy$.next();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n console.log(\"clearInterval\")\r\n this.destroyHandler()\r\n }\r\n}\r\n\r\n","import { DOCUMENT } from '@angular/common';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { BlockUI, NgBlockUI } from 'ng-block-ui';\r\nimport { BBSFTranslateService } from './translate.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class StylesBundleService {\r\n\r\n constructor(@Inject(DOCUMENT) private document: Document,private translateService: BBSFTranslateService){}\r\n\r\n loadThemes(lang: string,bundleEnglishName:string,bundleArabicName:string) {\r\n if (lang == \"ar\") {\r\n this.loadStyleBundle(bundleArabicName.toString())\r\n document.querySelector('html').setAttribute(\"lang\", \"ar\");\r\n document.querySelector('html').setAttribute(\"dir\", \"rtl\");\r\n } else {\r\n this.loadStyleBundle(bundleEnglishName.toString())\r\n document.querySelector('html').setAttribute(\"lang\", \"en\");\r\n document.querySelector('html').setAttribute(\"dir\", \"ltr\");\r\n }\r\n \r\n }\r\n\r\n loadStyleBundle(styleName: string) {\r\n const head = this.document.getElementsByTagName('head')[0];\r\n\r\n let themeLink = this.document.getElementById('client-theme') as HTMLLinkElement;\r\n\r\n if (themeLink && themeLink.href.includes(styleName)) {\r\n return;\r\n }\r\n else if (themeLink && !themeLink.href.includes(styleName)) {\r\n themeLink.remove();\r\n }\r\n const style = this.document.createElement('link');\r\n style.id = 'client-theme';\r\n style.rel = 'stylesheet';\r\n style.href = `${styleName}`;\r\n head.appendChild(style);\r\n }\r\n\r\n}\r\n\r\n","import { Injectable, Optional, Host, SkipSelf, Component } from '@angular/core';\r\nimport { IndividualConfig, ToastrService } from 'ngx-toastr';\r\nimport { BlockUI, NgBlockUI } from 'ng-block-ui';\r\nimport { AbstractControl, ControlContainer, ControlValueAccessor, NG_VALUE_ACCESSOR, FormControl, FormsModule, FormGroup } from '@angular/forms';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { ErrorModel } from '../models/ErrorModel';\r\nimport { UtilityService } from './utility.service';\r\nimport { RequestOptionsModel } from '../models/RequestOptionsModel';\r\n\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ControlValidationService {\r\n private requestOptions: RequestOptionsModel = new RequestOptionsModel();\r\n\r\n constructor\r\n (\r\n private utilityService: UtilityService\r\n ) {\r\n\r\n }\r\n\r\n isCreatedBefor = false;\r\n\r\n @BlockUI() blockUI: NgBlockUI;\r\n\r\n showGlobalError(errorMessage?: string | string[], formId?: string, deleteOld?: boolean) {\r\n let globalErorrElement = document.getElementsByClassName('alert alert-danger alert-InvalidValidation')\r\n if (globalErorrElement.length > 0) {\r\n this.removeElementsByClass('alert alert-danger alert-InvalidValidation');\r\n }\r\n\r\n\r\n if (this.isCreatedBefor == true) {\r\n this.removeElementsByClass('alert alert-danger alert-InvalidValidation');\r\n }\r\n\r\n // tslint:disable-next-line: prefer-const\r\n if (!formId)\r\n formId = \"currentForm\"\r\n var object = document.getElementById(formId);\r\n const tagName = 'div';\r\n // tslint:disable-next-line: prefer-const\r\n var elementToAppend = document.createElement(tagName); // Your tag name here\r\n let message: string | string[] = \"\";\r\n\r\n\r\n if (!errorMessage || (typeof errorMessage == \"string\")) {\r\n if (localStorage.getItem('language') == \"ar\")\r\n message = errorMessage ? errorMessage : \"لديك بعص الأخطاء . من فضلك قم بالمراجعه \";\r\n else\r\n message = errorMessage ? errorMessage : \"You have some validation errors. Please check below\"\r\n elementToAppend.innerHTML = \"<ul><li>\" + message + \"</li></ul>\";\r\n elementToAppend.className += 'alert alert-danger alert-InvalidValidation';\r\n elementToAppend.id += 'errorId';\r\n // tslint:disable-next-line: prefer-for-of\r\n const elementToAppen = elementToAppend.cloneNode(true);\r\n // let targetElement = object.getElementsByClassName(\"b-control\")[0];\r\n object.insertBefore(elementToAppen, object.firstChild);\r\n }\r\n else {\r\n elementToAppend.innerHTML = \"<ul>\";\r\n\r\n for (const iterator of errorMessage) {\r\n\r\n elementToAppend.innerHTML = \"<li>\" + iterator + \"</li>\";\r\n }\r\n\r\n elementToAppend.innerHTML = \"</ul>\";\r\n elementToAppend.className += 'alert alert-danger alert-InvalidValidation';\r\n elementToAppend.id += 'errorId';\r\n // tslint:disable-next-line: prefer-for-of\r\n const elementToAppen = elementToAppend.cloneNode(true);\r\n // let targetElement = object.getElementsByClassName(\"b-control\")[0];\r\n object.insertBefore(elementToAppen, object.firstChild);\r\n }\r\n\r\n this.isCreatedBefor = true;\r\n\r\n }\r\n\r\n RemoveGlobalError() {\r\n const removedList = document.getElementsByClassName('alert alert-danger alert-InvalidValidation');\r\n // tslint:disable-next-line: prefer-for-of\r\n for (let index = 0; index < removedList.length; index++) {\r\n const element = removedList[index];\r\n element.remove();\r\n }\r\n this.isCreatedBefor = false;\r\n }\r\n\r\n showInputErro(errors: any) {\r\n\r\n // show error on top of form \r\n this.showGlobalError();\r\n // remove old error from server\r\n this.removeElementsByClass('errortemplet');\r\n // Looping in error Object\r\n for (const key in errors) {\r\n if (errors.hasOwnProperty(key)) {\r\n for (const iterator of errors[key]) {\r\n const input = document.querySelectorAll('[ng-reflect-name=' + key + ']')[0];\r\n if ((input.attributes['ng-reflect-name'].value as string) === key) {\r\n this.removeElementsByClass('erroclass-' + key);\r\n const tagName = 'p'\r\n const elementToAppend = document.createElement(tagName); // Your tag name here\r\n elementToAppend.innerHTML = iterator;\r\n elementToAppend.style.color = 'red'\r\n elementToAppend.className += 'errortemplet erroclass-' + key;\r\n const elementToappen = elementToAppend.cloneNode(true);\r\n input.parentNode.insertBefore(elementToappen, input.lastChild);\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n removeElementsByClass(className) {\r\n const elements = document.getElementsByClassName(className);\r\n while (elements.length > 0) {\r\n elements[0].parentNode.removeChild(elements[0]);\r\n }\r\n }\r\n\r\n\r\n renderServerErrors(form: FormGroup, err: HttpErrorResponse, requestOptions: RequestOptionsModel, formId?: string) {\r\n if (err.error == null) {\r\n return;\r\n }\r\n let errorsArray: string[] = [];\r\n\r\n this.requestOptions = requestOptions;\r\n err.error.validation_errors.forEach((element: ErrorModel) => {\r\n let fieldName = element.field;\r\n let controlName = element.controlName;\r\n let message = element.message;\r\n if (form == null) {\r\n this.requestOptions.customErrorMessage ? this.utilityService.notifyErrorMessage(this.requestOptions.customErrorMessage) : this.utilityService.notifyErrorMessage(`${fieldName}: ${message}`);\r\n }\r\n else if (controlName && !this.hasControlName(form, controlName)) {\r\n errorsArray.push(`${fieldName}: ${message}`);\r\n // this.showGlobalError(`${fieldName}: ${message}`,formId )\r\n }\r\n else {\r\n this.setFieldError(form, controlName, fieldName, message);\r\n }\r\n });\r\n if (errorsArray.length > 0)\r\n this.showGlobalError(errorsArray, formId)\r\n\r\n\r\n }\r\n\r\n private hasControlName(form: FormGroup, controlName: string): boolean {\r\n let control = form.get(controlName);\r\n return control != null;\r\n }\r\n\r\n private setFieldError(form: FormGroup, controlName: string, fieldName: string, message: string) {\r\n let control = null\r\n if (controlName)\r\n control = form.get(controlName);\r\n else\r\n control = form.get(fieldName.split('.')[0]);\r\n let errors = { \"errorMassage\": message };\r\n let fieldNameArray = fieldName.split('.');\r\n if (fieldNameArray.length >= 1) {\r\n switch (fieldNameArray[fieldNameArray.length - 1].toLocaleLowerCase()) {\r\n case \"english\":\r\n let englishControl = control.get(\"English\")\r\n englishControl.setErrors(errors);\r\n break;\r\n case \"arabic\":\r\n let arabicControl = control.get(\"Arabic\")\r\n arabicControl.setErrors(errors);\r\n break;\r\n\r\n default:\r\n control.setErrors(errors);\r\n }\r\n\r\n }\r\n else if (fieldNameArray.length == 1) {\r\n control.setErrors(errors);\r\n }\r\n else {\r\n this.requestOptions.customErrorMessage ? this.utilityService.notifyErrorMessage(this.requestOptions.customErrorMessage) : this.utilityService.notifyErrorMessage(`${fieldName}: ${message}`)\r\n }\r\n\r\n\r\n }\r\n\r\n\r\n}\r\n","import { HttpParams } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { AuthService } from \"../authentication/auth.service\";\r\nimport { RequestHandlerService } from \"./requesthandler.service\";\r\nimport { StylesBundleService } from \"./stylesbundle.service\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MasterLayoutService {\r\n ApiUrl=\"/api/admin/Users/\"\r\n constructor(private router: Router, private http: RequestHandlerService, private authService: AuthService,private stylesBundleService:StylesBundleService ,private translate:TranslateService) {\r\n }\r\n switchLang(lang: string, bundleEnglishName: string, bundleArabicName: string) {\r\n this.changeLanguage(lang).subscribe((result) => {\r\n this.updateUserInfo().subscribe((Value) => {\r\n let UserInfoObject =Value ;\r\n this.authService.getUser();\r\n this.authService.user.profile = Object.assign( this.authService.user.profile, UserInfoObject);\r\n this.authService.storUser(this.authService.user);\r\n this.stylesBundleService.loadThemes(lang,bundleEnglishName,bundleArabicName);\r\n localStorage.setItem('language', lang);\r\n this.translate.use(lang);\r\n });\r\n });\r\n }\r\n reloadComponent() {\r\n let currentUrl = this.router.url;\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n this.router.onSameUrlNavigation = 'reload';\r\n this.router.navigate([currentUrl]);\r\n }\r\n\r\n private changeLanguage(key: string) {\r\n\r\n let params = new HttpParams();\r\n params = params.append(\"UserId\", this.authService.user.profile.id);\r\n params = params.append(\"LanguageKey\", key);\r\n return this.http.post(this.ApiUrl + 'updateLaguage', null, params)\r\n }\r\n\r\n private updateUserInfo() {\r\n return this.http.get('/connect/userinfo')\r\n }\r\n\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Injector, NgModule } from '@angular/core';\r\nimport { RouterModule } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { BlockUIModule } from 'ng-block-ui';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { HttpModule } from '@angular/http';\r\nimport { UtilityService } from './shared/services/utility.service';\r\nimport { EnvironmentService } from './shared/services/environment.service';\r\nimport { AuthService } from './shared/authentication/auth.service';\r\nimport { RequestHandlerService } from './shared/services/requesthandler.service';\r\nimport { StylesBundleService } from './shared/services/stylesbundle.service';\r\nimport { BBSFTranslateService } from './shared/services/translate.service';\r\nimport { ControlValidationService } from './shared/services/controlvalidation.service';\r\nimport { MasterLayoutService } from './shared/services/masterlayout.service';\r\n\r\nexport let AppInjector: Injector;\r\n\r\n@NgModule({\r\n declarations: [\r\n ],\r\n imports: [\r\n CommonModule,\r\n BlockUIModule.forRoot(),\r\n HttpModule,\r\n RouterModule,\r\n ToastrModule.forRoot(),\r\n\r\n ],\r\n exports: [\r\n \r\n ],\r\n providers:[\r\n UtilityService,\r\n EnvironmentService,\r\n AuthService,\r\n RequestHandlerService,\r\n StylesBundleService,\r\n TranslateService,\r\n BBSFTranslateService,\r\n ControlValidationService,\r\n MasterLayoutService\r\n ]\r\n})\r\nexport class BBSFUtilitiesModule { \r\n\r\n constructor(private injector: Injector) {\r\n AppInjector = this.injector;\r\n\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Resolve } from \"@angular/router\";\r\nimport { Observable } from \"rxjs\";\r\nimport { BBSFTranslateService } from \"./translate.service\";\r\n\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class TranslationResolverService implements Resolve<any> {\r\n constructor(private translateService: BBSFTranslateService) {}\r\n\r\n resolve(): Observable<any> {\r\n return this.translateService.getTranslation(\r\n this.translateService.currentLang\r\n );\r\n }\r\n}\r\n","/*\r\n * Public API Surface of @bnsights/bbsf-utilities\r\n */\r\n\r\nexport * from './lib/bbsf-utilities.module';\r\n\r\nexport * from './lib/shared/services/utility.service';\r\nexport * from './lib/shared/services/environment.service';\r\nexport * from './lib/shared/services/requesthandler.service'\r\nexport * from './lib/shared/services/stylesbundle.service'\r\nexport * from './lib/shared/services/translate.service'\r\nexport * from './lib/shared/services/controlvalidation.service'\r\nexport * from './lib/shared/services/masterlayout.service'\r\nexport * from './lib/shared/services/translationresolver.service'\r\n\r\n\r\nexport * from './lib/shared/config/environment';\r\n\r\n\r\nexport * from './lib/shared/authentication/auth.service';\r\n\r\n\r\nexport * from './lib/shared/models/RequestOptionsModel';\r\n\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -11,8 +11,8 @@ export declare class UtilityService {
|
|
|
11
11
|
constructor(translator: BBSFTranslateService, authService: AuthService, environmentService: EnvironmentService);
|
|
12
12
|
getResourceValue(Key: string): string;
|
|
13
13
|
getCurrentLanguage(): string;
|
|
14
|
-
isCurrentLanguageEnglish():
|
|
15
|
-
isCurrentLanguageArabic():
|
|
14
|
+
isCurrentLanguageEnglish(): boolean;
|
|
15
|
+
isCurrentLanguageArabic(): boolean;
|
|
16
16
|
notifySuccessMessage(Message?: string, title?: string, time?: number): void;
|
|
17
17
|
notifyErrorMessage(Message?: string, title?: string, time?: number): void;
|
|
18
18
|
notifyWarningMessage(Message?: string, title?: string, time?: number): void;
|
package/package.json
CHANGED
|
Binary file
|