diff --git a/src/app/item-page/field-components/metadata-uri-values/metadata-uri-values.component.html b/src/app/item-page/field-components/metadata-uri-values/metadata-uri-values.component.html index 9091beb6c7d..73356397cf5 100644 --- a/src/app/item-page/field-components/metadata-uri-values/metadata-uri-values.component.html +++ b/src/app/item-page/field-components/metadata-uri-values/metadata-uri-values.component.html @@ -1,5 +1,6 @@ + - + {{ linktext || mdValue.value }} diff --git a/src/app/item-page/field-components/metadata-uri-values/metadata-uri-values.component.spec.ts b/src/app/item-page/field-components/metadata-uri-values/metadata-uri-values.component.spec.ts index f869ab8aaf8..09160d773ba 100644 --- a/src/app/item-page/field-components/metadata-uri-values/metadata-uri-values.component.spec.ts +++ b/src/app/item-page/field-components/metadata-uri-values/metadata-uri-values.component.spec.ts @@ -72,6 +72,14 @@ describe('MetadataUriValuesComponent', () => { const separators = fixture.debugElement.queryAll(By.css('a span')); expect(separators.length).toBe(mockMetadata.length - 1); }); + // From upstream DSpace 7 https://github.com/DSpace/dspace-angular/pull/2866/files + it('should contain the correct target attribute for metadata links', () => { + const links = fixture.debugElement.queryAll(By.css('a')); + for (const link of links) { + expect(link.nativeElement.getAttribute('target')).toBe('_blank'); + } + }); + // END of upstream addition describe('when linktext is defined', () => { diff --git a/src/app/item-page/field-components/metadata-uri-values/metadata-uri-values.component.ts b/src/app/item-page/field-components/metadata-uri-values/metadata-uri-values.component.ts index e070eccf2d5..cdc2e281787 100644 --- a/src/app/item-page/field-components/metadata-uri-values/metadata-uri-values.component.ts +++ b/src/app/item-page/field-components/metadata-uri-values/metadata-uri-values.component.ts @@ -37,4 +37,12 @@ export class MetadataUriValuesComponent extends MetadataValuesComponent { * The label for this iteration of metadata values */ @Input() label: string; + + // From upstream DSpace 7 https://github.com/DSpace/dspace-angular/pull/2866/files + /** + * The target attribute for the metadata links. + * Defaults to '_blank' to open links in a new window/tab. + */ + @Input() linkTarget = '_blank'; + // END of upstream additions }