import { Button, Flex, Select, Typography } from 'antd'; import { useState } from 'react'; import TaskGroupList from '@/pages/projects/projectView/taskList/groupTables/TaskGroupList'; import { TaskType } from '../../../../types/task.types'; import { useAppSelector } from '../../../../hooks/useAppSelector'; import { PageHeader } from '@ant-design/pro-components'; import { ArrowLeftOutlined, CaretDownFilled } from '@ant-design/icons'; import { useNavigate, useParams } from 'react-router-dom'; import TaskListFilters from '@/pages/projects/projectView/taskList/task-list-filters/task-list-filters'; import { useSelectedProject } from '../../../../hooks/useSelectedProject'; import { useTranslation } from 'react-i18next'; import { toggleDrawer as togglePhaseDrawer } from '../../../../features/projects/singleProject/phase/phases.slice'; import { toggleDrawer } from '../../../../features/projects/status/StatusSlice'; import { useAppDispatch } from '../../../../hooks/useAppDispatch'; import React from 'react'; import { ITaskListGroup } from '@/types/tasks/taskList.types'; const PhaseDrawer = React.lazy(() => import('@features/projects/singleProject/phase/PhaseDrawer')); const StatusDrawer = React.lazy( () => import('@/components/project-task-filters/create-status-drawer/create-status-drawer') ); const ProjectTemplateEditView = () => { const dataSource: ITaskListGroup[] = useAppSelector(state => state.taskReducer.taskGroups); const groupBy = useAppSelector(state => state.taskReducer.groupBy); const dispatch = useAppDispatch(); const navigate = useNavigate(); const { templateId, templateName } = useParams(); type GroupTypes = 'status' | 'priority' | 'phase'; const [activeGroup, setActiveGroup] = useState('status'); const handleChange = (value: string) => { setActiveGroup(value as GroupTypes); }; const { t } = useTranslation('task-list-filters'); // get selected project from useSelectedPro const selectedProject = useSelectedProject(); //get phases details from phases slice const phase = useAppSelector(state => state.phaseReducer.phaseList).find( phase => phase.id === selectedProject?.id ) || null; const groupDropdownMenuItems = [ { key: 'status', value: 'status', label: t('statusText') }, { key: 'priority', value: 'priority', label: t('priorityText') }, { key: 'phase', value: 'phase', label: phase ? phase?.name : t('phaseText'), }, ]; return (
navigate(-1)} /> {templateName} } style={{ padding: 0, marginBlockEnd: 24 }} /> {t('groupByText')}: