aril 1.1.33 → 1.1.34

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.
@@ -1,5 +1,5 @@
1
1
  import { CommonModule } from '@angular/common';
2
- import { Component, effect, signal } from '@angular/core';
2
+ import { Component, effect, signal, computed } from '@angular/core';
3
3
  import { toSignal } from '@angular/core/rxjs-interop';
4
4
  import { ConfirmationService } from 'primeng/api';
5
5
  import { ConfirmDialogModule } from 'primeng/confirmdialog';
@@ -35,22 +35,20 @@ export class FavoritePagesSidebarComponent {
35
35
  this.dialogService = dialogService;
36
36
  this.translocoService = translocoService;
37
37
  this.favoritePages = signal([]);
38
- this.allFavoritePages = signal([]);
39
38
  this.isCurrentPageFavorited = signal(false);
40
39
  this.solidIcons = solidIcons;
41
40
  this.currentPage = signal(1);
42
41
  this.pageSize = signal(10);
43
42
  this.totalItems = signal(0);
44
43
  this.totalPages = signal(0);
44
+ this.allFavoritePages = computed(() => this.favoritePagesService.allFavoritePages());
45
45
  this.subjects = {
46
46
  loadAllFavorites: new Subject(),
47
47
  deleteFavorite: new Subject()
48
48
  };
49
49
  this.loadAllFavoritesService = toSignal(this.subjects.loadAllFavorites.pipe(switchMap(() => this.favoritePagesService.filterFavoritePages({
50
50
  pageSize: 1000,
51
- pageNumber: 1,
52
- sortFieldName: 'label',
53
- sortDirection: 1
51
+ pageNumber: 1
54
52
  }))));
55
53
  this.deleteFavoriteService = toSignal(this.subjects.deleteFavorite.pipe(switchMap((id) => this.favoritePagesService.deleteFavoritePage(id))));
56
54
  this.initializeEffects();
@@ -63,7 +61,7 @@ export class FavoritePagesSidebarComponent {
63
61
  effect(() => {
64
62
  const service = this.loadAllFavoritesService();
65
63
  if (service?.response) {
66
- this.allFavoritePages.set(service.response.result);
64
+ this.favoritePagesService.allFavoritePages.set(service.response.result);
67
65
  this.totalItems.set(service.response.result.length);
68
66
  this.updateClientSidePagination();
69
67
  this.checkCurrentPageStatus();
@@ -216,4 +214,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
216
214
  FontAwesomeModule
217
215
  ], providers: [ConfirmationService, DialogService], template: "<p-sidebar\r\n\t[(visible)]=\"visible\"\r\n\tposition=\"right\"\r\n\t[transitionOptions]=\"'.3s cubic-bezier(0, 0, 0.2, 1)'\"\r\n\tstyleClass=\"layout-favorite-pages-sidebar w-full sm:w-30rem\"\r\n\t*transloco=\"let t; read: 'favoritePages'\">\r\n\t<ng-template pTemplate=\"header\">\r\n\t\t<div class=\"flex align-items-center justify-content-between w-full\">\r\n\t\t\t<div class=\"flex align-items-center\">\r\n\t\t\t\t<i class=\"pi pi-heart text-primary text-xl\"></i>\r\n\t\t\t\t<span class=\"font-bold text-lg\">{{ t('favoritePages') }}</span>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</ng-template>\r\n\r\n\t<div class=\"favorite-pages-content\">\r\n\t\t@if (isCurrentPageFavorited()) {\r\n\t\t\t<div class=\"current-favorited-message\">\r\n\t\t\t\t<div class=\"message-content\">\r\n\t\t\t\t\t<i class=\"pi pi-check-circle text-green-500\"></i>\r\n\t\t\t\t\t<span>{{ t('currentPageFavorited') }}</span>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t}\r\n\r\n\t\t<div class=\"add-section\">\r\n\t\t\t@if (!isCurrentPageFavorited()) {\r\n\t\t\t\t<aril-button\r\n\t\t\t\t\t[label]=\"t('addCurrentPage')\"\r\n\t\t\t\t\ticon=\"PLUS\"\r\n\t\t\t\t\tcolor=\"primary\"\r\n\t\t\t\t\tsize=\"sm\"\r\n\t\t\t\t\t(clickEvent)=\"addCurrentPageToFavorites()\">\r\n\t\t\t\t</aril-button>\r\n\t\t\t} @else {\r\n\t\t\t\t<aril-button\r\n\t\t\t\t\t[label]=\"t('removeCurrentPage')\"\r\n\t\t\t\t\ticon=\"TIMES\"\r\n\t\t\t\t\tcolor=\"danger\"\r\n\t\t\t\t\tsize=\"sm\"\r\n\t\t\t\t\t(clickEvent)=\"removeCurrentPageFromFavorites()\">\r\n\t\t\t\t</aril-button>\r\n\t\t\t}\r\n\t\t</div>\r\n\r\n\t\t@if (favoritePages().length > 0) {\r\n\t\t\t<div class=\"favorites-list\">\r\n\t\t\t\t<p-scrollPanel [style]=\"{ width: '100%', height: '100%' }\">\r\n\t\t\t\t\t<div class=\"favorites-items\">\r\n\t\t\t\t\t\t@for (favorite of favoritePages(); track trackByFavoriteId($index, favorite)) {\r\n\t\t\t\t\t\t\t<div\r\n\t\t\t\t\t\t\t\tclass=\"favorite-item\"\r\n\t\t\t\t\t\t\t\t[class.default-item]=\"favorite.id < 0\"\r\n\t\t\t\t\t\t\t\t(click)=\"navigateToFavorite(favorite)\"\r\n\t\t\t\t\t\t\t\t[pTooltip]=\"getFullUrl(favorite.url)\"\r\n\t\t\t\t\t\t\t\ttooltipPosition=\"top\">\r\n\t\t\t\t\t\t\t\t<div class=\"item-content\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"item-header\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"item-title\">\r\n\t\t\t\t\t\t\t\t\t\t\t<i class=\"pi pi-external-link text-primary mr-2\"></i>\r\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"title-text\">{{ favorite.label }}</span>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t\t\t\t\t<fa-icon\r\n\t\t\t\t\t\t\t\t\t\t\t\t[icon]=\"solidIcons.faPenToSquare\"\r\n\t\t\t\t\t\t\t\t\t\t\t\tsize=\"lg\"\r\n\t\t\t\t\t\t\t\t\t\t\t\tstyle=\"color: var(--yellow-500)\"\r\n\t\t\t\t\t\t\t\t\t\t\t\tclass=\"col-2 cursor-pointer\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t(click)=\"editFavorite(favorite, $event)\">\r\n\t\t\t\t\t\t\t\t\t\t\t</fa-icon>\r\n\t\t\t\t\t\t\t\t\t\t\t<fa-icon\r\n\t\t\t\t\t\t\t\t\t\t\t\t[icon]=\"solidIcons.faTrash\"\r\n\t\t\t\t\t\t\t\t\t\t\t\tsize=\"lg\"\r\n\t\t\t\t\t\t\t\t\t\t\t\tstyle=\"color: var(--red-500)\"\r\n\t\t\t\t\t\t\t\t\t\t\t\tclass=\"col-2 cursor-pointer\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t(click)=\"deleteFavorite(favorite, $event)\">\r\n\t\t\t\t\t\t\t\t\t\t\t</fa-icon>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</p-scrollPanel>\r\n\t\t\t</div>\r\n\t\t} @else {\r\n\t\t\t<div class=\"empty-state\">\r\n\t\t\t\t<div class=\"empty-content\">\r\n\t\t\t\t\t<i class=\"pi pi-heart empty-icon\"></i>\r\n\t\t\t\t\t<h3 class=\"empty-title\">{{ t('noFavorites') }}</h3>\r\n\t\t\t\t\t<p class=\"empty-message\">{{ t('startAddingFavorites') }}</p>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t}\r\n\t\t<div>\r\n\t\t\t<p-paginator\r\n\t\t\t\t[first]=\"(currentPage() - 1) * pageSize()\"\r\n\t\t\t\t[rows]=\"pageSize()\"\r\n\t\t\t\t[totalRecords]=\"totalItems()\"\r\n\t\t\t\t[showCurrentPageReport]=\"true\"\r\n\t\t\t\t[currentPageReportTemplate]=\"t('paginatorTemplate')\"\r\n\t\t\t\t[showFirstLastIcon]=\"false\"\r\n\t\t\t\t[showPageLinks]=\"false\"\r\n\t\t\t\t(onPageChange)=\"onPageChange($event)\">\r\n\t\t\t</p-paginator>\r\n\t\t</div>\r\n\t</div>\r\n\r\n\t<p-confirmDialog></p-confirmDialog>\r\n</p-sidebar>\r\n", styles: [":host ::ng-deep .layout-favorite-pages-sidebar .p-sidebar-content{padding:0;background:var(--surface-ground)}:host ::ng-deep .layout-favorite-pages-sidebar .p-sidebar-header{background:var(--primary-color);color:var(--primary-color-text);padding:1rem 1.5rem}:host ::ng-deep .layout-favorite-pages-sidebar .p-sidebar-header span{font-size:1.1rem;font-weight:600}.favorite-pages-content{display:flex;flex-direction:column;height:100%;background:var(--surface-0)}.current-favorited-message{padding:1rem;border-bottom:1px solid var(--surface-border);background:var(--green-50)}.current-favorited-message .message-content{display:flex;align-items:center;gap:.5rem;color:var(--green-700);font-size:.9rem;font-weight:500}.add-section{display:flex;align-items:center;gap:.5rem;padding:1rem;border-bottom:1px solid var(--surface-border);background:var(--surface-0)}.favorites-list{flex:1;overflow:hidden}.favorites-items{padding:.5rem}.favorite-item{background:var(--surface-0);border:1px solid var(--surface-border);border-radius:8px;margin-bottom:.5rem;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden;padding:.5rem .2rem}.favorite-item:hover{border-color:var(--primary-200);background:var(--primary-50);transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.favorite-item:hover .action-btn{opacity:1}.favorite-item:last-child{margin-bottom:0}.favorite-item.default-item{background:var(--blue-50);border-left:3px solid var(--blue-500)}.favorite-item.default-item:hover{background:var(--blue-100);border-color:var(--blue-300)}.favorite-item.default-item .title-text{font-weight:600;color:var(--blue-700)}.item-content{padding:.5rem .75rem}.item-header{display:flex;align-items:center;justify-content:space-between}.item-title{display:flex;align-items:center;flex:1;min-width:0}.item-title .title-text{font-weight:600;color:var(--text-color);font-size:1rem;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-state{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem}.empty-content{text-align:center;max-width:300px}.empty-content .empty-icon{font-size:3rem;color:var(--text-color-secondary);margin-bottom:1rem;opacity:.5}.empty-content .empty-title{font-size:1.1rem;font-weight:600;color:var(--text-color);margin-bottom:.5rem}.empty-content .empty-message{font-size:.9rem;color:var(--text-color-secondary);line-height:1.4;margin-bottom:1.5rem}@media (max-width: 768px){.add-section{padding:.75rem}.add-section .button-label{font-size:.8rem}.item-content{padding:.5rem}.item-title .title-text{font-size:.85rem}}\n"] }]
218
216
  }], ctorParameters: () => [{ type: i1.LayoutService }, { type: i2.FavoritePagesService }, { type: i3.ConfirmationService }, { type: i3.MessageService }, { type: i4.DialogService }, { type: i5.TranslocoService }] });
219
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmF2b3JpdGUtcGFnZXMtc2lkZWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3RoZW1lL2xheW91dC9hcHAvZmF2b3JpdGUtcGFnZXMvZmF2b3JpdGUtcGFnZXMtc2lkZWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3RoZW1lL2xheW91dC9hcHAvZmF2b3JpdGUtcGFnZXMvZmF2b3JpdGUtcGFnZXMtc2lkZWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUV0RCxPQUFPLEVBQUUsbUJBQW1CLEVBQWtCLE1BQU0sYUFBYSxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzVELE9BQU8sRUFBRSxhQUFhLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMzRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVoRCxPQUFPLEVBQUUsZUFBZSxFQUFvQixNQUFNLG1CQUFtQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxlQUFlLEVBQUUs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Q2xELENBQUM7OEdBeE5XLDZCQUE2QjtrR0FBN0IsNkJBQTZCLHlFQUY5QixDQUFDLG1CQUFtQixFQUFFLGFBQWEsQ0FBQywwQkN4Q2hELG9ySUE4R0EsaWxGRG5GRSxZQUFZLDhCQUNaLGFBQWEsbWRBQ2IsaUJBQWlCLCtJQUNqQixtQkFBbUIsb21CQUNuQixlQUFlLHFoQkFDZixtQkFBbUIsK0JBQ25CLGVBQWUsNk5BQ2YsZUFBZSxnT0FDZixhQUFhLHNYQUNiLGlCQUFpQjs7MkZBTU4sNkJBQTZCO2tCQW5CekMsU0FBUztpQ0FDRyxJQUFJLFlBQ04sNEJBQTRCLFdBQzdCO3dCQUNSLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixpQkFBaUI7d0JBQ2pCLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZixtQkFBbUI7d0JBQ25CLGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixhQUFhO3dCQUNiLGlCQUFpQjtxQkFDakIsYUFHVSxDQUFDLG1CQUFtQixFQUFFLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBlZmZlY3QsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcclxuXHJcbmltcG9ydCB7IENvbmZpcm1hdGlvblNlcnZpY2UsIE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAncHJpbWVuZy9hcGknO1xyXG5pbXBvcnQgeyBDb25maXJtRGlhbG9nTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9jb25maXJtZGlhbG9nJztcclxuaW1wb3J0IHsgRGlhbG9nU2VydmljZSwgRHluYW1pY0RpYWxvZ01vZHVsZSB9IGZyb20gJ3ByaW1lbmcvZHluYW1pY2RpYWxvZyc7XHJcbmltcG9ydCB7IFBhZ2luYXRvck1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvcGFnaW5hdG9yJztcclxuaW1wb3J0IHsgU2Nyb2xsUGFuZWxNb2R1bGUgfSBmcm9tICdwcmltZW5nL3Njcm9sbHBhbmVsJztcclxuaW1wb3J0IHsgU2lkZWJhck1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvc2lkZWJhcic7XHJcbmltcG9ydCB7IFRvb2x0aXBNb2R1bGUgfSBmcm9tICdwcmltZW5nL3Rvb2x0aXAnO1xyXG5cclxuaW1wb3J0IHsgVHJhbnNsb2NvTW9kdWxlLCBUcmFuc2xvY29TZXJ2aWNlIH0gZnJvbSAnQG5nbmVhdC90cmFuc2xvY28nO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvYnV0dG9uJztcclxuXHJcbmltcG9ydCB7IExheW91dFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2FwcC5sYXlvdXQuc2VydmljZSc7XHJcbmltcG9ydCB7IEZhdm9yaXRlUGFnZVJlc3BvbnNlRFRPLCBGYXZvcml0ZVBhZ2VzU2VydmljZSB9IGZyb20gJy4vZmF2b3JpdGUtcGFnZXMuc2VydmljZSc7XHJcbmltcG9ydCB7IEFkZEVkaXRGYXZvcml0ZU1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi9tb2RhbHMvYWRkLWVkaXQtZmF2b3JpdGUtbW9kYWwvYWRkLWVkaXQtZmF2b3JpdGUtbW9kYWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9udEF3ZXNvbWVNb2R1bGUgfSBmcm9tICdAZm9ydGF3ZXNvbWUvYW5ndWxhci1mb250YXdlc29tZSc7XHJcbmltcG9ydCB7IHNvbGlkSWNvbnMgfSBmcm9tICdhcmlsL3V0aWwvbGliJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0c2VsZWN0b3I6ICdhcHAtZmF2b3JpdGUtcGFnZXMtc2lkZWJhcicsXHJcblx0aW1wb3J0czogW1xyXG5cdFx0Q29tbW9uTW9kdWxlLFxyXG5cdFx0U2lkZWJhck1vZHVsZSxcclxuXHRcdFNjcm9sbFBhbmVsTW9kdWxlLFxyXG5cdFx0Q29uZmlybURpYWxvZ01vZHVsZSxcclxuXHRcdFBhZ2luYXRvck1vZHVsZSxcclxuXHRcdER5bmFtaWNEaWFsb2dNb2R1bGUsXHJcblx0XHRCdXR0b25Db21wb25lbnQsXHJcblx0XHRUcmFuc2xvY29Nb2R1bGUsXHJcblx0XHRUb29sdGlwTW9kdWxlLFxyXG5cdFx0Rm9udEF3ZXNvbWVNb2R1bGVcclxuXHRdLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9mYXZvcml0ZS1wYWdlcy1zaWRlYmFyLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZVVybHM6IFsnLi9mYXZvcml0ZS1wYWdlcy1zaWRlYmFyLmNvbXBvbmVudC5zY3NzJ10sXHJcblx0cHJvdmlkZXJzOiBbQ29uZmlybWF0aW9uU2VydmljZSwgRGlhbG9nU2VydmljZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIEZhdm9yaXRlUGFnZXNTaWRlYmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHRmYXZvcml0ZVBhZ2VzID0gc2lnbmFsPEZhdm9yaXRlUGFnZVJlc3BvbnNlRFRPW10+KFtdKTtcclxuXHRhbGxGYXZvcml0ZVBhZ2VzID0gc2lnbmFsPEZhdm9yaXRlUGFnZVJlc3BvbnNlRFRPW10+KFtdKTtcclxuXHRpc0N1cnJlbnRQYWdlRmF2b3JpdGVkID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKTtcclxuXHRzb2xpZEljb25zID0gc29saWRJY29ucztcclxuXHRjdXJyZW50UGFnZSA9IHNpZ25hbDxudW1iZXI+KDEpO1xyXG5cdHBhZ2VTaXplID0gc2lnbmFsPG51bWJlcj4oMTApO1xyXG5cdHRvdGFsSXRlbXMgPSBzaWduYWw8bnVtYmVyPigwKTtcclxuXHR0b3RhbFBhZ2VzID0gc2lnbmFsPG51bWJlcj4oMCk7XHJcblxyXG5cdHByaXZhdGUgc3ViamVjdHMgPSB7XHJcblx0XHRsb2FkQWxsRmF2b3JpdGVzOiBuZXcgU3ViamVjdDx2b2lkPigpLFxyXG5cdFx0ZGVsZXRlRmF2b3JpdGU6IG5ldyBTdWJqZWN0PG51bWJlcj4oKVxyXG5cdH07XHJcblxyXG5cdGxvYWRBbGxGYXZvcml0ZXNTZXJ2aWNlID0gdG9TaWduYWwoXHJcblx0XHR0aGlzLnN1YmplY3RzLmxvYWRBbGxGYXZvcml0ZXMucGlwZShcclxuXHRcdFx0c3dpdGNoTWFwKCgpID0+XHJcblx0XHRcdFx0dGhpcy5mYXZvcml0ZVBhZ2VzU2VydmljZS5maWx0ZXJGYXZvcml0ZVBhZ2VzKHtcclxuXHRcdFx0XHRcdHBhZ2VTaXplOiAxMDAwLFxyXG5cdFx0XHRcdFx0cGFnZU51bWJlcjogMSxcclxuXHRcdFx0XHRcdHNvcnRGaWVsZE5hbWU6ICdsYWJlbCcsXHJcblx0XHRcdFx0XHRzb3J0RGlyZWN0aW9uOiAxXHJcblx0XHRcdFx0fSlcclxuXHRcdFx0KVxyXG5cdFx0KVxyXG5cdCk7XHJcblxyXG5cdGRlbGV0ZUZhdm9yaXRlU2VydmljZSA9IHRvU2lnbmFsKFxyXG5cdFx0dGhpcy5zdWJqZWN0cy5kZWxldGVGYXZvcml0ZS5waXBlKHN3aXRjaE1hcCgoaWQpID0+IHRoaXMuZmF2b3JpdGVQYWdlc1NlcnZpY2UuZGVsZXRlRmF2b3JpdGVQYWdlKGlkKSkpXHJcblx0KTtcclxuXHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwdWJsaWMgbGF5b3V0U2VydmljZTogTGF5b3V0U2VydmljZSxcclxuXHRcdHByaXZhdGUgZmF2b3JpdGVQYWdlc1NlcnZpY2U6IEZhdm9yaXRlUGFnZXNTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBjb25maXJtYXRpb25TZXJ2aWNlOiBDb25maXJtYXRpb25TZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXHJcblx0XHRwcml2YXRlIGRpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsXHJcblx0XHRwcml2YXRlIHRyYW5zbG9jb1NlcnZpY2U6IFRyYW5zbG9jb1NlcnZpY2VcclxuXHQpIHtcclxuXHRcdHRoaXMuaW5pdGlhbGl6ZUVmZmVjdHMoKTtcclxuXHR9XHJcblxyXG5cdG5nT25Jbml0KCk6IHZvaWQge1xyXG5cdFx0dGhpcy5sb2FkRmF2b3JpdGVQYWdlcygpO1xyXG5cdFx0dGhpcy5jaGVja0N1cnJlbnRQYWdlU3RhdHVzKCk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGluaXRpYWxpemVFZmZlY3RzKCk6IHZvaWQge1xyXG5cdFx0ZWZmZWN0KFxyXG5cdFx0XHQoKSA9PiB7XHJcblx0XHRcdFx0Y29uc3Qgc2VydmljZSA9IHRoaXMubG9hZEFsbEZhdm9yaXRlc1NlcnZpY2UoKTtcclxuXHRcdFx0XHRpZiAoc2VydmljZT8ucmVzcG9uc2UpIHtcclxuXHRcdFx0XHRcdHRoaXMuYWxsRmF2b3JpdGVQYWdlcy5zZXQoc2VydmljZS5yZXNwb25zZS5yZXN1bHQpO1xyXG5cdFx0XHRcdFx0dGhpcy50b3RhbEl0ZW1zLnNldChzZXJ2aWNlLnJlc3BvbnNlLnJlc3VsdC5sZW5ndGgpO1xyXG5cdFx0XHRcdFx0dGhpcy51cGRhdGVDbGllbnRTaWRlUGFnaW5hdGlvbigpO1xyXG5cdFx0XHRcdFx0dGhpcy5jaGVja0N1cnJlbnRQYWdlU3RhdHVzKCk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9LFxyXG5cdFx0XHR7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH1cclxuXHRcdCk7XHJcblxyXG5cdFx0ZWZmZWN0KFxyXG5cdFx0XHQoKSA9PiB7XHJcblx0XHRcdFx0Y29uc3Qgc2VydmljZSA9IHRoaXMuZGVsZXRlRmF2b3JpdGVTZXJ2aWNlKCk7XHJcblx0XHRcdFx0aWYgKHNlcnZpY2U/LnJlc3BvbnNlKSB7XHJcblx0XHRcdFx0XHR0aGlzLmxvYWRGYXZvcml0ZVBhZ2VzKCk7XHJcblx0XHRcdFx0XHR0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7XHJcblx0XHRcdFx0XHRcdHNldmVyaXR5OiAnc3VjY2VzcycsXHJcblx0XHRcdFx0XHRcdHN1bW1hcnk6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ2Zhdm9yaXRlUGFnZXMuc3VjY2VzcycpLFxyXG5cdFx0XHRcdFx0XHRkZXRhaWw6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ2Zhdm9yaXRlUGFnZXMuZGVsZXRlZFN1Y2Nlc3NmdWxseScpLFxyXG5cdFx0XHRcdFx0XHRrZXk6ICd0b2FzdC1yb290J1xyXG5cdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9LFxyXG5cdFx0XHR7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRnZXQgdmlzaWJsZSgpOiBib29sZWFuIHtcclxuXHRcdHJldHVybiB0aGlzLmxheW91dFNlcnZpY2Uuc3RhdGUuZmF2b3JpdGVQYWdlc1NpZGViYXJWaXNpYmxlO1xyXG5cdH1cclxuXHJcblx0c2V0IHZpc2libGUodmFsdWU6IGJvb2xlYW4pIHtcclxuXHRcdHRoaXMubGF5b3V0U2VydmljZS5zdGF0ZS5mYXZvcml0ZVBhZ2VzU2lkZWJhclZpc2libGUgPSB2YWx1ZTtcclxuXHRcdGlmICh2YWx1ZSkge1xyXG5cdFx0XHR0aGlzLmNoZWNrQ3VycmVudFBhZ2VTdGF0dXMoKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHByaXZhdGUgbG9hZEZhdm9yaXRlUGFnZXMoKTogdm9pZCB7XHJcblx0XHR0aGlzLnN1YmplY3RzLmxvYWRBbGxGYXZvcml0ZXMubmV4dCgpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSB1cGRhdGVDbGllbnRTaWRlUGFnaW5hdGlvbigpOiB2b2lkIHtcclxuXHRcdGNvbnN0IGFsbEZhdm9yaXRlcyA9IHRoaXMuYWxsRmF2b3JpdGVQYWdlcygpO1xyXG5cdFx0Y29uc3QgdG90YWxJdGVtcyA9IGFsbEZhdm9yaXRlcy5sZW5ndGg7XHJcblx0XHRjb25zdCBwYWdlU2l6ZSA9IHRoaXMucGFnZVNpemUoKTtcclxuXHRcdGNvbnN0IGN1cnJlbnRQYWdlID0gdGhpcy5jdXJyZW50UGFnZSgpO1xyXG5cclxuXHRcdGNvbnN0IHRvdGFsUGFnZXMgPSBNYXRoLmNlaWwodG90YWxJdGVtcyAvIHBhZ2VTaXplKTtcclxuXHRcdHRoaXMudG90YWxQYWdlcy5zZXQodG90YWxQYWdlcyk7XHJcblxyXG5cdFx0Y29uc3Qgc3RhcnRJbmRleCA9IChjdXJyZW50UGFnZSAtIDEpICogcGFnZVNpemU7XHJcblx0XHRjb25zdCBlbmRJbmRleCA9IE1hdGgubWluKHN0YXJ0SW5kZXggKyBwYWdlU2l6ZSwgdG90YWxJdGVtcyk7XHJcblxyXG5cdFx0Y29uc3QgY3VycmVudFBhZ2VEYXRhID0gYWxsRmF2b3JpdGVzLnNsaWNlKHN0YXJ0SW5kZXgsIGVuZEluZGV4KTtcclxuXHRcdHRoaXMuZmF2b3JpdGVQYWdlcy5zZXQoY3VycmVudFBhZ2VEYXRhKTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgY2hlY2tDdXJyZW50UGFnZVN0YXR1cygpOiB2b2lkIHtcclxuXHRcdGNvbnN0IGN1cnJlbnRQYXRoID0gdGhpcy5mYXZvcml0ZVBhZ2VzU2VydmljZS5nZXRDdXJyZW50Um91dGVQYXRoKCk7XHJcblx0XHRjb25zdCBhbGxGYXZvcml0ZXMgPSB0aGlzLmFsbEZhdm9yaXRlUGFnZXMoKTtcclxuXHRcdGNvbnN0IGlzRm91bmQgPSBhbGxGYXZvcml0ZXMuc29tZSgoZmF2KSA9PiBmYXYudXJsID09PSBjdXJyZW50UGF0aCk7XHJcblxyXG5cdFx0dGhpcy5pc0N1cnJlbnRQYWdlRmF2b3JpdGVkLnNldChpc0ZvdW5kKTtcclxuXHR9XHJcblxyXG5cdGFkZEN1cnJlbnRQYWdlVG9GYXZvcml0ZXMoKTogdm9pZCB7XHJcblx0XHRjb25zdCBjdXJyZW50UGF0aCA9IHRoaXMuZmF2b3JpdGVQYWdlc1NlcnZpY2UuZ2V0Q3VycmVudFJvdXRlUGF0aCgpO1xyXG5cclxuXHRcdGNvbnN0IHJlZiA9IHRoaXMuZGlhbG9nU2VydmljZS5vcGVuKEFkZEVkaXRGYXZvcml0ZU1vZGFsQ29tcG9uZW50LCB7XHJcblx0XHRcdGhlYWRlcjogdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnZmF2b3JpdGVQYWdlcy5hZGRUb0Zhdm9yaXRlcycpLFxyXG5cdFx0XHR3aWR0aDogJzUwMHB4JyxcclxuXHRcdFx0bW9kYWw6IHRydWUsXHJcblx0XHRcdGNsb3NhYmxlOiB0cnVlLFxyXG5cdFx0XHRkYXRhOiB7XHJcblx0XHRcdFx0bW9kZTogJ2FkZCcsXHJcblx0XHRcdFx0dXJsOiBjdXJyZW50UGF0aFxyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHJcblx0XHRyZWYub25DbG9zZS5zdWJzY3JpYmUoKHJlc3VsdCkgPT4ge1xyXG5cdFx0XHRpZiAocmVzdWx0Py5zdGF0dXMgPT09ICdzdWNjZXNzJykge1xyXG5cdFx0XHRcdHRoaXMubG9hZEZhdm9yaXRlUGFnZXMoKTtcclxuXHRcdFx0fVxyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHRyZW1vdmVDdXJyZW50UGFnZUZyb21GYXZvcml0ZXMoKTogdm9pZCB7XHJcblx0XHRjb25zdCBjdXJyZW50UGF0aCA9IHRoaXMuZmF2b3JpdGVQYWdlc1NlcnZpY2UuZ2V0Q3VycmVudFJvdXRlUGF0aCgpO1xyXG5cdFx0Y29uc3QgZmF2b3JpdGVzID0gdGhpcy5mYXZvcml0ZVBhZ2VzKCk7XHJcblx0XHRjb25zdCBjdXJyZW50RmF2b3JpdGUgPSBmYXZvcml0ZXMuZmluZCgoZmF2KSA9PiBmYXYudXJsID09PSBjdXJyZW50UGF0aCk7XHJcblxyXG5cdFx0aWYgKGN1cnJlbnRGYXZvcml0ZSkge1xyXG5cdFx0XHR0aGlzLmNvbmZpcm1hdGlvblNlcnZpY2UuY29uZmlybSh7XHJcblx0XHRcdFx0bWVzc2FnZTogYCcke2N1cnJlbnRGYXZvcml0ZS5sYWJlbH0nIGAgKyB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdmYXZvcml0ZVBhZ2VzLmNvbmZpcm1EZWxldGUnKSxcclxuXHRcdFx0XHRoZWFkZXI6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ2Zhdm9yaXRlUGFnZXMuZGVsZXRlQ29uZmlybVRpdGxlJyksXHJcblx0XHRcdFx0aWNvbjogJ3BpIHBpLWluZm8tY2lyY2xlJyxcclxuXHRcdFx0XHRhY2NlcHRMYWJlbDogdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnYWNjZXB0QnV0dG9uTGFiZWwnKSxcclxuXHRcdFx0XHRyZWplY3RMYWJlbDogdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgncmVqZWN0QnV0dG9uTGFiZWwnKSxcclxuXHRcdFx0XHRhY2NlcHRCdXR0b25TdHlsZUNsYXNzOiAncC1idXR0b24tc3VjY2VzcycsXHJcblx0XHRcdFx0cmVqZWN0QnV0dG9uU3R5bGVDbGFzczogJ3AtYnV0dG9uLWRhbmdlcicsXHJcblx0XHRcdFx0YWNjZXB0OiAoKSA9PiB7XHJcblx0XHRcdFx0XHR0aGlzLnN1YmplY3RzLmRlbGV0ZUZhdm9yaXRlLm5leHQoY3VycmVudEZhdm9yaXRlLmlkKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH0pO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0ZWRpdEZhdm9yaXRlKGZhdm9yaXRlOiBGYXZvcml0ZVBhZ2VSZXNwb25zZURUTywgZXZlbnQ6IEV2ZW50KTogdm9pZCB7XHJcblx0XHRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuXHJcblx0XHRjb25zdCByZWYgPSB0aGlzLmRpYWxvZ1NlcnZpY2Uub3BlbihBZGRFZGl0RmF2b3JpdGVNb2RhbENvbXBvbmVudCwge1xyXG5cdFx0XHRoZWFkZXI6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ2Zhdm9yaXRlUGFnZXMuZWRpdEZhdm9yaXRlJyksXHJcblx0XHRcdHdpZHRoOiAnNTAwcHgnLFxyXG5cdFx0XHRtb2RhbDogdHJ1ZSxcclxuXHRcdFx0Y2xvc2FibGU6IHRydWUsXHJcblx0XHRcdGRhdGE6IHtcclxuXHRcdFx0XHRtb2RlOiAnZWRpdCcsXHJcblx0XHRcdFx0ZmF2b3JpdGU6IGZhdm9yaXRlXHJcblx0XHRcdH1cclxuXHRcdH0pO1xyXG5cclxuXHRcdHJlZi5vbkNsb3NlLnN1YnNjcmliZSgocmVzdWx0KSA9PiB7XHJcblx0XHRcdGlmIChyZXN1bHQ/LnN0YXR1cyA9PT0gJ3N1Y2Nlc3MnKSB7XHJcblx0XHRcdFx0dGhpcy5sb2FkRmF2b3JpdGVQYWdlcygpO1xyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdGRlbGV0ZUZhdm9yaXRlKGZhdm9yaXRlOiBGYXZvcml0ZVBhZ2VSZXNwb25zZURUTywgZXZlbnQ6IEV2ZW50KTogdm9pZCB7XHJcblx0XHRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuXHJcblx0XHR0aGlzLmNvbmZpcm1hdGlvblNlcnZpY2UuY29uZmlybSh7XHJcblx0XHRcdHRhcmdldDogZXZlbnQudGFyZ2V0IGFzIEV2ZW50VGFyZ2V0LFxyXG5cdFx0XHRtZXNzYWdlOiBgJyR7ZmF2b3JpdGUubGFiZWx9JyBgICsgdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnZmF2b3JpdGVQYWdlcy5jb25maXJtRGVsZXRlJyksXHJcblx0XHRcdGhlYWRlcjogdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnZmF2b3JpdGVQYWdlcy5kZWxldGVDb25maXJtVGl0bGUnKSxcclxuXHRcdFx0aWNvbjogJ3BpIHBpLWluZm8tY2lyY2xlJyxcclxuXHRcdFx0YWNjZXB0TGFiZWw6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ2FjY2VwdEJ1dHRvbkxhYmVsJyksXHJcblx0XHRcdHJlamVjdExhYmVsOiB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdyZWplY3RCdXR0b25MYWJlbCcpLFxyXG5cdFx0XHRhY2NlcHRCdXR0b25TdHlsZUNsYXNzOiAncC1idXR0b24tc3VjY2VzcycsXHJcblx0XHRcdHJlamVjdEJ1dHRvblN0eWxlQ2xhc3M6ICdwLWJ1dHRvbi1kYW5nZXInLFxyXG5cdFx0XHRhY2NlcHQ6ICgpID0+IHtcclxuXHRcdFx0XHR0aGlzLnN1YmplY3RzLmRlbGV0ZUZhdm9yaXRlLm5leHQoZmF2b3JpdGUuaWQpO1xyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdG5hdmlnYXRlVG9GYXZvcml0ZShmYXZvcml0ZTogRmF2b3JpdGVQYWdlUmVzcG9uc2VEVE8pOiB2b2lkIHtcclxuXHRcdHRoaXMuZmF2b3JpdGVQYWdlc1NlcnZpY2UubmF2aWdhdGVUb0Zhdm9yaXRlUGFnZShmYXZvcml0ZSk7XHJcblx0XHR0aGlzLnZpc2libGUgPSBmYWxzZTtcclxuXHR9XHJcblxyXG5cdHRyYWNrQnlGYXZvcml0ZUlkKGluZGV4OiBudW1iZXIsIGZhdm9yaXRlOiBGYXZvcml0ZVBhZ2VSZXNwb25zZURUTyk6IG51bWJlciB7XHJcblx0XHRyZXR1cm4gZmF2b3JpdGUuaWQ7XHJcblx0fVxyXG5cclxuXHRvblBhZ2VDaGFuZ2UoZXZlbnQ6IGFueSk6IHZvaWQge1xyXG5cdFx0dGhpcy5jdXJyZW50UGFnZS5zZXQoZXZlbnQucGFnZSArIDEpO1xyXG5cdFx0dGhpcy5wYWdlU2l6ZS5zZXQoZXZlbnQucm93cyk7XHJcblx0XHR0aGlzLnVwZGF0ZUNsaWVudFNpZGVQYWdpbmF0aW9uKCk7IC8vIFVwZGF0ZSBwYWdpbmF0aW9uIGNsaWVudC1zaWRlLCBubyBBUEkgY2FsbFxyXG5cdH1cclxuXHJcblx0Z2V0RnVsbFVybCh1cmw6IHN0cmluZyk6IHN0cmluZyB7XHJcblx0XHRyZXR1cm4gdGhpcy5mYXZvcml0ZVBhZ2VzU2VydmljZS5nZXRGdWxsVXJsKHVybCk7XHJcblx0fVxyXG5cclxuXHJcbn1cclxuIiwiPHAtc2lkZWJhclxyXG5cdFsodmlzaWJsZSldPVwidmlzaWJsZVwiXHJcblx0cG9zaXRpb249XCJyaWdodFwiXHJcblx0W3RyYW5zaXRpb25PcHRpb25zXT1cIicuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSknXCJcclxuXHRzdHlsZUNsYXNzPVwibGF5b3V0LWZhdm9yaXRlLXBhZ2VzLXNpZGViYXIgdy1mdWxsIHNtOnctMzByZW1cIlxyXG5cdCp0cmFuc2xvY289XCJsZXQgdDsgcmVhZDogJ2Zhdm9yaXRlUGFnZXMnXCI+XHJcblx0PG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiPlxyXG5cdFx0PGRpdiBjbGFzcz1cImZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIHctZnVsbFwiPlxyXG5cdFx0XHQ8ZGl2IGNsYXNzPVwiZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuXHRcdFx0XHQ8aSBjbGFzcz1cInBpIHBpLWhlYXJ0IHRleHQtcHJpbWFyeSB0ZXh0LXhsXCI+PC9pPlxyXG5cdFx0XHRcdDxzcGFuIGNsYXNzPVwiZm9udC1ib2xkIHRleHQtbGdcIj57eyB0KCdmYXZvcml0ZVBhZ2VzJykgfX08L3NwYW4+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0PC9kaXY+XHJcblx0PC9uZy10ZW1wbGF0ZT5cclxuXHJcblx0PGRpdiBjbGFzcz1cImZhdm9yaXRlLXBhZ2VzLWNvbnRlbnRcIj5cclxuXHRcdEBpZiAoaXNDdXJyZW50UGFnZUZhdm9yaXRlZCgpKSB7XHJcblx0XHRcdDxkaXYgY2xhc3M9XCJjdXJyZW50LWZhdm9yaXRlZC1tZXNzYWdlXCI+XHJcblx0XHRcdFx0PGRpdiBjbGFzcz1cIm1lc3NhZ2UtY29udGVudFwiPlxyXG5cdFx0XHRcdFx0PGkgY2xhc3M9XCJwaSBwaS1jaGVjay1jaXJjbGUgdGV4dC1ncmVlbi01MDBcIj48L2k+XHJcblx0XHRcdFx0XHQ8c3Bhbj57eyB0KCdjdXJyZW50UGFnZUZhdm9yaXRlZCcpIH19PC9zcGFuPlxyXG5cdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdH1cclxuXHJcblx0XHQ8ZGl2IGNsYXNzPVwiYWRkLXNlY3Rpb25cIj5cclxuXHRcdFx0QGlmICghaXNDdXJyZW50UGFnZUZhdm9yaXRlZCgpKSB7XHJcblx0XHRcdFx0PGFyaWwtYnV0dG9uXHJcblx0XHRcdFx0XHRbbGFiZWxdPVwidCgnYWRkQ3VycmVudFBhZ2UnKVwiXHJcblx0XHRcdFx0XHRpY29uPVwiUExVU1wiXHJcblx0XHRcdFx0XHRjb2xvcj1cInByaW1hcnlcIlxyXG5cdFx0XHRcdFx0c2l6ZT1cInNtXCJcclxuXHRcdFx0XHRcdChjbGlja0V2ZW50KT1cImFkZEN1cnJlbnRQYWdlVG9GYXZvcml0ZXMoKVwiPlxyXG5cdFx0XHRcdDwvYXJpbC1idXR0b24+XHJcblx0XHRcdH0gQGVsc2Uge1xyXG5cdFx0XHRcdDxhcmlsLWJ1dHRvblxyXG5cdFx0XHRcdFx0W2xhYmVsXT1cInQoJ3JlbW92ZUN1cnJlbnRQYWdlJylcIlxyXG5cdFx0XHRcdFx0aWNvbj1cIlRJTUVTXCJcclxuXHRcdFx0XHRcdGNvbG9yPVwiZGFuZ2VyXCJcclxuXHRcdFx0XHRcdHNpemU9XCJzbVwiXHJcblx0XHRcdFx0XHQoY2xpY2tFdmVudCk9XCJyZW1vdmVDdXJyZW50UGFnZUZyb21GYXZvcml0ZXMoKVwiPlxyXG5cdFx0XHRcdDwvYXJpbC1idXR0b24+XHJcblx0XHRcdH1cclxuXHRcdDwvZGl2PlxyXG5cclxuXHRcdEBpZiAoZmF2b3JpdGVQYWdlcygpLmxlbmd0aCA+IDApIHtcclxuXHRcdFx0PGRpdiBjbGFzcz1cImZhdm9yaXRlcy1saXN0XCI+XHJcblx0XHRcdFx0PHAtc2Nyb2xsUGFuZWwgW3N0eWxlXT1cInsgd2lkdGg6ICcxMDAlJywgaGVpZ2h0OiAnMTAwJScgfVwiPlxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cImZhdm9yaXRlcy1pdGVtc1wiPlxyXG5cdFx0XHRcdFx0XHRAZm9yIChmYXZvcml0ZSBvZiBmYXZvcml0ZVBhZ2VzKCk7IHRyYWNrIHRyYWNrQnlGYXZvcml0ZUlkKCRpbmRleCwgZmF2b3JpdGUpKSB7XHJcblx0XHRcdFx0XHRcdFx0PGRpdlxyXG5cdFx0XHRcdFx0XHRcdFx0Y2xhc3M9XCJmYXZvcml0ZS1pdGVtXCJcclxuXHRcdFx0XHRcdFx0XHRcdFtjbGFzcy5kZWZhdWx0LWl0ZW1dPVwiZmF2b3JpdGUuaWQgPCAwXCJcclxuXHRcdFx0XHRcdFx0XHRcdChjbGljayk9XCJuYXZpZ2F0ZVRvRmF2b3JpdGUoZmF2b3JpdGUpXCJcclxuXHRcdFx0XHRcdFx0XHRcdFtwVG9vbHRpcF09XCJnZXRGdWxsVXJsKGZhdm9yaXRlLnVybClcIlxyXG5cdFx0XHRcdFx0XHRcdFx0dG9vbHRpcFBvc2l0aW9uPVwidG9wXCI+XHJcblx0XHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiaXRlbS1jb250ZW50XCI+XHJcblx0XHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpdGVtLWhlYWRlclwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpdGVtLXRpdGxlXCI+XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8aSBjbGFzcz1cInBpIHBpLWV4dGVybmFsLWxpbmsgdGV4dC1wcmltYXJ5IG1yLTJcIj48L2k+XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cInRpdGxlLXRleHRcIj57eyBmYXZvcml0ZS5sYWJlbCB9fTwvc3Bhbj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8ZGl2PlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PGZhLWljb25cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0W2ljb25dPVwic29saWRJY29ucy5mYVBlblRvU3F1YXJlXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0c2l6ZT1cImxnXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0c3R5bGU9XCJjb2xvcjogdmFyKC0teWVsbG93LTUwMClcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRjbGFzcz1cImNvbC0yIGN1cnNvci1wb2ludGVyXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0KGNsaWNrKT1cImVkaXRGYXZvcml0ZShmYXZvcml0ZSwgJGV2ZW50KVwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PC9mYS1pY29uPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PGZhLWljb25cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0W2ljb25dPVwic29saWRJY29ucy5mYVRyYXNoXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0c2l6ZT1cImxnXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0c3R5bGU9XCJjb2xvcjogdmFyKC0tcmVkLTUwMClcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRjbGFzcz1cImNvbC0yIGN1cnNvci1wb2ludGVyXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0KGNsaWNrKT1cImRlbGV0ZUZhdm9yaXRlKGZhdm9yaXRlLCAkZXZlbnQpXCI+XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8L2ZhLWljb24+XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdDwvcC1zY3JvbGxQYW5lbD5cclxuXHRcdFx0PC9kaXY+XHJcblx0XHR9IEBlbHNlIHtcclxuXHRcdFx0PGRpdiBjbGFzcz1cImVtcHR5LXN0YXRlXCI+XHJcblx0XHRcdFx0PGRpdiBjbGFzcz1cImVtcHR5LWNvbnRlbnRcIj5cclxuXHRcdFx0XHRcdDxpIGNsYXNzPVwicGkgcGktaGVhcnQgZW1wdHktaWNvblwiPjwvaT5cclxuXHRcdFx0XHRcdDxoMyBjbGFzcz1cImVtcHR5LXRpdGxlXCI+e3sgdCgnbm9GYXZvcml0ZXMnKSB9fTwvaDM+XHJcblx0XHRcdFx0XHQ8cCBjbGFzcz1cImVtcHR5LW1lc3NhZ2VcIj57eyB0KCdzdGFydEFkZGluZ0Zhdm9yaXRlcycpIH19PC9wPlxyXG5cdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdH1cclxuXHRcdDxkaXY+XHJcblx0XHRcdDxwLXBhZ2luYXRvclxyXG5cdFx0XHRcdFtmaXJzdF09XCIoY3VycmVudFBhZ2UoKSAtIDEpICogcGFnZVNpemUoKVwiXHJcblx0XHRcdFx0W3Jvd3NdPVwicGFnZVNpemUoKVwiXHJcblx0XHRcdFx0W3RvdGFsUmVjb3Jkc109XCJ0b3RhbEl0ZW1zKClcIlxyXG5cdFx0XHRcdFtzaG93Q3VycmVudFBhZ2VSZXBvcnRdPVwidHJ1ZVwiXHJcblx0XHRcdFx0W2N1cnJlbnRQYWdlUmVwb3J0VGVtcGxhdGVdPVwidCgncGFnaW5hdG9yVGVtcGxhdGUnKVwiXHJcblx0XHRcdFx0W3Nob3dGaXJzdExhc3RJY29uXT1cImZhbHNlXCJcclxuXHRcdFx0XHRbc2hvd1BhZ2VMaW5rc109XCJmYWxzZVwiXHJcblx0XHRcdFx0KG9uUGFnZUNoYW5nZSk9XCJvblBhZ2VDaGFuZ2UoJGV2ZW50KVwiPlxyXG5cdFx0XHQ8L3AtcGFnaW5hdG9yPlxyXG5cdFx0PC9kaXY+XHJcblx0PC9kaXY+XHJcblxyXG5cdDxwLWNvbmZpcm1EaWFsb2c+PC9wLWNvbmZpcm1EaWFsb2c+XHJcbjwvcC1zaWRlYmFyPlxyXG4iXX0=
217
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmF2b3JpdGUtcGFnZXMtc2lkZWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3RoZW1lL2xheW91dC9hcHAvZmF2b3JpdGUtcGFnZXMvZmF2b3JpdGUtcGFnZXMtc2lkZWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3RoZW1lL2xheW91dC9hcHAvZmF2b3JpdGUtcGFnZXMvZmF2b3JpdGUtcGFnZXMtc2lkZWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1RSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFdEQsT0FBTyxFQUFFLG1CQUFtQixFQUFrQixNQUFNLGFBQWEsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsYUFBYSxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDM0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFaEQsT0FBTyxFQUFFLGVBQWUsRUFBb0IsTUFBTSxtQkFBbUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUxQyxPQUFPLEVBQUUs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LENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEQsQ0FBQzs4R0F0TlcsNkJBQTZCO2tHQUE3Qiw2QkFBNkIseUVBRjlCLENBQUMsbUJBQW1CLEVBQUUsYUFBYSxDQUFDLDBCQ3hDaEQsb3JJQThHQSxpbEZEbkZFLFlBQVksOEJBQ1osYUFBYSxtZEFDYixpQkFBaUIsK0lBQ2pCLG1CQUFtQixvbUJBQ25CLGVBQWUscWhCQUNmLG1CQUFtQiwrQkFDbkIsZUFBZSw2TkFDZixlQUFlLGdPQUNmLGFBQWEsc1hBQ2IsaUJBQWlCOzsyRkFNTiw2QkFBNkI7a0JBbkJ6QyxTQUFTO2lDQUNHLElBQUksWUFDTiw0QkFBNEIsV0FDN0I7d0JBQ1IsWUFBWTt3QkFDWixhQUFhO3dCQUNiLGlCQUFpQjt3QkFDakIsbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZixlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsaUJBQWlCO3FCQUNqQixhQUdVLENBQUMsbUJBQW1CLEVBQUUsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIGVmZmVjdCwgc2lnbmFsLCBjb21wdXRlZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcclxuXHJcbmltcG9ydCB7IENvbmZpcm1hdGlvblNlcnZpY2UsIE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAncHJpbWVuZy9hcGknO1xyXG5pbXBvcnQgeyBDb25maXJtRGlhbG9nTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9jb25maXJtZGlhbG9nJztcclxuaW1wb3J0IHsgRGlhbG9nU2VydmljZSwgRHluYW1pY0RpYWxvZ01vZHVsZSB9IGZyb20gJ3ByaW1lbmcvZHluYW1pY2RpYWxvZyc7XHJcbmltcG9ydCB7IFBhZ2luYXRvck1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvcGFnaW5hdG9yJztcclxuaW1wb3J0IHsgU2Nyb2xsUGFuZWxNb2R1bGUgfSBmcm9tICdwcmltZW5nL3Njcm9sbHBhbmVsJztcclxuaW1wb3J0IHsgU2lkZWJhck1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvc2lkZWJhcic7XHJcbmltcG9ydCB7IFRvb2x0aXBNb2R1bGUgfSBmcm9tICdwcmltZW5nL3Rvb2x0aXAnO1xyXG5cclxuaW1wb3J0IHsgVHJhbnNsb2NvTW9kdWxlLCBUcmFuc2xvY29TZXJ2aWNlIH0gZnJvbSAnQG5nbmVhdC90cmFuc2xvY28nO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvYnV0dG9uJztcclxuXHJcbmltcG9ydCB7IExheW91dFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2FwcC5sYXlvdXQuc2VydmljZSc7XHJcbmltcG9ydCB7IEZhdm9yaXRlUGFnZVJlc3BvbnNlRFRPLCBGYXZvcml0ZVBhZ2VzU2VydmljZSB9IGZyb20gJy4vZmF2b3JpdGUtcGFnZXMuc2VydmljZSc7XHJcbmltcG9ydCB7IEFkZEVkaXRGYXZvcml0ZU1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi9tb2RhbHMvYWRkLWVkaXQtZmF2b3JpdGUtbW9kYWwvYWRkLWVkaXQtZmF2b3JpdGUtbW9kYWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9udEF3ZXNvbWVNb2R1bGUgfSBmcm9tICdAZm9ydGF3ZXNvbWUvYW5ndWxhci1mb250YXdlc29tZSc7XHJcbmltcG9ydCB7IHNvbGlkSWNvbnMgfSBmcm9tICdhcmlsL3V0aWwvbGliJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0c2VsZWN0b3I6ICdhcHAtZmF2b3JpdGUtcGFnZXMtc2lkZWJhcicsXHJcblx0aW1wb3J0czogW1xyXG5cdFx0Q29tbW9uTW9kdWxlLFxyXG5cdFx0U2lkZWJhck1vZHVsZSxcclxuXHRcdFNjcm9sbFBhbmVsTW9kdWxlLFxyXG5cdFx0Q29uZmlybURpYWxvZ01vZHVsZSxcclxuXHRcdFBhZ2luYXRvck1vZHVsZSxcclxuXHRcdER5bmFtaWNEaWFsb2dNb2R1bGUsXHJcblx0XHRCdXR0b25Db21wb25lbnQsXHJcblx0XHRUcmFuc2xvY29Nb2R1bGUsXHJcblx0XHRUb29sdGlwTW9kdWxlLFxyXG5cdFx0Rm9udEF3ZXNvbWVNb2R1bGVcclxuXHRdLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9mYXZvcml0ZS1wYWdlcy1zaWRlYmFyLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZVVybHM6IFsnLi9mYXZvcml0ZS1wYWdlcy1zaWRlYmFyLmNvbXBvbmVudC5zY3NzJ10sXHJcblx0cHJvdmlkZXJzOiBbQ29uZmlybWF0aW9uU2VydmljZSwgRGlhbG9nU2VydmljZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIEZhdm9yaXRlUGFnZXNTaWRlYmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHRmYXZvcml0ZVBhZ2VzID0gc2lnbmFsPEZhdm9yaXRlUGFnZVJlc3BvbnNlRFRPW10+KFtdKTtcclxuXHRpc0N1cnJlbnRQYWdlRmF2b3JpdGVkID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKTtcclxuXHRzb2xpZEljb25zID0gc29saWRJY29ucztcclxuXHRjdXJyZW50UGFnZSA9IHNpZ25hbDxudW1iZXI+KDEpO1xyXG5cdHBhZ2VTaXplID0gc2lnbmFsPG51bWJlcj4oMTApO1xyXG5cdHRvdGFsSXRlbXMgPSBzaWduYWw8bnVtYmVyPigwKTtcclxuXHR0b3RhbFBhZ2VzID0gc2lnbmFsPG51bWJlcj4oMCk7XHJcblx0YWxsRmF2b3JpdGVQYWdlcyA9IGNvbXB1dGVkKCgpID0+IHRoaXMuZmF2b3JpdGVQYWdlc1NlcnZpY2UuYWxsRmF2b3JpdGVQYWdlcygpKTtcclxuXHJcblx0cHJpdmF0ZSBzdWJqZWN0cyA9IHtcclxuXHRcdGxvYWRBbGxGYXZvcml0ZXM6IG5ldyBTdWJqZWN0PHZvaWQ+KCksXHJcblx0XHRkZWxldGVGYXZvcml0ZTogbmV3IFN1YmplY3Q8bnVtYmVyPigpXHJcblx0fTtcclxuXHJcblx0bG9hZEFsbEZhdm9yaXRlc1NlcnZpY2UgPSB0b1NpZ25hbChcclxuXHRcdHRoaXMuc3ViamVjdHMubG9hZEFsbEZhdm9yaXRlcy5waXBlKFxyXG5cdFx0XHRzd2l0Y2hNYXAoKCkgPT5cclxuXHRcdFx0XHR0aGlzLmZhdm9yaXRlUGFnZXNTZXJ2aWNlLmZpbHRlckZhdm9yaXRlUGFnZXMoe1xyXG5cdFx0XHRcdFx0cGFnZVNpemU6IDEwMDAsXHJcblx0XHRcdFx0XHRwYWdlTnVtYmVyOiAxXHJcblx0XHRcdFx0fSlcclxuXHRcdFx0KVxyXG5cdFx0KVxyXG5cdCk7XHJcblxyXG5cdGRlbGV0ZUZhdm9yaXRlU2VydmljZSA9IHRvU2lnbmFsKFxyXG5cdFx0dGhpcy5zdWJqZWN0cy5kZWxldGVGYXZvcml0ZS5waXBlKHN3aXRjaE1hcCgoaWQpID0+IHRoaXMuZmF2b3JpdGVQYWdlc1NlcnZpY2UuZGVsZXRlRmF2b3JpdGVQYWdlKGlkKSkpXHJcblx0KTtcclxuXHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwdWJsaWMgbGF5b3V0U2VydmljZTogTGF5b3V0U2VydmljZSxcclxuXHRcdHByaXZhdGUgZmF2b3JpdGVQYWdlc1NlcnZpY2U6IEZhdm9yaXRlUGFnZXNTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBjb25maXJtYXRpb25TZXJ2aWNlOiBDb25maXJtYXRpb25TZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXHJcblx0XHRwcml2YXRlIGRpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsXHJcblx0XHRwcml2YXRlIHRyYW5zbG9jb1NlcnZpY2U6IFRyYW5zbG9jb1NlcnZpY2VcclxuXHQpIHtcclxuXHRcdHRoaXMuaW5pdGlhbGl6ZUVmZmVjdHMoKTtcclxuXHR9XHJcblxyXG5cdG5nT25Jbml0KCk6IHZvaWQge1xyXG5cdFx0dGhpcy5sb2FkRmF2b3JpdGVQYWdlcygpO1xyXG5cdFx0dGhpcy5jaGVja0N1cnJlbnRQYWdlU3RhdHVzKCk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGluaXRpYWxpemVFZmZlY3RzKCk6IHZvaWQge1xyXG5cdFx0ZWZmZWN0KFxyXG5cdFx0XHQoKSA9PiB7XHJcblx0XHRcdFx0Y29uc3Qgc2VydmljZSA9IHRoaXMubG9hZEFsbEZhdm9yaXRlc1NlcnZpY2UoKTtcclxuXHRcdFx0XHRpZiAoc2VydmljZT8ucmVzcG9uc2UpIHtcclxuXHRcdFx0XHRcdHRoaXMuZmF2b3JpdGVQYWdlc1NlcnZpY2UuYWxsRmF2b3JpdGVQYWdlcy5zZXQoc2VydmljZS5yZXNwb25zZS5yZXN1bHQpO1xyXG5cdFx0XHRcdFx0dGhpcy50b3RhbEl0ZW1zLnNldChzZXJ2aWNlLnJlc3BvbnNlLnJlc3VsdC5sZW5ndGgpO1xyXG5cdFx0XHRcdFx0dGhpcy51cGRhdGVDbGllbnRTaWRlUGFnaW5hdGlvbigpO1xyXG5cdFx0XHRcdFx0dGhpcy5jaGVja0N1cnJlbnRQYWdlU3RhdHVzKCk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9LFxyXG5cdFx0XHR7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH1cclxuXHRcdCk7XHJcblxyXG5cdFx0ZWZmZWN0KFxyXG5cdFx0XHQoKSA9PiB7XHJcblx0XHRcdFx0Y29uc3Qgc2VydmljZSA9IHRoaXMuZGVsZXRlRmF2b3JpdGVTZXJ2aWNlKCk7XHJcblx0XHRcdFx0aWYgKHNlcnZpY2U/LnJlc3BvbnNlKSB7XHJcblx0XHRcdFx0XHR0aGlzLmxvYWRGYXZvcml0ZVBhZ2VzKCk7XHJcblx0XHRcdFx0XHR0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7XHJcblx0XHRcdFx0XHRcdHNldmVyaXR5OiAnc3VjY2VzcycsXHJcblx0XHRcdFx0XHRcdHN1bW1hcnk6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ2Zhdm9yaXRlUGFnZXMuc3VjY2VzcycpLFxyXG5cdFx0XHRcdFx0XHRkZXRhaWw6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ2Zhdm9yaXRlUGFnZXMuZGVsZXRlZFN1Y2Nlc3NmdWxseScpLFxyXG5cdFx0XHRcdFx0XHRrZXk6ICd0b2FzdC1yb290J1xyXG5cdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9LFxyXG5cdFx0XHR7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRnZXQgdmlzaWJsZSgpOiBib29sZWFuIHtcclxuXHRcdHJldHVybiB0aGlzLmxheW91dFNlcnZpY2Uuc3RhdGUuZmF2b3JpdGVQYWdlc1NpZGViYXJWaXNpYmxlO1xyXG5cdH1cclxuXHJcblx0c2V0IHZpc2libGUodmFsdWU6IGJvb2xlYW4pIHtcclxuXHRcdHRoaXMubGF5b3V0U2VydmljZS5zdGF0ZS5mYXZvcml0ZVBhZ2VzU2lkZWJhclZpc2libGUgPSB2YWx1ZTtcclxuXHRcdGlmICh2YWx1ZSkge1xyXG5cdFx0XHR0aGlzLmNoZWNrQ3VycmVudFBhZ2VTdGF0dXMoKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHByaXZhdGUgbG9hZEZhdm9yaXRlUGFnZXMoKTogdm9pZCB7XHJcblx0XHR0aGlzLnN1YmplY3RzLmxvYWRBbGxGYXZvcml0ZXMubmV4dCgpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSB1cGRhdGVDbGllbnRTaWRlUGFnaW5hdGlvbigpOiB2b2lkIHtcclxuXHRcdGNvbnN0IGFsbEZhdm9yaXRlcyA9IHRoaXMuYWxsRmF2b3JpdGVQYWdlcygpO1xyXG5cdFx0Y29uc3QgdG90YWxJdGVtcyA9IGFsbEZhdm9yaXRlcy5sZW5ndGg7XHJcblx0XHRjb25zdCBwYWdlU2l6ZSA9IHRoaXMucGFnZVNpemUoKTtcclxuXHRcdGNvbnN0IGN1cnJlbnRQYWdlID0gdGhpcy5jdXJyZW50UGFnZSgpO1xyXG5cclxuXHRcdGNvbnN0IHRvdGFsUGFnZXMgPSBNYXRoLmNlaWwodG90YWxJdGVtcyAvIHBhZ2VTaXplKTtcclxuXHRcdHRoaXMudG90YWxQYWdlcy5zZXQodG90YWxQYWdlcyk7XHJcblxyXG5cdFx0Y29uc3Qgc3RhcnRJbmRleCA9IChjdXJyZW50UGFnZSAtIDEpICogcGFnZVNpemU7XHJcblx0XHRjb25zdCBlbmRJbmRleCA9IE1hdGgubWluKHN0YXJ0SW5kZXggKyBwYWdlU2l6ZSwgdG90YWxJdGVtcyk7XHJcblxyXG5cdFx0Y29uc3QgY3VycmVudFBhZ2VEYXRhID0gYWxsRmF2b3JpdGVzLnNsaWNlKHN0YXJ0SW5kZXgsIGVuZEluZGV4KTtcclxuXHRcdHRoaXMuZmF2b3JpdGVQYWdlcy5zZXQoY3VycmVudFBhZ2VEYXRhKTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgY2hlY2tDdXJyZW50UGFnZVN0YXR1cygpOiB2b2lkIHtcclxuXHRcdGNvbnN0IGN1cnJlbnRQYXRoID0gdGhpcy5mYXZvcml0ZVBhZ2VzU2VydmljZS5nZXRDdXJyZW50Um91dGVQYXRoKCk7XHJcblx0XHRjb25zdCBhbGxGYXZvcml0ZXMgPSB0aGlzLmFsbEZhdm9yaXRlUGFnZXMoKTtcclxuXHRcdGNvbnN0IGlzRm91bmQgPSBhbGxGYXZvcml0ZXMuc29tZSgoZmF2KSA9PiBmYXYudXJsID09PSBjdXJyZW50UGF0aCk7XHJcblxyXG5cdFx0dGhpcy5pc0N1cnJlbnRQYWdlRmF2b3JpdGVkLnNldChpc0ZvdW5kKTtcclxuXHR9XHJcblxyXG5cdGFkZEN1cnJlbnRQYWdlVG9GYXZvcml0ZXMoKTogdm9pZCB7XHJcblx0XHRjb25zdCBjdXJyZW50UGF0aCA9IHRoaXMuZmF2b3JpdGVQYWdlc1NlcnZpY2UuZ2V0Q3VycmVudFJvdXRlUGF0aCgpO1xyXG5cclxuXHRcdGNvbnN0IHJlZiA9IHRoaXMuZGlhbG9nU2VydmljZS5vcGVuKEFkZEVkaXRGYXZvcml0ZU1vZGFsQ29tcG9uZW50LCB7XHJcblx0XHRcdGhlYWRlcjogdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnZmF2b3JpdGVQYWdlcy5hZGRUb0Zhdm9yaXRlcycpLFxyXG5cdFx0XHR3aWR0aDogJzUwMHB4JyxcclxuXHRcdFx0bW9kYWw6IHRydWUsXHJcblx0XHRcdGNsb3NhYmxlOiB0cnVlLFxyXG5cdFx0XHRkYXRhOiB7XHJcblx0XHRcdFx0bW9kZTogJ2FkZCcsXHJcblx0XHRcdFx0dXJsOiBjdXJyZW50UGF0aFxyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHJcblx0XHRyZWYub25DbG9zZS5zdWJzY3JpYmUoKHJlc3VsdCkgPT4ge1xyXG5cdFx0XHRpZiAocmVzdWx0Py5zdGF0dXMgPT09ICdzdWNjZXNzJykge1xyXG5cdFx0XHRcdHRoaXMubG9hZEZhdm9yaXRlUGFnZXMoKTtcclxuXHRcdFx0fVxyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHRyZW1vdmVDdXJyZW50UGFnZUZyb21GYXZvcml0ZXMoKTogdm9pZCB7XHJcblx0XHRjb25zdCBjdXJyZW50UGF0aCA9IHRoaXMuZmF2b3JpdGVQYWdlc1NlcnZpY2UuZ2V0Q3VycmVudFJvdXRlUGF0aCgpO1xyXG5cdFx0Y29uc3QgZmF2b3JpdGVzID0gdGhpcy5mYXZvcml0ZVBhZ2VzKCk7XHJcblx0XHRjb25zdCBjdXJyZW50RmF2b3JpdGUgPSBmYXZvcml0ZXMuZmluZCgoZmF2KSA9PiBmYXYudXJsID09PSBjdXJyZW50UGF0aCk7XHJcblxyXG5cdFx0aWYgKGN1cnJlbnRGYXZvcml0ZSkge1xyXG5cdFx0XHR0aGlzLmNvbmZpcm1hdGlvblNlcnZpY2UuY29uZmlybSh7XHJcblx0XHRcdFx0bWVzc2FnZTogYCcke2N1cnJlbnRGYXZvcml0ZS5sYWJlbH0nIGAgKyB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdmYXZvcml0ZVBhZ2VzLmNvbmZpcm1EZWxldGUnKSxcclxuXHRcdFx0XHRoZWFkZXI6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ2Zhdm9yaXRlUGFnZXMuZGVsZXRlQ29uZmlybVRpdGxlJyksXHJcblx0XHRcdFx0aWNvbjogJ3BpIHBpLWluZm8tY2lyY2xlJyxcclxuXHRcdFx0XHRhY2NlcHRMYWJlbDogdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnYWNjZXB0QnV0dG9uTGFiZWwnKSxcclxuXHRcdFx0XHRyZWplY3RMYWJlbDogdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgncmVqZWN0QnV0dG9uTGFiZWwnKSxcclxuXHRcdFx0XHRhY2NlcHRCdXR0b25TdHlsZUNsYXNzOiAncC1idXR0b24tc3VjY2VzcycsXHJcblx0XHRcdFx0cmVqZWN0QnV0dG9uU3R5bGVDbGFzczogJ3AtYnV0dG9uLWRhbmdlcicsXHJcblx0XHRcdFx0YWNjZXB0OiAoKSA9PiB7XHJcblx0XHRcdFx0XHR0aGlzLnN1YmplY3RzLmRlbGV0ZUZhdm9yaXRlLm5leHQoY3VycmVudEZhdm9yaXRlLmlkKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH0pO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0ZWRpdEZhdm9yaXRlKGZhdm9yaXRlOiBGYXZvcml0ZVBhZ2VSZXNwb25zZURUTywgZXZlbnQ6IEV2ZW50KTogdm9pZCB7XHJcblx0XHRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuXHJcblx0XHRjb25zdCByZWYgPSB0aGlzLmRpYWxvZ1NlcnZpY2Uub3BlbihBZGRFZGl0RmF2b3JpdGVNb2RhbENvbXBvbmVudCwge1xyXG5cdFx0XHRoZWFkZXI6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ2Zhdm9yaXRlUGFnZXMuZWRpdEZhdm9yaXRlJyksXHJcblx0XHRcdHdpZHRoOiAnNTAwcHgnLFxyXG5cdFx0XHRtb2RhbDogdHJ1ZSxcclxuXHRcdFx0Y2xvc2FibGU6IHRydWUsXHJcblx0XHRcdGRhdGE6IHtcclxuXHRcdFx0XHRtb2RlOiAnZWRpdCcsXHJcblx0XHRcdFx0ZmF2b3JpdGU6IGZhdm9yaXRlXHJcblx0XHRcdH1cclxuXHRcdH0pO1xyXG5cclxuXHRcdHJlZi5vbkNsb3NlLnN1YnNjcmliZSgocmVzdWx0KSA9PiB7XHJcblx0XHRcdGlmIChyZXN1bHQ/LnN0YXR1cyA9PT0gJ3N1Y2Nlc3MnKSB7XHJcblx0XHRcdFx0dGhpcy5sb2FkRmF2b3JpdGVQYWdlcygpO1xyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdGRlbGV0ZUZhdm9yaXRlKGZhdm9yaXRlOiBGYXZvcml0ZVBhZ2VSZXNwb25zZURUTywgZXZlbnQ6IEV2ZW50KTogdm9pZCB7XHJcblx0XHRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuXHJcblx0XHR0aGlzLmNvbmZpcm1hdGlvblNlcnZpY2UuY29uZmlybSh7XHJcblx0XHRcdHRhcmdldDogZXZlbnQudGFyZ2V0IGFzIEV2ZW50VGFyZ2V0LFxyXG5cdFx0XHRtZXNzYWdlOiBgJyR7ZmF2b3JpdGUubGFiZWx9JyBgICsgdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnZmF2b3JpdGVQYWdlcy5jb25maXJtRGVsZXRlJyksXHJcblx0XHRcdGhlYWRlcjogdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnZmF2b3JpdGVQYWdlcy5kZWxldGVDb25maXJtVGl0bGUnKSxcclxuXHRcdFx0aWNvbjogJ3BpIHBpLWluZm8tY2lyY2xlJyxcclxuXHRcdFx0YWNjZXB0TGFiZWw6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ2FjY2VwdEJ1dHRvbkxhYmVsJyksXHJcblx0XHRcdHJlamVjdExhYmVsOiB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdyZWplY3RCdXR0b25MYWJlbCcpLFxyXG5cdFx0XHRhY2NlcHRCdXR0b25TdHlsZUNsYXNzOiAncC1idXR0b24tc3VjY2VzcycsXHJcblx0XHRcdHJlamVjdEJ1dHRvblN0eWxlQ2xhc3M6ICdwLWJ1dHRvbi1kYW5nZXInLFxyXG5cdFx0XHRhY2NlcHQ6ICgpID0+IHtcclxuXHRcdFx0XHR0aGlzLnN1YmplY3RzLmRlbGV0ZUZhdm9yaXRlLm5leHQoZmF2b3JpdGUuaWQpO1xyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdG5hdmlnYXRlVG9GYXZvcml0ZShmYXZvcml0ZTogRmF2b3JpdGVQYWdlUmVzcG9uc2VEVE8pOiB2b2lkIHtcclxuXHRcdHRoaXMuZmF2b3JpdGVQYWdlc1NlcnZpY2UubmF2aWdhdGVUb0Zhdm9yaXRlUGFnZShmYXZvcml0ZSk7XHJcblx0XHR0aGlzLnZpc2libGUgPSBmYWxzZTtcclxuXHR9XHJcblxyXG5cdHRyYWNrQnlGYXZvcml0ZUlkKGluZGV4OiBudW1iZXIsIGZhdm9yaXRlOiBGYXZvcml0ZVBhZ2VSZXNwb25zZURUTyk6IG51bWJlciB7XHJcblx0XHRyZXR1cm4gZmF2b3JpdGUuaWQ7XHJcblx0fVxyXG5cclxuXHRvblBhZ2VDaGFuZ2UoZXZlbnQ6IGFueSk6IHZvaWQge1xyXG5cdFx0dGhpcy5jdXJyZW50UGFnZS5zZXQoZXZlbnQucGFnZSArIDEpO1xyXG5cdFx0dGhpcy5wYWdlU2l6ZS5zZXQoZXZlbnQucm93cyk7XHJcblx0XHR0aGlzLnVwZGF0ZUNsaWVudFNpZGVQYWdpbmF0aW9uKCk7IC8vIFVwZGF0ZSBwYWdpbmF0aW9uIGNsaWVudC1zaWRlLCBubyBBUEkgY2FsbFxyXG5cdH1cclxuXHJcblx0Z2V0RnVsbFVybCh1cmw6IHN0cmluZyk6IHN0cmluZyB7XHJcblx0XHRyZXR1cm4gdGhpcy5mYXZvcml0ZVBhZ2VzU2VydmljZS5nZXRGdWxsVXJsKHVybCk7XHJcblx0fVxyXG5cclxuXHJcbn1cclxuIiwiPHAtc2lkZWJhclxyXG5cdFsodmlzaWJsZSldPVwidmlzaWJsZVwiXHJcblx0cG9zaXRpb249XCJyaWdodFwiXHJcblx0W3RyYW5zaXRpb25PcHRpb25zXT1cIicuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSknXCJcclxuXHRzdHlsZUNsYXNzPVwibGF5b3V0LWZhdm9yaXRlLXBhZ2VzLXNpZGViYXIgdy1mdWxsIHNtOnctMzByZW1cIlxyXG5cdCp0cmFuc2xvY289XCJsZXQgdDsgcmVhZDogJ2Zhdm9yaXRlUGFnZXMnXCI+XHJcblx0PG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiPlxyXG5cdFx0PGRpdiBjbGFzcz1cImZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIHctZnVsbFwiPlxyXG5cdFx0XHQ8ZGl2IGNsYXNzPVwiZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuXHRcdFx0XHQ8aSBjbGFzcz1cInBpIHBpLWhlYXJ0IHRleHQtcHJpbWFyeSB0ZXh0LXhsXCI+PC9pPlxyXG5cdFx0XHRcdDxzcGFuIGNsYXNzPVwiZm9udC1ib2xkIHRleHQtbGdcIj57eyB0KCdmYXZvcml0ZVBhZ2VzJykgfX08L3NwYW4+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0PC9kaXY+XHJcblx0PC9uZy10ZW1wbGF0ZT5cclxuXHJcblx0PGRpdiBjbGFzcz1cImZhdm9yaXRlLXBhZ2VzLWNvbnRlbnRcIj5cclxuXHRcdEBpZiAoaXNDdXJyZW50UGFnZUZhdm9yaXRlZCgpKSB7XHJcblx0XHRcdDxkaXYgY2xhc3M9XCJjdXJyZW50LWZhdm9yaXRlZC1tZXNzYWdlXCI+XHJcblx0XHRcdFx0PGRpdiBjbGFzcz1cIm1lc3NhZ2UtY29udGVudFwiPlxyXG5cdFx0XHRcdFx0PGkgY2xhc3M9XCJwaSBwaS1jaGVjay1jaXJjbGUgdGV4dC1ncmVlbi01MDBcIj48L2k+XHJcblx0XHRcdFx0XHQ8c3Bhbj57eyB0KCdjdXJyZW50UGFnZUZhdm9yaXRlZCcpIH19PC9zcGFuPlxyXG5cdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdH1cclxuXHJcblx0XHQ8ZGl2IGNsYXNzPVwiYWRkLXNlY3Rpb25cIj5cclxuXHRcdFx0QGlmICghaXNDdXJyZW50UGFnZUZhdm9yaXRlZCgpKSB7XHJcblx0XHRcdFx0PGFyaWwtYnV0dG9uXHJcblx0XHRcdFx0XHRbbGFiZWxdPVwidCgnYWRkQ3VycmVudFBhZ2UnKVwiXHJcblx0XHRcdFx0XHRpY29uPVwiUExVU1wiXHJcblx0XHRcdFx0XHRjb2xvcj1cInByaW1hcnlcIlxyXG5cdFx0XHRcdFx0c2l6ZT1cInNtXCJcclxuXHRcdFx0XHRcdChjbGlja0V2ZW50KT1cImFkZEN1cnJlbnRQYWdlVG9GYXZvcml0ZXMoKVwiPlxyXG5cdFx0XHRcdDwvYXJpbC1idXR0b24+XHJcblx0XHRcdH0gQGVsc2Uge1xyXG5cdFx0XHRcdDxhcmlsLWJ1dHRvblxyXG5cdFx0XHRcdFx0W2xhYmVsXT1cInQoJ3JlbW92ZUN1cnJlbnRQYWdlJylcIlxyXG5cdFx0XHRcdFx0aWNvbj1cIlRJTUVTXCJcclxuXHRcdFx0XHRcdGNvbG9yPVwiZGFuZ2VyXCJcclxuXHRcdFx0XHRcdHNpemU9XCJzbVwiXHJcblx0XHRcdFx0XHQoY2xpY2tFdmVudCk9XCJyZW1vdmVDdXJyZW50UGFnZUZyb21GYXZvcml0ZXMoKVwiPlxyXG5cdFx0XHRcdDwvYXJpbC1idXR0b24+XHJcblx0XHRcdH1cclxuXHRcdDwvZGl2PlxyXG5cclxuXHRcdEBpZiAoZmF2b3JpdGVQYWdlcygpLmxlbmd0aCA+IDApIHtcclxuXHRcdFx0PGRpdiBjbGFzcz1cImZhdm9yaXRlcy1saXN0XCI+XHJcblx0XHRcdFx0PHAtc2Nyb2xsUGFuZWwgW3N0eWxlXT1cInsgd2lkdGg6ICcxMDAlJywgaGVpZ2h0OiAnMTAwJScgfVwiPlxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cImZhdm9yaXRlcy1pdGVtc1wiPlxyXG5cdFx0XHRcdFx0XHRAZm9yIChmYXZvcml0ZSBvZiBmYXZvcml0ZVBhZ2VzKCk7IHRyYWNrIHRyYWNrQnlGYXZvcml0ZUlkKCRpbmRleCwgZmF2b3JpdGUpKSB7XHJcblx0XHRcdFx0XHRcdFx0PGRpdlxyXG5cdFx0XHRcdFx0XHRcdFx0Y2xhc3M9XCJmYXZvcml0ZS1pdGVtXCJcclxuXHRcdFx0XHRcdFx0XHRcdFtjbGFzcy5kZWZhdWx0LWl0ZW1dPVwiZmF2b3JpdGUuaWQgPCAwXCJcclxuXHRcdFx0XHRcdFx0XHRcdChjbGljayk9XCJuYXZpZ2F0ZVRvRmF2b3JpdGUoZmF2b3JpdGUpXCJcclxuXHRcdFx0XHRcdFx0XHRcdFtwVG9vbHRpcF09XCJnZXRGdWxsVXJsKGZhdm9yaXRlLnVybClcIlxyXG5cdFx0XHRcdFx0XHRcdFx0dG9vbHRpcFBvc2l0aW9uPVwidG9wXCI+XHJcblx0XHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiaXRlbS1jb250ZW50XCI+XHJcblx0XHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpdGVtLWhlYWRlclwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpdGVtLXRpdGxlXCI+XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8aSBjbGFzcz1cInBpIHBpLWV4dGVybmFsLWxpbmsgdGV4dC1wcmltYXJ5IG1yLTJcIj48L2k+XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cInRpdGxlLXRleHRcIj57eyBmYXZvcml0ZS5sYWJlbCB9fTwvc3Bhbj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8ZGl2PlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PGZhLWljb25cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0W2ljb25dPVwic29saWRJY29ucy5mYVBlblRvU3F1YXJlXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0c2l6ZT1cImxnXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0c3R5bGU9XCJjb2xvcjogdmFyKC0teWVsbG93LTUwMClcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRjbGFzcz1cImNvbC0yIGN1cnNvci1wb2ludGVyXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0KGNsaWNrKT1cImVkaXRGYXZvcml0ZShmYXZvcml0ZSwgJGV2ZW50KVwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PC9mYS1pY29uPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PGZhLWljb25cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0W2ljb25dPVwic29saWRJY29ucy5mYVRyYXNoXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0c2l6ZT1cImxnXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0c3R5bGU9XCJjb2xvcjogdmFyKC0tcmVkLTUwMClcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRjbGFzcz1cImNvbC0yIGN1cnNvci1wb2ludGVyXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0KGNsaWNrKT1cImRlbGV0ZUZhdm9yaXRlKGZhdm9yaXRlLCAkZXZlbnQpXCI+XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8L2ZhLWljb24+XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdDwvcC1zY3JvbGxQYW5lbD5cclxuXHRcdFx0PC9kaXY+XHJcblx0XHR9IEBlbHNlIHtcclxuXHRcdFx0PGRpdiBjbGFzcz1cImVtcHR5LXN0YXRlXCI+XHJcblx0XHRcdFx0PGRpdiBjbGFzcz1cImVtcHR5LWNvbnRlbnRcIj5cclxuXHRcdFx0XHRcdDxpIGNsYXNzPVwicGkgcGktaGVhcnQgZW1wdHktaWNvblwiPjwvaT5cclxuXHRcdFx0XHRcdDxoMyBjbGFzcz1cImVtcHR5LXRpdGxlXCI+e3sgdCgnbm9GYXZvcml0ZXMnKSB9fTwvaDM+XHJcblx0XHRcdFx0XHQ8cCBjbGFzcz1cImVtcHR5LW1lc3NhZ2VcIj57eyB0KCdzdGFydEFkZGluZ0Zhdm9yaXRlcycpIH19PC9wPlxyXG5cdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdH1cclxuXHRcdDxkaXY+XHJcblx0XHRcdDxwLXBhZ2luYXRvclxyXG5cdFx0XHRcdFtmaXJzdF09XCIoY3VycmVudFBhZ2UoKSAtIDEpICogcGFnZVNpemUoKVwiXHJcblx0XHRcdFx0W3Jvd3NdPVwicGFnZVNpemUoKVwiXHJcblx0XHRcdFx0W3RvdGFsUmVjb3Jkc109XCJ0b3RhbEl0ZW1zKClcIlxyXG5cdFx0XHRcdFtzaG93Q3VycmVudFBhZ2VSZXBvcnRdPVwidHJ1ZVwiXHJcblx0XHRcdFx0W2N1cnJlbnRQYWdlUmVwb3J0VGVtcGxhdGVdPVwidCgncGFnaW5hdG9yVGVtcGxhdGUnKVwiXHJcblx0XHRcdFx0W3Nob3dGaXJzdExhc3RJY29uXT1cImZhbHNlXCJcclxuXHRcdFx0XHRbc2hvd1BhZ2VMaW5rc109XCJmYWxzZVwiXHJcblx0XHRcdFx0KG9uUGFnZUNoYW5nZSk9XCJvblBhZ2VDaGFuZ2UoJGV2ZW50KVwiPlxyXG5cdFx0XHQ8L3AtcGFnaW5hdG9yPlxyXG5cdFx0PC9kaXY+XHJcblx0PC9kaXY+XHJcblxyXG5cdDxwLWNvbmZpcm1EaWFsb2c+PC9wLWNvbmZpcm1EaWFsb2c+XHJcbjwvcC1zaWRlYmFyPlxyXG4iXX0=
@@ -1,5 +1,5 @@
1
1
  import { __decorate } from "tslib";
2
- import { Injectable } from '@angular/core';
2
+ import { Injectable, signal } from '@angular/core';
3
3
  import { Observable } from 'rxjs';
4
4
  import { HTTPMethods, ProxyTypes, RestClient, ServiceCall } from 'aril/http';
5
5
  import * as i0 from "@angular/core";
@@ -14,6 +14,7 @@ export class FavoritePagesService extends RestClient {
14
14
  super();
15
15
  this.router = router;
16
16
  this.states = {};
17
+ this.allFavoritePages = signal([]);
17
18
  }
18
19
  getCurrentRoutePath() {
19
20
  return this.router.url;
@@ -56,4 +57,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
56
57
  type: Injectable,
57
58
  args: [{ providedIn: 'root' }]
58
59
  }], ctorParameters: () => [{ type: i1.Router }], propDecorators: { filterFavoritePages: [], saveFavoritePage: [], updateFavoritePage: [], deleteFavoritePage: [] } });
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmF2b3JpdGUtcGFnZXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdGhlbWUvbGF5b3V0L2FwcC9mYXZvcml0ZS1wYWdlcy9mYXZvcml0ZS1wYWdlcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFbEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBd0MsTUFBTSxXQUFXLENBQUM7OztBQXdDbkgsZ0JBQWdCO0FBQ2hCLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHO0lBQ3BDLE1BQU0sRUFBRSx1QkFBdUI7SUFDL0IsUUFBUSxFQUFFLGdCQUFnQjtDQUMxQixDQUFDO0FBR0YsTUFBTSxPQUFPLG9CQUFxQixTQUFRLFVBQVU7SUFHbkQsWUFBb0IsTUFBYztRQUNqQyxLQUFLLEVBQUUsQ0FBQztRQURXLFdBQU0sR0FBTixNQUFNLENBQVE7UUFGekIsV0FBTSxHQUE4QyxFQUFFLENBQUM7SUFJaEUsQ0FBQztJQUVELG1CQUFtQjtRQUNsQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxzQkFBc0IsQ0FBQyxRQUFpQztRQUN2RCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxVQUFVLENBQUMsR0FBVztRQUNyQixNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztRQUN2QyxPQUFPLEdBQUcsT0FBTyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLEdBQUcsR0FBRyxHQUFHLEVBQUUsQ0FBQztJQUM1RCxDQUFDO0lBS0QsbUJBQW1CLENBQUMsSUFBa0M7UUFDckQsT0FBTyxJQUFJLFVBQVUsRUFBNkQsQ0FBQztJQUNwRixDQUFDO0lBR0QsZ0JBQWdCLENBQUMsSUFBZ0M7UUFDaEQsT0FBTyxJQUFJLFVBQVUsRUFBNEMsQ0FBQztJQUNuRSxDQUFDO0lBR0Qsa0JBQWtCLENBQUMsRUFBVSxFQUFFLElBQWtDO1FBQ2hFLE9BQU8sSUFBSSxVQUFVLEVBQTRDLENBQUM7SUFDbkUsQ0FBQztJQUdELGtCQUFrQixDQUFDLEVBQVU7UUFDNUIsT0FBTyxJQUFJLFVBQVUsRUFBNEIsQ0FBQztJQUNuRCxDQUFDOzhHQXhDVyxvQkFBb0I7a0hBQXBCLG9CQUFvQixjQURQLE1BQU07O0FBd0IvQjtJQURDLFdBQVcsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxVQUFVLEVBQUUscUJBQXFCLENBQUMsTUFBTSxDQUFDOytEQUdsRjtBQUdEO0lBREMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFVBQVUsRUFBRSxxQkFBcUIsQ0FBQyxRQUFRLENBQUM7NERBR3BGO0FBR0Q7SUFEQyxXQUFXLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxVQUFVLENBQUMsVUFBVSxFQUFFLHFCQUFxQixDQUFDLFFBQVEsQ0FBQzs4REFHbkY7QUFHRDtJQURDLFdBQVcsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxVQUFVLEVBQUUscUJBQXFCLENBQUMsUUFBUSxDQUFDOzhEQUd0RjsyRkF4Q1csb0JBQW9CO2tCQURoQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTsyRUF3QmpDLG1CQUFtQixNQUtuQixnQkFBZ0IsTUFLaEIsa0JBQWtCLE1BS2xCLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuXHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IEhUVFBNZXRob2RzLCBQcm94eVR5cGVzLCBSZXN0Q2xpZW50LCBTZXJ2aWNlQ2FsbCwgU2VydmljZUNhbGxTdGF0ZU1hcCwgU2VydmljZVJlc3BvbnNlIH0gZnJvbSAnYXJpbC9odHRwJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRmF2b3JpdGVQYWdlUmVzcG9uc2VEVE8ge1xyXG5cdGlkOiBudW1iZXI7XHJcblx0Y3JlYXRvcjogc3RyaW5nO1xyXG5cdGNyZWF0ZWQ6IG51bWJlcjtcclxuXHR1cGRhdGVyOiBzdHJpbmc7XHJcblx0dXBkYXRlZDogbnVtYmVyO1xyXG5cdHZlcnNpb246IG51bWJlcjtcclxuXHR1c2VybmFtZTogc3RyaW5nO1xyXG5cdHVybDogc3RyaW5nO1xyXG5cdGxhYmVsOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRmF2b3JpdGVQYWdlU2F2ZVJlcXVlc3REVE8ge1xyXG5cdHVybDogc3RyaW5nO1xyXG5cdGxhYmVsOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRmF2b3JpdGVQYWdlVXBkYXRlUmVxdWVzdERUTyB7XHJcblx0bGFiZWw6IHN0cmluZztcclxuXHR2ZXJzaW9uOiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRmF2b3JpdGVQYWdlRmlsdGVyUmVxdWVzdERUTyB7XHJcblx0cGFnZVNpemU/OiBudW1iZXI7XHJcblx0cGFnZU51bWJlcj86IG51bWJlcjtcclxuXHRzb3J0RmllbGROYW1lPzogc3RyaW5nO1xyXG5cdHNvcnREaXJlY3Rpb24/OiBudW1iZXI7IC8vIDE9QVNDLCAyPURFU0NcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTZWFyY2hSZXN1bHREVE88VD4ge1xyXG5cdHJlc3VsdEluZm86IHtcclxuXHRcdHRvdGFsUGFnZTogbnVtYmVyO1xyXG5cdFx0dG90YWxJdGVtOiBudW1iZXI7XHJcblx0fTtcclxuXHRyZXN1bHQ6IFRbXTtcclxuXHRzZWFyY2hBZnRlclZhbHVlczogYW55W107XHJcbn1cclxuXHJcbi8vIEFQSSBFbmRwb2ludHNcclxuZXhwb3J0IGNvbnN0IGZhdm9yaXRlUGFnZUVuZHBvaW50cyA9IHtcclxuXHRmaWx0ZXI6ICdmYXZvcml0ZS1wYWdlcy9maWx0ZXInLFxyXG5cdGZhdm9yaXRlOiAnZmF2b3JpdGUtcGFnZXMnXHJcbn07XHJcblxyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgRmF2b3JpdGVQYWdlc1NlcnZpY2UgZXh0ZW5kcyBSZXN0Q2xpZW50IHtcclxuXHRvdmVycmlkZSBzdGF0ZXM6IFNlcnZpY2VDYWxsU3RhdGVNYXA8RmF2b3JpdGVQYWdlc1NlcnZpY2U+ID0ge307XHJcblxyXG5cdGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIpIHtcclxuXHRcdHN1cGVyKCk7XHJcblx0fVxyXG5cclxuXHRnZXRDdXJyZW50Um91dGVQYXRoKCk6IHN0cmluZyB7XHJcblx0XHRyZXR1cm4gdGhpcy5yb3V0ZXIudXJsO1xyXG5cdH1cclxuXHJcblx0bmF2aWdhdGVUb0Zhdm9yaXRlUGFnZShmYXZvcml0ZTogRmF2b3JpdGVQYWdlUmVzcG9uc2VEVE8pOiB2b2lkIHtcclxuXHRcdHRoaXMucm91dGVyLm5hdmlnYXRlKFtmYXZvcml0ZS51cmxdKTtcclxuXHR9XHJcblxyXG5cdGdldEZ1bGxVcmwodXJsOiBzdHJpbmcpOiBzdHJpbmcge1xyXG5cdFx0Y29uc3QgYmFzZVVybCA9IHdpbmRvdy5sb2NhdGlvbi5vcmlnaW47XHJcblx0XHRyZXR1cm4gYCR7YmFzZVVybH0ke3dpbmRvdy5sb2NhdGlvbi5wYXRobmFtZX0ke1wiI1wifSR7dXJsfWA7XHJcblx0fVxyXG5cclxuXHJcblxyXG5cdEBTZXJ2aWNlQ2FsbChIVFRQTWV0aG9kcy5QT1NULCBQcm94eVR5cGVzLkNsaWVudFNpZGUsIGZhdm9yaXRlUGFnZUVuZHBvaW50cy5maWx0ZXIpXHJcblx0ZmlsdGVyRmF2b3JpdGVQYWdlcyhwb3N0OiBGYXZvcml0ZVBhZ2VGaWx0ZXJSZXF1ZXN0RFRPKSB7XHJcblx0XHRyZXR1cm4gbmV3IE9ic2VydmFibGU8U2VydmljZVJlc3BvbnNlPFNlYXJjaFJlc3VsdERUTzxGYXZvcml0ZVBhZ2VSZXNwb25zZURUTz4+PigpO1xyXG5cdH1cclxuXHJcblx0QFNlcnZpY2VDYWxsKEhUVFBNZXRob2RzLlBPU1QsIFByb3h5VHlwZXMuQ2xpZW50U2lkZSwgZmF2b3JpdGVQYWdlRW5kcG9pbnRzLmZhdm9yaXRlKVxyXG5cdHNhdmVGYXZvcml0ZVBhZ2UocG9zdDogRmF2b3JpdGVQYWdlU2F2ZVJlcXVlc3REVE8pIHtcclxuXHRcdHJldHVybiBuZXcgT2JzZXJ2YWJsZTxTZXJ2aWNlUmVzcG9uc2U8RmF2b3JpdGVQYWdlUmVzcG9uc2VEVE8+PigpO1xyXG5cdH1cclxuXHJcblx0QFNlcnZpY2VDYWxsKEhUVFBNZXRob2RzLlBVVCwgUHJveHlUeXBlcy5DbGllbnRTaWRlLCBmYXZvcml0ZVBhZ2VFbmRwb2ludHMuZmF2b3JpdGUpXHJcblx0dXBkYXRlRmF2b3JpdGVQYWdlKGlkOiBudW1iZXIsIHBvc3Q6IEZhdm9yaXRlUGFnZVVwZGF0ZVJlcXVlc3REVE8pIHtcclxuXHRcdHJldHVybiBuZXcgT2JzZXJ2YWJsZTxTZXJ2aWNlUmVzcG9uc2U8RmF2b3JpdGVQYWdlUmVzcG9uc2VEVE8+PigpO1xyXG5cdH1cclxuXHJcblx0QFNlcnZpY2VDYWxsKEhUVFBNZXRob2RzLkRFTEVURSwgUHJveHlUeXBlcy5DbGllbnRTaWRlLCBmYXZvcml0ZVBhZ2VFbmRwb2ludHMuZmF2b3JpdGUpXHJcblx0ZGVsZXRlRmF2b3JpdGVQYWdlKGlkOiBudW1iZXIpIHtcclxuXHRcdHJldHVybiBuZXcgT2JzZXJ2YWJsZTxTZXJ2aWNlUmVzcG9uc2U8Ym9vbGVhbj4+KCk7XHJcblx0fVxyXG59XHJcbiJdfQ==
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmF2b3JpdGUtcGFnZXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdGhlbWUvbGF5b3V0L2FwcC9mYXZvcml0ZS1wYWdlcy9mYXZvcml0ZS1wYWdlcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUduRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRWxDLE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQXdDLE1BQU0sV0FBVyxDQUFDOzs7QUF3Q25ILGdCQUFnQjtBQUNoQixNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRztJQUNwQyxNQUFNLEVBQUUsdUJBQXVCO0lBQy9CLFFBQVEsRUFBRSxnQkFBZ0I7Q0FDMUIsQ0FBQztBQUdGLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxVQUFVO0lBSW5ELFlBQW9CLE1BQWM7UUFDakMsS0FBSyxFQUFFLENBQUM7UUFEVyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBSHpCLFdBQU0sR0FBOEMsRUFBRSxDQUFDO1FBQ2hFLHFCQUFnQixHQUFHLE1BQU0sQ0FBNEIsRUFBRSxDQUFDLENBQUM7SUFJekQsQ0FBQztJQUVELG1CQUFtQjtRQUNsQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxzQkFBc0IsQ0FBQyxRQUFpQztRQUN2RCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxVQUFVLENBQUMsR0FBVztRQUNyQixNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztRQUN2QyxPQUFPLEdBQUcsT0FBTyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLEdBQUcsR0FBRyxHQUFHLEVBQUUsQ0FBQztJQUM1RCxDQUFDO0lBS0QsbUJBQW1CLENBQUMsSUFBa0M7UUFDckQsT0FBTyxJQUFJLFVBQVUsRUFBNkQsQ0FBQztJQUNwRixDQUFDO0lBR0QsZ0JBQWdCLENBQUMsSUFBZ0M7UUFDaEQsT0FBTyxJQUFJLFVBQVUsRUFBNEMsQ0FBQztJQUNuRSxDQUFDO0lBR0Qsa0JBQWtCLENBQUMsRUFBVSxFQUFFLElBQWtDO1FBQ2hFLE9BQU8sSUFBSSxVQUFVLEVBQTRDLENBQUM7SUFDbkUsQ0FBQztJQUdELGtCQUFrQixDQUFDLEVBQVU7UUFDNUIsT0FBTyxJQUFJLFVBQVUsRUFBNEIsQ0FBQztJQUNuRCxDQUFDOzhHQXpDVyxvQkFBb0I7a0hBQXBCLG9CQUFvQixjQURQLE1BQU07O0FBeUIvQjtJQURDLFdBQVcsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxVQUFVLEVBQUUscUJBQXFCLENBQUMsTUFBTSxDQUFDOytEQUdsRjtBQUdEO0lBREMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFVBQVUsRUFBRSxxQkFBcUIsQ0FBQyxRQUFRLENBQUM7NERBR3BGO0FBR0Q7SUFEQyxXQUFXLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxVQUFVLENBQUMsVUFBVSxFQUFFLHFCQUFxQixDQUFDLFFBQVEsQ0FBQzs4REFHbkY7QUFHRDtJQURDLFdBQVcsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxVQUFVLEVBQUUscUJBQXFCLENBQUMsUUFBUSxDQUFDOzhEQUd0RjsyRkF6Q1csb0JBQW9CO2tCQURoQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTsyRUF5QmpDLG1CQUFtQixNQUtuQixnQkFBZ0IsTUFLaEIsa0JBQWtCLE1BS2xCLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5cclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5cclxuaW1wb3J0IHsgSFRUUE1ldGhvZHMsIFByb3h5VHlwZXMsIFJlc3RDbGllbnQsIFNlcnZpY2VDYWxsLCBTZXJ2aWNlQ2FsbFN0YXRlTWFwLCBTZXJ2aWNlUmVzcG9uc2UgfSBmcm9tICdhcmlsL2h0dHAnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBGYXZvcml0ZVBhZ2VSZXNwb25zZURUTyB7XHJcblx0aWQ6IG51bWJlcjtcclxuXHRjcmVhdG9yOiBzdHJpbmc7XHJcblx0Y3JlYXRlZDogbnVtYmVyO1xyXG5cdHVwZGF0ZXI6IHN0cmluZztcclxuXHR1cGRhdGVkOiBudW1iZXI7XHJcblx0dmVyc2lvbjogbnVtYmVyO1xyXG5cdHVzZXJuYW1lOiBzdHJpbmc7XHJcblx0dXJsOiBzdHJpbmc7XHJcblx0bGFiZWw6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBGYXZvcml0ZVBhZ2VTYXZlUmVxdWVzdERUTyB7XHJcblx0dXJsOiBzdHJpbmc7XHJcblx0bGFiZWw6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBGYXZvcml0ZVBhZ2VVcGRhdGVSZXF1ZXN0RFRPIHtcclxuXHRsYWJlbDogc3RyaW5nO1xyXG5cdHZlcnNpb246IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBGYXZvcml0ZVBhZ2VGaWx0ZXJSZXF1ZXN0RFRPIHtcclxuXHRwYWdlU2l6ZT86IG51bWJlcjtcclxuXHRwYWdlTnVtYmVyPzogbnVtYmVyO1xyXG5cdHNvcnRGaWVsZE5hbWU/OiBzdHJpbmc7XHJcblx0c29ydERpcmVjdGlvbj86IG51bWJlcjsgLy8gMT1BU0MsIDI9REVTQ1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaFJlc3VsdERUTzxUPiB7XHJcblx0cmVzdWx0SW5mbzoge1xyXG5cdFx0dG90YWxQYWdlOiBudW1iZXI7XHJcblx0XHR0b3RhbEl0ZW06IG51bWJlcjtcclxuXHR9O1xyXG5cdHJlc3VsdDogVFtdO1xyXG5cdHNlYXJjaEFmdGVyVmFsdWVzOiBhbnlbXTtcclxufVxyXG5cclxuLy8gQVBJIEVuZHBvaW50c1xyXG5leHBvcnQgY29uc3QgZmF2b3JpdGVQYWdlRW5kcG9pbnRzID0ge1xyXG5cdGZpbHRlcjogJ2Zhdm9yaXRlLXBhZ2VzL2ZpbHRlcicsXHJcblx0ZmF2b3JpdGU6ICdmYXZvcml0ZS1wYWdlcydcclxufTtcclxuXHJcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXHJcbmV4cG9ydCBjbGFzcyBGYXZvcml0ZVBhZ2VzU2VydmljZSBleHRlbmRzIFJlc3RDbGllbnQge1xyXG5cdG92ZXJyaWRlIHN0YXRlczogU2VydmljZUNhbGxTdGF0ZU1hcDxGYXZvcml0ZVBhZ2VzU2VydmljZT4gPSB7fTtcclxuXHRhbGxGYXZvcml0ZVBhZ2VzID0gc2lnbmFsPEZhdm9yaXRlUGFnZVJlc3BvbnNlRFRPW10+KFtdKTtcclxuXHJcblx0Y29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXI6IFJvdXRlcikge1xyXG5cdFx0c3VwZXIoKTtcclxuXHR9XHJcblxyXG5cdGdldEN1cnJlbnRSb3V0ZVBhdGgoKTogc3RyaW5nIHtcclxuXHRcdHJldHVybiB0aGlzLnJvdXRlci51cmw7XHJcblx0fVxyXG5cclxuXHRuYXZpZ2F0ZVRvRmF2b3JpdGVQYWdlKGZhdm9yaXRlOiBGYXZvcml0ZVBhZ2VSZXNwb25zZURUTyk6IHZvaWQge1xyXG5cdFx0dGhpcy5yb3V0ZXIubmF2aWdhdGUoW2Zhdm9yaXRlLnVybF0pO1xyXG5cdH1cclxuXHJcblx0Z2V0RnVsbFVybCh1cmw6IHN0cmluZyk6IHN0cmluZyB7XHJcblx0XHRjb25zdCBiYXNlVXJsID0gd2luZG93LmxvY2F0aW9uLm9yaWdpbjtcclxuXHRcdHJldHVybiBgJHtiYXNlVXJsfSR7d2luZG93LmxvY2F0aW9uLnBhdGhuYW1lfSR7XCIjXCJ9JHt1cmx9YDtcclxuXHR9XHJcblxyXG5cclxuXHJcblx0QFNlcnZpY2VDYWxsKEhUVFBNZXRob2RzLlBPU1QsIFByb3h5VHlwZXMuQ2xpZW50U2lkZSwgZmF2b3JpdGVQYWdlRW5kcG9pbnRzLmZpbHRlcilcclxuXHRmaWx0ZXJGYXZvcml0ZVBhZ2VzKHBvc3Q6IEZhdm9yaXRlUGFnZUZpbHRlclJlcXVlc3REVE8pIHtcclxuXHRcdHJldHVybiBuZXcgT2JzZXJ2YWJsZTxTZXJ2aWNlUmVzcG9uc2U8U2VhcmNoUmVzdWx0RFRPPEZhdm9yaXRlUGFnZVJlc3BvbnNlRFRPPj4+KCk7XHJcblx0fVxyXG5cclxuXHRAU2VydmljZUNhbGwoSFRUUE1ldGhvZHMuUE9TVCwgUHJveHlUeXBlcy5DbGllbnRTaWRlLCBmYXZvcml0ZVBhZ2VFbmRwb2ludHMuZmF2b3JpdGUpXHJcblx0c2F2ZUZhdm9yaXRlUGFnZShwb3N0OiBGYXZvcml0ZVBhZ2VTYXZlUmVxdWVzdERUTykge1xyXG5cdFx0cmV0dXJuIG5ldyBPYnNlcnZhYmxlPFNlcnZpY2VSZXNwb25zZTxGYXZvcml0ZVBhZ2VSZXNwb25zZURUTz4+KCk7XHJcblx0fVxyXG5cclxuXHRAU2VydmljZUNhbGwoSFRUUE1ldGhvZHMuUFVULCBQcm94eVR5cGVzLkNsaWVudFNpZGUsIGZhdm9yaXRlUGFnZUVuZHBvaW50cy5mYXZvcml0ZSlcclxuXHR1cGRhdGVGYXZvcml0ZVBhZ2UoaWQ6IG51bWJlciwgcG9zdDogRmF2b3JpdGVQYWdlVXBkYXRlUmVxdWVzdERUTykge1xyXG5cdFx0cmV0dXJuIG5ldyBPYnNlcnZhYmxlPFNlcnZpY2VSZXNwb25zZTxGYXZvcml0ZVBhZ2VSZXNwb25zZURUTz4+KCk7XHJcblx0fVxyXG5cclxuXHRAU2VydmljZUNhbGwoSFRUUE1ldGhvZHMuREVMRVRFLCBQcm94eVR5cGVzLkNsaWVudFNpZGUsIGZhdm9yaXRlUGFnZUVuZHBvaW50cy5mYXZvcml0ZSlcclxuXHRkZWxldGVGYXZvcml0ZVBhZ2UoaWQ6IG51bWJlcikge1xyXG5cdFx0cmV0dXJuIG5ldyBPYnNlcnZhYmxlPFNlcnZpY2VSZXNwb25zZTxib29sZWFuPj4oKTtcclxuXHR9XHJcbn1cclxuIl19
@@ -4,4 +4,5 @@ export * from './service/app.menu.service';
4
4
  export * from './service/selection-group.service';
5
5
  export * from './service/breadcrumb.service';
6
6
  export * from './service/app.layout.service';
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3RoZW1lL2xheW91dC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw4QkFBOEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYXBwL2xheW91dC9hcHAubGF5b3V0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vYXBwL2xheW91dC9tZmUubGF5b3V0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZS9hcHAubWVudS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlL3NlbGVjdGlvbi1ncm91cC5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlL2JyZWFkY3J1bWIuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZS9hcHAubGF5b3V0LnNlcnZpY2UnO1xyXG4iXX0=
7
+ export * from './app/favorite-pages/favorite-pages.service';
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3RoZW1lL2xheW91dC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLDZDQUE2QyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hcHAvbGF5b3V0L2FwcC5sYXlvdXQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9hcHAvbGF5b3V0L21mZS5sYXlvdXQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlL2FwcC5tZW51LnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2Uvc2VsZWN0aW9uLWdyb3VwLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2UvYnJlYWRjcnVtYi5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlL2FwcC5sYXlvdXQuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vYXBwL2Zhdm9yaXRlLXBhZ2VzL2Zhdm9yaXRlLXBhZ2VzLnNlcnZpY2UnXHJcbiJdfQ==
@@ -1,7 +1,7 @@
1
1
  import * as i3$1 from '@angular/common';
2
2
  import { CommonModule, UpperCasePipe, NgClass, NgTemplateOutlet } from '@angular/common';
3
3
  import * as i0 from '@angular/core';
4
- import { Injectable, effect, Component, signal, inject, ViewChild, computed, HostListener } from '@angular/core';
4
+ import { Injectable, effect, Component, signal, inject, computed, ViewChild, HostListener } from '@angular/core';
5
5
  import * as i1$1 from '@angular/router';
6
6
  import { Router, RouterModule, NavigationEnd, RouterLink, RouterOutlet, NavigationCancel, NavigationError, NavigationSkipped } from '@angular/router';
7
7
  import * as i8 from 'primeng/confirmdialog';
@@ -1155,6 +1155,7 @@ class FavoritePagesService extends RestClient {
1155
1155
  super();
1156
1156
  this.router = router;
1157
1157
  this.states = {};
1158
+ this.allFavoritePages = signal([]);
1158
1159
  }
1159
1160
  getCurrentRoutePath() {
1160
1161
  return this.router.url;
@@ -1319,22 +1320,20 @@ class FavoritePagesSidebarComponent {
1319
1320
  this.dialogService = dialogService;
1320
1321
  this.translocoService = translocoService;
1321
1322
  this.favoritePages = signal([]);
1322
- this.allFavoritePages = signal([]);
1323
1323
  this.isCurrentPageFavorited = signal(false);
1324
1324
  this.solidIcons = solidIcons;
1325
1325
  this.currentPage = signal(1);
1326
1326
  this.pageSize = signal(10);
1327
1327
  this.totalItems = signal(0);
1328
1328
  this.totalPages = signal(0);
1329
+ this.allFavoritePages = computed(() => this.favoritePagesService.allFavoritePages());
1329
1330
  this.subjects = {
1330
1331
  loadAllFavorites: new Subject(),
1331
1332
  deleteFavorite: new Subject()
1332
1333
  };
1333
1334
  this.loadAllFavoritesService = toSignal(this.subjects.loadAllFavorites.pipe(switchMap(() => this.favoritePagesService.filterFavoritePages({
1334
1335
  pageSize: 1000,
1335
- pageNumber: 1,
1336
- sortFieldName: 'label',
1337
- sortDirection: 1
1336
+ pageNumber: 1
1338
1337
  }))));
1339
1338
  this.deleteFavoriteService = toSignal(this.subjects.deleteFavorite.pipe(switchMap((id) => this.favoritePagesService.deleteFavoritePage(id))));
1340
1339
  this.initializeEffects();
@@ -1347,7 +1346,7 @@ class FavoritePagesSidebarComponent {
1347
1346
  effect(() => {
1348
1347
  const service = this.loadAllFavoritesService();
1349
1348
  if (service?.response) {
1350
- this.allFavoritePages.set(service.response.result);
1349
+ this.favoritePagesService.allFavoritePages.set(service.response.result);
1351
1350
  this.totalItems.set(service.response.result.length);
1352
1351
  this.updateClientSidePagination();
1353
1352
  this.checkCurrentPageStatus();
@@ -3011,5 +3010,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
3011
3010
  * Generated bundle index. Do not edit.
3012
3011
  */
3013
3012
 
3014
- export { AppLayoutComponent, AppMenuService, BreadcrumbService, LayoutService, MFELayoutComponent, SelectionGroupService };
3013
+ export { AppLayoutComponent, AppMenuService, BreadcrumbService, FavoritePagesService, LayoutService, MFELayoutComponent, SelectionGroupService, favoritePageEndpoints };
3015
3014
  //# sourceMappingURL=aril-theme-layout.mjs.map