feat(ui) : prop required + aria-required + astérisque sur Select/SelectCheckbox/Upload/RichText

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-03 11:32:10 +02:00
parent 03fe458248
commit 167cc43870
8 changed files with 80 additions and 4 deletions
+5 -1
View File
@@ -38,6 +38,7 @@
:aria-controls="listboxId"
:aria-invalid="hasError"
:aria-describedby="describedBy"
:aria-required="required || undefined"
:disabled="disabled"
@click="toggle"
>
@@ -59,7 +60,7 @@
]"
:style="labelTransformStyle"
>
{{ label }}
{{ label }}<MalioRequiredMark v-if="required" />
</label>
<span
@@ -171,6 +172,7 @@
import {computed, onBeforeUnmount, onMounted, ref, useId, nextTick} from 'vue'
import {Icon as IconifyIcon} from '@iconify/vue'
import {twMerge} from 'tailwind-merge'
import MalioRequiredMark from '../shared/RequiredMark.vue'
defineOptions({name: 'MalioSelect', inheritAttrs: false})
@@ -193,6 +195,7 @@ const props = withDefaults(defineProps<{
disabled?: boolean
groupClass?: string
noOptionsText?: string
required?: boolean
}>(), {
options: () => [],
emptyOptionLabel: '',
@@ -207,6 +210,7 @@ const props = withDefaults(defineProps<{
disabled: false,
groupClass: '',
noOptionsText: 'Aucune option disponible',
required: false,
})
const emit = defineEmits<{