Files
L-Ami-Fiduciaire/resources/js/pages/workspaces/Create.vue

53 lines
1.4 KiB
Vue
Raw Normal View History

<script setup lang="ts">
import { Head, useForm } from '@inertiajs/vue3';
import Heading from '@/components/Heading.vue';
import WorkspaceForm from '@/components/WorkspaceForm.vue';
import type { WorkspaceFormData } from '@/components/WorkspaceForm.vue';
import AppLayout from '@/layouts/AppLayout.vue';
type Props = {
indexUrl: string;
storeUrl: string;
users: Array<{ id: number; name: string; email: string }>;
workspaceUserRoles: Record<string, string>;
};
const props = defineProps<Props>();
const form = useForm<WorkspaceFormData>({
name: '',
slug: '',
user_ids: [],
user_roles: {},
});
function submit() {
form.post(props.storeUrl);
}
</script>
<template>
<AppLayout
:breadcrumbs="[
{ title: 'Workspaces', href: props.indexUrl },
{ title: 'Create workspace' },
]"
>
<Head title="Create workspace" />
<div class="flex flex-col space-y-6 p-4">
<Heading
title="Create workspace"
description="Add a new accounting firm workspace (cabinet comptable)"
/>
<WorkspaceForm
:form="form"
:users="props.users ?? []"
:workspace-user-roles="props.workspaceUserRoles ?? {}"
submit-label="Create workspace"
@submit="submit"
/>
</div>
</AppLayout>
</template>