diff --git a/lib/dashboard/home/tab_bar/credentials/detail/cubit/credential_details_cubit.dart b/lib/dashboard/home/tab_bar/credentials/detail/cubit/credential_details_cubit.dart index 4ab595aae..195104a3d 100644 --- a/lib/dashboard/home/tab_bar/credentials/detail/cubit/credential_details_cubit.dart +++ b/lib/dashboard/home/tab_bar/credentials/detail/cubit/credential_details_cubit.dart @@ -260,7 +260,7 @@ class CredentialDetailsCubit extends Cubit { ), ); } else { - if (item.credentialPreview.credentialStatus.type != '') { + if (item.credentialPreview.credentialStatus != null) { final CredentialStatus credentialStatus = await item.checkRevocationStatus(); if (credentialStatus == CredentialStatus.active) { diff --git a/lib/dashboard/home/tab_bar/credentials/models/credential/credential.dart b/lib/dashboard/home/tab_bar/credentials/models/credential/credential.dart index 0a87c430e..d4f3c8f9b 100644 --- a/lib/dashboard/home/tab_bar/credentials/models/credential/credential.dart +++ b/lib/dashboard/home/tab_bar/credentials/models/credential/credential.dart @@ -70,8 +70,7 @@ class Credential { final CredentialSubjectModel credentialSubjectModel; @JsonKey(fromJson: _fromJsonEvidence) final List evidence; - @JsonKey(fromJson: _fromJsonCredentialStatus) - final CredentialStatusField credentialStatus; + final dynamic credentialStatus; Map toJson() => _$CredentialToJson(this); @@ -129,13 +128,6 @@ class Credential { return [Translation.fromJson(json as Map)]; } - static CredentialStatusField _fromJsonCredentialStatus(dynamic json) { - if (json == null || json == '') { - return CredentialStatusField.emptyCredentialStatusField(); - } - return CredentialStatusField.fromJson(json as Map); - } - static List _fromJsonEvidence(dynamic json) { if (json == null) { return [Evidence.emptyEvidence()]; diff --git a/lib/dashboard/home/tab_bar/credentials/models/credential_status_field/credential_status_field.dart b/lib/dashboard/home/tab_bar/credentials/models/credential_status_field/credential_status_field.dart index deb6aa4b6..3b43f7aa9 100644 --- a/lib/dashboard/home/tab_bar/credentials/models/credential_status_field/credential_status_field.dart +++ b/lib/dashboard/home/tab_bar/credentials/models/credential_status_field/credential_status_field.dart @@ -9,13 +9,16 @@ class CredentialStatusField { this.type, this.revocationListIndex, this.revocationListCredential, + this.statusListCredential, + this.statusListIndex, + this.statusPurpose, ); factory CredentialStatusField.fromJson(Map json) => _$CredentialStatusFieldFromJson(json); factory CredentialStatusField.emptyCredentialStatusField() => - CredentialStatusField('', '', '', ''); + CredentialStatusField('', '', '', '', '', '', ''); @JsonKey(defaultValue: '') final String id; @@ -25,6 +28,11 @@ class CredentialStatusField { final String revocationListIndex; @JsonKey(defaultValue: '') final String revocationListCredential; + final String statusListCredential; + @JsonKey(defaultValue: '') + final String statusListIndex; + @JsonKey(defaultValue: '') + final String statusPurpose; Map toJson() => _$CredentialStatusFieldToJson(this); } diff --git a/test/credentials/models/credential_status_field_test.dart b/test/credentials/models/credential_status_field_test.dart index b5c9801dd..92c7a0686 100644 --- a/test/credentials/models/credential_status_field_test.dart +++ b/test/credentials/models/credential_status_field_test.dart @@ -9,6 +9,9 @@ void main() { 'type', 'revocationListIndex', 'revocationListCredential', + 'statusListCredential', + 'statusListIndex', + 'statusPurpose', ); expect(credentialStatusField.id, 'id'); expect(credentialStatusField.type, 'type');