diff --git a/package.json b/package.json index f9f12ba..69826da 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,7 @@ "react": "^18", "react-dom": "^18", "react-icons": "^4.11.0", + "react-string-replace": "^1.1.1", "sharp": "^0.32.6" }, "devDependencies": { diff --git a/src/templates/Home.tsx b/src/templates/Home.tsx index 5559436..bcfa4a2 100644 --- a/src/templates/Home.tsx +++ b/src/templates/Home.tsx @@ -16,11 +16,39 @@ import {BiLogoFacebook} from "react-icons/bi"; import Navbar from "@/components/Navbar"; import Footer from "@/components/Footer"; import translation from "@/translation/home.json"; +import reactStringReplace from "react-string-replace"; +import clsx from "clsx"; + +const HIGHLIGHT = /({{.+}})/g; interface Props { language: "en" | "ar"; } +function Tag({children}: {children: string}) { + return ( + + {reactStringReplace(children, HIGHLIGHT, (match, i) => ( + + {match.replaceAll(/[{}]/g, "")} + + ))} + + ); +} + +function Title({children, className}: {children: string; className?: string}) { + return ( + + {reactStringReplace(children, HIGHLIGHT, (match, i) => ( + + {match.replaceAll(/[{}]/g, "")} + + ))} + + ); +} + export default function Home({language}: Props) { return (
@@ -81,15 +109,9 @@ export default function Home({language}: Props) {
- - {translation.learn_ai.tag.highlight[language]}{" "} - {translation.learn_ai.tag.text[language]} - + {translation.learn_ai.tag[language]}
- - {translation.learn_ai.title.text[language]}{" "} - {translation.learn_ai.title.highlight[language]} - + {translation.learn_ai.title[language]}

{translation.learn_ai.description[language]}

@@ -119,15 +141,9 @@ export default function Home({language}: Props) {
- - {translation.encoach_benefits.tag.encoach[language]}{" "} - {translation.encoach_benefits.tag.benefits[language]} - + {translation.encoach_benefits.tag[language]}
- - {translation.encoach_benefits.title.text[language]}{" "} - {translation.encoach_benefits.title.highlight[language]} - + {translation.encoach_benefits.title[language]}

{translation.encoach_benefits.description[language]}

@@ -142,15 +158,8 @@ export default function Home({language}: Props) { {/* Interested Section */}
- - {translation.interested.tag.highlight[language]}{" "} - {translation.interested.tag.text[language]} - - - {translation.interested.title.beginning[language]}{" "} - {translation.interested.title.highlight[language]}{" "} - {translation.interested.title.end[language]} - + {translation.interested.tag[language]} + {translation.interested.title[language]}