diff --git a/.github/workflows/docs-ci.yml b/.github/workflows/docs-ci.yml index 6d2d308c8..efc4f3e81 100644 --- a/.github/workflows/docs-ci.yml +++ b/.github/workflows/docs-ci.yml @@ -36,7 +36,7 @@ jobs: with: token: ${{ secrets.GITHUB_TOKEN }} report_changed_scope_only: false - fail_on_error: false + fail_on_error: true group_docs: true entry_points: | - file: packages/api/src/index.ts diff --git a/packages/api/src/record.ts b/packages/api/src/record.ts index 9358ddf8a..70342f93e 100644 --- a/packages/api/src/record.ts +++ b/packages/api/src/record.ts @@ -250,6 +250,7 @@ export class Record implements RecordModel { /** Record's published status (true/false) */ get published() { return this._descriptor.published; } + /** Tags of the record */ get tags() { return this._descriptor.tags; } /** diff --git a/packages/credentials/src/verifiable-credential.ts b/packages/credentials/src/verifiable-credential.ts index b7722a7db..46e382ac0 100644 --- a/packages/credentials/src/verifiable-credential.ts +++ b/packages/credentials/src/verifiable-credential.ts @@ -23,7 +23,9 @@ export type VcDataModel = ICredential; * A credential schema defines the structure and content of the data, enabling verifiers to assess if the data adheres to the established schema. */ export type CredentialSchema = { + /** Credential schema ID */ id: string; + /** Credential schema type */ type: string; }; diff --git a/packages/crypto-aws-kms/src/ecdsa.ts b/packages/crypto-aws-kms/src/ecdsa.ts index 055545911..b3a9c81f8 100644 --- a/packages/crypto-aws-kms/src/ecdsa.ts +++ b/packages/crypto-aws-kms/src/ecdsa.ts @@ -47,6 +47,9 @@ export interface EcdsaSignParams extends KmsSignParams { algorithm: 'ES256K'; } +/** + * The `EcdsaAlgorithm` class is an implementation of the `KeyGenerator` and `Signer` interfaces for the ECDSA algorithm. + */ export class EcdsaAlgorithm implements KeyGenerator, Signer { @@ -163,7 +166,7 @@ export class EcdsaAlgorithm implements * Note: The signature returned is normalized to low-S to prevent signature malleability. This * ensures that the signature can be verified by other libraries that enforce strict verification. * More information on signature malleability can be found - * {@link @web5/crypto#Secp256k1.adjustSignatureToLowS | here}. + * {@link https://tbd54566975.github.io/web5-js/classes/_web5_crypto.Secp256k1.html#adjustSignatureToLowS | here}. * * @example * ```ts diff --git a/packages/crypto-aws-kms/src/key-manager.ts b/packages/crypto-aws-kms/src/key-manager.ts index 95bf054d0..cd91997ab 100644 --- a/packages/crypto-aws-kms/src/key-manager.ts +++ b/packages/crypto-aws-kms/src/key-manager.ts @@ -97,6 +97,9 @@ export interface AwsKeyManagerGenerateKeyParams extends KmsGenerateKeyParams { algorithm: 'ES256K'; } +/** + * The `AwsKeyManager` class is an implementation of the `CryptoApi` interface tailored for AWS KMS. + */ export class AwsKeyManager implements CryptoApi { /** * A private map that stores instances of cryptographic algorithm implementations. Each key in diff --git a/packages/crypto-aws-kms/src/utils.ts b/packages/crypto-aws-kms/src/utils.ts index 89c5f406b..aa2c5b26f 100644 --- a/packages/crypto-aws-kms/src/utils.ts +++ b/packages/crypto-aws-kms/src/utils.ts @@ -94,12 +94,19 @@ export async function createKeyAlias({ alias, awsKeyId, kmsClient }: { ); } +/** + * Gets the key specification of the key specified. + * + * @param params - The parameters for getting the key specification. + * @param params.keyUri - URI of the key. + * @param params.kmsClient - The Key Management Service client to use. + */ export async function getKeySpec({ keyUri, kmsClient }: { keyUri: KeyIdentifier; kmsClient: KMSClient; }): Promise { // If the key URI is a JWK URI, prepend the AWS-required "alias/" prefix and replace the URN - // namespace separator with hyphens to accomodate AWS KMS key alias character restrictions. + // namespace separator with hyphens to accommodate AWS KMS key alias character restrictions. const awsKeyId = keyUri.replace('urn:jwk:', 'alias/urn-jwk-'); // Send the request to retrieve detailed key information to AWS KMS.