import { fetchAllTasks, fetchTaskTemplates } from "@/app/api/tasks"; import CreateProject from "./CreateProject"; import { fetchProjectBuildingTypes, fetchProjectCategories, fetchProjectContractTypes, fetchProjectDetails, fetchProjectFundingTypes, fetchProjectLocationTypes, fetchProjectServiceTypes, fetchProjectWorkNatures, } from "@/app/api/projects"; import { fetchStaff, fetchTeamLeads } from "@/app/api/staff"; import { fetchAllCustomers, fetchAllSubsidiaries } from "@/app/api/customer"; import { fetchGrades } from "@/app/api/grades"; type CreateProjectProps = { isEditMode: false }; interface EditProjectProps { isEditMode: true; projectId?: string; } type Props = CreateProjectProps | EditProjectProps; const CreateProjectWrapper: React.FC = async (props) => { const [ tasks, taskTemplates, projectCategories, teamLeads, allCustomers, allSubsidiaries, contractTypes, fundingTypes, locationTypes, serviceTypes, buildingTypes, workNatures, allStaffs, grades, ] = await Promise.all([ fetchAllTasks(), fetchTaskTemplates(), fetchProjectCategories(), fetchTeamLeads(), fetchAllCustomers(), fetchAllSubsidiaries(), fetchProjectContractTypes(), fetchProjectFundingTypes(), fetchProjectLocationTypes(), fetchProjectServiceTypes(), fetchProjectBuildingTypes(), fetchProjectWorkNatures(), fetchStaff(), fetchGrades(), ]); const projectInfo = props.isEditMode ? await fetchProjectDetails(props.projectId!!) : undefined; return ( ); }; export default CreateProjectWrapper;