diff --git a/web/src/components/CasesDisplay/index.tsx b/web/src/components/CasesDisplay/index.tsx
index 5fdf19a3b..5f0d052b3 100644
--- a/web/src/components/CasesDisplay/index.tsx
+++ b/web/src/components/CasesDisplay/index.tsx
@@ -7,11 +7,10 @@ import ArrowIcon from "svgs/icons/arrow.svg";
import { responsiveSize } from "styles/responsiveSize";
-import LightButton from "../LightButton";
-
import CasesGrid, { ICasesGrid } from "./CasesGrid";
import Search from "./Search";
import StatsAndFilters from "./StatsAndFilters";
+import { StyledArrowLink } from "../StyledArrowLink";
const TitleContainer = styled.div`
display: flex;
@@ -25,16 +24,6 @@ const StyledTitle = styled.h1`
margin: 0px;
`;
-const StyledButton = styled(LightButton)`
- display: flex;
- flex-direction: row-reverse;
- gap: 8px;
- > .button-text {
- color: ${({ theme }) => theme.primaryBlue};
- }
- padding: 0px;
-`;
-
interface ICasesDisplay extends ICasesGrid {
numberDisputes?: number;
numberClosedDisputes?: number;
@@ -59,9 +48,9 @@ const CasesDisplay: React.FC = ({
{title}
{location.pathname.startsWith("/cases/display/1/desc/all") ? (
-
-
-
+
+ Create a case
+
) : null}
diff --git a/web/src/components/DisputeView/DisputeCardView.tsx b/web/src/components/DisputeView/DisputeCardView.tsx
index 1027b0436..fbc489e6d 100644
--- a/web/src/components/DisputeView/DisputeCardView.tsx
+++ b/web/src/components/DisputeView/DisputeCardView.tsx
@@ -19,6 +19,11 @@ const StyledCard = styled(Card)`
height: 100%;
max-height: 335px;
min-height: 290px;
+ transition: background-color 0.1s;
+
+ &:hover {
+ background-color: ${({ theme }) => theme.lightGrey};
+ }
`;
const CardContainer = styled.div`
@@ -56,7 +61,7 @@ interface IDisputeCardView {
const DisputeCardView: React.FC = ({ isLoading, ...props }) => {
return (
-
+
{isLoading ? : }
diff --git a/web/src/components/DisputeView/DisputeListView.tsx b/web/src/components/DisputeView/DisputeListView.tsx
index cbecdeedb..9504a5e15 100644
--- a/web/src/components/DisputeView/DisputeListView.tsx
+++ b/web/src/components/DisputeView/DisputeListView.tsx
@@ -18,7 +18,13 @@ const StyledListItem = styled(Card)`
flex-grow: 1;
width: 100%;
height: 82px;
+ transition: background-color 0.1s;
+
+ &:hover {
+ background-color: ${({ theme }) => theme.lightGrey};
+ }
`;
+
const ListContainer = styled.div`
display: flex;
justify-content: space-between;
@@ -58,7 +64,7 @@ const DisputeListView: React.FC = (props) => {
const { isDisconnected } = useAccount();
return (
-
+
diff --git a/web/src/components/Field.tsx b/web/src/components/Field.tsx
index 94cc74f9e..d407d82c3 100644
--- a/web/src/components/Field.tsx
+++ b/web/src/components/Field.tsx
@@ -62,6 +62,10 @@ const StyledLink = styled(Link)`
color: ${({ theme }) => theme.primaryBlue};
text-wrap: auto;
justify-content: end;
+
+ &:hover {
+ text-decoration: underline ${({ theme }) => theme.secondaryBlue};
+ }
`;
type FieldContainerProps = {
diff --git a/web/src/components/StyledArrowLink.tsx b/web/src/components/StyledArrowLink.tsx
new file mode 100644
index 000000000..3d7a7abf2
--- /dev/null
+++ b/web/src/components/StyledArrowLink.tsx
@@ -0,0 +1,23 @@
+import styled from "styled-components";
+
+import { Link } from "react-router-dom";
+
+export const StyledArrowLink = styled(Link)`
+ display: flex;
+ gap: 8px;
+ align-items: center;
+ font-size: 16px;
+
+ > svg {
+ height: 16px;
+ width: 16px;
+
+ path {
+ fill: ${({ theme }) => theme.primaryBlue};
+ }
+ }
+
+ &:hover svg path {
+ fill: ${({ theme }) => theme.secondaryBlue};
+ }
+`;
diff --git a/web/src/components/Verdict/FinalDecision.tsx b/web/src/components/Verdict/FinalDecision.tsx
index bc0bcfc8b..c287284c7 100644
--- a/web/src/components/Verdict/FinalDecision.tsx
+++ b/web/src/components/Verdict/FinalDecision.tsx
@@ -2,7 +2,7 @@ import React, { useMemo } from "react";
import styled from "styled-components";
import Skeleton from "react-loading-skeleton";
-import { useNavigate, useParams } from "react-router-dom";
+import { useParams } from "react-router-dom";
import { useAccount } from "wagmi";
import ArrowIcon from "svgs/icons/arrow.svg";
@@ -19,11 +19,10 @@ import { useDisputeDetailsQuery } from "queries/useDisputeDetailsQuery";
import { responsiveSize } from "styles/responsiveSize";
-import LightButton from "../LightButton";
-
import AnswerDisplay from "./Answer";
import VerdictBanner from "./VerdictBanner";
import { Divider } from "../Divider";
+import { StyledArrowLink } from "../StyledArrowLink";
const Container = styled.div`
width: 100%;
@@ -45,16 +44,6 @@ const JuryDecisionTag = styled.small`
color: ${({ theme }) => theme.secondaryText};
`;
-const StyledButton = styled(LightButton)`
- display: flex;
- flex-direction: row-reverse;
- gap: 8px;
- > .button-text {
- color: ${({ theme }) => theme.primaryBlue};
- }
- padding-top: 0px;
-`;
-
const StyledDivider = styled(Divider)`
margin: ${responsiveSize(16, 32)} 0px;
`;
@@ -73,7 +62,6 @@ const FinalDecision: React.FC = ({ arbitrable }) => {
const localRounds = getLocalRounds(votingHistory?.dispute?.disputeKitDispute);
const ruled = disputeDetails?.dispute?.ruled ?? false;
const periodIndex = Periods[disputeDetails?.dispute?.period ?? "evidence"];
- const navigate = useNavigate();
const { data: currentRulingArray } = useReadKlerosCoreCurrentRuling({
query: { refetchInterval: REFETCH_INTERVAL },
args: [BigInt(id ?? 0)],
@@ -108,12 +96,9 @@ const FinalDecision: React.FC = ({ arbitrable }) => {
{isLoading && !isDisconnected ? (
) : (
- navigate(`/cases/${id?.toString()}/voting`)}
- text={buttonText}
- Icon={ArrowIcon}
- className="reverse-button"
- />
+
+ {buttonText}
+
)}
);
diff --git a/web/src/pages/Courts/CourtDetails/Description.tsx b/web/src/pages/Courts/CourtDetails/Description.tsx
index 5d30f358e..a808b3ddc 100644
--- a/web/src/pages/Courts/CourtDetails/Description.tsx
+++ b/web/src/pages/Courts/CourtDetails/Description.tsx
@@ -95,7 +95,7 @@ const Description: React.FC = () => {
{policy?.requiredSkills}
} />
- } />
+ 0 ? filteredTabs[0].path : ""} replace />} />
diff --git a/web/src/pages/Dashboard/Courts/CourtCard/CourtName.tsx b/web/src/pages/Dashboard/Courts/CourtCard/CourtName.tsx
index 4ff454167..6b53b480d 100644
--- a/web/src/pages/Dashboard/Courts/CourtCard/CourtName.tsx
+++ b/web/src/pages/Dashboard/Courts/CourtCard/CourtName.tsx
@@ -4,7 +4,8 @@ import styled, { css } from "styled-components";
import { landscapeStyle } from "styles/landscapeStyle";
import ArrowIcon from "svgs/icons/arrow.svg";
-import { Link } from "react-router-dom";
+
+import { StyledArrowLink } from "components/StyledArrowLink";
const Container = styled.div`
display: flex;
@@ -20,24 +21,19 @@ const Container = styled.div`
}
${landscapeStyle(
- () =>
- css`
- justify-content: flex-start;
- width: auto;
- `
+ () => css`
+ justify-content: flex-start;
+ width: auto;
+ `
)}
`;
-const StyledLink = styled(Link)`
- display: flex;
- gap: 8px;
- align-items: center;
+const ReStyledArrowLink = styled(StyledArrowLink)`
+ font-size: 14px;
+
> svg {
height: 15px;
width: 15px;
- path {
- fill: ${({ theme }) => theme.primaryBlue};
- }
}
`;
@@ -50,9 +46,9 @@ const CourtName: React.FC = ({ name, id }) => {
return (
{name}
-
+
Open Court
-
+
);
};
diff --git a/web/src/pages/Home/TopJurors/JurorCard/JurorTitle.tsx b/web/src/pages/Home/TopJurors/JurorCard/JurorTitle.tsx
index 6d2c68963..5ab94d883 100644
--- a/web/src/pages/Home/TopJurors/JurorCard/JurorTitle.tsx
+++ b/web/src/pages/Home/TopJurors/JurorCard/JurorTitle.tsx
@@ -25,7 +25,7 @@ const StyledA = styled.a`
text-decoration: underline;
label {
cursor: pointer;
- color: ${({ theme }) => theme.primaryBlue};
+ color: ${({ theme }) => theme.secondaryBlue};
}
}
`;
diff --git a/web/src/styles/global-style.ts b/web/src/styles/global-style.ts
index cb5f5caa0..546ec90da 100644
--- a/web/src/styles/global-style.ts
+++ b/web/src/styles/global-style.ts
@@ -90,8 +90,13 @@ export const GlobalStyle = createGlobalStyle`
font-size: 14px;
text-decoration: none;
color: ${({ theme }) => theme.primaryBlue};
+ transition: color 0.1s;
}
-
+
+ a:hover {
+ color: ${({ theme }) => theme.secondaryBlue} !important;
+ }
+
hr {
opacity: 1;
border: 1px solid ${({ theme }) => theme.stroke};