Files
yanting/report-notebooklm-app/lib/routing/app_routes.dart
T

48 lines
1.2 KiB
Dart

import 'package:flutter/material.dart';
import '../data/api/report_data_source.dart';
import '../data/models/models.dart';
import '../features/detail/report_detail_page.dart';
import '../features/institutions/institution_detail_page.dart';
import '../widgets/mini_player.dart';
void openReportDetail(
BuildContext context,
ReportDataSource dataSource,
ReportCardModel report, {
PlayerStateModel player = const PlayerStateModel(),
void Function(String audioId, String reportId, String title, int durationSec)? onStartAudio,
VoidCallback? onToggleAudio,
void Function(int delta)? onSeekAudio,
VoidCallback? onSpeed,
}) {
Navigator.of(context).push(
MaterialPageRoute(
builder: (_) => ReportDetailPage(
reportId: report.id,
dataSource: dataSource,
player: player,
onStartAudio: onStartAudio,
onToggleAudio: onToggleAudio,
onSeekAudio: onSeekAudio,
onSpeed: onSpeed,
),
),
);
}
void openInstitutionDetail(
BuildContext context,
ReportDataSource dataSource,
String institutionId,
) {
Navigator.of(context).push(
MaterialPageRoute(
builder: (_) => InstitutionDetailPage(
institutionId: institutionId,
dataSource: dataSource,
),
),
);
}