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
39
components/RestrictionChip.vue
Normal file
39
components/RestrictionChip.vue
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
<template>
|
||||
<UBadge
|
||||
:color="badgeColor"
|
||||
:variant="variant"
|
||||
:size="size"
|
||||
>
|
||||
{{ displayText }}
|
||||
</UBadge>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
type Restriction = 'Restricted' | 'General'
|
||||
|
||||
interface Props {
|
||||
restriction: Restriction
|
||||
variant?: 'solid' | 'outline' | 'soft' | 'subtle'
|
||||
size?: 'xs' | 'sm' | 'md' | 'lg'
|
||||
}
|
||||
|
||||
const props = withDefaults(defineProps<Props>(), {
|
||||
variant: 'subtle',
|
||||
size: 'sm'
|
||||
})
|
||||
|
||||
const badgeColor = computed(() => {
|
||||
switch (props.restriction) {
|
||||
case 'Restricted':
|
||||
return 'orange'
|
||||
case 'General':
|
||||
return 'green'
|
||||
default:
|
||||
return 'gray'
|
||||
}
|
||||
})
|
||||
|
||||
const displayText = computed(() => {
|
||||
return props.restriction
|
||||
})
|
||||
</script>
|
||||
Loading…
Add table
Add a link
Reference in a new issue