Skip to content

Commit 44241ab

Browse files
fix: schema download optional (#116)
(cherry picked from commit 37655c1)
1 parent e57d62b commit 44241ab

File tree

5 files changed

+13
-9
lines changed

5 files changed

+13
-9
lines changed

AtalaPrismSDK/Pollux/Sources/Models/AnonCreds/AnonCredentialDefinition.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ struct AnonCredentialDefinition: Codable {
1414
let z: String
1515
}
1616

17-
let issuerId: String
17+
let issuerId: String?
1818
let schemaId: String
1919
let type: String
2020
let tag: String

AtalaPrismSDK/Pollux/Sources/Models/AnonCreds/AnonCredentialSchema.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import Foundation
33
struct AnonCredentialSchema: Codable {
44
let name: String
55
let version: String
6-
let attrNames: [String]
6+
let attrNames: [String]?
77
let issuerId: String
88
}
99

AtalaPrismSDK/Pollux/Sources/Models/AnonCreds/AnoncredsCredentialStack.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import Domain
33
import Foundation
44

55
struct AnoncredsCredentialStack: Codable {
6-
let schema: AnonCredentialSchema
6+
let schema: AnonCredentialSchema?
77
let definition: AnonCredentialDefinition
88
let credential: AnonCredential
99
}
@@ -20,7 +20,7 @@ extension AnoncredsCredentialStack: Domain.Credential {
2020
}
2121

2222
var issuer: String {
23-
definition.issuerId
23+
definition.issuerId ?? ""
2424
}
2525

2626
var subject: String? {

AtalaPrismSDK/Pollux/Sources/Models/AnonCreds/AnoncredsPresentation.swift

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,15 @@ struct AnoncredsPresentation {
2121
)
2222

2323
let credential = stack.credential
24+
25+
guard let stackSchema = stack.schema else {
26+
throw PolluxError.invalidCredentialError
27+
}
2428
let schema = Schema.init(
25-
name: stack.schema.name,
26-
version: stack.schema.version,
27-
attrNames: AttributeNames(stack.schema.attrNames),
28-
issuerId: stack.schema.issuerId
29+
name: stackSchema.name,
30+
version: stackSchema.version,
31+
attrNames: AttributeNames(stackSchema.attrNames ?? []),
32+
issuerId: stackSchema.issuerId
2933
)
3034

3135
let credentialDefinition = try stack.definition.getAnoncred()

AtalaPrismSDK/Pollux/Sources/Operation/Anoncreds/ParseAnoncredsCredentialFromMessage.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ struct ParseAnoncredsCredentialFromMessage {
4545
let processedCredentialJson = try processedCredential.getJson().tryData(using: .utf8)
4646
let finalCredential = try JSONDecoder().decode(AnonCredential.self, from: processedCredentialJson)
4747
return AnoncredsCredentialStack(
48-
schema: try JSONDecoder.didComm().decode(AnonCredentialSchema.self, from: schemaData),
48+
schema: try? JSONDecoder.didComm().decode(AnonCredentialSchema.self, from: schemaData),
4949
definition: try JSONDecoder.didComm().decode(AnonCredentialDefinition.self, from: credentialDefinitionData),
5050
credential: finalCredential
5151
)

0 commit comments

Comments
 (0)