diff --git a/judgels-client/src/components/ContentCard/ContentCard.jsx b/judgels-client/src/components/ContentCard/ContentCard.jsx index 1119f6079..1d37332ad 100644 --- a/judgels-client/src/components/ContentCard/ContentCard.jsx +++ b/judgels-client/src/components/ContentCard/ContentCard.jsx @@ -3,9 +3,15 @@ import classNames from 'classnames'; import './ContentCard.scss'; -export function ContentCard({ id, className, elevation, children }) { +export function ContentCard({ id, secondary, className, elevation, children }) { return ( - + {children} ); diff --git a/judgels-client/src/components/ContentCard/ContentCard.scss b/judgels-client/src/components/ContentCard/ContentCard.scss index 5d62211fe..3e00f399a 100644 --- a/judgels-client/src/components/ContentCard/ContentCard.scss +++ b/judgels-client/src/components/ContentCard/ContentCard.scss @@ -5,7 +5,7 @@ margin-bottom: 10px; overflow: auto; - .bp5-dark & { + .bp5-dark &--is-secondary { box-shadow: 0 0 0 0.5px $dark-secondary-background-color !important; } diff --git a/judgels-client/src/components/ContentCardLink/ContentCardLink.jsx b/judgels-client/src/components/ContentCardLink/ContentCardLink.jsx index ab44684f7..e03fa201c 100644 --- a/judgels-client/src/components/ContentCardLink/ContentCardLink.jsx +++ b/judgels-client/src/components/ContentCardLink/ContentCardLink.jsx @@ -3,10 +3,15 @@ import { Link } from 'react-router-dom'; import './ContentCardLink.scss'; -export function ContentCardLink({ className, to, elevation, children }) { +export function ContentCardLink({ secondary, className, to, elevation, children }) { // This is basically a but with div replaced with a. return ( - +
{children}
); diff --git a/judgels-client/src/components/ContentCardList/ContentCardList.jsx b/judgels-client/src/components/ContentCardList/ContentCardList.jsx new file mode 100644 index 000000000..8049c917c --- /dev/null +++ b/judgels-client/src/components/ContentCardList/ContentCardList.jsx @@ -0,0 +1,5 @@ +import './ContentCardList.scss'; + +export function ContentCardList({ children }) { + return
{children}
; +} diff --git a/judgels-client/src/components/ContentCardList/ContentCardList.scss b/judgels-client/src/components/ContentCardList/ContentCardList.scss new file mode 100644 index 000000000..0aaf72919 --- /dev/null +++ b/judgels-client/src/components/ContentCardList/ContentCardList.scss @@ -0,0 +1,19 @@ +.content-card-list { + .content-card { + margin-bottom: 1px; + + &:first-of-type { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; + } + + &:not(:first-of-type):not(:last-of-type) { + border-radius: 0; + } + + &:last-of-type { + border-top-left-radius: 0; + border-top-right-radius: 0; + } + } +} diff --git a/judgels-client/src/components/ProblemSetProblemCard/ProblemSetProblemCard.jsx b/judgels-client/src/components/ProblemSetProblemCard/ProblemSetProblemCard.jsx index 7c9c349dd..3fa45ebca 100644 --- a/judgels-client/src/components/ProblemSetProblemCard/ProblemSetProblemCard.jsx +++ b/judgels-client/src/components/ProblemSetProblemCard/ProblemSetProblemCard.jsx @@ -66,7 +66,7 @@ export function ProblemSetProblemCard({ problemSet, problem, showAlias, problemN }; return ( - +

{showAlias && <>{problem.alias}. } {problemName} diff --git a/judgels-client/src/components/ProblemWorksheetCard/Bundle/ProblemStatementCard/ProblemStatementCard.jsx b/judgels-client/src/components/ProblemWorksheetCard/Bundle/ProblemStatementCard/ProblemStatementCard.jsx index 12a8b9bd9..991e0c5d2 100644 --- a/judgels-client/src/components/ProblemWorksheetCard/Bundle/ProblemStatementCard/ProblemStatementCard.jsx +++ b/judgels-client/src/components/ProblemWorksheetCard/Bundle/ProblemStatementCard/ProblemStatementCard.jsx @@ -78,7 +78,7 @@ export function ProblemStatementCard({ }; return ( - + {showTitle && (

{alias ? `${alias}. ` : ''} diff --git a/judgels-client/src/components/ProblemWorksheetCard/Bundle/ProblemSubmissionCard/ProblemSubmissionCard.jsx b/judgels-client/src/components/ProblemWorksheetCard/Bundle/ProblemSubmissionCard/ProblemSubmissionCard.jsx index eb804714c..cd7d1e845 100644 --- a/judgels-client/src/components/ProblemWorksheetCard/Bundle/ProblemSubmissionCard/ProblemSubmissionCard.jsx +++ b/judgels-client/src/components/ProblemWorksheetCard/Bundle/ProblemSubmissionCard/ProblemSubmissionCard.jsx @@ -30,5 +30,5 @@ export function ProblemSubmissionCard({ reasonNotAllowedToSubmit, resultsUrl }) ); }; - return {renderSubmissionForm()}; + return {renderSubmissionForm()}; } diff --git a/judgels-client/src/components/ProblemWorksheetCard/Programming/ProblemStatementCard/ProblemStatementCard.jsx b/judgels-client/src/components/ProblemWorksheetCard/Programming/ProblemStatementCard/ProblemStatementCard.jsx index 64511138c..1473c701d 100644 --- a/judgels-client/src/components/ProblemWorksheetCard/Programming/ProblemStatementCard/ProblemStatementCard.jsx +++ b/judgels-client/src/components/ProblemWorksheetCard/Programming/ProblemStatementCard/ProblemStatementCard.jsx @@ -33,7 +33,7 @@ export function ProblemStatementCard({ }; return ( - + {showTitle && (

{alias ? `${alias}. ` : ''} diff --git a/judgels-client/src/components/ProblemWorksheetCard/Programming/ProblemSubmissionCard/ProblemSubmissionCard.jsx b/judgels-client/src/components/ProblemWorksheetCard/Programming/ProblemSubmissionCard/ProblemSubmissionCard.jsx index 3779428ce..d35cb33c1 100644 --- a/judgels-client/src/components/ProblemWorksheetCard/Programming/ProblemSubmissionCard/ProblemSubmissionCard.jsx +++ b/judgels-client/src/components/ProblemWorksheetCard/Programming/ProblemSubmissionCard/ProblemSubmissionCard.jsx @@ -42,7 +42,7 @@ export function ProblemSubmissionCard({ }; return ( - +

Submit solution

{renderSubmissionForm()}
diff --git a/judgels-client/src/routes/contests/contests/ContestCard/ContestCard.jsx b/judgels-client/src/routes/contests/contests/ContestCard/ContestCard.jsx index 3b469c384..6a340527e 100644 --- a/judgels-client/src/routes/contests/contests/ContestCard/ContestCard.jsx +++ b/judgels-client/src/routes/contests/contests/ContestCard/ContestCard.jsx @@ -13,7 +13,7 @@ export class ContestCard extends PureComponent { const { contest, role } = this.props; return ( - +

{contest.name}
diff --git a/judgels-client/src/routes/contests/contests/single/problems/ContestProblemCard/ContestProblemCard.jsx b/judgels-client/src/routes/contests/contests/single/problems/ContestProblemCard/ContestProblemCard.jsx index a6cf8a282..9b70ac8eb 100644 --- a/judgels-client/src/routes/contests/contests/single/problems/ContestProblemCard/ContestProblemCard.jsx +++ b/judgels-client/src/routes/contests/contests/single/problems/ContestProblemCard/ContestProblemCard.jsx @@ -24,7 +24,7 @@ export function ContestProblemCard({ }; return ( - +
{alias}. {problemName} diff --git a/judgels-client/src/routes/problems/problemsets/ProblemSetCard/ProblemSetCard.jsx b/judgels-client/src/routes/problems/problemsets/ProblemSetCard/ProblemSetCard.jsx index 806f5e721..ad7115a4e 100644 --- a/judgels-client/src/routes/problems/problemsets/ProblemSetCard/ProblemSetCard.jsx +++ b/judgels-client/src/routes/problems/problemsets/ProblemSetCard/ProblemSetCard.jsx @@ -29,7 +29,7 @@ export function ProblemSetCard({ problemSet, archiveDescription, progress, profi }; return ( - +

{problemSet.name} {renderProgress()}