Skip to content

#patch: (2506) Refonte du formulaire de demande d'accès#1316

Open
superfeedboy wants to merge 136 commits intodevelopfrom
issue/2506
Open

#patch: (2506) Refonte du formulaire de demande d'accès#1316
superfeedboy wants to merge 136 commits intodevelopfrom
issue/2506

Conversation

@superfeedboy
Copy link
Contributor

🧾 Ticket Trello

https://trello.com/c/LitwGEH7/2506-nouveau-parcours-de-cr%C3%A9ation-de-compte
https://trello.com/c/djFTsrya/2446-faciliter-le-parcours-de-demande-dacc%C3%A8s

🛠 Description de la PR

Cette PR modifie le fonctionnement du formulaire de demande de création de compte en simplifiant la recherche de structure. Qu'il s'agisse d'une association, service déconcentré de l'état, organisme privé ou autre, il suffit maintenant de chercher le nom ou l'acronyme dans la barre d'autocomplétion.
De plus, le formulaire est migré en DSFR:

  • Boutons radio
  • Boutons checkbox
  • Input
  • TextArea
  • Autocomplete (recherche de structures)

La PR prend en charge les 3 états du formulaire:

  • Demande de création d'accès
  • Création d'un utilisateur depuis l'interface d'administration
  • Demande de contact

📸 Captures d'écran

image

🚨 Notes pour la mise en production

RàS

@sonarqubecloud
Copy link

sonarqubecloud bot commented Dec 18, 2025

Quality Gate Failed Quality Gate failed

Failed conditions
4.8% Duplication on New Code (required ≤ 3%)

See analysis details on SonarQube Cloud

@sonarqubecloud
Copy link

Copy link
Contributor

@ch-benard ch-benard left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Des éléments à corriger. J'ai poussé une branche issue/2506-fix qui corrige les problème d'accessibilité du composant DsfrComplexAutocomplete.vue.

"
>
<template #before-input>
<span class="font-bold not-italic" aria-hidden="true">{{ label }}</span>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Le label est masqué pour les lecteurs d'écran (aria-hidden="true"), mais aucun label accessible n'est fourni pour l'input.

Solution : Utiliser le slot label de DsfrInputGroup correctement ou ajouter un aria-label sur l'input.

</div>
<div
class="grid justify-center items-center pt-[1.75px] h-9 w-full px-1 border-t border-G200 bg-white"
@mousedown.prevent.stop="isClickInsideDropdown = true"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Le flag isClickInsideDropdown est utilisé pour empêcher le "blur" lors d'un clic sur les éléments de pagination ou des filtres de catégorie, mais la logique est fragile. Si un utilisateur clique et maintient enfoncé à l'intérieur du menu déroulant, puis fait glisser vers l'extérieur avant de relâcher, l'état du drapeau devient incohérent.

@mouseleave="isClickInsideDropdown = false"
>
<p class="fr-hint-text">Filtrer par:</p>
<DsfrTags
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ces éléments ne sont pas focusables lors de la navigation au clavier

@mouseleave="isClickInsideDropdown = false"
v-if="totalPages > 1"
>
<DsfrPagination
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Les éléments de pagination ne sont pas "rendus" par le lecteur d'écran.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants