diff --git a/.gitignore b/.gitignore index 7114a36..3c4c400 100644 --- a/.gitignore +++ b/.gitignore @@ -8,4 +8,5 @@ .externalNativeBuild .cxx local.properties -/app/release/ \ No newline at end of file +/app/release/ +/.kotlin/errors/ diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-claim/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-claim/index.md index 5a6605a..94dea6f 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-claim/index.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-claim/index.md @@ -15,8 +15,9 @@ Represents a claim of a document. ## Properties -| Name | Summary | -|-----------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| [identifier](identifier.md) | [androidJvm]
open val [identifier](identifier.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
The identifier of the claim. | -| [rawValue](raw-value.md) | [androidJvm]
open val [rawValue](raw-value.md): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?
The raw value of the claim. | -| [value](value.md) | [androidJvm]
open val [value](value.md): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?
The value of the claim. | +| Name | Summary | +|-----------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [identifier](identifier.md) | [androidJvm]
open val [identifier](identifier.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
The identifier of the claim. | +| [metadata](metadata.md) | [androidJvm]
open val [metadata](metadata.md): [DocumentMetaData.Claim](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/index.md)? = null
The metadata of the claim. | +| [rawValue](raw-value.md) | [androidJvm]
open val [rawValue](raw-value.md): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?
The raw value of the claim. | +| [value](value.md) | [androidJvm]
open val [value](value.md): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?
The value of the claim. | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-claim/metadata.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-claim/metadata.md new file mode 100644 index 0000000..37d56dc --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-claim/metadata.md @@ -0,0 +1,8 @@ +//[document-manager](../../../index.md)/[eu.europa.ec.eudi.wallet.document.format](../index.md)/[DocumentClaim](index.md)/[metadata](metadata.md) + +# metadata + +[androidJvm]\ +open +val [metadata](metadata.md): [DocumentMetaData.Claim](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/index.md)? = +null diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-data/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-data/index.md index 47416a8..4e90e8b 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-data/index.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-data/index.md @@ -15,7 +15,8 @@ Represents the claims of a document. ## Properties -| Name | Summary | -|---------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| [claims](claims.md) | [androidJvm]
abstract val [claims](claims.md): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[DocumentClaim](../-document-claim/index.md)>
The list of claims. | -| [format](format.md) | [androidJvm]
abstract val [format](format.md): [DocumentFormat](../-document-format/index.md)
The format of the document. | +| Name | Summary | +|-------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [claims](claims.md) | [androidJvm]
abstract val [claims](claims.md): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[DocumentClaim](../-document-claim/index.md)>
The list of claims. | +| [format](format.md) | [androidJvm]
abstract val [format](format.md): [DocumentFormat](../-document-format/index.md)
The format of the document. | +| [metadata](metadata.md) | [androidJvm]
abstract val [metadata](metadata.md): [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?
The metadata of the document. | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-data/metadata.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-data/metadata.md new file mode 100644 index 0000000..a97c301 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-data/metadata.md @@ -0,0 +1,7 @@ +//[document-manager](../../../index.md)/[eu.europa.ec.eudi.wallet.document.format](../index.md)/[DocumentData](index.md)/[metadata](metadata.md) + +# metadata + +[androidJvm]\ +abstract +val [metadata](metadata.md): [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)? diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-claim/-mso-mdoc-claim.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-claim/-mso-mdoc-claim.md index 8ad61a8..31d03ff 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-claim/-mso-mdoc-claim.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-claim/-mso-mdoc-claim.md @@ -6,4 +6,5 @@ constructor(nameSpace: [NameSpace](../../eu.europa.ec.eudi.wallet.document/-name-space/index.md), identifier: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), value: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?, -rawValue: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)) +rawValue: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html), +metadata: [DocumentMetaData.Claim](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/index.md)?) diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-claim/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-claim/index.md index 7e6a33f..e059974 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-claim/index.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-claim/index.md @@ -7,21 +7,24 @@ data class [MsoMdocClaim](index.md)(val nameSpace: [NameSpace](../../eu.europa.ec.eudi.wallet.document/-name-space/index.md), val identifier: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val value: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?, val -rawValue: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)) : [DocumentClaim](../-document-claim/index.md) +rawValue: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html), +val +metadata: [DocumentMetaData.Claim](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/index.md)?) : [DocumentClaim](../-document-claim/index.md) Represents a claim of a document in the MsoMdoc format. ## Constructors -| | | -|------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| [MsoMdocClaim](-mso-mdoc-claim.md) | [androidJvm]
constructor(nameSpace: [NameSpace](../../eu.europa.ec.eudi.wallet.document/-name-space/index.md), identifier: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), value: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?, rawValue: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)) | +| | | +|------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [MsoMdocClaim](-mso-mdoc-claim.md) | [androidJvm]
constructor(nameSpace: [NameSpace](../../eu.europa.ec.eudi.wallet.document/-name-space/index.md), identifier: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), value: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?, rawValue: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html), metadata: [DocumentMetaData.Claim](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/index.md)?) | ## Properties -| Name | Summary | -|-----------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| [identifier](identifier.md) | [androidJvm]
open override val [identifier](identifier.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
The identifier of the claim. | -| [nameSpace](name-space.md) | [androidJvm]
val [nameSpace](name-space.md): [NameSpace](../../eu.europa.ec.eudi.wallet.document/-name-space/index.md)
The name-space of the claim. | -| [rawValue](raw-value.md) | [androidJvm]
open override val [rawValue](raw-value.md): [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)
The raw value of the claim in bytes. | -| [value](value.md) | [androidJvm]
open override val [value](value.md): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?
The value of the claim. | +| Name | Summary | +|-----------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [identifier](identifier.md) | [androidJvm]
open override val [identifier](identifier.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
The identifier of the claim. | +| [metadata](metadata.md) | [androidJvm]
open override val [metadata](metadata.md): [DocumentMetaData.Claim](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/index.md)?
The metadata of the claim. | +| [nameSpace](name-space.md) | [androidJvm]
val [nameSpace](name-space.md): [NameSpace](../../eu.europa.ec.eudi.wallet.document/-name-space/index.md)
The name-space of the claim. | +| [rawValue](raw-value.md) | [androidJvm]
open override val [rawValue](raw-value.md): [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)
The raw value of the claim in bytes. | +| [value](value.md) | [androidJvm]
open override val [value](value.md): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?
The value of the claim. | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-claim/metadata.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-claim/metadata.md new file mode 100644 index 0000000..c874a4a --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-claim/metadata.md @@ -0,0 +1,7 @@ +//[document-manager](../../../index.md)/[eu.europa.ec.eudi.wallet.document.format](../index.md)/[MsoMdocClaim](index.md)/[metadata](metadata.md) + +# metadata + +[androidJvm]\ +open override +val [metadata](metadata.md): [DocumentMetaData.Claim](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/index.md)? diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/-mso-mdoc-data.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/-mso-mdoc-data.md index 3fdda88..c336fc1 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/-mso-mdoc-data.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/-mso-mdoc-data.md @@ -3,4 +3,6 @@ # MsoMdocData [androidJvm]\ -constructor(format: [MsoMdocFormat](../-mso-mdoc-format/index.md), nameSpacedData: NameSpacedData) +constructor(format: [MsoMdocFormat](../-mso-mdoc-format/index.md), +metadata: [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?, +nameSpacedData: NameSpacedData) diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/index.md index ac54584..1e53827 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/index.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/index.md @@ -4,15 +4,16 @@ [androidJvm]\ data class [MsoMdocData](index.md)(val format: [MsoMdocFormat](../-mso-mdoc-format/index.md), val -nameSpacedData: NameSpacedData) : [DocumentData](../-document-data/index.md) +metadata: [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?, +val nameSpacedData: NameSpacedData) : [DocumentData](../-document-data/index.md) Represents the claims of a document in the MsoMdoc format. ## Constructors -| | | -|----------------------------------|--------------------------------------------------------------------------------------------------------------------| -| [MsoMdocData](-mso-mdoc-data.md) | [androidJvm]
constructor(format: [MsoMdocFormat](../-mso-mdoc-format/index.md), nameSpacedData: NameSpacedData) | +| | | +|----------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [MsoMdocData](-mso-mdoc-data.md) | [androidJvm]
constructor(format: [MsoMdocFormat](../-mso-mdoc-format/index.md), metadata: [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?, nameSpacedData: NameSpacedData) | ## Properties @@ -20,6 +21,7 @@ Represents the claims of a document in the MsoMdoc format. |-------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | [claims](claims.md) | [androidJvm]
open override val [claims](claims.md): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[MsoMdocClaim](../-mso-mdoc-claim/index.md)>
The list of claims. | | [format](format.md) | [androidJvm]
open override val [format](format.md): [MsoMdocFormat](../-mso-mdoc-format/index.md)
The MsoMdoc format containing the docType | +| [metadata](metadata.md) | [androidJvm]
open override val [metadata](metadata.md): [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?
The metadata of the document. | | [nameSpacedData](name-spaced-data.md) | [androidJvm]
val [nameSpacedData](name-spaced-data.md): NameSpacedData
The name-spaced data. | | [nameSpacedDataDecoded](name-spaced-data-decoded.md) | [androidJvm]
val [nameSpacedDataDecoded](name-spaced-data-decoded.md): [NameSpacedValues](../../eu.europa.ec.eudi.wallet.document/-name-spaced-values/index.md)<[Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?>
The name-spaced data decoded. | | [nameSpacedDataInBytes](name-spaced-data-in-bytes.md) | [androidJvm]
val [nameSpacedDataInBytes](name-spaced-data-in-bytes.md): [NameSpacedValues](../../eu.europa.ec.eudi.wallet.document/-name-spaced-values/index.md)<[ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)>
The name-spaced data in bytes. | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/metadata.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/metadata.md new file mode 100644 index 0000000..302075c --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/metadata.md @@ -0,0 +1,7 @@ +//[document-manager](../../../index.md)/[eu.europa.ec.eudi.wallet.document.format](../index.md)/[MsoMdocData](index.md)/[metadata](metadata.md) + +# metadata + +[androidJvm]\ +open override +val [metadata](metadata.md): [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)? diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-claim/-sd-jwt-vc-claim.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-claim/-sd-jwt-vc-claim.md index 0bf5c74..8edb2b4 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-claim/-sd-jwt-vc-claim.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-claim/-sd-jwt-vc-claim.md @@ -7,4 +7,5 @@ constructor( identifier: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), value: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?, rawValue: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), +metadata: [DocumentMetaData.Claim](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/index.md)?, selectivelyDisclosable: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-claim/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-claim/index.md index 3fe9ccf..bc1ab40 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-claim/index.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-claim/index.md @@ -7,21 +7,24 @@ data class [SdJwtVcClaim](index.md)(val identifier: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val value: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?, val rawValue: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val +metadata: [DocumentMetaData.Claim](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/index.md)?, +val selectivelyDisclosable: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) : [DocumentClaim](../-document-claim/index.md) Represents a claim of a document in the SdJwtVc format. ## Constructors -| | | -|-------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| [SdJwtVcClaim](-sd-jwt-vc-claim.md) | [androidJvm]
constructor(identifier: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), value: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?, rawValue: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), selectivelyDisclosable: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | +| | | +|-------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [SdJwtVcClaim](-sd-jwt-vc-claim.md) | [androidJvm]
constructor(identifier: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), value: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?, rawValue: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), metadata: [DocumentMetaData.Claim](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/index.md)?, selectivelyDisclosable: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) | ## Properties | Name | Summary | |------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | [identifier](identifier.md) | [androidJvm]
open override val [identifier](identifier.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
The identifier of the claim. | +| [metadata](metadata.md) | [androidJvm]
open override val [metadata](metadata.md): [DocumentMetaData.Claim](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/index.md)?
The metadata of the claim. | | [rawValue](raw-value.md) | [androidJvm]
open override val [rawValue](raw-value.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
The raw value of the claim. | | [selectivelyDisclosable](selectively-disclosable.md) | [androidJvm]
val [selectivelyDisclosable](selectively-disclosable.md): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
Whether the claim is selectively disclosable. | | [value](value.md) | [androidJvm]
open override val [value](value.md): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?
The value of the claim. | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-claim/metadata.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-claim/metadata.md new file mode 100644 index 0000000..1bc5dd6 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-claim/metadata.md @@ -0,0 +1,7 @@ +//[document-manager](../../../index.md)/[eu.europa.ec.eudi.wallet.document.format](../index.md)/[SdJwtVcClaim](index.md)/[metadata](metadata.md) + +# metadata + +[androidJvm]\ +open override +val [metadata](metadata.md): [DocumentMetaData.Claim](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/index.md)? diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-data/-sd-jwt-vc-data.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-data/-sd-jwt-vc-data.md index 8e05319..e3ee538 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-data/-sd-jwt-vc-data.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-data/-sd-jwt-vc-data.md @@ -3,7 +3,9 @@ # SdJwtVcData [androidJvm]\ -constructor(format: [SdJwtVcFormat](../-sd-jwt-vc-format/index.md), sdJwtVc: +constructor(format: [SdJwtVcFormat](../-sd-jwt-vc-format/index.md), +metadata: [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?, +sdJwtVc: SdJwt.Issuance<[Pair](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html) <[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), [Map](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-data/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-data/index.md index bc7d496..401ad29 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-data/index.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-data/index.md @@ -4,7 +4,8 @@ [androidJvm]\ data class [SdJwtVcData](index.md)(val format: [SdJwtVcFormat](../-sd-jwt-vc-format/index.md), val -sdJwtVc: +metadata: [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?, +val sdJwtVc: SdJwt.Issuance<[Pair](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html) <[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), [Map](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), @@ -14,9 +15,9 @@ Represents the claims of a document in the SdJwtVc format. ## Constructors -| | | -|-----------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| [SdJwtVcData](-sd-jwt-vc-data.md) | [androidJvm]
constructor(format: [SdJwtVcFormat](../-sd-jwt-vc-format/index.md), sdJwtVc: SdJwt.Issuance<[Pair](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), [Map](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), JsonElement>>>) | +| | | +|-----------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [SdJwtVcData](-sd-jwt-vc-data.md) | [androidJvm]
constructor(format: [SdJwtVcFormat](../-sd-jwt-vc-format/index.md), metadata: [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?, sdJwtVc: SdJwt.Issuance<[Pair](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), [Map](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), JsonElement>>>) | ## Properties @@ -24,4 +25,5 @@ Represents the claims of a document in the SdJwtVc format. |-------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | [claims](claims.md) | [androidJvm]
open override val [claims](claims.md): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[SdJwtVcClaim](../-sd-jwt-vc-claim/index.md)>
The list of claims. | | [format](format.md) | [androidJvm]
open override val [format](format.md): [SdJwtVcFormat](../-sd-jwt-vc-format/index.md)
The SdJwtVc format containing the vct | +| [metadata](metadata.md) | [androidJvm]
open override val [metadata](metadata.md): [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?
The metadata of the document. | | [sdJwtVc](sd-jwt-vc.md) | [androidJvm]
val [sdJwtVc](sd-jwt-vc.md): SdJwt.Issuance<[Pair](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), [Map](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), JsonElement>>>
The SdJwtVc. | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-data/metadata.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-data/metadata.md new file mode 100644 index 0000000..ff550e7 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-data/metadata.md @@ -0,0 +1,7 @@ +//[document-manager](../../../index.md)/[eu.europa.ec.eudi.wallet.document.format](../index.md)/[SdJwtVcData](index.md)/[metadata](metadata.md) + +# metadata + +[androidJvm]\ +open override +val [metadata](metadata.md): [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)? diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/index.md index 3218459..aed1493 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/index.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.format/index.md @@ -4,14 +4,14 @@ ## Types -| Name | Summary | -|---------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| [DocumentClaim](-document-claim/index.md) | [androidJvm]
sealed class [DocumentClaim](-document-claim/index.md)
Represents a claim of a document. | -| [DocumentData](-document-data/index.md) | [androidJvm]
sealed interface [DocumentData](-document-data/index.md)
Represents the claims of a document. | -| [DocumentFormat](-document-format/index.md) | [androidJvm]
sealed interface [DocumentFormat](-document-format/index.md)
Represents a Document Format | -| [MsoMdocClaim](-mso-mdoc-claim/index.md) | [androidJvm]
data class [MsoMdocClaim](-mso-mdoc-claim/index.md)(val nameSpace: [NameSpace](../eu.europa.ec.eudi.wallet.document/-name-space/index.md), val identifier: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val value: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?, val rawValue: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)) : [DocumentClaim](-document-claim/index.md)
Represents a claim of a document in the MsoMdoc format. | -| [MsoMdocData](-mso-mdoc-data/index.md) | [androidJvm]
data class [MsoMdocData](-mso-mdoc-data/index.md)(val format: [MsoMdocFormat](-mso-mdoc-format/index.md), val nameSpacedData: NameSpacedData) : [DocumentData](-document-data/index.md)
Represents the claims of a document in the MsoMdoc format. | -| [MsoMdocFormat](-mso-mdoc-format/index.md) | [androidJvm]
data class [MsoMdocFormat](-mso-mdoc-format/index.md)(val docType: [DocType](../eu.europa.ec.eudi.wallet.document/-doc-type/index.md)) : [DocumentFormat](-document-format/index.md)
Represents a MsoMdoc Format for a [eu.europa.ec.eudi.wallet.document.Document](../eu.europa.ec.eudi.wallet.document/-document/index.md) | -| [SdJwtVcClaim](-sd-jwt-vc-claim/index.md) | [androidJvm]
data class [SdJwtVcClaim](-sd-jwt-vc-claim/index.md)(val identifier: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val value: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?, val rawValue: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val selectivelyDisclosable: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) : [DocumentClaim](-document-claim/index.md)
Represents a claim of a document in the SdJwtVc format. | -| [SdJwtVcData](-sd-jwt-vc-data/index.md) | [androidJvm]
data class [SdJwtVcData](-sd-jwt-vc-data/index.md)(val format: [SdJwtVcFormat](-sd-jwt-vc-format/index.md), val sdJwtVc: SdJwt.Issuance<[Pair](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), [Map](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), JsonElement>>>) : [DocumentData](-document-data/index.md)
Represents the claims of a document in the SdJwtVc format. | -| [SdJwtVcFormat](-sd-jwt-vc-format/index.md) | [androidJvm]
data class [SdJwtVcFormat](-sd-jwt-vc-format/index.md)(val vct: [Vct](../eu.europa.ec.eudi.wallet.document/-vct/index.md)) : [DocumentFormat](-document-format/index.md)
Represents a SdJwtVc Format for the [eu.europa.ec.eudi.wallet.document.Document](../eu.europa.ec.eudi.wallet.document/-document/index.md) | +| Name | Summary | +|---------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [DocumentClaim](-document-claim/index.md) | [androidJvm]
sealed class [DocumentClaim](-document-claim/index.md)
Represents a claim of a document. | +| [DocumentData](-document-data/index.md) | [androidJvm]
sealed interface [DocumentData](-document-data/index.md)
Represents the claims of a document. | +| [DocumentFormat](-document-format/index.md) | [androidJvm]
sealed interface [DocumentFormat](-document-format/index.md)
Represents a Document Format | +| [MsoMdocClaim](-mso-mdoc-claim/index.md) | [androidJvm]
data class [MsoMdocClaim](-mso-mdoc-claim/index.md)(val nameSpace: [NameSpace](../eu.europa.ec.eudi.wallet.document/-name-space/index.md), val identifier: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val value: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?, val rawValue: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html), val metadata: [DocumentMetaData.Claim](../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/index.md)?) : [DocumentClaim](-document-claim/index.md)
Represents a claim of a document in the MsoMdoc format. | +| [MsoMdocData](-mso-mdoc-data/index.md) | [androidJvm]
data class [MsoMdocData](-mso-mdoc-data/index.md)(val format: [MsoMdocFormat](-mso-mdoc-format/index.md), val metadata: [DocumentMetaData](../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?, val nameSpacedData: NameSpacedData) : [DocumentData](-document-data/index.md)
Represents the claims of a document in the MsoMdoc format. | +| [MsoMdocFormat](-mso-mdoc-format/index.md) | [androidJvm]
data class [MsoMdocFormat](-mso-mdoc-format/index.md)(val docType: [DocType](../eu.europa.ec.eudi.wallet.document/-doc-type/index.md)) : [DocumentFormat](-document-format/index.md)
Represents a MsoMdoc Format for a [eu.europa.ec.eudi.wallet.document.Document](../eu.europa.ec.eudi.wallet.document/-document/index.md) | +| [SdJwtVcClaim](-sd-jwt-vc-claim/index.md) | [androidJvm]
data class [SdJwtVcClaim](-sd-jwt-vc-claim/index.md)(val identifier: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val value: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?, val rawValue: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val metadata: [DocumentMetaData.Claim](../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/index.md)?, val selectivelyDisclosable: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) : [DocumentClaim](-document-claim/index.md)
Represents a claim of a document in the SdJwtVc format. | +| [SdJwtVcData](-sd-jwt-vc-data/index.md) | [androidJvm]
data class [SdJwtVcData](-sd-jwt-vc-data/index.md)(val format: [SdJwtVcFormat](-sd-jwt-vc-format/index.md), val metadata: [DocumentMetaData](../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?, val sdJwtVc: SdJwt.Issuance<[Pair](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-pair/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), [Map](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), JsonElement>>>) : [DocumentData](-document-data/index.md)
Represents the claims of a document in the SdJwtVc format. | +| [SdJwtVcFormat](-sd-jwt-vc-format/index.md) | [androidJvm]
data class [SdJwtVcFormat](-sd-jwt-vc-format/index.md)(val vct: [Vct](../eu.europa.ec.eudi.wallet.document/-vct/index.md)) : [DocumentFormat](-document-format/index.md)
Represents a SdJwtVc Format for the [eu.europa.ec.eudi.wallet.document.Document](../eu.europa.ec.eudi.wallet.document/-document/index.md) | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-claim.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-claim.md new file mode 100644 index 0000000..51f2bbd --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-claim.md @@ -0,0 +1,11 @@ +//[document-manager](../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../index.md)/[DocumentMetaData](../index.md)/[Claim](index.md)/[Claim](-claim.md) + +# Claim + +[androidJvm]\ +constructor(name: [DocumentMetaData.Claim.Name](-name/index.md), +mandatory: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)? = +false, +valueType: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null, +display: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html) +<[DocumentMetaData.Claim.Display](-display/index.md)> = emptyList()) diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-display/-display.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-display/-display.md new file mode 100644 index 0000000..1e31806 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-display/-display.md @@ -0,0 +1,8 @@ +//[document-manager](../../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../../index.md)/[DocumentMetaData](../../index.md)/[Claim](../index.md)/[Display](index.md)/[Display](-display.md) + +# Display + +[androidJvm]\ +constructor( +name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null, +locale: [Locale](https://developer.android.com/reference/kotlin/java/util/Locale.html)? = null) diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-display/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-display/index.md new file mode 100644 index 0000000..1abaf72 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-display/index.md @@ -0,0 +1,30 @@ +//[document-manager](../../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../../index.md)/[DocumentMetaData](../../index.md)/[Claim](../index.md)/[Display](index.md) + +# Display + +@Serializable + +data class [Display](index.md)(val +name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null, val +locale: [Locale](https://developer.android.com/reference/kotlin/java/util/Locale.html)? = null) + +Display properties of a Claim. + +#### See also + +| | +|--------------------------------------------------------------------------------| +| [Locale](https://developer.android.com/reference/kotlin/java/util/Locale.html) | + +## Constructors + +| | | +|------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [Display](-display.md) | [androidJvm]
constructor(name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null, locale: [Locale](https://developer.android.com/reference/kotlin/java/util/Locale.html)? = null) | + +## Properties + +| Name | Summary | +|---------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [locale](locale.md) | [androidJvm]
@Serializable(with = LocaleSerializer::class)
@SerialName(value = "locale")
val [locale](locale.md): [Locale](https://developer.android.com/reference/kotlin/java/util/Locale.html)? = null
the locale of the current display | +| [name](name.md) | [androidJvm]
@SerialName(value = "name")
val [name](name.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null
the name of the claim | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-display/locale.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-display/locale.md new file mode 100644 index 0000000..7623ffa --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-display/locale.md @@ -0,0 +1,12 @@ +//[document-manager](../../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../../index.md)/[DocumentMetaData](../../index.md)/[Claim](../index.md)/[Display](index.md)/[locale](locale.md) + +# locale + +[androidJvm]\ + +@Serializable(with = LocaleSerializer::class) + +@SerialName(value = "locale") + +val [locale](locale.md): [Locale](https://developer.android.com/reference/kotlin/java/util/Locale.html)? = +null diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-display/name.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-display/name.md new file mode 100644 index 0000000..ddd6865 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-display/name.md @@ -0,0 +1,10 @@ +//[document-manager](../../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../../index.md)/[DocumentMetaData](../../index.md)/[Claim](../index.md)/[Display](index.md)/[name](name.md) + +# name + +[androidJvm]\ + +@SerialName(value = "name") + +val [name](name.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = +null diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-mso-mdoc/-mso-mdoc.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-mso-mdoc/-mso-mdoc.md new file mode 100644 index 0000000..a7c21e4 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-mso-mdoc/-mso-mdoc.md @@ -0,0 +1,7 @@ +//[document-manager](../../../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../../../index.md)/[DocumentMetaData](../../../index.md)/[Claim](../../index.md)/[Name](../index.md)/[MsoMdoc](index.md)/[MsoMdoc](-mso-mdoc.md) + +# MsoMdoc + +[androidJvm]\ +constructor(name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), +nameSpace: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)) diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-mso-mdoc/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-mso-mdoc/index.md new file mode 100644 index 0000000..6e51d8e --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-mso-mdoc/index.md @@ -0,0 +1,25 @@ +//[document-manager](../../../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../../../index.md)/[DocumentMetaData](../../../index.md)/[Claim](../../index.md)/[Name](../index.md)/[MsoMdoc](index.md) + +# MsoMdoc + +[androidJvm]\ +@Serializable + +data class [MsoMdoc](index.md)(val +name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val +nameSpace: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)) : [DocumentMetaData.Claim.Name](../index.md) + +MsoMdoc claim name. + +## Constructors + +| | | +|-------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [MsoMdoc](-mso-mdoc.md) | [androidJvm]
constructor(name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), nameSpace: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)) | + +## Properties + +| Name | Summary | +|----------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [name](name.md) | [androidJvm]
open override val [name](name.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
the name of the claim | +| [nameSpace](name-space.md) | [androidJvm]
val [nameSpace](name-space.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
the namespace of the claim | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-mso-mdoc/name-space.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-mso-mdoc/name-space.md new file mode 100644 index 0000000..3a5c108 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-mso-mdoc/name-space.md @@ -0,0 +1,6 @@ +//[document-manager](../../../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../../../index.md)/[DocumentMetaData](../../../index.md)/[Claim](../../index.md)/[Name](../index.md)/[MsoMdoc](index.md)/[nameSpace](name-space.md) + +# nameSpace + +[androidJvm]\ +val [nameSpace](name-space.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-mso-mdoc/name.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-mso-mdoc/name.md new file mode 100644 index 0000000..07cdc91 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-mso-mdoc/name.md @@ -0,0 +1,7 @@ +//[document-manager](../../../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../../../index.md)/[DocumentMetaData](../../../index.md)/[Claim](../../index.md)/[Name](../index.md)/[MsoMdoc](index.md)/[name](name.md) + +# name + +[androidJvm]\ +open override +val [name](name.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-sd-jwt-vc/-sd-jwt-vc.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-sd-jwt-vc/-sd-jwt-vc.md new file mode 100644 index 0000000..7e7cabb --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-sd-jwt-vc/-sd-jwt-vc.md @@ -0,0 +1,6 @@ +//[document-manager](../../../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../../../index.md)/[DocumentMetaData](../../../index.md)/[Claim](../../index.md)/[Name](../index.md)/[SdJwtVc](index.md)/[SdJwtVc](-sd-jwt-vc.md) + +# SdJwtVc + +[androidJvm]\ +constructor(name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)) diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-sd-jwt-vc/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-sd-jwt-vc/index.md new file mode 100644 index 0000000..f2aa490 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-sd-jwt-vc/index.md @@ -0,0 +1,23 @@ +//[document-manager](../../../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../../../index.md)/[DocumentMetaData](../../../index.md)/[Claim](../../index.md)/[Name](../index.md)/[SdJwtVc](index.md) + +# SdJwtVc + +[androidJvm]\ +@Serializable + +data class [SdJwtVc](index.md)(val +name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)) : [DocumentMetaData.Claim.Name](../index.md) + +SdJwtVc claim name. + +## Constructors + +| | | +|--------------------------|---------------------------------------------------------------------------------------------------------------------| +| [SdJwtVc](-sd-jwt-vc.md) | [androidJvm]
constructor(name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)) | + +## Properties + +| Name | Summary | +|-----------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [name](name.md) | [androidJvm]
open override val [name](name.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
the name of the claim | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-sd-jwt-vc/name.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-sd-jwt-vc/name.md new file mode 100644 index 0000000..52cd66d --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-sd-jwt-vc/name.md @@ -0,0 +1,7 @@ +//[document-manager](../../../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../../../index.md)/[DocumentMetaData](../../../index.md)/[Claim](../../index.md)/[Name](../index.md)/[SdJwtVc](index.md)/[name](name.md) + +# name + +[androidJvm]\ +open override +val [name](name.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/index.md new file mode 100644 index 0000000..bf84a73 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/index.md @@ -0,0 +1,36 @@ +//[document-manager](../../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../../index.md)/[DocumentMetaData](../../index.md)/[Claim](../index.md)/[Name](index.md) + +# Name + +@Serializable + +sealed interface [Name](index.md) + +Claim name. + +#### See also + +| | +|------------------------------------------------------------| +| [DocumentMetaData.Claim.Name.MsoMdoc](-mso-mdoc/index.md) | +| [DocumentMetaData.Claim.Name.SdJwtVc](-sd-jwt-vc/index.md) | + +#### Inheritors + +| | +|--------------------------------| +| [MsoMdoc](-mso-mdoc/index.md) | +| [SdJwtVc](-sd-jwt-vc/index.md) | + +## Types + +| Name | Summary | +|--------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [MsoMdoc](-mso-mdoc/index.md) | [androidJvm]
@Serializable
data class [MsoMdoc](-mso-mdoc/index.md)(val name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val nameSpace: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)) : [DocumentMetaData.Claim.Name](index.md)
MsoMdoc claim name. | +| [SdJwtVc](-sd-jwt-vc/index.md) | [androidJvm]
@Serializable
data class [SdJwtVc](-sd-jwt-vc/index.md)(val name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)) : [DocumentMetaData.Claim.Name](index.md)
SdJwtVc claim name. | + +## Properties + +| Name | Summary | +|-----------------|---------------------------------------------------------------------------------------------------------------------------------------------------------| +| [name](name.md) | [androidJvm]
abstract val [name](name.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
the name of the claim | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/name.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/name.md new file mode 100644 index 0000000..6d58d6b --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/name.md @@ -0,0 +1,7 @@ +//[document-manager](../../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../../index.md)/[DocumentMetaData](../../index.md)/[Claim](../index.md)/[Name](index.md)/[name](name.md) + +# name + +[androidJvm]\ +abstract +val [name](name.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/display.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/display.md new file mode 100644 index 0000000..a2f45ad --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/display.md @@ -0,0 +1,10 @@ +//[document-manager](../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../index.md)/[DocumentMetaData](../index.md)/[Claim](index.md)/[display](display.md) + +# display + +[androidJvm]\ + +@SerialName(value = "display") + +val [display](display.md): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html) +<[DocumentMetaData.Claim.Display](-display/index.md)> diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/index.md new file mode 100644 index 0000000..d1a3727 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/index.md @@ -0,0 +1,43 @@ +//[document-manager](../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../index.md)/[DocumentMetaData](../index.md)/[Claim](index.md) + +# Claim + +@Serializable + +data class [Claim](index.md)(val name: [DocumentMetaData.Claim.Name](-name/index.md), val +mandatory: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)? = +false, val +valueType: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null, +val +display: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html) +<[DocumentMetaData.Claim.Display](-display/index.md)> = emptyList()) + +Claim properties. + +#### See also + +| | +|-----------------------------------------------------| +| [DocumentMetaData.Claim.Display](-display/index.md) | + +## Constructors + +| | | +|--------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [Claim](-claim.md) | [androidJvm]
constructor(name: [DocumentMetaData.Claim.Name](-name/index.md), mandatory: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)? = false, valueType: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null, display: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[DocumentMetaData.Claim.Display](-display/index.md)> = emptyList()) | + +## Types + +| Name | Summary | +|------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [Display](-display/index.md) | [androidJvm]
@Serializable
data class [Display](-display/index.md)(val name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null, val locale: [Locale](https://developer.android.com/reference/kotlin/java/util/Locale.html)? = null)
Display properties of a Claim. | +| [Name](-name/index.md) | [androidJvm]
@Serializable
sealed interface [Name](-name/index.md)
Claim name. | + +## Properties + +| Name | Summary | +|----------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [display](display.md) | [androidJvm]
@SerialName(value = "display")
val [display](display.md): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[DocumentMetaData.Claim.Display](-display/index.md)>
the display properties of the claim | +| [mandatory](mandatory.md) | [androidJvm]
@SerialName(value = "mandatory")
val [mandatory](mandatory.md): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)? = false
whether the claim is mandatory | +| [name](name.md) | [androidJvm]
@SerialName(value = "name")
val [name](name.md): [DocumentMetaData.Claim.Name](-name/index.md) | +| [valueType](value-type.md) | [androidJvm]
@SerialName(value = "value_type")
val [valueType](value-type.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null
the value type of the claim | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/mandatory.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/mandatory.md new file mode 100644 index 0000000..751e073 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/mandatory.md @@ -0,0 +1,10 @@ +//[document-manager](../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../index.md)/[DocumentMetaData](../index.md)/[Claim](index.md)/[mandatory](mandatory.md) + +# mandatory + +[androidJvm]\ + +@SerialName(value = "mandatory") + +val [mandatory](mandatory.md): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)? = +false diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/name.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/name.md new file mode 100644 index 0000000..00e4779 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/name.md @@ -0,0 +1,9 @@ +//[document-manager](../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../index.md)/[DocumentMetaData](../index.md)/[Claim](index.md)/[name](name.md) + +# name + +[androidJvm]\ + +@SerialName(value = "name") + +val [name](name.md): [DocumentMetaData.Claim.Name](-name/index.md) diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/value-type.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/value-type.md new file mode 100644 index 0000000..3665823 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/value-type.md @@ -0,0 +1,10 @@ +//[document-manager](../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../index.md)/[DocumentMetaData](../index.md)/[Claim](index.md)/[valueType](value-type.md) + +# valueType + +[androidJvm]\ + +@SerialName(value = "value_type") + +val [valueType](value-type.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = +null diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-companion/-json.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-companion/-json.md new file mode 100644 index 0000000..7e51343 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-companion/-json.md @@ -0,0 +1,6 @@ +//[document-manager](../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../index.md)/[DocumentMetaData](../index.md)/[Companion](index.md)/[Json](-json.md) + +# Json + +[androidJvm]\ +val [Json](-json.md): Json diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-companion/from-json.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-companion/from-json.md new file mode 100644 index 0000000..874a103 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-companion/from-json.md @@ -0,0 +1,28 @@ +//[document-manager](../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../index.md)/[DocumentMetaData](../index.md)/[Companion](index.md)/[fromJson](from-json.md) + +# fromJson + +[androidJvm]\ +fun [fromJson](from-json.md)( +json: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [DocumentMetaData](../index.md) + +Create a [DocumentMetaData](../index.md) object from a JSON string. + +#### Return + +the [DocumentMetaData](../index.md) object + +#### Parameters + +androidJvm + +| | | +|------|----------------------------------------------| +| json | the JSON string representation of the object | + +#### Throws + +| | | +|------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------| +| [IllegalArgumentException](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-illegal-argument-exception/index.html) | if the decoded input cannot be represented as a valid instance of [DocumentMetaData](../index.md) | +| SerializationException | if the given JSON string is not a valid JSON input | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-companion/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-companion/index.md new file mode 100644 index 0000000..d53bb38 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-companion/index.md @@ -0,0 +1,18 @@ +//[document-manager](../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../index.md)/[DocumentMetaData](../index.md)/[Companion](index.md) + +# Companion + +[androidJvm]\ +object [Companion](index.md) + +## Properties + +| Name | Summary | +|------------------|--------------------------------------------| +| [Json](-json.md) | [androidJvm]
val [Json](-json.md): Json | + +## Functions + +| Name | Summary | +|--------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [fromJson](from-json.md) | [androidJvm]
fun [fromJson](from-json.md)(json: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [DocumentMetaData](../index.md)
Create a [DocumentMetaData](../index.md) object from a JSON string. | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/-display.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/-display.md new file mode 100644 index 0000000..87eb280 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/-display.md @@ -0,0 +1,13 @@ +//[document-manager](../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../index.md)/[DocumentMetaData](../index.md)/[Display](index.md)/[Display](-display.md) + +# Display + +[androidJvm]\ +constructor(name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), +locale: [Locale](https://developer.android.com/reference/kotlin/java/util/Locale.html)? = null, +logo: [DocumentMetaData.Display.Logo](-logo/index.md)? = null, +description: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = +null, +backgroundColor: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = +null, textColor: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = +null) diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/-logo/-logo.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/-logo/-logo.md new file mode 100644 index 0000000..1c3a3db --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/-logo/-logo.md @@ -0,0 +1,8 @@ +//[document-manager](../../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../../index.md)/[DocumentMetaData](../../index.md)/[Display](../index.md)/[Logo](index.md)/[Logo](-logo.md) + +# Logo + +[androidJvm]\ +constructor(uri: [URI](https://developer.android.com/reference/kotlin/java/net/URI.html)? = null, +alternativeText: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = +null) diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/-logo/alternative-text.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/-logo/alternative-text.md new file mode 100644 index 0000000..a48a3d8 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/-logo/alternative-text.md @@ -0,0 +1,7 @@ +//[document-manager](../../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../../index.md)/[DocumentMetaData](../../index.md)/[Display](../index.md)/[Logo](index.md)/[alternativeText](alternative-text.md) + +# alternativeText + +[androidJvm]\ +val [alternativeText](alternative-text.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = +null diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/-logo/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/-logo/index.md new file mode 100644 index 0000000..ed8df84 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/-logo/index.md @@ -0,0 +1,31 @@ +//[document-manager](../../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../../index.md)/[DocumentMetaData](../../index.md)/[Display](../index.md)/[Logo](index.md) + +# Logo + +@Serializable + +data class [Logo](index.md)(val +uri: [URI](https://developer.android.com/reference/kotlin/java/net/URI.html)? = null, val +alternativeText: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = +null) + +Logo information. + +#### See also + +| | +|-------------------------------------------------------------------------| +| [URI](https://developer.android.com/reference/kotlin/java/net/URI.html) | + +## Constructors + +| | | +|------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [Logo](-logo.md) | [androidJvm]
constructor(uri: [URI](https://developer.android.com/reference/kotlin/java/net/URI.html)? = null, alternativeText: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null) | + +## Properties + +| Name | Summary | +|----------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [alternativeText](alternative-text.md) | [androidJvm]
val [alternativeText](alternative-text.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null
the alternative text of the logo | +| [uri](uri.md) | [androidJvm]
@Serializable(with = URISerializer::class)
val [uri](uri.md): [URI](https://developer.android.com/reference/kotlin/java/net/URI.html)? = null
the URI of the logo | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/-logo/uri.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/-logo/uri.md new file mode 100644 index 0000000..45bdcdf --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/-logo/uri.md @@ -0,0 +1,9 @@ +//[document-manager](../../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../../index.md)/[DocumentMetaData](../../index.md)/[Display](../index.md)/[Logo](index.md)/[uri](uri.md) + +# uri + +[androidJvm]\ + +@Serializable(with = URISerializer::class) + +val [uri](uri.md): [URI](https://developer.android.com/reference/kotlin/java/net/URI.html)? = null diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/background-color.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/background-color.md new file mode 100644 index 0000000..9392b04 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/background-color.md @@ -0,0 +1,7 @@ +//[document-manager](../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../index.md)/[DocumentMetaData](../index.md)/[Display](index.md)/[backgroundColor](background-color.md) + +# backgroundColor + +[androidJvm]\ +val [backgroundColor](background-color.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = +null diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/description.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/description.md new file mode 100644 index 0000000..c4022d5 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/description.md @@ -0,0 +1,7 @@ +//[document-manager](../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../index.md)/[DocumentMetaData](../index.md)/[Display](index.md)/[description](description.md) + +# description + +[androidJvm]\ +val [description](description.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = +null diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/index.md new file mode 100644 index 0000000..1d8d55a --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/index.md @@ -0,0 +1,47 @@ +//[document-manager](../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../index.md)/[DocumentMetaData](../index.md)/[Display](index.md) + +# Display + +@Serializable + +data class [Display](index.md)(val +name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val +locale: [Locale](https://developer.android.com/reference/kotlin/java/util/Locale.html)? = null, val +logo: [DocumentMetaData.Display.Logo](-logo/index.md)? = null, val +description: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = +null, val +backgroundColor: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = +null, val +textColor: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null) + +Display properties of a supported credential type for a certain language. + +#### See also + +| | +|--------------------------------------------------------------------------------| +| [DocumentMetaData.Display.Logo](-logo/index.md) | +| [Locale](https://developer.android.com/reference/kotlin/java/util/Locale.html) | + +## Constructors + +| | | +|------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [Display](-display.md) | [androidJvm]
constructor(name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), locale: [Locale](https://developer.android.com/reference/kotlin/java/util/Locale.html)? = null, logo: [DocumentMetaData.Display.Logo](-logo/index.md)? = null, description: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null, backgroundColor: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null, textColor: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null) | + +## Types + +| Name | Summary | +|------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [Logo](-logo/index.md) | [androidJvm]
@Serializable
data class [Logo](-logo/index.md)(val uri: [URI](https://developer.android.com/reference/kotlin/java/net/URI.html)? = null, val alternativeText: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null)
Logo information. | + +## Properties + +| Name | Summary | +|----------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [backgroundColor](background-color.md) | [androidJvm]
val [backgroundColor](background-color.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null
the background color of the document | +| [description](description.md) | [androidJvm]
val [description](description.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null
the description of the document | +| [locale](locale.md) | [androidJvm]
@Serializable(with = LocaleSerializer::class)
val [locale](locale.md): [Locale](https://developer.android.com/reference/kotlin/java/util/Locale.html)? = null
the locale of the current display | +| [logo](logo.md) | [androidJvm]
val [logo](logo.md): [DocumentMetaData.Display.Logo](-logo/index.md)? = null
the logo of the document | +| [name](name.md) | [androidJvm]
val [name](name.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
the name of the document | +| [textColor](text-color.md) | [androidJvm]
val [textColor](text-color.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null
the text color of the document | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/locale.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/locale.md new file mode 100644 index 0000000..fea6dc1 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/locale.md @@ -0,0 +1,10 @@ +//[document-manager](../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../index.md)/[DocumentMetaData](../index.md)/[Display](index.md)/[locale](locale.md) + +# locale + +[androidJvm]\ + +@Serializable(with = LocaleSerializer::class) + +val [locale](locale.md): [Locale](https://developer.android.com/reference/kotlin/java/util/Locale.html)? = +null diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/logo.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/logo.md new file mode 100644 index 0000000..8536a18 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/logo.md @@ -0,0 +1,6 @@ +//[document-manager](../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../index.md)/[DocumentMetaData](../index.md)/[Display](index.md)/[logo](logo.md) + +# logo + +[androidJvm]\ +val [logo](logo.md): [DocumentMetaData.Display.Logo](-logo/index.md)? = null diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/name.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/name.md new file mode 100644 index 0000000..2ec11c2 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/name.md @@ -0,0 +1,6 @@ +//[document-manager](../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../index.md)/[DocumentMetaData](../index.md)/[Display](index.md)/[name](name.md) + +# name + +[androidJvm]\ +val [name](name.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/text-color.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/text-color.md new file mode 100644 index 0000000..a2be1b3 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/text-color.md @@ -0,0 +1,7 @@ +//[document-manager](../../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../../index.md)/[DocumentMetaData](../index.md)/[Display](index.md)/[textColor](text-color.md) + +# textColor + +[androidJvm]\ +val [textColor](text-color.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = +null diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-document-meta-data.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-document-meta-data.md new file mode 100644 index 0000000..39a606c --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-document-meta-data.md @@ -0,0 +1,14 @@ +//[document-manager](../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../index.md)/[DocumentMetaData](index.md)/[DocumentMetaData](-document-meta-data.md) + +# DocumentMetaData + +[androidJvm]\ +constructor( +documentConfigurationIdentifier: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), +display: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html) +<[DocumentMetaData.Display](-display/index.md)>, +claims: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html) +<[DocumentMetaData.Claim](-claim/index.md)>?, +credentialIssuerIdentifier: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), +issuerDisplay: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html) +<[DocumentMetaData.Display](-display/index.md)>?) diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/claims.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/claims.md new file mode 100644 index 0000000..a5f8afe --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/claims.md @@ -0,0 +1,7 @@ +//[document-manager](../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../index.md)/[DocumentMetaData](index.md)/[claims](claims.md) + +# claims + +[androidJvm]\ +val [claims](claims.md): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html) +<[DocumentMetaData.Claim](-claim/index.md)>? diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/credential-issuer-identifier.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/credential-issuer-identifier.md new file mode 100644 index 0000000..4767079 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/credential-issuer-identifier.md @@ -0,0 +1,6 @@ +//[document-manager](../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../index.md)/[DocumentMetaData](index.md)/[credentialIssuerIdentifier](credential-issuer-identifier.md) + +# credentialIssuerIdentifier + +[androidJvm]\ +val [credentialIssuerIdentifier](credential-issuer-identifier.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/display.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/display.md new file mode 100644 index 0000000..ca926b0 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/display.md @@ -0,0 +1,7 @@ +//[document-manager](../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../index.md)/[DocumentMetaData](index.md)/[display](display.md) + +# display + +[androidJvm]\ +val [display](display.md): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html) +<[DocumentMetaData.Display](-display/index.md)> diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/document-configuration-identifier.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/document-configuration-identifier.md new file mode 100644 index 0000000..4a8cbeb --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/document-configuration-identifier.md @@ -0,0 +1,6 @@ +//[document-manager](../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../index.md)/[DocumentMetaData](index.md)/[documentConfigurationIdentifier](document-configuration-identifier.md) + +# documentConfigurationIdentifier + +[androidJvm]\ +val [documentConfigurationIdentifier](document-configuration-identifier.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md new file mode 100644 index 0000000..7b859d1 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md @@ -0,0 +1,50 @@ +//[document-manager](../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../index.md)/[DocumentMetaData](index.md) + +# DocumentMetaData + +[androidJvm]\ +@Serializable + +data class [DocumentMetaData](index.md)(val +documentConfigurationIdentifier: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), +val +display: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html) +<[DocumentMetaData.Display](-display/index.md)>, val +claims: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html) +<[DocumentMetaData.Claim](-claim/index.md)>?, val +credentialIssuerIdentifier: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), +val +issuerDisplay: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html) +<[DocumentMetaData.Display](-display/index.md)>?) + +Document metadata domain object for storage. + +## Constructors + +| | | +|--------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [DocumentMetaData](-document-meta-data.md) | [androidJvm]
constructor(documentConfigurationIdentifier: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), display: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[DocumentMetaData.Display](-display/index.md)>, claims: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[DocumentMetaData.Claim](-claim/index.md)>?, credentialIssuerIdentifier: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), issuerDisplay: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[DocumentMetaData.Display](-display/index.md)>?) | + +## Types + +| Name | Summary | +|----------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [Claim](-claim/index.md) | [androidJvm]
@Serializable
data class [Claim](-claim/index.md)(val name: [DocumentMetaData.Claim.Name](-claim/-name/index.md), val mandatory: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)? = false, val valueType: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null, val display: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[DocumentMetaData.Claim.Display](-claim/-display/index.md)> = emptyList())
Claim properties. | +| [Companion](-companion/index.md) | [androidJvm]
object [Companion](-companion/index.md) | +| [Display](-display/index.md) | [androidJvm]
@Serializable
data class [Display](-display/index.md)(val name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val locale: [Locale](https://developer.android.com/reference/kotlin/java/util/Locale.html)? = null, val logo: [DocumentMetaData.Display.Logo](-display/-logo/index.md)? = null, val description: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null, val backgroundColor: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null, val textColor: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? = null)
Display properties of a supported credential type for a certain language. | + +## Properties + +| Name | Summary | +|-------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [claims](claims.md) | [androidJvm]
val [claims](claims.md): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[DocumentMetaData.Claim](-claim/index.md)>?
metadata for the claims of the document | +| [credentialIssuerIdentifier](credential-issuer-identifier.md) | [androidJvm]
val [credentialIssuerIdentifier](credential-issuer-identifier.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
the credential issuer identifier | +| [display](display.md) | [androidJvm]
val [display](display.md): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[DocumentMetaData.Display](-display/index.md)>
the display properties of the document | +| [documentConfigurationIdentifier](document-configuration-identifier.md) | [androidJvm]
val [documentConfigurationIdentifier](document-configuration-identifier.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
the document configuration identifier | +| [issuerDisplay](issuer-display.md) | [androidJvm]
val [issuerDisplay](issuer-display.md): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[DocumentMetaData.Display](-display/index.md)>?
the display properties of the issuer that issued the document | + +## Functions + +| Name | Summary | +|----------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [toJson](to-json.md) | [androidJvm]
fun [toJson](to-json.md)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
Convert the object to a JSON string. | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/issuer-display.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/issuer-display.md new file mode 100644 index 0000000..db5ecc2 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/issuer-display.md @@ -0,0 +1,7 @@ +//[document-manager](../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../index.md)/[DocumentMetaData](index.md)/[issuerDisplay](issuer-display.md) + +# issuerDisplay + +[androidJvm]\ +val [issuerDisplay](issuer-display.md): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html) +<[DocumentMetaData.Display](-display/index.md)>? diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/to-json.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/to-json.md new file mode 100644 index 0000000..5dd1885 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/to-json.md @@ -0,0 +1,18 @@ +//[document-manager](../../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](../index.md)/[DocumentMetaData](index.md)/[toJson](to-json.md) + +# toJson + +[androidJvm]\ +fun [toJson](to-json.md)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) + +Convert the object to a JSON string. + +#### Return + +the JSON string representation of the object + +#### Throws + +| | | +|------------------------|----------------------------------| +| SerializationException | if cannot be serialized to JSON. | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/index.md new file mode 100644 index 0000000..1cbac5c --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.metadata/index.md @@ -0,0 +1,9 @@ +//[document-manager](../../index.md)/[eu.europa.ec.eudi.wallet.document.metadata](index.md) + +# Package-level declarations + +## Types + +| Name | Summary | +|--------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [DocumentMetaData](-document-meta-data/index.md) | [androidJvm]
@Serializable
data class [DocumentMetaData](-document-meta-data/index.md)(val documentConfigurationIdentifier: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val display: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[DocumentMetaData.Display](-document-meta-data/-display/index.md)>, val claims: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[DocumentMetaData.Claim](-document-meta-data/-claim/index.md)>?, val credentialIssuerIdentifier: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val issuerDisplay: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[DocumentMetaData.Display](-document-meta-data/-display/index.md)>?)
Document metadata domain object for storage. | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.sample/-sample-document-manager-impl/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.sample/-sample-document-manager-impl/index.md index 890b8a9..d92f4c0 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document.sample/-sample-document-manager-impl/index.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.sample/-sample-document-manager-impl/index.md @@ -33,7 +33,7 @@ androidJvm | Name | Summary | |---------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| [createDocument](../../eu.europa.ec.eudi.wallet.document/-document-manager/create-document.md) | [androidJvm]
open override fun [createDocument](../../eu.europa.ec.eudi.wallet.document/-document-manager/create-document.md)(format: [DocumentFormat](../../eu.europa.ec.eudi.wallet.document.format/-document-format/index.md), createSettings: [CreateDocumentSettings](../../eu.europa.ec.eudi.wallet.document/-create-document-settings/index.md)): [Outcome](../../eu.europa.ec.eudi.wallet.document/-outcome/index.md)<[UnsignedDocument](../../eu.europa.ec.eudi.wallet.document/-unsigned-document/index.md)>
Create a new document. This method will create a new document with the given format and keys settings. If the document is successfully created, it will return an UnsignedDocument. This UnsignedDocument contains the keys and the method to proof the ownership of the keys, that can be used with an issuer to retrieve the document's claims. After that the document can be stored using storeIssuedDocument or storeDeferredDocument. | +| [createDocument](../../eu.europa.ec.eudi.wallet.document/-document-manager/create-document.md) | [androidJvm]
open override fun [createDocument](../../eu.europa.ec.eudi.wallet.document/-document-manager/create-document.md)(format: [DocumentFormat](../../eu.europa.ec.eudi.wallet.document.format/-document-format/index.md), createSettings: [CreateDocumentSettings](../../eu.europa.ec.eudi.wallet.document/-create-document-settings/index.md), documentMetaData: [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?): [Outcome](../../eu.europa.ec.eudi.wallet.document/-outcome/index.md)<[UnsignedDocument](../../eu.europa.ec.eudi.wallet.document/-unsigned-document/index.md)>
Create a new document. This method will create a new document with the given format and keys settings. If the document is successfully created, it will return an UnsignedDocument. This UnsignedDocument contains the keys and the method to proof the ownership of the keys, that can be used with an issuer to retrieve the document's claims. After that the document can be stored using storeIssuedDocument or storeDeferredDocument. | | [deleteDocumentById](../../eu.europa.ec.eudi.wallet.document/-document-manager/delete-document-by-id.md) | [androidJvm]
open override fun [deleteDocumentById](../../eu.europa.ec.eudi.wallet.document/-document-manager/delete-document-by-id.md)(documentId: [DocumentId](../../eu.europa.ec.eudi.wallet.document/-document-id/index.md)): [Outcome](../../eu.europa.ec.eudi.wallet.document/-outcome/index.md)<[ProofOfDeletion](../../eu.europa.ec.eudi.wallet.document/-proof-of-deletion/index.md)?>
Delete a document by its identifier. | | [getDocumentById](../../eu.europa.ec.eudi.wallet.document/-document-manager/get-document-by-id.md) | [androidJvm]
open override fun [getDocumentById](../../eu.europa.ec.eudi.wallet.document/-document-manager/get-document-by-id.md)(documentId: [DocumentId](../../eu.europa.ec.eudi.wallet.document/-document-id/index.md)): [Document](../../eu.europa.ec.eudi.wallet.document/-document/index.md)?
Retrieve a document by its identifier. | | [getDocuments](../../eu.europa.ec.eudi.wallet.document/-document-manager/get-documents.md) | [androidJvm]
open override fun [getDocuments](../../eu.europa.ec.eudi.wallet.document/-document-manager/get-documents.md)(predicate: ([Document](../../eu.europa.ec.eudi.wallet.document/-document/index.md)) -> [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)?): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[Document](../../eu.europa.ec.eudi.wallet.document/-document/index.md)>
Retrieve all documents. | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document.sample/-sample-document-manager/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document.sample/-sample-document-manager/index.md index 1c41645..0af00f5 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document.sample/-sample-document-manager/index.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document.sample/-sample-document-manager/index.md @@ -58,7 +58,7 @@ val sampleDocumentManager = SampleDocumentManager.Builder(context) | Name | Summary | |---------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| [createDocument](../../eu.europa.ec.eudi.wallet.document/-document-manager/create-document.md) | [androidJvm]
abstract fun [createDocument](../../eu.europa.ec.eudi.wallet.document/-document-manager/create-document.md)(format: [DocumentFormat](../../eu.europa.ec.eudi.wallet.document.format/-document-format/index.md), createSettings: [CreateDocumentSettings](../../eu.europa.ec.eudi.wallet.document/-create-document-settings/index.md)): [Outcome](../../eu.europa.ec.eudi.wallet.document/-outcome/index.md)<[UnsignedDocument](../../eu.europa.ec.eudi.wallet.document/-unsigned-document/index.md)>
Create a new document. This method will create a new document with the given format and keys settings. If the document is successfully created, it will return an [UnsignedDocument](../../eu.europa.ec.eudi.wallet.document/-unsigned-document/index.md). This [UnsignedDocument](../../eu.europa.ec.eudi.wallet.document/-unsigned-document/index.md) contains the keys and the method to proof the ownership of the keys, that can be used with an issuer to retrieve the document's claims. After that the document can be stored using [storeIssuedDocument](../../eu.europa.ec.eudi.wallet.document/-document-manager/store-issued-document.md) or [storeDeferredDocument](../../eu.europa.ec.eudi.wallet.document/-document-manager/store-deferred-document.md). | +| [createDocument](../../eu.europa.ec.eudi.wallet.document/-document-manager/create-document.md) | [androidJvm]
abstract fun [createDocument](../../eu.europa.ec.eudi.wallet.document/-document-manager/create-document.md)(format: [DocumentFormat](../../eu.europa.ec.eudi.wallet.document.format/-document-format/index.md), createSettings: [CreateDocumentSettings](../../eu.europa.ec.eudi.wallet.document/-create-document-settings/index.md), documentMetaData: [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)? = null): [Outcome](../../eu.europa.ec.eudi.wallet.document/-outcome/index.md)<[UnsignedDocument](../../eu.europa.ec.eudi.wallet.document/-unsigned-document/index.md)>
Create a new document. This method will create a new document with the given format and keys settings. If the document is successfully created, it will return an [UnsignedDocument](../../eu.europa.ec.eudi.wallet.document/-unsigned-document/index.md). This [UnsignedDocument](../../eu.europa.ec.eudi.wallet.document/-unsigned-document/index.md) contains the keys and the method to proof the ownership of the keys, that can be used with an issuer to retrieve the document's claims. After that the document can be stored using [storeIssuedDocument](../../eu.europa.ec.eudi.wallet.document/-document-manager/store-issued-document.md) or [storeDeferredDocument](../../eu.europa.ec.eudi.wallet.document/-document-manager/store-deferred-document.md). | | [deleteDocumentById](../../eu.europa.ec.eudi.wallet.document/-document-manager/delete-document-by-id.md) | [androidJvm]
abstract fun [deleteDocumentById](../../eu.europa.ec.eudi.wallet.document/-document-manager/delete-document-by-id.md)(documentId: [DocumentId](../../eu.europa.ec.eudi.wallet.document/-document-id/index.md)): [Outcome](../../eu.europa.ec.eudi.wallet.document/-outcome/index.md)<[ProofOfDeletion](../../eu.europa.ec.eudi.wallet.document/-proof-of-deletion/index.md)?>
Delete a document by its identifier. | | [getDocumentById](../../eu.europa.ec.eudi.wallet.document/-document-manager/get-document-by-id.md) | [androidJvm]
abstract fun [getDocumentById](../../eu.europa.ec.eudi.wallet.document/-document-manager/get-document-by-id.md)(documentId: [DocumentId](../../eu.europa.ec.eudi.wallet.document/-document-id/index.md)): [Document](../../eu.europa.ec.eudi.wallet.document/-document/index.md)?
Retrieve a document by its identifier. | | [getDocuments](../../eu.europa.ec.eudi.wallet.document/-document-manager/get-documents.md) | [androidJvm]
abstract fun [getDocuments](../../eu.europa.ec.eudi.wallet.document/-document-manager/get-documents.md)(predicate: ([Document](../../eu.europa.ec.eudi.wallet.document/-document/index.md)) -> [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)? = null): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[Document](../../eu.europa.ec.eudi.wallet.document/-document/index.md)>
Retrieve all documents. | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-deferred-document/-deferred-document.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-deferred-document/-deferred-document.md index b0d52f4..7202a58 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-deferred-document/-deferred-document.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-deferred-document/-deferred-document.md @@ -11,4 +11,5 @@ isCertified: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-bool keyAlias: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), secureArea: SecureArea, createdAt: [Instant](https://developer.android.com/reference/kotlin/java/time/Instant.html), +documentMetaData: [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?, relatedData: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)) diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-deferred-document/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-deferred-document/index.md index da896ed..eb39314 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-deferred-document/index.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-deferred-document/index.md @@ -11,7 +11,9 @@ documentManagerId: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/ val isCertified: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), val keyAlias: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val secureArea: SecureArea, val -createdAt: [Instant](https://developer.android.com/reference/kotlin/java/time/Instant.html), val +createdAt: [Instant](https://developer.android.com/reference/kotlin/java/time/Instant.html), +documentMetaData: [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?, +val relatedData: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)) : [UnsignedDocument](../-unsigned-document/index.md) Represents a Deferred Document. A Deferred Document is also @@ -19,9 +21,9 @@ an [UnsignedDocument](../-unsigned-document/index.md), since it is not yet signe ## Constructors -| | | -|-------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| [DeferredDocument](-deferred-document.md) | [androidJvm]
constructor(id: [DocumentId](../-document-id/index.md), name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), format: [DocumentFormat](../../eu.europa.ec.eudi.wallet.document.format/-document-format/index.md), documentManagerId: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), isCertified: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), keyAlias: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), secureArea: SecureArea, createdAt: [Instant](https://developer.android.com/reference/kotlin/java/time/Instant.html), relatedData: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)) | +| | | +|-------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [DeferredDocument](-deferred-document.md) | [androidJvm]
constructor(id: [DocumentId](../-document-id/index.md), name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), format: [DocumentFormat](../../eu.europa.ec.eudi.wallet.document.format/-document-format/index.md), documentManagerId: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), isCertified: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), keyAlias: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), secureArea: SecureArea, createdAt: [Instant](https://developer.android.com/reference/kotlin/java/time/Instant.html), documentMetaData: [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?, relatedData: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)) | ## Properties @@ -35,6 +37,7 @@ an [UnsignedDocument](../-unsigned-document/index.md), since it is not yet signe | [isKeyInvalidated](../-document/is-key-invalidated.md) | [androidJvm]
open val [isKeyInvalidated](../-document/is-key-invalidated.md): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
whether the key is invalidated | | [keyAlias](../-unsigned-document/key-alias.md) | [androidJvm]
open override val [keyAlias](../-unsigned-document/key-alias.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
the key alias | | [keyInfo](../-document/key-info.md) | [androidJvm]
open val [keyInfo](../-document/key-info.md): KeyInfo
the key info | +| [metadata](../-unsigned-document/metadata.md) | [androidJvm]
open override val [metadata](../-unsigned-document/metadata.md): [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?
the document metadata | | [name](../-unsigned-document/name.md) | [androidJvm]
open override var [name](../-unsigned-document/name.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
the document name | | [publicKeyCoseBytes](../-document/public-key-cose-bytes.md) | [androidJvm]
open val [publicKeyCoseBytes](../-document/public-key-cose-bytes.md): [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)
the public key cose bytes | | [relatedData](related-data.md) | [androidJvm]
val [relatedData](related-data.md): [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)
the related data | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager-impl/create-document.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager-impl/create-document.md index 81654c3..af1c360 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager-impl/create-document.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager-impl/create-document.md @@ -5,7 +5,8 @@ [androidJvm]\ open override fun [createDocument](create-document.md)( format: [DocumentFormat](../../eu.europa.ec.eudi.wallet.document.format/-document-format/index.md), -createSettings: [CreateDocumentSettings](../-create-document-settings/index.md)): [Outcome](../-outcome/index.md) +createSettings: [CreateDocumentSettings](../-create-document-settings/index.md), +documentMetaData: [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?): [Outcome](../-outcome/index.md) <[UnsignedDocument](../-unsigned-document/index.md)> Create a new document. This method will create a new document with the given format and keys @@ -25,7 +26,8 @@ error. androidJvm -| | | -|----------------|------------------------------------------------------------------| -| format | the format of the document | -| createSettings | the SecureAreaCreateDocumentSettings to use for the new document | +| | | +|------------------|---------------------------------------------------------------------------------------------------------------------------------------| +| format | the format of the document | +| createSettings | the [CreateDocumentSettings](../-create-document-settings/index.md) to use for the new document | +| documentMetaData | the [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md) data regarding document display | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager-impl/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager-impl/index.md index 49866ce..9854c70 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager-impl/index.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager-impl/index.md @@ -43,12 +43,12 @@ androidJvm ## Functions -| Name | Summary | -|-----------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| [createDocument](create-document.md) | [androidJvm]
open override fun [createDocument](create-document.md)(format: [DocumentFormat](../../eu.europa.ec.eudi.wallet.document.format/-document-format/index.md), createSettings: [CreateDocumentSettings](../-create-document-settings/index.md)): [Outcome](../-outcome/index.md)<[UnsignedDocument](../-unsigned-document/index.md)>
Create a new document. This method will create a new document with the given format and keys settings. If the document is successfully created, it will return an [UnsignedDocument](../-unsigned-document/index.md). This [UnsignedDocument](../-unsigned-document/index.md) contains the keys and the method to proof the ownership of the keys, that can be used with an issuer to retrieve the document's claims. After that the document can be stored using [storeIssuedDocument](store-issued-document.md) or [storeDeferredDocument](store-deferred-document.md). | -| [deleteDocumentById](delete-document-by-id.md) | [androidJvm]
open override fun [deleteDocumentById](delete-document-by-id.md)(documentId: [DocumentId](../-document-id/index.md)): [Outcome](../-outcome/index.md)<[ProofOfDeletion](../-proof-of-deletion/index.md)?>
Delete a document by its identifier. | -| [getDocumentById](get-document-by-id.md) | [androidJvm]
open override fun [getDocumentById](get-document-by-id.md)(documentId: [DocumentId](../-document-id/index.md)): [Document](../-document/index.md)?
Retrieve a document by its identifier. | -| [getDocuments](get-documents.md) | [androidJvm]
open override fun [getDocuments](get-documents.md)(predicate: ([Document](../-document/index.md)) -> [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)?): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[Document](../-document/index.md)>
Retrieve all documents. | -| [getDocuments](../get-documents.md) | [androidJvm]
inline fun <[T](../get-documents.md) : [Document](../-document/index.md)> [DocumentManager](../-document-manager/index.md).[getDocuments](../get-documents.md)(): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[T](../get-documents.md)>
DocumentManager Extension function that returns a list of documents of type [T](../get-documents.md). If [T](../get-documents.md) is [IssuedDocument](../-issued-document/index.md), then only [IssuedDocument](../-issued-document/index.md) will be returned. If [T](../get-documents.md) is [UnsignedDocument](../-unsigned-document/index.md), then only [UnsignedDocument](../-unsigned-document/index.md) will be returned, excluding [DeferredDocument](../-deferred-document/index.md). If [T](../get-documents.md) is [DeferredDocument](../-deferred-document/index.md), then only [DeferredDocument](../-deferred-document/index.md) will be returned. | -| [storeDeferredDocument](store-deferred-document.md) | [androidJvm]
open override fun [storeDeferredDocument](store-deferred-document.md)(unsignedDocument: [UnsignedDocument](../-unsigned-document/index.md), relatedData: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)): [Outcome](../-outcome/index.md)<[DeferredDocument](../-deferred-document/index.md)>
Store an unsigned document for deferred issuance. This method will store the document with the related to the issuance data. | -| [storeIssuedDocument](store-issued-document.md) | [androidJvm]
open override fun [storeIssuedDocument](store-issued-document.md)(unsignedDocument: [UnsignedDocument](../-unsigned-document/index.md), issuerProvidedData: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)): [Outcome](../-outcome/index.md)<[IssuedDocument](../-issued-document/index.md)>
Store an issued document. This method will store the document with its issuer provided data. | +| Name | Summary | +|-----------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [createDocument](create-document.md) | [androidJvm]
open override fun [createDocument](create-document.md)(format: [DocumentFormat](../../eu.europa.ec.eudi.wallet.document.format/-document-format/index.md), createSettings: [CreateDocumentSettings](../-create-document-settings/index.md), documentMetaData: [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?): [Outcome](../-outcome/index.md)<[UnsignedDocument](../-unsigned-document/index.md)>
Create a new document. This method will create a new document with the given format and keys settings. If the document is successfully created, it will return an [UnsignedDocument](../-unsigned-document/index.md). This [UnsignedDocument](../-unsigned-document/index.md) contains the keys and the method to proof the ownership of the keys, that can be used with an issuer to retrieve the document's claims. After that the document can be stored using [storeIssuedDocument](store-issued-document.md) or [storeDeferredDocument](store-deferred-document.md). | +| [deleteDocumentById](delete-document-by-id.md) | [androidJvm]
open override fun [deleteDocumentById](delete-document-by-id.md)(documentId: [DocumentId](../-document-id/index.md)): [Outcome](../-outcome/index.md)<[ProofOfDeletion](../-proof-of-deletion/index.md)?>
Delete a document by its identifier. | +| [getDocumentById](get-document-by-id.md) | [androidJvm]
open override fun [getDocumentById](get-document-by-id.md)(documentId: [DocumentId](../-document-id/index.md)): [Document](../-document/index.md)?
Retrieve a document by its identifier. | +| [getDocuments](get-documents.md) | [androidJvm]
open override fun [getDocuments](get-documents.md)(predicate: ([Document](../-document/index.md)) -> [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)?): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[Document](../-document/index.md)>
Retrieve all documents. | +| [getDocuments](../get-documents.md) | [androidJvm]
inline fun <[T](../get-documents.md) : [Document](../-document/index.md)> [DocumentManager](../-document-manager/index.md).[getDocuments](../get-documents.md)(): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[T](../get-documents.md)>
DocumentManager Extension function that returns a list of documents of type [T](../get-documents.md). If [T](../get-documents.md) is [IssuedDocument](../-issued-document/index.md), then only [IssuedDocument](../-issued-document/index.md) will be returned. If [T](../get-documents.md) is [UnsignedDocument](../-unsigned-document/index.md), then only [UnsignedDocument](../-unsigned-document/index.md) will be returned, excluding [DeferredDocument](../-deferred-document/index.md). If [T](../get-documents.md) is [DeferredDocument](../-deferred-document/index.md), then only [DeferredDocument](../-deferred-document/index.md) will be returned. | +| [storeDeferredDocument](store-deferred-document.md) | [androidJvm]
open override fun [storeDeferredDocument](store-deferred-document.md)(unsignedDocument: [UnsignedDocument](../-unsigned-document/index.md), relatedData: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)): [Outcome](../-outcome/index.md)<[DeferredDocument](../-deferred-document/index.md)>
Store an unsigned document for deferred issuance. This method will store the document with the related to the issuance data. | +| [storeIssuedDocument](store-issued-document.md) | [androidJvm]
open override fun [storeIssuedDocument](store-issued-document.md)(unsignedDocument: [UnsignedDocument](../-unsigned-document/index.md), issuerProvidedData: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)): [Outcome](../-outcome/index.md)<[IssuedDocument](../-issued-document/index.md)>
Store an issued document. This method will store the document with its issuer provided data. | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager/create-document.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager/create-document.md index dcbad04..9f9ffe4 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager/create-document.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager/create-document.md @@ -5,8 +5,9 @@ [androidJvm]\ abstract fun [createDocument](create-document.md)( format: [DocumentFormat](../../eu.europa.ec.eudi.wallet.document.format/-document-format/index.md), -createSettings: [CreateDocumentSettings](../-create-document-settings/index.md)): [Outcome](../-outcome/index.md) -<[UnsignedDocument](../-unsigned-document/index.md)> +createSettings: [CreateDocumentSettings](../-create-document-settings/index.md), +documentMetaData: [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)? = +null): [Outcome](../-outcome/index.md)<[UnsignedDocument](../-unsigned-document/index.md)> Create a new document. This method will create a new document with the given format and keys settings. If the document is successfully created, it will return diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager/index.md index 2fc3359..c9fd2e4 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager/index.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager/index.md @@ -54,12 +54,12 @@ the [Builder](-builder/index.md) class. ## Functions -| Name | Summary | -|-----------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| [createDocument](create-document.md) | [androidJvm]
abstract fun [createDocument](create-document.md)(format: [DocumentFormat](../../eu.europa.ec.eudi.wallet.document.format/-document-format/index.md), createSettings: [CreateDocumentSettings](../-create-document-settings/index.md)): [Outcome](../-outcome/index.md)<[UnsignedDocument](../-unsigned-document/index.md)>
Create a new document. This method will create a new document with the given format and keys settings. If the document is successfully created, it will return an [UnsignedDocument](../-unsigned-document/index.md). This [UnsignedDocument](../-unsigned-document/index.md) contains the keys and the method to proof the ownership of the keys, that can be used with an issuer to retrieve the document's claims. After that the document can be stored using [storeIssuedDocument](store-issued-document.md) or [storeDeferredDocument](store-deferred-document.md). | -| [deleteDocumentById](delete-document-by-id.md) | [androidJvm]
abstract fun [deleteDocumentById](delete-document-by-id.md)(documentId: [DocumentId](../-document-id/index.md)): [Outcome](../-outcome/index.md)<[ProofOfDeletion](../-proof-of-deletion/index.md)?>
Delete a document by its identifier. | -| [getDocumentById](get-document-by-id.md) | [androidJvm]
abstract fun [getDocumentById](get-document-by-id.md)(documentId: [DocumentId](../-document-id/index.md)): [Document](../-document/index.md)?
Retrieve a document by its identifier. | -| [getDocuments](get-documents.md) | [androidJvm]
abstract fun [getDocuments](get-documents.md)(predicate: ([Document](../-document/index.md)) -> [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)? = null): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[Document](../-document/index.md)>
Retrieve all documents. | -| [getDocuments](../get-documents.md) | [androidJvm]
inline fun <[T](../get-documents.md) : [Document](../-document/index.md)> [DocumentManager](index.md).[getDocuments](../get-documents.md)(): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[T](../get-documents.md)>
DocumentManager Extension function that returns a list of documents of type [T](../get-documents.md). If [T](../get-documents.md) is [IssuedDocument](../-issued-document/index.md), then only [IssuedDocument](../-issued-document/index.md) will be returned. If [T](../get-documents.md) is [UnsignedDocument](../-unsigned-document/index.md), then only [UnsignedDocument](../-unsigned-document/index.md) will be returned, excluding [DeferredDocument](../-deferred-document/index.md). If [T](../get-documents.md) is [DeferredDocument](../-deferred-document/index.md), then only [DeferredDocument](../-deferred-document/index.md) will be returned. | -| [storeDeferredDocument](store-deferred-document.md) | [androidJvm]
abstract fun [storeDeferredDocument](store-deferred-document.md)(unsignedDocument: [UnsignedDocument](../-unsigned-document/index.md), relatedData: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)): [Outcome](../-outcome/index.md)<[DeferredDocument](../-deferred-document/index.md)>
Store an unsigned document for deferred issuance. This method will store the document with the related to the issuance data. | -| [storeIssuedDocument](store-issued-document.md) | [androidJvm]
abstract fun [storeIssuedDocument](store-issued-document.md)(unsignedDocument: [UnsignedDocument](../-unsigned-document/index.md), issuerProvidedData: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)): [Outcome](../-outcome/index.md)<[IssuedDocument](../-issued-document/index.md)>
Store an issued document. This method will store the document with its issuer provided data. | +| Name | Summary | +|-----------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [createDocument](create-document.md) | [androidJvm]
abstract fun [createDocument](create-document.md)(format: [DocumentFormat](../../eu.europa.ec.eudi.wallet.document.format/-document-format/index.md), createSettings: [CreateDocumentSettings](../-create-document-settings/index.md), documentMetaData: [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)? = null): [Outcome](../-outcome/index.md)<[UnsignedDocument](../-unsigned-document/index.md)>
Create a new document. This method will create a new document with the given format and keys settings. If the document is successfully created, it will return an [UnsignedDocument](../-unsigned-document/index.md). This [UnsignedDocument](../-unsigned-document/index.md) contains the keys and the method to proof the ownership of the keys, that can be used with an issuer to retrieve the document's claims. After that the document can be stored using [storeIssuedDocument](store-issued-document.md) or [storeDeferredDocument](store-deferred-document.md). | +| [deleteDocumentById](delete-document-by-id.md) | [androidJvm]
abstract fun [deleteDocumentById](delete-document-by-id.md)(documentId: [DocumentId](../-document-id/index.md)): [Outcome](../-outcome/index.md)<[ProofOfDeletion](../-proof-of-deletion/index.md)?>
Delete a document by its identifier. | +| [getDocumentById](get-document-by-id.md) | [androidJvm]
abstract fun [getDocumentById](get-document-by-id.md)(documentId: [DocumentId](../-document-id/index.md)): [Document](../-document/index.md)?
Retrieve a document by its identifier. | +| [getDocuments](get-documents.md) | [androidJvm]
abstract fun [getDocuments](get-documents.md)(predicate: ([Document](../-document/index.md)) -> [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)? = null): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[Document](../-document/index.md)>
Retrieve all documents. | +| [getDocuments](../get-documents.md) | [androidJvm]
inline fun <[T](../get-documents.md) : [Document](../-document/index.md)> [DocumentManager](index.md).[getDocuments](../get-documents.md)(): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[T](../get-documents.md)>
DocumentManager Extension function that returns a list of documents of type [T](../get-documents.md). If [T](../get-documents.md) is [IssuedDocument](../-issued-document/index.md), then only [IssuedDocument](../-issued-document/index.md) will be returned. If [T](../get-documents.md) is [UnsignedDocument](../-unsigned-document/index.md), then only [UnsignedDocument](../-unsigned-document/index.md) will be returned, excluding [DeferredDocument](../-deferred-document/index.md). If [T](../get-documents.md) is [DeferredDocument](../-deferred-document/index.md), then only [DeferredDocument](../-deferred-document/index.md) will be returned. | +| [storeDeferredDocument](store-deferred-document.md) | [androidJvm]
abstract fun [storeDeferredDocument](store-deferred-document.md)(unsignedDocument: [UnsignedDocument](../-unsigned-document/index.md), relatedData: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)): [Outcome](../-outcome/index.md)<[DeferredDocument](../-deferred-document/index.md)>
Store an unsigned document for deferred issuance. This method will store the document with the related to the issuance data. | +| [storeIssuedDocument](store-issued-document.md) | [androidJvm]
abstract fun [storeIssuedDocument](store-issued-document.md)(unsignedDocument: [UnsignedDocument](../-unsigned-document/index.md), issuerProvidedData: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)): [Outcome](../-outcome/index.md)<[IssuedDocument](../-issued-document/index.md)>
Store an issued document. This method will store the document with its issuer provided data. | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document/index.md index b9e3a38..1035ce5 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document/index.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document/index.md @@ -25,6 +25,7 @@ Document interface representing a document | [isKeyInvalidated](is-key-invalidated.md) | [androidJvm]
open val [isKeyInvalidated](is-key-invalidated.md): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
whether the key is invalidated | | [keyAlias](key-alias.md) | [androidJvm]
abstract val [keyAlias](key-alias.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
the key alias | | [keyInfo](key-info.md) | [androidJvm]
open val [keyInfo](key-info.md): KeyInfo
the key info | +| [metadata](metadata.md) | [androidJvm]
abstract val [metadata](metadata.md): [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?
the document metadata | | [name](name.md) | [androidJvm]
abstract val [name](name.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
the document name | | [publicKeyCoseBytes](public-key-cose-bytes.md) | [androidJvm]
open val [publicKeyCoseBytes](public-key-cose-bytes.md): [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)
the public key cose bytes | | [secureArea](secure-area.md) | [androidJvm]
abstract val [secureArea](secure-area.md): SecureArea
the secure area | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document/metadata.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document/metadata.md new file mode 100644 index 0000000..688ee72 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-document/metadata.md @@ -0,0 +1,7 @@ +//[document-manager](../../../index.md)/[eu.europa.ec.eudi.wallet.document](../index.md)/[Document](index.md)/[metadata](metadata.md) + +# metadata + +[androidJvm]\ +abstract +val [metadata](metadata.md): [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)? diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-issued-document/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-issued-document/index.md index ab85733..5311dd0 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-issued-document/index.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-issued-document/index.md @@ -40,6 +40,7 @@ Represents an Issued Document | [issuerProvidedData](issuer-provided-data.md) | [androidJvm]
val [issuerProvidedData](issuer-provided-data.md): [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)
the issuer provided data | | [keyAlias](key-alias.md) | [androidJvm]
open override val [keyAlias](key-alias.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
the key alias | | [keyInfo](../-document/key-info.md) | [androidJvm]
open val [keyInfo](../-document/key-info.md): KeyInfo
the key info | +| [metadata](metadata.md) | [androidJvm]
open override val [metadata](metadata.md): [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?
the document metadata | | [name](name.md) | [androidJvm]
open override val [name](name.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
the document name | | [nameSpacedDataJSONObject](../name-spaced-data-j-s-o-n-object.md) | [androidJvm]
@get:[JvmName](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.jvm/-jvm-name/index.html)(name = "nameSpacedDataAsJSONObject")
val [IssuedDocument](index.md).[nameSpacedDataJSONObject](../name-spaced-data-j-s-o-n-object.md): [JSONObject](https://developer.android.com/reference/kotlin/org/json/JSONObject.html)
Extension function to convert [IssuedDocument](index.md)'s nameSpacedData to [JSONObject](https://developer.android.com/reference/kotlin/org/json/JSONObject.html) Applicable only when [IssuedDocument.data](data.md) is [MsoMdocData](../../eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/index.md) | | [publicKeyCoseBytes](../-document/public-key-cose-bytes.md) | [androidJvm]
open val [publicKeyCoseBytes](../-document/public-key-cose-bytes.md): [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)
the public key cose bytes | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-issued-document/metadata.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-issued-document/metadata.md new file mode 100644 index 0000000..c866206 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-issued-document/metadata.md @@ -0,0 +1,7 @@ +//[document-manager](../../../index.md)/[eu.europa.ec.eudi.wallet.document](../index.md)/[IssuedDocument](index.md)/[metadata](metadata.md) + +# metadata + +[androidJvm]\ +open override +val [metadata](metadata.md): [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)? diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/-unsigned-document.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/-unsigned-document.md index 5aaf745..9fc2975 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/-unsigned-document.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/-unsigned-document.md @@ -10,4 +10,5 @@ documentManagerId: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/ isCertified: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), keyAlias: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), secureArea: SecureArea, -createdAt: [Instant](https://developer.android.com/reference/kotlin/java/time/Instant.html)) +createdAt: [Instant](https://developer.android.com/reference/kotlin/java/time/Instant.html), +metadata: [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?) diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/index.md index da704dd..a03bef1 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/index.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/index.md @@ -10,7 +10,8 @@ documentManagerId: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/ val isCertified: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), val keyAlias: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val secureArea: SecureArea, val -createdAt: [Instant](https://developer.android.com/reference/kotlin/java/time/Instant.html)) : [Document](../-document/index.md) +createdAt: [Instant](https://developer.android.com/reference/kotlin/java/time/Instant.html), val +metadata: [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?) : [Document](../-document/index.md) Represents an unsigned document @@ -22,9 +23,9 @@ Represents an unsigned document ## Constructors -| | | -|-------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| [UnsignedDocument](-unsigned-document.md) | [androidJvm]
constructor(id: [DocumentId](../-document-id/index.md), name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), format: [DocumentFormat](../../eu.europa.ec.eudi.wallet.document.format/-document-format/index.md), documentManagerId: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), isCertified: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), keyAlias: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), secureArea: SecureArea, createdAt: [Instant](https://developer.android.com/reference/kotlin/java/time/Instant.html)) | +| | | +|-------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| [UnsignedDocument](-unsigned-document.md) | [androidJvm]
constructor(id: [DocumentId](../-document-id/index.md), name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), format: [DocumentFormat](../../eu.europa.ec.eudi.wallet.document.format/-document-format/index.md), documentManagerId: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), isCertified: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), keyAlias: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), secureArea: SecureArea, createdAt: [Instant](https://developer.android.com/reference/kotlin/java/time/Instant.html), metadata: [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?) | ## Properties @@ -38,6 +39,7 @@ Represents an unsigned document | [isKeyInvalidated](../-document/is-key-invalidated.md) | [androidJvm]
open val [isKeyInvalidated](../-document/is-key-invalidated.md): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
whether the key is invalidated | | [keyAlias](key-alias.md) | [androidJvm]
open override val [keyAlias](key-alias.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
the key alias | | [keyInfo](../-document/key-info.md) | [androidJvm]
open val [keyInfo](../-document/key-info.md): KeyInfo
the key info | +| [metadata](metadata.md) | [androidJvm]
open override val [metadata](metadata.md): [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?
the document metadata | | [name](name.md) | [androidJvm]
open override var [name](name.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
the document name | | [publicKeyCoseBytes](../-document/public-key-cose-bytes.md) | [androidJvm]
open val [publicKeyCoseBytes](../-document/public-key-cose-bytes.md): [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)
the public key cose bytes | | [secureArea](secure-area.md) | [androidJvm]
open override val [secureArea](secure-area.md): SecureArea
the secure area | diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/metadata.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/metadata.md new file mode 100644 index 0000000..b1eb9c8 --- /dev/null +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/metadata.md @@ -0,0 +1,7 @@ +//[document-manager](../../../index.md)/[eu.europa.ec.eudi.wallet.document](../index.md)/[UnsignedDocument](index.md)/[metadata](metadata.md) + +# metadata + +[androidJvm]\ +open override +val [metadata](metadata.md): [DocumentMetaData](../../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)? diff --git a/docs/document-manager/eu.europa.ec.eudi.wallet.document/index.md b/docs/document-manager/eu.europa.ec.eudi.wallet.document/index.md index 8488907..3372c40 100644 --- a/docs/document-manager/eu.europa.ec.eudi.wallet.document/index.md +++ b/docs/document-manager/eu.europa.ec.eudi.wallet.document/index.md @@ -8,7 +8,7 @@ |-----------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | [CreateDocumentSettings](-create-document-settings/index.md) | [androidJvm]
interface [CreateDocumentSettings](-create-document-settings/index.md)
Interface that defines the required settings when creating a document with [DocumentManager.createDocument](-document-manager/create-document.md). Implementors of [DocumentManager](-document-manager/index.md) may introduce custom requirements for creating a document. | | [CreateDocumentSettingsImpl](-create-document-settings-impl/index.md) | [androidJvm]
data class [CreateDocumentSettingsImpl](-create-document-settings-impl/index.md)(val secureAreaIdentifier: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val createKeySettings: CreateKeySettings) : [CreateDocumentSettings](-create-document-settings/index.md)
Implementation of [CreateDocumentSettings](-create-document-settings/index.md) | -| [DeferredDocument](-deferred-document/index.md) | [androidJvm]
class [DeferredDocument](-deferred-document/index.md)(val id: [DocumentId](-document-id/index.md), var name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val format: [DocumentFormat](../eu.europa.ec.eudi.wallet.document.format/-document-format/index.md), val documentManagerId: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val isCertified: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), val keyAlias: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val secureArea: SecureArea, val createdAt: [Instant](https://developer.android.com/reference/kotlin/java/time/Instant.html), val relatedData: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)) : [UnsignedDocument](-unsigned-document/index.md)
Represents a Deferred Document. A Deferred Document is also an [UnsignedDocument](-unsigned-document/index.md), since it is not yet signed by the issuer. | +| [DeferredDocument](-deferred-document/index.md) | [androidJvm]
class [DeferredDocument](-deferred-document/index.md)(val id: [DocumentId](-document-id/index.md), var name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val format: [DocumentFormat](../eu.europa.ec.eudi.wallet.document.format/-document-format/index.md), val documentManagerId: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val isCertified: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), val keyAlias: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val secureArea: SecureArea, val createdAt: [Instant](https://developer.android.com/reference/kotlin/java/time/Instant.html), documentMetaData: [DocumentMetaData](../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?, val relatedData: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)) : [UnsignedDocument](-unsigned-document/index.md)
Represents a Deferred Document. A Deferred Document is also an [UnsignedDocument](-unsigned-document/index.md), since it is not yet signed by the issuer. | | [DocType](-doc-type/index.md) | [androidJvm]
typealias [DocType](-doc-type/index.md) = [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | | [Document](-document/index.md) | [androidJvm]
sealed interface [Document](-document/index.md)
Document interface representing a document | | [DocumentId](-document-id/index.md) | [androidJvm]
typealias [DocumentId](-document-id/index.md) = [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | @@ -22,7 +22,7 @@ | [Outcome](-outcome/index.md) | [androidJvm]
class [Outcome](-outcome/index.md)<out [T](-outcome/index.md)>
Outcome for encapsulating success or failure of a computation for document manager operations. Wraps a [Result](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/index.html) instance to provide Java interop. | | [ProofOfDeletion](-proof-of-deletion/index.md) | [androidJvm]
typealias [ProofOfDeletion](-proof-of-deletion/index.md) = [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html) | | [SharedSecret](-shared-secret/index.md) | [androidJvm]
typealias [SharedSecret](-shared-secret/index.md) = [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html) | -| [UnsignedDocument](-unsigned-document/index.md) | [androidJvm]
open class [UnsignedDocument](-unsigned-document/index.md)(val id: [DocumentId](-document-id/index.md), var name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val format: [DocumentFormat](../eu.europa.ec.eudi.wallet.document.format/-document-format/index.md), val documentManagerId: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val isCertified: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), val keyAlias: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val secureArea: SecureArea, val createdAt: [Instant](https://developer.android.com/reference/kotlin/java/time/Instant.html)) : [Document](-document/index.md)
Represents an unsigned document | +| [UnsignedDocument](-unsigned-document/index.md) | [androidJvm]
open class [UnsignedDocument](-unsigned-document/index.md)(val id: [DocumentId](-document-id/index.md), var name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val format: [DocumentFormat](../eu.europa.ec.eudi.wallet.document.format/-document-format/index.md), val documentManagerId: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val isCertified: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), val keyAlias: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), val secureArea: SecureArea, val createdAt: [Instant](https://developer.android.com/reference/kotlin/java/time/Instant.html), val metadata: [DocumentMetaData](../eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md)?) : [Document](-document/index.md)
Represents an unsigned document | | [Vct](-vct/index.md) | [androidJvm]
typealias [Vct](-vct/index.md) = [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) | ## Properties diff --git a/docs/document-manager/package-list b/docs/document-manager/package-list index 88b8383..bc55436 100644 --- a/docs/document-manager/package-list +++ b/docs/document-manager/package-list @@ -3,24 +3,28 @@ $dokka.linkExtension:md $dokka.location:eu.europa.ec.eudi.wallet.document.format////PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/index.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/DocumentClaim///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-claim/index.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/DocumentClaim/identifier/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-claim/identifier.md +$dokka.location:eu.europa.ec.eudi.wallet.document.format/DocumentClaim/metadata/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-claim/metadata.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/DocumentClaim/rawValue/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-claim/raw-value.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/DocumentClaim/value/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-claim/value.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/DocumentData///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-data/index.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/DocumentData/claims/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-data/claims.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/DocumentData/format/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-data/format.md +$dokka.location:eu.europa.ec.eudi.wallet.document.format/DocumentData/metadata/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-data/metadata.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/DocumentFormat///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-document-format/index.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocClaim///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-claim/index.md -$dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocClaim/MsoMdocClaim/#kotlin.String#kotlin.String#kotlin.Any?#kotlin.ByteArray/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-claim/-mso-mdoc-claim.md +$dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocClaim/MsoMdocClaim/#kotlin.String#kotlin.String#kotlin.Any?#kotlin.ByteArray#eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim?/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-claim/-mso-mdoc-claim.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocClaim/identifier/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-claim/identifier.md +$dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocClaim/metadata/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-claim/metadata.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocClaim/nameSpace/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-claim/name-space.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocClaim/rawValue/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-claim/raw-value.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocClaim/value/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-claim/value.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocData///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/index.md -$dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocData/MsoMdocData/#eu.europa.ec.eudi.wallet.document.format.MsoMdocFormat#com.android.identity.document.NameSpacedData/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/-mso-mdoc-data.md +$dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocData/MsoMdocData/#eu.europa.ec.eudi.wallet.document.format.MsoMdocFormat#eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData?#com.android.identity.document.NameSpacedData/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/-mso-mdoc-data.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocData/claims/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/claims.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocData/equals/#kotlin.Any?/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/equals.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocData/format/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/format.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocData/hashCode/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/hash-code.md +$dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocData/metadata/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/metadata.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocData/nameSpacedData/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/name-spaced-data.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocData/nameSpacedDataDecoded/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/name-spaced-data-decoded.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocData/nameSpacedDataInBytes/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-data/name-spaced-data-in-bytes.md @@ -29,15 +33,17 @@ $dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocFormat///Pointin $dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocFormat/MsoMdocFormat/#kotlin.String/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-format/-mso-mdoc-format.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/MsoMdocFormat/docType/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-mso-mdoc-format/doc-type.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/SdJwtVcClaim///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-claim/index.md -$dokka.location:eu.europa.ec.eudi.wallet.document.format/SdJwtVcClaim/SdJwtVcClaim/#kotlin.String#kotlin.Any?#kotlin.String#kotlin.Boolean/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-claim/-sd-jwt-vc-claim.md +$dokka.location:eu.europa.ec.eudi.wallet.document.format/SdJwtVcClaim/SdJwtVcClaim/#kotlin.String#kotlin.Any?#kotlin.String#eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim?#kotlin.Boolean/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-claim/-sd-jwt-vc-claim.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/SdJwtVcClaim/identifier/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-claim/identifier.md +$dokka.location:eu.europa.ec.eudi.wallet.document.format/SdJwtVcClaim/metadata/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-claim/metadata.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/SdJwtVcClaim/rawValue/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-claim/raw-value.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/SdJwtVcClaim/selectivelyDisclosable/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-claim/selectively-disclosable.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/SdJwtVcClaim/value/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-claim/value.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/SdJwtVcData///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-data/index.md -$dokka.location:eu.europa.ec.eudi.wallet.document.format/SdJwtVcData/SdJwtVcData/#eu.europa.ec.eudi.wallet.document.format.SdJwtVcFormat#eu.europa.ec.eudi.sdjwt.SdJwt.Issuance[kotlin.Pair[kotlin.String,kotlin.collections.Map[kotlin.String,kotlinx.serialization.json.JsonElement]]]/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-data/-sd-jwt-vc-data.md +$dokka.location:eu.europa.ec.eudi.wallet.document.format/SdJwtVcData/SdJwtVcData/#eu.europa.ec.eudi.wallet.document.format.SdJwtVcFormat#eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData?#eu.europa.ec.eudi.sdjwt.SdJwt.Issuance[kotlin.Pair[kotlin.String,kotlin.collections.Map[kotlin.String,kotlinx.serialization.json.JsonElement]]]/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-data/-sd-jwt-vc-data.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/SdJwtVcData/claims/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-data/claims.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/SdJwtVcData/format/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-data/format.md +$dokka.location:eu.europa.ec.eudi.wallet.document.format/SdJwtVcData/metadata/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-data/metadata.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/SdJwtVcData/sdJwtVc/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-data/sd-jwt-vc.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/SdJwtVcFormat///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-format/index.md $dokka.location:eu.europa.ec.eudi.wallet.document.format/SdJwtVcFormat/SdJwtVcFormat/#kotlin.String/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.format/-sd-jwt-vc-format/-sd-jwt-vc-format.md @@ -49,6 +55,49 @@ $dokka.location:eu.europa.ec.eudi.wallet.document.internal/SdJwtVcCredential/SdJ $dokka.location:eu.europa.ec.eudi.wallet.document.internal/SdJwtVcCredential/SdJwtVcCredential/#com.android.identity.document.Document#com.android.identity.credential.Credential?#kotlin.String#com.android.identity.securearea.SecureArea#com.android.identity.securearea.CreateKeySettings#kotlin.String/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.internal/-sd-jwt-vc-credential/-sd-jwt-vc-credential.md $dokka.location:eu.europa.ec.eudi.wallet.document.internal/SdJwtVcCredential/addSerializedData/#com.android.identity.cbor.MapBuilder[com.android.identity.cbor.CborBuilder]/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.internal/-sd-jwt-vc-credential/add-serialized-data.md $dokka.location:eu.europa.ec.eudi.wallet.document.internal/SdJwtVcCredential/vct/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.internal/-sd-jwt-vc-credential/vct.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata////PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/index.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Claim.Display///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-display/index.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Claim.Display/Display/#kotlin.String?#java.util.Locale?/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-display/-display.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Claim.Display/locale/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-display/locale.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Claim.Display/name/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-display/name.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Claim.Name.MsoMdoc///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-mso-mdoc/index.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Claim.Name.MsoMdoc/MsoMdoc/#kotlin.String#kotlin.String/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-mso-mdoc/-mso-mdoc.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Claim.Name.MsoMdoc/name/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-mso-mdoc/name.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Claim.Name.MsoMdoc/nameSpace/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-mso-mdoc/name-space.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Claim.Name.SdJwtVc///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-sd-jwt-vc/index.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Claim.Name.SdJwtVc/SdJwtVc/#kotlin.String/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-sd-jwt-vc/-sd-jwt-vc.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Claim.Name.SdJwtVc/name/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/-sd-jwt-vc/name.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Claim.Name///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/index.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Claim.Name/name/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-name/name.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Claim///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/index.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Claim/Claim/#eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name#kotlin.Boolean?#kotlin.String?#kotlin.collections.List[eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Display]/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/-claim.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Claim/display/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/display.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Claim/mandatory/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/mandatory.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Claim/name/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/name.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Claim/valueType/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-claim/value-type.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Companion///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-companion/index.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Companion/Json/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-companion/-json.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Companion/fromJson/#kotlin.String/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-companion/from-json.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Display.Logo///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/-logo/index.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Display.Logo/Logo/#java.net.URI?#kotlin.String?/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/-logo/-logo.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Display.Logo/alternativeText/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/-logo/alternative-text.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Display.Logo/uri/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/-logo/uri.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Display///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/index.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Display/Display/#kotlin.String#java.util.Locale?#eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Display.Logo?#kotlin.String?#kotlin.String?#kotlin.String?/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/-display.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Display/backgroundColor/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/background-color.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Display/description/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/description.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Display/locale/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/locale.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Display/logo/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/logo.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Display/name/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/name.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData.Display/textColor/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-display/text-color.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/index.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData/DocumentMetaData/#kotlin.String#kotlin.collections.List[eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Display]#kotlin.collections.List[eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim]?#kotlin.String#kotlin.collections.List[eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Display]?/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/-document-meta-data.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData/claims/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/claims.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData/credentialIssuerIdentifier/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/credential-issuer-identifier.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData/display/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/display.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData/documentConfigurationIdentifier/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/document-configuration-identifier.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData/issuerDisplay/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/issuer-display.md +$dokka.location:eu.europa.ec.eudi.wallet.document.metadata/DocumentMetaData/toJson/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.metadata/-document-meta-data/to-json.md $dokka.location:eu.europa.ec.eudi.wallet.document.sample////PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.sample/index.md $dokka.location:eu.europa.ec.eudi.wallet.document.sample/SampleDocumentManager.Builder///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.sample/-sample-document-manager/-builder/index.md $dokka.location:eu.europa.ec.eudi.wallet.document.sample/SampleDocumentManager.Builder/Builder/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document.sample/-sample-document-manager/-builder/-builder.md @@ -76,7 +125,7 @@ $dokka.location:eu.europa.ec.eudi.wallet.document/CreateDocumentSettingsImpl/Cre $dokka.location:eu.europa.ec.eudi.wallet.document/CreateDocumentSettingsImpl/createKeySettings/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-create-document-settings-impl/create-key-settings.md $dokka.location:eu.europa.ec.eudi.wallet.document/CreateDocumentSettingsImpl/secureAreaIdentifier/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-create-document-settings-impl/secure-area-identifier.md $dokka.location:eu.europa.ec.eudi.wallet.document/DeferredDocument///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-deferred-document/index.md -$dokka.location:eu.europa.ec.eudi.wallet.document/DeferredDocument/DeferredDocument/#kotlin.String#kotlin.String#eu.europa.ec.eudi.wallet.document.format.DocumentFormat#kotlin.String#kotlin.Boolean#kotlin.String#com.android.identity.securearea.SecureArea#java.time.Instant#kotlin.ByteArray/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-deferred-document/-deferred-document.md +$dokka.location:eu.europa.ec.eudi.wallet.document/DeferredDocument/DeferredDocument/#kotlin.String#kotlin.String#eu.europa.ec.eudi.wallet.document.format.DocumentFormat#kotlin.String#kotlin.Boolean#kotlin.String#com.android.identity.securearea.SecureArea#java.time.Instant#eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData?#kotlin.ByteArray/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-deferred-document/-deferred-document.md $dokka.location:eu.europa.ec.eudi.wallet.document/DeferredDocument/relatedData/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-deferred-document/related-data.md $dokka.location:eu.europa.ec.eudi.wallet.document/DocType///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-doc-type/index.md $dokka.location:eu.europa.ec.eudi.wallet.document/Document///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document/index.md @@ -89,6 +138,7 @@ $dokka.location:eu.europa.ec.eudi.wallet.document/Document/isKeyInvalidated/#/Po $dokka.location:eu.europa.ec.eudi.wallet.document/Document/keyAgreement/#kotlin.ByteArray#com.android.identity.securearea.KeyUnlockData?/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document/key-agreement.md $dokka.location:eu.europa.ec.eudi.wallet.document/Document/keyAlias/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document/key-alias.md $dokka.location:eu.europa.ec.eudi.wallet.document/Document/keyInfo/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document/key-info.md +$dokka.location:eu.europa.ec.eudi.wallet.document/Document/metadata/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document/metadata.md $dokka.location:eu.europa.ec.eudi.wallet.document/Document/name/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document/name.md $dokka.location:eu.europa.ec.eudi.wallet.document/Document/publicKeyCoseBytes/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document/public-key-cose-bytes.md $dokka.location:eu.europa.ec.eudi.wallet.document/Document/secureArea/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document/secure-area.md @@ -107,7 +157,7 @@ $dokka.location:eu.europa.ec.eudi.wallet.document/DocumentManager.Builder/storag $dokka.location:eu.europa.ec.eudi.wallet.document/DocumentManager.Companion///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager/-companion/index.md $dokka.location:eu.europa.ec.eudi.wallet.document/DocumentManager.Companion/invoke/#kotlin.Function1[eu.europa.ec.eudi.wallet.document.DocumentManager.Builder,kotlin.Unit]/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager/-companion/invoke.md $dokka.location:eu.europa.ec.eudi.wallet.document/DocumentManager///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager/index.md -$dokka.location:eu.europa.ec.eudi.wallet.document/DocumentManager/createDocument/#eu.europa.ec.eudi.wallet.document.format.DocumentFormat#eu.europa.ec.eudi.wallet.document.CreateDocumentSettings/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager/create-document.md +$dokka.location:eu.europa.ec.eudi.wallet.document/DocumentManager/createDocument/#eu.europa.ec.eudi.wallet.document.format.DocumentFormat#eu.europa.ec.eudi.wallet.document.CreateDocumentSettings#eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData?/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager/create-document.md $dokka.location:eu.europa.ec.eudi.wallet.document/DocumentManager/deleteDocumentById/#kotlin.String/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager/delete-document-by-id.md $dokka.location:eu.europa.ec.eudi.wallet.document/DocumentManager/getDocumentById/#kotlin.String/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager/get-document-by-id.md $dokka.location:eu.europa.ec.eudi.wallet.document/DocumentManager/getDocuments/#kotlin.Function1[eu.europa.ec.eudi.wallet.document.Document,kotlin.Boolean]?/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager/get-documents.md @@ -119,7 +169,7 @@ $dokka.location:eu.europa.ec.eudi.wallet.document/DocumentManager/storeIssuedDoc $dokka.location:eu.europa.ec.eudi.wallet.document/DocumentManagerImpl.Companion///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager-impl/-companion/index.md $dokka.location:eu.europa.ec.eudi.wallet.document/DocumentManagerImpl///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager-impl/index.md $dokka.location:eu.europa.ec.eudi.wallet.document/DocumentManagerImpl/DocumentManagerImpl/#kotlin.String#com.android.identity.storage.StorageEngine#com.android.identity.securearea.SecureAreaRepository#kotlin.Function0[io.ktor.client.HttpClient]?/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager-impl/-document-manager-impl.md -$dokka.location:eu.europa.ec.eudi.wallet.document/DocumentManagerImpl/createDocument/#eu.europa.ec.eudi.wallet.document.format.DocumentFormat#eu.europa.ec.eudi.wallet.document.CreateDocumentSettings/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager-impl/create-document.md +$dokka.location:eu.europa.ec.eudi.wallet.document/DocumentManagerImpl/createDocument/#eu.europa.ec.eudi.wallet.document.format.DocumentFormat#eu.europa.ec.eudi.wallet.document.CreateDocumentSettings#eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData?/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager-impl/create-document.md $dokka.location:eu.europa.ec.eudi.wallet.document/DocumentManagerImpl/deleteDocumentById/#kotlin.String/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager-impl/delete-document-by-id.md $dokka.location:eu.europa.ec.eudi.wallet.document/DocumentManagerImpl/getDocumentById/#kotlin.String/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager-impl/get-document-by-id.md $dokka.location:eu.europa.ec.eudi.wallet.document/DocumentManagerImpl/getDocuments/#kotlin.Function1[eu.europa.ec.eudi.wallet.document.Document,kotlin.Boolean]?/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-document-manager-impl/get-documents.md @@ -144,6 +194,7 @@ $dokka.location:eu.europa.ec.eudi.wallet.document/IssuedDocument/isValidAt/#java $dokka.location:eu.europa.ec.eudi.wallet.document/IssuedDocument/issuedAt/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-issued-document/issued-at.md $dokka.location:eu.europa.ec.eudi.wallet.document/IssuedDocument/issuerProvidedData/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-issued-document/issuer-provided-data.md $dokka.location:eu.europa.ec.eudi.wallet.document/IssuedDocument/keyAlias/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-issued-document/key-alias.md +$dokka.location:eu.europa.ec.eudi.wallet.document/IssuedDocument/metadata/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-issued-document/metadata.md $dokka.location:eu.europa.ec.eudi.wallet.document/IssuedDocument/name/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-issued-document/name.md $dokka.location:eu.europa.ec.eudi.wallet.document/IssuedDocument/secureArea/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-issued-document/secure-area.md $dokka.location:eu.europa.ec.eudi.wallet.document/IssuedDocument/validFrom/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-issued-document/valid-from.md @@ -165,18 +216,20 @@ $dokka.location:eu.europa.ec.eudi.wallet.document/Outcome/toString/#/PointingToD $dokka.location:eu.europa.ec.eudi.wallet.document/ProofOfDeletion///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-proof-of-deletion/index.md $dokka.location:eu.europa.ec.eudi.wallet.document/SharedSecret///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-shared-secret/index.md $dokka.location:eu.europa.ec.eudi.wallet.document/UnsignedDocument///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/index.md -$dokka.location:eu.europa.ec.eudi.wallet.document/UnsignedDocument/UnsignedDocument/#kotlin.String#kotlin.String#eu.europa.ec.eudi.wallet.document.format.DocumentFormat#kotlin.String#kotlin.Boolean#kotlin.String#com.android.identity.securearea.SecureArea#java.time.Instant/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/-unsigned-document.md +$dokka.location:eu.europa.ec.eudi.wallet.document/UnsignedDocument/UnsignedDocument/#kotlin.String#kotlin.String#eu.europa.ec.eudi.wallet.document.format.DocumentFormat#kotlin.String#kotlin.Boolean#kotlin.String#com.android.identity.securearea.SecureArea#java.time.Instant#eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData?/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/-unsigned-document.md $dokka.location:eu.europa.ec.eudi.wallet.document/UnsignedDocument/createdAt/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/created-at.md $dokka.location:eu.europa.ec.eudi.wallet.document/UnsignedDocument/documentManagerId/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/document-manager-id.md $dokka.location:eu.europa.ec.eudi.wallet.document/UnsignedDocument/format/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/format.md $dokka.location:eu.europa.ec.eudi.wallet.document/UnsignedDocument/id/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/id.md $dokka.location:eu.europa.ec.eudi.wallet.document/UnsignedDocument/isCertified/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/is-certified.md $dokka.location:eu.europa.ec.eudi.wallet.document/UnsignedDocument/keyAlias/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/key-alias.md +$dokka.location:eu.europa.ec.eudi.wallet.document/UnsignedDocument/metadata/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/metadata.md $dokka.location:eu.europa.ec.eudi.wallet.document/UnsignedDocument/name/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/name.md $dokka.location:eu.europa.ec.eudi.wallet.document/UnsignedDocument/secureArea/#/PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-unsigned-document/secure-area.md $dokka.location:eu.europa.ec.eudi.wallet.document/Vct///PointingToDeclaration/document-manager/eu.europa.ec.eudi.wallet.document/-vct/index.md eu.europa.ec.eudi.wallet.document eu.europa.ec.eudi.wallet.document.format eu.europa.ec.eudi.wallet.document.internal +eu.europa.ec.eudi.wallet.document.metadata eu.europa.ec.eudi.wallet.document.sample diff --git a/docs/index.md b/docs/index.md index 90603f3..750facc 100644 --- a/docs/index.md +++ b/docs/index.md @@ -9,4 +9,5 @@ | [eu.europa.ec.eudi.wallet.document](document-manager/eu.europa.ec.eudi.wallet.document/index.md) | | [eu.europa.ec.eudi.wallet.document.format](document-manager/eu.europa.ec.eudi.wallet.document.format/index.md) | | [eu.europa.ec.eudi.wallet.document.internal](document-manager/eu.europa.ec.eudi.wallet.document.internal/index.md) | +| [eu.europa.ec.eudi.wallet.document.metadata](document-manager/eu.europa.ec.eudi.wallet.document.metadata/index.md) | | [eu.europa.ec.eudi.wallet.document.sample](document-manager/eu.europa.ec.eudi.wallet.document.sample/index.md) | diff --git a/document-manager/build.gradle.kts b/document-manager/build.gradle.kts index fc2439c..1e03c61 100644 --- a/document-manager/build.gradle.kts +++ b/document-manager/build.gradle.kts @@ -23,6 +23,7 @@ import com.vanniktech.maven.publish.AndroidMultiVariantLibrary import java.util.Locale plugins { + alias(libs.plugins.kotlin.serialization) alias(libs.plugins.android.library) alias(libs.plugins.kotlin.android) alias(libs.plugins.dokka) @@ -100,6 +101,7 @@ android { dependencies { + // Google identity api(libs.google.identity) { exclude(group = "org.bouncycastle") @@ -110,6 +112,7 @@ dependencies { implementation(libs.kotlinx.datetime) implementation(libs.kotlinx.io.core) implementation(libs.kotlinx.io.bytestring) + implementation(libs.kotlinx.serialization.json) // CBOR implementation(libs.cbor) diff --git a/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/DeferredDocument.kt b/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/DeferredDocument.kt index 4988a4c..ce13dcb 100644 --- a/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/DeferredDocument.kt +++ b/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/DeferredDocument.kt @@ -18,6 +18,7 @@ package eu.europa.ec.eudi.wallet.document import com.android.identity.securearea.SecureArea import eu.europa.ec.eudi.wallet.document.format.DocumentFormat +import eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData import java.time.Instant /** @@ -42,7 +43,8 @@ class DeferredDocument( keyAlias: String, secureArea: SecureArea, createdAt: Instant, - val relatedData: ByteArray + documentMetaData: DocumentMetaData?, + val relatedData: ByteArray, ) : UnsignedDocument( id = id, name = name, @@ -52,4 +54,5 @@ class DeferredDocument( keyAlias = keyAlias, secureArea = secureArea, createdAt = createdAt, + metadata = documentMetaData ) \ No newline at end of file diff --git a/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/Document.kt b/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/Document.kt index c7bc23e..7225903 100644 --- a/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/Document.kt +++ b/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/Document.kt @@ -24,6 +24,7 @@ import com.android.identity.securearea.SecureArea import eu.europa.ec.eudi.wallet.document.format.DocumentFormat import eu.europa.ec.eudi.wallet.document.internal.toCoseBytes import eu.europa.ec.eudi.wallet.document.internal.toEcPublicKey +import eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData import java.time.Instant /** @@ -39,6 +40,7 @@ import java.time.Instant * @property keyInfo the key info * @property publicKeyCoseBytes the public key cose bytes * @property isKeyInvalidated whether the key is invalidated + * @property metadata the document metadata */ sealed interface Document { val id: DocumentId @@ -59,6 +61,8 @@ sealed interface Document { val isKeyInvalidated: Boolean get() = secureArea.getKeyInvalidated(keyAlias) + val metadata: DocumentMetaData? + /** * Sign the data with the document key * diff --git a/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/DocumentManager.kt b/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/DocumentManager.kt index 6764ced..8ca3ce5 100644 --- a/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/DocumentManager.kt +++ b/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/DocumentManager.kt @@ -20,6 +20,7 @@ import com.android.identity.securearea.SecureArea import com.android.identity.securearea.SecureAreaRepository import com.android.identity.storage.StorageEngine import eu.europa.ec.eudi.wallet.document.format.DocumentFormat +import eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData /** * The DocumentManager interface is the main entry point to interact with documents. @@ -81,6 +82,7 @@ interface DocumentManager { fun createDocument( format: DocumentFormat, createSettings: CreateDocumentSettings, + documentMetaData: DocumentMetaData? = null ): Outcome /** diff --git a/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/DocumentManagerImpl.kt b/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/DocumentManagerImpl.kt index f700b65..4cce648 100644 --- a/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/DocumentManagerImpl.kt +++ b/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/DocumentManagerImpl.kt @@ -34,8 +34,10 @@ import eu.europa.ec.eudi.wallet.document.internal.deferredRelatedData import eu.europa.ec.eudi.wallet.document.internal.documentManagerId import eu.europa.ec.eudi.wallet.document.internal.documentName import eu.europa.ec.eudi.wallet.document.internal.issuedAt +import eu.europa.ec.eudi.wallet.document.internal.metadata import eu.europa.ec.eudi.wallet.document.internal.storeIssuedDocument import eu.europa.ec.eudi.wallet.document.internal.toDocument +import eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData import io.ktor.client.HttpClient import kotlinx.datetime.Clock import kotlinx.datetime.toJavaInstant @@ -59,7 +61,6 @@ class DocumentManagerImpl( override val secureAreaRepository: SecureAreaRepository, val ktorHttpClientFactory: (() -> HttpClient)? = null // TODO: list trusted certificates - ) : DocumentManager { @VisibleForTesting @@ -143,12 +144,14 @@ class DocumentManagerImpl( * to retrieve the document's claims. After that the document can be stored using [storeIssuedDocument] or [storeDeferredDocument]. * * @param format the format of the document - * @param createSettings the [SecureAreaCreateDocumentSettings] to use for the new document + * @param createSettings the [CreateDocumentSettings] to use for the new document + * @param documentMetaData the [DocumentMetaData] data regarding document display * @return the result of the creation. If successful, it will return the document. If not, it will return an error. */ override fun createDocument( format: DocumentFormat, - createSettings: CreateDocumentSettings + createSettings: CreateDocumentSettings, + documentMetaData: DocumentMetaData? ): Outcome { var documentId: String? = null return try { @@ -161,6 +164,8 @@ class DocumentManagerImpl( this.documentManagerId = identifier this.documentName = documentId this.createdAt = Clock.System.now().toJavaInstant() + this.metadata = documentMetaData + } when (format) { is MsoMdocFormat -> { diff --git a/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/IssuedDocument.kt b/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/IssuedDocument.kt index b4039d9..84ca89c 100644 --- a/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/IssuedDocument.kt +++ b/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/IssuedDocument.kt @@ -19,6 +19,7 @@ package eu.europa.ec.eudi.wallet.document import com.android.identity.securearea.SecureArea import eu.europa.ec.eudi.wallet.document.format.DocumentData import eu.europa.ec.eudi.wallet.document.format.DocumentFormat +import eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData import java.time.Instant /** @@ -31,6 +32,7 @@ import java.time.Instant * @property keyAlias the key alias * @property secureArea the secure area * @property createdAt the creation date + * @property metadata the document metadata * @property issuedAt the issuance date * @property issuerProvidedData the issuer provided data * @property data the document data (format specific) @@ -53,6 +55,9 @@ data class IssuedDocument( override val format: DocumentFormat get() = data.format + override val metadata: DocumentMetaData? + get() = data.metadata + /** * Check if the document is valid at a given time, based on the validFrom and validUntil fields * @param time the time to check @@ -74,6 +79,7 @@ data class IssuedDocument( if (keyAlias != other.keyAlias) return false if (secureArea != other.secureArea) return false if (createdAt != other.createdAt) return false + if (metadata != other.metadata) return false if (validFrom != other.validFrom) return false if (validUntil != other.validUntil) return false if (issuedAt != other.issuedAt) return false @@ -90,6 +96,7 @@ data class IssuedDocument( result = 31 * result + isCertified.hashCode() result = 31 * result + keyAlias.hashCode() result = 31 * result + secureArea.hashCode() + result = metadata?.let { 31 * result + it.hashCode() } ?: result result = 31 * result + createdAt.hashCode() result = 31 * result + validFrom.hashCode() result = 31 * result + validUntil.hashCode() diff --git a/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/UnsignedDocument.kt b/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/UnsignedDocument.kt index bb9783e..647d7c1 100644 --- a/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/UnsignedDocument.kt +++ b/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/UnsignedDocument.kt @@ -18,6 +18,7 @@ package eu.europa.ec.eudi.wallet.document import com.android.identity.securearea.SecureArea import eu.europa.ec.eudi.wallet.document.format.DocumentFormat +import eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData import java.time.Instant /** @@ -30,6 +31,7 @@ import java.time.Instant * @property keyAlias the key alias * @property secureArea the secure area * @property createdAt the creation date + * @property metadata the document metadata */ open class UnsignedDocument( override val id: DocumentId, @@ -40,4 +42,5 @@ open class UnsignedDocument( override val keyAlias: String, override val secureArea: SecureArea, override val createdAt: Instant, + override val metadata: DocumentMetaData? ) : Document \ No newline at end of file diff --git a/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/format/DocumentData.kt b/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/format/DocumentData.kt index be4062b..be2cb7c 100644 --- a/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/format/DocumentData.kt +++ b/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/format/DocumentData.kt @@ -24,16 +24,19 @@ import eu.europa.ec.eudi.wallet.document.NameSpacedValues import eu.europa.ec.eudi.wallet.document.NameSpaces import eu.europa.ec.eudi.wallet.document.internal.parse import eu.europa.ec.eudi.wallet.document.internal.toObject +import eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData import kotlinx.serialization.json.JsonElement /** * Represents the claims of a document. * @property format The format of the document. * @property claims The list of claims. + * @property metadata The metadata of the document. */ sealed interface DocumentData { val format: DocumentFormat val claims: List + val metadata: DocumentMetaData? } /** @@ -41,11 +44,13 @@ sealed interface DocumentData { * @property identifier The identifier of the claim. * @property value The value of the claim. * @property rawValue The raw value of the claim. + * @property metadata The metadata of the claim. */ sealed class DocumentClaim( open val identifier: String, open val value: Any?, - open val rawValue: Any? + open val rawValue: Any?, + open val metadata: DocumentMetaData.Claim? = null ) /** @@ -53,6 +58,7 @@ sealed class DocumentClaim( * @property format The MsoMdoc format containing the docType * @property nameSpacedData The name-spaced data. * @property claims The list of claims. + * @property metadata The metadata of the document. * @property nameSpacedDataInBytes The name-spaced data in bytes. * @property nameSpacedDataDecoded The name-spaced data decoded. * @property nameSpaces The name-spaces. @@ -60,17 +66,23 @@ sealed class DocumentClaim( */ data class MsoMdocData( override val format: MsoMdocFormat, + override val metadata: DocumentMetaData?, val nameSpacedData: NameSpacedData ) : DocumentData { override val claims: List get() = nameSpacedData.nameSpaceNames.flatMap { nameSpace -> nameSpacedData.getDataElementNames(nameSpace).map { identifier -> + val metadataClaimName = DocumentMetaData.Claim.Name.MsoMdoc( + nameSpace = nameSpace, + name = identifier + ) MsoMdocClaim( nameSpace = nameSpace, identifier = identifier, value = nameSpacedData.getDataElement(nameSpace, identifier).toObject(), - rawValue = nameSpacedData.getDataElement(nameSpace, identifier) + rawValue = nameSpacedData.getDataElement(nameSpace, identifier), + metadata = metadata?.claims?.find { it.name == metadataClaimName } ) } } @@ -113,23 +125,27 @@ data class MsoMdocData( * @property identifier The identifier of the claim. * @property value The value of the claim. * @property rawValue The raw value of the claim in bytes. + * @property metadata The metadata of the claim. */ data class MsoMdocClaim( val nameSpace: NameSpace, override val identifier: String, override val value: Any?, override val rawValue: ByteArray, -) : DocumentClaim(identifier, value, rawValue) + override val metadata: DocumentMetaData.Claim?, +) : DocumentClaim(identifier, value, rawValue, metadata) /** * Represents the claims of a document in the SdJwtVc format. * @property format The SdJwtVc format containing the vct * @property sdJwtVc The SdJwtVc. * @property claims The list of claims. + * @property metadata The metadata of the document. * */ data class SdJwtVcData( override val format: SdJwtVcFormat, + override val metadata: DocumentMetaData?, val sdJwtVc: SdJwt.Issuance>> ) : DocumentData { override val claims: List by lazy { @@ -144,11 +160,15 @@ data class SdJwtVcData( }.map { it.claim().first to it.claim().second } (nonSelectivelyDisclosable + selectivelyDisclosable).map { + val metadataClaimName = DocumentMetaData.Claim.Name.SdJwtVc( + name = it.first, + ) SdJwtVcClaim( identifier = it.first, value = it.second.parse(), rawValue = it.second.toString(), - selectivelyDisclosable = selectivelyDisclosable.contains(it) + selectivelyDisclosable = selectivelyDisclosable.contains(it), + metadata = metadata?.claims?.find { it.name == metadataClaimName } ) } } @@ -160,11 +180,12 @@ data class SdJwtVcData( * @property value The value of the claim. * @property rawValue The raw value of the claim. * @property selectivelyDisclosable Whether the claim is selectively disclosable. - * + * @property metadata The metadata of the claim. */ data class SdJwtVcClaim( override val identifier: String, override val value: Any?, override val rawValue: String, + override val metadata: DocumentMetaData.Claim?, val selectivelyDisclosable: Boolean -) : DocumentClaim(identifier, value, rawValue) \ No newline at end of file +) : DocumentClaim(identifier, value, rawValue, metadata) \ No newline at end of file diff --git a/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/internal/IdentityDocumentExtensions.kt b/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/internal/IdentityDocumentExtensions.kt index 6379839..01ea7a0 100644 --- a/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/internal/IdentityDocumentExtensions.kt +++ b/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/internal/IdentityDocumentExtensions.kt @@ -30,8 +30,11 @@ import eu.europa.ec.eudi.wallet.document.format.MsoMdocData import eu.europa.ec.eudi.wallet.document.format.MsoMdocFormat import eu.europa.ec.eudi.wallet.document.format.SdJwtVcData import eu.europa.ec.eudi.wallet.document.format.SdJwtVcFormat +import eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData import kotlinx.datetime.toJavaInstant +import kotlinx.serialization.SerializationException import java.time.Instant +import kotlin.jvm.Throws import com.android.identity.document.Document as IdentityDocument /** @@ -61,6 +64,37 @@ internal val IdentityDocument.state: DocumentState else -> DocumentState.UNSIGNED } +/** + * The metadata stored in applicationData under the key "metadata" + */ +internal var IdentityDocument.metadata: DocumentMetaData? + @JvmSynthetic + @Throws(IllegalArgumentException::class, SerializationException::class) + /** + * Get the metadata from applicationData under the key "metadata" + * @return the metadata or null if not found + * @throws IllegalArgumentException if the metadata is not valid json + * @throws SerializationException if the metadata fails to deserialize + */ + get() { + return try { + applicationData.getData("metadata") + } catch (_: Throwable) { + null + }?.let { DocumentMetaData.fromByteArray(it) } + } + @JvmSynthetic + @Throws(IllegalArgumentException::class, SerializationException::class) + /** + * Set the metadata in applicationData under the key "metadata" + * @param value the metadata to be set + * @throws IllegalArgumentException if the metadata is not valid json + * @throws SerializationException if the metadata fails to serialize + */ + set(value) { + applicationData.setData("metadata", value?.toByteArray()) + } + /** * The creation date of the document stored in applicationData */ @@ -177,6 +211,7 @@ internal inline fun IdentityDocument.toDocument(): D { documentManagerId = documentManagerId, isCertified = credential.isCertified, keyAlias = credential.alias, + metadata = metadata ) DocumentState.ISSUED -> IssuedDocument( @@ -194,13 +229,15 @@ internal inline fun IdentityDocument.toDocument(): D { data = when (documentFormat) { is MsoMdocFormat -> MsoMdocData( format = documentFormat, - nameSpacedData = nameSpacedData + nameSpacedData = nameSpacedData, + metadata = metadata, ) is SdJwtVcFormat -> SdJwtVcData( format = documentFormat, sdJwtVc = SdJwt.unverifiedIssuanceFrom(credential.issuerProvidedData.sdJwtVcString) - .getOrThrow() + .getOrThrow(), + metadata = metadata, ) } ) @@ -214,7 +251,8 @@ internal inline fun IdentityDocument.toDocument(): D { documentManagerId = documentManagerId, isCertified = credential.isCertified, keyAlias = credential.alias, - relatedData = deferredRelatedData + relatedData = deferredRelatedData, + documentMetaData = metadata ) } as D } diff --git a/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/internal/SerializationUtils.kt b/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/internal/SerializationUtils.kt new file mode 100644 index 0000000..2b1ff26 --- /dev/null +++ b/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/internal/SerializationUtils.kt @@ -0,0 +1,14 @@ +package eu.europa.ec.eudi.wallet.document.internal + +import kotlinx.serialization.json.Json + +@JvmSynthetic +internal inline fun ByteArray.toClassObject(): T? { + return try { + val jsonString = this.toString(Charsets.UTF_8) + Json.decodeFromString(jsonString) + } catch (e: Exception) { + e.printStackTrace() + null + } +} \ No newline at end of file diff --git a/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/metadata/DocumentMetaData.kt b/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/metadata/DocumentMetaData.kt new file mode 100644 index 0000000..b7e7d7f --- /dev/null +++ b/document-manager/src/main/java/eu/europa/ec/eudi/wallet/document/metadata/DocumentMetaData.kt @@ -0,0 +1,220 @@ +/* + * Copyright (c) 2024 European Commission + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package eu.europa.ec.eudi.wallet.document.metadata + +import eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Display +import eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc +import eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.SdJwtVc +import eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Display.Logo +import kotlinx.serialization.KSerializer +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.SerializationException +import kotlinx.serialization.descriptors.PrimitiveKind +import kotlinx.serialization.descriptors.PrimitiveSerialDescriptor +import kotlinx.serialization.descriptors.SerialDescriptor +import kotlinx.serialization.encoding.Decoder +import kotlinx.serialization.encoding.Encoder +import kotlinx.serialization.json.Json +import java.net.URI +import java.util.Locale + +/** + * Document metadata domain object for storage. + * @property documentConfigurationIdentifier the document configuration identifier + * @property display the display properties of the document + * @property claims metadata for the claims of the document + * @property credentialIssuerIdentifier the credential issuer identifier + * @property issuerDisplay the display properties of the issuer that issued the document + */ +@Serializable +data class DocumentMetaData( + val documentConfigurationIdentifier: String, + val display: List, + val claims: List?, + val credentialIssuerIdentifier: String, + val issuerDisplay: List? +) { + + /** + * Convert the object to a JSON string. + * @return the JSON string representation of the object + * @throws SerializationException if cannot be serialized to JSON. + */ + fun toJson(): String = Json.encodeToString(serializer(), this) + + /** + * Convert the object to a byte array of json string. + * @return the byte array representation of the object + * @see [toJson] + * @throws SerializationException if cannot be serialized to JSON. + */ + internal fun toByteArray(): ByteArray = toJson().toByteArray() + + companion object { + val Json = Json { + ignoreUnknownKeys = true + } + + /** + * Create a [DocumentMetaData] object from a JSON string. + * @param json the JSON string representation of the object + * @return the [DocumentMetaData] object + * @throws IllegalArgumentException if the decoded input cannot be represented as a valid instance of [DocumentMetaData] + * @throws SerializationException if the given JSON string is not a valid JSON input + */ + fun fromJson(json: String): DocumentMetaData = Json.decodeFromString(serializer(), json) + + /** + * Create a [DocumentMetaData] object from a byte array of json string. + * @param jsonByteArray the byte array representation of the object + * @return the [DocumentMetaData] object + * @see [fromJson] + * @throws IllegalArgumentException if the decoded input cannot be represented as a valid instance of [DocumentMetaData] + * @throws SerializationException if the given bytearray of JSON string is not a valid JSON input + */ + internal fun fromByteArray(jsonByteArray: ByteArray): DocumentMetaData = + fromJson(jsonByteArray.decodeToString()) + } + + /** + * Display properties of a supported credential type for a certain language. + * @property name the name of the document + * @property locale the locale of the current display + * @property logo the logo of the document + * @property description the description of the document + * @property backgroundColor the background color of the document + * @property textColor the text color of the document + * @see Logo + * @see Locale + */ + @Serializable + data class Display( + val name: String, + @Serializable(with = LocaleSerializer::class) + val locale: Locale? = null, + val logo: Logo? = null, + val description: String? = null, + val backgroundColor: String? = null, + val textColor: String? = null, + ) { + + /** + * Logo information. + * @property uri the URI of the logo + * @property alternativeText the alternative text of the logo + * @see URI + */ + @Serializable + data class Logo( + @Serializable(with = URISerializer::class) + val uri: URI? = null, + val alternativeText: String? = null, + ) + } + + /** + * Claim properties. + * @property mandatory whether the claim is mandatory + * @property valueType the value type of the claim + * @property display the display properties of the claim + * @see Display + */ + @Serializable + data class Claim( + @SerialName("name") val name: Name, + @SerialName("mandatory") val mandatory: Boolean? = false, + @SerialName("value_type") val valueType: String? = null, + @SerialName("display") val display: List = emptyList(), + ) { + + /** + * Claim name. + * @property name the name of the claim + * @see MsoMdoc + * @see SdJwtVc + */ + @Serializable + sealed interface Name { + val name: String + + /** + * MsoMdoc claim name. + * @property name the name of the claim + * @property nameSpace the namespace of the claim + */ + @Serializable + data class MsoMdoc( + override val name: String, + val nameSpace: String + ) : Name + + /** + * SdJwtVc claim name. + * @property name the name of the claim + */ + @Serializable + data class SdJwtVc( + override val name: String + ) : Name + } + + /** + * Display properties of a Claim. + * @property name the name of the claim + * @property locale the locale of the current display + * @see Locale + */ + @Serializable + data class Display( + @SerialName("name") val name: String? = null, + @Serializable(LocaleSerializer::class) + @SerialName("locale") val locale: Locale? = null, + ) + } +} + +/** + * Serializer for [Locale]. + */ +internal object LocaleSerializer : KSerializer { + + override val descriptor: SerialDescriptor = + PrimitiveSerialDescriptor("Locale", PrimitiveKind.STRING) + + override fun deserialize(decoder: Decoder): Locale = + Locale.forLanguageTag(decoder.decodeString()) + + override fun serialize(encoder: Encoder, value: Locale) = + encoder.encodeString(value.toString()) +} + +/** + * Serializer for [URI]. + */ +internal object URISerializer : KSerializer { + override val descriptor: SerialDescriptor = + PrimitiveSerialDescriptor("URI", PrimitiveKind.STRING) + + override fun serialize(encoder: Encoder, value: URI) { + encoder.encodeString(value.toString()) + } + + override fun deserialize(decoder: Decoder): URI { + return URI.create(decoder.decodeString()) + } +} \ No newline at end of file diff --git a/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/DocumentManagerBuilderTest.kt b/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/DocumentManagerBuilderTest.kt index 91ec53e..6e37793 100644 --- a/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/DocumentManagerBuilderTest.kt +++ b/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/DocumentManagerBuilderTest.kt @@ -30,7 +30,7 @@ class DocumentManagerBuilderTest { val storageEngine = EphemeralStorageEngine() val secureArea = SoftwareSecureArea(storageEngine) - + @Test fun `build should throw exception when identifier is not set`() { // Given diff --git a/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/DocumentManagerImplTest.kt b/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/DocumentManagerImplTest.kt index 25d35f5..b211db9 100644 --- a/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/DocumentManagerImplTest.kt +++ b/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/DocumentManagerImplTest.kt @@ -34,11 +34,22 @@ import com.android.identity.util.Constants import com.upokecenter.cbor.CBORObject import eu.europa.ec.eudi.wallet.document.format.MsoMdocData import eu.europa.ec.eudi.wallet.document.format.MsoMdocFormat +import eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData +import eu.europa.ec.eudi.wallet.document.mock_data.DocumentMetaDataMockData import io.mockk.every import io.mockk.mockk import org.junit.Assert import org.junit.Assert.assertThrows -import kotlin.test.* +import kotlin.test.AfterTest +import kotlin.test.BeforeTest +import kotlin.test.Test +import kotlin.test.assertEquals +import kotlin.test.assertFalse +import kotlin.test.assertIs +import kotlin.test.assertNotEquals +import kotlin.test.assertNotNull +import kotlin.test.assertNull +import kotlin.test.assertTrue class DocumentManagerImplTest { @@ -56,7 +67,7 @@ class DocumentManagerImplTest { documentManager = DocumentManagerImpl( identifier = "document_manager", storageEngine = EphemeralStorageEngine(), - secureAreaRepository = secureAreaRepository + secureAreaRepository = secureAreaRepository, ) } @@ -145,6 +156,59 @@ class DocumentManagerImplTest { assertIs(storeDocumentResult.exceptionOrNull()) } + @Test + fun `should not crash when documentMetaData is null`() { + // Given + val format = MsoMdocFormat(docType = "eu.europa.ec.eudi.pid.1") + val createSettings = + CreateDocumentSettings( + secureAreaIdentifier = secureArea.identifier, + createKeySettings = SoftwareCreateKeySettings.Builder().build() + ) + // When + val result = documentManager.createDocument( + format = format, + createSettings = createSettings, + documentMetaData = null + ) + + + // Then + val document = result.getOrThrow() + assertNull(document.metadata) + assertTrue(result.isSuccess) + } + + @Test + fun `Given mocked claims When Creating a document and retrieving it THEN it should have the correct document metadata`() { + // Given + val documentMetaDataMock: DocumentMetaData = DocumentMetaDataMockData.getData() + val documentManager = DocumentManagerImpl( + identifier = "document_manager_1", + secureAreaRepository = SecureAreaRepository().apply { + addImplementation(secureArea) + }, + storageEngine = storageEngine + ) + // When + val unsignedDocument = documentManager.createDocument( + format = MsoMdocFormat(docType = "eu.europa.ec.eudi.pid.1"), + createSettings = CreateDocumentSettings( + secureAreaIdentifier = secureArea.identifier, + createKeySettings = SoftwareCreateKeySettings.Builder().build() + ), + documentMetaData = documentMetaDataMock + ).getOrThrow() + + // Then + assertEquals(documentMetaDataMock, unsignedDocument.metadata) + + // Then + val document = documentManager.getDocumentById(unsignedDocument.id) + assertNotNull(document) + assertEquals(expected = documentMetaDataMock, actual = document.metadata) + } + @Test fun `should return failure result when document is not found when deleting document by id`() { val documentId = "some_document_id" diff --git a/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/IssuedDocumentExtensionsTest.kt b/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/IssuedDocumentExtensionsTest.kt index b6346a3..d25caa6 100644 --- a/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/IssuedDocumentExtensionsTest.kt +++ b/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/IssuedDocumentExtensionsTest.kt @@ -56,7 +56,11 @@ class TestIssuedDocumentExtensions { issuedAt = Clock.System.now().toJavaInstant(), validFrom = Clock.System.now().toJavaInstant(), validUntil = Clock.System.now().plus(10.days).toJavaInstant(), - data = MsoMdocData(format = mockk(), nameSpacedData = nameSpacedData), + data = MsoMdocData( + format = mockk(), + nameSpacedData = nameSpacedData, + metadata = mockk(relaxed = true) + ), issuerProvidedData = byteArrayOf(), ) diff --git a/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/IssuedDocumentTest.kt b/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/IssuedDocumentTest.kt new file mode 100644 index 0000000..17d5f96 --- /dev/null +++ b/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/IssuedDocumentTest.kt @@ -0,0 +1,112 @@ +/* + * Copyright (c) 2024 European Commission + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package eu.europa.ec.eudi.wallet.document + +import com.android.identity.securearea.SecureArea +import com.android.identity.securearea.SecureAreaRepository +import com.android.identity.securearea.software.SoftwareCreateKeySettings +import com.android.identity.securearea.software.SoftwareSecureArea +import com.android.identity.storage.EphemeralStorageEngine +import com.android.identity.storage.StorageEngine +import eu.europa.ec.eudi.wallet.document.format.MsoMdocData +import eu.europa.ec.eudi.wallet.document.format.MsoMdocFormat +import eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData +import kotlin.test.AfterTest +import kotlin.test.BeforeTest +import kotlin.test.Test +import kotlin.test.assertEquals +import kotlin.test.assertFalse +import kotlin.test.assertIs +import kotlin.test.assertTrue + +class IssuedDocumentTest { + lateinit var documentManager: DocumentManagerImpl + lateinit var storageEngine: StorageEngine + lateinit var secureArea: SecureArea + lateinit var secureAreaRepository: SecureAreaRepository + lateinit var issuedDocument: IssuedDocument + + @OptIn(ExperimentalStdlibApi::class) + @BeforeTest + fun setUp() { + storageEngine = EphemeralStorageEngine() + secureArea = SoftwareSecureArea(storageEngine) + secureAreaRepository = SecureAreaRepository() + .apply { addImplementation(secureArea) } + documentManager = DocumentManagerImpl( + identifier = "document_manager", + storageEngine = EphemeralStorageEngine(), + secureAreaRepository = secureAreaRepository, + ) + + val metadata = DocumentMetaData.fromJson(getResourceAsText("eu_pid_metadata.json")) + // set checkDevicePublicKey to false to avoid checking the MSO key + // since we are using fixed issuer data + documentManager.checkDevicePublicKey = false + val createKeySettings = SoftwareCreateKeySettings.Builder().build() + val createDocumentResult = documentManager.createDocument( + format = MsoMdocFormat(docType = "eu.europa.ec.eudi.pid.1"), + createSettings = CreateDocumentSettings( + secureAreaIdentifier = secureArea.identifier, + createKeySettings = createKeySettings + ), + documentMetaData = metadata + ) + assertTrue(createDocumentResult.isSuccess) + val unsignedDocument = createDocumentResult.getOrThrow() + assertFalse(unsignedDocument.isCertified) + + // change document name + unsignedDocument.name = "EU PID" + + assertIs(unsignedDocument.format) + val documentFormat = unsignedDocument.format as MsoMdocFormat + assertEquals("eu.europa.ec.eudi.pid.1", documentFormat.docType) + assertFalse(unsignedDocument.isKeyInvalidated) + assertEquals(documentManager.identifier, unsignedDocument.documentManagerId) + + val issuerData = getResourceAsText("eu_pid.hex").hexToByteArray(HexFormat.Default) + + val storeDocumentResult = documentManager.storeIssuedDocument(unsignedDocument, issuerData) + assertTrue(storeDocumentResult.isSuccess) + issuedDocument = storeDocumentResult.getOrThrow() + } + + @AfterTest + fun tearDown() { + storageEngine.deleteAll() + documentManager.getDocuments().forEach { documentManager.deleteDocumentById(it.id) } + } + + @Test + fun `assert metadata for claim is available`() { + assertTrue(issuedDocument.data.claims.any { it.metadata != null }) + + // pick given_name + + val givenName = (issuedDocument.data as MsoMdocData) + .claims + .first { it.nameSpace == "eu.europa.ec.eudi.pid.1" && it.identifier == "given_name" } + + assertTrue( + givenName.metadata?.name == DocumentMetaData.Claim.Name.MsoMdoc( + nameSpace = givenName.nameSpace, + name = givenName.identifier + ) + ) + } +} \ No newline at end of file diff --git a/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/SdJwtVcTest.kt b/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/SdJwtVcTest.kt index 8b333b9..9b736f9 100644 --- a/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/SdJwtVcTest.kt +++ b/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/SdJwtVcTest.kt @@ -80,10 +80,11 @@ class SdJwtVcTest { val parsedClaims = (nonSelectivelyDisclosable + selectivelyDisclosable).map { SdJwtVcClaim( - it.first.toStr(), - it.second.parse(), - it.second.toString(), - selectivelyDisclosable.contains(it) + identifier = it.first.toStr(), + value = it.second.parse(), + rawValue = it.second.toString(), + selectivelyDisclosable = selectivelyDisclosable.contains(it), + metadata = null ) } diff --git a/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/mock_data/DocumentMetaDataMockData.kt b/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/mock_data/DocumentMetaDataMockData.kt new file mode 100644 index 0000000..feaf01b --- /dev/null +++ b/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/mock_data/DocumentMetaDataMockData.kt @@ -0,0 +1,92 @@ +/* + * Copyright (c) 2024 European Commission + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package eu.europa.ec.eudi.wallet.document.mock_data + +import eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData +import java.net.URI +import java.util.Locale + +object DocumentMetaDataMockData { + + fun getData(): DocumentMetaData { + // Initialize displays + val displays = listOf( + DocumentMetaData.Display( + name = "Example Display", + locale = Locale.ENGLISH, + logo = DocumentMetaData.Display.Logo( + uri = URI.create("https://example.com/logo.png"), + alternativeText = "Example Logo" + ), + description = "This is a sample description", + backgroundColor = "#FFFFFF", + textColor = "#000000" + ) + ) + + // Create claims + val msoClaimName = DocumentMetaData.Claim.Name.MsoMdoc( + name = "MsoClaim", + nameSpace = "namespace.mso" + ) + val sdJwtClaimName = DocumentMetaData.Claim.Name.SdJwtVc( + name = "SdJwtClaim" + ) + + val claims: List = listOf( + DocumentMetaData.Claim( + name = msoClaimName, + mandatory = true, + valueType = "string", + display = listOf( + DocumentMetaData.Claim.Display( + name = "Mso Claim Display", + locale = Locale.ENGLISH + ) + ) + ), + DocumentMetaData.Claim( + name = sdJwtClaimName, + mandatory = false, + valueType = "integer", + display = listOf( + DocumentMetaData.Claim.Display( + name = "SdJwt Claim Display", + locale = Locale.FRENCH + ) + ) + ) + ) + + val issuerDisplay: List = listOf( + DocumentMetaData.Display( + name = "Greek Goverment", + locale = Locale.ENGLISH + ) + ) + + + // Create and return DocumentMetaData + return DocumentMetaData( + display = displays, + claims = claims, + issuerDisplay= issuerDisplay, + documentConfigurationIdentifier = "docId", + credentialIssuerIdentifier = "credId" + ) + } +} \ No newline at end of file diff --git a/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/sample/SampleDocumentManagerBuilderTest.kt b/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/sample/SampleDocumentManagerBuilderTest.kt index 8dcf4d5..c5dd7a8 100644 --- a/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/sample/SampleDocumentManagerBuilderTest.kt +++ b/document-manager/src/test/java/eu/europa/ec/eudi/wallet/document/sample/SampleDocumentManagerBuilderTest.kt @@ -16,8 +16,10 @@ package eu.europa.ec.eudi.wallet.document.sample +import com.android.identity.securearea.SecureArea import com.android.identity.securearea.software.SoftwareSecureArea import com.android.identity.storage.EphemeralStorageEngine +import com.android.identity.storage.StorageEngine import eu.europa.ec.eudi.wallet.document.DocumentManager import eu.europa.ec.eudi.wallet.document.DocumentManagerImpl import io.mockk.mockk @@ -29,6 +31,9 @@ import kotlin.test.assertSame class SampleDocumentManagerBuilderTest { + val storageEngineFixture: StorageEngine = EphemeralStorageEngine() + val secureAreaFixture: SecureArea = SoftwareSecureArea(storageEngineFixture) + @Test fun `build should throw exception when document manager is not set`() { // Given @@ -77,12 +82,10 @@ class SampleDocumentManagerBuilderTest { fun `verify that companion object build method returns SampleDocumentManagerImpl instance`() { // When - val storageEngine = EphemeralStorageEngine() - val secureArea = SoftwareSecureArea(storageEngine) val documentManager = SampleDocumentManager.build { setIdentifier("document_manager") - addSecureArea(secureArea) - setStorageEngine(storageEngine) + addSecureArea(secureAreaFixture) + setStorageEngine(storageEngineFixture) } // Then diff --git a/document-manager/src/test/resources/eu_pid_metadata.json b/document-manager/src/test/resources/eu_pid_metadata.json new file mode 100644 index 0000000..ba32ad9 --- /dev/null +++ b/document-manager/src/test/resources/eu_pid_metadata.json @@ -0,0 +1,466 @@ +{ + "claims": [ + { + "name": { + "name": "administrative_number", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Administrative Number" + } + ], + "mandatory": false + }, + { + "name": { + "name": "age_birth_year", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Age Year of Birth" + } + ], + "mandatory": false, + "value_type": "uint" + }, + { + "name": { + "name": "age_in_years", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Age in Years" + } + ], + "mandatory": false, + "value_type": "uint" + }, + { + "name": { + "name": "age_over_18", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Age Over 18" + } + ], + "mandatory": true, + "source": "issuer" + }, + { + "name": { + "name": "birth_city", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Birth City" + } + ], + "mandatory": false, + "source": "user", + "value_type": "string" + }, + { + "name": { + "name": "birth_country", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Birth Country" + } + ], + "mandatory": false, + "source": "user", + "value_type": "string" + }, + { + "name": { + "name": "birth_date", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Birth Date" + } + ], + "mandatory": true, + "source": "user", + "value_type": "full-date" + }, + { + "name": { + "name": "birth_place", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Birth Place" + } + ], + "mandatory": false, + "source": "user", + "value_type": "string" + }, + { + "name": { + "name": "birth_state", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Birth State/Province" + } + ], + "mandatory": false, + "source": "user", + "value_type": "string" + }, + { + "name": { + "name": "document_number", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Document Number" + } + ], + "mandatory": false + }, + { + "name": { + "name": "expiry_date", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Expiry Date" + } + ], + "mandatory": true, + "source": "issuer" + }, + { + "name": { + "name": "family_name", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Family Name(s)" + } + ], + "mandatory": true, + "source": "user", + "value_type": "string" + }, + { + "name": { + "name": "family_name_birth", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Birth Family Name(s)" + } + ], + "mandatory": false, + "source": "user", + "value_type": "string" + }, + { + "name": { + "name": "gender", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Gender" + } + ], + "mandatory": false, + "source": "user" + }, + { + "name": { + "name": "given_name", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Given Name(s)" + } + ], + "mandatory": true, + "source": "user", + "value_type": "string" + }, + { + "name": { + "name": "given_name_birth", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Birth Given Name(s)" + } + ], + "mandatory": false, + "source": "user", + "value_type": "string" + }, + { + "name": { + "name": "issuance_date", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Issuance Date" + } + ], + "mandatory": true, + "source": "issuer" + }, + { + "name": { + "name": "issuing_authority", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Issuance Authority" + } + ], + "mandatory": true, + "source": "issuer" + }, + { + "name": { + "name": "issuing_country", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Issuing Country" + } + ], + "mandatory": true, + "source": "issuer" + }, + { + "name": { + "name": "issuing_jurisdiction", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Issuing Jurisdiction" + } + ], + "mandatory": false + }, + { + "name": { + "name": "nationality", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Nationality" + } + ], + "mandatory": false, + "source": "user", + "value_type": "string" + }, + { + "name": { + "name": "portrait_capture_date", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Portrait Capture Date" + } + ], + "mandatory": false, + "source": "user" + }, + { + "name": { + "name": "resident_address", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Resident Address" + } + ], + "mandatory": false, + "source": "user", + "value_type": "string" + }, + { + "name": { + "name": "resident_city", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Resident City" + } + ], + "mandatory": false, + "source": "user", + "value_type": "string" + }, + { + "name": { + "name": "resident_country", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Resident Country" + } + ], + "mandatory": false, + "source": "user", + "value_type": "string" + }, + { + "name": { + "name": "resident_house_number", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Resident House Number" + } + ], + "mandatory": false, + "source": "user", + "value_type": "string" + }, + { + "name": { + "name": "resident_postal_code", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Resident Postal Code" + } + ], + "mandatory": false, + "source": "user", + "value_type": "string" + }, + { + "name": { + "name": "resident_state", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Resident State" + } + ], + "mandatory": false, + "source": "user", + "value_type": "string" + }, + { + "name": { + "name": "resident_street", + "nameSpace": "eu.europa.ec.eudi.pid.1", + "type": "eu.europa.ec.eudi.wallet.document.metadata.DocumentMetaData.Claim.Name.MsoMdoc" + }, + "display": [ + { + "locale": "en", + "name": "Resident Street" + } + ], + "mandatory": false, + "source": "user", + "value_type": "string" + } + ], + "display": [ + { + "locale": "en", + "logo": { + "alt_text": "A square figure of a PID", + "url": "https://examplestate.com/public/pid.png" + }, + "name": "PID" + } + ], + "documentConfigurationIdentifier": "eu.europa.ec.eudi.pid_mdoc", + "credentialIssuerIdentifier": "https://issuer.eudiw.dev", + "issuerDisplay": null +} \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 7ec68fe..9f1ce14 100644 --- a/gradle.properties +++ b/gradle.properties @@ -42,7 +42,7 @@ systemProp.sonar.host.url=https://sonarcloud.io systemProp.sonar.gradle.skipCompile=true systemProp.sonar.coverage.jacoco.xmlReportPaths=build/reports/jacoco/testDebugUnitTestCoverage/testDebugUnitTestCoverage.xml,build/reports/jacoco/testReleaseUnitTestCoverage/testReleaseUnitTestCoverage.xml systemProp.sonar.projectName=eudi-lib-android-wallet-document-manager -VERSION_NAME=0.7.0-SNAPSHOT +VERSION_NAME=0.7.1-SNAPSHOT SONATYPE_HOST=S01 SONATYPE_AUTOMATIC_RELEASE=false diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 39e6feb..ebdd3e5 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -14,6 +14,7 @@ json = "20240303" kotlin = "2.0.10" kotlinx-datetime = "0.6.0" kotlinx-io = "0.4.0" +kotlinx-serialization-json = "1.7.3" mavenPublish = "0.27.0" mockk = "1.13.5" sonarqube = "5.1.0.4882" @@ -33,6 +34,7 @@ json = { module = "org.json:json", version.ref = "json" } kotlinx-datetime = { group = "org.jetbrains.kotlinx", name = "kotlinx-datetime", version.ref = "kotlinx-datetime" } kotlinx-io-bytestring = { group = "org.jetbrains.kotlinx", name = "kotlinx-io-bytestring", version.ref = "kotlinx-io" } kotlinx-io-core = { group = "org.jetbrains.kotlinx", name = "kotlinx-io-core", version.ref = "kotlinx-io" } +kotlinx-serialization-json = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-json", version.ref = "kotlinx-serialization-json" } mockk = { module = "io.mockk:mockk", version.ref = "mockk" } nimbus-jose-jwt = { module = "com.nimbusds:nimbus-jose-jwt", version.ref = "nimbus" } ktor-client-core = { module = "io.ktor:ktor-client-core", version.ref = "ktor" } @@ -48,3 +50,4 @@ dokka = { id = "org.jetbrains.dokka", version.ref = "dokka" } kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" } maven-publish = { id = "com.vanniktech.maven.publish", version.ref = "mavenPublish" } sonarqube = { id = "org.sonarqube", version.ref = "sonarqube" } +kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" } diff --git a/licenses.md b/licenses.md index f623f70..4ca2a92 100644 --- a/licenses.md +++ b/licenses.md @@ -2,14 +2,14 @@ # EUDI wallet library for managing documents ## Dependency License Report -_2024-12-13 18:42:20 EET_ +_2024-12-17 14:41:07 EET_ ## Apache License, Version 2.0 -**1** **Group:** `com.android.identity` **Name:** `identity-mdoc` **Version:** `202408.1` +**1** **Group:** `com.android.identity` **Name:** `identity` **Version:** `202408.1` > - **POM License**: Apache License, Version 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0) -**2** **Group:** `com.android.identity` **Name:** `identity` **Version:** `202408.1` +**2** **Group:** `com.android.identity` **Name:** `identity-mdoc` **Version:** `202408.1` > - **POM License**: Apache License, Version 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0) **3** **Group:** `com.nimbusds` **Name:** `nimbus-jose-jwt` **Version:** `9.47` @@ -20,44 +20,71 @@ _2024-12-13 18:42:20 EET_ > - **POM License**: Apache License, Version 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0) -**4** **Group:** `org.jetbrains.kotlin` **Name:** `kotlin-stdlib` **Version:** `2.0.21` +**4** **Group:** `io.ktor` **Name:** `ktor-client-content-negotiation` **Version:** `2.3.6` +> - **POM Project URL**: [https://github.com/ktorio/ktor](https://github.com/ktorio/ktor) +> - **POM License**: Apache License, Version + 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0) + +**5** **Group:** `io.ktor` **Name:** `ktor-serialization-kotlinx-json` **Version:** `2.3.6` +> - **POM Project URL**: [https://github.com/ktorio/ktor](https://github.com/ktorio/ktor) +> - **POM License**: Apache License, Version + 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0) + +**6** **Group:** `io.ktor` **Name:** `ktor-client-serialization` **Version:** `2.3.6` +> - **POM Project URL**: [https://github.com/ktorio/ktor](https://github.com/ktorio/ktor) +> - **POM License**: Apache License, Version + 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0) + +**7** **Group:** `io.ktor` **Name:** `ktor-client-core` **Version:** `2.3.6` +> - **POM Project URL**: [https://github.com/ktorio/ktor](https://github.com/ktorio/ktor) +> - **POM License**: Apache License, Version + 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0) + +**8** **Group:** `org.jetbrains.kotlin` **Name:** `kotlin-stdlib` **Version:** `2.0.21` > - **POM Project URL**: [https://kotlinlang.org/](https://kotlinlang.org/) > - **POM License**: Apache License, Version 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0) -**5** **Group:** `org.jetbrains.kotlinx` **Name:** `kotlinx-datetime` **Version:** `0.6.0` +**9** **Group:** `org.jetbrains.kotlinx` **Name:** `kotlinx-datetime` **Version:** `0.6.0` > - **POM Project URL **: [https://github.com/Kotlin/kotlinx-datetime](https://github.com/Kotlin/kotlinx-datetime) > - **POM License**: Apache License, Version 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0) -**6** **Group:** `org.jetbrains.kotlinx` **Name:** `kotlinx-io-bytestring` **Version:** `0.4.0` +**10** **Group:** `org.jetbrains.kotlinx` **Name:** `kotlinx-io-core` **Version:** `0.4.0` > - **POM Project URL **: [https://github.com/Kotlin/kotlinx-io](https://github.com/Kotlin/kotlinx-io) > - **POM License**: Apache License, Version 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0) -**7** **Group:** `org.jetbrains.kotlinx` **Name:** `kotlinx-io-core` **Version:** `0.4.0` +**11** **Group:** `org.jetbrains.kotlinx` **Name:** `kotlinx-io-bytestring` **Version:** `0.4.0` > - **POM Project URL **: [https://github.com/Kotlin/kotlinx-io](https://github.com/Kotlin/kotlinx-io) +> - **POM License**: Apache License, Version + 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0) + +**12** **Group:** `org.jetbrains.kotlinx` **Name:** `kotlinx-serialization-json` **Version:** +`1.7.3` +> - **POM Project URL + **: [https://github.com/Kotlin/kotlinx.serialization](https://github.com/Kotlin/kotlinx.serialization) > - **POM License**: Apache License, Version 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0) ## BSD3 -**8** **Group:** `com.augustcellars.cose` **Name:** `cose-java` **Version:** `1.1.0` +**13** **Group:** `com.augustcellars.cose` **Name:** `cose-java` **Version:** `1.1.0` > - **POM Project URL**: [https://github.com/cose-wg/cose-java](https://github.com/cose-wg/cose-java) > - **POM License**: BSD3 - [https://github.com/jimsch/COSE-JAVA/blob/master/LICENSE](https://github.com/jimsch/COSE-JAVA/blob/master/LICENSE) ## Bouncy Castle Licence -**9** **Group:** `org.bouncycastle` **Name:** `bcpkix-jdk18on` **Version:** `1.78.1` +**14** **Group:** `org.bouncycastle` **Name:** `bcpkix-jdk18on` **Version:** `1.78.1` > - **POM Project URL**: [https://www.bouncycastle.org/java.html](https://www.bouncycastle.org/java.html) > - **POM License**: Bouncy Castle Licence - [https://www.bouncycastle.org/licence.html](https://www.bouncycastle.org/licence.html) -**10** **Group:** `org.bouncycastle` **Name:** `bcprov-jdk18on` **Version:** `1.78.1` +**15** **Group:** `org.bouncycastle` **Name:** `bcprov-jdk18on` **Version:** `1.78.1` > - **POM Project URL**: [https://www.bouncycastle.org/java.html](https://www.bouncycastle.org/java.html) > - **POM License**: Bouncy Castle Licence - [https://www.bouncycastle.org/licence.html](https://www.bouncycastle.org/licence.html) ## Creative Commons Legal Code -**11** **Group:** `com.upokecenter` **Name:** `cbor` **Version:** `4.5.2` +**16** **Group:** `com.upokecenter` **Name:** `cbor` **Version:** `4.5.2` > - **POM Project URL**: [https://github.com/peteroupc/CBOR-Java](https://github.com/peteroupc/CBOR-Java) > - **POM License**: Creative Commons Legal Code - [https://creativecommons.org/publicdomain/zero/1.0/legalcode](https://creativecommons.org/publicdomain/zero/1.0/legalcode)