{"version":3,"file":"static/js/app-4bead94c_60398af4a0c4d5bab54d.js","mappings":"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","sources":["file:////home/runner/work/platform/platform/apps/front-end/src/pages/ProgramsV2/Membership/index.tsx","file:////home/runner/work/platform/platform/apps/front-end/src/pages/ProgramsV2/Goals/index.tsx","file:////home/runner/work/platform/platform/apps/front-end/src/pages/ProgramsV2/Skills/ProgramUncategorizedSkillsPage/index.tsx","file:////home/runner/work/platform/platform/apps/front-end/src/pages/ProgramsV2/Skills/ProgramCategorizedSkillsPage/index.tsx","file:////home/runner/work/platform/platform/apps/front-end/src/pages/ProgramsV2/Preview/index.tsx","file:////home/runner/work/platform/platform/apps/front-end/src/pages/ProgramsV2/Matches/index.tsx","file:////home/runner/work/platform/platform/apps/front-end/src/pages/ProgramsV2/Participation/index.tsx"],"sourcesContent":["import { ProgressContainer } from 'containers';\n\nimport { ProgramMembershipForm } from 'forms/ProgramMembershipForm';\nimport { useNavigate } from 'react-router-dom';\n\nexport function ProgramMembershipPage() {\n const navigate = useNavigate();\n return (\n navigate(-1)} percentage={20}>\n \n \n );\n}\n","import { useMemberships } from '@guider-global/front-end-hooks';\nimport { getSubDomain } from '@guider-global/front-end-utils';\nimport {\n useBaseLanguage,\n useOrganization,\n useOrganizationPrograms,\n} from '@guider-global/sanity-hooks';\nimport { IMembership } from '@guider-global/shared-types';\nimport { Button, Loading, RoleChip, TextStack } from '@guider-global/ui';\nimport { FormHelperText } from '@mui/material';\nimport { Stack } from '@mui/system';\nimport guideAvatar from 'assets/guideAvatar.svg';\nimport traineeAvatar from 'assets/traineeAvatar.svg';\nimport { ProgressContainer } from 'containers';\nimport { interpolate } from 'functions';\nimport { useLocalization } from 'hooks';\nimport { useEffect, useState } from 'react';\nimport { useLocation, useNavigate, useParams } from 'react-router-dom';\nimport { useAppDispatch } from 'store/hooks';\nimport { showAppAlert } from 'store/slices/appSlice';\nimport GoalCategoriesView from 'views/Registration/GoalCategoriesView';\n\nexport function ProgramGoalsPage() {\n const [selectedGoalCategories, setSelectedGoalCategories] = useState<\n string[]\n >([]);\n\n const [loading, setLoading] = useState(false);\n const [isCheckingGoals, setIsCheckingGoals] = useState(true);\n\n const { programSlug = '', role } = useParams<{\n programSlug: string;\n role: 'guide' | 'trainee';\n }>();\n\n const navigate = useNavigate();\n const organizationSlug = getSubDomain();\n const dispatch = useAppDispatch();\n const location = useLocation();\n\n const { organization } = useOrganization({\n organizationSlug,\n });\n\n const { localeCode } = useLocalization(organizationSlug);\n const { baseLanguage } = useBaseLanguage({\n localeCode,\n });\n\n // Program\n const { getProgram } = useOrganizationPrograms({\n organizationSlug,\n localeCode,\n });\n const program = getProgram(programSlug);\n const oneList = program?.skills?.one_list ?? false;\n\n // Redirect to next step if no goal question\n useEffect(() => {\n if (program && organization) {\n const disabledGoalsQuestion =\n role === 'guide' && program?.registration?.goals?.guide_disable_goals;\n\n const hasCustomGoalCategories =\n (program?.registration?.goals?.custom_goal_categories?.length ?? 0) > 0;\n const hasOrganizationGoalCategories =\n organization?.goal_categories?.categories?.length > 0;\n\n const nextPage = oneList ? '../skills/all' : '../skills/soft';\n\n if (\n (!hasCustomGoalCategories && !hasOrganizationGoalCategories) ||\n disabledGoalsQuestion\n ) {\n if (location.pathname !== nextPage) {\n navigate(nextPage, { replace: true });\n } else {\n navigate('../');\n }\n }\n setIsCheckingGoals(false);\n }\n }, [program, organization, navigate, role, location.pathname, oneList]);\n\n const min = program?.registration?.goals?.trainee_min_selected_goals;\n const max = program?.registration?.goals?.trainee_max_selected_goals;\n const errorMessage =\n baseLanguage?.globals?.goals?.max_goals_validation_message;\n\n const limitNotMet = Boolean(\n selectedGoalCategories?.length === 0 ||\n (min && selectedGoalCategories?.length < min),\n );\n const limitExceeded = Boolean(max && selectedGoalCategories?.length > max);\n\n // Memberships\n const { memberships, reqMemberships, isMutatingMemberships } = useMemberships(\n {},\n );\n\n const membership = memberships?.find(\n (membership) =>\n membership?.programSlug === programSlug && membership?.role === role,\n );\n\n useEffect(() => {\n if (!membership || loading || selectedGoalCategories?.length !== 0) return;\n\n if (membership?.goalCategories) {\n setSelectedGoalCategories(\n membership?.goalCategories\n ?.filter((goalCategory) =>\n role === 'guide' ? goalCategory?.offered : goalCategory?.sought,\n )\n ?.map((goalCategory) => goalCategory?.fieldSlug) ?? [],\n );\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [membership, role]);\n\n const goalsSource =\n program?.registration?.goals?.custom_goal_categories ??\n organization?.goal_categories?.categories;\n\n const goalCategories = goalsSource?.map((goalCategory) => ({\n label: goalCategory?.goal_category_name,\n slug: goalCategory?.goal_category_slug?.current,\n }));\n\n async function handleGoalsSubmit() {\n if (!membership || loading) return;\n\n setLoading(true);\n\n const data: Partial & { goalCategorySlugs: string[] } = {\n role,\n isPublished: membership?.isPublished,\n programSlug,\n goalCategorySlugs: selectedGoalCategories,\n };\n\n const membershipsResult = await reqMemberships({\n method: 'PATCH',\n url: `/memberships/${membership?.id}`,\n data,\n });\n\n if (membershipsResult?.status === 'success') {\n navigate(oneList ? '../skills/all' : '../skills/soft');\n } else {\n dispatch(\n showAppAlert({\n severity: 'error',\n message: membershipsResult?.message,\n timeout: 3000,\n }),\n );\n }\n setLoading(false);\n }\n\n if (isCheckingGoals) {\n return ;\n }\n if (!membership)\n return (\n navigate(-1)} percentage={40}>\n {' '}\n <>{' '}\n \n );\n\n return (\n navigate(-1)} percentage={40}>\n \n <>\n \n \n\n {goalCategories && (\n setSelectedGoalCategories(slugs)}\n buttonLabels={{\n more: baseLanguage?.globals?.common?.show_more_button_label,\n less: baseLanguage?.globals?.common?.show_less_button_label,\n }}\n selectedGoalCategories={selectedGoalCategories}\n />\n )}\n \n handleGoalsSubmit()}\n data-cy=\"register-goals-continue-button\"\n loading={loading || isMutatingMemberships}\n disabled={limitExceeded || limitNotMet}\n />\n {limitExceeded && (\n \n {errorMessage}\n \n )}\n \n \n );\n}\n","import { useMemberships, useProfiles } from '@guider-global/front-end-hooks';\nimport { getSubDomain } from '@guider-global/front-end-utils';\nimport {\n useBaseLanguage,\n useOrganization,\n useOrganizationPrograms,\n} from '@guider-global/sanity-hooks';\nimport { IMembership, ISkill } from '@guider-global/shared-types';\nimport {\n Button,\n Loading,\n MultiSelectAreaInputValue,\n RoleChip,\n SkillListView,\n TextStack,\n} from '@guider-global/ui';\nimport { Stack } from '@guider-global/ui/lib/components/Layout/Stack';\nimport guideAvatar from 'assets/guideAvatar.svg';\nimport traineeAvatar from 'assets/traineeAvatar.svg';\nimport { ProgressContainer } from 'containers';\nimport { interpolate } from 'functions';\nimport { useLocalization } from 'hooks';\nimport { useEffect, useState } from 'react';\nimport { SubmitHandler, useForm } from 'react-hook-form';\nimport { useNavigate, useParams } from 'react-router-dom';\n\ntype SkillFormValues = {\n [key: string]: MultiSelectAreaInputValue;\n};\n\nexport function ProgramUncategorizedSkillsPage() {\n const navigate = useNavigate();\n\n // States and Params\n const [isCheckingSkills, setIsCheckingSkills] = useState(true);\n const { programSlug = '', role } = useParams<{\n programSlug: string;\n role: 'guide' | 'trainee';\n id: string | undefined;\n }>();\n\n // base language and organization\n const organizationSlug = getSubDomain();\n const { localeCode } = useLocalization(organizationSlug);\n const { baseLanguage } = useBaseLanguage({ localeCode });\n const { organization } = useOrganization({ organizationSlug });\n\n // Memberships\n const { memberships, isMutatingMemberships, reqMemberships } = useMemberships(\n {},\n );\n const membership = memberships?.find(\n (membership) =>\n membership?.programSlug === programSlug && role === membership?.role,\n );\n\n // Profile\n const { profile } = useProfiles({});\n\n // Program Data\n const { getProgram } = useOrganizationPrograms({\n localeCode,\n organizationSlug,\n });\n const program = getProgram(programSlug);\n const disableSkillsQuestion = program?.skills?.disable_skills_question;\n const min = program?.skills?.one_list_validation?.minimum_selections;\n const max = program?.skills?.one_list_validation?.maximum_selections;\n const maxSkillsErrorMessage = interpolate(\n baseLanguage?.globals?.errors?.maximum_selections_exceeded,\n { number: `${max}` },\n 'Please select less options',\n );\n const registrationQuestion =\n !!program?.registration?.registration_questions?.length;\n\n const hasGoalsQuestion =\n !!program?.registration?.goals?.custom_goal_categories?.length ||\n !!organization?.goal_categories?.categories?.length;\n\n const allSkills =\n program?.skills?.soft_skills?.concat(program?.skills?.hard_skills) ?? [];\n\n const skillOptions = allSkills?.flatMap((category) => category?.skills);\n const autoCompleteOptions = skillOptions\n ?.map((option) => option?.slug)\n .filter((slug): slug is string => !!slug);\n\n // Redirect to next step if no skills question\n useEffect(() => {\n if (!program || !membership) return;\n\n if (disableSkillsQuestion || allSkills.length === 0) {\n navigate(role === 'trainee' ? '../choose' : '../preview');\n return;\n }\n setIsCheckingSkills(false);\n }, [\n program,\n membership,\n role,\n navigate,\n disableSkillsQuestion,\n allSkills.length,\n ]);\n\n // Controler\n const {\n control,\n handleSubmit,\n setValue,\n formState: { isValid },\n } = useForm({\n mode: 'onChange',\n });\n\n // Submit\n const onSubmit: SubmitHandler = async (data) => {\n const selectedSkills = data.value.value;\n\n const membershipData: Partial & { skillSlugs: string[] } = {\n skillSlugs: selectedSkills ?? [],\n role,\n programSlug,\n isPublished: membership?.isPublished,\n };\n\n await reqMemberships({\n method: 'PATCH',\n url: `/memberships/${membership?.id}`,\n data: membershipData,\n });\n\n if (!profile?.isOnboarded && role === 'trainee') {\n return navigate('/profile/bio');\n } else {\n return role === 'guide' ? navigate('../preview') : navigate('../choose');\n }\n };\n\n useEffect(() => {\n if (!membership) return;\n const membershipSkills = (membership?.skills as Partial[])?.map(\n (skill) => skill.fieldSlug,\n );\n\n const value = allSkills\n .flatMap(({ skills }) => skills.map(({ slug }) => slug))\n .filter((slug) => membershipSkills?.includes(slug))\n .flatMap((value) => (value ? [value] : []));\n\n setValue('value', {\n name: '',\n fieldType: 'multi-select',\n value: value,\n });\n }, [membership, setValue]);\n\n let percentage;\n\n if (registrationQuestion && hasGoalsQuestion) {\n percentage = 75;\n } else if (registrationQuestion || hasGoalsQuestion) {\n percentage = 66;\n } else {\n percentage = 50;\n }\n\n // Loading state\n if (isCheckingSkills) {\n return ;\n }\n\n if (!membership || !role)\n return (\n navigate(-1)}>\n <>\n \n );\n\n return (\n navigate(-1)}\n percentage={percentage}\n >\n \n \n \n \n\n \n \n \n \n \n );\n}\n","import {\n useBaseLanguage,\n useOrganization,\n useOrganizationPrograms,\n} from '@guider-global/sanity-hooks';\nimport {\n Button,\n Loading,\n MultiSelectAreaInputValue,\n RoleChip,\n SideBarIndicator,\n SkillCategoriesView,\n TextStack,\n} from '@guider-global/ui';\nimport { Stack } from '@guider-global/ui/lib/components/Layout/Stack';\nimport { useLocalization } from 'hooks';\nimport { useLocation, useNavigate, useParams } from 'react-router-dom';\nimport { ProgressContainer } from 'containers';\nimport { getSubDomain } from '@guider-global/front-end-utils';\nimport { SubmitHandler, useForm } from 'react-hook-form';\nimport guideAvatar from 'assets/guideAvatar.svg';\nimport traineeAvatar from 'assets/traineeAvatar.svg';\nimport { useContext, useEffect, useRef, useState } from 'react';\nimport {\n useMemberships,\n useProfiles,\n useRelationships,\n} from '@guider-global/front-end-hooks';\nimport {\n EProgramVariation,\n IMembership,\n ISkill,\n} from '@guider-global/shared-types';\nimport { interpolate } from 'functions';\nimport { GroupsContext, GroupValues } from 'containers/Groups';\n\ntype SkillFormValues = {\n [key: string]: MultiSelectAreaInputValue;\n};\n\nexport function ProgramCategorizedSkillsPage() {\n const navigate = useNavigate();\n const { groupValues, setGroupValues } = useContext(GroupsContext);\n const [isCheckingSkills, setIsCheckingSkills] = useState(true);\n\n const {\n programSlug = '',\n role,\n type,\n id,\n } = useParams<{\n programSlug: string;\n role: 'guide' | 'trainee';\n type: 'hard' | 'soft';\n id: string | undefined;\n }>();\n\n const skillType = type === 'soft' ? 'soft_skills' : 'hard_skills';\n\n const organizationSlug = getSubDomain();\n const { organization } = useOrganization({ organizationSlug });\n const { localeCode } = useLocalization(organizationSlug);\n const { baseLanguage } = useBaseLanguage({ localeCode });\n\n const { reqMemberships, memberships, isMutatingMemberships } = useMemberships(\n {},\n );\n const { reqRelationships, relationships, isMutatingRelationships } =\n useRelationships({});\n\n const { profile } = useProfiles({});\n\n const membership = memberships?.find(\n (membership) =>\n membership?.programSlug === programSlug && role === membership?.role,\n );\n\n const relationship = relationships?.find(\n (relationship) => relationship?.id === id,\n );\n\n // Program\n const { getProgram } = useOrganizationPrograms({\n localeCode,\n organizationSlug,\n });\n const program = getProgram(programSlug);\n\n const disableSkillsQuestion = program?.skills?.disable_skills_question;\n const allowBioQuestion = organization?.personal_details?.enable_bio ?? false;\n\n const hasSoftSkills = (program?.skills?.soft_skills?.length ?? 0) > 0;\n\n const hasHardSkills = (program?.skills?.hard_skills?.length ?? 0) > 0;\n\n const skillLabel =\n skillType === 'soft_skills'\n ? baseLanguage?.globals?.skills?.soft_skills_label\n : baseLanguage?.globals?.skills?.hard_skills_label;\n\n const location = useLocation();\n const prevLocation = useRef(location.pathname);\n\n useEffect(() => {\n if (!program || !membership || !type) return;\n\n if (disableSkillsQuestion || (!hasSoftSkills && !hasHardSkills)) {\n if (allowBioQuestion && role === 'trainee') {\n return navigate('/profile/bio');\n } else {\n return navigate(role === 'trainee' ? '../choose' : '../preview');\n }\n }\n switch (true) {\n case prevLocation.current.includes('skills/hard') &&\n type === 'soft' &&\n !hasSoftSkills:\n navigate('../goals');\n\n break;\n case !prevLocation.current.includes('skills/hard') &&\n type === 'soft' &&\n !hasSoftSkills:\n navigate('../skills/hard');\n\n break;\n\n case prevLocation.current.includes('skills/soft') &&\n type === 'hard' &&\n !hasHardSkills:\n navigate(role === 'trainee' ? '../choose' : '../preview');\n break;\n\n case type === 'hard' &&\n !hasHardSkills &&\n !prevLocation.current.includes('skills/soft'):\n navigate('../skills/soft');\n break;\n default:\n setIsCheckingSkills(false);\n break;\n }\n\n prevLocation.current = location.pathname;\n }, [\n program,\n membership,\n type,\n role,\n navigate,\n disableSkillsQuestion,\n hasSoftSkills,\n hasHardSkills,\n location.pathname,\n allowBioQuestion,\n ]);\n\n const isGroup =\n program?.program_details?.program_variation === EProgramVariation.Group;\n\n const validationSettings =\n type === 'hard'\n ? program?.skills?.config?.hard_skills_validation\n : program?.skills?.config?.soft_skills_validation;\n\n const min = validationSettings?.minimum_selections;\n const max = validationSettings?.maximum_selections;\n const maxSkillsErrorMessage = interpolate(\n baseLanguage?.globals?.errors?.maximum_selections_exceeded,\n { number: `${max}` },\n 'Please select less options',\n );\n\n const {\n control,\n handleSubmit,\n reset,\n formState: { isValid },\n } = useForm({\n mode: 'onChange',\n });\n\n const onSubmit: SubmitHandler = async (data) => {\n if (!type) return;\n\n const skills = data?.[skillType]?.value;\n\n if (isGroup && role === 'guide') {\n if (id) {\n const existingSkillsOfDifferentType = (\n relationship?.skills as Partial[]\n )\n ?.filter(\n (skill) =>\n skill?.fieldSlug &&\n (type === 'soft' ? skill.type === 'hard' : skill.type === 'soft'),\n )\n ?.map((skill) => skill.fieldSlug);\n\n await reqRelationships({\n method: 'PATCH',\n url: `/relationships/${id}`,\n data: {\n ...(type === 'soft' && {\n softSkillSlugs: skills,\n hardSkillSlugs: existingSkillsOfDifferentType as string[],\n }),\n ...(type === 'hard' && {\n softSkillSlugs: existingSkillsOfDifferentType as string[],\n hardSkillSlugs: skills,\n }),\n },\n });\n\n if (type === 'soft') {\n return navigate(`../skills/hard`);\n } else {\n return navigate(`/relationships/${id}`);\n }\n } else {\n const groupData: GroupValues = {\n ...groupValues,\n ...(type === 'soft' && { softSkillSlugs: skills }),\n ...(type === 'hard' && { hardSkillSlugs: skills }),\n };\n setGroupValues(groupData);\n if (type === 'soft') {\n return navigate(`../skills/hard`);\n } else {\n return navigate(`../preview-group`);\n }\n }\n }\n\n const existingSkillsOfOppositeTypeSlugs = (\n membership?.skills as Partial[]\n )\n ?.filter(\n (skill) =>\n skill?.fieldSlug &&\n (type === 'soft' ? skill.type === 'hard' : skill.type === 'soft'),\n )\n ?.map((skill) => skill.fieldSlug);\n\n const membershipData: Partial & {\n hardSkillSlugs?: string[];\n softSkillSlugs?: string[];\n } = {\n ...(type === 'soft' && {\n softSkillSlugs: skills,\n hardSkillSlugs: existingSkillsOfOppositeTypeSlugs as string[],\n }),\n ...(type === 'hard' && {\n softSkillSlugs: existingSkillsOfOppositeTypeSlugs as string[],\n hardSkillSlugs: skills,\n }),\n role,\n programSlug,\n isPublished: membership?.isPublished,\n };\n\n await reqMemberships({\n method: 'PATCH',\n url: `/memberships/${membership?.id}`,\n data: membershipData,\n });\n\n if (\n type === 'hard' &&\n !profile?.isOnboarded &&\n role === 'trainee' &&\n allowBioQuestion\n ) {\n return navigate('/profile/bio');\n }\n\n if (type === 'soft') {\n return navigate('../skills/hard');\n } else {\n if (isGroup) {\n return navigate('../choose-group');\n } else {\n return role === 'guide'\n ? navigate('../preview')\n : navigate('../choose');\n }\n }\n };\n\n useEffect(() => {\n if (!type || !membership) return;\n\n const skillOptions = program?.skills?.[skillType]?.flatMap(\n (skill) => skill.skills,\n );\n\n if (id && relationship && isGroup) {\n const relationshipSkills = (\n relationship?.skills as Partial[]\n )?.map((skill) => skill.fieldSlug);\n\n const value =\n skillOptions\n ?.filter((option) => relationshipSkills?.includes(option?.slug))\n ?.map((skill) => skill.slug) ?? [];\n\n return reset({\n [skillType]: {\n fieldType: 'multi-select',\n name: skillType,\n value,\n },\n });\n }\n\n if (groupValues && isGroup) {\n const groupFormSkills = [\n ...(groupValues?.hardSkillSlugs ?? []),\n ...(groupValues?.softSkillSlugs ?? []),\n ];\n\n const value =\n skillOptions\n ?.filter(\n (option) => option?.slug && groupFormSkills?.includes(option?.slug),\n )\n ?.map((skill) => skill.slug) ?? [];\n\n return reset({\n [skillType]: {\n fieldType: 'multi-select',\n name: skillType,\n value,\n },\n });\n }\n\n const membershipSkills = (membership?.skills as Partial[])?.map(\n (skill) => skill.fieldSlug,\n );\n\n const value =\n skillOptions\n ?.filter((option) => membershipSkills?.includes(option?.slug))\n ?.map((skill) => skill.slug) ?? [];\n\n return reset({\n [skillType]: {\n fieldType: 'multi-select',\n name: skillType,\n value,\n },\n });\n }, [\n type,\n reset,\n skillType,\n membership,\n relationship,\n id,\n isGroup,\n groupValues,\n program?.skills,\n ]);\n\n const items = [];\n\n if (hasSoftSkills) {\n items.push({\n text: baseLanguage?.globals?.skills?.soft_skills_label,\n });\n }\n\n if (hasHardSkills) {\n items.push({\n text: baseLanguage?.globals?.skills?.hard_skills_label,\n disabled: hasSoftSkills && skillType === 'soft_skills',\n });\n }\n if (isCheckingSkills) {\n return ;\n }\n\n if (!membership || !role || !type)\n return (\n navigate(-1)}\n percentage={type === 'soft' ? 60 : 80}\n >\n <>\n \n );\n\n return (\n navigate(-1)}\n percentage={type === 'soft' ? 60 : 80}\n >\n \n \n \n \n \n \n \n \n \n \n );\n}\n","import { useProfileImage } from '@guider-global/azure-storage-hooks';\nimport {\n useMemberships,\n useProfiles,\n useUsers,\n} from '@guider-global/front-end-hooks';\nimport {\n getFormattedProgramFields,\n getSubDomain,\n getVisibleProfileFields,\n} from '@guider-global/front-end-utils';\nimport {\n useBaseLanguage,\n useOrganization,\n useOrganizationPrograms,\n} from '@guider-global/sanity-hooks';\nimport {\n ICustomField,\n IMembership,\n Program,\n SanitySkills,\n} from '@guider-global/shared-types';\nimport { OrganizationProfileView } from '@guider-global/ui';\nimport {\n AvatarBox,\n Button,\n CustomModal,\n TextStack,\n} from '@guider-global/ui/lib/components';\nimport { Stack } from '@guider-global/ui/lib/components/Layout/Stack';\nimport AvatarImage from 'assets/no_relationships_avatar.svg';\nimport guideIcon from 'assets/users.svg';\nimport { MDIcons, SanityIcon } from 'components';\nimport { ProgressContainer } from 'containers';\nimport { useLocalization } from 'hooks';\nimport { useEffect, useState } from 'react';\nimport { useDispatch } from 'react-redux';\nimport { useNavigate, useParams } from 'react-router-dom';\nimport { showAppAlert } from 'store/slices/appSlice';\nimport { getGoalCategoryLabels, getSkillLabels } from 'utils';\n\nexport function ProgramPreviewPage() {\n const { programSlug = '' } = useParams<{\n programSlug: string;\n }>();\n\n const [showPublishedModal, setShowPublishedModal] = useState(false);\n const [loading, setLoading] = useState(false);\n\n // Hooks\n\n const navigate = useNavigate();\n const organizationSlug = getSubDomain();\n const { localeCode } = useLocalization(organizationSlug);\n const { getProfileImage } = useProfileImage();\n const dispatch = useDispatch();\n\n // Prefetch image\n useEffect(() => {\n const img = new Image();\n img.src = AvatarImage;\n }, []);\n\n // Organization\n\n const { organization } = useOrganization({\n organizationSlug,\n });\n\n // Profile\n const { profile, reqProfiles, profilesRevalidate } = useProfiles({});\n\n // User\n const { user } = useUsers({});\n\n // Program\n const { getProgram } = useOrganizationPrograms({\n localeCode,\n organizationSlug,\n });\n const program = getProgram(programSlug);\n\n // Base Language\n const { baseLanguage } = useBaseLanguage({ localeCode });\n\n // Memberships\n const { memberships, reqMemberships, isMutatingMemberships } = useMemberships(\n {},\n );\n\n const membership = memberships?.find(\n (membership) =>\n membership?.programSlug === programSlug && membership?.role === 'guide',\n );\n const allowBioQuestion = organization?.personal_details.enable_bio ?? false;\n\n async function handlePublish() {\n if (!membership || !program || !programSlug) return;\n\n if (membership?.requiresApproval === false) {\n navigate('/dashboard');\n return;\n }\n\n setLoading(true);\n\n const requiresApproval =\n program?.registration?.guide_membership_approval ?? false;\n\n const membershipsResult = await reqMemberships({\n method: 'PATCH',\n url: `/memberships/${membership?.id}`,\n data: {\n programSlug,\n requiresApproval,\n isPublished: true,\n },\n });\n\n await reqMemberships({\n method: 'GET',\n url: `/memberships`,\n });\n\n if (membershipsResult?.status === 'success') {\n setShowPublishedModal(true);\n } else {\n dispatch(\n showAppAlert({\n severity: 'error',\n message: membershipsResult?.message,\n timeout: 5000,\n }),\n );\n }\n setLoading(false);\n }\n\n async function handleButtonClick() {\n const hasTraineeMembership = memberships?.some(\n (membership) =>\n membership?.role === 'trainee' &&\n membership?.programSlug === programSlug,\n );\n\n const isNotOnboarded = profile?.isOnboarded === false;\n\n if (!hasTraineeMembership && isNotOnboarded && allowBioQuestion) {\n navigate('/profile/bio');\n return;\n }\n\n if (hasTraineeMembership) {\n navigate(`/programs/${programSlug}/join/trainee`);\n return;\n }\n\n if (!hasTraineeMembership && !allowBioQuestion && isNotOnboarded) {\n await reqProfiles({\n method: 'PATCH',\n url: `/profiles/${profile.id}`,\n data: {\n isOnboarded: true,\n },\n });\n await profilesRevalidate();\n }\n\n navigate('/dashboard');\n }\n const customFields = getFormattedProgramFields(\n membership as IMembership,\n program as Program,\n );\n\n const userImage =\n getProfileImage({\n profilePicture: profile?.picture,\n userPicture: user?.picture,\n }) ?? '';\n\n const profileFieldsData =\n getVisibleProfileFields(\n organization?.profile_fields,\n profile?.organizationFields as ICustomField[],\n ) ?? [];\n\n const profileFields = profileFieldsData?.map((field) => {\n return {\n icon: ,\n label: field?.label?.toString() ?? '',\n };\n });\n\n const skills =\n getSkillLabels({\n options: program?.skills as SanitySkills,\n source: membership,\n }) ?? [];\n\n const goals =\n getGoalCategoryLabels({\n options:\n program?.registration?.goals?.custom_goal_categories ??\n organization?.goal_categories?.categories,\n source: membership,\n }) ?? [];\n\n if (!membership)\n return (\n \n <>\n \n );\n\n return (\n navigate(-1)} percentage={100}>\n \n \n\n \n \n \n \n \n \n \n \n \n \n );\n}\n","import { ProgressContainer } from 'containers';\n\nimport { useNavigate, useParams } from 'react-router-dom';\n\nimport { useProfileImage } from '@guider-global/azure-storage-hooks';\nimport {\n getFormattedProgramFields,\n getSubDomain,\n getVisibleProfileFields,\n} from '@guider-global/front-end-utils';\nimport {\n useBaseLanguage,\n useOrganization,\n useOrganizationPrograms,\n} from '@guider-global/sanity-hooks';\nimport {\n EProgramVariation,\n ICustomField,\n IMatchV2,\n IMembership,\n IProfile,\n IRelationship,\n Program,\n SanitySkills,\n} from '@guider-global/shared-types';\nimport { OrganizationProfileView } from '@guider-global/ui';\nimport {\n Button,\n CircularAvatarPair,\n CustomModal,\n Image,\n Loading,\n TextStack,\n} from '@guider-global/ui/lib/components';\nimport NoMatches from 'assets/no_relationships_avatar.svg';\n\nimport {\n useMemberships,\n useProfiles,\n useRelationships,\n useUsers,\n} from '@guider-global/front-end-hooks';\nimport { ITypedApiResult } from '@guider-global/swr';\nimport { Stack } from '@guider-global/ui/lib/components/Layout/Stack';\nimport { MDIcons, SanityIcon } from 'components';\nimport { interpolate } from 'functions';\nimport { useLocalization } from 'hooks';\nimport { useMatchesV2 } from 'hooks/useMatchesV2';\nimport { useState } from 'react';\nimport ConfettiExplosion from 'react-confetti-explosion';\nimport { useAppDispatch } from 'store/hooks';\nimport { showAppAlert } from 'store/slices/appSlice';\nimport { getGoalCategoryLabels, getSkillLabels } from 'utils';\nimport { NoMatchesView } from 'views';\n\nexport function ProgramMatchesPage() {\n const { programSlug = '' } = useParams<{\n programSlug: string;\n }>();\n\n // State\n const [matchingLoading, setMatchingLoading] = useState(false);\n const [selectedProfileId, setSelectedProfileId] = useState<\n string | undefined\n >(undefined);\n const [showMatchedModal, setShowMatchedModal] = useState(false);\n const [selectedMatch, setSelectedMatch] = useState<{\n match: IMatchV2 | undefined;\n relationshipId: string | undefined;\n }>({ match: undefined, relationshipId: undefined });\n\n // Hooks\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const organizationSlug = getSubDomain();\n const { getProfileImage } = useProfileImage();\n\n // Organization\n\n const { organization } = useOrganization({\n organizationSlug,\n });\n\n // Profile\n const { profile, reqProfiles, profilesRevalidate } = useProfiles({});\n const isOnboarded = profile?.isOnboarded === true;\n // User\n const { user } = useUsers({});\n // Base Language\n\n const { localeCode } = useLocalization(organizationSlug);\n const { baseLanguage } = useBaseLanguage({ localeCode });\n // Program\n const { getProgram } = useOrganizationPrograms({\n localeCode,\n organizationSlug,\n });\n const program = getProgram(programSlug);\n\n // Memberships\n const { memberships } = useMemberships({});\n\n const membership = memberships?.find(\n (membership) =>\n membership?.programSlug === programSlug && membership?.role === 'trainee',\n );\n\n // Strings and assets\n\n const matchesToDisplay = program?.registration?.matches_to_display;\n\n // Matching\n\n const { matchesV2: matches, isLoadingMatchesV2 } = useMatchesV2({\n query: `?resultType=guideMembership&organizationSlug=${organizationSlug}&programSlug=${programSlug}${\n matchesToDisplay ? `&pageLimit=${matchesToDisplay}` : ''\n }`,\n });\n\n // Relationships\n\n const { relationships, reqRelationships, isLoadingRelationships } =\n useRelationships({});\n\n // Relationship limits\n\n const isTraineeRelationshipLimitSet =\n program?.relationships?.relationship_limits\n ?.enable_trainee_relationship_limit ?? false;\n\n const traineeRelationshipLimit = isTraineeRelationshipLimitSet\n ? program?.relationships?.relationship_limits?.trainee_relationship_limit\n : undefined;\n\n const programRelationships =\n relationships?.filter((relationship) => {\n const relationshipTraineeProfileIds = (\n relationship?.traineeProfiles as IProfile[]\n ).map((relationship) => relationship?.id);\n\n const relationshipIncludesTrainee =\n profile && relationshipTraineeProfileIds.includes(profile?.id);\n return (\n relationship?.programSlug === programSlug &&\n !relationship?.isConcluded &&\n relationshipIncludesTrainee\n );\n }) ?? [];\n\n const showRegistrationLimitReachedModal =\n traineeRelationshipLimit !== undefined\n ? (programRelationships?.length ?? 0) >= traineeRelationshipLimit\n : false;\n\n const isRelationshipLimitModalOpen =\n !isLoadingRelationships &&\n !showMatchedModal &&\n showRegistrationLimitReachedModal;\n\n const isProfileBioEnabled =\n organization?.personal_details.enable_bio === true;\n\n // Handle match\n\n const handleMatching = (id: string, match: IMatchV2) => {\n if (!membership) return;\n\n setMatchingLoading(true);\n setSelectedProfileId(id);\n const traineeProfile = (membership?.profile as Partial)?.id;\n\n reqRelationships(\n {\n method: 'PUT',\n data: {\n guideProfiles: [id],\n traineeProfiles: traineeProfile ? [traineeProfile] : [],\n organizationSlug,\n programSlug,\n programTypeSlug:\n program?.program_details?.program_type?.metadata?.id?.current,\n programVariationTypeSlug: EProgramVariation.Individual,\n profileId: (membership?.profile as Partial)?.id,\n },\n },\n {\n onError: (err) => {\n setMatchingLoading(false);\n dispatch(\n showAppAlert({\n severity: 'error',\n message: err?.message,\n timeout: 5000,\n }),\n );\n },\n onSuccess: (result) => {\n const relationshipId = (result?.data as IRelationship[])[0]?.id;\n\n setSelectedMatch({\n match,\n relationshipId,\n });\n setShowMatchedModal(true);\n setMatchingLoading(false);\n },\n populateCache: (result, currentData) => {\n const resultIds = result.data.map((relationship) => relationship.id);\n const filterOutNewRelationships =\n currentData?.data.filter((relationship) => {\n return !resultIds.includes(relationship.id);\n }) ?? [];\n\n const newCache = {\n ...currentData,\n data: [...filterOutNewRelationships, ...result.data],\n } as ITypedApiResult;\n return newCache;\n },\n },\n );\n if (!isOnboarded) {\n reqProfiles({\n method: 'PATCH',\n url: `/profiles/${profile?.id}`,\n data: {\n isOnboarded: true,\n },\n });\n profilesRevalidate();\n }\n };\n\n const handleSkip = async () => {\n if (!isOnboarded) {\n await reqProfiles({\n method: 'PATCH',\n url: `/profiles/${profile?.id}`,\n data: {\n isOnboarded: true,\n },\n });\n await profilesRevalidate();\n }\n navigate('/dashboard');\n };\n\n if (!baseLanguage)\n return (\n \n <>\n \n );\n\n if (!matches || isLoadingMatchesV2)\n return (\n navigate(-1)}\n endAdornment={\n \n }\n >\n \n \n );\n\n if (matches?.length === 0 && !isLoadingMatchesV2) {\n const title = interpolate(\n baseLanguage?.registration?.open_matching?.matches?.empty_state_title,\n {\n rolePluralized:\n program?.program_details?.program_type?.program_type_text.common\n ?.guide?.pluralized ?? 'Mentors',\n roleSingular:\n program?.program_details?.program_type?.program_type_text.common\n ?.guide?.singular ?? 'Mentor',\n },\n );\n return (\n navigate(-1)}\n endAdornment={\n \n }\n percentage={100}\n >\n navigate(-1),\n },\n {\n key: 'matches-btn-2',\n variant: 'contained',\n label: baseLanguage?.globals?.common?.continue_button_label,\n color: 'info',\n onClick: handleSkip,\n },\n ]}\n />\n \n );\n }\n\n // Match modal\n\n const matchImage =\n getProfileImage({\n profilePicture: selectedMatch?.match?.profile?.picture,\n userPicture: selectedMatch?.match?.user?.picture,\n }) ?? '';\n\n const userImage =\n getProfileImage({\n profilePicture: profile?.picture,\n userPicture: user?.picture,\n }) ?? '';\n\n return (\n navigate(-1)}\n endAdornment={\n \n }\n >\n \n \n\n {matches?.map((match, index) => {\n const profileFieldsData =\n getVisibleProfileFields(\n organization?.profile_fields,\n match?.profile?.organizationFields as ICustomField[],\n ) ?? [];\n\n const profileFields = profileFieldsData?.map((field) => {\n return {\n icon: ,\n label: field?.label?.toString() ?? '',\n };\n });\n\n const image = getProfileImage({\n profilePicture: match?.profile?.picture,\n userPicture: match?.user?.picture,\n });\n\n const buttonLabel = interpolate(\n program?.program_details?.program_type?.program_type_text\n ?.variations?.individual?.registration?.registration_trainee\n ?.registration_trainee_choose_a_guide\n ?.registration_trainee_choose_a_guide_choose_guide_button_label ??\n '',\n { name: match?.profile?.firstName ?? '' },\n );\n\n const bottomText =\n program?.relationships?.relationship_limits\n ?.enable_guide_relationship_limit &&\n program?.relationships?.relationship_limits\n ?.guide_relationship_limit &&\n match?.relationshipSpotsLeft &&\n interpolate(baseLanguage?.profile_card?.spots_left_label, {\n guideSingular:\n program?.program_details?.program_type?.program_type_text\n ?.common?.guide?.singular ?? '',\n spotNumber: match?.relationshipSpotsLeft?.toString(),\n spot:\n match.relationshipSpotsLeft === 1\n ? baseLanguage?.profile_card?.spot_singular\n : baseLanguage?.profile_card?.spots_plural,\n });\n\n const matchText =\n match?.percentage &&\n interpolate(baseLanguage?.profile_card?.match_percentage, {\n matchPercentage: match?.percentage.toFixed(0),\n });\n\n const skills = getSkillLabels({\n options: program?.skills as SanitySkills,\n source: match,\n });\n\n const goals =\n getGoalCategoryLabels({\n options:\n program?.registration?.goals?.custom_goal_categories ??\n organization?.goal_categories?.categories,\n source: match,\n }) ?? [];\n\n const matchSkills =\n match?.skills?.length !== 0\n ? {\n title: baseLanguage?.profile_card?.matched_on_skills_label,\n skills,\n }\n : undefined;\n\n const matchGoals =\n match?.goalCategories?.length !== 0\n ? {\n title: baseLanguage?.profile_card?.matched_on_goals_label,\n goals,\n }\n : undefined;\n\n const customFields = getFormattedProgramFields(\n match?.membership as IMembership,\n program as Program,\n );\n\n const profileBio = {\n value: match?.profile?.bio ?? '',\n label: baseLanguage.profile_card?.bio_title ?? '',\n };\n\n return (\n \n handleMatching(match?.profile?.id ?? '', match),\n loading:\n matchingLoading && selectedProfileId === match?.profile?.id,\n disabled:\n matchingLoading && selectedProfileId !== match?.profile?.id,\n },\n ]}\n bottomText={bottomText}\n profileBio={\n isProfileBioEnabled\n ? { ...profileBio, type: 'free-text' }\n : undefined\n }\n />\n );\n })}\n \n \n \n \n \n navigate(`/relationships`)}\n />\n \n \n \n \n \n \n \n \n \n navigate(`/relationships/${selectedMatch?.relationshipId}`)\n }\n />\n \n \n \n \n \n );\n}\n","import { useMemberships, useProfiles } from '@guider-global/front-end-hooks';\nimport { getSubDomain } from '@guider-global/front-end-utils';\nimport {\n useBaseLanguage,\n useOrganization,\n useProgram,\n} from '@guider-global/sanity-hooks';\nimport { IMembership } from '@guider-global/shared-types';\nimport { Button, Stack } from '@guider-global/ui';\nimport { ProgressContainer } from 'containers';\nimport { useLocalization } from 'hooks';\nimport { useEffect, useState } from 'react';\nimport { useLocation, useNavigate, useParams } from 'react-router-dom';\nimport { ParticipationView, Role } from 'views/Registration';\n\nexport function ParticipationPage() {\n const [role, setRole] = useState(undefined);\n const { pathname } = useLocation();\n\n const isEditingMembership = pathname?.includes('membership');\n\n const navigate = useNavigate();\n\n const organizationSlug = getSubDomain();\n const { organization } = useOrganization({ organizationSlug });\n\n const { programSlug = '' } = useParams();\n\n const { program } = useProgram({ programSlug: programSlug ?? '' });\n\n const programType = program?.program_details?.program_type;\n const openMatchingText =\n programType?.program_type_text?.common?.open_matching;\n\n const { localeCode } = useLocalization(organizationSlug);\n const { baseLanguage } = useBaseLanguage({ localeCode });\n\n const participationConfig =\n baseLanguage?.registration?.open_matching?.participation;\n const continueButtonLabel =\n baseLanguage?.globals?.common?.continue_button_label ?? 'Continue';\n const primaryProgramSlug =\n organization?.programs?.primary_program?.program_slug;\n\n const { profile } = useProfiles({\n params: { integrationsEnabled: true },\n });\n\n const {\n memberships,\n reqMemberships,\n isMutatingMemberships,\n membershipsRevalidate,\n } = useMemberships({});\n\n const membership = memberships?.find(\n (membership) => membership?.programSlug === programSlug,\n );\n\n const hasOpenMatchingMembership = memberships?.some(\n (membership) => membership?.programSlug === primaryProgramSlug,\n );\n\n useEffect(() => {\n if (!membership?.role) return;\n\n if (role === 'both') {\n setRole('both');\n } else {\n setRole(membership?.role);\n }\n if (profile?.isOnboarded && hasOpenMatchingMembership) {\n navigate('/dashboard');\n }\n }, [\n hasOpenMatchingMembership,\n membership,\n navigate,\n profile?.isOnboarded,\n role,\n ]);\n\n const assignedRoles = memberships\n ?.filter((membership) => membership.programSlug === programSlug)\n .map((membership) => membership.role);\n\n const hasGuideRole = assignedRoles?.includes('guide');\n const hasTraineeRole = assignedRoles?.includes('trainee');\n async function handleParticipation() {\n if (!memberships) {\n return;\n }\n\n const rolesToHandle: ('guide' | 'trainee')[] = [];\n\n switch (role) {\n case 'both':\n rolesToHandle.push('guide', 'trainee');\n break;\n case 'trainee':\n rolesToHandle.push('trainee');\n break;\n case 'guide':\n rolesToHandle.push('guide');\n break;\n default:\n break;\n }\n\n try {\n for (const currentRole of rolesToHandle) {\n const existingMembership = memberships.find(\n (membership) =>\n membership.role === currentRole &&\n membership.programSlug === programSlug,\n );\n\n if (existingMembership) {\n continue;\n }\n\n const membershipData: Partial = {\n role: currentRole,\n organizationSlug,\n programSlug,\n profile: profile?.id,\n isPublished: false,\n programFields: [],\n programVariationTypeSlug: program?.program_details?.program_variation,\n };\n\n await reqMemberships({\n method: 'POST',\n url: '/memberships',\n data: membershipData,\n });\n }\n\n membershipsRevalidate();\n\n if (role === 'both') {\n navigate(`/programs/${programSlug}/join/guide`);\n } else {\n navigate(`/programs/${programSlug}/join/${role}`);\n }\n } catch (e) {\n console.error('Error creating or updating memberships:', e);\n }\n }\n\n if (!profile && !isEditingMembership)\n return (\n navigate(-1) : undefined}\n percentage={100}\n >\n <>\n \n );\n\n return (\n navigate(-1) : undefined}\n >\n \n {\n setRole(selectedRole);\n }}\n currentRole={role}\n hasGuideRole={hasGuideRole ?? false}\n hasTraineeRole={hasTraineeRole ?? false}\n />\n \n \n \n );\n}\n"],"names":["ProgramMembershipPage","navigate","onBackButtonClick","percentage","ProgramMembershipForm","ProgramGoalsPage","selectedGoalCategories","setSelectedGoalCategories","useState","loading","setLoading","isCheckingGoals","setIsCheckingGoals","programSlug","role","organizationSlug","getSubDomain","dispatch","location","organization","useOrganization","localeCode","baseLanguage","useBaseLanguage","getProgram","useOrganizationPrograms","program","oneList","skills","one_list","useEffect","_a","_b","_c","_d","_e","_f","_g","_h","disabledGoalsQuestion","registration","goals","guide_disable_goals","hasCustomGoalCategories","custom_goal_categories","length","hasOrganizationGoalCategories","goal_categories","categories","nextPage","pathname","replace","min","trainee_min_selected_goals","max","trainee_max_selected_goals","errorMessage","globals","max_goals_validation_message","limitNotMet","Boolean","limitExceeded","memberships","reqMemberships","isMutatingMemberships","useMemberships","membership","find","goalCategories","filter","goalCategory","offered","sought","map","fieldSlug","goalsSource","label","goal_category_name","slug","goal_category_slug","current","color","Stack","direction","justifyContent","width","xs","md","open_matching","common","preheader","roleSingular","program_details","program_type","program_type_text","singular","avatarSrc","guideAvatar","traineeAvatar","sx","mt","size","heading","text","title_guide","traineeSingular","trainee","title_trainee","guideSingular","guide","variant","lineHeight","subtitles","select_number_of_goals","GoalCategoriesView","onSelected","slugs","buttonLabels","more","show_more_button_label","less","show_less_button_label","continue_button_label","onClick","data","isPublished","goalCategorySlugs","membershipsResult","method","url","id","status","severity","message","timeout","handleGoalsSubmit","disabled","FormHelperText","ProgramUncategorizedSkillsPage","isCheckingSkills","setIsCheckingSkills","profile","useProfiles","disableSkillsQuestion","disable_skills_question","one_list_validation","minimum_selections","maximum_selections","maxSkillsErrorMessage","errors","maximum_selections_exceeded","number","registrationQuestion","registration_questions","hasGoalsQuestion","allSkills","soft_skills","concat","hard_skills","skillOptions","flatMap","category","autoCompleteOptions","option","control","handleSubmit","setValue","formState","isValid","mode","membershipSkills","skill","value","includes","name","fieldType","alignItems","gap","component","onSubmit","selectedSkills","membershipData","skillSlugs","isOnboarded","spacing","question_title","placeholder","maxErrorMessage","type","ProgramCategorizedSkillsPage","groupValues","setGroupValues","useContext","Groups","skillType","reqRelationships","relationships","isMutatingRelationships","useRelationships","relationship","allowBioQuestion","personal_details","enable_bio","hasSoftSkills","hasHardSkills","skillLabel","soft_skills_label","hard_skills_label","prevLocation","useRef","isGroup","program_variation","EProgramVariation","validationSettings","config","hard_skills_validation","soft_skills_validation","reset","_i","_j","_k","_l","relationshipSkills","groupFormSkills","hardSkillSlugs","softSkillSlugs","items","push","existingSkillsOfDifferentType","groupData","existingSkillsOfOppositeTypeSlugs","question_description","ProgramPreviewPage","showPublishedModal","setShowPublishedModal","getProfileImage","useProfileImage","useDispatch","Image","src","reqProfiles","profilesRevalidate","user","useUsers","customFields","getFormattedProgramFields","userImage","profilePicture","picture","userPicture","profileFieldsData","getVisibleProfileFields","profile_fields","organizationFields","profileFields","field","icon","toString","options","source","pt","orientation","textSpacing","variations","individual","registration_guide","registration_guide_review_profile","registration_guide_review_profile_title","registration_guide_review_profile_description","avatarSx","p","border","backgroundColor","guideReviews","reviewsPlural","profile_card","reviews_plural","reviewsSingular","reviews_singular","buttonLabel","reviews_button_label","noReviewsText","no_reviews_yet_label","reviews","displayName","jobTitle","townOrCity","title","question_heading","input_label","linkedInUrl","viewLinkedInLabel","programs","program_registration","linkedin_profile_button_label","buttons","requiresApproval","registration_guide_review_profile_publish_profile_button_label","save_changes_button_label","key","px","guide_membership_approval","isOpen","py","align","registration_guide_membership_pending","registration_guide_complete","registration_guide_complete_title","description","registration_guide_complete_description","textAlign","alt","fullWidth","hasTraineeMembership","some","isNotOnboarded","dashboard_button_label","ProgramMatchesPage","matchingLoading","setMatchingLoading","selectedProfileId","setSelectedProfileId","showMatchedModal","setShowMatchedModal","selectedMatch","setSelectedMatch","match","relationshipId","matchesToDisplay","matches_to_display","matchesV2","matches","isLoadingMatchesV2","useMatchesV2","query","isLoadingRelationships","traineeRelationshipLimit","relationship_limits","enable_trainee_relationship_limit","trainee_relationship_limit","programRelationships","relationshipTraineeProfileIds","traineeProfiles","relationshipIncludesTrainee","isConcluded","showRegistrationLimitReachedModal","isRelationshipLimitModalOpen","isProfileBioEnabled","handleSkip","endAdornment","skip_button_label","empty_state_title","rolePluralized","pluralized","imageSrc","empty_state_description","go_back_button_label","matchImage","index","_m","_n","_o","_p","_q","_r","_s","_t","_u","_v","_w","_x","_y","_z","_A","_B","_C","_D","_E","_F","_G","_H","_I","_J","_K","_L","_M","_N","_O","_P","_Q","_R","_S","_T","_U","_V","_W","_X","_Y","_Z","__","_$","_aa","_ba","_ca","_da","_ea","_fa","_ga","_ha","image","registration_trainee","registration_trainee_choose_a_guide","registration_trainee_choose_a_guide_choose_guide_button_label","firstName","bottomText","enable_guide_relationship_limit","guide_relationship_limit","relationshipSpotsLeft","spots_left_label","spotNumber","spot","spot_singular","spots_plural","matchText","match_percentage","matchPercentage","toFixed","matchSkills","matched_on_skills_label","matchGoals","matched_on_goals_label","profileBio","bio","bio_title","score","parseFloat","isBestMatch","bestMatchLabel","best_match_label","traineeProfile","guideProfiles","programTypeSlug","metadata","programVariationTypeSlug","profileId","onError","err","onSuccess","result","populateCache","currentData","resultIds","filterOutNewRelationships","handleMatching","registration_trainee_guide_limit_modal","registration_trainee_guide_limit_modal_title","registration_trainee_guide_limit_modal_description","fit","registration_trainee_guide_limit_modal_button_label","force","duration","registration_trainee_relationship_created_successfully","registration_trainee_relationship_created_successfully_title","registration_trainee_relationship_created_successfully_description","lastName","mainAvatar","secondaryAvatar","view_relationship","ParticipationPage","setRole","isEditingMembership","useProgram","programType","openMatchingText","participationConfig","participation","continueButtonLabel","primaryProgramSlug","primary_program","program_slug","params","integrationsEnabled","membershipsRevalidate","hasOpenMatchingMembership","assignedRoles","hasGuideRole","hasTraineeRole","alertLabel","alert_label","guideText","guide_participation","traineeText","trainee_participation","handleRoleSelection","selectedRole","currentRole","rolesToHandle","programFields","e","console","error"],"sourceRoot":""}