'use client' import { useEffect, useRef, useState } from 'react' import { useBack } from '@/hooks/useBack' import { useVisitor } from '@/context/VisitorContext' import { t, tPlain } from '@/lib/i18n' import LanguageSelector from '@/components/ui/LanguageSelector' import dynamic from 'next/dynamic' import './map/map.css' import type { SectionDTO, GuidedPathDTO, GuidedStepDTO, QuestionDTO, TranslationAndResourceDTO, ContentDTO } from '@/lib/api/types' const LeafletMap = dynamic(() => import('./map/LeafletMap'), { ssr: false, loading: () => (
Aucun parcours disponible
Choisir un parcours
ESCAPE GAME
« {gameIntro} »
)}Activez le son pour une immersion totale
{title}
{desc}
)}{stepTitle}
{stepTitle}
)} {/* Label parcours */} {tPlain(path.title, language).toUpperCase() || 'PARCOURS'} {/* Lecteur audio */} {audioUrl && ( <>Bien joué !
Continuez votre parcours.
> ) : ( <>Pas tout à fait…
Observez bien les détails autour de vous.
> )}{tPlainArr(q.label)}
ÉNIGME RÉSOLUE
« {gameOutro} »
)}Vous avez exploré {steps.length} étape{steps.length > 1 ? 's' : ''} de « {tPlain(path.title, language)} ».
{/* Stats */}{steps.length}
étapes
{path.estimatedDurationMinutes} min
estimé