diff --git a/packages/daf-core/src/entities/credential.ts b/packages/daf-core/src/entities/credential.ts index ddd2739ba..a52ed2119 100644 --- a/packages/daf-core/src/entities/credential.ts +++ b/packages/daf-core/src/entities/credential.ts @@ -83,9 +83,6 @@ export class Credential extends BaseEntity { @Column({ nullable: true }) expirationDate?: Date - @Column('simple-json', { nullable: true }) - credentialStatus?: object - @Column('simple-array') context: string[] diff --git a/packages/daf-core/src/graphql/graphql-core.ts b/packages/daf-core/src/graphql/graphql-core.ts index c69754dc1..21408be62 100644 --- a/packages/daf-core/src/graphql/graphql-core.ts +++ b/packages/daf-core/src/graphql/graphql-core.ts @@ -119,7 +119,10 @@ function decorateQB( if (input?.order) { for (const item of input.order) { - qb = qb.orderBy(`${qb.connection.driver.escape(tablename)}.${qb.connection.driver.escape(item.column)}`, item.direction) + qb = qb.orderBy( + `${qb.connection.driver.escape(tablename)}.${qb.connection.driver.escape(item.column)}`, + item.direction, + ) } } return qb @@ -234,9 +237,12 @@ const credentials = async (_: any, args: FindArgs, ctx: Context) => { if (ctx.authenticatedDid) { qb = qb.andWhere( new Brackets(qb => { - qb.where('credential.subject = :ident', { ident: ctx.authenticatedDid }).orWhere('credential.issuer = :ident', { - ident: ctx.authenticatedDid, - }) + qb.where('credential.subject = :ident', { ident: ctx.authenticatedDid }).orWhere( + 'credential.issuer = :ident', + { + ident: ctx.authenticatedDid, + }, + ) }), ) } @@ -255,9 +261,12 @@ const credentialsCount = async (_: any, args: FindArgs, ctx: Context) => { if (ctx.authenticatedDid) { qb = qb.andWhere( new Brackets(qb => { - qb.where('credential.subject = :ident', { ident: ctx.authenticatedDid }).orWhere('credential.issuer = :ident', { - ident: ctx.authenticatedDid, - }) + qb.where('credential.subject = :ident', { ident: ctx.authenticatedDid }).orWhere( + 'credential.issuer = :ident', + { + ident: ctx.authenticatedDid, + }, + ) }), ) } @@ -321,7 +330,7 @@ export const resolvers = { Query: { identity: async (_: any, { did }, ctx: Context) => - (checkAuthIdentity(did, ctx.authenticatedDid)) && + checkAuthIdentity(did, ctx.authenticatedDid) && (await ctx.agent.dbConnection).getRepository(Identity).findOne(did), identities: async (_: any, { input }, ctx: Context) => { if (ctx.authenticatedDid) { @@ -339,9 +348,12 @@ export const resolvers = { if (ctx.authenticatedDid) { qb = qb.andWhere( new Brackets(qb => { - qb.where('message.to = :ident', { ident: ctx.authenticatedDid }).orWhere('message.from = :ident', { - ident: ctx.authenticatedDid, - }) + qb.where('message.to = :ident', { ident: ctx.authenticatedDid }).orWhere( + 'message.from = :ident', + { + ident: ctx.authenticatedDid, + }, + ) }), ) } @@ -400,9 +412,12 @@ export const resolvers = { if (ctx.authenticatedDid) { qb = qb.andWhere( new Brackets(qb => { - qb.where('claim.subject = :ident', { ident: ctx.authenticatedDid }).orWhere('claim.issuer = :ident', { - ident: ctx.authenticatedDid, - }) + qb.where('claim.subject = :ident', { ident: ctx.authenticatedDid }).orWhere( + 'claim.issuer = :ident', + { + ident: ctx.authenticatedDid, + }, + ) }), ) } @@ -735,7 +750,6 @@ export const typeDefs = ` context: [String] type: [String] credentialSubject: Object - credentialStatus: Object claims: [Claim] presentations: [Presentation] messages: [Message] diff --git a/packages/daf-core/src/migrations/CredentialStatus1587985317000.ts b/packages/daf-core/src/migrations/CredentialStatus1587985317000.ts deleted file mode 100644 index 2577b176a..000000000 --- a/packages/daf-core/src/migrations/CredentialStatus1587985317000.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { MigrationInterface, QueryRunner } from 'typeorm' - -export class CredentialStatus1587985317000 implements MigrationInterface { - async up(queryRunner: QueryRunner): Promise { - const tableExists = await queryRunner.hasTable('credential') - if (tableExists) { - const columnExists = await queryRunner.hasColumn('credential', 'credentialStatus') - if (!columnExists) { - await queryRunner.query('ALTER TABLE credential ADD credentialStatus TEXT NULL') - } - } - } - - async down(queryRunner: QueryRunner): Promise { - const tableExists = await queryRunner.hasTable('credential') - if (tableExists) { - const columnExists = await queryRunner.hasColumn('credential', 'credentialStatus') - if (columnExists) { - await queryRunner.query('ALTER TABLE credential DROP credentialStatus') - } - } - } -} diff --git a/packages/daf-core/src/migrations/index.ts b/packages/daf-core/src/migrations/index.ts index 434202e4a..0d0cada0e 100644 --- a/packages/daf-core/src/migrations/index.ts +++ b/packages/daf-core/src/migrations/index.ts @@ -1,3 +1 @@ -import { CredentialStatus1587985317000 } from './CredentialStatus1587985317000' - -export const migrations = [CredentialStatus1587985317000] +export const migrations = [] diff --git a/packages/daf-w3c/src/__tests__/credentialStatus.test.ts b/packages/daf-w3c/src/__tests__/credentialStatus.test.ts index 11d931785..d019bacdb 100644 --- a/packages/daf-w3c/src/__tests__/credentialStatus.test.ts +++ b/packages/daf-w3c/src/__tests__/credentialStatus.test.ts @@ -1,7 +1,8 @@ import { W3cActionHandler, ActionTypes, ActionSignW3cVc } from '../index' -import { SimpleSigner } from 'did-jwt' +import { SimpleSigner, decodeJWT } from 'did-jwt' import { Resolver } from 'did-resolver' import { ActionSignW3cVp } from '../action-handler' +import { Credential } from 'daf-core' const privateKey = 'a285ab66393c5fdda46d6fbad9e27fafd438254ab72ad5acb681a0e9f20f5d7b' const signerAddress = '0x2036c6cd85692f0fb2c26e6c6b2eced9e4478dfd' @@ -92,7 +93,7 @@ describe('daf-w3c', () => { }, } - let result = await actionHandler.handleAction( + let result: Credential = await actionHandler.handleAction( { type: ActionTypes.signCredentialJwt, data, @@ -100,6 +101,8 @@ describe('daf-w3c', () => { mockAgent as any, ) - expect(result.credentialStatus).toMatchObject({ type: 'TestStatusMethod', id: 'local' }) + const decoded = decodeJWT(result.raw) + + expect(decoded.payload.credentialStatus).toMatchObject({ type: 'TestStatusMethod', id: 'local' }) }) }) diff --git a/packages/daf-w3c/src/__tests__/message-handler.test.ts b/packages/daf-w3c/src/__tests__/message-handler.test.ts index d0a1b52f2..2db4e5139 100644 --- a/packages/daf-w3c/src/__tests__/message-handler.test.ts +++ b/packages/daf-w3c/src/__tests__/message-handler.test.ts @@ -136,6 +136,5 @@ describe('daf-w3c', () => { expect(handled.type).toEqual(MessageTypes.vc) expect(handled.from.did).toEqual('did:ethr:0x54d59e3ffd76917f62db702ac354b17f3842955e') expect(handled.to.did).toEqual('did:web:uport.me') - expect(handled.credentials[0].credentialStatus).toEqual(message.data['credentialStatus']) }) }) diff --git a/packages/daf-w3c/src/message-handler.ts b/packages/daf-w3c/src/message-handler.ts index 2916ceb71..c52a2bf83 100644 --- a/packages/daf-w3c/src/message-handler.ts +++ b/packages/daf-w3c/src/message-handler.ts @@ -106,10 +106,6 @@ export function createCredential(payload: VerifiableCredentialPayload, jwt: stri vc.expirationDate = timestampToDate(payload.exp) } - if (payload.credentialStatus) { - vc.credentialStatus = payload.credentialStatus - } - vc.context = payload.vc['@context'] vc.type = payload.vc.type