/* ============================================================ exemple-mobile-saisie-doc.jsx — partie 2 Doc panneau droit (catalogue commenté avec visuels) + ROOT. ============================================================ */ const { useState: uDS, useEffect: eDS } = React; /* ============================================================ VISUALS ============================================================ */ /* Mini-clavier virtuel selon le type */ function KeyboardVisual({ kind }) { const wrap = (cells) => (
Suite logique de la variante mobile : écrans de connexion, profil, formulaire complet, liste swipeable. Tous les composants sont nommés et le clavier virtuel se configure précisément (8 types, autocomplete système, touche Entrée personnalisable).
Chaque écran combine plusieurs composants. Bascule entre eux via les onglets en bas du smartphone.
Tous ont une API homogène : value / onChange / label / hint / error. Les inputs supportent en plus le contrôle clavier virtuel.
Sur mobile, le clavier qui s'affiche dépend de la prop keyboard (attribut HTML inputmode).
Choisis le BON type pour faire gagner du temps à l'utilisateur — exemple : keyboard="numeric" pour un code OTP fait apparaître directement le pavé numérique au lieu du clavier complet.
L'attribut autocomplete dit au système ce que représente le champ.
Sur iOS/Android, ça déclenche : remplissage automatique (nom, email, adresse), proposition du mot de passe enregistré, génération d'un nouveau mot de passe, lecture auto du code SMS reçu.
La touche en bas à droite du clavier peut afficher un mot différent selon le contexte (au lieu du standard "Entrée").
keyboard="email" + autocomplete="email" + autocapitalize="off"
type="password" + autocomplete="current-password" (ou "new-password" en inscription)
keyboard="numeric" + autocomplete="one-time-code" + maxLength=6
keyboard="tel" + autocomplete="tel"
keyboard="search" + enterHint="search"
keyboard="decimal"
autocomplete="address-line1", puis postal-code, country
autocapitalize="sentences" + spellCheck=true