[TLC-249] Improve model of identifier data in workspace section

This commit is contained in:
Kim Shepherd
2023-01-25 13:01:57 +13:00
parent 39fb61ca85
commit d6f458863f
2 changed files with 10 additions and 33 deletions

View File

@@ -1,9 +1,9 @@
/* /*
* Object model for the data returned by the REST API to present minted identifiers in a submission section * Object model for the data returned by the REST API to present minted identifiers in a submission section
*/ */
import { Identifier } from '../../../shared/object-list/identifier-data/identifier.model';
export interface WorkspaceitemSectionIdentifiersObject { export interface WorkspaceitemSectionIdentifiersObject {
doi?: string identifiers?: Identifier[]
handle?: string
otherIdentifiers?: string[]
displayTypes?: string[] displayTypes?: string[]
} }

View File

@@ -3,41 +3,18 @@ Template for the identifiers submission section component
@author Kim Shepherd @author Kim Shepherd
--> -->
<!-- Main identifier data --> <!-- Main identifier data -->
<!--<ng-container *ngVar="(getIdentifierData() | async) as identifierData">-->
<ng-container *ngVar="(getIdentifierData() | async) as identifierData"> <ng-container *ngVar="(getIdentifierData() | async) as identifierData">
<ng-container *ngIf="identifierData && identifierData.identifiers">
<div> <div>
<span>{{'submission.sections.identifiers.info' | translate}}</span> <span>{{'submission.sections.identifiers.info' | translate}}</span>
<ul> <ul>
<!-- Handles --> <ng-container *ngFor="let identifier of identifierData.identifiers">
<ng-container *ngIf="(!identifierData || identifierData.displayTypes.includes('handle'))"> <ng-container *ngIf="identifierData.displayTypes.includes(identifier.identifierType) && identifier.value">
<ng-container *ngIf="!(identifierData && identifierData.handle)"> <li>{{'submission.sections.identifiers.' + identifier.identifierType + '_label' | translate}}
<li>{{'submission.sections.identifiers.no_handle' | translate}}</li> {{identifier.value}}</li>
</ng-container>
<ng-container *ngIf="(identifierData && identifierData.handle)">
<li>{{'submission.sections.identifiers.handle_label' | translate}}{{identifierData.handle}}</li>
</ng-container>
</ng-container>
<!-- DOIs -->
<ng-container *ngIf="(!identifierData || identifierData.displayTypes.includes('doi'))">
<ng-container *ngIf="!(identifierData && identifierData.doi)">
<li>{{'submission.sections.identifiers.no_doi' | translate}}</li>
</ng-container>
<ng-container *ngIf="(identifierData && identifierData.doi)">
<li>{{'submission.sections.identifiers.doi_label' | translate}}
{{identifierData.doi}}
</li>
</ng-container>
</ng-container>
<!-- Other identifiers -->
<ng-container *ngIf="(!identifierData || identifierData.displayTypes.includes('other'))">
<ng-container *ngIf="(identifierData && identifierData.otherIdentifiers && identifierData.otherIdentifiers.length > 0)">
<li>{{'submission.sections.identifiers.otherIdentifiers_label' | translate}}
{{identifierData.otherIdentifiers.join(',')}}
</li>
</ng-container> </ng-container>
</ng-container> </ng-container>
</ul> </ul>
</div> </div>
</ng-container> </ng-container>
</ng-container>