Skip to content

Commit

Permalink
Show Recent Mints in Claim Modal (#92)
Browse files Browse the repository at this point in the history
* Set claimIds based on which gitpoaps have been claimed

* Add status to claim modal story

* add explanatory comment
  • Loading branch information
aldolamb committed May 11, 2023
1 parent fc8b4fe commit 185e3f8
Show file tree
Hide file tree
Showing 4 changed files with 22 additions and 3 deletions.
16 changes: 14 additions & 2 deletions src/components/github/GitHub.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import React, { useCallback, useState } from 'react';
import React, { useCallback, useEffect, useState } from 'react';
import styled from 'styled-components';
import { rem } from 'polished';
import { GoMarkGithub } from 'react-icons/go';
Expand All @@ -13,7 +13,7 @@ import { showNotification } from '@mantine/notifications';
import { NotificationFactory } from '../../notifications';
import { DisconnectPopover } from '../DisconnectPopover';
import { useClaimModalContext } from '../ClaimModal/ClaimModalContext';
import { useOpenClaimsQuery } from '../../graphql/generated-gql';
import { ClaimStatus, useOpenClaimsQuery } from '../../graphql/generated-gql';

const Content = styled.div`
display: flex;
Expand Down Expand Up @@ -49,6 +49,18 @@ export const GitHub = ({ className }: Props) => {

const userClaims = result.data?.userClaims;

// useOpenClaimsQuery includes all claimed GitPOAPs from the previous month
// This side effect adds the ids of those claimed GitPOAPs to the claimedIds list
useEffect(() => {
if (userClaims) {
setClaimedIds(
userClaims
.filter((userClaim) => userClaim.claim.status === ClaimStatus.Claimed)
.map((userClaim) => userClaim.claim.id),
);
}
}, [userClaims]);

const renderGitHubButton = useCallback(() => {
/* Not connected to GitHub */
if (!isLoggedIntoGitHub) {
Expand Down
2 changes: 2 additions & 0 deletions src/graphql/generated-gql.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -3753,6 +3753,7 @@ export type OpenClaimsQuery = {
claim: {
__typename?: 'Claim';
id: number;
status: ClaimStatus;
pullRequestEarned?: {
__typename?: 'GithubPullRequest';
repo: {
Expand Down Expand Up @@ -4575,6 +4576,7 @@ export const OpenClaimsDocument = gql`
}
}
}
status
gitPOAP {
id
}
Expand Down
1 change: 1 addition & 0 deletions src/graphql/operations.graphql
Original file line number Diff line number Diff line change
Expand Up @@ -168,6 +168,7 @@ query openClaims($githubId: Float!) {
}
}
}
status
gitPOAP {
id
}
Expand Down
6 changes: 5 additions & 1 deletion src/stories/modals/ClaimModal.stories.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import badgeImg1 from '../assets/gitPOAPs/badge1.png';
import badgeImg2 from '../assets/gitPOAPs/badge2.png';
import badgeImg3 from '../assets/gitPOAPs/badge3.png';
import badgeImg4 from '../assets/gitPOAPs/badge4.png';
import { OpenClaimsQuery } from '../../graphql/generated-gql';
import { ClaimStatus, OpenClaimsQuery } from '../../graphql/generated-gql';

type UserClaim = Exclude<OpenClaimsQuery['userClaims'], null | undefined>[number];
const claims: UserClaim[] = [
Expand All @@ -20,6 +20,7 @@ const claims: UserClaim[] = [
},
},
},
status: ClaimStatus.Unclaimed,
gitPOAP: {
id: 1,
},
Expand All @@ -41,6 +42,7 @@ const claims: UserClaim[] = [
},
},
},
status: ClaimStatus.Unclaimed,
gitPOAP: {
id: 2,
},
Expand All @@ -62,6 +64,7 @@ const claims: UserClaim[] = [
},
},
},
status: ClaimStatus.Claimed,
gitPOAP: {
id: 3,
},
Expand All @@ -83,6 +86,7 @@ const claims: UserClaim[] = [
},
},
},
status: ClaimStatus.Unclaimed,
gitPOAP: {
id: 4,
},
Expand Down

0 comments on commit 185e3f8

Please sign in to comment.