Skip to content

[INTW26] Revamp Review Page#254

Open
dqvidl wants to merge 15 commits intostagingfrom
INTW26-revampscoring
Open

[INTW26] Revamp Review Page#254
dqvidl wants to merge 15 commits intostagingfrom
INTW26-revampscoring

Conversation

@dqvidl
Copy link
Collaborator

@dqvidl dqvidl commented Feb 28, 2026

Notion ticket link

Revamp Review Scoring/Rubric Page Layout

Implementation description

  • Implemented Figma designs (swapped columns: left = application Q&A; right = rubric and score input)
  • Validation before proceeding/submit

Steps to test

  1. Review flow page
  2. Should look and function according to the Figma designs

What should reviewers focus on?

  • Consistency with designs
  • Proper validation

Checklist

  • My PR name is descriptive and in imperative tense
  • My commit messages are descriptive and in imperative tense. My commits are atomic and trivial commits are squashed or fixup'd into non-trivial commits
  • I have run the appropriate linter(s)
  • I have requested a review from the PL, as well as other devs who have background knowledge on this PR or who will be building on top of this PR

@mxc-maggiechen mxc-maggiechen changed the base branch from staging to INTW26-review-end-page-submission-page February 28, 2026 23:55
@mxc-maggiechen mxc-maggiechen changed the base branch from INTW26-review-end-page-submission-page to staging February 28, 2026 23:56
>
<path
d="M4.07001 0.18775C4.27018 -0.0624531 4.65072 -0.0624533 4.85088 0.18775L8.81057 5.13736C9.07248 5.46474 8.83939 5.94971 8.42014 5.94971H0.500762C0.0815088 5.94971 -0.151578 5.46474 0.110327 5.13736L4.07001 0.18775Z"
fill="#2D3748"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's have this component accept a colour arg, so that we can easily change colours when using this icon in the future

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i think this colour you have in here specifically is not in constants/recruitmentPlatformPalette.ts yet, would you mind adding it in the appropriate place?

size="sm"
disabled={isButtonDisabled}
onClick={() => setStage?.(nextStage)}
className="shrink-0 whitespace-nowrap !px-4 !py-2 !rounded-[20px] hover:!bg-blue hover:!border-blue hover:!text-white disabled:!opacity-60"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think the hover states for the buttons are working... woudl you mind looking into that?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

could you make this in to a react element and put it in icons? same comments as above, it would be great if we could have the element accept a colour arg that we can directly control in the pages

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you mind removing the modal? I think Sparsh's PR for a general modal we can use for conflict report, we will be using that instead.

@mxc-maggiechen mxc-maggiechen requested a review from SaqAsh March 15, 2026 20:27
<Link href={backToHomeHref} passHref>
<a
className="font-source no-underline inline-flex justify-center items-center gap-2 w-fit cursor-pointer shrink-0 hover:opacity-90 rounded-full"
style={{
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems like we can do some of these styles via tailwind?

</svg>
);

export const ReviewScoreInput: React.FC<Props> = ({
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's not type our components as React.FC, no longer standard practice. Just type the props instead :)

<div className="flex flex-col gap-10 w-full">
{questions.map((question, idx) => (
<div
key={idx}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Key as an index is considered bad practice, consider seeing if there's a way to change this.

}

export const ReviewRubric = ({ scoringCriteria }: Props) => {
export const ReviewRubric: React.FC<Props> = ({ scoringCriteria }) => {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Revert this change to what it was before.

</div>
<div className="flex flex-col gap-6 w-full">
{scoringCriteria.map((criteria, idx) => (
<div key={idx} className="flex flex-col gap-2">
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Consider seeing if you can change the key from idx so something else

alignSelf: "stretch",
color: "rgba(37, 37, 37, 0.80)",
fontFeatureSettings: "'liga' off, 'clig' off",
fontSize: "16px",
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See if there's a tailwind way to do these styles

colour?: string;
}

/** Down caret - mirrored up caret */
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is obvious from the name

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Comment not needed

Comment on lines +14 to +15
const UpCaret = () => (
<svg
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why we making the UpCaret again if we have a file with an UpCaret already? Lmk if I'm missing something

);

/** Down caret - mirrored up caret */
const DownCaret = () => (
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

?

onChange={handleInputChange}
className="h-full flex-1 min-w-0 border-0 focus:outline-none placeholder:text-[#2D3748] [appearance:textfield] [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none"
style={{
alignSelf: "stretch",
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we make these tailwind impossible? If not lmk here

style={{
background: "#FFFFFF",
color: "#252525",
borderBottom: "1px solid #C4C4C4",
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah we shouldn't be inlining styles if we can tailwind it instead

<div className="flex flex-col gap-10 w-full">
{questions.map((question, idx) => (
<div
key={`${question}-${idx}`}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice :)

className="font-poppins"
style={{
color: theme.palette.text.primary,
fontSize: "16px",
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tailwind

style={{ alignItems: "flex-start" }}
className="rounded-r px-4 py-3 w-full font-source"
style={{
borderLeft: `4px solid ${theme.palette.semantics.border.light}`,
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we tailwind this?

style={{
color: theme.palette.text.primary,
fontSize: "16px",
fontWeight: 400,
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we can import this from somewhere or tailwind it. I think cursor/claude code has a codebase grep

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants