import type { Meta, StoryObj } from '@storybook/vue3'
import { ref } from 'vue'
import DatePicker from '../../DatePicker/CalendarMode/DatePicker.vue'
export default {
title: 'Composants/Formulaires/DatePicker/Validation/Submit/DateTextInput',
component: DatePicker,
parameters: {
docs: {
description: {
component: 'Exemples de validation pour le composant DatePicker avec calendrier.',
},
},
},
} as Meta
export const Required: StoryObj = {
parameters: {
sourceCode: [
{
name: 'Template',
code: `
`,
},
{
name: 'Script',
code: `
`,
},
],
},
render: () => ({
components: { DatePicker },
setup() {
const datePicker1 = ref()
const date1 = ref('')
const handleSubmit = async () => {
const isValid1 = await datePicker1.value?.validateOnSubmit()
if (!isValid1) {
alert('Corrigez les erreurs avant de soumettre !')
}
else {
alert('Formulaire soumis avec succès !')
}
}
return {
datePicker1,
date1,
handleSubmit,
}
},
template: `
`,
}),
}
export const WithCustomRulesAndRequired: StoryObj = {
parameters: {
sourceCode: [
{
name: 'Template',
code: `
`,
},
{
name: 'Script',
code: `
`,
},
],
},
render: () => ({
components: { DatePicker },
setup() {
const datePicker1 = ref()
const date1 = ref('01/01/2100')
const handleSubmit = async (): Promise => {
const isValid1 = await datePicker1.value?.validateOnSubmit()
if (!isValid1) {
alert('Corrigez les erreurs avant de soumettre !')
}
else {
alert('Formulaire soumis avec succès !')
}
}
return {
datePicker1,
date1,
handleSubmit,
}
},
template: `
`,
}),
}