From ce887c38f3a9e84c832bfbf62efa455df37a1a4f Mon Sep 17 00:00:00 2001 From: kolaente Date: Wed, 29 Mar 2023 17:05:09 +0200 Subject: [PATCH] feat: allow selecting a parent project when creating a project --- src/components/tasks/partials/projectSearch.vue | 2 +- src/i18n/lang/en.json | 1 + src/views/project/NewProject.vue | 13 +++++++++++++ 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/src/components/tasks/partials/projectSearch.vue b/src/components/tasks/partials/projectSearch.vue index 41a0ee5ab..116393504 100644 --- a/src/components/tasks/partials/projectSearch.vue +++ b/src/components/tasks/partials/projectSearch.vue @@ -12,7 +12,7 @@ > diff --git a/src/i18n/lang/en.json b/src/i18n/lang/en.json index 02a4e9aa2..e09154ed1 100644 --- a/src/i18n/lang/en.json +++ b/src/i18n/lang/en.json @@ -169,6 +169,7 @@ "title": "Project Title", "color": "Color", "projects": "Projects", + "parent": "Parent Project", "search": "Type to search for a project…", "searchSelect": "Click or press enter to select this project", "shared": "Shared Projects", diff --git a/src/views/project/NewProject.vue b/src/views/project/NewProject.vue index e09eaa8aa..a33ff54bc 100644 --- a/src/views/project/NewProject.vue +++ b/src/views/project/NewProject.vue @@ -22,6 +22,12 @@

{{ $t('project.create.addTitleRequired') }}

+
+ +
+ +
+
@@ -44,6 +50,8 @@ import ColorPicker from '@/components/input/ColorPicker.vue' import {success} from '@/message' import {useTitle} from '@/composables/useTitle' import {useProjectStore} from '@/stores/projects' +import ProjectSearch from '@/components/tasks/partials/projectSearch.vue' +import type {IProject} from '@/modelTypes/IProject' const {t} = useI18n({useScope: 'global'}) const router = useRouter() @@ -55,6 +63,7 @@ const showError = ref(false) const project = reactive(new ProjectModel()) const projectService = shallowReactive(new ProjectService()) const projectStore = useProjectStore() +const parentProject = ref(null) async function createNewProject() { if (project.title === '') { @@ -62,6 +71,10 @@ async function createNewProject() { return } showError.value = false + + if (parentProject.value) { + project.parentProjectId = parentProject.value.id + } const newProject = await projectStore.createProject(project) await router.push({