Browse Source

fix: resolve type compatibility in offerGiverDid

- Update offerGiverDid to use GenericVerifiableCredential as base type
- Add type assertion for OfferVerifiableCredential inside function
- Remove unnecessary type assertion in canFulfillOffer
pull/137/head
Matthew Raymer 2 weeks ago
parent
commit
068662625d
  1. 2
      src/libs/endorserServer.ts
  2. 11
      src/libs/util.ts

2
src/libs/endorserServer.ts

@ -114,7 +114,7 @@ export const BLANK_GENERIC_SERVER_RECORD: GenericCredWrapper<GenericVerifiableCr
id: "", id: "",
issuedAt: "", issuedAt: "",
issuer: "", issuer: "",
}; };
// This is used to check for hidden info. // This is used to check for hidden info.
// See https://github.com/trentlarson/endorser-ch/blob/0cb626f803028e7d9c67f095858a9fc8542e3dbd/server/api/services/util.js#L6 // See https://github.com/trentlarson/endorser-ch/blob/0cb626f803028e7d9c67f095858a9fc8542e3dbd/server/api/services/util.js#L6

11
src/libs/util.ts

@ -384,14 +384,15 @@ export function base64ToBlob(base64DataUrl: string, sliceSize = 512) {
* @param veriClaim is expected to have fields: claim and issuer * @param veriClaim is expected to have fields: claim and issuer
*/ */
export function offerGiverDid( export function offerGiverDid(
veriClaim: GenericCredWrapper<OfferVerifiableCredential>, veriClaim: GenericCredWrapper<GenericVerifiableCredential>,
): string | undefined { ): string | undefined {
let giver; let giver;
const claim = veriClaim.claim as OfferVerifiableCredential;
if ( if (
veriClaim.claim.offeredBy?.identifier && claim.offeredBy?.identifier &&
!serverUtil.isHiddenDid(veriClaim.claim.offeredBy.identifier as string) !serverUtil.isHiddenDid(claim.offeredBy.identifier as string)
) { ) {
giver = veriClaim.claim.offeredBy.identifier; giver = claim.offeredBy.identifier;
} else if (veriClaim.issuer && !serverUtil.isHiddenDid(veriClaim.issuer)) { } else if (veriClaim.issuer && !serverUtil.isHiddenDid(veriClaim.issuer)) {
giver = veriClaim.issuer; giver = veriClaim.issuer;
} }
@ -407,7 +408,7 @@ export const canFulfillOffer = (
) => { ) => {
return ( return (
veriClaim.claimType === "Offer" && veriClaim.claimType === "Offer" &&
!!offerGiverDid(veriClaim as GenericCredWrapper<OfferVerifiableCredential>) !!offerGiverDid(veriClaim)
); );
}; };

Loading…
Cancel
Save