feat: iphone app

This commit is contained in:
leon
2026-09-09 10:12:49 +02:00
parent 8666f6eb8f
commit 4f4f6f4c71
30 changed files with 13379 additions and 23 deletions
+7 -1
View File
@@ -41,7 +41,13 @@ Le choix iPhone / iPhone + Apple Watch se fait sur l'étape « Comment allez vou
## Limites fonctionnelles
Cette livraison implémente le front du Figma. Les valeurs biométriques, profils, historiques et états « Connecté » affichés sont ceux de la maquette ; ils ne constituent pas des mesures ou connexions réelles. Le front n'est connecté ni à Firebase, ni à Apple Santé, ni à la Watch. Les mesures caméra, protocoles thérapeutiques, alarmes système, authentification et achats ne sont pas implémentés dans ce nouveau projet. Le code natif existant du dépôt parent n'a pas été transféré ni modifié.
Le SDK natif Firebase est configuré sur `haptika-d13d3`. L'écran `haptika-mobile://account`, accessible en touchant « COMPTE ET ABONNEMENT » dans Profil, permet la création de compte, la connexion e-mail/mot de passe, la réinitialisation du mot de passe et la déconnexion. Cet écran technique de compte est un ajout fonctionnel, pas une frame Figma.
Le prénom, l'année de naissance valide, le genre, le choix téléphone/Watch, la fin d'onboarding et le mode écran noir se synchronisent après connexion. Les autres curseurs restent locaux. Les changements non envoyés sont conservés dans une file locale séparée par UID ; ils repartent au retour du réseau (réessai toutes les 10 secondes) ou avec « Réessayer ». Les données du mode local ne sont pas importées à la connexion.
Les valeurs biométriques, historiques, abonnements et états « Connecté » des frames restent des exemples ; aucune de ces valeurs n'est envoyée à Firestore. Apple Santé, l'acquisition caméra, WatchConnectivity dans Expo, les alarmes système et les achats ne sont pas branchés. Les repositories de mesures et de séances sont disponibles pour leur futur branchement. Le code natif de l'ancienne application Watch reste distinct.
Les règles et index Firestore sont déployés. Les fonctions serveur de suppression sont écrites et testées sur Emulator ; leur déploiement nécessite Blaze, actuellement désactivé. Voir `../firebase/README.md`.
Les destinations de profil sans frame correspondante (abonnement, support, etc.) n'ouvrent pas d'écran inventé. Les panneaux explicatifs définis dans Figma sont associés aux boutons d'information disponibles.