Skip to content

object

Décrit un objet typé via un dictionnaire de parsers. DDataParser.object() construit un schéma structuré, applique chaque parser enfant, agrège les erreurs avec leur chemin (user.address.city) et renvoie la valeur immuable validée.

Exemple interactif

Paramètres

  • shape : dictionnaire { key: DataParser } (tous les parsers disponibles sont acceptés, y compris ceux composés via pipe).
  • checkers : checkerRefine et helpers personnalisés pour valider le résultat complet (ex: vérifier des dépendances inter-champs).
  • errorMessage : message général utilisé quand l'entrée n'est pas un objet conforme.

Valeur de retour

Un DataParserObject avec les méthodes parse, asyncParse, exec, asyncExec, addChecker, clone. schema.parse(data) renvoie DEither.success<Shape> si tout passe ou DEither.error<DataParserError> regroupant toutes les issues.

Others exemples

Checkers personnalisés

Mode étendu

Projection avec pick

Sélectionnez uniquement les champs exposés publiquement depuis un schéma plus large.

Version standard

Version étendue

Masquage avec omit

Retirez les secrets (mot de passe, tokens, etc.) avant de renvoyer vos objets.

Version standard

Version étendue

Extension avec extends

Recréez un schéma en gardant une base et en ajoutant des propriétés supplémentaires.

Version standard

Version étendue

Schéma de mise à jour avec partial

Rendez toutes les clés optionnelles (utile pour les payloads de patch/update), sans perdre les validations des champs.

Version standard

Version étendue

Champs obligatoires avec required

Retirez l'optionnalité (wrappers optional) sur un schéma d'objet : pratique après un partial ou si vous avez marqué des champs optionnels trop tôt.

Version standard

Version étendue

Voir aussi

  • string - Parser pour les chaînes de caractères
  • array - Parser pour les tableaux

Diffusé sous licence MIT.