From 6589f7efd2a0fbe40cb591a616ce8696b1338de1 Mon Sep 17 00:00:00 2001 From: epiqueras Date: Tue, 15 Sep 2020 20:28:21 -0400 Subject: [PATCH] chore: implement reapply flow --- _pages/profile/[id]/index.js | 7 +++++-- .../submission-details-card/deadlines/index.js | 17 +++++++++++++---- _pages/profile/[id]/submit-profile-card.js | 7 +++++-- components/relay-provider.js | 2 +- components/theme-provider.js | 4 ++-- 5 files changed, 26 insertions(+), 11 deletions(-) diff --git a/_pages/profile/[id]/index.js b/_pages/profile/[id]/index.js index 6cb0b8f8..632d0586 100644 --- a/_pages/profile/[id]/index.js +++ b/_pages/profile/[id]/index.js @@ -14,12 +14,15 @@ export default function ProfileWithID() { const { query } = useRouter(); const notLoading = props && accounts; + const reapply = query.id === "reapply"; if ( notLoading && props.submission === null && - (!accounts[0] || accounts[0] === query.id) + (!accounts[0] || accounts[0] === query.id || reapply) ) - return ; + return ( + + ); const status = props?.submission && submissionStatusEnum.parse(props.submission); diff --git a/_pages/profile/[id]/submission-details-card/deadlines/index.js b/_pages/profile/[id]/submission-details-card/deadlines/index.js index 550a9d87..64fd7a4e 100644 --- a/_pages/profile/[id]/submission-details-card/deadlines/index.js +++ b/_pages/profile/[id]/submission-details-card/deadlines/index.js @@ -1,4 +1,4 @@ -import { Text, TimeAgo } from "@kleros/components"; +import { Link, NextLink, Text, TimeAgo } from "@kleros/components"; import { graphql, useFragment } from "relay-hooks"; import ChallengeButton from "./challenge-button"; @@ -24,12 +24,12 @@ const deadlinesFragments = { } `, }; -function Deadline({ label, datetime, button }) { +function Deadline({ label, datetime, afterDatetime, button }) { return ( {label}: - {Date.now() < datetime && button} + {afterDatetime ? Date.now() >= datetime : Date.now() < datetime && button} ); } @@ -69,7 +69,16 @@ export default function Deadlines({ submission, contract, status }) { submissionTime && ( <> - + + Reapply + + } + /> ) )} diff --git a/_pages/profile/[id]/submit-profile-card.js b/_pages/profile/[id]/submit-profile-card.js index 342444ca..b7cc7ef5 100644 --- a/_pages/profile/[id]/submit-profile-card.js +++ b/_pages/profile/[id]/submit-profile-card.js @@ -19,13 +19,16 @@ const submitProfileCardFragment = graphql` submissionBaseDeposit } `; -export default function SubmitProfileCard({ contract }) { +export default function SubmitProfileCard({ contract, reapply }) { const { submissionBaseDeposit } = useFragment( submitProfileCardFragment, contract ); const { upload } = useArchon(); - const { send, loading } = useContract("proofOfHumanity", "addSubmission"); + const { send, loading } = useContract( + "proofOfHumanity", + reapply ? "reapplySubmission" : "addSubmission" + ); const { web3 } = useWeb3(); const [accounts] = useWeb3("eth", "getAccounts"); const { connect } = useWeb3(); diff --git a/components/relay-provider.js b/components/relay-provider.js index 47c056a9..1c27d455 100644 --- a/components/relay-provider.js +++ b/components/relay-provider.js @@ -49,7 +49,7 @@ export default function RelayProvider({ connectToRouteChange((path, query) => { if (queries[path]) { prefetch.next(environment, queries[path], query); - prefetch.getValue().retry(); + setTimeout(() => prefetch.getValue().retry(), 0); } }); setInitialized(true); diff --git a/components/theme-provider.js b/components/theme-provider.js index f1e38580..952354a4 100644 --- a/components/theme-provider.js +++ b/components/theme-provider.js @@ -235,8 +235,8 @@ const theme = merge(merge(base, toTheme(typographyTheme)), { whiteSpace: "nowrap", }, multiClipped: { - "-webkitBoxOrient": "vertical", - "-webkitLineClamp": " 2 ", + WebkitBoxOrient: "vertical", + WebkitLineClamp: " 2 ", display: "-webkit-box", overflow: "hidden", },