From cb9146c9ac81d681b39a155f2fee06772907eef6 Mon Sep 17 00:00:00 2001 From: venbaittech Date: Sat, 8 Feb 2025 12:26:05 +0530 Subject: [PATCH] UI changes done --- android/app/build.gradle | 4 +- assets/icons/misc/group.png | Bin 0 -> 1392 bytes assets/icons/misc/search.png | Bin 0 -> 669 bytes .../icons/misc_icon_asset_path.dart | 2 + lib/l10n/intl_ar.arb | 16 +- lib/l10n/intl_en.arb | 15 +- .../UAE_Numbers/uae_numbers.dart | 11 +- .../auth_verification/registration.dart | 30 +++- lib/presentation/Screens/profilepage.dart | 27 +-- .../drawer_routes/Drawer Items/feedback.dart | 36 ++-- .../Drawer Items/manage_users.dart | 165 ++++++++++++++---- .../drawer_routes/custom_drawer_routes.dart | 37 ++-- pubspec.lock | 52 +++--- pubspec.yaml | 6 +- 14 files changed, 283 insertions(+), 118 deletions(-) create mode 100644 assets/icons/misc/group.png create mode 100644 assets/icons/misc/search.png diff --git a/android/app/build.gradle b/android/app/build.gradle index 7798729d..6938a51f 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -15,12 +15,12 @@ if (localPropertiesFile.exists()) { def flutterVersionCode = localProperties.getProperty("flutter.versionCode") if (flutterVersionCode == null) { - flutterVersionCode = "10" + flutterVersionCode = "11" } def flutterVersionName = localProperties.getProperty("flutter.versionName") if (flutterVersionName == null) { - flutterVersionName = "1.0.9" + flutterVersionName = "1.0.10" } def keystorePropertiesFile = rootProject.file("key.properties") diff --git a/assets/icons/misc/group.png b/assets/icons/misc/group.png new file mode 100644 index 0000000000000000000000000000000000000000..e515f120d2aa37de416da00ee1e3c33cd149b2fa GIT binary patch literal 1392 zcmV-$1&{iPP)FIvcV}uxhJt{m2sp998hGwr01W`; z<>d45h!mVdYk&chu-60$mb{R{SI{bu6M`Cf{>XuvK>3mo!XNSR)P_I1U=VI$$Kh^2 zDn47kC+y^or=I&?00w~{5by&^4g+rVfP272bU5z`+9X)eGMu^3J~0W0>3`}Cht?4w zXp)3h5+G=bgw_%uXo7@R6CkKdLhA_-)FELl2oUI!ur>q;ib)7B7JX(1G{MYvnBhKx z>Oe&hSV45NmC-rzuf4@p6#wCb0Ft1tC-=&Z(zK|yHUZ46FJDekJXH|{$NmkJAwfL6 zV}Cf7Yw=%)uXhTS@mn5JApxxz0yfx(91jGr1ZejFxhVy=eb7MFAt1d#{CysBJsxsS zxliE{4}(XCr@jq{f)5W?g!p=&%GT#0_L8Z7lz_FG1$3|_05%+30${_jB>*-Y8&80? zBP8(rFAl5_%TTPf33&7Q<}_5~!3uHgU%x(c_ZwZo(jEeqq61hlI3Rin4MV#JaMV3u z_D(rGt*i&=Uy}yVFtiDH=RUvUw<~Blw$mVNIJN}9hGUHhpdc;(GkvI5El<#7B$_2p z*W-sIalzUWP*$_t+5p&a=m$go@PK{u4`u2~exC(+_11mXxGP&1+5|*#06Asq%HkQ< z?Q-~hX<8DN_7LD8=(0+ES=utK@dE80z)M@_{6s4RLl4izI*3wxEhkwjQzi~rfEnf2z zyF`7-em(JT9$iW|-VuruF)nDPKvCul1{TtohmozML7Zyq7S%U;2#D~SZ9FO(oVm~U-Yqb6a*q9t zCv;anJ77VzFeBbr0>t29Ms=3PzkRXqmHj*u;oT(xPm40fj3t1({@j3x4^gG@34{cG z8^?#8TMF;>0+WY8FDY1{4nY&yUVsSqWOXA65JLvB5sN&?YR*j-k-eBFSarPFcc(Ct z08DfI_z9}-P!kCBH7Setm_27I0i8^F0=1FKWBDwztsnvhLh=ZcG9vy9HNo-1)3kgy zW7JRrRFISvrL%!P(#@cDZb%tPfLLx!pOllg+*R<{jAF74mAwe3Sk0pu(5~HURc1fOWiLxYYdk>-ZCTo4p#v@# z?H-YabDfW@3hlmk_s{dXK;D)VY@b(qJn=LtVGEj8kY#@7DXyDr+7jhd9sdGQ?n>QC+E7FQ0000A(N@DY3jf0J0t zu9ZMYl;8w-ACVMk_era#T_dc)rA~q|)IxxwE@J}B-+-S+@#hRG0$qRp)!*5n>9WTL z4+Do)3Wk0*kG>9IQ-X`r{-FUlo6hD;at=soc>;qWD)p8-AExG64ZZj4PK1wle)0>5 zJ^^BeKnJ^V=h|iTTPL9+FJa?-A>s8=GyamUB^c^{mk1I$egS^esu1U)K4}w?wkMgq zi{d0-T%+WNFEg~xF{|oaup1wrv0aaY7qXppttkn3vTKK?*V;fKg1w_of(X}!Lo2Ft z5}0Y+oAJ}CaKhk~G`GfUFA;F;8)c8^3bur=CIe{^slG%&hQe|a#A?_Q_HxCZCA>)R z(7_yD0ZNf|Y=8oI7AWM)&Xx$qUQs>}Ptgu+iOVvzNUm}awBjTanX#T5E}2z90d!~y zmW86G6X()SKy_h5$RnM}d@t^doCKnOK1E7|?LR-hwKs4cjLH9JN2cdmbFZQa6cIPM zLe!F%pu*1C`Hftzb$YR z$N2bQEy0ZBAr;>v=NNNsD5Y$LFqhJYr~LsdXx~NRtY|YLAABh+BHw@=1iU!so&V?i z8ZFj}RU|73wt { child: TextField( decoration: InputDecoration( hintText: "Search", - prefixIcon: Icon( - Icons.search, - color: Color(0xFFAA8E83), + prefixIcon: Image.asset( + MiscIconAssetPath.search, + width: 20, + height: 20, ), border: InputBorder.none, contentPadding: @@ -381,12 +383,13 @@ class _CustomExpandableTileState extends State { duration: Duration(milliseconds: 300), curve: Curves.easeInOut, width: double.infinity, + color: Colors.white, height: widget.isExpanded ? myheight * 0.52 : 0, child: widget.isExpanded ? SingleChildScrollView( child: Container( decoration: BoxDecoration( - // color: Colors.white, + color: Colors.white, // borderRadius: BorderRadius.all(Radius.circular(20)) ), padding: const EdgeInsets.all(1), diff --git a/lib/presentation/Screens/auth_verification/registration.dart b/lib/presentation/Screens/auth_verification/registration.dart index cd1babd9..01389fc0 100644 --- a/lib/presentation/Screens/auth_verification/registration.dart +++ b/lib/presentation/Screens/auth_verification/registration.dart @@ -838,7 +838,7 @@ class _RegisterScreenState extends State { SizedBox(height: 10), Padding( padding: const EdgeInsets.only( - top: 1.0, bottom: 10, left: 25, right: 30), + top: 0, bottom: 10, left: 25, right: 30), child: Row( mainAxisAlignment: MainAxisAlignment.start, children: [ @@ -858,45 +858,57 @@ class _RegisterScreenState extends State { ), ), Expanded( + child: Padding( + padding: const EdgeInsets.only(top:11.0), child: Text.rich( TextSpan( text: AppLocalizations.of(context)!.agree, // text: 'I agree to ', + style: TextStyle( + color: Color(0xFF898C81), // Change to your desired color + ), children: [ TextSpan( text: AppLocalizations.of(context)! .terms_conditions, // text: 'Terms & Conditions', style: TextStyle( - fontWeight: FontWeight.bold, + fontWeight: FontWeight.w500, color: Color(0xFF985400), // Makes the text bold - decoration: - TextDecoration.underline, + // decoration: + // TextDecoration.underline, decorationColor: Color(0xFF985400), decorationThickness: 1), ), TextSpan( text: AppLocalizations.of(context)! - .t_and), + .t_and, + style: TextStyle( + color: Color(0xFF898C81), // Change to your desired color + ),), TextSpan( text: AppLocalizations.of(context)! .privacy_policy, style: TextStyle( - fontWeight: FontWeight.bold, + fontWeight: FontWeight.w500, fontSize: 14, fontFamily: 'Roboto', color: Color(0xFF985400), - decoration: - TextDecoration.underline, + // decoration: + // TextDecoration.underline, decorationColor: Color(0xFF648CBA), decorationThickness: 1), ), TextSpan( text: AppLocalizations.of(context)! - .conditions), + .conditions, + style: TextStyle( + color: Color(0xFF898C81), // Change to your desired color + ),), ], ), + ), ), ), ], diff --git a/lib/presentation/Screens/profilepage.dart b/lib/presentation/Screens/profilepage.dart index 6b43a080..51d6605a 100644 --- a/lib/presentation/Screens/profilepage.dart +++ b/lib/presentation/Screens/profilepage.dart @@ -632,7 +632,7 @@ class _ProfileScreenState extends State { }, side: BorderSide( color: - showError ? Color(0xFFb22222) : Color(0xFF92722A), + showError ? Color(0xFFb22222) : Color(0xFF7296BE), width: 1, ), ), @@ -648,18 +648,19 @@ class _ProfileScreenState extends State { TextSpan( text: AppLocalizations.of( context)! - .agree, style: TextStyle(color: Colors.black), + .agree, + style: TextStyle(color: Color(0xFF898C81)), children: [ TextSpan( text: AppLocalizations.of( context, )! .terms_conditions, style: TextStyle( - color: Color(0xFF648CBA), - decoration: TextDecoration.underline, + color: Color(0xFF985400), + // decoration: TextDecoration.underline, fontWeight: FontWeight - .bold, // Makes the text bold - decorationColor: Color(0xFF648CBA), + .w600, // Makes the text bold + decorationColor: Color(0xFF985400), decorationThickness: 1, ), recognizer: TapGestureRecognizer() @@ -670,17 +671,17 @@ class _ProfileScreenState extends State { TextSpan( text: AppLocalizations.of( context, - )!.t_and, style: TextStyle(color: Colors.black), + )!.t_and, + style: TextStyle(color: Color(0xFF898C81)), ), TextSpan( text: AppLocalizations.of( context, )!.privacy_policy, style: TextStyle( - color: Color(0xFF648CBA), - decoration: TextDecoration.underline, - fontWeight: FontWeight - .bold, // Makes the text bold - decorationColor: Color(0xFF648CBA), + color: Color(0xFF985400), + // decoration: TextDecoration.underline, + fontWeight: FontWeight.w600, // Makes the text bold + decorationColor: Color(0xFF985400), decorationThickness: 1, ), recognizer: TapGestureRecognizer() @@ -693,7 +694,7 @@ class _ProfileScreenState extends State { context, )! .conditions, - style: TextStyle(color: Colors.black), + style: TextStyle(color: Color(0xFF898C81)), ), ], ), diff --git a/lib/presentation/routes/drawer_routes/Drawer Items/feedback.dart b/lib/presentation/routes/drawer_routes/Drawer Items/feedback.dart index 83beb9bc..d102df56 100644 --- a/lib/presentation/routes/drawer_routes/Drawer Items/feedback.dart +++ b/lib/presentation/routes/drawer_routes/Drawer Items/feedback.dart @@ -544,15 +544,14 @@ class _FeedbackFormState extends State // Icon(Icons.thumb_up, size: 80, color: Color(0xFF7DAFBC)), const SizedBox(height: 20), - Text( - // "Thank you", - 'Thank you $userName !', + Text( + '${AppLocalizations.of(context)!.thankYou} $userName !', style: const TextStyle(fontSize: 24, fontWeight: FontWeight.bold), ), const SizedBox(height: 15), - const Text( - "For your valuable feedback, we truly \n appreciate your input!", + Text( +AppLocalizations.of(context)!.feedback_message, style: TextStyle(fontSize: 16, color: Color(0xFF898C81)), textAlign: TextAlign.center, ), @@ -603,9 +602,9 @@ class _FeedbackFormState extends State // Icon(Icons.error, size: 80, color: Colors.red), const SizedBox(height: 20), - const Text( - "Failed to Share Feedback", - style: TextStyle( + Text( + AppLocalizations.of(context)!.failed_to_sharefeedback, + style: TextStyle( fontSize: 24, fontWeight: FontWeight.bold, color: Color(0xFF414042)), @@ -752,8 +751,12 @@ class _FeedbackFormState extends State if (_hasError) { ScaffoldMessenger.of(context).showSnackBar( - const SnackBar( - content: Text("Please correct the errors before submitting.")), + SnackBar( + content: Text( + AppLocalizations.of(context)!.formError, + // "Please correct the errors before submitting." + ) + ), ); return; } @@ -783,8 +786,10 @@ class _FeedbackFormState extends State // await sendFeedbackEmail(feedbackData, createdTime); await _removeFeedbackText(); ScaffoldMessenger.of(context).showSnackBar( - const SnackBar(content: Text("Feedback submitted successfully!")), - ); + SnackBar( + content: Text(AppLocalizations.of(context)!.feedback_submitted), + ), + ); setState(() { _isFeedbackSubmitted = true; _isFeedbackFailed = false; @@ -793,7 +798,12 @@ class _FeedbackFormState extends State } } catch (e) { ScaffoldMessenger.of(context).showSnackBar( - SnackBar(content: Text("Failed to submit feedback: $e")), + SnackBar(content: Text( + // "Failed to submit feedback: $e" + AppLocalizations.of(context)!.feedback_failed(e.toString()), + ) + + ), ); setState(() { _isFeedbackFailed = true; // Update state to show failure message diff --git a/lib/presentation/routes/drawer_routes/Drawer Items/manage_users.dart b/lib/presentation/routes/drawer_routes/Drawer Items/manage_users.dart index 37655d7c..acea3a4d 100644 --- a/lib/presentation/routes/drawer_routes/Drawer Items/manage_users.dart +++ b/lib/presentation/routes/drawer_routes/Drawer Items/manage_users.dart @@ -2,6 +2,8 @@ import 'package:flutter/material.dart'; import 'package:go_router/go_router.dart'; import 'package:intl/intl.dart'; import 'package:pocketbase/pocketbase.dart'; +import 'package:uae_stat/infrastructure/services/img_asset_paths/icons/misc_icon_asset_path.dart'; + import 'package:uae_stat/presentation/components/my_bottom_nav_bar.dart'; import 'package:uae_stat/presentation/components/my_drawer.dart'; import 'package:uae_stat/presentation/routes/drawer_routes/custom_drawer_routes.dart'; @@ -131,31 +133,49 @@ class _ManageUserRouterState extends State { SizedBox( height: myheight / 30, ), - Text( - // 'Are you sure you want to change \n the status to $newStatus?', - AppLocalizations.of(context)!.approve_msg(newStatus), - style: TextStyle(fontSize: 15), - textAlign: TextAlign.center, - ), + Text.rich( + TextSpan( + text: 'Are you sure you want to change the status to ', + style: TextStyle( + fontSize: 18, + color: Color(0xFF898C81), + ), + children: [ + TextSpan( + text: newStatus, + style: TextStyle( + fontWeight: FontWeight.bold, // Makes newStatus bold + fontSize: 18, + color: Color(0xFF898C81), + ), + ), + TextSpan(text: '?'), + ], + ), + textAlign: TextAlign.center, // Centers the text + ) ], ), ), - Positioned( - right: 0, - top: 0, - child: IconButton( - icon: Icon(Icons.close), - onPressed: () { - Navigator.of(context).pop(); // Close the dialog - }, - ), - ), + // Positioned( + // right: 0, + // top: 0, + // child: IconButton( + // icon: Icon(Icons.close), + // onPressed: () { + // Navigator.of(context).pop(); // Close the dialog + // }, + // ), + // ), ], ), actions: [ Row( mainAxisAlignment: MainAxisAlignment.spaceAround, children: [ + SizedBox( + width: 100, // Set the desired width + child: TextButton( onPressed: () { Navigator.of(context) @@ -167,13 +187,20 @@ class _ManageUserRouterState extends State { 10.0), // Adjust the radius as needed ), side: BorderSide( - color: Colors.blue, // Set the outline color - width: 2.0, // Set the border width + color: Color(0xFFAA8E83), // Set the outline color + width: 1, // Set the border width ), ), - child: Text(AppLocalizations.of(context)!.no), + child: Text(AppLocalizations.of(context)!.no, + style: TextStyle(color: Color(0xFFAA8E83), + fontSize: 16, + ),), ), - TextButton( + ), + SizedBox( + width: 100, // Set the desired width + child: + TextButton( onPressed: () async { try { // Update status in PocketBase @@ -202,7 +229,7 @@ class _ManageUserRouterState extends State { Navigator.of(context).pop(); // Close dialog }, style: TextButton.styleFrom( - backgroundColor: Colors.blue, // Set background color + backgroundColor: Color(0xFFAA8E83), // Set background color foregroundColor: Colors.white, shape: RoundedRectangleBorder( borderRadius: @@ -212,9 +239,10 @@ class _ManageUserRouterState extends State { child: Text( // 'Yes', AppLocalizations.of(context)!.yes, - style: TextStyle(color: Colors.white), + style: TextStyle(color: Colors.white, + fontSize: 16), ), - ), + ),), ], ) ], @@ -248,18 +276,83 @@ class _ManageUserRouterState extends State { padding: const EdgeInsets.only(left: 10.0, right: 10.0, top: 3.0), child: Column( children: [ - TextField( + // TextField( + // decoration: InputDecoration( + // prefixIcon: const Icon(Icons.search), + // hintText: 'Search', + // border: OutlineInputBorder( + // borderRadius: BorderRadius.all(Radius.circular(20)), + // ), + // ), + // onChanged: filterUsers, + // ), + Container( + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(30.0), + border: Border.all(width: 2, color: Color(0xFFAA8E83)), + ), + child: TextField( decoration: InputDecoration( - prefixIcon: const Icon(Icons.search), - hintText: 'Search', - border: OutlineInputBorder( - borderRadius: BorderRadius.all(Radius.circular(20)), + hintText: AppLocalizations.of(context)!.search, + prefixIcon: Image.asset( + MiscIconAssetPath.search, + width: 20, + height: 20, ), + // ,prefixIcon: Icon( + // Icons.search, + // color: Color(0xFFAA8E83), + // ), + border: InputBorder.none, + contentPadding: + EdgeInsets.symmetric(vertical: 15.0, horizontal: 20.0), ), onChanged: filterUsers, ), - SizedBox(height: myheight / 40), - SingleChildScrollView( + ), + SizedBox(height: myheight / 40), + filteredUserData.isEmpty + ? Center( + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + SizedBox(height: myheight/5), + + // Icon(Icons.search, + // size: 60, color: Colors.grey), + Image.asset( + MiscIconAssetPath.group, + width: 60, + height: 60, + ), + + SizedBox(height: 15), + // Space between icon and text + Text( + "No results found", + style: TextStyle( + fontSize: 24, + fontWeight: FontWeight.bold, + color: Colors.grey[700], + ), + ), + + SizedBox(height: 12), // Space between texts + FittedBox( + child: Text( + "We couldn't find anything matching your search.", + style: TextStyle( + fontSize: 18, color: Color(0xFF898C81)), + textAlign: TextAlign.center, + ),), + ], + ), + ), + ) + : SingleChildScrollView( scrollDirection: Axis.horizontal, child: ConstrainedBox( constraints: BoxConstraints( @@ -320,7 +413,8 @@ class _ManageUserRouterState extends State { ? Text( 'No results found', style: TextStyle( - fontStyle: FontStyle.italic), + fontStyle: + FontStyle.italic), ) : const Text( ''), // Empty cells for other columns @@ -338,14 +432,15 @@ class _ManageUserRouterState extends State { DataCell( DropdownButton( value: user.status, - items: - statusOptions.entries.map((status) { + items: statusOptions.entries + .map((status) { return DropdownMenuItem( value: status.key, child: Text( status.value, style: TextStyle( - color: getStatusColor(status.key), + color: getStatusColor( + status.key), ), ), ); @@ -366,9 +461,9 @@ class _ManageUserRouterState extends State { ), ), ], - ), ), ), + ), ), ); } diff --git a/lib/presentation/routes/drawer_routes/custom_drawer_routes.dart b/lib/presentation/routes/drawer_routes/custom_drawer_routes.dart index 9f95fbbf..3faf6977 100644 --- a/lib/presentation/routes/drawer_routes/custom_drawer_routes.dart +++ b/lib/presentation/routes/drawer_routes/custom_drawer_routes.dart @@ -1,5 +1,6 @@ import 'dart:async'; import 'dart:convert'; +import 'dart:math'; import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; @@ -180,8 +181,8 @@ class _BaseScaffoldState extends ConsumerState { backgroundColor: Colors.transparent, elevation: 0, ), - child: const Text( - 'Skip', + child: Text( + AppLocalizations.of(context)!.skip, style: TextStyle( color: Colors.white, fontSize: 14, @@ -295,8 +296,9 @@ class _BaseScaffoldState extends ConsumerState { backgroundColor: Colors.transparent, elevation: 0, ), - child: const Text( - 'Skip', + child: Text( + // 'Skip', + AppLocalizations.of(context)!.skip, style: TextStyle( color: Colors.white, fontSize: 14, @@ -429,8 +431,9 @@ class _BaseScaffoldState extends ConsumerState { backgroundColor: Colors.transparent, elevation: 0, ), - child: const Text( - 'Skip', + child: Text( + // 'Skip', + AppLocalizations.of(context)!.skip, style: TextStyle( color: Colors.white, fontSize: 14, @@ -486,8 +489,8 @@ class _BaseScaffoldState extends ConsumerState { backgroundColor: Colors.white, elevation: 0, ), - child: const Text( - 'Got it', + child: Text( + AppLocalizations.of(context)!.got_it, style: TextStyle( color: Color(0xFF7DAFBC), fontSize: 14, @@ -624,7 +627,12 @@ class _BaseScaffoldState extends ConsumerState { return Scaffold( backgroundColor: Colors.white, appBar: AppBar( - title: widget.title, + // title: widget.title, + title: Align( + alignment: Alignment.centerLeft, // Aligns the title to the left + child: widget.title, + ), + titleSpacing: 0, backgroundColor: Colors.white, leadingWidth: widget.showBackButton ? mywidth * 0.25 : null, bottom: widget.showDivider @@ -634,8 +642,7 @@ class _BaseScaffoldState extends ConsumerState { color: widget.dividerColor, // Line color height: 1, // Line thickness ), - ) - : null, + ): null, actions: widget.actions ?? [ // IconButton( @@ -668,6 +675,7 @@ class _BaseScaffoldState extends ConsumerState { ), ), Positioned( + top: 5, right: 10, child: Builder( builder: (BuildContext context) { @@ -686,9 +694,11 @@ class _BaseScaffoldState extends ConsumerState { ), ), drawer: Drawer( + backgroundColor: Colors.white, child: Column(children: [ Expanded( child: ListView( + children: [ DrawerHeader( child: Column( @@ -786,7 +796,10 @@ class _BaseScaffoldState extends ConsumerState { ), ListTile( leading: Icon(Icons.bookmarks_outlined), - title: const Text('Bookmark'), + // title: const Text('Bookmark'), + title: Text( + AppLocalizations.of(context)!.bookmark_title, + ), onTap: () => context.go('/bookmark'), ), ListTile( diff --git a/pubspec.lock b/pubspec.lock index d0d69382..c8b9ce43 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -5,23 +5,23 @@ packages: dependency: transitive description: name: _fe_analyzer_shared - sha256: f256b0c0ba6c7577c15e2e4e114755640a875e885099367bf6e012b19314c834 + sha256: "16e298750b6d0af7ce8a3ba7c18c69c3785d11b15ec83f6dcd0ad2a0009b3cab" url: "https://pub.dev" source: hosted - version: "72.0.0" + version: "76.0.0" _macros: dependency: transitive description: dart source: sdk - version: "0.3.2" + version: "0.3.3" analyzer: dependency: transitive description: name: analyzer - sha256: b652861553cd3990d8ed361f7979dc6d7053a9ac8843fa73820ab68ce5410139 + sha256: "1f14db053a8c23e260789e9b0980fa27f2680dd640932cae5e1137cce0e46e1e" url: "https://pub.dev" source: hosted - version: "6.7.0" + version: "6.11.0" analyzer_plugin: dependency: transitive description: @@ -186,10 +186,10 @@ packages: dependency: transitive description: name: collection - sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a + sha256: a1ace0a119f20aabc852d165077c036cd864315bd99b7eaa10a60100341941bf url: "https://pub.dev" source: hosted - version: "1.18.0" + version: "1.19.0" connectivity_plus: dependency: "direct main" description: @@ -282,10 +282,10 @@ packages: dependency: transitive description: name: custom_lint_visitor - sha256: "8aeb3b6ae2bb765e7716b93d1d10e8356d04e0ff6d7592de6ee04e0dd7d6587d" + sha256: bfe9b7a09c4775a587b58d10ebb871d4fe618237639b1e84d5ec62d7dfef25f9 url: "https://pub.dev" source: hosted - version: "1.0.0+6.7.0" + version: "1.0.0+6.11.0" dart_style: dependency: transitive description: @@ -433,10 +433,10 @@ packages: dependency: "direct main" description: name: fl_chart - sha256: "74959b99b92b9eebeed1a4049426fd67c4abc3c5a0f4d12e2877097d6a11ae08" + sha256: "5276944c6ffc975ae796569a826c38a62d2abcf264e26b88fa6f482e107f4237" url: "https://pub.dev" source: hosted - version: "0.69.2" + version: "0.70.2" flutter: dependency: "direct main" description: flutter @@ -845,18 +845,18 @@ packages: dependency: transitive description: name: leak_tracker - sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05" + sha256: "7bb2830ebd849694d1ec25bf1f44582d6ac531a57a365a803a6034ff751d2d06" url: "https://pub.dev" source: hosted - version: "10.0.5" + version: "10.0.7" leak_tracker_flutter_testing: dependency: transitive description: name: leak_tracker_flutter_testing - sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806" + sha256: "9491a714cca3667b60b5c420da8217e6de0d1ba7a5ec322fab01758f6998f379" url: "https://pub.dev" source: hosted - version: "3.0.5" + version: "3.0.8" leak_tracker_testing: dependency: transitive description: @@ -885,10 +885,10 @@ packages: dependency: transitive description: name: macros - sha256: "0acaed5d6b7eab89f63350bccd82119e6c602df0f391260d0e32b5e23db79536" + sha256: "1d9e801cd66f7ea3663c45fc708450db1fa57f988142c64289142c9b7ee80656" url: "https://pub.dev" source: hosted - version: "0.1.2-main.4" + version: "0.1.3-main.0" mailer: dependency: "direct main" description: @@ -1276,7 +1276,7 @@ packages: dependency: transitive description: flutter source: sdk - version: "0.0.99" + version: "0.0.0" smart_api_client: dependency: "direct main" description: @@ -1320,10 +1320,10 @@ packages: dependency: transitive description: name: stack_trace - sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" + sha256: "9f47fd3630d76be3ab26f0ee06d213679aa425996925ff3feffdec504931c377" url: "https://pub.dev" source: hosted - version: "1.11.1" + version: "1.12.0" state_notifier: dependency: transitive description: @@ -1352,10 +1352,10 @@ packages: dependency: transitive description: name: string_scanner - sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + sha256: "688af5ed3402a4bde5b3a6c15fd768dbf2621a614950b17f04626c431ab3c4c3" url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.3.0" syncfusion_flutter_charts: dependency: "direct main" description: @@ -1384,10 +1384,10 @@ packages: dependency: transitive description: name: test_api - sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb" + sha256: "664d3a9a64782fcdeb83ce9c6b39e78fd2971d4e37827b9b06c3aa1edc5e760c" url: "https://pub.dev" source: hosted - version: "0.7.2" + version: "0.7.3" the_validator: dependency: "direct main" description: @@ -1576,10 +1576,10 @@ packages: dependency: transitive description: name: vm_service - sha256: "5c5f338a667b4c644744b661f309fb8080bb94b18a7e91ef1dbd343bed00ed6d" + sha256: f6be3ed8bd01289b34d679c2b62226f63c0e69f9fd2e50a6b3c1c729a961041b url: "https://pub.dev" source: hosted - version: "14.2.5" + version: "14.3.0" watcher: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 205d45c1..86f35768 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,7 +1,7 @@ name: uae_stat description: "View statistics about the UAE from the Federal Center for Statistics and Competitiveness." publish_to: "none" -version: 1.0.9+10 +version: 1.0.10+11 environment: sdk: ">=3.2.3 <4.0.0" @@ -21,7 +21,7 @@ dependencies: riverpod_annotation: ^2.3.3 cupertino_icons: ^1.0.6 - fl_chart: ^0.69.2 + fl_chart: ^0.70.2 iconify_design: ^1.0.1 marquee: ^2.2.3 url_launcher: ^6.3.1 @@ -130,6 +130,8 @@ flutter: - assets/feedback/thumbfb.png - assets/user_guide/ - assets/app_tour/ + - assets/icons/misc/group.png + - assets/icons/misc/search.png fonts: - family: Segoe