From d282f4bb380ce9c445d6bd3a4c9f001bb6b5f501 Mon Sep 17 00:00:00 2001 From: davidpkj Date: Sun, 17 Jul 2022 19:25:26 +0200 Subject: Initial Commit --- lib/widgets/error_widgets.dart | 97 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 lib/widgets/error_widgets.dart (limited to 'lib/widgets/error_widgets.dart') diff --git a/lib/widgets/error_widgets.dart b/lib/widgets/error_widgets.dart new file mode 100644 index 0000000..52ac0bb --- /dev/null +++ b/lib/widgets/error_widgets.dart @@ -0,0 +1,97 @@ +import 'package:flutter/material.dart'; + +import 'package:kulinar_app/constants.dart'; + +import 'package:flutter_gen/gen_l10n/app_localizations.dart'; + +class NoContentError extends StatelessWidget { + const NoContentError({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Container( + width: double.infinity, + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Icon( + Icons.sentiment_dissatisfied_rounded, + size: 100, + ), + Padding( + padding: const EdgeInsets.only(top: 20.0), + child: Text(AppLocalizations.of(context)!.noContentError, style: cZeroContentStyle), + ), + ], + ), + ); + } +} + +class NetworkContentError extends StatelessWidget { + const NetworkContentError({Key? key, required this.refreshCallback}) : super(key: key); + + final Function refreshCallback; + + @override + Widget build(BuildContext context) { + return Container( + width: double.infinity, + child: Padding( + padding: const EdgeInsets.all(50.0), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Icon( + Icons.signal_wifi_off_rounded, + size: 100, + ), + Padding( + padding: const EdgeInsets.only(top: 20.0), + child: Text(AppLocalizations.of(context)!.noNetworkError, textAlign: TextAlign.center, style: cZeroContentStyle), + ), + Padding( + padding: const EdgeInsets.only(top: 20.0), + child: ElevatedButton( + child: Padding( + padding: const EdgeInsets.only(left: 50.0, right: 50.0), + child: Text(AppLocalizations.of(context)!.retry, style: cSubTitleStyle), + ), + onPressed: () { + refreshCallback(); + }, + ), + ), + ], + ), + ), + ); + } +} + +class UnknownError extends StatelessWidget { + const UnknownError({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Container( + width: double.infinity, + child: Padding( + padding: const EdgeInsets.all(50.0), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Icon( + Icons.warning_amber_rounded, + size: 100, + ), + Padding( + padding: const EdgeInsets.only(top: 20.0), + child: Text(AppLocalizations.of(context)!.unknownError, textAlign: TextAlign.center, style: cZeroContentStyle), + ), + ], + ), + ), + ); + } +} -- cgit v1.2.3