{"version":3,"file":"static/js/app-7c36387c_b7f5aa8d0fe868a95316.js","mappings":"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","sources":["file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useApi/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useAvailabilities/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useChatToken/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useCustomFields/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useEvents/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useGoals/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useUserIntegrations/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useSettings/index.tsx","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useLocalization/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useMatches/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useMemberships/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useMixpanelEvents/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useMobileMediaQuery/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useNotes/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useProfiles/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useRelationships/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useSessionStorageTyped/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useSessions/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useSkills/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useSurveys/index.tsx","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useUserPictures/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useUsers/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useWindowDimensions/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useProfilePicture/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useUnavailabilities/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useLeaderboardPosition/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useSurveyResources/index.tsx","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useVideoParticipants/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useReviews/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useChatParticipants/index.tsx","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useMatchesV2/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useNotifications/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useNotificationsModal/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useOTPSurveys/index.tsx","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useRegisterInvite/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useTrackEvent/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useVideoTokens/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/hooks/useVideos/index.ts","file:////home/runner/work/platform/platform/apps/front-end/src/index.tsx"],"sourcesContent":["import {\n GetTokenWithPopupOptions,\n OAuthError,\n useAuth0,\n} from '@auth0/auth0-react';\nimport { getOrigin } from '@guider-global/front-end-utils';\nimport axios from 'axios';\nimport { useMixpanelEvents } from 'hooks';\n\nconst { REACT_APP_AUTH0_AUDIENCE, REACT_APP_BASE_API_URL } = process.env;\n\nexport const base = axios.create({\n baseURL: REACT_APP_BASE_API_URL,\n});\n\nexport const useApi = () => {\n const { getAccessTokenSilently, getAccessTokenWithPopup, logout } =\n useAuth0();\n const { resetUserIdentity } = useMixpanelEvents();\n\n const opts: GetTokenWithPopupOptions = {\n authorizationParams: {\n scope: 'openid',\n audience: REACT_APP_AUTH0_AUDIENCE ?? REACT_APP_BASE_API_URL,\n },\n };\n\n const getAccessToken = async () => {\n try {\n return await getAccessTokenSilently(opts);\n } catch (error) {\n const errorJson: OAuthError = JSON.parse(JSON.stringify(error));\n const errorId = errorJson.error;\n if (errorId === 'consent_required') {\n return getAccessTokenWithPopup(opts);\n } else {\n console.error(error);\n await logout({ logoutParams: { returnTo: getOrigin() } });\n resetUserIdentity();\n throw new Error('Unauthenticated');\n }\n }\n };\n\n const getApi = async (path: string): Promise => {\n const accessToken = await getAccessToken();\n\n try {\n const response = await base.get(path, {\n headers: {\n Authorization: `Bearer ${accessToken}`,\n },\n });\n\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return response.data.data;\n } catch (error) {\n throw new Error('Error getting the data');\n }\n };\n\n const postApi = async (\n path: string,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n payload: any,\n ): Promise => {\n const accessToken = await getAccessToken();\n\n try {\n const response = await base.post(path, payload, {\n headers: {\n Authorization: `Bearer ${accessToken}`,\n },\n });\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return response.data.data;\n } catch (error) {\n throw new Error('Error updating the data');\n }\n };\n\n const putApi = async (path: string): Promise => {\n const accessToken = await getAccessToken();\n\n try {\n const response = await base.put(path, {\n headers: {\n Authorization: `Bearer ${accessToken}`,\n },\n });\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return response.data.data;\n } catch (error) {\n throw new Error('Error updating the data');\n }\n };\n\n const patchApi = async (\n path: string,\n payload: T,\n ): Promise => {\n const accessToken = await getAccessToken();\n\n try {\n const response = await base.patch(path, payload, {\n headers: {\n Authorization: `Bearer ${accessToken}`,\n },\n });\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return response.data.data;\n } catch (error) {\n throw new Error('Error updating the data');\n }\n };\n\n const deleteApi = async (path: string): Promise => {\n const accessToken = await getAccessToken();\n\n try {\n const response = await base.delete(path, {\n headers: {\n Authorization: `Bearer ${accessToken}`,\n },\n });\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return response.data.data;\n } catch (error) {\n throw new Error('Error deleting the data');\n }\n };\n\n return { getApi, postApi, putApi, patchApi, deleteApi };\n};\n","import {\n DayOfWeekAvailabilities,\n DaysOfWeek,\n IAvailability,\n} from '@guider-global/shared-types';\n\nimport { getSubDomain } from '@guider-global/front-end-utils';\nimport { useOrganization } from '@guider-global/sanity-hooks';\nimport {\n IPaginationParams,\n IUseGuiderSWRParams,\n useGuiderSWR,\n} from '@guider-global/swr';\nimport { useMemo } from 'react';\n\nconst DEFAULT_START_TIME = '09:00';\nconst DEFAULT_END_TIME = '18:00';\n\ninterface IUseAvailabilitiesORequestParams extends IPaginationParams {}\ninterface UseAvailabilitiesOptions\n extends Omit<\n IUseGuiderSWRParams<\n IAvailability,\n Partial,\n IUseAvailabilitiesORequestParams\n >,\n 'url'\n > {\n query?: string;\n}\n\nexport function useAvailabilities({\n waitForAuthentication = true,\n options,\n params,\n query,\n}: UseAvailabilitiesOptions) {\n const { data, request, revalidate, error, isLoading, isValidating } =\n useGuiderSWR({\n waitForAuthentication,\n url: `/availabilities${query ? query : ''}`,\n options: {\n keepPreviousData: true,\n ...options,\n },\n params: { ...params },\n });\n\n const organizationSlug = getSubDomain();\n\n const { organization } = useOrganization({\n organizationSlug: organizationSlug,\n localeCode: 'en_GB',\n });\n\n const orgStartTime = organization?.availabilities?.start_time;\n const orgEndTime = organization?.availabilities?.end_time;\n\n const defaultAvailability = useMemo(\n () =>\n DaysOfWeek.reduce((acc, day) => {\n const isNotWeekend = day !== 'saturday' && day !== 'sunday';\n const startTime = orgStartTime ?? DEFAULT_START_TIME;\n const endTime = orgEndTime ?? DEFAULT_END_TIME;\n\n acc[`${day}Enabled`] = isNotWeekend;\n acc[`${day}Start`] = isNotWeekend ? startTime : '';\n acc[`${day}End`] = isNotWeekend ? endTime : '';\n\n return acc;\n }, {} as DayOfWeekAvailabilities),\n [orgStartTime, orgEndTime],\n );\n const createAvailabilities = (data: Record) => {\n if (!data) {\n console.error('Missing data for createAvailabilities');\n return;\n }\n\n return request({\n method: 'POST',\n url: `/availabilities`,\n data,\n });\n };\n\n const updateAvailabilities = (\n availabilityId: string,\n data: Record,\n ) => {\n if (!availabilityId || !data) {\n console.error('Missing availabilityId or data for updateAvailabilities');\n return;\n }\n\n return request({\n method: 'PATCH',\n url: `/availabilities/${availabilityId}`,\n data,\n });\n };\n\n return {\n defaultAvailability,\n createAvailabilities,\n updateAvailabilities,\n availabilities: data,\n reqAvailabilities: request,\n availabilitiesRevalidate: revalidate,\n errorsAvailabilities: error,\n isLoadingAvailabilities: isLoading,\n isErrorAvailabilities: Boolean(error),\n isValidatingAvailabilities: isValidating,\n };\n}\n","import { CommunicationAccessToken } from '@azure/communication-identity';\nimport { useAuth } from '@guider-global/auth-hooks';\nimport { useAxios } from '@guider-global/redux-axios-hooks';\nimport { IError } from '@guider-global/shared-types';\nimport axios from 'axios';\nimport { useEffect, useState } from 'react';\nimport { IUseChatTokenResult } from './types';\nimport { datadogLogs, useDatadogContext } from '@guider-global/datadog';\n\nexport function useChatToken(\n profileId?: string | false,\n waitForAuthentication = true,\n): IUseChatTokenResult {\n const { accessToken, getAccessToken } = useAuth({\n waitForAuthentication,\n });\n const { sessionId } = useDatadogContext();\n const [loading, setLoading] = useState();\n const [token, setToken] = useState();\n const [error, setError] = useState();\n\n const { requestCallback } = useAxios({\n waitForAuthentication,\n accessToken,\n onExpiredAccessToken: getAccessToken,\n });\n\n useEffect(() => {\n async function getChatToken() {\n setLoading(true);\n try {\n const axiosResult = await requestCallback({\n url: '/chat/token',\n params: { profileId, traceId: sessionId },\n method: 'POST',\n });\n const { data: axiosData } = axiosResult;\n const { data, status, message, errors, code } = axiosData;\n if (status !== 'success' || data?.length <= 0) {\n console.log('Error getting chat token!', { code, message, errors });\n const errorMessage =\n errors && errors.length > 0\n ? errors.flatMap((error) => error.message).join(',')\n : message;\n const chatError = new Error(errorMessage);\n chatError.name = `${code}`;\n throw chatError;\n }\n setToken(data[0].token);\n setLoading(false);\n } catch (err) {\n const unknownErrorMessage =\n 'Unknown error occurred getting users chat token';\n const unknownErrorCode = 'UNKNOWN_ERROR';\n if (axios.isAxiosError(err) || err instanceof Error) {\n console.error({ err });\n setError({\n message: err?.message ?? unknownErrorMessage,\n code: err?.name ?? unknownErrorCode,\n });\n datadogLogs.logger.error('useChatToken:', {\n ...err,\n });\n } else {\n datadogLogs.logger.error('useChatToken:', {\n message: unknownErrorMessage,\n err,\n });\n setError({\n code: 'UNKNOWN_ERROR',\n message: unknownErrorMessage,\n });\n }\n setLoading(false);\n }\n }\n if (accessToken && !token && !loading && !error && profileId) {\n getChatToken();\n }\n }, [\n accessToken,\n token,\n loading,\n error,\n profileId,\n requestCallback,\n sessionId,\n ]);\n\n return {\n error,\n token,\n };\n}\n","import {\n IUseRestReduxResult,\n useRestRedux,\n RestReduxHook,\n} from '@guider-global/redux-axios-hooks';\nimport { ICustomField } from '@guider-global/shared-types';\nimport customFieldsSlice from 'store/slices/customFieldsSlice';\nimport { RestRootState, RestRootStateTypes, RootState } from 'store';\n\nimport { useAuth } from '@guider-global/auth-hooks';\nimport { useDatadogContext } from '@guider-global/datadog';\n\n/**\n * A custom hook to handle CustomFields REST API requests connected the redux store\n * @deprecated use useCustomFields from @guider-global/front-end-hooks\n * @param {RestReduxHook} args are the arguments to be passed to the useRestRedux hook\n * @returns ...hook - all return values via the `useRestRedux()` hook\n * @returns customFields - array of customFields in the RestRootState reducer\n * @returns reqCustomFields - makes requests and stores results in the customFieldsReducer\n * @returns getErrorsCustomFields - gets API errors from the customFieldsReducer\n */\nexport function useCustomFields({\n waitForAuthentication = true,\n ...args\n}: RestReduxHook) {\n const { accessToken, getAccessToken } = useAuth({\n waitForAuthentication,\n });\n const { sessionId } = useDatadogContext();\n const hook: IUseRestReduxResult =\n useRestRedux({\n ...args,\n resultDataName: 'customFields',\n actions: customFieldsSlice.actions,\n waitForAuthentication,\n accessToken,\n onExpiredAccessToken: getAccessToken,\n traceId: sessionId ?? '',\n });\n return {\n ...hook,\n customFields: hook.getResults,\n reqCustomFields: hook.request,\n getErrorsCustomFields: hook.getErrors,\n hasResultsCustomFields: hook.hasResults,\n getMessageCustomFields: hook.getMessage,\n getCodeCustomFields: hook.getCode,\n isLoadingCustomFields: hook.isLoading,\n isErrorCustomFields: hook.isError,\n isSuccessCustomFields: hook.isSuccess,\n };\n}\n","import { useAuth } from '@guider-global/auth-hooks';\nimport { useDatadogContext } from '@guider-global/datadog';\nimport { getSubDomain } from '@guider-global/front-end-utils';\nimport {\n IUseRestReduxResult,\n RestReduxHook,\n useRestRedux,\n} from '@guider-global/redux-axios-hooks';\nimport {\n useSanityOrganization,\n useSanityOrganizationPrograms,\n} from '@guider-global/sanity-hooks';\nimport { IEvent, IGoal, Program } from '@guider-global/shared-types';\nimport { RestRootState, RestRootStateTypes, RootState } from 'store';\nimport eventsSlice from 'store/slices/eventsSlice';\n\ninterface IUseEvents extends RestReduxHook {\n programSlug?: string;\n}\n\n/**\n * A custom hook to handle Events REST API requests connected the redux store\n * @deprectaion This hook is deprecated and will be removed in the future. Please use the useEvents hook from the @guider-global/front-end-hooks package instead\n * @param {RestReduxHook} args are the arguments to be passed to the useRestRedux hook\n * @returns ...hook - all return values via the `useRestRedux()` hook\n * @returns relationships - array of relationships in the RestRootState reducer\n * @returns reqEvents - makes requests and stores results in the relationshipsReducer\n * @returns getErrorsEvents - gets API errors from the relationshipsReducer\n */\nexport function useEvents({\n programSlug = '',\n waitForAuthentication = true,\n ...args\n}: IUseEvents) {\n const { getProgram } = useSanityOrganizationPrograms({});\n const program = getProgram(programSlug);\n const organizationSlug = getSubDomain();\n const { getOrganization } = useSanityOrganization({\n organizationSlug: organizationSlug,\n getSilently: false,\n });\n const organization = getOrganization();\n const organizationName = organization.basic_info.name;\n const goalCategories = organization.goal_categories;\n\n const { accessToken, getAccessToken } = useAuth({\n waitForAuthentication,\n });\n const { sessionId } = useDatadogContext();\n\n const hook: IUseRestReduxResult = useRestRedux<\n IEvent,\n RestRootState,\n RestRootStateTypes,\n RootState\n >({\n ...args,\n getSilently: false,\n resultDataName: 'events',\n actions: eventsSlice.actions,\n waitForAuthentication,\n accessToken,\n onExpiredAccessToken: getAccessToken,\n traceId: sessionId ?? '',\n });\n\n const getOrganizationDataForEvent = () => {\n return {\n slug: organizationSlug,\n url: window.location.origin,\n name: organizationName,\n learningHubURL: `${window.location.origin}/learn`,\n };\n };\n\n const getProgramDataForEvent = () => {\n const programType = program?.program_details?.program_type;\n const programSlug = program?.metadata.id.current;\n\n return {\n variation: 'individual',\n name: program?.metadata.program_name,\n description: program?.program_details?.program_description,\n slug: programSlug,\n landingPageURL: `${window.location.origin}/programs/${programSlug}`,\n guideRegistrationUrl: `${window.location.origin}/programs/${programSlug}/join/guide`,\n traineeRegistrationUrl: `${window.location.origin}/programs/${programSlug}/join/trainee`,\n type: {\n id: programType?.metadata?.id?.current,\n noun: programType?.program_type_text?.common?.noun,\n verb: programType?.program_type_text?.common?.verb,\n guideSingular: programType?.program_type_text?.common?.guide?.singular,\n guidePluralized:\n programType?.program_type_text?.common?.guide?.pluralized,\n traineeSingular:\n programType?.program_type_text?.common?.trainee?.singular,\n traineePluralized:\n programType?.program_type_text?.common?.trainee?.pluralized,\n },\n };\n };\n\n const getProgramsDataForEvent = (programs: Program[]) =>\n programs.map((program) => {\n const programType = program?.program_details?.program_type;\n const programSlug = program?.metadata.id.current;\n\n return {\n variation: 'individual',\n name: program?.metadata.program_name,\n description: program?.program_details?.program_description,\n slug: programSlug,\n landingPageURL: `${window.location.origin}/programs/${programSlug}`,\n guideRegistrationUrl: `${window.location.origin}/programs/${programSlug}/join/guide`,\n traineeRegistrationUrl: `${window.location.origin}/programs/${programSlug}/join/trainee`,\n type: {\n id: programType?.metadata?.id?.current,\n noun: programType?.program_type_text?.common?.noun,\n verb: programType?.program_type_text?.common?.verb,\n guideSingular:\n programType?.program_type_text?.common?.guide?.singular,\n guidePluralized:\n programType?.program_type_text?.common?.guide?.pluralized,\n traineeSingular:\n programType?.program_type_text?.common?.trainee?.singular,\n traineePluralized:\n programType?.program_type_text?.common?.trainee?.pluralized,\n },\n };\n });\n\n const getGoalDataForEvent = (goal: Partial) => {\n const goalCategoryName = goalCategories?.categories?.find(\n (goalCategory) =>\n goalCategory.goal_category_slug.current === goal.categorySlug,\n )?.goal_category_name;\n\n return {\n goalName: goal.objective,\n goalCategory: goalCategoryName,\n goalStatus: goal.status,\n goalUrl: `${window.location.origin}/goals/${goal.id}`,\n };\n };\n\n return {\n ...hook,\n getEvents: hook.getResults,\n reqEvents: hook.request,\n getErrorsEvents: hook.getErrors,\n hasResultsEvents: hook.hasResults,\n getMessageEvents: hook.getMessage,\n getCodeEvents: hook.getCode,\n getIsLoadingEvents: hook.isLoading,\n getIsErrorEvents: hook.isError,\n getIsSuccessEvents: hook.isSuccess,\n getProgramDataForEvent,\n getOrganizationDataForEvent,\n getGoalDataForEvent,\n getProgramsDataForEvent,\n };\n}\n","import { IGoal } from '@guider-global/shared-types';\nimport { IUseGuiderSWRParams, useGuiderSWR } from '@guider-global/swr';\n\nexport function useGoals({\n waitForAuthentication = true,\n options,\n}: Omit, 'url'>) {\n const { data, request, revalidate, error, isLoading, isValidating } =\n useGuiderSWR({\n waitForAuthentication,\n url: '/goals',\n options: {\n keepPreviousData: true,\n ...options,\n },\n });\n\n return {\n goals: data,\n reqGoals: request,\n revalidateGoals: revalidate,\n errorGoals: error,\n isLoadingGoals: isLoading,\n isValidatingGoals: isValidating,\n isErrorGoals: Boolean(error),\n };\n}\n","import { UserIntegration } from '@guider-global/shared-types';\nimport { IUseGuiderSWRParams, useGuiderSWR } from '@guider-global/swr';\n\nexport type UseUserIntegrationsOptions = Omit<\n IUseGuiderSWRParams,\n 'url'\n>;\n\nexport function useUserIntegrations({\n waitForAuthentication = true,\n options,\n}: UseUserIntegrationsOptions) {\n const { data, request, revalidate, error, isLoading, isValidating } =\n useGuiderSWR({\n waitForAuthentication,\n url: '/userIntegrations',\n options: {\n keepPreviousData: true,\n ...options,\n },\n });\n\n return {\n userIntegrations: data,\n reqUserIntegrations: request,\n userIntegrationsRevalidate: revalidate,\n errorsUserIntegrations: error,\n isLoadingUserIntegrations: isLoading,\n isErrorUserIntegrations: Boolean(error),\n isValidatingUserIntegrations: isValidating,\n };\n}\n","import {\n IUseRestReduxResult,\n useRestRedux,\n RestReduxHook,\n} from '@guider-global/redux-axios-hooks';\nimport { ISetting } from '@guider-global/shared-types';\nimport { RestRootState, RestRootStateTypes, RootState } from 'store';\n\nimport { useAuth } from '@guider-global/auth-hooks';\nimport settingsSlice from 'store/slices/settingsSlice';\nimport { useDatadogContext } from '@guider-global/datadog';\n\n/**\n *\n * @deprecated use useSettings from @guider-global/front-end-hooks\n */\nexport function useSettings({\n waitForAuthentication = true,\n ...args\n}: RestReduxHook) {\n const { accessToken, getAccessToken } = useAuth({\n waitForAuthentication,\n });\n const { sessionId } = useDatadogContext();\n const hook: IUseRestReduxResult = useRestRedux<\n ISetting,\n RestRootState,\n RestRootStateTypes,\n RootState\n >({\n ...args,\n resultDataName: 'settings',\n actions: settingsSlice.actions,\n waitForAuthentication,\n accessToken,\n onExpiredAccessToken: getAccessToken,\n traceId: sessionId ?? '',\n });\n\n const createSettings = (\n data: Pick,\n ) =>\n hook.request({\n method: 'POST',\n url: `/settings`,\n data,\n });\n\n const updateSettings = (\n settingsId: string,\n data: Pick,\n ) =>\n hook.request({\n method: 'PATCH',\n url: `/settings/${settingsId}`,\n data,\n });\n\n return {\n getSettings: hook.getResults,\n reqSettings: hook.request,\n createSettings,\n updateSettings,\n getErrorsSettings: hook.getErrors,\n hasResultsSettings: hook.hasResults,\n getMessageSettings: hook.getMessage,\n getCodeSettings: hook.getCode,\n getIsLoadingSettings: hook.isLoading,\n getIsErrorSettings: hook.isError,\n getIsSuccessSettings: hook.isSuccess,\n };\n}\n","import { datadogLogs } from '@guider-global/datadog';\nimport { setDocAttrsAndMetaTag } from '@guider-global/front-end-utils';\nimport { useSanityLocalization } from '@guider-global/sanity-hooks';\nimport { SanityBaseLanguage } from '@guider-global/shared-types';\nimport { SessionStorageKeys, useProfiles } from 'hooks';\nimport { useSettings } from 'hooks/useSettings';\nimport { useCallback, useEffect } from 'react';\nimport { RootState } from 'store';\nimport { useAppDispatch } from 'store/hooks';\nimport { showAppAlert } from 'store/slices/appSlice';\n\ninterface UseLocalizationResults {\n localeCode?: string;\n handleLanguageChange: (localeCode: string) => Promise;\n}\n\nexport const useLocalization = (\n organizationSlug: string,\n): UseLocalizationResults => {\n const dispatch = useAppDispatch();\n\n // Profile\n const { getProfiles } = useProfiles({ getSilently: false });\n const [profile] = getProfiles();\n\n // Setting\n const {\n getIsLoadingSettings,\n getSettings,\n updateSettings,\n createSettings,\n getIsErrorSettings,\n getErrorsSettings,\n } = useSettings({\n getSilently: true,\n });\n const isLoadingSettings = getIsLoadingSettings();\n const isErrorSettings = getIsErrorSettings();\n const [settings] = getSettings();\n\n const lastUsedLanguage = settings?.localeCode;\n\n const createOrUpdateSettings = useCallback(\n (localeCode: string) => {\n if (settings) {\n return updateSettings(settings.id, { localeCode });\n } else if (profile) {\n return createSettings({ profile: profile.id, localeCode });\n }\n },\n [settings, profile, createSettings, updateSettings],\n );\n\n const onLanguageChange = useCallback(\n async (\n localeCode: string,\n textDirection?: SanityBaseLanguage['text_direction'],\n ) => {\n await createOrUpdateSettings(localeCode);\n setDocAttrsAndMetaTag({ localeCode, textDirection });\n },\n [createOrUpdateSettings],\n );\n\n useEffect(() => {\n const handleShowAppError = (errorCode?: string, errorMessage?: string) => {\n console.error('error', { errorCode, errorMessage });\n datadogLogs.logger.error('useLocalization:', {\n errorCode,\n errorMessage,\n });\n dispatch(\n showAppAlert({\n severity: 'error',\n message: errorMessage,\n timeout: 10000,\n }),\n );\n };\n\n if (isErrorSettings) {\n const settingErrors = getErrorsSettings();\n const errorCodes = `${settingErrors.map((error) => error.code)}`;\n const errorMessages = `${settingErrors.map((error) => error.message)}`;\n handleShowAppError(errorCodes, errorMessages);\n }\n }, [dispatch, getErrorsSettings, isErrorSettings]);\n\n const { localeCode, handleLanguageChange } = useSanityLocalization(\n organizationSlug,\n SessionStorageKeys,\n onLanguageChange,\n isLoadingSettings,\n lastUsedLanguage,\n );\n\n return {\n localeCode,\n handleLanguageChange,\n };\n};\n","import { IMatch } from '@guider-global/shared-types';\nimport {\n IPaginationParams,\n IUseGuiderSWRParams,\n useGuiderSWR,\n} from '@guider-global/swr';\n\ninterface IUseMatchesRequestParams extends IPaginationParams {}\ninterface IUseMatchesParams\n extends Omit<\n IUseGuiderSWRParams, IUseMatchesRequestParams>,\n 'url'\n > {\n query?: string;\n}\nexport function useMatches({\n waitForAuthentication = true,\n params,\n query,\n options,\n}: IUseMatchesParams) {\n const { data, request, revalidate, error, isLoading, isValidating } =\n useGuiderSWR, IUseMatchesRequestParams>({\n waitForAuthentication,\n options: {\n keepPreviousData: true,\n ...options,\n },\n url: `/matches${query}`,\n params: {\n ...params,\n },\n });\n\n return {\n matches: data,\n reqMatches: request,\n revalidateMatches: revalidate,\n errorMatches: error,\n isLoadingMatches: isLoading,\n isValidatingMatches: isValidating,\n isErrorMatches: Boolean(error),\n };\n}\n","import {\n IUseRestReduxResult,\n useRestRedux,\n RestReduxHook,\n} from '@guider-global/redux-axios-hooks';\nimport { IMembership } from '@guider-global/shared-types';\nimport membershipsSlice from 'store/slices/membershipsSlice';\nimport { RestRootState, RestRootStateTypes, RootState } from 'store';\nimport { useAuth } from '@guider-global/auth-hooks';\nimport { useDatadogContext } from '@guider-global/datadog';\n\n/**\n * A custom hook to handle Memberships REST API requests connected the redux store\n * @deprecated use useMemberships from @guider-global/front-end-hooks\n * @param {RestReduxHook} args are the arguments to be passed to the useRestRedux hook\n * @returns ...hook - all return values via the `useRestRedux()` hook\n * @returns memberships - array of memberships in the RestRootState reducer\n * @returns reqMemberships - makes requests and stores results in the membershipsReducer\n * @returns getErrorsMemberships - gets API errors from the membershipsReducer\n */\nexport function useMemberships({\n waitForAuthentication = true,\n ...args\n}: RestReduxHook) {\n const { accessToken, getAccessToken } = useAuth({\n waitForAuthentication,\n });\n const { sessionId } = useDatadogContext();\n const hook: IUseRestReduxResult =\n useRestRedux({\n ...args,\n resultDataName: 'memberships',\n actions: membershipsSlice.actions,\n waitForAuthentication,\n accessToken,\n onExpiredAccessToken: getAccessToken,\n traceId: sessionId ?? '',\n });\n return {\n ...hook,\n memberships: hook.getResults,\n reqMemberships: hook.request,\n getErrorsMemberships: hook.getErrors,\n hasResultsMemberships: hook.hasResults,\n getMessageMemberships: hook.getMessage,\n getCodeMemberships: hook.getCode,\n isLoadingMemberships: hook.isLoading,\n isErrorMemberships: hook.isError,\n isSuccessMemberships: hook.isSuccess,\n };\n}\n","import { getISOStringWithoutMilliseconds } from '@guider-global/front-end-utils';\nimport mixpanel from 'mixpanel-browser';\nimport { useCallback, useEffect } from 'react';\nimport { useLocation } from 'react-router-dom';\n\ntype MixpanelEventCustomProps = Record;\n\ninterface UseMixpanelEventsProps {\n navigationEventName?: string;\n eventName?: string;\n properties?: MixpanelEventCustomProps;\n}\n\nexport function useMixpanelEvents(props = {} as UseMixpanelEventsProps) {\n const { navigationEventName, eventName } = props;\n const startTime = Date.now();\n const location = useLocation();\n\n const trackMixpanelEvent = useCallback(\n (eventName: string, properties?: MixpanelEventCustomProps) => {\n mixpanel.track(eventName, {\n ...properties,\n page_name: location.pathname,\n referrer: document.referrer,\n });\n\n console.log(`Event ${eventName} tracked on ${location.pathname}`);\n },\n [location],\n );\n\n const getClickProp = useCallback(\n () => ({ Click: getISOStringWithoutMilliseconds(Date.now()) }),\n [],\n );\n\n const getScreenTimeProp = useCallback(() => {\n const screenTimeSeconds = (Date.now() - startTime) / 1000;\n return { 'Time spent on screen': screenTimeSeconds };\n }, [startTime]);\n\n const getScreenTimeAndClickProps = useCallback(\n () => ({ ...getClickProp(), ...getScreenTimeProp() }),\n [getClickProp, getScreenTimeProp],\n );\n\n const trackClick = useCallback(\n (eventName: string, properties?: MixpanelEventCustomProps) => {\n trackMixpanelEvent(eventName, {\n ...getClickProp(),\n ...properties,\n });\n },\n [trackMixpanelEvent, getClickProp],\n );\n\n const trackScreenTime = useCallback(\n (eventName: string, properties?: MixpanelEventCustomProps) => {\n trackMixpanelEvent(eventName, {\n ...getScreenTimeProp(),\n ...properties,\n });\n },\n [trackMixpanelEvent, getScreenTimeProp],\n );\n\n const trackScreenTimeAndClick = useCallback(\n (eventName: string, properties?: MixpanelEventCustomProps) => {\n trackScreenTime(eventName, {\n ...getScreenTimeAndClickProps(),\n ...properties,\n });\n },\n [trackScreenTime, getScreenTimeAndClickProps],\n );\n\n const setUserProperties = (props: Record): void => {\n mixpanel.people.set(props);\n };\n\n const setOrganizationGroup = (organizationSlug: string): void => {\n mixpanel.set_group('Organization ID', organizationSlug);\n };\n\n useEffect(() => {\n if (eventName) {\n trackMixpanelEvent(eventName);\n }\n }, [eventName, trackMixpanelEvent]);\n\n useEffect(() => {\n if (navigationEventName) {\n trackMixpanelEvent(`Navigation - ${navigationEventName}`);\n }\n }, [navigationEventName, trackMixpanelEvent]);\n\n return {\n startTimeISOString: getISOStringWithoutMilliseconds(startTime),\n trackMixpanelEvent,\n trackClick,\n trackScreenTime,\n trackScreenTimeAndClick,\n setUserProperties,\n setOrganizationGroup,\n resetUserIdentity: mixpanel.reset,\n unionUserProperty: mixpanel.people.union,\n incrementUserPropetry: mixpanel.people.increment,\n };\n}\n","import { useTheme, useMediaQuery } from '@mui/material';\n\nexport function useMobileMediaQuery(): boolean {\n const theme = useTheme();\n const isMobile = useMediaQuery(theme.breakpoints.down('md'));\n return isMobile;\n}\n","import { INote } from '@guider-global/shared-types';\nimport { IUseGuiderSWRParams, useGuiderSWR } from '@guider-global/swr';\n\nexport function useNotes({\n waitForAuthentication = true,\n options,\n}: Omit, 'url'>) {\n const { data, request, revalidate, error, isLoading, isValidating } =\n useGuiderSWR({\n waitForAuthentication,\n url: '/notes',\n options: {\n keepPreviousData: true,\n ...options,\n },\n });\n return {\n notes: data,\n reqNotes: request,\n revalidateNotes: revalidate,\n errorNotes: error,\n isLoadingNotes: isLoading,\n isValidatingNotes: isValidating,\n isErrorNotes: Boolean(error),\n };\n}\n","import {\n IUseRestReduxResult,\n useRestRedux,\n RestReduxHook,\n} from '@guider-global/redux-axios-hooks';\nimport { IProfile } from '@guider-global/shared-types';\nimport profilesSlice from 'store/slices/profilesSlice';\nimport { RestRootState, RestRootStateTypes, RootState } from 'store';\n\nimport { useAuth } from '@guider-global/auth-hooks';\nimport { useDatadogContext } from '@guider-global/datadog';\n\n/**\n * @deprecated use useProfiles from @guider-global/front-end-hooks\n * A custom hook to handle Profiles REST API requests connected the redux store\n * @param {RestReduxHook} args are the arguments to be passed to the useRestRedux hook\n * @returns ...hook - all return values via the `useRestRedux()` hook\n * @returns profiles - array of profiles in the RestRootState reducer\n * @returns reqProfiles - makes requests and stores results in the profilesReducer\n * @returns getErrorsProfiles - gets API errors from the profilesReducer\n */\nexport function useProfiles({\n waitForAuthentication = true,\n ...args\n}: RestReduxHook) {\n const { accessToken, getAccessToken } = useAuth({\n waitForAuthentication,\n });\n const { sessionId } = useDatadogContext();\n const hook: IUseRestReduxResult = useRestRedux<\n IProfile,\n RestRootState,\n RestRootStateTypes,\n RootState\n >({\n ...args,\n resultDataName: 'profiles',\n actions: profilesSlice.actions,\n waitForAuthentication,\n accessToken,\n onExpiredAccessToken: getAccessToken,\n traceId: sessionId ?? '',\n });\n return {\n ...hook,\n getProfiles: hook.getResults,\n reqProfiles: hook.request,\n getErrorsProfiles: hook.getErrors,\n hasResultsProfiles: hook.hasResults,\n getMessageProfiles: hook.getMessage,\n getCodeProfiles: hook.getCode,\n isLoadingProfiles: hook.isLoading,\n isErrorProfiles: hook.isError,\n isSuccessProfiles: hook.isSuccess,\n };\n}\n","import {\n IUseRestReduxResult,\n useRestRedux,\n RestReduxHook,\n} from '@guider-global/redux-axios-hooks';\nimport { IRelationship } from '@guider-global/shared-types';\nimport relationshipsSlice from 'store/slices/relationshipsSlice';\nimport { RestRootState, RestRootStateTypes, RootState } from 'store';\n\nimport { useAuth } from '@guider-global/auth-hooks';\nimport { useDatadogContext } from '@guider-global/datadog';\n\n/**\n * A custom hook to handle Relationships REST API requests connected the redux store\n * @deprecated use useRelationships from @guider-global/front-end-hooks\n * @param {RestReduxHook} args are the arguments to be passed to the useRestRedux hook\n * @returns ...hook - all return values via the `useRestRedux()` hook\n * @returns relationships - array of relationships in the RestRootState reducer\n * @returns reqRelationships - makes requests and stores results in the relationshipsReducer\n * @returns getErrorsRelationships - gets API errors from the relationshipsReducer\n */\nexport function useRelationships({\n waitForAuthentication = true,\n ...args\n}: RestReduxHook) {\n const { accessToken, getAccessToken } = useAuth({\n waitForAuthentication,\n });\n const { sessionId } = useDatadogContext();\n const hook: IUseRestReduxResult =\n useRestRedux({\n ...args,\n resultDataName: 'relationships',\n actions: relationshipsSlice.actions,\n waitForAuthentication,\n accessToken,\n onExpiredAccessToken: getAccessToken,\n traceId: sessionId ?? '',\n });\n return {\n ...hook,\n relationships: hook.getResults,\n reqRelationships: hook.request,\n getErrorsRelationships: hook.getErrors,\n hasResultsRelationships: hook.hasResults,\n getMessageRelationships: hook.getMessage,\n getCodeRelationships: hook.getCode,\n isLoadingRelationships: hook.isLoading,\n isErrorRelationships: hook.isError,\n isSuccessRelationships: hook.isSuccess,\n };\n}\n","import { useSessionStorageResults } from '@guider-global/front-end-utils';\nimport { useSessionStorage } from '@guider-global/front-end-utils';\nimport { SharedSessionStorageKeys } from '@guider-global/shared-types';\n\nexport enum FrontEndSessionStorageKeys {\n REGISTER_REDIRECT = 'post-register-redirect',\n}\n\nexport const SessionStorageKeys = {\n ...FrontEndSessionStorageKeys,\n ...SharedSessionStorageKeys,\n} as const;\n\nexport function useSessionStorageTyped

(\n key: (typeof SessionStorageKeys)[keyof typeof SessionStorageKeys],\n defaultValue?: P,\n): useSessionStorageResults

{\n return useSessionStorage(key, defaultValue);\n}\n","import { ISession } from '@guider-global/shared-types';\nimport { IUseGuiderSWRParams, useGuiderSWR } from '@guider-global/swr';\n\ninterface UseSessionParams extends Omit, 'url'> {}\n\nexport function useSessions({\n waitForAuthentication = true,\n params,\n options,\n}: UseSessionParams) {\n const { data, request, revalidate, meta, error, isLoading, isValidating } =\n useGuiderSWR({\n waitForAuthentication,\n url: '/sessions',\n params,\n options,\n });\n\n return {\n sessions: data,\n sessionsMeta: meta,\n reqSessions: request,\n sessionsRevalidate: revalidate,\n errorsSessions: error,\n isLoadingSessions: isLoading,\n isErrorSessions: Boolean(error),\n isValidatingSessions: isValidating,\n };\n}\n","import { ISkill } from '@guider-global/shared-types';\nimport { IUseGuiderSWRParams, useGuiderSWR } from '@guider-global/swr';\n\nexport type UseSkillsOptions = Omit, 'url'>;\n\nexport function useSkills({\n waitForAuthentication = true,\n options,\n}: UseSkillsOptions) {\n const { data, request, revalidate, error, isLoading, isValidating } =\n useGuiderSWR({\n waitForAuthentication,\n url: '/skills',\n options: {\n keepPreviousData: true,\n ...options,\n },\n });\n\n return {\n skills: data,\n reqSkills: request,\n skillsRevalidate: revalidate,\n errorsSkills: error,\n isLoadingSkills: isLoading,\n isErrorSkills: Boolean(error),\n isValidatingSkills: isValidating,\n };\n}\n","import { TSurvey } from '@guider-global/shared-types';\nimport {\n IPaginationParams,\n IUseGuiderSWRParams,\n useGuiderSWR,\n} from '@guider-global/swr';\n\ninterface CreateSurveysData\n extends Omit {}\n\ninterface IUseSurveysRequestParams extends IPaginationParams {}\ninterface IUseSurveysParams\n extends Omit<\n IUseGuiderSWRParams, IUseSurveysRequestParams>,\n 'url'\n > {}\nexport function useSurveys({\n waitForAuthentication = true,\n params,\n\n options,\n}: IUseSurveysParams) {\n const { data, request, revalidate, error, isLoading, isValidating } =\n useGuiderSWR, IUseSurveysRequestParams>({\n waitForAuthentication,\n options: {\n keepPreviousData: true,\n ...options,\n },\n url: `/surveys`,\n params: {\n ...params,\n },\n });\n const createSurveys = (data: CreateSurveysData) =>\n request({\n method: 'POST',\n url: '/surveys',\n data,\n });\n return {\n surveys: data,\n reqSurveys: request,\n createSurveys,\n revalidateSurveys: revalidate,\n errorSurveys: error,\n isLoadingSurveys: isLoading,\n isValidatingSurveys: isValidating,\n isErrorSurveys: Boolean(error),\n };\n}\n","import { useAuth } from '@guider-global/auth-hooks';\nimport { useDatadogContext } from '@guider-global/datadog';\nimport axios from 'axios';\nimport { useCallback, useEffect, useState } from 'react';\n\nconst { REACT_APP_BASE_API_URL } = process.env;\n\nexport function useUserPictures(waitForAuthentication = true) {\n const [picture, setPicture] = useState(undefined);\n const [error, setError] = useState(undefined);\n const [loading, setLoading] = useState(true);\n\n // Auth\n const { accessToken } = useAuth({\n waitForAuthentication,\n });\n const { sessionId } = useDatadogContext();\n\n const getPicture = useCallback(async () => {\n setLoading(true);\n try {\n const { data } = await axios.get(\n `${REACT_APP_BASE_API_URL}/userPictures`,\n {\n headers: {\n 'Content-Type': 'image/jpg',\n Authorization: `Bearer ${accessToken}`,\n },\n responseType: 'blob',\n params: { traceId: sessionId },\n },\n );\n if (data.size === 0) return;\n setPicture(data);\n } catch (error) {\n setError(error);\n } finally {\n setLoading(false);\n }\n }, [accessToken, sessionId]);\n\n useEffect(() => {\n if (!accessToken) return;\n\n getPicture();\n }, [accessToken, getPicture]);\n\n return { picture, loading, error };\n}\n","import {\n IUseRestReduxResult,\n useRestRedux,\n RestReduxHook,\n} from '@guider-global/redux-axios-hooks';\nimport { IUser } from '@guider-global/shared-types';\nimport usersSlice from 'store/slices/usersSlice';\nimport { RestRootState, RestRootStateTypes, RootState } from 'store';\n\nimport { useAuth } from '@guider-global/auth-hooks';\nimport { useDatadogContext } from '@guider-global/datadog';\n\n/**\n * A custom hook to handle User REST API requests connected the redux store\n *@deprecated use useUsers from @guider-global/front-end-hooks\n * @param {RestReduxHook} args are the arguments to be passed to the useRestRedux hook\n * @returns ...hook - all return values via the `useRestRedux()` hook\n * @returns users - array of users in the RestRootState reducer\n * @returns reqUsers - makes requests and stores results in the usersReducer\n * @returns getErrorsUsers - gets API errors from the usersReducer\n */\nexport function useUsers({\n waitForAuthentication = true,\n ...args\n}: RestReduxHook) {\n const { accessToken, getAccessToken } = useAuth({\n waitForAuthentication,\n });\n const { sessionId } = useDatadogContext();\n const hook: IUseRestReduxResult = useRestRedux<\n IUser,\n RestRootState,\n RestRootStateTypes,\n RootState\n >({\n ...args,\n resultDataName: 'users',\n actions: usersSlice.actions,\n waitForAuthentication,\n accessToken,\n onExpiredAccessToken: getAccessToken,\n traceId: sessionId ?? '',\n });\n\n return {\n ...hook,\n users: hook.getResults,\n reqUsers: hook.request,\n getErrorsUsers: hook.getErrors,\n hasResultsUsers: hook.hasResults,\n getMessageUsers: hook.getMessage,\n getCodeUsers: hook.getCode,\n isLoadingUsers: hook.isLoading,\n isErrorUsers: hook.isError,\n isSuccessUsers: hook.isSuccess,\n };\n}\n","import { useState, useEffect } from 'react';\n\nconst getWindowDimensions = () => {\n const { innerWidth: width, innerHeight: height } = window;\n return {\n width,\n height,\n };\n};\n\nexport const useWindowDimensions = () => {\n const [windowDimensions, setWindowDimensions] = useState(\n getWindowDimensions(),\n );\n\n useEffect(() => {\n const handleResize = () => {\n setWindowDimensions(getWindowDimensions());\n };\n\n window.addEventListener('resize', handleResize);\n return () => window.removeEventListener('resize', handleResize);\n }, []);\n\n return windowDimensions;\n};\n","import { usePicture } from '@guider-global/azure-storage-hooks';\nimport { useProfiles, useUsers } from 'hooks';\n\nexport const useProfilePicture = () => {\n // Users\n const { users: getUsers, hasResultsUsers } = useUsers({\n getSilently: false,\n });\n const usersFound = hasResultsUsers();\n const users = getUsers();\n const user = users[0];\n const oauthPicture = usersFound ? user.picture : undefined;\n\n const { loading, getImage } = usePicture({});\n\n // Profiles\n const {\n getProfiles,\n hasResultsProfiles,\n isLoading: getLoading,\n } = useProfiles({ getSilently: false });\n const profilesFound = hasResultsProfiles();\n const isProfileLoading = getLoading();\n const [profile] = getProfiles();\n const profilePicture = profile?.picture;\n const firstLetter = profile?.firstName.charAt(0).toUpperCase();\n const lastLetter = profile?.lastName.charAt(0).toUpperCase();\n\n const isLoading =\n !usersFound || !profilesFound || isProfileLoading || loading;\n\n const picture = !profilePicture ? oauthPicture : getImage(profilePicture);\n\n const initials = `${firstLetter}${lastLetter}`;\n\n return {\n initials,\n loading: isLoading,\n picture,\n };\n};\n","import { useEffect, useState } from 'react';\nimport { useAuth } from '@guider-global/auth-hooks';\nimport { useAxios } from '@guider-global/redux-axios-hooks';\nimport { datadogLogs, useDatadogContext } from '@guider-global/datadog';\n\ntype Unavailabilities = Record;\ninterface UnavailabilitiesResult {\n data: Unavailabilities;\n}\n\ninterface UseUnavailabilitiesProps {\n organizationSlug: string | undefined;\n userId: string | undefined;\n date: string | undefined;\n timezone: string | undefined;\n}\n\nexport function useUnavailabilities({\n organizationSlug,\n userId,\n date,\n timezone,\n}: UseUnavailabilitiesProps) {\n const [isLoadingUnavailabilities, setIsLoadingUnavailabilities] =\n useState(false);\n const [unavailabilities, setUnavailabilities] = useState(\n {},\n );\n\n const { accessToken, getAccessToken } = useAuth({});\n const { requestCallback } = useAxios({\n waitForAuthentication: true,\n accessToken,\n onExpiredAccessToken: getAccessToken,\n });\n const { sessionId } = useDatadogContext();\n\n useEffect(() => {\n if (!organizationSlug || !userId || !date || !timezone) return;\n\n const reqUnavailabilities = async () => {\n try {\n setIsLoadingUnavailabilities(true);\n const axiosResult = await requestCallback({\n url: '/unavailabilities',\n params: {\n organizationSlug: organizationSlug,\n userId: userId,\n date: date,\n timeZone: timezone,\n traceId: sessionId,\n },\n });\n const { data: unavailabilities } =\n axiosResult.data as unknown as UnavailabilitiesResult;\n setUnavailabilities(unavailabilities);\n } catch (error) {\n datadogLogs.logger.error('useUnavailabilities:reqUnavailabilities', {\n error,\n });\n console.error(error);\n } finally {\n setIsLoadingUnavailabilities(false);\n }\n };\n\n reqUnavailabilities();\n }, [organizationSlug, userId, date, timezone, requestCallback, sessionId]);\n\n return {\n isLoadingUnavailabilities,\n unavailabilities,\n };\n}\n","import { getSubDomain } from '@guider-global/front-end-utils';\nimport {\n ILeaderboardPosition,\n ILeaderboardPositionQuery,\n} from '@guider-global/shared-types';\nimport {\n IPaginationParams,\n IUseGuiderSWRParams,\n useGuiderSWR,\n} from '@guider-global/swr';\n\ninterface IUseLeaderboardPositionsRequestParams\n extends IPaginationParams,\n Omit {\n profileId?: string;\n}\ninterface UseLeaderboardPositionsParams\n extends Omit<\n IUseGuiderSWRParams<\n ILeaderboardPosition,\n Partial,\n IUseLeaderboardPositionsRequestParams\n >,\n 'url'\n > {}\n\n/**\n * @returns returns leaderboard positions\n */\nexport function useLeaderboardPositions({\n waitForAuthentication = true,\n params,\n options,\n}: UseLeaderboardPositionsParams) {\n const organizationSlug = getSubDomain();\n const { profileId, ...rest } = params ?? {};\n const { data, meta, request, revalidate, error, isLoading, isValidating } =\n useGuiderSWR({\n waitForAuthentication,\n url: profileId\n ? `/leaderboardPositions/${profileId}`\n : `/leaderboardPositions`,\n params: {\n ...{ organizationSlug },\n ...rest,\n },\n options: {\n keepPreviousData: true,\n ...options,\n },\n });\n\n return {\n leaderboardPositions: data,\n leaderboardMeta: meta,\n reqLeaderboardPositions: request,\n LeaderboardPositionsRevalidate: revalidate,\n errorsLeaderboardPositions: error,\n isLoadingLeaderboardPositions: isLoading,\n isErrorLeaderboardPositions: Boolean(error),\n isValidatingLeaderboardPositions: isValidating,\n };\n}\n","import { useLocation } from 'react-router-dom';\nimport {\n EProgramVariation,\n IProfile,\n IRelationship,\n IUser,\n} from '@guider-global/shared-types';\nimport { useOrganizationPrograms } from '@guider-global/sanity-hooks';\nimport { isSurveyFieldForGuide, isSurveyFieldForTrainee } from 'functions';\nimport { getSubDomain } from '@guider-global/front-end-utils';\n\nexport interface UseSurveyResourcesProps {\n surveyType: 'post_session_survey' | 'post_relationship_survey';\n relationship: IRelationship | undefined;\n user: IUser | undefined;\n}\n\nexport function useSurveyResources({\n surveyType,\n relationship,\n user,\n}: UseSurveyResourcesProps) {\n const { pathname } = useLocation();\n const isOnGuiderVideoPage = pathname.startsWith('/video');\n const organizationSlug = getSubDomain();\n const { programs } = useOrganizationPrograms({ organizationSlug });\n\n if (!relationship || !user) {\n return {};\n }\n\n const program = programs.find(\n (program) => program.metadata.id.current === relationship.programSlug,\n );\n const programName = program?.metadata.program_name;\n const surveys = program?.surveys;\n const survey = surveys?.[surveyType];\n const guideSingular =\n program?.program_details?.program_type?.program_type_text?.common?.guide\n ?.singular ?? 'Guide';\n const traineeSingular =\n program?.program_details?.program_type?.program_type_text?.common?.trainee\n ?.singular ?? 'Trainee';\n\n const isGroupProgram =\n relationship.programVariationTypeSlug === EProgramVariation.Group;\n\n const [guideProfile] =\n (relationship?.guideProfiles as Partial[]) ?? [];\n const [traineeProfile] =\n (relationship?.traineeProfiles as Partial[]) ?? [];\n const isGuide = guideProfile?.userId === user?.id;\n const guideName = guideProfile?.displayName;\n const traineeName = traineeProfile?.displayName;\n\n const name = isGuide ? traineeName : guideName;\n const role = isGuide ? traineeSingular : guideSingular;\n const title = survey?.title ?? '';\n const description = survey?.description ?? '';\n const heading = (isGroupProgram ? relationship.title : name) ?? '';\n const subheading =\n (isGroupProgram ? programName : `Your ${role} • ${programName}`) ?? '';\n\n const sessions = relationship?.sessions ?? [];\n const sessionCount = sessions.length;\n const surveyFields = survey?.fields ?? [];\n const guideFields = surveyFields.filter((surveyField) =>\n isSurveyFieldForGuide(surveyField, sessionCount),\n );\n const traineeFields = surveyFields.filter((surveyField) =>\n isSurveyFieldForTrainee(surveyField, sessionCount),\n );\n\n return {\n title,\n description,\n heading,\n subheading,\n profile: isGuide ? guideProfile : traineeProfile,\n surveyFields: isGuide ? guideFields : traineeFields,\n isGuide,\n isGroupProgram,\n isSurveyEnabled: survey?.enabled,\n isOnGuiderVideoPage,\n };\n}\n","import { IVideoParticipant } from '@guider-global/shared-types';\nimport { IUseGuiderSWRParams, useGuiderSWR } from '@guider-global/swr';\n\nexport function useVideoParticipants({\n waitForAuthentication = true,\n options,\n}: Omit, 'url'>) {\n const { data, request, revalidate, error, isLoading, isValidating } =\n useGuiderSWR({\n waitForAuthentication,\n url: '/videoParticipants',\n options: {\n ...options,\n },\n });\n\n return {\n videoParticipants: data,\n reqVideoParticipants: request,\n revalidateVideoParticipants: revalidate,\n errorVideoParticipants: error,\n isLoadingVideoParticipants: isLoading,\n isValidatingVideoParticipants: isValidating,\n isErrorVideoParticipants: Boolean(error),\n };\n}\n","import { IReview } from '@guider-global/shared-types';\nimport { IUseGuiderSWRParams, useGuiderSWR } from '@guider-global/swr';\n\ninterface UseReviewParams extends Omit, 'url'> {}\n\nexport function useReviews({\n waitForAuthentication = true,\n params,\n}: UseReviewParams) {\n const { data, request, revalidate, meta, error, isLoading, isValidating } =\n useGuiderSWR({\n waitForAuthentication,\n url: '/reviews',\n params,\n });\n\n return {\n reviews: data,\n reviewsMeta: meta,\n reqReviews: request,\n reviewsRevalidate: revalidate,\n errorsReviews: error,\n isLoadingReviews: isLoading,\n isErrorReviews: Boolean(error),\n isValidatingReviews: isValidating,\n };\n}\n","import { IChatParticipant } from '@guider-global/shared-types';\nimport { IUseGuiderSWRParams, useGuiderSWR } from '@guider-global/swr';\n\nexport function useChatParticipants({\n waitForAuthentication = true,\n options,\n}: Omit, 'url'>) {\n const { data, request, revalidate, error, isLoading, isValidating } =\n useGuiderSWR({\n waitForAuthentication,\n url: '/chatParticipants',\n options: {\n keepPreviousData: true,\n ...options,\n },\n });\n\n return {\n chatParticipants: data,\n reqChatParticipants: request,\n revalidateChatParticipants: revalidate,\n errorChatParticipants: error,\n isLoadingChatParticipants: isLoading,\n isValidatingChatParticipants: isValidating,\n isErrorChatParticipants: Boolean(error),\n };\n}\n","import { IMatchV2 } from '@guider-global/shared-types';\nimport {\n IPaginationParams,\n IUseGuiderSWRParams,\n useGuiderSWR,\n} from '@guider-global/swr';\n\ninterface IUseMatchesV2RequestParams extends IPaginationParams {}\ninterface IUseMatchesV2Params\n extends Omit<\n IUseGuiderSWRParams<\n IMatchV2,\n Partial,\n IUseMatchesV2RequestParams\n >,\n 'url'\n > {\n query?: string;\n}\nexport function useMatchesV2({\n waitForAuthentication = true,\n params,\n query,\n options,\n}: IUseMatchesV2Params) {\n const { data, request, revalidate, error, isLoading, isValidating } =\n useGuiderSWR, IUseMatchesV2RequestParams>({\n waitForAuthentication,\n options: {\n keepPreviousData: true,\n ...options,\n },\n url: `/matchesV2${query}`,\n params: {\n ...params,\n },\n });\n\n return {\n matchesV2: data,\n reqMatchesV2: request,\n revalidateMatchesV2: revalidate,\n errorMatchesV2: error,\n isLoadingMatchesV2: isLoading,\n isValidatingMatchesV2: isValidating,\n isErrorMatchesV2: Boolean(error),\n };\n}\n","import {\n IUseRestReduxResult,\n useRestRedux,\n RestReduxHook,\n} from '@guider-global/redux-axios-hooks';\nimport { INotification } from '@guider-global/shared-types';\nimport notificationsSlice from 'store/slices/notificationsSlice';\nimport { RestRootState, RestRootStateTypes, RootState } from 'store';\nimport { useAuth } from '@guider-global/auth-hooks';\nimport { useDatadogContext } from '@guider-global/datadog';\n\n/**\n * A custom hook to handle Notifications REST API requests connected the redux store\n * @param {RestReduxHook} args are the arguments to be passed to the useRestRedux hook\n * @returns ...hook - all return values via the `useRestRedux()` hook\n * @returns notifications - array of notifications in the RestRootState reducer\n * @returns reqNotifications - makes requests and stores results in the notificationsReducer\n * @returns getErrorsNotifications - gets API errors from the notificationsReducer\n */\nexport function useNotifications({\n ...args\n}: RestReduxHook) {\n const { accessToken, getAccessToken } = useAuth({\n waitForAuthentication: true,\n });\n const { sessionId } = useDatadogContext();\n const hook: IUseRestReduxResult =\n useRestRedux({\n ...args,\n resultDataName: 'notifications',\n actions: notificationsSlice.actions,\n waitForAuthentication: true,\n accessToken,\n onExpiredAccessToken: getAccessToken,\n traceId: sessionId ?? '',\n });\n\n function reqLatestNotifications() {\n return hook.request({ url: '/notifications?latest=true' });\n }\n\n return {\n ...hook,\n getNotifications: hook.getResults,\n reqNotifications: hook.request,\n reqLatestNotifications,\n getErrorsNotifications: hook.getErrors,\n hasResultsNotifications: hook.hasResults,\n getMessageNotifications: hook.getMessage,\n getCodeNotifications: hook.getCode,\n getIsLoadingNotifications: hook.isLoading,\n getIsErrorNotifications: hook.isError,\n getIsSuccessNotifications: hook.isSuccess,\n };\n}\n","import {\n IUseRestReduxResult,\n useRestRedux,\n RestReduxHook,\n} from '@guider-global/redux-axios-hooks';\nimport { INotification } from '@guider-global/shared-types';\nimport { RestRootState, RestRootStateTypes, RootState } from 'store';\nimport { useAuth } from '@guider-global/auth-hooks';\nimport modalNotificationsSlice from 'store/slices/modalNotificationsSlice';\nimport { useDatadogContext } from '@guider-global/datadog';\n\n/**\n * A custom hook to handle Notifications REST API requests connected the redux store\n * @param {RestReduxHook} args are the arguments to be passed to the useRestRedux hook\n * @returns ...hook - all return values via the `useRestRedux()` hook\n * @returns notifications - array of notifications in the RestRootState reducer\n * @returns reqNotifications - makes requests and stores results in the notificationsReducer\n * @returns getErrorsNotifications - gets API errors from the notificationsReducer\n */\nexport function useModalNotifications({\n ...args\n}: RestReduxHook) {\n const { accessToken, getAccessToken } = useAuth({\n waitForAuthentication: true,\n });\n const { sessionId } = useDatadogContext();\n const hook: IUseRestReduxResult =\n useRestRedux({\n ...args,\n resultDataName: 'modalNotifications',\n getSilentlyUrl: '/notifications',\n actions: modalNotificationsSlice.actions,\n waitForAuthentication: true,\n accessToken,\n onExpiredAccessToken: getAccessToken,\n traceId: sessionId ?? '',\n });\n return {\n ...hook,\n getModalNotifications: hook.getResults,\n reqModalNotifications: hook.request,\n getErrorsModalNotifications: hook.getErrors,\n hasResultsModalNotifications: hook.hasResults,\n getMessageModalNotifications: hook.getMessage,\n getCodeModalNotifications: hook.getCode,\n getIsLoadingModalNotifications: hook.isLoading,\n getIsErrorModalNotifications: hook.isError,\n getIsSuccessModalNotifications: hook.isSuccess,\n };\n}\n","import {\n IUseRestReduxResult,\n useRestRedux,\n RestReduxHook,\n} from '@guider-global/redux-axios-hooks';\nimport { TOTPSurvey } from '@guider-global/shared-types';\n\nimport { RestRootState, RestRootStateTypes, RootState } from 'store';\n\nimport { useDatadogContext } from '@guider-global/datadog';\nimport otpSurveysSlice from 'store/slices/otpSurveysSlice';\n\n/**\n * A custom hook to handle OTPSurveys REST API requests connected the redux store\n * @param {RestReduxHook} args are the arguments to be passed to the useRestRedux hook\n * @returns ...hook - all return values via the `useRestRedux()` hook\n * @returns otpSurveys - array of otpSurveys in the RestRootState reducer\n * @returns reqOtpSurveys - makes requests and stores results in the otpSurveysReducer\n */\nexport function useOTPSurveys({\n ...args\n}: RestReduxHook) {\n const { sessionId } = useDatadogContext();\n const hook: IUseRestReduxResult =\n useRestRedux({\n ...args,\n resultDataName: 'otpSurveys',\n actions: otpSurveysSlice.actions,\n traceId: sessionId ?? '',\n });\n return {\n ...hook,\n otpSurveys: hook.getResults,\n reqOTPSurveys: hook.request,\n getErrorsOTPSurveys: hook.getErrors,\n hasResultsOTPSurveys: hook.hasResults,\n getMessageOTPSurveys: hook.getMessage,\n getCodeOTPSurveys: hook.getCode,\n isOTPSurveys: hook.isLoading,\n isErrorOTPSurveys: hook.isError,\n isSuccessOTPSurveys: hook.isSuccess,\n };\n}\n","/* eslint-disable camelcase */\nimport { useEffect, useState } from 'react';\nimport axios, { AxiosResponse } from 'axios';\nimport { getSubDomain } from '@guider-global/front-end-utils';\nimport { useLocalization } from 'hooks';\n\nconst { REACT_APP_BASE_API_URL, REACT_APP_AUTH0_CLIENT_ID } = process.env;\n\nexport interface InviteResponse {\n status: string;\n code: number;\n data: { invitationUrl: string };\n message: string;\n}\nexport interface HandleGetInviteParams {\n organizationId: string;\n organizationName: string;\n email: string;\n}\n\nexport interface UseRegisterInviteResults {\n error?: string;\n inviteUrl?: string;\n loading: boolean;\n handleGetInvite: (params: HandleGetInviteParams) => void;\n}\n\nexport const useRegisterInvite = (): UseRegisterInviteResults => {\n const organizationSlug = getSubDomain();\n const { localeCode } = useLocalization(organizationSlug);\n\n // Local State\n const [error, setError] = useState();\n const [inviteUrl, setInviteUrl] = useState();\n const [loading, setLoading] = useState(false);\n const [getInvite, setGetInvite] = useState();\n\n const handleGetInvite = ({\n organizationId,\n organizationName,\n email,\n }: HandleGetInviteParams) =>\n setGetInvite({ organizationId, organizationName, email });\n\n useEffect(() => {\n if (!getInvite) return;\n const createInvite = async ({\n organizationId,\n organizationName,\n email,\n }: HandleGetInviteParams) => {\n setLoading(true);\n try {\n const request: AxiosResponse =\n await axios.request({\n method: 'POST',\n url: `${REACT_APP_BASE_API_URL}/register/invite?id=${organizationId}`,\n data: {\n inviter: {\n name: organizationName,\n },\n invitee: {\n email,\n },\n client_id: REACT_APP_AUTH0_CLIENT_ID,\n user_metadata: {\n localeCode,\n },\n },\n });\n if (request.status === 204) {\n return;\n }\n\n if (!request.data) {\n setError('no data returned');\n return;\n }\n const inviteUrl = request.data.data.invitationUrl;\n if (!inviteUrl) {\n setError('no invitation returned');\n return;\n }\n setInviteUrl(inviteUrl);\n } catch (err: unknown) {\n setError(`Error getting invite: ${err}`);\n } finally {\n setLoading(false);\n }\n };\n\n createInvite(getInvite);\n setGetInvite(undefined);\n }, [getInvite, localeCode]);\n\n return {\n error,\n inviteUrl,\n loading,\n handleGetInvite,\n };\n};\n","import {\n UseTrackEventParams,\n useGenericTrackEvent,\n} from '@guider-global/customer-io-hooks';\nimport { useEvents } from 'hooks';\n\nexport function useTrackEvent(\n params: UseTrackEventParams,\n waitForAuthentication = true,\n) {\n const { reqEvents, isLoading } = useEvents({ waitForAuthentication });\n\n const controller = useGenericTrackEvent({\n isLoading: isLoading(),\n reqEvents,\n ...params,\n });\n\n return controller;\n}\n","import { ITokenVideo } from '@guider-global/shared-types';\nimport {\n IPaginationParams,\n IUseGuiderSWRParams,\n useGuiderSWR,\n} from '@guider-global/swr';\n\ninterface IUseVideoTokenRequestParams extends IPaginationParams {}\ninterface IUseVideoTokenParams\n extends Omit<\n IUseGuiderSWRParams<\n ITokenVideo,\n Partial,\n IUseVideoTokenRequestParams\n >,\n 'url'\n > {}\nexport function useVideoTokens({\n waitForAuthentication = true,\n params,\n\n options,\n}: IUseVideoTokenParams) {\n const { data, request, revalidate, error, isLoading, isValidating } =\n useGuiderSWR<\n ITokenVideo,\n Partial,\n IUseVideoTokenRequestParams\n >({\n waitForAuthentication,\n options: {\n keepPreviousData: true,\n ...options,\n },\n url: `/video/token`,\n params: {\n ...params,\n },\n });\n\n return {\n videoTokens: data,\n reqVideoTokens: request,\n revalidateVideoTokens: revalidate,\n errorVideoTokens: error,\n isLoadingVideoTokens: isLoading,\n isValidatingVideoTokens: isValidating,\n isErrorVideoTokens: Boolean(error),\n };\n}\n","import { IVideo } from '@guider-global/shared-types';\nimport {\n IUseGuiderSWRParams,\n useGuiderSWR,\n IPaginationParams,\n} from '@guider-global/swr';\n\ninterface IUseVideoRequestParams extends IPaginationParams {}\ninterface IUseVideoParams\n extends Omit<\n IUseGuiderSWRParams, IUseVideoRequestParams>,\n 'url'\n > {\n sessionId: string | undefined;\n}\nexport function useVideos({\n waitForAuthentication = true,\n options,\n sessionId,\n params,\n}: IUseVideoParams) {\n const { data, request, revalidate, error, isLoading, isValidating } =\n useGuiderSWR, IUseVideoRequestParams>({\n waitForAuthentication,\n url: `/video/${sessionId}`,\n params: {\n ...params,\n },\n options: {\n ...options,\n },\n });\n\n return {\n video: data,\n\n reqVideo: request,\n revalidateVideo: revalidate,\n errorVideo: error,\n isLoadingVideo: isLoading,\n isValidatingVideo: isValidating,\n isErrorVideo: Boolean(error),\n };\n}\n","import React from 'react';\nimport { createRoot } from 'react-dom/client';\nimport './index.css';\nimport { App, ErrorComponent } from 'components';\nimport { store } from './store';\nimport { Provider } from 'react-redux';\nimport { ErrorBoundary } from '@guider-global/ui';\nimport { datadogLogs } from '@guider-global/datadog';\nimport { MaintenancePage } from 'pages';\n\nconst {\n REACT_APP_DATADOG_CLIENT_TOKEN,\n REACT_APP_DATADOG_SITE,\n REACT_APP_DATADOG_LOGGING_ENABLED,\n REACT_APP_DOWN_FOR_MAINTENANCE,\n} = process.env;\n\nfunction logToDatadog(error: unknown, errorInfo: unknown) {\n if (\n REACT_APP_DATADOG_CLIENT_TOKEN &&\n REACT_APP_DATADOG_SITE &&\n REACT_APP_DATADOG_LOGGING_ENABLED\n ) {\n datadogLogs.logger.error('Error Boundary thrown', {\n error,\n errorInfo,\n });\n }\n}\n\nconst isDownForMaintenance = REACT_APP_DOWN_FOR_MAINTENANCE === 'true';\n\nconst container = document.getElementById('root');\n\nconst root = createRoot(container!);\n\nif (isDownForMaintenance) {\n root.render(\n \n \n ,\n );\n} else {\n root.render(\n \n \n ErrorComponent({ message, code })}\n >\n \n \n \n ,\n );\n}\n"],"names":["REACT_APP_AUTH0_AUDIENCE","REACT_APP_BASE_API_URL","axios","baseURL","DEFAULT_START_TIME","DEFAULT_END_TIME","useAvailabilities","waitForAuthentication","options","params","query","data","request","revalidate","error","isLoading","isValidating","useGuiderSWR","url","keepPreviousData","organizationSlug","getSubDomain","organization","useOrganization","localeCode","orgStartTime","availabilities","start_time","orgEndTime","end_time","defaultAvailability","useMemo","DaysOfWeek","acc","day","isNotWeekend","startTime","endTime","createAvailabilities","method","console","updateAvailabilities","availabilityId","reqAvailabilities","availabilitiesRevalidate","errorsAvailabilities","isLoadingAvailabilities","isErrorAvailabilities","Boolean","isValidatingAvailabilities","useChatToken","profileId","accessToken","getAccessToken","useAuth","sessionId","useDatadogContext","loading","setLoading","useState","token","setToken","setError","requestCallback","useAxios","onExpiredAccessToken","useEffect","axiosResult","traceId","axiosData","status","message","errors","code","length","log","errorMessage","flatMap","join","chatError","Error","name","err","unknownErrorMessage","unknownErrorCode","datadogLogs","getChatToken","useCustomFields","args","hook","useRestRedux","resultDataName","actions","customFieldsSlice","customFields","getResults","reqCustomFields","getErrorsCustomFields","getErrors","hasResultsCustomFields","hasResults","getMessageCustomFields","getMessage","getCodeCustomFields","getCode","isLoadingCustomFields","isErrorCustomFields","isError","isSuccessCustomFields","isSuccess","useEvents","programSlug","getProgram","useSanityOrganizationPrograms","program","getOrganization","useSanityOrganization","getSilently","organizationName","basic_info","goalCategories","goal_categories","eventsSlice","getEvents","reqEvents","getErrorsEvents","hasResultsEvents","getMessageEvents","getCodeEvents","getIsLoadingEvents","getIsErrorEvents","getIsSuccessEvents","getProgramDataForEvent","_a","_b","programType","program_details","program_type","metadata","id","current","variation","program_name","description","program_description","slug","landingPageURL","window","location","origin","guideRegistrationUrl","traineeRegistrationUrl","type","noun","program_type_text","common","verb","guideSingular","guide","singular","guidePluralized","pluralized","traineeSingular","trainee","traineePluralized","getOrganizationDataForEvent","learningHubURL","getGoalDataForEvent","goal","goalCategoryName","categories","find","goalCategory","goal_category_slug","categorySlug","goal_category_name","goalName","objective","goalStatus","goalUrl","getProgramsDataForEvent","programs","map","useGoals","goals","reqGoals","revalidateGoals","errorGoals","isLoadingGoals","isValidatingGoals","isErrorGoals","useUserIntegrations","userIntegrations","reqUserIntegrations","userIntegrationsRevalidate","errorsUserIntegrations","isLoadingUserIntegrations","isErrorUserIntegrations","isValidatingUserIntegrations","useSettings","settingsSlice","getSettings","reqSettings","createSettings","updateSettings","settingsId","getErrorsSettings","hasResultsSettings","getMessageSettings","getCodeSettings","getIsLoadingSettings","getIsErrorSettings","getIsSuccessSettings","useLocalization","dispatch","getProfiles","useProfiles","profile","isLoadingSettings","isErrorSettings","settings","lastUsedLanguage","createOrUpdateSettings","useCallback","onLanguageChange","textDirection","setDocAttrsAndMetaTag","settingErrors","errorCodes","errorMessages","errorCode","severity","timeout","handleLanguageChange","useSanityLocalization","SessionStorageKeys","useMatches","matches","reqMatches","revalidateMatches","errorMatches","isLoadingMatches","isValidatingMatches","isErrorMatches","useMemberships","membershipsSlice","memberships","reqMemberships","getErrorsMemberships","hasResultsMemberships","getMessageMemberships","getCodeMemberships","isLoadingMemberships","isErrorMemberships","isSuccessMemberships","props","navigationEventName","eventName","Date","now","trackMixpanelEvent","properties","page_name","pathname","referrer","document","getClickProp","Click","getISOStringWithoutMilliseconds","getScreenTimeProp","getScreenTimeAndClickProps","trackClick","trackScreenTime","trackScreenTimeAndClick","startTimeISOString","setUserProperties","setOrganizationGroup","resetUserIdentity","unionUserProperty","incrementUserPropetry","useMobileMediaQuery","theme","useTheme","useMediaQuery","breakpoints","down","useNotes","notes","reqNotes","revalidateNotes","errorNotes","isLoadingNotes","isValidatingNotes","isErrorNotes","profilesSlice","reqProfiles","getErrorsProfiles","hasResultsProfiles","getMessageProfiles","getCodeProfiles","isLoadingProfiles","isErrorProfiles","isSuccessProfiles","useRelationships","relationshipsSlice","relationships","reqRelationships","getErrorsRelationships","hasResultsRelationships","getMessageRelationships","getCodeRelationships","isLoadingRelationships","isErrorRelationships","isSuccessRelationships","FrontEndSessionStorageKeys","SharedSessionStorageKeys","useSessionStorageTyped","key","defaultValue","useSessionStorage","useSessions","meta","sessions","sessionsMeta","reqSessions","sessionsRevalidate","errorsSessions","isLoadingSessions","isErrorSessions","isValidatingSessions","useSkills","skills","reqSkills","skillsRevalidate","errorsSkills","isLoadingSkills","isErrorSkills","isValidatingSkills","useSurveys","surveys","reqSurveys","createSurveys","revalidateSurveys","errorSurveys","isLoadingSurveys","isValidatingSurveys","isErrorSurveys","useUserPictures","picture","setPicture","getPicture","headers","Authorization","responseType","size","useUsers","usersSlice","users","reqUsers","getErrorsUsers","hasResultsUsers","getMessageUsers","getCodeUsers","isLoadingUsers","isErrorUsers","isSuccessUsers","getWindowDimensions","innerWidth","width","innerHeight","height","useWindowDimensions","windowDimensions","setWindowDimensions","handleResize","addEventListener","removeEventListener","useProfilePicture","getUsers","usersFound","user","oauthPicture","getImage","usePicture","getLoading","profilesFound","isProfileLoading","profilePicture","initials","firstName","charAt","toUpperCase","lastName","useUnavailabilities","userId","date","timezone","isLoadingUnavailabilities","setIsLoadingUnavailabilities","unavailabilities","setUnavailabilities","timeZone","reqUnavailabilities","useLeaderboardPositions","rest","leaderboardPositions","leaderboardMeta","reqLeaderboardPositions","LeaderboardPositionsRevalidate","errorsLeaderboardPositions","isLoadingLeaderboardPositions","isErrorLeaderboardPositions","isValidatingLeaderboardPositions","useSurveyResources","surveyType","relationship","isOnGuiderVideoPage","startsWith","useOrganizationPrograms","programName","survey","isGroupProgram","programVariationTypeSlug","EProgramVariation","guideProfile","guideProfiles","traineeProfile","traineeProfiles","isGuide","guideName","displayName","traineeName","role","title","heading","subheading","sessionCount","surveyFields","fields","guideFields","filter","surveyField","traineeFields","isSurveyEnabled","enabled","useVideoParticipants","videoParticipants","reqVideoParticipants","revalidateVideoParticipants","errorVideoParticipants","isLoadingVideoParticipants","isValidatingVideoParticipants","isErrorVideoParticipants","useReviews","reviews","reviewsMeta","reqReviews","reviewsRevalidate","errorsReviews","isLoadingReviews","isErrorReviews","isValidatingReviews","useChatParticipants","chatParticipants","reqChatParticipants","revalidateChatParticipants","errorChatParticipants","isLoadingChatParticipants","isValidatingChatParticipants","isErrorChatParticipants","useMatchesV2","matchesV2","reqMatchesV2","revalidateMatchesV2","errorMatchesV2","isLoadingMatchesV2","isValidatingMatchesV2","isErrorMatchesV2","useNotifications","getNotifications","reqNotifications","reqLatestNotifications","getErrorsNotifications","hasResultsNotifications","getMessageNotifications","getCodeNotifications","getIsLoadingNotifications","getIsErrorNotifications","getIsSuccessNotifications","useModalNotifications","getSilentlyUrl","getModalNotifications","reqModalNotifications","getErrorsModalNotifications","hasResultsModalNotifications","getMessageModalNotifications","getCodeModalNotifications","getIsLoadingModalNotifications","getIsErrorModalNotifications","getIsSuccessModalNotifications","useOTPSurveys","otpSurveys","reqOTPSurveys","getErrorsOTPSurveys","hasResultsOTPSurveys","getMessageOTPSurveys","getCodeOTPSurveys","isOTPSurveys","isErrorOTPSurveys","isSuccessOTPSurveys","REACT_APP_AUTH0_CLIENT_ID","useRegisterInvite","inviteUrl","setInviteUrl","getInvite","setGetInvite","organizationId","email","inviter","invitee","client_id","user_metadata","invitationUrl","handleGetInvite","useTrackEvent","useGenericTrackEvent","useVideoTokens","videoTokens","reqVideoTokens","revalidateVideoTokens","errorVideoTokens","isLoadingVideoTokens","isValidatingVideoTokens","isErrorVideoTokens","useVideos","video","reqVideo","revalidateVideo","errorVideo","isLoadingVideo","isValidatingVideo","isErrorVideo","REACT_APP_DATADOG_CLIENT_TOKEN","REACT_APP_DATADOG_SITE","REACT_APP_DATADOG_LOGGING_ENABLED","REACT_APP_DOWN_FOR_MAINTENANCE","isDownForMaintenance","container","getElementById","root","render","Provider","store","logger","errorInfo","fallback"],"sourceRoot":""}