fix(ui) : garde readonly défensive isOpen + test readonly TimePicker

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-03 15:35:41 +02:00
parent 12a165c1c1
commit 993364062d
3 changed files with 8 additions and 2 deletions
@@ -205,7 +205,7 @@ const mergedInputClass = computed(() =>
: hasSuccess.value
? 'border-m-success'
: isReadonly.value ? '' : 'focus:border-m-primary',
isOpen.value ? 'border-m-primary !py-[9px] !rounded-b-none' : '',
(!isReadonly.value && isOpen.value) ? 'border-m-primary !py-[9px] !rounded-b-none' : '',
props.inputClass,
),
)
@@ -52,6 +52,12 @@ describe('MalioTimePicker', () => {
expect(wrapper.find('[data-test="popover"]').exists()).toBe(false)
})
it('n\'ouvre pas le popover si readonly', async () => {
const wrapper = mountPicker({readonly: true})
await wrapper.get('[data-test="time-field"]').trigger('click')
expect(wrapper.find('[data-test="popover"]').exists()).toBe(false)
})
it('émet la valeur réglée depuis les molettes', async () => {
const wrapper = mountPicker({modelValue: '09:30'})
await wrapper.get('[data-test="time-field"]').trigger('click')
+1 -1
View File
@@ -202,7 +202,7 @@ const mergedInputClass = computed(() =>
: hasSuccess.value
? 'border-m-success'
: isReadonly.value ? '' : 'focus:border-m-primary',
isOpen.value ? 'border-m-primary !rounded-b-none !py-[9px]' : '',
(!isReadonly.value && isOpen.value) ? 'border-m-primary !rounded-b-none !py-[9px]' : '',
props.inputClass,
),
)