Files
FlightsAPI/resources/js/Components/FlightsGoneBy/FlightClassBadge.vue
T
2026-04-09 11:20:16 +10:00

27 lines
823 B
Vue

<script setup lang="ts">
import {Flight} from "@/Types/types";
import InlineBadge from "@/Components/FlightsGoneBy/InlineBadge.vue";
const props = defineProps<{
flight: Flight
}>();
type BadgeVariant = 'first' | 'business' | 'premium' | 'economy' | 'private' | 'unspecified';
function classVariant(name?: string | null): BadgeVariant {
const n = name?.toLowerCase() ?? '';
if (n.includes('private')) return 'private';
if (n.includes('first')) return 'first';
if (n.includes('business')) return 'business';
if (n.includes('premium')) return 'premium';
if (n.includes('economy')) return 'economy';
return 'unspecified';
}
</script>
<template>
<InlineBadge :variant="classVariant(flight.flight_class?.name)">
{{ flight.flight_class?.name }}
</InlineBadge>
</template>