patternfly / patternfly/react-data-view

Initial Filters is not respected when array type filter

Ouverte Adaptée aux débutants
#671 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Langage dominant
TypeScript
Étoiles
4
Forks
21
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

When the user supplies an array type filter with initialFilters, the initialFilters are never used. The filter logic has the following code:

	  const urlValue = isArrayFilter ? searchParams?.getAll(key) : searchParams?.get(key);

      // eslint-disable-next-line no-nested-ternary
      loadedFilters[key] = urlValue
        ? (isArrayFilter && !Array.isArray(urlValue) ? [ urlValue ] : urlValue)
        : initialFilters[key];

The issue is that searchParams.getAll returns an empty array when key doesn't exist, so the truthy check on urlValue evaluates to true even though nothing is set.

This can be resolved by checking the length of the array when isArrayFilter is true


Jira Issue: PF-4302

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par la logique de filtrage présentée dans l’issue et suivez le chargement des filtres array et de initialFilters lorsque la clé d’URL est absente. Reproduisez le cas avec un filtre de type array et vérifiez que les valeurs initiales configurées sont conservées lorsqu’aucune valeur d’URL n’existe.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
typescript
Domaine
frontend
Type d'issue
Bug
Difficulté
2/5
Temps estimé
1-3 heures
Activité
Calme
Clarté
Clairement spécifiée
Accessibilité débutants
68/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.