From e88c88ef4efa0c5762c9ef06ab8a4fc1133d5dcf Mon Sep 17 00:00:00 2001 From: zaid_daoud Date: Mon, 27 Feb 2023 09:45:25 +0300 Subject: [PATCH] Arguments datatype -> null safety --- lib/views/pages/user/land_page.dart | 2 +- .../future_request_service_details.dart | 38 +++++++++++-------- 2 files changed, 23 insertions(+), 17 deletions(-) diff --git a/lib/views/pages/user/land_page.dart b/lib/views/pages/user/land_page.dart index c6bf8012..37b7aceb 100644 --- a/lib/views/pages/user/land_page.dart +++ b/lib/views/pages/user/land_page.dart @@ -72,7 +72,7 @@ class _LandPageState extends State { @override Widget build(BuildContext context) { - String? path = ModalRoute.of(context)?.settings.arguments.toString(); + String? path = ModalRoute.of(context)?.settings.arguments as String?; _height = MediaQuery.of(context).size.height; _width = MediaQuery.of(context).size.width; _settingProvider = Provider.of(context); diff --git a/lib/views/pages/user/requests/future_request_service_details.dart b/lib/views/pages/user/requests/future_request_service_details.dart index f5688090..265a4c75 100644 --- a/lib/views/pages/user/requests/future_request_service_details.dart +++ b/lib/views/pages/user/requests/future_request_service_details.dart @@ -1,4 +1,3 @@ - import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; @@ -11,43 +10,50 @@ import '../../../../models/subtitle.dart'; import '../../../widgets/loaders/app_loading.dart'; import '../../../widgets/loaders/failed_loading.dart'; import 'request_details.dart'; + class FutureRequestServiceDetails extends StatefulWidget { - static final String id = "/service-request-details"; + static const String id = "/service-request-details"; + + const FutureRequestServiceDetails({super.key}); @override - _FutureRequestServiceDetailsState createState() => _FutureRequestServiceDetailsState(); + _FutureRequestServiceDetailsState createState() => + _FutureRequestServiceDetailsState(); } -class _FutureRequestServiceDetailsState extends State { - +class _FutureRequestServiceDetailsState + extends State { late UserProvider _userProvider; late SettingProvider _settingProvider; @override Widget build(BuildContext context) { _userProvider = Provider.of(context); _settingProvider = Provider.of(context); - String requestId = ModalRoute.of(context)!.settings.arguments.toString(); + String? requestId = ModalRoute.of(context)?.settings.arguments as String?; Subtitle _subtitle = AppLocalization.of(context)!.subtitle!; return Scaffold( body: FutureBuilder( future: ServiceRequestsProvider().getSingleServiceRequest( - requestId: requestId, - user: _userProvider.user!, - host: _settingProvider.host??"", - subtitle: _subtitle - ), - builder: (BuildContext context, AsyncSnapshot snapshot){ - if(snapshot.hasError) + requestId: requestId ?? '', + user: _userProvider.user!, + host: _settingProvider.host ?? "", + subtitle: _subtitle), + builder: + (BuildContext context, AsyncSnapshot snapshot) { + if (snapshot.hasError) { return FailedLoading( message: snapshot.error.toString(), - onReload: (){setState(() {});}, + onReload: () { + setState(() {}); + }, ); - if(snapshot.hasData){ + } + if (snapshot.hasData) { return RequestDetailsPage( serviceRequest: snapshot.data!, ); } - return Center(child: ALoading()); + return const Center(child: ALoading()); }, ), );