@esolve/ng-esolve-connect 0.44.0 → 0.45.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/esm2022/lib/account/esolve-account.service.mjs +3 -3
  2. package/esm2022/lib/account/user-account/classes/esolve-user-client-account.model.mjs +2 -1
  3. package/esm2022/lib/account/user-account/interfaces/esolve-user-client-account-record.interface.mjs +1 -1
  4. package/esm2022/lib/auth/esolve-auth-interceptor.service.mjs +3 -3
  5. package/esm2022/lib/auth/esolve-auth.service.mjs +3 -3
  6. package/esm2022/lib/banners/esolve-banner.service.mjs +3 -3
  7. package/esm2022/lib/cart/esolve-cart.service.mjs +12 -14
  8. package/esm2022/lib/category-tree/esolve-category-tree.service.mjs +3 -3
  9. package/esm2022/lib/core/esolve-config.service.mjs +7 -4
  10. package/esm2022/lib/core/esolve-connect-config.constant.mjs +1 -1
  11. package/esm2022/lib/core/esolve-connect-config.interface.mjs +2 -0
  12. package/esm2022/lib/core/index.mjs +3 -2
  13. package/esm2022/lib/core/providers/index.mjs +2 -0
  14. package/esm2022/lib/core/providers/provide-ng-esolve-connect.function.mjs +24 -0
  15. package/esm2022/lib/coupons/esolve-coupons.service.mjs +9 -11
  16. package/esm2022/lib/enquiry/esolve-enquiry.service.mjs +3 -3
  17. package/esm2022/lib/images/directives/cdn-src.directive.mjs +5 -5
  18. package/esm2022/lib/images/esolve-image-loader.provider.mjs +6 -3
  19. package/esm2022/lib/images/functions/index.mjs +2 -1
  20. package/esm2022/lib/images/functions/is-ftg-cdn-path.function.mjs +5 -0
  21. package/esm2022/lib/images/functions/process-image-src.function.mjs +7 -2
  22. package/esm2022/lib/locations/esolve-locations.service.mjs +9 -11
  23. package/esm2022/lib/manufacturers/esolve-manufacturers.service.mjs +3 -3
  24. package/esm2022/lib/menu/esolve-menu.service.mjs +3 -3
  25. package/esm2022/lib/news/esolve-news.service.mjs +3 -3
  26. package/esm2022/lib/ng-esolve-connect.module.mjs +8 -27
  27. package/esm2022/lib/payment/esolve-payment.service.mjs +11 -13
  28. package/esm2022/lib/payment/interfaces/index.mjs +3 -2
  29. package/esm2022/lib/ranges/esolve-ranges.service.mjs +9 -11
  30. package/esm2022/lib/session/esolve-session-metadata.service.mjs +3 -3
  31. package/esm2022/lib/session/esolve-session.service.mjs +3 -3
  32. package/esm2022/lib/shared/assets/esolve-assets.service.mjs +9 -11
  33. package/esm2022/lib/shared/cookie/esolve-cookie.service.mjs +3 -3
  34. package/esm2022/lib/shared/errors/esolve-error-handler.service.mjs +3 -3
  35. package/esm2022/lib/shared/geocoder/esolve-geocoder.service.mjs +9 -11
  36. package/esm2022/lib/shared/response/esolve-response-handler.service.mjs +3 -3
  37. package/esm2022/lib/shared/seo/esolve-seo.service.mjs +3 -3
  38. package/esm2022/lib/shipping/esolve-shipping.service.mjs +9 -11
  39. package/esm2022/lib/specials/esolve-specials.service.mjs +9 -11
  40. package/esm2022/lib/stock/esolve-stock.service.mjs +9 -11
  41. package/esm2022/lib/suppliers/esolve-suppliers.service.mjs +9 -11
  42. package/esm2022/lib/tags/esolve-tags.service.mjs +9 -11
  43. package/esm2022/lib/topics/esolve-topic.service.mjs +9 -11
  44. package/esm2022/lib/transactions/esolve-transactions.service.mjs +3 -3
  45. package/esm2022/lib/wishlist/esolve-wishlist.service.mjs +11 -13
  46. package/esm2022/media/index.mjs +2 -2
  47. package/esm2022/media/lib/components/media-layout/esolve-media-layout.component.mjs +14 -13
  48. package/esm2022/media/lib/components/media-section/esolve-media-section.component.mjs +15 -14
  49. package/esm2022/media/lib/esolve-connect-media-config.token.mjs +1 -1
  50. package/esm2022/media/lib/functions/index.mjs +2 -0
  51. package/esm2022/media/lib/functions/provide-ng-esolve-connect-media.function.mjs +8 -0
  52. package/esm2022/media/lib/interfaces/esolve-connect-media-config.interface.mjs +2 -0
  53. package/esm2022/media/lib/interfaces/index.mjs +2 -1
  54. package/esm2022/media/lib/ng-esolve-connect-media.module.mjs +8 -29
  55. package/esm2022/media/lib/services/esolve-media-layout.service.mjs +8 -10
  56. package/esm2022/media/lib/services/esolve-media.service.mjs +10 -14
  57. package/esm2022/notifications/index.mjs +1 -2
  58. package/esm2022/notifications/lib/services/esolve-notifications.service.mjs +3 -3
  59. package/esm2022/survey/index.mjs +1 -2
  60. package/esm2022/survey/lib/services/esolve-survey.service.mjs +3 -3
  61. package/fesm2022/esolve-ng-esolve-connect-media.mjs +50 -64
  62. package/fesm2022/esolve-ng-esolve-connect-media.mjs.map +1 -1
  63. package/fesm2022/esolve-ng-esolve-connect-notifications.mjs +5 -18
  64. package/fesm2022/esolve-ng-esolve-connect-notifications.mjs.map +1 -1
  65. package/fesm2022/esolve-ng-esolve-connect-survey.mjs +6 -19
  66. package/fesm2022/esolve-ng-esolve-connect-survey.mjs.map +1 -1
  67. package/fesm2022/esolve-ng-esolve-connect.mjs +169 -194
  68. package/fesm2022/esolve-ng-esolve-connect.mjs.map +1 -1
  69. package/lib/account/user-account/classes/esolve-user-client-account.model.d.ts +1 -0
  70. package/lib/account/user-account/interfaces/esolve-user-client-account-record.interface.d.ts +1 -0
  71. package/lib/cart/esolve-cart.service.d.ts +2 -2
  72. package/lib/core/esolve-config.service.d.ts +2 -1
  73. package/lib/core/esolve-connect-config.constant.d.ts +1 -1
  74. package/lib/core/{esolve-connect.config.d.ts → esolve-connect-config.interface.d.ts} +4 -0
  75. package/lib/core/index.d.ts +2 -1
  76. package/lib/core/providers/index.d.ts +1 -0
  77. package/lib/core/providers/provide-ng-esolve-connect.function.d.ts +3 -0
  78. package/lib/coupons/esolve-coupons.service.d.ts +2 -2
  79. package/lib/images/esolve-image-loader.provider.d.ts +1 -1
  80. package/lib/images/functions/index.d.ts +1 -0
  81. package/lib/images/functions/is-ftg-cdn-path.function.d.ts +1 -0
  82. package/lib/images/functions/process-image-src.function.d.ts +1 -1
  83. package/lib/locations/esolve-locations.service.d.ts +2 -2
  84. package/lib/payment/esolve-payment.service.d.ts +2 -2
  85. package/lib/payment/interfaces/index.d.ts +2 -0
  86. package/lib/ranges/esolve-ranges.service.d.ts +2 -2
  87. package/lib/shared/assets/esolve-assets.service.d.ts +2 -2
  88. package/lib/shared/geocoder/esolve-geocoder.service.d.ts +2 -2
  89. package/lib/shipping/esolve-shipping.service.d.ts +2 -2
  90. package/lib/specials/esolve-specials.service.d.ts +2 -2
  91. package/lib/stock/esolve-stock.service.d.ts +2 -2
  92. package/lib/suppliers/esolve-suppliers.service.d.ts +2 -2
  93. package/lib/tags/esolve-tags.service.d.ts +2 -2
  94. package/lib/topics/esolve-topic.service.d.ts +2 -2
  95. package/lib/wishlist/esolve-wishlist.service.d.ts +2 -2
  96. package/media/index.d.ts +1 -1
  97. package/media/lib/components/media-layout/esolve-media-layout.component.d.ts +2 -3
  98. package/media/lib/components/media-section/esolve-media-section.component.d.ts +2 -3
  99. package/media/lib/esolve-connect-media-config.token.d.ts +1 -1
  100. package/media/lib/functions/index.d.ts +1 -0
  101. package/media/lib/functions/provide-ng-esolve-connect-media.function.d.ts +3 -0
  102. package/media/lib/interfaces/esolve-connect-media-config.interface.d.ts +7 -0
  103. package/media/lib/interfaces/index.d.ts +1 -0
  104. package/media/lib/ng-esolve-connect-media.module.d.ts +2 -6
  105. package/media/lib/services/esolve-media-layout.service.d.ts +1 -2
  106. package/media/lib/services/esolve-media.service.d.ts +0 -3
  107. package/notifications/index.d.ts +0 -1
  108. package/package.json +8 -8
  109. package/survey/index.d.ts +0 -1
  110. package/esm2022/lib/core/esolve-connect.config.mjs +0 -2
  111. package/esm2022/media/lib/esolve-connect-media.config.mjs +0 -2
  112. package/esm2022/notifications/lib/ng-esolve-connect-notifications.module.mjs +0 -15
  113. package/esm2022/survey/lib/ng-esolve-connect-survey.module.mjs +0 -15
  114. package/media/lib/esolve-connect-media.config.d.ts +0 -6
  115. package/notifications/lib/ng-esolve-connect-notifications.module.d.ts +0 -7
  116. package/survey/lib/ng-esolve-connect-survey.module.d.ts +0 -7
@@ -1,12 +1,13 @@
1
- import { Inject, Injectable } from '@angular/core';
1
+ import { Injectable } from '@angular/core';
2
2
  import { HttpClient, HttpParams } from '@angular/common/http';
3
3
  import { map } from 'rxjs/operators';
4
- import { ESOLVE_CONNECT_CONFIG } from '../core/esolve-connect-config.constant';
4
+ import { EsolveConfigService } from '../core';
5
5
  import { EsolveList } from '../shared/esolve-list.model';
6
6
  import { EsolveFilterFactory, EsolveMultipleSelectFilter, EsolveRangeFilter, EsolveSingleSelectFilter, } from '../shared/filters';
7
7
  import { EsolveStockItem, EsolveStockItemList, EsolveMediaStockItem, EsolveRecipeStockItem, EsolveLinkedStockItem, EsolveStockImageCollection, } from './classes';
8
8
  import * as i0 from "@angular/core";
9
- import * as i1 from "@angular/common/http";
9
+ import * as i1 from "../core";
10
+ import * as i2 from "@angular/common/http";
10
11
  export class EsolveStockService {
11
12
  constructor(config, http) {
12
13
  this.config = config;
@@ -403,16 +404,13 @@ export class EsolveStockService {
403
404
  getStockHistoryRecords(params) {
404
405
  return this.http.get(`${this.config.api_url}/get-items-transaction-history.php`, { params });
405
406
  }
406
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.1", ngImport: i0, type: EsolveStockService, deps: [{ token: ESOLVE_CONNECT_CONFIG }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
407
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.1", ngImport: i0, type: EsolveStockService, providedIn: 'root' }); }
407
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: EsolveStockService, deps: [{ token: i1.EsolveConfigService }, { token: i2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
408
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: EsolveStockService, providedIn: 'root' }); }
408
409
  }
409
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.1", ngImport: i0, type: EsolveStockService, decorators: [{
410
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: EsolveStockService, decorators: [{
410
411
  type: Injectable,
411
412
  args: [{
412
413
  providedIn: 'root',
413
414
  }]
414
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
415
- type: Inject,
416
- args: [ESOLVE_CONNECT_CONFIG]
417
- }] }, { type: i1.HttpClient }]; } });
418
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXN0b2NrLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvc3RvY2svZXNvbHZlLXN0b2NrLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUc5RCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHckMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFFL0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBR3pELE9BQU8sRUFDSCxtQkFBbUIsRUFHbkIsMEJBQTBCLEVBQzFCLGlCQUFpQixFQUNqQix3QkFBd0IsR0FDM0IsTUFBTSxtQkFBbUIsQ0FBQztBQWEzQixPQUFPLEVBQ0gsZUFBZSxFQUNmLG1CQUFtQixFQUNuQixvQkFBb0IsRUFDcEIscUJBQXFCLEVBQ3JCLHFCQUFxQixFQUNyQiwwQkFBMEIsR0FDN0IsTUFBTSxXQUFXLENBQUM7OztBQUtuQixNQUFNLE9BQU8sa0JBQWtCO0lBRzNCLFlBQzJDLE1BQTJCLEVBQzFELElBQWdCO1FBRGUsV0FBTSxHQUFOLE1BQU0sQ0FBcUI7UUFDMUQsU0FBSSxHQUFKLElBQUksQ0FBWTtJQUN6QixDQUFDO0lBRUo7Ozs7T0FJRztJQUNJLFlBQVksQ0FBQyxJQUFZO1FBQzVCLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxDQUFDO1lBQzFCLFVBQVUsRUFBRTtnQkFDUixJQUFJO2FBQ1A7U0FDSixDQUFDLENBQUM7UUFFSCxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUNwQyxHQUFHLENB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QUFJLHFCQUFxQixDQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUM7YUFDcEQ7U0FDSjtRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ssc0JBQXNCLENBQzFCLE9BQXdDO1FBRXhDLE1BQU0sS0FBSyxHQUE4QixFQUFFLENBQUM7UUFFNUMsSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUNwQixLQUFLLE1BQU0sTUFBTSxJQUFJLE9BQU8sRUFBRTtnQkFDMUIsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLG9CQUFvQixDQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUM7YUFDbkQ7U0FDSjtRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFRDs7O09BR0c7SUFDSyxlQUFlLENBQ25CLE1BQWtCO1FBRWxCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQ2hCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLGdCQUFnQixFQUN0QyxFQUFFLE1BQU0sRUFBRSxDQUNiLENBQUM7SUFDTixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ssc0JBQXNCLENBQzFCLE1BQWtCO1FBRWxCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQ2hCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLG9DQUFvQyxFQUMxRCxFQUFFLE1BQU0sRUFBRSxDQUNiLENBQUM7SUFDTixDQUFDOzhHQXhsQlEsa0JBQWtCLGtCQUlmLHFCQUFxQjtrSEFKeEIsa0JBQWtCLGNBRmYsTUFBTTs7MkZBRVQsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjs7MEJBS1EsTUFBTTsyQkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgRXNvbHZlQ29ubmVjdENvbmZpZyB9IGZyb20gJy4uL2NvcmUvZXNvbHZlLWNvbm5lY3QuY29uZmlnJztcbmltcG9ydCB7IEVTT0xWRV9DT05ORUNUX0NPTkZJRyB9IGZyb20gJy4uL2NvcmUvZXNvbHZlLWNvbm5lY3QtY29uZmlnLmNvbnN0YW50JztcblxuaW1wb3J0IHsgRXNvbHZlTGlzdCB9IGZyb20gJy4uL3NoYXJlZC9lc29sdmUtbGlzdC5tb2RlbCc7XG5pbXBvcnQgeyBFc29sdmVHZXRSZXNwb25zZSB9IGZyb20gJy4uL3NoYXJlZC9yZXNwb25zZSc7XG5pbXBvcnQgeyBFc29sdmVDdXN0b21GaWVsZHMgfSBmcm9tICcuLi9zaGFyZWQvY3VzdG9tLWZpZWxkcyc7XG5pbXBvcnQge1xuICAgIEVzb2x2ZUZpbHRlckZhY3RvcnksXG4gICAgRXNvbHZlRmlsdGVyTGlzdCxcbiAgICBFc29sdmVGaWx0ZXJSZWNvcmRMaXN0LFxuICAgIEVzb2x2ZU11bHRpcGxlU2VsZWN0RmlsdGVyLFxuICAgIEVzb2x2ZVJhbmdlRmlsdGVyLFxuICAgIEVzb2x2ZVNpbmdsZVNlbGVjdEZpbHRlcixcbn0gZnJvbSAnLi4vc2hhcmVkL2ZpbHRlcnMnO1xuXG5pbXBvcnQgeyBFc29sdmVNZWRpYVN0b2NrSXRlbVJlY29yZCwgRXNvbHZlTWVkaWFTdG9ja0l0ZW1MaXN0IH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQge1xuICAgIEVzb2x2ZVN0b2NrUmVjb3JkLFxuICAgIEVzb2x2ZVN0b2NrSXRlbU9wdGlvbnMsXG4gICAgRXNvbHZlUmVjaXBlSXRlbVJlY29yZCxcbiAgICBFc29sdmVMaW5rZWRTdG9ja1JlY29yZCxcbiAgICBFc29sdmVSZWNpcGVTdG9ja09wdGlvbnMsXG4gICAgRXNvbHZlTWVkaWFTdG9ja0l0ZW1PcHRpb25zLFxuICAgIEVzb2x2ZVN0b2NrSW1hZ2VDb2xsZWN0aW9uUmVjb3JkLFxuICAgIEVzb2x2ZVN0b2NrRmlsdGVyT3B0aW9ucyxcbn0gZnJvbSAnLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7XG4gICAgRXNvbHZlU3RvY2tJdGVtLFxuICAgIEVzb2x2ZVN0b2NrSXRlbUxpc3QsXG4gICAgRXNvbHZlTWVkaWFTdG9ja0l0ZW0sXG4gICAgRXNvbHZlUmVjaXBlU3RvY2tJdGVtLFxuICAgIEVzb2x2ZUxpbmtlZFN0b2NrSXRlbSxcbiAgICBFc29sdmVTdG9ja0ltYWdlQ29sbGVjdGlvbixcbn0gZnJvbSAnLi9jbGFzc2VzJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgRXNvbHZlU3RvY2tTZXJ2aWNlPFxuICAgIFQgZXh0ZW5kcyBFc29sdmVDdXN0b21GaWVsZHMgPSBFc29sdmVDdXN0b21GaWVsZHMsXG4+IHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChFU09MVkVfQ09OTkVDVF9DT05GSUcpIHByaXZhdGUgY29uZmlnOiBFc29sdmVDb25uZWN0Q29uZmlnLFxuICAgICAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgKSB7fVxuXG4gICAgLyoqXG4gICAgICogUmV0cmlldmVzIHRoZSBzdG9jayByZWNvcmQgZnJvbSB0aGUgZVNvbHZlIGluc3RhbmNlIHVzaW5nIHRoZSBjb2RlLlxuICAgICAqXG4gICAgICogQHBhcmFtIGNvZGUgZVNvbHZlIHN0b2NrIGNvZGVcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0U3RvY2tJdGVtKGNvZGU6IHN0cmluZyk6IE9ic2VydmFibGU8RXNvbHZlU3RvY2tJdGVtPFQ+PiB7XG4gICAgICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKHtcbiAgICAgICAgICAgIGZyb21PYmplY3Q6IHtcbiAgICAgICAgICAgICAgICBjb2RlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0U3RvY2tSZWNvcmRzKHBhcmFtcykucGlwZShcbiAgICAgICAgICAgIG1hcCgocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLnJlY29yZHMgPT09IHVuZGVmaW5lZCB8fFxuICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5yZWNvcmRzLmxlbmd0aCA8PSAwXG4gICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGNvbnN0IHN0b2NrUmVjb3JkID0gcmVzcG9uc2UucmVjb3Jkc1swXTtcblxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnByb2Nlc3NTdG9ja0l0ZW0oc3RvY2tSZWNvcmQpO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0cmlldmVzIHRoZSBzdG9jayByZWNvcmQgZnJvbSB0aGUgZVNvbHZlIGluc3RhbmNlIHVzaW5nIHRoZSBTRUYgbmFtZS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBzZWZfbmFtZSBTRUYgbmFtZSBvZiB0aGUgc3RvY2sgaXRlbVxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRTdG9ja0l0ZW1Gcm9tU0VGKFxuICAgICAgICBzZWZfbmFtZTogc3RyaW5nLFxuICAgICk6IE9ic2VydmFibGU8RXNvbHZlU3RvY2tJdGVtPFQ+PiB7XG4gICAgICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKHtcbiAgICAgICAgICAgIGZyb21PYmplY3Q6IHtcbiAgICAgICAgICAgICAgICBzZWZfbmFtZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmdldFN0b2NrUmVjb3JkcyhwYXJhbXMpLnBpcGUoXG4gICAgICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5yZWNvcmRzID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2UucmVjb3Jkcy5sZW5ndGggPD0gMFxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyByZXNwb25zZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBjb25zdCBzdG9ja1JlY29yZCA9IHJlc3BvbnNlLnJlY29yZHNbMF07XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzU3RvY2tJdGVtKHN0b2NrUmVjb3JkKTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHJpZXZlcyBsaXN0IG9mIHN0b2NrIGZyb20gdGhlIGVTb2x2ZSBpbnN0YW5jZSB1c2luZyBpbmZvIHByb3ZpZGVkXG4gICAgICpcbiAgICAgKiBAcGFyYW0gb3B0aW9ucyBTdG9jayBmaWx0ZXIgb3B0aW9uc1xuICAgICAqL1xuICAgIHB1YmxpYyBnZXRTdG9ja0l0ZW1zKFxuICAgICAgICBvcHRpb25zOiBFc29sdmVTdG9ja0l0ZW1PcHRpb25zLFxuICAgICk6IE9ic2VydmFibGU8RXNvbHZlU3RvY2tJdGVtTGlzdDxUPj4ge1xuICAgICAgICBsZXQgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKTtcblxuICAgICAgICBpZiAob3B0aW9ucy5wYWdlKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdwYWdlJywgb3B0aW9ucy5wYWdlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcHRpb25zLnJvd3MpIHtcbiAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3Jvd3MnLCBvcHRpb25zLnJvd3MpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wdGlvbnMuc29ydCkge1xuICAgICAgICAgICAgY29uc3Qgc29ydCA9IG9wdGlvbnMuc29ydDtcblxuICAgICAgICAgICAgaWYgKHNvcnQuZmllbGQpIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdzb3J0Jywgc29ydC5maWVsZCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChzb3J0Lm9yZGVyKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnb3JkZXInLCBzb3J0Lm9yZGVyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcHRpb25zLnNlYXJjaF9waHJhc2UpIHtcbiAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3NlYXJjaF9waHJhc2UnLCBvcHRpb25zLnNlYXJjaF9waHJhc2UpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wdGlvbnMuZGlzcGxheV9vbmx5KSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdkaXNwbGF5X29ubHknLCBvcHRpb25zLmRpc3BsYXlfb25seSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9ucy5pc19hY3RpdmUpIHtcbiAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ2lzX2FjdGl2ZScsIG9wdGlvbnMuaXNfYWN0aXZlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcHRpb25zLmNhdGVnb3J5X2lkKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdjYXRlZ29yeV9pZCcsIG9wdGlvbnMuY2F0ZWdvcnlfaWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wdGlvbnMuc3ViY2F0ZWdvcnlfaWQpIHtcbiAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3N1YmNhdGVnb3J5X2lkJywgb3B0aW9ucy5zdWJjYXRlZ29yeV9pZCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9ucy5tYW51ZmFjdHVyZXJzX2lkKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdtYW51ZmFjdHVyZXJzX2lkJywgb3B0aW9ucy5tYW51ZmFjdHVyZXJzX2lkKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcHRpb25zLnJhbmdlc19pZCkge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgncmFuZ2VzX2lkJywgb3B0aW9ucy5yYW5nZXNfaWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wdGlvbnMuc3BlY2lhbHNfaWQpIHtcbiAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3NwZWNpYWxzX2lkJywgb3B0aW9ucy5zcGVjaWFsc19pZCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9ucy50YWdfaWRfbGlzdCAmJiBvcHRpb25zLnRhZ19pZF9saXN0Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3RhZ19pZCcsIG9wdGlvbnMudGFnX2lkX2xpc3Quam9pbignLCcpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcHRpb25zLnRvcGljX2lkX2xpc3QgJiYgb3B0aW9ucy50b3BpY19pZF9saXN0Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3RvcGljX2lkJywgb3B0aW9ucy50b3BpY19pZF9saXN0LmpvaW4oJywnKSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9ucy5maWx0ZXJzKSB7XG4gICAgICAgICAgICBsZXQgZmlsdGVycyA9IG9wdGlvbnMuZmlsdGVycztcblxuICAgICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGZpbHRlcnMpKSB7XG4gICAgICAgICAgICAgICAgZmlsdGVycyA9IEVzb2x2ZUZpbHRlckZhY3RvcnkuY292ZXJ0RnJvbU9iaihmaWx0ZXJzKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcGFyYW1zID0gRXNvbHZlRmlsdGVyRmFjdG9yeS5jb252ZXJ0VG9IdHRwUGFyYW1zKGZpbHRlcnMsIHBhcmFtcyk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5nZXRTdG9ja1JlY29yZHMocGFyYW1zKS5waXBlKFxuICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2UucmVjb3JkcyA9PT0gdW5kZWZpbmVkIHx8XG4gICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLnJlY29yZHMubGVuZ3RoIDw9IDBcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgcmVzcG9uc2U7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3Qgc3RvY2tJdGVtczogRXNvbHZlU3RvY2tJdGVtPFQ+W10gPSBbXTtcblxuICAgICAgICAgICAgICAgIHJlc3BvbnNlLnJlY29yZHMuZm9yRWFjaCgoc3RvY2tSZWNvcmQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgc3RvY2tJdGVtcy5wdXNoKHRoaXMucHJvY2Vzc1N0b2NrSXRlbShzdG9ja1JlY29yZCkpO1xuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBFc29sdmVTdG9ja0l0ZW1MaXN0KFxuICAgICAgICAgICAgICAgICAgICBzdG9ja0l0ZW1zLFxuICAgICAgICAgICAgICAgICAgICArcmVzcG9uc2UuYWRkaXRpb25hbF9kYXRhLnRvdGFsX3JlY29yZHMsXG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbnMucGFnZSA/PyAwLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZXMgbGlzdCBvZiBzdG9jayBmcm9tIHRoZSBlU29sdmUgaW5zdGFuY2UgdXNpbmcgaW5mbyBwcm92aWRlZFxuICAgICAqXG4gICAgICogQHBhcmFtIG9wdGlvbnMgU3RvY2sgZmlsdGVyIG9wdGlvbnNcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0U3RvY2tJdGVtc1RyYW5zYWN0aW9uSGlzdG9yeShcbiAgICAgICAgb3B0aW9uczogRXNvbHZlU3RvY2tJdGVtT3B0aW9ucyxcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZVN0b2NrSXRlbUxpc3Q8VD4+IHtcbiAgICAgICAgbGV0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKCk7XG5cbiAgICAgICAgaWYgKG9wdGlvbnMucGFnZSkge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgncGFnZScsIG9wdGlvbnMucGFnZSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9ucy5yb3dzKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdyb3dzJywgb3B0aW9ucy5yb3dzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcHRpb25zLnNvcnQpIHtcbiAgICAgICAgICAgIGNvbnN0IHNvcnQgPSBvcHRpb25zLnNvcnQ7XG5cbiAgICAgICAgICAgIGlmIChzb3J0LmZpZWxkKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnc29ydCcsIHNvcnQuZmllbGQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoc29ydC5vcmRlcikge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ29yZGVyJywgc29ydC5vcmRlcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9ucy5zZWFyY2hfcGhyYXNlKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdzZWFyY2hfcGhyYXNlJywgb3B0aW9ucy5zZWFyY2hfcGhyYXNlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcHRpb25zLmRpc3BsYXlfb25seSkge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnZGlzcGxheV9vbmx5Jywgb3B0aW9ucy5kaXNwbGF5X29ubHkpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wdGlvbnMuaXNfYWN0aXZlKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdpc19hY3RpdmUnLCBvcHRpb25zLmlzX2FjdGl2ZSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9ucy5jYXRlZ29yeV9pZCkge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnY2F0ZWdvcnlfaWQnLCBvcHRpb25zLmNhdGVnb3J5X2lkKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcHRpb25zLnN1YmNhdGVnb3J5X2lkKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdzdWJjYXRlZ29yeV9pZCcsIG9wdGlvbnMuc3ViY2F0ZWdvcnlfaWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wdGlvbnMubWFudWZhY3R1cmVyc19pZCkge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnbWFudWZhY3R1cmVyc19pZCcsIG9wdGlvbnMubWFudWZhY3R1cmVyc19pZCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9ucy5yYW5nZXNfaWQpIHtcbiAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3Jhbmdlc19pZCcsIG9wdGlvbnMucmFuZ2VzX2lkKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcHRpb25zLnNwZWNpYWxzX2lkKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdzcGVjaWFsc19pZCcsIG9wdGlvbnMuc3BlY2lhbHNfaWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wdGlvbnMudGFnX2lkX2xpc3QgJiYgb3B0aW9ucy50YWdfaWRfbGlzdC5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCd0YWdfaWQnLCBvcHRpb25zLnRhZ19pZF9saXN0LmpvaW4oJywnKSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9ucy50b3BpY19pZF9saXN0ICYmIG9wdGlvbnMudG9waWNfaWRfbGlzdC5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCd0b3BpY19pZCcsIG9wdGlvbnMudG9waWNfaWRfbGlzdC5qb2luKCcsJykpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wdGlvbnMuZmlsdGVycykge1xuICAgICAgICAgICAgbGV0IGZpbHRlcnMgPSBvcHRpb25zLmZpbHRlcnM7XG5cbiAgICAgICAgICAgIGlmICghQXJyYXkuaXNBcnJheShmaWx0ZXJzKSkge1xuICAgICAgICAgICAgICAgIGZpbHRlcnMgPSBFc29sdmVGaWx0ZXJGYWN0b3J5LmNvdmVydEZyb21PYmooZmlsdGVycyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHBhcmFtcyA9IEVzb2x2ZUZpbHRlckZhY3RvcnkuY29udmVydFRvSHR0cFBhcmFtcyhmaWx0ZXJzLCBwYXJhbXMpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0U3RvY2tIaXN0b3J5UmVjb3JkcyhwYXJhbXMpLnBpcGUoXG4gICAgICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5yZWNvcmRzID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2UucmVjb3Jkcy5sZW5ndGggPD0gMFxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyByZXNwb25zZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBjb25zdCBzdG9ja0l0ZW1zOiBFc29sdmVTdG9ja0l0ZW08VD5bXSA9IFtdO1xuXG4gICAgICAgICAgICAgICAgcmVzcG9uc2UucmVjb3Jkcy5mb3JFYWNoKChzdG9ja1JlY29yZCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBzdG9ja0l0ZW1zLnB1c2godGhpcy5wcm9jZXNzU3RvY2tJdGVtKHN0b2NrUmVjb3JkKSk7XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IEVzb2x2ZVN0b2NrSXRlbUxpc3QoXG4gICAgICAgICAgICAgICAgICAgIHN0b2NrSXRlbXMsXG4gICAgICAgICAgICAgICAgICAgICtyZXNwb25zZS5hZGRpdGlvbmFsX2RhdGEudG90YWxfcmVjb3JkcyxcbiAgICAgICAgICAgICAgICAgICAgb3B0aW9ucy5wYWdlID8/IDAsXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHJpZXZlIGxpc3Qgb2Ygc3RvY2sgaXRlbXMgbGlua2VkIHRvIGEgc3RvY2sgaXRlbSBmcm9tIHRoZSBlU29sdmUgQVBJXG4gICAgICpcbiAgICAgKiBAcGFyYW0gY29kZSBTdG9jayBpdGVtIGNvZGVcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0TGlua2VkSXRlbXMoXG4gICAgICAgIGNvZGU6IHN0cmluZyxcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZUxpbmtlZFN0b2NrSXRlbTxUPltdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgIC5nZXQ8RXNvbHZlR2V0UmVzcG9uc2U8RXNvbHZlTGlua2VkU3RvY2tSZWNvcmQ8VD5bXT4+KFxuICAgICAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L2dldC1saW5rZWQtaXRlbXMucGhwYCxcbiAgICAgICAgICAgICAgICB7IHBhcmFtczogeyBjb2RlIH0gfSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcCgocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2UucmVjb3JkcyA9PT0gdW5kZWZpbmVkIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5yZWNvcmRzLmxlbmd0aCA8PSAwXG4gICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgcmVzcG9uc2U7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzTGlua2VkSXRlbXMocmVzcG9uc2UucmVjb3Jkcyk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHJpZXZlIGxpc3Qgb2Ygc3RvY2sgaXRlbXMgb24gYSByZWNpcGUgZnJvbSB0aGUgZVNvbHZlIEFQSVxuICAgICAqXG4gICAgICogQHBhcmFtIGNvZGUgU3RvY2sgaXRlbSBjb2RlXG4gICAgICovXG4gICAgcHVibGljIGdldFJlY2lwZUl0ZW1zKFxuICAgICAgICBjb2RlOiBzdHJpbmcsXG4gICAgICAgIG9wdGlvbnM/OiBFc29sdmVSZWNpcGVTdG9ja09wdGlvbnMsXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVSZWNpcGVTdG9ja0l0ZW08VD5bXT4ge1xuICAgICAgICBsZXQgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2NvZGUnLCBjb2RlKTtcblxuICAgICAgICBpZiAob3B0aW9ucykge1xuICAgICAgICAgICAgaWYgKG9wdGlvbnMucGFnZSkge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3BhZ2UnLCBvcHRpb25zLnBhZ2UpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy5yb3dzKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgncm93cycsIG9wdGlvbnMucm93cyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChvcHRpb25zLnNvcnQpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBzb3J0ID0gb3B0aW9ucy5zb3J0O1xuXG4gICAgICAgICAgICAgICAgaWYgKHNvcnQuZmllbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnc29ydCcsIHNvcnQuZmllbGQpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmIChzb3J0Lm9yZGVyKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ29yZGVyJywgc29ydC5vcmRlcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgICAgICAgLmdldDxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVSZWNpcGVJdGVtUmVjb3JkPFQ+W10+PihcbiAgICAgICAgICAgICAgICBgJHt0aGlzLmNvbmZpZy5hcGlfdXJsfS9nZXQtcmVjaXBlLWl0ZW1zLnBocGAsXG4gICAgICAgICAgICAgICAgeyBwYXJhbXMgfSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcCgocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2UucmVjb3JkcyA9PT0gdW5kZWZpbmVkIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5yZWNvcmRzLmxlbmd0aCA8PSAwXG4gICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgcmVzcG9uc2U7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzUmVjaXBlSXRlbXMocmVzcG9uc2UucmVjb3Jkcyk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHJpZXZlIGxpc3Qgb2Ygc3RvY2sgaXRlbXMgbGlua2VkIHRvIGEgc3RvY2sgaXRlbSBmcm9tIHRoZSBlU29sdmUgQVBJXG4gICAgICpcbiAgICAgKiBAcGFyYW0gb3B0aW9ucyBGaWx0ZXIgb3B0aW9uc1xuICAgICAqL1xuICAgIHB1YmxpYyBnZXRNZWRpYUxpbmtlZEl0ZW1zKFxuICAgICAgICBvcHRpb25zOiBFc29sdmVNZWRpYVN0b2NrSXRlbU9wdGlvbnMsXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVNZWRpYVN0b2NrSXRlbUxpc3Q8VD4+IHtcbiAgICAgICAgbGV0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKHtcbiAgICAgICAgICAgIGZyb21PYmplY3Q6IHtcbiAgICAgICAgICAgICAgICByb3dzOiBvcHRpb25zLnJvd3MgPz8gMCxcbiAgICAgICAgICAgICAgICBwYWdlOiBvcHRpb25zLnBhZ2UgPz8gMCxcbiAgICAgICAgICAgICAgICByYW5nZXNfaWQ6IG9wdGlvbnMucmFuZ2VzX2lkID8/IDAsXG4gICAgICAgICAgICAgICAgbWFudWZhY3R1cmVyc19pZDogb3B0aW9ucy5tYW51ZmFjdHVyZXJzX2lkID8/IDAsXG4gICAgICAgICAgICAgICAgZGlzcGxheV9vbmx5OiBvcHRpb25zLmRpc3BsYXlfb25seSA/PyBmYWxzZSxcbiAgICAgICAgICAgICAgICBpc19hY3RpdmU6IG9wdGlvbnMuaXNfYWN0aXZlID8/IHRydWUsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcblxuICAgICAgICBpZiAob3B0aW9ucy5zb3J0KSB7XG4gICAgICAgICAgICBjb25zdCBzb3J0ID0gb3B0aW9ucy5zb3J0O1xuXG4gICAgICAgICAgICBpZiAoc29ydC5maWVsZCkge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3NvcnQnLCBzb3J0LmZpZWxkKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHNvcnQub3JkZXIpIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdvcmRlcicsIHNvcnQub3JkZXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wdGlvbnMubWVkaWFfaWRlbnRpZmllcikge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLmFwcGVuZChcbiAgICAgICAgICAgICAgICAnbWVkaWFfaWRlbnRpZmllcicsXG4gICAgICAgICAgICAgICAgb3B0aW9ucy5tZWRpYV9pZGVudGlmaWVyLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcHRpb25zLm1lZGlhX2lkKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCdtZWRpYV9pZCcsIG9wdGlvbnMubWVkaWFfaWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgICAgICAgLmdldDxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVNZWRpYVN0b2NrSXRlbVJlY29yZDxUPltdPj4oXG4gICAgICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vZ2V0LW1lZGlhLWxpbmtlZC1pdGVtcy5waHBgLFxuICAgICAgICAgICAgICAgIHsgcGFyYW1zIH0sXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLnJlY29yZHMgPT09IHVuZGVmaW5lZCB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2UucmVjb3Jkcy5sZW5ndGggPD0gMFxuICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaXRlbXMgPSB0aGlzLnByb2Nlc3NNZWRpYVN0b2NrSXRlbXMocmVzcG9uc2UucmVjb3Jkcyk7XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBFc29sdmVMaXN0KFxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXMsXG4gICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zLnBhZ2UsXG4gICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zLnJvd3MsXG4gICAgICAgICAgICAgICAgICAgICAgICArcmVzcG9uc2UuYWRkaXRpb25hbF9kYXRhLnRvdGFsX3JlY29yZHMsXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHJpZXZlcyB0aGUgZnVsbCBpbWFnZSBjb2xsZWN0aW9uIG9mIGEgc3RvY2sgaXRlbVxuICAgICAqXG4gICAgICogQHBhcmFtIGNvZGUgU3RvY2sgaXRlbSBjb2RlXG4gICAgICovXG4gICAgcHVibGljIGdldFN0b2NrSW1hZ2VDb2xsZWN0aW9uKFxuICAgICAgICBjb2RlOiBzdHJpbmcsXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVTdG9ja0ltYWdlQ29sbGVjdGlvbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAgICAgICAuZ2V0PEVzb2x2ZUdldFJlc3BvbnNlPEVzb2x2ZVN0b2NrSW1hZ2VDb2xsZWN0aW9uUmVjb3JkPj4oXG4gICAgICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vZ2V0LWl0ZW0taW1hZ2UtY29sbGVjdGlvbi5waHBgLFxuICAgICAgICAgICAgICAgIHsgcGFyYW1zOiB7IGNvZGUgfSB9LFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5yZWNvcmRzID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgIEFycmF5LmlzQXJyYXkocmVzcG9uc2UucmVjb3JkcylcbiAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyByZXNwb25zZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGNvbGxlY3Rpb24gPSBuZXcgRXNvbHZlU3RvY2tJbWFnZUNvbGxlY3Rpb24oXG4gICAgICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5yZWNvcmRzLFxuICAgICAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBjb2xsZWN0aW9uO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0U3RvY2tGaWx0ZXJzKFxuICAgICAgICBvcHRpb25zOiBFc29sdmVTdG9ja0ZpbHRlck9wdGlvbnMsXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVGaWx0ZXJMaXN0PiB7XG4gICAgICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKHtcbiAgICAgICAgICAgIGZyb21PYmplY3Q6IHtcbiAgICAgICAgICAgICAgICBjYXRlZ29yeV9pZDogb3B0aW9ucy5jYXRlZ29yeV9pZCA/PyAnJyxcbiAgICAgICAgICAgICAgICBzdWJjYXRlZ29yeV9pZDogb3B0aW9ucy5zdWJjYXRlZ29yeV9pZCA/PyAwLFxuICAgICAgICAgICAgICAgIHJhbmdlc19pZDogb3B0aW9ucy5yYW5nZXNfaWQgPz8gMCxcbiAgICAgICAgICAgICAgICBtYW51ZmFjdHVyZXJzX2lkOiBvcHRpb25zLm1hbnVmYWN0dXJlcnNfaWQgPz8gMCxcbiAgICAgICAgICAgICAgICBzcGVjaWFsc19pZDogb3B0aW9ucy5zcGVjaWFsc19pZCA/PyAwLFxuICAgICAgICAgICAgICAgIGZpZWxkczogb3B0aW9ucy5maWVsZHMuam9pbignLCcpLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgICAgICAgLmdldDxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVGaWx0ZXJSZWNvcmRMaXN0Pj4oXG4gICAgICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vZ2V0LWl0ZW0tZmlsdGVycy5waHBgLFxuICAgICAgICAgICAgICAgIHsgcGFyYW1zIH0sXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5yZWNvcmRzID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZmlsdGVycyA9IFtdO1xuXG4gICAgICAgICAgICAgICAgICAgIGZvciAoY29uc3QgcmVjb3JkIG9mIHJlc3BvbnNlLnJlY29yZHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBmaWx0ZXIgPSBudWxsO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVjb3JkLnR5cGUgPT09ICdyYW5nZScpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXIgPSBuZXcgRXNvbHZlUmFuZ2VGaWx0ZXIoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlY29yZC5maWVsZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgK3JlY29yZC5taW4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICtyZWNvcmQubWF4LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHJlY29yZC50eXBlID09PSAnc2luZ2xlJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlciA9IG5ldyBFc29sdmVTaW5nbGVTZWxlY3RGaWx0ZXIoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlY29yZC5maWVsZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVjb3JkLnZhbHVlcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChyZWNvcmQudHlwZSA9PT0gJ211bHRpcGxlJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlciA9IG5ldyBFc29sdmVNdWx0aXBsZVNlbGVjdEZpbHRlcihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVjb3JkLmZpZWxkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWNvcmQudmFsdWVzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChmaWx0ZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXJzLnB1c2goZmlsdGVyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmaWx0ZXJzO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcm9jZXNzZXMgdGhlIGVTb2x2ZSBzdG9jayBpdGVtIHJlY29yZCBhbmQgY29udmVydHMgaXQgdG8gYW4gb2JqZWN0LlxuICAgICAqXG4gICAgICogQHBhcmFtIHJlY29yZCBlU29sdmUgc3RvY2sgaXRlbSByZWNvcmRcbiAgICAgKi9cbiAgICBwcml2YXRlIHByb2Nlc3NTdG9ja0l0ZW0ocmVjb3JkOiBFc29sdmVTdG9ja1JlY29yZDxUPik6IEVzb2x2ZVN0b2NrSXRlbTxUPiB7XG4gICAgICAgIHJldHVybiBuZXcgRXNvbHZlU3RvY2tJdGVtPFQ+KHJlY29yZCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJvY2Vzc2VzIHRoZSBsaW5rZWQgZVNvbHZlIHN0b2NrIGl0ZW0gcmVjb3JkcyBhbmQgY29udmVydHMgdGhlbSB0byBvYmplY3RzLlxuICAgICAqXG4gICAgICogQHBhcmFtIHJlY29yZHMgTGlua2VkIGVTb2x2ZSBzdG9jayBpdGVtIHJlY29yZHNcbiAgICAgKi9cbiAgICBwcml2YXRlIHByb2Nlc3NMaW5rZWRJdGVtcyhcbiAgICAgICAgcmVjb3JkczogRXNvbHZlTGlua2VkU3RvY2tSZWNvcmQ8VD5bXSxcbiAgICApOiBFc29sdmVMaW5rZWRTdG9ja0l0ZW08VD5bXSB7XG4gICAgICAgIGNvbnN0IGl0ZW1zOiBFc29sdmVMaW5rZWRTdG9ja0l0ZW08VD5bXSA9IFtdO1xuXG4gICAgICAgIGlmIChyZWNvcmRzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGZvciAoY29uc3QgcmVjb3JkIG9mIHJlY29yZHMpIHtcbiAgICAgICAgICAgICAgICBpdGVtcy5wdXNoKG5ldyBFc29sdmVMaW5rZWRTdG9ja0l0ZW08VD4ocmVjb3JkKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaXRlbXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJvY2Vzc2VzIHRoZSByZWNpcGUgZVNvbHZlIHN0b2NrIGl0ZW0gcmVjb3JkcyBhbmQgY29udmVydHMgdGhlbSB0byBvYmplY3RzLlxuICAgICAqXG4gICAgICogQHBhcmFtIHJlY29yZHMgUmVjaXBlIGVTb2x2ZSBzdG9jayBpdGVtIHJlY29yZHNcbiAgICAgKi9cbiAgICBwcml2YXRlIHByb2Nlc3NSZWNpcGVJdGVtcyhcbiAgICAgICAgcmVjb3JkczogRXNvbHZlUmVjaXBlSXRlbVJlY29yZDxUPltdLFxuICAgICk6IEVzb2x2ZVJlY2lwZVN0b2NrSXRlbTxUPltdIHtcbiAgICAgICAgY29uc3QgaXRlbXM6IEVzb2x2ZVJlY2lwZVN0b2NrSXRlbTxUPltdID0gW107XG5cbiAgICAgICAgaWYgKHJlY29yZHMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgZm9yIChjb25zdCByZWNvcmQgb2YgcmVjb3Jkcykge1xuICAgICAgICAgICAgICAgIGl0ZW1zLnB1c2gobmV3IEVzb2x2ZVJlY2lwZVN0b2NrSXRlbTxUPihyZWNvcmQpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBpdGVtcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcm9jZXNzZXMgdGhlIGxpbmtlZCBlU29sdmUgc3RvY2sgaXRlbSByZWNvcmRzIGFuZCBjb252ZXJ0cyB0aGVtIHRvIG9iamVjdHMuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcmVjb3JkcyBMaW5rZWQgZVNvbHZlIHN0b2NrIGl0ZW0gcmVjb3Jkc1xuICAgICAqL1xuICAgIHByaXZhdGUgcHJvY2Vzc01lZGlhU3RvY2tJdGVtcyhcbiAgICAgICAgcmVjb3JkczogRXNvbHZlTWVkaWFTdG9ja0l0ZW1SZWNvcmQ8VD5bXSxcbiAgICApOiBFc29sdmVNZWRpYVN0b2NrSXRlbTxUPltdIHtcbiAgICAgICAgY29uc3QgaXRlbXM6IEVzb2x2ZU1lZGlhU3RvY2tJdGVtPFQ+W10gPSBbXTtcblxuICAgICAgICBpZiAocmVjb3Jkcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IHJlY29yZCBvZiByZWNvcmRzKSB7XG4gICAgICAgICAgICAgICAgaXRlbXMucHVzaChuZXcgRXNvbHZlTWVkaWFTdG9ja0l0ZW08VD4ocmVjb3JkKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaXRlbXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0cmlldmVzIHN0b2NrIHJlY29yZHMgZnJvbSBIVFRQIHBhcmFtcy5cbiAgICAgKiBAcGFyYW0gcGFyYW1zIEhUVFAgY2xpZW50IHBhcmFtZXRlcnNcbiAgICAgKi9cbiAgICBwcml2YXRlIGdldFN0b2NrUmVjb3JkcyhcbiAgICAgICAgcGFyYW1zOiBIdHRwUGFyYW1zLFxuICAgICk6IE9ic2VydmFibGU8RXNvbHZlR2V0UmVzcG9uc2U8RXNvbHZlU3RvY2tSZWNvcmQ8VD5bXT4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8RXNvbHZlR2V0UmVzcG9uc2U8RXNvbHZlU3RvY2tSZWNvcmQ8VD5bXT4+KFxuICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vZ2V0LWl0ZW1zLnBocGAsXG4gICAgICAgICAgICB7IHBhcmFtcyB9LFxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHJpZXZlcyBzdG9jayB0cmFuc2FjdGlvbiBoaXN0b3J5IHJlY29yZHMgZnJvbSBIVFRQIHBhcmFtcy5cbiAgICAgKiBAcGFyYW0gcGFyYW1zIEhUVFAgY2xpZW50IHBhcmFtZXRlcnNcbiAgICAgKi9cbiAgICBwcml2YXRlIGdldFN0b2NrSGlzdG9yeVJlY29yZHMoXG4gICAgICAgIHBhcmFtczogSHR0cFBhcmFtcyxcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZUdldFJlc3BvbnNlPEVzb2x2ZVN0b2NrUmVjb3JkPFQ+W10+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEVzb2x2ZUdldFJlc3BvbnNlPEVzb2x2ZVN0b2NrUmVjb3JkPFQ+W10+PihcbiAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L2dldC1pdGVtcy10cmFuc2FjdGlvbi1oaXN0b3J5LnBocGAsXG4gICAgICAgICAgICB7IHBhcmFtcyB9LFxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
415
+ }], ctorParameters: function () { return [{ type: i1.EsolveConfigService }, { type: i2.HttpClient }]; } });
416
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXN0b2NrLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvc3RvY2svZXNvbHZlLXN0b2NrLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRzlELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFOUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBR3pELE9BQU8sRUFDSCxtQkFBbUIsRUFHbkIsMEJBQTBCLEVBQzFCLGlCQUFpQixFQUNqQix3QkFBd0IsR0FDM0IsTUFBTSxtQkFBbUIsQ0FBQztBQWEzQixPQUFPLEVBQ0gsZUFBZSxFQUNmLG1CQUFtQixFQUNuQixvQkFBb0IsRUFDcEIscUJBQXFCLEVBQ3JCLHFCQUFxQixFQUNyQiwwQkFBMEIsR0FDN0IsTUFBTSxXQUFXLENBQUM7Ozs7QUFLbkIsTUFBTSxPQUFPLGtCQUFrQjtJQUczQixZQUNZLE1BQTJCLEVBQzNCLElBQWdCO1FBRGhCLFdBQU0sR0FBTixNQUFNLENBQXFCO1FBQzNCLFNBQUksR0FBSixJQUFJLENBQVk7SUFDekIsQ0FBQztJQUVKOzs7O09BSUc7SUFDSSxZQUFZLENBQUMsSUFBWTtRQUM1QixNQUFNLE1BQU0sR0FBRyxJQUFJLFVBQVUsQ0FBQztZQUMxQixVQUFVLEVBQUU7Z0JBQ1IsSUFBSTthQUNQO1NBQ0osQ0FBQyxDQUFDO1FBRUgsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FDcEMsR0FBRyxDQUFDLENBQUMsUUFB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Q0FBSSxNQUFNLENBQUMsQ0FBQyxDQUFDO2FBQ3BEO1NBQ0o7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLHNCQUFzQixDQUMxQixPQUF3QztRQUV4QyxNQUFNLEtBQUssR0FBOEIsRUFBRSxDQUFDO1FBRTVDLElBQUksT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDcEIsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUU7Z0JBQzFCLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxvQkFBb0IsQ0FBSSxNQUFNLENBQUMsQ0FBQyxDQUFDO2FBQ25EO1NBQ0o7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ssZUFBZSxDQUNuQixNQUFrQjtRQUVsQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUNoQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxnQkFBZ0IsRUFDdEMsRUFBRSxNQUFNLEVBQUUsQ0FDYixDQUFDO0lBQ04sQ0FBQztJQUVEOzs7T0FHRztJQUNLLHNCQUFzQixDQUMxQixNQUFrQjtRQUVsQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUNoQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxvQ0FBb0MsRUFDMUQsRUFBRSxNQUFNLEVBQUUsQ0FDYixDQUFDO0lBQ04sQ0FBQzs4R0F4bEJRLGtCQUFrQjtrSEFBbEIsa0JBQWtCLGNBRmYsTUFBTTs7MkZBRVQsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgRXNvbHZlQ29uZmlnU2VydmljZSB9IGZyb20gJy4uL2NvcmUnO1xuXG5pbXBvcnQgeyBFc29sdmVMaXN0IH0gZnJvbSAnLi4vc2hhcmVkL2Vzb2x2ZS1saXN0Lm1vZGVsJztcbmltcG9ydCB7IEVzb2x2ZUdldFJlc3BvbnNlIH0gZnJvbSAnLi4vc2hhcmVkL3Jlc3BvbnNlJztcbmltcG9ydCB7IEVzb2x2ZUN1c3RvbUZpZWxkcyB9IGZyb20gJy4uL3NoYXJlZC9jdXN0b20tZmllbGRzJztcbmltcG9ydCB7XG4gICAgRXNvbHZlRmlsdGVyRmFjdG9yeSxcbiAgICBFc29sdmVGaWx0ZXJMaXN0LFxuICAgIEVzb2x2ZUZpbHRlclJlY29yZExpc3QsXG4gICAgRXNvbHZlTXVsdGlwbGVTZWxlY3RGaWx0ZXIsXG4gICAgRXNvbHZlUmFuZ2VGaWx0ZXIsXG4gICAgRXNvbHZlU2luZ2xlU2VsZWN0RmlsdGVyLFxufSBmcm9tICcuLi9zaGFyZWQvZmlsdGVycyc7XG5cbmltcG9ydCB7IEVzb2x2ZU1lZGlhU3RvY2tJdGVtUmVjb3JkLCBFc29sdmVNZWRpYVN0b2NrSXRlbUxpc3QgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7XG4gICAgRXNvbHZlU3RvY2tSZWNvcmQsXG4gICAgRXNvbHZlU3RvY2tJdGVtT3B0aW9ucyxcbiAgICBFc29sdmVSZWNpcGVJdGVtUmVjb3JkLFxuICAgIEVzb2x2ZUxpbmtlZFN0b2NrUmVjb3JkLFxuICAgIEVzb2x2ZVJlY2lwZVN0b2NrT3B0aW9ucyxcbiAgICBFc29sdmVNZWRpYVN0b2NrSXRlbU9wdGlvbnMsXG4gICAgRXNvbHZlU3RvY2tJbWFnZUNvbGxlY3Rpb25SZWNvcmQsXG4gICAgRXNvbHZlU3RvY2tGaWx0ZXJPcHRpb25zLFxufSBmcm9tICcuL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtcbiAgICBFc29sdmVTdG9ja0l0ZW0sXG4gICAgRXNvbHZlU3RvY2tJdGVtTGlzdCxcbiAgICBFc29sdmVNZWRpYVN0b2NrSXRlbSxcbiAgICBFc29sdmVSZWNpcGVTdG9ja0l0ZW0sXG4gICAgRXNvbHZlTGlua2VkU3RvY2tJdGVtLFxuICAgIEVzb2x2ZVN0b2NrSW1hZ2VDb2xsZWN0aW9uLFxufSBmcm9tICcuL2NsYXNzZXMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBFc29sdmVTdG9ja1NlcnZpY2U8XG4gICAgVCBleHRlbmRzIEVzb2x2ZUN1c3RvbUZpZWxkcyA9IEVzb2x2ZUN1c3RvbUZpZWxkcyxcbj4ge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGNvbmZpZzogRXNvbHZlQ29uZmlnU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgICkge31cblxuICAgIC8qKlxuICAgICAqIFJldHJpZXZlcyB0aGUgc3RvY2sgcmVjb3JkIGZyb20gdGhlIGVTb2x2ZSBpbnN0YW5jZSB1c2luZyB0aGUgY29kZS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBjb2RlIGVTb2x2ZSBzdG9jayBjb2RlXG4gICAgICovXG4gICAgcHVibGljIGdldFN0b2NrSXRlbShjb2RlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEVzb2x2ZVN0b2NrSXRlbTxUPj4ge1xuICAgICAgICBjb25zdCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcyh7XG4gICAgICAgICAgICBmcm9tT2JqZWN0OiB7XG4gICAgICAgICAgICAgICAgY29kZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmdldFN0b2NrUmVjb3JkcyhwYXJhbXMpLnBpcGUoXG4gICAgICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5yZWNvcmRzID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2UucmVjb3Jkcy5sZW5ndGggPD0gMFxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyByZXNwb25zZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBjb25zdCBzdG9ja1JlY29yZCA9IHJlc3BvbnNlLnJlY29yZHNbMF07XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzU3RvY2tJdGVtKHN0b2NrUmVjb3JkKTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHJpZXZlcyB0aGUgc3RvY2sgcmVjb3JkIGZyb20gdGhlIGVTb2x2ZSBpbnN0YW5jZSB1c2luZyB0aGUgU0VGIG5hbWUuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gc2VmX25hbWUgU0VGIG5hbWUgb2YgdGhlIHN0b2NrIGl0ZW1cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0U3RvY2tJdGVtRnJvbVNFRihcbiAgICAgICAgc2VmX25hbWU6IHN0cmluZyxcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZVN0b2NrSXRlbTxUPj4ge1xuICAgICAgICBjb25zdCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcyh7XG4gICAgICAgICAgICBmcm9tT2JqZWN0OiB7XG4gICAgICAgICAgICAgICAgc2VmX25hbWUsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gdGhpcy5nZXRTdG9ja1JlY29yZHMocGFyYW1zKS5waXBlKFxuICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2UucmVjb3JkcyA9PT0gdW5kZWZpbmVkIHx8XG4gICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLnJlY29yZHMubGVuZ3RoIDw9IDBcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgcmVzcG9uc2U7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3Qgc3RvY2tSZWNvcmQgPSByZXNwb25zZS5yZWNvcmRzWzBdO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc1N0b2NrSXRlbShzdG9ja1JlY29yZCk7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZXMgbGlzdCBvZiBzdG9jayBmcm9tIHRoZSBlU29sdmUgaW5zdGFuY2UgdXNpbmcgaW5mbyBwcm92aWRlZFxuICAgICAqXG4gICAgICogQHBhcmFtIG9wdGlvbnMgU3RvY2sgZmlsdGVyIG9wdGlvbnNcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0U3RvY2tJdGVtcyhcbiAgICAgICAgb3B0aW9uczogRXNvbHZlU3RvY2tJdGVtT3B0aW9ucyxcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZVN0b2NrSXRlbUxpc3Q8VD4+IHtcbiAgICAgICAgbGV0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKCk7XG5cbiAgICAgICAgaWYgKG9wdGlvbnMucGFnZSkge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgncGFnZScsIG9wdGlvbnMucGFnZSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9ucy5yb3dzKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdyb3dzJywgb3B0aW9ucy5yb3dzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcHRpb25zLnNvcnQpIHtcbiAgICAgICAgICAgIGNvbnN0IHNvcnQgPSBvcHRpb25zLnNvcnQ7XG5cbiAgICAgICAgICAgIGlmIChzb3J0LmZpZWxkKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnc29ydCcsIHNvcnQuZmllbGQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoc29ydC5vcmRlcikge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ29yZGVyJywgc29ydC5vcmRlcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9ucy5zZWFyY2hfcGhyYXNlKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdzZWFyY2hfcGhyYXNlJywgb3B0aW9ucy5zZWFyY2hfcGhyYXNlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcHRpb25zLmRpc3BsYXlfb25seSkge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnZGlzcGxheV9vbmx5Jywgb3B0aW9ucy5kaXNwbGF5X29ubHkpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wdGlvbnMuaXNfYWN0aXZlKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdpc19hY3RpdmUnLCBvcHRpb25zLmlzX2FjdGl2ZSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9ucy5jYXRlZ29yeV9pZCkge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnY2F0ZWdvcnlfaWQnLCBvcHRpb25zLmNhdGVnb3J5X2lkKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcHRpb25zLnN1YmNhdGVnb3J5X2lkKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdzdWJjYXRlZ29yeV9pZCcsIG9wdGlvbnMuc3ViY2F0ZWdvcnlfaWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wdGlvbnMubWFudWZhY3R1cmVyc19pZCkge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnbWFudWZhY3R1cmVyc19pZCcsIG9wdGlvbnMubWFudWZhY3R1cmVyc19pZCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9ucy5yYW5nZXNfaWQpIHtcbiAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3Jhbmdlc19pZCcsIG9wdGlvbnMucmFuZ2VzX2lkKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcHRpb25zLnNwZWNpYWxzX2lkKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdzcGVjaWFsc19pZCcsIG9wdGlvbnMuc3BlY2lhbHNfaWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wdGlvbnMudGFnX2lkX2xpc3QgJiYgb3B0aW9ucy50YWdfaWRfbGlzdC5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCd0YWdfaWQnLCBvcHRpb25zLnRhZ19pZF9saXN0LmpvaW4oJywnKSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9ucy50b3BpY19pZF9saXN0ICYmIG9wdGlvbnMudG9waWNfaWRfbGlzdC5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCd0b3BpY19pZCcsIG9wdGlvbnMudG9waWNfaWRfbGlzdC5qb2luKCcsJykpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wdGlvbnMuZmlsdGVycykge1xuICAgICAgICAgICAgbGV0IGZpbHRlcnMgPSBvcHRpb25zLmZpbHRlcnM7XG5cbiAgICAgICAgICAgIGlmICghQXJyYXkuaXNBcnJheShmaWx0ZXJzKSkge1xuICAgICAgICAgICAgICAgIGZpbHRlcnMgPSBFc29sdmVGaWx0ZXJGYWN0b3J5LmNvdmVydEZyb21PYmooZmlsdGVycyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHBhcmFtcyA9IEVzb2x2ZUZpbHRlckZhY3RvcnkuY29udmVydFRvSHR0cFBhcmFtcyhmaWx0ZXJzLCBwYXJhbXMpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0U3RvY2tSZWNvcmRzKHBhcmFtcykucGlwZShcbiAgICAgICAgICAgIG1hcCgocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLnJlY29yZHMgPT09IHVuZGVmaW5lZCB8fFxuICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5yZWNvcmRzLmxlbmd0aCA8PSAwXG4gICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGNvbnN0IHN0b2NrSXRlbXM6IEVzb2x2ZVN0b2NrSXRlbTxUPltdID0gW107XG5cbiAgICAgICAgICAgICAgICByZXNwb25zZS5yZWNvcmRzLmZvckVhY2goKHN0b2NrUmVjb3JkKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHN0b2NrSXRlbXMucHVzaCh0aGlzLnByb2Nlc3NTdG9ja0l0ZW0oc3RvY2tSZWNvcmQpKTtcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRXNvbHZlU3RvY2tJdGVtTGlzdChcbiAgICAgICAgICAgICAgICAgICAgc3RvY2tJdGVtcyxcbiAgICAgICAgICAgICAgICAgICAgK3Jlc3BvbnNlLmFkZGl0aW9uYWxfZGF0YS50b3RhbF9yZWNvcmRzLFxuICAgICAgICAgICAgICAgICAgICBvcHRpb25zLnBhZ2UgPz8gMCxcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0cmlldmVzIGxpc3Qgb2Ygc3RvY2sgZnJvbSB0aGUgZVNvbHZlIGluc3RhbmNlIHVzaW5nIGluZm8gcHJvdmlkZWRcbiAgICAgKlxuICAgICAqIEBwYXJhbSBvcHRpb25zIFN0b2NrIGZpbHRlciBvcHRpb25zXG4gICAgICovXG4gICAgcHVibGljIGdldFN0b2NrSXRlbXNUcmFuc2FjdGlvbkhpc3RvcnkoXG4gICAgICAgIG9wdGlvbnM6IEVzb2x2ZVN0b2NrSXRlbU9wdGlvbnMsXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVTdG9ja0l0ZW1MaXN0PFQ+PiB7XG4gICAgICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xuXG4gICAgICAgIGlmIChvcHRpb25zLnBhZ2UpIHtcbiAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3BhZ2UnLCBvcHRpb25zLnBhZ2UpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wdGlvbnMucm93cykge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgncm93cycsIG9wdGlvbnMucm93cyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9ucy5zb3J0KSB7XG4gICAgICAgICAgICBjb25zdCBzb3J0ID0gb3B0aW9ucy5zb3J0O1xuXG4gICAgICAgICAgICBpZiAoc29ydC5maWVsZCkge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3NvcnQnLCBzb3J0LmZpZWxkKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHNvcnQub3JkZXIpIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdvcmRlcicsIHNvcnQub3JkZXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wdGlvbnMuc2VhcmNoX3BocmFzZSkge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnc2VhcmNoX3BocmFzZScsIG9wdGlvbnMuc2VhcmNoX3BocmFzZSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9ucy5kaXNwbGF5X29ubHkpIHtcbiAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ2Rpc3BsYXlfb25seScsIG9wdGlvbnMuZGlzcGxheV9vbmx5KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcHRpb25zLmlzX2FjdGl2ZSkge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnaXNfYWN0aXZlJywgb3B0aW9ucy5pc19hY3RpdmUpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wdGlvbnMuY2F0ZWdvcnlfaWQpIHtcbiAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ2NhdGVnb3J5X2lkJywgb3B0aW9ucy5jYXRlZ29yeV9pZCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9ucy5zdWJjYXRlZ29yeV9pZCkge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnc3ViY2F0ZWdvcnlfaWQnLCBvcHRpb25zLnN1YmNhdGVnb3J5X2lkKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcHRpb25zLm1hbnVmYWN0dXJlcnNfaWQpIHtcbiAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ21hbnVmYWN0dXJlcnNfaWQnLCBvcHRpb25zLm1hbnVmYWN0dXJlcnNfaWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wdGlvbnMucmFuZ2VzX2lkKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdyYW5nZXNfaWQnLCBvcHRpb25zLnJhbmdlc19pZCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9ucy5zcGVjaWFsc19pZCkge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnc3BlY2lhbHNfaWQnLCBvcHRpb25zLnNwZWNpYWxzX2lkKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcHRpb25zLnRhZ19pZF9saXN0ICYmIG9wdGlvbnMudGFnX2lkX2xpc3QubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgndGFnX2lkJywgb3B0aW9ucy50YWdfaWRfbGlzdC5qb2luKCcsJykpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wdGlvbnMudG9waWNfaWRfbGlzdCAmJiBvcHRpb25zLnRvcGljX2lkX2xpc3QubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgndG9waWNfaWQnLCBvcHRpb25zLnRvcGljX2lkX2xpc3Quam9pbignLCcpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcHRpb25zLmZpbHRlcnMpIHtcbiAgICAgICAgICAgIGxldCBmaWx0ZXJzID0gb3B0aW9ucy5maWx0ZXJzO1xuXG4gICAgICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoZmlsdGVycykpIHtcbiAgICAgICAgICAgICAgICBmaWx0ZXJzID0gRXNvbHZlRmlsdGVyRmFjdG9yeS5jb3ZlcnRGcm9tT2JqKGZpbHRlcnMpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwYXJhbXMgPSBFc29sdmVGaWx0ZXJGYWN0b3J5LmNvbnZlcnRUb0h0dHBQYXJhbXMoZmlsdGVycywgcGFyYW1zKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLmdldFN0b2NrSGlzdG9yeVJlY29yZHMocGFyYW1zKS5waXBlKFxuICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2UucmVjb3JkcyA9PT0gdW5kZWZpbmVkIHx8XG4gICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLnJlY29yZHMubGVuZ3RoIDw9IDBcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgcmVzcG9uc2U7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3Qgc3RvY2tJdGVtczogRXNvbHZlU3RvY2tJdGVtPFQ+W10gPSBbXTtcblxuICAgICAgICAgICAgICAgIHJlc3BvbnNlLnJlY29yZHMuZm9yRWFjaCgoc3RvY2tSZWNvcmQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgc3RvY2tJdGVtcy5wdXNoKHRoaXMucHJvY2Vzc1N0b2NrSXRlbShzdG9ja1JlY29yZCkpO1xuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBFc29sdmVTdG9ja0l0ZW1MaXN0KFxuICAgICAgICAgICAgICAgICAgICBzdG9ja0l0ZW1zLFxuICAgICAgICAgICAgICAgICAgICArcmVzcG9uc2UuYWRkaXRpb25hbF9kYXRhLnRvdGFsX3JlY29yZHMsXG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbnMucGFnZSA/PyAwLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZSBsaXN0IG9mIHN0b2NrIGl0ZW1zIGxpbmtlZCB0byBhIHN0b2NrIGl0ZW0gZnJvbSB0aGUgZVNvbHZlIEFQSVxuICAgICAqXG4gICAgICogQHBhcmFtIGNvZGUgU3RvY2sgaXRlbSBjb2RlXG4gICAgICovXG4gICAgcHVibGljIGdldExpbmtlZEl0ZW1zKFxuICAgICAgICBjb2RlOiBzdHJpbmcsXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVMaW5rZWRTdG9ja0l0ZW08VD5bXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAgICAgICAuZ2V0PEVzb2x2ZUdldFJlc3BvbnNlPEVzb2x2ZUxpbmtlZFN0b2NrUmVjb3JkPFQ+W10+PihcbiAgICAgICAgICAgICAgICBgJHt0aGlzLmNvbmZpZy5hcGlfdXJsfS9nZXQtbGlua2VkLWl0ZW1zLnBocGAsXG4gICAgICAgICAgICAgICAgeyBwYXJhbXM6IHsgY29kZSB9IH0sXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLnJlY29yZHMgPT09IHVuZGVmaW5lZCB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2UucmVjb3Jkcy5sZW5ndGggPD0gMFxuICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc0xpbmtlZEl0ZW1zKHJlc3BvbnNlLnJlY29yZHMpO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZSBsaXN0IG9mIHN0b2NrIGl0ZW1zIG9uIGEgcmVjaXBlIGZyb20gdGhlIGVTb2x2ZSBBUElcbiAgICAgKlxuICAgICAqIEBwYXJhbSBjb2RlIFN0b2NrIGl0ZW0gY29kZVxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRSZWNpcGVJdGVtcyhcbiAgICAgICAgY29kZTogc3RyaW5nLFxuICAgICAgICBvcHRpb25zPzogRXNvbHZlUmVjaXBlU3RvY2tPcHRpb25zLFxuICAgICk6IE9ic2VydmFibGU8RXNvbHZlUmVjaXBlU3RvY2tJdGVtPFQ+W10+IHtcbiAgICAgICAgbGV0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKCkuc2V0KCdjb2RlJywgY29kZSk7XG5cbiAgICAgICAgaWYgKG9wdGlvbnMpIHtcbiAgICAgICAgICAgIGlmIChvcHRpb25zLnBhZ2UpIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdwYWdlJywgb3B0aW9ucy5wYWdlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbnMucm93cykge1xuICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3Jvd3MnLCBvcHRpb25zLnJvd3MpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAob3B0aW9ucy5zb3J0KSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc29ydCA9IG9wdGlvbnMuc29ydDtcblxuICAgICAgICAgICAgICAgIGlmIChzb3J0LmZpZWxkKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3NvcnQnLCBzb3J0LmZpZWxkKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoc29ydC5vcmRlcikge1xuICAgICAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdvcmRlcicsIHNvcnQub3JkZXIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgIC5nZXQ8RXNvbHZlR2V0UmVzcG9uc2U8RXNvbHZlUmVjaXBlSXRlbVJlY29yZDxUPltdPj4oXG4gICAgICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vZ2V0LXJlY2lwZS1pdGVtcy5waHBgLFxuICAgICAgICAgICAgICAgIHsgcGFyYW1zIH0sXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLnJlY29yZHMgPT09IHVuZGVmaW5lZCB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2UucmVjb3Jkcy5sZW5ndGggPD0gMFxuICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc1JlY2lwZUl0ZW1zKHJlc3BvbnNlLnJlY29yZHMpO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZSBsaXN0IG9mIHN0b2NrIGl0ZW1zIGxpbmtlZCB0byBhIHN0b2NrIGl0ZW0gZnJvbSB0aGUgZVNvbHZlIEFQSVxuICAgICAqXG4gICAgICogQHBhcmFtIG9wdGlvbnMgRmlsdGVyIG9wdGlvbnNcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0TWVkaWFMaW5rZWRJdGVtcyhcbiAgICAgICAgb3B0aW9uczogRXNvbHZlTWVkaWFTdG9ja0l0ZW1PcHRpb25zLFxuICAgICk6IE9ic2VydmFibGU8RXNvbHZlTWVkaWFTdG9ja0l0ZW1MaXN0PFQ+PiB7XG4gICAgICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcyh7XG4gICAgICAgICAgICBmcm9tT2JqZWN0OiB7XG4gICAgICAgICAgICAgICAgcm93czogb3B0aW9ucy5yb3dzID8/IDAsXG4gICAgICAgICAgICAgICAgcGFnZTogb3B0aW9ucy5wYWdlID8/IDAsXG4gICAgICAgICAgICAgICAgcmFuZ2VzX2lkOiBvcHRpb25zLnJhbmdlc19pZCA/PyAwLFxuICAgICAgICAgICAgICAgIG1hbnVmYWN0dXJlcnNfaWQ6IG9wdGlvbnMubWFudWZhY3R1cmVyc19pZCA/PyAwLFxuICAgICAgICAgICAgICAgIGRpc3BsYXlfb25seTogb3B0aW9ucy5kaXNwbGF5X29ubHkgPz8gZmFsc2UsXG4gICAgICAgICAgICAgICAgaXNfYWN0aXZlOiBvcHRpb25zLmlzX2FjdGl2ZSA/PyB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKG9wdGlvbnMuc29ydCkge1xuICAgICAgICAgICAgY29uc3Qgc29ydCA9IG9wdGlvbnMuc29ydDtcblxuICAgICAgICAgICAgaWYgKHNvcnQuZmllbGQpIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdzb3J0Jywgc29ydC5maWVsZCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChzb3J0Lm9yZGVyKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnb3JkZXInLCBzb3J0Lm9yZGVyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcHRpb25zLm1lZGlhX2lkZW50aWZpZXIpIHtcbiAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5hcHBlbmQoXG4gICAgICAgICAgICAgICAgJ21lZGlhX2lkZW50aWZpZXInLFxuICAgICAgICAgICAgICAgIG9wdGlvbnMubWVkaWFfaWRlbnRpZmllcixcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0aW9ucy5tZWRpYV9pZCkge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLmFwcGVuZCgnbWVkaWFfaWQnLCBvcHRpb25zLm1lZGlhX2lkKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgIC5nZXQ8RXNvbHZlR2V0UmVzcG9uc2U8RXNvbHZlTWVkaWFTdG9ja0l0ZW1SZWNvcmQ8VD5bXT4+KFxuICAgICAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L2dldC1tZWRpYS1saW5rZWQtaXRlbXMucGhwYCxcbiAgICAgICAgICAgICAgICB7IHBhcmFtcyB9LFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5yZWNvcmRzID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLnJlY29yZHMubGVuZ3RoIDw9IDBcbiAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyByZXNwb25zZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5wcm9jZXNzTWVkaWFTdG9ja0l0ZW1zKHJlc3BvbnNlLnJlY29yZHMpO1xuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRXNvbHZlTGlzdChcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zLFxuICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucy5wYWdlLFxuICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucy5yb3dzLFxuICAgICAgICAgICAgICAgICAgICAgICAgK3Jlc3BvbnNlLmFkZGl0aW9uYWxfZGF0YS50b3RhbF9yZWNvcmRzLFxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZXMgdGhlIGZ1bGwgaW1hZ2UgY29sbGVjdGlvbiBvZiBhIHN0b2NrIGl0ZW1cbiAgICAgKlxuICAgICAqIEBwYXJhbSBjb2RlIFN0b2NrIGl0ZW0gY29kZVxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRTdG9ja0ltYWdlQ29sbGVjdGlvbihcbiAgICAgICAgY29kZTogc3RyaW5nLFxuICAgICk6IE9ic2VydmFibGU8RXNvbHZlU3RvY2tJbWFnZUNvbGxlY3Rpb24+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgICAgICAgLmdldDxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVTdG9ja0ltYWdlQ29sbGVjdGlvblJlY29yZD4+KFxuICAgICAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L2dldC1pdGVtLWltYWdlLWNvbGxlY3Rpb24ucGhwYCxcbiAgICAgICAgICAgICAgICB7IHBhcmFtczogeyBjb2RlIH0gfSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcCgocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2UucmVjb3JkcyA9PT0gdW5kZWZpbmVkIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICBBcnJheS5pc0FycmF5KHJlc3BvbnNlLnJlY29yZHMpXG4gICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgcmVzcG9uc2U7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBjb25zdCBjb2xsZWN0aW9uID0gbmV3IEVzb2x2ZVN0b2NrSW1hZ2VDb2xsZWN0aW9uKFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2UucmVjb3JkcyxcbiAgICAgICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gY29sbGVjdGlvbjtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFN0b2NrRmlsdGVycyhcbiAgICAgICAgb3B0aW9uczogRXNvbHZlU3RvY2tGaWx0ZXJPcHRpb25zLFxuICAgICk6IE9ic2VydmFibGU8RXNvbHZlRmlsdGVyTGlzdD4ge1xuICAgICAgICBjb25zdCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcyh7XG4gICAgICAgICAgICBmcm9tT2JqZWN0OiB7XG4gICAgICAgICAgICAgICAgY2F0ZWdvcnlfaWQ6IG9wdGlvbnMuY2F0ZWdvcnlfaWQgPz8gJycsXG4gICAgICAgICAgICAgICAgc3ViY2F0ZWdvcnlfaWQ6IG9wdGlvbnMuc3ViY2F0ZWdvcnlfaWQgPz8gMCxcbiAgICAgICAgICAgICAgICByYW5nZXNfaWQ6IG9wdGlvbnMucmFuZ2VzX2lkID8/IDAsXG4gICAgICAgICAgICAgICAgbWFudWZhY3R1cmVyc19pZDogb3B0aW9ucy5tYW51ZmFjdHVyZXJzX2lkID8/IDAsXG4gICAgICAgICAgICAgICAgc3BlY2lhbHNfaWQ6IG9wdGlvbnMuc3BlY2lhbHNfaWQgPz8gMCxcbiAgICAgICAgICAgICAgICBmaWVsZHM6IG9wdGlvbnMuZmllbGRzLmpvaW4oJywnKSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgIC5nZXQ8RXNvbHZlR2V0UmVzcG9uc2U8RXNvbHZlRmlsdGVyUmVjb3JkTGlzdD4+KFxuICAgICAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L2dldC1pdGVtLWZpbHRlcnMucGhwYCxcbiAgICAgICAgICAgICAgICB7IHBhcmFtcyB9LFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2UucmVjb3JkcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyByZXNwb25zZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGZpbHRlcnMgPSBbXTtcblxuICAgICAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHJlY29yZCBvZiByZXNwb25zZS5yZWNvcmRzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgZmlsdGVyID0gbnVsbDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlY29yZC50eXBlID09PSAncmFuZ2UnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyID0gbmV3IEVzb2x2ZVJhbmdlRmlsdGVyKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWNvcmQuZmllbGQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICtyZWNvcmQubWluLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArcmVjb3JkLm1heCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChyZWNvcmQudHlwZSA9PT0gJ3NpbmdsZScpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXIgPSBuZXcgRXNvbHZlU2luZ2xlU2VsZWN0RmlsdGVyKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWNvcmQuZmllbGQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlY29yZC52YWx1ZXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocmVjb3JkLnR5cGUgPT09ICdtdWx0aXBsZScpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXIgPSBuZXcgRXNvbHZlTXVsdGlwbGVTZWxlY3RGaWx0ZXIoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlY29yZC5maWVsZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVjb3JkLnZhbHVlcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZmlsdGVyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVycy5wdXNoKGZpbHRlcik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmlsdGVycztcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJvY2Vzc2VzIHRoZSBlU29sdmUgc3RvY2sgaXRlbSByZWNvcmQgYW5kIGNvbnZlcnRzIGl0IHRvIGFuIG9iamVjdC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSByZWNvcmQgZVNvbHZlIHN0b2NrIGl0ZW0gcmVjb3JkXG4gICAgICovXG4gICAgcHJpdmF0ZSBwcm9jZXNzU3RvY2tJdGVtKHJlY29yZDogRXNvbHZlU3RvY2tSZWNvcmQ8VD4pOiBFc29sdmVTdG9ja0l0ZW08VD4ge1xuICAgICAgICByZXR1cm4gbmV3IEVzb2x2ZVN0b2NrSXRlbTxUPihyZWNvcmQpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFByb2Nlc3NlcyB0aGUgbGlua2VkIGVTb2x2ZSBzdG9jayBpdGVtIHJlY29yZHMgYW5kIGNvbnZlcnRzIHRoZW0gdG8gb2JqZWN0cy5cbiAgICAgKlxuICAgICAqIEBwYXJhbSByZWNvcmRzIExpbmtlZCBlU29sdmUgc3RvY2sgaXRlbSByZWNvcmRzXG4gICAgICovXG4gICAgcHJpdmF0ZSBwcm9jZXNzTGlua2VkSXRlbXMoXG4gICAgICAgIHJlY29yZHM6IEVzb2x2ZUxpbmtlZFN0b2NrUmVjb3JkPFQ+W10sXG4gICAgKTogRXNvbHZlTGlua2VkU3RvY2tJdGVtPFQ+W10ge1xuICAgICAgICBjb25zdCBpdGVtczogRXNvbHZlTGlua2VkU3RvY2tJdGVtPFQ+W10gPSBbXTtcblxuICAgICAgICBpZiAocmVjb3Jkcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IHJlY29yZCBvZiByZWNvcmRzKSB7XG4gICAgICAgICAgICAgICAgaXRlbXMucHVzaChuZXcgRXNvbHZlTGlua2VkU3RvY2tJdGVtPFQ+KHJlY29yZCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGl0ZW1zO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFByb2Nlc3NlcyB0aGUgcmVjaXBlIGVTb2x2ZSBzdG9jayBpdGVtIHJlY29yZHMgYW5kIGNvbnZlcnRzIHRoZW0gdG8gb2JqZWN0cy5cbiAgICAgKlxuICAgICAqIEBwYXJhbSByZWNvcmRzIFJlY2lwZSBlU29sdmUgc3RvY2sgaXRlbSByZWNvcmRzXG4gICAgICovXG4gICAgcHJpdmF0ZSBwcm9jZXNzUmVjaXBlSXRlbXMoXG4gICAgICAgIHJlY29yZHM6IEVzb2x2ZVJlY2lwZUl0ZW1SZWNvcmQ8VD5bXSxcbiAgICApOiBFc29sdmVSZWNpcGVTdG9ja0l0ZW08VD5bXSB7XG4gICAgICAgIGNvbnN0IGl0ZW1zOiBFc29sdmVSZWNpcGVTdG9ja0l0ZW08VD5bXSA9IFtdO1xuXG4gICAgICAgIGlmIChyZWNvcmRzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGZvciAoY29uc3QgcmVjb3JkIG9mIHJlY29yZHMpIHtcbiAgICAgICAgICAgICAgICBpdGVtcy5wdXNoKG5ldyBFc29sdmVSZWNpcGVTdG9ja0l0ZW08VD4ocmVjb3JkKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaXRlbXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJvY2Vzc2VzIHRoZSBsaW5rZWQgZVNvbHZlIHN0b2NrIGl0ZW0gcmVjb3JkcyBhbmQgY29udmVydHMgdGhlbSB0byBvYmplY3RzLlxuICAgICAqXG4gICAgICogQHBhcmFtIHJlY29yZHMgTGlua2VkIGVTb2x2ZSBzdG9jayBpdGVtIHJlY29yZHNcbiAgICAgKi9cbiAgICBwcml2YXRlIHByb2Nlc3NNZWRpYVN0b2NrSXRlbXMoXG4gICAgICAgIHJlY29yZHM6IEVzb2x2ZU1lZGlhU3RvY2tJdGVtUmVjb3JkPFQ+W10sXG4gICAgKTogRXNvbHZlTWVkaWFTdG9ja0l0ZW08VD5bXSB7XG4gICAgICAgIGNvbnN0IGl0ZW1zOiBFc29sdmVNZWRpYVN0b2NrSXRlbTxUPltdID0gW107XG5cbiAgICAgICAgaWYgKHJlY29yZHMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgZm9yIChjb25zdCByZWNvcmQgb2YgcmVjb3Jkcykge1xuICAgICAgICAgICAgICAgIGl0ZW1zLnB1c2gobmV3IEVzb2x2ZU1lZGlhU3RvY2tJdGVtPFQ+KHJlY29yZCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGl0ZW1zO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHJpZXZlcyBzdG9jayByZWNvcmRzIGZyb20gSFRUUCBwYXJhbXMuXG4gICAgICogQHBhcmFtIHBhcmFtcyBIVFRQIGNsaWVudCBwYXJhbWV0ZXJzXG4gICAgICovXG4gICAgcHJpdmF0ZSBnZXRTdG9ja1JlY29yZHMoXG4gICAgICAgIHBhcmFtczogSHR0cFBhcmFtcyxcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZUdldFJlc3BvbnNlPEVzb2x2ZVN0b2NrUmVjb3JkPFQ+W10+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEVzb2x2ZUdldFJlc3BvbnNlPEVzb2x2ZVN0b2NrUmVjb3JkPFQ+W10+PihcbiAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L2dldC1pdGVtcy5waHBgLFxuICAgICAgICAgICAgeyBwYXJhbXMgfSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZXMgc3RvY2sgdHJhbnNhY3Rpb24gaGlzdG9yeSByZWNvcmRzIGZyb20gSFRUUCBwYXJhbXMuXG4gICAgICogQHBhcmFtIHBhcmFtcyBIVFRQIGNsaWVudCBwYXJhbWV0ZXJzXG4gICAgICovXG4gICAgcHJpdmF0ZSBnZXRTdG9ja0hpc3RvcnlSZWNvcmRzKFxuICAgICAgICBwYXJhbXM6IEh0dHBQYXJhbXMsXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVTdG9ja1JlY29yZDxUPltdPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldDxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVTdG9ja1JlY29yZDxUPltdPj4oXG4gICAgICAgICAgICBgJHt0aGlzLmNvbmZpZy5hcGlfdXJsfS9nZXQtaXRlbXMtdHJhbnNhY3Rpb24taGlzdG9yeS5waHBgLFxuICAgICAgICAgICAgeyBwYXJhbXMgfSxcbiAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
@@ -1,11 +1,12 @@
1
- import { Inject, Injectable } from '@angular/core';
1
+ import { Injectable } from '@angular/core';
2
2
  import { HttpClient, HttpParams } from '@angular/common/http';
3
3
  import { of } from 'rxjs';
4
4
  import { catchError, map } from 'rxjs/operators';
5
- import { ESOLVE_CONNECT_CONFIG } from '../core/esolve-connect-config.constant';
5
+ import { EsolveConfigService } from '../core';
6
6
  import { EsolveSupplier } from './classes';
7
7
  import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/common/http";
8
+ import * as i1 from "../core";
9
+ import * as i2 from "@angular/common/http";
9
10
  export class EsolveSuppliersService {
10
11
  constructor(config, http) {
11
12
  this.config = config;
@@ -43,16 +44,13 @@ export class EsolveSuppliersService {
43
44
  processSuppliers(record) {
44
45
  return new EsolveSupplier(record);
45
46
  }
46
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.1", ngImport: i0, type: EsolveSuppliersService, deps: [{ token: ESOLVE_CONNECT_CONFIG }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
47
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.1", ngImport: i0, type: EsolveSuppliersService, providedIn: 'root' }); }
47
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: EsolveSuppliersService, deps: [{ token: i1.EsolveConfigService }, { token: i2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
48
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: EsolveSuppliersService, providedIn: 'root' }); }
48
49
  }
49
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.1", ngImport: i0, type: EsolveSuppliersService, decorators: [{
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: EsolveSuppliersService, decorators: [{
50
51
  type: Injectable,
51
52
  args: [{
52
53
  providedIn: 'root',
53
54
  }]
54
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
55
- type: Inject,
56
- args: [ESOLVE_CONNECT_CONFIG]
57
- }] }, { type: i1.HttpClient }]; } });
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXN1cHBsaWVycy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZy1lc29sdmUtY29ubmVjdC9zcmMvbGliL3N1cHBsaWVycy9lc29sdmUtc3VwcGxpZXJzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUU5RCxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHakQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFHL0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFdBQVcsQ0FBQzs7O0FBTTNDLE1BQU0sT0FBTyxzQkFBc0I7SUFDL0IsWUFDMkMsTUFBMkIsRUFDMUQsSUFBZ0I7UUFEZSxXQUFNLEdBQU4sTUFBTSxDQUFxQjtRQUMxRCxTQUFJLEdBQUosSUFBSSxDQUFZO0lBQ3pCLENBQUM7SUFFRyxZQUFZLENBQ2YsT0FBK0I7UUFFL0IsSUFBSSxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUU5QixJQUFJLE9BQU8sRUFBRSxhQUFhLEVBQUU7WUFDeEIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsZUFBZSxFQUFFLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztTQUMvRDtRQUNELElBQUksT0FBTyxFQUFFLGdCQUFnQixFQUFFO1lBQzNCLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLGtCQUFrQixFQUFFLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1NBQ3JFO1FBRUQsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUN2QyxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUNaLE1BQU0sU0FBUyxHQUFxQixFQUFFLENBQUM7WUFFdkMsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUU7Z0JBQzFCLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7YUFDakQ7WUFFRCxPQUFPLFNBQVMsQ0FBQztRQUNyQixDQUFDLENBQUMsRUFDRixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ1osT0FBTyxFQUFFLENBQW1CLEVBQUUsQ0FBQyxDQUFDO1FBQ3BDLENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDTixDQUFDO0lBRU8sa0JBQWtCLENBQ3RCLE1BQWtCO1FBRWxCLE9BQU8sSUFBSSxDQUFDLElBQUk7YUFDWCxHQUFHLENBQ0EsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sb0JBQW9CLEVBQzFDLEVBQUUsTUFBTSxFQUFFLENBQ2I7YUFDQSxJQUFJLENBQ0QsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDYixJQUNJLFFBQVEsQ0FBQyxPQUFPLEtBQUssU0FBUztnQkFDOUIsUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUMvQjtnQkFDRSxNQUFNLFFBQVEsQ0FBQzthQUNsQjtZQUVELE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FBQztRQUM1QixDQUFDLENBQUMsQ0FDTCxDQUFDO0lBQ1YsQ0FBQztJQUVPLGdCQUFnQixDQUFDLE1BQTRCO1FBQ2pELE9BQU8sSUFBSSxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdEMsQ0FBQzs4R0ExRFEsc0JBQXNCLGtCQUVuQixxQkFBcUI7a0hBRnhCLHNCQUFzQixjQUZuQixNQUFNOzsyRkFFVCxzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOzswQkFHUSxNQUFNOzJCQUFDLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgRXNvbHZlQ29ubmVjdENvbmZpZyB9IGZyb20gJy4uL2NvcmUvZXNvbHZlLWNvbm5lY3QuY29uZmlnJztcbmltcG9ydCB7IEVTT0xWRV9DT05ORUNUX0NPTkZJRyB9IGZyb20gJy4uL2NvcmUvZXNvbHZlLWNvbm5lY3QtY29uZmlnLmNvbnN0YW50JztcbmltcG9ydCB7IEVzb2x2ZUdldFJlc3BvbnNlIH0gZnJvbSAnLi4vc2hhcmVkL3Jlc3BvbnNlJztcblxuaW1wb3J0IHsgRXNvbHZlU3VwcGxpZXIgfSBmcm9tICcuL2NsYXNzZXMnO1xuaW1wb3J0IHsgRXNvbHZlU3VwcGxpZXJSZWNvcmQsIEVzb2x2ZVN1cHBsaWVyT3B0aW9ucyB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEVzb2x2ZVN1cHBsaWVyc1NlcnZpY2Uge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KEVTT0xWRV9DT05ORUNUX0NPTkZJRykgcHJpdmF0ZSBjb25maWc6IEVzb2x2ZUNvbm5lY3RDb25maWcsXG4gICAgICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcbiAgICApIHt9XG5cbiAgICBwdWJsaWMgZ2V0U3VwcGxpZXJzKFxuICAgICAgICBvcHRpb25zPzogRXNvbHZlU3VwcGxpZXJPcHRpb25zLFxuICAgICk6IE9ic2VydmFibGU8RXNvbHZlU3VwcGxpZXJbXT4ge1xuICAgICAgICBsZXQgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKTtcblxuICAgICAgICBpZiAob3B0aW9ucz8uaW5kdXN0cnlfdHlwZSkge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnaW5kdXN0cnlfdHlwZScsIG9wdGlvbnMuaW5kdXN0cnlfdHlwZSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG9wdGlvbnM/LmludGVybmFsX2FjY291bnQpIHtcbiAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ2ludGVybmFsX2FjY291bnQnLCBvcHRpb25zLmludGVybmFsX2FjY291bnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0U3VwcGxpZXJSZWNvcmRzKHBhcmFtcykucGlwZShcbiAgICAgICAgICAgIG1hcCgocmVjb3JkcykgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHN1cHBsaWVyczogRXNvbHZlU3VwcGxpZXJbXSA9IFtdO1xuXG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCByZWNvcmQgb2YgcmVjb3Jkcykge1xuICAgICAgICAgICAgICAgICAgICBzdXBwbGllcnMucHVzaCh0aGlzLnByb2Nlc3NTdXBwbGllcnMocmVjb3JkKSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHN1cHBsaWVycztcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG9mPEVzb2x2ZVN1cHBsaWVyW10+KFtdKTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0U3VwcGxpZXJSZWNvcmRzKFxuICAgICAgICBwYXJhbXM6IEh0dHBQYXJhbXMsXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVTdXBwbGllclJlY29yZFtdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgIC5nZXQ8RXNvbHZlR2V0UmVzcG9uc2U8RXNvbHZlU3VwcGxpZXJSZWNvcmRbXT4+KFxuICAgICAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L2dldC1zdXBwbGllcnMucGhwYCxcbiAgICAgICAgICAgICAgICB7IHBhcmFtcyB9LFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5yZWNvcmRzID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLnJlY29yZHMubGVuZ3RoID09PSAwXG4gICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgcmVzcG9uc2U7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVzcG9uc2UucmVjb3JkcztcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwcm9jZXNzU3VwcGxpZXJzKHJlY29yZDogRXNvbHZlU3VwcGxpZXJSZWNvcmQpOiBFc29sdmVTdXBwbGllciB7XG4gICAgICAgIHJldHVybiBuZXcgRXNvbHZlU3VwcGxpZXIocmVjb3JkKTtcbiAgICB9XG59XG4iXX0=
55
+ }], ctorParameters: function () { return [{ type: i1.EsolveConfigService }, { type: i2.HttpClient }]; } });
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXN1cHBsaWVycy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9uZy1lc29sdmUtY29ubmVjdC9zcmMvbGliL3N1cHBsaWVycy9lc29sdmUtc3VwcGxpZXJzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRTlELE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFHOUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFdBQVcsQ0FBQzs7OztBQU0zQyxNQUFNLE9BQU8sc0JBQXNCO0lBQy9CLFlBQ1ksTUFBMkIsRUFDM0IsSUFBZ0I7UUFEaEIsV0FBTSxHQUFOLE1BQU0sQ0FBcUI7UUFDM0IsU0FBSSxHQUFKLElBQUksQ0FBWTtJQUN6QixDQUFDO0lBRUcsWUFBWSxDQUNmLE9BQStCO1FBRS9CLElBQUksTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7UUFFOUIsSUFBSSxPQUFPLEVBQUUsYUFBYSxFQUFFO1lBQ3hCLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLGVBQWUsRUFBRSxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDL0Q7UUFDRCxJQUFJLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRTtZQUMzQixNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsRUFBRSxPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztTQUNyRTtRQUVELE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FDdkMsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDWixNQUFNLFNBQVMsR0FBcUIsRUFBRSxDQUFDO1lBRXZDLEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO2dCQUMxQixTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO2FBQ2pEO1lBRUQsT0FBTyxTQUFTLENBQUM7UUFDckIsQ0FBQyxDQUFDLEVBQ0YsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNaLE9BQU8sRUFBRSxDQUFtQixFQUFFLENBQUMsQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FDTCxDQUFDO0lBQ04sQ0FBQztJQUVPLGtCQUFrQixDQUN0QixNQUFrQjtRQUVsQixPQUFPLElBQUksQ0FBQyxJQUFJO2FBQ1gsR0FBRyxDQUNBLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLG9CQUFvQixFQUMxQyxFQUFFLE1BQU0sRUFBRSxDQUNiO2FBQ0EsSUFBSSxDQUNELEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ2IsSUFDSSxRQUFRLENBQUMsT0FBTyxLQUFLLFNBQVM7Z0JBQzlCLFFBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUMsRUFDL0I7Z0JBQ0UsTUFBTSxRQUFRLENBQUM7YUFDbEI7WUFFRCxPQUFPLFFBQVEsQ0FBQyxPQUFPLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNWLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxNQUE0QjtRQUNqRCxPQUFPLElBQUksY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3RDLENBQUM7OEdBMURRLHNCQUFzQjtrSEFBdEIsc0JBQXNCLGNBRm5CLE1BQU07OzJGQUVULHNCQUFzQjtrQkFIbEMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBFc29sdmVDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZSc7XG5pbXBvcnQgeyBFc29sdmVHZXRSZXNwb25zZSB9IGZyb20gJy4uL3NoYXJlZC9yZXNwb25zZSc7XG5cbmltcG9ydCB7IEVzb2x2ZVN1cHBsaWVyIH0gZnJvbSAnLi9jbGFzc2VzJztcbmltcG9ydCB7IEVzb2x2ZVN1cHBsaWVyUmVjb3JkLCBFc29sdmVTdXBwbGllck9wdGlvbnMgfSBmcm9tICcuL2ludGVyZmFjZXMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBFc29sdmVTdXBwbGllcnNTZXJ2aWNlIHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBjb25maWc6IEVzb2x2ZUNvbmZpZ1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcbiAgICApIHt9XG5cbiAgICBwdWJsaWMgZ2V0U3VwcGxpZXJzKFxuICAgICAgICBvcHRpb25zPzogRXNvbHZlU3VwcGxpZXJPcHRpb25zLFxuICAgICk6IE9ic2VydmFibGU8RXNvbHZlU3VwcGxpZXJbXT4ge1xuICAgICAgICBsZXQgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKTtcblxuICAgICAgICBpZiAob3B0aW9ucz8uaW5kdXN0cnlfdHlwZSkge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgnaW5kdXN0cnlfdHlwZScsIG9wdGlvbnMuaW5kdXN0cnlfdHlwZSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG9wdGlvbnM/LmludGVybmFsX2FjY291bnQpIHtcbiAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ2ludGVybmFsX2FjY291bnQnLCBvcHRpb25zLmludGVybmFsX2FjY291bnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0U3VwcGxpZXJSZWNvcmRzKHBhcmFtcykucGlwZShcbiAgICAgICAgICAgIG1hcCgocmVjb3JkcykgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHN1cHBsaWVyczogRXNvbHZlU3VwcGxpZXJbXSA9IFtdO1xuXG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCByZWNvcmQgb2YgcmVjb3Jkcykge1xuICAgICAgICAgICAgICAgICAgICBzdXBwbGllcnMucHVzaCh0aGlzLnByb2Nlc3NTdXBwbGllcnMocmVjb3JkKSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHN1cHBsaWVycztcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG9mPEVzb2x2ZVN1cHBsaWVyW10+KFtdKTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0U3VwcGxpZXJSZWNvcmRzKFxuICAgICAgICBwYXJhbXM6IEh0dHBQYXJhbXMsXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVTdXBwbGllclJlY29yZFtdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgIC5nZXQ8RXNvbHZlR2V0UmVzcG9uc2U8RXNvbHZlU3VwcGxpZXJSZWNvcmRbXT4+KFxuICAgICAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L2dldC1zdXBwbGllcnMucGhwYCxcbiAgICAgICAgICAgICAgICB7IHBhcmFtcyB9LFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5yZWNvcmRzID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLnJlY29yZHMubGVuZ3RoID09PSAwXG4gICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgcmVzcG9uc2U7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVzcG9uc2UucmVjb3JkcztcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwcm9jZXNzU3VwcGxpZXJzKHJlY29yZDogRXNvbHZlU3VwcGxpZXJSZWNvcmQpOiBFc29sdmVTdXBwbGllciB7XG4gICAgICAgIHJldHVybiBuZXcgRXNvbHZlU3VwcGxpZXIocmVjb3JkKTtcbiAgICB9XG59XG4iXX0=
@@ -1,10 +1,11 @@
1
1
  import { HttpClient, HttpParams } from '@angular/common/http';
2
- import { Inject, Injectable } from '@angular/core';
2
+ import { Injectable } from '@angular/core';
3
3
  import { map } from 'rxjs/operators';
4
- import { ESOLVE_CONNECT_CONFIG } from '../core/esolve-connect-config.constant';
4
+ import { EsolveConfigService } from '../core';
5
5
  import { EsolveTag } from './esolve-tag.model';
6
6
  import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/common/http";
7
+ import * as i1 from "../core";
8
+ import * as i2 from "@angular/common/http";
8
9
  export class EsolveTagsService {
9
10
  constructor(config, http) {
10
11
  this.config = config;
@@ -63,16 +64,13 @@ export class EsolveTagsService {
63
64
  }
64
65
  return tags;
65
66
  }
66
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.1", ngImport: i0, type: EsolveTagsService, deps: [{ token: ESOLVE_CONNECT_CONFIG }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
67
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.1", ngImport: i0, type: EsolveTagsService, providedIn: 'root' }); }
67
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: EsolveTagsService, deps: [{ token: i1.EsolveConfigService }, { token: i2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
68
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: EsolveTagsService, providedIn: 'root' }); }
68
69
  }
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.1", ngImport: i0, type: EsolveTagsService, decorators: [{
70
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: EsolveTagsService, decorators: [{
70
71
  type: Injectable,
71
72
  args: [{
72
73
  providedIn: 'root',
73
74
  }]
74
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
75
- type: Inject,
76
- args: [ESOLVE_CONNECT_CONFIG]
77
- }] }, { type: i1.HttpClient }]; } });
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXRhZ3Muc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmctZXNvbHZlLWNvbm5lY3Qvc3JjL2xpYi90YWdzL2Vzb2x2ZS10YWdzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUduRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFJL0UsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7QUFPL0MsTUFBTSxPQUFPLGlCQUFpQjtJQUMxQixZQUMyQyxNQUEyQixFQUMxRCxJQUFnQjtRQURlLFdBQU0sR0FBTixNQUFNLENBQXFCO1FBQzFELFNBQUksR0FBSixJQUFJLENBQVk7SUFDekIsQ0FBQztJQUVKOzs7OztPQUtHO0lBQ0ksT0FBTyxDQUFDLE9BQTBCO1FBQ3JDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFMUMsT0FBTyxJQUFJLENBQUMsSUFBSTthQUNYLEdBQUcsQ0FDQSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxlQUFlLEVBQ3JDLEVBQUUsTUFBTSxFQUFFLENBQ2I7YUFDQSxJQUFJLENBQ0QsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDYixJQUFJLFFBQVEsQ0FBQyxPQUFPLEtBQUssU0FBUyxFQUFFO2dCQUNoQyxNQUFNLFFBQVEsQ0FBQzthQUNsQjtZQUVELE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDOUMsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNWLENBQUM7SUFFTyxZQUFZLENBQUMsT0FBMEI7UUFDM0MsSUFBSSxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUU5QixJQUFJLE9BQU8sRUFBRTtZQUNULElBQUksT0FBTyxDQUFDLE9BQU8sRUFBRTtnQkFDakIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtvQkFDaEMsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQztvQkFFakMsSUFBSSxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTt3QkFDckIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztxQkFDekQ7aUJBQ0o7cUJBQU07b0JBQ0gsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztpQkFDdEQ7YUFDSjtpQkFBTTtnQkFDSCxJQUFJLE9BQU8sQ0FBQyxNQUFNLElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxFQUFFLEVBQUU7b0JBQ3pDLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7b0JBRWpELE1BQU0saUJBQWlCLEdBQUcsT0FBTyxDQUFDLGlCQUFpQixDQUFDO29CQUVwRCxJQUFJLGlCQUFpQixFQUFFO3dCQUNuQixNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FDbEIsbUJBQW1CLEVBQ25CLGlCQUFpQixDQUNwQixDQUFDO3FCQUNMO2lCQUNKO2FBQ0o7U0FDSjtRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFFTyxXQUFXLENBQUMsT0FBMEI7UUFDMUMsTUFBTSxJQUFJLEdBQWdCLEVBQUUsQ0FBQztRQUU3QixJQUFJLE9BQU8sRUFBRTtZQUNULEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO2dCQUMxQixNQUFNLEdBQUcsR0FBRyxJQUFJLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFFbEMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUNsQjtTQUNKO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQzs4R0E1RVEsaUJBQWlCLGtCQUVkLHFCQUFxQjtrSEFGeEIsaUJBQWlCLGNBRmQsTUFBTTs7MkZBRVQsaUJBQWlCO2tCQUg3QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjs7MEJBR1EsTUFBTTsyQkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgRVNPTFZFX0NPTk5FQ1RfQ09ORklHIH0gZnJvbSAnLi4vY29yZS9lc29sdmUtY29ubmVjdC1jb25maWcuY29uc3RhbnQnO1xuaW1wb3J0IHsgRXNvbHZlQ29ubmVjdENvbmZpZyB9IGZyb20gJy4uL2NvcmUvZXNvbHZlLWNvbm5lY3QuY29uZmlnJztcbmltcG9ydCB7IEVzb2x2ZUdldFJlc3BvbnNlIH0gZnJvbSAnLi4vc2hhcmVkL3Jlc3BvbnNlJztcblxuaW1wb3J0IHsgRXNvbHZlVGFnIH0gZnJvbSAnLi9lc29sdmUtdGFnLm1vZGVsJztcbmltcG9ydCB7IEVzb2x2ZVRhZ1JlY29yZCB9IGZyb20gJy4vZXNvbHZlLXRhZy1yZWNvcmQuaW50ZXJmYWNlJztcbmltcG9ydCB7IEVzb2x2ZVRhZ09wdGlvbnMgfSBmcm9tICcuL2Vzb2x2ZS10YWctb3B0aW9ucy5pbnRlcmZhY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBFc29sdmVUYWdzU2VydmljZSB7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoRVNPTFZFX0NPTk5FQ1RfQ09ORklHKSBwcml2YXRlIGNvbmZpZzogRXNvbHZlQ29ubmVjdENvbmZpZyxcbiAgICAgICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgICkge31cblxuICAgIC8qKlxuICAgICAqIFJldHJpZXZlcyBhY3RpdmUgdG9waWNzIGZyb20gdGhlIGxpc3Qgb2YgdG9waWMgSUQncy4gTm90ZSB0aGF0IGluYWN0aXZlIG9yIGV4cGlyZWRcbiAgICAgKiB0b3BpY3Mgd2lsbCBub3QgYmUgcmV0cmlldmVkLlxuICAgICAqXG4gICAgICogQHBhcmFtIG9wdGlvbnMgVGFnIGZpbHRlcnNcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0VGFncyhvcHRpb25zPzogRXNvbHZlVGFnT3B0aW9ucyk6IE9ic2VydmFibGU8RXNvbHZlVGFnW10+IHtcbiAgICAgICAgY29uc3QgcGFyYW1zID0gdGhpcy5wYXJzZU9wdGlvbnMob3B0aW9ucyk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgICAgICAgLmdldDxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVUYWdSZWNvcmRbXT4+KFxuICAgICAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L2dldC10YWdzLnBocGAsXG4gICAgICAgICAgICAgICAgeyBwYXJhbXMgfSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcCgocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlLnJlY29yZHMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgcmVzcG9uc2U7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzVGFncyhyZXNwb25zZS5yZWNvcmRzKTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwYXJzZU9wdGlvbnMob3B0aW9ucz86IEVzb2x2ZVRhZ09wdGlvbnMpIHtcbiAgICAgICAgbGV0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKCk7XG5cbiAgICAgICAgaWYgKG9wdGlvbnMpIHtcbiAgICAgICAgICAgIGlmIChvcHRpb25zLnRhZ3NfaWQpIHtcbiAgICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShvcHRpb25zLnRhZ3NfaWQpKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHRhZ19saXN0ID0gb3B0aW9ucy50YWdzX2lkO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmICh0YWdfbGlzdC5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCd0YWdzX2lkJywgdGFnX2xpc3Quam9pbignLCcpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5hcHBlbmQoJ3RhZ3NfaWQnLCBvcHRpb25zLnRhZ3NfaWQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMucGhyYXNlICYmIG9wdGlvbnMucGhyYXNlICE9PSAnJykge1xuICAgICAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCdwaHJhc2UnLCBvcHRpb25zLnBocmFzZSk7XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcGhyYXNlX21hdGNoX21vZGUgPSBvcHRpb25zLnBocmFzZV9tYXRjaF9tb2RlO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmIChwaHJhc2VfbWF0Y2hfbW9kZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLmFwcGVuZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAncGhyYXNlX21hdGNoX21vZGUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBocmFzZV9tYXRjaF9tb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBwYXJhbXM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwcm9jZXNzVGFncyhyZWNvcmRzOiBFc29sdmVUYWdSZWNvcmRbXSk6IEVzb2x2ZVRhZ1tdIHtcbiAgICAgICAgY29uc3QgdGFnczogRXNvbHZlVGFnW10gPSBbXTtcblxuICAgICAgICBpZiAocmVjb3Jkcykge1xuICAgICAgICAgICAgZm9yIChjb25zdCByZWNvcmQgb2YgcmVjb3Jkcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IHRhZyA9IG5ldyBFc29sdmVUYWcocmVjb3JkKTtcblxuICAgICAgICAgICAgICAgIHRhZ3MucHVzaCh0YWcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRhZ3M7XG4gICAgfVxufVxuIl19
75
+ }], ctorParameters: function () { return [{ type: i1.EsolveConfigService }, { type: i2.HttpClient }]; } });
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXRhZ3Muc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbmctZXNvbHZlLWNvbm5lY3Qvc3JjL2xpYi90YWdzL2Vzb2x2ZS10YWdzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFHOUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7O0FBTy9DLE1BQU0sT0FBTyxpQkFBaUI7SUFDMUIsWUFDWSxNQUEyQixFQUMzQixJQUFnQjtRQURoQixXQUFNLEdBQU4sTUFBTSxDQUFxQjtRQUMzQixTQUFJLEdBQUosSUFBSSxDQUFZO0lBQ3pCLENBQUM7SUFFSjs7Ozs7T0FLRztJQUNJLE9BQU8sQ0FBQyxPQUEwQjtRQUNyQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRTFDLE9BQU8sSUFBSSxDQUFDLElBQUk7YUFDWCxHQUFHLENBQ0EsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sZUFBZSxFQUNyQyxFQUFFLE1BQU0sRUFBRSxDQUNiO2FBQ0EsSUFBSSxDQUNELEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ2IsSUFBSSxRQUFRLENBQUMsT0FBTyxLQUFLLFNBQVMsRUFBRTtnQkFDaEMsTUFBTSxRQUFRLENBQUM7YUFDbEI7WUFFRCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzlDLENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDVixDQUFDO0lBRU8sWUFBWSxDQUFDLE9BQTBCO1FBQzNDLElBQUksTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7UUFFOUIsSUFBSSxPQUFPLEVBQUU7WUFDVCxJQUFJLE9BQU8sQ0FBQyxPQUFPLEVBQUU7Z0JBQ2pCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7b0JBQ2hDLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUM7b0JBRWpDLElBQUksUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7d0JBQ3JCLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7cUJBQ3pEO2lCQUNKO3FCQUFNO29CQUNILE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7aUJBQ3REO2FBQ0o7aUJBQU07Z0JBQ0gsSUFBSSxPQUFPLENBQUMsTUFBTSxJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssRUFBRSxFQUFFO29CQUN6QyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO29CQUVqRCxNQUFNLGlCQUFpQixHQUFHLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQztvQkFFcEQsSUFBSSxpQkFBaUIsRUFBRTt3QkFDbkIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQ2xCLG1CQUFtQixFQUNuQixpQkFBaUIsQ0FDcEIsQ0FBQztxQkFDTDtpQkFDSjthQUNKO1NBQ0o7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0lBRU8sV0FBVyxDQUFDLE9BQTBCO1FBQzFDLE1BQU0sSUFBSSxHQUFnQixFQUFFLENBQUM7UUFFN0IsSUFBSSxPQUFPLEVBQUU7WUFDVCxLQUFLLE1BQU0sTUFBTSxJQUFJLE9BQU8sRUFBRTtnQkFDMUIsTUFBTSxHQUFHLEdBQUcsSUFBSSxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBRWxDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDbEI7U0FDSjtRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7OEdBNUVRLGlCQUFpQjtrSEFBakIsaUJBQWlCLGNBRmQsTUFBTTs7MkZBRVQsaUJBQWlCO2tCQUg3QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgRXNvbHZlQ29uZmlnU2VydmljZSB9IGZyb20gJy4uL2NvcmUnO1xuaW1wb3J0IHsgRXNvbHZlR2V0UmVzcG9uc2UgfSBmcm9tICcuLi9zaGFyZWQvcmVzcG9uc2UnO1xuXG5pbXBvcnQgeyBFc29sdmVUYWcgfSBmcm9tICcuL2Vzb2x2ZS10YWcubW9kZWwnO1xuaW1wb3J0IHsgRXNvbHZlVGFnUmVjb3JkIH0gZnJvbSAnLi9lc29sdmUtdGFnLXJlY29yZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRXNvbHZlVGFnT3B0aW9ucyB9IGZyb20gJy4vZXNvbHZlLXRhZy1vcHRpb25zLmludGVyZmFjZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEVzb2x2ZVRhZ3NTZXJ2aWNlIHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBjb25maWc6IEVzb2x2ZUNvbmZpZ1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcbiAgICApIHt9XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZXMgYWN0aXZlIHRvcGljcyBmcm9tIHRoZSBsaXN0IG9mIHRvcGljIElEJ3MuIE5vdGUgdGhhdCBpbmFjdGl2ZSBvciBleHBpcmVkXG4gICAgICogdG9waWNzIHdpbGwgbm90IGJlIHJldHJpZXZlZC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBvcHRpb25zIFRhZyBmaWx0ZXJzXG4gICAgICovXG4gICAgcHVibGljIGdldFRhZ3Mob3B0aW9ucz86IEVzb2x2ZVRhZ09wdGlvbnMpOiBPYnNlcnZhYmxlPEVzb2x2ZVRhZ1tdPiB7XG4gICAgICAgIGNvbnN0IHBhcmFtcyA9IHRoaXMucGFyc2VPcHRpb25zKG9wdGlvbnMpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgIC5nZXQ8RXNvbHZlR2V0UmVzcG9uc2U8RXNvbHZlVGFnUmVjb3JkW10+PihcbiAgICAgICAgICAgICAgICBgJHt0aGlzLmNvbmZpZy5hcGlfdXJsfS9nZXQtdGFncy5waHBgLFxuICAgICAgICAgICAgICAgIHsgcGFyYW1zIH0sXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5yZWNvcmRzID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc1RhZ3MocmVzcG9uc2UucmVjb3Jkcyk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgcGFyc2VPcHRpb25zKG9wdGlvbnM/OiBFc29sdmVUYWdPcHRpb25zKSB7XG4gICAgICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xuXG4gICAgICAgIGlmIChvcHRpb25zKSB7XG4gICAgICAgICAgICBpZiAob3B0aW9ucy50YWdzX2lkKSB7XG4gICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkob3B0aW9ucy50YWdzX2lkKSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB0YWdfbGlzdCA9IG9wdGlvbnMudGFnc19pZDtcblxuICAgICAgICAgICAgICAgICAgICBpZiAodGFnX2xpc3QubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLmFwcGVuZCgndGFnc19pZCcsIHRhZ19saXN0LmpvaW4oJywnKSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCd0YWdzX2lkJywgb3B0aW9ucy50YWdzX2lkKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLnBocmFzZSAmJiBvcHRpb25zLnBocmFzZSAhPT0gJycpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLmFwcGVuZCgncGhyYXNlJywgb3B0aW9ucy5waHJhc2UpO1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHBocmFzZV9tYXRjaF9tb2RlID0gb3B0aW9ucy5waHJhc2VfbWF0Y2hfbW9kZTtcblxuICAgICAgICAgICAgICAgICAgICBpZiAocGhyYXNlX21hdGNoX21vZGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5hcHBlbmQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3BocmFzZV9tYXRjaF9tb2RlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwaHJhc2VfbWF0Y2hfbW9kZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcGFyYW1zO1xuICAgIH1cblxuICAgIHByaXZhdGUgcHJvY2Vzc1RhZ3MocmVjb3JkczogRXNvbHZlVGFnUmVjb3JkW10pOiBFc29sdmVUYWdbXSB7XG4gICAgICAgIGNvbnN0IHRhZ3M6IEVzb2x2ZVRhZ1tdID0gW107XG5cbiAgICAgICAgaWYgKHJlY29yZHMpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3QgcmVjb3JkIG9mIHJlY29yZHMpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0YWcgPSBuZXcgRXNvbHZlVGFnKHJlY29yZCk7XG5cbiAgICAgICAgICAgICAgICB0YWdzLnB1c2godGFnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0YWdzO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,10 +1,11 @@
1
- import { Inject, Injectable } from '@angular/core';
1
+ import { Injectable } from '@angular/core';
2
2
  import { HttpClient, HttpParams } from '@angular/common/http';
3
3
  import { map } from 'rxjs/operators';
4
- import { ESOLVE_CONNECT_CONFIG } from '../core/esolve-connect-config.constant';
4
+ import { EsolveConfigService } from '../core';
5
5
  import { EsolveTopic } from './esolve-topic.model';
6
6
  import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/common/http";
7
+ import * as i1 from "../core";
8
+ import * as i2 from "@angular/common/http";
8
9
  export class EsolveTopicService {
9
10
  constructor(config, http) {
10
11
  this.config = config;
@@ -40,16 +41,13 @@ export class EsolveTopicService {
40
41
  }
41
42
  return topics;
42
43
  }
43
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.1", ngImport: i0, type: EsolveTopicService, deps: [{ token: ESOLVE_CONNECT_CONFIG }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
44
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.1", ngImport: i0, type: EsolveTopicService, providedIn: 'root' }); }
44
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: EsolveTopicService, deps: [{ token: i1.EsolveConfigService }, { token: i2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
45
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: EsolveTopicService, providedIn: 'root' }); }
45
46
  }
46
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.1", ngImport: i0, type: EsolveTopicService, decorators: [{
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: EsolveTopicService, decorators: [{
47
48
  type: Injectable,
48
49
  args: [{
49
50
  providedIn: 'root',
50
51
  }]
51
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
52
- type: Inject,
53
- args: [ESOLVE_CONNECT_CONFIG]
54
- }] }, { type: i1.HttpClient }]; } });
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXRvcGljLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvdG9waWNzL2Vzb2x2ZS10b3BpYy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHOUQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3JDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRS9FLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBTW5ELE1BQU0sT0FBTyxrQkFBa0I7SUFDM0IsWUFDMkMsTUFBMkIsRUFDMUQsSUFBZ0I7UUFEZSxXQUFNLEdBQU4sTUFBTSxDQUFxQjtRQUMxRCxTQUFJLEdBQUosSUFBSSxDQUFZO0lBQ3pCLENBQUM7SUFFSjs7Ozs7T0FLRztJQUNJLFNBQVMsQ0FDWixnQkFBbUMsRUFBRTtRQUVyQyxJQUFJLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBRTlCLElBQUksYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDMUIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLGFBQWEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztTQUMvRDtRQUVELE9BQU8sSUFBSSxDQUFDLElBQUk7YUFDWCxHQUFHLENBQ0EsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8saUJBQWlCLEVBQ3ZDLEVBQUUsTUFBTSxFQUFFLENBQ2I7YUFDQSxJQUFJLENBQ0QsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDYixJQUFJLFFBQVEsQ0FBQyxPQUFPLEtBQUssU0FBUyxFQUFFO2dCQUNoQyxNQUFNLFFBQVEsQ0FBQzthQUNsQjtZQUVELE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEQsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNWLENBQUM7SUFFTyxhQUFhLENBQUMsT0FBNEI7UUFDOUMsTUFBTSxNQUFNLEdBQWtCLEVBQUUsQ0FBQztRQUVqQyxJQUFJLE9BQU8sRUFBRTtZQUNULEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO2dCQUMxQixNQUFNLEtBQUssR0FBRyxJQUFJLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFFdEMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUN0QjtTQUNKO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQzs4R0FqRFEsa0JBQWtCLGtCQUVmLHFCQUFxQjtrSEFGeEIsa0JBQWtCLGNBRmYsTUFBTTs7MkZBRVQsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjs7MEJBR1EsTUFBTTsyQkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgRXNvbHZlQ29ubmVjdENvbmZpZyB9IGZyb20gJy4uL2NvcmUvZXNvbHZlLWNvbm5lY3QuY29uZmlnJztcbmltcG9ydCB7IEVTT0xWRV9DT05ORUNUX0NPTkZJRyB9IGZyb20gJy4uL2NvcmUvZXNvbHZlLWNvbm5lY3QtY29uZmlnLmNvbnN0YW50JztcbmltcG9ydCB7IEVzb2x2ZUdldFJlc3BvbnNlIH0gZnJvbSAnLi4vc2hhcmVkL3Jlc3BvbnNlJztcbmltcG9ydCB7IEVzb2x2ZVRvcGljIH0gZnJvbSAnLi9lc29sdmUtdG9waWMubW9kZWwnO1xuaW1wb3J0IHsgRXNvbHZlVG9waWNSZWNvcmQgfSBmcm9tICcuL2Vzb2x2ZS10b3BpYy1yZWNvcmQuaW50ZXJmYWNlJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgRXNvbHZlVG9waWNTZXJ2aWNlIHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChFU09MVkVfQ09OTkVDVF9DT05GSUcpIHByaXZhdGUgY29uZmlnOiBFc29sdmVDb25uZWN0Q29uZmlnLFxuICAgICAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgKSB7fVxuXG4gICAgLyoqXG4gICAgICogUmV0cmlldmVzIGFjdGl2ZSB0b3BpY3MgZnJvbSB0aGUgbGlzdCBvZiB0b3BpYyBJRCdzLiBOb3RlIHRoYXQgaW5hY3RpdmUgb3IgZXhwaXJlZFxuICAgICAqIHRvcGljcyB3aWxsIG5vdCBiZSByZXRyaWV2ZWQuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gdG9waWNfaWRfbGlzdCBMaXN0IG9mIHRvcGljIElEJ3MgdGhhdCBuZWVkIHRvIGJlIHJldHJpZXZlZFxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRUb3BpY3MoXG4gICAgICAgIHRvcGljX2lkX2xpc3Q6IHJlYWRvbmx5IG51bWJlcltdID0gW10sXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVUb3BpY1tdPiB7XG4gICAgICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xuXG4gICAgICAgIGlmICh0b3BpY19pZF9saXN0Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5hcHBlbmQoJ3RvcGljX2lkJywgdG9waWNfaWRfbGlzdC5qb2luKCcsJykpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgICAgICAgLmdldDxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVUb3BpY1JlY29yZFtdPj4oXG4gICAgICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vZ2V0LXRvcGljcy5waHBgLFxuICAgICAgICAgICAgICAgIHsgcGFyYW1zIH0sXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5yZWNvcmRzID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IHJlc3BvbnNlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc1RvcGljcyhyZXNwb25zZS5yZWNvcmRzKTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwcm9jZXNzVG9waWNzKHJlY29yZHM6IEVzb2x2ZVRvcGljUmVjb3JkW10pOiBFc29sdmVUb3BpY1tdIHtcbiAgICAgICAgY29uc3QgdG9waWNzOiBFc29sdmVUb3BpY1tdID0gW107XG5cbiAgICAgICAgaWYgKHJlY29yZHMpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3QgcmVjb3JkIG9mIHJlY29yZHMpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0b3BpYyA9IG5ldyBFc29sdmVUb3BpYyhyZWNvcmQpO1xuXG4gICAgICAgICAgICAgICAgdG9waWNzLnB1c2godG9waWMpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRvcGljcztcbiAgICB9XG59XG4iXX0=
52
+ }], ctorParameters: function () { return [{ type: i1.EsolveConfigService }, { type: i2.HttpClient }]; } });
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXRvcGljLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvdG9waWNzL2Vzb2x2ZS10b3BpYy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUc5RCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRTlDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7OztBQU1uRCxNQUFNLE9BQU8sa0JBQWtCO0lBQzNCLFlBQ1ksTUFBMkIsRUFDM0IsSUFBZ0I7UUFEaEIsV0FBTSxHQUFOLE1BQU0sQ0FBcUI7UUFDM0IsU0FBSSxHQUFKLElBQUksQ0FBWTtJQUN6QixDQUFDO0lBRUo7Ozs7O09BS0c7SUFDSSxTQUFTLENBQ1osZ0JBQW1DLEVBQUU7UUFFckMsSUFBSSxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUU5QixJQUFJLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQzFCLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxhQUFhLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7U0FDL0Q7UUFFRCxPQUFPLElBQUksQ0FBQyxJQUFJO2FBQ1gsR0FBRyxDQUNBLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLGlCQUFpQixFQUN2QyxFQUFFLE1BQU0sRUFBRSxDQUNiO2FBQ0EsSUFBSSxDQUNELEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ2IsSUFBSSxRQUFRLENBQUMsT0FBTyxLQUFLLFNBQVMsRUFBRTtnQkFDaEMsTUFBTSxRQUFRLENBQUM7YUFDbEI7WUFFRCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2hELENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDVixDQUFDO0lBRU8sYUFBYSxDQUFDLE9BQTRCO1FBQzlDLE1BQU0sTUFBTSxHQUFrQixFQUFFLENBQUM7UUFFakMsSUFBSSxPQUFPLEVBQUU7WUFDVCxLQUFLLE1BQU0sTUFBTSxJQUFJLE9BQU8sRUFBRTtnQkFDMUIsTUFBTSxLQUFLLEdBQUcsSUFBSSxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBRXRDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDdEI7U0FDSjtRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7OEdBakRRLGtCQUFrQjtrSEFBbEIsa0JBQWtCLGNBRmYsTUFBTTs7MkZBRVQsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgRXNvbHZlQ29uZmlnU2VydmljZSB9IGZyb20gJy4uL2NvcmUnO1xuaW1wb3J0IHsgRXNvbHZlR2V0UmVzcG9uc2UgfSBmcm9tICcuLi9zaGFyZWQvcmVzcG9uc2UnO1xuaW1wb3J0IHsgRXNvbHZlVG9waWMgfSBmcm9tICcuL2Vzb2x2ZS10b3BpYy5tb2RlbCc7XG5pbXBvcnQgeyBFc29sdmVUb3BpY1JlY29yZCB9IGZyb20gJy4vZXNvbHZlLXRvcGljLXJlY29yZC5pbnRlcmZhY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBFc29sdmVUb3BpY1NlcnZpY2Uge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGNvbmZpZzogRXNvbHZlQ29uZmlnU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgICkge31cblxuICAgIC8qKlxuICAgICAqIFJldHJpZXZlcyBhY3RpdmUgdG9waWNzIGZyb20gdGhlIGxpc3Qgb2YgdG9waWMgSUQncy4gTm90ZSB0aGF0IGluYWN0aXZlIG9yIGV4cGlyZWRcbiAgICAgKiB0b3BpY3Mgd2lsbCBub3QgYmUgcmV0cmlldmVkLlxuICAgICAqXG4gICAgICogQHBhcmFtIHRvcGljX2lkX2xpc3QgTGlzdCBvZiB0b3BpYyBJRCdzIHRoYXQgbmVlZCB0byBiZSByZXRyaWV2ZWRcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0VG9waWNzKFxuICAgICAgICB0b3BpY19pZF9saXN0OiByZWFkb25seSBudW1iZXJbXSA9IFtdLFxuICAgICk6IE9ic2VydmFibGU8RXNvbHZlVG9waWNbXT4ge1xuICAgICAgICBsZXQgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKTtcblxuICAgICAgICBpZiAodG9waWNfaWRfbGlzdC5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCd0b3BpY19pZCcsIHRvcGljX2lkX2xpc3Quam9pbignLCcpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgIC5nZXQ8RXNvbHZlR2V0UmVzcG9uc2U8RXNvbHZlVG9waWNSZWNvcmRbXT4+KFxuICAgICAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L2dldC10b3BpY3MucGhwYCxcbiAgICAgICAgICAgICAgICB7IHBhcmFtcyB9LFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2UucmVjb3JkcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyByZXNwb25zZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnByb2Nlc3NUb3BpY3MocmVzcG9uc2UucmVjb3Jkcyk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgcHJvY2Vzc1RvcGljcyhyZWNvcmRzOiBFc29sdmVUb3BpY1JlY29yZFtdKTogRXNvbHZlVG9waWNbXSB7XG4gICAgICAgIGNvbnN0IHRvcGljczogRXNvbHZlVG9waWNbXSA9IFtdO1xuXG4gICAgICAgIGlmIChyZWNvcmRzKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IHJlY29yZCBvZiByZWNvcmRzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdG9waWMgPSBuZXcgRXNvbHZlVG9waWMocmVjb3JkKTtcblxuICAgICAgICAgICAgICAgIHRvcGljcy5wdXNoKHRvcGljKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0b3BpY3M7XG4gICAgfVxufVxuIl19
@@ -120,10 +120,10 @@ export class EsolveTransactionsService {
120
120
  }
121
121
  return transactions;
122
122
  }
123
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.1", ngImport: i0, type: EsolveTransactionsService, deps: [{ token: i1.EsolveConfigService }, { token: i2.HttpClient }, { token: i3.EsolveSessionService }, { token: i4.EsolveErrorHandlerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
124
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.1", ngImport: i0, type: EsolveTransactionsService, providedIn: 'root' }); }
123
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: EsolveTransactionsService, deps: [{ token: i1.EsolveConfigService }, { token: i2.HttpClient }, { token: i3.EsolveSessionService }, { token: i4.EsolveErrorHandlerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
124
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: EsolveTransactionsService, providedIn: 'root' }); }
125
125
  }
126
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.1", ngImport: i0, type: EsolveTransactionsService, decorators: [{
126
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: EsolveTransactionsService, decorators: [{
127
127
  type: Injectable,
128
128
  args: [{
129
129
  providedIn: 'root',
@@ -1,15 +1,16 @@
1
- import { Inject, Injectable } from '@angular/core';
1
+ import { Injectable } from '@angular/core';
2
2
  import { HttpClient, } from '@angular/common/http';
3
3
  import { catchError, map } from 'rxjs/operators';
4
- import { ESOLVE_CONNECT_CONFIG } from '../core/esolve-connect-config.constant';
4
+ import { EsolveConfigService } from '../core';
5
5
  import { EsolveResponseHandlerService, } from '../shared/response';
6
6
  import { EsolveErrorHandlerService } from '../shared/errors';
7
7
  import { EsolveStockItem } from '../stock';
8
8
  import { EsolveWishlistItem, EsolveEmptyWishlistResult } from './classes';
9
9
  import * as i0 from "@angular/core";
10
- import * as i1 from "@angular/common/http";
11
- import * as i2 from "../shared/errors";
12
- import * as i3 from "../shared/response";
10
+ import * as i1 from "../core";
11
+ import * as i2 from "@angular/common/http";
12
+ import * as i3 from "../shared/errors";
13
+ import * as i4 from "../shared/response";
13
14
  export class EsolveWishlistService {
14
15
  constructor(config, http, errorHandler, responseHandler) {
15
16
  this.config = config;
@@ -104,16 +105,13 @@ export class EsolveWishlistService {
104
105
  getWishlistRecords(params) {
105
106
  return this.http.get(`${this.config.api_url}/get-wishlist.php`, { params });
106
107
  }
107
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.1", ngImport: i0, type: EsolveWishlistService, deps: [{ token: ESOLVE_CONNECT_CONFIG }, { token: i1.HttpClient }, { token: i2.EsolveErrorHandlerService }, { token: i3.EsolveResponseHandlerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
108
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.1", ngImport: i0, type: EsolveWishlistService, providedIn: 'root' }); }
108
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: EsolveWishlistService, deps: [{ token: i1.EsolveConfigService }, { token: i2.HttpClient }, { token: i3.EsolveErrorHandlerService }, { token: i4.EsolveResponseHandlerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
109
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: EsolveWishlistService, providedIn: 'root' }); }
109
110
  }
110
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.1", ngImport: i0, type: EsolveWishlistService, decorators: [{
111
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: EsolveWishlistService, decorators: [{
111
112
  type: Injectable,
112
113
  args: [{
113
114
  providedIn: 'root',
114
115
  }]
115
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
116
- type: Inject,
117
- args: [ESOLVE_CONNECT_CONFIG]
118
- }] }, { type: i1.HttpClient }, { type: i2.EsolveErrorHandlerService }, { type: i3.EsolveResponseHandlerService }]; } });
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXdpc2hsaXN0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvd2lzaGxpc3QvZXNvbHZlLXdpc2hsaXN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUNILFVBQVUsR0FHYixNQUFNLHNCQUFzQixDQUFDO0FBRzlCLE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHakQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDL0UsT0FBTyxFQUdILDRCQUE0QixHQUMvQixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzdELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFHM0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLHlCQUF5QixFQUFFLE1BQU0sV0FBVyxDQUFDOzs7OztBQVUxRSxNQUFNLE9BQU8scUJBQXFCO0lBQzlCLFlBQzJDLE1BQTJCLEVBQzFELElBQWdCLEVBQ2hCLFlBQXVDLEVBQ3ZDLGVBQTZDO1FBSGQsV0FBTSxHQUFOLE1BQU0sQ0FBcUI7UUFDMUQsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixpQkFBWSxHQUFaLFlBQVksQ0FBMkI7UUFDdkMsb0JBQWUsR0FBZixlQUFlLENBQThCO0lBQ3RELENBQUM7SUFFSjs7OztPQUlHO0lBQ0ksV0FBVztRQUNkLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsSUFBSSxDQUNqQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNiLElBQUksUUFBUSxDQUFDLE9BQU8sS0FBSyxTQUFT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QUFtQixFQUN6QyxFQUFFLE1BQU0sRUFBRSxDQUNiLENBQUM7SUFDTixDQUFDOzhHQXRKUSxxQkFBcUIsa0JBRWxCLHFCQUFxQjtrSEFGeEIscUJBQXFCLGNBRmxCLE1BQU07OzJGQUVULHFCQUFxQjtrQkFIakMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckI7OzBCQUdRLE1BQU07MkJBQUMscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEh0dHBDbGllbnQsXG4gICAgSHR0cEVycm9yUmVzcG9uc2UsXG4gICAgSHR0cFBhcmFtcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEVzb2x2ZUNvbm5lY3RDb25maWcgfSBmcm9tICcuLi9jb3JlL2Vzb2x2ZS1jb25uZWN0LmNvbmZpZyc7XG5pbXBvcnQgeyBFU09MVkVfQ09OTkVDVF9DT05GSUcgfSBmcm9tICcuLi9jb3JlL2Vzb2x2ZS1jb25uZWN0LWNvbmZpZy5jb25zdGFudCc7XG5pbXBvcnQge1xuICAgIEVzb2x2ZVNldFJlc3BvbnNlLFxuICAgIEVzb2x2ZUdldFJlc3BvbnNlLFxuICAgIEVzb2x2ZVJlc3BvbnNlSGFuZGxlclNlcnZpY2UsXG59IGZyb20gJy4uL3NoYXJlZC9yZXNwb25zZSc7XG5pbXBvcnQgeyBFc29sdmVFcnJvckhhbmRsZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2hhcmVkL2Vycm9ycyc7XG5pbXBvcnQgeyBFc29sdmVTdG9ja0l0ZW0gfSBmcm9tICcuLi9zdG9jayc7XG5cbmltcG9ydCB7IEVzb2x2ZVdpc2hsaXN0LCBFc29sdmVXaXNobGlzdFNldEFjdGlvbiB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgRXNvbHZlV2lzaGxpc3RJdGVtLCBFc29sdmVFbXB0eVdpc2hsaXN0UmVzdWx0IH0gZnJvbSAnLi9jbGFzc2VzJztcbmltcG9ydCB7XG4gICAgRXNvbHZlV2lzaGxpc3RJdGVtUmVjb3JkLFxuICAgIEVzb2x2ZVdpc2hsaXN0SXRlbVJlc3BvbnNlLFxuICAgIEVzb2x2ZVdpc2hsaXN0U2V0SXRlbSxcbn0gZnJvbSAnLi9pbnRlcmZhY2VzJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgRXNvbHZlV2lzaGxpc3RTZXJ2aWNlIHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChFU09MVkVfQ09OTkVDVF9DT05GSUcpIHByaXZhdGUgY29uZmlnOiBFc29sdmVDb25uZWN0Q29uZmlnLFxuICAgICAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgICAgIHByaXZhdGUgZXJyb3JIYW5kbGVyOiBFc29sdmVFcnJvckhhbmRsZXJTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJlc3BvbnNlSGFuZGxlcjogRXNvbHZlUmVzcG9uc2VIYW5kbGVyU2VydmljZSxcbiAgICApIHt9XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZXMgdGhlIGN1cnJlbnQgd2lzaGxpc3RcbiAgICAgKlxuICAgICAqIEByZXR1cm5zIEFuIGBPYnNlcnZhYmxlYCB3aXRoIGFuIGFycmF5IG9mIGNhcnQgaXRlbXNcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0V2lzaGxpc3QoKTogT2JzZXJ2YWJsZTxFc29sdmVXaXNobGlzdD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRXaXNobGlzdFJlY29yZHMoKS5waXBlKFxuICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5yZWNvcmRzID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgcmVzcG9uc2U7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc1dpc2hsaXN0KHJlc3BvbnNlLnJlY29yZHMpO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVXBkYXRlcyB0aGUgd2lzaGxpc3QgYnkgcHJlZm9ybWluZyB2YXJpb3VzIGFjdGlvbnMsIHN1Y2ggYXMgYWRkaW5nLCBlZGl0aW5nIG9yIHJlbW92aW5nIGl0ZW1zIGZyb20gdGhlIGxpc3QuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gaXRlbXMgQW4gYXJyYXkgb2Ygb3B0aW9ucyB0byB1cGRhdGUgdGhlIHdpc2hsaXN0XG4gICAgICogQHBhcmFtIGRlZmF1bHRfYWN0aW9uIFRoZSBkZWZhdWx0IGFjdGlvbiB0byBwcmVmb3JtXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBBbiBgT2JzZXJ2YWJsZWAgd2l0aCBhbiBhcnJheSBvZiByZXNwb25zZXMgdGhhdCBnaXZlcyBmZWVkYmFjayBvbiB0aGUgcmVxdWVzdGVkIGNoYW5nZXNcbiAgICAgKi9cbiAgICBwdWJsaWMgc2V0V2lzaGxpc3QoXG4gICAgICAgIGl0ZW1zOiBFc29sdmVXaXNobGlzdFNldEl0ZW1bXSxcbiAgICAgICAgZGVmYXVsdF9hY3Rpb246IEVzb2x2ZVdpc2hsaXN0U2V0QWN0aW9uID0gJ2FkZCcsXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVXaXNobGlzdEl0ZW1SZXNwb25zZVtdPiB7XG4gICAgICAgIGNvbnN0IGJvZHkgPSB7XG4gICAgICAgICAgICBpdGVtcyxcbiAgICAgICAgICAgIGRlZmF1bHRfYWN0aW9uLFxuICAgICAgICB9O1xuXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgIC5wb3N0PEVzb2x2ZVNldFJlc3BvbnNlPEVzb2x2ZVdpc2hsaXN0SXRlbVJlc3BvbnNlPj4oXG4gICAgICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vc2V0LXdpc2hsaXN0LWl0ZW0ucGhwYCxcbiAgICAgICAgICAgICAgICBib2R5LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDtjaGFyc2V0PXV0Zi04OycsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlVHlwZTogJ2pzb24nLFxuICAgICAgICAgICAgICAgICAgICBvYnNlcnZlOiAnYm9keScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcCgocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlLnJlc3BvbnNlcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyByZXNwb25zZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiByZXNwb25zZS5yZXNwb25zZXM7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEVtcHRpZXMgdGhlIHdpc2hsaXN0IGZvciB0aGUgbG9nZ2VkIGluIHVzZXIuXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlIG9mIHR5cGUgRXNvbHZlRW1wdHlXaXNobGlzdFJlc3VsdFxuICAgICAqL1xuICAgIHB1YmxpYyBzZXRXaXNobGlzdEVtcHR5KCk6IE9ic2VydmFibGU8RXNvbHZlRW1wdHlXaXNobGlzdFJlc3VsdD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAgICAgICAucG9zdDxFc29sdmVTZXRSZXNwb25zZTxFc29sdmVXaXNobGlzdEl0ZW1SZXNwb25zZT4+KFxuICAgICAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L3NldC13aXNobGlzdC1lbXB0eS5waHBgLFxuICAgICAgICAgICAgICAgIHsgZW1wdHk6IHRydWUgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICdDb250ZW50LVR5cGUnOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7Y2hhcnNldD11dGYtODsnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICByZXNwb25zZVR5cGU6ICdqc29uJyxcbiAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZTogJ2JvZHknLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKGh0dHBfcmVzcG9uc2UpID0+XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVzcG9uc2VIYW5kbGVyLnZhbGlkYXRlU2luZ2xlSHR0cFJlc3BvbnNlKFxuICAgICAgICAgICAgICAgICAgICAgICAgaHR0cF9yZXNwb25zZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRXNvbHZlRW1wdHlXaXNobGlzdFJlc3VsdChyZXNwb25zZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3JSZXM6IEh0dHBFcnJvclJlc3BvbnNlIHwgYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmVycm9ySGFuZGxlci5oYW5kbGVIdHRwUG9zdEVycm9yKFxuICAgICAgICAgICAgICAgICAgICAgICAgJ3NldC13aXNobGlzdC1lbXB0eScsXG4gICAgICAgICAgICAgICAgICAgICAgICBlcnJvclJlcyxcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJvY2Vzc2VzIHRoZSBlU29sdmUgd2lzaGxpc3QgcmVjb3Jkc1xuICAgICAqXG4gICAgICogQHBhcmFtIHdpc2hsaXN0X2l0ZW1fcmVjb3JkcyBSZWNvcmRzIHRvIHByb2Nlc3NcbiAgICAgKlxuICAgICAqIEByZXR1cm5zIEFuIGFycmF5IG9mIHByb2Nlc3NlZCBjYXJ0IGl0ZW1zXG4gICAgICovXG4gICAgcHJpdmF0ZSBwcm9jZXNzV2lzaGxpc3QoXG4gICAgICAgIHdpc2hsaXN0X2l0ZW1fcmVjb3JkczogRXNvbHZlV2lzaGxpc3RJdGVtUmVjb3JkW10sXG4gICAgKTogRXNvbHZlV2lzaGxpc3Qge1xuICAgICAgICBjb25zdCB3aXNobGlzdF9pdGVtczogRXNvbHZlV2lzaGxpc3QgPSBbXTtcblxuICAgICAgICBpZiAod2lzaGxpc3RfaXRlbV9yZWNvcmRzKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2Ygd2lzaGxpc3RfaXRlbV9yZWNvcmRzKSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3RvY2tfaXRlbSA9IG5ldyBFc29sdmVTdG9ja0l0ZW0oaXRlbS5zdG9ja19pdGVtKTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IHdpc2hsaXN0X2l0ZW0gPSBuZXcgRXNvbHZlV2lzaGxpc3RJdGVtKFxuICAgICAgICAgICAgICAgICAgICAraXRlbS5pZCxcbiAgICAgICAgICAgICAgICAgICAgK2l0ZW0ucXR5LFxuICAgICAgICAgICAgICAgICAgICAraXRlbS52YXRfcmF0ZSxcbiAgICAgICAgICAgICAgICAgICAgK2l0ZW0ucHJpY2UsXG4gICAgICAgICAgICAgICAgICAgICtpdGVtLnByaWNlX2luY2wsXG4gICAgICAgICAgICAgICAgICAgICtpdGVtLnZhdF90b3RhbCxcbiAgICAgICAgICAgICAgICAgICAgK2l0ZW0ubGluZV90b3RhbCxcbiAgICAgICAgICAgICAgICAgICAgK2l0ZW0ubGluZV90b3RhbF9pbmNsLFxuICAgICAgICAgICAgICAgICAgICBzdG9ja19pdGVtLFxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICB3aXNobGlzdF9pdGVtcy5wdXNoKHdpc2hsaXN0X2l0ZW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHdpc2hsaXN0X2l0ZW1zO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHJpZXZlcyBzdG9jayByZWNvcmRzIGZyb20gSFRUUCBwYXJhbXMuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcGFyYW1zIEhUVFAgY2xpZW50IHBhcmFtZXRlcnNcbiAgICAgKi9cbiAgICBwcml2YXRlIGdldFdpc2hsaXN0UmVjb3JkcyhcbiAgICAgICAgcGFyYW1zPzogSHR0cFBhcmFtcyxcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZUdldFJlc3BvbnNlPEVzb2x2ZVdpc2hsaXN0SXRlbVJlY29yZFtdPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldDxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVXaXNobGlzdEl0ZW1SZWNvcmRbXT4+KFxuICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vZ2V0LXdpc2hsaXN0LnBocGAsXG4gICAgICAgICAgICB7IHBhcmFtcyB9LFxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
116
+ }], ctorParameters: function () { return [{ type: i1.EsolveConfigService }, { type: i2.HttpClient }, { type: i3.EsolveErrorHandlerService }, { type: i4.EsolveResponseHandlerService }]; } });
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNvbHZlLXdpc2hsaXN0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L3NyYy9saWIvd2lzaGxpc3QvZXNvbHZlLXdpc2hsaXN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQ0gsVUFBVSxHQUdiLE1BQU0sc0JBQXNCLENBQUM7QUFHOUIsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDOUMsT0FBTyxFQUdILDRCQUE0QixHQUMvQixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzdELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFHM0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLHlCQUF5QixFQUFFLE1BQU0sV0FBVyxDQUFDOzs7Ozs7QUFVMUUsTUFBTSxPQUFPLHFCQUFxQjtJQUM5QixZQUNZLE1BQTJCLEVBQzNCLElBQWdCLEVBQ2hCLFlBQXVDLEVBQ3ZDLGVBQTZDO1FBSDdDLFdBQU0sR0FBTixNQUFNLENBQXFCO1FBQzNCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsaUJBQVksR0FBWixZQUFZLENBQTJCO1FBQ3ZDLG9CQUFlLEdBQWYsZUFBZSxDQUE4QjtJQUN0RCxDQUFDO0lBRUo7Ozs7T0FJRztJQUNJLFdBQVc7UUFDZCxPQUFPLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLElBQUksQ0FDakMsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDYixJQUFJLFFBQVEsQ0FBQyxPQUFPLEtBQUssU0FBUyxFQUFFO2dCQUNo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RUFBRSxNQUFNLEVBQUUsQ0FDYixDQUFDO0lBQ04sQ0FBQzs4R0F0SlEscUJBQXFCO2tIQUFyQixxQkFBcUIsY0FGbEIsTUFBTTs7MkZBRVQscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgSHR0cENsaWVudCxcbiAgICBIdHRwRXJyb3JSZXNwb25zZSxcbiAgICBIdHRwUGFyYW1zLFxufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgRXNvbHZlQ29uZmlnU2VydmljZSB9IGZyb20gJy4uL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBFc29sdmVTZXRSZXNwb25zZSxcbiAgICBFc29sdmVHZXRSZXNwb25zZSxcbiAgICBFc29sdmVSZXNwb25zZUhhbmRsZXJTZXJ2aWNlLFxufSBmcm9tICcuLi9zaGFyZWQvcmVzcG9uc2UnO1xuaW1wb3J0IHsgRXNvbHZlRXJyb3JIYW5kbGVyU2VydmljZSB9IGZyb20gJy4uL3NoYXJlZC9lcnJvcnMnO1xuaW1wb3J0IHsgRXNvbHZlU3RvY2tJdGVtIH0gZnJvbSAnLi4vc3RvY2snO1xuXG5pbXBvcnQgeyBFc29sdmVXaXNobGlzdCwgRXNvbHZlV2lzaGxpc3RTZXRBY3Rpb24gfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IEVzb2x2ZVdpc2hsaXN0SXRlbSwgRXNvbHZlRW1wdHlXaXNobGlzdFJlc3VsdCB9IGZyb20gJy4vY2xhc3Nlcyc7XG5pbXBvcnQge1xuICAgIEVzb2x2ZVdpc2hsaXN0SXRlbVJlY29yZCxcbiAgICBFc29sdmVXaXNobGlzdEl0ZW1SZXNwb25zZSxcbiAgICBFc29sdmVXaXNobGlzdFNldEl0ZW0sXG59IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEVzb2x2ZVdpc2hsaXN0U2VydmljZSB7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgY29uZmlnOiBFc29sdmVDb25maWdTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgICAgIHByaXZhdGUgZXJyb3JIYW5kbGVyOiBFc29sdmVFcnJvckhhbmRsZXJTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJlc3BvbnNlSGFuZGxlcjogRXNvbHZlUmVzcG9uc2VIYW5kbGVyU2VydmljZSxcbiAgICApIHt9XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZXMgdGhlIGN1cnJlbnQgd2lzaGxpc3RcbiAgICAgKlxuICAgICAqIEByZXR1cm5zIEFuIGBPYnNlcnZhYmxlYCB3aXRoIGFuIGFycmF5IG9mIGNhcnQgaXRlbXNcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0V2lzaGxpc3QoKTogT2JzZXJ2YWJsZTxFc29sdmVXaXNobGlzdD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRXaXNobGlzdFJlY29yZHMoKS5waXBlKFxuICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5yZWNvcmRzID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgcmVzcG9uc2U7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc1dpc2hsaXN0KHJlc3BvbnNlLnJlY29yZHMpO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVXBkYXRlcyB0aGUgd2lzaGxpc3QgYnkgcHJlZm9ybWluZyB2YXJpb3VzIGFjdGlvbnMsIHN1Y2ggYXMgYWRkaW5nLCBlZGl0aW5nIG9yIHJlbW92aW5nIGl0ZW1zIGZyb20gdGhlIGxpc3QuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gaXRlbXMgQW4gYXJyYXkgb2Ygb3B0aW9ucyB0byB1cGRhdGUgdGhlIHdpc2hsaXN0XG4gICAgICogQHBhcmFtIGRlZmF1bHRfYWN0aW9uIFRoZSBkZWZhdWx0IGFjdGlvbiB0byBwcmVmb3JtXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBBbiBgT2JzZXJ2YWJsZWAgd2l0aCBhbiBhcnJheSBvZiByZXNwb25zZXMgdGhhdCBnaXZlcyBmZWVkYmFjayBvbiB0aGUgcmVxdWVzdGVkIGNoYW5nZXNcbiAgICAgKi9cbiAgICBwdWJsaWMgc2V0V2lzaGxpc3QoXG4gICAgICAgIGl0ZW1zOiBFc29sdmVXaXNobGlzdFNldEl0ZW1bXSxcbiAgICAgICAgZGVmYXVsdF9hY3Rpb246IEVzb2x2ZVdpc2hsaXN0U2V0QWN0aW9uID0gJ2FkZCcsXG4gICAgKTogT2JzZXJ2YWJsZTxFc29sdmVXaXNobGlzdEl0ZW1SZXNwb25zZVtdPiB7XG4gICAgICAgIGNvbnN0IGJvZHkgPSB7XG4gICAgICAgICAgICBpdGVtcyxcbiAgICAgICAgICAgIGRlZmF1bHRfYWN0aW9uLFxuICAgICAgICB9O1xuXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgIC5wb3N0PEVzb2x2ZVNldFJlc3BvbnNlPEVzb2x2ZVdpc2hsaXN0SXRlbVJlc3BvbnNlPj4oXG4gICAgICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vc2V0LXdpc2hsaXN0LWl0ZW0ucGhwYCxcbiAgICAgICAgICAgICAgICBib2R5LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDtjaGFyc2V0PXV0Zi04OycsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlVHlwZTogJ2pzb24nLFxuICAgICAgICAgICAgICAgICAgICBvYnNlcnZlOiAnYm9keScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcCgocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlLnJlc3BvbnNlcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyByZXNwb25zZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiByZXNwb25zZS5yZXNwb25zZXM7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEVtcHRpZXMgdGhlIHdpc2hsaXN0IGZvciB0aGUgbG9nZ2VkIGluIHVzZXIuXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlIG9mIHR5cGUgRXNvbHZlRW1wdHlXaXNobGlzdFJlc3VsdFxuICAgICAqL1xuICAgIHB1YmxpYyBzZXRXaXNobGlzdEVtcHR5KCk6IE9ic2VydmFibGU8RXNvbHZlRW1wdHlXaXNobGlzdFJlc3VsdD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAgICAgICAucG9zdDxFc29sdmVTZXRSZXNwb25zZTxFc29sdmVXaXNobGlzdEl0ZW1SZXNwb25zZT4+KFxuICAgICAgICAgICAgICAgIGAke3RoaXMuY29uZmlnLmFwaV91cmx9L3NldC13aXNobGlzdC1lbXB0eS5waHBgLFxuICAgICAgICAgICAgICAgIHsgZW1wdHk6IHRydWUgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICdDb250ZW50LVR5cGUnOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7Y2hhcnNldD11dGYtODsnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICByZXNwb25zZVR5cGU6ICdqc29uJyxcbiAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZTogJ2JvZHknLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKGh0dHBfcmVzcG9uc2UpID0+XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVzcG9uc2VIYW5kbGVyLnZhbGlkYXRlU2luZ2xlSHR0cFJlc3BvbnNlKFxuICAgICAgICAgICAgICAgICAgICAgICAgaHR0cF9yZXNwb25zZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRXNvbHZlRW1wdHlXaXNobGlzdFJlc3VsdChyZXNwb25zZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3JSZXM6IEh0dHBFcnJvclJlc3BvbnNlIHwgYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmVycm9ySGFuZGxlci5oYW5kbGVIdHRwUG9zdEVycm9yKFxuICAgICAgICAgICAgICAgICAgICAgICAgJ3NldC13aXNobGlzdC1lbXB0eScsXG4gICAgICAgICAgICAgICAgICAgICAgICBlcnJvclJlcyxcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJvY2Vzc2VzIHRoZSBlU29sdmUgd2lzaGxpc3QgcmVjb3Jkc1xuICAgICAqXG4gICAgICogQHBhcmFtIHdpc2hsaXN0X2l0ZW1fcmVjb3JkcyBSZWNvcmRzIHRvIHByb2Nlc3NcbiAgICAgKlxuICAgICAqIEByZXR1cm5zIEFuIGFycmF5IG9mIHByb2Nlc3NlZCBjYXJ0IGl0ZW1zXG4gICAgICovXG4gICAgcHJpdmF0ZSBwcm9jZXNzV2lzaGxpc3QoXG4gICAgICAgIHdpc2hsaXN0X2l0ZW1fcmVjb3JkczogRXNvbHZlV2lzaGxpc3RJdGVtUmVjb3JkW10sXG4gICAgKTogRXNvbHZlV2lzaGxpc3Qge1xuICAgICAgICBjb25zdCB3aXNobGlzdF9pdGVtczogRXNvbHZlV2lzaGxpc3QgPSBbXTtcblxuICAgICAgICBpZiAod2lzaGxpc3RfaXRlbV9yZWNvcmRzKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2Ygd2lzaGxpc3RfaXRlbV9yZWNvcmRzKSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3RvY2tfaXRlbSA9IG5ldyBFc29sdmVTdG9ja0l0ZW0oaXRlbS5zdG9ja19pdGVtKTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IHdpc2hsaXN0X2l0ZW0gPSBuZXcgRXNvbHZlV2lzaGxpc3RJdGVtKFxuICAgICAgICAgICAgICAgICAgICAraXRlbS5pZCxcbiAgICAgICAgICAgICAgICAgICAgK2l0ZW0ucXR5LFxuICAgICAgICAgICAgICAgICAgICAraXRlbS52YXRfcmF0ZSxcbiAgICAgICAgICAgICAgICAgICAgK2l0ZW0ucHJpY2UsXG4gICAgICAgICAgICAgICAgICAgICtpdGVtLnByaWNlX2luY2wsXG4gICAgICAgICAgICAgICAgICAgICtpdGVtLnZhdF90b3RhbCxcbiAgICAgICAgICAgICAgICAgICAgK2l0ZW0ubGluZV90b3RhbCxcbiAgICAgICAgICAgICAgICAgICAgK2l0ZW0ubGluZV90b3RhbF9pbmNsLFxuICAgICAgICAgICAgICAgICAgICBzdG9ja19pdGVtLFxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICB3aXNobGlzdF9pdGVtcy5wdXNoKHdpc2hsaXN0X2l0ZW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHdpc2hsaXN0X2l0ZW1zO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHJpZXZlcyBzdG9jayByZWNvcmRzIGZyb20gSFRUUCBwYXJhbXMuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcGFyYW1zIEhUVFAgY2xpZW50IHBhcmFtZXRlcnNcbiAgICAgKi9cbiAgICBwcml2YXRlIGdldFdpc2hsaXN0UmVjb3JkcyhcbiAgICAgICAgcGFyYW1zPzogSHR0cFBhcmFtcyxcbiAgICApOiBPYnNlcnZhYmxlPEVzb2x2ZUdldFJlc3BvbnNlPEVzb2x2ZVdpc2hsaXN0SXRlbVJlY29yZFtdPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldDxFc29sdmVHZXRSZXNwb25zZTxFc29sdmVXaXNobGlzdEl0ZW1SZWNvcmRbXT4+KFxuICAgICAgICAgICAgYCR7dGhpcy5jb25maWcuYXBpX3VybH0vZ2V0LXdpc2hsaXN0LnBocGAsXG4gICAgICAgICAgICB7IHBhcmFtcyB9LFxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,9 +1,9 @@
1
1
  export * from './lib/ng-esolve-connect-media.module';
2
- export * from './lib/esolve-connect-media.config';
3
2
  export * from './lib/esolve-connect-media-config.token';
4
3
  export * from './lib/components';
5
4
  export * from './lib/classes';
6
5
  export * from './lib/types';
6
+ export * from './lib/functions';
7
7
  export * from './lib/interfaces';
8
8
  export * from './lib/services';
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L21lZGlhL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyx5Q0FBeUMsQ0FBQztBQUV4RCxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL25nLWVzb2x2ZS1jb25uZWN0LW1lZGlhLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9lc29sdmUtY29ubmVjdC1tZWRpYS5jb25maWcnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZXNvbHZlLWNvbm5lY3QtbWVkaWEtY29uZmlnLnRva2VuJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jbGFzc2VzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ludGVyZmFjZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMnO1xuIl19
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL25nLWVzb2x2ZS1jb25uZWN0L21lZGlhL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMseUNBQXlDLENBQUM7QUFFeEQsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL25nLWVzb2x2ZS1jb25uZWN0LW1lZGlhLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9lc29sdmUtY29ubmVjdC1tZWRpYS1jb25maWcudG9rZW4nO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NsYXNzZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZnVuY3Rpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ludGVyZmFjZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMnO1xuIl19