From 5ef58fb13b0b3af3dc8eeca570ee72c812ece148 Mon Sep 17 00:00:00 2001 From: wadeking98 Date: Mon, 17 Jan 2022 15:13:14 -0800 Subject: [PATCH] fixed relationship decription on creds Signed-off-by: wadeking98 --- src/components/entity/CredentialItem.vue | 12 ++++++++---- src/interfaces/api/v4/credential.interface.ts | 1 + src/utils/entity.ts | 1 + 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/components/entity/CredentialItem.vue b/src/components/entity/CredentialItem.vue index ae5d414..f04c499 100644 --- a/src/components/entity/CredentialItem.vue +++ b/src/components/entity/CredentialItem.vue @@ -178,14 +178,18 @@ export default class HighlightedCredItem extends Vue { if (!this.cred) { return undefined; } - let retval: { [index: string]: string } = {}; + let retval: { [index: string]: string | undefined } = {}; const claimLabel = this.getClaimLabel( this.cred.credential_type_id, this.cred.credential_title ); + const default_title = this.cred.rel_id + ? { "Relationship description": this.cred.rel_id as string } + : { "Registration number": this.sourceId }; + if (claimLabel === undefined) { - retval = { "Registration number": this.sourceId }; + retval = default_title; } else { let value = selectFirstAttrItem( { key: "type", value: this.cred.credential_title }, @@ -198,13 +202,13 @@ export default class HighlightedCredItem extends Vue { if (value?.value) { retval[claimLabel] = value.value as string; } else { - retval = { "Registration number": this.sourceId }; + retval = default_title; } } let accessor = this.cred.credential_title ? this.cred.credential_title : ""; return { key: Object.keys(retval)[0], - value: retval[Object.keys(retval)[0]], + value: retval[Object.keys(retval)[0]] as string, accessor: accessor, }; } diff --git a/src/interfaces/api/v4/credential.interface.ts b/src/interfaces/api/v4/credential.interface.ts index 344139b..ef9310e 100644 --- a/src/interfaces/api/v4/credential.interface.ts +++ b/src/interfaces/api/v4/credential.interface.ts @@ -40,6 +40,7 @@ export interface ICredential extends IApiResource { export interface ICredentialDisplayType { id: number; credential_type: string; + rel_id?: string; type: string; authority: string; authorityLink: string | URL; diff --git a/src/utils/entity.ts b/src/utils/entity.ts index 8201540..aaa0589 100644 --- a/src/utils/entity.ts +++ b/src/utils/entity.ts @@ -94,6 +94,7 @@ export function credOrRelationshipToDisplay( const relItem = item as IRelationship; display.id = relItem.credential.id; + display.rel_id = relItem.related_topic?.source_id; display.authority = ""; display.authorityLink = ""; if (credSet !== undefined) {