Skip to content

whenIsSelected

Exécute un callback sur les payloads Either sélectionnés par un sélecteur exhaustif d'informations et relaie les autres entrées inchangées.

Le sélecteur associe chaque information possible de l'union d'entrée à true ou false. Une entrée true exécute le callback avec le payload unwrap ; une entrée false conserve l'Either original.

Exemple interactif

Syntaxe

Signature classique

typescript
function whenIsSelected<
  GenericInput extends unknown,
  GenericSelector extends Record<Information, boolean>,
  GenericOutput,
>(
  input: GenericInput,
  selector: GenericSelector,
  theFunction: (value: UnwrappedSelectedInputs) => GenericOutput,
): GenericOutput | UnselectedInputs

Signature currifiée

typescript
function whenIsSelected<
  GenericInput extends unknown,
  GenericSelector extends Record<Information, boolean>,
  GenericOutput,
>(
  selector: GenericSelector,
  theFunction: (value: UnwrappedSelectedInputs) => GenericOutput,
): (input: GenericInput) => GenericOutput | UnselectedInputs

Paramètres

  • selector : Objet exhaustif associant chaque information possible de l'entrée à true ou false.
  • theFunction : Callback recevant le payload unwrap des informations sélectionnées.
  • input : Valeur à traiter immédiatement, ou plus tard via la forme currifiée.

Valeur de retour

Retourne le résultat du callback lorsque l'information courante est sélectionnée avec true. Sinon, renvoie l'entrée originale inchangée.

Quand une entrée du sélecteur est typée boolean, le type de retour inclut à la fois le résultat du callback et l'Either original pour cette information.

Voir aussi

Diffusé sous licence MIT.