Skip to content

Commit

Permalink
Merge pull request #1108 from multiversx/MEX-329
Browse files Browse the repository at this point in the history
MEX-329: fix and add filters
  • Loading branch information
dragos-rebegea authored Jul 19, 2023
2 parents 4d1d0c0 + 2881edb commit a34b340
Show file tree
Hide file tree
Showing 4 changed files with 16 additions and 5 deletions.
2 changes: 1 addition & 1 deletion src/config/devnet.json
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@
"escrow": "erd1qqqqqqqqqqqqqpgqz0wkk0j6y4h0mcxfxsg023j4x5sfgrmz0n4s4swp7a",
"governance": {
"energy": [
"erd1qqqqqqqqqqqqqpgqu5u5kgmjm067dhwdfe4l3flwmadm2nqlczfskufug3"
"erd1qqqqqqqqqqqqqpgqmufzvsm3mncnpsawj0ypyzj2d9xl9xkvczfsmkxn5y"
],
"token": []
}
Expand Down
15 changes: 12 additions & 3 deletions src/modules/governance/governance.energy.contract.resolver.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Parent, ResolveField, Resolver } from '@nestjs/graphql';
import { Args, Int, Parent, ResolveField, Resolver } from '@nestjs/graphql';
import { GovernanceAbiService } from './services/governance.abi.service';
import { GovernanceEnergyContract } from './models/energy.contract.model';
import { GovernanceProposal } from './models/governance.proposal.model';
Expand Down Expand Up @@ -49,8 +49,17 @@ export class GovernanceEnergyContractResolver {
}

@ResolveField(() => [GovernanceProposal])
async proposals(@Parent() energyContract: GovernanceEnergyContract): Promise<GovernanceProposal[]> {
return this.governanceAbi.proposals(energyContract.address);
async proposals(
@Parent() energyContract: GovernanceEnergyContract,
@Args('proposalId', {type: ()=> Int, nullable: true}) proposalId?: number
): Promise<GovernanceProposal[]> {
const proposals = await this.governanceAbi.proposals(energyContract.address);

if(proposalId) {
return proposals.filter(proposal => proposal.proposalId === proposalId);
} else {
return proposals;
}
}

@ResolveField()
Expand Down
2 changes: 2 additions & 0 deletions src/modules/governance/models/governance.proposal.model.ts
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@ export class Description {
hash: string;
@Field(() => Int)
strapiId: number;
@Field(() => Int)
version: number;

constructor(init: Partial<Description>) {
Object.assign(this, init);
Expand Down
2 changes: 1 addition & 1 deletion src/modules/governance/services/governance.service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ export class GovernanceService {
let governanceAddresses = governanceContractsAddresses();

if (filters.contracts) {
governanceAddresses = governanceAddresses.filter((address) => !filters.contracts.includes(address));
governanceAddresses = governanceAddresses.filter((address) => filters.contracts.includes(address));
}

const governance: GovernanceEnergyContract[] = [];
Expand Down

0 comments on commit a34b340

Please sign in to comment.