import { PlayerSkillFragment } from '#graphql/autogen/hasura-sdk'; export type SkillMap = { [category: string]: CategoryOption; }; export type SkillOption = PlayerSkillFragment & { value: string; label: string; }; export type CategoryOption = { label: string; options: Array; }; export const parseSkills = ( skills: Array, ): Array => { const skillsMap: SkillMap = {}; skills.forEach((skill) => { const { category } = skill; const categoryOptions = skillsMap[category] || { label: category, options: [], }; categoryOptions.options?.push({ ...skill, value: skill.id, label: skill.name, }); skillsMap[category] = categoryOptions; }); return Object.values(skillsMap); };