From 2d7d854af9d83df7260a30b62b594d6c9f3a6946 Mon Sep 17 00:00:00 2001 From: "dev.daminik00" Date: Fri, 5 Sep 2025 22:27:18 +0200 Subject: [PATCH] add review v3 v4 --- public/v2/compatibility/Cosmopolitan-Logo.png | Bin 0 -> 18965 bytes .../CompatibilityV2/pages/Gender/index.tsx | 2 +- .../CompatibilityV2/pages/Review/index.tsx | 6 ++ .../pages/Review/styles.module.scss | 39 ++++++++++ .../CompatibilityV2/pages/Review/v3/index.tsx | 37 +++++++++ .../CompatibilityV2/pages/Review/v4/index.tsx | 72 ++++++++++++++++++ .../pages/Review/v4/styles.module.scss | 31 ++++++++ src/hooks/ab/unleash/useUnleash.ts | 2 +- 8 files changed, 187 insertions(+), 2 deletions(-) create mode 100644 public/v2/compatibility/Cosmopolitan-Logo.png create mode 100644 src/components/CompatibilityV2/pages/Review/v3/index.tsx create mode 100644 src/components/CompatibilityV2/pages/Review/v4/index.tsx create mode 100644 src/components/CompatibilityV2/pages/Review/v4/styles.module.scss diff --git a/public/v2/compatibility/Cosmopolitan-Logo.png b/public/v2/compatibility/Cosmopolitan-Logo.png new file mode 100644 index 0000000000000000000000000000000000000000..ad71c316a4a756819403a18e465bdb67b08db4df GIT binary patch literal 18965 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 WNq`uV&+k{oi4AP+XjNz7`}jXG3-zf0 literal 0 HcmV?d00001 diff --git a/src/components/CompatibilityV2/pages/Gender/index.tsx b/src/components/CompatibilityV2/pages/Gender/index.tsx index c8c6196..69e28f3 100644 --- a/src/components/CompatibilityV2/pages/Gender/index.tsx +++ b/src/components/CompatibilityV2/pages/Gender/index.tsx @@ -120,7 +120,7 @@ function GenderPage() { return navigate(routes.client.compatibilityV2RelationshipStatus()); } - if (["v1", "v2"].includes(reviewPage)) { + if (["v1", "v2", "v3", "v4"].includes(reviewPage)) { return navigate(routes.client.compatibilityV2Review()); } if (pathToEnteringBirthdate === "show") { diff --git a/src/components/CompatibilityV2/pages/Review/index.tsx b/src/components/CompatibilityV2/pages/Review/index.tsx index e2d6e9e..9fa43f8 100644 --- a/src/components/CompatibilityV2/pages/Review/index.tsx +++ b/src/components/CompatibilityV2/pages/Review/index.tsx @@ -5,6 +5,8 @@ import { EUnleashFlags, useUnleash } from "@/hooks/ab/unleash/useUnleash"; import Loader, { LoaderColor } from "@/components/Loader"; import ReviewV1 from "./v1"; import ReviewV2 from "./v2"; +import ReviewV3 from "./v3"; +import ReviewV4 from "./v4"; function ReviewPage() { const navigate = useNavigate(); @@ -36,6 +38,10 @@ function ReviewPage() { return ; case "v2": return ; + case "v3": + return ; + case "v4": + return ; default: return ; } diff --git a/src/components/CompatibilityV2/pages/Review/styles.module.scss b/src/components/CompatibilityV2/pages/Review/styles.module.scss index 7f757d5..cd7e442 100644 --- a/src/components/CompatibilityV2/pages/Review/styles.module.scss +++ b/src/components/CompatibilityV2/pages/Review/styles.module.scss @@ -85,3 +85,42 @@ position: sticky; bottom: calc(0dvh + 32px); } + +/* v3 specific */ +.cosmoLogo { + display: block; + width: 212px; + height: auto; + /* match ~92px from top (container has 45px padding) */ + margin: 47px auto 34px; /* 47 top + 34 gap to quote per figma */ +} + +.quote { + margin-top: 0; /* control spacing via cosmoLogo bottom margin */ + margin-bottom: 69px; /* figma ~69px to logos */ + font-weight: 600; + font-size: 23px; + line-height: normal; + text-align: center; + color: #0f1728; + max-width: 241px; + margin-left: auto; + margin-right: auto; + font-family: Inter; +} + +.partnersV3 { + width: 100%; + max-width: 336px; /* match Figma section width */ + margin-left: auto; + margin-right: auto; + margin-top: 0; /* spacing controlled by .quote margin-bottom */ +} + +:global(.dark-theme) .quote { + color: #F7F7F7; +} + +.buttonV3 { + margin-top: 32px; /* gap from partners to button ~32-33px */ +} diff --git a/src/components/CompatibilityV2/pages/Review/v3/index.tsx b/src/components/CompatibilityV2/pages/Review/v3/index.tsx new file mode 100644 index 0000000..c6e3b0b --- /dev/null +++ b/src/components/CompatibilityV2/pages/Review/v3/index.tsx @@ -0,0 +1,37 @@ +import styles from "../styles.module.scss"; +import { useTranslations } from "@/hooks/translations"; +import { ELocalesPlacement } from "@/locales"; +import { images } from "@/components/CompatibilityV2/data"; +import Button from "@/components/CompatibilityV2/components/Button"; + +interface IReviewV3Props { + handleNext: () => void; +} + +function ReviewV3({ handleNext }: IReviewV3Props) { + const { translate } = useTranslations(ELocalesPlacement.CompatibilityV2); + + const quote = + "“A tool that becomes your ally on the path to a harmonious relationship.”"; + + return ( +
+ COSMOPOLITAN +

{quote}

+ partners + +
+ ); +} + +export default ReviewV3; diff --git a/src/components/CompatibilityV2/pages/Review/v4/index.tsx b/src/components/CompatibilityV2/pages/Review/v4/index.tsx new file mode 100644 index 0000000..9fa615a --- /dev/null +++ b/src/components/CompatibilityV2/pages/Review/v4/index.tsx @@ -0,0 +1,72 @@ +import { useState } from "react"; +import { useSelector } from "react-redux"; +import Header from "@/components/CompatibilityV2/components/Header"; +import StepperBar from "@/components/CompatibilityV2/components/StepperBar"; +import Title from "@/components/Title"; +import Answer from "@/components/CompatibilityV2/components/Answer"; +import styles from "./styles.module.scss"; +import layoutCss from "@/routerComponents/Compatibility/v2/Layout/styles.module.css"; +import stepperCss from "@/routerComponents/Compatibility/v2/StepperLayout/styles.module.scss"; +import { selectors } from "@/store"; +import { answerTimeOut } from "@/components/CompatibilityV2/data"; + +interface IReviewV4Props { + handleNext: () => void; +} + +const OPTIONS: { id: string; title: string }[] = [ + { id: "nyt", title: "The New York Times" }, + { id: "forbes", title: "Forbes" }, + { id: "cosmopolitan", title: "Cosmopolitan" }, + { id: "oprah", title: "Oprah Daily" }, + { id: "social", title: "Social media" }, + { id: "other", title: "Other sources" }, +]; + +function ReviewV4({ handleNext }: IReviewV4Props) { + const darkTheme = useSelector(selectors.selectDarkTheme); + const [selected, setSelected] = useState(null); + + const handleSelect = (id: string) => { + setSelected(id); + setTimeout(() => { + handleNext(); + }, answerTimeOut); + }; + + return ( +
+
+ +
+
+ + Where did you first hear about us? + +

+ Many people say they first learned about us through leading publications + and platforms. +

+ {OPTIONS.map((option) => ( + handleSelect(option.id)} + /> + ))} +
+
+
+ ); +} + +export default ReviewV4; diff --git a/src/components/CompatibilityV2/pages/Review/v4/styles.module.scss b/src/components/CompatibilityV2/pages/Review/v4/styles.module.scss new file mode 100644 index 0000000..ab46dd2 --- /dev/null +++ b/src/components/CompatibilityV2/pages/Review/v4/styles.module.scss @@ -0,0 +1,31 @@ +.page { + width: 100%; +} + +.container { + width: 100%; +} + +.title { + margin: 0; + font-size: 27px; + line-height: 40px; + text-align: center; +} + +.description { + margin-top: 24px; + margin-bottom: 4px; + font-size: 20px; + line-height: 25px; + text-align: center; +} + +.progressPlaceholder { + height: 40px; /* reserve space similar to stepper progress */ +} + +:global(.dark-theme) .title, +:global(.dark-theme) .description { + color: #F7F7F7; +} diff --git a/src/hooks/ab/unleash/useUnleash.ts b/src/hooks/ab/unleash/useUnleash.ts index b629a62..94f5f6d 100644 --- a/src/hooks/ab/unleash/useUnleash.ts +++ b/src/hooks/ab/unleash/useUnleash.ts @@ -78,7 +78,7 @@ interface IVariants { [EUnleashFlags.v2CompatibilityScanInstructionImage]: 'v0' | 'v1'; [EUnleashFlags.v2CompatibilityCameraTemplate]: 'v0' | 'v1' | 'v2' | 'v3' | 'v4'; [EUnleashFlags.v2CompatibilityRelationshipStatusPagePlacement]: 'v0' | 'v1' | 'v2'; - [EUnleashFlags.v2CompatibilityReviewPage]: 'v0' | 'v1' | 'v2'; + [EUnleashFlags.v2CompatibilityReviewPage]: 'v0' | 'v1' | 'v2' | 'v3' | 'v4'; [EUnleashFlags.v2CompatibilityPathToEnteringBirthdate]: 'hide' | 'show'; }