Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion src/assets/lang/de/footer.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,8 @@
"business": "Internxt für Unternehmen",
"family": "Internxt für Familien",
"pricing": "Preise",
"mail": "Internxt Mail"
"mail": "Internxt Mail",
"photos": "Internxt Photos"
},
"company": {
"title": "Firma",
Expand Down
3 changes: 2 additions & 1 deletion src/assets/lang/de/navbar.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,8 @@
"cleaner": "Internxt Cleaner",
"meet": "Internxt Meet",
"ai": "Internxt AI",
"mail": "Internxt Mail"
"mail": "Internxt Mail",
"photos": "Internxt Photos"
},
"solutions": {
"secureCloudStorage": "Sichere Cloud-Speicherung",
Expand Down
3 changes: 2 additions & 1 deletion src/assets/lang/en/footer.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,8 @@
"business": "Internxt for Business",
"family": "Internxt for Families",
"pricing": "Cloud storage pricing",
"mail": "Internxt Mail"
"mail": "Internxt Mail",
"photos": "Internxt Photos"
},
"company": {
"title": "Company",
Expand Down
3 changes: 2 additions & 1 deletion src/assets/lang/en/navbar.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,8 @@
"cleaner": "Internxt Cleaner",
"meet": "Internxt Meet",
"ai": "Internxt AI",
"mail": "Internxt Mail"
"mail": "Internxt Mail",
"photos": "Internxt Photos"
},
"solutions": {
"secureCloudStorage": "Secure Cloud Storage",
Expand Down
3 changes: 2 additions & 1 deletion src/assets/lang/es/footer.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,8 @@
"business": "Internxt para Empresas",
"family": "Internxt para Familias",
"pricing": "Precios",
"mail": "Internxt Mail"
"mail": "Internxt Mail",
"photos": "Internxt Photos"
},
"company": {
"title": "Compañía",
Expand Down
3 changes: 2 additions & 1 deletion src/assets/lang/es/navbar.json
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,8 @@
"cleaner": "Internxt Cleaner",
"meet": "Internxt Meet",
"ai": "Internxt AI",
"mail": "Internxt Mail"
"mail": "Internxt Mail",
"photos": "Internxt Photos"
},
"Auth": {
"SignUp": {
Expand Down
3 changes: 2 additions & 1 deletion src/assets/lang/fr/footer.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,8 @@
"business": "Internxt pour les Entreprises",
"family": "Internxt pour les Familles",
"pricing": "Tarifs",
"mail": "Internxt Mail"
"mail": "Internxt Mail",
"photos": "Internxt Photos"
},
"company": {
"title": "Entreprise",
Expand Down
3 changes: 2 additions & 1 deletion src/assets/lang/fr/navbar.json
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,8 @@
"cleaner": "Internxt Cleaner",
"meet": "Internxt Meet",
"ai": "Internxt AI",
"mail": "Internxt Mail"
"mail": "Internxt Mail",
"photos": "Internxt Photos"
},
"Auth": {
"SignUp": {
Expand Down
3 changes: 2 additions & 1 deletion src/assets/lang/it/footer.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,8 @@
"business": "Internxt per Aziende",
"family": "Internxt per Famiglie",
"pricing": "Prezzi",
"mail": "Internxt Mail"
"mail": "Internxt Mail",
"photos": "Internxt Photos"
},
"company": {
"title": "Azienda",
Expand Down
3 changes: 2 additions & 1 deletion src/assets/lang/it/navbar.json
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,8 @@
"meet": "Internxt Meet",
"ai": "Internxt AI",
"certifications": "Certificazioni",
"mail": "Internxt Mail"
"mail": "Internxt Mail",
"photos": "Internxt Photos"
},
"Auth": {
"SignUp": {
Expand Down
3 changes: 2 additions & 1 deletion src/assets/lang/ru/footer.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,8 @@
"business": "Internxt для бизнеса",
"family": "Internxt для семьи",
"pricing": "Цены",
"mail": "Internxt Mail"
"mail": "Internxt Mail",
"photos": "Internxt Photos"
},
"company": {
"title": "Компания",
Expand Down
3 changes: 2 additions & 1 deletion src/assets/lang/ru/navbar.json
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,8 @@
"meet": "Internxt Meet",
"ai": "Internxt AI",
"certifications": "Сертификаты",
"mail": "Internxt Mail"
"mail": "Internxt Mail",
"photos": "Internxt Photos"
},
"Auth": {
"SignUp": {
Expand Down
3 changes: 2 additions & 1 deletion src/assets/lang/zh-tw/footer.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,8 @@
"business": "Internxt 企業版",
"family": "Internxt 家庭版",
"pricing": "價格",
"mail": "Internxt Mail (加密電子郵件)"
"mail": "Internxt Mail (加密電子郵件)",
"photos": "Internxt Photos (加密照片)"
},
"company": {
"title": "公司",
Expand Down
3 changes: 2 additions & 1 deletion src/assets/lang/zh-tw/navbar.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,8 @@
"cleaner": "Internxt Cleaner",
"meet": "Internxt Meet",
"ai": "Internxt AI",
"mail": "Internxt Mail"
"mail": "Internxt Mail",
"photos": "Internxt Photos"
},
"ourValues": {
"privacy": "隱私",
Expand Down
3 changes: 2 additions & 1 deletion src/assets/lang/zh/footer.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,8 @@
"business": "Internxt 商业版",
"family": "Internxt 家庭版",
"pricing": "价格",
"mail": "Internxt Mail (加密电子邮件)"
"mail": "Internxt Mail (加密电子邮件)",
"photos": "Internxt Photos (加密照片)"
},
"company": {
"title": "公司",
Expand Down
3 changes: 2 additions & 1 deletion src/assets/lang/zh/navbar.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,8 @@
"cleaner": "Internxt Cleaner",
"meet": "Internxt Meet",
"ai": "Internxt AI",
"mail": "Internxt Mail"
"mail": "Internxt Mail",
"photos": "Internxt Photos"
},
"solutions": {
"secureCloudStorage": "安全云存储",
Expand Down
1 change: 1 addition & 0 deletions src/assets/types/layout/footer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,7 @@ export interface Products {
family: string;
pricing: string;
mail: string;
photos: string;
}

export interface Resources {
Expand Down
1 change: 1 addition & 0 deletions src/assets/types/layout/navbar.ts
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ export interface Products {
meet: string;
ai: string;
mail: string;
photos: string;
}

export interface Auth {
Expand Down
3 changes: 2 additions & 1 deletion src/components/layout/components/navbar/ItemsNavigation.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,8 @@ export const ItemsNavigation = ({
{ href: '/vpn', text: textContent.products.vpn },
{ href: '/cleaner', text: textContent.products.cleaner },
{ href: '/meet', text: textContent.products.meet },
{ href: '/mail', text: textContent.products.mail }
{ href: '/mail', text: textContent.products.mail },
{ href: '/photos', text: textContent.products.photos }
]}
darkMode={darkMode}
lang={lang}
Expand Down
14 changes: 13 additions & 1 deletion src/components/layout/footers/Footer.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -295,7 +295,15 @@ export default function Footer({
{textContent.FooterSection.sections.products.mail}
</Link>


<Link
href="/photos"
locale={lang}
passHref
className="items-center hover:text-primary"
>
{textContent.FooterSection.sections.products.photos}
</Link>

<Link href="/pricing" locale={lang} passHref className="hover:text-primary">
{textContent.FooterSection.sections.products.pricing}
</Link>
Expand Down Expand Up @@ -1000,6 +1008,10 @@ export default function Footer({
{textContent.FooterSection.sections.products.mail}
</Link>

<Link href="/photos" locale={lang} passHref>
{textContent.FooterSection.sections.products.photos}
</Link>

<Link href="/pricing" locale={lang} passHref className="items-center hover:text-primary">
{textContent.FooterSection.sections.products.pricing}
</Link>
Expand Down
6 changes: 6 additions & 0 deletions src/components/layout/navbars/Navbar.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -295,6 +295,12 @@ export default function Navbar(props: Readonly<NavbarProps>) {
</Link>
<Link href="/meet" locale={props.lang} className="flex flex-row space-x-2">
<p>{props.textContent.products.meet}</p>
</Link>
<Link href="/mail" locale={props.lang} className="flex flex-row space-x-2">
<p>{props.textContent.products.mail}</p>
</Link>
<Link href="/photos" locale={props.lang} className="flex flex-row space-x-2">
<p>{props.textContent.products.photos}</p>
</Link>
<Link
href="https://ai.internxt.com/"
Expand Down
12 changes: 6 additions & 6 deletions src/components/photos/CoreFeaturesSection.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -38,11 +38,11 @@ const CoreFeaturesSection = ({ textContent }: CoreFeaturesSectionProps): JSX.Ele

return (
<section className="w-full bg-neutral-17 py-10 lg:py-20">
<div className="flex flex-col gap-6 px-5 lg:ml-20 lg:pl-20 xl:pl-32 3xl:pl-80">
<h2 className="flex flex-col text-[30px] lg:translate-x-40 lg:pl-20 lg:text-5xl lg:pr-10 lg:max-w-[1000px] font-bold leading-tight text-gray-100">{textContent.title}</h2>
<p className="text-base font-normal text-gray-55 lg:text-lg lg:translate-x-60 lg:max-w-[900px]">{textContent.description}</p>
<div className="flex w-full flex-row gap-2 lg:max-w-[1500px] lg:pl-20">
<div className="flex w-full flex-col gap-6 lg:max-w-[500px] lg:pl-40">
<div className="mx-auto flex w-full max-w-[1100px] flex-col gap-8 px-5 lg:gap-10 lg:px-20">
<h2 className="max-w-[1000px] text-[30px] font-bold leading-tight text-gray-100 lg:text-5xl lg:pr-10">{textContent.title}</h2>
<p className="max-w-[900px] leading-tight text-base font-normal text-gray-55 lg:text-lg">{textContent.description}</p>
<div className="flex w-full flex-col justify-center gap-6 lg:max-w-[1500px] lg:flex-row lg:gap-16">
<div className="flex w-full flex-col gap-6 lg:max-w-[420px]">
<div className="flex flex-row items-center justify-center lg:hidden">
<Image
src={getImage(`/images/photos/mobile.webp`)}
Expand Down Expand Up @@ -84,7 +84,7 @@ const CoreFeaturesSection = ({ textContent }: CoreFeaturesSectionProps): JSX.Ele
src={getImage(`/images/photos/mockup${activeIndex + 1}.webp`)}
alt={textContent.accordionCards.titles[activeIndex]}
height={450}
width={345}
width={395}
className="rounded-16 object-cover"
/>
</div>
Expand Down
14 changes: 7 additions & 7 deletions src/components/photos/HeroSection.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,23 +7,23 @@ export const HeroSection = ({ textContent }) => {

return (
<section
className="flex h-min w-full flex-col items-center justify-between gap-2 px-8 pt-28 lg:flex-row lg:gap-2 lg:px-10 lg:pt-10 xl:px-32 3xl:px-80"
className="mt-20 flex w-full min-h-[60vh] flex-col items-center justify-center gap-8 px-8 py-8 lg:mt-10 lg:min-h-auto lg:flex-row lg:justify-between lg:gap-10 lg:px-10 lg:pt-10 xl:px-32 3xl:px-80"
style={{ background: 'linear-gradient(360deg, #FFFFFF 0%, #E5EFFF 85.17%)' }}
>
<div
className={`z-20 flex h-min w-[360px] shrink-0 flex-col items-start justify-center gap-4 rounded-xl p-6 shadow-soft backdrop-blur-55 lg:h-min lg:w-[700px] lg:gap-8 lg:rounded-16 lg:p-8`}
className={`z-20 h-min flex w-full shrink-0 flex-col items-start justify-center gap-4 rounded-xl p-6 py-5 shadow-soft backdrop-blur-55 lg:w-1/2 lg:max-w-[600px] lg:gap-8 lg:rounded-16 lg:p-8`}
style={{
background: 'linear-gradient(115.95deg, rgba(244, 248, 255, 0.75) 10.92%, rgba(255, 255, 255, 0.08) 96.4%)',
}}
>
<div className="flex h-min w-min flex-col rounded-2 border border-primary px-1">
<p className="flex whitespace-nowrap text-sm font-semibold text-primary lg:text-lg">{textContent.label}</p>
</div>
<h1 className="flex flex-col text-[30px] font-semibold leading-tight text-gray-100 lg:gap-2 lg:text-6xl">
<h1 className="flex flex-col text-[30px] font-semibold leading-tight text-gray-100 lg:gap-2 lg:text-5xl">
{textContent.title}
</h1>
<p className="text-base font-normal leading-tight text-gray-55 lg:text-xl">{textContent.description}</p>
<div className="flex flex-col">
<div className="flex flex-col gap-2">
<Link
href="/pricing"
className="z-10 flex h-min w-min items-center justify-center whitespace-nowrap rounded-sm-6 bg-primary px-6 py-4 text-base font-normal text-white hover:bg-primary-dark"
Expand All @@ -32,15 +32,15 @@ export const HeroSection = ({ textContent }) => {
</Link>
<div className="flex flex-row items-center justify-center gap-2 pt-3 lg:justify-start">
<CheckCircle size={24} color="#32C356" weight="fill" />
<p className="whitespace-nowrap text-base lg:text-base text-gray-55">
<p className="whitespace-nowrap text-sm lg:text-base text-gray-55">
{textContent.garantee}
</p>
</div>
</div>
</div>
<div className="w-full max-w-full shrink-0 min-h-[320px] lg:w-[750px] lg:max-w-[750px] lg:min-h-[563px] lg:justify-center lg:pt-10 lg:flex">
<div className="flex flex-1 items-center justify-center lg:min-w-0 lg:pt-10">
<Image
className="w-full h-auto"
className="h-auto w-full object-contain"
src={getImage('/images/photos/photo.webp')}
alt="Internxt Drive panel interface"
height={563}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,10 @@ import { PhotoText } from '@/assets/types/photos';

interface HorizontalScrollableSectionWithPhotosProps {
textContent: PhotoText['DesignedSection'];
needsDivider?: boolean;
}

export default function HorizontalScrollableSectionWithPhotosSection({
textContent,
needsDivider = true,
}: Readonly<HorizontalScrollableSectionWithPhotosProps>): JSX.Element {
const cardTitles = textContent?.scrollableSection.titles ?? [];
const cardDescriptions = textContent?.scrollableSection.descriptions ?? [];
Expand Down Expand Up @@ -88,7 +86,7 @@ export default function HorizontalScrollableSectionWithPhotosSection({

return (
<section
className="flex h-min w-full flex-col items-center justify-center gap-8 py-5 pt-14 lg:h-min lg:gap-16 lg:pt-20"
className="flex h-min w-full flex-col items-center justify-center gap-2 py-5 pt-14 lg:h-min lg:gap-14 lg:pt-20"
style={{ background: '#FFFFFF 100%' }}
>
<div className="w-full max-w-[1200px] px-5 lg:px-8">
Expand Down
12 changes: 6 additions & 6 deletions src/components/photos/PhotoSection.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,24 +10,24 @@ interface PhotoSectionProps {

const PhotoSection = ({ textContent }: PhotoSectionProps): JSX.Element => {
return (
<section className="flex w-full flex-col items-center justify-center gap-8 px-5 lg:pb-10 lg:gap-16 lg:px-10 lg:py-20 lg:pt-15 xl:px-32 3xl:px-80">
<h2 className="text-3xl font-bold text-gray-100 lg:text-6xl">{textContent.title}</h2>
<section className="flex w-full flex-col items-center justify-center gap-4 px-5 lg:pb-10 lg:gap-14 lg:px-10 lg:py-20 lg:pt-15 xl:px-32 3xl:px-80">
<h2 className="text-3xl font-bold text-gray-100 lg:text-5xl">{textContent.title}</h2>

<div className="flex flex-col items-center gap-8">
<div className="flex w-full flex-col gap-4 lg:w-[70%]">
<div className="flex w-full flex-col gap-4 lg:w-[63%]">
{textContent.description.map((desc) => (
<p key={desc.slice(0,20)} className="text-sm text-center font-normal leading-tight text-gray-55 lg:text-lg lg:text-center">
{desc}
</p>
))}
</div>

<div className="hidden w-full lg:flex lg:w-1/2">
<div className="hidden w-full lg:flex lg:w-2/3">
<Image
src={getImage('/images/photos/mobile.webp')}
alt="Internxt Drive panel interface"
height={402}
width={832}
height={562}
width={1163}
quality={200}
className="h-auto w-full"
/>
Expand Down
2 changes: 1 addition & 1 deletion src/components/shared/sections/FaqSection.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ const FAQSection = ({
>
<div className="flex flex-col items-center justify-center space-y-10 px-10 py-10 pb-16 lg:pb-10 lg:pt-20">
<TitleTag
className={`text-center text-[30px] font-semibold lg:max-w-[850px] ${
className={`text-center text-[30px] leading-tight font-semibold lg:max-w-[850px] ${
textColor ? textColor : 'text- gray-100'
} lg:text-3xl`}
>
Expand Down
4 changes: 0 additions & 4 deletions src/pages/photos.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -132,10 +132,6 @@ const Photo = ({
bgPadding="lg:py-20 lg:pb-20 pb-10"
/>

<div className="w-full max-w-[1500px] px-5 lg:px-8 lg:translate-x-80">
<div className="h-px w-full bg-neutral-35" />
</div>

<FAQSection textContent={{
title: textContent.SemanticAccordion.title,
faq: textContent.SemanticAccordion.items
Expand Down
Loading