Sur la dernière version stable, je vois une erreur JavaScript lorsque je clique sur le bouton « Créer un lien d’invitation » sur /u/user_name/invited/pending.
La console affiche :
Uncaught (in promise) TypeError: Cannot read properties of undefined (reading ‘slice’)
at h.shortKey (chunk.f105ceace2ad381ddb2f.d41d8cd9.js:241:61588)
Si l’objet d’invitation est rendu avant que invite_key ne soit rempli par le serveur, invite_key est indéfini et cela plante lors de l’utilisation de .slice() sur rien.
Dans invite.js, la fonction shortKey essaie de raccourcir une clé d’invitation :
shortKey(key) {
return key.slice(0, 4) + “…”;
}
Je ne peux pas le reproduire sur meta, donc peut-être que je le vois parce que mon serveur ou mon réseau n’est pas aussi rapide. Mais vérifier si la clé existe avant de l’utiliser semble le résoudre :
J’ai examiné le code et je ne suis pas sûr d’où peut provenir un code partiellement rempli, même en ajoutant un délai de 400 ms sur le réseau ici, je ne peux pas le reproduire.
Je pense que nous avons besoin d’une sorte de reproduction avant de patcher, ce patch permettrait aux gens de copier un lien d’invitation cassé.
Je pense que ce serait bien en tant que PR à condition qu’il soit localisé.
Toujours un peu confus quant à l’endroit où nous remplissons Invite avec un objet à moitié plein, mais c’est mieux que d’échouer et cela me semble correct.
Voyez-vous cette erreur ici sur Meta ? Je me demande si elle a été corrigée sur latest. Dans ce cas, il nous suffit d’identifier le commit qui l’a corrigée et de la rétroporter vers la version stable.
L’invitation est ajoutée à la liste immédiatement après save() mais avant que invite_key ne soit remplie par le serveur. Elle est toujours présente dans latest, j’ai donc ouvert PR #35679