mirror of
https://github.com/vercel/commerce.git
synced 2025-07-23 04:36:49 +00:00
wip: Add legal
This commit is contained in:
115
app/[locale]/disclosures/disclosures.tsx
Normal file
115
app/[locale]/disclosures/disclosures.tsx
Normal file
@@ -0,0 +1,115 @@
|
||||
'use client';
|
||||
|
||||
import { useTranslations } from 'next-intl';
|
||||
import Link from 'next/link';
|
||||
|
||||
export default function Disclosures() {
|
||||
const t = useTranslations('Index');
|
||||
return (
|
||||
<>
|
||||
<div className="mx-auto font-serif">
|
||||
<h4 className="mx-auto max-w-4xl text-2xl font-extrabold tracking-tight sm:text-3xl">
|
||||
{t('disclosurePage.title')}
|
||||
</h4>
|
||||
<div className="mx-auto max-w-4xl">
|
||||
<div className="font-multilingual my-12 text-lg">
|
||||
<section className="font-multilingual mb-36 mt-12 flex flex-col space-y-6 text-lg md:space-y-3">
|
||||
<div className="flex flex-col space-y-2 md:flex-row md:space-x-3 md:space-y-0">
|
||||
<div className="md:w-1/3">{t('disclosurePage.distributor.label')}</div>
|
||||
<div className="md:w-2/3">
|
||||
<div>{t('disclosurePage.distributor.value')}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className="flex flex-col space-y-2 md:flex-row md:space-x-3 md:space-y-0">
|
||||
<div className="md:w-1/3">{t('disclosurePage.representative.label')}</div>
|
||||
<div className="md:w-2/3">
|
||||
<div>{t('disclosurePage.representative.value')}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className="flex flex-col space-y-2 md:flex-row md:space-x-3 md:space-y-0">
|
||||
<div className="md:w-1/3">{t('disclosurePage.address.label')}</div>
|
||||
<div className="md:w-2/3">
|
||||
<div>{t('disclosurePage.address.one')}</div>
|
||||
<div>{t('disclosurePage.address.two')}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className="flex flex-col space-y-2 md:flex-row md:space-x-3 md:space-y-0">
|
||||
<div className="md:w-1/3">{t('disclosurePage.phone.label')}</div>
|
||||
<div className="md:w-2/3">
|
||||
<div>{t('disclosurePage.phone.value')}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className="flex flex-col space-y-2 md:flex-row md:space-x-3 md:space-y-0">
|
||||
<div className="md:w-1/3">{t('disclosurePage.email.label')}</div>
|
||||
<div className="md:w-2/3">
|
||||
<Link
|
||||
href={`mailto:${t('disclosurePage.homepage.value')}`}
|
||||
className="transition-opacity duration-150 hover:opacity-90"
|
||||
>
|
||||
<div>{t('disclosurePage.email.value')}</div>
|
||||
</Link>
|
||||
</div>
|
||||
</div>
|
||||
<div className="flex flex-col space-y-2 md:flex-row md:space-x-3 md:space-y-0">
|
||||
<div className="md:w-1/3">
|
||||
<div>{t('disclosurePage.homepage.label')}</div>
|
||||
</div>
|
||||
<div className="md:w-2/3">
|
||||
<div></div>
|
||||
<Link
|
||||
href={t('disclosurePage.homepage.value')}
|
||||
className="transition-opacity duration-150 hover:opacity-90"
|
||||
>
|
||||
{t('disclosurePage.homepage.value')}
|
||||
</Link>
|
||||
</div>
|
||||
</div>
|
||||
<div className="flex flex-col space-y-2 md:flex-row md:space-x-3 md:space-y-0">
|
||||
<div className="md:w-1/3">{t('disclosurePage.price.label')}</div>
|
||||
<div className="md:w-2/3">
|
||||
<div>{t('disclosurePage.price.value')}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className="flex flex-col space-y-2 md:flex-row md:space-x-3 md:space-y-0">
|
||||
<div className="md:w-1/3">{t('disclosurePage.otherCharges.label')}</div>
|
||||
<div className="md:w-2/3">
|
||||
<div>{t('disclosurePage.otherCharges.value')}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className="flex flex-col space-y-2 md:flex-row md:space-x-3 md:space-y-0">
|
||||
<div className="md:w-1/3">{t('disclosurePage.paymentMethod.label')}</div>
|
||||
<div className="md:w-2/3">
|
||||
<div>{t('disclosurePage.paymentMethod.value')}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className="flex flex-col space-y-2 md:flex-row md:space-x-3 md:space-y-0">
|
||||
<div className="md:w-1/3">{t('disclosurePage.paymentPeriod.label')}</div>
|
||||
<div className="md:w-2/3">
|
||||
<div>{t('disclosurePage.paymentPeriod.value')}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className="flex flex-col space-y-2 md:flex-row md:space-x-3 md:space-y-0">
|
||||
<div className="md:w-1/3">{t('disclosurePage.delivery.label')}</div>
|
||||
<div className="md:w-2/3">
|
||||
<div>{t('disclosurePage.delivery.value')}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className="flex flex-col space-y-2 md:flex-row md:space-x-3 md:space-y-0">
|
||||
<div className="md:w-1/3">{t('disclosurePage.returnsAndExchanges.label')}</div>
|
||||
<div className="md:w-2/3">
|
||||
<div>{t('disclosurePage.returnsAndExchanges.one')}</div>
|
||||
<div className="pt-4">{t('disclosurePage.returnsAndExchanges.two')}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className="pt-8">
|
||||
<Link href="/" className="transition-opacity duration-150 hover:opacity-90">
|
||||
⇠ {t('disclosurePage.return')}
|
||||
</Link>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
}
|
45
app/[locale]/disclosures/page.tsx
Normal file
45
app/[locale]/disclosures/page.tsx
Normal file
@@ -0,0 +1,45 @@
|
||||
import Footer from 'components/layout/footer';
|
||||
import { SupportedLocale } from 'components/layout/navbar/language-control';
|
||||
|
||||
import Navbar from 'components/layout/navbar';
|
||||
import { getCart } from 'lib/shopify';
|
||||
import { cookies } from 'next/headers';
|
||||
import { Suspense } from 'react';
|
||||
import Disclosures from './disclosures';
|
||||
|
||||
export const runtime = 'edge';
|
||||
const { SITE_NAME } = process.env;
|
||||
|
||||
export const metadata = {
|
||||
title: SITE_NAME,
|
||||
description: SITE_NAME,
|
||||
openGraph: {
|
||||
type: 'website'
|
||||
}
|
||||
};
|
||||
|
||||
export default async function DisclosuresPage({
|
||||
params: { locale }
|
||||
}: {
|
||||
params: { locale?: SupportedLocale };
|
||||
}) {
|
||||
const cartId = cookies().get('cartId')?.value;
|
||||
let cart;
|
||||
|
||||
if (cartId) {
|
||||
cart = await getCart(cartId);
|
||||
}
|
||||
|
||||
return (
|
||||
<div>
|
||||
<Navbar cart={cart} locale={locale} compact />
|
||||
<div className="py-24 md:py-48">
|
||||
<Disclosures />
|
||||
</div>
|
||||
|
||||
<Suspense>
|
||||
<Footer cart={cart} />
|
||||
</Suspense>
|
||||
</div>
|
||||
);
|
||||
}
|
45
app/[locale]/privacy/page.tsx
Normal file
45
app/[locale]/privacy/page.tsx
Normal file
@@ -0,0 +1,45 @@
|
||||
import Footer from 'components/layout/footer';
|
||||
import { SupportedLocale } from 'components/layout/navbar/language-control';
|
||||
|
||||
import Navbar from 'components/layout/navbar';
|
||||
import { getCart } from 'lib/shopify';
|
||||
import { cookies } from 'next/headers';
|
||||
import { Suspense } from 'react';
|
||||
import PrivacyPolicy from './privacy-policy';
|
||||
|
||||
export const runtime = 'edge';
|
||||
const { SITE_NAME } = process.env;
|
||||
|
||||
export const metadata = {
|
||||
title: SITE_NAME,
|
||||
description: SITE_NAME,
|
||||
openGraph: {
|
||||
type: 'website'
|
||||
}
|
||||
};
|
||||
|
||||
export default async function PrivacyPage({
|
||||
params: { locale }
|
||||
}: {
|
||||
params: { locale?: SupportedLocale };
|
||||
}) {
|
||||
const cartId = cookies().get('cartId')?.value;
|
||||
let cart;
|
||||
|
||||
if (cartId) {
|
||||
cart = await getCart(cartId);
|
||||
}
|
||||
|
||||
return (
|
||||
<div>
|
||||
<Navbar cart={cart} locale={locale} compact />
|
||||
<div className="py-24 md:py-48">
|
||||
<PrivacyPolicy />
|
||||
</div>
|
||||
|
||||
<Suspense>
|
||||
<Footer cart={cart} />
|
||||
</Suspense>
|
||||
</div>
|
||||
);
|
||||
}
|
168
app/[locale]/privacy/privacy-policy.tsx
Normal file
168
app/[locale]/privacy/privacy-policy.tsx
Normal file
@@ -0,0 +1,168 @@
|
||||
'use client';
|
||||
|
||||
import { useTranslations } from 'next-intl';
|
||||
|
||||
export default function PrivacyPolicy() {
|
||||
const t = useTranslations('Index');
|
||||
return (
|
||||
<>
|
||||
<div className="mx-auto max-w-3xl text-white">
|
||||
<div className="md:text-4x text-center font-serif text-3xl font-bold leading-tight text-white md:mb-16">
|
||||
{t('privacy.title')}
|
||||
</div>
|
||||
<div className="mb-24 text-lg leading-normal">
|
||||
<div className="text-sb-highlight text-center">{t('privacy.lastModifiedDate')}</div>
|
||||
<div className="mt-4">
|
||||
<p>{t('privacy.pleaseRead')}</p>
|
||||
<p className="mt-4">{t('privacy.usedFor')}</p>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-12 md:text-2xl">
|
||||
{t('privacy.definitions.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('privacy.definitions.capitalizedTerms')}</p>
|
||||
<p className="mt-4">{t('privacy.definitions.affiliate')}</p>
|
||||
<p className="mt-4">{t('privacy.definitions.account')}</p>
|
||||
<p className="mt-4">{t('privacy.definitions.company')}</p>
|
||||
<p className="mt-4">{t('privacy.definitions.cookies')}</p>
|
||||
<p className="mt-4">{t('privacy.definitions.country')}</p>
|
||||
<p className="mt-4">{t('privacy.definitions.dataController')}</p>
|
||||
<p className="mt-4">{t('privacy.definitions.device')}</p>
|
||||
<p className="mt-4">{t('privacy.definitions.doNotTrack')}</p>
|
||||
<p className="mt-4">{t('privacy.definitions.personalData')}</p>
|
||||
<p className="mt-4">{t('privacy.definitions.service')}</p>
|
||||
<p className="mt-4">{t('privacy.definitions.serviceProvider')}</p>
|
||||
<p className="mt-4">{t('privacy.definitions.site')}</p>
|
||||
<p className="mt-4">{t('privacy.definitions.socialMedia')}</p>
|
||||
<p className="mt-4">{t('privacy.definitions.usageData')}</p>
|
||||
<p className="mt-4">{t('privacy.definitions.you')}</p>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-12 md:text-2xl">
|
||||
{t('privacy.collectingAndUsing.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('privacy.collectingAndUsing.inScope')}</p>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-12 md:text-2xl">
|
||||
{t('privacy.usageData.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('privacy.usageData.deviceInfo')}</p>
|
||||
<p className="mt-4">{t('privacy.usageData.mobileInfo')}</p>
|
||||
<p className="mt-4">{t('privacy.usageData.deviceInfo')}</p>
|
||||
</div>
|
||||
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-12 md:text-2xl">
|
||||
{t('privacy.cookies.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('privacy.cookies.trackers')}</p>
|
||||
<p className="mt-4">{t('privacy.cookies.doNotAccept')}</p>
|
||||
</div>
|
||||
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-12 md:text-2xl">
|
||||
{t('privacy.personal.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('privacy.personal.usage.intro')}</p>
|
||||
<ul className="list-disc pl-6">
|
||||
<li className="mt-4">{t('privacy.personal.usage.maintain')}</li>
|
||||
<li className="mt-4">{t('privacy.personal.usage.performance')}</li>
|
||||
<li className="mt-4">{t('privacy.personal.usage.contact')}</li>
|
||||
<li className="mt-4">{t('privacy.personal.usage.requests')}</li>
|
||||
</ul>
|
||||
<p className="mt-8">{t('privacy.personal.sharing.title')}</p>
|
||||
<ul className="list-disc pl-6">
|
||||
<li className="mt-4">{t('privacy.personal.sharing.monitor')}</li>
|
||||
<li className="mt-4">{t('privacy.personal.sharing.merger')}</li>
|
||||
<li className="mt-4">{t('privacy.personal.sharing.affiliates')}</li>
|
||||
<li className="mt-4">{t('privacy.personal.sharing.businessPartners')}</li>
|
||||
<li className="mt-4">{t('privacy.personal.sharing.socialMedia')}</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-12 md:text-2xl">
|
||||
{t('privacy.personal.retention.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('privacy.personal.retention.asNecessary')}</p>
|
||||
<p className="mt-4">{t('privacy.personal.retention.internalAnalysis')}</p>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-12 md:text-2xl">
|
||||
{t('privacy.personal.transfer.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('privacy.personal.transfer.transborder')}</p>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-12 md:text-2xl">
|
||||
{t('privacy.personal.disclosure.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('privacy.personal.disclosure.merger')}</p>
|
||||
<p className="mt-4">{t('privacy.personal.disclosure.mandatory')}</p>
|
||||
<p className="mt-4">{t('privacy.personal.disclosure.goodFaith')}</p>
|
||||
<p className="mt-4">{t('privacy.personal.disclosure.noGuarantee')}</p>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-12 md:text-2xl">
|
||||
{t('privacy.personal.processing.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('privacy.personal.processing.limitedUse')}</p>
|
||||
<p className="mt-4">{t('privacy.personal.processing.thirdParties.intro')}</p>
|
||||
<ul className="list-disc pl-6">
|
||||
<li className="mt-4">{t('privacy.personal.processing.thirdParties.monitor')}</li>
|
||||
<li className="mt-4">{t('privacy.personal.processing.thirdParties.marketing')}</li>
|
||||
<li className="mt-4">{t('privacy.personal.processing.thirdParties.services')}</li>
|
||||
<li className="mt-4">{t('privacy.personal.processing.thirdParties.protection')}</li>
|
||||
<li className="mt-4">{t('privacy.personal.processing.thirdParties.ads')}</li>
|
||||
<li className="mt-4">{t('privacy.personal.processing.thirdParties.liability')}</li>
|
||||
</ul>
|
||||
<p className="mt-4">{t('privacy.personal.processing.creditCards')}</p>
|
||||
<p className="mt-4">{t('privacy.personal.processing.cookies')}</p>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-12 md:text-2xl">
|
||||
{t('privacy.personal.mobile.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('privacy.personal.mobile.optOut')}</p>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-12 md:text-2xl">
|
||||
{t('privacy.personal.doNotTrack.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('privacy.personal.doNotTrack.noResponse')}</p>
|
||||
<p className="mt-4">{t('privacy.personal.doNotTrack.browser')}</p>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-12 md:text-2xl">
|
||||
{t('privacy.personal.links.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('privacy.personal.links.external')}</p>
|
||||
<p className="mt-4">{t('privacy.personal.links.disclaimer')}</p>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-12 md:text-2xl">
|
||||
{t('privacy.changes.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('privacy.changes.updates')}</p>
|
||||
<p className="mt-4">{t('privacy.changes.review')}</p>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-12 md:text-2xl">
|
||||
{t('privacy.contactUs.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>
|
||||
{t('privacy.contactUs.questions')}{' '}
|
||||
<a
|
||||
href={`mailto:${t('email-address.support')}`}
|
||||
className="hover:text-green-600"
|
||||
aria-label={t('privacy.contactUs.ariaLabel')}
|
||||
>
|
||||
{t('email-address.support')}
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
}
|
@@ -2,7 +2,7 @@ import Footer from 'components/layout/footer';
|
||||
import { SupportedLocale } from 'components/layout/navbar/language-control';
|
||||
|
||||
import Navbar from 'components/layout/navbar';
|
||||
import Stories from 'components/layout/stories';
|
||||
import StoriesDetail from 'components/layout/stories-detail';
|
||||
import { BLOG_HANDLE } from 'lib/constants';
|
||||
import { getCart } from 'lib/shopify';
|
||||
import { cookies } from 'next/headers';
|
||||
@@ -35,7 +35,7 @@ export default async function StoriesPage({
|
||||
<div>
|
||||
<Navbar cart={cart} locale={locale} compact />
|
||||
<div className="py-24 md:py-48">
|
||||
<Stories handle={BLOG_HANDLE} locale={locale} />
|
||||
<StoriesDetail handle={BLOG_HANDLE} locale={locale} />
|
||||
</div>
|
||||
|
||||
<Suspense>
|
||||
|
45
app/[locale]/terms/page.tsx
Normal file
45
app/[locale]/terms/page.tsx
Normal file
@@ -0,0 +1,45 @@
|
||||
import Footer from 'components/layout/footer';
|
||||
import { SupportedLocale } from 'components/layout/navbar/language-control';
|
||||
|
||||
import Navbar from 'components/layout/navbar';
|
||||
import { getCart } from 'lib/shopify';
|
||||
import { cookies } from 'next/headers';
|
||||
import { Suspense } from 'react';
|
||||
import TermsOfUse from './terms-of-use';
|
||||
|
||||
export const runtime = 'edge';
|
||||
const { SITE_NAME } = process.env;
|
||||
|
||||
export const metadata = {
|
||||
title: SITE_NAME,
|
||||
description: SITE_NAME,
|
||||
openGraph: {
|
||||
type: 'website'
|
||||
}
|
||||
};
|
||||
|
||||
export default async function TermsPage({
|
||||
params: { locale }
|
||||
}: {
|
||||
params: { locale?: SupportedLocale };
|
||||
}) {
|
||||
const cartId = cookies().get('cartId')?.value;
|
||||
let cart;
|
||||
|
||||
if (cartId) {
|
||||
cart = await getCart(cartId);
|
||||
}
|
||||
|
||||
return (
|
||||
<div>
|
||||
<Navbar cart={cart} locale={locale} compact />
|
||||
<div className="py-24 md:py-48">
|
||||
<TermsOfUse />
|
||||
</div>
|
||||
|
||||
<Suspense>
|
||||
<Footer cart={cart} />
|
||||
</Suspense>
|
||||
</div>
|
||||
);
|
||||
}
|
145
app/[locale]/terms/terms-of-use.tsx
Normal file
145
app/[locale]/terms/terms-of-use.tsx
Normal file
@@ -0,0 +1,145 @@
|
||||
'use client';
|
||||
|
||||
import { useTranslations } from 'next-intl';
|
||||
|
||||
export default function TermsOfUse() {
|
||||
const t = useTranslations('Index');
|
||||
return (
|
||||
<>
|
||||
<div className="mx-auto max-w-3xl text-white">
|
||||
<div className="text-center font-serif text-2xl font-bold leading-tight text-white md:mb-16 md:text-4xl">
|
||||
{t('terms.title')}
|
||||
</div>
|
||||
<div className="mb-24 text-lg leading-normal">
|
||||
<div className="mt-4 text-center">{t('terms.pleaseRead')}</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-16 md:text-2xl">
|
||||
{t('terms.definitions.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('terms.definitions.capitalizedTerms')}</p>
|
||||
<p className="mt-4">{t('terms.definitions.affiliate')}</p>
|
||||
<p className="mt-4">{t('terms.definitions.account')}</p>
|
||||
<p className="mt-4">{t('terms.definitions.company')}</p>
|
||||
<p className="mt-4">{t('terms.definitions.country')}</p>
|
||||
<p className="mt-4">{t('terms.definitions.feedback')}</p>
|
||||
<p className="mt-4">{t('terms.definitions.goods')}</p>
|
||||
<p className="mt-4">{t('terms.definitions.orders')}</p>
|
||||
<p className="mt-4">{t('terms.definitions.service')}</p>
|
||||
<p className="mt-4">{t('terms.definitions.site')}</p>
|
||||
<p className="mt-4">{t('terms.definitions.socialMedia')}</p>
|
||||
<p className="mt-4">{t('terms.definitions.you')}</p>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-16 md:text-2xl">
|
||||
{t('terms.acknowledgment.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('terms.acknowledgment.intro')}</p>
|
||||
<p className="mt-4">{t('terms.acknowledgment.acceptance')}</p>
|
||||
<p className="mt-4">{t('terms.acknowledgment.access')}</p>
|
||||
<p className="mt-4">{t('terms.acknowledgment.age')}</p>
|
||||
<p className="mt-4">{t('terms.acknowledgment.privacy')}</p>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-16 md:text-2xl">
|
||||
{t('terms.orders.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('terms.orders.contract')}</p>
|
||||
<p className="mt-4">{t('terms.orders.requiredInfo')}</p>
|
||||
<p className="mt-4">{t('terms.orders.reps')}</p>
|
||||
<p className="mt-4">{t('terms.orders.onwardTransfers')}</p>
|
||||
<p className="mt-4">{t('terms.orders.cancellation')}</p>
|
||||
<p className="mt-4">{t('terms.orders.returns.policy')}</p>
|
||||
<p className="mt-4">{t('terms.orders.returns.damagedGoods')}</p>
|
||||
<p className="mt-4">{t('terms.orders.returns.exceptions.title')}</p>
|
||||
<ul className="list-disc pl-6">
|
||||
<li className="mt-4">{t('terms.orders.returns.exceptions.personalized')}</li>
|
||||
<li className="mt-4">{t('terms.orders.returns.exceptions.expired')}</li>
|
||||
<li className="mt-4">{t('terms.orders.returns.exceptions.hygiene')}</li>
|
||||
<li className="mt-4">{t('terms.orders.returns.exceptions.mixed')}</li>
|
||||
<li className="mt-4">{t('terms.orders.returns.exceptions.digital')}</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-16 md:text-2xl">
|
||||
{t('terms.inaccuracies.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('terms.inaccuracies.errorsPossible')}</p>
|
||||
<p className="mt-4">{t('terms.inaccuracies.noGuarantees')}</p>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-16 md:text-2xl">
|
||||
{t('terms.prices.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('terms.prices.changes')}</p>
|
||||
<p className="mt-4">{t('terms.prices.payments')}</p>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-16 md:text-2xl">
|
||||
{t('terms.promotions.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('terms.promotions.conflicts')}</p>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-16 md:text-2xl">
|
||||
{t('terms.ip.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('terms.ip.ownership')}</p>
|
||||
<p className="mt-4">{t('terms.ip.protections')}</p>
|
||||
<p className="mt-4">{t('terms.ip.trademarks')}</p>
|
||||
<p className="mt-4">{t('terms.ip.assignment')}</p>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-16 md:text-2xl">
|
||||
{t('terms.thirdPartyLinks.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('terms.thirdPartyLinks.noControl')}</p>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-16 md:text-2xl">
|
||||
{t('terms.liability.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('terms.liability.directDamages')}</p>
|
||||
<p className="mt-4">{t('terms.liability.noSpecialDamages')}</p>
|
||||
<p className="mt-4">{t('terms.liability.noSpecialDamages')}</p>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-16 md:text-2xl">
|
||||
{t('terms.disclaimer.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('terms.disclaimer.asIs')}</p>
|
||||
<p className="mt-4">{t('terms.disclaimer.conflicts')}</p>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-16 md:text-2xl">
|
||||
{t('terms.misc.title')}
|
||||
</div>
|
||||
<div>
|
||||
<p>{t('terms.misc.governingLaw')}</p>
|
||||
<p className="mt-4">{t('terms.misc.severability')}</p>
|
||||
<p className="mt-4">{t('terms.misc.waiver')}</p>
|
||||
<p className="mt-4">{t('terms.misc.translation')}</p>
|
||||
<p className="mt-4">{t('terms.misc.changes')}</p>
|
||||
</div>
|
||||
<div className="my-8 text-center font-serif text-xl font-bold text-white md:my-16 md:text-2xl">
|
||||
{t('terms.contactUs.title')}
|
||||
</div>
|
||||
<div className="mb-12">
|
||||
<p>
|
||||
{t('terms.contactUs.instructions')}
|
||||
<a
|
||||
href={`mailto:${t('email-address.support')}`}
|
||||
className="branded-link"
|
||||
aria-label={t('privacy.contactUs.ariaLabel')}
|
||||
>
|
||||
{t('email-address.support')}
|
||||
</a>
|
||||
.
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<div className="text-center font-normal text-white">{t('terms.lastModifiedDate')}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
}
|
Reference in New Issue
Block a user