@osovitny/anatoly 2.0.13 → 2.0.15

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.
@@ -16,5 +16,5 @@
16
16
  Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.
17
17
  </file>
18
18
  */
19
- export * from "./settings";
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvY29yZS9jb25zdHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBaUJFO0FBRUYsY0FBYyxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55XHJcbiAgICBBbmF0b2x5IE9zb3ZpdG55XHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICAyNiBKdW4gMjAyMFxyXG5cclxuICBWZXJzaW9uOlxyXG4gICAgMS4wXHJcblxyXG4gIENvcHlyaWdodCAoYykgMjAxNi0yMDIwIE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuZXhwb3J0ICogZnJvbSBcIi4vc2V0dGluZ3NcIjtcclxuIl19
19
+ export { ContextInitState, AppCoreSettings } from './settings';
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvY29yZS9jb25zdHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBaUJFO0FBRUYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxNQUFPLFlBQVksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnlcclxuICAgIEFuYXRvbHkgT3Nvdml0bnlcclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDI2IEp1biAyMDIwXHJcblxyXG4gIFZlcnNpb246XHJcbiAgICAxLjBcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjAgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG5leHBvcnQgeyBDb250ZXh0SW5pdFN0YXRlLCBBcHBDb3JlU2V0dGluZ3MgfSAgZnJvbSAnLi9zZXR0aW5ncyc7XHJcbiJdfQ==
@@ -16,6 +16,6 @@
16
16
  Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.
17
17
  </file>
18
18
  */
19
- export const ContextInitState = JSON.parse((document.getElementById("contextInitState")).getAttribute("data-contextinitstate"));
20
- export const AppCoreSettings = JSON.parse((document.getElementById("appCoreSettings")).getAttribute("data-appcoresettings"));
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvY29yZS9jb25zdHMvc2V0dGluZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBaUJFO0FBRUYsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FDckIsQ0FDakIsUUFBUSxDQUFDLGNBQWMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUMzQyxDQUFDLFlBQVksQ0FBQyx1QkFBdUIsQ0FBQyxDQUN6QyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQ3BCLENBQ2pCLFFBQVEsQ0FBQyxjQUFjLENBQUMsaUJBQWlCLENBQUMsQ0FDMUMsQ0FBQyxZQUFZLENBQUMsc0JBQXNCLENBQUMsQ0FDeEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnlcclxuICAgIEFuYXRvbHkgT3Nvdml0bnlcclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDI2IEp1biAyMDIwXHJcblxyXG4gIFZlcnNpb246XHJcbiAgICAxLjBcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjAgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG5leHBvcnQgY29uc3QgQ29udGV4dEluaXRTdGF0ZSA9IEpTT04ucGFyc2UoXHJcbiAgKDxIVE1MSW5wdXRFbGVtZW50PihcclxuICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiY29udGV4dEluaXRTdGF0ZVwiKVxyXG4gICkpLmdldEF0dHJpYnV0ZShcImRhdGEtY29udGV4dGluaXRzdGF0ZVwiKVxyXG4pO1xyXG5cclxuZXhwb3J0IGNvbnN0IEFwcENvcmVTZXR0aW5ncyA9IEpTT04ucGFyc2UoXHJcbiAgKDxIVE1MSW5wdXRFbGVtZW50PihcclxuICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiYXBwQ29yZVNldHRpbmdzXCIpXHJcbiAgKSkuZ2V0QXR0cmlidXRlKFwiZGF0YS1hcHBjb3Jlc2V0dGluZ3NcIilcclxuKTtcclxuIl19
19
+ export const ContextInitState = JSON.parse((document.getElementById('contextInitState')).getAttribute('data-contextinitstate'));
20
+ export const AppCoreSettings = JSON.parse((document.getElementById('appCoreSettings')).getAttribute('data-appcoresettings'));
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvY29yZS9jb25zdHMvc2V0dGluZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBaUJFO0FBRUYsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FDdkMsQ0FDQyxRQUFRLENBQUMsY0FBYyxDQUFDLGtCQUFrQixDQUFDLENBQ3ZCLENBQUMsWUFBWSxDQUFDLHVCQUF1QixDQUFDLENBQzdELENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FDdEMsQ0FDQyxRQUFRLENBQUMsY0FBYyxDQUFDLGlCQUFpQixDQUFDLENBQ3RCLENBQUMsWUFBWSxDQUFDLHNCQUFzQixDQUFDLENBQzVELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55XHJcbiAgICBBbmF0b2x5IE9zb3ZpdG55XHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICAyNiBKdW4gMjAyMFxyXG5cclxuICBWZXJzaW9uOlxyXG4gICAgMS4wXHJcblxyXG4gIENvcHlyaWdodCAoYykgMjAxNi0yMDIwIE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuZXhwb3J0IGNvbnN0IENvbnRleHRJbml0U3RhdGUgPSBKU09OLnBhcnNlKFxyXG4gICgoXHJcbiAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnY29udGV4dEluaXRTdGF0ZScpXHJcbiAgKSBhcyBIVE1MSW5wdXRFbGVtZW50KS5nZXRBdHRyaWJ1dGUoJ2RhdGEtY29udGV4dGluaXRzdGF0ZScpXHJcbik7XHJcblxyXG5leHBvcnQgY29uc3QgQXBwQ29yZVNldHRpbmdzID0gSlNPTi5wYXJzZShcclxuICAoKFxyXG4gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2FwcENvcmVTZXR0aW5ncycpXHJcbiAgKSBhcyBIVE1MSW5wdXRFbGVtZW50KS5nZXRBdHRyaWJ1dGUoJ2RhdGEtYXBwY29yZXNldHRpbmdzJylcclxuKTtcclxuIl19
@@ -1,10 +1,10 @@
1
- import { NgModule, Optional, SkipSelf, Injector, } from "@angular/core";
2
- import { CommonModule } from "@angular/common";
1
+ import { NgModule, Optional, SkipSelf, Injector, } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
3
  // App
4
- import { AppContextService } from "./services/appcontext.service";
5
- import { LoggingService } from "./logging/logging.service";
4
+ import { AppContextService } from './services/appcontext.service';
5
+ import { LoggingService } from './logging/logging.service';
6
6
  // Guards
7
- import { throwIfAlreadyLoaded } from "./guards/once-import.guard";
7
+ import { throwIfAlreadyLoaded } from './guards/once-import.guard';
8
8
  const providers = [
9
9
  LoggingService,
10
10
  AppContextService,
@@ -13,7 +13,7 @@ export let InjectorInstance;
13
13
  export class AnatolyCoreModule {
14
14
  constructor(injector, parentModule) {
15
15
  this.injector = injector;
16
- throwIfAlreadyLoaded(parentModule, "AnatolyCoreModule");
16
+ throwIfAlreadyLoaded(parentModule, 'AnatolyCoreModule');
17
17
  InjectorInstance = this.injector;
18
18
  }
19
19
  }
@@ -27,4 +27,4 @@ AnatolyCoreModule.ctorParameters = () => [
27
27
  { type: Injector },
28
28
  { type: AnatolyCoreModule, decorators: [{ type: Optional }, { type: SkipSelf }] }
29
29
  ];
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvY29yZS9jb3JlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsUUFBUSxFQUNSLFFBQVEsRUFDUixRQUFRLEVBRVIsUUFBUSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxNQUFNO0FBQ04sT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTNELFNBQVM7QUFDVCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUVsRSxNQUFNLFNBQVMsR0FBVTtJQUN2QixjQUFjO0lBQ2QsaUJBQWlCO0NBQ2xCLENBQUM7QUFFRixNQUFNLENBQUMsSUFBSSxnQkFBMEIsQ0FBQztBQU10QyxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLFlBQW9CLFFBQWtCLEVBQTBCLFlBQStCO1FBQTNFLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDcEMsb0JBQW9CLENBQUMsWUFBWSxFQUFFLG1CQUFtQixDQUFDLENBQUM7UUFFeEQsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUNuQyxDQUFDOzs7WUFURixRQUFRLFNBQUM7Z0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO2dCQUN2QixTQUFTLEVBQUUsQ0FBQyxHQUFHLFNBQVMsQ0FBQzthQUMxQjs7O1lBckJDLFFBQVE7WUF1QnNFLGlCQUFpQix1QkFBdEQsUUFBUSxZQUFJLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIE5nTW9kdWxlLFxyXG4gIE9wdGlvbmFsLFxyXG4gIFNraXBTZWxmLFxyXG4gIEVycm9ySGFuZGxlcixcclxuICBJbmplY3RvcixcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcblxyXG4vLyBBcHBcclxuaW1wb3J0IHsgQXBwQ29udGV4dFNlcnZpY2UgfSBmcm9tIFwiLi9zZXJ2aWNlcy9hcHBjb250ZXh0LnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgTG9nZ2luZ1NlcnZpY2UgfSBmcm9tIFwiLi9sb2dnaW5nL2xvZ2dpbmcuc2VydmljZVwiO1xyXG5cclxuLy8gR3VhcmRzXHJcbmltcG9ydCB7IHRocm93SWZBbHJlYWR5TG9hZGVkIH0gZnJvbSBcIi4vZ3VhcmRzL29uY2UtaW1wb3J0Lmd1YXJkXCI7XHJcblxyXG5jb25zdCBwcm92aWRlcnM6IGFueVtdID0gW1xyXG4gIExvZ2dpbmdTZXJ2aWNlLFxyXG4gIEFwcENvbnRleHRTZXJ2aWNlLFxyXG5dO1xyXG5cclxuZXhwb3J0IGxldCBJbmplY3Rvckluc3RhbmNlOiBJbmplY3RvcjtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXHJcbiAgcHJvdmlkZXJzOiBbLi4ucHJvdmlkZXJzXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFuYXRvbHlDb3JlTW9kdWxlIHtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGluamVjdG9yOiBJbmplY3RvciwgQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgcGFyZW50TW9kdWxlOiBBbmF0b2x5Q29yZU1vZHVsZSkge1xyXG4gICAgdGhyb3dJZkFscmVhZHlMb2FkZWQocGFyZW50TW9kdWxlLCBcIkFuYXRvbHlDb3JlTW9kdWxlXCIpO1xyXG5cclxuICAgIEluamVjdG9ySW5zdGFuY2UgPSB0aGlzLmluamVjdG9yO1xyXG4gIH1cclxufVxyXG4iXX0=
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvY29yZS9jb3JlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUcsUUFBUSxFQUFHLFFBQVEsRUFBRyxRQUFRLEVBQWtCLFFBQVEsR0FBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsTUFBTTtBQUNOLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUUzRCxTQUFTO0FBQ1QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFbEUsTUFBTSxTQUFTLEdBQVU7SUFDdkIsY0FBYztJQUNkLGlCQUFpQjtDQUNsQixDQUFDO0FBRUYsTUFBTSxDQUFDLElBQUksZ0JBQTBCLENBQUM7QUFNdEMsTUFBTSxPQUFPLGlCQUFpQjtJQUM1QixZQUFvQixRQUFrQixFQUEwQixZQUErQjtRQUEzRSxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ3BDLG9CQUFvQixDQUFDLFlBQVksRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO1FBRXhELGdCQUFnQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDbkMsQ0FBQzs7O1lBVEYsUUFBUSxTQUFDO2dCQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztnQkFDdkIsU0FBUyxFQUFFLENBQUMsR0FBRyxTQUFTLENBQUM7YUFDMUI7OztZQXBCeUQsUUFBUTtZQXNCYyxpQkFBaUIsdUJBQXRELFFBQVEsWUFBSSxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgIE5nTW9kdWxlLCAgT3B0aW9uYWwsICBTa2lwU2VsZiwgIEVycm9ySGFuZGxlciwgIEluamVjdG9yLH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG4vLyBBcHBcclxuaW1wb3J0IHsgQXBwQ29udGV4dFNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2FwcGNvbnRleHQuc2VydmljZSc7XHJcbmltcG9ydCB7IExvZ2dpbmdTZXJ2aWNlIH0gZnJvbSAnLi9sb2dnaW5nL2xvZ2dpbmcuc2VydmljZSc7XHJcblxyXG4vLyBHdWFyZHNcclxuaW1wb3J0IHsgdGhyb3dJZkFscmVhZHlMb2FkZWQgfSBmcm9tICcuL2d1YXJkcy9vbmNlLWltcG9ydC5ndWFyZCc7XHJcblxyXG5jb25zdCBwcm92aWRlcnM6IGFueVtdID0gW1xyXG4gIExvZ2dpbmdTZXJ2aWNlLFxyXG4gIEFwcENvbnRleHRTZXJ2aWNlLFxyXG5dO1xyXG5cclxuZXhwb3J0IGxldCBJbmplY3Rvckluc3RhbmNlOiBJbmplY3RvcjtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXHJcbiAgcHJvdmlkZXJzOiBbLi4ucHJvdmlkZXJzXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFuYXRvbHlDb3JlTW9kdWxlIHtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGluamVjdG9yOiBJbmplY3RvciwgQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgcGFyZW50TW9kdWxlOiBBbmF0b2x5Q29yZU1vZHVsZSkge1xyXG4gICAgdGhyb3dJZkFscmVhZHlMb2FkZWQocGFyZW50TW9kdWxlLCAnQW5hdG9seUNvcmVNb2R1bGUnKTtcclxuXHJcbiAgICBJbmplY3Rvckluc3RhbmNlID0gdGhpcy5pbmplY3RvcjtcclxuICB9XHJcbn1cclxuIl19
@@ -16,10 +16,10 @@
16
16
  Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.
17
17
  </file>
18
18
  */
19
- import { v4 as uuidv4 } from "uuid";
19
+ import { v4 as uuidv4 } from 'uuid';
20
20
  export class Guid {
21
21
  static newGuid() {
22
22
  return uuidv4();
23
23
  }
24
24
  }
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi9jb3JlL2d1aWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBaUJFO0FBRUYsT0FBTyxFQUFFLEVBQUUsSUFBSSxNQUFNLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFcEMsTUFBTSxPQUFPLElBQUk7SUFDUixNQUFNLENBQUMsT0FBTztRQUNuQixPQUFPLE1BQU0sRUFBRSxDQUFDO0lBQ2xCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnlcclxuICAgIEFuYXRvbHkgT3Nvdml0bnlcclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDI2IEp1biAyMDIwXHJcblxyXG4gIFZlcnNpb246XHJcbiAgICAxLjBcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjAgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG5pbXBvcnQgeyB2NCBhcyB1dWlkdjQgfSBmcm9tIFwidXVpZFwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIEd1aWQge1xyXG4gIHB1YmxpYyBzdGF0aWMgbmV3R3VpZCgpIHtcclxuICAgIHJldHVybiB1dWlkdjQoKTtcclxuICB9XHJcbn1cclxuIl19
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi9jb3JlL2d1aWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBaUJFO0FBRUYsT0FBTyxFQUFFLEVBQUUsSUFBSSxNQUFNLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFcEMsTUFBTSxPQUFPLElBQUk7SUFDUixNQUFNLENBQUMsT0FBTztRQUNuQixPQUFPLE1BQU0sRUFBRSxDQUFDO0lBQ2xCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnlcclxuICAgIEFuYXRvbHkgT3Nvdml0bnlcclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDI2IEp1biAyMDIwXHJcblxyXG4gIFZlcnNpb246XHJcbiAgICAxLjBcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjAgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG5pbXBvcnQgeyB2NCBhcyB1dWlkdjQgfSBmcm9tICd1dWlkJztcclxuXHJcbmV4cG9ydCBjbGFzcyBHdWlkIHtcclxuICBwdWJsaWMgc3RhdGljIG5ld0d1aWQoKSB7XHJcbiAgICByZXR1cm4gdXVpZHY0KCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -2,7 +2,7 @@
2
2
  <file>
3
3
  Project:
4
4
  @osovitny/anatoly
5
- ./go/base-go.service
5
+
6
6
  Authors:
7
7
  Vadim Osovitny
8
8
  Anatoly Osovitny
@@ -16,19 +16,21 @@
16
16
  Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.
17
17
  </file>
18
18
  */
19
- export * from "./consts";
20
- export * from "./alerts";
21
- export * from "./utils";
22
- export * from "./subs";
23
- export * from "./guid";
24
- export * from "./guards/once-import.guard";
25
- //Go
26
- export * from "./go/base-go.service";
27
- //Logging
28
- export * from "./logging/logging.service";
29
- export * from "./logging/globalErrorHandler";
30
- //Services
31
- export * from "./services/appcontext.service";
32
- //Module
33
- export { AnatolyCoreModule } from "./core.module";
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvY29yZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFpQkU7QUFFRixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFFBQVEsQ0FBQztBQUV2QixjQUFjLDRCQUE0QixDQUFDO0FBRTNDLElBQUk7QUFDSixjQUFjLHNCQUFzQixDQUFDO0FBRXJDLFNBQVM7QUFDVCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsOEJBQThCLENBQUM7QUFFN0MsVUFBVTtBQUNWLGNBQWMsK0JBQStCLENBQUM7QUFFOUMsUUFBUTtBQUNSLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG4uL2dvL2Jhc2UtZ28uc2VydmljZVxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueVxyXG4gICAgQW5hdG9seSBPc292aXRueVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMjYgSnVuIDIwMjBcclxuXHJcbiAgVmVyc2lvbjpcclxuICAgIDEuMFxyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyMCBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbmV4cG9ydCAqIGZyb20gXCIuL2NvbnN0c1wiO1xyXG5leHBvcnQgKiBmcm9tIFwiLi9hbGVydHNcIjtcclxuZXhwb3J0ICogZnJvbSBcIi4vdXRpbHNcIjtcclxuZXhwb3J0ICogZnJvbSBcIi4vc3Vic1wiO1xyXG5leHBvcnQgKiBmcm9tIFwiLi9ndWlkXCI7XHJcblxyXG5leHBvcnQgKiBmcm9tIFwiLi9ndWFyZHMvb25jZS1pbXBvcnQuZ3VhcmRcIjtcclxuXHJcbi8vR29cclxuZXhwb3J0ICogZnJvbSBcIi4vZ28vYmFzZS1nby5zZXJ2aWNlXCI7XHJcblxyXG4vL0xvZ2dpbmdcclxuZXhwb3J0ICogZnJvbSBcIi4vbG9nZ2luZy9sb2dnaW5nLnNlcnZpY2VcIjtcclxuZXhwb3J0ICogZnJvbSBcIi4vbG9nZ2luZy9nbG9iYWxFcnJvckhhbmRsZXJcIjtcclxuXHJcbi8vU2VydmljZXNcclxuZXhwb3J0ICogZnJvbSBcIi4vc2VydmljZXMvYXBwY29udGV4dC5zZXJ2aWNlXCI7XHJcblxyXG4vL01vZHVsZVxyXG5leHBvcnQgeyBBbmF0b2x5Q29yZU1vZHVsZSB9IGZyb20gXCIuL2NvcmUubW9kdWxlXCI7XHJcbiJdfQ==
19
+ export { ContextInitState, AppCoreSettings } from './consts';
20
+ export { throwIfAlreadyLoaded } from './guards/once-import.guard';
21
+ export * from './alerts';
22
+ export * from './utils';
23
+ export * from './subs';
24
+ export * from './guid';
25
+ // Go
26
+ export * from './go/base-go.service';
27
+ // Logging
28
+ export * from './logging/logging.service';
29
+ export * from './logging/globalErrorHandler';
30
+ // Services
31
+ export * from './services/appcontext.service';
32
+ // interceptors
33
+ export * from './interceptors/httpInterceptor';
34
+ // Module
35
+ export { AnatolyCoreModule } from './core.module';
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvY29yZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFpQkU7QUFFRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzdELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRWxFLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsUUFBUSxDQUFDO0FBQ3ZCLGNBQWMsUUFBUSxDQUFDO0FBRXZCLEtBQUs7QUFDTCxjQUFjLHNCQUFzQixDQUFDO0FBRXJDLFVBQVU7QUFDVixjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsOEJBQThCLENBQUM7QUFFN0MsV0FBVztBQUNYLGNBQWMsK0JBQStCLENBQUM7QUFFOUMsZUFBZTtBQUNmLGNBQWMsZ0NBQWdDLENBQUM7QUFFL0MsU0FBUztBQUNULE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnlcclxuICAgIEFuYXRvbHkgT3Nvdml0bnlcclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDI2IEp1biAyMDIwXHJcblxyXG4gIFZlcnNpb246XHJcbiAgICAxLjBcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjAgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG5leHBvcnQgeyBDb250ZXh0SW5pdFN0YXRlLCBBcHBDb3JlU2V0dGluZ3MgfSBmcm9tICcuL2NvbnN0cyc7XHJcbmV4cG9ydCB7IHRocm93SWZBbHJlYWR5TG9hZGVkIH0gZnJvbSAnLi9ndWFyZHMvb25jZS1pbXBvcnQuZ3VhcmQnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9hbGVydHMnO1xyXG5leHBvcnQgKiBmcm9tICcuL3V0aWxzJztcclxuZXhwb3J0ICogZnJvbSAnLi9zdWJzJztcclxuZXhwb3J0ICogZnJvbSAnLi9ndWlkJztcclxuXHJcbi8vIEdvXHJcbmV4cG9ydCAqIGZyb20gJy4vZ28vYmFzZS1nby5zZXJ2aWNlJztcclxuXHJcbi8vIExvZ2dpbmdcclxuZXhwb3J0ICogZnJvbSAnLi9sb2dnaW5nL2xvZ2dpbmcuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbG9nZ2luZy9nbG9iYWxFcnJvckhhbmRsZXInO1xyXG5cclxuLy8gU2VydmljZXNcclxuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9hcHBjb250ZXh0LnNlcnZpY2UnO1xyXG5cclxuLy8gaW50ZXJjZXB0b3JzXHJcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJjZXB0b3JzL2h0dHBJbnRlcmNlcHRvcic7XHJcblxyXG4vLyBNb2R1bGVcclxuZXhwb3J0IHsgQW5hdG9seUNvcmVNb2R1bGUgfSBmcm9tICcuL2NvcmUubW9kdWxlJztcclxuIl19
@@ -0,0 +1,108 @@
1
+ /*
2
+ <file>
3
+ Project:
4
+ @osovitny/anatoly
5
+
6
+ Authors:
7
+ Vadim Osovitny
8
+ Anatoly Osovitny
9
+
10
+ Created:
11
+ 25 March 2020
12
+
13
+ Version:
14
+ 1.0
15
+
16
+ Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.
17
+ </file>
18
+ */
19
+ // Node
20
+ import { HttpResponse } from '@angular/common/http';
21
+ import { Injectable } from '@angular/core';
22
+ // RxJS
23
+ import { tap } from 'rxjs/operators';
24
+ // App
25
+ import { AppCoreSettings } from '../consts';
26
+ import { LoadingService } from '../services/loading.service';
27
+ import { LoggingService } from '../logging/logging.service';
28
+ export class AnatolyHttpInterceptor {
29
+ constructor(loadingService, loggingService) {
30
+ this.loadingService = loadingService;
31
+ this.loggingService = loggingService;
32
+ this.longRunningExceptionsList = [];
33
+ this.autoCDNSASTokenUrls = ['chunks', 'resources'];
34
+ this.externalSiteUrls = ['azurewebsites.net'];
35
+ }
36
+ intercept(req, next) {
37
+ const isCDNEnabled = AppCoreSettings.IsCDNEnabled;
38
+ const cdnSasToken = AppCoreSettings.CDNSASToken;
39
+ const isLoadingFreezed = this.loadingService.isFreezed;
40
+ let loadingRequired = !isLoadingFreezed;
41
+ const authorizationTokenRequired = true;
42
+ const url = req.url.toLowerCase();
43
+ const originalUrl = req.url;
44
+ let isExternalSite = false;
45
+ if (!isLoadingFreezed) {
46
+ for (const i of this.longRunningExceptionsList) {
47
+ if (url.indexOf(this.longRunningExceptionsList[i]) >= 0) {
48
+ loadingRequired = false;
49
+ break;
50
+ }
51
+ }
52
+ }
53
+ if (isCDNEnabled) {
54
+ for (const i of this.autoCDNSASTokenUrls) {
55
+ if (url.indexOf(this.autoCDNSASTokenUrls[i]) >= 0) {
56
+ req = req.clone({ url: originalUrl + cdnSasToken });
57
+ break;
58
+ }
59
+ }
60
+ }
61
+ for (const i of this.externalSiteUrls) {
62
+ if (url.indexOf(this.externalSiteUrls[i]) >= 0) {
63
+ isExternalSite = true;
64
+ break;
65
+ }
66
+ }
67
+ // VadimOS: IE11-fix
68
+ if (url.indexOf('/api/') > -1) {
69
+ let newUrl = '';
70
+ const t = new Date().getTime().toString();
71
+ if (url.indexOf('?') > -1) {
72
+ newUrl = originalUrl + '&t=' + t;
73
+ }
74
+ else {
75
+ newUrl = originalUrl + '?t=' + t;
76
+ }
77
+ req = req.clone({ url: newUrl });
78
+ }
79
+ req = req.clone({ headers: req.headers.set('Accept', 'application/json') });
80
+ this.onRequestStart(loadingRequired);
81
+ return next.handle(req).pipe(tap((event) => {
82
+ if (event instanceof HttpResponse) {
83
+ this.onRequestEnd(loadingRequired);
84
+ }
85
+ }, (err) => {
86
+ this.onRequestEnd(loadingRequired);
87
+ this.loggingService.logError(err);
88
+ }));
89
+ }
90
+ onRequestStart(loadingRequired) {
91
+ if (loadingRequired) {
92
+ this.loadingService.show();
93
+ }
94
+ }
95
+ onRequestEnd(loadingRequired) {
96
+ if (loadingRequired) {
97
+ this.loadingService.hide();
98
+ }
99
+ }
100
+ }
101
+ AnatolyHttpInterceptor.decorators = [
102
+ { type: Injectable }
103
+ ];
104
+ AnatolyHttpInterceptor.ctorParameters = () => [
105
+ { type: LoadingService },
106
+ { type: LoggingService }
107
+ ];
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cEludGVyY2VwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5hdG9seS9zcmMvbGliL2NvcmUvaW50ZXJjZXB0b3JzL2h0dHBJbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFpQkU7QUFFRixPQUFPO0FBQ1AsT0FBTyxFQUF3RCxZQUFZLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMxRyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU87QUFDUCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHckMsTUFBTTtBQUNOLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDNUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzdELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUc1RCxNQUFNLE9BQU8sc0JBQXNCO0lBT2pDLFlBQW9CLGNBQThCLEVBQVUsY0FBOEI7UUFBdEUsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQVUsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBTmhGLDhCQUF5QixHQUFHLEVBQUUsQ0FBQztRQUUvQix3QkFBbUIsR0FBRyxDQUFDLFFBQVEsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUU5QyxxQkFBZ0IsR0FBRyxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFHbkQsQ0FBQztJQUVELFNBQVMsQ0FBQyxHQUFxQixFQUFFLElBQWlCO1FBQ2hELE1BQU0sWUFBWSxHQUFHLGVBQWUsQ0FBQyxZQUFZLENBQUM7UUFDbEQsTUFBTSxXQUFXLEdBQUcsZUFBZSxDQUFDLFdBQVcsQ0FBQztRQUVoRCxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDO1FBQ3ZELElBQUksZUFB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QUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDO1NBQzVCO0lBQ0gsQ0FBQztJQUVELFlBQVksQ0FBQyxlQUF3QjtRQUNuQyxJQUFJLGVBQWUsRUFBRTtZQUNuQixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDO1NBQzVCO0lBQ0gsQ0FBQzs7O1lBMUZGLFVBQVU7OztZQUhGLGNBQWM7WUFDZCxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueVxyXG4gICAgQW5hdG9seSBPc292aXRueVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMjUgTWFyY2ggMjAyMFxyXG5cclxuICBWZXJzaW9uOlxyXG4gICAgMS4wXHJcblxyXG4gIENvcHlyaWdodCAoYykgMjAxNi0yMDIwIE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuLy8gTm9kZVxyXG5pbXBvcnQgeyBIdHRwRXZlbnQsIEh0dHBIYW5kbGVyLCBIdHRwSW50ZXJjZXB0b3IsIEh0dHBSZXF1ZXN0LCBIdHRwUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbi8vIFJ4SlNcclxuaW1wb3J0IHsgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcblxyXG4vLyBBcHBcclxuaW1wb3J0IHsgQXBwQ29yZVNldHRpbmdzIH0gZnJvbSAnLi4vY29uc3RzJztcclxuaW1wb3J0IHsgTG9hZGluZ1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9sb2FkaW5nLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMb2dnaW5nU2VydmljZSB9IGZyb20gJy4uL2xvZ2dpbmcvbG9nZ2luZy5zZXJ2aWNlJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEFuYXRvbHlIdHRwSW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xyXG4gIHByb3RlY3RlZCBsb25nUnVubmluZ0V4Y2VwdGlvbnNMaXN0ID0gW107XHJcblxyXG4gIHByb3RlY3RlZCBhdXRvQ0ROU0FTVG9rZW5VcmxzID0gWydjaHVua3MnLCAncmVzb3VyY2VzJ107XHJcblxyXG4gIHByb3RlY3RlZCBleHRlcm5hbFNpdGVVcmxzID0gWydhenVyZXdlYnNpdGVzLm5ldCddO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGxvYWRpbmdTZXJ2aWNlOiBMb2FkaW5nU2VydmljZSwgcHJpdmF0ZSBsb2dnaW5nU2VydmljZTogTG9nZ2luZ1NlcnZpY2UpIHsgXHJcbiAgfVxyXG5cclxuICBpbnRlcmNlcHQocmVxOiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcclxuICAgIGNvbnN0IGlzQ0RORW5hYmxlZCA9IEFwcENvcmVTZXR0aW5ncy5Jc0NETkVuYWJsZWQ7XHJcbiAgICBjb25zdCBjZG5TYXNUb2tlbiA9IEFwcENvcmVTZXR0aW5ncy5DRE5TQVNUb2tlbjtcclxuXHJcbiAgICBjb25zdCBpc0xvYWRpbmdGcmVlemVkID0gdGhpcy5sb2FkaW5nU2VydmljZS5pc0ZyZWV6ZWQ7XHJcbiAgICBsZXQgbG9hZGluZ1JlcXVpcmVkID0gIWlzTG9hZGluZ0ZyZWV6ZWQ7XHJcbiAgICBjb25zdCBhdXRob3JpemF0aW9uVG9rZW5SZXF1aXJlZCA9IHRydWU7XHJcbiAgICBjb25zdCB1cmwgPSByZXEudXJsLnRvTG93ZXJDYXNlKCk7XHJcbiAgICBjb25zdCBvcmlnaW5hbFVybCA9IHJlcS51cmw7XHJcbiAgICBsZXQgaXNFeHRlcm5hbFNpdGUgPSBmYWxzZTtcclxuXHJcbiAgICBpZiAoIWlzTG9hZGluZ0ZyZWV6ZWQpIHtcclxuICAgICAgZm9yIChjb25zdCBpIG9mIHRoaXMubG9uZ1J1bm5pbmdFeGNlcHRpb25zTGlzdCkge1xyXG4gICAgICAgIGlmICh1cmwuaW5kZXhPZih0aGlzLmxvbmdSdW5uaW5nRXhjZXB0aW9uc0xpc3RbaV0pID49IDApIHtcclxuICAgICAgICAgIGxvYWRpbmdSZXF1aXJlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGlzQ0RORW5hYmxlZCkge1xyXG4gICAgICBmb3IgKGNvbnN0IGkgb2YgdGhpcy5hdXRvQ0ROU0FTVG9rZW5VcmxzKSB7XHJcbiAgICAgICAgaWYgKHVybC5pbmRleE9mKHRoaXMuYXV0b0NETlNBU1Rva2VuVXJsc1tpXSkgPj0gMCkge1xyXG4gICAgICAgICAgcmVxID0gcmVxLmNsb25lKHsgdXJsOiBvcmlnaW5hbFVybCArIGNkblNhc1Rva2VuIH0pO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZm9yIChjb25zdCBpIG9mIHRoaXMuZXh0ZXJuYWxTaXRlVXJscykge1xyXG4gICAgICBpZiAodXJsLmluZGV4T2YodGhpcy5leHRlcm5hbFNpdGVVcmxzW2ldKSA+PSAwKSB7XHJcbiAgICAgICAgaXNFeHRlcm5hbFNpdGUgPSB0cnVlO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gVmFkaW1PUzogSUUxMS1maXhcclxuICAgIGlmICh1cmwuaW5kZXhPZignL2FwaS8nKSA+IC0xKSB7XHJcbiAgICAgIGxldCBuZXdVcmwgPSAnJztcclxuICAgICAgY29uc3QgdCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpLnRvU3RyaW5nKCk7XHJcblxyXG4gICAgICBpZiAodXJsLmluZGV4T2YoJz8nKSA+IC0xKSB7XHJcbiAgICAgICAgbmV3VXJsID0gb3JpZ2luYWxVcmwgKyAnJnQ9JyArIHQ7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgbmV3VXJsID0gb3JpZ2luYWxVcmwgKyAnP3Q9JyArIHQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJlcSA9IHJlcS5jbG9uZSh7IHVybDogbmV3VXJsIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHJlcSA9IHJlcS5jbG9uZSh7IGhlYWRlcnM6IHJlcS5oZWFkZXJzLnNldCgnQWNjZXB0JywgJ2FwcGxpY2F0aW9uL2pzb24nKSB9KTtcclxuXHJcbiAgICB0aGlzLm9uUmVxdWVzdFN0YXJ0KGxvYWRpbmdSZXF1aXJlZCk7XHJcblxyXG4gICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcSkucGlwZShcclxuICAgICAgdGFwKFxyXG4gICAgICAgIChldmVudDogSHR0cEV2ZW50PGFueT4pID0+IHtcclxuICAgICAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIEh0dHBSZXNwb25zZSkge1xyXG4gICAgICAgICAgICB0aGlzLm9uUmVxdWVzdEVuZChsb2FkaW5nUmVxdWlyZWQpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLm9uUmVxdWVzdEVuZChsb2FkaW5nUmVxdWlyZWQpO1xyXG4gICAgICAgICAgdGhpcy5sb2dnaW5nU2VydmljZS5sb2dFcnJvcihlcnIpO1xyXG4gICAgICAgIH1cclxuICAgICAgKVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIG9uUmVxdWVzdFN0YXJ0KGxvYWRpbmdSZXF1aXJlZDogYm9vbGVhbikge1xyXG4gICAgaWYgKGxvYWRpbmdSZXF1aXJlZCkge1xyXG4gICAgICB0aGlzLmxvYWRpbmdTZXJ2aWNlLnNob3coKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uUmVxdWVzdEVuZChsb2FkaW5nUmVxdWlyZWQ6IGJvb2xlYW4pIHtcclxuICAgIGlmIChsb2FkaW5nUmVxdWlyZWQpIHtcclxuICAgICAgdGhpcy5sb2FkaW5nU2VydmljZS5oaWRlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,64 @@
1
+ /*
2
+ <file>
3
+ Project:
4
+ @osovitny/anatoly
5
+
6
+ Authors:
7
+ Vadim Osovitny
8
+ Anatoly Osovitny
9
+
10
+ Created:
11
+ 26 Jun 2020
12
+
13
+ Version:
14
+ 1.0
15
+
16
+ Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.
17
+ </file>
18
+ */
19
+ //Node
20
+ import { Injectable } from "@angular/core";
21
+ //RxJs
22
+ import { BehaviorSubject } from "rxjs";
23
+ import * as i0 from "@angular/core";
24
+ export class LoadingService extends BehaviorSubject {
25
+ constructor() {
26
+ super(false);
27
+ this.counter = 0;
28
+ //Public
29
+ this.isFreezed = false;
30
+ }
31
+ show() {
32
+ this.counter++;
33
+ let that = this;
34
+ setTimeout(() => {
35
+ if (that.counter > 0) {
36
+ that.next(true);
37
+ }
38
+ }, 1000);
39
+ }
40
+ hide() {
41
+ if (this.counter <= 0) {
42
+ return;
43
+ }
44
+ this.counter--;
45
+ if (this.counter == 0) {
46
+ this.next(false);
47
+ }
48
+ }
49
+ freeze(timeout = 1000) {
50
+ this.isFreezed = true;
51
+ let that = this;
52
+ setTimeout(() => {
53
+ this.isFreezed = false;
54
+ }, timeout);
55
+ }
56
+ }
57
+ LoadingService.ɵprov = i0.ɵɵdefineInjectable({ factory: function LoadingService_Factory() { return new LoadingService(); }, token: LoadingService, providedIn: "root" });
58
+ LoadingService.decorators = [
59
+ { type: Injectable, args: [{
60
+ providedIn: "root",
61
+ },] }
62
+ ];
63
+ LoadingService.ctorParameters = () => [];
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5hdG9seS9zcmMvbGliL2NvcmUvc2VydmljZXMvbG9hZGluZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7OztFQWlCRTtBQUVGLE1BQU07QUFDTixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE1BQU07QUFDTixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUt2QyxNQUFNLE9BQU8sY0FBZSxTQUFRLGVBQXdCO0lBTTFEO1FBQ0UsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBTlAsWUFBTyxHQUFHLENBQUMsQ0FBQztRQUVwQixRQUFRO1FBQ0QsY0FBUyxHQUFHLEtBQUssQ0FBQztJQUl6QixDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUVmLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQztRQUNoQixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsRUFBRTtnQkFDcEIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNqQjtRQUNILENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsRUFBRTtZQUNyQixPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFFZixJQUFJLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxFQUFFO1lBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDbEI7SUFDSCxDQUFDO0lBRUQsTUFBTSxDQUFDLFVBQWtCLElBQUk7UUFDM0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFFdEIsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2hCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN6QixDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDZCxDQUFDOzs7O1lBM0NGLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnlcclxuICAgIEFuYXRvbHkgT3Nvdml0bnlcclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDI2IEp1biAyMDIwXHJcblxyXG4gIFZlcnNpb246XHJcbiAgICAxLjBcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjAgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vL1J4SnNcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiBcInJvb3RcIixcclxufSlcclxuZXhwb3J0IGNsYXNzIExvYWRpbmdTZXJ2aWNlIGV4dGVuZHMgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+IHtcclxuICBwcml2YXRlIGNvdW50ZXIgPSAwO1xyXG5cclxuICAvL1B1YmxpY1xyXG4gIHB1YmxpYyBpc0ZyZWV6ZWQgPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICBzdXBlcihmYWxzZSk7XHJcbiAgfVxyXG5cclxuICBzaG93KCkge1xyXG4gICAgdGhpcy5jb3VudGVyKys7XHJcblxyXG4gICAgbGV0IHRoYXQgPSB0aGlzO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGlmICh0aGF0LmNvdW50ZXIgPiAwKSB7XHJcbiAgICAgICAgdGhhdC5uZXh0KHRydWUpO1xyXG4gICAgICB9XHJcbiAgICB9LCAxMDAwKTtcclxuICB9XHJcblxyXG4gIGhpZGUoKSB7XHJcbiAgICBpZiAodGhpcy5jb3VudGVyIDw9IDApIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuY291bnRlci0tO1xyXG5cclxuICAgIGlmICh0aGlzLmNvdW50ZXIgPT0gMCkge1xyXG4gICAgICB0aGlzLm5leHQoZmFsc2UpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZnJlZXplKHRpbWVvdXQ6IG51bWJlciA9IDEwMDApIHtcclxuICAgIHRoaXMuaXNGcmVlemVkID0gdHJ1ZTtcclxuXHJcbiAgICBsZXQgdGhhdCA9IHRoaXM7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5pc0ZyZWV6ZWQgPSBmYWxzZTtcclxuICAgIH0sIHRpbWVvdXQpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -2,10 +2,10 @@ import Swal from 'sweetalert2';
2
2
  import { v4 } from 'uuid';
3
3
  import { Injectable, ɵɵdefineInjectable, Injector, NgModule, Optional, SkipSelf, Component, Input } from '@angular/core';
4
4
  import { ActivatedRoute, Router } from '@angular/router';
5
- import { HttpClient } from '@angular/common/http';
6
- import { map } from 'rxjs/operators';
7
- import { CommonModule } from '@angular/common';
5
+ import { HttpClient, HttpResponse } from '@angular/common/http';
6
+ import { map, tap } from 'rxjs/operators';
8
7
  import { BehaviorSubject } from 'rxjs';
8
+ import { CommonModule } from '@angular/common';
9
9
  import { ReactiveFormsModule, FormsModule } from '@angular/forms';
10
10
  import { FroalaEditorModule, FroalaViewModule } from 'angular-froala-wysiwyg';
11
11
 
@@ -27,8 +27,8 @@ import { FroalaEditorModule, FroalaViewModule } from 'angular-froala-wysiwyg';
27
27
  Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.
28
28
  </file>
29
29
  */
30
- const ContextInitState = JSON.parse((document.getElementById("contextInitState")).getAttribute("data-contextinitstate"));
31
- const AppCoreSettings = JSON.parse((document.getElementById("appCoreSettings")).getAttribute("data-appcoresettings"));
30
+ const ContextInitState = JSON.parse((document.getElementById('contextInitState')).getAttribute('data-contextinitstate'));
31
+ const AppCoreSettings = JSON.parse((document.getElementById('appCoreSettings')).getAttribute('data-appcoresettings'));
32
32
 
33
33
  /*
34
34
  <file>
@@ -49,6 +49,30 @@ const AppCoreSettings = JSON.parse((document.getElementById("appCoreSettings")).
49
49
  </file>
50
50
  */
51
51
 
52
+ /*
53
+ <file>
54
+ Project:
55
+ @osovitny/anatoly
56
+
57
+ Authors:
58
+ Vadim Osovitny
59
+ Anatoly Osovitny
60
+
61
+ Created:
62
+ 26 Jun 2020
63
+
64
+ Version:
65
+ 1.0
66
+
67
+ Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.
68
+ </file>
69
+ */
70
+ function throwIfAlreadyLoaded(parentModule, moduleName) {
71
+ if (parentModule) {
72
+ throw new Error(`${moduleName} has already been loaded. Import ${moduleName} modules in the AppModule only.`);
73
+ }
74
+ }
75
+
52
76
  /*
53
77
  <file>
54
78
  Project:
@@ -302,30 +326,6 @@ class Guid {
302
326
  }
303
327
  }
304
328
 
305
- /*
306
- <file>
307
- Project:
308
- @osovitny/anatoly
309
-
310
- Authors:
311
- Vadim Osovitny
312
- Anatoly Osovitny
313
-
314
- Created:
315
- 26 Jun 2020
316
-
317
- Version:
318
- 1.0
319
-
320
- Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.
321
- </file>
322
- */
323
- function throwIfAlreadyLoaded(parentModule, moduleName) {
324
- if (parentModule) {
325
- throw new Error(`${moduleName} has already been loaded. Import ${moduleName} modules in the AppModule only.`);
326
- }
327
- }
328
-
329
329
  /*
330
330
  <file>
331
331
  Project:
@@ -587,6 +587,164 @@ AppContextService.ctorParameters = () => [
587
587
  { type: HttpClient }
588
588
  ];
589
589
 
590
+ /*
591
+ <file>
592
+ Project:
593
+ @osovitny/anatoly
594
+
595
+ Authors:
596
+ Vadim Osovitny
597
+ Anatoly Osovitny
598
+
599
+ Created:
600
+ 26 Jun 2020
601
+
602
+ Version:
603
+ 1.0
604
+
605
+ Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.
606
+ </file>
607
+ */
608
+ class LoadingService extends BehaviorSubject {
609
+ constructor() {
610
+ super(false);
611
+ this.counter = 0;
612
+ //Public
613
+ this.isFreezed = false;
614
+ }
615
+ show() {
616
+ this.counter++;
617
+ let that = this;
618
+ setTimeout(() => {
619
+ if (that.counter > 0) {
620
+ that.next(true);
621
+ }
622
+ }, 1000);
623
+ }
624
+ hide() {
625
+ if (this.counter <= 0) {
626
+ return;
627
+ }
628
+ this.counter--;
629
+ if (this.counter == 0) {
630
+ this.next(false);
631
+ }
632
+ }
633
+ freeze(timeout = 1000) {
634
+ this.isFreezed = true;
635
+ let that = this;
636
+ setTimeout(() => {
637
+ this.isFreezed = false;
638
+ }, timeout);
639
+ }
640
+ }
641
+ LoadingService.ɵprov = ɵɵdefineInjectable({ factory: function LoadingService_Factory() { return new LoadingService(); }, token: LoadingService, providedIn: "root" });
642
+ LoadingService.decorators = [
643
+ { type: Injectable, args: [{
644
+ providedIn: "root",
645
+ },] }
646
+ ];
647
+ LoadingService.ctorParameters = () => [];
648
+
649
+ /*
650
+ <file>
651
+ Project:
652
+ @osovitny/anatoly
653
+
654
+ Authors:
655
+ Vadim Osovitny
656
+ Anatoly Osovitny
657
+
658
+ Created:
659
+ 25 March 2020
660
+
661
+ Version:
662
+ 1.0
663
+
664
+ Copyright (c) 2016-2020 Osovitny Inc. All rights reserved.
665
+ </file>
666
+ */
667
+ class AnatolyHttpInterceptor {
668
+ constructor(loadingService, loggingService) {
669
+ this.loadingService = loadingService;
670
+ this.loggingService = loggingService;
671
+ this.longRunningExceptionsList = [];
672
+ this.autoCDNSASTokenUrls = ['chunks', 'resources'];
673
+ this.externalSiteUrls = ['azurewebsites.net'];
674
+ }
675
+ intercept(req, next) {
676
+ const isCDNEnabled = AppCoreSettings.IsCDNEnabled;
677
+ const cdnSasToken = AppCoreSettings.CDNSASToken;
678
+ const isLoadingFreezed = this.loadingService.isFreezed;
679
+ let loadingRequired = !isLoadingFreezed;
680
+ const authorizationTokenRequired = true;
681
+ const url = req.url.toLowerCase();
682
+ const originalUrl = req.url;
683
+ let isExternalSite = false;
684
+ if (!isLoadingFreezed) {
685
+ for (const i of this.longRunningExceptionsList) {
686
+ if (url.indexOf(this.longRunningExceptionsList[i]) >= 0) {
687
+ loadingRequired = false;
688
+ break;
689
+ }
690
+ }
691
+ }
692
+ if (isCDNEnabled) {
693
+ for (const i of this.autoCDNSASTokenUrls) {
694
+ if (url.indexOf(this.autoCDNSASTokenUrls[i]) >= 0) {
695
+ req = req.clone({ url: originalUrl + cdnSasToken });
696
+ break;
697
+ }
698
+ }
699
+ }
700
+ for (const i of this.externalSiteUrls) {
701
+ if (url.indexOf(this.externalSiteUrls[i]) >= 0) {
702
+ isExternalSite = true;
703
+ break;
704
+ }
705
+ }
706
+ // VadimOS: IE11-fix
707
+ if (url.indexOf('/api/') > -1) {
708
+ let newUrl = '';
709
+ const t = new Date().getTime().toString();
710
+ if (url.indexOf('?') > -1) {
711
+ newUrl = originalUrl + '&t=' + t;
712
+ }
713
+ else {
714
+ newUrl = originalUrl + '?t=' + t;
715
+ }
716
+ req = req.clone({ url: newUrl });
717
+ }
718
+ req = req.clone({ headers: req.headers.set('Accept', 'application/json') });
719
+ this.onRequestStart(loadingRequired);
720
+ return next.handle(req).pipe(tap((event) => {
721
+ if (event instanceof HttpResponse) {
722
+ this.onRequestEnd(loadingRequired);
723
+ }
724
+ }, (err) => {
725
+ this.onRequestEnd(loadingRequired);
726
+ this.loggingService.logError(err);
727
+ }));
728
+ }
729
+ onRequestStart(loadingRequired) {
730
+ if (loadingRequired) {
731
+ this.loadingService.show();
732
+ }
733
+ }
734
+ onRequestEnd(loadingRequired) {
735
+ if (loadingRequired) {
736
+ this.loadingService.hide();
737
+ }
738
+ }
739
+ }
740
+ AnatolyHttpInterceptor.decorators = [
741
+ { type: Injectable }
742
+ ];
743
+ AnatolyHttpInterceptor.ctorParameters = () => [
744
+ { type: LoadingService },
745
+ { type: LoggingService }
746
+ ];
747
+
590
748
  const providers = [
591
749
  LoggingService,
592
750
  AppContextService,
@@ -595,7 +753,7 @@ let InjectorInstance;
595
753
  class AnatolyCoreModule {
596
754
  constructor(injector, parentModule) {
597
755
  this.injector = injector;
598
- throwIfAlreadyLoaded(parentModule, "AnatolyCoreModule");
756
+ throwIfAlreadyLoaded(parentModule, 'AnatolyCoreModule');
599
757
  InjectorInstance = this.injector;
600
758
  }
601
759
  }
@@ -614,7 +772,7 @@ AnatolyCoreModule.ctorParameters = () => [
614
772
  <file>
615
773
  Project:
616
774
  @osovitny/anatoly
617
- ./go/base-go.service
775
+
618
776
  Authors:
619
777
  Vadim Osovitny
620
778
  Anatoly Osovitny
@@ -1769,5 +1927,5 @@ AnatolyUIModule.decorators = [
1769
1927
  * Generated bundle index. Do not edit.
1770
1928
  */
1771
1929
 
1772
- export { Alerts, AnatolyCoreModule, AnatolyDataModule, AnatolyUIModule, AppContextService, AppCoreSettings, BaseApiService, BaseComponent, BaseEditComponent, BaseGoService, BaseGridEditService, BaseGridReadService, BillingApiService, BuyAccessButtonComponent, ContentHeaderComponent, ContextInitState, FormValidationSummaryComponent, FormsHtmlEditorComponent, GlobalErrorHandler, Guid, HtmlEditorComponent, ItemValidationSummaryComponent, LoggingService, SignInButtonComponent, SignOutButtonComponent, SignUpButtonComponent, Subs, SubscribePlanButtonComponent, UpgradePlanButtonComponent, Utils, ValidationSummaryComponent, throwIfAlreadyLoaded };
1930
+ export { Alerts, AnatolyCoreModule, AnatolyDataModule, AnatolyHttpInterceptor, AnatolyUIModule, AppContextService, AppCoreSettings, BaseApiService, BaseComponent, BaseEditComponent, BaseGoService, BaseGridEditService, BaseGridReadService, BillingApiService, BuyAccessButtonComponent, ContentHeaderComponent, ContextInitState, FormValidationSummaryComponent, FormsHtmlEditorComponent, GlobalErrorHandler, Guid, HtmlEditorComponent, ItemValidationSummaryComponent, LoggingService, SignInButtonComponent, SignOutButtonComponent, SignUpButtonComponent, Subs, SubscribePlanButtonComponent, UpgradePlanButtonComponent, Utils, ValidationSummaryComponent, throwIfAlreadyLoaded };
1773
1931
  //# sourceMappingURL=osovitny-anatoly.js.map