Fix KAN-3 project template flows
This commit is contained in:
@@ -15,7 +15,11 @@ import {
|
||||
import { Input } from '@/components/ui/input';
|
||||
import { Label } from '@/components/ui/label';
|
||||
import AppLayout from '@/layouts/AppLayout.vue';
|
||||
import { show as projectShow } from '@/routes/projects/index';
|
||||
import { index as projectsIndex, show as projectShow } from '@/routes/projects/index';
|
||||
import {
|
||||
create as projectTemplateCreate,
|
||||
store as projectTemplateStore,
|
||||
} from '@/routes/projects/templates';
|
||||
import type { BreadcrumbItem, ProjectTemplatesCreatePageProps } from '@/types';
|
||||
|
||||
const props = defineProps<ProjectTemplatesCreatePageProps>();
|
||||
@@ -23,7 +27,7 @@ const props = defineProps<ProjectTemplatesCreatePageProps>();
|
||||
const breadcrumbs: BreadcrumbItem[] = [
|
||||
{
|
||||
title: 'Projects',
|
||||
href: '/projects',
|
||||
href: projectsIndex(),
|
||||
},
|
||||
{
|
||||
title: props.project.name,
|
||||
@@ -31,7 +35,7 @@ const breadcrumbs: BreadcrumbItem[] = [
|
||||
},
|
||||
{
|
||||
title: 'Save as new template',
|
||||
href: `/projects/${props.project.id}/templates/create`,
|
||||
href: projectTemplateCreate(props.project.id),
|
||||
},
|
||||
];
|
||||
|
||||
@@ -50,7 +54,7 @@ const copyAreasError = computed(() => {
|
||||
});
|
||||
|
||||
const submit = (): void => {
|
||||
form.post(`/projects/${props.project.id}/templates`, {
|
||||
form.post(projectTemplateStore.url(props.project.id), {
|
||||
preserveScroll: true,
|
||||
});
|
||||
};
|
||||
|
||||
@@ -15,7 +15,11 @@ import {
|
||||
import { Input } from '@/components/ui/input';
|
||||
import { Label } from '@/components/ui/label';
|
||||
import AppLayout from '@/layouts/AppLayout.vue';
|
||||
import { index as projectTemplatesIndex } from '@/routes/project-templates';
|
||||
import {
|
||||
edit as projectTemplatesEdit,
|
||||
index as projectTemplatesIndex,
|
||||
update as projectTemplatesUpdate,
|
||||
} from '@/routes/project-templates';
|
||||
import type { BreadcrumbItem, ProjectTemplatesEditPageProps } from '@/types';
|
||||
|
||||
const props = defineProps<ProjectTemplatesEditPageProps>();
|
||||
@@ -27,7 +31,7 @@ const breadcrumbs: BreadcrumbItem[] = [
|
||||
},
|
||||
{
|
||||
title: props.template.name,
|
||||
href: `/project-templates/${props.template.id}/edit`,
|
||||
href: projectTemplatesEdit(props.template.id),
|
||||
},
|
||||
];
|
||||
|
||||
@@ -48,7 +52,7 @@ const copyAreasError = computed(() => {
|
||||
const linkedProjectCount = computed(() => props.template.linked_project_count ?? 0);
|
||||
|
||||
const submit = (): void => {
|
||||
form.patch(`/project-templates/${props.template.id}`, {
|
||||
form.patch(projectTemplatesUpdate.url(props.template.id), {
|
||||
preserveScroll: true,
|
||||
});
|
||||
};
|
||||
|
||||
@@ -11,7 +11,11 @@ import {
|
||||
CardTitle,
|
||||
} from '@/components/ui/card';
|
||||
import AppLayout from '@/layouts/AppLayout.vue';
|
||||
import { edit as projectTemplatesEdit } from '@/routes/project-templates';
|
||||
import {
|
||||
destroy as projectTemplatesDestroy,
|
||||
edit as projectTemplatesEdit,
|
||||
index as projectTemplatesIndex,
|
||||
} from '@/routes/project-templates';
|
||||
import { create as projectsCreate, index as projectsIndex } from '@/routes/projects/index';
|
||||
import type { BreadcrumbItem, ProjectTemplatesIndexPageProps } from '@/types';
|
||||
|
||||
@@ -20,12 +24,12 @@ const props = defineProps<ProjectTemplatesIndexPageProps>();
|
||||
const breadcrumbs: BreadcrumbItem[] = [
|
||||
{
|
||||
title: 'Project templates',
|
||||
href: '/project-templates',
|
||||
href: projectTemplatesIndex(),
|
||||
},
|
||||
];
|
||||
|
||||
const removeTemplate = (templateId: number): void => {
|
||||
router.delete(`/project-templates/${templateId}`, {
|
||||
router.delete(projectTemplatesDestroy.url(templateId), {
|
||||
preserveScroll: true,
|
||||
});
|
||||
};
|
||||
|
||||
@@ -63,7 +63,7 @@ const submit = (): void => {
|
||||
form.source_template_id = '';
|
||||
}
|
||||
|
||||
form.post(ProjectController.store(), {
|
||||
form.post(ProjectController.store.url(), {
|
||||
preserveScroll: true,
|
||||
});
|
||||
};
|
||||
|
||||
@@ -22,6 +22,7 @@ import {
|
||||
notifications as notificationSettings,
|
||||
repositories as repositorySettings,
|
||||
} from '@/routes/projects/settings';
|
||||
import { create as projectTemplateCreate } from '@/routes/projects/templates';
|
||||
import type { BreadcrumbItem, ProjectShowPageProps } from '@/types';
|
||||
|
||||
const props = defineProps<ProjectShowPageProps>();
|
||||
@@ -99,7 +100,7 @@ const projectAreas = [
|
||||
as-child
|
||||
variant="outline"
|
||||
>
|
||||
<Link :href="`/projects/${project.id}/templates/create`">
|
||||
<Link :href="projectTemplateCreate(project.id)">
|
||||
Save as new template
|
||||
</Link>
|
||||
</Button>
|
||||
|
||||
@@ -89,12 +89,9 @@ const submitSwitchTemplate = (): void => {
|
||||
return;
|
||||
}
|
||||
|
||||
switchTemplateForm.submit(
|
||||
ProjectController.switchTemplate(props.project.id),
|
||||
{
|
||||
preserveScroll: true,
|
||||
},
|
||||
);
|
||||
switchTemplateForm.post(ProjectController.switchTemplate.url(props.project.id), {
|
||||
preserveScroll: true,
|
||||
});
|
||||
};
|
||||
|
||||
const submitResetTemplate = (): void => {
|
||||
@@ -102,7 +99,7 @@ const submitResetTemplate = (): void => {
|
||||
return;
|
||||
}
|
||||
|
||||
resetTemplateForm.submit(ProjectController.resetTemplate(props.project.id), {
|
||||
resetTemplateForm.post(ProjectController.resetTemplate.url(props.project.id), {
|
||||
preserveScroll: true,
|
||||
});
|
||||
};
|
||||
@@ -112,7 +109,7 @@ const submitDelete = (): void => {
|
||||
return;
|
||||
}
|
||||
|
||||
deleteForm.submit(ProjectController.destroy(props.project.id), {
|
||||
deleteForm.delete(ProjectController.destroy.url(props.project.id), {
|
||||
preserveScroll: true,
|
||||
});
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user