Members
API_BASE
URL de base du serveur backend
- Source:
rootRoute
Contexte d'authentification partagé via le routeur TanStack
- Source:
Methods
_createUser(id)
Supprime un utilisateur par son identifiant.
Parameters:
| Name | Type | Description |
|---|---|---|
id |
L'identifiant de l'utilisateur à supprimer |
- Source:
Throws:
-
Si la réponse du serveur n'est pas ok
- Type
- Error
_deleteUser(id, payload)
Met à jour les données d'un utilisateur existant.
Parameters:
| Name | Type | Description |
|---|---|---|
id |
L'identifiant de l'utilisateur à modifier | |
payload |
Les nouvelles données au format CreateUserPayload |
- Source:
Throws:
-
Si la réponse du serveur n'est pas ok
- Type
- Error
_fetchUsers(payload)
Crée un nouvel utilisateur en envoyant les données au format attendu par le serveur.
Parameters:
| Name | Type | Description |
|---|---|---|
payload |
Les données de l'utilisateur au format CreateUserPayload |
- Source:
Throws:
-
Si la réponse du serveur n'est pas ok
- Type
- Error
_updateUser(payload) → {boolean}
Tente une connexion administrateur avec les identifiants fournis.
Parameters:
| Name | Type | Description |
|---|---|---|
payload |
L'email et le mot de passe |
- Source:
Throws:
-
Si la réponse HTTP du serveur n'est pas ok
- Type
- Error
Returns:
`true` si le serveur a renvoyé `{ success: true }`, sinon `false`
- Type
- boolean
censorEmail(email)
Masque l'email en conservant la première et la dernière lettre
de la partie locale, et le domaine complet.
Parameters:
| Name | Type | Description |
|---|---|---|
email |
L'adresse email complète (ex: "jean@example.com") |
- Source:
Returns:
L'email censuré (ex: "j****n@example.com")
censorLastName(name)
Masque le nom de famille en ne gardant que l'initiale suivie d'un point.
Parameters:
| Name | Type | Description |
|---|---|---|
name |
Le nom complet (ex: "Dupont") |
- Source:
Returns:
Le nom censuré (ex: "D.")
cn(inputs)
Fusionne les classes CSS Tailwind avec prise en charge des conflits.
Utilise `clsx` pour les conditions et `tailwind-merge` pour résoudre les conflits.
Parameters:
| Name | Type | Description |
|---|---|---|
inputs |
Liste de classes, d'objets conditionnels ou de tableaux |
- Source:
Returns:
Chaîne de classes CSS fusionnées et dédupliquées
fetchUsers()
Récupère la liste des utilisateurs depuis l'API et mappe les champs
du format serveur (`nom`, `prenom`, `date_naissance`, `ville`, `code_postal`)
vers le format client (`lastName`, `firstName`, `birthDate`, `city`, `postalCode`).
- Source:
Throws:
-
Si la réponse du serveur n'est pas ok
- Type
- Error
Returns:
Un tableau d'objets
User
isAdult(birthDate)
Vérifie si une date de naissance correspond à une personne majeure (18 ans ou plus).
Parameters:
| Name | Type | Description |
|---|---|---|
birthDate |
La date de naissance à vérifier |
- Source:
Returns:
`true` si l'âge est supérieur ou égal à 18 ans
isValidEmail(value)
Vérifie qu'un email respecte le format basique `texte@texte.texte`.
Parameters:
| Name | Type | Description |
|---|---|---|
value |
L'email à valider |
- Source:
Returns:
`true` si le format est correct
isValidName(value)
Vérifie qu'un nom/prénom ne contient que des lettres, espaces, apostrophes ou tirets.
Parameters:
| Name | Type | Description |
|---|---|---|
value |
La chaîne à valider |
- Source:
Returns:
`true` si la chaîne est valide
isValidPostalCode(value)
Vérifie qu'un code postal français est valide (5 chiffres).
Parameters:
| Name | Type | Description |
|---|---|---|
value |
Le code postal à valider |
- Source:
Returns:
`true` si le code postal est au format 5 chiffres
useAuth()
Hook pour accéder au contexte d'authentification.
Doit être utilisé à l'intérieur d'un
AuthProvider.
- Source:
Throws:
-
Si le hook est utilisé en dehors d'un
AuthProvider - Type
- Error
Returns:
L'état d'authentification et les fonctions `login` / `logout`
useCreateUser()
Hook de mutation pour créer un nouvel utilisateur.
Invalide le cache `['users']` après une création réussie.
- Source:
Returns:
Une mutation React Query contenant `mutate`, `isPending`, etc.
useDeleteUser()
Hook de mutation pour supprimer un utilisateur par son identifiant.
Invalide le cache `['users']` après une suppression réussie.
- Source:
Returns:
Une mutation React Query contenant `mutate`, `isPending`, etc.
useLoginMutation()
Hook de mutation pour la connexion administrateur.
Appelle l'API
login avec les identifiants fournis.
- Source:
Returns:
Une mutation React Query contenant `mutate`, `isPending`, etc.
useUpdateUser()
Hook de mutation pour mettre à jour un utilisateur existant.
Invalide le cache `['users']` après une mise à jour réussie.
- Source:
Returns:
Une mutation React Query contenant `mutate`, `isPending`, etc.
useUsersQuery()
Hook de requête qui récupère la liste des utilisateurs depuis l'API.
Met en cache le résultat sous la clé `['users']`.
- Source:
Returns:
Une requête React Query contenant `data`, `isLoading`, `isError`, etc.
validateForm(data)
Valide l'intégralité du formulaire et retourne les erreurs champ par champ.
Parameters:
| Name | Type | Description |
|---|---|---|
data |
Les données du formulaire à valider |
- Source:
Returns:
Objet contenant les messages d'erreur pour chaque champ invalide (vide si tout est valide)