feat: add initial application structure with configuration, UI components, and state management
This commit is contained in:
parent
fadf94002c
commit
0af6b17792
56 changed files with 6137 additions and 129 deletions
54
components/PayRelationshipChip.vue
Normal file
54
components/PayRelationshipChip.vue
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
<template>
|
||||
<UBadge
|
||||
:color="badgeColor"
|
||||
:variant="variant"
|
||||
:size="size"
|
||||
>
|
||||
{{ displayText }}
|
||||
</UBadge>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
type PayRelationship = 'FullyPaid' | 'Hybrid' | 'Supplemental' | 'VolunteerOrDeferred'
|
||||
|
||||
interface Props {
|
||||
relationship: PayRelationship
|
||||
variant?: 'solid' | 'outline' | 'soft' | 'subtle'
|
||||
size?: 'xs' | 'sm' | 'md' | 'lg'
|
||||
}
|
||||
|
||||
const props = withDefaults(defineProps<Props>(), {
|
||||
variant: 'subtle',
|
||||
size: 'sm'
|
||||
})
|
||||
|
||||
const badgeColor = computed(() => {
|
||||
switch (props.relationship) {
|
||||
case 'FullyPaid':
|
||||
return 'green'
|
||||
case 'Hybrid':
|
||||
return 'blue'
|
||||
case 'Supplemental':
|
||||
return 'yellow'
|
||||
case 'VolunteerOrDeferred':
|
||||
return 'gray'
|
||||
default:
|
||||
return 'gray'
|
||||
}
|
||||
})
|
||||
|
||||
const displayText = computed(() => {
|
||||
switch (props.relationship) {
|
||||
case 'FullyPaid':
|
||||
return 'Fully Paid'
|
||||
case 'Hybrid':
|
||||
return 'Hybrid'
|
||||
case 'Supplemental':
|
||||
return 'Supplemental'
|
||||
case 'VolunteerOrDeferred':
|
||||
return 'Volunteer'
|
||||
default:
|
||||
return 'Unknown'
|
||||
}
|
||||
})
|
||||
</script>
|
||||
Loading…
Add table
Add a link
Reference in a new issue