Toggle sobre 2 options (role radiogroup, flèches/Home/End, focus visible, reduced-motion), étiquette de mode sur les réponses approfondies, et useChatProfondeur (état par clé, desktop et mobile synchronisés). Libellés lus dans utils/chatProfondeur.ts. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015vcVGz8i4WpZm2dixKUiSD
14 lines
700 B
TypeScript
14 lines
700 B
TypeScript
/**
|
|
* Mode de profondeur courant d'un chatbot (M3). État partagé par clé via useState :
|
|
* desktop et mobile d'un même chatbot (clés 'accueil', 'agences'…) restent synchronisés.
|
|
* Volontairement non persisté : le mode est un choix par question, 'rapide' à chaque visite.
|
|
*/
|
|
export function useChatProfondeur(key: string | (() => string) = 'defaut') {
|
|
const k = typeof key === 'function' ? key : () => key
|
|
const store = useState<Record<string, ChatProfondeur>>('aep-chat-profondeur', () => ({}))
|
|
return computed<ChatProfondeur>({
|
|
get: () => store.value[k()] ?? CHAT_PROFONDEUR_DEFAUT,
|
|
set: (v) => { store.value = { ...store.value, [k()]: normaliserProfondeur(v) } },
|
|
})
|
|
}
|