import React, { useState } from 'react'; import { PackageTier, VehicleType } from '../types'; const DetailRealityCheck: React.FC = () => { const [vehicleType, setVehicleType] = useState(VehicleType.CAR_4DR); const [dirtiness, setDirtiness] = useState(5); const [hasHair, setHasHair] = useState(false); const [hasStains, setHasStains] = useState(false); const [hasOdors, setHasOdors] = useState(false); const [year, setYear] = useState(new Date().getFullYear()); const [result, setResult] = useState<{ tier: PackageTier; price: string; reason: string } | null>(null); const calculate = () => { const isNew = (new Date().getFullYear() - year) <= 5; const isCar = vehicleType === VehicleType.CAR_2DR || vehicleType === VehicleType.CAR_4DR; let tier = PackageTier.MODERATE; let price = ""; let reason = ""; // VIP LIGHT CHECK ($250) if (isNew && isCar && !hasHair && !hasStains && !hasOdors && dirtiness <= 4) { tier = PackageTier.VIP_LIGHT; price = "$250"; reason = "Good news, this one behaves nicely, so you qualify for our VIP Light Detail at $250."; } // MINIVAN SPECIAL ($650+) else if (vehicleType === VehicleType.MINIVAN) { tier = PackageTier.MODERATE; price = dirtiness > 7 ? "$750+" : "$650+"; reason = "Minivans are large projects. " + (dirtiness > 7 ? "That level of cleaning" : "Standard care") + " starts around " + price + " to get it right."; } // EXTREME ($550+) else if (dirtiness >= 9 || (hasHair && hasStains && hasOdors)) { tier = PackageTier.EXTREME; price = vehicleType === VehicleType.SUV ? "$600+" : vehicleType === VehicleType.TRUCK ? "$650+" : "$550+"; reason = "That bumps it into our next tier so we can handle the heavy lifting. This requires a total restoration focus."; } // HEAVY (Fails 2+ VIP conditions) else if ([hasHair, hasStains, hasOdors, dirtiness > 5].filter(Boolean).length >= 2) { tier = PackageTier.HEAVY; price = vehicleType === VehicleType.SUV ? "$475-$525" : vehicleType === VehicleType.TRUCK ? "$500-$550" : "$425-$475"; reason = "Failing multiple VIP conditions moves this into our Heavy tier. We’ll need the extra time for pet hair or stains."; } // MODERATE (Fails 1 VIP condition) else { tier = PackageTier.MODERATE; price = vehicleType === VehicleType.SUV ? "$400-$425" : vehicleType === VehicleType.TRUCK ? "$425-$450" : "$350-$375"; reason = "That bumps it into our Moderate tier—our most common service for Knoxville daily drivers."; } setResult({ tier, price, reason }); }; return (

Screening Tool

🧠 The Reality Check

30 seconds. Zero judgment. Tell us what we're working with.

setYear(parseInt(e.target.value))} />
setDirtiness(parseInt(e.target.value))} />
1: Just Tidy Level: {dirtiness} 10: "No comment"
{[ { label: 'Hair', state: hasHair, set: setHasHair, icon: '🐶' }, { label: 'Stains', state: hasStains, set: setHasStains, icon: '🧃' }, { label: 'Odors', state: hasOdors, set: setHasOdors, icon: '👃' }, ].map(item => ( ))}
{result ? (

Professional Suggestion

{result.tier}

{result.price}

"{result.reason}"

) : (

Complete the quick screening
to reveal your tier

)}
); }; export default DetailRealityCheck;
top of page
Man Polishing Car

What's up with Ceramic Coatings? 

UV and SHINE

This is a Paragraph. Click on "Edit Text" or double click on the text box to start editing the content and make sure to add any relevant details or information that you want to share with your visitors.

Service Name

This is a Paragraph. Click on "Edit Text" or double click on the text box to start editing the content and make sure to add any relevant details or information that you want to share with your visitors.

Weather Erosion

This is a Paragraph. Click on "Edit Text" or double click on the text box to start editing the content and make sure to add any relevant details or information that you want to share with your visitors.

Service Name

This is a Paragraph. Click on "Edit Text" or double click on the text box to start editing the content and make sure to add any relevant details or information that you want to share with your visitors.

Acid Rain 

This is a Paragraph. Click on "Edit Text" or double click on the text box to start editing the content and make sure to add any relevant details or information that you want to share with your visitors.

Service Name

This is a Paragraph. Click on "Edit Text" or double click on the text box to start editing the content and make sure to add any relevant details or information that you want to share with your visitors.

Contact

Like what you see? Get in touch to learn more.

  • Facebook
  • Twitter
  • LinkedIn
  • Instagram
Thanks for submitting!
bottom of page