diff --git a/src/components/ServiceProject/ServiceProjectBranch/ManageBranch.jsx b/src/components/ServiceProject/ServiceProjectBranch/ManageBranch.jsx index b78f8895..7b51d616 100644 --- a/src/components/ServiceProject/ServiceProjectBranch/ManageBranch.jsx +++ b/src/components/ServiceProject/ServiceProjectBranch/ManageBranch.jsx @@ -5,6 +5,7 @@ import { zodResolver } from "@hookform/resolvers/zod"; import Label from "../../common/Label"; import { useBranchDetails, + useBranchTypes, useCreateBranch, useServiceProjects, useUpdateBranch, @@ -12,6 +13,8 @@ import { import { useAppForm } from "../../../hooks/appHooks/useAppForm"; import { useParams } from "react-router-dom"; import { BranchSchema, defaultBranches } from "../ServiceProjectSchema"; +import InputSuggessionField from "../../common/Forms/InputSuggesstionField"; +import InputSuggestions from "../../common/InputSuggestion"; const ManageBranch = ({ closeModal, BranchToEdit = null }) => { const { @@ -20,7 +23,7 @@ const ManageBranch = ({ closeModal, BranchToEdit = null }) => { isError, error: requestError, } = useBranchDetails(BranchToEdit); - + const { data: branchTypes } = useBranchTypes(); const [contacts, setContacts] = React.useState([ { contactPerson: "", @@ -122,15 +125,17 @@ const ManageBranch = ({ closeModal, BranchToEdit = null }) => { - + setValue("branchType", val, { shouldValidate: true }) + } + error={errors.branchType?.message} /> - {errors.branchType && ( - {errors.branchType.message} - )} + + diff --git a/src/components/common/Forms/InputSuggesstionField.jsx b/src/components/common/Forms/InputSuggesstionField.jsx index 9ef02e9d..9b63ff86 100644 --- a/src/components/common/Forms/InputSuggesstionField.jsx +++ b/src/components/common/Forms/InputSuggesstionField.jsx @@ -2,15 +2,19 @@ import React, { useEffect, useRef, useState } from "react"; import Label from "../Label"; const InputSuggessionField = ({ - organizationList = [], + suggesstionList = [], value, onChange, error, - disabled=false + disabled = false, + label = "Label", + placeholder = "Please Enter", + required = false, + isLoading = false, }) => { const [open, setOpen] = useState(false); const dropdownRef = useRef(null); - +console.log(suggesstionList) useEffect(() => { const handleClickOutside = (event) => { if (dropdownRef.current && !dropdownRef.current.contains(event.target)) { @@ -21,12 +25,12 @@ const InputSuggessionField = ({ return () => document.removeEventListener("mousedown", handleClickOutside); }, []); - const selectedOption = options.find((opt) => opt[valueKey] === value); + const selectedOption = suggesstionList.find((opt) => opt === value); - const displayText = selectedOption ? selectedOption[labelKey] : placeholder; + const displayText = selectedOption ? selectedOption : placeholder; const handleSelect = (option) => { - onChange(option[valueKey]); + onChange(option); setOpen(false); }; @@ -68,16 +72,14 @@ const InputSuggessionField = ({ overflow: "hidden", }} > - {options.map((option, i) => ( + {suggesstionList.map((option, i) => (