'use client'; import { useRef, useState } from 'react'; import { ArrowLeft, ArrowRight, ArrowUpRight, Database, PieChart, Clock, Wallet, } from 'lucide-react'; import Image from 'next/image'; import type { Swiper as SwiperType } from 'swiper'; import { Navigation } from 'swiper/modules'; import { Swiper, SwiperSlide } from 'swiper/react'; import * as Badge from '@/components/ui/badge'; import * as LinkButton from '@/components/ui/link-button'; import 'swiper/swiper.css'; const statsData = [ { id: 'stat1', value: '72%', label: 'Faster reports', icon: Clock, iconColor: 'text-feature-base', description: 'Most finance teams export clean reports and track data', descriptionSpan: 'automatically across multiple accounts daily', ptClass: 'pt-6 xl:pt-0', borderClass: 'border-t lg:border-t-0', }, { id: 'stat2', value: '52%', label: 'Lower spend', icon: Wallet, iconColor: 'text-success-base', description: 'Finance leads reduce spend and build new policies', descriptionSpan: 'with flexible controls and built-in approval limits.', ptClass: 'pt-6 xl:pt-9', borderClass: 'border-t', }, { id: 'stat3', value: '45%', label: 'Cleaner data', icon: Database, iconColor: 'text-highlighted-base', description: 'CFOs detect duplicate records and stop leakages by', descriptionSpan: 'mapping every vendor to categories instantly.', ptClass: 'pt-6 xl:pt-9', borderClass: 'border-t', }, ]; const testimonials = [ { quote: 'Budget tracking was ready out of the box — with instant sync, custom roles, and secure approval chains from day one.', name: 'Sophia Williams', image: 'https://alignui.com/images/blocks/stats-metrics-03-1.jpg', }, { quote: 'Automated expense reports saved us over 15 hours per week — the integration with our existing tools was seamless.', name: 'Michael Chen', image: 'https://alignui.com/images/blocks/stats-metrics-03-1.jpg', }, { quote: 'Real-time visibility into our spending patterns helped us reduce operational costs by 30% in the first quarter.', name: 'Emily Rodriguez', image: 'https://alignui.com/images/blocks/stats-metrics-03-1.jpg', }, { quote: "The approval workflow automation eliminated major bottlenecks — our team's productivity improved significantly.", name: 'David Thompson', image: 'https://alignui.com/images/blocks/stats-metrics-03-1.jpg', }, { quote: 'Multi-currency support and automatic reconciliation made our international operations completely effortless.', name: 'Sarah Kim', image: 'https://alignui.com/images/blocks/stats-metrics-03-1.jpg', }, { quote: 'The analytics dashboard gives us insights we never had before — now every decision is fully data-driven.', name: 'James Wilson', image: 'https://alignui.com/images/blocks/stats-metrics-03-1.jpg', }, { quote: 'Vendor management became so much easier with automatic categorization and real-time spend tracking in place.', name: 'Lisa Anderson', image: 'https://alignui.com/images/blocks/stats-metrics-03-1.jpg', }, { quote: 'The mobile app lets our team submit expenses on the go — reimbursement times dropped by 80% dramatically.', name: 'Robert Martinez', image: 'https://alignui.com/images/blocks/stats-metrics-03-1.jpg', }, { quote: 'Compliance and audit trails are now fully automated — we passed our last quarterly audit with zero findings.', name: 'Jennifer Lee', image: 'https://alignui.com/images/blocks/stats-metrics-03-1.jpg', }, { quote: 'Custom reporting saved our finance team hours of manual work every month — truly a transformative solution.', name: 'Thomas Brown', image: 'https://alignui.com/images/blocks/stats-metrics-03-1.jpg', }, ]; export default function FinanceResultsTestimonialStats() { const swiperRef = useRef(null); const [isBeginning, setIsBeginning] = useState(true); const [isEnd, setIsEnd] = useState(false); const [activeIndex, setActiveIndex] = useState(0); return ( <>
Built for financial precision

Financial clarity tools are a shared mission today, not just for finance leads

Predict growth, control spend, and close the books faster{' '} across every wallet — all in real time.

See it in action now
{ swiperRef.current = swiper; setIsBeginning(swiper.isBeginning); setIsEnd(swiper.isEnd); }} onSlideChange={(swiper) => { setIsBeginning(swiper.isBeginning); setIsEnd(swiper.isEnd); setActiveIndex(swiper.activeIndex); }} className='w-full' > {testimonials.map((testimonial, index) => (

{testimonial.quote}

Stats Metrics Person
{testimonial.name}
Stats Metrics Logo
Pulse ™
))}
{activeIndex + 1}/{testimonials.length}
— {' '} Pulse Technology
{statsData.map((stat) => (

{stat.value}

{stat.label}

{stat.description}{' '} {stat.descriptionSpan}

))}
); }