forked from DSpace/dspace-angular
-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathmetadata-values.component.html
More file actions
74 lines (68 loc) · 2.64 KB
/
Copy pathmetadata-values.component.html
File metadata and controls
74 lines (68 loc) · 2.64 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
<ds-metadata-field-wrapper [label]="label | translate">
@for (mdValue of mdValues; track mdValue; let last = $last) {
<!--
Choose a template. Priority: ORCID authority, markdown, link, browse link.
-->
<ng-container *ngTemplateOutlet="(isOrcidAuthority(mdValue) ? orcidTemplate : (renderMarkdown ? markdown : (hasLink(mdValue) ? (hasValue(img) ? linkImg : link) : (hasBrowseDefinition() ? browselink : simple))));
context: {value: mdValue.value, mdValue: mdValue, img}">
</ng-container>
@if (!last) {
<span class="separator" [innerHTML]="separator"></span>
}
}
</ds-metadata-field-wrapper>
<!-- Render value as markdown -->
<ng-template #markdown let-value="value">
<span class="dont-break-out" [dsMarkdown]="value">
</span>
</ng-template>
<!-- Render value as a link (href and label) -->
<ng-template #link let-value="value">
<a class="dont-break-out ds-simple-metadata-link"
[href]="value"
[attr.target]="getLinkAttributes(value).target"
[attr.rel]="getLinkAttributes(value).rel" role="link" tabindex="0">
{{value}}
</a>
</ng-template>
<!-- Render value as a link with icon -->
<ng-template #linkImg let-img="img" let-value="value">
<a [href]="value" class="link-anchor dont-break-out ds-simple-metadata-link" target="_blank" role="link" tabindex="0">
<img class="link-logo"
[alt]="img.alt | translate"
[style.height]="'var(' + img.heightVar + ', --ds-item-page-img-field-default-inline-height)'"
[src]="img.URI"/>
{{value}}
</a>
</ng-template>
<!-- Render simple value in a span -->
<ng-template #simple let-value="value">
<span class="dont-break-out preserve-line-breaks">{{value}}</span>
</ng-template>
<!-- Render value as a link to browse index -->
<ng-template #browselink let-value="value">
<a class="dont-break-out preserve-line-breaks ds-browse-link"
[routerLink]="['/browse', browseDefinition.id]"
[queryParams]="getQueryParams(value)" role="link" tabindex="0">{{value}}</a>
</ng-template>
<!-- Render value with ORCID badge and clickable link to ORCID profile -->
<ng-template #orcidTemplate let-value="value" let-mdValue="mdValue">
<span class="orcid-author">
<a class="dont-break-out preserve-line-breaks ds-orcid-link"
[href]="getOrcidUrl(mdValue.authority)"
target="_blank"
rel="noopener noreferrer"
role="link"
tabindex="0">
{{value}}
</a>
<a class="orcid-badge"
[href]="getOrcidUrl(mdValue.authority)"
target="_blank"
rel="noopener noreferrer">
<img src="assets/images/orcid.logo.icon.svg"
alt="ORCID iD icon"
class="orcid-icon">
</a>
</span>
</ng-template>