add images and redesign hompeage into sections, fix the dark color
Build & Deploy / Build & Push Docker Image (push) Failing after 48s
Build & Deploy / Deploy to VPS (push) Has been skipped
Test / API Unit Tests (push) Failing after 5m2s
Test / Marketplace Unit Tests (push) Failing after 4m55s
Test / Admin Unit Tests (push) Successful in 9m37s
Test / Dashboard Unit Tests (push) Successful in 9m37s
Test / API Integration Tests (push) Successful in 9m54s

This commit is contained in:
root
2026-06-26 21:01:02 -04:00
parent d7fb7b7a7b
commit 35172ab46b
102 changed files with 1106 additions and 280 deletions
@@ -0,0 +1,20 @@
import { ForgotPasswordForm } from '@/components/auth/ForgotPasswordForm'
import { isLocale, type Locale } from '@/lib/localization/config'
import { notFound } from 'next/navigation'
import { Suspense } from 'react'
export default async function ForgotPasswordPage({
params,
}: {
params: Promise<{ locale: string }>
}) {
const { locale: localeValue } = await params
if (!isLocale(localeValue)) notFound()
const locale = localeValue as Locale
return (
<Suspense fallback={null}>
<ForgotPasswordForm locale={locale} />
</Suspense>
)
}
+4 -6
View File
@@ -6,7 +6,7 @@ import '@/styles/globals.css';
import { SiteFooter } from '@/components/app-shell/SiteFooter';
import { DemoDialogHost } from '@/components/integrations/DemoDialogHost';
import { SiteHeader } from '@/components/app-shell/SiteHeader';
import { HeaderRouter } from '@/components/app-shell/HeaderRouter';
import { ThemeController } from '@/components/app-shell/ThemeController';
import { getPublicIntegrationConfig } from '@/lib/integrations/environment';
import { getDirection, isLocale, type Locale } from '@/lib/localization/config';
@@ -26,8 +26,8 @@ import type { ReactNode } from 'react';
export async function generateMetadata(): Promise<Metadata> {
return {
icons: {
icon: '/rentaldrivego.jpeg',
apple: '/rentaldrivego.jpeg',
icon: '/rentaldrivego.png',
apple: '/rentaldrivego.png',
},
};
}
@@ -75,11 +75,10 @@ export default async function LocaleLayout({ children, params }: LocaleLayoutPro
<a className="skip-link" href="#main-content">
{messages.shell.skipToContent}
</a>
<SiteHeader
<HeaderRouter
locale={locale}
messages={messages.shell}
themePreference={preference}
demoEnabled={integrationConfig.demoSubmissionEnabled}
/>
{children}
<DemoDialogHost
@@ -90,7 +89,6 @@ export default async function LocaleLayout({ children, params }: LocaleLayoutPro
<SiteFooter
locale={locale}
messages={messages.shell}
demoEnabled={integrationConfig.demoSubmissionEnabled}
/>
</body>
</html>
+1 -3
View File
@@ -44,7 +44,7 @@ export default async function LocaleHomePage({ params }: LocalePageProps) {
const locale: Locale = localeValue;
const messages = getMessages(locale);
const content = buildHomepageContent(messages.homepage, messages.shell);
const content = buildHomepageContent(messages.homepage, messages.shell, locale);
const integrationConfig = getPublicIntegrationConfig();
const homePath = localizedPath('home', locale);
@@ -53,7 +53,6 @@ export default async function LocaleHomePage({ params }: LocalePageProps) {
<HeroSection
content={content.hero}
homePath={homePath}
demoSubmissionEnabled={integrationConfig.demoSubmissionEnabled}
/>
<TrustSection content={content.trust} />
<ComparisonSection content={content.comparison} />
@@ -72,7 +71,6 @@ export default async function LocaleHomePage({ params }: LocalePageProps) {
<FaqSection content={content.faq} />
<FinalCtaSection
content={content.final}
demoSubmissionEnabled={integrationConfig.demoSubmissionEnabled}
/>
</main>
);
@@ -0,0 +1,20 @@
import { SignInForm } from '@/components/auth/SignInForm'
import { isLocale, type Locale } from '@/lib/localization/config'
import { notFound } from 'next/navigation'
import { Suspense } from 'react'
export default async function SignInPage({
params,
}: {
params: Promise<{ locale: string }>
}) {
const { locale: localeValue } = await params
if (!isLocale(localeValue)) notFound()
const locale = localeValue as Locale
return (
<Suspense fallback={null}>
<SignInForm locale={locale} />
</Suspense>
)
}