chore(wip): consolidation intermédiaire multi-tickets (sprints Statistiques, UI, Bug resolution, Serveur-client)
Regroupe l'état de travail en cours réalisé dans un même worktree sur plusieurs tickets/sprints (#85, #136, #145, #155-160, #162-164), mélangeant des tickets QA et inProgress. Ne constitue pas une feature terminée : commit de sauvegarde avant triage/split par ticket en branches feature/* dédiées. Exclut les dossiers d'environnement de build locaux et le heap dump parasite (.gitignore mis à jour). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@ -8,6 +8,7 @@ import 'package:share_plus/share_plus.dart';
|
||||
import '../application/application.dart';
|
||||
import '../domain/domain.dart';
|
||||
import 'share_inbox_screen.dart';
|
||||
import 'share_screen.dart';
|
||||
import 'theme.dart';
|
||||
|
||||
final class ProfileScreen extends StatefulWidget {
|
||||
@ -69,6 +70,7 @@ final class _ProfileScreenState extends State<ProfileScreen> {
|
||||
syncUseCases: widget.syncUseCases,
|
||||
onLogout: () => _confirmLogout(context),
|
||||
onShares: () => _openReceivedShares(context),
|
||||
onSharePack: () => _openSharePack(context),
|
||||
dataExportUseCase: widget.dataExportUseCase,
|
||||
dataImportUseCase: widget.dataImportUseCase,
|
||||
backupFileExporter: widget.backupFileExporter,
|
||||
@ -153,6 +155,18 @@ final class _ProfileScreenState extends State<ProfileScreen> {
|
||||
);
|
||||
}
|
||||
|
||||
void _openSharePack(BuildContext context) {
|
||||
Navigator.of(context).push(
|
||||
MaterialPageRoute(
|
||||
builder: (context) => SharePackSelectionScreen(
|
||||
shareUseCases: widget.shareUseCases,
|
||||
authUseCases: widget.authUseCases,
|
||||
syncUseCases: widget.syncUseCases,
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
void _reloadSession() {
|
||||
setState(() {
|
||||
_session = widget.authUseCases.currentSession();
|
||||
@ -258,6 +272,7 @@ final class _SignedInProfile extends StatelessWidget {
|
||||
required this.syncUseCases,
|
||||
required this.onLogout,
|
||||
required this.onShares,
|
||||
required this.onSharePack,
|
||||
required this.dataExportUseCase,
|
||||
required this.dataImportUseCase,
|
||||
required this.backupFileExporter,
|
||||
@ -268,6 +283,7 @@ final class _SignedInProfile extends StatelessWidget {
|
||||
final SyncUseCases syncUseCases;
|
||||
final VoidCallback onLogout;
|
||||
final VoidCallback onShares;
|
||||
final VoidCallback onSharePack;
|
||||
final DataExportUseCase dataExportUseCase;
|
||||
final DataImportUseCase dataImportUseCase;
|
||||
final LocalBackupFileExporter backupFileExporter;
|
||||
@ -320,18 +336,34 @@ final class _SignedInProfile extends StatelessWidget {
|
||||
),
|
||||
const SizedBox(height: 12),
|
||||
CourtBlazerAccentPanel(
|
||||
child: Material(
|
||||
type: MaterialType.transparency,
|
||||
child: ListTile(
|
||||
contentPadding: EdgeInsets.zero,
|
||||
leading: const Icon(Icons.inbox_outlined),
|
||||
title: const Text('Partages reçus'),
|
||||
subtitle: const Text(
|
||||
"Programmes et séances reçus d'autres comptes",
|
||||
child: Column(
|
||||
children: [
|
||||
Material(
|
||||
type: MaterialType.transparency,
|
||||
child: ListTile(
|
||||
contentPadding: EdgeInsets.zero,
|
||||
leading: const Icon(Icons.inventory_2_outlined),
|
||||
title: const Text('Partager un pack'),
|
||||
subtitle: const Text('Envoyer plusieurs séances ensemble'),
|
||||
trailing: const Icon(Icons.chevron_right),
|
||||
onTap: onSharePack,
|
||||
),
|
||||
),
|
||||
trailing: const Icon(Icons.chevron_right),
|
||||
onTap: onShares,
|
||||
),
|
||||
const Divider(height: 1),
|
||||
Material(
|
||||
type: MaterialType.transparency,
|
||||
child: ListTile(
|
||||
contentPadding: EdgeInsets.zero,
|
||||
leading: const Icon(Icons.inbox_outlined),
|
||||
title: const Text('Partages reçus'),
|
||||
subtitle: const Text(
|
||||
"Programmes, séances et packs reçus d'autres comptes",
|
||||
),
|
||||
trailing: const Icon(Icons.chevron_right),
|
||||
onTap: onShares,
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
],
|
||||
|
||||
Reference in New Issue
Block a user