diff --git a/frontend/src/pages/HomePage.vue b/frontend/src/pages/HomePage.vue index 552d02b..8992fc3 100644 --- a/frontend/src/pages/HomePage.vue +++ b/frontend/src/pages/HomePage.vue @@ -6,6 +6,96 @@ import VehicleInfo from '@/components/VehicleInfo.vue' import type { VehicleInfo as VehicleData } from '@/components/VehicleInfo.vue' import { lookupVehicle } from '@/api/vehicles' +const useCases = [ + { + variant: 'buy', + title: 'Vill köpa bilen', + description: + 'Lämna ett vänligt bud eller dina kontaktuppgifter om du är intresserad av att köpa bilen, utan att stå kvar på parkeringen och vänta.', + templateName: 'Köpförfrågan', + }, + { + variant: 'praise', + title: 'Vill säga något fint', + description: + 'Beröm någon som uppenbarligen tar hand om sin bil. Ett oväntat brev som ofta uppskattas mer än man tror.', + templateName: 'Komplimang', + }, + { + variant: 'tip', + title: 'Vill tipsa om något', + description: + 'Säg till om trasig baklykta, slitna däck eller annat du märkt som ägaren kanske inte sett själv.', + templateName: 'Tips / servicebehov', + }, + { + variant: 'driving', + title: 'Reagerade på körbeteende', + description: + 'Om något i trafiken upprörde dig kan du nå föraren med ett sakligt och respektfullt meddelande, utan att eskalera på plats.', + templateName: 'Körbeteende', + }, + { + variant: 'frustration', + title: 'Efter tuta eller irritation', + description: + 'När det hettade till i trafiken kan ett lugnt brev vara bättre än att tuta eller gestikulera. Mallen hjälper dig att formulera det neutralt.', + templateName: 'Tuta / frustration', + }, + { + variant: 'damage', + title: 'Orsakat en parkeringsskada', + description: + 'Om du råkat skada bilen när du parkerade kan du be om ursäkt och lämna dina uppgifter så ni kan lösa det tillsammans.', + templateName: 'Mindre parkeringsskada', + }, +] as const + +const steps = [ + { + number: 1, + variant: 'lookup', + title: 'Verifiera registreringsnumret', + description: + 'Ange nummerplåten och kontrollera att märke och modell stämmer. Vi använder uppgifterna för att hitta rätt mottagare.', + }, + { + number: 2, + variant: 'compose', + title: 'Skriv, granska och betala', + description: + 'Välj en mall eller skriv fritt, justera texten och betala 49 kr via Swish. Du ser hela brevet innan det skickas.', + }, + { + number: 3, + variant: 'send', + title: 'Vi postar brevet', + description: + 'Efter betalning tar vi hand om utskick manuellt. Brevet postas vanligtvis inom några vardagar. I Mina beställningar ser du status och får spårningsnummer när det skickats.', + }, +] as const + +const trustPoints = [ + { + variant: 'privacy', + title: 'Anonymt om du vill', + description: + 'Du når bilägaren utan att automatiskt lämna ut namn, telefon eller adress. Vill du att de ska kunna svara lägger du till det i brevet.', + }, + { + variant: 'convenience', + title: 'Registreringsnummer räcker', + description: + 'Du behöver inte veta vem som äger bilen eller var personen bor. Skriv brevet här så sköter vi utskicket.', + }, + { + variant: 'letter', + title: 'Fysiskt brev med spårning', + description: + 'Meddelandet skickas som riktigt brev med posten, inte som SMS eller mejl. När brevet skickats kan du följa det med spårningsnummer.', + }, +] as const + const plate = ref('') const vehicle = ref(null) const notFound = ref(false) @@ -35,16 +125,74 @@ async function handleLookup(lookedUpPlate: string) {