import { zodResolver } from "@hookform/resolvers/zod"; import React, { useMemo, useState } from "react"; import { FormProvider, useForm } from "react-hook-form"; import { defaultOrganizationValues, organizationSchema, } from "./OrganizationSchema"; import Modal from "../common/Modal"; import { useCreateOrganization, useOrganizationBySPRID, useOrganizationModal, useOrganizationsList, } from "../../hooks/useOrganization"; import Label from "../common/Label"; import SelectMultiple from "../common/SelectMultiple"; import { useServices } from "../../hooks/masterHook/useMaster"; const ManageOrganization = ({ projectOrganizations = ["ee"], organizationId = null, }) => { const [step, setStep] = useState(1); const orgModal = useOrganizationModal(); const { data: masterService, isLoading } = useServices(); const [searchText, setSearchText] = useState(); const [SPRID, setSPRID] = useState(""); const { data: orgList, isLoading: orgLoading } = useOrganizationsList( 20, 1, true, searchText ); const { data: OrgListbySPRID, isLoading: isLoadingBySPRID } = useOrganizationBySPRID(SPRID); const [Organization, setOrganization] = useState({}); const method = useForm({ resolver: zodResolver(organizationSchema), defaultValues: defaultOrganizationValues, }); console.log(masterService); const { handleSubmit, register, reset, formState: { errors }, } = method; const { mutate: CreateOrganization, isPending } = useCreateOrganization( () => { reset(defaultOrganizationValues); orgModal.onClose(); setStep(1); // reset to first step } ); const onSubmit = (OrgPayload) => { CreateOrganization(OrgPayload); }; const RenderTitle = useMemo(() => { if (organizationId) { return "Update Organization"; } if (step === 1) { return projectOrganizations && projectOrganizations !== null ? "Add Organization" : "Find Organization"; } if (step === 2) { return "Organization Details"; } if (step === 3) { return "Create Organization"; } return "Manage Organization"; // fallback }, [step, orgModal?.orgData, organizationId]); const contentBody = (
Don't have required organization, Please find using{" "} setStep(2)} > SPRID
)}