Большое обновление
1. Создание личных проектов 2. Управление командой 3. Приглашение участников 4. Уведомления и многое другое...
This commit is contained in:
@@ -162,6 +162,7 @@
|
||||
|
||||
<script setup>
|
||||
import { ref, computed, watch, nextTick } from 'vue'
|
||||
import { useRouter } from 'vue-router'
|
||||
import SlidePanel from './ui/SlidePanel.vue'
|
||||
import TextInput from './ui/TextInput.vue'
|
||||
import ColorPicker from './ui/ColorPicker.vue'
|
||||
@@ -171,10 +172,13 @@ import ConfirmDialog from './ConfirmDialog.vue'
|
||||
import { useLucideIcons } from '../composables/useLucideIcons'
|
||||
import { useMobile } from '../composables/useMobile'
|
||||
import { useProjectsStore } from '../stores/projects'
|
||||
import { useToast } from '../composables/useToast'
|
||||
|
||||
const { refreshIcons } = useLucideIcons()
|
||||
const toast = useToast()
|
||||
const { isMobile } = useMobile()
|
||||
const store = useProjectsStore()
|
||||
const router = useRouter()
|
||||
|
||||
const props = defineProps({
|
||||
show: Boolean,
|
||||
@@ -491,8 +495,11 @@ const handleSave = async () => {
|
||||
// Обновляем колонки если есть изменения
|
||||
// Дефолтные колонки уже созданы сервером
|
||||
// Здесь можно добавить логику для кастомизации колонок при создании
|
||||
toast.success('Проект создан')
|
||||
emit('saved', result.id)
|
||||
emit('close')
|
||||
} else {
|
||||
toast.error('Ошибка создания проекта')
|
||||
}
|
||||
} else {
|
||||
// Редактирование проекта
|
||||
@@ -529,6 +536,7 @@ const handleSave = async () => {
|
||||
await store.reorderColumns(ids)
|
||||
}
|
||||
|
||||
toast.success('Изменения сохранены')
|
||||
emit('saved', props.project.id)
|
||||
emit('close')
|
||||
}
|
||||
@@ -568,10 +576,17 @@ const confirmDeleteProject = async () => {
|
||||
|
||||
const result = await store.deleteProject(props.project.id)
|
||||
if (!result.success) {
|
||||
toast.error(result.errors?.access || 'Ошибка удаления')
|
||||
throw new Error(result.errors?.access || 'Ошибка удаления')
|
||||
}
|
||||
|
||||
toast.success('Проект удалён')
|
||||
emit('close')
|
||||
|
||||
// Если после удаления нет проектов — переходим на страницу без проектов
|
||||
if (store.projects.length === 0) {
|
||||
router.push('/no-projects')
|
||||
}
|
||||
}
|
||||
|
||||
// ==================== WATCH ====================
|
||||
|
||||
Reference in New Issue
Block a user