mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 01:54:15 +00:00
101623: Fixes for rendersBrowseBy, BrowseResponseParsingService, BrowseByRoutingModule
This commit is contained in:
@@ -14,13 +14,6 @@ import { I18nBreadcrumbResolver } from '../core/breadcrumbs/i18n-breadcrumb.reso
|
||||
path: '',
|
||||
resolve: { breadcrumb: BrowseByDSOBreadcrumbResolver },
|
||||
children: [
|
||||
{
|
||||
path: 'srsc',
|
||||
component: ThemedBrowseByTaxonomyPageComponent,
|
||||
canActivate: [BrowseByGuard],
|
||||
resolve: { breadcrumb: I18nBreadcrumbResolver },
|
||||
data: { title: 'browse.title.page', breadcrumbKey: 'browse.metadata.srsc' }
|
||||
},
|
||||
{
|
||||
path: ':id',
|
||||
component: ThemedBrowseBySwitcherComponent,
|
||||
|
@@ -26,7 +26,7 @@ const map = new Map();
|
||||
* @param browseByType The type of page
|
||||
* @param theme The optional theme for the component
|
||||
*/
|
||||
export function rendersBrowseBy(browseByType: BrowseByDataType, theme = DEFAULT_THEME) {
|
||||
export function rendersBrowseBy(browseByType: string, theme = DEFAULT_THEME) {
|
||||
return function decorator(component: any) {
|
||||
if (hasNoValue(map.get(browseByType))) {
|
||||
map.set(browseByType, new Map());
|
||||
|
@@ -31,7 +31,7 @@ export class BrowseBySwitcherComponent implements OnInit {
|
||||
*/
|
||||
ngOnInit(): void {
|
||||
this.browseByComponent = this.route.data.pipe(
|
||||
map((data: { browseDefinition: FlatBrowseDefinition }) => this.getComponentByBrowseByType(data.browseDefinition.dataType, this.themeService.getThemeName()))
|
||||
map((data: { browseDefinition: FlatBrowseDefinition }) => this.getComponentByBrowseByType(data.browseDefinition.getRenderType(), this.themeService.getThemeName()))
|
||||
);
|
||||
}
|
||||
|
||||
|
@@ -1,15 +1,17 @@
|
||||
import { Component } from '@angular/core';
|
||||
import { ThemedComponent } from '../../shared/theme-support/themed.component';
|
||||
import { rendersBrowseBy } from '../browse-by-switcher/browse-by-decorator';
|
||||
import { BrowseByTaxonomyPageComponent } from './browse-by-taxonomy-page.component';
|
||||
|
||||
@Component({
|
||||
selector: 'ds-themed-browse-by-taxonomy-page',
|
||||
templateUrl: './browse-by-taxonomy-page.component.html',
|
||||
templateUrl: '../../shared/theme-support/themed.component.html',
|
||||
styleUrls: []
|
||||
})
|
||||
/**
|
||||
* Themed wrapper for BrowseByTaxonomyPageComponent
|
||||
*/
|
||||
@rendersBrowseBy('hierarchy')
|
||||
export class ThemedBrowseByTaxonomyPageComponent extends ThemedComponent<BrowseByTaxonomyPageComponent>{
|
||||
|
||||
protected getComponentName(): string {
|
||||
|
@@ -10,7 +10,9 @@ import { DSOResponseParsingService } from './dso-response-parsing.service';
|
||||
/**
|
||||
* A ResponseParsingService used to parse RawRestResponse coming from the REST API to a BrowseDefinition object
|
||||
*/
|
||||
@Injectable()
|
||||
@Injectable({
|
||||
providedIn: 'root',
|
||||
})
|
||||
export class BrowseResponseParsingService extends DSOResponseParsingService {
|
||||
protected objectCache: ObjectCacheService;
|
||||
protected toCache: boolean;
|
||||
|
Reference in New Issue
Block a user