fix(online): validation client online offline-first (ticket #70)

Corrige l'acceptation de partage hors-ligne (acceptShare,
_acceptCachedShareAndQueueAck, _importSharedPayload dans
application/use_cases.dart) : crée bien une copie locale indépendante
avec de nouveaux IDs avant de mettre l'accusé serveur en file
d'attente. Ajuste app_bootstrap.dart, profile_screen.dart et
share_screen.dart en conséquence. flutter pub get OK, dart format
appliqué (aucun changement), analyze propre (mêmes infos
préexistantes), 137/137 tests verts, build APK debug validé. Dernier
ticket du chantier "Ajouter les features serveur au client" (#63,
tickets #64 à #70 tous terminés).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-20 09:39:40 +02:00
parent c00f61ef06
commit b6f048ad64
10 changed files with 470 additions and 13 deletions

View File

@ -118,6 +118,7 @@ final class _ShareFormScreenState extends State<ShareFormScreen> {
MaterialPageRoute(
builder: (context) => ShareAccountRequiredScreen(
resourceType: widget.resourceType,
shareUseCases: widget.shareUseCases,
authUseCases: widget.authUseCases,
syncUseCases: widget.syncUseCases,
),
@ -137,12 +138,14 @@ final class _ShareFormScreenState extends State<ShareFormScreen> {
final class ShareAccountRequiredScreen extends StatelessWidget {
const ShareAccountRequiredScreen({
required this.resourceType,
this.shareUseCases,
this.authUseCases,
this.syncUseCases,
super.key,
});
final ShareResourceType resourceType;
final ShareUseCases? shareUseCases;
final AuthUseCases? authUseCases;
final SyncUseCases? syncUseCases;
@ -179,6 +182,7 @@ final class ShareAccountRequiredScreen extends StatelessWidget {
builder: (context) => LoginScreen(
authUseCases: authUseCases!,
syncUseCases: syncUseCases!,
shareUseCases: shareUseCases,
),
),
)
@ -193,6 +197,7 @@ final class ShareAccountRequiredScreen extends StatelessWidget {
builder: (context) => RegisterScreen(
authUseCases: authUseCases!,
syncUseCases: syncUseCases!,
shareUseCases: shareUseCases,
),
),
)