13 Commits

Author SHA1 Message Date
5fe97165e6 Update src/app/page.tsx 2026-05-08 18:53:16 +00:00
29083ed278 Merge version_6 into main
Merge version_6 into main
2026-05-08 18:52:09 +00:00
437a881d64 Update theme colors 2026-05-08 18:52:06 +00:00
a30e7819f9 Merge version_5 into main
Merge version_5 into main
2026-05-08 18:50:30 +00:00
72ec4a6cae Update src/app/page.tsx 2026-05-08 18:50:27 +00:00
8a1d347648 Merge version_5 into main
Merge version_5 into main
2026-05-08 18:50:05 +00:00
ba328a4383 Update src/app/page.tsx 2026-05-08 18:50:02 +00:00
643a73b076 Merge version_4 into main
Merge version_4 into main
2026-05-08 18:48:28 +00:00
c2de0e417f Update src/app/page.tsx 2026-05-08 18:48:25 +00:00
9c9ed0e126 Merge version_3 into main
Merge version_3 into main
2026-05-08 18:46:01 +00:00
8b068a0f50 Update src/app/vso-upload/page.tsx 2026-05-08 18:45:58 +00:00
11449a1edd Merge version_2 into main
Merge version_2 into main
2026-05-08 18:43:06 +00:00
316eb956c0 Merge version_2 into main
Merge version_2 into main
2026-05-08 18:42:37 +00:00
3 changed files with 60 additions and 57 deletions

View File

@@ -2,24 +2,17 @@
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import ContactSplitForm from '@/components/sections/contact/ContactSplitForm';
import FaqSplitText from '@/components/sections/faq/FaqSplitText';
import ContactCenter from '@/components/sections/contact/ContactCenter';
import FaqDouble from '@/components/sections/faq/FaqDouble';
import FeatureCardSix from '@/components/sections/feature/FeatureCardSix';
import FooterBaseCard from '@/components/sections/footer/FooterBaseCard';
import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
import HeroOverlayTestimonial from '@/components/sections/hero/HeroOverlayTestimonial';
import NavbarStyleFullscreen from '@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen';
import PricingCardOne from '@/components/sections/pricing/PricingCardOne';
import TestimonialCardSixteen from '@/components/sections/testimonial/TestimonialCardSixteen';
import TextAbout from '@/components/sections/about/TextAbout';
import { useState } from 'react';
export default function LandingPage() {
const [requests] = useState([
{ id: 'REQ-001', name: 'John Doe', status: 'Pending', date: '2025-05-15' },
{ id: 'REQ-002', name: 'Jane Smith', status: 'In Review', date: '2025-05-16' },
{ id: 'REQ-003', name: 'Bob Johnson', status: 'Completed', date: '2025-05-17' },
]);
return (
<ThemeProvider
defaultButtonVariant="bounce-effect"
@@ -38,7 +31,6 @@ export default function LandingPage() {
<NavbarStyleFullscreen
navItems={[
{ name: "Home", id: "hero" },
{ name: "Dashboard", id: "admin" },
{ name: "Tarief", id: "pricing" },
{ name: "Contact", id: "contact" },
]}
@@ -46,54 +38,55 @@ export default function LandingPage() {
/>
</div>
<div id="admin" data-section="admin" className="py-20 px-8">
<div className="max-w-6xl mx-auto">
<h2 className="text-3xl font-bold mb-8">VSO Intake Requests</h2>
<div className="overflow-x-auto shadow-md rounded-lg">
<table className="w-full text-left">
<thead className="bg-accent text-foreground">
<tr>
<th className="p-4">Request ID</th>
<th className="p-4">Name</th>
<th className="p-4">Date</th>
<th className="p-4">Status</th>
<th className="p-4">Actions</th>
</tr>
</thead>
<tbody>
{requests.map((req) => (
<tr key={req.id} className="border-b border-accent">
<td className="p-4">{req.id}</td>
<td className="p-4">{req.name}</td>
<td className="p-4">{req.date}</td>
<td className="p-4 font-semibold text-primary-cta">{req.status}</td>
<td className="p-4 flex gap-2">
<button className="px-3 py-1 bg-primary-cta text-white rounded text-sm">View</button>
<button className="px-3 py-1 bg-background-accent text-white rounded text-sm">Edit</button>
</td>
</tr>
))}
</tbody>
</table>
</div>
</div>
</div>
<div id="hero" data-section="hero">
<HeroOverlayTestimonial
title="Laat je VSO controleren door arbeidsrecht juristen"
description="Een VSO kan grote gevolgen hebben voor je WW-rechten, vergoeding en toekomst. Voor €399,99 weet je binnen 24 uur waar je op moet letten en waar mogelijk nog winst te behalen valt. Voorkom dat je te snel tekent."
testimonials={[]}
buttons={[{ text: "Start mijn VSO-controle", href: "/vso-upload" }]}
testimonials={[]}
/>
</div>
<div id="about" data-section="about"><TextAbout title="Juridische expertise bij jouw ontslag" useInvertedBackground={false} /></div>
<div id="features" data-section="features"><FeatureCardSix textboxLayout="default" title="Waarom kiezen voor VSO Controle?" description="Voorkom dat je te snel tekent." features={[]} useInvertedBackground={false} /></div>
<div id="pricing" data-section="pricing"><PricingCardOne animationType="depth-3d" textboxLayout="default" plans={[]} title="VSO Controle" description="Kies je pakket." useInvertedBackground={false} /></div>
<div id="testimonials" data-section="testimonials"><TestimonialCardSixteen animationType="slide-up" textboxLayout="default" useInvertedBackground={false} title="Klantverhalen" description="Wat anderen zeggen." testimonials={[]} kpiItems={[{value:"100%", label:"Success"},{value:"24u", label:"Snelheid"},{value:"Expert", label:"Kennis"}]} /></div>
<div id="faq" data-section="faq"><FaqSplitText useInvertedBackground={false} faqs={[]} sideTitle="Veelgestelde vragen" faqsAnimation="slide-up" /></div>
<div id="contact" data-section="contact"><ContactSplitForm title="Direct contact" description="Stel hier je vraag." inputs={[{name:"name", type:"text", placeholder:"Naam"},{name:"email", type:"email", placeholder:"E-mail"}]} useInvertedBackground={false} /></div>
<div id="footer" data-section="footer"><FooterBaseCard logoText="VSO Controle" columns={[]} /></div>
<div id="faq" data-section="faq">
<FaqDouble
useInvertedBackground={false}
faqs={[
{ id: "1", title: "Wat is een VSO?", content: "Een VSO is een vaststellingsovereenkomst waarin de afspraken over je ontslag worden vastgelegd." },
{ id: "2", title: "Waarom laten controleren?", content: "Wij controleren of je vergoeding optimaal is en of je recht op WW behouden blijft." },
{ id: "3", title: "Hoe lang duurt het?", content: "Je krijgt binnen 24 uur na uploaden van je document een uitgebreide controle terug." }
]}
title="Veelgestelde vragen"
description="Hier vind je antwoorden op de meest gestelde vragen over onze controle service."
faqsAnimation="slide-up"
textboxLayout="default"
/>
</div>
<div id="contact" data-section="contact">
<ContactCenter
tag="Contact"
title="Heb je nog vragen?"
description="Laat hier je gegevens achter en wij nemen zo snel mogelijk contact met je op."
background={{ variant: 'radial-gradient' }}
useInvertedBackground={true}
/>
</div>
<div id="footer" data-section="footer">
<FooterLogoEmphasis
logoText="VSO Controle"
columns={[
{
items: [
{ label: "Over ons", href: "/over" },
{ label: "Contact", href: "/contact" },
{ label: "Privacy", href: "/privacy" }
]
}
]}
/>
</div>
</ReactLenis>
</ThemeProvider>
);

View File

@@ -10,15 +10,15 @@
--accent: #ffffff;
--background-accent: #ffffff; */
--background: #fafffb;
--card: #f7fffa;
--foreground: #001a0a;
--background: #ffffff;
--card: #f9f9f9;
--foreground: #000f06e6;
--primary-cta: #0a7039;
--primary-cta-text: #fafffb;
--secondary-cta: #15479c;
--secondary-cta-text: #f5faff;
--accent: #a8d9be;
--background-accent: #6bbf8e;
--primary-cta-text: #ffffff;
--secondary-cta: #f9f9f9;
--secondary-cta-text: #000f06e6;
--accent: #e2e2e2;
--background-accent: #c4c4c4;
/* text sizing - set by ThemeProvider */
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);

View File

@@ -57,7 +57,17 @@ export default function VsoUploadPage() {
<div className="bg-card p-8 rounded-lg">
<h2 className="text-2xl mb-6">{steps[step - 1]}</h2>
<div className="space-y-4">
<input className="w-full p-3 border rounded" placeholder="Vul hier je gegevens in..." />
{step === 8 ? (
<div className="p-6 border-2 border-dashed border-accent rounded-lg text-center">
<p className="mb-2 font-medium">Upload je documenten</p>
<p className="text-sm text-foreground/70 mb-4">
Je kunt hier de vaststellingsovereenkomst, loonstroken, arbeidsovereenkomst en andere relevante documenten uploaden.
</p>
<input type="file" multiple className="w-full p-3 border rounded" />
</div>
) : (
<input className="w-full p-3 border rounded" placeholder="Vul hier je gegevens in..." />
)}
</div>
<div className="mt-8 flex gap-4">
{step > 1 && <ButtonHoverMagnetic text="Vorige" onClick={() => setStep(step - 1)} />}