@koalarx/ui 13.2.5 → 13.2.8

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.
@@ -26,6 +26,7 @@ export * from './lib/services/api-requester/helpers/error/koala.not-found.error'
26
26
  export * from './lib/services/api-requester/helpers/error/koala.success.error';
27
27
  export * from './lib/services/api-requester/helpers/error/koala.unhautorized.error';
28
28
  export * from './lib/services/api-requester/helpers/service/koala.request-header.helper';
29
+ export * from './lib/services/api-requester/koala.api-requester.cache';
29
30
  export * from './lib/services/request/koala.request.service';
30
31
  export * from './lib/services/loader/koala.loader.service';
31
32
  export * from './lib/services/token/koala.token.service';
@@ -33,4 +34,4 @@ export * from './lib/services/openid/koala.oauth2.service';
33
34
  export * from './lib/services/openid/koala.oauth.config';
34
35
  //#endregion
35
36
  export * from './lib/ngx-koala.module';
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxzQkFBc0I7QUFDdEIsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxZQUFZO0FBRVosa0JBQWtCO0FBQ2xCLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsWUFBWTtBQUVaLG9CQUFvQjtBQUNwQixjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsdURBQXVELENBQUM7QUFDdEUsY0FBYyw2REFBNkQsQ0FBQztBQUM1RSxjQUFjLCtEQUErRCxDQUFDO0FBQzlFLGNBQWMsZ0VBQWdFLENBQUM7QUFDL0UsY0FBYyxrRUFBa0UsQ0FBQztBQUNqRixjQUFjLGdFQUFnRSxDQUFDO0FBQy9FLGNBQWMscUVBQXFFLENBQUM7QUFDcEYsY0FBYywwRUFBMEUsQ0FBQztBQUN6RixjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsMENBQTBDLENBQUM7QUFDekQsWUFBWTtBQUVaLGNBQWMsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyNyZWdpb24gW0NPTVBPTkVOVFNdXG5leHBvcnQgKiBmcm9tICcuL2xpYi9sb2FkZXIvbG9hZGVyLWJhci1wYWdlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9sb2FkZXIvbG9hZGVyLWJhci1wYWdlLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9sb2FkZXIvbG9hZGVyLWNvbmZpZy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbG9hZGVyL2xvYWRlci1iYXItcGFnZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGFnZS9ub3RpZmljYXRpb25zL2tvYWxhLm5vdGlmaWNhdGlvbi5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGFnZS9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGFnZS9rb2FsYS1sYW5ndWFnZS5oZWxwZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW52aXJvbm1lbnRzL2tvYWxhRW52aXJvbm1lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvb3BlbmlkL2tvYWxhLW9hdXRoMi1jb25maWcuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BhZ2Uva29hbGEudXNlci1tZW51LW9wdGlvbnMuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BhZ2Uva29hbGEtcGFnZS1wYWxsZXQtY29sb3JzLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9wYWdlL3BhZ2UuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BhZ2Uva29hbGEucGFnZS5tb2R1bGUnO1xuLy8jZW5kcmVnaW9uXG5cbi8vI3JlZ2lvbiBbUk9VVEVSXVxuZXhwb3J0ICogZnJvbSAnLi9saWIvcm91dGVyL2tvYWxhLnBhcmFtZXRlci1oYXNoLWxvY2F0aW9uLXN0YXRlZ3knO1xuLy8jZW5kcmVnaW9uXG5cbi8vI3JlZ2lvbiBbU0VSVklDRVNdXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9hcGktcmVxdWVzdGVyL2tvYWxhLmFwaS1yZXF1ZXN0ZXIuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9hcGktcmVxdWVzdGVyL2tvYWxhLmFwaS1yZXF1ZXN0ZXIuYmFzZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9hcGktcmVxdWVzdGVyL2ZhY3Rvcnkva29hbGEucmVzcG9uc2UuZmFjdG9yeSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9hcGktcmVxdWVzdGVyL2hlbHBlcnMvZXJyb3Iva29hbGEuY2xpZW50LmVycm9yJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2FwaS1yZXF1ZXN0ZXIvaGVscGVycy9lcnJvci9rb2FsYS5lcnJvcnMuaGVscGVyJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2FwaS1yZXF1ZXN0ZXIvaGVscGVycy9lcnJvci9rb2FsYS5ub3QtZm91bmQuZXJyb3InO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvYXBpLXJlcXVlc3Rlci9oZWxwZXJzL2Vycm9yL2tvYWxhLnN1Y2Nlc3MuZXJyb3InO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvYXBpLXJlcXVlc3Rlci9oZWxwZXJzL2Vycm9yL2tvYWxhLnVuaGF1dG9yaXplZC5lcnJvcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9hcGktcmVxdWVzdGVyL2hlbHBlcnMvc2VydmljZS9rb2FsYS5yZXF1ZXN0LWhlYWRlci5oZWxwZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvcmVxdWVzdC9rb2FsYS5yZXF1ZXN0LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvbG9hZGVyL2tvYWxhLmxvYWRlci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3Rva2VuL2tvYWxhLnRva2VuLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvb3BlbmlkL2tvYWxhLm9hdXRoMi5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL29wZW5pZC9rb2FsYS5vYXV0aC5jb25maWcnO1xuLy8jZW5kcmVnaW9uXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL25neC1rb2FsYS5tb2R1bGUnO1xuIl19
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxzQkFBc0I7QUFDdEIsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxZQUFZO0FBRVosa0JBQWtCO0FBQ2xCLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsWUFBWTtBQUVaLG9CQUFvQjtBQUNwQixjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsdURBQXVELENBQUM7QUFDdEUsY0FBYyw2REFBNkQsQ0FBQztBQUM1RSxjQUFjLCtEQUErRCxDQUFDO0FBQzlFLGNBQWMsZ0VBQWdFLENBQUM7QUFDL0UsY0FBYyxrRUFBa0UsQ0FBQztBQUNqRixjQUFjLGdFQUFnRSxDQUFDO0FBQy9FLGNBQWMscUVBQXFFLENBQUM7QUFDcEYsY0FBYywwRUFBMEUsQ0FBQztBQUN6RixjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxZQUFZO0FBRVosY0FBYyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vI3JlZ2lvbiBbQ09NUE9ORU5UU11cbmV4cG9ydCAqIGZyb20gJy4vbGliL2xvYWRlci9sb2FkZXItYmFyLXBhZ2UuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xvYWRlci9sb2FkZXItYmFyLXBhZ2UuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xvYWRlci9sb2FkZXItY29uZmlnLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9sb2FkZXIvbG9hZGVyLWJhci1wYWdlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9wYWdlL25vdGlmaWNhdGlvbnMva29hbGEubm90aWZpY2F0aW9uLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9wYWdlL25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9wYWdlL2tvYWxhLWxhbmd1YWdlLmhlbHBlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9lbnZpcm9ubWVudHMva29hbGFFbnZpcm9ubWVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9vcGVuaWQva29hbGEtb2F1dGgyLWNvbmZpZy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGFnZS9rb2FsYS51c2VyLW1lbnUtb3B0aW9ucy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGFnZS9rb2FsYS1wYWdlLXBhbGxldC1jb2xvcnMuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BhZ2UvcGFnZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGFnZS9rb2FsYS5wYWdlLm1vZHVsZSc7XG4vLyNlbmRyZWdpb25cblxuLy8jcmVnaW9uIFtST1VURVJdXG5leHBvcnQgKiBmcm9tICcuL2xpYi9yb3V0ZXIva29hbGEucGFyYW1ldGVyLWhhc2gtbG9jYXRpb24tc3RhdGVneSc7XG4vLyNlbmRyZWdpb25cblxuLy8jcmVnaW9uIFtTRVJWSUNFU11cbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2FwaS1yZXF1ZXN0ZXIva29hbGEuYXBpLXJlcXVlc3Rlci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2FwaS1yZXF1ZXN0ZXIva29hbGEuYXBpLXJlcXVlc3Rlci5iYXNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2FwaS1yZXF1ZXN0ZXIvZmFjdG9yeS9rb2FsYS5yZXNwb25zZS5mYWN0b3J5JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2FwaS1yZXF1ZXN0ZXIvaGVscGVycy9lcnJvci9rb2FsYS5jbGllbnQuZXJyb3InO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvYXBpLXJlcXVlc3Rlci9oZWxwZXJzL2Vycm9yL2tvYWxhLmVycm9ycy5oZWxwZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvYXBpLXJlcXVlc3Rlci9oZWxwZXJzL2Vycm9yL2tvYWxhLm5vdC1mb3VuZC5lcnJvcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9hcGktcmVxdWVzdGVyL2hlbHBlcnMvZXJyb3Iva29hbGEuc3VjY2Vzcy5lcnJvcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9hcGktcmVxdWVzdGVyL2hlbHBlcnMvZXJyb3Iva29hbGEudW5oYXV0b3JpemVkLmVycm9yJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2FwaS1yZXF1ZXN0ZXIvaGVscGVycy9zZXJ2aWNlL2tvYWxhLnJlcXVlc3QtaGVhZGVyLmhlbHBlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9hcGktcmVxdWVzdGVyL2tvYWxhLmFwaS1yZXF1ZXN0ZXIuY2FjaGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvcmVxdWVzdC9rb2FsYS5yZXF1ZXN0LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvbG9hZGVyL2tvYWxhLmxvYWRlci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3Rva2VuL2tvYWxhLnRva2VuLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvb3BlbmlkL2tvYWxhLm9hdXRoMi5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL29wZW5pZC9rb2FsYS5vYXV0aC5jb25maWcnO1xuLy8jZW5kcmVnaW9uXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL25neC1rb2FsYS5tb2R1bGUnO1xuIl19
@@ -1,5 +1,5 @@
1
1
  import { koala } from "@koalarx/utils";
2
- import { BehaviorSubject, Observable } from "rxjs";
2
+ import { BehaviorSubject } from "rxjs";
3
3
  import { KoalaEnvironment } from "../../environments/koalaEnvironment";
4
4
  import { KoalaApiRequesterCache } from "./koala.api-requester.cache";
5
5
  import { map } from "rxjs/operators";
@@ -63,22 +63,17 @@ export class KoalaApiRequesterBase {
63
63
  return filter ?? null;
64
64
  }
65
65
  request(method, url, data = {}) {
66
- this.startCache(url);
66
+ if (this.enableCache && KoalaApiRequesterCache.hasCache(url)) {
67
+ return KoalaApiRequesterCache.getCacheAsObservable(url);
68
+ }
69
+ KoalaApiRequesterCache.createCache(url);
67
70
  return this.koalaService
68
71
  .request(method, url, data)
69
72
  .pipe(map(response => {
70
73
  if (this.enableCache)
71
- KoalaApiRequesterCache.setInCache({ name: url, data: response });
74
+ KoalaApiRequesterCache.setDataInCache(url, response);
72
75
  return response;
73
76
  }));
74
77
  }
75
- startCache(endpoint) {
76
- if (this.enableCache && KoalaApiRequesterCache.hasCache(endpoint)) {
77
- return new Observable(observe => {
78
- observe.next(KoalaApiRequesterCache.getCache(endpoint));
79
- observe.complete();
80
- });
81
- }
82
- }
83
78
  }
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia29hbGEuYXBpLXJlcXVlc3Rlci5iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbGliL3NlcnZpY2VzL2FwaS1yZXF1ZXN0ZXIva29hbGEuYXBpLXJlcXVlc3Rlci5iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2QyxPQUFPLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUduRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckMsTUFBTSxPQUFnQixxQkFBcUI7SUFFekMsWUFDWSxZQUFzQyxFQUN0QyxRQUFnQixFQUNoQixjQUF1QixLQUFLLEVBQ3RDLDRCQUE0QixHQUFHLGFBQWEsRUFDNUMsUUFBUSxHQUFHLEtBQUs7UUFKTixpQkFBWSxHQUFaLFlBQVksQ0FBMEI7UUFDdEMsYUFBUSxHQUFSLFFBQVEsQ0FBUTtRQUNoQixnQkFBVyxHQUFYLFdBQVcsQ0FBaUI7UUFJdEMsWUFBWSxDQUFDLE1BQU0sR0FBRyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1FBQ25GLFlBQVksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQ25DLENBQUM7SUFFTSxNQUFNLENBQUMsTUFBbUM7UUFDL0MsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFhLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBRU0sT0FBTyxDQUFDLEVBQVU7UUFDdkIsT0FBTyxJQUFJ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QUFPLENBQUksTUFBTSxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUM7YUFDN0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUNuQixJQUFJLElBQUksQ0FBQyxXQUFXO2dCQUFFLHNCQUFzQixDQUFDLFVBQVUsQ0FBQyxFQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBQyxDQUFDLENBQUM7WUFDckYsT0FBTyxRQUFRLENBQUM7UUFDbEIsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNqQixDQUFDO0lBRU8sVUFBVSxDQUFDLFFBQWdCO1FBQ2pDLElBQUksSUFBSSxDQUFDLFdBQVcsSUFBSSxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDakUsT0FBTyxJQUFJLFVBQVUsQ0FBYSxPQUFPLENBQUMsRUFBRTtnQkFDMUMsT0FBTyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztnQkFDeEQsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3JCLENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBrb2FsYSB9IGZyb20gXCJAa29hbGFyeC91dGlsc1wiO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IEFwaVJlcXVlc3RlclR5cGUsIEtvYWxhQXBpUmVxdWVzdGVyU2VydmljZSB9IGZyb20gXCIuL2tvYWxhLmFwaS1yZXF1ZXN0ZXIuc2VydmljZVwiO1xuaW1wb3J0IHsgS29hbGFSZXNwb25zZUludGVyZmFjZSB9IGZyb20gXCIuL2hlbHBlcnMvZXJyb3Iva29hbGEuZXJyb3JzLmhlbHBlclwiO1xuaW1wb3J0IHsgS29hbGFFbnZpcm9ubWVudCB9IGZyb20gXCIuLi8uLi9lbnZpcm9ubWVudHMva29hbGFFbnZpcm9ubWVudFwiO1xuaW1wb3J0IHsgS29hbGFBcGlSZXF1ZXN0ZXJDYWNoZSB9IGZyb20gXCIuL2tvYWxhLmFwaS1yZXF1ZXN0ZXIuY2FjaGVcIjtcbmltcG9ydCB7IG1hcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgS29hbGFBcGlSZXF1ZXN0ZXJCYXNlPEVudGl0eVR5cGUsIEdldEFsbFR5cGUsIERhdGFUeXBlPiB7XG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBrb2FsYVNlcnZpY2U6IEtvYWxhQXBpUmVxdWVzdGVyU2VydmljZSxcbiAgICBwcm90ZWN0ZWQgZW5kcG9pbnQ6IHN0cmluZyxcbiAgICBwcm90ZWN0ZWQgZW5hYmxlQ2FjaGU6IGJvb2xlYW4gPSBmYWxzZSxcbiAgICBlbnZpcm9ubWVudE5hbWVUb0VuZHBvaW50QXBpID0gJ2VuZHBvaW50QXBpJyxcbiAgICBpc01vY2t1cCA9IGZhbHNlXG4gICkge1xuICAgIGtvYWxhU2VydmljZS5hcGlVcmwgPSBLb2FsYUVudmlyb25tZW50LmVudmlyb25tZW50Py5bZW52aXJvbm1lbnROYW1lVG9FbmRwb2ludEFwaV07XG4gICAga29hbGFTZXJ2aWNlLmlzTW9ja3VwID0gaXNNb2NrdXA7XG4gIH1cblxuICBwdWJsaWMgZ2V0QWxsKGZpbHRlcj86IEJlaGF2aW9yU3ViamVjdDxhbnk+IHwgYW55KSB7XG4gICAgcmV0dXJuIHRoaXMucmVxdWVzdDxHZXRBbGxUeXBlPignZ2V0JywgdGhpcy5lbmRwb2ludCwgdGhpcy5nZXRQYXJhbXMoZmlsdGVyKSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0QnlJZChpZDogbnVtYmVyKSB7XG4gICAgcmV0dXJuIHRoaXMucmVxdWVzdDxFbnRpdHlUeXBlPignZ2V0JywgdGhpcy5lbmRwb2ludCArICcvJyArIGlkKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRCeVNvbWV0aGluZzxUeXBlPihzb21ldGhpbmc6IGFueSkge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3Q8VHlwZT4oJ2dldCcsIHRoaXMuZW5kcG9pbnQgKyAnLycgKyBzb21ldGhpbmcpO1xuICB9XG5cbiAgcHVibGljIHNhdmUoZGF0YTogRGF0YVR5cGUsIGlkPzogbnVtYmVyKSB7XG4gICAgcmV0dXJuIHRoaXMua29hbGFTZXJ2aWNlLnJlcXVlc3Q8S29hbGFSZXNwb25zZUludGVyZmFjZT4oXG4gICAgICAoaWQgPyAncHV0JyA6ICdwb3N0JyksXG4gICAgICBgJHt0aGlzLmVuZHBvaW50fSR7KGlkID8gYC8ke2lkfWAgOiAnJyl9YCxcbiAgICAgIGRhdGFcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGRlbGV0ZShpZDogbnVtYmVyKSB7XG4gICAgcmV0dXJuIHRoaXMua29hbGFTZXJ2aWNlLnJlcXVlc3Q8S29hbGFSZXNwb25zZUludGVyZmFjZT4oJ2RlbGV0ZScsIHRoaXMuZW5kcG9pbnQgKyAnLycgKyBpZClcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBjYW5jZWxSZXF1ZXN0cygpIHtcbiAgICBhd2FpdCB0aGlzLmtvYWxhU2VydmljZS5jYW5jZWxSZXF1ZXN0cygpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldFBhcmFtcyhwYXJhbXM/OiBCZWhhdmlvclN1YmplY3Q8YW55PiB8IGFueSkge1xuICAgIGxldCBmaWx0ZXIgPSB7fSBhcyBhbnk7XG4gICAgaWYgKHBhcmFtcyBpbnN0YW5jZW9mIEJlaGF2aW9yU3ViamVjdCkge1xuICAgICAgT2JqZWN0LmFzc2lnbihmaWx0ZXIsIHBhcmFtcz8uZ2V0VmFsdWUoKSA/PyB7fSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIE9iamVjdC5hc3NpZ24oZmlsdGVyLCBwYXJhbXMgPz8ge30pO1xuICAgIH1cbiAgICBpZiAoXG4gICAgICBmaWx0ZXIgJiZcbiAgICAgIGZpbHRlci5oYXNPd25Qcm9wZXJ0eSgnc29ydCcpICYmXG4gICAgICBmaWx0ZXIuaGFzT3duUHJvcGVydHkoJ29yZGVyJykgJiZcbiAgICAgIGZpbHRlci5oYXNPd25Qcm9wZXJ0eSgnbGltaXQnKSAmJlxuICAgICAgZmlsdGVyLmhhc093blByb3BlcnR5KCdwYWdlJykgJiZcbiAgICAgIGZpbHRlci5oYXNPd25Qcm9wZXJ0eSgncGFyYW1zJylcbiAgICApIHtcbiAgICAgIE9iamVjdC5rZXlzKGZpbHRlci5wYXJhbXMpLmZvckVhY2goaW5kZXhOYW1lID0+IHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIGAke2ZpbHRlci5wYXJhbXNbaW5kZXhOYW1lXX1gID09PSAnTmFOJyB8fFxuICAgICAgICAgIGZpbHRlci5wYXJhbXNbaW5kZXhOYW1lXSA9PT0gbnVsbFxuICAgICAgICApIHtcbiAgICAgICAgICBmaWx0ZXIucGFyYW1zW2luZGV4TmFtZV0gPSAnJztcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICByZXR1cm4ga29hbGEoe30pXG4gICAgICAgIC5vYmplY3QoKVxuICAgICAgICAubWVyZ2UoZmlsdGVyLnBhcmFtcylcbiAgICAgICAgLm1lcmdlKHtcbiAgICAgICAgICBzb3J0OiBmaWx0ZXIuc29ydCxcbiAgICAgICAgICBvcmRlcjogZmlsdGVyLm9yZGVyLFxuICAgICAgICAgIGxpbWl0OiBmaWx0ZXIubGltaXQsXG4gICAgICAgICAgcGFnZTogZmlsdGVyLnBhZ2VcbiAgICAgICAgfSlcbiAgICAgICAgLmdldFZhbHVlKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZpbHRlciA/PyBudWxsO1xuICB9XG5cbiAgcHVibGljIHJlcXVlc3Q8VD4obWV0aG9kOiBBcGlSZXF1ZXN0ZXJUeXBlLCB1cmw6IHN0cmluZywgZGF0YTogYW55ID0ge30pOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICB0aGlzLnN0YXJ0Q2FjaGUodXJsKTtcbiAgICByZXR1cm4gdGhpcy5rb2FsYVNlcnZpY2VcbiAgICAgICAgICAgICAgIC5yZXF1ZXN0PFQ+KG1ldGhvZCwgdXJsLCBkYXRhKVxuICAgICAgICAgICAgICAgLnBpcGUobWFwKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZW5hYmxlQ2FjaGUpIEtvYWxhQXBpUmVxdWVzdGVyQ2FjaGUuc2V0SW5DYWNoZSh7bmFtZTogdXJsLCBkYXRhOiByZXNwb25zZX0pO1xuICAgICAgICAgICAgICAgICByZXR1cm4gcmVzcG9uc2U7XG4gICAgICAgICAgICAgICB9KSk7XG4gIH1cblxuICBwcml2YXRlIHN0YXJ0Q2FjaGUoZW5kcG9pbnQ6IHN0cmluZykge1xuICAgIGlmICh0aGlzLmVuYWJsZUNhY2hlICYmIEtvYWxhQXBpUmVxdWVzdGVyQ2FjaGUuaGFzQ2FjaGUoZW5kcG9pbnQpKSB7XG4gICAgICByZXR1cm4gbmV3IE9ic2VydmFibGU8R2V0QWxsVHlwZT4ob2JzZXJ2ZSA9PiB7XG4gICAgICAgIG9ic2VydmUubmV4dChLb2FsYUFwaVJlcXVlc3RlckNhY2hlLmdldENhY2hlKGVuZHBvaW50KSk7XG4gICAgICAgIG9ic2VydmUuY29tcGxldGUoKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIl19
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia29hbGEuYXBpLXJlcXVlc3Rlci5iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbGliL3NlcnZpY2VzL2FwaS1yZXF1ZXN0ZXIva29hbGEuYXBpLXJlcXVlc3Rlci5iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2QyxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBR25ELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQyxNQUFNLE9BQWdCLHFCQUFxQjtJQUV6QyxZQUNZLFlBQXNDLEVBQ3RDLFFBQWdCLEVBQ2hCLGNBQXVCLEtBQUssRUFDdEMsNEJBQTRCLEdBQUcsYUFBYSxFQUM1QyxRQUFRLEdBQUcsS0FBSztRQUpOLGlCQUFZLEdBQVosWUFBWSxDQUEwQjtRQUN0QyxhQUFRLEdBQVIsUUFBUSxDQUFRO1FBQ2hCLGdCQUFXLEdBQVgsV0FBVyxDQUFpQjtRQUl0QyxZQUFZLENBQUMsTUFBTSxHQUFHLGdCQUFnQixDQUFDLFdBQVcsRUFBRSxDQUFDLDRCQUE0QixDQUFDLENBQUM7UUFDbkYsWUFBWSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDbkMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxNQUFtQztRQUMvQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQWEsS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFFTSxPQUFPLENBQUMsRUFBVTtRQUN2QixPQUFPLElBQUksQ0FBQyxPQUFP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c0IsQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUN6RDtRQUVELHNCQUFzQixDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN4QyxPQUFPLElBQUksQ0FBQyxZQUFZO2FBQ1osT0FBTyxDQUFJLE1BQU0sRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDO2FBQzdCLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDbkIsSUFBSSxJQUFJLENBQUMsV0FBVztnQkFBRSxzQkFBc0IsQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQzNFLE9BQU8sUUFBUSxDQUFDO1FBQ2xCLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsga29hbGEgfSBmcm9tIFwiQGtvYWxhcngvdXRpbHNcIjtcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBBcGlSZXF1ZXN0ZXJUeXBlLCBLb2FsYUFwaVJlcXVlc3RlclNlcnZpY2UgfSBmcm9tIFwiLi9rb2FsYS5hcGktcmVxdWVzdGVyLnNlcnZpY2VcIjtcbmltcG9ydCB7IEtvYWxhUmVzcG9uc2VJbnRlcmZhY2UgfSBmcm9tIFwiLi9oZWxwZXJzL2Vycm9yL2tvYWxhLmVycm9ycy5oZWxwZXJcIjtcbmltcG9ydCB7IEtvYWxhRW52aXJvbm1lbnQgfSBmcm9tIFwiLi4vLi4vZW52aXJvbm1lbnRzL2tvYWxhRW52aXJvbm1lbnRcIjtcbmltcG9ydCB7IEtvYWxhQXBpUmVxdWVzdGVyQ2FjaGUgfSBmcm9tIFwiLi9rb2FsYS5hcGktcmVxdWVzdGVyLmNhY2hlXCI7XG5pbXBvcnQgeyBtYXAgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEtvYWxhQXBpUmVxdWVzdGVyQmFzZTxFbnRpdHlUeXBlLCBHZXRBbGxUeXBlLCBEYXRhVHlwZT4ge1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQga29hbGFTZXJ2aWNlOiBLb2FsYUFwaVJlcXVlc3RlclNlcnZpY2UsXG4gICAgcHJvdGVjdGVkIGVuZHBvaW50OiBzdHJpbmcsXG4gICAgcHJvdGVjdGVkIGVuYWJsZUNhY2hlOiBib29sZWFuID0gZmFsc2UsXG4gICAgZW52aXJvbm1lbnROYW1lVG9FbmRwb2ludEFwaSA9ICdlbmRwb2ludEFwaScsXG4gICAgaXNNb2NrdXAgPSBmYWxzZVxuICApIHtcbiAgICBrb2FsYVNlcnZpY2UuYXBpVXJsID0gS29hbGFFbnZpcm9ubWVudC5lbnZpcm9ubWVudD8uW2Vudmlyb25tZW50TmFtZVRvRW5kcG9pbnRBcGldO1xuICAgIGtvYWxhU2VydmljZS5pc01vY2t1cCA9IGlzTW9ja3VwO1xuICB9XG5cbiAgcHVibGljIGdldEFsbChmaWx0ZXI/OiBCZWhhdmlvclN1YmplY3Q8YW55PiB8IGFueSkge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3Q8R2V0QWxsVHlwZT4oJ2dldCcsIHRoaXMuZW5kcG9pbnQsIHRoaXMuZ2V0UGFyYW1zKGZpbHRlcikpO1xuICB9XG5cbiAgcHVibGljIGdldEJ5SWQoaWQ6IG51bWJlcikge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3Q8RW50aXR5VHlwZT4oJ2dldCcsIHRoaXMuZW5kcG9pbnQgKyAnLycgKyBpZCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0QnlTb21ldGhpbmc8VHlwZT4oc29tZXRoaW5nOiBhbnkpIHtcbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0PFR5cGU+KCdnZXQnLCB0aGlzLmVuZHBvaW50ICsgJy8nICsgc29tZXRoaW5nKTtcbiAgfVxuXG4gIHB1YmxpYyBzYXZlKGRhdGE6IERhdGFUeXBlLCBpZD86IG51bWJlcikge1xuICAgIHJldHVybiB0aGlzLmtvYWxhU2VydmljZS5yZXF1ZXN0PEtvYWxhUmVzcG9uc2VJbnRlcmZhY2U+KFxuICAgICAgKGlkID8gJ3B1dCcgOiAncG9zdCcpLFxuICAgICAgYCR7dGhpcy5lbmRwb2ludH0keyhpZCA/IGAvJHtpZH1gIDogJycpfWAsXG4gICAgICBkYXRhXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBkZWxldGUoaWQ6IG51bWJlcikge1xuICAgIHJldHVybiB0aGlzLmtvYWxhU2VydmljZS5yZXF1ZXN0PEtvYWxhUmVzcG9uc2VJbnRlcmZhY2U+KCdkZWxldGUnLCB0aGlzLmVuZHBvaW50ICsgJy8nICsgaWQpXG4gIH1cblxuICBwdWJsaWMgYXN5bmMgY2FuY2VsUmVxdWVzdHMoKSB7XG4gICAgYXdhaXQgdGhpcy5rb2FsYVNlcnZpY2UuY2FuY2VsUmVxdWVzdHMoKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRQYXJhbXMocGFyYW1zPzogQmVoYXZpb3JTdWJqZWN0PGFueT4gfCBhbnkpIHtcbiAgICBsZXQgZmlsdGVyID0ge30gYXMgYW55O1xuICAgIGlmIChwYXJhbXMgaW5zdGFuY2VvZiBCZWhhdmlvclN1YmplY3QpIHtcbiAgICAgIE9iamVjdC5hc3NpZ24oZmlsdGVyLCBwYXJhbXM/LmdldFZhbHVlKCkgPz8ge30pO1xuICAgIH0gZWxzZSB7XG4gICAgICBPYmplY3QuYXNzaWduKGZpbHRlciwgcGFyYW1zID8/IHt9KTtcbiAgICB9XG4gICAgaWYgKFxuICAgICAgZmlsdGVyICYmXG4gICAgICBmaWx0ZXIuaGFzT3duUHJvcGVydHkoJ3NvcnQnKSAmJlxuICAgICAgZmlsdGVyLmhhc093blByb3BlcnR5KCdvcmRlcicpICYmXG4gICAgICBmaWx0ZXIuaGFzT3duUHJvcGVydHkoJ2xpbWl0JykgJiZcbiAgICAgIGZpbHRlci5oYXNPd25Qcm9wZXJ0eSgncGFnZScpICYmXG4gICAgICBmaWx0ZXIuaGFzT3duUHJvcGVydHkoJ3BhcmFtcycpXG4gICAgKSB7XG4gICAgICBPYmplY3Qua2V5cyhmaWx0ZXIucGFyYW1zKS5mb3JFYWNoKGluZGV4TmFtZSA9PiB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBgJHtmaWx0ZXIucGFyYW1zW2luZGV4TmFtZV19YCA9PT0gJ05hTicgfHxcbiAgICAgICAgICBmaWx0ZXIucGFyYW1zW2luZGV4TmFtZV0gPT09IG51bGxcbiAgICAgICAgKSB7XG4gICAgICAgICAgZmlsdGVyLnBhcmFtc1tpbmRleE5hbWVdID0gJyc7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIGtvYWxhKHt9KVxuICAgICAgICAub2JqZWN0KClcbiAgICAgICAgLm1lcmdlKGZpbHRlci5wYXJhbXMpXG4gICAgICAgIC5tZXJnZSh7XG4gICAgICAgICAgc29ydDogZmlsdGVyLnNvcnQsXG4gICAgICAgICAgb3JkZXI6IGZpbHRlci5vcmRlcixcbiAgICAgICAgICBsaW1pdDogZmlsdGVyLmxpbWl0LFxuICAgICAgICAgIHBhZ2U6IGZpbHRlci5wYWdlXG4gICAgICAgIH0pXG4gICAgICAgIC5nZXRWYWx1ZSgpO1xuICAgIH1cblxuICAgIHJldHVybiBmaWx0ZXIgPz8gbnVsbDtcbiAgfVxuXG4gIHB1YmxpYyByZXF1ZXN0PFQ+KG1ldGhvZDogQXBpUmVxdWVzdGVyVHlwZSwgdXJsOiBzdHJpbmcsIGRhdGE6IGFueSA9IHt9KTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgaWYgKHRoaXMuZW5hYmxlQ2FjaGUgJiYgS29hbGFBcGlSZXF1ZXN0ZXJDYWNoZS5oYXNDYWNoZSh1cmwpKSB7XG4gICAgICByZXR1cm4gS29hbGFBcGlSZXF1ZXN0ZXJDYWNoZS5nZXRDYWNoZUFzT2JzZXJ2YWJsZSh1cmwpO1xuICAgIH1cblxuICAgIEtvYWxhQXBpUmVxdWVzdGVyQ2FjaGUuY3JlYXRlQ2FjaGUodXJsKTtcbiAgICByZXR1cm4gdGhpcy5rb2FsYVNlcnZpY2VcbiAgICAgICAgICAgICAgIC5yZXF1ZXN0PFQ+KG1ldGhvZCwgdXJsLCBkYXRhKVxuICAgICAgICAgICAgICAgLnBpcGUobWFwKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZW5hYmxlQ2FjaGUpIEtvYWxhQXBpUmVxdWVzdGVyQ2FjaGUuc2V0RGF0YUluQ2FjaGUodXJsLCByZXNwb25zZSk7XG4gICAgICAgICAgICAgICAgIHJldHVybiByZXNwb25zZTtcbiAgICAgICAgICAgICAgIH0pKTtcbiAgfVxufVxuIl19
@@ -1,20 +1,38 @@
1
- import { koala } from "@koalarx/utils";
1
+ import { BehaviorSubject, Observable, skipWhile } from "rxjs";
2
2
  export class KoalaApiRequesterCache {
3
- static setInCache(cache) {
4
- const index = koala(this.cache).array().getIndex('name', cache.name);
5
- if (index >= 0) {
6
- this.cache[index] = cache;
7
- }
8
- else {
9
- this.cache.push(cache);
3
+ static createCache(name) {
4
+ if (!this.hasCache(name)) {
5
+ this.cache.push({
6
+ name,
7
+ data: new BehaviorSubject(undefined)
8
+ });
10
9
  }
11
10
  }
12
- static getCache(name) {
11
+ static setDataInCache(name, data) {
12
+ this.getCacheSubject(name)?.next(data);
13
+ }
14
+ static getCacheSubject(name) {
13
15
  return this.cache.find(item => item.name === name)?.data;
14
16
  }
17
+ static getCacheAsObservable(name) {
18
+ return new Observable(observe => {
19
+ this.getCacheSubject(name)
20
+ .pipe(skipWhile(value => value === undefined))
21
+ .subscribe({
22
+ next: value => {
23
+ observe.next(value);
24
+ observe.complete();
25
+ },
26
+ error: err => {
27
+ observe.error(err);
28
+ observe.complete();
29
+ }
30
+ });
31
+ });
32
+ }
15
33
  static hasCache(name) {
16
- return !!this.getCache(name);
34
+ return !!this.getCacheSubject(name);
17
35
  }
18
36
  }
19
37
  KoalaApiRequesterCache.cache = [];
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia29hbGEuYXBpLXJlcXVlc3Rlci5jYWNoZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9zZXJ2aWNlcy9hcGktcmVxdWVzdGVyL2tvYWxhLmFwaS1yZXF1ZXN0ZXIuY2FjaGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBT3ZDLE1BQU0sT0FBTyxzQkFBc0I7SUFHMUIsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFxQjtRQUM1QyxNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXJFLElBQUksS0FBSyxJQUFJLENBQUMsRUFBRTtZQUNkLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxDQUFDO1NBQzNCO2FBQU07WUFDTCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN4QjtJQUNILENBQUM7SUFFTSxNQUFNLENBQUMsUUFBUSxDQUFJLElBQVk7UUFDcEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDO0lBQzNELENBQUM7SUFFTSxNQUFNLENBQUMsUUFBUSxDQUFDLElBQVk7UUFDakMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQixDQUFDOztBQWxCYyw0QkFBSyxHQUFxQixFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBrb2FsYSB9IGZyb20gXCJAa29hbGFyeC91dGlsc1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEtvYWxhQ2FjaGVEYXRhIHtcbiAgbmFtZTogc3RyaW5nO1xuICBkYXRhOiBhbnk7XG59XG5cbmV4cG9ydCBjbGFzcyBLb2FsYUFwaVJlcXVlc3RlckNhY2hlIHtcbiAgcHJpdmF0ZSBzdGF0aWMgY2FjaGU6IEtvYWxhQ2FjaGVEYXRhW10gPSBbXTtcblxuICBwdWJsaWMgc3RhdGljIHNldEluQ2FjaGUoY2FjaGU6IEtvYWxhQ2FjaGVEYXRhKSB7XG4gICAgY29uc3QgaW5kZXggPSBrb2FsYSh0aGlzLmNhY2hlKS5hcnJheSgpLmdldEluZGV4KCduYW1lJywgY2FjaGUubmFtZSk7XG5cbiAgICBpZiAoaW5kZXggPj0gMCkge1xuICAgICAgdGhpcy5jYWNoZVtpbmRleF0gPSBjYWNoZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jYWNoZS5wdXNoKGNhY2hlKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGdldENhY2hlPFQ+KG5hbWU6IHN0cmluZyk6IFQge1xuICAgIHJldHVybiB0aGlzLmNhY2hlLmZpbmQoaXRlbSA9PiBpdGVtLm5hbWUgPT09IG5hbWUpPy5kYXRhO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBoYXNDYWNoZShuYW1lOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gISF0aGlzLmdldENhY2hlKG5hbWUpO1xuICB9XG59XG4iXX0=
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia29hbGEuYXBpLXJlcXVlc3Rlci5jYWNoZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9zZXJ2aWNlcy9hcGktcmVxdWVzdGVyL2tvYWxhLmFwaS1yZXF1ZXN0ZXIuY2FjaGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBTzlELE1BQU0sT0FBTyxzQkFBc0I7SUFHMUIsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFZO1FBQ3BDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3hCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO2dCQUNkLElBQUk7Z0JBQ0osSUFBSSxFQUFFLElBQUksZUFBZSxDQUFNLFNBQVMsQ0FBQzthQUMxQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFTSxNQUFNLENBQUMsY0FBYyxDQUFDLElBQVksRUFBRSxJQUFTO1FBQ2xELElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFTSxNQUFNLENBQUMsZUFBZSxDQUFDLElBQVk7UUFDeEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDO0lBQzNELENBQUM7SUFFTSxNQUFNLENBQUMsb0JBQW9CLENBQUksSUFBWTtRQUNoRCxPQUFPLElBQUksVUFBVSxDQUFJLE9BQU8sQ0FBQyxFQUFFO1lBQ2pDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDO2lCQUNyQixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDO2lCQUM3QyxTQUFTLENBQUM7Z0JBQ1QsSUFBSSxFQUFFLEtBQUssQ0FBQyxFQUFFO29CQUNaLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ3BCLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDckIsQ0FBQztnQkFDRCxLQUFLLEVBQUUsR0FBRyxDQUFDLEVBQUU7b0JBQ1gsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztvQkFDbkIsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNyQixDQUFDO2FBQ0YsQ0FBQyxDQUFDO1FBQ1QsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFZO1FBQ2pDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdEMsQ0FBQzs7QUF0Q2MsNEJBQUssR0FBcUIsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBza2lwV2hpbGUgfSBmcm9tIFwicnhqc1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEtvYWxhQ2FjaGVEYXRhIHtcbiAgbmFtZTogc3RyaW5nO1xuICBkYXRhOiBCZWhhdmlvclN1YmplY3Q8YW55Pjtcbn1cblxuZXhwb3J0IGNsYXNzIEtvYWxhQXBpUmVxdWVzdGVyQ2FjaGUge1xuICBwcml2YXRlIHN0YXRpYyBjYWNoZTogS29hbGFDYWNoZURhdGFbXSA9IFtdO1xuXG4gIHB1YmxpYyBzdGF0aWMgY3JlYXRlQ2FjaGUobmFtZTogc3RyaW5nKSB7XG4gICAgaWYgKCF0aGlzLmhhc0NhY2hlKG5hbWUpKSB7XG4gICAgICB0aGlzLmNhY2hlLnB1c2goe1xuICAgICAgICBuYW1lLFxuICAgICAgICBkYXRhOiBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4odW5kZWZpbmVkKVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHN0YXRpYyBzZXREYXRhSW5DYWNoZShuYW1lOiBzdHJpbmcsIGRhdGE6IGFueSkge1xuICAgIHRoaXMuZ2V0Q2FjaGVTdWJqZWN0KG5hbWUpPy5uZXh0KGRhdGEpO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBnZXRDYWNoZVN1YmplY3QobmFtZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGUuZmluZChpdGVtID0+IGl0ZW0ubmFtZSA9PT0gbmFtZSk/LmRhdGE7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGdldENhY2hlQXNPYnNlcnZhYmxlPFQ+KG5hbWU6IHN0cmluZykge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxUPihvYnNlcnZlID0+IHtcbiAgICAgIHRoaXMuZ2V0Q2FjaGVTdWJqZWN0KG5hbWUpXG4gICAgICAgICAgLnBpcGUoc2tpcFdoaWxlKHZhbHVlID0+IHZhbHVlID09PSB1bmRlZmluZWQpKVxuICAgICAgICAgIC5zdWJzY3JpYmUoe1xuICAgICAgICAgICAgbmV4dDogdmFsdWUgPT4ge1xuICAgICAgICAgICAgICBvYnNlcnZlLm5leHQodmFsdWUpO1xuICAgICAgICAgICAgICBvYnNlcnZlLmNvbXBsZXRlKCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZXJyb3I6IGVyciA9PiB7XG4gICAgICAgICAgICAgIG9ic2VydmUuZXJyb3IoZXJyKTtcbiAgICAgICAgICAgICAgb2JzZXJ2ZS5jb21wbGV0ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBoYXNDYWNoZShuYW1lOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gISF0aGlzLmdldENhY2hlU3ViamVjdChuYW1lKTtcbiAgfVxufVxuIl19
@@ -16,7 +16,7 @@ import * as i2$1 from '@angular/router';
16
16
  import { NavigationError, NavigationEnd, NavigationCancel, NavigationStart, RouterModule } from '@angular/router';
17
17
  import * as i7 from '@angular/material/core';
18
18
  import { __awaiter } from 'tslib';
19
- import { BehaviorSubject, interval, Observable } from 'rxjs';
19
+ import { BehaviorSubject, interval, Observable, skipWhile } from 'rxjs';
20
20
  import jwt from 'jwt-decode';
21
21
  import * as i4 from '@koalarx/ui/menu';
22
22
  import { menuStateSubject } from '@koalarx/ui/menu';
@@ -1274,21 +1274,40 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
1274
1274
  }], ctorParameters: function () { return [{ type: i1$2.HttpClient }, { type: KoalaOAuth2Service }]; } });
1275
1275
 
1276
1276
  class KoalaApiRequesterCache {
1277
- static setInCache(cache) {
1278
- const index = koala(this.cache).array().getIndex('name', cache.name);
1279
- if (index >= 0) {
1280
- this.cache[index] = cache;
1281
- }
1282
- else {
1283
- this.cache.push(cache);
1277
+ static createCache(name) {
1278
+ if (!this.hasCache(name)) {
1279
+ this.cache.push({
1280
+ name,
1281
+ data: new BehaviorSubject(undefined)
1282
+ });
1284
1283
  }
1285
1284
  }
1286
- static getCache(name) {
1285
+ static setDataInCache(name, data) {
1286
+ var _a;
1287
+ (_a = this.getCacheSubject(name)) === null || _a === void 0 ? void 0 : _a.next(data);
1288
+ }
1289
+ static getCacheSubject(name) {
1287
1290
  var _a;
1288
1291
  return (_a = this.cache.find(item => item.name === name)) === null || _a === void 0 ? void 0 : _a.data;
1289
1292
  }
1293
+ static getCacheAsObservable(name) {
1294
+ return new Observable(observe => {
1295
+ this.getCacheSubject(name)
1296
+ .pipe(skipWhile(value => value === undefined))
1297
+ .subscribe({
1298
+ next: value => {
1299
+ observe.next(value);
1300
+ observe.complete();
1301
+ },
1302
+ error: err => {
1303
+ observe.error(err);
1304
+ observe.complete();
1305
+ }
1306
+ });
1307
+ });
1308
+ }
1290
1309
  static hasCache(name) {
1291
- return !!this.getCache(name);
1310
+ return !!this.getCacheSubject(name);
1292
1311
  }
1293
1312
  }
1294
1313
  KoalaApiRequesterCache.cache = [];
@@ -1359,23 +1378,18 @@ class KoalaApiRequesterBase {
1359
1378
  });
1360
1379
  }
1361
1380
  request(method, url, data = {}) {
1362
- this.startCache(url);
1381
+ if (this.enableCache && KoalaApiRequesterCache.hasCache(url)) {
1382
+ return KoalaApiRequesterCache.getCacheAsObservable(url);
1383
+ }
1384
+ KoalaApiRequesterCache.createCache(url);
1363
1385
  return this.koalaService
1364
1386
  .request(method, url, data)
1365
1387
  .pipe(map(response => {
1366
1388
  if (this.enableCache)
1367
- KoalaApiRequesterCache.setInCache({ name: url, data: response });
1389
+ KoalaApiRequesterCache.setDataInCache(url, response);
1368
1390
  return response;
1369
1391
  }));
1370
1392
  }
1371
- startCache(endpoint) {
1372
- if (this.enableCache && KoalaApiRequesterCache.hasCache(endpoint)) {
1373
- return new Observable(observe => {
1374
- observe.next(KoalaApiRequesterCache.getCache(endpoint));
1375
- observe.complete();
1376
- });
1377
- }
1378
- }
1379
1393
  }
1380
1394
 
1381
1395
  class KoalaRequestService {
@@ -1474,5 +1488,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
1474
1488
  * Generated bundle index. Do not edit.
1475
1489
  */
1476
1490
 
1477
- export { KOALA_LOADER_SUBJECT, KoalaApiRequesterBase, KoalaApiRequesterService, KoalaClientError, KoalaEnvironment, KoalaErrorsHelper, KoalaLanguageHelper, KoalaLoaderService, KoalaNotFoundError, KoalaOAuth2Service, KoalaOauthConfig, KoalaPageModule, KoalaParameterHashLocationStrategy, KoalaRequestHeaderHelper, KoalaRequestService, KoalaResponseFactory, KoalaSuccessError, KoalaTokenService, KoalaUnhautorizedError, LoaderBarPageComponent, NgxKoalaModule, NotificationComponent, PageComponent };
1491
+ export { KOALA_LOADER_SUBJECT, KoalaApiRequesterBase, KoalaApiRequesterCache, KoalaApiRequesterService, KoalaClientError, KoalaEnvironment, KoalaErrorsHelper, KoalaLanguageHelper, KoalaLoaderService, KoalaNotFoundError, KoalaOAuth2Service, KoalaOauthConfig, KoalaPageModule, KoalaParameterHashLocationStrategy, KoalaRequestHeaderHelper, KoalaRequestService, KoalaResponseFactory, KoalaSuccessError, KoalaTokenService, KoalaUnhautorizedError, LoaderBarPageComponent, NgxKoalaModule, NotificationComponent, PageComponent };
1478
1492
  //# sourceMappingURL=koalarx-ui-core.mjs.map