Permettre d'augmenter facilement le form de login par API
Les méthodes d'authentification sont augmentables par API, on peut en ajouter des nouvelles facilement.
Mais chaque méthode ajoutée n'utilise pas forcément des champs email/mot de passe (ça peut mais pas forcément). Le formulaire de login devrait donc avoir un système qui permet de l'étendre tout aussi facilement, de manière sûre et solide, sans conflit entre plusieurs méthodes et sans réinventer la roue à chaque fois.
Actuellement, les quelques plugins qui ont eu besoin rajoutent des choses à l'arrache par pipeline recuperer_fond, ajoutent du JS pour désactiver les required, des hide/show pour basculer d'une méthode à l'autre, etc. Sauf que chacun le refait, et en plus pas forcément compatible ensemble.
L'idée serait donc de pouvoir ajouter des fieldsets de méthodes (par ex avec des squelettes normalisées du genre formulaires/inc-login_auth_TRUC.html
), qui s'ajouterait proprement l'une à la suite de l'autre, chacune avec son legend : "Connexion par mot de passe", "Connexion par Facebook", "Connexion par email", "Connexion oAuth", etc. Après dedans chacun y met ce qu'il faut suivant la méthode… ça peut être les champs nécessaires, ou un lien/bouton ouvrant un service externe, peu importe.
Mais sans avoir à coder l'insertion, sans conflit ensemble, et possiblement avec une manière de basculer entre les méthodes (tant que c'est accessible), ou pas d'ailleurs, par défaut ça peut juste être des fieldsets qui se suivent.
Quelques exemples, sur Medium quand yen a plusieurs ça affiche d'abord uniquement la liste des méthodes, et ensuite ça affiche les champs si besoin suivant la méthode : https://medium.com/m/signin
Sur Figma on peut alterner entre deux méthodes Connexion par mot de passe / Connexion SAML en JS : https://www.figma.com/
Mais parfois ya juste les méthodes qui se suivent tout simplement.