Files
L-Ami-Fiduciaire/resources/js/pages/users/Edit.vue

62 lines
1.5 KiB
Vue
Raw Normal View History

<script setup lang="ts">
import { Head, useForm } from '@inertiajs/vue3';
import UserForm from '@/components/UserForm.vue';
import type { UserFormData } from '@/components/UserForm.vue';
import Heading from '@/components/Heading.vue';
import AppLayout from '@/layouts/AppLayout.vue';
type User = {
id: number;
name: string;
email: string;
group: string;
};
type Props = {
user: User;
indexUrl: string;
updateUrl: string;
userGroups: Record<string, string>;
};
const props = defineProps<Props>();
const form = useForm<UserFormData>({
name: props.user.name,
email: props.user.email,
password: '',
password_confirmation: '',
group: props.user.group,
});
function submit() {
form.put(props.updateUrl);
}
</script>
<template>
<AppLayout
:breadcrumbs="[
{ title: 'Users', href: props.indexUrl },
{ title: 'Edit user' },
]"
>
<Head :title="`Edit ${props.user.name}`" />
<div class="flex flex-col space-y-6 p-4">
<Heading
:title="`Edit ${props.user.name}`"
description="Update the user's information"
/>
<UserForm
:form="form"
:user-groups="userGroups"
:show-password-fields="true"
:password-required="false"
submit-label="Update user"
@submit="submit"
/>
</div>
</AppLayout>
</template>