1
0
mirror of https://github.com/flutter/samples.git synced 2026-09-02 07:30:54 +00:00

Release 3.47 (#2879)

Minor updates for release 3.47

## Pre-launch Checklist

- [x] I read the [Flutter Style Guide] _recently_, and have followed its
advice.
- [x] I signed the [CLA].
- [x] I read the [Contributors Guide].
- [x] I have added sample code updates to the [changelog].
- [x] I updated/added relevant documentation (doc comments with `///`).


If you need help, consider asking for advice on the #hackers-devrel
channel on [Discord].

<!-- Links -->
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/master/docs/contributing/Style-guide-for-Flutter-repo.md
[CLA]: https://cla.developers.google.com/
[Discord]:
https://github.com/flutter/flutter/blob/master/docs/contributing/Chat.md
[Contributors Guide]:
https://github.com/flutter/samples/blob/main/CONTRIBUTING.md
[changelog]: ../CHANGELOG.md

---------

Co-authored-by: Parker Lougheed <parlough@gmail.com>
This commit is contained in:
Eric Windmill
2026-08-12 12:21:23 -07:00
committed by GitHub
parent e0136e5ebb
commit 0c5ca75d29
96 changed files with 1711 additions and 723 deletions

View File

@@ -31,7 +31,7 @@ class BookingRepositoryRemote implements BookingRepository {
.map((activity) => activity.ref)
.toList(),
);
return _apiClient.postBooking(bookingApiModel);
return await _apiClient.postBooking(bookingApiModel);
} on Exception catch (e) {
return Result.error(e);
}
@@ -121,7 +121,7 @@ class BookingRepositoryRemote implements BookingRepository {
@override
Future<Result<void>> delete(int id) async {
try {
return _apiClient.deleteBooking(id);
return await _apiClient.deleteBooking(id);
} on Exception catch (e) {
return Result.error(e);
}

View File

@@ -85,7 +85,6 @@ class BookingCreateUseCase {
switch (saveBookingResult) {
case Ok<void>():
_log.fine('Booking saved successfully');
break;
case Error<void>():
_log.warning('Failed to save booking', saveBookingResult.error);
return Result.error(saveBookingResult.error);

View File

@@ -46,9 +46,7 @@ GoRouter router(AuthRepository authRepository) => GoRouter(
authRepository: context.read(),
itineraryConfigRepository: context.read(),
);
return HomeScreenContainer(
logoutViewModel: logoutViewModel,
);
return HomeScreenContainer(logoutViewModel: logoutViewModel);
},
routes: [
GoRoute(

View File

@@ -7,7 +7,7 @@ import 'package:flutter/material.dart';
class AppLocalization {
static AppLocalization of(BuildContext context) {
return Localizations.of(context, AppLocalization);
return Localizations.of<AppLocalization>(context, AppLocalization)!;
}
static const _strings = <String, String>{

View File

@@ -8,10 +8,7 @@ import '../view_models/home_viewmodel.dart';
import 'home_screen.dart';
class HomeScreenContainer extends StatefulWidget {
const HomeScreenContainer({
super.key,
required this.logoutViewModel,
});
const HomeScreenContainer({super.key, required this.logoutViewModel});
final LogoutViewModel logoutViewModel;

View File

@@ -52,7 +52,7 @@ class SearchFormContinent extends StatelessWidget {
scrollDirection: Axis.horizontal,
itemCount: viewModel.continents.length,
padding: Dimens.of(context).edgeInsetsScreenHorizontal,
itemBuilder: (BuildContext context, int index) {
itemBuilder: (context, index) {
final Continent(:imageUrl, :name) = viewModel.continents[index];
return _CarouselItem(
key: ValueKey(name),
@@ -61,7 +61,7 @@ class SearchFormContinent extends StatelessWidget {
viewModel: viewModel,
);
},
separatorBuilder: (BuildContext context, int index) {
separatorBuilder: (context, index) {
return const SizedBox(width: 8);
},
);