import clsx from 'clsx'; import { useEffect } from 'react'; import { useLocation, useNavigate } from 'react-router'; import { getOnboardingStore, unlockOnboardingScreen, useOnboardingStore } from '@sd/client'; import routes from '.'; export const useCurrentOnboardingScreenKey = (): string | null => { const { pathname } = useLocation(); if (pathname.startsWith(`/onboarding/`)) { return pathname.split('/')[2] || null; } return null; }; // screens are locked to prevent users from skipping ahead export function useUnlockOnboardingScreen() { const currentScreenKey = useCurrentOnboardingScreenKey()!; useEffect(() => { unlockOnboardingScreen(currentScreenKey, getOnboardingStore().unlockedScreens); }, [currentScreenKey]); } export default function OnboardingProgress() { const obStore = useOnboardingStore(); const navigate = useNavigate(); const currentScreenKey = useCurrentOnboardingScreenKey(); return (