Fonctionnalité — Import / Export
Sauvegarde et extension du jeu de données depuis l'interface, sans jamais modifier les fromages intégrés au bundle.
Description
Un écran permet d'exporter le jeu de données actif au format JSON, et d'en importer un nouveau — un tableau de fromages, ou un objet { region?, cheeses[] } qui peut aussi enregistrer une nouvelle région.
Objectif
Permettre à quelqu'un d'étendre sa propre base (nouveaux fromages, nouvelle région) sans toucher au code, et de la sauvegarder.
Prérequis
Aucun compte : tout se passe en local. Voir le guide de cet écran.
Comment l'utiliser
- Export : bouton « Exporter la base (.json) », qui télécharge le jeu actif.
- Import : coller ou charger un fichier JSON, bouton « Valider » pour voir le détail des erreurs, puis « Confirmer l'import ».
Options
Télécharger un gabarit d'exemple entièrement rempli, pour partir d'un fichier valide plutôt que d'un schéma abstrait.
Données utilisées
Chaque fromage suit le schéma décrit dans Codes et erreurs. Un import est stocké dans une surcouche localStorage (clés fromages-import-cheeses et fromages-import-regions), fusionnée par-dessus les données intégrées (remplacement par id) — le jeu de données embarqué dans l'application n'est jamais modifié.
Résultat
Importer un id déjà présent remplace la fiche existante ; un nouvel id l'ajoute. Un bouton « Réinitialiser les imports » efface tout l'import personnel.
Hors connexion
Fonctionne entièrement hors connexion — export, import et validation sont purement locaux.
Limites
Pas de fusion champ par champ : importer un id existant remplace la fiche entière, pas seulement les champs fournis.
Erreurs possibles
Voir la table complète des messages de validation : Codes et erreurs.
Dépannage
FAQ
Comment exporter mes données ? · Comment ajouter mes propres fromages ?