@net7/boilerplate-muruca 5.2.14 → 5.2.16

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.
@@ -65,10 +65,10 @@ export class MrTimelineLayoutComponent extends AbstractLayout {
65
65
  });
66
66
  }
67
67
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MrTimelineLayoutComponent, deps: [{ token: i1.LayoutsConfigurationService }, { token: i2.ActivatedRoute }, { token: i2.Router }, { token: i1.ConfigurationService }, { token: i1.CommunicationService }, { token: i1.MainStateService }, { token: i3.MrLayoutStateService }, { token: i4.MrResourceModalService }, { token: i5.MrLocaleService }, { token: i6.Location }], target: i0.ɵɵFactoryTarget.Component }); }
68
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MrTimelineLayoutComponent, selector: "mr-timeline-layout", usesInheritance: true, ngImport: i0, template: "<div class=\"mr-timeline mr-layout\" *ngIf=\"lb.dataSource\">\n <div class=\"mr-timeline__timeline\">\n <div\n class=\"mr-timeline__timeline-loading\"\n *ngIf=\"lb.dataSource.loading.timeline\">\n <n7-loader></n7-loader>\n </div>\n <n7-timeline\n [data]=\"lb.widgets['mr-timeline'].ds.out$ | async\"\n *ngIf=\"!lb.dataSource.loading.timeline\"\n >\n </n7-timeline>\n </div>\n\n <div class=\"mr-timeline__page mr-side-margin\">\n <!-- Result header -->\n <div class=\"mr-timeline__page-header\">\n <p\n class=\"mr-timeline__date\"\n *ngIf=\"!lb.dataSource.loading.resourceDetails\"\n >\n {{lb.dataSource.eventHeader}}\n </p>\n <div class=\"mr-timeline__title\">\n <n7-inner-title\n [data]=\"lb.widgets['mr-year-header'].ds.out$ | async\"\n [emit]=\"lb.widgets['mr-year-header'].emit\"\n >\n </n7-inner-title>\n </div>\n </div>\n <!-- END // Result header -->\n\n <div class=\"mr-timeline__content\">\n <!-- DESCRIZIONE -->\n <div *ngIf=\"lb.dataSource.eventDescription\" class=\"mr-content-block mr-content-block-description\">\n <p [innerHTML]=\"lb.dataSource.eventDescription\"></p>\n <p></p>\n </div>\n\n <ng-container *ngIf=\"!lb.dataSource.loading.resourceDetails\">\n <!-- GALLERIA -->\n <mr-gallery *ngIf=\"lb.dataSource.hasGallery\" \n [grid]=\"4\" \n [data]=\"lb.widgets['mr-gallery'].ds.out$ | async\" \n [emit]=\"lb.widgets['mr-gallery'].emit\">\n </mr-gallery>\n\n <!-- MAPPA -->\n <div\n class=\"mr-content-block mr-content-block-map\"\n *ngIf=\"lb.dataSource.hasMap\"\n >\n <h3 class=\"mr-content-block__title\" *ngIf=\"lb.dataSource.mapHeader\">\n {{ lb.dataSource.mapHeader }}\n </h3>\n <div class=\"mr-content-block__content\">\n <n7-map [data]=\"lb.widgets['mr-map'].ds.out$ | async\"></n7-map>\n </div>\n </div>\n\n <!-- BIBLIOGRAFIA -->\n <ng-container *ngIf=\"lb.dataSource.bibliographyData as biblio\">\n <ng-container *ngIf=\"biblio.items && biblio.items.length > 0\">\n <div class=\"mr-content-block mr-content-block-collection\">\n <h3 class=\"mr-content-block__title\">{{ biblio.header.title }}</h3>\n <div class=\"mr-content-block__content n7-grid-1\">\n <ng-container *ngFor=\"let item of biblio.items\">\n <div class=\"mr-timeline__collection-content\">\n <n7-item-preview\n [emit]=\"lb.eventHandler.itemPreviewEmit\"\n [data]=\"item\"\n >\n </n7-item-preview>\n </div>\n </ng-container>\n </div>\n </div>\n </ng-container>\n </ng-container>\n\n <!-- COLLECTIONS -->\n <ng-container *ngFor=\"let coll of lb.dataSource.collectionData\">\n <ng-container *ngIf=\"coll.items && coll.items.length > 0\">\n <div class=\"mr-content-block-collection mr-content-block\">\n <h3 class=\"mr-content-block__title\">{{ coll.header.title }}</h3>\n <div class=\"mr-content-block__content n7-grid-3\">\n <n7-item-preview *ngFor=\"let item of coll.items\" [data]=\"item\">\n </n7-item-preview>\n </div>\n </div>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.InnerTitleComponent, selector: "n7-inner-title", inputs: ["data", "emit"] }, { kind: "component", type: i7.ItemPreviewComponent, selector: "n7-item-preview", inputs: ["data", "emit"] }, { kind: "component", type: i7.LoaderComponent, selector: "n7-loader", inputs: ["data"] }, { kind: "component", type: i7.MapComponent, selector: "n7-map", inputs: ["data", "emit"] }, { kind: "component", type: i7.TimelineComponent, selector: "n7-timeline", inputs: ["data", "emit"] }, { kind: "component", type: i8.MrGalleryComponent, selector: "mr-gallery", inputs: ["data", "emit", "grid"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] }); }
68
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MrTimelineLayoutComponent, selector: "mr-timeline-layout", usesInheritance: true, ngImport: i0, template: "<div class=\"mr-timeline mr-layout\" *ngIf=\"lb.dataSource\">\n <div class=\"mr-timeline__timeline\">\n <div\n class=\"mr-timeline__timeline-loading\"\n *ngIf=\"lb.dataSource.loading.timeline\">\n <n7-loader></n7-loader>\n </div>\n <n7-timeline\n [data]=\"lb.widgets['mr-timeline'].ds.out$ | async\"\n *ngIf=\"!lb.dataSource.loading.timeline\"\n >\n </n7-timeline>\n </div>\n\n <div class=\"mr-timeline__page mr-side-margin\">\n <!-- Result header -->\n <div class=\"mr-timeline__page-header\">\n <p\n class=\"mr-timeline__date\"\n *ngIf=\"!lb.dataSource.loading.resourceDetails\"\n >\n {{lb.dataSource.eventHeader}}\n </p>\n <div class=\"mr-timeline__title\">\n <n7-inner-title\n [data]=\"lb.widgets['mr-year-header'].ds.out$ | async\"\n [emit]=\"lb.widgets['mr-year-header'].emit\"\n >\n </n7-inner-title>\n </div>\n </div>\n <!-- END // Result header -->\n\n <div class=\"mr-timeline__content\">\n <!-- DESCRIZIONE -->\n <div *ngIf=\"lb.dataSource.eventDescription\" class=\"mr-content-block mr-content-block-description\">\n <p [innerHTML]=\"lb.dataSource.eventDescription\"></p>\n <p></p>\n </div>\n\n <ng-container *ngIf=\"!lb.dataSource.loading.resourceDetails\">\n <!-- GALLERIA -->\n <mr-gallery *ngIf=\"lb.dataSource.hasGallery\" \n [grid]=\"4\" \n [data]=\"lb.widgets['mr-gallery'].ds.out$ | async\" \n [emit]=\"lb.widgets['mr-gallery'].emit\">\n </mr-gallery>\n\n <!-- MAPPA -->\n <div\n class=\"mr-content-block mr-content-block-map\"\n *ngIf=\"lb.dataSource.hasMap\"\n >\n <h3 class=\"mr-content-block__title\" *ngIf=\"lb.dataSource.mapHeader\">\n {{ lb.dataSource.mapHeader }}\n </h3>\n <div class=\"mr-content-block__content\">\n <n7-map [data]=\"lb.widgets['mr-map'].ds.out$ | async\"></n7-map>\n </div>\n </div>\n\n <!-- BIBLIOGRAFIA -->\n <ng-container *ngIf=\"lb.dataSource.bibliographyData as biblio\">\n <ng-container *ngIf=\"biblio.items && biblio.items.length > 0\">\n <div class=\"mr-content-block mr-content-block-collection\">\n <h3 class=\"mr-content-block__title\">{{ biblio.header.title }}</h3>\n <div class=\"mr-content-block__content n7-grid-1\">\n <ng-container *ngFor=\"let item of biblio.items\">\n <div class=\"mr-timeline__collection-content\">\n <n7-item-preview\n [emit]=\"lb.eventHandler.itemPreviewEmit\"\n [data]=\"item\"\n >\n </n7-item-preview>\n </div>\n </ng-container>\n </div>\n </div>\n </ng-container>\n </ng-container>\n\n <!-- COLLECTIONS -->\n <ng-container *ngFor=\"let coll of lb.dataSource.collectionData\">\n <ng-container *ngIf=\"coll.items && coll.items.length > 0\">\n <div class=\"mr-content-block-collection mr-content-block\">\n <h3 class=\"mr-content-block__title\">{{ coll.header.title }}</h3>\n <div class=\"mr-content-block__content {{ coll.grid ? 'n7-grid-' + coll.grid : 'n7-grid-3' }}\">\n <n7-item-preview *ngFor=\"let item of coll.items\" [data]=\"item\">\n </n7-item-preview>\n </div>\n </div>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.InnerTitleComponent, selector: "n7-inner-title", inputs: ["data", "emit"] }, { kind: "component", type: i7.ItemPreviewComponent, selector: "n7-item-preview", inputs: ["data", "emit"] }, { kind: "component", type: i7.LoaderComponent, selector: "n7-loader", inputs: ["data"] }, { kind: "component", type: i7.MapComponent, selector: "n7-map", inputs: ["data", "emit"] }, { kind: "component", type: i7.TimelineComponent, selector: "n7-timeline", inputs: ["data", "emit"] }, { kind: "component", type: i8.MrGalleryComponent, selector: "mr-gallery", inputs: ["data", "emit", "grid"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] }); }
69
69
  }
70
70
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MrTimelineLayoutComponent, decorators: [{
71
71
  type: Component,
72
- args: [{ selector: 'mr-timeline-layout', template: "<div class=\"mr-timeline mr-layout\" *ngIf=\"lb.dataSource\">\n <div class=\"mr-timeline__timeline\">\n <div\n class=\"mr-timeline__timeline-loading\"\n *ngIf=\"lb.dataSource.loading.timeline\">\n <n7-loader></n7-loader>\n </div>\n <n7-timeline\n [data]=\"lb.widgets['mr-timeline'].ds.out$ | async\"\n *ngIf=\"!lb.dataSource.loading.timeline\"\n >\n </n7-timeline>\n </div>\n\n <div class=\"mr-timeline__page mr-side-margin\">\n <!-- Result header -->\n <div class=\"mr-timeline__page-header\">\n <p\n class=\"mr-timeline__date\"\n *ngIf=\"!lb.dataSource.loading.resourceDetails\"\n >\n {{lb.dataSource.eventHeader}}\n </p>\n <div class=\"mr-timeline__title\">\n <n7-inner-title\n [data]=\"lb.widgets['mr-year-header'].ds.out$ | async\"\n [emit]=\"lb.widgets['mr-year-header'].emit\"\n >\n </n7-inner-title>\n </div>\n </div>\n <!-- END // Result header -->\n\n <div class=\"mr-timeline__content\">\n <!-- DESCRIZIONE -->\n <div *ngIf=\"lb.dataSource.eventDescription\" class=\"mr-content-block mr-content-block-description\">\n <p [innerHTML]=\"lb.dataSource.eventDescription\"></p>\n <p></p>\n </div>\n\n <ng-container *ngIf=\"!lb.dataSource.loading.resourceDetails\">\n <!-- GALLERIA -->\n <mr-gallery *ngIf=\"lb.dataSource.hasGallery\" \n [grid]=\"4\" \n [data]=\"lb.widgets['mr-gallery'].ds.out$ | async\" \n [emit]=\"lb.widgets['mr-gallery'].emit\">\n </mr-gallery>\n\n <!-- MAPPA -->\n <div\n class=\"mr-content-block mr-content-block-map\"\n *ngIf=\"lb.dataSource.hasMap\"\n >\n <h3 class=\"mr-content-block__title\" *ngIf=\"lb.dataSource.mapHeader\">\n {{ lb.dataSource.mapHeader }}\n </h3>\n <div class=\"mr-content-block__content\">\n <n7-map [data]=\"lb.widgets['mr-map'].ds.out$ | async\"></n7-map>\n </div>\n </div>\n\n <!-- BIBLIOGRAFIA -->\n <ng-container *ngIf=\"lb.dataSource.bibliographyData as biblio\">\n <ng-container *ngIf=\"biblio.items && biblio.items.length > 0\">\n <div class=\"mr-content-block mr-content-block-collection\">\n <h3 class=\"mr-content-block__title\">{{ biblio.header.title }}</h3>\n <div class=\"mr-content-block__content n7-grid-1\">\n <ng-container *ngFor=\"let item of biblio.items\">\n <div class=\"mr-timeline__collection-content\">\n <n7-item-preview\n [emit]=\"lb.eventHandler.itemPreviewEmit\"\n [data]=\"item\"\n >\n </n7-item-preview>\n </div>\n </ng-container>\n </div>\n </div>\n </ng-container>\n </ng-container>\n\n <!-- COLLECTIONS -->\n <ng-container *ngFor=\"let coll of lb.dataSource.collectionData\">\n <ng-container *ngIf=\"coll.items && coll.items.length > 0\">\n <div class=\"mr-content-block-collection mr-content-block\">\n <h3 class=\"mr-content-block__title\">{{ coll.header.title }}</h3>\n <div class=\"mr-content-block__content n7-grid-3\">\n <n7-item-preview *ngFor=\"let item of coll.items\" [data]=\"item\">\n </n7-item-preview>\n </div>\n </div>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n" }]
72
+ args: [{ selector: 'mr-timeline-layout', template: "<div class=\"mr-timeline mr-layout\" *ngIf=\"lb.dataSource\">\n <div class=\"mr-timeline__timeline\">\n <div\n class=\"mr-timeline__timeline-loading\"\n *ngIf=\"lb.dataSource.loading.timeline\">\n <n7-loader></n7-loader>\n </div>\n <n7-timeline\n [data]=\"lb.widgets['mr-timeline'].ds.out$ | async\"\n *ngIf=\"!lb.dataSource.loading.timeline\"\n >\n </n7-timeline>\n </div>\n\n <div class=\"mr-timeline__page mr-side-margin\">\n <!-- Result header -->\n <div class=\"mr-timeline__page-header\">\n <p\n class=\"mr-timeline__date\"\n *ngIf=\"!lb.dataSource.loading.resourceDetails\"\n >\n {{lb.dataSource.eventHeader}}\n </p>\n <div class=\"mr-timeline__title\">\n <n7-inner-title\n [data]=\"lb.widgets['mr-year-header'].ds.out$ | async\"\n [emit]=\"lb.widgets['mr-year-header'].emit\"\n >\n </n7-inner-title>\n </div>\n </div>\n <!-- END // Result header -->\n\n <div class=\"mr-timeline__content\">\n <!-- DESCRIZIONE -->\n <div *ngIf=\"lb.dataSource.eventDescription\" class=\"mr-content-block mr-content-block-description\">\n <p [innerHTML]=\"lb.dataSource.eventDescription\"></p>\n <p></p>\n </div>\n\n <ng-container *ngIf=\"!lb.dataSource.loading.resourceDetails\">\n <!-- GALLERIA -->\n <mr-gallery *ngIf=\"lb.dataSource.hasGallery\" \n [grid]=\"4\" \n [data]=\"lb.widgets['mr-gallery'].ds.out$ | async\" \n [emit]=\"lb.widgets['mr-gallery'].emit\">\n </mr-gallery>\n\n <!-- MAPPA -->\n <div\n class=\"mr-content-block mr-content-block-map\"\n *ngIf=\"lb.dataSource.hasMap\"\n >\n <h3 class=\"mr-content-block__title\" *ngIf=\"lb.dataSource.mapHeader\">\n {{ lb.dataSource.mapHeader }}\n </h3>\n <div class=\"mr-content-block__content\">\n <n7-map [data]=\"lb.widgets['mr-map'].ds.out$ | async\"></n7-map>\n </div>\n </div>\n\n <!-- BIBLIOGRAFIA -->\n <ng-container *ngIf=\"lb.dataSource.bibliographyData as biblio\">\n <ng-container *ngIf=\"biblio.items && biblio.items.length > 0\">\n <div class=\"mr-content-block mr-content-block-collection\">\n <h3 class=\"mr-content-block__title\">{{ biblio.header.title }}</h3>\n <div class=\"mr-content-block__content n7-grid-1\">\n <ng-container *ngFor=\"let item of biblio.items\">\n <div class=\"mr-timeline__collection-content\">\n <n7-item-preview\n [emit]=\"lb.eventHandler.itemPreviewEmit\"\n [data]=\"item\"\n >\n </n7-item-preview>\n </div>\n </ng-container>\n </div>\n </div>\n </ng-container>\n </ng-container>\n\n <!-- COLLECTIONS -->\n <ng-container *ngFor=\"let coll of lb.dataSource.collectionData\">\n <ng-container *ngIf=\"coll.items && coll.items.length > 0\">\n <div class=\"mr-content-block-collection mr-content-block\">\n <h3 class=\"mr-content-block__title\">{{ coll.header.title }}</h3>\n <div class=\"mr-content-block__content {{ coll.grid ? 'n7-grid-' + coll.grid : 'n7-grid-3' }}\">\n <n7-item-preview *ngFor=\"let item of coll.items\" [data]=\"item\">\n </n7-item-preview>\n </div>\n </div>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n" }]
73
73
  }], ctorParameters: () => [{ type: i1.LayoutsConfigurationService }, { type: i2.ActivatedRoute }, { type: i2.Router }, { type: i1.ConfigurationService }, { type: i1.CommunicationService }, { type: i1.MainStateService }, { type: i3.MrLayoutStateService }, { type: i4.MrResourceModalService }, { type: i5.MrLocaleService }, { type: i6.Location }] });
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZWxpbmUtbGF5b3V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtbXVydWNhL3NyYy9saWIvbGF5b3V0cy90aW1lbGluZS1sYXlvdXQvdGltZWxpbmUtbGF5b3V0LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtbXVydWNhL3NyYy9saWIvbGF5b3V0cy90aW1lbGluZS1sYXlvdXQvdGltZWxpbmUtbGF5b3V0Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFFN0QsT0FBTyxFQUNMLGNBQWMsRUFLZixNQUFNLDBCQUEwQixDQUFDO0FBSWxDLE9BQU8sRUFBRSxzQkFBc0IsSUFBSSxNQUFNLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUU1RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7Ozs7Ozs7O0FBRTlELE1BQU0sY0FBYyxHQUFHO0lBQ3JCLE9BQU8sRUFBRSxXQUFXO0NBQ3JCLENBQUM7QUFFRixNQUFNLGdCQUFnQixHQUFHO0lBQ3ZCLE9BQU8sRUFBRSxXQUFXO0NBQ3JCLENBQUM7QUFNRixNQUFNLE9BQU8seUJBQTBCLFNBQVEsY0FBYztJQUczRCxZQUNFLG9CQUFpRCxFQUN6QyxLQUFxQixFQUNyQixNQUFjLEVBQ2QsYUFBbUMsRUFDbkMsYUFBbUMsRUFDbkMsU0FBMkIsRUFDNUIsV0FBaUMsRUFDakMsWUFBb0MsRUFDcEMsYUFBOEIsRUFDOUIsUUFBa0I7UUFFekIsS0FBSyxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxDQUFDO1FBVjVELFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxrQkFBYSxHQUFiLGFBQWEsQ0FBc0I7UUFDbkMsa0JBQWEsR0FBYixhQUFhLENBQXNCO1FBQ25DLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzVCLGdCQUFXLEdBQVgsV0FBVyxDQUFzQjtRQUNqQyxpQkFBWSxHQUFaLFlBQVksQ0FBd0I7UUFDcEMsa0JBQWEsR0FBYixhQUFhLENBQWlCO1FBQzlCLGFBQVEsR0FBUixRQUFRLENBQVU7SUFHM0IsQ0FBQztJQUVTLFdBQVc7UUFDbkIsT0FBTztZQUNMLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2QixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDekIsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1lBQ2pDLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtZQUNqQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDN0IsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQy9CLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztZQUNqQixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDbkIsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1lBQ2pDLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2QixPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksRUFBRTtTQUNuQyxDQUFDO0lBQ0osQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNqQyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNoQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7WUFDOUIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFDaEIsRUFBRSxFQUFFLFlBQVk7WUFDaEIsVUFBVSxFQUFFLGNBQWMsQ0FBQyxPQUFPO1lBQ2xDLFlBQVksRUFBRSxnQkFBZ0IsQ0FBQyxPQUFPO1NBQ3ZDLENBQUMsQ0FBQztJQUNMLENBQUM7K0dBckRVLHlCQUF5QjttR0FBekIseUJBQXlCLGlGQzdCdEMsdWpIQWlHQTs7NEZEcEVhLHlCQUF5QjtrQkFKckMsU0FBUzsrQkFDRSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7XG4gIEFic3RyYWN0TGF5b3V0LFxuICBDb21tdW5pY2F0aW9uU2VydmljZSxcbiAgTGF5b3V0c0NvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICBDb25maWd1cmF0aW9uU2VydmljZSxcbiAgTWFpblN0YXRlU2VydmljZVxufSBmcm9tICdAbmV0Ny9ib2lsZXJwbGF0ZS1jb21tb24nO1xuaW1wb3J0IHsgTG9jYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTXJSZXNvdXJjZU1vZGFsU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3Jlc291cmNlLW1vZGFsLnNlcnZpY2UnO1xuaW1wb3J0IHsgTXJMYXlvdXRTdGF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9sYXlvdXQtc3RhdGUuc2VydmljZSc7XG5pbXBvcnQgeyBNclRpbWVsaW5lTGF5b3V0Q29uZmlnIGFzIGNvbmZpZyB9IGZyb20gJy4vdGltZWxpbmUtbGF5b3V0LmNvbmZpZyc7XG5pbXBvcnQgeyBNckxvY2FsZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9sb2NhbGUuc2VydmljZSc7XG5pbXBvcnQgeyBNckdhbGxlcnlEUyB9IGZyb20gJy4uLy4uL2RhdGEtc291cmNlcy9nYWxsZXJ5LmRzJztcbmltcG9ydCB7IE1yR2FsbGVyeUVIIH0gZnJvbSAnLi4vLi4vZXZlbnQtaGFuZGxlcnMvZ2FsbGVyeS5laCc7XG5cbmNvbnN0IERBVEFTT1VSQ0VfTUFQID0ge1xuICBnYWxsZXJ5OiBNckdhbGxlcnlEU1xufTtcblxuY29uc3QgRVZFTlRIQU5ETEVSX01BUCA9IHtcbiAgZ2FsbGVyeTogTXJHYWxsZXJ5RUhcbn07XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21yLXRpbWVsaW5lLWxheW91dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90aW1lbGluZS1sYXlvdXQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIE1yVGltZWxpbmVMYXlvdXRDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdExheW91dCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBjb25maWdJZDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGxheW91dHNDb25maWd1cmF0aW9uOiBMYXlvdXRzQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIGNvbmZpZ3VyYXRpb246IENvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgY29tbXVuaWNhdGlvbjogQ29tbXVuaWNhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBtYWluU3RhdGU6IE1haW5TdGF0ZVNlcnZpY2UsXG4gICAgcHVibGljIGxheW91dFN0YXRlOiBNckxheW91dFN0YXRlU2VydmljZSxcbiAgICBwdWJsaWMgbW9kYWxTZXJ2aWNlOiBNclJlc291cmNlTW9kYWxTZXJ2aWNlLFxuICAgIHB1YmxpYyBsb2NhbGVTZXJ2aWNlOiBNckxvY2FsZVNlcnZpY2UsXG4gICAgcHVibGljIGxvY2F0aW9uOiBMb2NhdGlvbixcbiAgKSB7XG4gICAgc3VwZXIobGF5b3V0c0NvbmZpZ3VyYXRpb24uZ2V0KCdNclRpbWVsaW5lTGF5b3V0Q29uZmlnJykgfHwgY29uZmlnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBpbml0UGF5bG9hZCgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgY29uZmlnSWQ6IHRoaXMuY29uZmlnSWQsXG4gICAgICBtYWluU3RhdGU6IHRoaXMubWFpblN0YXRlLFxuICAgICAgY29uZmlndXJhdGlvbjogdGhpcy5jb25maWd1cmF0aW9uLFxuICAgICAgY29tbXVuaWNhdGlvbjogdGhpcy5jb21tdW5pY2F0aW9uLFxuICAgICAgbGF5b3V0U3RhdGU6IHRoaXMubGF5b3V0U3RhdGUsXG4gICAgICBtb2RhbFNlcnZpY2U6IHRoaXMubW9kYWxTZXJ2aWNlLFxuICAgICAgcm91dGU6IHRoaXMucm91dGUsXG4gICAgICByb3V0ZXI6IHRoaXMucm91dGVyLFxuICAgICAgbG9jYWxlU2VydmljZTogdGhpcy5sb2NhbGVTZXJ2aWNlLFxuICAgICAgbG9jYXRpb246IHRoaXMubG9jYXRpb24sXG4gICAgICBvcHRpb25zOiB0aGlzLmNvbmZpZy5vcHRpb25zIHx8IHt9XG4gICAgfTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMucm91dGUuZGF0YS5zdWJzY3JpYmUoKGRhdGEpID0+IHtcbiAgICAgIHRoaXMubGF5b3V0U3RhdGUuYWRkKCdjb250ZW50Jyk7XG4gICAgICB0aGlzLmNvbmZpZ0lkID0gZGF0YS5jb25maWdJZDtcbiAgICAgIHRoaXMubG9hZFdpZGdldHMoKTtcbiAgICAgIHRoaXMub25Jbml0KCk7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLm9uRGVzdHJveSgpO1xuICB9XG5cbiAgbG9hZFdpZGdldHMoKSB7XG4gICAgdGhpcy53aWRnZXRzLnB1c2goe1xuICAgICAgaWQ6ICdtci1nYWxsZXJ5JyxcbiAgICAgIGRhdGFTb3VyY2U6IERBVEFTT1VSQ0VfTUFQLmdhbGxlcnksXG4gICAgICBldmVudEhhbmRsZXI6IEVWRU5USEFORExFUl9NQVAuZ2FsbGVyeVxuICAgIH0pO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibXItdGltZWxpbmUgbXItbGF5b3V0XCIgKm5nSWY9XCJsYi5kYXRhU291cmNlXCI+XG4gIDxkaXYgY2xhc3M9XCJtci10aW1lbGluZV9fdGltZWxpbmVcIj5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cIm1yLXRpbWVsaW5lX190aW1lbGluZS1sb2FkaW5nXCJcbiAgICAgICpuZ0lmPVwibGIuZGF0YVNvdXJjZS5sb2FkaW5nLnRpbWVsaW5lXCI+XG4gICAgICAgIDxuNy1sb2FkZXI+PC9uNy1sb2FkZXI+XG4gICAgPC9kaXY+XG4gICAgPG43LXRpbWVsaW5lXG4gICAgICBbZGF0YV09XCJsYi53aWRnZXRzWydtci10aW1lbGluZSddLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAqbmdJZj1cIiFsYi5kYXRhU291cmNlLmxvYWRpbmcudGltZWxpbmVcIlxuICAgID5cbiAgICA8L243LXRpbWVsaW5lPlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwibXItdGltZWxpbmVfX3BhZ2UgbXItc2lkZS1tYXJnaW5cIj5cbiAgICA8IS0tIFJlc3VsdCBoZWFkZXIgLS0+XG4gICAgPGRpdiBjbGFzcz1cIm1yLXRpbWVsaW5lX19wYWdlLWhlYWRlclwiPlxuICAgICAgPHBcbiAgICAgICAgY2xhc3M9XCJtci10aW1lbGluZV9fZGF0ZVwiXG4gICAgICAgICpuZ0lmPVwiIWxiLmRhdGFTb3VyY2UubG9hZGluZy5yZXNvdXJjZURldGFpbHNcIlxuICAgICAgPlxuICAgICAgICB7e2xiLmRhdGFTb3VyY2UuZXZlbnRIZWFkZXJ9fVxuICAgICAgPC9wPlxuICAgICAgPGRpdiBjbGFzcz1cIm1yLXRpbWVsaW5lX190aXRsZVwiPlxuICAgICAgICA8bjctaW5uZXItdGl0bGVcbiAgICAgICAgICBbZGF0YV09XCJsYi53aWRnZXRzWydtci15ZWFyLWhlYWRlciddLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snbXIteWVhci1oZWFkZXInXS5lbWl0XCJcbiAgICAgICAgPlxuICAgICAgICA8L243LWlubmVyLXRpdGxlPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPCEtLSBFTkQgLy8gUmVzdWx0IGhlYWRlciAtLT5cblxuICAgIDxkaXYgY2xhc3M9XCJtci10aW1lbGluZV9fY29udGVudFwiPlxuICAgICAgPCEtLSBERVNDUklaSU9ORSAtLT5cbiAgICAgIDxkaXYgKm5nSWY9XCJsYi5kYXRhU291cmNlLmV2ZW50RGVzY3JpcHRpb25cIiBjbGFzcz1cIm1yLWNvbnRlbnQtYmxvY2sgbXItY29udGVudC1ibG9jay1kZXNjcmlwdGlvblwiPlxuICAgICAgICA8cCBbaW5uZXJIVE1MXT1cImxiLmRhdGFTb3VyY2UuZXZlbnREZXNjcmlwdGlvblwiPjwvcD5cbiAgICAgICAgPHA+PC9wPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhbGIuZGF0YVNvdXJjZS5sb2FkaW5nLnJlc291cmNlRGV0YWlsc1wiPlxuICAgICAgICA8IS0tIEdBTExFUklBIC0tPlxuICAgICAgICA8bXItZ2FsbGVyeSAqbmdJZj1cImxiLmRhdGFTb3VyY2UuaGFzR2FsbGVyeVwiIFxuICAgICAgICAgIFtncmlkXT1cIjRcIiBcbiAgICAgICAgICBbZGF0YV09XCJsYi53aWRnZXRzWydtci1nYWxsZXJ5J10uZHMub3V0JCB8IGFzeW5jXCIgXG4gICAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snbXItZ2FsbGVyeSddLmVtaXRcIj5cbiAgICAgICAgPC9tci1nYWxsZXJ5PlxuXG4gICAgICAgIDwhLS0gTUFQUEEgLS0+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cIm1yLWNvbnRlbnQtYmxvY2sgbXItY29udGVudC1ibG9jay1tYXBcIlxuICAgICAgICAgICpuZ0lmPVwibGIuZGF0YVNvdXJjZS5oYXNNYXBcIlxuICAgICAgICA+XG4gICAgICAgICAgPGgzIGNsYXNzPVwibXItY29udGVudC1ibG9ja19fdGl0bGVcIiAqbmdJZj1cImxiLmRhdGFTb3VyY2UubWFwSGVhZGVyXCI+XG4gICAgICAgICAgICB7eyBsYi5kYXRhU291cmNlLm1hcEhlYWRlciB9fVxuICAgICAgICAgIDwvaDM+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1yLWNvbnRlbnQtYmxvY2tfX2NvbnRlbnRcIj5cbiAgICAgICAgICAgIDxuNy1tYXAgW2RhdGFdPVwibGIud2lkZ2V0c1snbXItbWFwJ10uZHMub3V0JCB8IGFzeW5jXCI+PC9uNy1tYXA+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDwhLS0gQklCTElPR1JBRklBIC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibGIuZGF0YVNvdXJjZS5iaWJsaW9ncmFwaHlEYXRhIGFzIGJpYmxpb1wiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJiaWJsaW8uaXRlbXMgJiYgYmlibGlvLml0ZW1zLmxlbmd0aCA+IDBcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtci1jb250ZW50LWJsb2NrIG1yLWNvbnRlbnQtYmxvY2stY29sbGVjdGlvblwiPlxuICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJtci1jb250ZW50LWJsb2NrX190aXRsZVwiPnt7IGJpYmxpby5oZWFkZXIudGl0bGUgfX08L2gzPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXItY29udGVudC1ibG9ja19fY29udGVudCBuNy1ncmlkLTFcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGJpYmxpby5pdGVtc1wiPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1yLXRpbWVsaW5lX19jb2xsZWN0aW9uLWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgPG43LWl0ZW0tcHJldmlld1xuICAgICAgICAgICAgICAgICAgICAgIFtlbWl0XT1cImxiLmV2ZW50SGFuZGxlci5pdGVtUHJldmlld0VtaXRcIlxuICAgICAgICAgICAgICAgICAgICAgIFtkYXRhXT1cIml0ZW1cIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDwvbjctaXRlbS1wcmV2aWV3PlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwhLS0gQ09MTEVDVElPTlMgIC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBjb2xsIG9mIGxiLmRhdGFTb3VyY2UuY29sbGVjdGlvbkRhdGFcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29sbC5pdGVtcyAmJiBjb2xsLml0ZW1zLmxlbmd0aCA+IDBcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtci1jb250ZW50LWJsb2NrLWNvbGxlY3Rpb24gbXItY29udGVudC1ibG9ja1wiPlxuICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJtci1jb250ZW50LWJsb2NrX190aXRsZVwiPnt7IGNvbGwuaGVhZGVyLnRpdGxlIH19PC9oMz5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1yLWNvbnRlbnQtYmxvY2tfX2NvbnRlbnQgbjctZ3JpZC0zXCI+XG4gICAgICAgICAgICAgICAgPG43LWl0ZW0tcHJldmlldyAqbmdGb3I9XCJsZXQgaXRlbSBvZiBjb2xsLml0ZW1zXCIgW2RhdGFdPVwiaXRlbVwiPlxuICAgICAgICAgICAgICAgIDwvbjctaXRlbS1wcmV2aWV3PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZWxpbmUtbGF5b3V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtbXVydWNhL3NyYy9saWIvbGF5b3V0cy90aW1lbGluZS1sYXlvdXQvdGltZWxpbmUtbGF5b3V0LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtbXVydWNhL3NyYy9saWIvbGF5b3V0cy90aW1lbGluZS1sYXlvdXQvdGltZWxpbmUtbGF5b3V0Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFFN0QsT0FBTyxFQUNMLGNBQWMsRUFLZixNQUFNLDBCQUEwQixDQUFDO0FBSWxDLE9BQU8sRUFBRSxzQkFBc0IsSUFBSSxNQUFNLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUU1RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7Ozs7Ozs7O0FBRTlELE1BQU0sY0FBYyxHQUFHO0lBQ3JCLE9BQU8sRUFBRSxXQUFXO0NBQ3JCLENBQUM7QUFFRixNQUFNLGdCQUFnQixHQUFHO0lBQ3ZCLE9BQU8sRUFBRSxXQUFXO0NBQ3JCLENBQUM7QUFNRixNQUFNLE9BQU8seUJBQTBCLFNBQVEsY0FBYztJQUczRCxZQUNFLG9CQUFpRCxFQUN6QyxLQUFxQixFQUNyQixNQUFjLEVBQ2QsYUFBbUMsRUFDbkMsYUFBbUMsRUFDbkMsU0FBMkIsRUFDNUIsV0FBaUMsRUFDakMsWUFBb0MsRUFDcEMsYUFBOEIsRUFDOUIsUUFBa0I7UUFFekIsS0FBSyxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxDQUFDO1FBVjVELFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxrQkFBYSxHQUFiLGFBQWEsQ0FBc0I7UUFDbkMsa0JBQWEsR0FBYixhQUFhLENBQXNCO1FBQ25DLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzVCLGdCQUFXLEdBQVgsV0FBVyxDQUFzQjtRQUNqQyxpQkFBWSxHQUFaLFlBQVksQ0FBd0I7UUFDcEMsa0JBQWEsR0FBYixhQUFhLENBQWlCO1FBQzlCLGFBQVEsR0FBUixRQUFRLENBQVU7SUFHM0IsQ0FBQztJQUVTLFdBQVc7UUFDbkIsT0FBTztZQUNMLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2QixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDekIsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1lBQ2pDLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtZQUNqQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDN0IsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQy9CLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztZQUNqQixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDbkIsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1lBQ2pDLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2QixPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksRUFBRTtTQUNuQyxDQUFDO0lBQ0osQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNqQyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNoQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7WUFDOUIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFDaEIsRUFBRSxFQUFFLFlBQVk7WUFDaEIsVUFBVSxFQUFFLGNBQWMsQ0FBQyxPQUFPO1lBQ2xDLFlBQVksRUFBRSxnQkFBZ0IsQ0FBQyxPQUFPO1NBQ3ZDLENBQUMsQ0FBQztJQUNMLENBQUM7K0dBckRVLHlCQUF5QjttR0FBekIseUJBQXlCLGlGQzdCdEMsb21IQWlHQTs7NEZEcEVhLHlCQUF5QjtrQkFKckMsU0FBUzsrQkFDRSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7XG4gIEFic3RyYWN0TGF5b3V0LFxuICBDb21tdW5pY2F0aW9uU2VydmljZSxcbiAgTGF5b3V0c0NvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICBDb25maWd1cmF0aW9uU2VydmljZSxcbiAgTWFpblN0YXRlU2VydmljZVxufSBmcm9tICdAbmV0Ny9ib2lsZXJwbGF0ZS1jb21tb24nO1xuaW1wb3J0IHsgTG9jYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTXJSZXNvdXJjZU1vZGFsU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3Jlc291cmNlLW1vZGFsLnNlcnZpY2UnO1xuaW1wb3J0IHsgTXJMYXlvdXRTdGF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9sYXlvdXQtc3RhdGUuc2VydmljZSc7XG5pbXBvcnQgeyBNclRpbWVsaW5lTGF5b3V0Q29uZmlnIGFzIGNvbmZpZyB9IGZyb20gJy4vdGltZWxpbmUtbGF5b3V0LmNvbmZpZyc7XG5pbXBvcnQgeyBNckxvY2FsZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9sb2NhbGUuc2VydmljZSc7XG5pbXBvcnQgeyBNckdhbGxlcnlEUyB9IGZyb20gJy4uLy4uL2RhdGEtc291cmNlcy9nYWxsZXJ5LmRzJztcbmltcG9ydCB7IE1yR2FsbGVyeUVIIH0gZnJvbSAnLi4vLi4vZXZlbnQtaGFuZGxlcnMvZ2FsbGVyeS5laCc7XG5cbmNvbnN0IERBVEFTT1VSQ0VfTUFQID0ge1xuICBnYWxsZXJ5OiBNckdhbGxlcnlEU1xufTtcblxuY29uc3QgRVZFTlRIQU5ETEVSX01BUCA9IHtcbiAgZ2FsbGVyeTogTXJHYWxsZXJ5RUhcbn07XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21yLXRpbWVsaW5lLWxheW91dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90aW1lbGluZS1sYXlvdXQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIE1yVGltZWxpbmVMYXlvdXRDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdExheW91dCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBjb25maWdJZDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGxheW91dHNDb25maWd1cmF0aW9uOiBMYXlvdXRzQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIGNvbmZpZ3VyYXRpb246IENvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgY29tbXVuaWNhdGlvbjogQ29tbXVuaWNhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBtYWluU3RhdGU6IE1haW5TdGF0ZVNlcnZpY2UsXG4gICAgcHVibGljIGxheW91dFN0YXRlOiBNckxheW91dFN0YXRlU2VydmljZSxcbiAgICBwdWJsaWMgbW9kYWxTZXJ2aWNlOiBNclJlc291cmNlTW9kYWxTZXJ2aWNlLFxuICAgIHB1YmxpYyBsb2NhbGVTZXJ2aWNlOiBNckxvY2FsZVNlcnZpY2UsXG4gICAgcHVibGljIGxvY2F0aW9uOiBMb2NhdGlvbixcbiAgKSB7XG4gICAgc3VwZXIobGF5b3V0c0NvbmZpZ3VyYXRpb24uZ2V0KCdNclRpbWVsaW5lTGF5b3V0Q29uZmlnJykgfHwgY29uZmlnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBpbml0UGF5bG9hZCgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgY29uZmlnSWQ6IHRoaXMuY29uZmlnSWQsXG4gICAgICBtYWluU3RhdGU6IHRoaXMubWFpblN0YXRlLFxuICAgICAgY29uZmlndXJhdGlvbjogdGhpcy5jb25maWd1cmF0aW9uLFxuICAgICAgY29tbXVuaWNhdGlvbjogdGhpcy5jb21tdW5pY2F0aW9uLFxuICAgICAgbGF5b3V0U3RhdGU6IHRoaXMubGF5b3V0U3RhdGUsXG4gICAgICBtb2RhbFNlcnZpY2U6IHRoaXMubW9kYWxTZXJ2aWNlLFxuICAgICAgcm91dGU6IHRoaXMucm91dGUsXG4gICAgICByb3V0ZXI6IHRoaXMucm91dGVyLFxuICAgICAgbG9jYWxlU2VydmljZTogdGhpcy5sb2NhbGVTZXJ2aWNlLFxuICAgICAgbG9jYXRpb246IHRoaXMubG9jYXRpb24sXG4gICAgICBvcHRpb25zOiB0aGlzLmNvbmZpZy5vcHRpb25zIHx8IHt9XG4gICAgfTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMucm91dGUuZGF0YS5zdWJzY3JpYmUoKGRhdGEpID0+IHtcbiAgICAgIHRoaXMubGF5b3V0U3RhdGUuYWRkKCdjb250ZW50Jyk7XG4gICAgICB0aGlzLmNvbmZpZ0lkID0gZGF0YS5jb25maWdJZDtcbiAgICAgIHRoaXMubG9hZFdpZGdldHMoKTtcbiAgICAgIHRoaXMub25Jbml0KCk7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLm9uRGVzdHJveSgpO1xuICB9XG5cbiAgbG9hZFdpZGdldHMoKSB7XG4gICAgdGhpcy53aWRnZXRzLnB1c2goe1xuICAgICAgaWQ6ICdtci1nYWxsZXJ5JyxcbiAgICAgIGRhdGFTb3VyY2U6IERBVEFTT1VSQ0VfTUFQLmdhbGxlcnksXG4gICAgICBldmVudEhhbmRsZXI6IEVWRU5USEFORExFUl9NQVAuZ2FsbGVyeVxuICAgIH0pO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibXItdGltZWxpbmUgbXItbGF5b3V0XCIgKm5nSWY9XCJsYi5kYXRhU291cmNlXCI+XG4gIDxkaXYgY2xhc3M9XCJtci10aW1lbGluZV9fdGltZWxpbmVcIj5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cIm1yLXRpbWVsaW5lX190aW1lbGluZS1sb2FkaW5nXCJcbiAgICAgICpuZ0lmPVwibGIuZGF0YVNvdXJjZS5sb2FkaW5nLnRpbWVsaW5lXCI+XG4gICAgICAgIDxuNy1sb2FkZXI+PC9uNy1sb2FkZXI+XG4gICAgPC9kaXY+XG4gICAgPG43LXRpbWVsaW5lXG4gICAgICBbZGF0YV09XCJsYi53aWRnZXRzWydtci10aW1lbGluZSddLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAqbmdJZj1cIiFsYi5kYXRhU291cmNlLmxvYWRpbmcudGltZWxpbmVcIlxuICAgID5cbiAgICA8L243LXRpbWVsaW5lPlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwibXItdGltZWxpbmVfX3BhZ2UgbXItc2lkZS1tYXJnaW5cIj5cbiAgICA8IS0tIFJlc3VsdCBoZWFkZXIgLS0+XG4gICAgPGRpdiBjbGFzcz1cIm1yLXRpbWVsaW5lX19wYWdlLWhlYWRlclwiPlxuICAgICAgPHBcbiAgICAgICAgY2xhc3M9XCJtci10aW1lbGluZV9fZGF0ZVwiXG4gICAgICAgICpuZ0lmPVwiIWxiLmRhdGFTb3VyY2UubG9hZGluZy5yZXNvdXJjZURldGFpbHNcIlxuICAgICAgPlxuICAgICAgICB7e2xiLmRhdGFTb3VyY2UuZXZlbnRIZWFkZXJ9fVxuICAgICAgPC9wPlxuICAgICAgPGRpdiBjbGFzcz1cIm1yLXRpbWVsaW5lX190aXRsZVwiPlxuICAgICAgICA8bjctaW5uZXItdGl0bGVcbiAgICAgICAgICBbZGF0YV09XCJsYi53aWRnZXRzWydtci15ZWFyLWhlYWRlciddLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snbXIteWVhci1oZWFkZXInXS5lbWl0XCJcbiAgICAgICAgPlxuICAgICAgICA8L243LWlubmVyLXRpdGxlPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPCEtLSBFTkQgLy8gUmVzdWx0IGhlYWRlciAtLT5cblxuICAgIDxkaXYgY2xhc3M9XCJtci10aW1lbGluZV9fY29udGVudFwiPlxuICAgICAgPCEtLSBERVNDUklaSU9ORSAtLT5cbiAgICAgIDxkaXYgKm5nSWY9XCJsYi5kYXRhU291cmNlLmV2ZW50RGVzY3JpcHRpb25cIiBjbGFzcz1cIm1yLWNvbnRlbnQtYmxvY2sgbXItY29udGVudC1ibG9jay1kZXNjcmlwdGlvblwiPlxuICAgICAgICA8cCBbaW5uZXJIVE1MXT1cImxiLmRhdGFTb3VyY2UuZXZlbnREZXNjcmlwdGlvblwiPjwvcD5cbiAgICAgICAgPHA+PC9wPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhbGIuZGF0YVNvdXJjZS5sb2FkaW5nLnJlc291cmNlRGV0YWlsc1wiPlxuICAgICAgICA8IS0tIEdBTExFUklBIC0tPlxuICAgICAgICA8bXItZ2FsbGVyeSAqbmdJZj1cImxiLmRhdGFTb3VyY2UuaGFzR2FsbGVyeVwiIFxuICAgICAgICAgIFtncmlkXT1cIjRcIiBcbiAgICAgICAgICBbZGF0YV09XCJsYi53aWRnZXRzWydtci1nYWxsZXJ5J10uZHMub3V0JCB8IGFzeW5jXCIgXG4gICAgICAgICAgW2VtaXRdPVwibGIud2lkZ2V0c1snbXItZ2FsbGVyeSddLmVtaXRcIj5cbiAgICAgICAgPC9tci1nYWxsZXJ5PlxuXG4gICAgICAgIDwhLS0gTUFQUEEgLS0+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cIm1yLWNvbnRlbnQtYmxvY2sgbXItY29udGVudC1ibG9jay1tYXBcIlxuICAgICAgICAgICpuZ0lmPVwibGIuZGF0YVNvdXJjZS5oYXNNYXBcIlxuICAgICAgICA+XG4gICAgICAgICAgPGgzIGNsYXNzPVwibXItY29udGVudC1ibG9ja19fdGl0bGVcIiAqbmdJZj1cImxiLmRhdGFTb3VyY2UubWFwSGVhZGVyXCI+XG4gICAgICAgICAgICB7eyBsYi5kYXRhU291cmNlLm1hcEhlYWRlciB9fVxuICAgICAgICAgIDwvaDM+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1yLWNvbnRlbnQtYmxvY2tfX2NvbnRlbnRcIj5cbiAgICAgICAgICAgIDxuNy1tYXAgW2RhdGFdPVwibGIud2lkZ2V0c1snbXItbWFwJ10uZHMub3V0JCB8IGFzeW5jXCI+PC9uNy1tYXA+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDwhLS0gQklCTElPR1JBRklBIC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibGIuZGF0YVNvdXJjZS5iaWJsaW9ncmFwaHlEYXRhIGFzIGJpYmxpb1wiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJiaWJsaW8uaXRlbXMgJiYgYmlibGlvLml0ZW1zLmxlbmd0aCA+IDBcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtci1jb250ZW50LWJsb2NrIG1yLWNvbnRlbnQtYmxvY2stY29sbGVjdGlvblwiPlxuICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJtci1jb250ZW50LWJsb2NrX190aXRsZVwiPnt7IGJpYmxpby5oZWFkZXIudGl0bGUgfX08L2gzPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXItY29udGVudC1ibG9ja19fY29udGVudCBuNy1ncmlkLTFcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGJpYmxpby5pdGVtc1wiPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1yLXRpbWVsaW5lX19jb2xsZWN0aW9uLWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgPG43LWl0ZW0tcHJldmlld1xuICAgICAgICAgICAgICAgICAgICAgIFtlbWl0XT1cImxiLmV2ZW50SGFuZGxlci5pdGVtUHJldmlld0VtaXRcIlxuICAgICAgICAgICAgICAgICAgICAgIFtkYXRhXT1cIml0ZW1cIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDwvbjctaXRlbS1wcmV2aWV3PlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwhLS0gQ09MTEVDVElPTlMgIC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBjb2xsIG9mIGxiLmRhdGFTb3VyY2UuY29sbGVjdGlvbkRhdGFcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29sbC5pdGVtcyAmJiBjb2xsLml0ZW1zLmxlbmd0aCA+IDBcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtci1jb250ZW50LWJsb2NrLWNvbGxlY3Rpb24gbXItY29udGVudC1ibG9ja1wiPlxuICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJtci1jb250ZW50LWJsb2NrX190aXRsZVwiPnt7IGNvbGwuaGVhZGVyLnRpdGxlIH19PC9oMz5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1yLWNvbnRlbnQtYmxvY2tfX2NvbnRlbnQge3sgY29sbC5ncmlkID8gJ243LWdyaWQtJyArIGNvbGwuZ3JpZCA6ICduNy1ncmlkLTMnIH19XCI+XG4gICAgICAgICAgICAgICAgPG43LWl0ZW0tcHJldmlldyAqbmdGb3I9XCJsZXQgaXRlbSBvZiBjb2xsLml0ZW1zXCIgW2RhdGFdPVwiaXRlbVwiPlxuICAgICAgICAgICAgICAgIDwvbjctaXRlbS1wcmV2aWV3PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -5608,9 +5608,13 @@ class SearchFacetsLayoutDS extends LayoutDataSource {
5608
5608
  }
5609
5609
  onInit(payload) {
5610
5610
  this.searchService = payload.searchService;
5611
+ this.localeService = payload.localeService;
5611
5612
  this.searchConfig = this.searchService.getConfig();
5612
5613
  this.facets = this.searchConfig.facets;
5613
5614
  this.initInputs();
5615
+ if (this.searchConfig.facets.redirectLink) {
5616
+ this.initRedirectLink(this.searchConfig.facets.redirectLink);
5617
+ }
5614
5618
  }
5615
5619
  initInputs() {
5616
5620
  // set components data
@@ -5630,6 +5634,11 @@ class SearchFacetsLayoutDS extends LayoutDataSource {
5630
5634
  });
5631
5635
  });
5632
5636
  }
5637
+ initRedirectLink(redirectData) {
5638
+ const locale = this.localeService.getLocale();
5639
+ this.redirectLabel = _t(redirectData.label);
5640
+ this.redirectPath = redirectData.paths[locale];
5641
+ }
5633
5642
  updateInputValue(id, newValue) {
5634
5643
  const ds = this.inputsDS[id];
5635
5644
  ds.setValue(newValue, ds.value !== newValue);
@@ -6551,7 +6560,8 @@ class MrSearchFacetsLayoutComponent extends AbstractLayout {
6551
6560
  }
6552
6561
  initPayload() {
6553
6562
  return {
6554
- searchService: this.searchService
6563
+ searchService: this.searchService,
6564
+ localeService: this.localeService,
6555
6565
  };
6556
6566
  }
6557
6567
  ngOnInit() {
@@ -6592,13 +6602,15 @@ class MrSearchFacetsLayoutComponent extends AbstractLayout {
6592
6602
  });
6593
6603
  }
6594
6604
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MrSearchFacetsLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6595
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MrSearchFacetsLayoutComponent, selector: "mr-search-facets-layout", inputs: { searchService: "searchService" }, usesInheritance: true, ngImport: i0, template: "<div *ngIf=\"lb.dataSource.facets\" class=\"mr-facets__facets-wrapper {{ lb.dataSource.facets.classes || '' }}\">\n <div *ngFor=\"let section of lb.dataSource.facets.sections\" \n class=\"mr-facets__single-facet {{ section.classes || '' }}\"\n [ngClass]=\"lb.dataSource.searchService.getState$('section', section.id) | async\">\n <n7-facet-header\n *ngIf=\"section.header\"\n [data]=\"lb.widgets[section.header.id].ds.out$ | async\"\n [emit]=\"lb.widgets[section.header.id].emit\"\n ></n7-facet-header>\n\n <div [hidden]=\"section.header && !lb.widgets[section.header.id].ds.isOpen()\" class=\"mr-facets__single-facet-content\">\n <div *ngFor=\"let input of section.inputs\" \n [attr.id]=\"'facet-container-' + input.id\"\n class=\"mr-facets__single-facet-inner-content {{ input.classes || '' }}\">\n <ng-container [ngSwitch]=\"input.type\">\n \n <!-- INPUT TEXT -->\n <n7-input-text \n *ngSwitchCase=\"'text'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-input-text>\n \n <!-- INPUT CHECKBOX -->\n <n7-input-checkbox \n *ngSwitchCase=\"'checkbox'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-input-checkbox>\n \n <!-- INPUT SELECT -->\n <n7-input-select \n *ngSwitchCase=\"'select'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-input-select>\n \n <!-- INPUT LINK -->\n <n7-input-link \n *ngSwitchCase=\"'link'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-input-link>\n\n <!-- INPUT LINKMULTI -->\n <n7-input-link \n *ngSwitchCase=\"'linkMulti'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-input-link>\n \n <!-- INPUT MAP -->\n <n7-map \n *ngSwitchCase=\"'map'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-map>\n\n <!-- INPUT HISTOGRAM -->\n <n7-histogram-range \n *ngSwitchCase=\"'histogram'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-histogram-range>\n \n </ng-container>\n </div>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i7.FacetHeaderComponent, selector: "n7-facet-header", inputs: ["data", "emit"] }, { kind: "component", type: i7.HistogramRangeComponent, selector: "n7-histogram-range", inputs: ["data", "emit"] }, { kind: "component", type: i7.InputCheckboxComponent, selector: "n7-input-checkbox", inputs: ["data", "emit"] }, { kind: "component", type: i7.InputLinkComponent, selector: "n7-input-link", inputs: ["data", "emit"] }, { kind: "component", type: i7.InputSelectComponent, selector: "n7-input-select", inputs: ["data", "emit"] }, { kind: "component", type: i7.InputTextComponent, selector: "n7-input-text", inputs: ["data", "emit"] }, { kind: "component", type: i7.MapComponent, selector: "n7-map", inputs: ["data", "emit"] }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }] }); }
6605
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MrSearchFacetsLayoutComponent, selector: "mr-search-facets-layout", inputs: { searchService: "searchService", localeService: "localeService" }, usesInheritance: true, ngImport: i0, template: "<div *ngIf=\"lb.dataSource.facets\" class=\"mr-facets__facets-wrapper {{ lb.dataSource.facets.classes || '' }}\">\n\n <div *ngIf=\"lb.dataSource.redirectPath && lb.dataSource.redirectLabel\" class=\"mr-facets__redirect-link\">\n <a href=\"{{ lb.dataSource.redirectPath }}\">{{ lb.dataSource.redirectLabel }}</a>\n </div>\n\n <div *ngFor=\"let section of lb.dataSource.facets.sections\" \n class=\"mr-facets__single-facet {{ section.classes || '' }}\"\n [ngClass]=\"lb.dataSource.searchService.getState$('section', section.id) | async\">\n <n7-facet-header\n *ngIf=\"section.header\"\n [data]=\"lb.widgets[section.header.id].ds.out$ | async\"\n [emit]=\"lb.widgets[section.header.id].emit\"\n ></n7-facet-header>\n\n <div [hidden]=\"section.header && !lb.widgets[section.header.id].ds.isOpen()\" class=\"mr-facets__single-facet-content\">\n <div *ngFor=\"let input of section.inputs\" \n [attr.id]=\"'facet-container-' + input.id\"\n class=\"mr-facets__single-facet-inner-content {{ input.classes || '' }}\">\n <ng-container [ngSwitch]=\"input.type\">\n \n <!-- INPUT TEXT -->\n <n7-input-text \n *ngSwitchCase=\"'text'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-input-text>\n \n <!-- INPUT CHECKBOX -->\n <n7-input-checkbox \n *ngSwitchCase=\"'checkbox'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-input-checkbox>\n \n <!-- INPUT SELECT -->\n <n7-input-select \n *ngSwitchCase=\"'select'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-input-select>\n \n <!-- INPUT LINK -->\n <n7-input-link \n *ngSwitchCase=\"'link'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-input-link>\n\n <!-- INPUT LINKMULTI -->\n <n7-input-link \n *ngSwitchCase=\"'linkMulti'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-input-link>\n \n <!-- INPUT MAP -->\n <n7-map \n *ngSwitchCase=\"'map'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-map>\n\n <!-- INPUT HISTOGRAM -->\n <n7-histogram-range \n *ngSwitchCase=\"'histogram'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-histogram-range>\n \n </ng-container>\n </div>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i7.FacetHeaderComponent, selector: "n7-facet-header", inputs: ["data", "emit"] }, { kind: "component", type: i7.HistogramRangeComponent, selector: "n7-histogram-range", inputs: ["data", "emit"] }, { kind: "component", type: i7.InputCheckboxComponent, selector: "n7-input-checkbox", inputs: ["data", "emit"] }, { kind: "component", type: i7.InputLinkComponent, selector: "n7-input-link", inputs: ["data", "emit"] }, { kind: "component", type: i7.InputSelectComponent, selector: "n7-input-select", inputs: ["data", "emit"] }, { kind: "component", type: i7.InputTextComponent, selector: "n7-input-text", inputs: ["data", "emit"] }, { kind: "component", type: i7.MapComponent, selector: "n7-map", inputs: ["data", "emit"] }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }] }); }
6596
6606
  }
6597
6607
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MrSearchFacetsLayoutComponent, decorators: [{
6598
6608
  type: Component,
6599
- args: [{ selector: 'mr-search-facets-layout', template: "<div *ngIf=\"lb.dataSource.facets\" class=\"mr-facets__facets-wrapper {{ lb.dataSource.facets.classes || '' }}\">\n <div *ngFor=\"let section of lb.dataSource.facets.sections\" \n class=\"mr-facets__single-facet {{ section.classes || '' }}\"\n [ngClass]=\"lb.dataSource.searchService.getState$('section', section.id) | async\">\n <n7-facet-header\n *ngIf=\"section.header\"\n [data]=\"lb.widgets[section.header.id].ds.out$ | async\"\n [emit]=\"lb.widgets[section.header.id].emit\"\n ></n7-facet-header>\n\n <div [hidden]=\"section.header && !lb.widgets[section.header.id].ds.isOpen()\" class=\"mr-facets__single-facet-content\">\n <div *ngFor=\"let input of section.inputs\" \n [attr.id]=\"'facet-container-' + input.id\"\n class=\"mr-facets__single-facet-inner-content {{ input.classes || '' }}\">\n <ng-container [ngSwitch]=\"input.type\">\n \n <!-- INPUT TEXT -->\n <n7-input-text \n *ngSwitchCase=\"'text'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-input-text>\n \n <!-- INPUT CHECKBOX -->\n <n7-input-checkbox \n *ngSwitchCase=\"'checkbox'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-input-checkbox>\n \n <!-- INPUT SELECT -->\n <n7-input-select \n *ngSwitchCase=\"'select'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-input-select>\n \n <!-- INPUT LINK -->\n <n7-input-link \n *ngSwitchCase=\"'link'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-input-link>\n\n <!-- INPUT LINKMULTI -->\n <n7-input-link \n *ngSwitchCase=\"'linkMulti'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-input-link>\n \n <!-- INPUT MAP -->\n <n7-map \n *ngSwitchCase=\"'map'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-map>\n\n <!-- INPUT HISTOGRAM -->\n <n7-histogram-range \n *ngSwitchCase=\"'histogram'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-histogram-range>\n \n </ng-container>\n </div>\n </div>\n </div>\n</div>\n" }]
6609
+ args: [{ selector: 'mr-search-facets-layout', template: "<div *ngIf=\"lb.dataSource.facets\" class=\"mr-facets__facets-wrapper {{ lb.dataSource.facets.classes || '' }}\">\n\n <div *ngIf=\"lb.dataSource.redirectPath && lb.dataSource.redirectLabel\" class=\"mr-facets__redirect-link\">\n <a href=\"{{ lb.dataSource.redirectPath }}\">{{ lb.dataSource.redirectLabel }}</a>\n </div>\n\n <div *ngFor=\"let section of lb.dataSource.facets.sections\" \n class=\"mr-facets__single-facet {{ section.classes || '' }}\"\n [ngClass]=\"lb.dataSource.searchService.getState$('section', section.id) | async\">\n <n7-facet-header\n *ngIf=\"section.header\"\n [data]=\"lb.widgets[section.header.id].ds.out$ | async\"\n [emit]=\"lb.widgets[section.header.id].emit\"\n ></n7-facet-header>\n\n <div [hidden]=\"section.header && !lb.widgets[section.header.id].ds.isOpen()\" class=\"mr-facets__single-facet-content\">\n <div *ngFor=\"let input of section.inputs\" \n [attr.id]=\"'facet-container-' + input.id\"\n class=\"mr-facets__single-facet-inner-content {{ input.classes || '' }}\">\n <ng-container [ngSwitch]=\"input.type\">\n \n <!-- INPUT TEXT -->\n <n7-input-text \n *ngSwitchCase=\"'text'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-input-text>\n \n <!-- INPUT CHECKBOX -->\n <n7-input-checkbox \n *ngSwitchCase=\"'checkbox'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-input-checkbox>\n \n <!-- INPUT SELECT -->\n <n7-input-select \n *ngSwitchCase=\"'select'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-input-select>\n \n <!-- INPUT LINK -->\n <n7-input-link \n *ngSwitchCase=\"'link'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-input-link>\n\n <!-- INPUT LINKMULTI -->\n <n7-input-link \n *ngSwitchCase=\"'linkMulti'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-input-link>\n \n <!-- INPUT MAP -->\n <n7-map \n *ngSwitchCase=\"'map'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-map>\n\n <!-- INPUT HISTOGRAM -->\n <n7-histogram-range \n *ngSwitchCase=\"'histogram'\"\n [data]=\"lb.widgets[input.id].ds.out$ | async\"\n [emit]=\"lb.widgets[input.id].emit\"></n7-histogram-range>\n \n </ng-container>\n </div>\n </div>\n </div>\n</div>\n" }]
6600
6610
  }], ctorParameters: () => [], propDecorators: { searchService: [{
6601
6611
  type: Input
6612
+ }], localeService: [{
6613
+ type: Input
6602
6614
  }] } });
6603
6615
 
6604
6616
  var localStorageHelper = {
@@ -6973,11 +6985,11 @@ class MrSearchLayoutComponent extends AbstractLayout {
6973
6985
  this.onDestroy();
6974
6986
  }
6975
6987
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MrSearchLayoutComponent, deps: [{ token: i1.LayoutsConfigurationService }, { token: i2.Router }, { token: i2.ActivatedRoute }, { token: i1.CommunicationService }, { token: i1.ConfigurationService }, { token: MrSearchService }, { token: MrLayoutStateService }, { token: i1.MainStateService }, { token: MrResourceModalService }, { token: MrLocaleService }], target: i0.ɵɵFactoryTarget.Component }); }
6976
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MrSearchLayoutComponent, selector: "mr-search-layout", usesInheritance: true, ngImport: i0, template: "<div class=\"mr-search mr-layout\"\n *ngIf=\"lb.dataSource\">\n <section class=\"mr-layout__maxwidth mr-side-margin\">\n\n <div class=\"mr-search__title\">\n <n7-inner-title\n [data]=\"lb.widgets['mr-search-page-title'].ds.out$ | async\"\n [emit]=\"lb.widgets['mr-search-page-title'].emit\">\n </n7-inner-title>\n </div>\n\n <div *ngIf=\"lb.dataSource.showDescription\" class=\"mr-search__description\">\n <mr-search-page-description\n [data]=\"lb.widgets['mr-search-page-description'].ds.out$ | async\"\n [emit]=\"lb.widgets['mr-search-page-description'].emit\">\n </mr-search-page-description>\n </div>\n \n <div class=\"mr-search__results-content\">\n <aside class=\"mr-facets\"\n [ngStyle]=\"{\n width: lb.dataSource.pageConfig['facetsWidthPercentage'] ? lb.dataSource.pageConfig['facetsWidthPercentage'] + '%' : ''\n }\">\n <div class=\"scroll-ref\">&nbsp;</div>\n <div class=\"mr-facets__contents\">\n <h2 class=\"mr-facets__title\" \n *ngIf=\"lb.dataSource.pageConfig['facetsTitle']\">\n {{ lb.dataSource.pageConfig['facetsTitle'] }}\n </h2>\n <mr-search-facets-layout \n [searchService]=\"lb.dataSource.searchService\">\n </mr-search-facets-layout>\n </div>\n </aside>\n <div class=\"mr-search__results-wrapper\">\n <div class=\"mr-search__results-info\">\n <n7-inner-title\n [data]=\"lb.widgets['mr-search-results-title'].ds.out$ | async\"\n [emit]=\"lb.widgets['mr-search-results-title'].emit\">\n </n7-inner-title>\n </div>\n \n <div *ngIf=\"(\n lb.dataSource.pageConfig['filtersTitle'] && \n lb.widgets['mr-search-tags'].ds.hasFilters\n )\" \n class=\"mr-active-filters\">\n <span class=\"mr-active-filters__label\">{{ lb.dataSource.pageConfig['filtersTitle'] }}</span>\n <div class=\"mr-active-filters__tags-wrapper\">\n <n7-tag *ngFor=\"let tag of (lb.widgets['mr-search-tags'].ds.out$ | async)\"\n [data]=\"tag\"\n [emit]=\"lb.widgets['mr-search-tags'].emit\">\n </n7-tag>\n </div>\n </div>\n\n <main class=\"mr-search__results\">\n <!-- SEARCH RESULTS -->\n <ng-container [ngSwitch]=\"layoutState.get$('results') | async\">\n \n <!-- loading -->\n <ng-container *ngSwitchCase=\"'LOADING'\">\n <div class=\"mr-search__results-loading n7-grid-{{ lb.dataSource.pageConfig.grid || 3 }}\">\n <n7-content-placeholder *ngFor=\"let n of [0,1,2,3,4,5,6,7,8,9]\" [data]=\"{\n blocks: [\n { classes: 'search-result-placeholder-title' },\n { classes: 'search-result-placeholder-metadata' },\n { classes: 'search-result-placeholder-metadata' },\n { classes: 'search-result-placeholder-metadata' }\n ]\n }\"></n7-content-placeholder>\n </div>\n </ng-container>\n \n <!-- success: items > 0 -->\n <ng-container *ngSwitchCase=\"'SUCCESS'\">\n <div class=\"n7-grid-{{ lb.dataSource.pageConfig.grid || 3 }}\">\n <ng-container *ngIf=\"!lb.dataSource.pageConfig?.advancedResults\">\n <n7-item-preview *ngFor=\"let item of (lb.widgets['mr-search-results'].ds.out$ | async)\"\n [data]=\"item\" [emit]=\"lb.widgets['mr-search-results'].emit\">\n </n7-item-preview>\n </ng-container>\n <ng-container *ngIf=\"lb.dataSource.pageConfig?.advancedResults\">\n <mr-advanced-result\n *ngFor=\"let item of (lb.widgets['mr-search-results'].ds.out$ | async)\"\n [data]=\"item\" [emit]=\"lb.widgets['mr-search-results'].emit\">\n </mr-advanced-result>\n </ng-container>\n </div>\n </ng-container>\n\n <!-- empty: items === 0 -->\n <ng-container *ngSwitchCase=\"'EMPTY'\">\n <div class=\"mr-search__results-fallback\">\n <p class=\"mr-search__results-fallback-string\">\n {{ lb.dataSource.pageConfig.fallback.text }}\n </p>\n <button class=\"n7-btn mr-search__results-fallback-button\"\n (click)=\"lb.eventHandler.emitInner('searchreset')\">\n {{ lb.dataSource.pageConfig.fallback.button }}\n </button>\n </div>\n </ng-container>\n\n <!-- error: request problem -->\n <ng-container *ngSwitchCase=\"'ERROR'\">\n <p class=\"mr-search__results-ko-string\">\n {{ lb.dataSource.pageConfig.ko.text }}\n </p>\n <button class=\"n7-btn mr-search__results-ko-button\"\n (click)=\"lb.eventHandler.emitInner('searchreset')\">\n {{ lb.dataSource.pageConfig.ko.button }}\n </button>\n </ng-container>\n \n </ng-container>\n </main> \n <n7-smart-pagination\n *ngIf=\"(layoutState.get$('results') | async) === 'SUCCESS'\"\n [data]=\"lb.widgets['n7-smart-pagination'].ds.out$ | async\"\n [emit]=\"lb.widgets['n7-smart-pagination'].emit\">\n </n7-smart-pagination>\n </div>\n </div>\n\n </section>\n</div>", dependencies: [{ kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1$2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i7.ContentPlaceholderComponent, selector: "n7-content-placeholder", inputs: ["data"] }, { kind: "component", type: i7.InnerTitleComponent, selector: "n7-inner-title", inputs: ["data", "emit"] }, { kind: "component", type: i7.ItemPreviewComponent, selector: "n7-item-preview", inputs: ["data", "emit"] }, { kind: "component", type: i7.TagComponent, selector: "n7-tag", inputs: ["data", "emit"] }, { kind: "component", type: i1.SmartPaginationComponent, selector: "n7-smart-pagination", inputs: ["data", "emit"] }, { kind: "component", type: MrSearchFacetsLayoutComponent, selector: "mr-search-facets-layout", inputs: ["searchService"] }, { kind: "component", type: MrSearchPageDescriptionComponent, selector: "mr-search-page-description", inputs: ["data", "emit"] }, { kind: "component", type: MrAdvancedResultComponent, selector: "mr-advanced-result", inputs: ["data", "emit"] }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }] }); }
6988
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MrSearchLayoutComponent, selector: "mr-search-layout", usesInheritance: true, ngImport: i0, template: "<div class=\"mr-search mr-layout\"\n *ngIf=\"lb.dataSource\">\n <section class=\"mr-layout__maxwidth mr-side-margin\">\n\n <div class=\"mr-search__title\">\n <n7-inner-title\n [data]=\"lb.widgets['mr-search-page-title'].ds.out$ | async\"\n [emit]=\"lb.widgets['mr-search-page-title'].emit\">\n </n7-inner-title>\n </div>\n\n <div *ngIf=\"lb.dataSource.showDescription\" class=\"mr-search__description\">\n <mr-search-page-description\n [data]=\"lb.widgets['mr-search-page-description'].ds.out$ | async\"\n [emit]=\"lb.widgets['mr-search-page-description'].emit\">\n </mr-search-page-description>\n </div>\n \n <div class=\"mr-search__results-content\">\n <aside class=\"mr-facets\"\n [ngStyle]=\"{\n width: lb.dataSource.pageConfig['facetsWidthPercentage'] ? lb.dataSource.pageConfig['facetsWidthPercentage'] + '%' : ''\n }\">\n <div class=\"scroll-ref\">&nbsp;</div>\n <div class=\"mr-facets__contents\">\n <h2 class=\"mr-facets__title\" \n *ngIf=\"lb.dataSource.pageConfig['facetsTitle']\">\n {{ lb.dataSource.pageConfig['facetsTitle'] }}\n </h2>\n\n <mr-search-facets-layout \n [searchService]=\"lb.dataSource.searchService\"\n [localeService]=\"lb.dataSource.localeService\">\n </mr-search-facets-layout>\n </div>\n </aside>\n <div class=\"mr-search__results-wrapper\">\n <div class=\"mr-search__results-info\">\n <n7-inner-title\n [data]=\"lb.widgets['mr-search-results-title'].ds.out$ | async\"\n [emit]=\"lb.widgets['mr-search-results-title'].emit\">\n </n7-inner-title>\n </div>\n \n <div *ngIf=\"(\n lb.dataSource.pageConfig['filtersTitle'] && \n lb.widgets['mr-search-tags'].ds.hasFilters\n )\" \n class=\"mr-active-filters\">\n <span class=\"mr-active-filters__label\">{{ lb.dataSource.pageConfig['filtersTitle'] }}</span>\n <div class=\"mr-active-filters__tags-wrapper\">\n <n7-tag *ngFor=\"let tag of (lb.widgets['mr-search-tags'].ds.out$ | async)\"\n [data]=\"tag\"\n [emit]=\"lb.widgets['mr-search-tags'].emit\">\n </n7-tag>\n </div>\n </div>\n\n <main class=\"mr-search__results\">\n <!-- SEARCH RESULTS -->\n <ng-container [ngSwitch]=\"layoutState.get$('results') | async\">\n \n <!-- loading -->\n <ng-container *ngSwitchCase=\"'LOADING'\">\n <div class=\"mr-search__results-loading n7-grid-{{ lb.dataSource.pageConfig.grid || 3 }}\">\n <n7-content-placeholder *ngFor=\"let n of [0,1,2,3,4,5,6,7,8,9]\" [data]=\"{\n blocks: [\n { classes: 'search-result-placeholder-title' },\n { classes: 'search-result-placeholder-metadata' },\n { classes: 'search-result-placeholder-metadata' },\n { classes: 'search-result-placeholder-metadata' }\n ]\n }\"></n7-content-placeholder>\n </div>\n </ng-container>\n \n <!-- success: items > 0 -->\n <ng-container *ngSwitchCase=\"'SUCCESS'\">\n <div class=\"n7-grid-{{ lb.dataSource.pageConfig.grid || 3 }}\">\n <ng-container *ngIf=\"!lb.dataSource.pageConfig?.advancedResults\">\n <n7-item-preview *ngFor=\"let item of (lb.widgets['mr-search-results'].ds.out$ | async)\"\n [data]=\"item\" [emit]=\"lb.widgets['mr-search-results'].emit\">\n </n7-item-preview>\n </ng-container>\n <ng-container *ngIf=\"lb.dataSource.pageConfig?.advancedResults\">\n <mr-advanced-result\n *ngFor=\"let item of (lb.widgets['mr-search-results'].ds.out$ | async)\"\n [data]=\"item\" [emit]=\"lb.widgets['mr-search-results'].emit\">\n </mr-advanced-result>\n </ng-container>\n </div>\n </ng-container>\n\n <!-- empty: items === 0 -->\n <ng-container *ngSwitchCase=\"'EMPTY'\">\n <div class=\"mr-search__results-fallback\">\n <p class=\"mr-search__results-fallback-string\">\n {{ lb.dataSource.pageConfig.fallback.text }}\n </p>\n <button class=\"n7-btn mr-search__results-fallback-button\"\n (click)=\"lb.eventHandler.emitInner('searchreset')\">\n {{ lb.dataSource.pageConfig.fallback.button }}\n </button>\n </div>\n </ng-container>\n\n <!-- error: request problem -->\n <ng-container *ngSwitchCase=\"'ERROR'\">\n <p class=\"mr-search__results-ko-string\">\n {{ lb.dataSource.pageConfig.ko.text }}\n </p>\n <button class=\"n7-btn mr-search__results-ko-button\"\n (click)=\"lb.eventHandler.emitInner('searchreset')\">\n {{ lb.dataSource.pageConfig.ko.button }}\n </button>\n </ng-container>\n \n </ng-container>\n </main> \n <n7-smart-pagination\n *ngIf=\"(layoutState.get$('results') | async) === 'SUCCESS'\"\n [data]=\"lb.widgets['n7-smart-pagination'].ds.out$ | async\"\n [emit]=\"lb.widgets['n7-smart-pagination'].emit\">\n </n7-smart-pagination>\n </div>\n </div>\n\n </section>\n</div>", dependencies: [{ kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1$2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i7.ContentPlaceholderComponent, selector: "n7-content-placeholder", inputs: ["data"] }, { kind: "component", type: i7.InnerTitleComponent, selector: "n7-inner-title", inputs: ["data", "emit"] }, { kind: "component", type: i7.ItemPreviewComponent, selector: "n7-item-preview", inputs: ["data", "emit"] }, { kind: "component", type: i7.TagComponent, selector: "n7-tag", inputs: ["data", "emit"] }, { kind: "component", type: i1.SmartPaginationComponent, selector: "n7-smart-pagination", inputs: ["data", "emit"] }, { kind: "component", type: MrSearchFacetsLayoutComponent, selector: "mr-search-facets-layout", inputs: ["searchService", "localeService"] }, { kind: "component", type: MrSearchPageDescriptionComponent, selector: "mr-search-page-description", inputs: ["data", "emit"] }, { kind: "component", type: MrAdvancedResultComponent, selector: "mr-advanced-result", inputs: ["data", "emit"] }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }] }); }
6977
6989
  }
6978
6990
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MrSearchLayoutComponent, decorators: [{
6979
6991
  type: Component,
6980
- args: [{ selector: 'mr-search-layout', template: "<div class=\"mr-search mr-layout\"\n *ngIf=\"lb.dataSource\">\n <section class=\"mr-layout__maxwidth mr-side-margin\">\n\n <div class=\"mr-search__title\">\n <n7-inner-title\n [data]=\"lb.widgets['mr-search-page-title'].ds.out$ | async\"\n [emit]=\"lb.widgets['mr-search-page-title'].emit\">\n </n7-inner-title>\n </div>\n\n <div *ngIf=\"lb.dataSource.showDescription\" class=\"mr-search__description\">\n <mr-search-page-description\n [data]=\"lb.widgets['mr-search-page-description'].ds.out$ | async\"\n [emit]=\"lb.widgets['mr-search-page-description'].emit\">\n </mr-search-page-description>\n </div>\n \n <div class=\"mr-search__results-content\">\n <aside class=\"mr-facets\"\n [ngStyle]=\"{\n width: lb.dataSource.pageConfig['facetsWidthPercentage'] ? lb.dataSource.pageConfig['facetsWidthPercentage'] + '%' : ''\n }\">\n <div class=\"scroll-ref\">&nbsp;</div>\n <div class=\"mr-facets__contents\">\n <h2 class=\"mr-facets__title\" \n *ngIf=\"lb.dataSource.pageConfig['facetsTitle']\">\n {{ lb.dataSource.pageConfig['facetsTitle'] }}\n </h2>\n <mr-search-facets-layout \n [searchService]=\"lb.dataSource.searchService\">\n </mr-search-facets-layout>\n </div>\n </aside>\n <div class=\"mr-search__results-wrapper\">\n <div class=\"mr-search__results-info\">\n <n7-inner-title\n [data]=\"lb.widgets['mr-search-results-title'].ds.out$ | async\"\n [emit]=\"lb.widgets['mr-search-results-title'].emit\">\n </n7-inner-title>\n </div>\n \n <div *ngIf=\"(\n lb.dataSource.pageConfig['filtersTitle'] && \n lb.widgets['mr-search-tags'].ds.hasFilters\n )\" \n class=\"mr-active-filters\">\n <span class=\"mr-active-filters__label\">{{ lb.dataSource.pageConfig['filtersTitle'] }}</span>\n <div class=\"mr-active-filters__tags-wrapper\">\n <n7-tag *ngFor=\"let tag of (lb.widgets['mr-search-tags'].ds.out$ | async)\"\n [data]=\"tag\"\n [emit]=\"lb.widgets['mr-search-tags'].emit\">\n </n7-tag>\n </div>\n </div>\n\n <main class=\"mr-search__results\">\n <!-- SEARCH RESULTS -->\n <ng-container [ngSwitch]=\"layoutState.get$('results') | async\">\n \n <!-- loading -->\n <ng-container *ngSwitchCase=\"'LOADING'\">\n <div class=\"mr-search__results-loading n7-grid-{{ lb.dataSource.pageConfig.grid || 3 }}\">\n <n7-content-placeholder *ngFor=\"let n of [0,1,2,3,4,5,6,7,8,9]\" [data]=\"{\n blocks: [\n { classes: 'search-result-placeholder-title' },\n { classes: 'search-result-placeholder-metadata' },\n { classes: 'search-result-placeholder-metadata' },\n { classes: 'search-result-placeholder-metadata' }\n ]\n }\"></n7-content-placeholder>\n </div>\n </ng-container>\n \n <!-- success: items > 0 -->\n <ng-container *ngSwitchCase=\"'SUCCESS'\">\n <div class=\"n7-grid-{{ lb.dataSource.pageConfig.grid || 3 }}\">\n <ng-container *ngIf=\"!lb.dataSource.pageConfig?.advancedResults\">\n <n7-item-preview *ngFor=\"let item of (lb.widgets['mr-search-results'].ds.out$ | async)\"\n [data]=\"item\" [emit]=\"lb.widgets['mr-search-results'].emit\">\n </n7-item-preview>\n </ng-container>\n <ng-container *ngIf=\"lb.dataSource.pageConfig?.advancedResults\">\n <mr-advanced-result\n *ngFor=\"let item of (lb.widgets['mr-search-results'].ds.out$ | async)\"\n [data]=\"item\" [emit]=\"lb.widgets['mr-search-results'].emit\">\n </mr-advanced-result>\n </ng-container>\n </div>\n </ng-container>\n\n <!-- empty: items === 0 -->\n <ng-container *ngSwitchCase=\"'EMPTY'\">\n <div class=\"mr-search__results-fallback\">\n <p class=\"mr-search__results-fallback-string\">\n {{ lb.dataSource.pageConfig.fallback.text }}\n </p>\n <button class=\"n7-btn mr-search__results-fallback-button\"\n (click)=\"lb.eventHandler.emitInner('searchreset')\">\n {{ lb.dataSource.pageConfig.fallback.button }}\n </button>\n </div>\n </ng-container>\n\n <!-- error: request problem -->\n <ng-container *ngSwitchCase=\"'ERROR'\">\n <p class=\"mr-search__results-ko-string\">\n {{ lb.dataSource.pageConfig.ko.text }}\n </p>\n <button class=\"n7-btn mr-search__results-ko-button\"\n (click)=\"lb.eventHandler.emitInner('searchreset')\">\n {{ lb.dataSource.pageConfig.ko.button }}\n </button>\n </ng-container>\n \n </ng-container>\n </main> \n <n7-smart-pagination\n *ngIf=\"(layoutState.get$('results') | async) === 'SUCCESS'\"\n [data]=\"lb.widgets['n7-smart-pagination'].ds.out$ | async\"\n [emit]=\"lb.widgets['n7-smart-pagination'].emit\">\n </n7-smart-pagination>\n </div>\n </div>\n\n </section>\n</div>" }]
6992
+ args: [{ selector: 'mr-search-layout', template: "<div class=\"mr-search mr-layout\"\n *ngIf=\"lb.dataSource\">\n <section class=\"mr-layout__maxwidth mr-side-margin\">\n\n <div class=\"mr-search__title\">\n <n7-inner-title\n [data]=\"lb.widgets['mr-search-page-title'].ds.out$ | async\"\n [emit]=\"lb.widgets['mr-search-page-title'].emit\">\n </n7-inner-title>\n </div>\n\n <div *ngIf=\"lb.dataSource.showDescription\" class=\"mr-search__description\">\n <mr-search-page-description\n [data]=\"lb.widgets['mr-search-page-description'].ds.out$ | async\"\n [emit]=\"lb.widgets['mr-search-page-description'].emit\">\n </mr-search-page-description>\n </div>\n \n <div class=\"mr-search__results-content\">\n <aside class=\"mr-facets\"\n [ngStyle]=\"{\n width: lb.dataSource.pageConfig['facetsWidthPercentage'] ? lb.dataSource.pageConfig['facetsWidthPercentage'] + '%' : ''\n }\">\n <div class=\"scroll-ref\">&nbsp;</div>\n <div class=\"mr-facets__contents\">\n <h2 class=\"mr-facets__title\" \n *ngIf=\"lb.dataSource.pageConfig['facetsTitle']\">\n {{ lb.dataSource.pageConfig['facetsTitle'] }}\n </h2>\n\n <mr-search-facets-layout \n [searchService]=\"lb.dataSource.searchService\"\n [localeService]=\"lb.dataSource.localeService\">\n </mr-search-facets-layout>\n </div>\n </aside>\n <div class=\"mr-search__results-wrapper\">\n <div class=\"mr-search__results-info\">\n <n7-inner-title\n [data]=\"lb.widgets['mr-search-results-title'].ds.out$ | async\"\n [emit]=\"lb.widgets['mr-search-results-title'].emit\">\n </n7-inner-title>\n </div>\n \n <div *ngIf=\"(\n lb.dataSource.pageConfig['filtersTitle'] && \n lb.widgets['mr-search-tags'].ds.hasFilters\n )\" \n class=\"mr-active-filters\">\n <span class=\"mr-active-filters__label\">{{ lb.dataSource.pageConfig['filtersTitle'] }}</span>\n <div class=\"mr-active-filters__tags-wrapper\">\n <n7-tag *ngFor=\"let tag of (lb.widgets['mr-search-tags'].ds.out$ | async)\"\n [data]=\"tag\"\n [emit]=\"lb.widgets['mr-search-tags'].emit\">\n </n7-tag>\n </div>\n </div>\n\n <main class=\"mr-search__results\">\n <!-- SEARCH RESULTS -->\n <ng-container [ngSwitch]=\"layoutState.get$('results') | async\">\n \n <!-- loading -->\n <ng-container *ngSwitchCase=\"'LOADING'\">\n <div class=\"mr-search__results-loading n7-grid-{{ lb.dataSource.pageConfig.grid || 3 }}\">\n <n7-content-placeholder *ngFor=\"let n of [0,1,2,3,4,5,6,7,8,9]\" [data]=\"{\n blocks: [\n { classes: 'search-result-placeholder-title' },\n { classes: 'search-result-placeholder-metadata' },\n { classes: 'search-result-placeholder-metadata' },\n { classes: 'search-result-placeholder-metadata' }\n ]\n }\"></n7-content-placeholder>\n </div>\n </ng-container>\n \n <!-- success: items > 0 -->\n <ng-container *ngSwitchCase=\"'SUCCESS'\">\n <div class=\"n7-grid-{{ lb.dataSource.pageConfig.grid || 3 }}\">\n <ng-container *ngIf=\"!lb.dataSource.pageConfig?.advancedResults\">\n <n7-item-preview *ngFor=\"let item of (lb.widgets['mr-search-results'].ds.out$ | async)\"\n [data]=\"item\" [emit]=\"lb.widgets['mr-search-results'].emit\">\n </n7-item-preview>\n </ng-container>\n <ng-container *ngIf=\"lb.dataSource.pageConfig?.advancedResults\">\n <mr-advanced-result\n *ngFor=\"let item of (lb.widgets['mr-search-results'].ds.out$ | async)\"\n [data]=\"item\" [emit]=\"lb.widgets['mr-search-results'].emit\">\n </mr-advanced-result>\n </ng-container>\n </div>\n </ng-container>\n\n <!-- empty: items === 0 -->\n <ng-container *ngSwitchCase=\"'EMPTY'\">\n <div class=\"mr-search__results-fallback\">\n <p class=\"mr-search__results-fallback-string\">\n {{ lb.dataSource.pageConfig.fallback.text }}\n </p>\n <button class=\"n7-btn mr-search__results-fallback-button\"\n (click)=\"lb.eventHandler.emitInner('searchreset')\">\n {{ lb.dataSource.pageConfig.fallback.button }}\n </button>\n </div>\n </ng-container>\n\n <!-- error: request problem -->\n <ng-container *ngSwitchCase=\"'ERROR'\">\n <p class=\"mr-search__results-ko-string\">\n {{ lb.dataSource.pageConfig.ko.text }}\n </p>\n <button class=\"n7-btn mr-search__results-ko-button\"\n (click)=\"lb.eventHandler.emitInner('searchreset')\">\n {{ lb.dataSource.pageConfig.ko.button }}\n </button>\n </ng-container>\n \n </ng-container>\n </main> \n <n7-smart-pagination\n *ngIf=\"(layoutState.get$('results') | async) === 'SUCCESS'\"\n [data]=\"lb.widgets['n7-smart-pagination'].ds.out$ | async\"\n [emit]=\"lb.widgets['n7-smart-pagination'].emit\">\n </n7-smart-pagination>\n </div>\n </div>\n\n </section>\n</div>" }]
6981
6993
  }], ctorParameters: () => [{ type: i1.LayoutsConfigurationService }, { type: i2.Router }, { type: i2.ActivatedRoute }, { type: i1.CommunicationService }, { type: i1.ConfigurationService }, { type: MrSearchService }, { type: MrLayoutStateService }, { type: i1.MainStateService }, { type: MrResourceModalService }, { type: MrLocaleService }] });
6982
6994
 
6983
6995
  class MrStaticLayoutDS extends LayoutDataSource {
@@ -7254,12 +7266,40 @@ class MrTimelineLayoutDS extends LayoutDataSource {
7254
7266
  delete res.sections['collection-places'];
7255
7267
  }
7256
7268
  const collections = [];
7269
+ const itemPreviewOptions = {
7270
+ limit: 100,
7271
+ striptags: true
7272
+ };
7257
7273
  Object.keys(res.sections).forEach((collection) => {
7258
7274
  if (String(collection).startsWith('collection-')) {
7259
7275
  if (res.sections[collection].items) {
7260
7276
  collections.push({
7261
7277
  items: res.sections[collection].items.map((item) => {
7262
7278
  let anchor;
7279
+ if (item.text) {
7280
+ // Sanitize HTML tags from the text content
7281
+ if (itemPreviewOptions.striptags) {
7282
+ item.text = helpers.striptags(item.text);
7283
+ }
7284
+ // Limit the length of the item preview text content
7285
+ if (itemPreviewOptions.limit
7286
+ && (item.text.length > itemPreviewOptions.limit)) {
7287
+ item.text = `${item.text.substring(0, itemPreviewOptions.limit)}...`;
7288
+ }
7289
+ }
7290
+ const metadata = [];
7291
+ if (Array.isArray(item.metadata)) {
7292
+ item.metadata.forEach((group) => {
7293
+ const metadataItems = [];
7294
+ (group.items || []).forEach((metadataItem) => {
7295
+ metadataItems.push({
7296
+ ...metadataItem,
7297
+ label: _t(metadataItem.label)
7298
+ });
7299
+ });
7300
+ metadata.push({ items: metadataItems });
7301
+ });
7302
+ }
7263
7303
  if (item.routeId) {
7264
7304
  const routeLink = this.localeService
7265
7305
  .getLinkByRouteId(item.routeId, item.id, item.slug);
@@ -7276,10 +7316,13 @@ class MrTimelineLayoutDS extends LayoutDataSource {
7276
7316
  }
7277
7317
  return {
7278
7318
  title: item.title,
7319
+ text: item.text,
7320
+ metadata,
7279
7321
  anchor
7280
7322
  };
7281
7323
  }),
7282
7324
  header: res.sections[collection].header,
7325
+ grid: res.sections[collection].grid,
7283
7326
  });
7284
7327
  }
7285
7328
  this.collectionData = collections;
@@ -7477,11 +7520,11 @@ class MrTimelineLayoutComponent extends AbstractLayout {
7477
7520
  });
7478
7521
  }
7479
7522
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MrTimelineLayoutComponent, deps: [{ token: i1.LayoutsConfigurationService }, { token: i2.ActivatedRoute }, { token: i2.Router }, { token: i1.ConfigurationService }, { token: i1.CommunicationService }, { token: i1.MainStateService }, { token: MrLayoutStateService }, { token: MrResourceModalService }, { token: MrLocaleService }, { token: i1$2.Location }], target: i0.ɵɵFactoryTarget.Component }); }
7480
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MrTimelineLayoutComponent, selector: "mr-timeline-layout", usesInheritance: true, ngImport: i0, template: "<div class=\"mr-timeline mr-layout\" *ngIf=\"lb.dataSource\">\n <div class=\"mr-timeline__timeline\">\n <div\n class=\"mr-timeline__timeline-loading\"\n *ngIf=\"lb.dataSource.loading.timeline\">\n <n7-loader></n7-loader>\n </div>\n <n7-timeline\n [data]=\"lb.widgets['mr-timeline'].ds.out$ | async\"\n *ngIf=\"!lb.dataSource.loading.timeline\"\n >\n </n7-timeline>\n </div>\n\n <div class=\"mr-timeline__page mr-side-margin\">\n <!-- Result header -->\n <div class=\"mr-timeline__page-header\">\n <p\n class=\"mr-timeline__date\"\n *ngIf=\"!lb.dataSource.loading.resourceDetails\"\n >\n {{lb.dataSource.eventHeader}}\n </p>\n <div class=\"mr-timeline__title\">\n <n7-inner-title\n [data]=\"lb.widgets['mr-year-header'].ds.out$ | async\"\n [emit]=\"lb.widgets['mr-year-header'].emit\"\n >\n </n7-inner-title>\n </div>\n </div>\n <!-- END // Result header -->\n\n <div class=\"mr-timeline__content\">\n <!-- DESCRIZIONE -->\n <div *ngIf=\"lb.dataSource.eventDescription\" class=\"mr-content-block mr-content-block-description\">\n <p [innerHTML]=\"lb.dataSource.eventDescription\"></p>\n <p></p>\n </div>\n\n <ng-container *ngIf=\"!lb.dataSource.loading.resourceDetails\">\n <!-- GALLERIA -->\n <mr-gallery *ngIf=\"lb.dataSource.hasGallery\" \n [grid]=\"4\" \n [data]=\"lb.widgets['mr-gallery'].ds.out$ | async\" \n [emit]=\"lb.widgets['mr-gallery'].emit\">\n </mr-gallery>\n\n <!-- MAPPA -->\n <div\n class=\"mr-content-block mr-content-block-map\"\n *ngIf=\"lb.dataSource.hasMap\"\n >\n <h3 class=\"mr-content-block__title\" *ngIf=\"lb.dataSource.mapHeader\">\n {{ lb.dataSource.mapHeader }}\n </h3>\n <div class=\"mr-content-block__content\">\n <n7-map [data]=\"lb.widgets['mr-map'].ds.out$ | async\"></n7-map>\n </div>\n </div>\n\n <!-- BIBLIOGRAFIA -->\n <ng-container *ngIf=\"lb.dataSource.bibliographyData as biblio\">\n <ng-container *ngIf=\"biblio.items && biblio.items.length > 0\">\n <div class=\"mr-content-block mr-content-block-collection\">\n <h3 class=\"mr-content-block__title\">{{ biblio.header.title }}</h3>\n <div class=\"mr-content-block__content n7-grid-1\">\n <ng-container *ngFor=\"let item of biblio.items\">\n <div class=\"mr-timeline__collection-content\">\n <n7-item-preview\n [emit]=\"lb.eventHandler.itemPreviewEmit\"\n [data]=\"item\"\n >\n </n7-item-preview>\n </div>\n </ng-container>\n </div>\n </div>\n </ng-container>\n </ng-container>\n\n <!-- COLLECTIONS -->\n <ng-container *ngFor=\"let coll of lb.dataSource.collectionData\">\n <ng-container *ngIf=\"coll.items && coll.items.length > 0\">\n <div class=\"mr-content-block-collection mr-content-block\">\n <h3 class=\"mr-content-block__title\">{{ coll.header.title }}</h3>\n <div class=\"mr-content-block__content n7-grid-3\">\n <n7-item-preview *ngFor=\"let item of coll.items\" [data]=\"item\">\n </n7-item-preview>\n </div>\n </div>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.InnerTitleComponent, selector: "n7-inner-title", inputs: ["data", "emit"] }, { kind: "component", type: i7.ItemPreviewComponent, selector: "n7-item-preview", inputs: ["data", "emit"] }, { kind: "component", type: i7.LoaderComponent, selector: "n7-loader", inputs: ["data"] }, { kind: "component", type: i7.MapComponent, selector: "n7-map", inputs: ["data", "emit"] }, { kind: "component", type: i7.TimelineComponent, selector: "n7-timeline", inputs: ["data", "emit"] }, { kind: "component", type: MrGalleryComponent, selector: "mr-gallery", inputs: ["data", "emit", "grid"] }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }] }); }
7523
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MrTimelineLayoutComponent, selector: "mr-timeline-layout", usesInheritance: true, ngImport: i0, template: "<div class=\"mr-timeline mr-layout\" *ngIf=\"lb.dataSource\">\n <div class=\"mr-timeline__timeline\">\n <div\n class=\"mr-timeline__timeline-loading\"\n *ngIf=\"lb.dataSource.loading.timeline\">\n <n7-loader></n7-loader>\n </div>\n <n7-timeline\n [data]=\"lb.widgets['mr-timeline'].ds.out$ | async\"\n *ngIf=\"!lb.dataSource.loading.timeline\"\n >\n </n7-timeline>\n </div>\n\n <div class=\"mr-timeline__page mr-side-margin\">\n <!-- Result header -->\n <div class=\"mr-timeline__page-header\">\n <p\n class=\"mr-timeline__date\"\n *ngIf=\"!lb.dataSource.loading.resourceDetails\"\n >\n {{lb.dataSource.eventHeader}}\n </p>\n <div class=\"mr-timeline__title\">\n <n7-inner-title\n [data]=\"lb.widgets['mr-year-header'].ds.out$ | async\"\n [emit]=\"lb.widgets['mr-year-header'].emit\"\n >\n </n7-inner-title>\n </div>\n </div>\n <!-- END // Result header -->\n\n <div class=\"mr-timeline__content\">\n <!-- DESCRIZIONE -->\n <div *ngIf=\"lb.dataSource.eventDescription\" class=\"mr-content-block mr-content-block-description\">\n <p [innerHTML]=\"lb.dataSource.eventDescription\"></p>\n <p></p>\n </div>\n\n <ng-container *ngIf=\"!lb.dataSource.loading.resourceDetails\">\n <!-- GALLERIA -->\n <mr-gallery *ngIf=\"lb.dataSource.hasGallery\" \n [grid]=\"4\" \n [data]=\"lb.widgets['mr-gallery'].ds.out$ | async\" \n [emit]=\"lb.widgets['mr-gallery'].emit\">\n </mr-gallery>\n\n <!-- MAPPA -->\n <div\n class=\"mr-content-block mr-content-block-map\"\n *ngIf=\"lb.dataSource.hasMap\"\n >\n <h3 class=\"mr-content-block__title\" *ngIf=\"lb.dataSource.mapHeader\">\n {{ lb.dataSource.mapHeader }}\n </h3>\n <div class=\"mr-content-block__content\">\n <n7-map [data]=\"lb.widgets['mr-map'].ds.out$ | async\"></n7-map>\n </div>\n </div>\n\n <!-- BIBLIOGRAFIA -->\n <ng-container *ngIf=\"lb.dataSource.bibliographyData as biblio\">\n <ng-container *ngIf=\"biblio.items && biblio.items.length > 0\">\n <div class=\"mr-content-block mr-content-block-collection\">\n <h3 class=\"mr-content-block__title\">{{ biblio.header.title }}</h3>\n <div class=\"mr-content-block__content n7-grid-1\">\n <ng-container *ngFor=\"let item of biblio.items\">\n <div class=\"mr-timeline__collection-content\">\n <n7-item-preview\n [emit]=\"lb.eventHandler.itemPreviewEmit\"\n [data]=\"item\"\n >\n </n7-item-preview>\n </div>\n </ng-container>\n </div>\n </div>\n </ng-container>\n </ng-container>\n\n <!-- COLLECTIONS -->\n <ng-container *ngFor=\"let coll of lb.dataSource.collectionData\">\n <ng-container *ngIf=\"coll.items && coll.items.length > 0\">\n <div class=\"mr-content-block-collection mr-content-block\">\n <h3 class=\"mr-content-block__title\">{{ coll.header.title }}</h3>\n <div class=\"mr-content-block__content {{ coll.grid ? 'n7-grid-' + coll.grid : 'n7-grid-3' }}\">\n <n7-item-preview *ngFor=\"let item of coll.items\" [data]=\"item\">\n </n7-item-preview>\n </div>\n </div>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.InnerTitleComponent, selector: "n7-inner-title", inputs: ["data", "emit"] }, { kind: "component", type: i7.ItemPreviewComponent, selector: "n7-item-preview", inputs: ["data", "emit"] }, { kind: "component", type: i7.LoaderComponent, selector: "n7-loader", inputs: ["data"] }, { kind: "component", type: i7.MapComponent, selector: "n7-map", inputs: ["data", "emit"] }, { kind: "component", type: i7.TimelineComponent, selector: "n7-timeline", inputs: ["data", "emit"] }, { kind: "component", type: MrGalleryComponent, selector: "mr-gallery", inputs: ["data", "emit", "grid"] }, { kind: "pipe", type: i1$2.AsyncPipe, name: "async" }] }); }
7481
7524
  }
7482
7525
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MrTimelineLayoutComponent, decorators: [{
7483
7526
  type: Component,
7484
- args: [{ selector: 'mr-timeline-layout', template: "<div class=\"mr-timeline mr-layout\" *ngIf=\"lb.dataSource\">\n <div class=\"mr-timeline__timeline\">\n <div\n class=\"mr-timeline__timeline-loading\"\n *ngIf=\"lb.dataSource.loading.timeline\">\n <n7-loader></n7-loader>\n </div>\n <n7-timeline\n [data]=\"lb.widgets['mr-timeline'].ds.out$ | async\"\n *ngIf=\"!lb.dataSource.loading.timeline\"\n >\n </n7-timeline>\n </div>\n\n <div class=\"mr-timeline__page mr-side-margin\">\n <!-- Result header -->\n <div class=\"mr-timeline__page-header\">\n <p\n class=\"mr-timeline__date\"\n *ngIf=\"!lb.dataSource.loading.resourceDetails\"\n >\n {{lb.dataSource.eventHeader}}\n </p>\n <div class=\"mr-timeline__title\">\n <n7-inner-title\n [data]=\"lb.widgets['mr-year-header'].ds.out$ | async\"\n [emit]=\"lb.widgets['mr-year-header'].emit\"\n >\n </n7-inner-title>\n </div>\n </div>\n <!-- END // Result header -->\n\n <div class=\"mr-timeline__content\">\n <!-- DESCRIZIONE -->\n <div *ngIf=\"lb.dataSource.eventDescription\" class=\"mr-content-block mr-content-block-description\">\n <p [innerHTML]=\"lb.dataSource.eventDescription\"></p>\n <p></p>\n </div>\n\n <ng-container *ngIf=\"!lb.dataSource.loading.resourceDetails\">\n <!-- GALLERIA -->\n <mr-gallery *ngIf=\"lb.dataSource.hasGallery\" \n [grid]=\"4\" \n [data]=\"lb.widgets['mr-gallery'].ds.out$ | async\" \n [emit]=\"lb.widgets['mr-gallery'].emit\">\n </mr-gallery>\n\n <!-- MAPPA -->\n <div\n class=\"mr-content-block mr-content-block-map\"\n *ngIf=\"lb.dataSource.hasMap\"\n >\n <h3 class=\"mr-content-block__title\" *ngIf=\"lb.dataSource.mapHeader\">\n {{ lb.dataSource.mapHeader }}\n </h3>\n <div class=\"mr-content-block__content\">\n <n7-map [data]=\"lb.widgets['mr-map'].ds.out$ | async\"></n7-map>\n </div>\n </div>\n\n <!-- BIBLIOGRAFIA -->\n <ng-container *ngIf=\"lb.dataSource.bibliographyData as biblio\">\n <ng-container *ngIf=\"biblio.items && biblio.items.length > 0\">\n <div class=\"mr-content-block mr-content-block-collection\">\n <h3 class=\"mr-content-block__title\">{{ biblio.header.title }}</h3>\n <div class=\"mr-content-block__content n7-grid-1\">\n <ng-container *ngFor=\"let item of biblio.items\">\n <div class=\"mr-timeline__collection-content\">\n <n7-item-preview\n [emit]=\"lb.eventHandler.itemPreviewEmit\"\n [data]=\"item\"\n >\n </n7-item-preview>\n </div>\n </ng-container>\n </div>\n </div>\n </ng-container>\n </ng-container>\n\n <!-- COLLECTIONS -->\n <ng-container *ngFor=\"let coll of lb.dataSource.collectionData\">\n <ng-container *ngIf=\"coll.items && coll.items.length > 0\">\n <div class=\"mr-content-block-collection mr-content-block\">\n <h3 class=\"mr-content-block__title\">{{ coll.header.title }}</h3>\n <div class=\"mr-content-block__content n7-grid-3\">\n <n7-item-preview *ngFor=\"let item of coll.items\" [data]=\"item\">\n </n7-item-preview>\n </div>\n </div>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n" }]
7527
+ args: [{ selector: 'mr-timeline-layout', template: "<div class=\"mr-timeline mr-layout\" *ngIf=\"lb.dataSource\">\n <div class=\"mr-timeline__timeline\">\n <div\n class=\"mr-timeline__timeline-loading\"\n *ngIf=\"lb.dataSource.loading.timeline\">\n <n7-loader></n7-loader>\n </div>\n <n7-timeline\n [data]=\"lb.widgets['mr-timeline'].ds.out$ | async\"\n *ngIf=\"!lb.dataSource.loading.timeline\"\n >\n </n7-timeline>\n </div>\n\n <div class=\"mr-timeline__page mr-side-margin\">\n <!-- Result header -->\n <div class=\"mr-timeline__page-header\">\n <p\n class=\"mr-timeline__date\"\n *ngIf=\"!lb.dataSource.loading.resourceDetails\"\n >\n {{lb.dataSource.eventHeader}}\n </p>\n <div class=\"mr-timeline__title\">\n <n7-inner-title\n [data]=\"lb.widgets['mr-year-header'].ds.out$ | async\"\n [emit]=\"lb.widgets['mr-year-header'].emit\"\n >\n </n7-inner-title>\n </div>\n </div>\n <!-- END // Result header -->\n\n <div class=\"mr-timeline__content\">\n <!-- DESCRIZIONE -->\n <div *ngIf=\"lb.dataSource.eventDescription\" class=\"mr-content-block mr-content-block-description\">\n <p [innerHTML]=\"lb.dataSource.eventDescription\"></p>\n <p></p>\n </div>\n\n <ng-container *ngIf=\"!lb.dataSource.loading.resourceDetails\">\n <!-- GALLERIA -->\n <mr-gallery *ngIf=\"lb.dataSource.hasGallery\" \n [grid]=\"4\" \n [data]=\"lb.widgets['mr-gallery'].ds.out$ | async\" \n [emit]=\"lb.widgets['mr-gallery'].emit\">\n </mr-gallery>\n\n <!-- MAPPA -->\n <div\n class=\"mr-content-block mr-content-block-map\"\n *ngIf=\"lb.dataSource.hasMap\"\n >\n <h3 class=\"mr-content-block__title\" *ngIf=\"lb.dataSource.mapHeader\">\n {{ lb.dataSource.mapHeader }}\n </h3>\n <div class=\"mr-content-block__content\">\n <n7-map [data]=\"lb.widgets['mr-map'].ds.out$ | async\"></n7-map>\n </div>\n </div>\n\n <!-- BIBLIOGRAFIA -->\n <ng-container *ngIf=\"lb.dataSource.bibliographyData as biblio\">\n <ng-container *ngIf=\"biblio.items && biblio.items.length > 0\">\n <div class=\"mr-content-block mr-content-block-collection\">\n <h3 class=\"mr-content-block__title\">{{ biblio.header.title }}</h3>\n <div class=\"mr-content-block__content n7-grid-1\">\n <ng-container *ngFor=\"let item of biblio.items\">\n <div class=\"mr-timeline__collection-content\">\n <n7-item-preview\n [emit]=\"lb.eventHandler.itemPreviewEmit\"\n [data]=\"item\"\n >\n </n7-item-preview>\n </div>\n </ng-container>\n </div>\n </div>\n </ng-container>\n </ng-container>\n\n <!-- COLLECTIONS -->\n <ng-container *ngFor=\"let coll of lb.dataSource.collectionData\">\n <ng-container *ngIf=\"coll.items && coll.items.length > 0\">\n <div class=\"mr-content-block-collection mr-content-block\">\n <h3 class=\"mr-content-block__title\">{{ coll.header.title }}</h3>\n <div class=\"mr-content-block__content {{ coll.grid ? 'n7-grid-' + coll.grid : 'n7-grid-3' }}\">\n <n7-item-preview *ngFor=\"let item of coll.items\" [data]=\"item\">\n </n7-item-preview>\n </div>\n </div>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n</div>\n" }]
7485
7528
  }], ctorParameters: () => [{ type: i1.LayoutsConfigurationService }, { type: i2.ActivatedRoute }, { type: i2.Router }, { type: i1.ConfigurationService }, { type: i1.CommunicationService }, { type: i1.MainStateService }, { type: MrLayoutStateService }, { type: MrResourceModalService }, { type: MrLocaleService }, { type: i1$2.Location }] });
7486
7529
 
7487
7530
  const DATASOURCE_MAP = {