1- import React , { useContext , useEffect , useMemo } from "react" ;
2- import { X , ChevronDown , Trophy } from "lucide-react" ;
1+ import React , { useContext , useMemo } from "react" ;
2+ import { Trophy } from "lucide-react" ;
33import { useSkillForm , useSkills } from "../../hooks/useSkills" ;
44import FilterDropdown from "./FilterDropdown" ;
55import { usePositionHolders } from "../../hooks/usePositionHolders" ;
@@ -13,13 +13,9 @@ const SkillFormModal = ({ showForm, setShowForm }) => {
1313 const { positionHolders } = usePositionHolders ( ) ;
1414 const {
1515 formData,
16- newSkillData,
1716 loading,
18- showNewSkillForm,
1917 handleSkillChange,
2018 updateFormData,
21- updateNewSkillData,
22- resetForm,
2319 submitSkill,
2420 } = useSkillForm ( refreshUserSkills ) ;
2521
@@ -57,25 +53,35 @@ const SkillFormModal = ({ showForm, setShowForm }) => {
5753 < FilterDropdown
5854 label = "Select Skill"
5955 value = { formData . skill_id }
60- onChange = { handleSkillChange }
61- options = { skills . map ( ( skill ) => skill . name + " - " + skill . category ) }
56+ onChange = { ( id ) => handleSkillChange ( id ) }
57+ options = { skills . map ( ( skill ) => ( {
58+ label : `${ skill . name } - ${ skill . category } ` ,
59+ value : skill . _id ,
60+ } ) ) }
6261 />
6362
6463 < FilterDropdown
65- label = "Proficiency Level"
66- value = { formData . proficiency_level }
67- onChange = { updateFormData }
68- options = { [ "Beginner" , "Intermediate" , "Advanced" , "Expert" ] }
69- />
64+ label = "Proficiency Level"
65+ value = { formData . proficiency_level }
66+ onChange = { ( val ) => updateFormData ( { proficiency_level : val } ) }
67+ options = { [
68+ { label : "Beginner" , value : "beginner" } ,
69+ { label : "Intermediate" , value : "intermediate" } ,
70+ { label : "Advanced" , value : "advanced" } ,
71+ { label : "Expert" , value : "expert" } ,
72+ ] }
73+ />
74+
75+ < FilterDropdown
76+ label = "Associated Position (Optional)"
77+ value = { formData . position_id }
78+ onChange = { ( val ) => updateFormData ( { position_id : val } ) }
79+ options = { userPositions . map ( ( pos ) => ( {
80+ label : `${ pos . title } - ${ pos . unit_id ?. name || "No Unit" } ` ,
81+ value : pos . _id ,
82+ } ) ) }
83+ />
7084
71- < FilterDropdown
72- label = "Associated Position (Optional)"
73- value = { formData . position_id }
74- onChange = { updateFormData }
75- options = { userPositions . map (
76- ( pos ) => `${ pos . title } - ${ pos . unit_id ?. name || "No Unit" } `
77- ) }
78- />
7985 </ div >
8086 < div className = "pt-4" >
8187 < button
0 commit comments