From c26303e8792fc4068132271078f37db6c97e6273 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 4 Dec 2021 20:03:06 +0330 Subject: [PATCH 001/273] initial on dev (readme updated) --- README.md | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) diff --git a/README.md b/README.md index ec1c2ed..7137d8f 100644 --- a/README.md +++ b/README.md @@ -1,16 +1,3 @@ -# didvan +# Didvan -A new Flutter project. -## Getting Started - -This project is a starting point for a Flutter application. - -A few resources to get you started if this is your first Flutter project: - -- [Lab: Write your first Flutter app](https://flutter.dev/docs/get-started/codelab) -- [Cookbook: Useful Flutter samples](https://flutter.dev/docs/cookbook) - -For help getting started with Flutter, view our -[online documentation](https://flutter.dev/docs), which offers tutorials, -samples, guidance on mobile development, and a full API reference. From e152b77f00993212469ddf2a1476fe82adfc663e Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 4 Dec 2021 20:51:20 +0330 Subject: [PATCH 002/273] basic structures (routing) --- lib/routes/route_generator.dart | 27 +++++++++++++++++++++++++++ lib/routes/routes.dart | 6 ++++++ pubspec.lock | 27 +++++++++++++++++++++++++++ pubspec.yaml | 3 +++ 4 files changed, 63 insertions(+) create mode 100644 lib/routes/route_generator.dart create mode 100644 lib/routes/routes.dart diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart new file mode 100644 index 0000000..18b2839 --- /dev/null +++ b/lib/routes/route_generator.dart @@ -0,0 +1,27 @@ +import 'package:flutter/material.dart'; + +class RouteGenerator { + static Route generateRoute(RouteSettings settings) { + switch (settings.name) { + default: + return _errorRoute(); + } + } + + static Route _errorRoute() { + return MaterialPageRoute(builder: (_) { + return Scaffold( + appBar: AppBar( + title: const Text('Error'), + ), + body: const Center( + child: Text('ERROR'), + ), + ); + }); + } + + static materialPageRouteGenerator(pageWidget) => MaterialPageRoute( + builder: (context) => pageWidget, + ); +} diff --git a/lib/routes/routes.dart b/lib/routes/routes.dart new file mode 100644 index 0000000..31a76fe --- /dev/null +++ b/lib/routes/routes.dart @@ -0,0 +1,6 @@ +class Routes { + static const String splash = '/'; + static const String home = '/home'; + static const String authenticaion = '/authentication'; + static const String profile = '/profile'; +} diff --git a/pubspec.lock b/pubspec.lock index 18fcc0f..4b8b781 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -69,11 +69,23 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.0.4" + flutter_localizations: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" flutter_test: dependency: "direct dev" description: flutter source: sdk version: "0.0.0" + intl: + dependency: transitive + description: + name: intl + url: "https://pub.dartlang.org" + source: hosted + version: "0.17.0" lints: dependency: transitive description: @@ -95,6 +107,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.7.0" + nested: + dependency: transitive + description: + name: nested + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.0" path: dependency: transitive description: @@ -102,6 +121,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.8.0" + provider: + dependency: "direct main" + description: + name: provider + url: "https://pub.dartlang.org" + source: hosted + version: "6.0.1" sky_engine: dependency: transitive description: flutter @@ -165,3 +191,4 @@ packages: version: "2.1.0" sdks: dart: ">=2.12.0 <3.0.0" + flutter: ">=1.16.0" diff --git a/pubspec.yaml b/pubspec.yaml index 18c9bf7..407c7b7 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -29,11 +29,14 @@ environment: dependencies: flutter: sdk: flutter + flutter_localizations: + sdk: flutter # The following adds the Cupertino Icons font to your application. # Use with the CupertinoIcons class for iOS style icons. cupertino_icons: ^1.0.2 + provider: ^6.0.1 dev_dependencies: flutter_test: From 769d76d26c419518447c295d9b02f80eb15e3eaa Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 4 Dec 2021 20:58:57 +0330 Subject: [PATCH 003/273] basic configurations (global providers and consts) --- lib/config/design_config.dart | 1 + lib/constants/app_strings.dart | 1 + lib/models/enums.dart | 5 +++++ lib/providers/core_provider.dart | 13 +++++++++++++ lib/providers/user_provider.dart | 3 +++ 5 files changed, 23 insertions(+) create mode 100644 lib/config/design_config.dart create mode 100644 lib/constants/app_strings.dart create mode 100644 lib/models/enums.dart create mode 100644 lib/providers/core_provider.dart create mode 100644 lib/providers/user_provider.dart diff --git a/lib/config/design_config.dart b/lib/config/design_config.dart new file mode 100644 index 0000000..ebfbcd1 --- /dev/null +++ b/lib/config/design_config.dart @@ -0,0 +1 @@ +class DesignConfig {} diff --git a/lib/constants/app_strings.dart b/lib/constants/app_strings.dart new file mode 100644 index 0000000..e8f4321 --- /dev/null +++ b/lib/constants/app_strings.dart @@ -0,0 +1 @@ +class AppStrings {} diff --git a/lib/models/enums.dart b/lib/models/enums.dart new file mode 100644 index 0000000..e10ad91 --- /dev/null +++ b/lib/models/enums.dart @@ -0,0 +1,5 @@ +enum AppState { + idle, + busy, + failed, +} diff --git a/lib/providers/core_provider.dart b/lib/providers/core_provider.dart new file mode 100644 index 0000000..3238711 --- /dev/null +++ b/lib/providers/core_provider.dart @@ -0,0 +1,13 @@ +import 'package:didvan/models/enums.dart'; +import 'package:flutter/cupertino.dart'; + +class CoreProvier with ChangeNotifier { + AppState _appState = AppState.idle; + + set appState(AppState newState) { + _appState = newState; + notifyListeners(); + } + + AppState get appState => _appState; +} diff --git a/lib/providers/user_provider.dart b/lib/providers/user_provider.dart new file mode 100644 index 0000000..e3efcab --- /dev/null +++ b/lib/providers/user_provider.dart @@ -0,0 +1,3 @@ +import 'package:didvan/providers/core_provider.dart'; + +class UserProvider extends CoreProvier {} From 663e38178c8c796dfdc84947df279c030d755778 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 5 Dec 2021 12:52:04 +0330 Subject: [PATCH 004/273] static splash page added --- lib/assets/logo/logo-t-d.png | Bin 0 -> 278938 bytes lib/config/design_config.dart | 27 ++++++++++++++++++++++++++- lib/constants/assets.dart | 4 ++++ lib/main.dart | 28 ++++++++++++++++++++++------ lib/pages/splash/splash.dart | 21 +++++++++++++++++++++ lib/pages/splash/splash_state.dart | 3 +++ lib/routes/route_generator.dart | 13 ++++++++++++- pubspec.yaml | 7 ++++--- 8 files changed, 92 insertions(+), 11 deletions(-) create mode 100644 lib/assets/logo/logo-t-d.png create mode 100644 lib/constants/assets.dart create mode 100644 lib/pages/splash/splash.dart create mode 100644 lib/pages/splash/splash_state.dart diff --git a/lib/assets/logo/logo-t-d.png b/lib/assets/logo/logo-t-d.png new file mode 100644 index 0000000000000000000000000000000000000000..0be1b867ce07ed331b50bb00e92c65366e152454 GIT binary patch literal 278938 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

)awD&<@aH5^=)2n6?qrk-4z< zNu7G3bOMl^)|Wx(Xb{{XTDOmdam&c zyK|FdHEPu`3}f)xxVk6r`qNUM@!owcQAO{^1bA&ri-6cvRF^IwGNhxU`{8bVAgKR? zh*Z~e1T1PC(++o8dOiBAOyCu_S4J>wcmtjBFIg#>HAA7o$yH11h)(6{hp_IG`j$7a zw7ljRqP?hT6g0tCXpLfgnL$J?>ll3gmy;WF-DI^7J;EDaX**?2JdwrgDezq~@r9KR zUo_I?G(Kb+4Whr&wAP3+-aK=US&R;EupIM9u_ruh{M?H8VA}$=t!e48by>9iC1!KC z+}q*ganS#o=mZ^KJnL?<>mL1n%-=u4@6rEmaplFfG?Q7I197Z|KWNkI)lg-J7`MbI zqTnZTCPLGMY|p3<|$cgP)pOmBdA7%S$ni)i7@s6%~zER1lCX{z_EK zp4$vYAP|B%qIb8D#!~O8DLaF5q~{?@fS_OI+3HP^p;OXXm2l?!$uF&jHHWdC0~B36 zZYO^cF-e7o2d%Kbe?K~Blyo>WUypT!Z8a+Sz<1pV{0%LgT6~EB3r|_+Z6H;PM~1>& z(<+b2s%gW*(63Ke=%MAfUDJpMBUmvOHB)!ob4i5ny&Bm{qlH9lw3|OOdE(*=ch-?% zUrblWiIbicc)O>$_pGZ;l{z#cgL%U4S^Ex8^0AF^`xEm<`vT6p4nkQZ=>yKTOM&tI zq<3YK0qlIU&`x8Z|0H)i<8v~=8=mU$M)3B;KJN98OvKHVFc{>C{NB2jqj>(vnK2Uh zG@82gA+|m74!>(BATkS{hkWup~sty+`v;9~$z{c7N_v3MjPIsE1|F9shGQrf; zixctc3LJClKkFR%r$S8YXcJ+Ki%O=N->7n^1r5=F6fgK>i@Y? z&FOT%AU}U}#4He{t}Z2yU1!y~HZUN!o*9oLhImTP3x4h2=N5BkxA;`!GKBPSrM0u= zJBSj8cSRl+Ru0d}IgEITczaXp>j9_kZQ15=8l7cJ#+4QjR0y?kN_5B39oADA?!lQ^ z6%ZDaLc;aqy$wme_>ySvYEJbLlyTb0k;+;ZsFoWqCe?uzHeZi>bJ_dYJGb>Li2OT? zZr;%5CM?i#53bou#hwP9Vddw$BF>AvSZ=`k&OV*J*e)|H3S(lL=KD(T+z9kxL75t= z52*C0cHicWAsLctR}Ibg^G4QEHpFV*viRN(H_xxDnoYeN^8EJgTc}=9PJwF~R&S%!PNrQY}_DxUh66oZq?{wI^k`$*`+);#8u>g3a)yVyz} zk&*Y0c}%PGHX3Jgh+q4ah6jEK6@N&?*)(~1gpKHjNCvivp3W>&KiU}7C=%WMd=__B z)z0&|@QaVVxRUhMR#5;6C!@u29o1iXw4}Iv6Qa>ceceL2cyI#6$rAAm`q$XMrNhzK zhC28WZz%(UyYa%BcSBpl)Hh3Ubm*-u(k;7F;W6g9Y@JBxP!T}vZ{aA zAnVX|!!os-aUL|5>|#l{dzQktGW0i?v{*5JDD-8-IigK#d?re-+GbxpPi|NiX49{P z%aObMQwAze-RtFaEmAeVk*e~GgKd%ut!Mp@K`*}UW7fm*To0$EUmK!)E6~}XrB*mi zwi10xf!>bIxWVz;P2#S#Bv@K7Z>uY70K^{R+h|*IF-EmGvy$?%2zBe=vDPmO45nLm ztWPR*e!vT>!xuv`M|b#x@suunKcFDN(3D^*&3erK%69jg`l+py)Cy(QoWUS)1v3c= z$q1m!fUvu%jCy+uhKgfk5A|#(vLE>h&0dTe!{K*i9hc)`DxOTOS2?MvugQ0d70RC1 zxIkWfOx46XzXlU+BK5Of@@44hTN~KpKlPJ;WmK`l6kcuAUaAZ7H#6%kkM4Tprv%@G z?Bn?UxSH?*VWA0mkR1_8z?=YxZ?`QL<{uH^tkNgg)7>_S4fxmQk4Ct>rXN>1t=-g6 z$U1oU5c3B3PhlT-{1&pTkW2T*I5DL%*x!q03cPOFA=Xsfu-X<#@9#IfDchNtXPe{= ztBVyzP(*`MXi@M!EWOy1ZZ)Eh3zg&h`E^ewdw5eVp#OcQTHo(yUM={6cmZR|83WI9 zI(;_9$UG5?x|0!lm<6R6?)#US474j;`{Ax}VCJVj#~)c)(|eJAQqNtK%E{Y!L_0Mn z!Bbd93KF zcGqJ;G>dBG3{=3lV&-t_v}p0Q0uWFG>7>&ezSjEce0byMt+KU(_1;7$VOBN$__O)a z+gk<>`Lq|*Me(8coEJCL52AuT7s>1ylmVHOyPP&9_s~n_bbZ-0UPMN$?Y12#*ACNl zg|_%|_Ov}00uN^x z#}fnnh+r+mwZPHpWAX}h2onG9eb*!ElZoCY`{n$o$0^-`t{TRHO#W4j@>ldjZHEN~ zdSy}R6nxbyOL zR(f{cD$3F|aAje)bbRbJFL9Iwn~kU`WdE`rr4pr zxH|CHvY1rHB80#y`j>3{dzq!uU97|BDv;?{iV58!6*Z!+XR-zdX*F}lRMhC>r#98z zIk2!khe!nJ8sh^>eEH_e2XKR zGaVD;bM)c@Jb#?Xq^US8P#dhFAoW&c95V4hx|haIe>@MGNCT2mG@EQPtF)s8XAW;i ztK-EUK9LFDG1f(U?r1?MP%yOJ+iE_bsoEw;o!#N)-swI?FTgqx%8|9>1sN&h#A zJ!Ext+&4fvnh+RekMy@!1#D{iKIcO;+SA*P9&aZxM?$Pb{8~cEBe<1Lk%^5lV<*d< z=NqGZtK2o}QZH94<7_vaWdzEe7k$1mf2uaSBz=PyP{D2d>TZu|mcq-oN-$-3J=yL2 zEoH86^}5NwF3zPjSOsnVgv9oSx>EbT5%9u(c*|SF%rnz7O}J_&msRI=ek+vkv@!M3 zNxP&hujlhG{I`wmREzMSWx(zacRX2C%44xmu(_66WK;8ClYdp1e!2{FeKbtXDf?Gc z=G7S9?@CCXIKo^c!f`ZcY-u&oD_y`)<4_Lbc&xXn66vfGc7Q4p@+SyS-2d7buHb(L zx4eJwUBtufSuxL3KAah*B)X)VZ$M9-^`IsDfleViTa-4jlXP4ttcY*i9;o^EeVF8s zKn_)`&DIX!rFmTf>5rN;ty&!80#td30^ZhrUQKsH66~6MyZ2XgR>O>|Y z8n%9f!aYGZk>!iT2b)rsS`GIJs?Ky%i8_7duDI9FQO&M<|7MEQrZ#tidB5Np^b(yE zk%d&nbVX_W6BF7YbadM@KDFrH`8%Z5Ho+6Wi&*5&zWU@R9q+{yyBs+=Nc!@*Oqo&n zRKPILGP(@V=3mMX9p+Os^;w;^RLehQ6J*6g6^_Yfmn@%43MZ$eP0l!`&eY@^x2euo{Ktj z?~-=!I&B*g+*U#=^>dE&6w$r*Yphd_W%JKe2~ z5!zw!iru@bzt|5F_L-mfw1Al)we6x?5m!{<&jd;J=nCF?1{PB{75rAS5iQM_l78iK zDnrMzia(d0k-_csMJC)OH#6m2#n0f<7^rBo(-Cijnw`|SVoa%Z47WQo!lRW9KWA9S zb~|G5RMlPB#Ym=|bjcvZfmPp)4fAAsyFu+IoHoqvzE-jk8A{!%Y}3>!*R1LRrhX0R}Cqg5GATOnx0&~E#=(LSEUp#;pxK?>B!dZoAP*l{e)yyaJJK`?a&Z5@BVoD zcdDtAq+&~l-h9kjdAjpUTF$qcO1mBblT>b{g!9`zdy%ALvJQHu&xfY4I~L8NGt-&U zvBpJ)_foB&`8F~tZs*z3ufXv8?c*^nM3OTcWlSjODayq-UTCvTP-YY;m(s%tL5zzm zV8}{M<=_KucgV3bHU8nKh>n04dnm$munv$ZvS)=dl2%}a|0uEoM+M0%$cTMv6=SMb zDGN5NX=R5e)&>qRl}OajdtAE^tdf#Yq$=yQd1@`rq4_9J?}m8CH$b_22Tv+|?v^hj z5M4Srlzw(yCK)TJ)B7m>CEwuL&hz&iwwVlueAcH67s?6hs>HLe1)X;rj^_@>_ShImv$~lstm>hiUv8OOi7CIRtjZ;=jW;prdiiaVp2V_4_9uxsmS#sBL8)n z0}4?^6kr$)7Dq^JNqWyG9s-`U0>%a~+5QY+J-59ivuCYk`Oh^}OHiTO<3gtezlaX1 zv!9-%c-A+5bbs7ZX@Va^u`f$$TkI*WDz#@6)fqfYbuEShgY_)J>;KGDW<`=C`r!Ap-vN=Oq=pWeytxb+PyE7muz-Omcw ze)Pgb9@ZpA3#`wSET>c>X^N|jkEG-X$^N}a>GK*-p z1Ec;NM4Bz9=&W`g-to_Tk*Jxa8bksrlbUh~1bdEz7{Aqxiq0Xy{RnprzZjCPvu$F@ znaE(iw{4NMEg1y^-1%?R$T}56&V=Q*_`-2N#a{W;23j&gEc3l&Ke8H7&GpvTm8Spr znn|6WCmWkqP*7lIUOPFdC&C=;)#u%n1u9ATaWMm+=BO3Kg|4o|8kmzw#HvQRl)u$Wl2j{R5kU73ooP z;|Lk!#=rZ0(FOa==MzEDknl+W_xXMItL~`-@h?P1{*G8+KVNfFF z#h=1tP@7-L`QC$OsD{1I@t>jSnYcKDw#G)fzG~tYDgg|=GKe*5X0Zw2ta3itu$~|r_Jy6c2*&g1dhfZv>o(b+jtwP{uG-I}I)PhW z3tliT(rNMH2J|abp+XysTPG)Lqg^Hn`h=UN(`E^Dr{>%Cn5y|!eYn2rwex+BJbyPK zwDF3>6$Okcl$ixPrCJq&ciu0^M)Alxm;70vo9*byfJIk~p{7#|s&=dw^So>LTa?rO zSq$@44O%AgLZV0_jn#04P5UpKc8w|aL$CLC8Q z(U_1{WNQUb@$qu$!|UXdwg)=sBkVn|UWbz6x!vM;gb@o1{Y;$9vI?!5d<~VRjwKY#AE(kW%1==>$eX8%$uGcA>`xpy;<`o&A_*1sh8&*LlQ=evpCy3%5 zo;jw1;P&vr&uUh7((==RcWKe zgk>nBzXw;hlO;rEGG|*VpU*ksOv5{GSzQ-wew(xFe_e37k-GT>CyO^TC;81H2H5B| zA2gb;6)LL?AsH`0cJ+%VQ(?ze^CEg97~kgsN!WLbO32 z!!gAI?{|EGQnncKih887qN3ntcX8Q8;W7u-&RW$W#NYAUm8uZeDU8$|<%+$HQw-|u zV|WW$H5-kF=07TlNAE!;F_6dT=$x4Aysl(75ZTyMc`lI76w*JhEASfEXH$rX-k`Q;oWEwpb1-d#KLqLbj@4x+vl%p31rbtksP^1! zkAu+tFxUSj?Zy_AR@|am5aGpw?`a3{5}JwGkodpRLIZY)=A z#+N30u}vAolYyTZCpHNQffinkae7#UG=>Wi9^kLuGefWM$J@{`ThQfXvfIua^lyq@ z?d)!9?Z~lyFUo=E#5Gh`Pnf&h<%ezZ8jqc`$T|4nmx?D3e6(TPZ@4csJtix~xM`+x zYyy8oEd(j)|J^7! znL1-mNt`&LhtTLta@R*Z_qD%q+lG;R4<+F%{KPfCRO&;2{jw;I-+=RI(p!Nv?Yr8= zYADirYg?xDw{OhAEk5X>{3h}bRW7+AIWvr$%Om6CVVgE{m0u73?Y&&icSbYhc5lA2 z>giJIH0)*mln}AJLaXF6~Msg$Ly8iU;}rL@#mX_pgi*EmThwHBx;YWo+0GqH2x*U1paeLGo1QWa}Kb)^~vbL}f_pYoUXUClzW2vKi z)=D>PEP-JZTSqP_!d*YNdeZ>YeY`vWLb{PS)URE^z}nHrqU4<7BcDaVV3kzuEGDS9 zf!i=K5R+6S@7F?~{e)gSGvVeo?WfWSyn6I)q5>`X)IBClZ?W*iG4opJP$+A1Qk6(H z#IonS$qDsFhaaz-3SGMUV&YHF74YlbJ>l7-B_?7NQ0?D#2=s-^ zLrRBQ2z|F#K&hs0E?^nB@bXT zd3ku@I2`Y`iWYU-T36h4i8Q29tJtYE*;wz5iN@rUH|RYZLGhY@(M9U;c;^f|seR3W7YZw+ceS{L zxmDB!Rjrlxm&O+Neiueo-y`5U-%{^gN4os2o*aKbGU}_K^0Ph`&G00&u<~qK zZCDfEEw%_Rp4nl?oA1-i=$|d9YpLJxS&U_Hj4W8%^9xZAv7W2R+|AExS%5$d;BP+m zQ{LZ-a-_1jmzaB2)L`Fl;tUq5yG2tNGp)_OK-0K5)3Q(j`q<|>lAOcv zLRu_b?eV%P0z^i5pLr2(wMP$a;tK6_%6Jj(>BPQs=ylZ+6d2Ke?%Fl7sAP=-H0zE* zdrXkCWQRxd?LsuU;f?ci;3^H1`I?L?%QB~GvHL=Zz6n4oVt7X`v$e~dPj(#$tD|%E z_)~4HZO^&S78`uH`tJ)X^us*QDl@z<_EdFrbV@@aT40Ny`qj_M?Yl50?7E%HTcMeU zq84smBG&IEBlJ9?lI?~weQ;(rHa@Ifc`et0uMZjk#|mKUcrK} za`95D4D@5%q}f;cAx+Ete28?&GFd6#ggGsehA-o(?X@?=yW5{nM#?8Xz|J~Evpb_N zGoueWe*c~qq3QPG#FUYt;bQtlA+#!D7~OhzV0Q{Y5nYPIJW?G}EnI(T3`%*_7Afi+ zFDA4o|BfJyG?@I9Uy;!tmS-`Q*o#N7lwe5rqbPByP#NuV!K?Wr8Fv z*KuL3YROX**(~GCcMCxEZRltLlkauK$=aRWZZ`$q8p^!k(J%4cv5oLj_*=W}pTG2a zb|XZ zs*i3$xix=%U(mkEx=8jNk~32OdeK@sRZ%#CJ3phJ+*tY&T}Nq+!4r?$#NJC8$FrWw z^k$vy1C?^;*OoqOd*Q#V4~v0bv2bY|$ruY@SKyy&aKt-{w(J7O8*#KQrV zTV-pTT;2?#jr%Dh`PS&`{aU;ESgMg>Q~ypTb#fglRy$8h`dsq|rB#J%ey5dDA2EHz z0~?~F&I!&ye=efYoym_Fo(#FJ|2nnPDV554&zcrW%DX*&K3S=ddM@u%L?T9PB?&d= zBhrqu|Ga)#aFy|$T6Im<^A}yr=4_NpSM)~v4}`jTv4Q*CfoE4}$AF>zwvYwaU2m*! zMxn|h6PN3r`qIl?gA^oUw+2!~Gxp?_-lCw9_W|ZEHxIW>qS;YLLiE=13wN!FC$HGu z%&mCGlVqUyzR9^&WfaJdUD`T2znnCdEDVx9<-{~~8ilsqZ+%uf29)ITyXq%;`xIKPALFuh6 zsSP^%V&E&0A$K|bA@=aPRN8y`1~(H)6gTMIi?!QZ0rhM5m5=9GaL`XA>) zE93v@A00+=Jvc6ZJfZ)pNE@8-I*kL1h#x6Oa|h|#)VAxW(b3Tf`uh6zl$5z(sKbo6 zGOJ}O!~IIf)hiC%Bql~Yo66zj8$EJij6FiILhWf(v;MfDvD9U*WZn>e&Y4<2d)t+e z&Xl=?r&A+jj)F}MRH49?A4+%;T%yp#>mwFc~NB6tX#_+8f8N&(EQ%@Om8K+kMG1_kHzJrgIc^M`??NQxYGo2%H5 z9^`#>#KUarLAlESu75DN^EC28Hi4BoVmQR~!h)4P!H%AtJF4Gs5%ldl`2XG@oaPeVbVIK5PK%d?J5ViX{VDO#4 z_ywQjy$`YEET;p9M4=d_FRa0~u^FG(u~Jnu_?)B1XwxzGC-~;wAnDZZ`DYd$*?Imm z7>^tM4Bt}PGEpCUfhy$pH}v4I3Ep&}f^nkOj7j+&sy2I(mT5vU(S|C60c3-DZW8y+ zQC#`xyog^Y4PKdSfTCu{HkPdBznPXAFBILh8~fz>)VjBH4X+&S)#l#O*%{$j-v<94 zE=z--iY-^+IJ(ed%j)J9X9l#*8YT51Jbq|C4t&KNL$kW!bVW-)*R6$LRT(j(g1ywo zIwowBO7?_Q>XG$%#03dY=aZqg;lT3XxZ<|Q>krQTHl%EVfG%Fpt_-vLsDrIU@u6rC zX$k`J<*c%3p8U7pfME2~ry=!I7y0xJ1P+rD(bQrz=F*|nPH!jj#CqWGP0B@#AjLC-eNykA;n()L{ zCq~so-DjSH8#)!N01k8xWzD33axIQCL5PhumSgzh5Ysu1|1G6U#hJ!|#iyK7_cGunv0%anqbaP}w;;EGKl0N_Qih?RWqMk@?q%-B7lUzRRv&KD5R9lXf>#;Q zG-3P5#?djl=Wq5MjrWBKBS}1~U(HllxRT;_r7Q0o33)?6DZv6?j+RF~*AiJCIj@e3 z5m{vRbS-HYVD%CJ^lbbUb7p|uO4XgacL_L8q8#9w3Z*RP%GB1t0*JMT+SP}DbOGlx z3bhznbpBeoNa)YjVJ)+|JRJR_s|FKJ)GK2BY&Yi+bI0fmXK$&@iLHh735`tE$pmMG8mW0OEli;FK}&wVOh=>D1{jj)ttXZxGR z^^nkvq~BJwGr-aO?4gXRSk(_54-Z(pHWv;Y2ZcTW3H@4LWZc4bEtwe;^P2Z1_Lle@ z_8xADkFohU?dUo5h%hy_gwoovJPXOT$+;ZdRka}#$MyiLY)0wgjqsxKW%(ml z%uGN)fIY4?v2=I6;lL;Pz`9=NFSH3VAA1hOGb=o#IMkDZic#6lc*}>pN6(XEOeHnZ zBU5Xx-Qy~M26V633UEXy+4{^4kG@krk(HAxzi{7n(#Ls9I$I&1&LjH~A4U!+a{rb(4vT*c;qA zp-#k@C50ZV2xNm(o)Ms{WzbvV#=b+xQCVU2UIJM@7jN}nm+BXOvL$p|A(l6pnpxW~ zv+6!v&uK)%I&|LKJZBSqYr8E>?b0-fGAJrU9Qf>~cdM5e(u^z=G zXC4-BS#e`_t1R=b%>-jaTHT)Dd01GqpPzBOwmY`nb0d7|?&_S|ir#Sz$I$9meE)X% zAofQzA8P*!-qd%4yir3rNJic%k$U0^H47fh+}~_*)3T3Y!V_iE2F=fGP5j*6FFYWo zO8CDF;58QZV>^(FW%)uF4TagD3~v`#0pRV{M7nL{Tw-)g4CmJ|hxQY6s-tyI+4twZ zKhJ?IMxoPXA)B+Srd~*Jmd?PqHpF0*`e5Or!H*v$$^0_w^efjd!9gJN8UtJo zctGtihGxMX5}*hZxwW8Wb`8|^>gM7q_*s~~VHVR5k;n&al(11L`ez}2cbQx0^LXkU zE8|Q$a^poVE`xil+!*GL8yzZWVeh4{#Arw|C++L^O{YeHR~VJGNSjmNgNOc(1#OFt z-dZS_9-o*n7bnHxIKneG&hBLuG(I5L^G6(?OlW?1Ew_5q{xJriP&3)g?4vrBLQ(M>*tq zMRt#6^K2rk&~ghZ80XT+5Xe*!g`XFGT7HoJBG>-Yl`KWkT5AZ4sP@i&(emFAY@X1Y zPZ<8DUH_|%J!?zy>~_lJ#u+K`0k(SQVR(aw-NCKikvke3mZKpU_jzjx_RZfjk~Gsg z^p8_Hkst8cLN|cyV_~6YiI$U8w_RqrGCq{0a-2hh zPfleDgmblr*4hV#AjK(Q!0KQ7me*JoVlk|c>(FFA5sHd2gR7WHrS)l+0l1P3^80ql zi=gH6wyNaD38%(XX5adK#3Fgs4Ka(fH3(IdY-7fL@6qkA9mLl-t!m_t0my3m{cUT@ zGlSAWPxLsrs`!Gk1SIrDxHMxL?Es2(V}Z)fumQ&v(Y9|xwm)a_g=e;@tn05q`XxmK z>Hc^Iu|+_w=yX2Vh(u4-NiK~9@(Bo-X=rNZ;iau05G&L$g%zrWlGHr|x3@6X1ho6A zkh@kFs#&ja`zPx*O#yNhLg_NcJR~qUnU9=da=vb`4EoG8UBEb=N-SWm3oCzc;Ii1* zd1QFVW4($d&vkZ_BzDe(-)1mVcbZ0)= z1u5pP@%og8`&BDyVNAt7M2a@D)7xEP$5uu+(hk^_QZf%8zOkG-oO(Kc9S{1fpSfMP zrKF;Q7Zyd_QB^xsM%Y1x-z2J5cs%~br$-C#Is>Y~7J|EF$J_d9r4uk^?ndw5d&jCH zrw4?sLLIKP#Yc&iMj6?0lo}>=7@+K$U)P!<;){C}Z$4^%hk@t;u)~>3WZHN=mQr>1-CtVFN`r_mu z-;fm}-n#36GC2UC!u7GWrleooj-X#QC0?cjRU9$*k@A8YeIv%oQaEc&7l(+5h^~SJ z1aj9AIH;wK`z+{l%V#GJ!F4)=t5Sg6{?NN~G=A4*Oo{n8X0t)%V32QrBaaqIuj;;F z#$KAdRF*HKdf#0>$5LJ`$#Z*Idw8foRE7;bxQQYGyJT|a2E%kLNi1&seFG;x$i(`R zOSV;_5Z=hH-q`=fek&n?<&Qxo6BE-|+YBlO8b9@*zK&s9R10IC%*j+QnRpH;xtg*s z0`-Yy#{M3PRIEn19nmyp+xJa*cxKfz0Qo@}DA4`jMGF*Xe?{DX+C48$Em$BR(xTgc z5-&e3W>HYcVwqoXU6RR|-_KhNFMUYF7;i^jn7 zkil>kw|++Y1cyRLBD94MIuQWkz}`HGLWd!*Ln#&J~hj3qSF&i^l@4;T*JY3Jx43Z!YZy} zW2Ol;&!JE%&>GUIGtP4aa69(P78Tn;C|!pwLa?)M#HF{O8l_v=x;1TC;kQ9ubdagG zton4J4rBf3VXe&4xru&iH^V$DXZP0wyxqnI7A!`e6_V}Vb^>X6!e(%VEUk~VInj&d z3Djdp4XZ`UnqQmsluOVcSqG8Ilt$V^4_<49(@ZmhiZ2$6HN{wGSABb=Dpk|Q=RIh^ zQTManZTIJdCPPR%A2(1I0*O955Zx-5FigLws93|Rg8Z7XD_kIww|Cf+i!C5XJ18Qs zJYZMo94sahLplVCx!nM4b{3T}hZ6}3T+%jowd9?$v$0asky`jp@i{H(a<7R?$IZgb z^*jkZv~&0S4W1GY4(UW(j1l1=r0Sv#KlRR|9=Dyv#V0pdWF@u_&MUijF1`0P94$9m zE{+DI>0T{X(rGKj!67Bl6O3%kD7Z0oQ1!Bx@&W&1`rIS+y&Q5`_e%g92O6T>`LSw{ zUo=s#Qsc8y=o!FVM?&mv$J9%!U%dCTXAZUv0Mg24g|A6hNekb6+=$2HI{*&dGNTpc z#__|OHrow8lzra?w8szGD=)at)!y*?BL$Qzd}xQ8LVBw=QFc)xm9(wxTK8v4@jC^E zH?3i?Fdoac!`4;>H~_bNn;E3EcYPioJyGM-8MM)gZCdXg>tJ23ncleuodAJUg2Ydn z8!9mF9WQ$8UxWsiMPi%AN7yh3xs$R8Xq%QgMpFQvyV}EJo%Bwf%sjbTdpPWiT4Zh4 zMe5mdCI>w%m|%FCC@p+3$f+2k zKO(L#<*8v+}1a~Wy^SF&IzuutrwcBHxNv%+o|0Ehn-==@xzjcDx$jA zC(?fvu|NBKo$xN@9n~$G_(!_FG`ud(S5gOz)*xRD-WM9_RG5mx3hZv{krdwkC8d?) zx=0dk@xFfyMpw!)EqIj+68Ax%wK9Ts1l6b@dSage6nBhnpV z{9&mm=R+dG#?5{V zp8st2#kMWzT%PcdZDhSWYa0R|!S*#_BYXfZwe?f=U#QcE0eeK@ZIxGybX$7g=$;`y zdK{oPOgz_V`tG`z3J!wFJCAtS>&aX_Yky16gFvodnDV{A&lX0mlfg^H>J%>6pc;X1 zC4@OOfd!2U`YH==AdgAWy1&0^c=UVn(7nYfS1p^nrLlU^kKH54U?-=j=RnSLtf)Yo zhbMf1q7X8=IsV<`4g_Wp2bSKGe}wobPrhz@fOfd8azBX$kN)eYvMK(7*0yK4+Y0ZJ zUOvu22Fz{dn+pf`Zrs)s$n{R9Xw;CG-&d|*`B@O9p}qFtrh-gO^(iiTlKzWPUo6pnI#h$Kgt4LyEZyB1MzI==tK(;VnZ{287rguOrf+a&4-H>azi(A(f!pO-`XC@b1loQS+L%jRC-qbAFDQ=f zD;lOG9M3D~7DnVyA;OpP<=Ek@9v?omjn}!?EI&lX#r;SSw2h8QyG>b5Lm}YuHOqM! z`B?|S0t<|2m%{MY(o`?UJ?7;z(3uJjX9tP+P+B0KQlPFXT9!Y1OeiPW5z0vEQx6MN z4KhthZOVFS==LRGO94)^6&c|-mD3Y)M1C!+uGaBoN^&up{{6RgP}zKkf5cP~Q6+Q| zLvNpP2LPxaF~Ffy{vs>`*imMtQ8CgZ2iL=g)3g@-S=q;LSvqy{im zOCh15`!{BXS&2ZYm+&V_&_5U6$NA?fR3l}-9G;e?YAuv5(3DF%?-6UZ9OeVO+|{e0 zm|WszHMF(%Hm_8T;L=$FmUszGVQD@^{9#w7<2rZ*w{UvNQ>YS+=siP&}Y z(BolEI`4xsGK8)id$tmRYb@Pi47J@4iy!fT@xPQaI|Cda1J00=vT_`7urU5S`UY7w zz$sYa3UoX?!)Mf%OlG%%cyu-TevDd}h64Iap7<$c3p^N%DSpF~I(16?rR|_iM zS`#xG4X@|Ea0;#ovBJd-P3CoEJOpYVpmTwhxf4#)KohoNjg30_qxQfd_m1abrj?fN zU@@5Dgk~(+p0bAa?@0XOhEJC%UX@WJFJsUfMf*I8&-l=xZ8puw)j#I`6Q>Z?OFM^3 z#N(D{Q?v}iKdmE1cpy{lBB(&$B|I@8=zagqy5izVd=x%^R5ahw78*%IGsgynJ#T|_ z82#=ZC8MDUje{%+9AuWOMkms;r*~1GW&!ucCQ2plma3-|E~6ZMbDrK-CXpseyqv%5 z@>wPj_oQfuLqEhQcq>@WFx8J-FCFB$W16eepnPPaz8BlRT<-e2YuDXpfRJ`LlkjvhQelE^2sPpJ zi7|%lA&jb1ie^$85#*L|OJ5{eo{VPRt|ci9##P>;li8h#S7Qd>#7FHc5!eGWC!O^y!|$Qm#ZH z>)ILi0c)q3n_^XD>NG9tCd6x2ihewwrEzUICqH@KjH1kyZfFOb-7FVml(1t%dkAfh zpdrP}@WmMFSm|6L=`oA4JYM5lzaUvJ=5lL9RJqV3L*X+CjRL?I;|B)^akR!pv~{!G_oc|vj|K=ywJf~F`#qEKH#W>^94%;IyG!W-nzwFY zcH7&(Jqv6AgTc|$IEOWz!QYtChoc4;k+zh%y4{qf^^HA%I{>13XpqmIw>NX=>}m-N zxdkO7xon>5?_VkK7_C86K6vneZF{jTNr#?=B?}-AW(z`DUm~l;FLxvemP0|xo8~j& zkHU2yBFlkhkc?o=YYIGEH9NvCm~EzO-NI%2n1pYWO{T1w}ywcxw;~*v*&h7b(YthRpydE3jYfUjDSvm zXvCdtniu2btjIvS5|{XGuC-eq$>I8*YZTSTV~Y0s!Ap-LU1%nH?q_#sXZey${(DOh&Q?cbCmm@^C57O1z zvIt$JMR7l*ppm^Mye5sq44}!BZa<1KsFKphri@P!y+YRhH6Jzk??QfJU*8-Fs?2dh z6bT4`K$AI>&y-I<((&RXFZ<;THT(B2@xp%8y@f!UxP2|GGcEvC)I%w;s}e-^+=)S| zuc#Y8h_@)EQ6F;}Z~$N0f%q8e4*S&<2-pQ?Jt~Vw`Ajdl1j@pip(H5PV+AZ*#&cRFSOl zoTF+&-``M6YqH*IMJH-WmPIt`;2?fBU1^Jktjl5f!8Byd1{%?S)SlgrON_R>nad6X8J1C3Z`? zR%YL=^r0(p(h>0Q!92()LTja_-8`|ZFIXWluDIx}$@kb!-Bs~wX{*ZmmlN(J-7;-+ ztJ=z*c&uL=#@;lRhHV=N_aHsdsrU8pijJ_`6k(qS{HXNgwV& zI|14%HQ{Gg5Oy&sHFE?PpLRs$&AC;XqvJMiQ}45(S+TOZnu!t#j%105%B?D%A?-YQ++!uiR~$Q#B2IrDjKe0v#UCOiOfn*Vm&YmToh@J( zRRQd9OZ}=Tpf4tXvo;(%%_k;{=8!l@GBL7&Gzozw@AZ07xce>+*b)23>dmXy#Tq4~ z`_ZQu5g*W%F49BYU+sKfm@^lpn5G?>(4(fv{B!1B ziV%u7ol-;nt@-Uhe8U6>dB~m#p`5yn?_td8FPsxry~3WW#x4g|0SX=*k*>DYf)9wH z99&pMwCTaXz>{k{62d^^|4Ds+z1$vEK!-n?xIG`Pf)t0E^s>OO?3(f*H9JfgtBGGY zE&@aifG0EIFR8zNxiuR+9kB5yG@R`Vwo(~7oi2lHaY}q)n110N@UhqX=PUSkaX^@kOUx~15mVP}FgG(>nD0n1jR!bA82qRO0}gR8 zaQh(^MgMfplZH9cU;I;g;wT@kMmSW@S(|;1ex$aqNnCwYoiL&5;iNZOqt4;6i!ZfmI(181 z0OGD$_J}JkG8!mI16`|yY~42Vcsv0R!bQriPS?mp?_`zst} z$iatQ5$e@9iFkDL)DepGF#fvj&-Z@Z5-ng4b6><<48j7DyQ_+P(OG5PZ8k3LiaNT7+`Bf6Y%2E)${Ic( z=FY#D(6G)+Pix=0MtE6Ipl722ciJw#;2@ck$h%^58&++C<}1;=^GPM&%+;70V9O~v zbI(OYtZviMDWD8`OW4K_yBq*SR*!TgTRWy0fR1j6JHI&z_YQjYx)wO!+T&URHd>zk z738WeheD#I&w)N44P{d31Kkfd@xcbT(zD2sf`y*1V83cVlM{s;(mxPhlFV=Uv8EDu zZ>WaBw(Fd^QN8AkWod_Q=6qj(-4F2g>Af*cP11rcB9AInZ0cElfXN6gOIWB>TVT8U z+{VJA!Wd_SMAK@p{f|+axTy*2mvLFW4V+E8`#iO>*qhjyk-|7>ry-RA+q%R!%2IH? z<1_Y#fPgjH`N70zqhKI0%m&T+jyw;9luZ7;{PNyb__eiX<7BT1xyA@CTVcngohVx7 zntSA(epa*(E@(rFMrAe}1mga_-1Qawi~yuURr{;DV_wAQcDR7aCyANQ?EXO2;jJiJ1X4T;DxmWn>y0he^d1w@MMIrPlWf6{iaNbgBiHAf z$z5IFgB!aNo~|5-#$^)r4u&>kp(1jM3D+20CaB%txjQeknv z1oeczVEJF0=9_%@7i?%Fp<6;Zu&CQYGIac1dAaprP=$YpTl%e9V}+BT=`*`rd?it4 zKZ5>B@)~@Ia@4)FW_{tNn3lVj&C!yeB}xA~>8eWYvI-PB0_5C3tl#?0!h}$j@_19W zegE%ca8!>)ZOFj5z;nz@Ih1mRUixlW$Gj1~@P~dqno9RWzT@H0REqYu-J7PO;^rmn zVU=b#fN!Q;%&@M`Bvn=W7 znJb7FL=1Xs47}eIpLmVGdRedecnaza)|MY$E;X)MifIsDW>`fla0=GVi(4vrK(iUx zzg2e+bKEfX%ND%6vN3cS!il!keKfHd&d1BkJ5XfFR6zWY^mQZ~Bq1?EgB*%_$xBr~ zSXeNoID$XRe=qR||L=O1G;cMwcD|;Z9n{2;YYl>w`2-txsdLP{7p7JXpkk(Uv|?}G zz=vqg9R4)#tZUKzW5_f9@+fxj{@|Lis2kg#=k`n>P!dS&iv2NB!C=&D3s(sdMnVPa zC>4!70ODC2`_$?gR^rB7b0bO!XmR(N5&B2v7(|tqTmnjeCcHPD_@uFId%VQ?Tz30D zyjwSLT_{UmQSGt`rY=s&K-4|XS9{7DgNnDXE^{{TxsVDkjkmyRt?nLLdN1*+kZTjw zATcZCR|V%jL&#P&8Xx4mk2Mn;QndRbY`t*h{Od@OLR^udgIPf=V^$i8D*|$mOSoG5 zKDpQdjlQeZ3dms2&vWcBh+;J@Ub;H$epl!V!TaE)hgklUK%u8smrgzg^F!^yS_{t} z_@EU~;$1>^IDCXJ*aw{lpLULvD@(w*Ki1s{0<1_f$*V}2D1#zb zQvp6Jp~TCf3&UMOgU%m@I(_<^_I7rvlA}#sMJ0aWg|pl%GwwuVfrfN* zzjEscT)9ihEPlhP8fyCRi}Uu)`Jp1lz@%ufVhAYi5*G;$i|(YMV*;bCdomW~#r0G6 zjTX~Z5k4RBd=A3!1k#`6kUJ_5Swl>_K%jT4K>uO#Nr3>MyD$(eeBIa#2?OIWy*c8- zMK8H(hb8S>98^)wIC7Iy?4uV{uz&1;dm!CnC~+d|;zTV?g^GT$?ayhZ?%ncX%fm6n z_sbhoPPTQsliPw-P_Y&J1)dJ1#ZJQ5wfKa-lxSrPVKPSp$lUwdHj+!>R z&=v?J>AK{ptoJ?Lgd?mP*AWJDZ|osokk{9zM9EA$_=v$d%xFI`!ohcKEq)GgkGN58 zkyh68!0F6*!rG1{y|6uiScaL`c(%q)pBM8nS`25kWljE+igVR>(!FE{Y&12SGY>Cy%#^t|#{97q`P;AfDAR!_1wdfq9o!r4sIs+K1Q%+VT>qLRO<7Q-|Mu^QeQromU-)xWxjs_^V*+vxmc# z$CD@kt0dlnro{t$gB{c6o0Mb`CosB^ORws??4&g&NJOPY1`==x6?QZ`x=&?I*#h*0 zgFvDN#kS~uu$Yea<^6rtGW;4d9;x6l>@4T_J|@RXQ-H$Ve`_Bjy@Z+dc6T-rcPUn4 z2-S<_KMDDt=Ha>=BQ9gKXW;}=?!j_XqSBl} zx+99Ev^w*TsayYpL|AH#grcK!3Ej%zIM<7B=KvKwqpa5SGi@gE)|hTrBWgfr&_3Io zx35vAks?t@Wj_kxg#D%h%i#|kH^*F+#VOjZcD@9%^=oAoH&;BEMJ6O(>`YD0h}@{l zY$^8oOgDy<^0RQZKW_{O$S<4jScpQ4d{56pK8}tD4ww2VO8mvtsIDNOtvd{5(g9G$X*zQDr4H zK`a9G>qM_W z3l$^N1FwtcE94tSDOcXFY#WPc|28^v5dk;aq)b zk80U^Mx(VkT`3YRlTt0~uASs6K+CQ@2lE2xPpdW`BOAsjU6w*wK3?7}c6U;2hXb*J zw791R*H23Je6K3z#kbSD0?n>xsPY7XXE_J$st3pwX0el18EDb%vq&BnREL5dq~6WJ zLEXhMhHB=Uoj9;4++E(gJx8UA(Nhn1SOkmT1F{Di{TeC|Go=BE9+hobf_$-2XlFNH zN+DehMtAM(2o>b#Uk5G%?Xh3>IQhS<&{OOHa413N4aPDap!hB#IcDA#{?#jM=MD+( zgu2lg-GTwdpO+`so{V3gzw1stwT7$J396$knJtoN7EH~cDG3#Pkb!{#?sj0i`DgsP zXQbOuWm+5mcLcZlCGmv{dmJ2(&2aZP10)0=Q~!Gv=-q2>u|I=P7u&xUVr6U{ZaPgh zP}toc!&N%~XA}U(m5V__70)J89{y2SJ-y|Z_#^Yjnqn2DWp>!=cFq)?uC(D=^mjUf zM?g7%h4-~H6giRNf5wGC0Hj!kaWAE~R$E+ruh~f`MD1@sf0r1Lvo~|188my)Rufvu z<6&pV!x$PI-1=kf^v+)%E#E>yE+A{r=={5dUK({STOU?LM|94OF*K_eBqF`A=UqDV zBqSt?3IYr=4fXZQUjZ`xzfn9<@~mb2YhiPg?^>cDnT;K$m!4I|N;>H#{nMwStn7mW z(xHl{m;d@~ygF8s1tldVC4n2`C~Ct8tUd~4pk-%xtW;C1tg0yhRcPD>4jC+mBZreu zZ~J`a{@vUR8lfeoye#**L>?^PQ(pr+ihC%N$Ze`b3bAK$Ne5N^ zJ)=T(V}zCa2}V-Re|MILOUKs}0x6j9GJ09&- zk(IOTa1k{u^I+bv{afnEw{1@+1YL+s@mdAqQ_Lkhn@J)@K`#KXpl*g}=aOhbd%Kc` zw;UJoblP7j-{GJZIpnDCPNr!5prrXef9EnB4xa}yO#%Ss_v-0|%eu0%vQ?m%v^M^! zj^0=61~deKKJibwL%AC=WdodM5p#9I&BeJRdrY`V zpEbq^L6eu4=V)(#0#x~Tob%z8H>cQMUj8`355T1qMCjs0+_{O<-YUtW23ChHJpF`e#~pr9ZR8sDFWwJz$qAsw*`QOF7-$)c(d^SiXuS|a}` z;vEhEgWFpOPJMV%+4I7kFA{=mqU;OkPOQs6W1AN!=k?CV$XUDZ#t?#;qdt>3G?=N}X=k^=Yt*fN^pNlSrmc50X&-|HA+7 z$K~b8>rn6hr+9p4GM>P>In%5UMjHff05pykwdZ|!4;#M%2K}G$?zIIxWxNdP;_q~} zb``RKq7>-h5~QJ_$!sb6_Y$BEEW4;r6Qex?9Vj5_6tLTC0w^ZJ_@Vf0X{Ke zYHrRHLd!f3B%}T}uHNKFitzK_Y5<8>VDdarMOt;ok8s1-ZkH7H&yK2e7iU#l*7k=ysv+dgM? zjK&-lKOgrvRP0143%axYj|W%K*xm`~aMJB|*P|a#V$4!pLM^_ojWHeAS=+X|dU$Yv zzC~zrWjmeb-HW>n43t2t5a$#$aj>T?XF6;g*`%%eVY$a-A9!5E9pJ>EVDnti=}$ z0v#!d_Ww8T$fpW%1rJr)jPU@c4$t-Xl<+4kisr>60Q)6x?Wd`)n*)Wp0G_4w`=7C= z^FRK(O*)-gVDx%&2#UKiM98)@MG*C+NdF%6yPwdhGIM8JEX8SNdX^TbW4ENn_UWg= zTsNWO@cD07O92m6^x2IiCZJ{D_iLxqweteNWE$RzY1CJ-@lNNat>j@b2e*<{Cc!*#%&gx_81>{GUOI+FFtzwtW~RLf5Onn8%AGt^DLkmNe&_1}+*T94Ol`US6VFB!%=BwQmC{)8%z5(t*AO9RiC z3*G%U2DS$v3-Jlg62oJL-xGzXErCC}AWXhG@&C7(-;xX!#Ae9jDbaif2&saV_z=oB zPBRAJuUvHApKkY{JNLqy^^ECzNbba^g|cZB$l%bJq!Z`=pYhpCp37J?Mng9hoeosW z1Y`|#EtnMZPvuicK61qA!-rhEL*{9DiSu<2psiq(DQ(>aD#|3VhVxfmpD zc-~pLR7>AlFz(n)ybgpdXpYlsidAv~h!&EAlbGW2JzF)3>gRuc?&7DWfu{V7c4bTA zbg2R1^xDtvN*!;QpDpl+vt#$k)5P;G%{4eceH7js1N$vJtFct%-%CGBKEwy;3x6&J za0?1X9#LiQFR`~R%(3<;#A!W3zXv|X&oVv;M8Wu(z5jnk_}uTmfBm&}bxAd508dk4 ze!jQ+h@OkGuqQ8IGpQ7R0)--M5NRN69zrR+dZYN7<&(3xAh=V6G(Z;g@9)0*^=TU2 zSEZWh+Ey&ohOW3W;zLPymC)P730URI6bA9*lf7FsN#1|cIpX^K>5EZaQO5Qr^t`pu zHGAg2DReBVH`x}&dGJ!9$;xK-Ir{XI{koS5POhk`y0Z;H(iGDK1)X`#m)&%GIJ%l! zY1ykV3EV(Fc|>@jIQ3NC??~Il3tF6zVnq2`nXiGjHn@(axd76HLd42}!Fd-;Rshv! zSN*P8Ocee&*@j2?`{|p2F5Iy0bME>LY+naeeSiMMuC;axG}X5IX?K=8bnZ4Qx6^6- zw{l)rlE?M$s(WlLsvEG@^7 zlo7Kz-K=lG!8lO`d+-tHm6y85FrU=(>;Jcpdp9^^TW{c}b^th}sB#{Z*c{{h*`4h7fO!vIk_q0j#fQLQevy0w*hj1DoUB|mnRt40f z16k(lWKTc%uNS||*M0pl+JATLti)Vl_=thsfhR3M0`~zvC+7Yk&}31Z{{J7bN~)^u z^|p_Xk3bf|-4#Y1hv*gIzp7o2AekY$0d^_hm7N{uOYqzF?NX=D#qIwPsn=TzW3unx zL9UZ;cLBSKjZ2XH>FOuD&%@9ZIz5q+hW4_)jErGQk?(u=8397ivdK*O>pjzDxv!?v-wcD1Av@S|6l93TJ92YUANy0QE1zn+(>=UK6b$4ddcfVGr6GSqAVi4L*sl2XQU7 z&{)G7cn;z0*p`D!6>dZ3bUsk%Wr?3P4trZ(rnZumfIA9M^{>t|Ho%_HYYV>{1c%*P zSjWAOR#_^yT&fA9S=?Z&08;Pky4FcJUDqe4vwUu8I+XCNfqWrPdhA=dQMsr{8`?0> zvw%H4G*Ue0d6N}1NcVb%tF5CqXl4q+eV70Iq09NQA7pDH_MatC@exQXS#hjaLL`68 zrP}saUBKO_c_r}jwLg5voBWlDuB{?vrpWCtkVHpjQhsAjrerz&`ALO!tdmXmMt_lD zW(l?C(Yb05f??PETcQnsH=8eGt`^u5sVwRNjL<`!t_(Wi$7@>*)gG;60lq>%D$f5R zCiafnCBb-_ovD?Ccnuw(DmBfo&&cmMv$m7}f{rqKl#&kYt%Q8d-j=Yj>oGUKvX?fI zegR!tRo)y8J3f7uU*M@`L;_r>=7?AnUic+o1)o1-N98iZvCYOsT%<^Q-8nu4z<|nr z+QuKRdMpWMHwO~y6Stz9r%uJ|Gx8^pnQ&Z!44YQh&lcd_0@lH>0^RaV8g)OkCQs04 zzPzojnKfrt!SmITYU?>4+i`SjV+HfO-Ni8h&T4al$`O-q^{EMP{^;C+z;|#K5WeXj z2X{oZJ~2jrGiwXh+!ABA2KqujIz?L>SMB%1A9vl64IpyRA&F(}^Xu>CKN zSre*q-C|f-O44<$t#R2Wy)93qA=C}F1D=6h!>HM|m3=l7kr8U6_(kIRb0fg@Hv{6X z2gp|Ix%Ek`RJ`c=uUM>K&X=wIghm{-@;92(tp35XdFX97)K> zr%fDc8s1@G$b*g*+ISJg07wgBdArtm_2*V6io88wigne#IM$?e$l;W1sWT(0|6>2O zlIFkgKswQHrFj;NrS6Zb9p2A zSZM5M##UKL$v!3~W(9EUs-1|qb=aG9E45nqfP=WXeg@qaEbp`w4x#nC0d+_4X@0fX z?o=|rl%I!>OA364n@Pm|$;babzX77mF`0POT5pvMXMR5BbZkRTpsPJD1FILzDSRWX zfkpT$CnCIrRJh<>R%8qhSpLQ?fQFkVj@67Hbj2=WCeTVWq=-xo>}yI#6E9*5f6sHS z(>?SB!}y0f;8>ijIf=v4l*g{ZE#iAzD}u*~jR^{y;oNM=E8`5o8v_p5tmcL>HTB{(Upcgo(qp;E)q#c7!)kH_D( z^E5L0tyk;9FW7|iyy7y&ejEl6bo5;`$ab~b`@3&uxiAdy)BSJ!`aL(*c129jfS?Fh^Hr0(9{v0q5t zu{RAND@X3&y3bbmzWwn^!sdw?c`%46Szib{HkNWblLgdZ{u$h#oY%)3MpnaUW~qr_ zzel~%MIK(`u#v7H`$flnOs6)Mz;Jwc?7Il>uyk=58L#&=ykcc3Lk;9Q#|?mdLtm>$ z8A>G6W1;11QjelJY(#^~NyP}43VoQr1T+9|kSgvR@tukQDDRj;5ae>--iOAUn*#^GGPD1?5}eNbPG0P>X74=uc31d-bbax3 zX2-vQD|P#ZJ%U_EhtBOjPLInD(WDceM*dDX^9bjF-O^-T-yDqVO_P=oA8Y%knx&b&yuB=f&0Q_5eWwe$*&3+txyj%+fmm9V*uf_668aV+ zt#U;?Fv`7!SDjS;d{})Lf*gz(bZmt_TR3Q-==ZBrl*E!p#iiYL_Ls@Xl&Q3$cz_=8 z+K7g80h69D`_6I$ z$4BY0h%t6{bi^?T+E}C}a!81dcdf@rNH?YxF{q)hl$_4|j>dJ&CjS_0jV8$e8yV(# zF=s_n2nrxLX86E70DW7Y&T!i{lFz+_;VhDT)golN;V6#RTxrujOB?7wkx8sEpqg=k zECYUB$@E}(5DY-0%#U@Glb!iQchB%Na>f0?TGBZ*$OKDO{kuv0N--`HxmEr0Po1ft z!1(=|^*?Kk{feQtx$2{CzApVs)gX!$9L!(nxesoxZRhf_#@HndDN|O@4#j~-)#{T}r5eSiPF|G(RD$Z-gZ=YH<%zUn;BOFK=3 z7VlW!Oj)cMAZSjl^))p9!-t`n8Ro;Mj23?eYT(el1}>pyk2N!5&tCS*?&|8-W?xLU zqqI^-l#|3+Ylnm%MpwCCNmJ&rO0SMaj-0EU`jLagNIP*dl4vt}y7~3vk%tb{X}s-` zepaGme+JN-+o{T;rH~J53DXL2*FGI-_r~mwpXzdyBEKQ;Nc}61_cTd z9|hp*(!>o578m#AVS^Fn_`+XXK-5(F$=-h(sP(J@d>un*?Hocy95hYdWNUJ3@%7Qi$j0mV-y7BevO*M4i-tBiS%ZOcM;8hlq-9+LYO0S{`g9%f z$yYcme`Al=oXv6j0<6}tC%$;PC%(1v-51Mv1z#s?!=)OVr)FcX)dj_Q#u?CmE7~L)cpRQP~Ns_r zTjMP_k(-y;+?7wrC-jPw7ZPSI+fJELzL*8%;yLNc&e4(2xCclB`KWDx4EINQr`cA3 zfRH@D*&pXF@3g#mPVB|eYYn;sV$XsSplbblY(!E5`Kyi=pJvPZiCKnIa^*YzihvE@ zY^L4|>b<5JiZ#VyLGd-!%gf7lwzh?nK_^h9Y&W)`yBjl1jf12VCgNXPqPyP$&92Mml`#3=yJY& zcyKCrb~}s(Ch(4+v@hSVow>&>;DU=n)X+Ny;HbYYS~?AKR&Z`tu<)n3qGa#75Fq;7 zCXea~R(dFCBLPC&9<>MKfm_6%=J4&`4tnx@n}|3HHiU(CO*|)GU5~IU~XV@Nr0mgTrnjT}6A3QX97LfLA z@ZaaAp_q(ST`XB!SW0;%tN}wjo>j_6SSGm?0z;7)=b<3=UY_|J5699cqZGhJEu?xX zyouItOK+*0^L?JZyuYthB5kUYow(uAf5=hnr+6WM>ugjeOfKS81uIbjM~w17Zx*Q6 z)}-pr8CB4$mQOZ%f=7v;PY79(L6F(C>55J?*h+A)bySZ4(ap&vP&^0jy4kjVvn9KK zJ|X7d{F+1eta@3HkUMb57JkRHYJZ)>%E?23+nF`2NLHhpgr)l zpzvF58L}qhK<}$>I_!w1g!SA716)Ymq6g1TM4eq-PEn+6{mqCQ>fhi=p`=FkKz*Q3sLYKWI9Uc}A}0wX&fP3^(VrB(KlcFTC^mDd zvYHHLxv`JWyEjZ>V`eSNVU^etf81pHwluT1{4v#}u1E4)SavKTQF1Jd!9DJF%j0Ja zGgZY1((xP(3jTc^>>AAymU9q^)jcC72Wny;2ESwhgOI`a=y9vmd8bjg5=x`(8kGhs zFk%gSjHMl&QOu@7vI9>T>-nJ#RyhCn6E=3wiWCX)?SlY z*B9?USq|85NW+irO}4N<-3H*_N`jcVs>z`i^s%!Rz4o^6!vdq$^{PsYSjS^>*0RB_ zY^_E`-Lt@fd6p=^dZnzSu($uY+>_uuz?kz1Rev|Nj42#4yB{X5{gsYx=H9^MUNu}| z6L7M9K%w)##@EhZle3I%m#)p)L}@CG0A*_YD@vGV&QTd1+7ZTIOBlVSCLj<*cy~}e zPIsS`+p7kYgkQDW{*IDYMnNkpb1n3Xw(PPk8p&~Y1+)0C)W`=38_Zxw$ycgy@an~B z@d!4ow~fu6 zS3gmZJhk+M@f{M`FwjG(UoB|S!Ks};M8KbRpi_wUXTjZ~hJk185i~~N)IQ}17eB+Z zz;UqLjBh^DsF&gIO=d^t)SfYjDt$o_pUx7mA#|n z?z`OqJyPNsfn?m>1X`{gODdn~(BR%lsXEwk42*FpQ!DLJc6_X5z)Lo?gp2${z_+%E z!`Ig{3WP_QZj>Lc8vu#}I6xx*4bBleeMIxMFbanbXnOK=_A@&Yv+QxSWU%KG*4x3} z^2{sr_%}^9B-Oo7(B55mTKEiP=M3gF{%8h*#hcMJhOPKp8M_9slzaoIi=EgPJR& z)jq^@+(#RM#k4;J^80VgAz{jb#JBCd?D4{0VfZi6jE0pu>OtXC6Oiy}LohWTJ5w<$ zyWRlJ8qk!?|J}&mpV#MqSKv2#+o^ud+~_M!j8kvmpn~scjprca(Q-|AGQOgqSKe1= zcgg=JQ8Fz|^flrjokcX&hIG>(Aq77mEnfr$?Ub?Nr$LQEbO3 z-YEv*wS6|*qKY%?$wC}_fO-xeK%~b!bI$j#3wGiN)_Yn(eOS-RokXDA7ta zyO|(VH8`^q*wg%I#e2jz6mYEwKg8^Di|1f05E7mOzm48QKum!xNG!su;V>I%K;+Q` zb4elQ^%Z+s3Ai~{BWIp72SIB!J#IV7D?b0)Os84u#G!y44p4_fxam+e^@>XEX{XMz z!+al43%t^_L-W|S~#sa%$2wfvE(eAYoW^cQ6pG^Ai8P z$MZ8^BosJo8X17U+tmg;W%Vg4rR1aweLzr19lZHMXf^8xb!SJ!}O=~UpbBu3Dox);Lj*Bo&J}tcO zwXmkuLF`&EmMutf;DlxQ+dagY886@#oQN?Ti8`arl3+A1G4}lT=h2Q8Zu=`vDjfJD zprVp}6$uNnOCl;*oZ*TcFZm2qT)1H`a-BPXGcQ1*pmS6os}E|(h6dDzB63p+2If(@W0I# zXCT>+Pq5x8`w+5|j@NPgOU>5CL9Wz|0`6K0LQr;<<@oG$ionssjO|~%!rX!|@b=?I za5>$h#?(3NbO3;mA33@W9r(Q0$bj3aEW(Vv9&ia~`eSD)%ozzHtO$p(ou@xK%|x;cFvTet0R@)+?~9be_pFNO!Tph)HxR$Q!jE_Z zkA9mz!3w5|{^_nPvK0mLz8M~mSaX712tJ~!X5K|!QlTIj%Q@Yh?3-(aw1=1(#F*p=4w6gmk8lgAQ$&1x<=OzPx6(L^Z*oMshZ zB6x{GpWxVMID5=m;LFKvo(fvCtZS-NXxed@&71n{lRkw_DexrlsgszzHPfUhVPJRj z!!CkjEnAHAwrg?_%F9GnBut`$HVGo31n)@2^AeL0q%bvM1V0}T4`On6iE(>~bfc?q zSUS7yQtzoUACZdjLSVWjWbEg=k)!r_RfB^^%?w{^FBn1NK1uxu9KWv)b``YZa$(WJ z>I8@0u)UTMi8-A4$uThRE2Km_EB-nHk~6k9qHR4LSaZ0>poKMRU1sQi@OgPIzw`|lp0s9Te+OXIXbKp=?n%ZXjP15;Q8+JvQdE||me>wM< zgf-%O=l?3xB!2fD43V{qsB~L%x?$+x^Y}HD^O=X?h7A3XUm9Djv^`cr|LRnE-g^zlRQ`BcE^` zK<;*ptLJW@u|0|abSyf4C~~u*P*K#Koy~KN=`j|ktJzLL-Hy|XO zK0AeZ?;~y&AZ}LygQxcD#=tO(AIPbc;P0I>8~#(knB8|S-8%mvE?=rY1c)y3=Hk6O za~`zAh2GO9zs|*ON+YG<5}NVYm&xwXio2I(2Gy_ayK*aO^nb}j|Et`$#_?St0VXN8 z*O%o4mD9Kkh82tO4S@D1v`|w(Bj!bB6|0<&KwVLT+;&H18>|;i z)m8G$GejMGm&N-mRxFy=FJ7yCC!?uGL*32d27=zP z{j9C+f<<#c&G!`>USYyHAs=|O#z*$)|4mk}ua zp|=1|p*KhH{?U9F#bIx%u+uGn7e0WUfBvZLyiQ6&Ee|dMkee2=AHJImjZRQ9Aash3 zhedyK){bfFR%4vHY7PoIs!qL>Xl=IY9KO@F{VZH+c<^C~5a`0&NNBk;@o%AOe*p_c z%}qZqApemC!>Cn|sEv5W<1zBHndT|m>M1y&9Ip39K1c>6rxsQ5{Tv_fDRi!L20TJ6&Ic5{S0C8$zhgRB z2$J~H0IJzpqaMiJ-YFgURIb3YyUaV(Yf~k0iB$C;$g#Ed?L+cEf4-OoEvF+yv+N!t zZthM{hhA0)&g5#Q%*@HDi1eEDzdLE6GXY}yx0@a!0AqG{*Uf^-+;}FcxoL#@!XhSe zLE#)&qoK>j`Wxpx++U(!{9&W%&%4`BfZ_lBYUdnZ>G~(??r$BGX?nlOSg%iBnhXy} zon1W*h9zbXE&#ZgK|ZX|j;1+77R4S%r|x*(ZN$Ik;1I*Pj`NO)&*)aY?LwCZpp|1} zI&o_H2k2!cgKRD5w;vi0DR}Zia0i1L%Tr zh51`7VRYVP&o2LTntR1oit=DgAe<6e0dQ={HHvzaX2k`OhC~dM}@CRNntX{&8$AdTj48B0A9N|HPimR`Q%R zKtkg8=KKmo7GGt?c;^?~<L&v7P|=@}}^w9iP9i zs^kPn`O<#fcenIP_i^K-JbJx!UpOVSN-_2;t8X)>B+t>n=#{vCetwnW@6wu(rcVn) z1F^1G0P6effvA*pO{C-1L{=tbP;kuS|4ta8zXqTRI!OV!+a-bCF~(*Ol2f@{fl2D+ zdTtiy05l`&{{YedzC^u)MyO-TOUK95UHSR>89d&O&xcBpod*Zv>?b-vD}&?JMm~=< zc(E-^$eQiH^&vf9ANft(J{rU}JA1n|x$OWzM)95AF^+S}o>?|sJy(pNkH-R7&bvO& zSt4jdALHTw4Ex-ANR}=&NETQCvqruOjUZ)wLT)j9mya^0$m)u~Yy-ua>nnd(>7~(M zQ`5bs#WTj=B|khjXC5sEaP^=~(aP@elA@w*G|1<^P`jW=nBVS~K5nW1fHxu8j2tAb z${liSQg*!r3(#%f<=?TdZL#f5{Q!Vq6|jYxAhKWY0M1>C&*|un$zf2zTZQwouj-tB zlV(@@f2+;}K(M4g-}7+oS6DPotlrT^DZhWZk-k%Xc&eQA&#eD$-CqSaCx$8fzdUuGXzQHYQvPyV z_j;;HZ>QPrDV1l$f40&0*EV+c2YZ9xuw~CXJhlVXVI@lPt(~1qgVdDJ3+*W;`#ZXq zJXe%u!zKQiq4VFZ!Zspf-oM@m3<*o`SzTRiHICL-ZwK5|4yb}F%=@1?$V;AY!Ox!^ z9vhW48&z0pHF_>UtLxcsI`=*Z{fF0_dT@T9pKF4HtGR!en9c#*3aKX?^9PLF%g%Nb ze{a#hqiyG-_M$<|F@Yf8KQNHqC-Xjh>w)IGn!$g!yqxs>OwPYK-)Cm7wO4 z1>_DXBSZk9Lq|{krw(}FYaHG9yB`HW%a+sG0LF0gEC0w(8@~AA;o<%)Ql_b_Z1v{@ z(435nQTc`Z8EkTZ;pz{Y}vMLcEk-_Mi5XgPa9%Z37rji@FDJQ71zI zIaF3hm>?Ay6wP-T7t115&slF?cZvBoNyz+{>Q7zMPt>9`R@C-Cr|bjYWAnk^ciOSu z(#-|^Vk#A(>Mear*8jkCbbn`<%;C=k5+4e!hpD5kgrs{)>yEv)PYfd`*DIH=8>qGxAghv2MOY_Fam&cJyD*wn@(BN@CZI5 z;8Y6ka_N-Wc!L;U%yYz_0C)3<)Nht~x+#&4pQ%dYTa0noeAjd>uzyOW@kc-YkQ zjct3-qEW*?1~_L!c>YGDG#ZCo0WJ&>Hu0~?mmAvrPIi2>(xrd`^N97oy#Ebm4 z3hMi2ly7{g&YXI35^(9-2`|B@gFqaOu%2fLB+J?LL;4whH#7w+<_Ztv<=@-b) z6}KP70`lqp(UT?f!j0Y~Ss8E*Kz>D1;fz@;g zyE_1Ws<(wvOm&W*YF?QMLqoF4(wkaYAh>A$<6~D80?A|A*&DC|;42ps+cHIHW`QuP zx1r~w&_E5%kByI?Xmno;yvx`*z61zbh3#_OhCz zG{{5xfhiN&8v0cr#YsoUB{%1Ad9o7Lx`u`~^I|9S>74aI11K#l?DAH%P>q)>z?r2r zNquIWJ#tS&MoG91nbUR^l+B={YI+O=C&vJB;ll8j1+UWsc}Av74~YhFLjhG!)4Re( zGhV6bJnC)TDHkuE^#G2unk?HcjPFU^SW>&7z2X@~4u3ceOdFr$jF-vBrnt>8bH$t5=S7ZIrU}Lm{`UXQ%0e~d zBS_ME%haSlc`?ayf@jY>&CQjIN#r4bN(Mr{!__y`i(}!8`*zt*ywsEn@7T&#qsH8| z*#IX>9+Bx@lyVwUY0xX*J1~I5;l|h!K|M7CdiezsRE}CGwkJ^vT z?@~#4(YS*>Gs}1BawM&awvi+x&z0`=|6c+f2LD`x|4xW+{Rqpz_f-c?_dI;<)Q|A5V;raJY(gF}q|VwW`16TVBkK z6L88PH{;YzAD}>Ac`H$T3TAWj%v-ugNc*AiMRvN z&qw?MKjO8db0TO)bb5y6EdiLwJ0WFH9*~*-z3jG(|=u6@WBkt$m z=f|4taz3T?Kq?m%w2o^*2gcpnXUD}qUikT7Fh`4x<*d~B=qgF_W}wxN;1&4G+N@ut z>!cV5(Qrqk$mA~B5#L|4IquC(B{Sm6%E{?Z;T&Zy#b*QPS-m1v4%Yoj5vk_I&Z{I- z_@r1$>?F*jqL+{ zeNV`rW$(1@Yv)e=n1}>K4YmAK%}l?HL^6JtcDvu(!1$X@ahN6W#iJ^+qopN|9CaZU z#4lL@GM7e&%E*aI)J}q|xB;4LheQbsZow^mUS|c$M{Xe-S2%O?#GDCYz6YOHGp*ib>y<%SWlj*`D&@AWv6jZ_Rk-sSCDt% z_ejVS&5?*Pr`a2ei+-qO*v>}h&LS|u0X`wS3Z4fMIW(NI%x)QmH>Q4X_C#KD`?^;% zI2>~MB{89+!FgqZxx+H4YjHzffuYHKjF}4~+IMw#003a?-_8*h!nh=2n@_H>2B0eR z?2nh#ZmcjLEo{*Y^+OJCjiZNrOJD4ma zy45%S-3X+=Mw{YAv(>bTT6!%DW=&dDpgy--`Qw;}-wQzWbS3F$J z21rRZ6~w;ZC`e?-`R^|| z8TBXpfV`G%SDO7UO>;Z#IQ}U_5)7f$5cxxL=fN=Z{8$<~;z#e#&iLM+tXaE7d%_X* ziBE*7xPQv0qAML^BvZqas4rI5waT72w%#q-7tuBoPdfmHLx=7)^Sr%$ zo^5a0CfrWVl=c2rT8c)YJa47EWx0>+@D~>58+E6Qp(DXZJTtKuO0`u@iCND)d{(r$ z7U{LYfE{5IZ~#)2%l$2cyXnMk;f%FWBAk--1eq1Rf9%e)+7Y3c1cm4wsWuLoEJg+} zFp*G-rq`H6ubSgV2=d(l591mZ44e9`V&Xx;<;ImztLqqGz7{p zx=8tKZOLkWDvwXEf;VybUceA8%M9F5PMSRrxYsLOX|1ixQHqb6h` z@A=h%ifQSxE_BLonV4{@$ui00J-xz4lRBW&L-1U5y>NnO=UK z9?s81UC0*wTdf#s3fPO!%pWr-DHeYpqSf2=bZMtbl(h!J14tai*xjh@gX(p{ZRC z;}L)P@y7wY_RcpsxL`LeGb0lG0k6cOoEcHo7e7+f1+M!{+(Ec6nTv&9pOwZB8Uh|vr9 zR2{uw(+?9&#uV|{i?-8+eLtG8doquUFZo^jn>~K@KmK5;#BaC=#5`)fI{+<<3eaQc zPZgF067nhhSa@X)(5VQgi|3hNGjlbm?%(RzeJZvVAFTDf<^5Zw_gHm~uqMfSw?dR3r$E>&dDo6xN*TVb(P*7Alq*Ur&pejvB*H&v z6N$1sL^w>{4C%>>Tn=7-zTjvsyg!Z%{^U8BQuc;4;VkLgo&HI5Y^$TA!;Y|P z1WrOJ?eW{K7xvm6cUL6xSr#h1PvebiKK6hcj}zvMJyc}qpZR&I+me$pmF+9=cqw!O zQEg=5)%||`+Y|_MOwd_AWHbr^iD$;NX0B2z;1TuJMEi7Uk0f++b#+1fSdZCEP23|| zk0$D*7Vn`J|7W@OmqOlam6Lvx`LMx@zqowQ)yu1TLzY#%%Y7ao*lhz|SKx)5fH?YT z`einfN?(zg31Nwz3E}dwhz0U63|_keFsIJvH9R_uYks@B8pC3x4%OM5x!?hhfc)g6xi$!T=QAAH@7&sJHsO#yZbFmT2Z@qGSyLE-2Lu? z0da>y?Q1I-D-`KN zB?sFv-rdVDHtGbOaC7m&ktn4TtD(TNC3YszG4V%EhkwrsmLM?Bf=Koq2f{Z3bv0It z)Rvm;Ls6}H1|!e6I-I<9oS(-YC!}lhB|L_S`AocdM?ckZ{UQ$_+pT)$aaCQ0yt%1J zOu!%AVw)WW4BBIPc&7a_e+$&s`PV4I7v@XdZ?`J2ovf-^_*n& zdruBa0H`B_-}6Y8(b*7OwGIT71Bx&#N)lX`ztOvRzY@&>yzyy44z5$89Z~IOh zAR4jR?0Z?x8K9Z{NgDic-6QE1pDojYU$)4!r8l>ls8<{d-jdO`+FSst?F}FQ(AV5P z%a?rfNm>zd)^r2S^o@oKjW$JEt^^wCZiONkE%si1_@10 zSJ{IQ8_Ez96T26Qs%r(669Dd{AU<@xM@66&O672eApOcld~&#UTFk)ftj-nmi7ce@ z=w!3E;vWC)HH<{fpGu_kIOb|daJ1dal0WNFo_s%7Z)$_u47a9Y@ThJOOtmpQO+gm!b4tZqq2wuAXXBWTAG{2c)DW6pe%vro-@YnX+;$`e`OgDDd0@=Xj5gEA6M#f49 z+(xAVBfVTt>M=c1c){K)hbg7bIw~XAs{1{+Akyb)Gk4 zPq2-Y$w_xfxnL?UFgNmQzhsgl+tZ4ov+R&!p z;^dtE9U!EXOES@OQI~R-Wfxl>B&JvmBz)V_+*&Ab2PP&(&Gahm67=Mx!Zq6I;KaWd zN86-p$nvZ=fPBIz3zg z;~#Be2jI6bb4yrVUi1V!l$WR`Ps7aeKEif1g0@CB-Mb?UL@2glCr~io=^NVN`D)4S z8B2f%wgooweABeOn?g>4kA22^XF&n!b^^#L$d_S9pQpqC!ADsWWBO_9(<%zp*?nKv zxQs>49DaaPH8?y*9>fz8gigVGoO&(zB-xtr6ZM*keaj|(#qPm+ALhP)ujUXr^~Ncv zs<35T&bY+yb8@4erJiaSGVhw(NT+)PgCI<=w7ybBM#r#HGCBn=b|0IZ{~@NigL#Cu z!TTqZz=Nu$raqd&NKNaTWvh$$m%@k2_vCHvi#}bsLaw_f#m%DNV*3_t9m=I3Q+n0I zYe{@t|o1a}&asdAq#?E<2^UdU*Vh-vv4<>AMBF_6V%m z!KKQgeGjp-7DN#=)yh`i2wv!ZYVYV+GNPu1m6MWE-(2W#YkL=z8t|zi&a>GId0Mgc z{=BV5eZe;DZn$(&*@TGjpvSw1k`F1(#OiKNl#}Xz@4!iX?)3hC!QRmVEO8^hv{z&1 z6c}}rWbgFF6IPyDKk>4#;jr0r`;O*5D-)ArG_?++)$285@Z@`rRX>wO>$wwSemTz> za;KH+F_U1W>3Dt}tpVriJu@~u_4g^j<#z$Y-IxT0zkE<4Q^~i1CCVmO-+0^+^vnTP zTwit8DE{O&_(%cpGIOl2ggWm6Yr>8Us z;l@kMtS^VI#*%lAmLAROPz7)v%?>zSOZETmQNC9UjDj>#s_S|20qoSNkc2+@eUEP2 zlkGYmdL`WZWGA|F*z9SLYTvxh4gNPS)N}}8yZ>ut474-a6&=jq<^-m2fY5kgkl2lc zd@oo(e~nfv1lA$8ir(Vy$)~lW-I6zSn!Cfww0k1@yWS+@9MN>2{Ny z7zRt>Qn~vBwJr1C{t}usb2}3$o2%CtKPfL67+r6i3nU9^j&qzAPAV%EUa3{BD%SaI zk8XLUL*Z00i)10*2*&oi4I4r?0bO>l{@F(4>0#@}oa@N%1K?V_`T#xyQt2pX!Pq*Cw$eQQbOLANs~nI z-ZAXJFzA))e3rB@W;P0xqc>n8oZ}5tdN#iHHK*3paxWyxUAn+ZDO&RBt3gYUbR5SJ zU5Uz1mFq^O-9UHM^z!e~?!4y`6yi!pxW^uupb5IR=CF);`>!E|5f+mVbm{mDU`e#6 z245HP=4NJ`VvIFcAit6js$OS$OX{*8IhGuV%^y6ewnfeToRJ=CG6NFEDh<5f+TF0{ z#ghFR`8V25=1f;}`fzuxP#%-rfl>N;ZD2b^Ii<^&)6!YdunR-H)7!w4GPm`~nUA_DZDkyn-&g8;ka@Cj zH7Ak%l)g?zJCNjjQaK73lAH=Cg-U;9VP!4r(6q&v@%axq4_K4ujc8$3N zS8rVL5^;}I6GPA>U!g-n;fC3qo!%zH=ksn?mMm;7Bd;}oPD@Lmw?WFMS`B;l?^ttW zE9I98JPo4x`7UW+9KuHa1?4426vP6;TX4^1A2`mQLaC7WNY+<6?X~2X)(x0093L(cjNjHT&LS; z&3zOO*~alB-}%2|uNDrfp+a+uB#@3WP;JN*C5sp_76b^_NFJ4yRy)oZ_)Pl0O*{lt0 zzl}8N9~$Cu5MC@>qZ=gZ%laSD0ioJ5c7A4{Aca`MXkqH_d&2kFfT%^Am%Yk#zGmIX zQ9Y3#47bc~@#{tgmnjSFe-Ey|wEn33YHX89+*n$Jc3=d`+*i`= zUs?X5DXOWC0D(%B$M2!+XrRknceuv2S;Fvms>h5*_c#T7r?2+bpds@W*i&vF{f0eh zAC3~(ta#9X@2dnopOIZaq(X&L<%hY0e?;ZViW)8nW^32Ub0mLtdbhLZ>Zi94_*g~s zI1@P|8eBcFI);F>0NU}RbnTzARZ}PjE#~H$^!mQ=cn~q}w zAq%qGkNvr_=vJoTao>`I5+6VC)pD~QdnEq@k1`zi6Q%DFm()Q)+%5=lq`mY0j<)!4 ze_cl@)S4glq8Nmoq2QUU|K{D)U2Q;Y<|dNM2ba_F8QHxHlc&mAMuu%g#AE(=BD;<~ zYk?fXXhu=6GZ;Vd)M;JvZG-raLboOGT|^&t2aE#tA@A?WTmLH z-!lx3A6IXK1-E+;vOPPiJdaswzm0R{LSCPK4@!Fvj>((s5$^I?>QdAm zUrSvxk=<1-XtG(39KOjjS{?jEhCv+g*<@6ft4NK)Al*pZOx}f8)Z%`^eC$P|dEwW1 zqk-vM!b)9ntQ7u5fnJL`z-*-Or!^qbP^+m7K zZ>_F6%phYw?DEQI89PHh6Cs%If^~6&$#N%EBAH>O2z{n9iMWKIW3Jwbb86CzP&LyG;>{)=pN|t6%>&2 ztXQRbRVgaq=TURv>A`6v)~dhj0?Pz@w!N)w7~F=(4?8z>MERS>pIvcJCLKF*AR?t8 z-##_P2&s4>I}TuX+I{a7JL@$I{lP;K>JP<}cghV~Q!kLk!ee@!Ytn06Xa&}!jiy(Y zT)4FgrF?)M$~K@?D2SayqGd_l00oEk(eCj0!m>h4S26xgTaZf%f$Io-13T?mHY>sE3mr-N^L zJ7o~wHsMV>U7!6;@BEKv3U4njTQNufwC^T{V*b5>i@?Bw zo)Z#z3%KlzM7P{1iY}(%Ody9tmJlXh$f(iSH zuZvWR6F=s`5M9lQNR_zrGyV;xvbe3wCaEQ8Jay@+rha2;IV}niF(ck4n*9oPA@DcP zVFsV@YW8>c!9t&z1k0lu$&Y!{qdZd0wHTKTXtY(_)*^gxIJTl-oX^ihr^~`a^WOTq zdhyD;&A}aY9eW8dg)ycJK){i!>%(i0dgf7$fR&cohLuuf^uItY0z(>8A~t~*nlC^z z4WmOJGAOtFGM={2{vBH%e*1TCjtOT_g2zITB=}*ambJ&2ijZQ|{>=q9RmZxogo@6V z2|i8;`(BVv!c%>jxC#60mOH0)mP~>wC)XR{m|1UkiR7FaZ$Jl-xh;QO!D!*QW(7nq z*mZjgQda113cLE8CyA72K)*dvin`F@YR+-S7t#5V8bkqUo44e>jhrAJ6u2=tF1G$v znh_1t*KKV(A#@> zt0zxFUMF5x-Hy?seUeQCKXlDF{W%qW{nP0!&37iBj%n|-lJyR7OV@gnnxqIgs$rpC z!QSf%FF@-DC13!)C zPd@$4#8Qgh1sRJ-sxelvia~E?*FVvix8ntj;)E@Mlq#gY1 zK77a*ll^>mW(D?A`+z+6fyi>@VLI#LrGp<0tQ`n=Q+41ec&4!Y7J8 zq3%s){W0M^l#k7K`eeu4y)TuihFY~x8L$&Ybs*5?JSv{tA@gY*YsIDJBhDGn$=mXN z*U@$BZjGCbZW8t7fvw7GQ!R`mKa|h#b~v3|Gh-zGzaxy7mZU`e1y_2`4e;7KZq6rJIye z$ytrC9vuj_Qt(>6jwzn;+kx}=2LrmUeEBUoEc`z*C;E`(T@O|-oy}EMKcGIKJV;*+ zIm@c?xKq)&{NekX7*PD2XlTfFo42Da$GaV(TsHRh%(nzw$76F3tbEF2ll`);t`f3u zy?DegDyM@Q)s&BEpnBz z%-`qU>5HE28_JfkAP^#jU-H(cq9efWO)w(a+QI~K>Sva zOhhf0srZd1tH8F9TiPh?!Us$Vxy}Lovn>=Ve`w8^d*je>^o5K+dvYczcam&A-mr`) zURm;9k${*^tti6!lhfR{kC4OpjoD{?n5}o~>B=GNuM7Evnk2_=%snr<>ahEHBA2H8 z7POJ<6em)L60M%xEYiw=UnHmAIZQFl*z@+|%9QKIpp}I_F>}(cGklSswi!}RceY_I zJ|K-&ea>XIgv%ZKu|zcb-4ktZCD!7(jPj_mb1oJ8>1l3>k=FJ1`JJ9tqEF{eSncRQ zEB!Dt7(Ve1tr{_VM#H$?Z6j3Q<1{msF!;7l;Z9tv9;_3p>T3Sva;%b?EzbtFB%*t& zY9dVwLBMYNQ8JUtS<}c92olHyPQdjqS66yPmwu#E98%Gyu@$%(0@5HSzY5(Qq({r# z9eJI71AgC22dXo|kt~^4$H-SuD5`w6ovByfH?<#v=Vmlyxj_ToiB zQ}K%lR}w>LFI`mJy?miJp02HF@i+Ti?W^V52WG2zs>@@2B%_huCqfX7l|y}`S~^CFE1DI-l_%<#_m6@+Y-vn z6tK7RX*)Q`PD@nx9oU@44Rs8V$Gsc4N3s&;9u)C&umNiS>@B;fH|Yqbs+1`KbS2g# zH5l6JfK1Zky@DbEEijS1J(J;XzA6L^4nIhkY+Hae($KI{WqOE<@FbaiB}-cR5Lh55 z&R%!gNTE0Zx==S9_W(?(0WvAx=}Yd#-*4reug|3LV&=)aYD^%aR;`=j-}T`3uaBi3 zrgnabDMA@%^j>>IZt)TGPWzE~@us0UVgB{SL5FEm%ZI1C{9|y7MvH|SJ>u*R<(5yx9;rPRn zYZAXQ#L9NdhQF(K2s?Oex59Ke1Y{O7Q^Wc$7~VGftO#Z(Wpw)x;;Qx=Jk!j0ZS`TV zu6suEc*voX7X^4FL4D>blP>0dpStFtFx2@d#?1x~0QBF_&`u;nA?bo5I<&?rm zu$XggW!$!I-3pXCD-hl&oH?Pa;}`~i-jFnFi3J^~-8OIDJWDRFNxC%>#wzUzXWxQu zGAVd+0(|+_l=>Pxqtfj z#68Cz{__2&|K&kUVk<3x0GYAk`awzkKw1#OJt&};)F+aEo!Rs2i_MI-$ivj6->hu3 z+@nGRG5!I?7BS}8H+&5m=H?EQdvU=%cW2ey+O_!wU@nD{rVv}s(3C-%;4H5r)MZH+ z)Yj2%sRWeApghlC$LQp2=|Xa!qj{DxxKxC3nlm`3SkLMjmo z`d_u<9_C_{VEd#2@}BkbKXxqUjj)X1Nah}xIdwbi{_DG;I{qackaH+61L)67E$LT` z=UG;Cq*t(r7A*z}%z7SBP-+o>8LAT?XS@u|&J6yT=&om%8z^N#IM)O*pf%`~r{f>T zoHmV6`geDXcT&iNGQUUHS3D+5X}ph6r=?%C-$+{IM6e9nW*#+{rPP!CJW*1iaPF)c z*>S<5tS7F1PAFf$<#j*(W1HXb3!m7q;}u^UTC@KB#mLC5OHDXOpatIyjodmizUhzf zw{E`WKYifB?|;iH0V;vzFsPhi(dK=*>jyHbd!-#+pNRD_SQ52A@Owm{zT_u@G6q{L zI;3!(&@oiJ@iL-;k$H61B7ZMgGkv+8nQBnVH8WmZaCz_u@b5}l71X(ef{${gofJUZ z{><9JR^!y<=4xLZQo0+rFb|Q%JLO^W$B}l2awmN9`x8Nw)?V{_;x$s}CS~XrjtVWP z&NY4`dMFjV9xN?e0ePNfA>ebR@1IIK)cAb%`+Ye^Z|4syw!QSnmYZ;nFc?4%UHUJ3 z+535WBd;O2`)-^R z)?fdI%T_+)IsX6yjB@JqZ|uM8*Z(tggPd6ka#p9+23DpqVv_JC6YoVo@SomqI)lFk zea)IR_SmswVcmIXD{eUt*7K4CbWJ;)2+oTP)1zE2Ymk$f=E|O95Phn@iHV8u-1t8( zeASz-?Tlaa(@yHW%1xbvZ8@}dcR4-%z^Nx5xq|}F@qjqC#|BV8uB1f)L><0gwpN1k zh-5s_QYe5Pf{qi?iz7#l%qgq3UURL_CEO5LOdt2yU%rOXLqw#5G^d1ex$e|vj+ZN> z5=bhC;<@O5VUJ1>`^Y1YXf!(rwA!=%b!PzvA!N#Xa!^4m!j2w^*4X}-(Ps^&;Qp8ZhZ5LgX=Qn+e)T# zlXa8v;1oK^Je#rL*j6|{rwG=x_^sT0Aq6Q_;G}eGa}4F)2k*BH%8BkQggant>$szb z{xlSaV>hSZE@ussbaT1)XDhAdl;^pk3}?m!5Asd`63#U`6O}~F11h0ePB@p=%nqmV zkj@Vpz2pB&{onFAXh{$CW@ctQzkx~ydM&AF0OdFa6=ZGKi$BSsPGKF=!g)~Cdj9^Y zGJECb-&yv;IRdTesF2+DQcN)?=R@Acs`rL#=bUE-?^g(o9>a1G&JnGE-l7Sp4CqY2 zE^Tr!PB7sFdEjC5F75~;CL(`}sHa_Z@P1JhKO>Z$EnF*tm=js+c z?$ekv%wyhh!bifep&R>!H^1|p8?Jf9-*;AxzI~w)*9QTe;o%!cHa_FeHox%~KfCGG zZ@U$ACc+=DU%x(3Uu*+;o;fZ^Fh}H+uW@rqlOf0p@d^DR z8ZVzAg{GVkRn25D$3yx0Jf6wv)2C4&<4T5@r#<9MzwWy0q#R->C9Vz2xxzWjADn-Y z%54wI5igO}z3lp*af+*Jp+$rl8hJZB>lI%lmv`P*I3C0J@0j14=+Cr@VUabD3eh1JeCT)V!CdJwf17E?M#eDrmx4iQm z>#uqFmpUs~zXO)wy7IGyqA0E$T08zb7yZDy{?`Ss{841eD#{G51S2n%f&~*ZXf=}S z8KFvx;xQB2%^W#vt?6eQC@jfn!T5))m;Ts&N6pO^_g+bfuHbNJ*Im#gbcVt@+t@Fi zQVP!#TA1<1GD@J<&?Nxf8Xn3!VxJr{+OKY7V`CK| zp5k=)-{E*D`Fs313nb@%i|a3_c<}EQJki85L_X)m`_5LT3;YcfWjy&-7#uFt8QJ=s zTTN&9ozS8Jzczh*>ld9h9i!UE{xUH!QAth53}HE*g_l`pWb@}C;=fYIpDX--W6%=O z76T6@kBeVt#Rhijs>FmVUhXx^%}KL{TMYVwsZBr-FwR`DNlFzUD40wlG?EKsQ;@Vx zNVA6R#v<9O_b>+E!r};3oKfM7gD+!>0Bu7Q^lc?Wm$QsuKk-rdgDX1<=4NE|J4_SY z*cS-X>1-dlV9O^q-|}-G7=Pibw*g~79IePP%YKh;d@RVK_8pS`CfwdNx6Br20nFVv zac6fzgg?eLv@B4Ztmn)9(wL)&ZTIa&nT-75+D{B~X&CsWcJ)G4tL7 z(C03HtSGw|InTPXiy{<5GXIWPmEc0Yafx7nJgFQA<b2WeZM*8rFu<5See%6e-Tj~63*EpzJW!QYjsa4JN@EVBmOh!ho0ewH zSq4f9jwS=f@l-<)%2B&7H2h~uOSFkdGJ2Bfi%gKH)6eGbyWmxCxp8FOhF`{Y+0deb z*;6NOf9j*}y#q2SrksVqk~an3o+g6|FSlgoG{#si&TZ1i%xq4-Z-a+Z!|0Csit_)qw@&38|(?$1} z*)m<^X1mvn?cQ(L_35v|6QBDFIw>h|T)0Q}k6r;a=L^|JS};B?92T25Zw^^IT-(3w zKbg+Z&q9knVJGa&={sQ8=ROQ6U9ffAmMvQ>d0S}xpsq|i4gpsagVG>k2$nv&D(<-? z^-`;5cs+uw8$TLdK%Rs?Wy z?o*_o)!bQ!FJ1YpD?d;S4efvyS)i-`mN)+5ty9Mi|H9LM{yU$7bnKvT&htNOeWEfJ zLGL%(eJvIrlArJ(=3NsU`268hu3^A9N;zp~C%%5a+4Rkm(2$(yPB6K}z1T0}A-!Xy zDHJG<_g}6c2bdcN0Rzh^7cOpkKk*=5vSICCLgGP%6mgSy~b>Wrh&i+n}VBQMneWEBX85z6azh3l)pZmc0i*CA<^1%8lFy}(* z+n2fVaSs#^T;uFE?v)bmi}$nRR+)SjkXh@mF_9J&i;WY`)AGs3Chg2jgVv&(aoBoI zpbNEqFS8asc^E9O{u|;{s755GXhj8YKRnpE=F!gWnz7;>u zT?0^zw(s!*`MwyIj6cpJq3Ry=h zA9VCHZ$PEKm=F_=g#=mE9w$AXH*r||0(fm3r+GBBXTPoNAz@5sd+(GQXDMX&mWDu6L% znIVfy7>~SeGVy^DTY+EO{Q95yRZJ%a4NjSMPT<cG2tKff0Ulo(frplrksy zV`j|>FhcVc##u9H)Y3qh@BJ7KN@j9_)s&V}Fb|twqm6sm`yd92n}mkI7M&Yl?Zp_r zUFDs6><8Y0bq44;UMWCXA|$eVLvHgXS6R_rlg|P?_C}U*Tl{)p-=tmdYi2h8q>dwcPnYU{MFZ z90Zy4SIKe4{ANT{TTq_kQIqeQ|38yqpeyynHSM}qXDNMn{+p!oz?X$K7j2xpt58zN ziAL7ftO=l$oz1r5?;HQ8V|=ATMH|R-*P4}PE$p-X90RsE;T$a>T3?C%h=N~LzTfER zD7v^eq0Rc~o0<~PpNmND3;o}czVV623YU80H2%rtMyX*m4nBl_dm8^R(;0t{d$dt26Df6k8LrDlCAqWS#x^=|;6O8k zbE}RoPX|d!*{#Luh;`y;LiGIen9FmWH^-dpGJWJmW6M8*7K;P4rmq_S_9y2Of=IYM(S_X_nDGbM- zYF1A4p%v)nuJH;1x%phut+bt*4b5N_;M4Vc;U_Od?yArTh2Mn&k2mVbk#GS_1R6Y zefy7sP7`y?MbZy~yF1QB8PBifBIKNNut?EH%>R}2ilC&?TeD`3g@ZeHL$h+C?|`wb zNISH7#Pm@nuLCq>uI&SyCpJnMh-=^k5`XUIAIuWafOfJueqWw*zN7%9-He%cNLmq| z2yA8viwDJ0@c+{(yj{U(|HPg?_$v2|`=G_5z@RmKeCrpPH9Z<soO-E;k>4!tbwgNj^VsT=>%(m9W86S+ylU!(Eq z-9lN45zXr->nXJ2@*U%tqaM?PL5p*Sq19`C<-*s!<7YtmE;I)HCe~ucatdBlp`Sb+ zfw-r|nL#q_($FC1DPHF5Im?f~5aL+a+393lcA1F&UZN; zS1QE)MgmFCXALOgyHHTJO5Z_`SmNC(?XUm~y5`BtA^FizHkZ45@0WJNW1s#$TTcJH zJD-3SivqN!n`gcJ<77>jvYE!$NFFDk!WW@D!^av_>AU3RmL$$ZK+gqU;I6W=JRHYH zgp|nphQ|oEj44eBJ&SxBp4Ykj^2??0?Og~jyX>-#_@5x2DLVoHRMtZP)Vo!53+JN5 z^R@V~&SI<`%(OTEjj`>StG@gezAShmpmmNs3QT5;_pzv>{5$)05&^6#-;|xp!4_W+ z;EWi~3WLSoD*|(Xv)@vEh;4*B8AA4BuaSp(#tCxeOt1(DQO}#wUK}~=MphXiESIC(y%%aGbMl2btGiojgEc6Fyf>rK%zt=P(#ob(T&&&O`T7hF8*SH%SC!Qrc*Pc@$ zE^y|W8u={QKC<1kPM4bu65zx^(JlG^ll3&~v_=rM=hz<4oNrr6MnF5RtZxy=ov|I? zd+F%2ul@oIFlJ94zvHQo-F~|}#5L8klarI2xhz3<*Ua@3PWUt}W`R~(CkVbC1{Gzw zXWyUv((_@iZ9@Ctem2yCR4C%iIzQGXdI^&$)7sphQy@R?Jrwrx`@r}MUwzrCZ+h;> z9W&FWi8;@(Qzvde_CNpsw>#lRj=ON~)B4cbQ`yJl8084_53o8d77mRUk$X)!#?O=a z#aV~`$T6TdLPKDWJ#{_o|ME_#(n*^s%k^bYj++MGXM)#@5|B4;jJC`EN-! z)^u)#0fn)%A1NREtN#e;ylRzW-cRK65n$&F`WfOlY=K|qV?C$*j`6LEXI=jeYlhzm zEfx)ScIGZPw*PiG_|P6mc`P|^YJEk{mD>DiK<`gWb{<`b1>N*0mjYYPH98)X1w0uT zj%aZvG;UkBZjFRX1Pw5mV{I~(_W>wOG5i0K`4#2z-L*F9hhgspPE2^2ybhqZF+Z1^ zYVoGv9f|PT$Gy4#Q?NB5g;Fm-o5cHpe1?Vmch&CU_cjTZt*Q3s(7P?Hw%@pMBP=6m zTGiZMQ*P9O-=}?#cznebSH#~S)|?|WWr-Po(M{V{x5D|7ff-r-j@38*2ehOo--(_3 zv_7G_vdL?bxmb+(r9}#j25NH*uOrK$m^%7lXcAVg%PAWqUsCD2EV%D{XyqWow+W`K zrS!ep7?rd=l<|GVZDT+o=hApgJUypxmShHbuUUYHBcE^iIYJWv`MDh9QNd6?cJJ-> z#5b;Xr+c8qqQIwP8+*o|ku_b)3Yy#?F!j_>EGS_hl?MWsY&mGS}hQ+Dd?o zd7&ogTx8am@T>hc-nr{Ke6AggQb+6jb=QKs3IFY&ypOgNpx?HWOhWP?)KWw5LAay_ z=OTj>qB@PV(e`Co%JL?|_uCB{HfS_XQl6o?kUnSm-}lws_Fq2zou-_+16nK&Fo4|fs`taTm;MTjZCwYt zd?)8lX*{jaCXwk2AU__Ll(KuF0y=-W@C+#|^19xQgaW+f1iKuuR|RWlb?8S!g7qpN zt43%~o<&yV0{SDA@}2!TMTK4PWW@3}`e(8=6tPT9e!K(o|LONk>EP=M?WOF%al^IS zw0>LrM)JM-nVkInGIBLv%MbHwuiXFgZBNlTLtv)dAhgh&HRy<(AZ{|pT3rvygRVUX z6D2MwqP9q|B8q$EI_UkVA3?p#HOvK+%Z)*xR9vx~VgV#d$fHM(8qC3s!g*^sUz%V- zIwF40_3PJjS}Hv%G+Hdtogmu$=!*p|49GT@411mB&0n`OGYv|)X2xObH9NuyWae6^ zpZ62*q=xs~gimAV5foPhlxwj~7s{kBF`yzjcwr{x;<&Ew%>SRxWo1D4ajC@e;Qcp_ zVMTGEErGM;~mqa)@XTqWhc|=2+GYas=@AbzN%~5M$ZY>CI*8Df~dbtnP5oJNRPs&JW z2hcyTdQGH1@@>I`MKNKTw^hF%Uv?f&TqMy?CIF`h;lCGnd$8QQ{@f9vT)W3|%tMIY z3e00cc4A-OeaBj*2Sw&g`kYWWNc5xFko}M|NV4rQFq3??c$#Sv#}NCCDC4O0gmDUu zIw8ONY`b&_+CnipIx35@!caICk!F2+WIRALTB*`ccFe~~98(nNFO+rN+EF-f-P)Ht zP)Mf~Z1H;@K72S~B=8ScgwpaaiAvvGK=7m%Is#qmHU2{s>ICc7t&0S}2aB6M{wZh@ zhF0H@yX5!;$ulMG#RAtNxRSD|=*jP~v|b3`Hr?Fk9vFzV7<3o+g1)#@B;&3!-?4Gj zmp9)65x<3!&eXDuKXN~3F&Edy$H(WcfBg#&*#lp@-jp*Rf)@tFZlmV1aKiFYVHg29;rD|HsS3 zFHaO28#ivmv>!>iYp)J#BVUF>Jbg$0zxi+FQQ)PJ@86XxG}zJrPXKF{3goo*{915v zhnoB8tWg$pgzUG{3dHvy%USM8$kcI71_Q6uIDY(iIP~ul(k3y;b_-bo5<<_cZb`dk z#(!3sMRmBvfsg-?odPz#_|@&2^8o^;V7uVPH(v`uxiUUpp^1FVvE^TtKBb%kECHrs zz~RR;b8pv}^%1=0QQ}umz_TO6RkCU@z71j_KLq}>Dahz82U;FsS3s}(p>={%(x8f~w6jnM`2UEb3efoNJRX0d-H({K$3fm|UxI0rS6?r4p;NUi^m{!ceKhwB~X_sD_aH|Bxhuk#6uUe%+6m z6_@W=H?-~B{;*whK3EvO;2D23{-T>Mf$ki|>0>X24F~Uod=JpPF?r4*=9`>wz+GQ$ zZg1>NV+3^9GUKOLZr%=%DACaqM0%{{c)4(m$LDEsf0gf-%ooCfF7NSMG2ljn!X)3> zRCumD5?%zVb8WxyCLOF$=Kku&R-Jx4OFp-zQ3 zlbf+BY>P$?gPE6wy|kitCMPEi=+^X5KWsRm6i%S8xW9wWB*`)>%SqUjgIZ2N@`D@E zzLhpaqLQ=9vuE(<6l5)~{QjVHa6&got2oRF--#zd&4$9erp*GVZ^u~vr7wL6#65B% zOPUALHci?9*BY^CsksTUqEI1iwf4;AfI8;h?=k%o=4{3&?rv;q_thz>1{rl@mD4>B zw)BMGtMy?J&y00gHjD6V9JAiT2j;wj;`dqqf|vY`DT=G0#X!N4^l^+Au;PkqWDp!w zo=Tdj(M0V!R~k2UOrB5h_6!1eEJGRz8JbZZe4<&=+(*{F9d{V}f|bf+jb0}GRwzN5 z)?X#hS2vCW-M7p@60Z-si+d?%J;!rt?cvW^j3j>-TDJjI+2Ty#<4Z7JT8>+*l=FQh ztrxkwhw@oCxO11YroYw9w$}8;MAw@B@;`%(S8c=PA3$Tr^(nqwET`xOS;h>U@_IbB z=P^*myaaS5s1Yc8X)Tra7^n(>vAitHL;!aUuL*}83>x4z&8;EU0bS^hWt4)-DA!Hq zT-J~8M#841jo}}+AR)Y>8N_lH&?5O?BzStb<3g#Ew6PKaKmIo6=I_r*0iv}}2l{MB zsD1-&0;(G{Q1ec_owT~)Ixkl>Ulb6}D))m{zhTG;;r!Uwk#2YB9f3+6M*yMjzJ@^S zXL8JfD3j~j_;E7+nU_bn-;WQB8^PR}rP3@u&ski(g7Lze-}w&H8E#CD<>dxkk}$sg zyWc^v+WcWbXXO3nXk@q!Q4$9ID4-c8CsVQ8b;_J8$T=?Un zu$zWDX8QE$c&~31TdEB+-o1J5nkj7MT!NLMP&_<54AV2S7XNp*%F$2!c--=8xJGOWAiwU>4_UwmcJ z>5QAs$R+%To3fmknK`}3Oixc7{Gb2jek@zNb}eerBT;k0e!;Y(+Qf_HrF=ifaN@Hp z(`NDZ1<-|QP0)c%eGj(Qi9Z9^ftDorG!nR;np|lS+Jv99Gb(s6+C6!?hKH4(BQO{*l^(?AV#$^`kO4?ptABU(F42H0P};8kyVB?cUW76XmW%9U?k^@<%FPM*QBgPxyW%Jdcpkl-3|g8(S6N!f=h2H{||Xjs6wWZa50v*Ef8L2GfzVP*|K6plA+ zz#vY>5%G$6JR8ce4#rPHe$df4sR&z)&LMedUxu`k8^QSR>G2GSQry=S2>0#W4Y2dA z=9w?uX^Rn@x5uExnE_qiSFHMg-S*O};P5}c7bf>&XA1N-&>oJ0VulnTL_kM|AXs%1Mw48g46Wa&2#;%@bJhQ^7#{w)@Sv5jxIgSn(C`1- zaN`edKlCXtq=yg9!3QSS!Ue<+k6sfjpp-^{Gy&CsE{J9YbY_vM2=p8O^^ad$jE-Gv zhDNS6MdwO%y@VQ!KsVC$mVf(h%!|F#%+B1m;^^T|k-(0^zIXMZ;2B=H!L(4AqKgy- z@;!Y!1%}fR=5P$+9j)@d67wbE@msieX{>OLfqZB^H6qJYqSc%{FFaVZdpRLljP=00 zPnrzLoO9+o$E2G~UB36Od&IPbx^ig=Kq{R3^YItIdfV{$`d@(-jX-DBnsUGnn(v$c;`o zPa;;MhgF#GLm4i&!}u>(TyX`k;I&+kG0Z~MRArJOdN0Q?X1>8-gIqYT2#Td`gzkdR zb$)4~;|VPpj{w+MVZoP6c^@oJA4!xanY3$~;Vt~8oab?v$9Y`{W#!|a{V-g#{nKW2 z>z}&QOQ6LW1Jkj=#_g}LBkOO1gAd^x%K0vCL<#*U%&!qoJ@r%&=v5j-1j?5SPv^6a zeq7w8*4QxN++Poo#F=oF5gZ#3A^TLB2*6O!5Q+DnoAmuxo?Fu|34+m{71Gs(>ujxg zkqNw4as62FO)p-5;p>0qXSTfYU4K5jVe_ANR;+rbvzTAoOE{M(isDK$Jo01sj4l7> zwl81whM)UgXMx}5gu%q!Jp|xmgxF-ZK$t7#kY|!&u#aA@CnAcwZ|@MSgn0n~bFpd! zP>`mG%bIJ?wQGCxlA%V<=Rgh|8-V3Uk@`}prt^$FGD-KDR)+H z`?fzbMbS>~4FS^K)z9Ak0ibWpas_jR4M3G1a(BH@Ci_oQ1)j4FO$fI=>PxG6nOsLV z_Xg!eH>TJDYcKZE-1)|r;{e3vc0o9gw?kE-1W@I91{yqQExBq}_&W6Jqj}c%AG9pf zB|gTR2&))u|Nvj6hw=i8a7JD|nlz?e(X z@Jn&lAkQav1QqAxNwfgvrvunZeiDF?-)A1 z=LOIPkXs!1oaviB3)`-HGcLUaF;9}>5E11Nl%JfOn#9ba)ZqMH4%rvZI<4y0g3kBx zM>4Hor7j7N#XSGlKw#6RO_h&CYwmLvFkpgZ5F%x+RZfttct)W-GZA(HlIZG5bo$M& zd&iHhd;Uwmf`a*cE#>pZ(C`~jP~Uv(&;Rba9XDSJ`M`2K->=^&S7A=GPS#pe89YKb zvVu9)`e$rkmUFaGjO_8_$Ai074*q>A>!D^r5N&F z#*ArW6oea{L6=Xr$@Z4_$1!}t%m3|FomHc6hZc85P0>5Bz3wDMPuZg@dR#U_JX%ek}21k{$0^vjB1-)9Z;6`Dgp z8tp~6wltgvhO=8X;Q1Uq%Fy!eEM^Jhw5wzpv zrU_F}odm>&t<>zeU!UT zty;CplD7t@n+2t7s-%}3-t^2rf)5duy5HtkF6x(6zH9JUAtIg5#VSeqoT-$jrz?On)@9(b#4>n4# z7|S6Q3I-ZQ`UYllaxz{1p}^5MPrsBX?u*q&w6U$Zr6De`#gcEghtkG_~Q#-|1lyQGS`7! zD<~+OzX#phwX|wM`GFqU+L3n7j zSU7Uy+h)!=xW|z#Pd(MFbW204Zvaq*(7HLn*A?qM2YwFe1!s8;hf%nr%rYT>F2C;k zl$)2JVd$%$P*xL;vqr;6zL84MUjI*1%xM<%a2%E|cp)9*9#PhgZarL^{?ylAX3Lom zLyI#;S4e;9J6#(~!=MzlxsjCzvh*9uVa$so$`MQkKC5$UUu)1&4ierUy(~=$4jnqA ztw9<{*tryL+N4yFo3>O~aQJK7>KiPILB7= z9MHA?q96E$KVJE5{|bLk5v+r5Qqq(Q$-9$A3!oY`p9|gGvf6!*t~gjj=0FS!W_TABlAMWvNXt`B>^fh1rAh&b>9ENxpZsP;P0at9U&Hj zzu<(iO00(Q7u|G8n^JB0U}VFEUh^L|N{i_?>W3j#gq#b4z{4$)hB2Nk76=i{H9#u# zd>PSIUY06J_U+u$sGR7Xp<84TfNDI5*C;rq44kIU{|!L=_DU)zZ4OD`<|Swtvhyrv zlBv0e_n}1vl1V1tsNQc{ImodMehs~9bq8Uc$81M*T#_Nhj+Xl;;PKDA%T68t!Pc67 z<}gDeZ!ezpJs|*VaChg5?%dL0UdD~3@ft02I_v1y4UTun+$5z5t|oKepd)z~oRrB` z$!6A~S0JqE{#db^hdo9b%(;Fibk#Jan+00IZa}nyL%$AGfk?6 zR1qPCb<0!#xyjI9SJJjsfT_sB|7)6yJC9J$v48)5O+%fy-6>F&O$~B!k6^(AQ9+^6 zuhqvnTL3~c>othf5vSAGIoEFTm@J2t)gCvOFX7E&rE6Rd7@ zN4(C`_QiQu@zQEBKUk3ltfHJmB`_(_!&+1e)j4YJ-r4DUpfNDx=;n?Gm}R1_V%TU- z9(bj09mFzFZS2(<4gwl6vzBvTS}G)forgKGQV!>ac5#n5u9PcT&|!7_Y`$exjf~V5UsBlP&4+upw_y!FFSNb#}X?#71z;55Or+k-WCgk9Lvc%RTMbIk^{+< z+ob%^E@Zr$6D)3M)LYTfg&(@}I-aWilxOz|>3JFY5n2ZVOsLDf2Or-uUo)`trUjFb zG%J*;LVHqhZh{DMqgie~PXuuEj1X~YDnaBRwW7;)>b6q0Z|81jP5%iqd*UZsYx^)}(`2kB(l8LGg`sLt4mi?!Ijtr@;Uy)}PCHdQs7H?1v=n%A$Bnu1eZqlX)4SF3zt_30J#cV~Q?j|n_x&Vb83d^{=hS~huxBvJcxWXD!T)FOwfAy>G zuwa&S>DrrXFIiUP18*jZ5>2UuKuu;7dS!xQuIE+WEx4*Xr4r9`u4#xp$hvEl@oXu* zPE%ldl-W!vAK4^e z1b6>_WSsG3P(Sy^_CsFpJjAimzMVXm0=9;_;B!)dw{HIT*7fp8s8cdX0ZsCoWu6&eYbCyQOr5y)GyF5kO>3}1$Hti~X- znBYRQF1>9YY~@nzh81azaE8ztaHd=|N2HzqJ#g02U&Zv&S33 zQab6EsJO8!nL{~deZOScE}AzVpIh*`-HM=mu^a>+fGL*bwKYd}-Up3xb6?>-K3J-> zgiisze+DG;KjV1^y}xRT8~>gZyf%41XU#()-5^kvdd}6`X&XLJl8P8D}NcbK5siH zsn=LmDNc_xSvDTKKB+FfT`VkQc}tdIrE3_>#=4hH7zfYzHXzL!cd-%cRON@{n!uj# z%>tZ(xL>ofMQhutZ@uPcF`XF?=gL!)ajSezPAlW1g4aVy8?S=I6{6C}(z{vic% zFJVI-&souDniB-d@u@ptZ0neCZ}-P6$9Jsm=5!uG*{08m)dzllVL?N~ntQLf#Wb7Y z0$XYp1BG%0coWv3bK?ib{egL+kL)OC894bOe@BO)mo8iYZv!X9Ly_#6^=1$Pdbk>n$t}*e6)hKt7IkJt2M}$Ibtw-zzo!0@@XQ7ViA#hb_+2fyrCSm=vZ*}ignZpAwNP=jX)A^m+ z{H-ZE2M!^-2X5p^Dd%3ZZ{NO9o%1r`90uLRy)Zt2U_4ji{^aJ%I494;}DSSQN~64SMJ_n&v)tPu!PHSWGk2&4W&wVvQ*eZ4`w* z7EI4?j@TqY(J(y@bAwOX(+yr5qPA1s@VKpb<`usK1CC;3)sL>Y>cug@3>9mWv%Jos z5`1N8L2lqQm1{*s63@8_EZCdB4!z%9V>+cdUg(-FqbCpHc@$VH`b0DeY~=dhTe)tW)4~x-qxy+qv8R%cq}j zXIg9eeBos3Yhl}U!8nMhcqbE|=Fcfhhoo8lJJ9^|J#TiVF#@`GbKiQ+4(84r=MHppC$FIpTPD&{?5he7 z1ken{uS5{gRK8{X`t|Xhn-YYTvNv(VRe(Px;grLlqv6V*Fl+Tv@c?4677+fJT%9XI z`}XbIrDdGMUVi!IG6H-Q;L)H$F)Z@iuFu}lTGQtbGqmCzaPiewlI-D&*uJi#CBi&k z#?r^V^TK?b&biizpZ8+mS!o0Epm)=(guQp)=jKlKV`NxjQFO+MEHqigGCagg>h0p)2 zM6u=y3v=0Jm-#Z(mI`J*-p3evP2lv_bAXB!&aT^W^Cg(73>pHoqOZH++7Pi=Dl@c> zUJ=+GG0zeF${=AbRh9)T8DvHvL1rn5e@_t`!Vt6Mi9L&&&+CNiImJnnAm2x7wEeLg z+lFErXz%X{JB@i9{~?1w#k%g8v7}9h#x~vpEm{b4Mpi~zPs+r|JOryGU9MYt7MMt> zXm8O!f=i=ek@5Mp2uiJFQ3*=(O@+DkO4Or|O*F~P-4?@df^_}{s2Ug~Oy=BXt`7<{ zrFMm<4ng9C$5vCvr++V&X04*Y2;OPLAIo}6v0W;2JL&IAw#29+V3ShHX13s2;DvQo zo>q-|&1SLbU%=g0BK zQMwln|5C(&#(IrdgFc*fJxZ9KC!TmBltqFQ+_;!K7e^fdN;=E%maQ*_reSF1D?u3q zjJW}JEg+Wj^lG3B_VGMeG%%%!2w2hxfzv6%=JOu0twhQ-tzOtCeYGKRr!=L5){Yq9 zMRQk6G~_(OI|Vt!B`|(3q8j_-u`8|_FNTL-2`ySk6vZXpyCM_O9jXG2oY#Bx=@#>V zW4Pt`=SmO1Q4qAiX!}aE7Twa4mN{m8=5%ACxuaDI-Q2?ozYq@GoGz_X7OH(Y2s%wr zCTWU>cuYa!a)SK8qe$PR-}jPptG~}KZ7FGECbJI+8Z+Nsn>KB#d`QZvjPTz?ac_?(R;+1`dpiNw(}!SjEP^(-5J^T<6TYSJ z9tT&j0QW!$zi0sKvx+-eGepff$ado80i3a{tJm-I1{K;w$sx6=8c|lqYk*+H5@vMO zb6)UDXWndHFoYJ1g3j268`)`Y9BO?}6L6YF=gu{>@z1}BIu9K@c+l5n>sPzi4)3`K z8kG}$bqE#*P!+mCxcrBGq`l+~*S#?3@iB-nB$Ubipuv}u>v!@D7;u#O8~2n8gdr=8 z9T)(pnb9c`P{2HyQH}SJ4RLM%LcsUX~8bmy>%thd&>`a>u$R1c%cw_Uz|-D>_ECrXo$? zsZ96;DJUhNbv}@}w^1ldu%n}+IU*9E^;0RFCijb|<~|Ue`#-oup^0s2 z?+1NlC|S^RyoKb;0zz!2cs@WWBEx%0zO{SM?GoG|fF5^=HC#q|SB_;_6zIvr*T=Xh zpZM#$hE9C_CR5Jb4K4D(sP50$fpV3fH)$NI-%pgO@ zG6M}^45p^0>fS{PL^+|5D=kbP_W`YyHY=Webt8pyM6qfWe>bfUNoeJ{^ImI@cDl8u z*J9yrEc|(>Jnejhw^lL%S{S!+u}rm-`=zR>A(AnD^5T8#Or5I9Q`dQXCH=TgwC3E zJCxw0l6l~YO`Ex{2?i||hPwHmmuUj~-1*)IF;HA%6i{Yl?c0I++Su5bG(^PyOTlyz zmga295Xb8n*P*HO$ti6nDDvLFMaWily=Rxy>N9m%9cQm_cM)|(6eDuBVKKSRqd)KLl?%fSl z2E%WwSFiT_sjq!`;?Q6H(SuL@>HFTd?@xaDhSUG_cRTFVsgJ@kfEiwaUKU!U_SoM- z+C=F#tUYdkTt=5Vdd>d{Pb8GXk-@ezQy+q+0CS?Rz1X|CPfkwe7+d26kJvvc-I46m zf&U!HIYtPU{vDJQoxVR%dZ$<~?8^aHrWMsMXNafe(3BE!?iH!Z1{y3yBVT9kFX2W@ zJmNg)`in1jG(8daJDpBWNayz_`{{jO*$t2VjCDXEz%b`((HM~XaDWtm3U=(l0zmlsYyg6|7qsV6 zFf*Up%~e_l4TVp)cFk)q;YHy<1lY2)#+bQ_4t?RC-A~^28$Wf-3F@;A7u210 z_R1AkT!Y#~ZJza8$T3ZB!-!y+l!_*+c!Ra*A6zI8=Nfa&(=2+B(ywaynmN`WH+M(q zHeP-UDT;G*wFkL+7nJ!zvoOX0TQGR2C~WaPNy!@w2L8I^^DHTE`Mm=V5hO169S!jv zmH89$im!nLTZ7J_(hl6y`t-0aJ<<(F>r2POC2Q0-ZQ8^w=UmyH&Z&=o_Cxl>-seN> z@}9tbn@ix59f2R?F@!u^d#int%fnMl7esrRG39#BBZbrpfMLPJw5FSJ$WG{*Dko>O)qw5 z;uppdvTCp10s8l<7^PZ|561MLj<+XJ%&nFChEh5Zt zWi5KxR}|vmoG;HoD>{BYG5!~XzK8+qD_r2I2ta|*Q1FLF!ZF+7P}6`}a)C&$lQ0<= zC8_LCwTWcql>(-9B6_1!F%7L)72c1xO(4*`&E&*wxB`Twt(&iq-UzT|81dcEg-*Cv za;8C3!uc|%l?Cyvfn%8Z0eT&fX8^D$*$An;$SNtxGLrPmkSdTbs{l&hF|>NDu`wkA z%Bd5-|MY|Z;|8*rCqnq~#2@_RhweG{wJ*FL1Ivwtmd2>$sY_(K!HEa(BryJiA!_qW(Jx7T!ta6!QO=qg~ZL9H`lfSq)a3@t*orm*zp~}(%m59`!e@`wJkF4 z?^#B}tX$b>_jY^g*l+H?>%H%udh{z3!Id5IOhgd8xnK_L8fP*p7Iw0#du#g9zxyAr zu(QnzBG(xi37IYoS@o_#U8^{afyq)-x!GRFY1tcE=0IFwTAD{q;sGw(~c`bHt6%J^gavE@bjjdKj!AoCm-I0)^uA=y$@PIF}y0o1*)S>{an|^ zfB(Ouk2<*lA%B!nqCO|bMFX67f(0FgAI2a_RIF&S0$F$~b+icXWX;R{uckt33IjB) zR;VX6j#4nv1{Wkj;u^FrGgyNqoJCh_Pp!QG>Lot#>(9%RM}O&9%~15X zaN|4By0|fSS;Nwx2KYYc^zD_kbuAVQKK`vzu3Zb+AwblD(Q^Mplib|R(C{rleQjc5 zf(xPH{d2CPvMmA5kl8)Q;J;N9w37K@)22;)EJt9LltBm2gHB4Cevpg{^!|Zn!@r;K zR`%n7lzy7v*K0$gDOUm}bF7;`s&nk)pS|6lp128?xi#I*v$sOMVy&(}aycZNF9`Em zgU&iioP3y;o)aFwQSR;uqF9c|E>P;&`vy(YMe%03zBC4jEf z1kl^J7lXVMp#4^UoN&Vj4jkZpCs9ZYx?PLsLC18#$jh=|cp9G;%HuWk{!!{T3I6>= zFvK8tS(ZgBM_=UTmDRYchJ^H9mi4)LcJG4^*r&esGF#4k7?v%}ICFE)jp3XC&yS0m z`aRL_*!K^G0%L`^_HmC)y8)oLr3_%zNK8-e&oR?l zTT9qXIoHaYOr547zT?=~n8{sJ&Lxu&L6Zk>$DrYF^rQ(@1&?+u9BYiFdaoH>dnq&# zGgF@y!g*v6)~s1$nQNUCwsWp~TDj)(URlfTE$Mzux^0XWZfNtx7$`0XI3SJ#V*e8v zFLE@p#hIgS{?9VhEZ#-;`oxpSR5eFyJhb|TaEM-qWVk_S!gjyR@WAz9O0OHhUH9df zV4azkT$BDwpE+DUIzXE#D?t~wZts{=jJX~4^ z4vyIHNtg?PA$15S9tM)xx0GJQKy?C7fEIf@JG&DajETSf_-=NpwMU&Wm`wD7z$e0a zlLHw_OioT(mUmS4*|5(sLJ@9K<)_Q0{c@o6Nm|>PF#f}uV5nM(3Ny0$N@yC&a?kO{ zzVhx>t5#V`g_bZ7$BrE<$@3^DeCIU%mG!!iVMxO9=;)~5AN|5TyX}dI--3oq@&UR1BYYcC`l{t3tV?gb^ zTb8JNNVHD)$F)P~cY(0PTa>-O$1z5hA}ea(feh0+)((7srC1NidpJT|$COLrtWAW; z_;;3&rcRW6Vg%4FH@*(JxaY>dzc)m1*Pc_1j5IES`}DCxzcu;!PwhE*@?@#3IR~f; z)&TXwc}a9ob9dM7@&ChF>PzzO@YkOF_;3GSIWzMhGy$FAt8hngP;zs4Qcl7_i?f4D zUk=Q)n}aF>xwyw~D3p=Hzq`#IZ%|HjGp@L~^9?|!vwpsDbGc@1Uh4f>ofkm=-G&0O z`fDLADn-9<(mdo~j(<~Iu$<=!~(J_rDi*qRo>dN|be~*(pd_9bn!^-(Q zo0K^vp}an~-?wwOv!?%~nO$bqbj*pq@!N1YSFvoBcg2dUOE`ea~<{I-2yv!*xa+Z#8?ge>V*UGQ6bx9HB%&F#D(C3s7 z!R-$<%eE+riqI}l`36ilmxG4y{V@v?XPOWsj$%DnmfpsnXR7mwG8yM&{Z+?53s6<} z>_G&7XN^JfYl>*%(-_4H!%3C^rHzV9p-FJo^Mil>yC0=9DLiZEQm~1P0pcl6bBi|F|wEUAMcpyl|FgqLA_b7iit8 zHv#ND>I9bT7zqlm1sEZl0JZ;Po3ONwp=cF-WqA3- z-`r`B?|rQ^q%|fLWKWE4xKT+Hi3szq%)X%QCBM=)dWpp@&A`1P@BTV@Ud&8^=k1qlnO)zyNy|Mk1$4b6}XJevnf-#5TZG zYotu;OG7$4I~xLp1cL7CnxeP_8U(bS17i{>fS_-;#5!1I5GulU2$qR^7C2MefITZ@ zWZ=(_WBSlv{^5g7u%f%pgFdjfTAcR9;KjkqK%Z}xCD(hd@YrLI$v{E=J2?fYteT7g zJ3HMNE4t})Zh*0^!FOAmhm$RM9-l<|T)WOE#ZhLLPJvCme-9tnr=P9Nvhr zNeWX0SAcW)Z%LU^02F>hDPK;=DKDU|96d>a=0Ijt$SI60En^Jv!{l6D!jlj0fye*y zhn7t`HZy!B@zEa6a42O7j-)*)^FUAjunzNDgC2f>BRu|tlS$u@JGWKx8T$KB1JM*s zAO^}}#Ksq8s>Y8+TCBg5l z2UG|<vMy7y1GlX?^+hjEB6k`d!TT1`0!zW3=IONS!4WveCLfDH{vdtFCTsM(UR4}{kLBi_jrz40n!ZiGjM!4Y9NrAZ-R^aJYh0riBPH3K^ITW zn(OP%PMx|F8i#U^S3b476sgTNro7x5h_NKd6tLE7KsIF`?m$4S}9GoG^*8iaCs8ZFbljVL&q6s&V@ zb``;eml4Az*UV|pHazk>^fI}|0BEX@jb6=w#&P@ggk%h ztma&)1fY9-oD~bY75|LqBV6!59cT=9cjy(s)-DHBh%t-ep8L3J8;7tVMxlW_s}ZD#4gy$BK>5!pS}Ilx(h#f;(H69l^2?EDGa$j-b(}etvIq zUkOWE5z!N+`1K*}>xK;*`ZC$E^i-{|UWFV7alS*^BiyV(980%%O>v$G^&mW4;mJpK zqszM~Pd6gIi;A_ID@zfn?;5Bo967lB%#~ApV<9f?vLo>8^4RCS4987bgN{J201?Gq z!haZYE77iTW-~m8x2c?nV*RH-`N8|jnVIHj)*Yswdd#o4L+d5w+m7vqfuh1P3U-TZ zAAX!0FbP=dF@LYK{56937e(Hqh0@FU>$oI^gmh`q$U!AA4UF3&`w=Iy{<^d58X44) z-4pf&kIu{M6suM@YW?}4zxty#l6z?V@*2FWbQ|D{>f zt-75)HSoc=hE}XX%|{}1Q_7q=hQW}_sPDHF1-NB+7a#FE2m#&J)R+CZTYmTnOmEbf zoam=VFMAUm`t~7jtVlB{juG%O^n@dKQ4Y?#F1bETGG#BpTK;aeeuErO{reJs2P~5g zzpn5XMzct^VDlVHu^rnFX^$H>SuZs-Fi@-qIY$CiBfi%KnS=82|MkA63h6~>%~hfZ zvp}J-LC&>NMq{zC;ytjC|J_HOoYbFV>XRQ#R*c4AXlO{)lw|U1;~>asuwvUOA2ZaG zjAm4E*b@^UgodD;nY#1H-~1`AW$`XGj?qkr0R@SwXb3?OeAuz%AhJ<OHUrmtrm^rj>-~+`KBdab2P!*Q^ zydnUI7#$&=Oe>@>E@FH3vS1-tI#tOVSnuXu&NRk_)O3b+(4iG60)x`nu)t})jMnf= zels`6EeTMxaVb>FzMvvlm=PFgvk7)B1{2cAah_T6=96^2MGd4;OHmMU#jNjAAr)J= z1yVUf?m>9AR_;Y1-A*0_MZ1cP|e5(F#=5>@T7aCL) zRm$Suj~NS$Q_OJMF9n`D{-Z?--&SVM(8Lwip3aEe>3-e}%gSgz<Ti@PC>yd)~|I&DD-f))(RQYQL#p|!&tvE3YLXzUm#NQS{5qnkVE zR$R!G0SjE#7?e{}=rUeWu%#qC(}x_-avt$Cj`F;gEcS`v^+!fVv~e6a>0*xu z$G-OE38%%H%WpKeQ2QlI-{sq%QWphJEsg1I8Q;Z+N)wrK3E{^K1>@xRC4G8!@86-v zM`PUFp|k2*I`Vywxw+$(AMD zFBG>(MTTE0Vr|3n#hgWC6hu-{7_H!8PIWwulrws5mEf-B6QBEiQ%*M~14Y?QYl?_% z8Pd@~X8shOYI6MdjlM1DL~uB9F-nl6fb0)%AS9!cQ%?A{AV!l1kKq$eC18^BoH%%J zEjpC5gBvieEccw+`%h>+=R%I(oPg-} zR3?6MWh~j+=m;8*e2gY-78necswg0ge}5eEB|{Gd2?q7d)Eh{c;gJx-pu*6zEEWEo zm@dvV$nTM~Rf{u5cK#2_W%9o9?Viah!k=ZKY*4Vcq2V7H9UaxykjH&c5YwE*g?2** zjlh?3n!D8a&C2g#o&W~ZT!|PkM!C;4$i+RrA6s6Sd++2N=K--6y+t0D+RD=!CC-Q{ zSVJmwYv(fRdv<+#`S`u>aeoJXDH+0mxfJ&l8>ceg*4`>$=NW{0zQRc&2r=uV|EDa# z$8vzy>BC+UT#Q0&nFT{*_BEzSKHtiFPVRZ+E$(On1`snRCvT_JYMfa3eXz7?>!S}G zIN7N)V5t@nMaS;0wv;1nzpj4n$ z+7SC0TU%&s(P@q;eRh`9pMLs8PzLdSn6zhL#%PR(I{w)-{!6k(_SMI!ud=%3ZfFMj zo$$4`mgB$0;vs2MR4QfW{~Vo7`m3FtYEV#EGk$#iRk#*iMnZBoZJco?praWs(6E3uB)H_3t^6<3vh&dPK5w&;zd50MvI^gv)ntpKT92jyCw zKo8ovJ-++x&;-vPV|+kXXI!bs7A#ATVR49Z{hBX5=nH+jxM#|ffrP|{0-huSD6?KP z1r@MNw z6NGu!#QG$JobRz6e-rnVgzh)?JU9FP61LB>fdOBG&QcR|KFqN5kY*E<;K?nW>JJ)C ziOVjCN9J+}7btV{H3YBL%=Ie2_|*T|ZD&sZJ`6sx@q(PPFt)LXL*&8QI+QQE1>JCN zk_G7C1C0M*{sVok@CI7iD(^!sz`=`vcXn+80(KtuIi}U0@87?_GHE-8-wUn>{`9v# zQcj)v5DW^+a?jzNfAjO83x9Qte4ZFUk~T;(`&K#D&=^6JAp2g}%f2ZIbaEeyG8_bf zqz^Yq*mPs6pFR-UDfX)nBLUqOq5tvU2y{Arr!obZGObS<pJV^n1I~)KN~RfEFYBrtv-VUMBe{+8yBE|8-O0|KlSvk3Dj3Z zLtr{Xx4_zq`P$Apmv?#0`)@46rZT!|ke=MBl513dlcAHcv{(M_OJ z@!cq}rN5ZDX;IQZ_GLk5G|!UNQhp$fVe&UouJGz`+;d|0&R3s)=)NPalcRO45_uV_0=CA;_&xVT zP@+@vJHqcBL$80xcTmeh~AxnuSh{wI7adQ26K(Fy1&w0=-9$}x=jn5)au154( z%G6*erhy$FA1}hXPNmP*36p2T>R4eAd6@`cWNMDp>$Hw9Ti4A41?YXw^eC@fV`~Qc zx|gNb;_qLX|3zBH=;|GmEN)J(d=ER*oOEl*^mf)gE4aD)0;n>zp-e_~kKdOqfiXfj zuY511Uuc`WH~RuL_l0jA1t6YzCIoH7a`KGK^*@Ad7~5=VSz%6zA?XFMy7nxkj9Ikt zpLt%TOsqxbw2@!0>lYE!ulaN2{2612DOnE^nL>Ci7^NPFGQN-hfA#9s-I8N_CZL@D zOK1jSd!RyGTvN}3!H_9J=EZyT8v98n%LE%RVzQAFQ>Yi1ih+h5N|*y6ViO`{YlJyI6i=3Dm3|Nd)lLDz9uvT(xr6FXl$@wXp;0+_Hz zZKu6k*h}~K04rR`e3>IM@f%PcdVkK8C%~TVuZ3k8!^6Wc=wLzOR1i~82KPZ+3s+Mw zUZY&r9KQV;lxD5cZcI55u5&^g(~_|K=#}vwqUSpyDi)U0vrSn84Q6Bn14YE~i3-Eu ziNG|?v3jWIXq=yah(5|XVXrc+Vb7yGhdOLs7_byhjq>CoC0t~5CnhFhn^2$4j!L4L zWf-`9SRFa@SYaA7OsxMc>ci6iXO;g2%JulJ?DnLtPbcAii?YlqK8Gm>Ea(hqQl{jy zPR2h|a)f$G6mr}LWjs&4LmoG>f7_sB3Be?jXO&ZrK!Y$lyy{K3XGkIZi>@KRk+};AwQ_bNqV@I@>JMtWnf{ zgvRe7wDz?%*FfB>^&fvNquk@a|3D^a^cvB=g$4Wu7SwNyyj5zo|M;iu?>;&@3MWpS@aHR6t~7RbrYUr*mKH%xA0^tO-B*iV z0(#Q$iZJAVl&~6Uf~BwD1Pi*ENe2!R8`n`S%Y$BFFamLAlS%SO)~-o=D`h2FJ+<}P z-V*)fM}F-s<&qTA%RMJ|J^cMnI1hqJ{QWE+W-cmZ9VCHABI5}b2IiqahLXvv+#i_t zsi~>H2hX5@1jG2=`}gn95sIX3T)m{dh3WYmYt%S zQ)zQ7=tbdky2n1jf~k1=$ds1>NgrZDwyY<|tIGV!XVbbcgK1ohhoyWD40jyJ44$LwbRk6>z(XDYu_dk!Cu-uo&1#+-1aShywARrwv6 zGShvWG2~hekYV85yzh_QyrlJAs1eY3djiayco-T4gE`UHUOevRUVj>jA>Z~Og;t6FROyEbtwMx8ktmfiQNa88tpKSU=YJ#fI<53grc?^Q zBl)4o4+aAz|9{7iACGlTojL`ba=IxgO*Oep)=?o8!+mqi{f>PjO!Qf16jCC(EZ{n- zMnIB*C9Ws!huRgkb}in^2vn>u)>xK~$Vp+n-2ahZ`;W7yPretH3d)%WP&j81+xc(S zlnsbFMm-V~w&uJtVF$(tdZVd*)xQ_Bu1WMwU|2+R&U_Q&4oyXl2~6H!xK`Ko<4|rp zP!43~1r0@Kcn2M-0!mqy(yAz7lua_N>Yf;1tNd?_3nItAo%>BN&|ntyTpx`HY1R~I z<6mPkjbJe9P&fYvrZ6(M%KwYwMzK01_fx%s?PH%&m|=czY&YiK->VN+80)alcp%8} zZ?xZo8!AjikXc`k(pb*jcltzga-j!oxcnBFYv-coSkeN2-C6ng_fPtf`z$$OKG)B4 z(7vH|p9Q_&7-uLj%KtBv|5N!*P8Zkf_bq8i3wrP*3vrtWa{Py2puF99J;;=Y@o&ZR ze7VdIeip{RL~w1lSMoq66CtDv{reBraX-AhhDI>oGm}c zl+#V1TiW{>sLCb$T0E{%6xO2eJm};`5zpD$KYvc^ShXLjoewND4HgE@3KOi;hHFHd z@72!Fn3Yh+lDml&t|pdJkNL>%j>vH#Jw`l!>hAyipJz@?yafZY!Fj~&)aeiI`;%Wm z;d~d&33qZUYp%)m3-I?Sd6Kod67#J;a2OpOtxQh1WwH%OSaC0UIV9tsf>Xuw1|z(m z9KW&8qMJKeDS^@gamaq`%Vx^i#t7(6THHEv`F9}Kr7lC;6U>shBcdLF&SXag z5&iCX-ecXe);}x%3tiZQTQ#|}*IGoy-h(NV;(cUU23pT)V5m7>HxZo`H$b(m>*z!B z{hXCgyB8q8ZoSw4lKoHXTcF*`UF((W+V2O*_j6XK$VQPKM3BKi_T@Ud9j=>9U9DUl z|BTPJp+LEZAJ2FE%a{rB8QQltq)g%)h*YETf7Ac)OF6I(yPo?W1?0zpFB8VBUhM$9 z4Ow;?*;XF2&^Snb&V!bE=lW=_tQPZ0vzB}yS|c49Q^kr@`B+U@gRTMHD1$bT+=3d9*yh4MV~S_=%XW>r!*T)GyPuMwjw?}!_Vn{iF2vqtgn>aU$R zaiV+HSv?L7gLiYkVEfi^3h8*~KXQE&MBQ9H|9#!Jm)}+19|F~e z-!FfIypQUbMhWPIerYiOKB`;+b9~?V9{+K#{7%17d?d|t!v8-OKPh=WFAKsnqdD^b z@MmiDNIOq{3qN);UY+D-iDvm@?RtYGbouR*{zx*gg{m?sp3iqZXx|oehJ;}s85vQv zCw=5)9dsC_%+_3&LSgc8X&sBb?Y7&r+=Np2mU+?vbm6x=@R>VzJ^7Je`;XHHo_GnA zv-iVUhn*}>AOHC$|Kyim^7JP^__yLWThOiN{>Bh+3*iWrCZt#X8SORVU3(8(|K#tD zfodAGHkjbwH{^R~u@WLENL+3L?A0EC@Y{Zx8n*-;zbGu6!G&q?Xs>bIEmC{;ppAK|W6v;+R{s?593R z5@UcPQ%#Js*1zTNuYI@Er%$Waehk1FmdZILo@!+SJG2&>h&319>i!nw_2t_(Dl)ss z(F}lUzW~V7fw*UaQV3Kj6#>zOUNNee9{-~d9;OBHHilAFseLJ=OoWtHIUPo^9R?Vs zH3=^#WCN=lTWUY4G%NsmTH57#<@+$9wW7G8@$c(}{XE8hZj1ki6r`1Me11^w3EIc& zauogiKYFG%X5{bo=c3>Ga%X(dl;q(%6g*QG!`%NE9&U<)sgBo8`XG~E{52=v`5D{H zGfPxI0y>A~?i9HGk0$>3Po3c7uTgLw0}X>2F};}dq&oiLot{N+_l!r-sDyPWxTm#u zr4l@jg9qZ1!mkwK?ZJEg=&Q&6;L*EMw6mH9=j|Qt=#_k^ohJ9uFAY508-X_2a~Vv^X?c->8U`dBW3XlzZ16tF+p}(52WBu=FFq?5>6g3ly5|%!kFMhh z{B=?UaA7At=ds5glLD9AI^;DL?+?#qW#NBm!dn4V%WHf-_AOK(XwMYC!`H*$Zf=wR z%Rr5?i9d_EK5_xg*QeMXUN|2gA2-PCh6wKHos>LpWc5G`YB`vpkspDz&lsb*#P=s5 z$kYiUQHUo6UtOPwW%x~rFY|p%(3{xzv79X9+5QAjbs?q<74ca!Gc!n^)Vg6~-YsVJ z>eb!y3%})3w;yl;CpCJ6sOCz=`2I|h=)p1|@#iG>KySM5+Z%;e6o`cqQ61MvE0GtS z=lDbqz>bV1eX}e3Y0wPXpNi~(OIfsL7C$Fv6NLgqHM&m zp_FS8EErDg+Y|SFVvnQPjSLI#+?W0c=bi}eP8ozKwD<&}pR#6X?HidoW!-S?Z&At({jW+{=9!f_ z8h-=3--9vIk-22QweES5p@lg?F_tqArOI~b(4qLOiHV71>^Oln`QN59@^WY-%ouEV z&YPiL_?7J(>cw+m>C0_V;0S3RMLz<_)1bOOi9j00$6R~|*9SU8pFsN`E$71vd~vEu|(@J)Mq_D2!duj5;m68GZCIJ1V80G^kq#*v!Uep@V4gHOI98xe*V1@;g*87;r8F%*4g;7f4_Zb?f9kT@XGC-&d?=Lm~CCc zO4`rT?kb_2EM}(nOdUVE^Vpt;A3FWeeUqSfR84tMD%bt_$&)7yyDpIv$m6^E+!Nj2 zFWW?WRw7h6t3^RB&GR2Ug9F|d!d|wwI);_!#65W(7*u2rdgGzBih?rvcfxh(jFCX_ z{>6{wc(lZjSNdAzK5Hi&>2A#W!eZ5$A9hys-$HdZq`Dahcax7&gs*qd4J@6 zHHU;LLT?YJP^vIWvL5vA-va|>F6Hke`>EEZ{f_@!SyVhTYj*-hCUJh zw-lzKO3(N^c%y+xeW)?D@m~CG?0*#OetD1Vmz6r~9ku_5Tj={)YigzbnoGvrM{j_z zrUR|$cFmUGgJb&w?eN94FIZXVXMtwm__s9v>!5v0>?eibUxC$;za#fN{<}Kj8T?rP zw$Sw$z-4yG$}q)@fuYr}gF%O#^$an(@CWY@Sp#%_Ieru7c?!^jAH);1kTWZ$757!f zKhdhlFE4QXdk9+9^S45EZj^O>eNLZxJkKz1G=4od_j!6m>0;ym4D%{eEXn@M%VhuV z;=<=_HAQEzE$B{ns+1)%3@hif3Y6>fLcan!|3_hRLHKopq;ZjTfQ0ie;)+iRJDtwDsm}3A!T|U5O4}Rv4 z9&&r!{%76qU_@35~Npb7JAI1*;3L+n{#?sJ4;TKK__#QY%_RJeG_i z2a70*zjx5PXD>*mqr%uimGPBhJ1M7ig98t8uZ;bS^^2sxvYh9YNuLA|Ie~@eR@&9h z&h9itaS1d8Xhk3Y_V0Pyfk(gc?odQ~-j=ctmX2n6M%6I{rSRO)`e1k-!jJdNy3Y6= zknv@?mJQ^Yp@9KKap%zJri3>BBU73w4`s5RFQ@q*KoNkXP)%b)jvM(7M)}Qk?<3EB zSqNH-Sru?T6!T)`_p*2J=ZsNJ>eKTiLl*uQ{~x@~w0>8JV*`1Q6M*&G8frZcFk@!Z z_TRF{_WcmdF}YGO=Su$2UL^_Vn!w|~6MYx?E&V@b-&y0sk}=`vQ{n!X9B0`+$j@;p z1I08cM7_8<8pZnnpnJP%fKmpPiTFV>!np=HZ%AnTARlMwCFIM|eH$&r3J;jjHnvpP zpEIu){y+O2|5o`w@_%zhQ%89}b?#&TUz=Nfz+d|9+Vc|GP1Gq^pl^ST&8uOb#L56M z7od?NQ7+;2Ra<`u1{}_k;stc{av`rVIX})-O}|HMYxGE?Olb4sJ$l--S)M=u<>5TX zDy>_Eu;!AI*sJ#qDr(lxXs*NB`^$Sdfq_i@_#8)gq$L`)e?dsMiuK;tcgh1y$2RLG z3M}WY?|yR@!%~((Dp>pf;W}upPU(d6SnmE`EEm5gq=K{byW^G-&g-BFkd-=$^+kh! zj-r4WIMjHmXnjvZ9PenIsH>0B;v19)JupYSAM*FNxR#KPD`T{WbS6o_X7 zL#tN*$cFFv_d8atT9sRq2cgW(4+#_O7y@~ZWMZ{7bXq;&*NE{=7>z;ivlPWWAQ{&b zV?vf|{kG@$7Xh*=0wlKhFDp$P0K&kJQBe=7-m-yqg=u78GHK z1$&G8n)C#+Kjtd-H8>mrhCv5ggKlYUn{N|}OAz6-v0UTFBbCQ*;rhEA{~Z3l2Blfc z(Y64oJqK1_>wh@{?(3FQCm)6eV&uY0-#2^lw;(505t!I{!GfkF3EAhXEt z^^7A^!T_DeW6mT}d0>`fzv;1*!La(3YwX_Se#KIhWvKV>-=F**s450>3^~8vskt92 z@3ZYCKj{wBz%~tqSvB@s!<(6JkUA=mdifYYy4|8rEdI7TA-CDzfU}0{x%SO7TB?`gL5a=37hi&3l_hn zvN@}HA$~*UcT44xU$#1a@!J|fx8@8fypL&epvLbd{arb(MNa{pB8u~WWMmy0SUEu{ zo-1y7g9`akLRrr8CI_&DCY0BGc=>-SQQK+r)@pRiVwOp_2r60MM;pWRdrqNL3XX7O&awW8NDu z$bJ~g61Q$t^zpS0H;M}FRe21J3=a~0O&$#6tJ9fw4+?pp3Q}_T>V_V zcx$XoqMLKX`dV;o-nge?aOofE#JA_46SIs^*q9iO^;skQCM?P$ocNu0+*;T zAzf=*9RIPLgo?`dqp11X_pR$sypEwvMOt4TQhuBEdyRM(v_8)Dj|;!$5;MH=-Ov=+ zsohZJPl27+@x%btaRbV6QB$ssKOR+I8|QUnx>x_vXk0&Zt=Ipk>;LjNTGDYob^Shg z2XMNl{$DY6I^@!>{jd0KNVzokPM2QyL#7xW{P+ooZvPGa)Q0R&3S=M6)#)2WuL{C+ zX_>$t{~=qupgsbcheUW}WkxCI_rzmr)||kZ)3)&Tx0$+@xxB}6C!|LK8`DNXRX7jV zXUWRWw^?+NhpL6$KZ6PUy@d19F^D0ZTJoF4yBM+eZQCOZViEYGy z>1@B~mY;neh_Q^Cc3KavF+@=yhblvbj7Gc%8Es<7V;!eRjMr(sVjwc6y6*y?1+0R zmTh)lPAHf6K;}2`_5qgXTWh;0sKM$@ABJTHH;-Qe7k=B_PDsbeCJG#AX{KW@;L3dQ zpK;iv{3pc`fNx0 ze^e(a=l$OG-wJ)?dm)hfW3e=W_veCA0?xGyDiw!U-Udy<#GajW3#;aE==VU6VpH zKy{6I#hsl!D-pKIZPJSR{+xu~Qu*yxJQK)jF0XMINISD81ZnpeOEe9|q9rRY$DL<+Moa3rU%yhjVo8 z!f)B;g!8+b_RZH!{8L!Ul@nm%*bB>WL<%%MHZ^5rLQ^m@zbFgq!+m*KmYja5LMpI% z2K4c-(ZM=8mpp^@8BpqL^v!R?e`)`(Q0f$!XKVeKw?~C`O-xJ-DgVp&<(Lu>%b)T5 z9kBYs1}T{A1WfLoK!b{Q5&ww5p!{0suk#YhIeH4{FgK~iV{t9~7!PJ~ieQ9v;6Z6H z09Qe%zVJ{E(wz0zgYv|3!MxW;wbSlF~pQgaa?2m@^JjokAAd(v=1i?qGmbQ_DmR$<&GK6xocL0DmOm* zbzL`*aZP8Q6e`mxt`|;0Tlrt2%<%hYX@>j_CihObVI~3S3g&n|q_kuA*jbH>Z7+G7 zS#!aiuuO&X2xmz*>n^<;F8Qw4pFDZemw?`fjCL(3LufPXJgFPLEBoe^enfq^mm9nh zzY8*Tcs=lR>7o~0(@2GkwR^~8Dk;sKi-5j1v*&UP7j%7_G9{uBb$q*%CsrJL%oA%q z<3Hzhqq@Jl=kaF@)zs(D8_GQo>ib^ZR_VuXT*!Cf-YMGq#kO>PckVjIO;~loo$f+& zEMC@n>$%84(90mh%g>0Rj}5s_3AgA z5c6}43Xg%2B16j3PXxlu>vy9)+eWy)a`^URf}sZnWa8Fw{PrxCM5PT59z58zc1b|O zTx=ueDUgHgyS42jGCah4XD1Fc)`A{U6qk%{f8m1{-Td~Sf~t^JC-fQS3S7B{TM&Fe zVSLeA&)x4FlOO9fOsQlt=dn+-Y%6|G>4)MC7&VzGG%MdmL2PZ&et9x0b9^uuU! z2C-j8GaMV`nM1i}hrLtKhPVjvH)2_j-)kVXhDr-lvXOf>Z@UVEU0n8EH^b)V-eZ^5 zn)4n&A$?@@H(}fLzeU#cq%XPgofA^f!d}o?Z~yI>*Mjda{2HX+96)><$S7Vw^f&g* z`vRLIypkQZRWSg7!N6vbWAF{2y@XtIo9<&l35t6Nz@I^i#~4(j}hvQNNJ^m5+y@NSy1Z)nl)K z@`|&IoYnl9-*b1P+}a7o&Y}T@_r+SdgqDO!qa+Bgt-ew8xNblZv;vs$QxVkpF)>lg z0hS`ss@M7~tE=NbG9f7g_I)VQB|!Dtc|n`jfcr9*>a3*v&dK_5VRh!6jz2?2X_srz zeVO}R@)_|u^U#p*)C)GV_oz#;)`t)_uu!}Kl730c5+YD}!8FgB;-oVE*|;8faR<}I z!TbrRq;NI*h25jdIN>a~fAZqM|9GT~MWO***`D z&Y7HsvKS9>9FPL6O6xF)<0UV?1)llxyUpkYcbTH|B4{AY%*kLtksiuX=E9|q<^g1ByZv|3^Xi!5>F%pIE z!9s+-S_Kj0nR7|N8-qUF$^x`LsI~>BX~RhH?0@+0WeR8lWWTVPYq@fN&J;p?92jw& zTrX!%-%|{)xCNF2oHe}|+xVLoz3~^{W~ZkgJoV&bzd!LecRlPFZ9aGKcH&EVIJB{B zYK}RxGVmx%eT-tdOAG`_>40*O?IXv3QK@^`^=~XXU`n(Ebk(uuFdnb(RxW3mg`jZ9 zvvc=*O0+@#1n#M1Y&ds{2lsBqs&)N8>ef9Le&Gd>N2u@j_>AsxLC^E4>ijkSJLGTE z>SVmE+3fFnhyAkBw;=O<`5xhp<8vVKS&R!FH-&O`KbBkTy4=uOH&c$e zikHC9&^60N5mQc`dVu%@gr=lU=nwPk;dKgmk0JgX}x>9QA(ooWdQK{QvQ5AR;!&|Ihnr_c>i! z3Lt-DrSEQ{agki>KKn$ttuyTUt6f)?#h7vZ7nVu?ot@aNrNT{QAWFU4tB)@Ty#)05 zBLFH{f~Goh^E#d z>+Uz=o;sWfzk=@lA$?F^^&$OjW_bLfrV$>k4}v(av=_!D5cz?DMFLIAt?Tus0|O1G zNwySQ0^y_8i-36Ao?q`J)N5nZW9G=gyGAx$ygUSS0;Xa!D^^^xdfT_Ye$^X)aZfoj z^9YuY#Pys$2WzSrF|2+g=A(j9?6I*i zOK~&|Md;<)eglwI@bWg|*M0tUo`%tMhCkS40$^@+Eq{pQBo?R!@z1KGC7mAUx%!>- ze*phK{m`y{>Dz$Q!GVJDN{;QWuf3vMup(c#*SDVU_dV0+EEmk4+6_>#mS_1vw(KU- zA`;r`=(fQ~+MZqwjjTgj6|aQv!RS-`5rIbaL#xi!_^<0<^LcishL(2b`F}xav*iF= zK7aw@!kMy{{hEXGAPbghdJ5?8e)qc#Mh*{qs9J_{kdyzJ2wqDDD^{-@cg#ElW*#Ge z6LXZaLQ10K_tG2T4AAR)XpCAo54mq`kNW`Xl>>GEM_$AA^IX@{s~`1)ct5$(hcX`( zw9d_4-rqoI1VsB*mY8yXUOH7NmSOH`TtAIzt;l-b@Aw}mFyS0wpBHM2pDIlcYSr|$i`<(b}cN+4=Aj6Mn*1i4f~4D+HP<@C%C)6 z-v#W{qXo%$rO{)+j}F~ypj6HyV~ zOE3qh&bRYMPko3J%1heIA7nDe61f){NZ6q@TPanL-$WX#iX{R-w@@siaIQg1o5sI` z&1_|ldNB|j^$VH8P5z&dRt|UJItu4GZPb~f(x{oJp!o-^Ty-f7I1H4i^^+QF0R7vB z;~<>-y0laS)9d*@-^+De*Q=~JN-#$ z(PCk!qoZ}69Q=Clg!4Q>2p~y}NXzuLXwhPRur>(iv4qmq1zys_3D`j~C_SDkbc$lU z7IFCD8Hz zDXl`PA_>=1!`wHEzpF4qgKx#0o$*?uwQJYnu1={YC&IW#moa{h7Idh7w=*I>OBBgC zqO_5+pU5`VXrMN(GzFO7qnkUlXt6M;gmH^bpOkv@j2Vm;Em|y37(4YT zQG^yqE;nd%q_&Tb44!M@obBfVFSclLrm%Jod_D30Pz{j$4zcIub@$bxpAPK@5?RoF z;4$%!5n2vzUe9BO1cyOJXT^w@Tv(KBDI7;;hUcEW`s%B5%+6vlKmB}sO*2_{uO$n( z_P>&EEChDVaxaDFd3V-6P_zZ-1>Paj*H z8x+-u<}hWFUad~HmHn8P^Xm)hm-E&*u{FN@hs5)mG-Hi`F+&)6)nb%vvQTPm=rwvg zc%BHdW=QT`Y{90YaqLmge?RtHxTdK4fH})|5Y{D;)s!^+|7$Lmi}l_)CbA-UgHGU! z%JVwI+hM>lGc#Qg^f2cqttFM740RJ|1t{GWuCq}Gqa>h zfhQ>!>0MH0UlAMz4W{U9r`&)*xf7Gi?3gn_QmGLH-?L3jG{H-j16vdBPn9}`>d9vV z)DzSNcg#K^|A)|~_H}=viFNNd4ug*A=@9)ow!IUqOSGUn0%OU2RYSJT@IE>$`l&yF zkYh0j(XoHvS~=W@WfLsoY=BgF#AnIl;E}+}?1`QCeGpo-=ns~qQsgvSmU%b@QHd6G z+{jWT>-O4Ov}n(V9S}fbNN29EyMqpN)cXPTG7)AozB2p&V3}p?pZ{|f-aUp#Os-56P05c_m;WC%X$gTn0(~HNjp1r zC$wnM8 zEzY~7C=cZ+tr~$AEzSsL=G5(UD2**rR;uHFO;{FwCg@i{H_AQ{c4lT~j2m#8z!}eH zj_%(B4Z!$yKfr~!&?Y>`uD6a44GsBs7dafcRb95{*@pio$#s*7V}1(ur58K~@KrZTM;;j|B!!Zsvp7Mae zg;8q{?H_y#y2HrW#_gC39T-Eyf@ehnLhVt<{G4lnwrMcZnooJ%EA?{sJ0U7Ep+l?3 z8(}>!PkjRyH79**$##?Q*C{wgQWowp%VSDR+Q$jsTu?{F zkgr2oF0?)<33-{jHgkCY9nhjh4OkTSioh-68~Ac`ZI@+uA1%YuXr*@CqD6}qwdhRl zM;BqQd?x-M5$Cvl`}Xnqk<%`X7KMx{+~^hRb9C<=h88Urj$^*>@;No6WX5Hlw$thO zetg9hS0si(VEh{`2lv~Vy1Do5;!c7P7ruKj_8t=x6Y2G`9C$bP&hUyGfGi9s-~}Na zH(a+WgqZ+Ie53}j#XLak=yTR`TXU@td%I@Mny#QZJbVodI_&ITtyrX3^S~u3Zo<

3wW7Dk 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 z z{t0Olygf-YOIq6}__TT~e{Sk3!xJ<%uYXEISI$Nvd#@n}M2w(Uqa zVSg&JthQWVmwhO#I-UpljbL82kb6Bu$eH#jEK)?V#WNieT@<806$uK<+Ks*6VtjTF zn-}Ky!zw_2)0cbfg+LCiklAH1y7k>Yi-5~6{xC2VFot?}9KUuh1X{I8=u6b~v+xhA zFQFz9enzHQvd|Frd1b9D`!+YR4?y?7!?F>q^S3-Q%g*j(e>ElKk|WRnN}qE|8N1CQ zTz4zs{)EInMIM=nVY@n~)cZEmh8SPVLm7)`sw|k4zImhb!3Z)}v9b{`6 z_=bc1uFMvDwcMup%0<3pnWOJQZb#g*fBa>LxIVkT%^sv+UDGFb3ZKqU2;VljT|DCl zly)nOIat84xj{4}7u|WP@Xy*lMQ)@qErjJWbn7)%ElF<$E*hH}i)YVa;2=;E^JZ_L z*Wa%sDS#@gmvz$aVBS4Y-IuO*32mwc=y}P~fnH#LfOD&sHl!b3JqN&W0DJubeqd zp0~+8=NQuYd+X0bA57o*wALe51$Q3sE0;`spf>a5NPddP#-%Rf_miW13^zejYG~6{ zRAtgy`OZCKy;*HUqSE#*-z)aMxj9Qd@>3Q1om&lX^XO8E%Ysi~4gmSZ9UsX_OaVZW(=c)6=K%*Utg9U! zmMb~e)Bn|A>wm}mjNDR)06iSK;A+!#?MWHmp1}r9?<4a@W>(iXBRVafiQuL_aga0!VsPJ9zSHIp2;Ysu@Ej`j2#_MoE;?FK>BQ>OU~A}m(?;uev~=T~*#8nXME8+-R0NBiKa zGg(?j)BzQ!|1nE#|IaKzrFL+q{1&n#Uo&>z#7zJjbsZJ;yT4>&&%!H59^9Fwo+RbS zGKN0;-7@Xqlom-}>u}X$U}8G_Bn?j6 z-X&q$Z~U%2egC_kl+;?4;C{ZG~QDxrHIqR>-4#c`r5Av#M{37MW*mW-4;5^Fs(Xd_q~?o4y(fpb+Z=jpd%G zFrlk%Hbo*c;(I@pDAeuJXPgdb)V2PQ+@jwb(OC#vKbALqN;nq^n#>2V-GTMwGi3V| z|INHNC**cA&*8VqcSch>ufN--T0-RQ8y4r9^@b?3p6}Dv;3%`Q)Vmv#d`cOS8P>q? z8_dOiS&Bt;mv)uBY}Ea~gk@RKxH!80U4e$Af=$u*Ur@dSzemhB|FAYHr^O#zy!9wj zz(J`ZahfDbLNBBZGxe*;r*qjh7KDFxLJGl*&FB7JT~&7bNjC3Civo)(tEw8#2Yt)! z!_F2ynYgi_$$mL0aLGCWGUvz5g9MC^>dtV89cYKwJMrNA3x%ZDcOr~!QwhnG`t!bK z4dHe!49ZX+_;iuQ=L0#^aLT&B{hq9l!*DFoetO${_a+mZI}5g{TW3R=$>Pv#c0C#KcL`d9BMzxi_%duMKXxad~B>h^H7B z5_!E;=zWqKe)xB_=7X&p)UH8{dB-Pvlq|wJJty3*`H+W>^nhJa_0U&?o}KDax=d~} zz-Od~mZEMP--)h`*-(f}Nl7be+Hw9`5qRUcj!OFDA9e4ZUE!pYR#DZa+LruBjxXFY z*td=#6fmRqzu(JuAB8gyDY6SyBl`AGv^q*iWkoyjK$yRTjrgHH)KYMs`pcAbit}91 z&7{!pkW;CY0(TOY3bj;#Wqztz!^bov9UTf8AaG;K7DlLJ{4^3^vzO#jZIOhDGi`S5i@=X z&}-KPF`IsVe*SVpR@V{nNiN})4k=gdos8W1I_*i*cAYJ6}V%iSxL>eBd&Y zNY_HzAvYl7I|QLHntaTmn>S?HFVRavUHs@QwX0?(X(**zc@Gq)EQLaYkj&` zw+w1U7cE%yMg#r~{XqA>Aj>Ez)o<)=b<2D0$aJWZN>?11+f%wfS0sM%postXpHbjR zUS3`^)JGNIN)H43Yw$E--J*I#>FbT7gKE4B6MY=U<`Qk&61H-TMPJrSrnNFcY#3** zZsM{%i!TJYh~I@Ib+PTSa&}(hm5qIL5%V^+t{A42KM^A9rBR(iLid!iU(+<LmC-AZQ{PZ<9Yd>1&e`1ee8kp{|h!#V0<~{iu zUf$PlW3o*7&0ok1idto{*<>kX6qSNoHBT!4QzY8-E%mnK?E5{EzdjxSKo3X;zOQ?U zV!odmtYOJ~*i)9m4k~gg*@Id$#ald&Vg)->nQgll#VBMgQ@L(Ln@2+0Pj<;8u#b^>Mr6N(!om#2Am&7ROkPbxGH{yHXPUFr9>9%y zdH|FU-XBZjINQ(=vU1Q+Q~56Bmw?_B8>kkZLj^}9-YQNZEBHLEj^$KY<9`ssvNOcz zT4I`3Ws&u?!^b@MvO1-!o8d4FJl`W{nj-N|OQWIzs|1X_Trk=ih z!VD)FiaQ-`=rIi*Z{KP}yWPo3geM#)Oz1j?aBuvZPOeeat9yz#({Gx?Mv?GJIDJEA=~k<<*-z zeHwqbAfUw15=s@s%MXbkhJIm2($h2?Ed_Ou*%VVMj(4MdHGP*F!aO~7nGkYGu*Dr& zbU#&ew@#06INSmB5AS0u1^wf!Q$;Jczbm)z0eFxm_#@@P$z!5PWl37Cb-o^v)NV~pl z^<)2|7S=gUZ-{&Pn%HDW13{m5Z#sW&w1cYtw37XmprLV`RH7J--ENpKzbtcNeEAB_ zY*>SG$RO3+Bw&c8Gx-GV$ank>6ONS9)8B->RN$$g($gorjC(D&2m-UCKOc=BiaOpm z|Q z#{wV4`xeme`pDN6aC37TDhevR@3NGs3b9`QlveFvOimr=&5S>y^Qb}*XzZSbgrKUB z%V`{cQ3&qwPnN=pR&w0cjX?`4C6^oW7pEJpTXgfZKtolMT4{-B)**UaY38r|XMY5< zexJC+TXC;)g{9y9p}m(6+b{bsZSVnZKPn}u=3#;^3X{25qwTzq!xm(<|wN9|c9coT$6t=^of6I=waf5W8Q0)I6=T z-@W{f;Agj1ZdjtpOtjj0r2UrsDQmRML1-pWT8TS(<2dQEw#SUAj+ldRH$@eHH|~6= zLqk6DoyE*Mr(7YH)pH!F%enNx8Y5G0Uq)M_&WjrV`=_nknJn6K)1Q~}s7Pp8u1Bs_ zD#eQ1W@f(W=Z$zFYE~U@o`ETRNFrE7{qFTdiBNFrw|{iBUte#3%{a%;TQYDlU;_?A z4hMcKQ20U(*)w&b0$J^gfjHr}?DKHk+0Ea!&u(XRa|hdxnkQ zlTJzJ+KC>ax>H>r^c#cT$Zs2IEGhRV z7oe&lW%Uc1Dnjgm`p&0PrlKDr^6D<~J|;UQB0_FM?!{=OML ziZh!`e0tphTFEw$j|!H8B9w9=L<@DM=%^%p6|F zxjV>+T#B{SxmHk)J4{`tvI4mT{s(Wq5`b-95f#CFSuiT$eq{_le(m6-Jf{o48CAHs z$vHjj@K`latXyCW)HTX}WoIR*EVKUMPTuY8*RQxUy#sCh!-Pu#ZQOLirB( z1gYg}z<{_;(EJO#w2oC!u`{U4m=LEcI#L&O*8=F*4PsvyA775TKF1;Jv2`Df=xcr*fpJLC3^f-;a6nba);t`4dy>cNh>mp?<_Wtk~IBhq?<(4KotG1~6U za(VtXFB{}#d2eS?^>7>6Ju~nE+J)ZK2a);ecvjDZ9NaOoiWz16UY@u}UZ!GnfMYWq zp;~^H%DmczX4NkI?RTT7HL?UrFo}Jmd_6|8KL#mrwl&sM!mzwJI^X%#-e1OayCIY) zf>U(rUJ%)&!*iNt_f@_|Xa}-?p?tD;(WmeTfYNDV-fX*m|0zBC{>ik$`FiIJ%fF|5 zlP0EfeJ!--b$c`ghU#N{&wB=!8%|8z`YOn7y^T82tcDd{rpAQE<#=Hv7?cAYgLs(^ z#)oDIR(dAEo}-@)=rbPk2cpNn5y7Yy<(*kS|jX)3RaHE&{>y zFGg**r!<$)rEzKr20;n0w7jVudd6s)#&9^w+PeYB>?RwL8~&}%ZMt05*eH}K z@GHqm!s72$uAYI!Qa2yIvH>qxvisV??jO|hc)l}$CGX}g^fUL5pnB4fe!ZU=p5sho z&xnG)RnzYi!?JoG4Io32qz-3;r@60JDIdCL(T#hOUt)_)izEiNL1nAhZ}ZYG!*~C# zg0AdKWP<~~2|01D$30zM?HPt}^xQc#aaw1jP?9v_nI$f>I7$EvwX-wN!AJi$Qod5T zgth)XIz>OlBv7pD8pSR(=5PvSgY~T{YyMX_e^eolIBMR9>(i6~ z19icJ*ON@~?ssMdh(q7r-E_(yI_051A}~o_;MU!Lm#hQN2$kO2_7J#3pI0JtUJ;mK zbvcI4Psrkd{$a^zPgs@HS(8>gWhE)GV;=>~&kqCdmY{8&IM|>+FzOzNXtFU5qU`Y( zjQiRKV4=99c}>s8wyQthfFPQrmrw%l;)DC=4S*~Si4XX&k)d8aD{=$Ld1H?v14Az^ zA~*lM5HZ&LI3){QayN88DC3)KM7H>l6hEkxqtd_U;G-SfRj)ew_-?ECX`frC*T1+r zyt&(tz0R(>#!qw$`p^GkTUoIS4c{%D{hd-6j*Q78_XgOBvXeRWVr!ieoO0>VApH4E z895b5=fmG!jr>C?Nn4kU3(1<2uVnmZ7w>oE%YiQVCwCe{P{l~BZ zdgNK#jZIZloE(5gj5TXxBKs=U)!)v3S)a>5jsALq(eR-SzCcg>I32DG{L|7JNj>KF z;Ns~IsT@@q{UI$_Fg(>Je?#sUdER|d;tN{li^QsBS82$LO7sVY)_rME*BBrr+&(B3 zGMewVwb0wCfa>g2Jf9M)S!Sxg2jJTKCyiy{3f~G$2cLG%Hm7zdf)p+!@n4PfSdkGE zOGRa+98YP^a^C7E7eS7oMA?Mq)J#iup;Ve#;0`i#-6^bgcaPzLjwGHJ&?7KDKb#a5 z!Pl&~DWMcE;3w`%XUluj!l3Z0I7`sg;BlZKbdvczB#?cyO@u{kwgTR_GnyBJcn!EG zU%}t;kUY_N1kmp_PczWwi-nn9CoJ`lsEl>PR}tz2{&so1I!=+n!5T@pm9+Xd zx6F-@xV}ZsFg|#&c_eq1m0~bVMx~2BmRj$8UeM>O#kfCL_lU@h-ECaSIejcZ)9Htt ziqxak?B&8(S9t`cgYK~6CDce&HURJH7IMw^z?W<}y|M@^TcsPOpCr^|@G)-%2Yhw< zbFN$Sg*Y!;sl6LmE+^505_`++QTEgvkSVXRSOwXAQ%QKZaVbA8J3ROh|F#noYz5nR~ zVs2>!pAr3d`Ek&PAE$WC*}NJ{y389ZX<5FMKpSs;Q9|s?mPE|#R{C_MZ;BP&UhHPK zuQPoAS6R@9WE2N4LM4cqsQKj9$=uMvvQ9 z0_)s;V4C4?879qOgMN71S!2F?IuE1AKP8WP0~f&G8-}w988Z?H9rnc{NalMVA5j8b z1TO7L2YV8Kbx2naBFfe(N}RLOp#p~5ALZO&;29=};k#GyAkE`Qqmz-1A>T$=lGD>~ zQY6>K3q)fqewXEjYr&23`*|fmK>7^i3K?DF*2`s;i+?76<^-ht<@%MIm$7)5?G_z= zko9@P=~j|RX27FzifdHeetlsJnV;LCI3+exSLZGVbA%I^mfWw>w!F^Y03m=}ypMHY zA+Q?_OAbInV%AcFWri~l5dE6&A2`X%1bT>$MNrNaQ zjWi4>CEYc&NW;)2DFY5e49(E<9bfOy^G`hU%Usu-IcM*)&)Iveb+2{bTNcXVKR)M8 z4|qe#Qq!1QPX>3dJkMRY54~R>j*RctC~#}kkhtk(x);k)j(^l3`z!8vTH^3qco%HdT&imCjOK`(gQs)c?=rKGH;Z4m);9E36ZXc zeMG;NQ5TW)6Q_mT?CJ1L7uJs=2Fe!VwHJP*-hG;R!t*%HcJh0Z(rf!*Hjnr3Y(t~p zj&fg}zo`P57k>WQ1x_n*G+%ow%+1}aY}%Y3@%88gV`MYMPqGq&HtRHQkw9WJ;^zMT zHW}0f!RVv;?lyu7k{R=0+}j7KUfn*Mp({7v`_PCx&VbF-ZZw@;E~voDc1p9md2wQo zwohnbT?Wa?Ji2MnOa>c`iLDyqG3_FPJwFRK=qngr>kMqLK1~dQ!ya7AV*Hug#pPTN zu>VRf!NgXQAe5c@88!#`#S_>{ZuwMZ4oxiQ4!PF))PUeKvHmh;bHx@U#_diT7%*3m z(cqD8zsJJ+Fxr0Twp7o^r#=+c-5(hj18R?#5BD*4D;W}eT?joM@RyG^-LThGyL$lm zf%nj!BoBVGu>>il@JEwh5 z8u@8&4j0aqJg~6O3-R-PoCe9ui#r(JVSeDnlAS0f0n3O~lA2p{>8w1-dcDpklrh3(k`l=3}yiJZmjfYyJ{pM6j zwALE?1Lh2%VRK$l_;g;ApvF1}1Ru|f>aT3F(}5vVvwNw>@#qA3?2GT~s0Qy_h35~e z%kP=&I%XP-IkQ!p%`VkwNT#n~HNPbS*G;Rx)lFk|ZO)nWRNXU8G6lRLq1utv`?@7X zy3}l>Nxd4MSGuoE7ksAqs=dA4$5dD{5D_r%BXGMl;hKMWobQQy)6AAqr>1YG`3Dbb zfB0OP@;9-!$Uy|+b{Ow(=;hIB1A5ylYDl1{Pv8pqT~8-azU94`v&u1{2 zZ+>#~reB=tO@V4Z!lb(EXdW5sq_ePhqE~=!A$^Mj>}ar*#>R^@CcCb7w~Ok#H{F$p zndtrFoTBOX8P*s@avWlJi|Sdt9o8XwO-X5JScrwcYC~|fbo(|&U<=PHdT z^0cP6p#+#>8XEkULKr zV?XI>nszP+#%0P@oq`eI9rcZbuiolRQHlVy#|6 zF(JEVOa~MxFt)1bP?tTPU-`++?aR7+SgOV=uJ0(JLA7mBTsQK8^osi-@inv}#By*T zzvH6)6Jjo14L(-34C+2bt;@(6&MwtiD+KH>);VK@V^*{o!oNm)nvAK4J@ z@EfJuiw~r*)cOZ%8oX0uKI()aqLyHUL=0@X0ww?H)JeBI zFQbx1q!ODbH$)|9)nW0R;is&5fA{QJn?;>WUsD1Ko>&wt?>tsP))*5n&mYVB&o;|$PmoqQ0-Q8R zsFTbZvrE%-(Tt%9NM&LyPuS=EasGt(#m>)<4I`A|f5J22BG#DvYuO=b_7gYBI}=0) zCZ$`VkVwZ~RQy531?-BkCV5#|WxSh(3tW&Yry60_=e5&Yw#y2JL^qW$)UP0HGVJ=1 zDV;Uw@z8Y|b5sDfN`zgq5cdso5WU%~p|vy#jrWlJCC^%CAcPoxz_n~%o24$1@ z3nX{sL))tDz%0Y$-Cg!Y<|kj!97+T7>di$8pez4?>%jVq{MX;$W;evCYR2eLKC7Z9 zrJ-IoQ-Sxp=jq5ih7;P|7MMqaJ zgfLUPN+3Ahxs4*#jcZa`vdoj!-Y)zrQ)ME9I%s%%{D+Slagm*RM(_G{)Pj*DGvYu%r&Xl9*b};!fkV%N_jQJnCc%7lD~5 z;Byuodwp>FL)9LVGolHV$rk7@{8pNLs*E1>QEaF>n-#9oA%W;Lu}J2L!rB=|F9}ddY^=Klu-a$ zyuv#40y!-6_Wf}!4bN7$0uY`gSg<~HTTDyj8Tv=xox=U>f`kv6g^83Wl2;X_$=39F zLa5_kR72a|9!%FW*LdZ6xE^F25@38CivmHWW8S)lj7wStR?2B}^_ec_0f^%14;<9l z&~{hq^WX2>v{&30a9#6WuK%(~cc}BCUyA5ibC(>QE({sBnOfAw(bX(SMn~@6(sOk690#zyNQJCgmx-R~KVr zs;@KhEWyJy2n6Ee*rW3pP<2m_6OrEIQK5|GbPrt#yPzn6E%_)L?nz{cTFx67-?u7C zSHJXqcW8mO3XgOkm=kDb)b4l4!S}!`NhqGi4~+W~53oZ=wR66OJrG!59_OW2Rf@V< zM|TyQz(?{E<-w*3RC{?tP1ay|=F5tilidA>5oT0NF06vM1_Pn@uAlsdgM1fA&C52* z{W6P#&!!ZtC-OQ4`4jyeEB9cZ51k%F;8;9W{8UeW`lHxH<>a>0{T9Lb^v7qMUhzA> z(DRf3ivL#LQ}Ff;%TCnHR$sf)i!heI*khrojm`HyG2~CJiOkto3 zBkD;B4_|xkFgaYec1=aSH_!j3P$wYyiCH!#m>e^pq_cUoY`r!$*ij0B8A(-$Z7-q0 zd3mPzgDd{Dwl+@I;(x^xX)AtLJBlghbScmoxx?ZGjUKzvwCSyFyrKzYkDv?Fr5|gW z>siiD*}X@`jXDS3?}hq?iT6Et^`Yh}uN!S#+KsBRX4r})9x03WWXV4h5jOl9o~KnHek>d^fU zOtP$?r{oct0UP@O3+f&za~g+!iP5Kx%~>g0l%nejj2d}(!uu^^B1H+dlJGJpf#U); z>%@U9bUc4BF<3C)asn)Va_cVk#Y$DKP_miUsc3RJFV>6M^Kd@!jSi_*>)V7_c0f{v1Q>%FBP`MJ!VRq_=_iq(zHcVY?(te2+wuRqUC323FV!&5m+fr74Y(kE*89Of^r z_#f=uzDTr=egP22#=V}N!XA1&YvU7@F=DcxtsCiNnSWZD`rF)g$1y@=wcW2qg5q?< z@0aj_UIk+!USG~Fnanp83C)!rXAth^TMK_co3+eT{8y8OLqo`{b!4MM4cf0yu@{i0xyz@@@+ z@zt#4WD{m(r`j1+0M30onO4pe5UUDa(vrJLgFE4f(1JjT)E!2{410^1RKFS5Se~X! zp0NSkfBDY8t}*N7LE+3E?q}y^dxL0kJk6#$TI2Urt5sW9>C!koFSLhhplsD?`9-_A zOz2(7HI2N_?GEFqP#<-=&Dn`tyVLES8hIL;n9;(R5EKDc>8@* zaPNl;LKDxTc<3aD?$y{#-}F+)k3e6WtFy&A>wmg|lHzS)@;Pta7zL*N^Lb~N`oyFQ z)%dz%QbRqvznbfj`3(tR;(CI!wba<^>2%UT`NE4z6;8@ToV_2`Z7r+7L(5Qno{W^L z7e<7Dw3}Sb)e^@E-%8_-uJ_Focv-`tyu7?iS0N6j`Q_D={_?MG+OACZz>j~t>8VW~ z#Up2W34*U|+}_gUr7|rvQ?ByA%l)vk%o&QwgZ=V)PDw)^oHUkFc`6=%68yYUYgmAN z0z1Iek64XF;ZY^F9?IrqrZ0Oi`nw0GJl&!2#JPaokJ767p>Djp1Fx&?t^5_v3{UZM zUf7Nk7JvqT(;52ffmZqV3!~M>C+zc9ov=8+w(jbj*6kSNQ(c;atKch^jW_)>*J#Fx zr~SaEig`7MRW>?N)!*0X*EAPiS{v&zpX6b4IV)OM^9`6-4u}7&OI>f@OKp5@NPz8k z3F|)H{m;q{)Pk3mmZl{nQUeK(A%|FB?>d}$x50IU8l+TwHl~I@v*lIt4}}!zR|CHR;_~H~|6up^%s|ZNPCpf#OPuo(pFMArbvl?FWnO4q&gJvFnVZ@wrT7l^m-;A z3MG#R(jFr#2ME9KS{MNco_yhm?*GP{rtCAv-|V&y&J#s-x{X&=xgrrJ0oO~!5~c*$ z`U|ZN_rH=}X{oS8kv6#$e-^{8i1&RkBt~=k9q;X(mZMP?*w)^q!M3vqE$b--CeH=Dd)oxc(((ztXsPSqpB;Iu| z9=qr1^&kI)Jex#_qgLn-rP19Y#X9+^<>+J${$gmj-Q&uKmB(S0=3ip1?~MjR%s@|W zCW6nqukEajo4fPnb1|AZlp1sa8>|0#PIAV;SF{Q8tDe~y7(;;_M}%rA#%LivpP~62 z^0g&N+u~g zC3q}pWW(KtSgwAHzwDgBJIRPQxu%z^Kop4>K)p4^xBzRlW|a}k2R9C1g>P5!%J#X2 zLNI!n#FNZ3S#YZ{TQcL* zLZl4&R8$*6B>Xf_NTS)TP=$vPpM5t=#hpB>W*6sCuB(CoCoI!7BdhN71~H2^ru`1V zjvL-tn(l1*SZ~)qS=Jcs*sR1Op_{MHZXYV0M33K4L=l6UybvdPOATa<@49d&=5fpCW9&QGLl4Vru88@ra0Fa)23 zt2kUtYO)eL%|fY0r=B_0J^=7NpgZd=ESsi$7VXf_f97vfX(wr`Q%Vjm(M4;IE3GZ= zVaVX(ab5s|ngpSe(P#mknX6Jd&^Kh3W$qQF`BvPiD8iW-bU^K<9dzqI$OX0Ke8DDE z%vj29h}%<;{A>Qsz3Ef=saw?FgcSvP?$v00(V($zt7lma#aLm-3lFRRY zx7vT7e0vhn6m1)3%=6vCAZ0a7{*-s!-+~O%)&kd9z26Tu_n)%Phn&yPtlvxd#*s-vx)Yrrc8`e6j7~C;{RE-e6Jf^hJ>+DQ&f?GbLt$ z=~;o>#mq-y&8vxShwuD@oRpgjp!j`*{X%17JzO8V3?%_!gMz-p8@8YOWXHvJ2hq!+ zSqEeJG;1si6wsjKCD6(#uSU=brV_~Sa3Mj{uxn1qK$DT_y zJ`e-Fg)1Svt#19()ZY_jJpgzU6P*2#2lm&&9LD{P{4wnGG)wl3lk7U%5Zd)}BfoV3 z00%tY3k48V^f&)#*hYtNTg4^aQ`$nw$G!wpz z+4jy}n#k05$(EtHICmu8d+H0blZDQJ&=xfn?sT@T!9=rZR?KkDS9P(gM>PB*Pt1$# zh(=kqPEJBMf5p^tx}Y)IaTeTf3uUwE96`5^KPXScHh^|i4nGv4qzk@?0!DFgukDir zRIOQ#xck~)d@y`Oe#*t!oJ-kWl`5oRMhTdtkIQ;m87WX@GkD<#z8p=YrOI|iu5slr zqyM1K%Q!>cd^mVx-Ldr$Lw3?|{c+>*_pdOq#AQK9ew|-6N_s8aQf6VFKZT)>QQkR1Fp0(l5fkSv6CvJ?&Lo2AhSlY!xKXgbr)NrN z%u4C>H%bzKH~{zhcc0d5MTkEQcZs5#@j~+hF+hQzL2O~uIBxlhJ~J9;eO&y*nB={v zV67!`D`A_ZC35wX?Z~Q^gJv6FX*$`AqVKK9)t;tJwn{}Z=?M|Rvw+vw6?L3FGScx*f0qQ3jiU6SWxReY>M#Gdet1qr$PC2;VC;i@Q8D01vW==C@B#=L^v$cSD3W!O!Q zx~l3?`d62%v7D@|KlxvCuvBp0zQ(SVwJ5*=^c)osPS(0o$FvEKQU91f9s`(W0w-OO zc7$FRnd_YxCiDJ%KBiVejI>?*)wb8ehY&Tp!Y0ZNQ?t5Rd8L2}an#mff7PD-frB$J zJgMhtD$rEtA{P@l2re2|rKfYV-0dLSfJF)W&D2|hqjg8cYyM<)I?4}g(NRr zS`N49NIFDBMU5SY2u4*nJNcHMdNwfN1;ZFub}&#J865yXW%iN4t<2V-Ci|JVb7CGU za{b!4)ZbhxB8+!zxgjz1D5m?C3eTZlY%L3`(+duTVoaSiA%(~gqh{S;xE^ycs+08+ zO!pH9hn9d%sUMQgW)!)DVd`2_ns}+%-8D~4bHO^`2$|4xUNSfQx$RJowu6+It(9)H zxx)}#7L+e~`;+$zu85#}It{~*6_w$X2Aw)0fIYt04gkOvw6h`hkY2}osaiXmhp{5~ zdTZCuOLC7pw22qG1S}Qb`0N2&6PgIYpiy%U(Ib(aD;YG1QHZRsN6=zr17^k6d#&;I7qEHG#_wLGBQA7&+*_K-ApF@uSE_sRF zU&5BsZgc-~*CYzGvNQ56&nGW&*9cQdm(v`Q))RV~;y#Xa3OK0?MNl;GeJVQmtl>)( zk_Ke;r&8<63B@2!4K$CR^x6M|5HGw9fXvfplaSJTJAn(6{rLVf{89BS$DOPvQp925 zL;yga0?X#fzalsYGLl73Y`DQ3{UrjL*j1mLDW`KW;}`r&mZMz(%>3>LD{ZHhEq6zLAf>3O)O`Y-fWIDHhaXj! zx`G2=t0aIVs{>cQZfR1`!?ymkOg+Vo1BwRk$Cug>Lm}|(@qKCxF^jRgbFP-UmH-2f z;`Z=_|JTK+;yZhKo`1WqXwk>(HS>I~^tzsfJ1`14Wp@8ouyqqn)E%a`t%TnMWn3hI zx2Ey9l!uY&*#{`?Ql-LQCq$8DAC+&gsIaW!)xY&}nlB70evK(qNL0qDlEI8oVhZ%< z0iSGiJ3B?E^Y?%FG$< z+|-b~^B$9-bJ-!2_m34&1Ek|AKLr2?nDi`|=96qJN`Fx!&Nd>5jj+JcvIV6vaMO0{ z)3oj*oLx%0i0)N2+Xx{H^IF+D9%ua36O5AWdW%?aaib33SOX(lM)U~L{EKwDMXf>7 zbEo5u9gOp#{;xs;V^xZta&d_MNin~E&RA99(4z#+4Kjvr=pSym?nAX*N4{ZPBu^RH z^xRlaxe=}JFEltquEv#|R>%1^YCYEccT|>I1GNZ=WQ*w(b$LXLQ9NINrcBm8!r%~i zv;aV4&c~O57z}{|!iYh|N*?VMyKXk1R(&dGkimkevoVAQ^q+!W&`}GH4lj6xbD7*B z`s*e<{`59WC#hq)4N2RiNPYhkR)}+i#kFey_N+)|Lkq*ij4@XO?K!V^iL2!Y?Boln z9E8wV@Zg+p=nLP=D|lNktS)GSl6YQ6{VuXy>@&ZXnil4rG`&l03@#OfR>5DhqA2k9 zWaq9THpKBPuKqWpWPPWImcKbUzHy;hGSm6_R|9Q6n<}aT|IL(tw}C0Yy*iZig&%ev zU`hFDDR3CV#~u^&UXk#M%QD4$9k^K7{oA z{>C7aY3$l2N4FrK^9EGxnd?KCe|JB1K5@HoEzLhY11%V&=TU3ZDAFb?TawXc zGpS9%hg1P6QsT}i!lMuJqV6Mcu5D56m?C#p`c)c=;^FBl1KRZCf50lA7Z#w${aMaL z>*U<(Wz&zv&rMCRkuutx>P*Oji`rz0Mc?hOgHpQd8c^O%y8}`BSKth0YST}B=37>1 z&L|mq@x%1`c-z@x2>GLI*Ehz03`^)s`pa)|3_9Q&W8w@J!aNUL^F2)5eAPA2*nKJL zz;mHTL-2R{sx9Twp#(etT( zT2oDjOU~0vjjnfm<2P*_+issaB*Y-8ll}i*|BRGZ4DBT&ZBy}$4~yT(TAK-l>=T!< zR>3 zDu=qVDzaow0^q;G$R9k;B4ws>fi7o@L_&; zpLW-RR9Xik>!?|0O)Z9A!{dr)!}ibB5y7lSf)BTc*=Clmw=>LLSxf`2pF3>$ibSDr z{7lOY%YRb;wF8IT>P`e9oAt*-?upB z{27Ve$e8-$`@%!9x5Rhj=wyDa*1+%Nz2Y~wE9YmE=IBH3Em6EH%pL)YFT0;5uP(m3 zF54(%NdMiAnO#^roBvE(;+feF^OnD#PJ%0vz{G#$xytp5;O*bT(kdVH_ao4vy<7f$ zUm^OyIMjQ0*&KZ8pe?z^qw=#i@}GB!lv&eIh)2vioZMMK8r@w-BCpQQyt`a--ChmI z{A|aO68GnP*2n8OOu$hS!&b8tVmJF5YLEfnnyD6EN{aSCd>O=4t=2H^39PMTRIfYS zoK~HkDJ&C*vQzaz+MCJq#LgO(=BW068IYz8BBN|q69+h2uYW@!RfoG1I^NEik~df) z-Y>-31%|e}Ad%4@bJhDSP8)_Ach-oc692Q^h2eTMyoI^#Z8t+mx$R5m-zg`p@JPRo z4?%msC@E@E=!!0G^J#DH#nJa$p?7=2uuuxJdJHSR_@CjrM5mLu_{(t`fg)C(7Ap40_YB1&{I4ofa4`L<~L; z+ore02HIN+#iUb;ys#~sN*oE_F7n7J1xljf;1;gttCW4s(MmRR&6HsXQJpH ze1^w#;AtH?d#w9QZpWR|>c6W;#@aaVd;0CX9eF>S6i*RiFO|KP;rkmY-gsF0Oo7;0 z^nCKAWJY_)z|nKrW>kk`Xvi3Fr>L43u=9*-5({9#mn82nrd>T_WX84Edfr{$!8Gku zh%%1!fBy?J`I2`=)OB3q;D}i=M?lybNh=Z@UBpx%rIGL?ri{e>J}hO|niZq9uspFWn#mr4@Ctn-9LgV`+JPByTN*paMl{yH%(9_+wDJlV(L z$wi)}IKL2qUmm_2IUJ;hFGZft?s#AEPxo`}KYTdv=MJnEEs=Je%Uy$q4fe@YxX(aX}(}pz0?IwBKe^hpI zVxs~IV|S~}%guGZI?nif-HWGIUtLTtP&R8fXmAyL)QhK7tU|v~+kCpAMuuL;45{YP zbh-a@MaOPHWgGIkDkB|FLU(X?q;u|t)Iir*v@Z__x%F6+LaRIBTm_TcgY%mv)!0?Z z!ol)VEAx7%1&)(C(UVgX897pH_s3gF-<*Rn7Sa1`XNvEHpw3Twca!6zM~ZSOx-Z<>MtKiZw9zd{7U16+4bjz=l(Y;LG{kPQ6kqcdYQ{5y+opeyn zs@oT|i%+-9eakAk8S~OtYRHBx_j|Srh3;YKPt6$4kl&X}&@K97?(eN_?Mo%fiLKVJ zB$SzRxw9K;am{x2KIb(kp2|l19hq5 z-xl?@HEl9={>mxa;a*dfgL%`lWNq7;q&ZK=N2lM;n)$LQ0Qq%>?DWBCcJc{!AVYJm z-4e!voRzT64nl?Rr zMy_crDgvucBk!xGxVaZkc>G_+`8Zw1*)~!TxC_XB<~HI|?z>tOn!_#U8|j-ki8Pik zXKDEKrh;cWqB73sW5Z`#OG^l>(#I4Kk z>2r692|!JNOZ5wyvqGi2W)IlYL&>dAt^1<9t>xxUM{(m_BY}vzzrTgtuH@H_T((L7 zH3)c<`nE;(+q(=hWmYzq;<{q_u(on@)w=P{+v(*)j0eVbxr2mqThH$nKl?aB9y#@4 zB0$0{hwxxh&6sL;Ug(6iPX}21xo+OZZ?78YX-xd^g zH@ai#$=&9K8JJQiN?gc!(7$E?1%toHc5BTOH8`1%OpCKeSuq3ab+l9HaD3$DoWliBcYwsoJ}H`F{kWZ4V1C=w*}n5IeC9h6aNxfGKfdFr)`UA20ZFCkUYQXJBM4#-$=Nn%9+O;QJju?RrRfuir zxiMEveRH39@ZY8NJ}JwkY(8%CSy8S)>yKejj5wlnO}pV#5t+GtifZu#8(`@b|5r=b zfYD*(2*+XGkG9Hsn=&zqJtYewoOj{dRuiuLCiWWsW!!Il`dX0r_&hZKE^MKz$l6@d z!OYzU*4Z*=_6Jm|eUGg9qn6(HzTUc=&G${S+$wj)7jaFWzAaDNbVQn-jQ?&VuA#i| zY-Xt^jsmG+^N;QcjE9H$1SpQp(4OKO4q9W77N^8av8lnzHR1HAwnj-(Vj0x6gYE;# z)cDxW63_&uOt%U*@n@4Ree@N_e<$~ZeHW9ccPc9ORw+2b0x+o2+%|?A@iYQyU?(C* zA%>`0niJLwbQ9BR02pGI;Ikanf&1Ty0KmHf3ud5 zMdD!dqFkUyzv3nK|NXfqNsCLUicYj%6tbIbW*bIa9&R)jHu+0x0ddCt>ciN7GZORP zH&~;sjRY6d+_8ZZQ4jap_Tml*oH~U6zr+7`wg2CL@!2{$I-dM?stFdw1j&!F+HmCa zxc?i=9a6oN<%0|T6bAp*&y;40c*JzKtXKdkQ1}X#69)PJH#9r31q|(TN^8C&CuCo3 z0aB9xjy?R}G5a{Z6r6YISb#fhPrOP-Qf!N`){EaxZOhX(x-?7$Zml=S_CrR1)B-*u zlX7+muivWAg3p7nS0xN8CiiXq+xaLG0N@NTL|Z#g#RR~O)~n!0eA>5B%cgw*Fd$0R z#WSU+#wu|5&cMroUfHBEel)@ZuxOJ)hBYaE`M<|z(PLm>km>$J=zUK%_P_WH0C3C# zgTd55AnY44uP$P8jtnr#miy)^A(chj_1r*LWQdka`5)o|07%jA#(6Uj1H#O-?TTcO zVVXGqMR+ecLyo^l1|2jlNaODrP`h`(6%$#8gOL0SCa3b)n9QJi=lfw=m!iQfBAVLXS_~eGiHY&uat}{) zL@kOULP)+dd3oE|*`Vtr=;FLf8P>^op;s$<6+U=z-TY56Q7 zG_n4>FD#5EAwcfIS=?erA2+>eVZ4{eJuPx^`4Ip>#@+Uecbeb62eUqftn9e!=*Ey^KHpUy8 z*AryP6*XPgudpj{fqyvthgH^gaL9v~S-=XbNN3ezV~_!3ow^dyuedW2nAqejJuZMM zIC~^7b43bAfJ*K^pdP?0A#u+{mgOb#^S=GC>xKlIjR?4fL~#MP9J1G>zl6tDe{~3Y zuo?bq6%|z`uS8Uv4DH1J*$fg5c*YM8z%KYGedvN6(D(BvHgGXjZMr@#`ReCrLGUbr zz;sT@Lkr#i9wd&cGZcaE7j(C09{MbN?j!l&a5kSdUqNfo#p{JIcem8WJaxPLQ73c4 zWr_T*Fq$pxdr-9QZ zxYyk!5w-6>u6rDm4slaZmP9k|*(or64pM)30guuUX47s%a<^9BcA_Jrev zTIHJOXhe8$q&WkyO(g3q)w@ti?W+UtqDe|E@6xH^&pS;)?&oWE+bcUH?<7Bd`}f*A z;nQ_*lY!kt`{4nYCgkEtaki}i?(23CC5SX#l$l*ogNN(5_#0^AUu`OQ!DDdb#Da#W z!H`iTy*EGs-!2iWqyn1tT!Zis2Ehc0#z`4YqUcbP~{fI)o7LFt%kRV~i9T{Zp z3y*pW)9=&94Y>6gQ>@{I_FokTJ%&C1g>U-XpGHE&SaRFF^K(x|p~jdZs?R~f*bl=A z8sGxXCR#9KM!X0A85zhZ?nQ8M@)nV|4~XOIzn+pG6PlZQ*zTFlUFr_Mz>9riPv2SQ z!2!*<^2Qwyu1zxi&6aYovBvVFLLTJu?^Xy)9X?3xDsVMoUOG$F6aC4z;zqT{8{z@F zu@ejs2r)?dQTR!n$R*1xT}gjr4a+X6>l+}hH9ZxglEKe9_seNR(5}rGS)A9?zO<-e z+~L=lEjLarvFSCEfU7j{>mW>TGnMcw9cFJ+c`FsG{*tMw9|te`JHD=%ZiOuf+j?Y6 zF%rUY2~~%q$1J>$ZSVhN+wgKony40pfk-{^_;X2rMDFEyFF&xDJ>GVNC>iOa*SB`j ziBGv6B~aKE)aT|Kc8A=(p&0~FNen!yH2mrTRrM6)VcIC=N<2A&b#05b_I}Q$ezr1q z_wdIM7Bj5scSlLKt?0k`hKuay2LhutET-_$nnO- zX950=f#bkix2Lx0liNxwIBI;y(pepEBkXH#Bz=KKJ7%BR4@J_UkK$P;+ru&0a{gG$ zTot|XR3hR4H^cz%pH`QraQtmM3tJ85AYrkKmKns#=m;Kb%ln>)HCpkDZ1~ZlE7PEv z6o4-*N><1a#mf1FNvU7d!f=OT2FiT1t1Q@f(%FXlCZRDTm|;GqKQ0jb(>qwgY(z~B zx@}?M)Fz#^-j)ix?YhwP8*9Dw8q|uc3|o6KqGGQzJj%21WF<_lLMOd<1Ar4usAZjt zr`NA&K8gzwlr6QNx^Y*iF@m(e3&;#d>_WBoT4Q4m1M8Insux!d1wP=HQ#0U*Z~3G0 zP;G&b-r<};hp-KY{2&`d*9KW_-n$+ta_KBoeXZsSw%z4guk@YX_xlUaYYN8?ZkRR9 zY=X`MU1{!MwROrXV%Yt9kjjhmAu8cw=7fe&KUfiFWX)oml}GH_yH3+7KTpLqxj;o2 zf7%oK_&RNpVFfxC+vx~E+83eROd%&jjyzNQkU z+F4IOIwJ$|qj}d9vrFU-FN&0X#m|$Dk3BByx| z+fcUEkD+UI2OB3i{tsbORtdsCjw;;DYwXeDN7ST6eZ~xze=$7$wL|Ck#?80ue#OMARPik9eL1|<;|)lBOPR(QxPt{J6|0L zl*YgR%}bvr9zF}pB#5gCT!XGjUnB^M*@bfMjYtom-t3$=)H|;wI{4m1v2luxxu*n- zGCZ=*8zt=eV~>UD9Le9PB3yY9i1`H`(sjsmcyIa&c_<#yj_pad5IKBUK>jKIm1IeE z=?ESWVQ*;`9Apw9l6aCJ{f^6|4MxY1YMT3V`-*}|pYyLJi`AuCYQ4at;>U_+Cn*^n zby1jgmv=hQa_D*>qU-$DqDE-2n7!T{(*Z4SO!eL8ym zjMy&g57==(Q>v5a)*`!!A0LRQ{@zvXn5(Z1%WeO7@?pB1PyOf+^p#t^vLIL3>u;YA z;+i&SATX9K?Rmod9)&pJ;($2wiXVJWU9b3w>8d{K^d4#4_kj<@qmv4^w#8|qwrceV zX&0T-DTmVXX`zP^r+>@)iH=B?QT(dV$Sap>)!<(v#z@01*a`n(4PWf7C}LUA`r(vD z3so_Y`rvD~WVOmn{O$hvc>tClt&eThNqd!X3zD`oou!LypM4hex--|*(>YaQJ%5Xc zvtj+u?zb`sE*6K(+NneeZ0as>T_O0>`peO7vxhOZci%X`PX!cLFDbfyp6a4!YUYG`UwH zezU7JrR$F^UBZan3Q%Nv%%+STi8QL617^<`9tSFPM^yPZkgmZI!bi2?r-`mWYo+kRvS!VX6zfXsUDOK0hsANorrYOF z{Y}Ee&5&LHECu9}!ttqH0q}b19inY`c==9+|L5%;|L65_+O0j2j6sggC7K^gr`tTs z{9&t;4EDLGj&)JyhNLr6riHeIT<7ey&M(wv5I<d~(QmI?UXf_Bf(Ra-s0`Sg)&W6%{M#v6PeX1B=zNEiGyGmVX`8=0}A3vED;CdL40NPpv0%yya{d;gCo| z{ifBG8(nCx`=8TwiCx~&uPyPA-IGg?guWg+MHK8LWxRcySLOqKa0!wogq3yowf%GU zfHehmD27fO@?#uY6MW!Ad79WA?zFODXo$4;lo&Pljz`k69f;RhObaTiT6bI@VOIKR zd~yoPMlnge;}CcFTA;a!=&-ol`gdC1z?zBQ`0KUDaWZ(T0i|u>=eRGQxP6Q4H8))2 z=#M@Z&vTrx7XMye(Z>56&9L)aXPgKvS@xyCgIZs^MMcHC?aPuXK)~2 zCX!9Sg7AIL%r>YteI@*-_xJm9X&Sx1HD_SN-CK(HYYvW!ys?2W%?v&k5LB_FFotfb zzw(uTn?21|<9hrETl~zpV>fyCCUfvhP1y+@ja`n z2&}UFscf!WD^l}8RZ~r_RcC@^hqhvsSyv7R#|Evn$^GfLVDxs~;!_>X27PS?-|uJr zs5r>yT?9mWXd5;R;al}aoSR*Uz>42-WUD`0hRbi0_b<5Uj`0!x-Ce&@)y)o(-!WG? zdiNI99v(&g0q2HD>kvGuqU-PiV42an+FWxOYdzVF-!^a^Dtzhpv zDyVVEj;s3{Ir2LBV#&a3A*WioL6*K!0L1wXtD+t`6_34^T${N2M}Awr^N}8K{?N)a z{_d>Mr=fF2+O&sPW0rwB8o{CP$jzcVCa}$26|kOaDVgE0OX^!$tNoT5eXC|?AJZxp zS!R#-6jMhho$9I-L6(Hg*YjxC=yNEem{Y}0n*H~$YtuRir%hUSWnc$R#b~*pa=*KO zAyg{=8^^J@K(-k1*UcuisyF*3A#PlW*F=)d{*x?ec_q^7!U5+mP?=V+W$M3TW+5Wp z{C@#v)9?I5-d6pYtxAUP-u!-v9|BRC#QU(A3IhAdaK0aUwB}=btKsJrKUeN0&CfN7 zm&@_$$>AZ&+n}JO(!9H?IZ!KaYVrx>OnF7RvoJSH@{n-2{O0`a%zOA``|bWY`R zpS!rqzKeRD_Dw?9hZZ?EQ?)jD9=uu$WNNXfC4Bkw5?;6WJaseSHQX|K&I02R^f*u% zWv8Wcv2Okw~A#!0%!C_YngI?_+WC*D)kD zuP#(MN)iF=V++)P?5WO>+P~QAdD?e1#;@+7S{|%6O^@vPUzdJt*d~J>5zzXuFR?A1 zN4G0YjrjP~=ql%Ztj~uOacBuaJo(?J=*6V%@LNq4yixz`ke|Ilc8v1n1%uNV9&nqa zs?I%^oVVF;E0OMqsy@kfGRdh{>GO#gMa7Gqc75}!e{Fb1ZDQ^0lGG;sh+qV@VS@)$ zoe>v^EO`Vl8nZSj5dvdfSw2&n_-w|P*&_wA2ntIogLsRnXY{o+)yJ;gWT;3 z&5G5i3P+OteC?%}VK8D~$@Q*MIm@2v0WtwHz)}+z+S)5*F`giOkh09KW-C)OLkJ|q z=~2hr`m}K|@U{{(_pnPDfthK8Q4v%xxZ2V3n1NIzBz9K>VmQBm#Ss8X&jmp(fCO0I+NRG2yQc(Wa{ zu9=b038;Sifs-8zlxtuAdg+X(x37(`t4&sCqflly&>W(>BW_Jc2S+mgyfwSx_)2nTp;i5ip0udyKvI57 zmcHPig?*95%Pv6yve;3=#O@MYAM*$>&J6!xn*y}I5yD4Ew!}V|PUAP!nL1n!6OYBw zx*1awZ{g_XOO8oZI~QQ;3k>K?8#qc|f2%TTJ%d~|L*VRx#KM$k0%k1kRo>I|{s~At zwdqX0Rux>e)hA`D&3U|+lg>l8s+-URe`9-{ER}ZhXM`*cCFi&s4O z7s>Y+4{o_pyK;_Rh|eAbxdxr3=D&@H@JlUPxEjeXX2LD(UUEi(85`|&1ReMwg&gsL z1D2D)*NhYOsHLjPja$Xa|#*=#LJI`s!?^>&@3dcp5f6t8e)bzzDz zU=(MczdI&kxHp8##G-(hOYIe#Kvo}(w+5($tf93~I(vk}`MG;!VQ2L`nVN}`!D-9D z(a2#J#Cw$bnQn1V>)ubP()Wkqoo%x+9abMyOhxP-tf^GUCfczWuYT6uV)*2iX32-qiij22Kz2BKJq8@gpFFg^(YtVF4AQ% zi`Py<)pWCT+nH6NfsRQm&mcow<$X5aw7}V?YSz)6NAsU@4D{S7;U(LJmh{U-ZmNc) zYNPK`Tj|W~GQZ>UC2OepJe{De*p`E%M|nPW;|O|t2pg4X(zV9Zcl0?)T>hI@*^N>n zmhD9zkb-pDPOTLFR~BP75nD5LI3{%-be4rb*`&>n*(+6C&$k1;7H(j!&_C#j$8Ry} zXPd4%2)sj;mcwr8ng>)nv(5$taCWG6Cs&*Si|0BRew$aRvWKiHwYF>j<79sGJD*@E z>6?;ybyqzZ^;Wx7SBquF7J)jDcls(og7t`jKcd@@@6bCHBo>@HxCw^D({c@)Hf3l@ zWDDp`eNP^rxEoZtlvKm^Kw87va-42n^4$D*a_eoiN+lx5f3`m-QRwu}pb58|{1tEl z6uCAVJX#X(+_)%HUC~kZiRagTV%nbT_NRQ?*8vliz&4&6az}N&ft%H3Zh~a1tGy@< z@i8;c^)H`*O|KoURNMDV2YbVAR_q@H$iB6B@y7$Az7f*?np(kcRjDFcAKR@=xsUv# zQ&k{{zo&^x!erqt_Vbul;e106iv4Pp3x=b}-u@kKce*N>laThC`dP`^&^o2?d8Q!W zhoI?BWR_hy8C^|S_f%lxYllademZl7){Ze%-TP{7+y7uOt&G~gdERN1c!VhDo0aeN z$DcaYk>Z^(juvtSK-hSwF;ts(=}APtYO5J%WaTBi-BWm~ z>Fx&7GJJQrCVgZ7XkubJ$JQY481gm1wHW-ZH<&MFO3j7}{>-n6a+0;L&%!Z9b;hbA zD|i;Cqp~$3O5wp>FJ1*K@~otj>hVIw2(Xh`hT-hZOQsV07)Af3FMFDaTSV(mG#GbB zCyPLb>l&Qm-BBpZlF~ocxjj;w1P!mHJ>)xWKfJ?#+t}RHMdX(^;9yAYHK433$EEAx z9ECEnLG7PBV|&ygQdpRK+RzpoSf3NvaFllH$+|<8B{;Q;X0P=A^;ZF9b{nh{oXE`E zxOf_QDy#i*ll(+c(7$+8Ec8hgk9zV|f)jH`*)Y{2V-M~_K`S-wj9O1a6i0?}q`0*2 z*;clZ$6>EHuK!9Z{9uZ|#J&zINBFq| z-jlgfyW6#T(?Qaim>!-%u8lM@Ih;6>Xo1Raq!9E%{$Fk9{ngYGE#OdY00jgrbWjky zQbSGXa!~|P@QM_ri-0H{av=#N7!4MRO7GPKq(uRNKqP=f5e!X4gbFoed6PrJK==2jHmHmxS7~4C zNzl9wzi>~Ck0w`r8~dy`HEH&H?tdc#RYlnoTvaO0>IqN8GSa+-hsdq}rZHV`ABu;x z1^a<|x#dkL6N49ONO5hn<{~7^(R+jAdW`c$N1Y2q6L3)>>6!|I?+%uAR0i)@dgRsjN zvXiEn`{}Yp$~Wzul~R$L>onA%kt^2i@jRUAaRH0T=@FKMYZ?~xILusxS(edQa&1^5 zqQ_k(C63E~`}MPAZgPJo>e6c!=PS(cq>PddwQo=aGjPH^y$5PkK|``{mty+BF2fi3 zxgT@6lb0uF7Kq!bO-*|@J@sts6Xdv#2_-c83pwpJHZ`q{lE|ChnS~5@Cf)z5VNC_P zY0&{ zzM$O2ubP-IZSUPXT^^sW>5H{bpYLU%geC&sj=EE@M5b$(49n4vcdR9UHpA;>R=)CA zWstc(Xs^)nB*}vltAF)!mp&M~eTS1v8r|xVm4MdoXhVSQk&GenO%r^BoJF=xU;iMh z@lBzzgc3$5(oaYnB)_5?u#G>37JxJ0 zcGNb;Cd6-wd$;9OXqN=t*qed2bPkA)b#=W|vWk>xi95cWIK4I=qUVacFG(3}L6e|4 zF=@W*vv07~XRyaBbO$^h-4Fao#O&}u?MY=ldHqq!&eX=smj^x}qV$9&v+ulL@v3sz zzKx8G+|{RFg_)7gq!ezxUb^AE-vw7lYcl#fd7IVjI>^)<6Sy%v!9Hrf&2FeVMNkym zc_deSDOoQ`nmz1fR{oLj88a3Zjkvi)Atvn{K1|=M3fWDbe*0iGG&NFy(?m32Y+3tv%b{B#?m3jT4hM+lA*bZBhgnpN>sk!#+G=@( zScgc9|M7u+nLc-s*tHhaMRhncZ|&fiYBB$o9;&fx&&N}9Ack2F-FAyK+K<*4CU3qY z5SGo)Jgo|R5ia4%v@;|*%C6p8%45JcYfW@>i=Wxpe#t%=(>HGYBj#tZ*N;4(e3fvO z7TN*r;@|*Wm%>wNbYg}yTP8L9=+Fn$w#o^=k8_SkF#pgD=ekly3P<5bC-UUr%bJTU z(CqxYl5|nmt^hlyoC}9 z8aS9vt6hrJUL;Xbyx!Vv_ThReV?W=9G?{^NOKJ!-p!F~;E5e#O*7m{-l8&wqj+E@rc{4*^GVRzkPX7X;+wC>=v(c5MTo58m;BY^k^9nke%ezt1Z^^v z*@XYf?6UCa|Q5Dr-8qqCP}PW*cvO+nC7ZS%1NMnjT_z0 zhW8YEE1KwQ(K!}d&a(mCj_LBPT|abSEEply_}`Mjzk{TKqIjbjYVQ21!A5f|hO13r zHDfJWa!$kzJM7rf4^h*rrj5MU==Dc9-4z$vblx$sN-@Z6KJCN^t3GaoZxh>xM zr`X#=ry}6KuM0h1$@%(s?Gb*gGJHxEku4i9I6&ry&+s^c2`V{74YAqcw`v{Jqtd`B z*q&>0>&-zeJ^zgqG)q*J#Hvl~L`O&GNfK*_LbPHIF&W5_9dsL|!wT@8W&#HAD62=+ z{`1x}yF5EPg`}qq`+`L9EJdT9KySuTgIF{YuKmB|1+4$Zk9eeVSn?Z+3@0ZjUWGb7 zX7kjHP_k)&cS_p0D}qStUh9;xdY(dJX^j;l)%ibrZ|ww)OF}>(uV40WbmEUFoz8~8 zkUFG+I+q_gr*t6Z$tb)n+*~kxO%c+|j~OaSe^6BmpN9kppzAPDGR~J5cFygKv(w;}mg$>boxjuJXIeX5d6NFAs2&(S5f+ofX_Q1LD}&CqU%f5(GL4 zXfQb_U0pV|F0oU~hZ>n-pMf=RKPNW3WP}F~G{KG-aQel@w)OZyZlovTu|*tH3+2@e z-}nB&Anw;4t1$jLQeg!LfC(J5fU`RkM1bXCAKUXDv?wn2H?s3_c9bOg-X%2 zW{~G;`NIT+1E7D*``>RH&!C$&?Q(xy5SvYg`{wejp18@mYcguEtt%;C%N_BGnCj=u z(a!N9?ap^{$H00odO}hZM_UjKIQQVWp#9PGgRzF|dW&9$x3xh9J{EgnXW=Ei9oxHm z%Oy!CGI*kRmrciUO|XY}pQg_UjLAPn515#yI)hlq;Bt!i5IIPrk~8{KT746W^jPA2 z7G7bj{J_L*rFAyKqAdl*r28V@q40*!?gV*RjmHd}|T z4zkX-7%&-zzZRu;_>#Nj$_ zz-whH5#j=AH|=TgN|+V;NeQ~$9t!CCEkD1dOW|sg`L-@%GvbUGX6St!(~~$zvL?C= zRlg@G0rB#07WGIuvW1&dP@rgD4{h&F2&E-pt*U&=4Pv2n(4Z0a1Aq-F zOtqMOJ#DK!Zmy3~v@g1cI+79G7V>Juo`U_SU%NjW{0;M5@b1S|HGvbhUsT4-u(s!_ zE>7L(J@P=#Ia5|uZxK~KsMH5gfgl=L-w-Zr^QjXr-uT(fj;}%-7+!qT|GVV8mUhOd z#%WrO78ib`tSs{B)b;kMoDF1SJKw0~T`G(FT&BV_ExO(GY-4bh$Eu&$$CK6qJXl!= zW0-f>?c`c1i|fcN{ak8!R$iAm@g5=SI6&5L{n`Pc0FbuOf5R*&qRCSFsT!l01JH&C z31M_v6c+q+qz^5LfGhnAq-=UV79A{TA1@(K(p9$?pNCL6KwTFk z0np`^KylwHA8~RH2)%JHkF7)b%%ZS6UA2&II<%BCmdkI8J=!^7w@!2-c$GlyMpdST zIZtr!|6V?|2AFDahFMFcSImbONmpx4x9wCg4mZ&T~!7Ml)s=S?^36ZR|mN$0V%u zpln4ULh)le29VYk!B3Y&r((Qn@A2n4-Zc}3BAY_-e7{o41&Io}x#|*pL%`zxA=~D- zfRmk|zuyAubsQ8R>Gijem9F{ZXc>-DB$5Tq5B~wUfDXc?t%*e2EB*TNQEp-~eC9{P zf`6e=fS~QpbJylnSm;jnUly2LQY+B=-x)yesbw1d9y!&*zet_mLIw%_ZaMXTE$D*y zFtOQt@qbt|;3|kvcXzi`)6@$q<80h~Diziu11!=1x9pl&>zh&Lf5N}~n#uBl_4%rQ H-0%Mnp2!nR literal 0 HcmV?d00001 diff --git a/lib/config/design_config.dart b/lib/config/design_config.dart index ebfbcd1..d79f281 100644 --- a/lib/config/design_config.dart +++ b/lib/config/design_config.dart @@ -1 +1,26 @@ -class DesignConfig {} +import 'package:flutter/material.dart'; + +class DesignConfig { + static const Color primaryColor = Color(0XFF007EA7); + + static final ThemeData lightTheme = ThemeData( + primaryColor: primaryColor, + colorScheme: lightColorScheme, + ); + + static const ColorScheme lightColorScheme = ColorScheme( + primary: primaryColor, + primaryVariant: Color(0XFF1B3C59), + secondary: Color(0XFFD61515), + secondaryVariant: Color(0XFFA30001), + surface: Colors.white, + background: Color(0XFFF8F8FA), + error: Color(0XFFF00505), + onPrimary: Colors.white, + onSecondary: Colors.white, + onSurface: Color(0XFF1F1F1F), + onBackground: Color(0XFF1F1F1F), + onError: Colors.white, + brightness: Brightness.light, + ); +} diff --git a/lib/constants/assets.dart b/lib/constants/assets.dart new file mode 100644 index 0000000..e28d363 --- /dev/null +++ b/lib/constants/assets.dart @@ -0,0 +1,4 @@ +class Assets { + static const String _basePath = 'lib/assets'; + static const String logoWithTitleAndDesc = _basePath + '/logo/logo-t-d.png'; +} diff --git a/lib/main.dart b/lib/main.dart index 8c93413..41f4be9 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,4 +1,9 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/providers/user_provider.dart'; +import 'package:didvan/routes/route_generator.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_localizations/flutter_localizations.dart'; +import 'package:provider/provider.dart'; void main() { runApp(const MyApp()); @@ -6,14 +11,25 @@ void main() { class MyApp extends StatelessWidget { const MyApp({Key? key}) : super(key: key); - - // This widget is the root of your application. @override Widget build(BuildContext context) { - return MaterialApp( - title: 'Didvan', - theme: ThemeData( - primarySwatch: Colors.blue, + return ChangeNotifierProvider( + create: (context) => UserProvider(), + child: MaterialApp( + debugShowCheckedModeBanner: false, + title: 'Didvan', + theme: DesignConfig.lightTheme, + onGenerateRoute: (settings) => RouteGenerator.generateRoute(settings), + initialRoute: '/', + localizationsDelegates: const [ + GlobalCupertinoLocalizations.delegate, + GlobalMaterialLocalizations.delegate, + GlobalWidgetsLocalizations.delegate, + ], + supportedLocales: const [ + Locale("fa", "IR"), + ], + locale: const Locale("fa", "IR"), ), ); } diff --git a/lib/pages/splash/splash.dart b/lib/pages/splash/splash.dart new file mode 100644 index 0000000..3b99cfe --- /dev/null +++ b/lib/pages/splash/splash.dart @@ -0,0 +1,21 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/constants/assets.dart'; +import 'package:flutter/material.dart'; + +class Splash extends StatefulWidget { + const Splash({Key? key}) : super(key: key); + + @override + _SplashState createState() => _SplashState(); +} + +class _SplashState extends State { + @override + Widget build(BuildContext context) { + return Container( + padding: const EdgeInsets.all(60), + color: DesignConfig.lightColorScheme.background, + child: Image.asset(Assets.logoWithTitleAndDesc), + ); + } +} diff --git a/lib/pages/splash/splash_state.dart b/lib/pages/splash/splash_state.dart new file mode 100644 index 0000000..4dfdbbe --- /dev/null +++ b/lib/pages/splash/splash_state.dart @@ -0,0 +1,3 @@ +import 'package:didvan/providers/core_provider.dart'; + +class SplashState extends CoreProvier {} diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index 18b2839..0324deb 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -1,8 +1,19 @@ +import 'package:didvan/pages/splash/splash.dart'; +import 'package:didvan/pages/splash/splash_state.dart'; +import 'package:didvan/routes/routes.dart'; import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; class RouteGenerator { static Route generateRoute(RouteSettings settings) { switch (settings.name) { + case Routes.splash: + return _materialPageRouteGenerator( + ChangeNotifierProvider( + create: (context) => SplashState(), + child: const Splash(), + ), + ); default: return _errorRoute(); } @@ -21,7 +32,7 @@ class RouteGenerator { }); } - static materialPageRouteGenerator(pageWidget) => MaterialPageRoute( + static _materialPageRouteGenerator(pageWidget) => MaterialPageRoute( builder: (context) => pageWidget, ); } diff --git a/pubspec.yaml b/pubspec.yaml index 407c7b7..e132f26 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -61,9 +61,10 @@ flutter: uses-material-design: true # To add assets to your application, add an assets section, like this: - # assets: - # - images/a_dot_burr.jpeg - # - images/a_dot_ham.jpeg + assets: + - lib/assets/logo/logo-t-d.png + + # An image asset can refer to one or more resolution-specific "variants", see # https://flutter.dev/assets-and-images/#resolution-aware. From 00cc7ca61c5c5e6d7d38e7f842c19e811a20fc26 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 5 Dec 2021 16:19:04 +0330 Subject: [PATCH 005/273] D1APP-4 entry class name changed --- lib/main.dart | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/main.dart b/lib/main.dart index 41f4be9..75ec249 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -6,11 +6,11 @@ import 'package:flutter_localizations/flutter_localizations.dart'; import 'package:provider/provider.dart'; void main() { - runApp(const MyApp()); + runApp(const Didvan()); } -class MyApp extends StatelessWidget { - const MyApp({Key? key}) : super(key: key); +class Didvan extends StatelessWidget { + const Didvan({Key? key}) : super(key: key); @override Widget build(BuildContext context) { return ChangeNotifierProvider( From 7c36d4f3a86328cb511d143c069a027a981f095e Mon Sep 17 00:00:00 2001 From: Mahla MillaGhanbari Date: Tue, 7 Dec 2021 14:38:56 +0330 Subject: [PATCH 006/273] D1APP-18 manifest configuration --- android/app/build.gradle | 2 +- android/app/src/debug/AndroidManifest.xml | 2 +- android/app/src/main/AndroidManifest.xml | 2 +- .../app/src/main/kotlin/com/example/didvan/MainActivity.kt | 2 +- android/app/src/profile/AndroidManifest.xml | 2 +- ios/Runner.xcodeproj/project.pbxproj | 6 +++--- test/widget_test.dart | 2 +- 7 files changed, 9 insertions(+), 9 deletions(-) diff --git a/android/app/build.gradle b/android/app/build.gradle index c424bad..054a98c 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -43,7 +43,7 @@ android { defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). - applicationId "com.example.didvan" + applicationId "com.didvan.didvanapp" minSdkVersion 16 targetSdkVersion 30 versionCode flutterVersionCode.toInteger() diff --git a/android/app/src/debug/AndroidManifest.xml b/android/app/src/debug/AndroidManifest.xml index b4988dc..06824d8 100644 --- a/android/app/src/debug/AndroidManifest.xml +++ b/android/app/src/debug/AndroidManifest.xml @@ -1,5 +1,5 @@ + package="com.didvan.didvanapp"> diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index 666f236..89e8c6a 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -1,5 +1,5 @@ + package="com.didvan.didvanapp"> diff --git a/android/app/src/main/kotlin/com/example/didvan/MainActivity.kt b/android/app/src/main/kotlin/com/example/didvan/MainActivity.kt index 0f5fc61..c4aec60 100644 --- a/android/app/src/main/kotlin/com/example/didvan/MainActivity.kt +++ b/android/app/src/main/kotlin/com/example/didvan/MainActivity.kt @@ -1,4 +1,4 @@ -package com.example.didvan +package com.didvan.didvanapp import io.flutter.embedding.android.FlutterActivity diff --git a/android/app/src/profile/AndroidManifest.xml b/android/app/src/profile/AndroidManifest.xml index b4988dc..06824d8 100644 --- a/android/app/src/profile/AndroidManifest.xml +++ b/android/app/src/profile/AndroidManifest.xml @@ -1,5 +1,5 @@ + package="com.didvan.didvanapp"> diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index 16cc79e..ab390f9 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -291,7 +291,7 @@ ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.example.didvan; + PRODUCT_BUNDLE_IDENTIFIER = com.didvan.didvanapp; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; SWIFT_VERSION = 5.0; @@ -415,7 +415,7 @@ ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.example.didvan; + PRODUCT_BUNDLE_IDENTIFIER = com.didvan.didvanapp; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; @@ -434,7 +434,7 @@ ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.example.didvan; + PRODUCT_BUNDLE_IDENTIFIER = com.didvan.didvanapp; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; SWIFT_VERSION = 5.0; diff --git a/test/widget_test.dart b/test/widget_test.dart index f3e669a..c0a607b 100644 --- a/test/widget_test.dart +++ b/test/widget_test.dart @@ -13,7 +13,7 @@ import 'package:didvan/main.dart'; void main() { testWidgets('Counter increments smoke test', (WidgetTester tester) async { // Build our app and trigger a frame. - await tester.pumpWidget(const MyApp()); + await tester.pumpWidget(const Didvan()); // Verify that our counter starts at 0. expect(find.text('0'), findsOneWidget); From 7b9ed44f6b40974607ab831aed900b76ffd00a5b Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 7 Dec 2021 15:07:19 +0330 Subject: [PATCH 007/273] D1APP-18 splash configuration --- android/app/src/main/AndroidManifest.xml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index 89e8c6a..b7d0b39 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -23,10 +23,6 @@ screen fades out. A splash screen is useful to avoid any visual gap between the end of Android's launch screen and the painting of Flutter's first frame. --> - From cddda7d7e9ed9572364b87322066e0311523a1a4 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 8 Dec 2021 15:24:03 +0330 Subject: [PATCH 008/273] D1APP-11 authentication (phone number) --- lib/assets/fonts/dana-fa.ttf | Bin 0 -> 59280 bytes lib/assets/fonts/dana.ttf | Bin 0 -> 59344 bytes lib/assets/images/logo/logo-h-t.png | Bin 0 -> 96083 bytes lib/assets/images/logo/logo-v-t.png | Bin 0 -> 126651 bytes lib/assets/logo/logo-t-d.png | Bin 278938 -> 0 bytes lib/config/design_config.dart | 26 ++++ lib/constants/assets.dart | 7 +- lib/pages/authentication/authentication.dart | 133 ++++++++++++++++++ .../authentication/authentication_state.dart | 14 ++ .../widgets/authentication_app_bar.dart | 30 ++++ lib/pages/splash/splash.dart | 16 ++- lib/routes/route_generator.dart | 9 ++ lib/widgets/didvan/button.dart | 34 +++++ lib/widgets/didvan/text.dart | 31 ++++ lib/widgets/didvan/text_field.dart | 106 ++++++++++++++ lib/widgets/logos/didvan_horizontal_logo.dart | 11 ++ lib/widgets/logos/didvan_vertical_logo.dart | 0 pubspec.yaml | 13 +- 18 files changed, 425 insertions(+), 5 deletions(-) create mode 100644 lib/assets/fonts/dana-fa.ttf create mode 100644 lib/assets/fonts/dana.ttf create mode 100644 lib/assets/images/logo/logo-h-t.png create mode 100644 lib/assets/images/logo/logo-v-t.png delete mode 100644 lib/assets/logo/logo-t-d.png create mode 100644 lib/pages/authentication/authentication.dart create mode 100644 lib/pages/authentication/authentication_state.dart create mode 100644 lib/pages/authentication/widgets/authentication_app_bar.dart create mode 100644 lib/widgets/didvan/button.dart create mode 100644 lib/widgets/didvan/text.dart create mode 100644 lib/widgets/didvan/text_field.dart create mode 100644 lib/widgets/logos/didvan_horizontal_logo.dart create mode 100644 lib/widgets/logos/didvan_vertical_logo.dart diff --git a/lib/assets/fonts/dana-fa.ttf b/lib/assets/fonts/dana-fa.ttf new file mode 100644 index 0000000000000000000000000000000000000000..3691b969f8406883aba324022f3d583dbc8dade4 GIT binary patch literal 59280 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 literal 0 HcmV?d00001 diff --git a/lib/assets/images/logo/logo-v-t.png b/lib/assets/images/logo/logo-v-t.png new file mode 100644 index 0000000000000000000000000000000000000000..c45a614ae54ea5ef2832b97e31e1d2b22e43498b GIT binary patch literal 126651 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

}`8(HkQU`KNv^TQShe0X{ykV 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%0D@Fh0Nk+{4 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


Fd_E8wnc9`E0`7HV+};U%r$m6oU1as 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 literal 0 HcmV?d00001 diff --git a/lib/assets/logo/logo-t-d.png b/lib/assets/logo/logo-t-d.png deleted file mode 100644 index 0be1b867ce07ed331b50bb00e92c65366e152454..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 278938 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

)awD&<@aH5^=)2n6?qrk-4z< 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

3wW7Dk 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 z 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 H-0%Mnp2!nR diff --git a/lib/config/design_config.dart b/lib/config/design_config.dart index d79f281..5c6d595 100644 --- a/lib/config/design_config.dart +++ b/lib/config/design_config.dart @@ -1,11 +1,23 @@ import 'package:flutter/material.dart'; class DesignConfig { + static const Color lightPrimaryColor3 = Color(0XFFF5FAFC); static const Color primaryColor = Color(0XFF007EA7); + static const Color darkPrimaryColor2 = Color(0XFF1B3C59); + + static const Color greyColor4 = Color(0XFFE0E0E0); + static const Color greyColor5 = Color(0XFFE0E0E0); + + static const Color lightRedColor = Color(0XFFFFF8F8); static final ThemeData lightTheme = ThemeData( primaryColor: primaryColor, colorScheme: lightColorScheme, + fontFamily: 'dana-fa', + textTheme: const TextTheme( + bodyText1: body1TextStyle, + caption: captionTextStyle, + ), ); static const ColorScheme lightColorScheme = ColorScheme( @@ -23,4 +35,18 @@ class DesignConfig { onError: Colors.white, brightness: Brightness.light, ); + + static const TextStyle body1TextStyle = TextStyle( + fontSize: 14, + ); + static const TextStyle captionTextStyle = TextStyle( + fontSize: 13, + ); + + static const BorderRadius lowBorderRadius = BorderRadius.all( + Radius.circular(8), + ); + static final Border lightBorder = Border.all(color: DesignConfig.greyColor4); + + static const Duration defaultAppDuration = Duration(milliseconds: 400); } diff --git a/lib/constants/assets.dart b/lib/constants/assets.dart index e28d363..f4f2a00 100644 --- a/lib/constants/assets.dart +++ b/lib/constants/assets.dart @@ -1,4 +1,9 @@ class Assets { static const String _basePath = 'lib/assets'; - static const String logoWithTitleAndDesc = _basePath + '/logo/logo-t-d.png'; + static const String _baseImagesPath = _basePath + '/images'; + + static const String verticalLogoWithText = + _baseImagesPath + '/logo/logo-v-t.png'; + static const String horizontalLogoWithText = + _baseImagesPath + '/logo/logo-h-t.png'; } diff --git a/lib/pages/authentication/authentication.dart b/lib/pages/authentication/authentication.dart new file mode 100644 index 0000000..fd92afb --- /dev/null +++ b/lib/pages/authentication/authentication.dart @@ -0,0 +1,133 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/pages/authentication/authentication_state.dart'; +import 'package:didvan/pages/authentication/widgets/authentication_app_bar.dart'; +import 'package:didvan/widgets/didvan/button.dart'; +import 'package:didvan/widgets/didvan/text_field.dart'; +import 'package:didvan/widgets/logos/didvan_horizontal_logo.dart'; +import 'package:flutter/gestures.dart'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; + +class Authentication extends StatefulWidget { + const Authentication({Key? key}) : super(key: key); + + @override + State createState() => _AuthenticationState(); +} + +class _AuthenticationState extends State { + final List _pages = const [ + PhoneNumberInput(), + PasswordInput(), + ]; + + @override + Widget build(BuildContext context) { + return Scaffold( + body: Consumer( + builder: (context, state, child) => AnimatedSwitcher( + duration: DesignConfig.defaultAppDuration, + child: _pages[state.currentPageIndex], + ), + ), + ); + } +} + +class PhoneNumberInput extends StatelessWidget { + const PhoneNumberInput({ + Key? key, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + final AuthenticationState state = context.read(); + return SingleChildScrollView( + physics: const NeverScrollableScrollPhysics(), + padding: const EdgeInsets.all(20), + child: SizedBox( + height: MediaQuery.of(context).size.height, + child: Column( + children: [ + const Padding( + padding: EdgeInsets.only( + top: 80, + left: 100, + right: 100, + bottom: 40, + ), + child: DidvanVerticalLogo(), + ), + DidvanTextField( + title: 'شماره موبایل', + textInputType: TextInputType.phone, + hintText: 'شماره موبایل', + onChanged: (value) { + state.phoneNumber = value; + }, + ), + const SizedBox( + height: 20, + ), + DidvanButton( + title: 'ورود', + onPressed: () { + state.currentPageIndex = 1; + }, + ), + const Spacer(), + Padding( + padding: const EdgeInsets.symmetric(horizontal: 60), + child: RichText( + textAlign: TextAlign.center, + text: TextSpan( + style: Theme.of(context).textTheme.caption, + children: [ + const TextSpan(text: 'با ثبت نام و ورود به دیدوان،'), + TextSpan( + text: ' شرایط ', + style: Theme.of(context) + .textTheme + .caption! + .copyWith(color: Theme.of(context).primaryColor), + recognizer: TapGestureRecognizer() + ..onTap = () { + //TODO: Needs implementaion + }, + ), + const TextSpan(text: 'و\n'), + TextSpan( + text: ' قوانین حریم خصوصی ', + style: Theme.of(context) + .textTheme + .caption! + .copyWith(color: Theme.of(context).primaryColor), + recognizer: TapGestureRecognizer() + ..onTap = () { + //TODO: Needs implementaion + }, + ), + const TextSpan(text: 'را می‌پذیرم'), + ], + ), + ), + ), + const SizedBox( + height: 48, + ), + ], + ), + ), + ); + } +} + +class PasswordInput extends StatelessWidget { + const PasswordInput({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + final AuthenticationState state = context.read(); + return Container(); + } +} diff --git a/lib/pages/authentication/authentication_state.dart b/lib/pages/authentication/authentication_state.dart new file mode 100644 index 0000000..d3975e7 --- /dev/null +++ b/lib/pages/authentication/authentication_state.dart @@ -0,0 +1,14 @@ +import 'package:didvan/providers/core_provider.dart'; + +class AuthenticationState extends CoreProvier { + int _currentPageIndex = 0; + String phoneNumber = ''; + String password = ''; + + set currentPageIndex(int value) { + _currentPageIndex = value; + notifyListeners(); + } + + int get currentPageIndex => _currentPageIndex; +} diff --git a/lib/pages/authentication/widgets/authentication_app_bar.dart b/lib/pages/authentication/widgets/authentication_app_bar.dart new file mode 100644 index 0000000..844a8ea --- /dev/null +++ b/lib/pages/authentication/widgets/authentication_app_bar.dart @@ -0,0 +1,30 @@ +import 'package:didvan/pages/authentication/authentication_state.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; + +class AuthenticationAppBar extends StatelessWidget { + final String? title; + const AuthenticationAppBar({Key? key, this.title}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Padding( + padding: EdgeInsets.only(top: MediaQuery.of(context).padding.top + 12), + child: Row( + children: [ + GestureDetector( + onTap: () => context.read().currentPageIndex--, + child: const Icon( + Icons.arrow_back, + ), + ), + const SizedBox( + width: 20, + ), + if (title != null) DidvanText(title!) + ], + ), + ); + } +} diff --git a/lib/pages/splash/splash.dart b/lib/pages/splash/splash.dart index 3b99cfe..da8d1aa 100644 --- a/lib/pages/splash/splash.dart +++ b/lib/pages/splash/splash.dart @@ -1,5 +1,6 @@ import 'package:didvan/config/design_config.dart'; -import 'package:didvan/constants/assets.dart'; +import 'package:didvan/routes/routes.dart'; +import 'package:didvan/widgets/logos/didvan_horizontal_logo.dart'; import 'package:flutter/material.dart'; class Splash extends StatefulWidget { @@ -10,12 +11,23 @@ class Splash extends StatefulWidget { } class _SplashState extends State { + @override + void initState() { + Future.delayed( + const Duration(seconds: 2), + () => Navigator.of(context).pushReplacementNamed( + Routes.authenticaion, + ), + ); + super.initState(); + } + @override Widget build(BuildContext context) { return Container( padding: const EdgeInsets.all(60), color: DesignConfig.lightColorScheme.background, - child: Image.asset(Assets.logoWithTitleAndDesc), + child: const DidvanVerticalLogo(), ); } } diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index 0324deb..f55e042 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -1,3 +1,5 @@ +import 'package:didvan/pages/authentication/authentication.dart'; +import 'package:didvan/pages/authentication/authentication_state.dart'; import 'package:didvan/pages/splash/splash.dart'; import 'package:didvan/pages/splash/splash_state.dart'; import 'package:didvan/routes/routes.dart'; @@ -14,6 +16,13 @@ class RouteGenerator { child: const Splash(), ), ); + case Routes.authenticaion: + return _materialPageRouteGenerator( + ChangeNotifierProvider( + create: (context) => AuthenticationState(), + child: const Authentication(), + ), + ); default: return _errorRoute(); } diff --git a/lib/widgets/didvan/button.dart b/lib/widgets/didvan/button.dart new file mode 100644 index 0000000..ad6dfca --- /dev/null +++ b/lib/widgets/didvan/button.dart @@ -0,0 +1,34 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; + +class DidvanButton extends StatelessWidget { + final VoidCallback? onPressed; + final String? title; + const DidvanButton({Key? key, this.onPressed, this.title}) : super(key: key); + + @override + Widget build(BuildContext context) { + return SizedBox( + width: double.infinity, + child: MaterialButton( + shape: const RoundedRectangleBorder( + borderRadius: DesignConfig.lowBorderRadius, + ), + height: 48, + color: Theme.of(context).primaryColor, + onPressed: onPressed, + child: _childBuilder(), + ), + ); + } + + Widget? _childBuilder() { + if (title != null) { + return DidvanText( + title!, + color: Colors.white, + ); + } + } +} diff --git a/lib/widgets/didvan/text.dart b/lib/widgets/didvan/text.dart new file mode 100644 index 0000000..cf4811c --- /dev/null +++ b/lib/widgets/didvan/text.dart @@ -0,0 +1,31 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:flutter/material.dart'; + +class DidvanText extends StatelessWidget { + final TextStyle style; + final String text; + final Color? color; + final FontWeight? fontWeight; + final double? fontSize; + + const DidvanText( + this.text, { + Key? key, + this.style = DesignConfig.body1TextStyle, + this.color, + this.fontSize, + this.fontWeight, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return Text( + text, + style: style.copyWith( + color: color, + fontWeight: fontWeight, + fontSize: fontSize, + ), + ); + } +} diff --git a/lib/widgets/didvan/text_field.dart b/lib/widgets/didvan/text_field.dart new file mode 100644 index 0000000..bf864fa --- /dev/null +++ b/lib/widgets/didvan/text_field.dart @@ -0,0 +1,106 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; + +class DidvanTextField extends StatefulWidget { + final void Function(String value)? onChanged; + final bool enabled; + final TextAlign textAlign; + final String? title; + final String? hintText; + final dynamic initialValue; + final String? Function(String? value)? validator; + final TextInputType? textInputType; + const DidvanTextField({ + Key? key, + this.onChanged, + this.enabled = true, + this.title, + this.hintText, + this.initialValue, + this.validator, + this.textInputType, + this.textAlign = TextAlign.right, + }) : super(key: key); + + @override + State createState() => _DidvanTextFieldState(); +} + +class _DidvanTextFieldState extends State { + final FocusNode _focusNode = FocusNode(); + final TextEditingController _controller = TextEditingController(); + + bool _hasError = false; + + @override + void initState() { + _focusNode.addListener(() { + setState(() {}); + }); + super.initState(); + } + + @override + Widget build(BuildContext context) { + return Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + if (widget.title != null) DidvanText(widget.title!), + if (widget.title != null) const SizedBox(height: 8), + Container( + padding: const EdgeInsets.symmetric(horizontal: 12), + decoration: BoxDecoration( + color: _fillColor(), + borderRadius: DesignConfig.lowBorderRadius, + border: Border.all(color: _borderColor()), + ), + child: TextFormField( + textAlign: widget.textAlign, + keyboardType: widget.textInputType, + focusNode: _focusNode, + controller: _controller, + onChanged: _onChanged, + validator: _validator, + decoration: InputDecoration( + enabled: widget.enabled, + border: InputBorder.none, + hintText: widget.hintText, + hintStyle: Theme.of(context) + .textTheme + .bodyText1! + .copyWith(color: DesignConfig.greyColor5), + ), + ), + ), + ], + ); + } + + Color _borderColor() { + if (_focusNode.hasFocus) { + return Theme.of(context).primaryColor; + } else if (_hasError) { + return Theme.of(context).colorScheme.error; + } + return DesignConfig.greyColor4; + } + + Color _fillColor() { + if (_focusNode.hasFocus) { + return DesignConfig.lightPrimaryColor3; + } else if (_hasError) { + return DesignConfig.lightRedColor; + } + return Theme.of(context).colorScheme.surface; + } + + void _onChanged(String value) { + if (widget.onChanged != null) { + widget.onChanged!(value); + } + } + + String? _validator(String? value) {} +} diff --git a/lib/widgets/logos/didvan_horizontal_logo.dart b/lib/widgets/logos/didvan_horizontal_logo.dart new file mode 100644 index 0000000..19c2aaf --- /dev/null +++ b/lib/widgets/logos/didvan_horizontal_logo.dart @@ -0,0 +1,11 @@ +import 'package:didvan/constants/assets.dart'; +import 'package:flutter/material.dart'; + +class DidvanVerticalLogo extends StatelessWidget { + const DidvanVerticalLogo({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Image.asset(Assets.verticalLogoWithText); + } +} diff --git a/lib/widgets/logos/didvan_vertical_logo.dart b/lib/widgets/logos/didvan_vertical_logo.dart new file mode 100644 index 0000000..e69de29 diff --git a/pubspec.yaml b/pubspec.yaml index e132f26..4eb767f 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -62,7 +62,8 @@ flutter: # To add assets to your application, add an assets section, like this: assets: - - lib/assets/logo/logo-t-d.png + - lib/assets/images/logo/logo-v-t.png + - lib/assets/images/logo/logo-h-t.png @@ -77,7 +78,15 @@ flutter: # "family" key with the font family name, and a "fonts" key with a # list giving the asset and other descriptors for the font. For # example: - # fonts: + fonts: + - family: dana-fa + fonts: + - asset: lib/assets/fonts/dana-fa.ttf + + - family: dana + fonts: + - asset: lib/assets/fonts/dana-fa.ttf + # fonts: # - family: Schyler # fonts: # - asset: fonts/Schyler-Regular.ttf From 89a63b200cb9bb2c9b70eb009c351365860a0985 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 8 Dec 2021 16:01:18 +0330 Subject: [PATCH 009/273] D1APP-12 authentication (password) --- lib/pages/authentication/authentication.dart | 51 +++++++++++++++++++- 1 file changed, 50 insertions(+), 1 deletion(-) diff --git a/lib/pages/authentication/authentication.dart b/lib/pages/authentication/authentication.dart index fd92afb..ff1b069 100644 --- a/lib/pages/authentication/authentication.dart +++ b/lib/pages/authentication/authentication.dart @@ -2,6 +2,7 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; import 'package:didvan/pages/authentication/widgets/authentication_app_bar.dart'; import 'package:didvan/widgets/didvan/button.dart'; +import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/didvan/text_field.dart'; import 'package:didvan/widgets/logos/didvan_horizontal_logo.dart'; import 'package:flutter/gestures.dart'; @@ -128,6 +129,54 @@ class PasswordInput extends StatelessWidget { @override Widget build(BuildContext context) { final AuthenticationState state = context.read(); - return Container(); + return SingleChildScrollView( + padding: const EdgeInsets.symmetric(horizontal: 20), + child: SizedBox( + height: MediaQuery.of(context).size.height, + child: Column( + children: [ + AuthenticationAppBar( + title: 'ورود با شماره موبایل ' + state.phoneNumber, + ), + const Padding( + padding: EdgeInsets.only( + bottom: 44, + top: 34, + left: 100, + right: 100, + ), + child: DidvanVerticalLogo(), + ), + DidvanTextField( + onChanged: (value) => state.password = value, + title: 'کلمه عبور', + hintText: 'کلمه عبور', + obsecureText: true, + ), + const SizedBox( + height: 32, + ), + GestureDetector( + onTap: () { + //TODO: Needs implementaion + }, + child: DidvanText( + 'فراموشی رمز عبور', + style: Theme.of(context).textTheme.subtitle2, + color: Theme.of(context).primaryColor, + ), + ), + const Spacer(), + DidvanButton( + onPressed: () {}, + title: 'ورود ', + ), + const SizedBox( + height: 48, + ), + ], + ), + ), + ); } } From 10b708d5c80aef88897a67d515b2d58ddc279011 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 8 Dec 2021 16:05:26 +0330 Subject: [PATCH 010/273] D1APP-12 authentication (password) --- lib/assets/fonts/Dana-FaNum-Black.ttf | Bin 0 -> 56824 bytes lib/assets/fonts/Dana-FaNum-Bold.ttf | Bin 0 -> 58060 bytes lib/assets/fonts/Dana-FaNum-ExtraBold.ttf | Bin 0 -> 57644 bytes lib/assets/fonts/Dana-FaNum-ExtraLight.ttf | Bin 0 -> 60088 bytes lib/assets/fonts/Dana-FaNum-Light.ttf | Bin 0 -> 59920 bytes lib/assets/fonts/Dana-FaNum-Medium.ttf | Bin 0 -> 58916 bytes .../{dana-fa.ttf => Dana-FaNum-Regular.ttf} | Bin lib/assets/fonts/Dana-FaNum-SemiBold.ttf | Bin 0 -> 58784 bytes lib/assets/fonts/Dana-FaNum-Thin.ttf | Bin 0 -> 60504 bytes lib/assets/fonts/Dana-FaNum-UltraBold.ttf | Bin 0 -> 57852 bytes lib/config/design_config.dart | 13 +++++--- lib/widgets/didvan/text.dart | 6 ++-- lib/widgets/didvan/text_field.dart | 29 +++++++++++++++++- pubspec.yaml | 12 ++++++-- 14 files changed, 50 insertions(+), 10 deletions(-) create mode 100644 lib/assets/fonts/Dana-FaNum-Black.ttf create mode 100644 lib/assets/fonts/Dana-FaNum-Bold.ttf create mode 100644 lib/assets/fonts/Dana-FaNum-ExtraBold.ttf create mode 100644 lib/assets/fonts/Dana-FaNum-ExtraLight.ttf create mode 100644 lib/assets/fonts/Dana-FaNum-Light.ttf create mode 100644 lib/assets/fonts/Dana-FaNum-Medium.ttf rename lib/assets/fonts/{dana-fa.ttf => Dana-FaNum-Regular.ttf} (100%) create mode 100644 lib/assets/fonts/Dana-FaNum-SemiBold.ttf create mode 100644 lib/assets/fonts/Dana-FaNum-Thin.ttf create mode 100644 lib/assets/fonts/Dana-FaNum-UltraBold.ttf diff --git a/lib/assets/fonts/Dana-FaNum-Black.ttf b/lib/assets/fonts/Dana-FaNum-Black.ttf new file mode 100644 index 0000000000000000000000000000000000000000..48e24bf0f85d1b3a7693dc9a382b027fafe25728 GIT binary patch literal 56824 zcmeFa2Y6J+)i*vfcbl{-yV|DCN-JsA%dWJmhLD6LdNHP(CP08_0wHWnGho~RnsjZzr?Z*JQf5Zb2TNe>d*GCsyVrerX0VvS*Oq zL;UO}To>S4gewo%K3oS#BhANs1Ib{&#(f5^f8#oa>o!~+xVGTp<*vrH5cKosmk_Ha z8*uMIxyx{$Lkj5v@a|<|rDJjbD`;Mbe4}yAB86-U?q?D|MLF>d&*?leh0YCp$(oRE z2CdW8{QO?4r0K(C3LB5#FICG`6T5U4Xjp)&6jvI4I|O{2Q0GI$FZlcw$)I0>o}>Hm-<7Q7~*ZE(@OD2q$; z5h>!Ac8qedf8lq2{frdwixvh>NM8d^3gCSVxL=YYwh_O7i+eooz|HaUi_1y)e}V79 zJZGmX3v3$demlvfGe`@UD^V}d1DK3X349u?BfSRQfz!$_&?@NVbjE>BPUC6H9=R5f zCxxMyKY~09nSKFs9lRVQn>xT#-bVa#1-_Kt#j`sDN9eua-#bY61y0a^2Trh$(H8gM zj*H$1dQalFukl@nd?9JbZV}`nBLWqKy^XfMGjN#05B53jQIetCjOQ-2tqXFIiS}~^ z`b6Hv$X9{O1^#i`76<;pzjGWattSMn3f&?dN^8XQJn$A5JqtK-X-+^+;!ziC;6!Lz zI~mXG@O)C>L};2ljq*o9$NjiM)8|3flJU%pDi%4 z0e&`MxN(7}sJGw)uQ&Sx(qG~^_{4b>%2T$6xS%gwYz_Fg1=kwD*@8>G^LC-r1}^eP zq^FSS;I9w*&O^UJ+j3rhhwBHDPcgCx{`2kr%e2iza0w0QcLwkx+(ypwJ`Z@@(YGVuW3 zn!pdJ(+`?+p6 z-2=L(bU!-dok`AgXLV*m=8_XcqV#?mrRe8`Jky-%0tT z46=YP7Gu?DG6r~BPr;L+tJf_Fi{}exlrzzp>Z}rYrk|L7V)cowC-$8<2s}ql90Q({ zeRTrQE{+HFe=qQ_z`KEe2Hpw$InWdMRbXFW&G9+MCme4%-h90Nxc_*;@vP&P{#wq;l z&+=bQWRfhBPfCf8R02ek0Mn=fQ|`Bsr^&C$GvrzF9Jzx$PhKE@C%2Oq$xGyAw9_l( zPVy>wjl53oBL5(7K+5hRZ1M(q8`4wa(`IM|8pOJR*Iay7CDp3vDM72~$^`wg$$YvTv&W7xt zLycq$jiIqLj+{&5sfn7&R+>O9)JnEd8?{5%Zl{Sfi6)aBG=-+pG_sSX(^1q(&Z8ML z6Mb+u&7#>fhwPzlnoIM@`81zmEF*hq5iO=A7u+k}@QCPYC^oA2nK?-VhaSjERklH<=SG zR-4_Cn3SB7nwCBaa+;Cp%F51h=jP=X6c!bil$LqCnmuRky!mG>SQv`zG}2E+%(Hk2S)~5>$fFPcZK+5<4yzXb zVC4<_&q{)S9@0X#kcX*(&Zn#B9(p~!k3K`+pdV40#jrwF%@(n1*%MNNR4>hxR!Ik? z9_az2=za4Q-6JP}`)Puf15?tv#xJLi?Wf8(o|(M>k#937zniK2Gn{*Xd{I zH|Y22yY=_#AJf0A|49FhA>T05aJk_RhL55QQFT!ZqP9jIj`~B?V^QBlTchiuS43YP zeP{GXMx8Os=rhhRt~DMob{n5Cz8V9fVsc}q#;l6DI_A!pS7Q@n>tk2N-W+=}&J%Y_ zTujyTEZKv&O+Y7djY~R_P_G0@I`yP9@{Tcg7hryBS@Hyr?u5>(-7?)U^I6ZNB z;=aWD5+6x?G4ZRU%%oLGT}ihmeUV(5ydwE%iXo*gWoydelrK_iQx~MJPCc0VNb2#l z#$9x%tjetES#M=GWuKjWZ;mx* zM$TM4#cZYkbZ{833^$(E9%C9jsol#VamT6%BkS7oJT3(C67 zKJX-a)_ZREeB!P5?(sfRZYa+$pIv@o`OW1Ilz&x`UNN=e!irlep79aiMBhQ*!@jTl zPJfI4Z2#T!bh*H-VVK3x4!^}98! zCb`B_GqI+#=E|DKYQCw>t*x$|Uc0<@Pwkzx$48fsUN!p8(GQJ&Z}bm!$#tH(#=5z6 z7uVfg_s$r@80#44n8GoYV|I;su6}m?+WKqjkJLX<|4jWG4bcr*4W5R*4gYR*HZEv9 z()jvV``GfaYsWs+l;5(PI}_dM)E{HHW6hqpphb99O0ezdP{9=51=FN7#fJ z_f(Z+rAH-O%Hoz}&!67JjnHTwz4Ar#t8;U!^Qf#mdr0}VY1x6LOIyat1+2HPi9TQ8 z992+I*LOmBs!_i3aUuzH{0(%Z5jXJ?lHtm6>s*<|w4xl03O2aj;qyCmdOOVlV;r0= z$>%R-B~+)^+1cM-Of@cTt6R}>UUAxaZL2QaUR#;6t6=nU`67Etad~2%BVB8>M7zp# z`to#RS=Q|Ot_i++_mnjo=XFkQEG?QawPp>AqfS#ydD&Dk!Qs9M@;gxaw?Flw3)BAsZb7$+C_C?!oeCf3tcP*8VU%FpDxdiw<||IVf8g-FAwBdywRaA5OXP)zg+8S4(F^znxmV`W0pyGSvy)bLUzdj+E~D zZnMT@Eh>=A-Spczdv)@s3GDKOdo0GpUnM9wqzvH5?1wV|%nn#ScLmx-qySb*GHjh~ zY^d-xB}AK&0o$a_N-`(Xxb8S9+lYjzn|?ZHS3v=jzf1tBzsie?q5Bf9$}$-bC5W~| zo!IZ#d)(IqjgcY9&JidaiY|2Mp*%Q)=ob&j2V!-}-Nk@v)|j;yEUeowt|2GIokXAL zq4HM=^j)UCHR0|QDaEnmqRQ?hqrsJE6HYA7d%`}EB$5hABQ#wP4a=FtKY*u>q9?jh zJ9ImD90fLBRj$MAUV3A5^Bh-kjEQYL)7a?sHX6^|n0n@N$tY1~ws<#om0HY3ldW6I zl%y$>R~Apm9^-Y--jbWUW%m5`Ege#^+cdo}S~28K0g$eR@nvuB9rrbuXP8FJG|y zIiu0@x2fhDo9)J8b6%>+V7Y8LU{8m>`6b$rTdWSr1yNzK*S>x2Ti0I2uB+|4ku9&4 zSK%k*`x5!C;rSeHix&d(fs!r0maXc$u9jZM`wVyoc(dU%GeV1!Y`xp1Dp3aponoqJ zayGj=Y2Knedlt>zVSJ}qE4h+Wv$CTT-rM`Y#XFbO7pG=rIP6Zq5`Bq216U4>TOqwk z3P}fhR*u@ks5RKfMm1st>6{ zPg;61Gi&3tQ5r3?CD;>t_pVv7H6=ZXCFv4$(bD|j*q)kGmu_XT8lx`S5FM?vC8jzo zQPIn`buP?n$gnc2))XBdA7vV-xS-1zxI!Aop1_z3-9kO-AOJ1F#}#xJzYmh+^*AuD z>%1PnkB_z(MUZsxT*VAOTkzcPbK@ty5IFi_$1Rg$jGNAy;?AA!X^b-Hb@7%dMTMEt zw&ZAcZk%Q9>Mb`~ES(#c6`YZ^r)lzmwzAmdAJ*E<@l4X{Qj_DO3_5)@dt!ahs%2;A z<@t+pN^KxTX0^o#UY(w=zZvp3|`7mQuGlIzm%KSrzZcA1U*G0@uZSWs>IQz0JFv)7hb+eevevq?UrwwGhss1xRzGhUb=B*E9*UL&GJjuua_^Z zsocc-gFo;I+lX-*Dnpx@Gnzs>+tH}1jGKiygKh~-bmq=q{Nm&<9%8hhsIa)Wu&97Z z4_s-zeC3C$uDo)UE;=izuqaVJnN*&Wn5EOLIe;pnj-2LspgD?bX)mWWje=@7tRzTQ zP5~yOrfom_*|wQyWfs!Htof{Wd)x80?T0D~{!mcC=|g!B%JXq9!v;&vmSIDcnMZ!` z>8I%!SxZl_lvUlGhmc3q2l*`mpPJw7LT-!v&eKo#(l>Zk`BRZqt@|R>-PvDvn4!W{ zgY1AzZpw{@<%Uk8qm#B?f8F+N*ZpyBZmB;nKYuNCU1#03;M;R9-#EvcURzQ4Vu8<* znRD%R8!r`fG=h#LD&4Sz#h=&grAK;uZ^3_IJz)rDz4Es~y2;nbk8v2;%>G_6f>M%! z_Nl^ijGm%>f)*z7fT+T)SM=s*XBGeP8tdM*O=GhP3$y6kvUBa;AWU|#LIZ~h1z~YX zdYixZk1xIb-V0Zi0{QneN`6A#N_7+dgd!@xYf(n4(2;@MbOLC3|Ionizs2t{$js}d zce(NDb>nB&O7AktoI-NFt?#hlu`y%n7tPIm)>Kqvfg8_i2SSM z>p+dFdxJ7*Hw(O#!Y>4d6Rc+h91yRqsof)~83mAbnMPD(A zk=thFHXBzyO0QAmB}gCJn31;8J-SKs8Tk@)7eOR_;=_7>TBkcv={E9hN##LW2h+)| zcUWLLy~X8*dB;1B)`dRKM{723eEoTkt;z4D-e)P0 zte_t1B_`406yhXF z`pgrnxon{c;dkeMH%K)ypMP*Xa;l+)LkJhk)Njl`B_?aJKcEbcKI^F ztMtGEnk{*hnRW&^>a}4koHXf(^zxy;wY;N>y3%I=5Bekn)uhk#%1|i^uJpiJC|@Sp z!<^w3l8o-iKxuuNW^nU;{30ErQ}zJndoiwSCte~#!6e2Om22F%HA zFuJ*Ar$;YvaJvC>Q!6YCS~_cIn$?=RYv!!;9ntqmk~YJhXNobJ^9oIj-fu|WZ8&qH zcTAmk+!?d#Q;WC`-L4~~XOQ=Q?uMclWr7cpKjo4t}qi1D^9;28$LMNeT>(LzE zV#-qGhw_{$*}7lGoVRG{!M&?jUH1JbH>|#VI(k)7UYgA{p><%L;=wc;Ac6(Dwu9f8fhN5zP=~A+LjM@d~>S9UhgY533-499Js! zdd~}iqrFL&T1vl>$#2rc384p#b5+p`ts#BKQhk^jr7>wzsi67d&8B% zdeai*$5`#>?c@Er_J`g>+!7Kzk&?iFKF1u)6LtI)%z^az*b0R~K`vFTDJUGoseXNyydRV?ElU7QZWV{o6M9T(p(bYh_E;5H6aEyN zTd&Iv>WL58KQl9go+#+eOIP9P1U#;H2KUt=Lfh-E3KiCbzEK}$hLuq+XLmCLmon;c z=!^N>g^Mbe(2WJwG<|+@a&~WTF4J4@)M+)^j8yqMW*9#X*@ezELuX+~53vE^WTe8y zICub0r%+`Wzq8ivI_gR-t8UMly>sR2^X^Jda-?~dWp?Z`ESs(~nyg9YSaU-D{4*9W zn_)DXE%CADxHzM`ZN@A`7OjDk^jvne=>IO8wT9ZzadX_No5@ShU71y0pM2JAI&osp zO4@nYbF-#$>K6yDy;jisJ^H>u$cM_kfdL&ooij~H8}CU;nSY`)<)ge)^15U^S;ARjIMk95EQ|qvD8#0F5Z@>MC@#9|>pHxFNn>S;n_2lNwqL0}jTgfN`y9Ay&Oj;D8;v|>H z*yLwN9;>Z=_}5m~*p<_ty~&))V&&JUyYI{D20tIdI4|(=0m_SU9lqxb8{Ext{j1W_+7H?@g`KcGa4n68Hh>MlJ@U(cvs%hI`MOFM@SU&X zgX>U;wV&g~lnh@vGOsNYpSnBxF`X?i9|4+!?P+PN_5;nhn!nAva{gmAkW+^EjYj$i z{SmWS8}uO`M)lk-@M{N>|12+EKG#!Bo7MYOW#gMXOV8R-cXq*wfh1rR0@m~Wu>9%p zPwCw-e#c<#Q%x2wDfY}=UV4vmqgSmcIJ<7gSxY@l2i-FtHB92z+r)aGGShDxgb(etBiF zLYWMtYpgaYq^@*rH#KI~7hc%90WwXBgU$g&Go)@5wU4HL zu&9LQq)`hTg5xUM(x>wehojrU&QGbRiMD7hk}jC&>txFfeK+v_!3YJsGU;B7C~3U) zbuKvPIgKE&m_c{L%gh_WZ_z)1)!@UHdYv|Y+URNV21l{MWY$PYv0avbc00P+11x8D ze6)4+B3^!O5}(0$?A$K(|Y_hwkERc$+NnpJz`hO{V?Mk8tB44IwnU7OPq?o2SmXC)a; zaj}wF6K^oZ+r=2z0@5inTNhMo;^~-G~6RREW>vOgGgshK0$gydoa;}%9HEY(;lC!SPutgiK z&dcUpU3{Z0-Vkq!O32(_+;nJPx@aJBs~h?Gtqrq1+n75|SBstq~QsQB*{_>EY< z6cof`y~5%4L#;&SIcu0Sd2$>mc@=0r9fl6JX7c1opCHqpz>XUt)51uSd=a~!)hq3- zb!c_Gn z=s+$e7%{^`rFkImwy>btRQ%L8E*u6QHb@}<*YxKD{=O$bf zxHB`Sl#WW2-`abT;H}8dy1-jl8W>R=w7=BzKqPY+@8_dHLkS0CDo=m|3HWqUG355-E58;m7Sh&tvNZ% z9G!bT%|7>Ne!hO$24{$hOw967OY%mSBi6coyCp6q_ZpDE^$_S`Kd61O8dO1ELi*(C zQz+dN(n+_TKDF$QkUsn2=~B++9JFg=>EEGA%0Rbbv1NeZaO|wXKqXm(I)xpi*Ay?_ zwf8LfkMU7)+P(XRvNOh*V6#;f`WowV6Wy6e8oAKs5VGW~6iatZ!}LK+>B*)a8|0^J2iKqX-Fw)FsDFa+qCu*pNYL3#knISE zfoxD`Fdi`%=3}YKi`h@lcsb@Kz z`O#^0F{vpUO+oVQsq(iTzedwsIJPIncvbiIPmHzH z*VDsgl8^t7N>_+fsY6T2LkypL=H*F+ zxpUiF7cAPPmp_+^GIN+FGc_qq%0Yp?3G3E{+Cj!-wruXo3-$WlYhBEmmrto%(L?Mr z_7~8mM}LO&K;MtzI-iDU#?f@ZLWjW+$E2W*?y%Dx81}c~l23$m=hk^4mbuxGH0^9x z&^BihV~WwV_+(FrqO_)2^!+CJ;c-h^is;pQ2&b`^0LgYTJ49%-UaeJ5#c%*+quFtruL# z^`%FCkxfOMLOh?#VZIL=w}gt&9vD0ptl!5|`u7=mzESIIc3Qiw>ulNCmnGyC7rJ8T zZwp>tR^?8umoI|@YJze6_+t6Vc`1p_+^xiQ9eZBHKkx_?K28s&6xOqjwnG%MLRvN zy+X$RPoxXJ2ii?F?9W0c2wMy4)nT!GDgIc|oa#A`;!!jLQYj>auZ!4KD;|u6 zcMI~T=ROjsGd)ba9KCK7r58rm)P7)&vRkye%*6Q0=}{VuGsaj@T5;x<)KsP`OxGFN zqrNlZE2l6+hB?8cZ;mf7wA-S}N+uX%eVYu9_?&2cViA{5()TUZ1T5j{l=px0S3 z&2=RTNE1KS$P6Y!G-XnQq%oVKn7P>=S5uyCvAfEuSx2p4RDwxBkXHvums`p;${HWB-B{N2REE?#)jz^J2EngGc)KnGpeg*%&4l?I15LO zvOD;K9O}Tv(rN5P?)N^`1J&<+ViST6r+&{9FH66mrSM;I%@NUqQX1KN;*IDy;k+GB zO9LzZtFYz$!@y?p1~Mg(AleP_r)-kE;qYPb^MB$#|0nMA|LwR>zJ@>$pUl^DPgz5d z5R3)i1N_ujYk?!JQ+1$EL+teHYMQa2!@N(#QwP5ZU6UKQkgi7@DD)-bSRL1{e|7!V zQkKZgWzrJBjxusk`OWXRuXASS#krqh^$@@PcVf;9c^ua37}4Pfox$z1 z&*(p4<>U{xJchNWLrsri&FD~*V+7-wVz2c#*u#G9fL^2DK(9%GPvM(ALu$t;kxHBx zk3{Pspjt$|jG=Xs10k3>uFQA_Px$-AbqxjkjByELliUtxf+;K8J}MzLDMLFOD+5yd zSWjVNjKiDd)D$LJvf?jEiis=K?+&gDzz-?!>G$=zgdcJkuEYK7_WB+1Bl~@g@W8%` z8O84>Pns05IphTHrd_#!ChR2fv>a40SdXVo6K6XC;WS7F*&DX|$(#-RLpD^ouedPJ3R-Frfuhz4O z?{E$Ad^z9*!|Xo%~p@7a;*{{M6CskGN~(jDLt zx2Yin((tog$^VV}o4OHZyi)z#b#vuqk*B@FM~eC6Vy@?h%z4F3GE_13&mu#W(BS!_ zq|6_sZp1*i_}t4fuxKTgti*aRq&(up^81$TMEhKSPGXMV#A0j>C1;#xxU}Vz$tL@q zv8JJ_z#KC>CZSBH)5N-psx$QS_1{LGgDQ3XKW|R>KX&H->@WI%eSZ-pi7b^oFBJ$| zMRHl5$L=4gK>m`(!`@58Sv${5h5R>!I*Yx3EKS`HgmUx`q8tJdEGU_wmZr=4K?pFg z%>V~^IUMBWkoZnNv6B#46^P1~LY_Bp1+2twB`@D`7@Ak?JXEuSzHHJ+-WPE`p%Fvx zpBf${Y}ZEem73Sz9|q((HU0;At>k0ub=t)1&G$88m($1C-Nc_)A+D!TiE9h)3?A4O zOnC`d%CQsfsX5Y-2Fbe`-VuYC`Z4ve#Eb7SiAGPp( zhzQ=wfe-ZKNQPiFi!F$b?p&sg>z1~JwFhOr$JDdoLfUSC{myN|^P~^y{jia_6;=TI z#HQ}(8)^ga4TXpc*M{1KA5QU9O#X6kIKY>q5-5%fV5YuDLkz>7o~*1;Z*Nqrw9T{) zVJ-g|WETdG$UEtkXl*{nvGDzEBA86|$^`8(+#TARN|KE3>+_vEw_mFoWKY1V=t*^7 zQ+)H5Bj2jV*neP{p`L*g@^1P^oJf{{(J+~NezLLDs8p3lt8oO@P?MJ)V5T%)y9XX{ zCNR`TelesrFWHT#Pfv6_>Y$as4y^*BXSu!izO+intC5u86qi9ZmW0^aFg#{CF!#A% zJ)Y{a?G7x;Bfcs}rH{}{>(L6iOD}CrW8eMr8K)E zi%MxBmX=&Oq!FAMwF@^yN9~_iYRR`7BZoN*CM zLs}6+w4IxV_eNYS`E3Y^eUGhM*As4~BuLZe(h8NPOtF>>QBYTH9sPW*sG$*fNymqf zC8@kDkIcQ45Ypso-sBNkrp{?TWA$oJDuImgmd-(JFj^JyG~t3R?3{XiaBlN>c6Rfc z)Srv!ij!eO6RZgrh0JhzdM4E6i&%@6a6t-xGMzJMnj`wbE_NPto)zn!V#W!f*TUvU zTZYWMq>xTd_aflq?Q@>j>Kzp4vodPoZXOJB#uO|36q9C7_jKA?%C*%duKK3}L-4X&Xrd_kAU>hpQjAqaRK zxZy*#05D&(LsP5R-caW({~Ee3*AoQ9>E|$*QN$At&_4h~C7JfABo6=!A+jG}kTUKg zhn@sqeuMrD{|s*fOL)!LzpNPKP6g&$@1Gurq&iHy`l3eQ6I1zgD`??s5TGSE=NqUf z9S5{cr?5<_<`cViF|q5fCio^`f^QtADr5ci8vq*Q9*6yABn}D`eX*!SKY{^1Ds!pN zF>g!>%2&8R5cXn57a~AQF^RGx*8*A9`;HToBN~5L{Xz)E{+*n@m1wv218rRJYxcI(7Ql-Gw+!)07m| z*cnHX-Kp|psqP7qhMkodlM#nmGx{2#Gs(*=A5;qu4whKgP#$I>ev^MBF9)6t{Z0N+ z{KnU7o}|~Zi}4$`T~)u&A{Z8YX`Mc)S`$D4xg`Myy*BWol2^p=!5#_b{WzEv6aeNm z=r@W_X^=|Lc2mU4{el5CX?ypEFi|IDTvfl0%yZ6DQXq>n$Z8S3Y5@G(Nje9 z31W}LStE#{$VPYq9q2vmwMn+J>bPN+Bk5j?cJq>qaX#M^XK0toaHdp5P%M*+T#qJ4S12Hx0Uy*%A%)fAYRY7#PZ2{+q z*_V77=3yK>_67ilvNr%DV#K`xQpo%-@*aUH0~5fATLt8lkSQP}n8$;-#rQtLegUCW z&_I4})vEg|FpsL?fgD)AiM(OpE4Sw6C!PCe8|Kd2pl%n?Ac)P9I+1CzQit6y@Ux!v zD+}&UPqnXGxaua2X8%TamX)8q!^5XA#`ek2&?3m1ky{fPN^6L1O^%4G-sxx_E;)tK z+KB7lXd*>AdOnY|Sgouty~hfmZ@p;2NV_bw5mYhNMBXt_7fDOg*zh|8C_QgD{jJzH zO^A0*;(Q9fBLsULcr>~&5YZbQ;mMVJ+9}xUC0Wi?W2fh`1dCvvF}g5_}DjN!UHLtYY$*F+o=Yy*L6H$N8MC-`Bv$2GEi#R*c%ajA@c8pHNtuJ4_T&7svl&~Xe)8whv5D7ycskc z9#>)Dw=DDG;I|y0)vB*!$ml9Ki#TgNjb^6wP$vEpWnWK<9pIPD1973BG^+iloW+;S z<%iqHV$X)K*9Q$`p(dXVgRu`3R62tkSx`zWDKS%)`!COT? z3DQ7!59h1u-^d{!7~&%t5FYSC60&?J&PC@o9U^;zmLi{22`3U_ht5`wA9>1vi;4#Q zQGIs=Z6dDw6?lJSiv+x6zzcGApfd>96sB&E2Wzq=)GbAsi3U_2%CmXvDNZTLZWL{Y z){;JC+XZ~%P%n;l1n#j3AyZ#EYB&b6vXFW38^iGszBshsHPUF6CiwWk#eucf5Ke|# z$?}Q;Zn9fKEatwu1~{s~{v*!YR%~wg`M9J6Jw%pMxk@uas+cl_v+U-OO3A+;%w1)_ zNzmV;%#26y_3*ySPRGZ?JMxIW9r+>ALDAm>tly`D$lP%L9Ny!@`f>O!kud(7E~W1) zu!DY^fjWls*>L4Iysri@QLC^%8kz63L1T%y0EMRm*dY9oyl1Dy%@H}N`ZyH7Sa=SG z=iaHDLmjw$tG=#*I)vlcu-uBkC_X0f*on`?{vcHo^3ya%@-r&?oi08N2cy{a)OYzv zu0^iD#MsWxV_%`a@fc|IHA^`8qr1?&9pU_l>>~Ukzc|!^*bn<&0o$p-?yqM!Zql8A zM3)WYEEKr<9ttmkifw@Nmb3W2jSxRw|IRBIxfR0JXGLXY^+mp^)5XTCJt;Vid*Y1~ zW8->ya&y)FRxDbgu0r{BPa@ij?+IBX+DolRzaJ=MUspeL`Znrue|QYRrU{1!vj}xh z7kqu7f3O>qo~6|ec3t*_@l|r)2Bk|F-{+-CN=DH&zHmL?<)-HTRO*u%G-nN1;^&xC%ElE9CG!Tbn| zErbtJ66ZsczhcT*udg{XvmfPO%ZQ`=39_w1|weSBqu>ceL7zl%tP=qr=F9vX}4->?JJWCk3cl&o%63 zLJ?r9x4ZiH6l%xD#f@*SoqQU*3K#EUmM_#@bQs{uBDtNX@{NW2S41UP2KE+;u||pk zt*Lw^CAjYqE2(<1My&eX25om_Mao9Pnu3ZcTCFpUFXU2b}S@jI{I%7ds#5Y$LZK zYvW|`4UO$p+!N~jo7Sg6Q}ECuxlt? zp^dB92rs}d!OvJ9kTG>b>Zw#b92ZwtTUjp$ccw1hrHOj4zhh-*2X~F`Uy*2$hV&t} z6?jJ2_j*IfuGIQ7M%?$R*nxjOefsZK8K}@-e@3W;am6q|{~#TJm`2!AFNpoM$>@)Y z#i^_sx-ueii!T8EV;GK!?Y4bS_eA8IkYDiaH23w!0iPip2Z!6&tKj(a;JWq8X2iM~ zxI9{hVP~*%k(kPTTpzH#%#KycOvs)cVKF&4G9Shmc5;fC1-~1?DCs!p#I1AVfHzjx zboiY7m=zjU>!#Up@@wtghPY#`Mc;eo7e%Kz7GJ1uY`&NEI4VuW4X$D-sVB*BaP3`_ zc3+xf@SM3UzvyRXHX}u`x$vfw*TuRxKXwEzWWBJsLiP|N^qo`Uz)4v)Y>KVLu`XJc zd1a+PCOXl@Si-6WsSBK=@+YRJx->WtL^875(_<;c$vCu!YGRh)G+3HHPB;hf2 z-p%bjMPBXLyU9<<;Z|vmYV7q_RgaqbnSJB#vdtS466#W>6@ObgtJG|bj{SaYeRNMx zY*J1SU2|!cK6k>xVu!iojFe{R7loHNBb~3B@==P-E=JI<%aTO5Kb;qcpq=Q!nC`6-FOc6Khu z`CM4$D?Y;a@g^tLSKZDR@7ZVt_ZfUp9mM875|GGvNMV#8@eIh@-!a z`^X|z9lm6&QA_dcSD+!{es^)wYybKZ2!vjc_$m3gLlw~TgZ|ZTL#BfFg{&<3-8Aap za&>8mF$?{OuMOim`AoZJ+eM=*>m_oznl0ndr&aI|?8b)rlAA@9^F>=fOI!MaV;aX4Z z!T6szCiRqp!SOeQ^}+T@30iJLLN64j(Z^P6vN?L^MG)FSM;BmezNbgCY;DHSWoog? z4lxY;h!N{Uz=ucQ-!FZV|6MHjCnbsH{nwXl?Gfwo$SLyE9OO?3(i7Azf)JWuwem0l zwWvU!m!}lx>-u7R6lW%E!T4z9XC-s5P3V~kd_cD9#lZ<|%cK(5{IdRY6I#5Lv|F5= z(9@HjmEZ_DIUze`-Pm%odU}Ewg9D%AT`sR7HVtb4!E+fDT6rj}dNRXB{A7lWH7n}o z7>xy{NjV2Cg=OMshN2g7G(%c>eNXD;6HDYLIAFlxV|(BmRtUIu;mK2JAAlQ5ec_~1 z*MhPE*yA|)0=^(WQH7q9x~@?n-2s0dkF)t)ocj6*x)S9BdR z$Zrf2fTfJ(P2xNNex@+i5TuYb5`I$5Cj;w&^dqi@?+7jlD*OOAeTqlGsg7I@X5f8>nAYX`yQ0Bvt)&N;%#HGKUVHW%_Rs~*R zKW7!dAvE70=|KD$0!A%Lc(e{@Jo+3yZn5Ge9C+yqvrnwb&iUDtW%D|ks#COy8BMOG zdZXFq#G65^g_^evG1eqql-_7JWzlUpzn(I!%2k}(Q@o~pT;?SCC38kpv_39AGup15 z80(6Twb{*PV^lQw$Z0as?-)am$mFNqh??^^mLQM^9tga5h9O=wo+2h%kF9bD48dXG zI=qdlx4JskG`;QT$+gXKMJ7}0c;7gKL#OR_SjrM~u||s_ZIrR6C&sXUI=x^`kN044 zahWxK)wbGLda!P^rP!1$$>$ZNrNuv(KAed#sAKjvj3g1 z|8I&{lei7Y>ZI||gK4~PS#0_t=Z*G9Wgymw>LvdsaqOu0ppRe_=<5@sfGpoM>n8Td zzzL-4fe!w(qTWx6m=yFUi!PHpqPgWa_*B%P)$hd-q~T9Ur7=Uf@e-xs&r9w5 z_YkHi^z4ux5^*Ygzhs1iM;+>VWgK=)1!jvIZSJ&-=^@~(H7QPZ;NL6$< z-WH8BUCglMuwJU1%#9-(a4zqK`jVUPVOH)8q~-~ zMG<@)CdVKHh+5`n=h3;s?Zaah~-T#Je-3wyr3?H(;k%< zUy3-eV4Z~gs~h>~mm;30f4d$hJk-z=>y&C7S=jQ`gU!Y8<&`~mq2+_|O!SXKqHP3# zf#@X#zY+sCC;~1d`YpuFRsD&|-oe572Lgu%B89+8F~?WoLrL{((|l&v{~!nchycBri0<3H zTf{bhf&w&K38++0Qs!%nzxi+PY1|3FNbu;6!4dU?_cX#6fqj_|tF)fFFEeDjnD*KJ zeVMC6pa(h6&vC|M-gLAkO$i(7&hEKI(M$)+9*>@jCSwg#QM4z5wlGLO8_u|JgUM& zoAFmEX!2)Rt!u4WahWFbUJKVpT*k=1(FdVd{W|Ul4q2{zn`-p611poyn4@}vi$o~J z0w3bTg>}bx?xPN_cUHg`A9|uIZBiD;5);F$YVNRS3|Y+tNTKWAr!s87;2uS>BOz29 z)kO4=20ekNy91TWeyA#o=p0n$xu1hByI6PY(yMMA*A3dg9kvlM{!#7O-Q}x% zg-KJl91*&=@9qI`fcJkFy+US5w{o^`87#kUZtVrzuw~$Ri~2ku<5w0u3mE4JYQztU zjQ9thYiq@GP2dM)ual0d=P>Yn3Ij)QiRE{ls{(T?FF%c|pZV%kV#S~nx%klxIFgI+ zO{g6*?_!UK9M8p1XSlRbk3+ip_70hfVr=L1>`>_`;j3B0(bKOg2Tj!@lC?JMyekrM zi%y+&DSHAml^Xt@Z@&L+4w_=b-EV?z82@m`uEUw{EwfGG)FS&+n+KWb|B=R^LpUzjEq{?qns1mb3V%bjhnG`bJua58o(K;wVLVT+*w#c_+8o5#^;M} z2lhC-abzxcUxal8B?M2Sjl$8ig~nLrOxpB_t`*50Jg3%!Lu+>zOUh}r@?N-D!uf$f zKB!Itjlae|Q+~d0Eh;qf3BP>u5SC#2i;<81E#u^e^{z=@jC?4t{J=1E;j+Qcq`eQd z!n%Q2oexjw7)ldx*l}6J-FZ@L^_*&XTUfSH$Q^HOj!RR8l%D%kIX1q9BV!1cxLKocx<3UVsG!T^^B!=fsh~8*v_Rq9bETWIC$U z!-6~bNx{xSd2S?fcz^7>M?I?-Jdfzn)PgyGiS#BVi~K2gBX0;Nq4qH4oT1LRgkGqbDwF_8%0yAub|MEG>OgRf$YJ;30_Q?XvLJz_)QHyXQ^x2dC zG|VP!ekSx^4hZu+rJfB131I_G7a{dfHw{3Ly>h)P+1N{T!*8aUJy|M9WX{Ir;o20I9@wkJ*1yU z)I#Hnm~uGz+sZNAL+XUNo;deg;%9jAwuVCBVjsD!Ga-QTmm@UyyEs$)j*;41`bOv> z#Dj6HTonzEIbWRg4(uNfk6l`(p0R!?0tLZ3FTyG+uk*0=g>B#%;ly(v2$M`h%)9Bk0f8#a(7ef-H z7u9qunW8ygO~;WmZLFF$k!Wp$nl=-yb}nRvYT&0LH{w##lsE~G`{vIXiK9+6EfF8B zRMQ&N{eYU*lI4`YQ-tT&5hn}6)RQi@Uww{ukc#)W@H|l@T|(=L{8*WgE>hDmBulze zO~;b!B_99E^T&~D>y7M6B8ZHEl*+CX=zGgKQw@l1|c2R+3eu3)JV5WmvOvB7V0N zZ!M}qYAJF!$vNV$n5;mV^~l+dQmsf8BYy{3CrVC1Y7<#Y+Qj!}l;n9^HyrN@$ zS9@pc`r>6B>zuh$IyS9sTjy+E+S$6QeO-HAv9n?ATBj(v$=TVqsjc(uw&j4=B*<;W zVBdn&RI*tR*$84$7yLgMNZ(G*3X;W+Gxz4T*XUEd6 z*7o(t)aG2$U?G+EGA2+M1D z)I`lR0S6gbsg2sHgC^1>noLt@DosO_*eL3x88nl+Xco<;In+&aX&%j|1+p52x|XiPI~O|W2D*`U(oM9BZpM1xIdls>mu{uo=ytk;?xg3@ zU353yL(ivs=>_ycdJ(;tUPAZL{qz96lpds)(aY%-IGgJ#dNtlkeJ%YNy^j8zUQchJ zH`1Hv&GZ*|o6sS8nEsL;p}(TH&|B$k^w;!u`Wt$b-a+rAchS4)J@gp;EjCR2j^0au zPw&HdMex_arK=%49d=mYdY`Vjpq{Lg>G`?w#akI~2B<$01mMW3e6&}Zp$c(e8k z^zZaV`VxJazCvH6uhG}(Kj<6uP5Ksno4!N;N#CXaqVLi7=?C;f?D_bZ{+s@XenLN` zpV7}TQ~#2FMZd;u<6Eqae~&fpAL(&=f}W&(RHgyESDG@0*OqCp^+SiP2?iF$qM4D! zuviwy;t{E6W(mx~tjxyj%)t^_5)P0{VW}*QrL$4Y$ud|bbKyPk*(`^-+1MHS&FkAs zOB+hX-B&tRxtBGn_ZH>uDO2wr_3l;gc&Hs`$Msey@t(tK#>n_`NEAuZrKR;xAX>maA~fRk-CU+;SCexeB*j zgs7ASt6Z&Dg^IsI#b2S~uTb$X{1qyGpIXkR zmh-9Qd}=wLTF$4I^99SPbo*4geJb5Pm2RI(w@;Gr8~`&ImY6~ABoy;8+f zrNVDee{WFfX;ASssBjupykk{(V^zE@>h~74e2ZGY7PWpYD!dl8el05A7PWpYD*hIM z4?Ew3cYzPzMLlsB_;45X#9h<_cR^oEqtY(83%IxoxVQ^=EsYAla2IfJ7jRk{{Q^Gj z>T|#Pyi$E$slu-k^=xUZ67|Gg)DL%2KiozAa98s;R2Y|cbhR$+IJ>Q=wUeipwyo_r z2kE4)b2{*K)2fcn_N^G-Th|72o%&0#jHPQ;XImRDwRuA@x2^x#@{V)X2Xpe?*wWad z)}lpl3Evf}n!L*QCa?NkX|0x~7Nz#hm7?`pnk$uBH7inr?+Q1YD@Ci|yTYC3%3wJK zZnMgzW|d3LRVqA{OU+fH^;?>&lvZk1qz~U!xK%3LDiv;35UxURv!eA{nj2KO4N5CC zD^iQ+D*Of&euGMPg9^Vvh1;OQZB$ydxlx7JsKRSh>))utYgFMis_>NF(9+zf(%Y!Q zZ4AOy=~a45OY>M2{#X_MSQY+Q75-Qi{#X_MSe4$fDtx840geiPtO~zLrN2pq-=xBC zQsFnL@S9ZlO)C5*6@HTnze%OPNrm5}!f#gLH>>cQRrt*+{ALw?vkJdih2N~gZ&u+q ztMHpu_=?tOX;$U0SWjaMa2`8JGWKQ_?VYQKqN3DSQK~*iy1YqEdxKoZ?`7ahFb~rGxOh5I4o6?%BOu~_YNymUVX{!5dX z4AKA&^Az617<^xj2`T)A_|D%|v7hkwkNu3?g7mHUlgMr4ZKU5J?<4&I`8U%4!5<@^ z(9wiqHq;E$yM=Zky_ueaG-f79Z>5)sxusa|MQ$S?AHe-m{879o?lPn=#~&qE5dJ>< zYk*h5$S|MT2{^my1^C2V2GA}6G(M-LxT48w@&;i|Et6-GxYo|rrI>x<-CQ`8D8QqY zkS92+<#XC-ygFk>lN0mR@W1n?+>bg?N}UV0qPLUEW&E>#*|K#TNXzoI?JLP-u9e6P z-toxXwH?dWl102nlI5NJ*VTX&q?7WPAOV+uDmZlF38$8VJN#3NPk5U_X^hx2l#h9H zHD<>XF$bOxm&a-zEOGTI2(8<-Q&Hq6pQd;|_ncHu(K^ z%=V**LHlRzC%SUocHP6ekMuEm?(IfyeI2N2LIm2UDhoaN_chKLH}A%-US!X*>Ig*OfG?B-9~;x z?k4w;`^mH9Ir1T*tG*-Ot8?pm%&VJl?h&Q6fYAi6z)Z~ixr}y^?PM=x=xX@9kC3C7 zHTRN-$y4M-NW**N6Hs~*{(u6 z7D@uRODGAc5xxX1?%a!jJv96p1k`2GSS9Jp`&HS#)n756vDo8%w3b6$Rc7L10&5>90J?be|!xbKd^&3Yc> zY&W?GzMXyevy)%p&mnv%iQwm5kiTR2O9xXD&|g#G$*G4FE=S8 zDehO$z4+vPmp|Drp6m&E!h7r$=)JseD|vYTzk;5R&tR#2;>qriCkMro3-Ngks5ODg zRCtI>{1Gt`t=7 z7gQXioZbVJ6wtQm+3Od)9a9-kNy|XumL{5 zp!WC@z4BY~1Nz)a92&>qtsC&v#lu5qgJ&)U9=QzkST{UyMew|N;c-*EZPSFdc?OdI z3Z(vdNcum7=J_B*(=ceQm5^)#$=(MK<*%S$T+lGbNH)f%I#LQ>T|Fs-R%s+2XqG18 z#W=MYo=FOCBIkJdAQ{<=XHTOXBcGxKBVV92BcGuhLtR3p>1;fCnvTKer*tenzn~5H z{EUx>$cgcU_jcS1Av-aU<4mMA(0W`dxn!M#{#=4y&!4`nK9$HtD8--IaT)%<_Rc@b zs_MGq=g0jyAR>?{qN4IUN?4*Oh%7=zRLZg#(V`(NOVt7*AXTtL5e*W57u1ELFjKJj zYk~@hnj#t&Qbn++gp350G8QQXLJe^_G$HzKKYQPK!(;fNB>5+4-&^N<&)fIhbN1Qi z?0wEXXW#qu+%HKhYm!2>*ui|~5s?&0(=iU3%whV=tgB=WBcn7QW+OS*(lhg!3$ut4s=xm4Zk%A+ z$bOM&KmPjh*UMWv8n2PLgskYxF<;ehNiXTddVC*j`5>s$r=&;o#t7RX>>pPWPmNEu zrVCrn&?{}5h-;DD$?HwT_-H%e{p>h)9K*G1G|jPUkq0qDk?%-0J0_ZGjLq}-E@7;& z=A>*F_OuOB`360-Eyv>t?TDX1U>`lJGp+c43^{uOXRP@rep$0TTMI|az*h<0ya<;5 zs%`ugm{+)Bc~(QpTJu`=BDv_N=NrmSQH-oe`a6u#3~4S!c-yIFG{;D)*p?q*l*7P&QU zyJyGWPx90K1Ad-=$*=Hh{6@c-?{>eLQad8qP6TPSt^|2%=rqFVgzm@;e=x>6!ybyE z)nvcdV4)1VAg97lM^fN-Z2D4%^Hjp!kzG$@cov~IL8$$pg`{hCz!{+ilu^fyOgZ_L zv#%oWa}sVkXY~hg^i6&jxoXN$PtFNfXK@tH&gLjN_U0&MdBK;R@khuC_{Tu5yujX-OQ}+SN3DIPw-k_L7XIAI1^SV&)3R(ZV8K zsiE*J4?y-sYW=u6)-zH|shQM3xEIcaYyORbw53uMPL7plVB{HEa$L(Oc%m8NiC)HBz_jP$xD+Sbt;mqgVS<2&GR12?_vDDf{->yqnxYrG9>@=2vUah z#o+|czlhhH!Q?%Z{G7RxU*97HNV*D0SQ~h^#C4Expidzc?TI zB?POvJ99o|TtEsrTc^K-2blqOgd>A9!1>rJ*`GW~_a;wFEbY{2Wm>Qk%nlnsK7^tfh6@A^C`Q6Q5nVhjx5D z{Wxfd$>_>>rsqQXiOkYvhSZWBX1V+R>W?MogdpGi7&QFKe+y0SgJi!v)e>4XX6lIv zZ~3v2tdSxuKgzZFUc0QsKGLrkYj%@6wWn>H(Js>FB8%cj&PZ!Dq$rY0j-^s- zBp;z24w+ud*HRj@*dHn3r?CfGY<+7alYjDgNbw4pQOHN;sGv<|55AJSjnS%aV-&|K zj#HeLt;klO$AZ&UZ|_w448^;YQls%jj6CJ6i3!SE!pd2p0qx0IZB}bLD4wpA{*vAf zP^?fKs5n~BPL?<}YLVu>Sn&hJ&4TuH#nDQUROD_JD}JE3IWI|Zv{KGBdFnBG%~-{8 zisRJ+O;Ef+aiZcRwOf-FrzqtIinl17Kk>


=QD@KaPD7I8=tyr#jyyA(9ofW$&o-R4t9x9uj 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 HZ6y95;*e$d literal 0 HcmV?d00001 diff --git a/lib/assets/fonts/Dana-FaNum-ExtraBold.ttf b/lib/assets/fonts/Dana-FaNum-ExtraBold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..f0a4c424c617dbb15bee0420ae2e4e09757a9850 GIT binary patch literal 57644 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%0ALbX#$Sof+ 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 literal 0 HcmV?d00001 diff --git a/lib/assets/fonts/Dana-FaNum-ExtraLight.ttf b/lib/assets/fonts/Dana-FaNum-ExtraLight.ttf new file mode 100644 index 0000000000000000000000000000000000000000..25972f8918c86c387bbb23b88233e3a8cc633795 GIT binary patch literal 60088 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 Ch=@M` literal 0 HcmV?d00001 diff --git a/lib/assets/fonts/Dana-FaNum-Light.ttf b/lib/assets/fonts/Dana-FaNum-Light.ttf new file mode 100644 index 0000000000000000000000000000000000000000..f141014de863326a332d2fca91f6f28100f4cfd9 GIT binary patch literal 59920 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 literal 0 HcmV?d00001 diff --git a/lib/assets/fonts/dana-fa.ttf b/lib/assets/fonts/Dana-FaNum-Regular.ttf similarity index 100% rename from lib/assets/fonts/dana-fa.ttf rename to lib/assets/fonts/Dana-FaNum-Regular.ttf diff --git a/lib/assets/fonts/Dana-FaNum-SemiBold.ttf b/lib/assets/fonts/Dana-FaNum-SemiBold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..3e15e0002b9d480ac47dbc318eadf98f63ff9fb9 GIT binary patch literal 58784 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 ZQ)ya~&$@br{I|C;8+-hh?332`e*jonbQu5u literal 0 HcmV?d00001 diff --git a/lib/assets/fonts/Dana-FaNum-UltraBold.ttf b/lib/assets/fonts/Dana-FaNum-UltraBold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..2ac62cafcf4a18b63818790faa1faae8c66296f8 GIT binary patch literal 57852 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 { final TextEditingController _controller = TextEditingController(); bool _hasError = false; + bool _hideContent = false; @override void initState() { + _hideContent = widget.obsecureText; _focusNode.addListener(() { setState(() {}); }); @@ -50,20 +54,25 @@ class _DidvanTextFieldState extends State { if (widget.title != null) DidvanText(widget.title!), if (widget.title != null) const SizedBox(height: 8), Container( - padding: const EdgeInsets.symmetric(horizontal: 12), + padding: const EdgeInsets.symmetric(horizontal: 12).copyWith( + left: widget.obsecureText ? 0 : 12, + ), decoration: BoxDecoration( color: _fillColor(), borderRadius: DesignConfig.lowBorderRadius, border: Border.all(color: _borderColor()), ), child: TextFormField( + obscureText: _hideContent, textAlign: widget.textAlign, keyboardType: widget.textInputType, focusNode: _focusNode, controller: _controller, onChanged: _onChanged, validator: _validator, + obscuringCharacter: '*', decoration: InputDecoration( + suffixIcon: _suffixBuilder(), enabled: widget.enabled, border: InputBorder.none, hintText: widget.hintText, @@ -96,6 +105,24 @@ class _DidvanTextFieldState extends State { return Theme.of(context).colorScheme.surface; } + Widget? _suffixBuilder() { + if (widget.obsecureText) { + return FittedBox( + fit: BoxFit.scaleDown, + child: GestureDetector( + onTap: () { + setState(() { + _hideContent = !_hideContent; + }); + }, + child: Icon( + _hideContent ? Icons.remove_red_eye : Icons.remove_red_eye_outlined, + ), + ), + ); + } + } + void _onChanged(String value) { if (widget.onChanged != null) { widget.onChanged!(value); diff --git a/pubspec.yaml b/pubspec.yaml index 4eb767f..d429595 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -81,11 +81,19 @@ flutter: fonts: - family: dana-fa fonts: - - asset: lib/assets/fonts/dana-fa.ttf + - asset: lib/assets/fonts/Dana-FaNum-Black.ttf + - asset: lib/assets/fonts/Dana-FaNum-Bold.ttf + - asset: lib/assets/fonts/Dana-FaNum-SemiBold.ttf + - asset: lib/assets/fonts/Dana-FaNum-ExtraBold.ttf + - asset: lib/assets/fonts/Dana-FaNum-Light.ttf + - asset: lib/assets/fonts/Dana-FaNum-Medium.ttf + - asset: lib/assets/fonts/Dana-FaNum-Regular.ttf + - asset: lib/assets/fonts/Dana-FaNum-Thin.ttf + - asset: lib/assets/fonts/Dana-FaNum-UltraBold.ttf - family: dana fonts: - - asset: lib/assets/fonts/dana-fa.ttf + - asset: lib/assets/fonts/Dana.ttf # fonts: # - family: Schyler # fonts: From f36a7f9aa826368b271fb4f1a1903a1983ef3a1f Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 8 Dec 2021 16:09:49 +0330 Subject: [PATCH 011/273] D1APP-20 Configuration (icon, title, package name) --- android/app/src/main/AndroidManifest.xml | 2 +- .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 544 -> 8412 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 442 -> 4896 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 721 -> 12183 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 1031 -> 20863 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 1443 -> 30411 bytes 6 files changed, 1 insertion(+), 1 deletion(-) diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index b7d0b39..8494439 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -1,7 +1,7 @@ PyA07*naRCr$PTz7a>#rl3v*}lo9(}Q&6Cn5^cq+A5CAk|9~L`6WF2qGvofPg4q zp(r54P((^-q7VfXP>M9E(yKy9-Rvg2+1*oq&o{d#Im8X(^?L6g*Tch;EoaZnyz_o_ zz8Mb17Y9Jqz5ic+S%d|>&@K+jlL~MgWPbqe<9j|+ZXA7{&<&y>+FLl+p)AIr2O4MBrGvqW7@v3#vJWXRY?;5mjU8LQ7+8Q<8rnocY{AC zH3*O~wo`Pwz8fsD(emE_iE?3fu8@RWIO08>0*#wp^rJHJ?ZaXts7MpOvDJFv`@RhuK{F= zAW%3SDtLkCIF4t?5KM{+RaJ^1;y7?T;h|x|zL!-+QK6`0b@{&ptWp6o#{M-TMxF(r zZ~~`tydV-zk}rTjz8ir&r%!U{-joa6>1x1}t@{0LRh4~=B)n+mM3aNJ*b)S5WH~V+ zx{NW>!Haeq1fzkuX{sVis;vBb!TOIeNQKJr1dJ#s3J@spz?XT;Uzl<2Cpr7qJ&HSP zAH2@ffd5wj?mKw!tZTAnQ8FnpC(3?@Ub*!wWRaK*cS#o6Aae- z`G|_`#j@2qTNA6-HOI$65P7JwB&*7w0P4;R`V#;ZF~%SSJcTH@e#Py*baJhdbs-s& zd#?@@0wJ8!Us?eXadP}bii&4+r}DpnE%1E(kf_VwK>^xGJ;qznAcKVjxosJzH4iUJ}3 z+I6|$=L1WXTW8+^d>29kAf{+RohB~yl>so+0j!N+jcX`G$JdUEjV%)q5fN!JTTDck zLSLcZ?RL9zvvSg9XT~`cWFH3d4*-Ev^mQ2EwWt&@SQ-oE9vB}{r{Po9vI&4H%c`v0 zoqqbaSTTAC$H|;13f}BIxK16|C0#u_HY7?cvJ0_<#;VgHh6f?Wbv9M1`BcM)9<1A< zaec8-{d-ZXY6T?3IAF7yU=RgHv4EtYz*~rnY!}X7y@4NpI*Z-=kEn+Z|8y$<%Fk&C z@64t@ZN-Q+0x!$5D!R^}&GVex zJqZQB%nJdc0i!8f0>=Q@pGIu8flXSpe6(k$$Al+aH9)n*GTMx54C53<;S}aC0X)Zn z=XrXg{b#!C`ps;l?Ky(aHg3naJ9h3y#<@j+D>cL_x<{|*sr@L#)Epmif6I~f%848Y zg>D zh8RnIAaJN(K{knw)`l8QK8&i{;Qx#^ldJ?}9$c7w&cDPU`Vr5`;6=fG`KsbR`psmx zu1wRhh7G#dQdt@ys^-+r-JfYYc4$vDxUU)$GgVc2e?a1l2AaU&MCTWHaq{dXoVjof zzociwRp4R4N2JYy3T0wZt6C-0tz8w75v0F^7lCCEMFNZs{^Yr9!i)v0@!87H_aN)^ z1fX!2P6txk+N3%7`1@u@Hh8q3t!z9LDWEWKP0zW~bx>62n0Ebs8?4d~1YS~Ph`A?z z`o(u@$4ii0X*$+W2S~ICBs;|N6YBossS$6Fd)e@0%Li!y#1x)F37+R^P)ueve6<_v zzTAa#*E3+WSP`EPkJz|a*qGzTp`gHn?Ccz5+{%RCQ-G=!;?VVpN6@u>D~N(XXhW72 zcCR4tYyx)fKPkL1eW7~rt4;GEU!MpdSJyWJDaa;kx&F2X+I|pOqlSee1+Mp-{t$yG zc_fIE-%}{&9NM)<;Ps3!9YU}?&itGD2d*M`&^KeQVxCZjAXia;!;!3aW7 z3RBi>!$-?D!xRyP){izvqlOQle7OXeO+h0QQb9$peSQTu(=+kop<~#&V-NCkve2*R z6ByX11ACq<%it)u3$`Ikvdq7`cmp^2?Rn>XR}T#X3ce0arsh@z*(63ZHP&vmBD&r~ zRRobM)=PJ7#lWe&K~%iiPQkf9?NcS=#GsHO)Mi2_QgNedwQN6a(X7$N77gwtCW$n= z1d1ffY{oBMyNLm#XTd8A7}&oz9&UI)V|Ib35PrWD3{=Bh#1Nyw0ISW+Ks$W&G!`vd z3B{L>g)>K@PL0Y%ZOG(r&`lgC9X@?Y95{Lo4sT7J3MD;Br<;gH8sjU9Ra$%&-LOS- zqs1sGvdsLe@X@?3SXBZ6UN9Qf{2RCUyaQiOf%DR&kaeIjX);X>Ibg2#anFGRdn}kb zM2(8Dk^?IcFf=f7W<^oJ=Iwhic)|ko?b8j<_38k>UxquM{6Df(!H8Xd5gYWM(R=N` z-DZW^B4YKrG<>{x8D_oN4?R1yE^3QtA_v=53jG1RI(0F>@V&WTqTtMn05ZaeoRu$I ze`$1+$GV%N?2_ych`hlNCf&gR>bu??6BPi*iSDb{Iro9hL*PkY5K?lQKNCXVR0DB! zKc6{c+=HWE>O`y&WLe=fQPP-`yfzJQ&RK!EvnHYb{ne3?>0*N?eN@^--;wtj?qb;v zML|M*B+i__hL?v=#2fuPVOZZzMNDF%M{EkVA$_zeO?>6Gsb{2{2fG9Q<2sOvr69KU z+~}rH4YkBXNyLG|9G7@|KFCN)`o&ahnRqq#?0Kc&(B{7IW__l67&DeZWo&6?ul~rI z~OkV=<&ixOnBUXAse)37#WE;ycNOduU*w_D&TCgx!ktj4br&{~ER|nuvz? z*D3;2YbzkhnH%AO(FUd*unyt-4Mj{hR&eB8tT}F$Eyl z%XH_fwOSQ8^K}RKa<_yB$NtZ1k91kNb;V3Wjml+7-%yNNJZMr-A<<~u`4x2P(h1!< zx52HjX&++U#;w@7WhJa3lkarqVeyjB z(5Lq^C|@=K{s3u#px%-s330IwY}>IHix;Qh@aB1JBFGch>#>kNRIaCIb5A@s7N@>h z^CIBbtGtDv4k$7#~+xTk3R-}Es8qrY>MA$7z znlTTnS8v4kJ5!mc5UVB-XiHaN^Vh3Uv3yzh{QlbpPpm3m)`7vJW}}!Wg2SjD@^|K?Y{VCPf5!ZG-^8uVV)oD=EEY2iMiKtP0P;N^L^~po z`o%ZM&dR|Hy}L4fZwojH#$zuJMJgPsp1@HyCQRwl}Yg}x$@CJ`!= z5Q*0(zK;gg;xTUMvqh%Aq%{nIq}<5NMT@Q@l#6>dbOKyomXMqxkixAohrqEu6kE6L zj@=vQJL*)epo9}EyS~}Of)6jxjN55(Zcq#K)9Fl}? z4l812m=o1XjrQ!=v@o$*{aWP03ng_<5jYf*a2zgQzllym-o~Q2(?fn`P@D)Lim}pm z>_O6mneaGW7&UPudUx*#vM@JqW#GfPOR)QggYdfxg7JnZpj?HrcNqG} zy11)_FPH@lD`NBvP0Y-QuD5g5$_0&jJkj(wru?^*4f-A{Hf+c8Z3i*;oi~w{?JDv| zf*`5PBanZ^t$EE-yIe@ zb{%*OIfq;7R$15#>){R3%WzN1r1xe%mo%iC6p&<*vV3>Cw2e2?Ve#`2*CiNBJZUe!m|D z1zs(Zzs*67i;2LZl=bjt|BCrjhLx&^^bLjlBxzRi7vk%KMyA4d;TgTCX#j<274=HT zL8Cv|xZq7ml4MZ`r9kfpP)I@d895U*>OP2Wo!T<5nFdJUh@yxHySb?3$mQ}t5Ja56 zcp1H(e+679eG#q=YG2CDLx*l1F@4f&$jfshDmoG*H5?CkJbvbRYhJh`G6LIne2?$H z-HG)dO=KyNk{0(4Op|leA$i3*cs*Xws&khv?eXwKwXt&bS4bNFHbh4x z(=p*L(jT(75Y_LkiPgy;AkXDy&&qcffL9fC?(!7=uXc6jPLM9L+br0B_&8G6ti!hC zX?N5?`t}&hRaNyC`js}%j!_S6S^5~H{BK$Ix0p`Ry`LRDY59to!vg_HGU&bEJAtGH zh8+haq0JMIqjmE}MF5#hMqIi23kD7w2anfFxmHY`G6r2bG{?fFoACCO*${pgARq3j zQ3a_h=Cj<;OGDm-+vNrq2w=jbQFyXlOSoJGY%Skzwcy92C$ajo)%ZGP`dtG=;|l~N z@}~j=lNK5lO&&V{$XQILUoT!QD6+E zff3Pz?t~q?emID&Uu?maPp0Uj`aA2ODZ?KubL9hYcAQ6rlbc?_z<>)O6cFGGqQ5rMY2!yWui*;f3gCr)y(qc1s)H& zKmQ7@U%Cb{P zAZ28u(PJ&K=z}T9$a3QNu~T@s@k5AlL>7s0F_VL4e%kCMs1jqqq~Xu~t`#HqgX5q& z-5#Y;$6@OE?^Zny6z<#k6)pIiIM$O`qxa>CTliB!egjT<{7@Q!T~u!=aNH@y>EA znLnNRDEe55BJA{AS@>w-GJLgcEjkY9jkhL_WCPgr)eg*=^$}cI*}<}3YKN3I&!bh_ z7MS?va3sV>~<6e3iPqcdYjv^LP z%=A;~@#iOs+m|mG0_0MHP)o_O=Y|_~=!UpS&kTD#Y3+xjC0SO)aOqKcKyZ1UmW%yp z^3T_hG~sn5Rw$0T$wE=|K7H0gto&ppUKu?Y-MhADO_Pp^iL&75^VhL$+qW!GC9|Da zu^gH|(g>|uG-l%I%yTpL9Y1vz)2F?UtG6<-HFYT>BO_SKgD%o_*|~Wb_2yLUSv3=m z2pe-V!c8o5M1#4e!1H51G^EU$`7V?jqf3IL2dHGQ8U#tG^wFU4<6d5nG%z5^vVqc= z;TqJ$?B#JEfRBjBh{3&X6EgyrSS2Y6Dwa=RR)->R3Ll(#F4U`An<-q9FY*s%B?$VB zn;E!z{RZmSy_cmqBJ8%{l5|EE$|S@w0D^i%MqF$pK3TpIzg{?lmG8e%s{YaCtplUp zNiobGpR^2tD}77EVdMj`Ro&9k9h!fn!dP|X>u*i!@y_edl?sw3X2(unME8-iv2w{A z1Ol`q6O_tec*QeQOiZJ=&TKZKQ?~(#j*Y?c#j}_bNGT8cTdrIJ3qJQB{0T2VHw+6> z=Cbf2C)deVIhZ926noyJODGA~^Tm-^IH^A#X;?R`cu_wHOe#j1Jb#TL>GkoO;XO~D zvsQ6Jp!_x#Gn=C-tEyt~`CL?)p+&SBs|1*8tR6cfsq?fEy#lhV7{ZC0<}h|0GzEz@ z>tIN~XMU6N2((e zm(8OlVuH0y2Ojb-0Z-PE;2hh_^x(?Wo26dd-2y1QR01R>;xJWPHEQyNF7J-%8&DL* zK=jai+98X8i&t-;RqwG#Su_jLQISli=&c~J%@JwG$gwjZ1tfg)KoX~tZn zZrX)Ityh4fr(#_=Z9mN z`Zl#>ognam$@A72lEzFTaELjy{-iM`s8&odkBPP0Y?UtV>V^DUtAhZUqMwd#`{HKL zwTtI{$G5fzeCJB!Yw0c#hAPPe#*BJ);ncywr5;7$Ldz>5T@Z|Y-dmE2Pq*yF+D~UA zJI7s=?9$92&3=gLO#H~%BNLr8V?I``-h>}^tYczC3Rn{-3YxWyq$akCBBM-vBzg}R zhsPV$!lYN9`%V0%O&rH@(ra%gi*u5uZ-nncuMl%?2S^}4@ z6u^wR?~Fovy1S^XR}Yf5AV{BC%qAQ=d4^f4XS;PM3PLqDXbL$9PH-uxeA!5hnY;k* z%wO@<(rHXF3w&{{RH!eiUy_u5V?GpC%>6JKfvW?wDwEJcXplL^sLs{~9ahEEx!35q zm5H3Rl&-hcNk>20cfB<}+OJ5eG56%L^uiNgb%Df+lr+CUXX)bKXxO3Wj5Q0! zfH&J|$laczTNl#`$zvQ;tPPGA1?QR5F3(R}dlSvVt|7tRt!({viVz{gR?6 zqPCo@%{I}y)4)l{E>JLM#v6!oL@<3*+UlxKSLm^0uZc1AJ?XUqj~AmSybIo+k1b2z zg4txGXq@RpYLos6JTHBJ^po4 zV`qEHcA>I;Fp;~mP5-zOEB*Ead;zJ361ge?F-WDiHJChtrdGo;cheV+_-7;GqO(XegkkOhZtF+B+uH=aBuUJ z=m#3#YcLAIvKO64`^Pu4utF+9k^+jDd*a9y|IfSnL(1E(OY&>pr%dHrFvU%3(Dv#6 zlSjSCKiTp@t^7`)+%I|4ntyWP%CFeI=MWAaKZon-*~s_$AqCNdK*=w&5fu_*(BS?W zX!FQJs9ilVq>EGr4y%aeSQ#Go?SYg0#CMbN{TCaS!GCiSPaTIz0XOYXiHX zZL@l8(rK3c0g2V6P_3f=qPiZh&&S+Zi^&*_&2$&}N+hmEqk)A}1i%kR&Tw-UufzJa z>vtjh+*F`|QWbQSEaXh!%RDeA@}XAG+RDU*>J!711mAUqS-8{&OVp?eFB-T)XFivA zeE$#9wI4?y;5k@Ir)W9vaYR=g_DJhCkN4}@o^Ri}A>yJVh*k8T)i27D%=SEygUM4S zp6L{YIebA+nO6lt(5hScJhz8W+jA5juh@idx9|8CndjyK`BaTU_h|Lf^q^pvZ;b6| zs@3d0$NxQ0#b7a%Uf~+_HA<^6E2W6@H^!EAgKDK&g}wXAWnccuJ#&zI;T-_Zkl1OF zFdJ*|5tc?UCG<|H{lL?$TQ;fuM5{(<@?dRLt(c%?9>Z-5wcwf>3$fT-l`mT>DWdKpeQXuV0SXmt{!YdHA1dMu2afic zZjXk~?SbpeiSzyo2dAMhoobb7=JXxbZ$pR%tW98uZDS~#*raOpYPD)suNqw?u{;vu zVqmwLSqr43GqRnya_t7rUbvih>HLNBh3QxK!2D+)Rfkw= zH5wIJt!9j97DIbBN|gMDo%~W6^e=9xqg_4%r_kb-H!BDEXOHa<{BmLzycwHxyK;#3 zT3SWFQ-=mu9@sI zrL{u8(LkZ!=zumS!cnffDe=C3wyL#jnWG({4J>N-YWm-ijJtOf@ARNj=m`!AFNjc7 zj`un9;JJ3;s{hxs>y(`98z8w4>vrmBPat;b_k)#uvL>D-R~92-ifPJ6RqSG_T&IgI zv1+W*PCKd;StX_aN47xeTl`BH^qV13h(X&i1uD}QB(D#?tV|T9UppDdy!x%;%J>f6 zykmgxm(beN-AsiQFx~@OOatCg{vXDKds>>yRjgu)j)7=0fc9jna%h$KE>?p}ZLm~N z`mfm38xp5v0Xa!^?3c_ZzOislXW z^1MB=su&SlU5tvaY>J98igr5$qeye0P(_!jkZJ!nZ5jW!S+TpB^Agl$tCT#aur1-V z*NL2FS)uKdpq+s#6+(rQ@N7%CAcCh&E20Q4xTztyHJk!A^)K2Q{vQ#s-vdv7r~t>Q z6we0TeWtrL1s;q!Sd~57@bRBHT;RXPpt}OC3;MI=Dp#zp4eQ{SrrN0kYVh1e!a+A;7ULAq~(f|Meib+I4RD8e^ zIcmWpy6$h@i_XUQpFQf0>Lz>vxKFSnx?UiUU9Sc?h*8a96kcChr2N|sdDDhYfZT0t^dB`Y|Aoeiu=szJl(SMP5wz|A0000P5D~Wn-+_Wa#27Xc zC?Zj|6r#X(-D3u$NCt}(Ms06KgJ4FxJVv{GM)!I~&n8Bnc94O7-Hd)cjDZswgC;Qs zO=b+9!WcT8F?0rF7!Uys2bs@gozCP?z~o%U|N3vA*22NaGQG zlg@K`O_XuxvZ&Ks^m&R!`&1=spLvfx7oGDKDwpwW`#iqdw@AL`7MR}m`rwr|mZgU`8P7SBkL78fFf!WnuYWm$5Z0 zNXhDbCv&49sM544K|?c)WrFfiZvCi9h0O)B3Pgg&ebxsLQ05GG~ AQ2+n{ diff --git a/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/android/app/src/main/res/mipmap-mdpi/ic_launcher.png index 17987b79bb8a35cc66c3c1fd44f5a5526c1b78be..e0711f5e823756cd096472bc14c121cacfd97c73 100644 GIT binary patch literal 4896 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 diff --git a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png index d5f1c8d34e7a88e3f88bea192c3a370d44689c3c..cecbe16e8bb1cc6754bb6aab2947074f60dee4d8 100644 GIT binary patch literal 20863 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 diff --git a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png index 4d6372eebdb28e45604e46eeda8dd24651419bc0..664a4dc04a792fd364677ae625856a95791ad920 100644 GIT binary patch literal 30411 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 From 5ec97ecb3b3817b5859408209abf12d477596c77 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 8 Dec 2021 16:17:36 +0330 Subject: [PATCH 012/273] D1APP-19 System overlay style --- lib/config/design_config.dart | 12 ++++++++++++ lib/main.dart | 34 +++++++++++++++++++--------------- 2 files changed, 31 insertions(+), 15 deletions(-) diff --git a/lib/config/design_config.dart b/lib/config/design_config.dart index 000420a..933c788 100644 --- a/lib/config/design_config.dart +++ b/lib/config/design_config.dart @@ -1,4 +1,5 @@ import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; class DesignConfig { static const Color lightPrimaryColor3 = Color(0XFFF5FAFC); @@ -37,6 +38,8 @@ class DesignConfig { brightness: Brightness.light, ); + static const currentColorScheme = lightColorScheme; + static const TextStyle subtitle2Text = TextStyle( fontSize: 15, fontWeight: FontWeight.w700, @@ -54,4 +57,13 @@ class DesignConfig { static final Border lightBorder = Border.all(color: DesignConfig.greyColor4); static const Duration defaultAppDuration = Duration(milliseconds: 400); + + static final SystemUiOverlayStyle systemUIOverlayStyle = SystemUiOverlayStyle( + statusBarBrightness: Brightness.dark, + statusBarIconBrightness: Brightness.dark, + statusBarColor: Colors.transparent, + systemNavigationBarColor: currentColorScheme.surface, + systemNavigationBarDividerColor: Colors.transparent, + systemNavigationBarIconBrightness: Brightness.dark, + ); } diff --git a/lib/main.dart b/lib/main.dart index 75ec249..d173178 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -2,6 +2,7 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/routes/route_generator.dart'; import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; import 'package:flutter_localizations/flutter_localizations.dart'; import 'package:provider/provider.dart'; @@ -15,21 +16,24 @@ class Didvan extends StatelessWidget { Widget build(BuildContext context) { return ChangeNotifierProvider( create: (context) => UserProvider(), - child: MaterialApp( - debugShowCheckedModeBanner: false, - title: 'Didvan', - theme: DesignConfig.lightTheme, - onGenerateRoute: (settings) => RouteGenerator.generateRoute(settings), - initialRoute: '/', - localizationsDelegates: const [ - GlobalCupertinoLocalizations.delegate, - GlobalMaterialLocalizations.delegate, - GlobalWidgetsLocalizations.delegate, - ], - supportedLocales: const [ - Locale("fa", "IR"), - ], - locale: const Locale("fa", "IR"), + child: AnnotatedRegion( + value: DesignConfig.systemUIOverlayStyle, + child: MaterialApp( + debugShowCheckedModeBanner: false, + title: 'Didvan', + theme: DesignConfig.lightTheme, + onGenerateRoute: (settings) => RouteGenerator.generateRoute(settings), + initialRoute: '/', + localizationsDelegates: const [ + GlobalCupertinoLocalizations.delegate, + GlobalMaterialLocalizations.delegate, + GlobalWidgetsLocalizations.delegate, + ], + supportedLocales: const [ + Locale("fa", "IR"), + ], + locale: const Locale("fa", "IR"), + ), ), ); } From 6299949461e9fc0fe22cabdeb7c50c64f7ef78aa Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Thu, 9 Dec 2021 19:01:33 +0330 Subject: [PATCH 013/273] D1APP-13 Authentication (otp) --- android/app/build.gradle | 2 +- lib/config/design_config.dart | 6 + lib/pages/authentication/authentication.dart | 156 +----------------- .../authentication/authentication_state.dart | 1 + .../authentication/screens/password.dart | 65 ++++++++ .../authentication/screens/phone_number.dart | 96 +++++++++++ .../authentication/screens/verification.dart | 92 +++++++++++ .../widgets/authentication_app_bar.dart | 9 +- lib/widgets/didvan/text_field.dart | 4 + pubspec.lock | 7 + pubspec.yaml | 1 + 11 files changed, 285 insertions(+), 154 deletions(-) create mode 100644 lib/pages/authentication/screens/password.dart create mode 100644 lib/pages/authentication/screens/phone_number.dart create mode 100644 lib/pages/authentication/screens/verification.dart diff --git a/android/app/build.gradle b/android/app/build.gradle index 054a98c..52a5999 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -44,7 +44,7 @@ android { defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "com.didvan.didvanapp" - minSdkVersion 16 + minSdkVersion 18 targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName diff --git a/lib/config/design_config.dart b/lib/config/design_config.dart index 933c788..a3efd0d 100644 --- a/lib/config/design_config.dart +++ b/lib/config/design_config.dart @@ -17,8 +17,10 @@ class DesignConfig { fontFamily: 'dana-fa', textTheme: const TextTheme( bodyText1: body1Text, + bodyText2: body1Text, caption: captionText, subtitle2: subtitle2Text, + subtitle1: subtitle1Text, ), ); @@ -40,6 +42,10 @@ class DesignConfig { static const currentColorScheme = lightColorScheme; + static const TextStyle subtitle1Text = TextStyle( + fontSize: 17, + fontWeight: FontWeight.w700, + ); static const TextStyle subtitle2Text = TextStyle( fontSize: 15, fontWeight: FontWeight.w700, diff --git a/lib/pages/authentication/authentication.dart b/lib/pages/authentication/authentication.dart index ff1b069..c18eeb0 100644 --- a/lib/pages/authentication/authentication.dart +++ b/lib/pages/authentication/authentication.dart @@ -1,11 +1,8 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; -import 'package:didvan/pages/authentication/widgets/authentication_app_bar.dart'; -import 'package:didvan/widgets/didvan/button.dart'; -import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/didvan/text_field.dart'; -import 'package:didvan/widgets/logos/didvan_horizontal_logo.dart'; -import 'package:flutter/gestures.dart'; +import 'package:didvan/pages/authentication/screens/password.dart'; +import 'package:didvan/pages/authentication/screens/phone_number.dart'; +import 'package:didvan/pages/authentication/screens/verification.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; @@ -20,6 +17,7 @@ class _AuthenticationState extends State { final List _pages = const [ PhoneNumberInput(), PasswordInput(), + Verification(), ]; @override @@ -34,149 +32,3 @@ class _AuthenticationState extends State { ); } } - -class PhoneNumberInput extends StatelessWidget { - const PhoneNumberInput({ - Key? key, - }) : super(key: key); - - @override - Widget build(BuildContext context) { - final AuthenticationState state = context.read(); - return SingleChildScrollView( - physics: const NeverScrollableScrollPhysics(), - padding: const EdgeInsets.all(20), - child: SizedBox( - height: MediaQuery.of(context).size.height, - child: Column( - children: [ - const Padding( - padding: EdgeInsets.only( - top: 80, - left: 100, - right: 100, - bottom: 40, - ), - child: DidvanVerticalLogo(), - ), - DidvanTextField( - title: 'شماره موبایل', - textInputType: TextInputType.phone, - hintText: 'شماره موبایل', - onChanged: (value) { - state.phoneNumber = value; - }, - ), - const SizedBox( - height: 20, - ), - DidvanButton( - title: 'ورود', - onPressed: () { - state.currentPageIndex = 1; - }, - ), - const Spacer(), - Padding( - padding: const EdgeInsets.symmetric(horizontal: 60), - child: RichText( - textAlign: TextAlign.center, - text: TextSpan( - style: Theme.of(context).textTheme.caption, - children: [ - const TextSpan(text: 'با ثبت نام و ورود به دیدوان،'), - TextSpan( - text: ' شرایط ', - style: Theme.of(context) - .textTheme - .caption! - .copyWith(color: Theme.of(context).primaryColor), - recognizer: TapGestureRecognizer() - ..onTap = () { - //TODO: Needs implementaion - }, - ), - const TextSpan(text: 'و\n'), - TextSpan( - text: ' قوانین حریم خصوصی ', - style: Theme.of(context) - .textTheme - .caption! - .copyWith(color: Theme.of(context).primaryColor), - recognizer: TapGestureRecognizer() - ..onTap = () { - //TODO: Needs implementaion - }, - ), - const TextSpan(text: 'را می‌پذیرم'), - ], - ), - ), - ), - const SizedBox( - height: 48, - ), - ], - ), - ), - ); - } -} - -class PasswordInput extends StatelessWidget { - const PasswordInput({Key? key}) : super(key: key); - - @override - Widget build(BuildContext context) { - final AuthenticationState state = context.read(); - return SingleChildScrollView( - padding: const EdgeInsets.symmetric(horizontal: 20), - child: SizedBox( - height: MediaQuery.of(context).size.height, - child: Column( - children: [ - AuthenticationAppBar( - title: 'ورود با شماره موبایل ' + state.phoneNumber, - ), - const Padding( - padding: EdgeInsets.only( - bottom: 44, - top: 34, - left: 100, - right: 100, - ), - child: DidvanVerticalLogo(), - ), - DidvanTextField( - onChanged: (value) => state.password = value, - title: 'کلمه عبور', - hintText: 'کلمه عبور', - obsecureText: true, - ), - const SizedBox( - height: 32, - ), - GestureDetector( - onTap: () { - //TODO: Needs implementaion - }, - child: DidvanText( - 'فراموشی رمز عبور', - style: Theme.of(context).textTheme.subtitle2, - color: Theme.of(context).primaryColor, - ), - ), - const Spacer(), - DidvanButton( - onPressed: () {}, - title: 'ورود ', - ), - const SizedBox( - height: 48, - ), - ], - ), - ), - ); - } -} diff --git a/lib/pages/authentication/authentication_state.dart b/lib/pages/authentication/authentication_state.dart index d3975e7..395288c 100644 --- a/lib/pages/authentication/authentication_state.dart +++ b/lib/pages/authentication/authentication_state.dart @@ -4,6 +4,7 @@ class AuthenticationState extends CoreProvier { int _currentPageIndex = 0; String phoneNumber = ''; String password = ''; + String verificationCode = ''; set currentPageIndex(int value) { _currentPageIndex = value; diff --git a/lib/pages/authentication/screens/password.dart b/lib/pages/authentication/screens/password.dart new file mode 100644 index 0000000..9a6d1c0 --- /dev/null +++ b/lib/pages/authentication/screens/password.dart @@ -0,0 +1,65 @@ +import 'package:didvan/pages/authentication/authentication_state.dart'; +import 'package:didvan/pages/authentication/widgets/authentication_app_bar.dart'; +import 'package:didvan/widgets/didvan/button.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/didvan/text_field.dart'; +import 'package:didvan/widgets/logos/didvan_horizontal_logo.dart'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; + +class PasswordInput extends StatelessWidget { + const PasswordInput({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + final AuthenticationState state = context.read(); + return SingleChildScrollView( + padding: const EdgeInsets.symmetric(horizontal: 20), + child: SizedBox( + height: MediaQuery.of(context).size.height, + child: Column( + children: [ + AuthenticationAppBar( + title: 'ورود با شماره موبایل ' + state.phoneNumber, + ), + const Padding( + padding: EdgeInsets.only( + bottom: 44, + top: 34, + left: 100, + right: 100, + ), + child: DidvanVerticalLogo(), + ), + DidvanTextField( + onChanged: (value) => state.password = value, + autoFocus: true, + title: 'کلمه عبور', + hintText: 'کلمه عبور', + obsecureText: true, + ), + const SizedBox( + height: 32, + ), + GestureDetector( + onTap: () => state.currentPageIndex++, + child: DidvanText( + 'فراموشی رمز عبور', + style: Theme.of(context).textTheme.subtitle2, + color: Theme.of(context).primaryColor, + ), + ), + const Spacer(), + DidvanButton( + onPressed: () {}, + title: 'ورود', + ), + const SizedBox( + height: 48, + ), + ], + ), + ), + ); + } +} diff --git a/lib/pages/authentication/screens/phone_number.dart b/lib/pages/authentication/screens/phone_number.dart new file mode 100644 index 0000000..5e848c9 --- /dev/null +++ b/lib/pages/authentication/screens/phone_number.dart @@ -0,0 +1,96 @@ +import 'package:didvan/pages/authentication/authentication_state.dart'; +import 'package:didvan/widgets/didvan/button.dart'; +import 'package:didvan/widgets/didvan/text_field.dart'; +import 'package:didvan/widgets/logos/didvan_horizontal_logo.dart'; +import 'package:flutter/gestures.dart'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; + +class PhoneNumberInput extends StatelessWidget { + const PhoneNumberInput({ + Key? key, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + final AuthenticationState state = context.read(); + return SingleChildScrollView( + physics: const NeverScrollableScrollPhysics(), + padding: const EdgeInsets.all(20), + child: SizedBox( + height: MediaQuery.of(context).size.height, + child: Column( + children: [ + const Padding( + padding: EdgeInsets.only( + top: 80, + left: 100, + right: 100, + bottom: 40, + ), + child: DidvanVerticalLogo(), + ), + DidvanTextField( + title: 'شماره موبایل', + textInputType: TextInputType.phone, + hintText: 'شماره موبایل', + textAlign: TextAlign.center, + onChanged: (value) { + state.phoneNumber = value; + }, + ), + const SizedBox( + height: 20, + ), + DidvanButton( + title: 'ورود', + onPressed: () { + state.currentPageIndex = 1; + }, + ), + const Spacer(), + Padding( + padding: const EdgeInsets.symmetric(horizontal: 60), + child: RichText( + textAlign: TextAlign.center, + text: TextSpan( + style: Theme.of(context).textTheme.caption, + children: [ + const TextSpan(text: 'با ثبت نام و ورود به دیدوان،'), + TextSpan( + text: ' شرایط ', + style: Theme.of(context) + .textTheme + .caption! + .copyWith(color: Theme.of(context).primaryColor), + recognizer: TapGestureRecognizer() + ..onTap = () { + //TODO: Needs implementaion + }, + ), + const TextSpan(text: 'و\n'), + TextSpan( + text: ' قوانین حریم خصوصی ', + style: Theme.of(context) + .textTheme + .caption! + .copyWith(color: Theme.of(context).primaryColor), + recognizer: TapGestureRecognizer() + ..onTap = () { + //TODO: Needs implementaion + }, + ), + const TextSpan(text: 'را می‌پذیرم'), + ], + ), + ), + ), + const SizedBox( + height: 48, + ), + ], + ), + ), + ); + } +} diff --git a/lib/pages/authentication/screens/verification.dart b/lib/pages/authentication/screens/verification.dart new file mode 100644 index 0000000..a60c7f5 --- /dev/null +++ b/lib/pages/authentication/screens/verification.dart @@ -0,0 +1,92 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/pages/authentication/authentication_state.dart'; +import 'package:didvan/pages/authentication/widgets/authentication_app_bar.dart'; +import 'package:didvan/widgets/didvan/button.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/logos/didvan_horizontal_logo.dart'; +import 'package:flutter/material.dart'; +import 'package:pin_code_fields/pin_code_fields.dart'; +import 'package:provider/provider.dart'; + +class Verification extends StatelessWidget { + const Verification({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + final AuthenticationState state = context.read(); + return SingleChildScrollView( + physics: const NeverScrollableScrollPhysics(), + padding: const EdgeInsets.symmetric(horizontal: 20), + child: SizedBox( + height: MediaQuery.of(context).size.height, + child: Column( + children: [ + const AuthenticationAppBar( + title: 'تغییر رمز عبور', + ), + const Padding( + padding: EdgeInsets.only( + bottom: 24, + top: 34, + left: 100, + right: 100, + ), + child: DidvanVerticalLogo(), + ), + DidvanText( + 'کد 6 رقممی ارسال شده به موبایل', + style: Theme.of(context).textTheme.subtitle2, + fontWeight: FontWeight.normal, + ), + const SizedBox( + height: 8, + ), + DidvanText( + state.phoneNumber, + style: Theme.of(context).textTheme.subtitle1, + ), + const SizedBox( + height: 8, + ), + DidvanText( + 'را وارد کنید:', + style: Theme.of(context).textTheme.subtitle2, + fontWeight: FontWeight.normal, + ), + const SizedBox( + height: 24, + ), + Directionality( + textDirection: TextDirection.ltr, + child: PinCodeTextField( + keyboardType: TextInputType.number, + animationType: AnimationType.scale, + pinTheme: PinTheme( + fieldHeight: 48, + fieldWidth: 48, + inactiveColor: DesignConfig.greyColor4, + activeFillColor: Theme.of(context).primaryColorLight, + activeColor: Theme.of(context).primaryColor, + borderRadius: DesignConfig.lowBorderRadius, + borderWidth: 1, + shape: PinCodeFieldShape.box, + ), + appContext: context, + length: 6, + onChanged: (value) => state.verificationCode = value, + ), + ), + const Spacer(), + DidvanButton( + onPressed: () {}, + title: 'تایید', + ), + const SizedBox( + height: 48, + ), + ], + ), + ), + ); + } +} diff --git a/lib/pages/authentication/widgets/authentication_app_bar.dart b/lib/pages/authentication/widgets/authentication_app_bar.dart index 844a8ea..3361f0f 100644 --- a/lib/pages/authentication/widgets/authentication_app_bar.dart +++ b/lib/pages/authentication/widgets/authentication_app_bar.dart @@ -1,3 +1,4 @@ +import 'package:didvan/config/design_config.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; @@ -17,12 +18,18 @@ class AuthenticationAppBar extends StatelessWidget { onTap: () => context.read().currentPageIndex--, child: const Icon( Icons.arrow_back, + color: DesignConfig.darkPrimaryColor2, ), ), const SizedBox( width: 20, ), - if (title != null) DidvanText(title!) + if (title != null) + DidvanText( + title!, + style: Theme.of(context).textTheme.subtitle2, + color: DesignConfig.darkPrimaryColor2, + ) ], ), ); diff --git a/lib/widgets/didvan/text_field.dart b/lib/widgets/didvan/text_field.dart index 732e3c4..02e141e 100644 --- a/lib/widgets/didvan/text_field.dart +++ b/lib/widgets/didvan/text_field.dart @@ -5,6 +5,7 @@ import 'package:flutter/material.dart'; class DidvanTextField extends StatefulWidget { final void Function(String value)? onChanged; final bool enabled; + final bool autoFocus; final TextAlign textAlign; final String? title; final String? hintText; @@ -23,6 +24,7 @@ class DidvanTextField extends StatefulWidget { this.textInputType, this.textAlign = TextAlign.right, this.obsecureText = false, + this.autoFocus = false, }) : super(key: key); @override @@ -63,6 +65,7 @@ class _DidvanTextFieldState extends State { border: Border.all(color: _borderColor()), ), child: TextFormField( + autofocus: widget.autoFocus, obscureText: _hideContent, textAlign: widget.textAlign, keyboardType: widget.textInputType, @@ -71,6 +74,7 @@ class _DidvanTextFieldState extends State { onChanged: _onChanged, validator: _validator, obscuringCharacter: '*', + style: Theme.of(context).textTheme.bodyText1, decoration: InputDecoration( suffixIcon: _suffixBuilder(), enabled: widget.enabled, diff --git a/pubspec.lock b/pubspec.lock index 4b8b781..b3e8f86 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -121,6 +121,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.8.0" + pin_code_fields: + dependency: "direct main" + description: + name: pin_code_fields + url: "https://pub.dartlang.org" + source: hosted + version: "7.3.0" provider: dependency: "direct main" description: diff --git a/pubspec.yaml b/pubspec.yaml index d429595..ecd8d13 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -37,6 +37,7 @@ dependencies: # Use with the CupertinoIcons class for iOS style icons. cupertino_icons: ^1.0.2 provider: ^6.0.1 + pin_code_fields: ^7.3.0 dev_dependencies: flutter_test: From 2de5fd306925e731abfa906a6f14306a860cb1ae Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Fri, 10 Dec 2021 16:58:17 +0330 Subject: [PATCH 014/273] D1APP-21 Logo loading iindicator (basic) --- lib/assets/animations/indicator.riv | Bin 0 -> 7842 bytes lib/constants/assets.dart | 4 +++ lib/utils/actions_sheet.dart | 18 +++++++++++++ pubspec.lock | 40 +++++++++++++++++++++++----- pubspec.yaml | 3 +++ 5 files changed, 59 insertions(+), 6 deletions(-) create mode 100644 lib/assets/animations/indicator.riv create mode 100644 lib/utils/actions_sheet.dart diff --git a/lib/assets/animations/indicator.riv b/lib/assets/animations/indicator.riv new file mode 100644 index 0000000000000000000000000000000000000000..6bc6ab88607f195578474ec0231d83ac462df878 GIT binary patch literal 7842 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 showLogoLoadingIndicator() async { + await showDialog( + context: context, + builder: (context) => Padding( + padding: EdgeInsets.symmetric( + horizontal: MediaQuery.of(context).size.width / 3), + child: const RiveAnimation.asset(Assets.logoLoadingAnimation), + ), + ); + } +} diff --git a/pubspec.lock b/pubspec.lock index b3e8f86..1cace8f 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -7,7 +7,7 @@ packages: name: async url: "https://pub.dartlang.org" source: hosted - version: "2.8.1" + version: "2.8.2" boolean_selector: dependency: transitive description: @@ -21,7 +21,7 @@ packages: name: characters url: "https://pub.dartlang.org" source: hosted - version: "1.1.0" + version: "1.2.0" charcode: dependency: transitive description: @@ -79,6 +79,27 @@ packages: description: flutter source: sdk version: "0.0.0" + graphs: + dependency: transitive + description: + name: graphs + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.0" + http: + dependency: transitive + description: + name: http + url: "https://pub.dartlang.org" + source: hosted + version: "0.13.4" + http_parser: + dependency: transitive + description: + name: http_parser + url: "https://pub.dartlang.org" + source: hosted + version: "4.0.0" intl: dependency: transitive description: @@ -99,7 +120,7 @@ packages: name: matcher url: "https://pub.dartlang.org" source: hosted - version: "0.12.10" + version: "0.12.11" meta: dependency: transitive description: @@ -135,6 +156,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "6.0.1" + rive: + dependency: "direct main" + description: + name: rive + url: "https://pub.dartlang.org" + source: hosted + version: "0.7.33" sky_engine: dependency: transitive description: flutter @@ -181,7 +209,7 @@ packages: name: test_api url: "https://pub.dartlang.org" source: hosted - version: "0.4.2" + version: "0.4.3" typed_data: dependency: transitive description: @@ -195,7 +223,7 @@ packages: name: vector_math url: "https://pub.dartlang.org" source: hosted - version: "2.1.0" + version: "2.1.1" sdks: - dart: ">=2.12.0 <3.0.0" + dart: ">=2.14.0 <3.0.0" flutter: ">=1.16.0" diff --git a/pubspec.yaml b/pubspec.yaml index ecd8d13..fd16ec0 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -38,6 +38,7 @@ dependencies: cupertino_icons: ^1.0.2 provider: ^6.0.1 pin_code_fields: ^7.3.0 + rive: ^0.7.33 dev_dependencies: flutter_test: @@ -65,6 +66,8 @@ flutter: assets: - lib/assets/images/logo/logo-v-t.png - lib/assets/images/logo/logo-h-t.png + - lib/assets/animations/indicator.riv + - lib/assets/animations/full.riv From fc0745abfe8bb0abff3c1c395b630eeff3d57d2f Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Fri, 10 Dec 2021 17:04:08 +0330 Subject: [PATCH 015/273] wrong path deleted on pubspec --- pubspec.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/pubspec.yaml b/pubspec.yaml index fd16ec0..246ef0d 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -67,7 +67,6 @@ flutter: - lib/assets/images/logo/logo-v-t.png - lib/assets/images/logo/logo-h-t.png - lib/assets/animations/indicator.riv - - lib/assets/animations/full.riv From 9b49dc5f1a3d7f04dc39fe0aab8cab68b8aa562d Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 11 Dec 2021 10:32:44 +0330 Subject: [PATCH 016/273] authentication screens layout --- .../authentication/screens/password.dart | 78 ++++------ .../authentication/screens/phone_number.dart | 138 ++++++++---------- .../authentication/screens/verification.dart | 129 +++++++--------- .../widgets/authentication_layout.dart | 45 ++++++ 4 files changed, 191 insertions(+), 199 deletions(-) create mode 100644 lib/pages/authentication/widgets/authentication_layout.dart diff --git a/lib/pages/authentication/screens/password.dart b/lib/pages/authentication/screens/password.dart index 9a6d1c0..de83b7f 100644 --- a/lib/pages/authentication/screens/password.dart +++ b/lib/pages/authentication/screens/password.dart @@ -1,9 +1,8 @@ import 'package:didvan/pages/authentication/authentication_state.dart'; -import 'package:didvan/pages/authentication/widgets/authentication_app_bar.dart'; +import 'package:didvan/pages/authentication/widgets/authentication_layout.dart'; import 'package:didvan/widgets/didvan/button.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/didvan/text_field.dart'; -import 'package:didvan/widgets/logos/didvan_horizontal_logo.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; @@ -13,53 +12,36 @@ class PasswordInput extends StatelessWidget { @override Widget build(BuildContext context) { final AuthenticationState state = context.read(); - return SingleChildScrollView( - padding: const EdgeInsets.symmetric(horizontal: 20), - child: SizedBox( - height: MediaQuery.of(context).size.height, - child: Column( - children: [ - AuthenticationAppBar( - title: 'ورود با شماره موبایل ' + state.phoneNumber, - ), - const Padding( - padding: EdgeInsets.only( - bottom: 44, - top: 34, - left: 100, - right: 100, - ), - child: DidvanVerticalLogo(), - ), - DidvanTextField( - onChanged: (value) => state.password = value, - autoFocus: true, - title: 'کلمه عبور', - hintText: 'کلمه عبور', - obsecureText: true, - ), - const SizedBox( - height: 32, - ), - GestureDetector( - onTap: () => state.currentPageIndex++, - child: DidvanText( - 'فراموشی رمز عبور', - style: Theme.of(context).textTheme.subtitle2, - color: Theme.of(context).primaryColor, - ), - ), - const Spacer(), - DidvanButton( - onPressed: () {}, - title: 'ورود', - ), - const SizedBox( - height: 48, - ), - ], + return AuthenticationLayout( + appBarTitle: 'ورود با شماره موبایل ' + state.phoneNumber, + children: [ + DidvanTextField( + onChanged: (value) => state.password = value, + autoFocus: true, + title: 'کلمه عبور', + hintText: 'کلمه عبور', + obsecureText: true, ), - ), + const SizedBox( + height: 32, + ), + GestureDetector( + onTap: () => state.currentPageIndex++, + child: DidvanText( + 'فراموشی رمز عبور', + style: Theme.of(context).textTheme.subtitle2, + color: Theme.of(context).primaryColor, + ), + ), + const Spacer(), + DidvanButton( + onPressed: () {}, + title: 'ورود', + ), + const SizedBox( + height: 48, + ), + ], ); } } diff --git a/lib/pages/authentication/screens/phone_number.dart b/lib/pages/authentication/screens/phone_number.dart index 5e848c9..fdff2cc 100644 --- a/lib/pages/authentication/screens/phone_number.dart +++ b/lib/pages/authentication/screens/phone_number.dart @@ -1,7 +1,7 @@ import 'package:didvan/pages/authentication/authentication_state.dart'; +import 'package:didvan/pages/authentication/widgets/authentication_layout.dart'; import 'package:didvan/widgets/didvan/button.dart'; import 'package:didvan/widgets/didvan/text_field.dart'; -import 'package:didvan/widgets/logos/didvan_horizontal_logo.dart'; import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; @@ -14,83 +14,67 @@ class PhoneNumberInput extends StatelessWidget { @override Widget build(BuildContext context) { final AuthenticationState state = context.read(); - return SingleChildScrollView( - physics: const NeverScrollableScrollPhysics(), - padding: const EdgeInsets.all(20), - child: SizedBox( - height: MediaQuery.of(context).size.height, - child: Column( - children: [ - const Padding( - padding: EdgeInsets.only( - top: 80, - left: 100, - right: 100, - bottom: 40, - ), - child: DidvanVerticalLogo(), - ), - DidvanTextField( - title: 'شماره موبایل', - textInputType: TextInputType.phone, - hintText: 'شماره موبایل', - textAlign: TextAlign.center, - onChanged: (value) { - state.phoneNumber = value; - }, - ), - const SizedBox( - height: 20, - ), - DidvanButton( - title: 'ورود', - onPressed: () { - state.currentPageIndex = 1; - }, - ), - const Spacer(), - Padding( - padding: const EdgeInsets.symmetric(horizontal: 60), - child: RichText( - textAlign: TextAlign.center, - text: TextSpan( - style: Theme.of(context).textTheme.caption, - children: [ - const TextSpan(text: 'با ثبت نام و ورود به دیدوان،'), - TextSpan( - text: ' شرایط ', - style: Theme.of(context) - .textTheme - .caption! - .copyWith(color: Theme.of(context).primaryColor), - recognizer: TapGestureRecognizer() - ..onTap = () { - //TODO: Needs implementaion - }, - ), - const TextSpan(text: 'و\n'), - TextSpan( - text: ' قوانین حریم خصوصی ', - style: Theme.of(context) - .textTheme - .caption! - .copyWith(color: Theme.of(context).primaryColor), - recognizer: TapGestureRecognizer() - ..onTap = () { - //TODO: Needs implementaion - }, - ), - const TextSpan(text: 'را می‌پذیرم'), - ], - ), - ), - ), - const SizedBox( - height: 48, - ), - ], + return AuthenticationLayout( + children: [ + DidvanTextField( + title: 'شماره موبایل', + textInputType: TextInputType.phone, + hintText: 'شماره موبایل', + textAlign: TextAlign.center, + onChanged: (value) { + state.phoneNumber = value; + }, ), - ), + const SizedBox( + height: 20, + ), + DidvanButton( + title: 'ورود', + onPressed: () { + state.currentPageIndex = 1; + }, + ), + const Spacer(), + Padding( + padding: const EdgeInsets.symmetric(horizontal: 60), + child: RichText( + textAlign: TextAlign.center, + text: TextSpan( + style: Theme.of(context).textTheme.caption, + children: [ + const TextSpan(text: 'با ثبت نام و ورود به دیدوان،'), + TextSpan( + text: ' شرایط ', + style: Theme.of(context) + .textTheme + .caption! + .copyWith(color: Theme.of(context).primaryColor), + recognizer: TapGestureRecognizer() + ..onTap = () { + //TODO: Needs implementaion + }, + ), + const TextSpan(text: 'و\n'), + TextSpan( + text: ' قوانین حریم خصوصی ', + style: Theme.of(context) + .textTheme + .caption! + .copyWith(color: Theme.of(context).primaryColor), + recognizer: TapGestureRecognizer() + ..onTap = () { + //TODO: Needs implementaion + }, + ), + const TextSpan(text: 'را می‌پذیرم'), + ], + ), + ), + ), + const SizedBox( + height: 48, + ), + ], ); } } diff --git a/lib/pages/authentication/screens/verification.dart b/lib/pages/authentication/screens/verification.dart index a60c7f5..5c0d560 100644 --- a/lib/pages/authentication/screens/verification.dart +++ b/lib/pages/authentication/screens/verification.dart @@ -1,9 +1,8 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; -import 'package:didvan/pages/authentication/widgets/authentication_app_bar.dart'; +import 'package:didvan/pages/authentication/widgets/authentication_layout.dart'; import 'package:didvan/widgets/didvan/button.dart'; import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/logos/didvan_horizontal_logo.dart'; import 'package:flutter/material.dart'; import 'package:pin_code_fields/pin_code_fields.dart'; import 'package:provider/provider.dart'; @@ -14,79 +13,61 @@ class Verification extends StatelessWidget { @override Widget build(BuildContext context) { final AuthenticationState state = context.read(); - return SingleChildScrollView( - physics: const NeverScrollableScrollPhysics(), - padding: const EdgeInsets.symmetric(horizontal: 20), - child: SizedBox( - height: MediaQuery.of(context).size.height, - child: Column( - children: [ - const AuthenticationAppBar( - title: 'تغییر رمز عبور', - ), - const Padding( - padding: EdgeInsets.only( - bottom: 24, - top: 34, - left: 100, - right: 100, - ), - child: DidvanVerticalLogo(), - ), - DidvanText( - 'کد 6 رقممی ارسال شده به موبایل', - style: Theme.of(context).textTheme.subtitle2, - fontWeight: FontWeight.normal, - ), - const SizedBox( - height: 8, - ), - DidvanText( - state.phoneNumber, - style: Theme.of(context).textTheme.subtitle1, - ), - const SizedBox( - height: 8, - ), - DidvanText( - 'را وارد کنید:', - style: Theme.of(context).textTheme.subtitle2, - fontWeight: FontWeight.normal, - ), - const SizedBox( - height: 24, - ), - Directionality( - textDirection: TextDirection.ltr, - child: PinCodeTextField( - keyboardType: TextInputType.number, - animationType: AnimationType.scale, - pinTheme: PinTheme( - fieldHeight: 48, - fieldWidth: 48, - inactiveColor: DesignConfig.greyColor4, - activeFillColor: Theme.of(context).primaryColorLight, - activeColor: Theme.of(context).primaryColor, - borderRadius: DesignConfig.lowBorderRadius, - borderWidth: 1, - shape: PinCodeFieldShape.box, - ), - appContext: context, - length: 6, - onChanged: (value) => state.verificationCode = value, - ), - ), - const Spacer(), - DidvanButton( - onPressed: () {}, - title: 'تایید', - ), - const SizedBox( - height: 48, - ), - ], + return AuthenticationLayout( + appBarTitle: 'تغییر رمز عبور', + children: [ + DidvanText( + 'کد 6 رقممی ارسال شده به موبایل', + style: Theme.of(context).textTheme.subtitle2, + fontWeight: FontWeight.normal, ), - ), + const SizedBox( + height: 8, + ), + DidvanText( + state.phoneNumber, + style: Theme.of(context).textTheme.subtitle1, + ), + const SizedBox( + height: 8, + ), + DidvanText( + 'را وارد کنید:', + style: Theme.of(context).textTheme.subtitle2, + fontWeight: FontWeight.normal, + ), + const SizedBox( + height: 24, + ), + Directionality( + textDirection: TextDirection.ltr, + child: PinCodeTextField( + keyboardType: TextInputType.number, + animationType: AnimationType.scale, + pinTheme: PinTheme( + fieldHeight: 48, + fieldWidth: 48, + inactiveColor: DesignConfig.greyColor4, + activeFillColor: Theme.of(context).primaryColorLight, + activeColor: Theme.of(context).primaryColor, + borderRadius: DesignConfig.lowBorderRadius, + borderWidth: 1, + shape: PinCodeFieldShape.box, + ), + appContext: context, + length: 6, + onChanged: (value) => state.verificationCode = value, + ), + ), + const Spacer(), + DidvanButton( + onPressed: () {}, + title: 'تایید', + ), + const SizedBox( + height: 48, + ), + ], ); } } diff --git a/lib/pages/authentication/widgets/authentication_layout.dart b/lib/pages/authentication/widgets/authentication_layout.dart new file mode 100644 index 0000000..2b178e5 --- /dev/null +++ b/lib/pages/authentication/widgets/authentication_layout.dart @@ -0,0 +1,45 @@ +import 'package:didvan/pages/authentication/widgets/authentication_app_bar.dart'; +import 'package:didvan/widgets/logos/didvan_horizontal_logo.dart'; +import 'package:flutter/material.dart'; + +class AuthenticationLayout extends StatelessWidget { + final List children; + final String? appBarTitle; + + const AuthenticationLayout( + {Key? key, required this.children, this.appBarTitle}) + : super(key: key); + + @override + Widget build(BuildContext context) { + return SingleChildScrollView( + padding: const EdgeInsets.symmetric(horizontal: 20), + physics: const NeverScrollableScrollPhysics(), + child: SizedBox( + height: MediaQuery.of(context).size.height, + child: Column( + children: [ + if (appBarTitle != null) + AuthenticationAppBar( + title: appBarTitle, + ), + if (appBarTitle == null) + const SizedBox( + height: 66, + ), + const Padding( + padding: EdgeInsets.only( + top: 44, + left: 100, + right: 100, + bottom: 40, + ), + child: DidvanVerticalLogo(), + ), + ...children, + ], + ), + ), + ); + } +} From c464daf4108de53e26b33ec618e9a9c6e40731f3 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 11 Dec 2021 10:41:35 +0330 Subject: [PATCH 017/273] D1APP-14 authentication (reset password) --- lib/pages/authentication/authentication.dart | 2 + .../screens/reset_password.dart | 39 +++++++++++++++++++ .../authentication/screens/verification.dart | 4 +- 3 files changed, 44 insertions(+), 1 deletion(-) create mode 100644 lib/pages/authentication/screens/reset_password.dart diff --git a/lib/pages/authentication/authentication.dart b/lib/pages/authentication/authentication.dart index c18eeb0..f4a94e2 100644 --- a/lib/pages/authentication/authentication.dart +++ b/lib/pages/authentication/authentication.dart @@ -2,6 +2,7 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; import 'package:didvan/pages/authentication/screens/password.dart'; import 'package:didvan/pages/authentication/screens/phone_number.dart'; +import 'package:didvan/pages/authentication/screens/reset_password.dart'; import 'package:didvan/pages/authentication/screens/verification.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; @@ -18,6 +19,7 @@ class _AuthenticationState extends State { PhoneNumberInput(), PasswordInput(), Verification(), + ResetPassword(), ]; @override diff --git a/lib/pages/authentication/screens/reset_password.dart b/lib/pages/authentication/screens/reset_password.dart new file mode 100644 index 0000000..328265b --- /dev/null +++ b/lib/pages/authentication/screens/reset_password.dart @@ -0,0 +1,39 @@ +import 'package:didvan/pages/authentication/widgets/authentication_layout.dart'; +import 'package:didvan/widgets/didvan/button.dart'; +import 'package:didvan/widgets/didvan/text_field.dart'; +import 'package:flutter/material.dart'; + +class ResetPassword extends StatelessWidget { + const ResetPassword({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return AuthenticationLayout( + children: [ + DidvanTextField( + title: 'کلمه عبور جدید', + onChanged: (value) {}, + hintText: 'کلمه عبور جدید', + obsecureText: true, + ), + const SizedBox( + height: 16, + ), + DidvanTextField( + title: 'کلمه عبور جدید', + onChanged: (value) {}, + hintText: 'کلمه عبور جدید', + obsecureText: true, + ), + const Spacer(), + DidvanButton( + onPressed: () {}, + title: 'تغییر رمز عبور', + ), + const SizedBox( + height: 48, + ), + ], + ); + } +} diff --git a/lib/pages/authentication/screens/verification.dart b/lib/pages/authentication/screens/verification.dart index 5c0d560..3dd17b8 100644 --- a/lib/pages/authentication/screens/verification.dart +++ b/lib/pages/authentication/screens/verification.dart @@ -61,7 +61,9 @@ class Verification extends StatelessWidget { ), const Spacer(), DidvanButton( - onPressed: () {}, + onPressed: () { + state.currentPageIndex++; + }, title: 'تایید', ), const SizedBox( From 5edc7f825f0d29839729a0701fe89a1bab47472f Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 11 Dec 2021 10:58:47 +0330 Subject: [PATCH 018/273] D1APP-23 icon pack added --- lib/assets/icons/Dicon.ttf | Bin 0 -> 50504 bytes lib/config/design_config.dart | 2 +- lib/constants/app_icons.dart | 434 ++++++++++++++++++++++++++++++++++ pubspec.yaml | 7 +- 4 files changed, 440 insertions(+), 3 deletions(-) create mode 100644 lib/assets/icons/Dicon.ttf create mode 100644 lib/constants/app_icons.dart diff --git a/lib/assets/icons/Dicon.ttf b/lib/assets/icons/Dicon.ttf new file mode 100644 index 0000000000000000000000000000000000000000..b1795c52bdae2634907384eb6b81f8d1344bc6f5 GIT binary patch literal 50504 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 Date: Sun, 12 Dec 2021 15:41:04 +0330 Subject: [PATCH 019/273] D1APP-24 home page (static) --- lib/assets/images/categories/business.png | Bin 0 -> 7836 bytes lib/assets/images/categories/economic.png | Bin 0 -> 6727 bytes lib/assets/images/categories/enviromental.png | Bin 0 -> 4860 bytes lib/assets/images/categories/political.png | Bin 0 -> 5414 bytes lib/assets/images/categories/social.png | Bin 0 -> 7312 bytes lib/assets/images/categories/tech.png | Bin 0 -> 4720 bytes .../images/{logo => logos}/logo-h-t.png | Bin .../images/{logo => logos}/logo-v-t.png | Bin lib/config/design_config.dart | 21 +++- lib/constants/assets.dart | 15 ++- lib/models/radar_category.dart | 7 ++ lib/pages/authentication/authentication.dart | 2 +- lib/pages/home/home.dart | 99 ++++++++++++++++++ lib/pages/home/home_state.dart | 38 +++++++ lib/pages/home/widgets/categories_gird.dart | 76 ++++++++++++++ lib/pages/home/widgets/categories_list.dart | 76 ++++++++++++++ lib/pages/home/widgets/category_item.dart | 61 +++++++++++ lib/pages/home/widgets/search_field.dart | 47 +++++++++ lib/pages/splash/splash.dart | 2 +- lib/routes/route_generator.dart | 13 ++- lib/widgets/animated_visibility.dart | 90 ++++++++++++++++ lib/widgets/didvan/text.dart | 3 + lib/widgets/didvan/text_field.dart | 4 +- lib/widgets/ink_wrapper.dart | 38 +++++++ lib/widgets/logos/didvan_vertical_logo.dart | 11 ++ pubspec.yaml | 11 +- 26 files changed, 604 insertions(+), 10 deletions(-) create mode 100644 lib/assets/images/categories/business.png create mode 100644 lib/assets/images/categories/economic.png create mode 100644 lib/assets/images/categories/enviromental.png create mode 100644 lib/assets/images/categories/political.png create mode 100644 lib/assets/images/categories/social.png create mode 100644 lib/assets/images/categories/tech.png rename lib/assets/images/{logo => logos}/logo-h-t.png (100%) rename lib/assets/images/{logo => logos}/logo-v-t.png (100%) create mode 100644 lib/models/radar_category.dart create mode 100644 lib/pages/home/home.dart create mode 100644 lib/pages/home/home_state.dart create mode 100644 lib/pages/home/widgets/categories_gird.dart create mode 100644 lib/pages/home/widgets/categories_list.dart create mode 100644 lib/pages/home/widgets/category_item.dart create mode 100644 lib/pages/home/widgets/search_field.dart create mode 100644 lib/widgets/animated_visibility.dart create mode 100644 lib/widgets/ink_wrapper.dart diff --git a/lib/assets/images/categories/business.png b/lib/assets/images/categories/business.png new file mode 100644 index 0000000000000000000000000000000000000000..0470a949a66364c49727f37b6d6b09cbf0e92255 GIT binary patch literal 7836 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 literal 0 HcmV?d00001 diff --git a/lib/assets/images/categories/enviromental.png b/lib/assets/images/categories/enviromental.png new file mode 100644 index 0000000000000000000000000000000000000000..f56f648343fb7bc8fcf798a274e8fbb2a52593fe GIT binary patch literal 4860 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

L-Z%HVkX3WW`?NeuAjL8avoS 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 defaultShadow = [ + BoxShadow( + color: const Color(0XFF4D4D4D).withOpacity(0.25), + offset: const Offset(0, 4), + blurRadius: 8, + spreadRadius: 0, + ) + ]; - static const Duration defaultAppDuration = Duration(milliseconds: 400); + static const Duration defaultAnimationDuration = Duration(milliseconds: 600); static final SystemUiOverlayStyle systemUIOverlayStyle = SystemUiOverlayStyle( statusBarBrightness: Brightness.dark, diff --git a/lib/constants/assets.dart b/lib/constants/assets.dart index 029a236..59af3fe 100644 --- a/lib/constants/assets.dart +++ b/lib/constants/assets.dart @@ -4,10 +4,21 @@ class Assets { static const String _baseAnimationsPath = _basePath + '/animations'; static const String verticalLogoWithText = - _baseImagesPath + '/logo/logo-v-t.png'; + _baseImagesPath + '/logos/logo-v-t.png'; static const String horizontalLogoWithText = - _baseImagesPath + '/logo/logo-h-t.png'; + _baseImagesPath + '/logos/logo-h-t.png'; static const String logoLoadingAnimation = _baseAnimationsPath + '/indicator.riv'; + + static const businessCategoryIcon = + _baseImagesPath + '/categories/business.png'; + static const economicCategoryIcon = + _baseImagesPath + '/categories/economic.png'; + static const enviromentalCategoryIcon = + _baseImagesPath + '/categories/enviromental.png'; + static const politicalCategoryIcon = + _baseImagesPath + '/categories/political.png'; + static const socialCategoryIcon = _baseImagesPath + '/categories/social.png'; + static const techCategoryIcon = _baseImagesPath + '/categories/tech.png'; } diff --git a/lib/models/radar_category.dart b/lib/models/radar_category.dart new file mode 100644 index 0000000..4312d46 --- /dev/null +++ b/lib/models/radar_category.dart @@ -0,0 +1,7 @@ +class RadarCategory { + final int id; + final String title; + final String asset; + + RadarCategory({required this.id, required this.title, required this.asset}); +} diff --git a/lib/pages/authentication/authentication.dart b/lib/pages/authentication/authentication.dart index f4a94e2..ade5c92 100644 --- a/lib/pages/authentication/authentication.dart +++ b/lib/pages/authentication/authentication.dart @@ -27,7 +27,7 @@ class _AuthenticationState extends State { return Scaffold( body: Consumer( builder: (context, state, child) => AnimatedSwitcher( - duration: DesignConfig.defaultAppDuration, + duration: DesignConfig.defaultAnimationDuration, child: _pages[state.currentPageIndex], ), ), diff --git a/lib/pages/home/home.dart b/lib/pages/home/home.dart new file mode 100644 index 0000000..1baa948 --- /dev/null +++ b/lib/pages/home/home.dart @@ -0,0 +1,99 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/pages/home/widgets/categories_gird.dart'; +import 'package:didvan/pages/home/widgets/categories_list.dart'; +import 'package:didvan/pages/home/widgets/search_field.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/logos/didvan_vertical_logo.dart'; +import 'package:flutter/material.dart'; + +class Home extends StatefulWidget { + const Home({Key? key}) : super(key: key); + + @override + State createState() => _HomeState(); +} + +class _HomeState extends State { + final ScrollController _scrollController = ScrollController(); + + bool _isColapsed = false; + bool _isAnimating = false; + + @override + void initState() { + _scrollController.addListener(() async { + if (_isAnimating) return; + final double position = _scrollController.position.pixels; + if (position > 5 && !_isColapsed) { + _isColapsed = true; + setState(() {}); + _isAnimating = true; + await _scrollController.animateTo( + 380, + duration: DesignConfig.defaultAnimationDuration, + curve: Curves.ease, + ); + _isAnimating = false; + } else if (position < 380 && _isColapsed) { + _isColapsed = false; + setState(() {}); + _isAnimating = true; + await _scrollController.animateTo( + 0, + duration: DesignConfig.defaultAnimationDuration, + curve: Curves.ease, + ); + _isAnimating = false; + } + }); + super.initState(); + } + + @override + Widget build(BuildContext context) { + final d = MediaQuery.of(context); + return Scaffold( + body: Stack( + children: [ + CustomScrollView( + controller: _scrollController, + physics: const BouncingScrollPhysics(), + slivers: [ + SliverPadding( + padding: const EdgeInsets.all( + 20, + ).copyWith(top: d.padding.top + 20), + sliver: SliverToBoxAdapter( + child: Container( + alignment: Alignment.centerRight, + height: 76, + child: const DidvanHorizontalLogo(), + ), + ), + ), + const SliverPadding( + padding: EdgeInsets.symmetric(horizontal: 16), + sliver: SliverToBoxAdapter( + child: SearchField(), + ), + ), + SliverPadding( + padding: const EdgeInsets.only(top: 300, right: 16, bottom: 20), + sliver: SliverToBoxAdapter( + child: DidvanText( + 'آخرین رصد', + style: Theme.of(context).textTheme.subtitle1, + color: DesignConfig.darkPrimaryColor2, + ), + ), + ), + ], + ), + CategoriesRow1(isColapsed: _isColapsed), + CategoriesRow2(isColapsed: _isColapsed), + CategoriesList(isColapsed: _isColapsed), + ], + ), + ); + } +} diff --git a/lib/pages/home/home_state.dart b/lib/pages/home/home_state.dart new file mode 100644 index 0000000..95c5840 --- /dev/null +++ b/lib/pages/home/home_state.dart @@ -0,0 +1,38 @@ +import 'package:didvan/constants/assets.dart'; +import 'package:didvan/models/radar_category.dart'; +import 'package:didvan/providers/core_provider.dart'; + +class HomeState extends CoreProvier { + final List categories = [ + RadarCategory( + id: 1, + title: 'افتصادی', + asset: Assets.economicCategoryIcon, + ), + RadarCategory( + id: 2, + title: 'سیاسی', + asset: Assets.politicalCategoryIcon, + ), + RadarCategory( + id: 3, + title: 'فناوری', + asset: Assets.techCategoryIcon, + ), + RadarCategory( + id: 4, + title: 'کسب و کار', + asset: Assets.businessCategoryIcon, + ), + RadarCategory( + id: 5, + title: 'زیست محیطی', + asset: Assets.enviromentalCategoryIcon, + ), + RadarCategory( + id: 6, + title: 'اجتماعی', + asset: Assets.socialCategoryIcon, + ), + ]; +} diff --git a/lib/pages/home/widgets/categories_gird.dart b/lib/pages/home/widgets/categories_gird.dart new file mode 100644 index 0000000..fe7ae1b --- /dev/null +++ b/lib/pages/home/widgets/categories_gird.dart @@ -0,0 +1,76 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/pages/home/home_state.dart'; +import 'package:didvan/pages/home/widgets/category_item.dart'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; + +class CategoriesRow1 extends StatelessWidget { + final bool isColapsed; + const CategoriesRow1({Key? key, required this.isColapsed}) : super(key: key); + + @override + Widget build(BuildContext context) { + final MediaQueryData d = MediaQuery.of(context); + return AnimatedPositioned( + duration: DesignConfig.defaultAnimationDuration, + top: isColapsed ? 12 : 176 + d.padding.top, + left: isColapsed ? -d.size.width : 0, + right: isColapsed ? d.size.width : 0, + child: Row( + children: context + .read() + .categories + .sublist(0, 3) + .map( + (category) => Expanded( + child: Padding( + padding: const EdgeInsets.symmetric(horizontal: 6), + child: CategoryItem( + title: category.title, + asset: category.asset, + isColapsed: isColapsed, + ), + ), + ), + ) + .toList(), + ), + ); + } +} + +class CategoriesRow2 extends StatelessWidget { + const CategoriesRow2({ + Key? key, + required this.isColapsed, + }) : super(key: key); + + final bool isColapsed; + + @override + Widget build(BuildContext context) { + final MediaQueryData d = MediaQuery.of(context); + return AnimatedPositioned( + duration: DesignConfig.defaultAnimationDuration, + top: isColapsed ? -60 : 300 + d.padding.top, + left: isColapsed ? -80 : 0, + right: isColapsed ? 124 : 0, + child: Row( + children: context + .read() + .categories + .sublist(3, 6) + .map( + (category) => Expanded( + child: CategoryItem( + title: category.title, + asset: category.asset, + isColapsed: isColapsed, + ), + ), + ) + .toList(), + ), + ); + } +} diff --git a/lib/pages/home/widgets/categories_list.dart b/lib/pages/home/widgets/categories_list.dart new file mode 100644 index 0000000..b57ddc3 --- /dev/null +++ b/lib/pages/home/widgets/categories_list.dart @@ -0,0 +1,76 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/models/radar_category.dart'; +import 'package:didvan/pages/home/home_state.dart'; +import 'package:didvan/widgets/animated_visibility.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; + +class CategoriesList extends StatelessWidget { + final bool isColapsed; + const CategoriesList({Key? key, required this.isColapsed}) : super(key: key); + + @override + Widget build(BuildContext context) { + final MediaQueryData d = MediaQuery.of(context); + final HomeState state = context.read(); + final List categories = []; + categories.addAll(state.categories.sublist(3, 6)); + categories.addAll(state.categories.sublist(0, 3)); + return Positioned( + top: 0, + left: 0, + right: 0, + child: AnimatedCrossFade( + crossFadeState: + isColapsed ? CrossFadeState.showSecond : CrossFadeState.showFirst, + duration: DesignConfig.defaultAnimationDuration, + firstChild: const SizedBox(), + secondChild: Container( + height: 60 + d.padding.top, + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.surface, + boxShadow: DesignConfig.defaultShadow, + ), + child: SingleChildScrollView( + physics: const BouncingScrollPhysics(), + scrollDirection: Axis.horizontal, + padding: EdgeInsets.only( + top: d.padding.top + 12, + bottom: 12, + right: 12, + ), + child: Row( + children: [ + AnimatedVisibility( + isVisible: isColapsed, + duration: DesignConfig.defaultAnimationDuration, + child: _itemBuilder( + RadarCategory(title: 'همه', asset: '', id: 0), + ), + ), + for (var category in categories) _itemBuilder(category), + ], + ), + ), + ), + ), + ); + } + + Widget _itemBuilder(RadarCategory category) { + return Container( + margin: const EdgeInsets.only(left: 12), + width: 100, + padding: const EdgeInsets.all(4), + alignment: Alignment.center, + child: DidvanText(category.title), + decoration: BoxDecoration( + border: Border.all( + color: DesignConfig.darkPrimaryColor2, + ), + borderRadius: DesignConfig.lowBorderRadius, + ), + ); + } +} diff --git a/lib/pages/home/widgets/category_item.dart b/lib/pages/home/widgets/category_item.dart new file mode 100644 index 0000000..48560ae --- /dev/null +++ b/lib/pages/home/widgets/category_item.dart @@ -0,0 +1,61 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/widgets/animated_visibility.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; + +class CategoryItem extends StatelessWidget { + final String title; + final String asset; + final bool isColapsed; + + const CategoryItem({ + Key? key, + required this.title, + required this.asset, + required this.isColapsed, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + final Size ds = MediaQuery.of(context).size; + return Center( + child: AnimatedContainer( + duration: DesignConfig.defaultAnimationDuration, + padding: isColapsed ? const EdgeInsets.all(4) : EdgeInsets.zero, + width: isColapsed ? 100 : ds.width / 3, + alignment: Alignment.center, + decoration: BoxDecoration( + borderRadius: DesignConfig.lowBorderRadius, + border: isColapsed + ? Border.all(color: DesignConfig.darkPrimaryColor2) + : null, + ), + child: Column( + children: [ + AnimatedVisibility( + duration: DesignConfig.defaultAnimationDuration, + isVisible: !isColapsed, + child: Container( + width: ds.width / 5, + height: ds.width / 5, + decoration: DesignConfig.actionCardDecoration, + padding: const EdgeInsets.all(8), + child: Image.asset( + asset, + ), + ), + ), + const SizedBox( + height: 8, + ), + DidvanText( + title, + style: Theme.of(context).textTheme.subtitle2, + color: DesignConfig.darkPrimaryColor2, + ), + ], + ), + ), + ); + } +} diff --git a/lib/pages/home/widgets/search_field.dart b/lib/pages/home/widgets/search_field.dart new file mode 100644 index 0000000..f68d931 --- /dev/null +++ b/lib/pages/home/widgets/search_field.dart @@ -0,0 +1,47 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:flutter/material.dart'; + +class SearchField extends StatelessWidget { + const SearchField({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Container( + height: 40, + width: double.infinity, + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.surface, + ), + child: Row( + children: [ + const Icon( + DidvanIcons.search_regular, + ), + Expanded( + child: TextField( + style: Theme.of(context).textTheme.bodyText1, + textAlignVertical: TextAlignVertical.top, + onChanged: (value) {}, + keyboardType: TextInputType.text, + textInputAction: TextInputAction.search, + decoration: InputDecoration( + contentPadding: const EdgeInsets.only( + left: 12, + right: 12, + bottom: 8, + ), + border: InputBorder.none, + hintText: 'جستجو مطلب در رادار', + hintStyle: Theme.of(context) + .textTheme + .subtitle2! + .copyWith(color: DesignConfig.greyColor5), + ), + ), + ), + ], + ), + ); + } +} diff --git a/lib/pages/splash/splash.dart b/lib/pages/splash/splash.dart index da8d1aa..74195cc 100644 --- a/lib/pages/splash/splash.dart +++ b/lib/pages/splash/splash.dart @@ -16,7 +16,7 @@ class _SplashState extends State { Future.delayed( const Duration(seconds: 2), () => Navigator.of(context).pushReplacementNamed( - Routes.authenticaion, + Routes.home, ), ); super.initState(); diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index f55e042..2b5479f 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -1,5 +1,7 @@ import 'package:didvan/pages/authentication/authentication.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; +import 'package:didvan/pages/home/home.dart'; +import 'package:didvan/pages/home/home_state.dart'; import 'package:didvan/pages/splash/splash.dart'; import 'package:didvan/pages/splash/splash_state.dart'; import 'package:didvan/routes/routes.dart'; @@ -11,18 +13,25 @@ class RouteGenerator { switch (settings.name) { case Routes.splash: return _materialPageRouteGenerator( - ChangeNotifierProvider( + ChangeNotifierProvider( create: (context) => SplashState(), child: const Splash(), ), ); case Routes.authenticaion: return _materialPageRouteGenerator( - ChangeNotifierProvider( + ChangeNotifierProvider( create: (context) => AuthenticationState(), child: const Authentication(), ), ); + case Routes.home: + return _materialPageRouteGenerator( + ChangeNotifierProvider( + create: (context) => HomeState(), + child: const Home(), + ), + ); default: return _errorRoute(); } diff --git a/lib/widgets/animated_visibility.dart b/lib/widgets/animated_visibility.dart new file mode 100644 index 0000000..a6f3c12 --- /dev/null +++ b/lib/widgets/animated_visibility.dart @@ -0,0 +1,90 @@ +library animated_visibility; + +import 'package:flutter/material.dart'; + +enum FadeMode { + vertical, + horizontal, + both, +} + +class AnimatedVisibility extends StatefulWidget { + final bool isVisible; + final Duration duration; + final Widget child; + final Curve curve; + final FadeMode fadeMode; + + const AnimatedVisibility({ + Key? key, + required this.isVisible, + required this.duration, + required this.child, + this.fadeMode = FadeMode.both, + this.curve = Curves.easeIn, + }) : super(key: key); + + @override + _AnimatedVisibilityState createState() => _AnimatedVisibilityState(); +} + +class _AnimatedVisibilityState extends State + with SingleTickerProviderStateMixin { + late final AnimationController _sizeController; + late final Animation _animation; + + @override + void initState() { + super.initState(); + _setupAnimation(); + _runSizeCheck(); + } + + void _setupAnimation() { + _sizeController = + AnimationController(vsync: this, duration: widget.duration); + _animation = CurvedAnimation( + parent: _sizeController, + curve: widget.curve, + ); + } + + @override + void didUpdateWidget(covariant AnimatedVisibility oldWidget) { + _runSizeCheck(); + super.didUpdateWidget(oldWidget); + } + + void _runSizeCheck() { + if (widget.isVisible) { + _sizeController.forward(); + } else { + _sizeController.reverse(); + } + } + + @override + void dispose() { + _sizeController.dispose(); + super.dispose(); + } + + bool get _isVertical => + widget.fadeMode == FadeMode.vertical || widget.fadeMode == FadeMode.both; + bool get _isHorizontal => + widget.fadeMode == FadeMode.horizontal || + widget.fadeMode == FadeMode.both; + + @override + Widget build(BuildContext context) { + return AnimatedBuilder( + animation: _animation, + child: widget.child, + builder: (context, child) => Align( + heightFactor: _isVertical ? _animation.value : null, + widthFactor: _isHorizontal ? _animation.value : null, + child: Opacity(opacity: _animation.value, child: child), + ), + ); + } +} diff --git a/lib/widgets/didvan/text.dart b/lib/widgets/didvan/text.dart index 0b05d6e..2192f4d 100644 --- a/lib/widgets/didvan/text.dart +++ b/lib/widgets/didvan/text.dart @@ -7,6 +7,7 @@ class DidvanText extends StatelessWidget { final Color? color; final FontWeight? fontWeight; final double? fontSize; + final TextAlign textAlign; const DidvanText( this.text, { @@ -15,6 +16,7 @@ class DidvanText extends StatelessWidget { this.color, this.fontSize, this.fontWeight, + this.textAlign = TextAlign.right, }) : super(key: key); @override @@ -26,6 +28,7 @@ class DidvanText extends StatelessWidget { fontWeight: fontWeight, fontSize: fontSize, ), + textAlign: textAlign, ); } } diff --git a/lib/widgets/didvan/text_field.dart b/lib/widgets/didvan/text_field.dart index 02e141e..9580aac 100644 --- a/lib/widgets/didvan/text_field.dart +++ b/lib/widgets/didvan/text_field.dart @@ -133,5 +133,7 @@ class _DidvanTextFieldState extends State { } } - String? _validator(String? value) {} + String? _validator(String? value) { + _hasError = false; + } } diff --git a/lib/widgets/ink_wrapper.dart b/lib/widgets/ink_wrapper.dart new file mode 100644 index 0000000..547709d --- /dev/null +++ b/lib/widgets/ink_wrapper.dart @@ -0,0 +1,38 @@ +import 'package:flutter/material.dart'; + +class InkWrapper extends StatelessWidget { + final Color? splashColor; + final Color? highlightColor; + final Widget child; + final VoidCallback? onPressed; + final BorderRadius? borderRadius; + + const InkWrapper({ + Key? key, + this.splashColor, + this.highlightColor, + required this.child, + this.onPressed, + this.borderRadius, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return Stack( + children: [ + child, + Positioned.fill( + child: Material( + color: Colors.transparent, + child: InkWell( + borderRadius: borderRadius, + splashColor: splashColor, + highlightColor: highlightColor, + onTap: onPressed, + ), + ), + ), + ], + ); + } +} diff --git a/lib/widgets/logos/didvan_vertical_logo.dart b/lib/widgets/logos/didvan_vertical_logo.dart index e69de29..19e640e 100644 --- a/lib/widgets/logos/didvan_vertical_logo.dart +++ b/lib/widgets/logos/didvan_vertical_logo.dart @@ -0,0 +1,11 @@ +import 'package:didvan/constants/assets.dart'; +import 'package:flutter/material.dart'; + +class DidvanHorizontalLogo extends StatelessWidget { + const DidvanHorizontalLogo({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Image.asset(Assets.horizontalLogoWithText); + } +} diff --git a/pubspec.yaml b/pubspec.yaml index 9e56d39..596b680 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -64,8 +64,15 @@ flutter: # To add assets to your application, add an assets section, like this: assets: - - lib/assets/images/logo/logo-v-t.png - - lib/assets/images/logo/logo-h-t.png + - lib/assets/images/logos/logo-v-t.png + - lib/assets/images/logos/logo-h-t.png + - lib/assets/images/categories/business.png + - lib/assets/images/categories/economic.png + - lib/assets/images/categories/enviromental.png + - lib/assets/images/categories/political.png + - lib/assets/images/categories/social.png + - lib/assets/images/categories/tech.png + - lib/assets/animations/indicator.riv - lib/assets/animations/indicator.riv From 0276f996ccdef0c413336dde7d96da8b178f37e6 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 12 Dec 2021 16:11:48 +0330 Subject: [PATCH 020/273] D1APP-26 home (static) --- lib/pages/home/home.dart | 104 +++++------------- lib/pages/home/news/news.dart | 10 ++ lib/pages/home/profile/profile.dart | 10 ++ lib/pages/home/radar/radar.dart | 99 +++++++++++++++++ .../radar_state.dart} | 2 +- .../{ => radar}/widgets/categories_gird.dart | 8 +- .../{ => radar}/widgets/categories_list.dart | 4 +- .../{ => radar}/widgets/category_item.dart | 0 .../{ => radar}/widgets/search_field.dart | 0 lib/pages/home/statistics/statistics.dart | 10 ++ lib/pages/home/studio/studio..dart | 10 ++ lib/routes/route_generator.dart | 8 +- 12 files changed, 176 insertions(+), 89 deletions(-) create mode 100644 lib/pages/home/news/news.dart create mode 100644 lib/pages/home/profile/profile.dart create mode 100644 lib/pages/home/radar/radar.dart rename lib/pages/home/{home_state.dart => radar/radar_state.dart} (95%) rename lib/pages/home/{ => radar}/widgets/categories_gird.dart (91%) rename lib/pages/home/{ => radar}/widgets/categories_list.dart (95%) rename lib/pages/home/{ => radar}/widgets/category_item.dart (100%) rename lib/pages/home/{ => radar}/widgets/search_field.dart (100%) create mode 100644 lib/pages/home/statistics/statistics.dart create mode 100644 lib/pages/home/studio/studio..dart diff --git a/lib/pages/home/home.dart b/lib/pages/home/home.dart index 1baa948..aeed46a 100644 --- a/lib/pages/home/home.dart +++ b/lib/pages/home/home.dart @@ -1,10 +1,11 @@ -import 'package:didvan/config/design_config.dart'; -import 'package:didvan/pages/home/widgets/categories_gird.dart'; -import 'package:didvan/pages/home/widgets/categories_list.dart'; -import 'package:didvan/pages/home/widgets/search_field.dart'; -import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/logos/didvan_vertical_logo.dart'; +import 'package:didvan/pages/home/news/news.dart'; +import 'package:didvan/pages/home/profile/profile.dart'; +import 'package:didvan/pages/home/radar/radar.dart'; +import 'package:didvan/pages/home/radar/radar_state.dart'; +import 'package:didvan/pages/home/statistics/statistics.dart'; +import 'package:didvan/pages/home/studio/studio..dart'; import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; class Home extends StatefulWidget { const Home({Key? key}) : super(key: key); @@ -13,86 +14,35 @@ class Home extends StatefulWidget { State createState() => _HomeState(); } -class _HomeState extends State { - final ScrollController _scrollController = ScrollController(); - - bool _isColapsed = false; - bool _isAnimating = false; +class _HomeState extends State with SingleTickerProviderStateMixin { + late final TabController _tabController; @override void initState() { - _scrollController.addListener(() async { - if (_isAnimating) return; - final double position = _scrollController.position.pixels; - if (position > 5 && !_isColapsed) { - _isColapsed = true; - setState(() {}); - _isAnimating = true; - await _scrollController.animateTo( - 380, - duration: DesignConfig.defaultAnimationDuration, - curve: Curves.ease, - ); - _isAnimating = false; - } else if (position < 380 && _isColapsed) { - _isColapsed = false; - setState(() {}); - _isAnimating = true; - await _scrollController.animateTo( - 0, - duration: DesignConfig.defaultAnimationDuration, - curve: Curves.ease, - ); - _isAnimating = false; - } - }); + _tabController = TabController(length: 5, vsync: this); + _tabController.addListener(() {}); super.initState(); } @override Widget build(BuildContext context) { - final d = MediaQuery.of(context); return Scaffold( - body: Stack( - children: [ - CustomScrollView( - controller: _scrollController, - physics: const BouncingScrollPhysics(), - slivers: [ - SliverPadding( - padding: const EdgeInsets.all( - 20, - ).copyWith(top: d.padding.top + 20), - sliver: SliverToBoxAdapter( - child: Container( - alignment: Alignment.centerRight, - height: 76, - child: const DidvanHorizontalLogo(), - ), - ), - ), - const SliverPadding( - padding: EdgeInsets.symmetric(horizontal: 16), - sliver: SliverToBoxAdapter( - child: SearchField(), - ), - ), - SliverPadding( - padding: const EdgeInsets.only(top: 300, right: 16, bottom: 20), - sliver: SliverToBoxAdapter( - child: DidvanText( - 'آخرین رصد', - style: Theme.of(context).textTheme.subtitle1, - color: DesignConfig.darkPrimaryColor2, - ), - ), - ), - ], - ), - CategoriesRow1(isColapsed: _isColapsed), - CategoriesRow2(isColapsed: _isColapsed), - CategoriesList(isColapsed: _isColapsed), - ], + body: DefaultTabController( + length: 5, + child: TabBarView( + physics: const BouncingScrollPhysics(), + controller: _tabController, + children: [ + const News(), + const Statictics(), + ChangeNotifierProvider( + create: (context) => RadarState(), + child: const Radar(), + ), + const Studio(), + const Profile(), + ], + ), ), ); } diff --git a/lib/pages/home/news/news.dart b/lib/pages/home/news/news.dart new file mode 100644 index 0000000..ac0e882 --- /dev/null +++ b/lib/pages/home/news/news.dart @@ -0,0 +1,10 @@ +import 'package:flutter/material.dart'; + +class News extends StatelessWidget { + const News({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Container(); + } +} diff --git a/lib/pages/home/profile/profile.dart b/lib/pages/home/profile/profile.dart new file mode 100644 index 0000000..980fc84 --- /dev/null +++ b/lib/pages/home/profile/profile.dart @@ -0,0 +1,10 @@ +import 'package:flutter/material.dart'; + +class Profile extends StatelessWidget { + const Profile({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Container(); + } +} diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart new file mode 100644 index 0000000..161f03e --- /dev/null +++ b/lib/pages/home/radar/radar.dart @@ -0,0 +1,99 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/pages/home/radar/widgets/categories_gird.dart'; +import 'package:didvan/pages/home/radar/widgets/categories_list.dart'; +import 'package:didvan/pages/home/radar/widgets/search_field.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/logos/didvan_vertical_logo.dart'; +import 'package:flutter/material.dart'; + +class Radar extends StatefulWidget { + const Radar({Key? key}) : super(key: key); + + @override + State createState() => _RadarState(); +} + +class _RadarState extends State { + final ScrollController _scrollController = ScrollController(); + + bool _isColapsed = false; + bool _isAnimating = false; + + @override + void initState() { + _scrollController.addListener(() async { + if (_isAnimating) return; + final double position = _scrollController.position.pixels; + if (position > 5 && !_isColapsed) { + _isColapsed = true; + setState(() {}); + _isAnimating = true; + await _scrollController.animateTo( + 380, + duration: DesignConfig.defaultAnimationDuration, + curve: Curves.ease, + ); + _isAnimating = false; + } else if (position < 380 && _isColapsed) { + _isColapsed = false; + setState(() {}); + _isAnimating = true; + await _scrollController.animateTo( + 0, + duration: DesignConfig.defaultAnimationDuration, + curve: Curves.ease, + ); + _isAnimating = false; + } + }); + super.initState(); + } + + @override + Widget build(BuildContext context) { + final d = MediaQuery.of(context); + return Scaffold( + body: Stack( + children: [ + CustomScrollView( + controller: _scrollController, + physics: const BouncingScrollPhysics(), + slivers: [ + SliverPadding( + padding: const EdgeInsets.all( + 20, + ).copyWith(top: d.padding.top + 20), + sliver: SliverToBoxAdapter( + child: Container( + alignment: Alignment.centerRight, + height: 76, + child: const DidvanHorizontalLogo(), + ), + ), + ), + const SliverPadding( + padding: EdgeInsets.symmetric(horizontal: 16), + sliver: SliverToBoxAdapter( + child: SearchField(), + ), + ), + SliverPadding( + padding: const EdgeInsets.only(top: 300, right: 16, bottom: 20), + sliver: SliverToBoxAdapter( + child: DidvanText( + 'آخرین رصد', + style: Theme.of(context).textTheme.subtitle1, + color: DesignConfig.darkPrimaryColor2, + ), + ), + ), + ], + ), + CategoriesRow1(isColapsed: _isColapsed), + CategoriesRow2(isColapsed: _isColapsed), + CategoriesList(isColapsed: _isColapsed), + ], + ), + ); + } +} diff --git a/lib/pages/home/home_state.dart b/lib/pages/home/radar/radar_state.dart similarity index 95% rename from lib/pages/home/home_state.dart rename to lib/pages/home/radar/radar_state.dart index 95c5840..1b84299 100644 --- a/lib/pages/home/home_state.dart +++ b/lib/pages/home/radar/radar_state.dart @@ -2,7 +2,7 @@ import 'package:didvan/constants/assets.dart'; import 'package:didvan/models/radar_category.dart'; import 'package:didvan/providers/core_provider.dart'; -class HomeState extends CoreProvier { +class RadarState extends CoreProvier { final List categories = [ RadarCategory( id: 1, diff --git a/lib/pages/home/widgets/categories_gird.dart b/lib/pages/home/radar/widgets/categories_gird.dart similarity index 91% rename from lib/pages/home/widgets/categories_gird.dart rename to lib/pages/home/radar/widgets/categories_gird.dart index fe7ae1b..eca753b 100644 --- a/lib/pages/home/widgets/categories_gird.dart +++ b/lib/pages/home/radar/widgets/categories_gird.dart @@ -1,6 +1,6 @@ import 'package:didvan/config/design_config.dart'; -import 'package:didvan/pages/home/home_state.dart'; -import 'package:didvan/pages/home/widgets/category_item.dart'; +import 'package:didvan/pages/home/radar/radar_state.dart'; +import 'package:didvan/pages/home/radar/widgets/category_item.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; @@ -18,7 +18,7 @@ class CategoriesRow1 extends StatelessWidget { right: isColapsed ? d.size.width : 0, child: Row( children: context - .read() + .read() .categories .sublist(0, 3) .map( @@ -57,7 +57,7 @@ class CategoriesRow2 extends StatelessWidget { right: isColapsed ? 124 : 0, child: Row( children: context - .read() + .read() .categories .sublist(3, 6) .map( diff --git a/lib/pages/home/widgets/categories_list.dart b/lib/pages/home/radar/widgets/categories_list.dart similarity index 95% rename from lib/pages/home/widgets/categories_list.dart rename to lib/pages/home/radar/widgets/categories_list.dart index b57ddc3..9d6cb38 100644 --- a/lib/pages/home/widgets/categories_list.dart +++ b/lib/pages/home/radar/widgets/categories_list.dart @@ -1,6 +1,6 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/models/radar_category.dart'; -import 'package:didvan/pages/home/home_state.dart'; +import 'package:didvan/pages/home/radar/radar_state.dart'; import 'package:didvan/widgets/animated_visibility.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; @@ -13,7 +13,7 @@ class CategoriesList extends StatelessWidget { @override Widget build(BuildContext context) { final MediaQueryData d = MediaQuery.of(context); - final HomeState state = context.read(); + final RadarState state = context.read(); final List categories = []; categories.addAll(state.categories.sublist(3, 6)); categories.addAll(state.categories.sublist(0, 3)); diff --git a/lib/pages/home/widgets/category_item.dart b/lib/pages/home/radar/widgets/category_item.dart similarity index 100% rename from lib/pages/home/widgets/category_item.dart rename to lib/pages/home/radar/widgets/category_item.dart diff --git a/lib/pages/home/widgets/search_field.dart b/lib/pages/home/radar/widgets/search_field.dart similarity index 100% rename from lib/pages/home/widgets/search_field.dart rename to lib/pages/home/radar/widgets/search_field.dart diff --git a/lib/pages/home/statistics/statistics.dart b/lib/pages/home/statistics/statistics.dart new file mode 100644 index 0000000..9544791 --- /dev/null +++ b/lib/pages/home/statistics/statistics.dart @@ -0,0 +1,10 @@ +import 'package:flutter/material.dart'; + +class Statictics extends StatelessWidget { + const Statictics({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Container(); + } +} diff --git a/lib/pages/home/studio/studio..dart b/lib/pages/home/studio/studio..dart new file mode 100644 index 0000000..3b4a32e --- /dev/null +++ b/lib/pages/home/studio/studio..dart @@ -0,0 +1,10 @@ +import 'package:flutter/material.dart'; + +class Studio extends StatelessWidget { + const Studio({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Container(); + } +} diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index 2b5479f..7ea510f 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -1,7 +1,8 @@ import 'package:didvan/pages/authentication/authentication.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; import 'package:didvan/pages/home/home.dart'; -import 'package:didvan/pages/home/home_state.dart'; +import 'package:didvan/pages/home/radar/radar.dart'; +import 'package:didvan/pages/home/radar/radar_state.dart'; import 'package:didvan/pages/splash/splash.dart'; import 'package:didvan/pages/splash/splash_state.dart'; import 'package:didvan/routes/routes.dart'; @@ -27,10 +28,7 @@ class RouteGenerator { ); case Routes.home: return _materialPageRouteGenerator( - ChangeNotifierProvider( - create: (context) => HomeState(), - child: const Home(), - ), + const Home(), ); default: return _errorRoute(); From dc7ed94382a32ba99e4de0a9f0f870a9c3c23dca Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 12 Dec 2021 18:23:53 +0330 Subject: [PATCH 021/273] D1APP-25 BNB --- lib/assets/animations/indicator.riv | Bin 7842 -> 7610 bytes lib/config/design_config.dart | 11 +- lib/pages/authentication/authentication.dart | 2 +- lib/pages/home/home.dart | 15 +- lib/pages/home/home_state.dart | 12 ++ lib/pages/home/radar/radar.dart | 4 +- .../home/radar/widgets/categories_gird.dart | 4 +- .../home/radar/widgets/categories_list.dart | 4 +- .../home/radar/widgets/category_item.dart | 4 +- lib/pages/home/widgets/didvan_bnb.dart | 129 ++++++++++++++++++ lib/routes/route_generator.dart | 6 +- lib/utils/actions_sheet.dart | 3 +- 12 files changed, 177 insertions(+), 17 deletions(-) create mode 100644 lib/pages/home/home_state.dart create mode 100644 lib/pages/home/widgets/didvan_bnb.dart diff --git a/lib/assets/animations/indicator.riv b/lib/assets/animations/indicator.riv index 6bc6ab88607f195578474ec0231d83ac462df878..0190c3e95fa0c05372c92e4d39551b830ff17835 100644 GIT binary patch literal 7610 zcmb_hcUTnH-rikVM9~G;!X9j>5Jd&Wh6dP~SqqvN8>e7FL?grsV!76cvBeUNEp}1S zn<$DV>Wx={nO&2BnrMtDSYjnNF|lC-HR|^}a~8zhFW+Au&$IK)&Uw#!e)T=GhXK84 z_o{{;Z+IE}3`URIcv?zwQfflV2h*bZB#$2%I&n%;RfD0-;bky9a2QM;K7Rq24K)vj z{=;Fh_DSKxRbptg*$6k)nuT@g_8JDaQ2yc(Vx zVVU>R&t>p6djuE_o@TS{!kK6nIyF7ZNy*f%xoo=s97%tkcrwC;zTB|iiLaiCmdW)K zX%g*x+th_EQl2R~qW;DRhd`XJ*-Iul@SG00yCR#-OzkG?2zgta1Ko*O@5BSH)z?Vo z)NV5M9o0r+b_mpF~WbD~_5ooE3;`M~6C4QLD`g zE=rA*$crDgO7yGYei~cyHWRB%9&<=RO;-=q@RM$5?BpM%u?o$85UQ~b^EwH{0b8gO zeVg&ShC?0=%q8(J!xg$?eT2+PeQOBBx-Y$5sIFgI86TSLqmp&wy%pNbKS*X_b!!Pk z;>W{W=%)yjnD%7DNnH@gwj{44b$GA}QOJ68h9k$j^VhcA*^ujW`#!gO8 z6Ta;6PH~BNEDS#@k<~k5C7NP7uCiUsU#v3kd9n*7#W!~1#V3zT1o!k;XpOCTD*N&2 z0TK0zoa0+Xkut%p56Kl3QP0-5>j)PbmfYA$XZ>_sVj;oRId47NTn5i~`OjAH6$51A ze&^~6MKv5MyOd7_V#u0oCmJ4jPQ&PG8<`juK@`j8eUr=7=->Ft^=w~$gTUX=&QAQv zK&Yz0J8nU~+e(~TU$|yxZOuIeVyou}2SN=$ zQt)NTrjeh&@1f9D_I#C%Jzh;9>emNE=_{zJbOS^n`*1ad;#z=+J(MWy=yR&K0}U?z z)QLBKd&*AwB#)A5{@1NF_UM^aAZE2{=Rls5);jUh8^uS+;#(G(rd91FvuPoZ#VWt7 zigF?I5I_t}>3M`?1wK}2!|Z5{^**#oa8yJR&-@ou_v9lRWrNkc-W1fcnekPn-VBG{ zoYMEM-7;jJzXLMSOz+J=+lrErE_CnsN+*3hy1T@teEu$9InWl_u+WJXDIdvr<<{03 zc{k%7g=U`l#mJ^Ne!f0}qau>HgApp?xeq+Inm3q&(&A9%Omu=w z{Q5jN$Kuhz#xoJ7XQG`gWCeIS^ZITlEj=lzY}SA!yc^ru-d+Xj^ke&-PJDAkiAu)& zx)8^CdTi(+G4tGE!j~Ps znND=#*a8{fO>e7_=<352>e{2)nPEo0uylH-o*D{V3;A9X)m)D(twpv`9hbjO{Z1?(~0hNnBnxg=&AamRVX@ZGjlF^EUpM26lwbJFy5faPMHm-%tALo!8HH{08*)&aU;GH1`bbVfU?>JOce}eN<3| zFU~(3{TGSu%YE3c}*w z)qA3!ZT%HMcqeRB@QwEXu`3RG;$eDSjh$W9U)V9>!8rxZi&&`Pw^K^&WYn(r6x!a@ zN@KmYG!=+j1+Xh>sbNmsd0yWfGIKx^g?8!y3b%ObZDEJUwp=ILlyF$XxgVd+B|fk2 z$h70*5SbZX#R-ncQi#*?PuGD;F6ph384S9n8h?SW6-??-@$XMdDDMs zUePRltoyaZ+nL=A6G^);embsPmVbp%+y*jP!$6@4vVIwN4!l7oaWWMU@SajWi7%o*=Ziy6 z>(8y`t*=e4S#;l^SbkmFkJ~-Rs2l!~u_8z^hR~>l2V11gT_6A{kFSg&z7lcA7X}vZ z7YR}6f#y(Z^Tz6q!9aN~^~lSD6tb$aH%RpmYdo1+c`{)xWLeLNL?I{cYO|WRRdVFd zV5(S(=icGY1LX1!0Ek}dd-fJdxamqLv9+SqVLziAR z1gXU3NTpn+%H?QBB}b;+`dzmClG@h^j_eeU{L|eT6ASBU^jsy;fC0TiPx^vtByiPe zB1!=Upiy$rlM2~z*NC7}k>3T-w)0%uxFU*5TO&$Pkg5ns-QxBJX%r{bC||9-@C2!Z zxP6rh&uZTJ+Al6r+@*cOrTxagD$9UM%Ca9K=$4Q-rKQq9Wo_{^3qBbG%l{&KVj3^4 zzvy12fy%;XHUIOqtazGX z0JKWqCH_tT1*yKl$aomvT-~`5q^iDu@O{Evj8^mKl^m(RZ-CR%BdCP;h*LP?(tAWN zXO#k>D)tvoGYs_jmuLX>^_B%&2n>|BOcdq2W4VsP04S8cP3xVZ3Wb8skjpy*AiC`F z{h065qWT1BdCTO8jn>^VFaxwy*oQfl*cYwlFDm&3(&e6Ou4zc@Rf3{i?`#rzYNBLYAh8YKlK9_I( zZ_ah`xhg52D=~d;#qvKJQSb0y6##*Pm$}judf%hC9piVfz|Th8uE1LgG8hak_)CLC zj=euy;jalQ<99lQ6TlB$kK(Tc0Z?gg5;z5cZir66UuFb>)tp%o+wwEoc4m`hXzKY~ zsE?Z>NX16m{-gsM@_s+iMW;3J%w;zNTk+LlAh;l3LBpGPyKuFPV2vCM3RdXtKF{s! z?prh55SbsZK3p~%I{U6gBfGPvDsF|y+`n?to{Kazb9MWlhTZN{6+e2nkW6N3AA1igD+{P~zoZh^) zL_!*MR_ORs%`_I%dXSstROkd39DR+IaY^wQiJZO{tI)@7EE=o+ahTiO59`7?#*tnr z8m?1nmC2rj)-si@j#63s1Lbi^DLdvw>o!B^CVm<$lg#I{6uNKs!(29ROM#oEBJB9a zR#_%l6VCBhCwE#(jJ9SOR73HxRu>&Np{vaH*4BSB!+_;Q)i7rot(pn%~HlsspLgwIA=WD=7KXWzXV#j5P& z?SpQQUL1o%_*-vXS8=ibXo;jQ`&govhWKdg!FfF`V2l0qW(8gT!r;P>E!XWN&IT>l zCY^wcI*$eMb<%W(P71KcrmHxD7Q!br^Ej&OdEbw@iM4T;sq5-_d(UNAgEfg&^udx zb)pUEvJ)SLIwzZ<&S@mnKI;UvFCZ0R$Glre7Vnmdw0vT+Rr`FahSJAWbM_5?C~4V96*wiz2K~_#35s)>3Nk5`|MYl z&S{z>v4@==xgq=4eB(sxBaSLKD!HCUl<3DY_58E9#3HA9xEJbvzoCX2CBcT2sddxH zJ2m0N@Y3zoQEYM@{R{>c@>{)HK`)P8SMYmspiFj5`9r2-?$lD*o^$uz3zfAnI?w|p zRKYi2Jd{XS_C1*@Ih$41CE=zUva-bFK%=t*oOoGChC~)e-IVFjnRnq3b>kB^WX|>V z3c{0aIPsx=eiHFJS1Qwp1x+=Ek5qM=TM;narE%R{^0XKRtmeI@pjYr`sAKkkPc!(0 z!KW{L;^31ApJez)&Q2UW!mygc2&jdz9!m9gBJz$TP S;oDU4ZT8C1{F`nAp#BG`>?f-L literal 7842 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 defaultShadow = [ BoxShadow( - color: const Color(0XFF4D4D4D).withOpacity(0.25), - offset: const Offset(0, 4), - blurRadius: 8, + color: currentColorScheme.primaryVariant.withOpacity(0.25), + blurRadius: 16, spreadRadius: 0, ) ]; - static const Duration defaultAnimationDuration = Duration(milliseconds: 600); + static const Duration lowAnimationDuration = Duration(milliseconds: 300); + static const Duration mediumAnimationDuration = Duration(milliseconds: 600); static final SystemUiOverlayStyle systemUIOverlayStyle = SystemUiOverlayStyle( statusBarBrightness: Brightness.dark, diff --git a/lib/pages/authentication/authentication.dart b/lib/pages/authentication/authentication.dart index ade5c92..0f8209e 100644 --- a/lib/pages/authentication/authentication.dart +++ b/lib/pages/authentication/authentication.dart @@ -27,7 +27,7 @@ class _AuthenticationState extends State { return Scaffold( body: Consumer( builder: (context, state, child) => AnimatedSwitcher( - duration: DesignConfig.defaultAnimationDuration, + duration: DesignConfig.mediumAnimationDuration, child: _pages[state.currentPageIndex], ), ), diff --git a/lib/pages/home/home.dart b/lib/pages/home/home.dart index aeed46a..7436f2e 100644 --- a/lib/pages/home/home.dart +++ b/lib/pages/home/home.dart @@ -1,9 +1,11 @@ +import 'package:didvan/pages/home/home_state.dart'; import 'package:didvan/pages/home/news/news.dart'; import 'package:didvan/pages/home/profile/profile.dart'; import 'package:didvan/pages/home/radar/radar.dart'; import 'package:didvan/pages/home/radar/radar_state.dart'; import 'package:didvan/pages/home/statistics/statistics.dart'; import 'package:didvan/pages/home/studio/studio..dart'; +import 'package:didvan/pages/home/widgets/didvan_bnb.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; @@ -20,7 +22,9 @@ class _HomeState extends State with SingleTickerProviderStateMixin { @override void initState() { _tabController = TabController(length: 5, vsync: this); - _tabController.addListener(() {}); + _tabController.addListener(() { + context.read().currentPageIndex = _tabController.index; + }); super.initState(); } @@ -44,6 +48,15 @@ class _HomeState extends State with SingleTickerProviderStateMixin { ], ), ), + bottomNavigationBar: Consumer( + builder: (context, state, child) => DidvanBNB( + currentTabIndex: state.currentPageIndex, + onTabChanged: (index) { + state.currentPageIndex = index; + _tabController.animateTo(index); + }, + ), + ), ); } } diff --git a/lib/pages/home/home_state.dart b/lib/pages/home/home_state.dart new file mode 100644 index 0000000..4d20216 --- /dev/null +++ b/lib/pages/home/home_state.dart @@ -0,0 +1,12 @@ +import 'package:didvan/providers/core_provider.dart'; + +class HomeState extends CoreProvier { + int _currentPageIndex = 0; + + set currentPageIndex(int value) { + _currentPageIndex = value; + notifyListeners(); + } + + int get currentPageIndex => _currentPageIndex; +} diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index 161f03e..7b27a89 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -30,7 +30,7 @@ class _RadarState extends State { _isAnimating = true; await _scrollController.animateTo( 380, - duration: DesignConfig.defaultAnimationDuration, + duration: DesignConfig.mediumAnimationDuration, curve: Curves.ease, ); _isAnimating = false; @@ -40,7 +40,7 @@ class _RadarState extends State { _isAnimating = true; await _scrollController.animateTo( 0, - duration: DesignConfig.defaultAnimationDuration, + duration: DesignConfig.mediumAnimationDuration, curve: Curves.ease, ); _isAnimating = false; diff --git a/lib/pages/home/radar/widgets/categories_gird.dart b/lib/pages/home/radar/widgets/categories_gird.dart index eca753b..cb51cd4 100644 --- a/lib/pages/home/radar/widgets/categories_gird.dart +++ b/lib/pages/home/radar/widgets/categories_gird.dart @@ -12,7 +12,7 @@ class CategoriesRow1 extends StatelessWidget { Widget build(BuildContext context) { final MediaQueryData d = MediaQuery.of(context); return AnimatedPositioned( - duration: DesignConfig.defaultAnimationDuration, + duration: DesignConfig.mediumAnimationDuration, top: isColapsed ? 12 : 176 + d.padding.top, left: isColapsed ? -d.size.width : 0, right: isColapsed ? d.size.width : 0, @@ -51,7 +51,7 @@ class CategoriesRow2 extends StatelessWidget { Widget build(BuildContext context) { final MediaQueryData d = MediaQuery.of(context); return AnimatedPositioned( - duration: DesignConfig.defaultAnimationDuration, + duration: DesignConfig.mediumAnimationDuration, top: isColapsed ? -60 : 300 + d.padding.top, left: isColapsed ? -80 : 0, right: isColapsed ? 124 : 0, diff --git a/lib/pages/home/radar/widgets/categories_list.dart b/lib/pages/home/radar/widgets/categories_list.dart index 9d6cb38..e9b4f3a 100644 --- a/lib/pages/home/radar/widgets/categories_list.dart +++ b/lib/pages/home/radar/widgets/categories_list.dart @@ -24,7 +24,7 @@ class CategoriesList extends StatelessWidget { child: AnimatedCrossFade( crossFadeState: isColapsed ? CrossFadeState.showSecond : CrossFadeState.showFirst, - duration: DesignConfig.defaultAnimationDuration, + duration: DesignConfig.mediumAnimationDuration, firstChild: const SizedBox(), secondChild: Container( height: 60 + d.padding.top, @@ -44,7 +44,7 @@ class CategoriesList extends StatelessWidget { children: [ AnimatedVisibility( isVisible: isColapsed, - duration: DesignConfig.defaultAnimationDuration, + duration: DesignConfig.mediumAnimationDuration, child: _itemBuilder( RadarCategory(title: 'همه', asset: '', id: 0), ), diff --git a/lib/pages/home/radar/widgets/category_item.dart b/lib/pages/home/radar/widgets/category_item.dart index 48560ae..85f516c 100644 --- a/lib/pages/home/radar/widgets/category_item.dart +++ b/lib/pages/home/radar/widgets/category_item.dart @@ -20,7 +20,7 @@ class CategoryItem extends StatelessWidget { final Size ds = MediaQuery.of(context).size; return Center( child: AnimatedContainer( - duration: DesignConfig.defaultAnimationDuration, + duration: DesignConfig.mediumAnimationDuration, padding: isColapsed ? const EdgeInsets.all(4) : EdgeInsets.zero, width: isColapsed ? 100 : ds.width / 3, alignment: Alignment.center, @@ -33,7 +33,7 @@ class CategoryItem extends StatelessWidget { child: Column( children: [ AnimatedVisibility( - duration: DesignConfig.defaultAnimationDuration, + duration: DesignConfig.mediumAnimationDuration, isVisible: !isColapsed, child: Container( width: ds.width / 5, diff --git a/lib/pages/home/widgets/didvan_bnb.dart b/lib/pages/home/widgets/didvan_bnb.dart new file mode 100644 index 0000000..d1f3d91 --- /dev/null +++ b/lib/pages/home/widgets/didvan_bnb.dart @@ -0,0 +1,129 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; + +class DidvanBNB extends StatelessWidget { + final int currentTabIndex; + final void Function(int index) onTabChanged; + + const DidvanBNB( + {Key? key, required this.currentTabIndex, required this.onTabChanged}) + : super(key: key); + + @override + Widget build(BuildContext context) { + return Container( + height: 64, + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.surface, + borderRadius: const BorderRadius.vertical(top: Radius.circular(16)), + boxShadow: DesignConfig.defaultShadow, + ), + padding: const EdgeInsets.symmetric(horizontal: 12), + child: Row( + children: [ + _NavBarItem( + isSelected: currentTabIndex == 0, + title: 'اخبار', + selectedIcon: DidvanIcons.news_solid, + unselectedIcon: DidvanIcons.news_light, + onTap: () => onTabChanged(0), + ), + _NavBarItem( + isSelected: currentTabIndex == 1, + title: 'آمار', + selectedIcon: DidvanIcons.chart_solid, + unselectedIcon: DidvanIcons.chart_light, + onTap: () => onTabChanged(1), + ), + _NavBarItem( + isSelected: currentTabIndex == 2, + title: 'رادار', + selectedIcon: DidvanIcons.news_solid, + unselectedIcon: DidvanIcons.news_regular, + onTap: () => onTabChanged(2), + ), + _NavBarItem( + isSelected: currentTabIndex == 3, + title: 'استودیو', + selectedIcon: DidvanIcons.play_circle_solid, + unselectedIcon: DidvanIcons.play_circle_light, + onTap: () => onTabChanged(3), + ), + _NavBarItem( + isSelected: currentTabIndex == 4, + title: 'پروفایل', + selectedIcon: DidvanIcons.profile_solid, + unselectedIcon: DidvanIcons.profile_light, + onTap: () => onTabChanged(4), + ), + ], + ), + ); + } +} + +class _NavBarItem extends StatelessWidget { + final VoidCallback onTap; + final bool isSelected; + final String title; + final IconData selectedIcon; + final IconData unselectedIcon; + const _NavBarItem({ + Key? key, + required this.isSelected, + required this.title, + required this.selectedIcon, + required this.unselectedIcon, + required this.onTap, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return Expanded( + child: Tooltip( + message: title, + decoration: BoxDecoration( + color: DesignConfig.darkPrimaryColor2, + borderRadius: DesignConfig.highBorderRadius, + boxShadow: DesignConfig.defaultShadow, + ), + child: GestureDetector( + onTap: onTap, + child: Container( + color: Colors.transparent, + child: Column( + children: [ + const SizedBox( + height: 4, + ), + AnimatedContainer( + padding: const EdgeInsets.all(4), + duration: DesignConfig.lowAnimationDuration, + decoration: BoxDecoration( + shape: BoxShape.circle, + color: isSelected + ? DesignConfig.lightPrimaryColor2 + : Theme.of(context).colorScheme.surface, + ), + child: Icon( + isSelected ? selectedIcon : unselectedIcon, + size: 32, + color: isSelected ? DesignConfig.darkPrimaryColor2 : null, + ), + ), + DidvanText( + title, + style: Theme.of(context).textTheme.caption, + color: DesignConfig.darkPrimaryColor2, + ), + const Spacer(), + ], + ), + ), + ), + ), + ); + } +} diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index 7ea510f..f904a45 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -1,6 +1,7 @@ import 'package:didvan/pages/authentication/authentication.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; import 'package:didvan/pages/home/home.dart'; +import 'package:didvan/pages/home/home_state.dart'; import 'package:didvan/pages/home/radar/radar.dart'; import 'package:didvan/pages/home/radar/radar_state.dart'; import 'package:didvan/pages/splash/splash.dart'; @@ -28,7 +29,10 @@ class RouteGenerator { ); case Routes.home: return _materialPageRouteGenerator( - const Home(), + ChangeNotifierProvider( + create: (context) => HomeState(), + child: const Home(), + ), ); default: return _errorRoute(); diff --git a/lib/utils/actions_sheet.dart b/lib/utils/actions_sheet.dart index 29a2299..fa63022 100644 --- a/lib/utils/actions_sheet.dart +++ b/lib/utils/actions_sheet.dart @@ -10,7 +10,8 @@ class ActionSheetUtils { context: context, builder: (context) => Padding( padding: EdgeInsets.symmetric( - horizontal: MediaQuery.of(context).size.width / 3), + horizontal: MediaQuery.of(context).size.width / 3, + ), child: const RiveAnimation.asset(Assets.logoLoadingAnimation), ), ); From 26a86de7fc67663e221cd7ba160f368043da2bec Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 12 Dec 2021 18:37:11 +0330 Subject: [PATCH 022/273] D1APP-22 configuration (network services) --- lib/services/request_handler.dart | 175 ++++++++++++++++++++++++++++++ 1 file changed, 175 insertions(+) create mode 100644 lib/services/request_handler.dart diff --git a/lib/services/request_handler.dart b/lib/services/request_handler.dart new file mode 100644 index 0000000..462ee4d --- /dev/null +++ b/lib/services/request_handler.dart @@ -0,0 +1,175 @@ +import 'dart:convert'; +import 'dart:developer'; +import 'dart:io'; +import 'package:http/http.dart' as http; + +class RequestHandler { + static late String token; + + String? errorMessage; + + dynamic body; + final Map _headers = { + "accept": "*/*", + "Content-Type": "application/json; charset=UTF-8", + }; + final String url; + dynamic _requestBody; + + bool isSuccess = false; + + RequestHandler( + this.url, { + Map? requestHeaders, + body, + bool useAutherization = true, + }) { + if (body != null) _requestBody = body; + if (requestHeaders != null) _headers.addAll(requestHeaders); + if (useAutherization) _headers.addAll({'Authorization': 'Bearer $token'}); + if (body != null) _requestBody = body; + } + + Future httpGet() async { + try { + final response = await http + .get( + Uri.parse(url), + headers: _headers, + ) + .timeout( + const Duration(seconds: 10), + ) + .catchError( + (e) => throw e, + ); + _handleResponse(response); + } catch (e) { + _handleError(null); + } + } + + Future post() async { + try { + final response = await http + .post( + Uri.parse(url), + body: json.encode(_requestBody), + headers: _headers, + ) + .timeout( + const Duration(seconds: 10), + ) + .catchError( + (e) => throw e, + ); + _handleResponse(response); + } catch (e) { + _handleError(null); + } + } + + Future delete() async { + try { + final response = await http + .delete( + Uri.parse(url), + body: json.encode(_requestBody), + headers: _headers, + ) + .timeout( + const Duration(seconds: 10), + ) + .catchError( + (e) => throw e, + ); + _handleResponse(response); + } catch (e) { + _handleError(null); + } + } + + Future multipart(File file) async { + try { + final request = http.MultipartRequest('POST', Uri.parse(url)); + _headers.update('Content-Type', (_) => 'multipart/form-data'); + request.headers.addAll(_headers); + request.files.add( + http.MultipartFile( + 'file', + file.readAsBytes().asStream(), + file.lengthSync(), + filename: 'desc', + ), + ); + final streamedResponse = await request + .send() + .timeout( + const Duration(seconds: 10), + ) + .catchError( + (e) => throw e, + ); + final response = await http.Response.fromStream(streamedResponse); + _handleResponse(response); + } catch (e) { + _handleError(null); + } + } + + Future put() async { + try { + final response = await http + .put( + Uri.parse(url), + body: json.encode(_requestBody), + headers: _headers, + ) + .timeout( + const Duration(seconds: 10), + ) + .catchError( + (e) => throw e, + ); + _handleResponse(response); + } catch (e) { + _handleError(null); + } + } + + void _handleResponse(http.Response? response) { + if (_handleError(response)) { + if (response!.body.isNotEmpty) { + body = json.decode(response.body); + } + } + } + + bool _handleError(http.Response? response) { + if (response == null) { + log( + 'Connecion failed or request timedout! ("$url")', + name: 'Request fail error', + ); + isSuccess = false; + errorMessage = _errorMessageGenerator(response); + return false; + } + if (response.statusCode != 200 && response.statusCode != 204) { + log( + 'Request to [$url] failed with status code ${response.statusCode} & result : \n ${response.body.isNotEmpty ? json.decode(response.body) : 'No result.'}', + name: 'Request fail error', + ); + isSuccess = false; + errorMessage = _errorMessageGenerator(response); + return false; + } + isSuccess = true; + return true; + } + + String _errorMessageGenerator(http.Response? response) { + //TODO: Needs implementation + return ''; + } +} From 3eaa5aab37461f702e87ba2b61a26f812a2cfd6b Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Mon, 13 Dec 2021 13:42:36 +0330 Subject: [PATCH 023/273] radar animation bug fixed --- lib/widgets/animated_visibility.dart | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/widgets/animated_visibility.dart b/lib/widgets/animated_visibility.dart index a6f3c12..0c058e8 100644 --- a/lib/widgets/animated_visibility.dart +++ b/lib/widgets/animated_visibility.dart @@ -37,7 +37,7 @@ class _AnimatedVisibilityState extends State void initState() { super.initState(); _setupAnimation(); - _runSizeCheck(); + _runSizeCheck(true); } void _setupAnimation() { @@ -51,12 +51,15 @@ class _AnimatedVisibilityState extends State @override void didUpdateWidget(covariant AnimatedVisibility oldWidget) { - _runSizeCheck(); + _runSizeCheck(false); super.didUpdateWidget(oldWidget); } - void _runSizeCheck() { + void _runSizeCheck(bool isInit) async { if (widget.isVisible) { + if (isInit) { + _sizeController.value = 1; + } _sizeController.forward(); } else { _sizeController.reverse(); From 1379c9645390c1b1dacb8fcec1696e38467ae86a Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 14 Dec 2021 13:06:16 +0330 Subject: [PATCH 024/273] radar page scroll bug fixed --- lib/pages/home/radar/radar.dart | 65 ++++++++++++++++++--------------- 1 file changed, 36 insertions(+), 29 deletions(-) diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index 7b27a89..229258f 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -55,39 +55,46 @@ class _RadarState extends State { return Scaffold( body: Stack( children: [ - CustomScrollView( - controller: _scrollController, - physics: const BouncingScrollPhysics(), - slivers: [ - SliverPadding( - padding: const EdgeInsets.all( - 20, - ).copyWith(top: d.padding.top + 20), - sliver: SliverToBoxAdapter( - child: Container( - alignment: Alignment.centerRight, - height: 76, - child: const DidvanHorizontalLogo(), + Theme( + data: Theme.of(context).copyWith( + colorScheme: Theme.of(context).colorScheme.copyWith( + secondary: Colors.white, + ), + ), + child: CustomScrollView( + controller: _scrollController, + slivers: [ + SliverPadding( + padding: const EdgeInsets.all( + 20, + ).copyWith(top: d.padding.top + 20), + sliver: SliverToBoxAdapter( + child: Container( + alignment: Alignment.centerRight, + height: 76, + child: const DidvanHorizontalLogo(), + ), ), ), - ), - const SliverPadding( - padding: EdgeInsets.symmetric(horizontal: 16), - sliver: SliverToBoxAdapter( - child: SearchField(), - ), - ), - SliverPadding( - padding: const EdgeInsets.only(top: 300, right: 16, bottom: 20), - sliver: SliverToBoxAdapter( - child: DidvanText( - 'آخرین رصد', - style: Theme.of(context).textTheme.subtitle1, - color: DesignConfig.darkPrimaryColor2, + const SliverPadding( + padding: EdgeInsets.symmetric(horizontal: 16), + sliver: SliverToBoxAdapter( + child: SearchField(), ), ), - ), - ], + SliverPadding( + padding: + const EdgeInsets.only(top: 300, right: 16, bottom: 20), + sliver: SliverToBoxAdapter( + child: DidvanText( + 'آخرین رصد', + style: Theme.of(context).textTheme.subtitle1, + color: DesignConfig.darkPrimaryColor2, + ), + ), + ), + ], + ), ), CategoriesRow1(isColapsed: _isColapsed), CategoriesRow2(isColapsed: _isColapsed), From 7f23eb46c8d03f97f54f6c45468455dabaa2ff85 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 14 Dec 2021 13:06:43 +0330 Subject: [PATCH 025/273] news model added --- lib/models/news_data.dart | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 lib/models/news_data.dart diff --git a/lib/models/news_data.dart b/lib/models/news_data.dart new file mode 100644 index 0000000..9b99788 --- /dev/null +++ b/lib/models/news_data.dart @@ -0,0 +1,38 @@ +import 'package:flutter/foundation.dart'; + +@immutable +class NewsData { + final int id; + final String title; + final String reference; + final String description; + final String createdAt; + final String updatedAt; + + const NewsData({ + required this.id, + required this.title, + required this.reference, + required this.description, + required this.createdAt, + required this.updatedAt, + }); + + factory NewsData.fromJson(Map json) => NewsData( + id: json['id'], + title: json['title'], + reference: json['reference'], + description: json['description'], + createdAt: json['createdAt'], + updatedAt: json['updatedAt'], + ); + + Map toJson() => { + 'id': id, + 'title': title, + 'reference': reference, + 'description': description, + 'createdAt': createdAt, + 'updatedAt': updatedAt, + }; +} From 04150fe12547c934cf2d000cfa3a5d9069af4a93 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 14 Dec 2021 17:55:02 +0330 Subject: [PATCH 026/273] design edits + bug fixed + page transition --- lib/pages/home/home.dart | 2 +- lib/pages/home/radar/radar.dart | 50 +++++----- .../home/radar/widgets/search_field.dart | 91 +++++++++++++------ .../home/studio/{studio..dart => studio.dart} | 0 lib/pages/home/widgets/didvan_bnb.dart | 2 +- lib/pages/splash/splash.dart | 14 ++- lib/routes/route_generator.dart | 21 +++-- lib/utils/actions_sheet.dart | 21 ++++- 8 files changed, 131 insertions(+), 70 deletions(-) rename lib/pages/home/studio/{studio..dart => studio.dart} (100%) diff --git a/lib/pages/home/home.dart b/lib/pages/home/home.dart index 7436f2e..eb84b4e 100644 --- a/lib/pages/home/home.dart +++ b/lib/pages/home/home.dart @@ -4,7 +4,7 @@ import 'package:didvan/pages/home/profile/profile.dart'; import 'package:didvan/pages/home/radar/radar.dart'; import 'package:didvan/pages/home/radar/radar_state.dart'; import 'package:didvan/pages/home/statistics/statistics.dart'; -import 'package:didvan/pages/home/studio/studio..dart'; +import 'package:didvan/pages/home/studio/studio.dart'; import 'package:didvan/pages/home/widgets/didvan_bnb.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index 229258f..acd3f16 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -22,29 +22,7 @@ class _RadarState extends State { @override void initState() { _scrollController.addListener(() async { - if (_isAnimating) return; - final double position = _scrollController.position.pixels; - if (position > 5 && !_isColapsed) { - _isColapsed = true; - setState(() {}); - _isAnimating = true; - await _scrollController.animateTo( - 380, - duration: DesignConfig.mediumAnimationDuration, - curve: Curves.ease, - ); - _isAnimating = false; - } else if (position < 380 && _isColapsed) { - _isColapsed = false; - setState(() {}); - _isAnimating = true; - await _scrollController.animateTo( - 0, - duration: DesignConfig.mediumAnimationDuration, - curve: Curves.ease, - ); - _isAnimating = false; - } + _handleAnimations(); }); super.initState(); } @@ -103,4 +81,30 @@ class _RadarState extends State { ), ); } + + void _handleAnimations() async { + if (_isAnimating) return; + final double position = _scrollController.position.pixels; + if (position > 5 && !_isColapsed) { + _isColapsed = true; + setState(() {}); + _isAnimating = true; + await _scrollController.animateTo( + 380, + duration: DesignConfig.mediumAnimationDuration, + curve: Curves.ease, + ); + _isAnimating = false; + } else if (position < 380 && _isColapsed) { + _isColapsed = false; + setState(() {}); + _isAnimating = true; + await _scrollController.animateTo( + 0, + duration: DesignConfig.mediumAnimationDuration, + curve: Curves.ease, + ); + _isAnimating = false; + } + } } diff --git a/lib/pages/home/radar/widgets/search_field.dart b/lib/pages/home/radar/widgets/search_field.dart index f68d931..0b78189 100644 --- a/lib/pages/home/radar/widgets/search_field.dart +++ b/lib/pages/home/radar/widgets/search_field.dart @@ -2,46 +2,79 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:flutter/material.dart'; -class SearchField extends StatelessWidget { +class SearchField extends StatefulWidget { const SearchField({Key? key}) : super(key: key); + @override + State createState() => _SearchFieldState(); +} + +class _SearchFieldState extends State { + final FocusNode _focusNode = FocusNode(); + + @override + void initState() { + _focusNode.addListener(() { + setState(() {}); + }); + super.initState(); + } + @override Widget build(BuildContext context) { return Container( height: 40, - width: double.infinity, decoration: BoxDecoration( - color: Theme.of(context).colorScheme.surface, + color: _fillColor(), ), - child: Row( - children: [ - const Icon( - DidvanIcons.search_regular, - ), - Expanded( - child: TextField( - style: Theme.of(context).textTheme.bodyText1, - textAlignVertical: TextAlignVertical.top, - onChanged: (value) {}, - keyboardType: TextInputType.text, - textInputAction: TextInputAction.search, - decoration: InputDecoration( - contentPadding: const EdgeInsets.only( - left: 12, - right: 12, - bottom: 8, - ), - border: InputBorder.none, - hintText: 'جستجو مطلب در رادار', - hintStyle: Theme.of(context) - .textTheme - .subtitle2! - .copyWith(color: DesignConfig.greyColor5), - ), + child: TextField( + focusNode: _focusNode, + style: Theme.of(context).textTheme.bodyText1, + textAlignVertical: TextAlignVertical.center, + onChanged: (value) {}, + keyboardType: TextInputType.text, + textInputAction: TextInputAction.search, + decoration: InputDecoration( + focusedBorder: OutlineInputBorder( + borderRadius: const BorderRadius.all( + Radius.circular(4), + ), + borderSide: BorderSide( + color: Theme.of(context).primaryColor, ), ), - ], + prefixIcon: const Icon( + DidvanIcons.search_regular, + ), + enabledBorder: const OutlineInputBorder( + borderRadius: BorderRadius.all( + Radius.circular(4), + ), + borderSide: BorderSide( + color: DesignConfig.greyColor4, + ), + ), + fillColor: Colors.red, + contentPadding: const EdgeInsets.only( + left: 12, + right: 12, + bottom: 8, + ), + border: InputBorder.none, + hintText: 'جستجو مطلب در رادار', + hintStyle: Theme.of(context) + .textTheme + .subtitle2! + .copyWith(color: DesignConfig.greyColor5), + ), ), ); } + + Color _fillColor() { + if (_focusNode.hasFocus) { + return DesignConfig.lightPrimaryColor3; + } + return Theme.of(context).colorScheme.surface; + } } diff --git a/lib/pages/home/studio/studio..dart b/lib/pages/home/studio/studio.dart similarity index 100% rename from lib/pages/home/studio/studio..dart rename to lib/pages/home/studio/studio.dart diff --git a/lib/pages/home/widgets/didvan_bnb.dart b/lib/pages/home/widgets/didvan_bnb.dart index d1f3d91..d92f996 100644 --- a/lib/pages/home/widgets/didvan_bnb.dart +++ b/lib/pages/home/widgets/didvan_bnb.dart @@ -14,7 +14,7 @@ class DidvanBNB extends StatelessWidget { @override Widget build(BuildContext context) { return Container( - height: 64, + height: 72, decoration: BoxDecoration( color: Theme.of(context).colorScheme.surface, borderRadius: const BorderRadius.vertical(top: Radius.circular(16)), diff --git a/lib/pages/splash/splash.dart b/lib/pages/splash/splash.dart index 74195cc..36dc181 100644 --- a/lib/pages/splash/splash.dart +++ b/lib/pages/splash/splash.dart @@ -2,6 +2,7 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/widgets/logos/didvan_horizontal_logo.dart'; import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; class Splash extends StatefulWidget { const Splash({Key? key}) : super(key: key); @@ -24,10 +25,15 @@ class _SplashState extends State { @override Widget build(BuildContext context) { - return Container( - padding: const EdgeInsets.all(60), - color: DesignConfig.lightColorScheme.background, - child: const DidvanVerticalLogo(), + return AnnotatedRegion( + value: DesignConfig.systemUIOverlayStyle.copyWith( + systemNavigationBarColor: DesignConfig.lightPrimaryColor3, + ), + child: Container( + padding: const EdgeInsets.all(60), + color: DesignConfig.lightPrimaryColor3, + child: const DidvanVerticalLogo(), + ), ); } } diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index f904a45..fe80ea0 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -1,9 +1,8 @@ +import 'package:didvan/config/design_config.dart'; import 'package:didvan/pages/authentication/authentication.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; import 'package:didvan/pages/home/home.dart'; import 'package:didvan/pages/home/home_state.dart'; -import 'package:didvan/pages/home/radar/radar.dart'; -import 'package:didvan/pages/home/radar/radar_state.dart'; import 'package:didvan/pages/splash/splash.dart'; import 'package:didvan/pages/splash/splash_state.dart'; import 'package:didvan/routes/routes.dart'; @@ -14,21 +13,21 @@ class RouteGenerator { static Route generateRoute(RouteSettings settings) { switch (settings.name) { case Routes.splash: - return _materialPageRouteGenerator( + return _createRoute( ChangeNotifierProvider( create: (context) => SplashState(), child: const Splash(), ), ); case Routes.authenticaion: - return _materialPageRouteGenerator( + return _createRoute( ChangeNotifierProvider( create: (context) => AuthenticationState(), child: const Authentication(), ), ); case Routes.home: - return _materialPageRouteGenerator( + return _createRoute( ChangeNotifierProvider( create: (context) => HomeState(), child: const Home(), @@ -52,7 +51,13 @@ class RouteGenerator { }); } - static _materialPageRouteGenerator(pageWidget) => MaterialPageRoute( - builder: (context) => pageWidget, - ); + static Route _createRoute(page) { + return PageRouteBuilder( + pageBuilder: (context, animation, secondaryAnimation) => page, + transitionDuration: DesignConfig.mediumAnimationDuration, + transitionsBuilder: (context, animation, secondaryAnimation, child) { + return FadeTransition(opacity: animation, child: child); + }, + ); + } } diff --git a/lib/utils/actions_sheet.dart b/lib/utils/actions_sheet.dart index fa63022..64926d0 100644 --- a/lib/utils/actions_sheet.dart +++ b/lib/utils/actions_sheet.dart @@ -1,5 +1,7 @@ +import 'package:didvan/config/design_config.dart'; import 'package:didvan/constants/assets.dart'; import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; import 'package:rive/rive.dart'; class ActionSheetUtils { @@ -8,12 +10,23 @@ class ActionSheetUtils { static Future showLogoLoadingIndicator() async { await showDialog( context: context, - builder: (context) => Padding( - padding: EdgeInsets.symmetric( - horizontal: MediaQuery.of(context).size.width / 3, + builder: (context) => _customSystemOverlayStyle( + child: Padding( + padding: EdgeInsets.symmetric( + horizontal: MediaQuery.of(context).size.width / 3, + ), + child: const RiveAnimation.asset(Assets.logoLoadingAnimation), ), - child: const RiveAnimation.asset(Assets.logoLoadingAnimation), ), ); } + + static AnnotatedRegion _customSystemOverlayStyle({required Widget child}) { + return AnnotatedRegion( + value: DesignConfig.systemUIOverlayStyle.copyWith( + systemNavigationBarColor: Colors.black45, + ), + child: child, + ); + } } From 4df0f495bd7a4a584136f1670847af01c4343101 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 14 Dec 2021 18:00:55 +0330 Subject: [PATCH 027/273] new logo added --- .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 8412 -> 10206 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 4896 -> 5787 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 12183 -> 15222 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 20863 -> 25420 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 30411 -> 35085 bytes lib/assets/images/logos/logo-h-t.png | Bin 96083 -> 47020 bytes lib/assets/images/logos/logo-v-t.png | Bin 126651 -> 54093 bytes 7 files changed, 0 insertions(+), 0 deletions(-) diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/android/app/src/main/res/mipmap-hdpi/ic_launcher.png index 8f505f6519adbdcde4747ecd7bb795a3f5fc7b25..1c17c66c27664a9c8c394e623eb2f29648476330 100644 GIT binary patch literal 10206 zcmV<4Cn4C0P)PyA07*naRCr$9dM8tCcwZ8wXl|{mwIeYJCzwh(b zeF)B7JOBlN5w2zr5lhAp${Sh&umT{p?)(4gR|+6Nl<;91DES-}N9F?X0Z3p`vv3Z8 z3X`J)Np8Q0^2YW61+UkEaO|T?yU0HPBV|+mFI*SQEk2H_s!*a5TP}ziIZTW94M(_a zV*(_$q!>7&BbQ|LSWgvdH@NJIrBOp7n9bau0qDQ5uK)TYsj5N_h15VnAq|yP@`UFi zv|!t{agaC$5c|=S##im6#L&vxC|$B;XN#0lP=#sS|K}GWAnb?d;m-k2fRd(gH6;w%zq4H1Y%@~9!-Cb(Ah|;>1^EXpR$?&>j5r{wqEIywp-k`P zPzXvS3RRLgswhMQiA|K_C?^P%6Gh4!^bm|j!W#^P*Xs%4IPE?SF!uA$OFAvzvyVt# zZxv2$Zbbk~3bMK#6zvXoQu`bV2GQTW*h1ra%_KpIL}=9KQzIS^BwsZzha*sxgha5x z64Jx|O$;CZS7S*6PT(OJ_0U5SVH9u6 zNdR<6v^!jX8z44GjswT@P-PiWuU83`mLcNx@k%6SN&!_NO86L&gZmH-98~3C9;8SK zIK>Y|jet@Pyl4X991slYoM_6XqPZ0nOs&A_nrKFs0D?gWy~C~;las+{fvE=@^X~#x z4?yNrWOYBNb2we@TqZ&E&r47(V3@RoN=wyXaVaka!*NjLN)q+`OhcusQC;>cqSYq= zME~S&n;<%x!;;jKn3DQZo%Ko(!N#7UvzVwUJykU(C-a;r{w<(1fc70Ak&5z!1pN(w z;$qDSf~H2nq9Qd=R1%XG0ub5v6ZI8-1W)-YAW-}}fH1Gs4x`ZwRn%+ua8ekdP<7m^ zjT6mz-!>W>!jOIou{OAu3YH#Bas;Ce=8Sa3l$Q3Ff%@kFVq_`^psIr4*q-bG)#!;8(Ce#N|8nU_{ zxMUTJSsBeFhAS$lFE3w}{6QW(r*MI?#cJir8HiRMsJjT83pVGC#FBakF*6U`Zvs!&2fAQVzTp~7q=E|;AoyB)-3x58-DYn&Af zg;DACqpZS9tE#*dfe=HEgVD(GCL=hGhY|^vAz1o_>d&8#fM<7|am^{$k))QBC~xgX z*f0>C7_^r@K-BLDl(fijav3>7R z{IYc)Hf-BZPn|rYLXrWig%=G*D6%BOU-E@oar{+Co;|f5!o!_CirAY?pek{S7QJF` z-kj4r95HG7ovS{8(vf`m0iDC)tXG2K9wu|ld?)jiKw%LNK?GM_v`8&J_6*=J2f(<4 z#V1ZAwSA6rWRBrQ(I7Et@dso}ikt6uO?NV+e;@Sf+7=F*rOxy!J$@9GR-n>bjc`!0z}51XjBs7!&yB#0(66iJGz{(`wEIXM}qF0Dyf z80<|*QtO#i@9Iye3~N@VV##d8GnLhx&GV$`&yjRorKCU*oL}<0+0ptk zUe5@e8H)H=mkbc|ZTzQCtG<)@%(DgO&wo`dIWR81*w}#P^u8pe%{<;<&Xj`z1;H@s zcgt1WE6+ZFwk;ah0HdfXW-nTf*WURIC50t`K_82w6a~E5gw&KIq@^aq>9j+y(?ODD z_FZRzqSx7R{lg`(5Zsi z!Yh$bF)ced3jTuSH6Q^-F0J$1syX$30$FvmXhBSAsWl*79H4e>wP1*uaqqF?N}#Zq zC!!Ffr3Z$?cj^;1#dunl!qw_|;?ABZ@B~t2m7J88EKGm?A>4Q8_1c8Pkths$9gdwk zi(yYp!!PT%16DI2MKu%NA-4^#x%vup>X3tm4bot-m?1K=P6$|hr6>x5!7z$T%dmI< zVf^^>CT#v~C!&D>h|vh@t47o2S(y9UxbQsu+-H}>M@z4{m$H%J9bVakdMohaakO}j8; z#6(n7c)*zqP(xw#ys`)WHS|sm7`6ohi zHS}Q3=uc8}KcbRsF*nRm?9H0-%;7pOSdE7oPM6D_(}q^=+pk2t)dHcBJ+ydp|2W^o zz%dvalay{>@+L<|ITVl~$-)ay-j4~7-K*`O9M3=sJdYJ?w_wn)=OJ^<_mJRnIq~!p zBXLvTt2L)D5DaOHCM1>@`aRc#NfWz|-C!~ppf`xvx_vLEOnn^T>9)O?dB( zXL0-Wm)9(SEr#bftlzp1*A03cR1hJDf@quD7E@n&4vjN2;PJ%xg!>c4fQ0_2Y78u! z)r?>`f=RE;!nZ3{!{D?dTvmxUW;~6t_w@&J2Y8;-#`x}+9T@uXWR#ay$fCm`$kA{K zE!xpP9tOqMrnfaC8C_OU$~QNrBuT0yi?z}n=2X(O=YCM?q@2i;Nabo;u=x%R-Grqw zB=;g29lsKEdZ$!bsbsfk!Y^Ae0qt5gfh;Q!1RiYiObVEIcf9c-RC%kRL?h_ZqcdjD zm;i%Lhd?kG3mYzSF_3F#6YIN`@e|`Kv)P1~r@nj+Y!K= zO0s*M1g|%ty67u((u>aPCxXF_B1AiVl?8T4`!o5dMbj!&;{VI@0my#_=$96|rVBk=l^=g={?tw!Wb3Jx7Pfy-Jn)qprZxz84F zHXCvDcpiq{|0pCTd9s4--@c>8dQ7s}Mkb_?Sy%?riZ6dq#S{jT8lnZ;u8-HjVp;>3 zU@|!n44$nGkY-t#F@nz0iZr-lgP_;BrLqd8?=4sHUoDsb9WOwob;UiwL9^alfk&Tt z9WaRK(!CQFzBL8afndF4%qDBKn9zU7NL<~kJDz>~-zY2hYm4bO_(9B^G9K;PTn2+t zhtHR-#+&mNW7U@nHA$;4^~_W<$!*7!*Wbkl3qArU!JvWHW6A92>PUKmCz(4jV8jHh zT)tKnlii#gjaJcut-TSg+86irYNFZN0L3b-FsG5mT{j5^YZIxwLb>Xi9{lRXlc5)N zVCjnbxPa|qyPHSi@WB%RM=u)YG%n6lR@$EXCI+2f2qwm)SWuXM~X>>XcX9~-(bLT#sEiQr6 zVMlIm8?;o=>{$Wf~4hM!inl zxZ+K;Z`HJp4xjInFkR*d!Igub#D?|TAy`aUyx?`TZrKdMP^d;7*?mU64!iap!laj` zYtk`o`U_~@G)qh0E?c<<^X4u_S#fDBh-H?`Zo{B~{V?jmp_)oD)!w`R5MG`%6WOg= zVCJjiQC%IVqwZM)AAX5p6H`oc$_-qDZr|~$BumvH{>#O$kO9|Su7wWFhp6vL49Kiki)$W0@#(W@ zke!7k@6U$FN-uFAr?yx#m6BBzAAj^Ea&lXvXODK6yXZ?ypZGdpF+G2OfGF*Z1j(VGrD`aZZAC&yB&z-;6O&zJ&EZtOxW4{PxvsbZyu2 z_q8Ct#;?|G!EHmwQNe6bR8ADsqOJYlFZqUmW!%!cZsB$MWVx)8PM9#7dtuDo8i|QQ z{ousNE=Jf#^9s@S#u1Rbest~C4fEf8Me}>kCv&Y2C+nn4XVElh(t3tAiDA8yoJ-eklA?aO~@%HrFB;2a5AVWeF=_P8xaDG3 zLVwq7+Kp=mKM6<@?!0>dCXOGADoWuFIVaY+S;zGWTze5zIlgaW+d0k z`sYvn&jPgg)8!~UT>xGbF=WuK$Z3;}$DVx^tCp?$1AxM4c3E?L`ra&r!eM;81fL?iNG{#*DKyhEGu%rSVZX7|&t9%TgDuT2Q ziv>sKP`R=~>2^g&e&f>DwcTL5cd@8Cp<-KhA4ZScAJI~wH}>y~X_LpnTaSv_<0{6a zlc|{1YQg&-eSsOT%=$wWyZ+W2Fk{Md@OXT1Iqj^TsCm>e6=MPKIbvrjw&=qzF#WZ+ zG!=Vu+7lRa@2!8JVpJn>*7?(W$dmYW{We8#xp}!Ne<1;^Zqm5RX2D=-E|r$6BgYKk z-kC7w5=c7cogP1R7H#^DK-A+y=PSBm!CO_CE~r_7j#4;Ox-k@V*aC*sZNW2XU==b%VVV=S?e)MN=d@dp#yQx;M=sc2a}e0i$29CA1uX9xAnz; zo*u2`m=c@7RE|j%b5IA}`!Gt+oJDHGG#p*GFlKn_NyH`my!G4mc@ctM^Ic+rdgskZCYyO zAXQPcG7$5SliU{U+;db*liYdRjTeR*7Be>dx(%bpjt7a#xZ%cLSiNXc{c&VG4Z^aG zSKRh63v^}9Y!#Hsyg4Y{J1P-j)b4j<(Y%6;u3rnb^jl<~SI*4L5H>7(1DWZ`^@bb? zqTaUmD7xJ`Mr$)^-ns=oSva%C^d|H`lOnwiMw1RcZ&3T3{as$+!HK+6=-#EhmN&B7 zc`aCFJi~(0*>e}8TjyL{(W9dl&0Ec8EphMj)m5>C5A@87)A9APZvdI%?HNyE)II$! z(1OIgi_5FfbHJlGar~4luzaqPTx9f_Q#iDdTvnK#)xu_|fnw#|hf zmrO^h+flE(uJs5~icYsZf<3zqfi*eKdSep$^uAmx{?#VZM1?|g02Ku($u^99bP~dm z2o}8cGRn%mSpCC#^t!yW7O*nQ_wv*^_+`^ptXwh=;jpBoOA_i-8+=yoDJm|*T|>tp z7zn^@HRI^IMMzI^X+BQEuS)26 z@iPjhbkexT2Ek~~mMW^0_8nXEYd@U^x5IjYBqj8C{%5N(;*lwUQHQqe+Tg?a)4)=k z^*Nj|GBsh-)?Ik$k^f-j()q}2l&(eX{qA}YZ@l_EI_9=UFcg6(^0?`a2QYTzzi?Z> zYvJ)!*Q9zA05NHFyX<&j@@#zm$ucdBx&OZYSoGTCbyLIfOsKCqi0kip7Qb!UrHF19 zFGqr>Y0<`B2!~JqUcxLE(Z{aX?^-FO>o0=dlrB|NDxJFI@T)(170FIp9g~?zfif`K z_8o!z{Ij5u2%h=RW4Ql+ZbNy+g(+7C5KEJ8{%scu&z4}&fSa^1f|YCf4H~XR>YZ}i z!XF4~7O|kPSSui=B)K&{s%;&aB(gNf&OHY)Z1|H@B4SrqDh0AOhCf1_4ot0 z`M&Ykv|)QJQ5FrC(Sl9A5v@LSt~_l`f(}WD`VTV+(vwD4tOKQCTCk}CEcI#E+AiIs-yxDKiY90Tp1`yWGo{%NSyAw2fz zP`p0=!5ZmFNO?(x2e;fe9^1F>iAzqjf|l&K0m1Se=aTkJd%FD$PE4gIH#cKtpEQ!) z^B6dtg$B#kqj1YDEF`H5QkOM?-jFU;Rms`SvV@f%Oh)VM%z8n(edHvpSoVWfYR+ub z0Pnp!9S)lffl#PkkP^9`gu1Xw2TR_^Jloinkka$PVP@T6FktLc6Y=xf^&o)qhwxJik^}U%<@V3#NL^>OJ@3 zG^|>&8akU5YE;686|>R3{bjLy65|V=*DAetjhKLvl5$zJ+XXoiDxihiZ;B`B<7IVw zQ);9W9xxUG)|4PgXxumxQ>Tna zPTS@h$+COT4-+n$I*5PBzQ?4=ZnvSVq7u))I1L+r-UPkPiipRD#q(am(A)YTD#=>& z1iKb2`3|F>or$O{OM=BJDk0xNTC%er!rqfLRaMqE)S%P1ln9NSEt|=Dms=>=vN=o( z)}I5&kes45k}KhmQhDf@5G^}<1Z8{r#S8t3&JG93=>92ZOYKXeAzAeY`4PkJByYSl z3I?56r+IoZ}kx)aXery9+ zE6mjC@1U^YEIY>m*&o2$)1Shqdv2*|UWiCCo|rfXZ_odn60=d^^hQCgE?Y+n_T2^e zD{8>8B=tse$1e%TyB#f?DW>#vPV)On`Hr1owczJk0Hvh5Ty0uu?JvxItvYg?4;L4e zz;oaZ_)C91M`GZRnmdbgWR2md47tLibnM!We|PE==-9TIw!TCg%J%)oFmU)w$Uj*C z-fo8C4qZVp+F(uzZmqbl$1It^gSt)GK6Ycj7B z;A+!K)!A$u3y?XEqcQ_%$M&##=6nfa0LgMqCjsGk)t`Tw^PesR{P|N*cJR5l3dDGc zWdYo67V>6Ct{e@k@cPlYdoDL++;CibMTa`H^3n2jm^gDWjvdL1Es%{OOWN;tr$fs% z+ig}2BqmM%>S~miSD~V^3N#dsHI}n-cQ}Hiv?M(8zyLh);L>R)NB{r_j7da6R6v+m zJ0F0J+xO$yR~F#cU$(2Tu>ydRQ$qejv~>5s5vtr$O9RYYgU)kRUGhCTt5I>bZpE>q zR*7a#LdYcmRLj?3=eB~y#j5ATX`cE^R>Qk*SiJfeZ{marsX4E5_N<3_jzIGIWY+0D z=+-`D+?XL~-#WVnD6c<&kC(5*d!MfXQ$GY_{G|QVcLI^kLz7n(5Cvp6ZHU4BuEIk@ z`=Mc4lJ?vK$4+6|oF(|+%kL?ok|H?lg4P(~J3Ut|-t$a6bcoH>>}*GpazCJ)vAr=l z*6GU1PPLCJ)CW)++}#cs7zZUJsCGU&-t8Lod1cShJVEl57s7LNB>ZQ;uG8~pPQ8Y> zFPp}h937}4LG}1#!D{C3x}`T6eP4g{=-9djD7NM;I}YN94Lh)D*C8CsKZ~*|FM{Ey z=Krwpgpt0}W;v*>#Au0OPZjKhaR7SK%BsffIC4Lcaa9 z?9kH)7O$>3u*^nwWN{t4Awb$ugzg6n$*GQd0g8EQv9gRL zDZUeVe6XYp2o$}I(mhP&*g5k=SA-6(W@Ct>=~KMkl*SsUsLv}<2E)`=#;>ejv4emPyg9v+zW{Sb(;%m45*5-ox07^%4_k$M& zC=QZ#SdQb=Kv5BVrwTc>y6PCb$DfA(?27mx@nF}I!X-5vO>LPYc)clAl_jWtKV^P^ zImN|wYTKM#-l+}gl+zrSHEo23=}8xK-?J`R1_)CjCM~~iKY*S4kEzwAm0CXwv06A@ z)Ip7g%Hb_oqz3b5#Z^DvgaN?SWEgDCCW8}FOvz5gmYvOU?3Cg~&TIT>4!XdBi>sU* z2*}>NQ$o1B3J8@gL*Z3B_2Lw+{BJ6DAA}AC_Kvtip!t|tNjR-E{3;Y?u8PiO-F#v*$O6mCr)qcKzTz8 zA{sLYCpf_I%wuN_j}b~050xWDM5;cjhJCvsdv_q zQ1^p|loXe%Z7WJ;<y*MQTdumgU2hZUyuG)3=lXkF!YE+_1B*Ko96D2Bfsw|Vl`#H4qhrqK}Q>eU7M_Ge7 zuhVgy$Qr(gc3;iAJpO_j{qDkI4l#{Xc}T_XUFA5njlG%zAPu^GLk;eml5$!pI)_8} zE97=bXx4r)NutC4T&Ml{gsja?OSdMDPyV-FY*LFJI8jtQ$Md+r(fylH@>|bX; z5J~Nq>g{GZsa=jxbLjP-+@1Omywq3Z{I};3x5g}-k^|LJ`Mx8fTD1Eic=P8mfS7Ae zNM^4M>PyA07*naRCr$PTz7a>#rl3v*}lo9(}Q&6Cn5^cq+A5CAk|9~L`6WF2qGvofPg4q zp(r54P((^-q7VfXP>M9E(yKy9-Rvg2+1*oq&o{d#Im8X(^?L6g*Tch;EoaZnyz_o_ zz8Mb17Y9Jqz5ic+S%d|>&@K+jlL~MgWPbqe<9j|+ZXA7{&<&y>+FLl+p)AIr2O4MBrGvqW7@v3#vJWXRY?;5mjU8LQ7+8Q<8rnocY{AC zH3*O~wo`Pwz8fsD(emE_iE?3fu8@RWIO08>0*#wp^rJHJ?ZaXts7MpOvDJFv`@RhuK{F= zAW%3SDtLkCIF4t?5KM{+RaJ^1;y7?T;h|x|zL!-+QK6`0b@{&ptWp6o#{M-TMxF(r zZ~~`tydV-zk}rTjz8ir&r%!U{-joa6>1x1}t@{0LRh4~=B)n+mM3aNJ*b)S5WH~V+ zx{NW>!Haeq1fzkuX{sVis;vBb!TOIeNQKJr1dJ#s3J@spz?XT;Uzl<2Cpr7qJ&HSP zAH2@ffd5wj?mKw!tZTAnQ8FnpC(3?@Ub*!wWRaK*cS#o6Aae- z`G|_`#j@2qTNA6-HOI$65P7JwB&*7w0P4;R`V#;ZF~%SSJcTH@e#Py*baJhdbs-s& zd#?@@0wJ8!Us?eXadP}bii&4+r}DpnE%1E(kf_VwK>^xGJ;qznAcKVjxosJzH4iUJ}3 z+I6|$=L1WXTW8+^d>29kAf{+RohB~yl>so+0j!N+jcX`G$JdUEjV%)q5fN!JTTDck zLSLcZ?RL9zvvSg9XT~`cWFH3d4*-Ev^mQ2EwWt&@SQ-oE9vB}{r{Po9vI&4H%c`v0 zoqqbaSTTAC$H|;13f}BIxK16|C0#u_HY7?cvJ0_<#;VgHh6f?Wbv9M1`BcM)9<1A< zaec8-{d-ZXY6T?3IAF7yU=RgHv4EtYz*~rnY!}X7y@4NpI*Z-=kEn+Z|8y$<%Fk&C z@64t@ZN-Q+0x!$5D!R^}&GVex zJqZQB%nJdc0i!8f0>=Q@pGIu8flXSpe6(k$$Al+aH9)n*GTMx54C53<;S}aC0X)Zn z=XrXg{b#!C`ps;l?Ky(aHg3naJ9h3y#<@j+D>cL_x<{|*sr@L#)Epmif6I~f%848Y zg>D zh8RnIAaJN(K{knw)`l8QK8&i{;Qx#^ldJ?}9$c7w&cDPU`Vr5`;6=fG`KsbR`psmx zu1wRhh7G#dQdt@ys^-+r-JfYYc4$vDxUU)$GgVc2e?a1l2AaU&MCTWHaq{dXoVjof zzociwRp4R4N2JYy3T0wZt6C-0tz8w75v0F^7lCCEMFNZs{^Yr9!i)v0@!87H_aN)^ z1fX!2P6txk+N3%7`1@u@Hh8q3t!z9LDWEWKP0zW~bx>62n0Ebs8?4d~1YS~Ph`A?z z`o(u@$4ii0X*$+W2S~ICBs;|N6YBossS$6Fd)e@0%Li!y#1x)F37+R^P)ueve6<_v zzTAa#*E3+WSP`EPkJz|a*qGzTp`gHn?Ccz5+{%RCQ-G=!;?VVpN6@u>D~N(XXhW72 zcCR4tYyx)fKPkL1eW7~rt4;GEU!MpdSJyWJDaa;kx&F2X+I|pOqlSee1+Mp-{t$yG zc_fIE-%}{&9NM)<;Ps3!9YU}?&itGD2d*M`&^KeQVxCZjAXia;!;!3aW7 z3RBi>!$-?D!xRyP){izvqlOQle7OXeO+h0QQb9$peSQTu(=+kop<~#&V-NCkve2*R z6ByX11ACq<%it)u3$`Ikvdq7`cmp^2?Rn>XR}T#X3ce0arsh@z*(63ZHP&vmBD&r~ zRRobM)=PJ7#lWe&K~%iiPQkf9?NcS=#GsHO)Mi2_QgNedwQN6a(X7$N77gwtCW$n= z1d1ffY{oBMyNLm#XTd8A7}&oz9&UI)V|Ib35PrWD3{=Bh#1Nyw0ISW+Ks$W&G!`vd z3B{L>g)>K@PL0Y%ZOG(r&`lgC9X@?Y95{Lo4sT7J3MD;Br<;gH8sjU9Ra$%&-LOS- zqs1sGvdsLe@X@?3SXBZ6UN9Qf{2RCUyaQiOf%DR&kaeIjX);X>Ibg2#anFGRdn}kb zM2(8Dk^?IcFf=f7W<^oJ=Iwhic)|ko?b8j<_38k>UxquM{6Df(!H8Xd5gYWM(R=N` z-DZW^B4YKrG<>{x8D_oN4?R1yE^3QtA_v=53jG1RI(0F>@V&WTqTtMn05ZaeoRu$I ze`$1+$GV%N?2_ych`hlNCf&gR>bu??6BPi*iSDb{Iro9hL*PkY5K?lQKNCXVR0DB! zKc6{c+=HWE>O`y&WLe=fQPP-`yfzJQ&RK!EvnHYb{ne3?>0*N?eN@^--;wtj?qb;v zML|M*B+i__hL?v=#2fuPVOZZzMNDF%M{EkVA$_zeO?>6Gsb{2{2fG9Q<2sOvr69KU z+~}rH4YkBXNyLG|9G7@|KFCN)`o&ahnRqq#?0Kc&(B{7IW__l67&DeZWo&6?ul~rI z~OkV=<&ixOnBUXAse)37#WE;ycNOduU*w_D&TCgx!ktj4br&{~ER|nuvz? z*D3;2YbzkhnH%AO(FUd*unyt-4Mj{hR&eB8tT}F$Eyl z%XH_fwOSQ8^K}RKa<_yB$NtZ1k91kNb;V3Wjml+7-%yNNJZMr-A<<~u`4x2P(h1!< zx52HjX&++U#;w@7WhJa3lkarqVeyjB z(5Lq^C|@=K{s3u#px%-s330IwY}>IHix;Qh@aB1JBFGch>#>kNRIaCIb5A@s7N@>h z^CIBbtGtDv4k$7#~+xTk3R-}Es8qrY>MA$7z znlTTnS8v4kJ5!mc5UVB-XiHaN^Vh3Uv3yzh{QlbpPpm3m)`7vJW}}!Wg2SjD@^|K?Y{VCPf5!ZG-^8uVV)oD=EEY2iMiKtP0P;N^L^~po z`o%ZM&dR|Hy}L4fZwojH#$zuJMJgPsp1@HyCQRwl}Yg}x$@CJ`!= z5Q*0(zK;gg;xTUMvqh%Aq%{nIq}<5NMT@Q@l#6>dbOKyomXMqxkixAohrqEu6kE6L zj@=vQJL*)epo9}EyS~}Of)6jxjN55(Zcq#K)9Fl}? z4l812m=o1XjrQ!=v@o$*{aWP03ng_<5jYf*a2zgQzllym-o~Q2(?fn`P@D)Lim}pm z>_O6mneaGW7&UPudUx*#vM@JqW#GfPOR)QggYdfxg7JnZpj?HrcNqG} zy11)_FPH@lD`NBvP0Y-QuD5g5$_0&jJkj(wru?^*4f-A{Hf+c8Z3i*;oi~w{?JDv| zf*`5PBanZ^t$EE-yIe@ zb{%*OIfq;7R$15#>){R3%WzN1r1xe%mo%iC6p&<*vV3>Cw2e2?Ve#`2*CiNBJZUe!m|D z1zs(Zzs*67i;2LZl=bjt|BCrjhLx&^^bLjlBxzRi7vk%KMyA4d;TgTCX#j<274=HT zL8Cv|xZq7ml4MZ`r9kfpP)I@d895U*>OP2Wo!T<5nFdJUh@yxHySb?3$mQ}t5Ja56 zcp1H(e+679eG#q=YG2CDLx*l1F@4f&$jfshDmoG*H5?CkJbvbRYhJh`G6LIne2?$H z-HG)dO=KyNk{0(4Op|leA$i3*cs*Xws&khv?eXwKwXt&bS4bNFHbh4x z(=p*L(jT(75Y_LkiPgy;AkXDy&&qcffL9fC?(!7=uXc6jPLM9L+br0B_&8G6ti!hC zX?N5?`t}&hRaNyC`js}%j!_S6S^5~H{BK$Ix0p`Ry`LRDY59to!vg_HGU&bEJAtGH zh8+haq0JMIqjmE}MF5#hMqIi23kD7w2anfFxmHY`G6r2bG{?fFoACCO*${pgARq3j zQ3a_h=Cj<;OGDm-+vNrq2w=jbQFyXlOSoJGY%Skzwcy92C$ajo)%ZGP`dtG=;|l~N z@}~j=lNK5lO&&V{$XQILUoT!QD6+E zff3Pz?t~q?emID&Uu?maPp0Uj`aA2ODZ?KubL9hYcAQ6rlbc?_z<>)O6cFGGqQ5rMY2!yWui*;f3gCr)y(qc1s)H& zKmQ7@U%Cb{P zAZ28u(PJ&K=z}T9$a3QNu~T@s@k5AlL>7s0F_VL4e%kCMs1jqqq~Xu~t`#HqgX5q& z-5#Y;$6@OE?^Zny6z<#k6)pIiIM$O`qxa>CTliB!egjT<{7@Q!T~u!=aNH@y>EA znLnNRDEe55BJA{AS@>w-GJLgcEjkY9jkhL_WCPgr)eg*=^$}cI*}<}3YKN3I&!bh_ z7MS?va3sV>~<6e3iPqcdYjv^LP z%=A;~@#iOs+m|mG0_0MHP)o_O=Y|_~=!UpS&kTD#Y3+xjC0SO)aOqKcKyZ1UmW%yp z^3T_hG~sn5Rw$0T$wE=|K7H0gto&ppUKu?Y-MhADO_Pp^iL&75^VhL$+qW!GC9|Da zu^gH|(g>|uG-l%I%yTpL9Y1vz)2F?UtG6<-HFYT>BO_SKgD%o_*|~Wb_2yLUSv3=m z2pe-V!c8o5M1#4e!1H51G^EU$`7V?jqf3IL2dHGQ8U#tG^wFU4<6d5nG%z5^vVqc= z;TqJ$?B#JEfRBjBh{3&X6EgyrSS2Y6Dwa=RR)->R3Ll(#F4U`An<-q9FY*s%B?$VB zn;E!z{RZmSy_cmqBJ8%{l5|EE$|S@w0D^i%MqF$pK3TpIzg{?lmG8e%s{YaCtplUp zNiobGpR^2tD}77EVdMj`Ro&9k9h!fn!dP|X>u*i!@y_edl?sw3X2(unME8-iv2w{A z1Ol`q6O_tec*QeQOiZJ=&TKZKQ?~(#j*Y?c#j}_bNGT8cTdrIJ3qJQB{0T2VHw+6> z=Cbf2C)deVIhZ926noyJODGA~^Tm-^IH^A#X;?R`cu_wHOe#j1Jb#TL>GkoO;XO~D zvsQ6Jp!_x#Gn=C-tEyt~`CL?)p+&SBs|1*8tR6cfsq?fEy#lhV7{ZC0<}h|0GzEz@ z>tIN~XMU6N2((e zm(8OlVuH0y2Ojb-0Z-PE;2hh_^x(?Wo26dd-2y1QR01R>;xJWPHEQyNF7J-%8&DL* zK=jai+98X8i&t-;RqwG#Su_jLQISli=&c~J%@JwG$gwjZ1tfg)KoX~tZn zZrX)Ityh4fr(#_=Z9mN z`Zl#>ognam$@A72lEzFTaELjy{-iM`s8&odkBPP0Y?UtV>V^DUtAhZUqMwd#`{HKL zwTtI{$G5fzeCJB!Yw0c#hAPPe#*BJ);ncywr5;7$Ldz>5T@Z|Y-dmE2Pq*yF+D~UA zJI7s=?9$92&3=gLO#H~%BNLr8V?I``-h>}^tYczC3Rn{-3YxWyq$akCBBM-vBzg}R zhsPV$!lYN9`%V0%O&rH@(ra%gi*u5uZ-nncuMl%?2S^}4@ z6u^wR?~Fovy1S^XR}Yf5AV{BC%qAQ=d4^f4XS;PM3PLqDXbL$9PH-uxeA!5hnY;k* z%wO@<(rHXF3w&{{RH!eiUy_u5V?GpC%>6JKfvW?wDwEJcXplL^sLs{~9ahEEx!35q zm5H3Rl&-hcNk>20cfB<}+OJ5eG56%L^uiNgb%Df+lr+CUXX)bKXxO3Wj5Q0! zfH&J|$laczTNl#`$zvQ;tPPGA1?QR5F3(R}dlSvVt|7tRt!({viVz{gR?6 zqPCo@%{I}y)4)l{E>JLM#v6!oL@<3*+UlxKSLm^0uZc1AJ?XUqj~AmSybIo+k1b2z zg4txGXq@RpYLos6JTHBJ^po4 zV`qEHcA>I;Fp;~mP5-zOEB*Ead;zJ361ge?F-WDiHJChtrdGo;cheV+_-7;GqO(XegkkOhZtF+B+uH=aBuUJ z=m#3#YcLAIvKO64`^Pu4utF+9k^+jDd*a9y|IfSnL(1E(OY&>pr%dHrFvU%3(Dv#6 zlSjSCKiTp@t^7`)+%I|4ntyWP%CFeI=MWAaKZon-*~s_$AqCNdK*=w&5fu_*(BS?W zX!FQJs9ilVq>EGr4y%aeSQ#Go?SYg0#CMbN{TCaS!GCiSPaTIz0XOYXiHX zZL@l8(rK3c0g2V6P_3f=qPiZh&&S+Zi^&*_&2$&}N+hmEqk)A}1i%kR&Tw-UufzJa z>vtjh+*F`|QWbQSEaXh!%RDeA@}XAG+RDU*>J!711mAUqS-8{&OVp?eFB-T)XFivA zeE$#9wI4?y;5k@Ir)W9vaYR=g_DJhCkN4}@o^Ri}A>yJVh*k8T)i27D%=SEygUM4S zp6L{YIebA+nO6lt(5hScJhz8W+jA5juh@idx9|8CndjyK`BaTU_h|Lf^q^pvZ;b6| zs@3d0$NxQ0#b7a%Uf~+_HA<^6E2W6@H^!EAgKDK&g}wXAWnccuJ#&zI;T-_Zkl1OF zFdJ*|5tc?UCG<|H{lL?$TQ;fuM5{(<@?dRLt(c%?9>Z-5wcwf>3$fT-l`mT>DWdKpeQXuV0SXmt{!YdHA1dMu2afic zZjXk~?SbpeiSzyo2dAMhoobb7=JXxbZ$pR%tW98uZDS~#*raOpYPD)suNqw?u{;vu zVqmwLSqr43GqRnya_t7rUbvih>HLNBh3QxK!2D+)Rfkw= zH5wIJt!9j97DIbBN|gMDo%~W6^e=9xqg_4%r_kb-H!BDEXOHa<{BmLzycwHxyK;#3 zT3SWFQ-=mu9@sI zrL{u8(LkZ!=zumS!cnffDe=C3wyL#jnWG({4J>N-YWm-ijJtOf@ARNj=m`!AFNjc7 zj`un9;JJ3;s{hxs>y(`98z8w4>vrmBPat;b_k)#uvL>D-R~92-ifPJ6RqSG_T&IgI zv1+W*PCKd;StX_aN47xeTl`BH^qV13h(X&i1uD}QB(D#?tV|T9UppDdy!x%;%J>f6 zykmgxm(beN-AsiQFx~@OOatCg{vXDKds>>yRjgu)j)7=0fc9jna%h$KE>?p}ZLm~N z`mfm38xp5v0Xa!^?3c_ZzOislXW z^1MB=su&SlU5tvaY>J98igr5$qeye0P(_!jkZJ!nZ5jW!S+TpB^Agl$tCT#aur1-V z*NL2FS)uKdpq+s#6+(rQ@N7%CAcCh&E20Q4xTztyHJk!A^)K2Q{vQ#s-vdv7r~t>Q z6we0TeWtrL1s;q!Sd~57@bRBHT;RXPpt}OC3;MI=Dp#zp4eQ{SrrN0kYVh1e!a+A;7ULAq~(f|Meib+I4RD8e^ zIcmWpy6$h@i_XUQpFQf0>Lz>vxKFSnx?UiUU9Sc?h*8a96kcChr2N|sdDDhYfZT0t^dB`Y|Aoeiu=szJl(SMP5wz|A0000Py0RY^oaRA@uZT4!`rWw(A#o5}Q&Ne`q_f;0iCejn-;1qDPA=>pP0K#(p9N>R`# zARk?ES-b#nR|B94cp5NRk=)`- zHa5APE-?;FjQVddlgIA#BD(pXT)*E#h8PIJS6&I;VLt=MiSF?E?BToO?*3Sn+O)ql zCo9CnXgFDt{t3c*=;W|1sXuvKCW`zYE=`uDDOn1Ic*prdRj}mzUX-8cMM0&{p;Ei# z$F^!gtIcLg3WcbDvWYCqpa>|MCL2fqC4+n^OCWg3rTiZLP=HL!l1xD&zek?EQv;Fv zIS#zrEmfU5L&^4E+ELIY4Q4YsZHa5$LIOq6ceGXn8O1Q5Xj+m*K@$7{hWGj@!RLn% z3_;=r$dVKmfT6)~tU^srs{yOk$ZSlENHGj8OA;-MVpP&Q+8%&ddFm`9Tsu6Df}z0( zHog7ExK_>oUVtcYmL*(~1h0<{IGj|V#s$IShUE8@Bj~*d(R&2~ZwExT;$t*p1{0G4 zR+|l#Hk*#o$8rV()D{zBtR{)o>WHlvSrG125V0!%9K#nLo}viArFYn9YjxLO3qZ`r zvVbg$L8p`Pl~p0&a6tCeoQ1D)4+53@;IBCXAcEpgm8nLIts^wCk3wVXMeD6i)v;FS z660i*$tXbvqgdpxe1(Eob-IAz3xApX_W}^$gx?G;1)VN|y#d>6bo--EZ} z>pG}vLlaIP+eu~(twdJc5MYc-h?YbbBL|CR-kmSHtB)Y$zEJm!HlZi~)Yje**yi9P5sYI1mZTD56A|EraD-CP04o--p_;vdPRlV<9b`G<{~JBcZ`HPnq?$^MJ46BRziu+ z@_cv-=c2Z3pK^~TwmoOddY-3@eGm{-v_XT`IT^UWV@t79n`UyOj1*W*dL?E$YrXRI z8)Z0p`U3Us&!?E9r!PZt`v46mu(D^5P<82b_#KDCf+Y8cDQgjHO~^K7G>~FqV<|}x zs3@jzRJff&w_AWvhG9qq5o@m&G2T);PP}~;rx3tYQAs(@Ub>DO_DTeTJdAoRG8!b{u10Byw^`(}N{5`cZNIeU!+mT~ zVJVeF|7d!Q;ZVTlyLlKK0u;5%Yyg$1m~rz zY^bWV2sIbSM0w6w(gw@c#>*r(pPZ5wk7=X(iK7QTLL2m2>SlR0R&CmaPxgL~YZtBp zwH`nsi7R4Jh5@W5+JOZ_WiyFZspx>ip@0`_O7^3+U?hCLQUC@fwe4FX zV;c!kz{KIbg%_s`WfN=`2%?0Sa`W)kx=#@(Dg_eb(7a_c+?CS^NlEdDQE~A40w}p@ zNB-H1C_HnXa0+qFvaw|LD2y7=0}huP^Kfal^9(fQM=?$PE^;EP>B>7hcydEFU zU%Z0Pc7B09yY>TaFP)cR!z$$Ip37ynLyI<#f~;zU1U!glf(Zk3)Q` zwX`K|2(d&=oDCJnPP6>g!;vtW*>Qt5K2~%U7PD|(oB>DS8_~$XCbruqIDK)wdfh8* z$eqQ;S&R@x3B{!q=r(v33Xh#dn}@q%?#zj}t7#Sj0Um*15K<%y*Dn_shJi*C1D0iQ z=$B(y^xE6FaXcSg`*g#ebqiq7YvFKtFlN>p!uIV4S=Ov|2=)^L;H~&Z!4sRal(J;a zG&jx&dF>Ud(B+>eQ!uBGpyOL?lt}WZI5!gRqK(SUhU7j>LhFykT910hl)>V%xnqKTy8sNeES3AzUU&k_@xih_doZ zOr7}(&U||aeMdiuZ7b%0ro+|Di@BS`MX%>Ej6u(fm8S>8b@Nl@2TS&B%GUH%Qg=!A z{K*uI4Tn;Rt>2f+jtxd_=|{>ixfDcY*wGiOer5?U>n%TG=rEVY0$ zr-65#ifH~ZCZY8X(dWmem9sIt??W`%lz<}Oj-0xHPTj}CmXd%E-+vo6s~P@a2nELcxIz zNQgBnN>Onfw(LG2Jw0&|XpNQ@D^EWOSIPD$PVkO1w-@JnTUR!z{nvuW$K|b>D-V03 z8%;FHu?$2>Qb6_@zYx3M--)@o3ovv*Z&W*63QdTH)oK+kT)c`^Yd2%XvU#YgcH#XG zw`11SF}QrS7|U00Lhj-@3dM+!gf7Gqu~rjaTCx(KuGoP2ug}1ODMP}Rf((vj@!{?R z(vb15fYs?lq3lR^c&ZO5LPU;?Y$Vz=;nMH@g?D-^t8!;Z6NmJoi5AELggS)VMWq#J zbnj4D;%(TzWwkzos%#6sS84$^CY=N zj+8KPSq~oJUBM>v=8O~QOB7mv0tdS-hU%OzJCq;kWkya48gG8+6zy1T}pI^zSBo zv~n&>024k(YbZe!75#Kgd0VgU)Lb@O<7%ygVNassMY3n`1iFf4-h za`YWBK=B8)S`CYpK}C5GJkKi>HJSAI;;Zj5bL8`wGItD?zc>z2#YID~B+E*)>-6|! z;Z%Mh%krhKP;`1Xk3px^oZP>L%1BM5qRtuxU;l6GMK*8~RwC&O!RkK}CRHjvU9hK@%}_%v0F>#&m@?gv!w?itX&>BDquV zNwP2CcTu#p(G*FWzC1HMK{&o|4Qn!Jm2(H#^!JiKFk}`EesdTff3^-y8)e-_A-yq7 zA&*zUGZSXx#E*xeii?FLN}w4UA$vLcj~p8KkL?jYOdXIWZ z*t7Q#%Q3Yd@}bWKUQvMpW0-V&~2;QCV4qjLbCjc=&#$SR)$TwdZSS zv>H6#^Fif*k~}mTHHMF$h0}+Q;@H7Fv~8YUFN}th>C{DQ#N{itGMte;&0js(2|zF^ zfDDZ$g-!YQuY%K;ym0MZ8F5mMmw;^}Q6lvPXzDg-U zcu2TRB0~SkuVUM}ZFqj^JdAp}FRH7mMm4NE%_V>VwavNz-#F z)};3dB}X2pYbbld=w!FU*$w>+D`TUW@M5^FrxwJ?qW}#s&isbe^DK zXgG{Yx;sy{A0GvG$p!_fF8(1lx!o?o<<=~iGg_Sg+)zd-fyMBmQf=)-J=g+ z^@>Fby+}?7XKzZ$4Mf8vLDjn53P|Fp;ZmDYgdpIJ20d<;Rbcek87Mh-37a-8#_+z~ z>U?hTs;%O@Mei}JQ6Ch_PxP(ph?ufwPzf!U$rUG`BaN-$TxO?@j9Ntn3cjBNPsyrV zmbhn!P~$O=9@$4&z2rHTrD+61yh4}z2F=8gFMq_p`#yr#7S2{```SopL7tBuObB(9 zay)XNiJsIfW+Sc@-Ne)xFXPgo-|+P0p~zc0RZ)N_$#{0&3SrIq9V}}$xP{VVed{!D z&R)PZXgyzTF^QfNUx!PB5Q#>X5`y@W>w^~Cno^AMv}q1axD;m^G$96Wf8c+0C0ZLbVUID%2{y{*_F~PJz1X_@0P@dV0vt|&C)|%rWjGF0LM*zrZ;8u0CSVx5mjE=bm$A#&lvt&ou50joiY|a{8!;CmnMg!6$Wl86nR&k=&UKtf2 zb)+i0%X(XjW}+-BgFPiN(Htv=++N0c@v_9O7~Zi>th&CUu1jr5dK|{ACF;b6 zO--2%B~GuSBwn~R_KGOCz5pXs^?X197rmlgYMK!OE*D#SwFrFa#jS7^zh2kH&}dRP zU4y42Oy(}-8GuG>c@mMxhkU1^eGDBsNd>ES3GSkgBh6euW9O;VD{+fb+*XfwkIXMs03O zvBu^y8E{aXS*fvQ*+ohIVmVlQRt(l0hu?p*?iqD_HyBgKQRd{wwTX$8J|#h7H5y2Q zNZ-~{uZM+D$YZZyT!(hn3!^Q=QRp@c{E;Oh&E&rnpgyf=N~Re`B3cU7dZ>WIiC~QbqPyn0?021q;Jpk!SPGGMDNevJCeSgd zQ0W>&ZOCDCrc{;5Oa^>Vn~X9Oqn2bz{`=Wjy#RAd0A2DxHnY>#xYo_d^x)3MtdWHX zH_7abk|{|N1y%?IA@~9i0s)Aj5adV+L1t_;$A!nNq`9k&k!g+-DVm}sQTp>)*k4${ zU0ll49^N&YBK>zNxx=~GRxLQS#q!Sw-H}Zwijv6(G$kve?pu-I)+-m`mK>$bhNC0f zzarZo{zl2fAFEE~Q=x({TZPYzw&v@&1}#R#Hp>n%Dm5p|WKj1{UkQl3W^gBfl%@aa z`pOeBMN@+NW(DUu`Ta+z$R8B#%;}NTVK*1o@IHM?QsiY1<)w!^f%Ct14+*J$hYP-I z=MUlLFTJCkxoG=F4RfQJ&?gK4r%3^1R%uWC-(BJN6qHLTM`Q?mIozcm!+H5t0Lo$d ZzX5if0}&#C)N-~ZihhG7O6Rsq2sR6uc0Q?t_CQZbiu zORdyOT(i`&qiN~uQke^C?qUXNV49faE{G^9qJS%lyP&|Z%zC%?JeL_7l~Swkd!KXe zIkVjRJpc9g-!6qm7Y9HFKt1;R|M%CY(ZD+hQV3=Afl)3Y?SE%cG_6*Mr>Orm12qdw zmI-6BBuZB6^|bk-;qGoiD6MTf;DTqH&f&7v3_L!%{Q@Lb)tSkVOfyELFP{#W0{~iu?;%5@cBvMaVJ@P|wGV zgMsXGS$}ANn9%buphz1M#nLoIbCk&Q;L8lK6&L0SrGNLch03yA*;-jdNurT(AhWEF za?u4aTCYYbuUcW8mtQdF?g55nA&a~ui-HW$G=Yz&>f#?Uph%n&X^v%N(6E-4zM*2x_pTkfbZqM$7E%v>K6+?1F3PPYvlT_f23)#+1IZ`P zRvtWfo|yp|BCS#}=As8u zd4Kxv3xvY#uK-v9kaUBDay{JYeHb z^elY8DgJKa&iJ*GA#WvsVv-a95CM2{by_cQZ{6(!7f%mJHVZ*IWpe^?3XJ|K3K4c` zN&ur`%P(Kdvt;}_Mz9!;IBib$AJP4-k$-dN%!qFAV#^S+EjbiC&(o(eE>W46@^J5A z8BA6|iLx3MhX8MPG;dlTFSHDk)oPW4K_)#bA9EM2x|tNWaW2G?jZTcqjLvVMwoRYa zx&|S>GHn07#BRq#xuT+G*Lsg;2zd89HJod z78_fd{L6CTZsrtwlA;1&1Ju2HkAIlBcFi}R*ADjc5P4ppIF6y~~9R1*KNpA8+?u;WIr_T2|FjBKM=m8vW!!zqxp8*tXMWrt>_!ha&FG&ymG zRGhomZZcKoq4xh|_QEBL=S~@+NZn@RS(S>zxrSO#XZMfpyGuS%tYr`{D8a`Lfha~wV&7lrn%!eO)VP^mbgQFh^)pYZ9_sdHet zJQ8olXmr$qa^}aqs>E zl$4esA}j<}s|{{Ct-_$iVuRj8hY~{t7Jst}OQsD+(~!ClMTJg@n15E{!F1;B5o0!( z3NMUv@(YpnYckij`|#POysXTM)a|Va1DqIqg9jnBVKB;+~D@j8t}XzaKw&@ zgotF<$L~XKsfhQ6_eJ4@GR3|HL4c>;4ev#N2LD>VSn>5#tbf_C7w0l_u=4Ba*!TM> z%$oNN5`Kt*yPHn&6Cwyd9}oQS(|-7IRz#1Csy>4kL~ty_pS^UG>(O`U?&93k!FGoy zG>eQ|tthdg@Hgk=iG*(DPi^g%vA-wneEY@7hCDBb9LJI@lW12~?0M{*HHaQR7A#G2 z%c=xf6Fx)>?sH$(JY^yQ^0lWIXJ%j)|sJBLRO&I!2ltiTmq|av@~hot|{F+ zMDT(ja>O(g2b3f*G>!eoPUGPDn;1K45FR`Uks|KLwN7jPS6==+~zkR4N9y?-XI#vUTvP<%^k9$D!0v0bd^vY}&RP?L&OfzkA1O zEhva#XX5bbOI*+117i5%%M*yB+YwT9Fi;f%Ip0Z}cI;d>x_=j9^DHqN$0CqOocF7k zcmy45by^ROrB zIF24p!IUXu;a|&7F(a+32IsS`A~)+C=1v}=z%Mz=u^i?Uw=b0&_Qt>&u-$i{q{0A^ zyacdaXDnX#`@&B~%e)}a9LqkEn@gk?r6^4PYJVMi_U(gOK3)XBp;oKl=B9#LMRFeC zSn^rCKlUTgT2}=^Nd``swB0Mj=t*NS^P@3Psg*JYWd=bpB_gPjvI_j1unRG>$0@Pn z@xB5t2#RBWu_BJ0JL#R*0qZ_uPJ~Eu)rlH2D{a@hulz+plo*DlYidl83Tyn_br?E) z2!C8uELe`kwcHy>J(dbLA1@4lt1rG|f*m@y^}5mkfHX-6PKH*vO&Q316;7)POhO<$vJ@ zUJ&5oqK1oxgPH?~+5WiW5I+5AHdH=d_P_)MX01gJ(PLmA#C-E97#6VcfW<5-L66vb zg~^N^@jJ14_PEDdJ5?0e{es_nEQ9OYyWbp`s-mx2L=ikO6tn~{BZ`=@Oi$$?l6@SO#SjuS>+`NNv?+ilp$MbP~&wfDbT1AZ60`EFO z*uM2U~#PRD}Ub{1Gk{+-KXr(r;&Z zLHe5x-*sky+^ee7qSt|w2jV*g`nU_CB(VfKoi@RbyAR{)LmP$+=!u8LWq(Raa3uK@ z=6|^qA4I={LH&DxrWkD4vK>c`rozSx3bc+JGaPk;eUN%83t!Axg7%%-;j@p&qts9i zZ!Zrd?mdJ6jevIt_jm+_?C>oV8H{Ylp2JUHKehW+0A@$baz+}0nZ)aSBfAbia^&ar z;hs8|Y9<^ebib$=AAcK%Pk*LU`F=-R0* zO3Nyg9ELcoo6Z%}XD`9Shb4&HG#|TuNyU|Gd6@apNUYzo7aL-CAaPp^Se8=~KdaRW z4|g3-oX$jERt6SMf4ACv9FjL$1h&_($v2XBt?CBgx`ReetB>T3hRcKj71Q9Q<5c0L zF9hR*{Z7S8gSNfi{eLwnZbhiChpQlnqGC=2&WawE;KRA=@#*x5)ghlC4S~OPo8!^5 z+e>H}Ss#nO-HPL>r;)I21u848Si30>y?eZZ;M)F5M#{3Z(i{5nKg+P<)6obD@U4#e zEW-!}qm}JDVrqWM&#QX@xZo zOym{ZQp~BM!UPWwHzjb9+@ED===EBBv2Zm8b&0@$o}HC+MV4eG|G80U;Q9}nkahm> zwtfKetBH57J%7@(`=~9pd-*x#C*qXmE~jfZAlA z?blQ2-@iB7wTvL0PbJqUNf^mC9SjkyCozL)@Lc94BqZ*|psuYjynk0%tt2I>s>W7q zO~SM((|?xpC0C}|K}G4=vjO4%(RYlRsnWU#6vHxQIT_hc^hQOqNnq4!+E!_%OHS-v zA>PfLYR|##&aD~PcjUz7OBYNJY*^b{CM6n8)6DgP+gKjE7nMAP7Lm;m8qxrso*s%B zkwr|V)KG@&*YlBa{vtHAfC(dBN0UZ%A(1MbW`C%gg$8=+=U*2ku3s?)D35aj6c1IS zPU}3|bsNm6Xi?&MFfOjlU$j+diehL zH-8o^SQP&-H*F?>8`Ut$xwdg_-fN>rvsTS0i5Fx^{_D0%b$gv;gGz5m%~s@HEiz^N zHbpGIOQhnoTwV!j+wHT7(c`)ejp_;?y{kg1W5!ldQAt%8%@nClbgr(lySq;5#oM8q zDXp+z=iZ}O5wrey)`|TK0ON1YyVG6`rhmA%>9s%`6r_D#Zz>#x1!)w+2og8cL~CS!LWlp`bi8ulGH zUbbgX(!twVY3m**9Gtd=OQRPTxkq;B&S_MTc-x~xm*--DkReMl#jr9cmNwqbFMl;& zNLeZrU5Wuv@)(tYV7xl%gBo?Uw24neT^-(7$MbUX#tS#EWBB%_yuTa zmV(6dBFNDBh=FQGWC;{STJJ1LiFu=ujF*aS5AI|NWku&jWARnWYJV%FB#ViR zDi|_WbkPRFRo|HN^lz#1t=(MZ?dQ(Ax`L8LNTd%blgZ5g^@!;Sb=qfT3`J24OB3Od z;hrS$M4DtGT}2bkfabWWi?sS>G6WPv^8Yi>#;S!^Q+xfNj#;aGLPyA07*naRCr$Py$6&O)z&uroT}=arYAEq3^^wWBIbnR1;vOtXRd+)F(5`nP*4yR zMC2-9Rxn`B5kyfzK*?zclc#$+cURT<*FM!XG%x{pulN1F@4vMci-D=QpM7@T`!MW( z$N)6)-&rN+Fjw(Kuz3eSQVIY#8ae;J|Fu5_lF-$1B1)_N z*BU1{a*kkm-KN0iKNegAS5pAz|0VRnP=GNo*#gKCkO=?EtN*$ik%}+&1tAjvgZNo( zuV8sSUjXL{PsMe~W{1t^WwOJ;7-KjT80fmc?cn^7-sw=^M|?>O-@`QxT0Fs%p?a>x zVql6*f~hXXSNlVJ+VBh0_&o_xpL?mk>^X~(=3CUlw+JxxL1nz$k6cX!d zG>WR zwoXrlL%N}p=bX%){*z#F zb`mQjl_W4U+2MdAKVNnhc6Je00#R(BCtszaCyYt{wN}#xkAX)MtTfER=6Tg*M6sdSU zv{WTh@!d$OJAqKmK4_WuPG+nYH+-#!F;DC3;LJW*tcqlu-d%I#=gIEYCB}--gw^#w z(-Hp>0Mb?sx!ttd@?DVHh{oMQLA-O(p@MgcX#E{K=xVpXs6UcMz}oF#`;1`kscEa^?<@ zvf7R1u7dN0Gnb5$j$ocPrINE%p*ZD`oYZCkC?51axB1Vo9f}U18J$X0?;K0~X%3K(E~}5sA>cG`&c!(~&a%aupz_=mO?ybs21)0fY&IZW3J8gfpf} zNU98~YEYKQOr~i%l44Msyxw$lMUgqI7A{#7T_*p6LlLM6m7o(Ct9YpVHAJ?)f_Qv; z#(U8n3?S@z$FjW6_rsAhn5#)ZO{uo*Y{lE59jspO!LNqD1%NcyYpE3KH*Z07_ihbL zl9|;G#Ojvt+P}sjT>WhZ#}nxc!rQ!^ByZb)a!;#EAzO1P@gp(LCC0QA5j>V)NU01C z8*=ip(XmYtI<+fC+mZsb%Fl-1=Yh>?U>Q#&Q5OuOys8#kcT`~Gwq4k?Z5OI4YJgY* zAV8dUu2>WuoXZ*)*%DGk^(KnGBJ*_loegzL4c~nE;EkBTq)@^K^GO z+HmL&G-UH{1t3G#$Es^kzi}g1BT=2%9Wpd6zyli}K+T4y)5?z6jzos;Xk1lLn6TJefrvwjj1q4nwe6A-i-Xz_TF z+v{HDZ!?DU8BfMlYnET}b?OMK*CWCuE$W390C%*0cMb;-#zcH;QiTJdv$)a&1xBD38E4>|(#mn>*iFj32H5s7@gUyN~`gg~LXPk&L z1`k4qHbu?SIgv;rmPjI%qQ?VPs|8NG4T_Rh()(P!rK}vEe!Cp6Fa8?eE?WgeVt~iR z6^pFtnyzq30W>YbL))K5)tbiv)TJ4RZfG!%BYP0b>-7{IzJWXu<4l&gw|#puTZJdx ztflmCQNkp0EEZwm1lFxbvaU{LHirVPhk4D0yHK}rW`?+-9}RixDLRYgbe#l?t1DTc zvPt;*2($S;IPV|F;)Y937u??1Q6Gw6#h;t-^U8JjW9=4fE-ObxO#tC&tN{R<&5A6K z3q|?a=+dqP{d#o3fZkoutz+qap!~dIEuMe%L%ja}H;B~K0bVy(6j|3aT?R!p)YukY zvtc~yx4qiP_gIkE^8w~>I}V!0cq*wn3Jb()Algs@tI^f)KL#L8{8&{L0_!$#J(<** z-6;@)oG3~)0`Td&LSzR#}w`=yci^Em{A#^1;fndapCfFPsJ_QoP!>n z+lcQ}HPQnTB#9xJQt{b$%kk#oZ}8PmE3tD&B?)^&@sd|foK6YvblgXnha``Q0ICs6 zmpyLu?9v9OpL7I93_A{ex^>tK-wj)KV#bT_VD9T5BNnKKN z+Yt|LNjr7)Z3a`h3r}QuJ)eig(UHfas^WIb{%&2EP|%Huq(cUPK1^bye1u&e+OkDs z6h%{PV1aGZ^vacYrI#p~m8Q4>e5E5;ZrACMtVK*uX|kfQR47U&4n_<=5%-P06ur8( z6W@|j$wwo)%810`_}3esVD`(4v1ZLCgQ!jiEOskoS%$9bP*u&aLNeq18UQMpx=|+TYNoqm6%l3NX7=k=zDliOuFY<3^{Iq zcr{Jap>rLUbew4ZqA&2sQwy-+&rN{c28+vStcGL?JQ_2&+iHQu<$~AihRfxI)nb9p zIpXmI!r=(&Lt#U{lUYjPXr~>Dq98%{2t~xI89w9~Ot|xE^zPbDfNAQDFMjwP_e`FH z=`rXkt!DeV`{b zMNy;_$$6(8_l~{zvDNJo36vBCJ(Ee; zv$N2v)iC)8q`1tc8?3=Z@moTZoar-wa~kzG!0KY{}v`pTYzXN0*lYhRaMnNt05KJ zz$;c=fmr3z^fwa-#C#fDtxjWweda@w^LQerItp7USzS6Ad5(16f${+d7K~FhNEQXj zaD*=4YBZ_|;)kmi^PPWP4g>;eE+FC?!7^`~OIUu-=K$_z#0rclT5UZB9@z&oC*6wv zJv$j(Px(=@J2g!Z|J~1*;<`Jgpn7*TEZJURTPKNwlSy>w))~W3KLsZoHwbM?i($1Y z&{Q2MRTbA$Qq1&-={f>Kkrh}hMpBQI_nJS~Sdv$*9gX0o+39bm(}@Nu z`8KSu|68!R`|x-~wPt54+1|Q-(iU7px0>t^0jnbLTDf8MbPoe6M zTQlUK85V$)*K;DzYBw%z;b>|iC6hfr=BA7A=v`OCswhIil5D0!*K|RwsdL`O*aw~g zEEZT@4ycrF42DtKxjnAA>Ou?|d>p)97he~m@$hN%rTM0-NS4ykD1OWa*}KGcM!SQIH03^Vdv z=S&@gvrj!*sAY}oppbxR>CnfGe{vosKKeXlzYmfk3!>1uS6n^<*IjiH{C+P&p@`sg zS}})OT}MirK(X6xa5`*Qv1%=*Jn%Cq;PQ=1~eO~mOY@l1vH(9^Hr!3Up(CD#wmB&eYfatreD z@Pl{Y#N!5{zCJ3%3<34;ItT>PJ#M#CSW?eEHy?9fcm>R6gJQEF6^_E|cH--W)6uVc z2O%nnY0P)tQBjS{Mo+>wU;HHATh)Y2QIHJ%#w&k53$a*P8Uz7=@SyX0Ok&v`@8*f9 zCRr3I_pm;U9M@5sRY{T+wKjl@FFqY}ri_8pW)&hQlYr*G=f3?Jt{pi67Qa^{WKzL;bn4z2)1P<{ zZCe+kE>OQ0X#Xw%%=-}Wi6Q)1ZoK{OXL#_TCxjKD*lkFK!YC@r$FldIK}lh*0E+m~ ze0NpTar1poWA>c4pkz@xf~%a0KDERazVo-!k*xi5Ki%l>au>_%GMOi1nryd8lA`Ep zEGZ*i^CRE6ES(cB8ng(m+_Odfhe&EmVP5|0aD>ah-jDcJe@|9C;3LS^)(o1;I20`u z!T39`#)L6fHYi$Cv8m%H$$g{JSoCJJ-YVlhUcD{geP(o8c z2&JB(7Y+n4b2a4Vc=6HaKj6+gCqO5;Z?_>?6Tnf&4ZydrO%Xtm87va_x(J7hpC6z7 zChmH0CM2gFOqNugGX1>;VXjKLP#e?31 zBYP-C3IQJCJAWO9c-0U4-N==77%M#DQ!qJSVqD{@ChN%*W<5RzH(oqUEOGONO+ttw zRbi(m(eI3#uzu|pSiEk*ZEf0>;$L&7BHQOhG!}1A(g#9Bp>jEg+wBr2D8+^jR!@+a z%ggcMoe#dmJ$FwONf)XdOjguj-1r+X@%AgkH<_lc08ZD%%6{d&uW{uqk3t25Y*mEB z0@G{x&K1KDtN1B{c4Sti;A?w5E9f;FS~3Mmkr1s~%6I;JtWlWNs{cIhYkN6Tk@_Zy zZ^`PzS`YjjOwJS0%cLqRjN#Q;_u;(LjxpptMH=^^p7{Z{Pnv^iQ(uBLKL=_&0f*g& zm*zf+E*;w;6pl1Yd;y})8wg<%pPaBSzWEWYON!97bNjtOFsvaiL`ZXoN+9I=Fn!j` zm^E!SEPfx=Ac@N6WgpDMfL@&&^nrOF(!pd|ef-^WjJWoGL=q_|cB|pEF&5-Imz|1O z&CmOT(BXQP-+i`NO3|t%e8lZ6#0ZYxHQ@LPP>9_EWf4cXw8D|~!jYjN7mZ8>%@X*A2aQ@k+p{6z{Jk_QS zVZqpJ!nP-%GEGogZAYJSKF%C=3Ld#{G^%Szf5?LHVJLvZW@~-kqTy*)(h(uzdv@ul|#KQTL zaL$mUg*j~cG3LEY3u)U^z6|EVdA#*iaTz|g*apANtk&5tzrex3d!<$ zaP6pj@%zd(`1a%1S_DA&C#r^=94}_hc@0lbnF(vIAE`hH{RZ~J&x@WCh9xQceGe0a zWh>WV$VFoj6yRAjoiaUYVhgWadJLk`U3+M1=0y!twXqc-GOm<4V&k1iEAoX zb;T+%EPi=11|NA?v&0wNpH^O1-}NM3{MRDb^K%fds>MZDUxfSb`lsO5rjjQO3S6Xk zjl$ZqMqG=+R)v^1X9^;bcsdDV#VunW#<52az@--qM{QjQKA#6a{k#I#UosNo9vz2E zE*OqL3oFggDP$E>7(9jZFCT^S9lIdg?NGxJe7)!?oNz?%y%cgL5GDxUFJFxz7mh_j z)4(i>rgKR~Dzbua`{pgv(y=3xUZDR>gwX=Rb|ok|HF?;%$VZ425gh-}HN01zA2XKKSe#+;!zG znDOc?oOJw=2-b(hIU?y!tdtfrPNyBGkGKw8)v);O7eo~FKo7F_bNpV+df_$9m@*Ug z+-$)#mt8R&^QVq&5&&}r5krw;KI5``M81McOyv}Ti`9P0cPts20YF1Z$G!j)H_m4(ll*q;#!m6=lYf_I-b$ye$?~R#s!gjz?^V^rxdaf22#ZCA z)8P<56R=GwW_ouD0FE9z0bhUo6|8ch#XETQ+B;CY{)wi$BwYoAS<&I2K~GUEUrtrku^Vr?5VIa0wO8Vzxg~9K2rd0C zr(BC|TX&JS2(QnJw--E%tSm3R(0*J*1fe+1cR&7uo3FYRzT!fR88Z??PCiy}ohg=x zL*IG-6TG$XLu}f*UHBAKBjoYA(f_cXxa!Ia(YJRu5sD^}U^;8DcpP))zJ?!`{f1f7 z9){ED5aMlLZWbah%ZoP`eu#(edraga5|y>Measb@de3zSLKpf*gJ2+Wfz<&lrK4a-!EN`#~*tdyEbgW@XJQv zo-sEzDMsiWNVIL9C8c#P7cQ2}Q-N(7L3R;O5)zc@*Eg z_X#ZdMxZQHjF3K;BpK9?tA`?(H1$CYJMBbhs)p-txfg-*D%|(r9T?EJhXH0fD7T*; zNLyaC5-zxMG|IM?i4|5e}5tM1Am`d5?G>6@eD{dT%Rm)cjVzlJh zQj&$j<9FV78?LzI9Msp73BJcSF~6fJYsSDPjgaLO24+l{kQ8~O5CNHmak^GEWPWo8 zajRAz#_>Z=z%x@HG<1Q3sw1c;%_#0A;?wGC>>vOrBR6IG3wUwXJlJx`imS&bZ$5z` z$M!#HsbDJQJ0G8mDN|m8lI^9eEJM8RTgEyJsgoorON%AYwOf0v{&;rU?IuU)KzM%d zb4(NTyqg}u!nZ$z;`0bQ{q>igLdSM(5KkobQh-E!irwtoRe}2+egbhSA5k?Fw93bX z@wXv6I}5-5z8Y6ue}_mwWtOEkCx*0W4BdKn$Gq8(!)CMLyB~hWl*gZiOu6T91pSWa zj|c7<)o2*o41vseZh?r9+H$jzs14%X1(R{+DMubO07l!g5s&J6%5~VVek+$9cG9-h zjCD9IATj3E6G_&#O%axVFcW^SOPqYL@%7AQKH}y_@b+5=1^}6s6_r((Gxq}1n>G!k%>!ty;A< zC=Wm96udY4fhOboEv*St1YLf|6fBtkzKE|=!sL~?)6k=PXW>BYYlfO4$mz0+dMX2a zAQX-Y;#F4F;JnLjLX`AJI^5i%2nvQU`1DgS?XmF)1VW$?g~MSL_ovnZl5|wa)tm@= z?8)abZ}tL11O-F*^vx%5>M{KedIgxVqVq>Rinm_>m_(3a4Mi*8XK>^n$%+Sj3$96u ztVpTqIyULiTZHGESvA%Y;mzNh*WCKZY& zaZMECOPudoc9ikG*&T0Vx!s>+S|UXa|FlFuer*a)JGTEpTS6uPPrR@YcicU#!3@2B z!dStr(igP~5gP-kkTeSV0tm zkQK=&b4gb_G)FXgzSHT%^`pk&=O31VQ3<3XW8D`opiObXft#V}i163T{=nc7w~IWu zNaV{lh1afs5Y=lR5;d_D17gKTEQB-f9EqzcPiYD{V9OTIM8`I*4(O#DRzSKM;=M1H z;;c*WhArENM0Fi5z4l^^8#}T^N6gHCS#1`4^4Yf{TXyu314K#VLytX!h5vdDN`9_* zoLTcDxJXpS$wXk}MTL}QjmpC9tEFIC^wyO#QPag?t7?EriRi`S7X!S>Y=TF1Tc|m6U-^JRV^fMHD zSD_C=QMqTYPWW-rbayw6v5zA zj>PBlCpE;Rnp;7pPeT^naU*WWuglj!@w#+M5I{|C;#f~VN@G~O=X3g%-S|70t z;7&!6S*j+;h7LagAI_c7XvITgFJV@zk|^pv+KJ)X6;4~Xi+a_#(~ZqIRT5_`V^MjEGn9&ZpH-Pz2vBL-d&_A_YX&Viq2$({ojR_R27R6 z5xrsL1$gd}(GB&TEv*A8U{YiWSKavp=Dql?P{b6Dm@w&HoHKk#lX`%ZA~{E2ee)xZ zJaPcqwk|{mOn9c|{4$mv2wQNk<;mq6K8?z}p^~jp@_o?}>yeR)trr zxDdgzHyR5^o9|)d1hPBb!E(DzftpAu7AiTc!+qm##KX5<)*=VcjZ9PYozIrwoXhTk zHQR?|Ac&(*ItI^8e^}&no3cPiJh|LX0R+|hn1MT5F{F@d>jKEl$u=q zTaPCnza6(-b#{x18BT?F12;GXpaVa)o1*?ZxCL z=U~zMpW@SZUNSOaoC}c5t{5|jMxOK4XI_EZ9~+PBuQ*TSpUrX=Q^__aKFyTm)EWQ6 z+-F~eJ{+4KKX;DXtqe5f&d=Yg&p+RtpR5eo-%9e)Yb@7q&wq zFR~{uTr_YIT={1+J*CP_Qc|G^W=*>jH(oTXMG(wYaO;HU@YGW;!(Nah!qUSp7>>yg z-jS{WZMpcCl%m~kMR`RPP9JtD&N_cM9=i7yk#Hf49-zyb4@?j_x z(_&CLDZg0tCw#}!)6>r~`o;H5d1(N^7?8B5$IG;gEUfi$pTh1vo_cR2&J;Bg#S1g; z!8Id>Gz)@h4XxX}1HDc)tRaE8&N1&_)6k<^r$)Wv#$+-%VmFK)k6(ZK6`y|mn#i1y ztR=B@;?RpR>>np#!o8yfr!yuQfR$Ha=szyP$Xl+%Eh8^$SOra4FJ@T^t+IK~%}>`b z1##jjN8+mmlbf`D%pCcfAAOGtuYUj(Vla~NvVuhDXTJTrlK@b4m?%TZC{GcFPjiJ? zW)YE>wK@K4Sls;@igBZH%$;!$u0HS7=4*q}j>r{br(*s~q>QsgRB^yjhhy%ulNu7{ zEtzzrbnlxm4ZVAH!=)FTAwmmgHQi}vUxk01dVE8viz#a88tMfg?k_1SXm$mVbLMh7 zgz0(3)wd!=Havy2N%<~(3MU=er%~l=ay}9Nq8lFqEDEKzjEd=0WHsOR>xn?9dS9Z8 z;ZlGI#To!u{XM1ZPPggdZLc6)@l}Sb+Ebv_=I}3JarI~bAriyPC&psr#l!aN1273{ zW}UX~tU%Af*CLUmfq@pJ>H@g+?oqh$s`F7@(|l>7c`s6)6vNGorV_DF8g>cJ7eoMD&GI5yU5BA(o`etQJhY!9D!TL1 zA%^+ye2FVYJxWg29^z}sjlBGa6A_E;$e3AV7&!iRH?y2>ck-IGkD_k#b4Et2=QHS;X=OeFnv0fB-03eH4#PxEXg|KcY!L!7S;U^xPX5 zckc{X^RtZtVa_pY=3_YW@WUER$>vsq5uPy0#py7tAO(M{UWeQqzbIANSI(OZ&|FlP z-Y+NHiw7q?gV$et1D5P8(dTQGC9L@Ld30)9yjN|gQ6OLx3O_UdeT=&6Nyy}=N-#KI zjcwrNzny}3VB3Dg&+0Im<#&HdXn|PGQodt}5es4^N4yJ1?l7*V7?TvvD_5M0(60CQ z0|Bl=*7k@`p*VUI2oht8S{K6DF<0R6yRU7iy~(t0%onD=k2(K#EL*a|FiRs*R8RYh*D4|85xh$kk`fZ}lr%Pd({izla! z#cfxewU_A01oZxC^D$x49MR^)%|;D1zK)mwcxrkAi&+n9aDHyrF)X|DRGy5cn8i+! z&?OD!>8xnbBJRjO+vahmw3Mo-(YS`%KQBUX``i12;K^mBeLsZFJCMff%4DL}1aQfv zXJGD>J77zcf~=~dl2&-`*~w_%rbIYs2MfZ1aQVJK zm`stIo}IvWg?GLmaC+d z<}N8_)xWP~T1p3M|GE-^E%W!+3GlMwqu+)z`xNL&RZ$d$`ooSr;c&b*b3BTv2Oy&X znh0QK$`*h1GlpMwmoU}HN+S>o3iI*Al>5=YZ+Fy^B|{xFhmwwKiRHz6P?44eE|&wd z=e~v+)1QY#=}L=5IEy`cb;geir^DlNHWcKV-%?&(hl_8Xh_6MTm?*e1`ot1}@A>vW z&Pq3No5VM)p1huqvg{7`@K{K77MIBWZk_e&m1|@JfaMtgSo~)>3v#vWo;~DbFvx3H zuiVeEiB|=-RGCSUvQ0rWl>M;Cc9E%9 zPt1QyrD!GS$#7hjVij}r-M`+L(Y#?g6&if)u3>rIXM*ciir$JrNWlm(@+RUl;wf$2FhPY$tYrYi zxD~RFDF3SIsQc?LHC|h@UbgCzjDZzYA!TTJNB+^Qu+Pg-Y;8s8f@(`^f~>Sd zYfOLmCZlOP9jK#^Ge;Htv|=r;ymd0xt=<4RJ4^JLC8=B_5<_-LAx;~7JWd^a9J+St zAX1Zt^`aT03N&4m4wA4Yf{RfFiUL_C8%-Cv@vZ(| zthoQ%kZqkQn(XV+MRBz%+-rQzfde4s@Q9j3@o~ZR8`Ma7mBM)PFTU&d3mP5PL1t=6 z?-$_A8wM>cl45ZQDHT^-G!zr>x(3AsIcc$E5RdA9sI}*=iO=KtmlxA82^x?gL_>mr zAVN9pXy3jK`t<59LKtn^6blp9<#Y;S(tDD4AXB!yvI-kFZ4*@xtJbVV?XC*(Jjv}6 zD}t&ZXhuXqX(1+$yB=4bcWOG{V2GURx_aC<#Z5$KrD6q7qNGNr+Z|$!mVU zD&3S#jAu4wYw)x_lNI!u$2Hw2$xQWk@21#uviF-EWB{;EPV89Uh!ReVpuGkTr9(&5 zXAs`HO|9R$U15yX^O`@eNt>x=+=%`*vgJ8l?_t>;9;S_eB$`>nBw4GgXZfuQaQ`ir z;f71k5cvW!2g!z~bR!*KE?I#GroM~vpmK)8X^GYsga-wm&}-`;&h1d10viE z1AtgGX3Pgl5y2#pF|*o@Y3T_X-WQI-mgT|K=bwi0w_Jjv{G7e|9bS6tGu;2gizwSv z2ALYkISuGwG(j9Zu;md{t+_vA4xUhN;>Gj2-OKzPAK{6(sQ>hL?=D;2?nVbU9XtT0 zb~7htRaR<&bsJ=zGf3gG$$G`Ad()g?a)dDbg-9ysJ_}Y)FK9_F%d#$pctm38Kd=|Z zkG=$F4Kc(Lg$>k{+AyhP(I-FP*?I5b>z`JFhoXSp3g)m2pcoCc)HRSjF1%xNHg!5D zEG#Fg57l)f39x8ftg4)%Jd7B2JZ`%3O!VyBb}ya%#Sg#X;pq$T{dd2DrZigYR!!A3 z>LzDMMb`1EH8-V2j>&AsbQE}USaFZ%;mSXU$0NEuH-}|)>nip!XliuXp#vc79%E)) zG8E#0zt-xhXi{cc=xZ^u%qX`uhxDai5Kbw#*8@DO^mdY$)Nmw85>vxbi4@=o$MwhU z*NqTE`phHKfB0?n1}yyOdwl%ua!|Q@G8huX6f>t4nj1=^?TIE-pH6>tV_X@5VznSU zKO0B%>4LLPJqp849)#jTBbjd=U;g+zrp$Cj6Mj0Vp2y9=B!ZZNbKEyRoaXR^)?eEE$Oyhuw-Cp9dv{dFa-m z1bw=-7bDSH-cjpT6|v*L6p6wX0BxP;ejxErC}->0w3 z7*hrbxn0Mz?2ZrcR8pdPW?$z{3Qb-=kkQ7C1JHWV`&`L7fhh?mv#f zp#I%OG_$#b#0-fdVz%b`)@TL=O7!Xpsn`}? zyJ-@FTVBYJ_4EztvBp__S#GZxuxA~^<56z)XYs5qoh2Hfc0jX3#T=W)l<>gwdCjsv%Emb^i zN`(kK;OV(d0zf-xP$=R+L{L*AN#_V}-=>Ajc8S%%Qo+x7&ANLLt)@Kz=rHFInB5g_ z_}gE~ysfW?)zgZ-Z!RqeK<55^V9?jROgKYEr4@l(fORoQ!5^jq9GDaCEfmMgL>#(7gi3ylL$Z;cX0EbuuG?VOKL*+&`E+xMOsZT0sS z!@FJi=h99av_Rb@C9=CsDH9HAQv+ICSfYOq02v~Qkz=HDM0W4i!rRMaElIgsUd!ss zp3$qf%>*KbXJo91y~o$X*$P?tLzt`J3|M_fL9rGZgIUuf?1e@Vy;lwM>N37p#A3vm zWDpr6)(xqrrK*vrTgsy~A0W2#lZ=V!bot(dr=j9m9ma5P(N$dMR;WqcmYof6`?k^{ zO- ztvw6w!oy(m9UPFO z-}l*3!`vEW&jt=6En9jMcNbsIX-B410*c$Ec}h!V+SXA#k)U{&c@)xKmfiB9)5i!>CtTAj?YO0R=6cR02V&Q^^dgNb;ikgT z1-Y8PTUYr&ZQ6r+c*e#)sYsN^Dk}6?Rh6XDMh%SGM)d?zp=CT;^9iDLUm;dO!@wJF zVKH=v8GkorkU46nvDfmGIFlT-jaBXtSl#`FT2WKv@ak5dk2?zsC3{Y`!SR3N#%>KF zXy=CSP`>BFtwez3ZGL9*nFdQjT3ib^`1 z4%MEMBRTSNCE6)T#Eb zi*fosdrQ)P(aKPxQ9Tt7(}tcjyP9c^;svSqSFHL<#4vvbAm zBw|Yzw~NvEU}3{k?-_|1^Vxq>0YDS<(5nCVQ%+TE`4Z*73^oe0@_J3veWkZ3Hbu+p zd)WWZcD9*d7(^6xp5niaos>k1RQ#cB)-{zk?0HG&({{EBg>)>83X2)c@~$kAK_C9m0*$q5R0MU20&%Rt3Qgx1eUjjP%0w zr)T&7^R_fMzqzG31ww-#0)hSmmr%g5dc_|+8H(uGy|fE$YDceX zl+fk(oXWD=kKu`^>hIBAaTXRpr&5s?2A}>1-uwUlN2K?Z4{h6~)^9FTq(t>A`mSH7 zmPj_6F-Q*iSo?u1!IajFaV@(?57}lWm0RSx|NCk5w|xPHWvmv&$}6y229Mp-s!BBKnQy5>s;eg#dn16=jCZ>P}yiKNi}dmI`CsKzR?bEg{KzEctPM7w_* zipcIyGe?%0cQ!1Dt5)B=&lqFFG;QQY4d}p`+h20GI-fgyM}XN%z?fSMbJMAG`u~>)IoQol3NiN3 w)uC(UED>C)M|Qq}P$g}jOUEACrvKyr0~kQg%k#DpVgLXD07*qoM6N<$f?JM*O8@`> literal 12183 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 Hu0mjfp^?|5 literal 20863 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
()taS7?6+jpZ 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 QD8Nuv(o(FGw+j3J0JzCh(*OVf literal 96083 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 diff --git a/lib/assets/images/logos/logo-v-t.png b/lib/assets/images/logos/logo-v-t.png index c45a614ae54ea5ef2832b97e31e1d2b22e43498b..9d27213f032320cd7a2d39fb9e36399a7ca2ade0 100644 GIT binary patch literal 54093 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 FV1lpe#*Y91 literal 126651 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

}`8(HkQU`KNv^TQShe0X{ykV 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%0D@Fh0Nk+{4 z20+KgAHIM|0d3`Cz(_8ydoXr%O3n!f*@kR~FwEu2EE$A)R(@+1Tt|oJ9hD0E`HTRp zg{FF$^i6<`@&SV$G8NT6j-6Uwq~xlZRZ|-1{{Rd@^S*S8&x1USdiMpLJdmnwnf}1+ zc=gVhL79=depqVaYI8vzL<1%FNhx{AP96xD?wTg4QRyiDfA-!4&W@wH7e3W@MjC0P znbBrRwk*lASuDwB@graxVgqJP@&NNWEXkL^`@)ty0!dhs7Z$VRy~IF*$?_6-FTnf0 z0LC#(7R+Km5Ntydv&trbZLPK}OO`Yvjh30Y-Cv!$RXwLppX%H9&b@aQ)&Dm=-CbSX zUAMZHf1Pvcl;Z1Ll|4`bXH|t4En2k5#IYlOo*;hQ5*j4png4xkY>et|63xnxoQUo^ z-7)iM3H&-iRjZzVn8&e%a<;;rMvW z=edCY_3=-enHTK;zmPpnqP-Z-U_&GH znLwqJ9|m7-!AV0_A>4%70ko*TKrhPHFGT)oJ4KVvB+UCYJ!ozmpQlG#11mnOIwyIM zz)ckLzT3KN;3|x)>Vtu(FbYhBEcyXZuIHH%l&ZZn+48JEch9yG3C`Mp?Ip&?f4rAI z;vSny7bJZV7jI3+dEj4n&U6(|1kPhd!=QzTnW!>w4*X5Gv~Elm(HfR5(3uSL1!(us z?vzbbU0lCF4JSKA9x}5q)>q%LY}qntswQ_Pn6YDtMC6age^iCOd-razi(uvbmYt$W z`=8=~xU=NJ1FqR&XOB>u26IeTwzet^E>$V?>t)O&G(uPG9H7{NyW<%XiA<9S*lb9I zGy@}NabyY%PY)$PJl*El`G}BSPvSduMjmd}8Pf&v!GHfjV-?SAAItz~RlHD1M7ydC z1WF;!hV>3+6IC5VU3B3E5Ybtnnyy`=NyI``T{!ZvXMcP7;$WBL#)Yv`J3#=ElLy_t zyFQ@Kt^qmEAIHLsivXh1H+|0j{rlaq zb2Wax;cN?Nbn31ztJy7q^_M>t23CGn9}hvZ-=oRH%57Vr3am{9zMH3y{yxc*b5jx# zw1EIZ7RYoCcdhK$Bv5BiB?-imHPuEuNFtI8uK5rQZ9qCz1D`}B_+fBE5z*SUYeiKC zbMBGP+jSY|d_{ntQF$Rdc<>+>U**?^hK7uv2y}tE?DX!v*~yuch#Nopd3e$5-o4;l zUt>e}w>SJQv;%Blag-K~D!T(*M!SmFM~oNIIiS&GJN_OJ=x1disxHtT?1{hhUyXg( zOwdqUc#XjxS8M5)*s7=`OXSmsy{G{NwrF04!Y-{ib}e6p(dcMkJcT!e?F4){317BoSwWld0JPF5Fdy8{Yj^i0B+{y5*nRHkw4chd+DUYhj_G6YE+a zRC@aDKqL=Pv~`feTzLK%kVW{Rj@9dToOGOq0VNz8u6n8JU-BWSfHug3*Y^=A1l{vv zcW!`T!KiBKxpZb`%l@DJfcLDNV`m=faisi2&Z*c-XRjPP+ecQyH*AQE!98xS096j&I6?j=m}H8FJJqM@TiM6LqunQ zK2By*j!}}g&{P+l@GgnK>GkQZ9Up;!!~u%Z1!rJba9a(2Uqz26C-D4te(Mzw(HWpE5BfN17ijl@uHqL8P*sZ#qB=kx z#*#Cm*TUX!+@z1)5(JbyfICO8#^BqzC-vGnwXeK z)XIzA3?*20ey$pTfmJIZot%Qn#!{-K&{CCi(!S--gWA$B!pVn^yI}o(Ln3g`(oN3` zk8=msMYg*K4JII zHy^zh)i*$XJAh0Gyx)k6YB8HYQ34Sp5SBbRNcx+wScV+8LLd-}SB#kCPK;G>r=Zj@ zEJhNs1WCjgGEH4rlqE6Pi6=JWT-t#gXHa59iZe3MAd`>>{)}LzB69LzN9(?|?@t^%v_X8%xZmDjMsak>_ z13RXBK2UDf_W=}D6JPPdhd0{Al$3e6}9>o4GNFdnW9hYq&owrIL z5Q~O~Dw7CBNW{dk{bMv8y3pWpX$A-|q=Gs8@YFQqI0stVYBtNC#qZa&_WrLYBO4W{ z+7&PZeB(Pm(jvbT@Z6vOPp}YxzhlRDeh7OWXs=QI=I#F$Nkqh)$4toss{8Kv`#)PS zb`Rgsbskl-2M-;C8KFTQUId4Kv==1~Ku7}mL9hc!Y9z_+96|_59^7%>=iwrfx(`So zY;#xZBzZtoBoGKLfdJvyN#H|q3jJs4EDSq+Lt*|KGlXvrfrcABR|ju2i(qY8su%L^dUkD2&7<0WrpqDM=dQe>Q( z%n&%ub0N*p`0W3DN83h~2=w6h&tLjFL`2L*%+yg7;%{&Gy#+%aZv5zHb^Gb0}tbSUmCILn)h^)JhT9+mZxb% zmj~2VkmiFT-YC6$C_){)^s?|Y6uZaOGI0%!d@&F(%XydfZtJdiO4(&Nv3Eb5*k4t& zm5tU;AG&txf$#1F*|1S6NFEclOM-{kS7w(4=P#C|F?rssSg|5Idh{qRl;V7yn|R5_ zt6rMTa5-?qLRu1hCQE-iyzMQ&W%TzE5pxC3VDe}8?t*rKMw1K0-$Tb{TBPY0;gNfO z8^-pJf@~;>(&4(5C<7D+c@)Ox!MUTh{XjEM3MoDw3!d2$%Bbw4RrF4mf}jDGhBoV zv5;nHI5IR7L`g)%T!K?u%!E9=;gv635aa;|1}}QuyE;N1v=sLvuP@3Vw{0H8=73WI2Otcio!VEK6~)Rt%8(hc%Z1zIA{r4L+1L4T7Z ziOEW?mD)grMEqjM3M2z@q-~7|aTZ3Y$VRe(;6R%QRja|ou~DdmTL1I3N@EO0_mr9R zn%{$qi&)zQh0BGLYcA7x<||?!Au&{XjfeB=3XVT;7zPGDr}~#a4+#*o2^0hV%_qNL z46B~<_{YM0#=12twJKw6+cPr|(Iz5dE?}lM4+xxb@lmb1nD0PU>*fE~8{0OPraEkXN7!`lwe5It}&D1?Ya<9Pk{jcWM9PiR?lB}29T zrAuMerQ0EC!C1MO4aCI3dp-b+IIUc{GCOtZ6eR`)0wqAaR%>ztK2#d9(>P{B4_7)- z=2(-5JQF)XAP|d|FE_00%#ov&;;W?p=`gfW!RRjD3waqaI5?Q;O)`Mwait9QNCb+$ zY~hpQfXyQli1TuDBhM2LkHWx`FU^!hAlx*l`94DfXJ%lgp|NPYKoWt7ZkHow1Dzlb zsFu9-qkjYgi|6+Y7+li=r)kb~O$!8im&|s3{Vzb4_?qL>r%zMyJ4In6ZQE^5764=k zgz4K>uU?IPhB-$`hkjpzY72B-0G2$!((^u}RPrdO03;76d8oKRR*nirlm!A|$pe+d zND_62QcXg$wJ>sAef8D!;pU;%7}10g4_BoxoC%hkvj#>U^XST%Yz$U5Jp&1hWEE?| zv^2pj#N}NlMxtO<7L=_4Ij1@^7mh}jc>&h>WbU)%!fZsH(byl@xhFgHvu9>mdI!u9 zC>~r0#+4|tMZND#fG&cgv#E$)13gT3f;^x)Z)9kGFR_lslDMWt2gt)%cIMcN(_K40 z41_QY4-fODxe?gzN`~zKtZ#ERZFX&>GD&-WJx$YG>YybZrav(%3nzI%@&M|5r~q`J z*baH92uW1|nB}|T=gd=y~ z1KHG6rTE#D)|Kt~+S{SH);o&2&_*HS;qF!>0>lGlNHxK)Nm7~wi3C}vBeC&ozzS$` z!8PyAlD=2L46#s*D}U#`e+@T&?DH@apcAAw{^lznBBI+s`SJ*HMEi!ojy%lw z85fjH^@>Hf|gD>&~- zm%zZPN{eD4kUXFl=5|rhh%(jEk(8}Kn%e#-WJD=Vc`cx-4Fp$Xgv2~~7`m~xo+vw_ z!tfHks2`TBT4mH3S-svgzDjDBsTEtUfT`18f{Ei3%a$#}w3#$pkCh(d(iscm9SP0|+rJvWn?mckRKYtTu3^Psh z!I!5G|8Nh0Xslk4E@0=V+uM-(LQ+N3<6OFM;=~C)i00lV-Bzn@yz+V3;*pP4B@Z|` zU}(!`mr!n!F6GIHzl<4J$7y??Jz?i ziMaN)?>5t><}*I_C%*^3_Tp<`CivNXyR2CG5JW_D8h`eeAD!_6ZwrAupuGdCP|-2m zOo7uh7ahO%S~$EDB@ZFukOEuWu)n`w8bOC74xZ@VuDo0(ZQ!c#1U5bW)oK6omdFFn zFq{o&sXOnhIHbNyRAZE>F!<=$iQFZZ)zaQDwQi^|DC(!r7qX|_7C>gOtZ zmqc`uJXBR-z;xd60jsn!X)2s^3A{nGSs46SQe6P}Q#cbl3&X_eh6;ls>Fa}ml`COl zbPUqT3SvX&`g-Z`9TSK59L6APJ*%wCQ-xE2?0OpJ4v-0z1g>B6;$q<(^WAfY^l;Pf z8h`NN{(&W5Ogk_`<0tp;H&Y{#NX%D1`Y(Le6*E?6pm_PV9k-j~I71_1CO~7!-}!?- z($cNnFcT~U@__aZ@A~sknDu&QimWlyf_m$vc58H&h1suPzdk)tT!fLfuUviMwa@zg z1SQkDeWrb!kuJE|g}Q%mGYpkgfhQB|fBwCyumAN>5yKZ<2!rRYhfblzwJLM)WBXQEtcgSwpzCWju;w$c@yh4osb-QU z+PtpQDlgPV!rUcs;9zrMb{g02o^HAWtWQj$rxBsh9qn<1R1N3@NYujqt2 z1A#L%-ujLkqDmv8Eug)_uf66?Gn#3EnD68P?H!)*pMR?}#*${H#pt!LYsW`GZWqBC zy?brxfddD47=n@q*M>_H2+vRwr)Yw(=0%#O)BVBFh7q{n*&kDV)r{S7hQ*4%g_t-+xix##zxe}&0qo4P82a8OACOIEL{ zyd1c`V?fmwzmWKf;DttlL@3OjOk)KSo@Y3Ip!@H?AD}47$O8A6>vmN+ToU{=9J}xH zFtSk-pqUw0niW02GQU^!L`ei@)J*(DAolEg0KR$0zrhn9w+&XU9D#_4X23Nq-tpc) zgPT6{&oEQWck=6xHh(pgY+nP0NGUpW&LZYK%yYA2=VoZ~WXTS`Bo$u$gN&{y(%tw_5 zlAlhHh!ZEq;j{nrWpf-=8WCkcJBQ!ZDhr&|GgHiW@_>ffuYBvDc0^^NbryGIhwr&| zaN@ur-EVk{5W3Ygi3deV%+4jd2*n&kRoR@%A|Yz*X?F$dwrzsJ4V4{4IoH&EOO`-4 zFvHb2(H{|4s{@InguRC<(>SGl*@nnSC+?Uyei#{p`7M?_ zgj5$UQ|W4E3fI%XH9=UM9K`Dxe>Nu%`8Derd^+sduJ6Lq6<<<)OP)ScyNH8_jvBj& z$6dT-UN&T%A`yu1>CWK`U)}*ff921`sh$x9;4F*xeelDEaLyE1-|qbT55l@ND`36> z*Ry#3e|fuBgU-yD*&#D)THN+pI5T$2k_S)P;5_y+^1wSp+W&xUhutY}!==6~lf9)%#AA>{vsNU!F*I{V48953>2rHo|xHa2s?*=)+A!_qD8QM z>!Tqe!Wl~b%kBRPodDYJeDQDJJ1^Z+V;w`6)IaFV!hK^ZJ^fy5EGelevXXEKIg!9Y zoE@wI$nAEKAo$n7yT0+Nm#HN~pVSvCv4KTHL$FGdhgR0LXa^Mt#QW?KdhE=}7>m`s zgAAaV&OiTH)`-&k5bM_)Yf_2LdH2p1&|sw%UlE2x44wBGSbYgjnWP1)2C}!!{P)_a zKW0Pr3%>KM+#NPqA{GmHp;Dj|D~AQY#JlsO*|D)?|AoQmk1iF_nK5M6U+-74Dh6)`dP2H1Zmu1g`!mj!5U*ux7o zfNVcO&!v1e8#@0WvqLyjR&aqX_GKqP_d30!c^ja8T8M)cZ2R5L#iOCS1|b>rjXm>1j!1b1YZ zL0Hm5$%RKWnoZ-(nMnmNlnx#XoC|PXEBlr%t#$)W^ISaq8Q65yt3e<|>>Pke8{AVs z&fk!PhJHx1$GOe!+)iDRK78YR*Vo>c;PfZR_Q4E+oiJKf&qwc-NPfQekADfje(lVs zc{<>9&uf3>H;pJeVqpVkSfH%~N}oDK9-Oh{d?XL3vgnjoNd!8F%I^R2vov|Yc8W_K zq`{ix&<`Lid2m~ZEby>IJYRpwM%eP~+gc$HLz_3xns><%th;J%D^dj>c?d10RYo8b zeIa_?BH{D}z`{f4vx-)IMIcn)l6RBUJSANjXRTZkZzrB5`DWTSqOK^DKp>?4 zNNSVKwr0&5E-{w|hHf>@O|bOb&l;6>1)!<|9YifXcOA?FWKGT;c>b0~l8^`w;#&=T zF;Ie@D2X?(IibSfII(v>oY=p=`VCqA*6i?)-vDF#(L$25VJ>pxg}<4#E6rbtA$nxR z8ezI?oUk;)mTwtJR&RMzCsy=C;Hdtcx- zZ+PVk;m`i?H89_R1BMs9?%nW%d+vvh09C?gj=T~c_&1y?<+Yz^*JTaQrS?;~c-F-< z0F#U}a4AE9RM_^Dk__Kqa{c93z|!H5sfue_pncuQV;=+kgB7LQ9YzbTthw~M4q+7r z?b85!=aF8%hX_PITE71J>zx-Whr%cu0wVsw!NKI@x~I)K0)c3qMCeK|y8p%S$lZIu zX0#?tsU}Nap+^So3?NZ@U>$Htm4bf^Uf^lC5{?t$*lf#|ElZ4B*9)HUYLzT{4|E8> z{^D!k&))W0qtBgBK$VPX5P#gE2GL^ux^oPX_=V?O4H5GXNF4t6$3H#eH7q#hv%Nzn z*Rn8Z_;+}P9(;}3wTCdY+4>6#t@{U;}5Qx){9D&jM z?uTq@s#1KNm;2z%p;y2I-`xo^TchWmzD_gfOfzUo93&P^2?Ui!(1H$hPZ+f%9n!tr z_Kj-kd7ps}EXIXEX~bv#=R4r>7jJ?2hU-7{|G~SpTBg&8L}GrSQ;T0oK>rS()%9b( z`BXvQ4zGO6`{DCn`8IS4Svv84*!49xMH8UhSTDmRxDOsQ>Qc1-a^8>4y*N$YN+762 zR|WP6PlCQ;#R|7XfxE`Y!!_@%>XsUT(==B+_R+IG)1plYM9AJm>ceP1RUi>HD2KZ4 zy6bScYI6)l9aCtAM!wCKABZaGTe<|6tXc(UjvUomih9%dnu!gozQJFIp$%g&y8F8z zs~qy^^w@g)QbK%*DCGB9SF8|v{;5-^g4YaAJUj*iOTMUT%g_h*MKD9)$mDN6`2}-4 z-)3oGdau$Osx?NBcW8tKjcK3Xy!~H|6DnNk^U)V=hKRWbBnu4nNw*!wS^0$IX<$n4Sw;KHfFpO&CfTL;CwB^GS=a4{_O zB8&@SL2#mUWf$!(64FpHa(>yh@Db23;d@c9#g@%ke ze>{UA2(xWq*9|sr-i$uUUAX%;nGIJqPG*lenae8+y5Jri9R=XVpN*-W9h-!Xqb%c! zcb+W|jw%hDVbUp2dK^(AF}KhyRfPkV|G&Lq{!M#Esl&T&{C_*O2v!5AvKV{t4RClT z8gg^dIhEFOJ-gICdQY}{+_HpfF=eZi3Vkh3HYiGUSW!JnaOc&!{t|`i-&IPlu84E2A1#q?O%oYhL7Fy6+ET97fqCg_Fz#zT(=9>Zhehfh+7I}aKWsN6kJZZ%1NgiUix_+0T7g6W$TksNWJKeJz6T``v~sw8h(O@17`Mhf!1OewjcUocH)y`f|P+vfiVALQW(o3{TBkPd& zN{1+oD958NyZ~PE;$JXCB1$DX2b3}(aroX3?&&IVK+IRE!}ouDpIJS#W79JcOl3h- zxrkKv3AjFxv3DTO@c1Cg?AcUJ1nsnFTUa)D3aKy>Sbp9JtloB`N|NV7Mf5LS3L_Uk zW>#lfl%b+0%BIsew{G2auOeAXtFC+!M6`~d-M0(A@vVRBy0pOookAfwj#7sP z8jhjFwJapbD+qBE6i2u~;)bNI2s3zEvt|vTeIA)*QE2OM>tDBR)70RGTUu%7a7~M$ z3pUM_H7!K6D1j(bVHCcT?)x*Vg^>CvgR&8>G>6t>bk>-qpvu6#^+hmm2?U}o}LiSQ~wTZt!Vi9}R!G{=F155qryafexYy_>cT6zJFC9dGzmc;hQ78|u#)bVuso ztre76{|=_j!WAE_0k@mh#@j!4tn8qNOB;a3VPVQn?<^f0X|*kAwXGY>LaX);h`DAg z8Ny6$AZ%Y@BogQu*-9bkx1-;$H3tue*bRx=I#Gxqz=6Vxk$9a{eqhV?bE@eQ_K@;~akb}*t@Lo&y1@#1L)BFML zrfc5aihl=`HjG@j1s1QWzU0AdVg{ZlLtzTS_Ims{EP+7plPJOfpCn|Or6dy*6N)UA zT9~>C3qXaz(X!`Cw2PQJqg5I^K5PS0OCrogO(0U75_9Cp5l`BnD^VR)5saOSF92C8 zVfI!!iRazHPZD2R ziAeA^jY}9@9A)h)bVkO?IPZ1Pq_thh_y>9j50F8QOeluxfAy} zCoR5nunzl-K+NYgHBhbbvCn*^XZ8^iP&)Cb3peM40u3@3f`sB{_w6Ze zvQ@M}AdI>Kn#{rgLiVg52#{P_H&bCah&B-9TF8+U5{S~J9On~(K(u2Qp)24{T>)Q7 zE1(tonGdCzbcPnnD_5=rB9ZVaq;()AJ{{!m$SWN{xs`HJBC&e=`D(cH(ul`z-D2Ef z&qrxQucm!g1(FDy&4JR1M_sgePLm3pV)>9J2S2@cwOdOoL z;>M4Cu5)WxSX3~Sl++Z`ASfpf!opbMtMMPMqKQV5z$C07kO*9RX?*q1y}Fh4ED-a> z-a$fzSs3fb$H(1_i+twA>eZ`JeNLqk8MHBw6+d2M{S2j8Jn6&H;~EGgVj)Q&9FRne z?cURp(<$RGf*2lwFM;49K+5bvICsbV`%$(pRX9p0`1f>SK0zGXGLo#?^5#yh>`8&r zh&R0QMe}ZPF2r0T5)@8SvCQrtby0&)DHePZ(tMp9vz<7La1)zB~b zLL?9lt=mNuR2r21RTT$jb~>jg4lFqaC{{)q7LrEz4#PHH^%B)T@TN{nBj&SO1L0H~ zAHU@*vtlFB4v=6h8yw92P^`22s^o$afrm6vz{RO}_*}<)Ck|axS7>DQ$q&PkpS&Me z(1gIK)JaXD*hZmhBHiz|i+Kk`+AcROy==ha&Ussv_dU9wQ74vfZrN^YKH57-Xq7+= z4-doW=xAC&0%7_iw;HG27f3`?0s%4$H0NvAuC3YC(+UIv7N8A;gm&yAbPc^V8-4Jd zbZKy4Btn1Sy7jG5CQ{1E-U7|peTY1up9u4vtw+(^z_J_DJrVO+t>G{mvo<2C10`L* z{^DnuZ9c9hi|D4hf=Ij-{Lo^7G{pkS9=EuGmt=_AEMOyA(95M(##omEr%+3H)nh_Oj##JoK)1{EKp%^ zv}YHABEpBYi12&P*+7{zf}aC9=f@s#uxo6%Qzb0M<yk7AF`s8^ zIDGCacNmGp=WpxW(#R3*1Bt_Lzw(9iayljjO1ca|-QRhF+Dz(zv&QUT%)vH|6J-um_MY7_tZ_fH!Q?1Ttdj|;>9Z4Y(q=u7*OrR64zP>(On~6&x zLf%3vOCS)OG|*!zZE$h(FdV(Q&gN_&5Qw(?ML@37_yEW@5!^1KATHE|ASH}m`q+wv zNg~7i8?RisGO^2t=iyfDt9@HUb;@H@xD7^U?_w1*$i2q=#mo4cUYyBz}IjPYtvBojGfTnL^h+d(^a5vbDWJN3}pClCAx9Zzv4s31J$ z6G$BCV*?4}6;~n=^jJFQ5~l<@amop^W8pz0vmsnO3X#0%Y_8AZFu1|mupGZ zv*)$60fBZ7#!&Z`?vxpoPJTFj#FILdNj?GmwuXk~afppW-nTHR1R~Mmb0F&PJV_u( zyFKaWrl;d9iX=((@Dz=g0@Ui>E2qRL`${W@57{)Po%?;xQ9 zfmjcX?_*RLR+=Qu!YCsU?!09chARx*mjLZx3f?E-EVF@-fOZk1_udB+(;~P^;Et!T zlg0z)Dpq2MRAS-O8`;#?C<1FhOnTD6f&9_*+9$mjt2*KglA)deq> z4k(JoC6wp0eFO!nI8ZY2c}*ygOkl?mQ4J_*xJs9YtL?T>fD(tU5eMT1o z6?GQafSvQzgTWd~X2hmS8mPE))6QtAgVIt5cOIH$!6lvO7;1Z~j-ik+EZ6Pb(sS3r zLPnLO|dy#q!ccq2S= z_g;|Mp;XDGkIhvZTy;U?E4FvX(g*?JPxB;klFe7WG^=&T$P%#-3@s%%H3#ma&4dqU z)38v~6CB+%kTgJVl8rWHj|+ink_X@7~kms-9ZRICc8{>E3VL1VvVu8@pJ4@MT0IwKFkHg%@;`bmZW|B@z)jrr+EF zjVw1N1M9R}qw`Zf9TqB)Kv3z#_kVo&^5v5gO5$3zv6Wx>%&Pn32!Z)qUfvL6VEK!l_ZToU2-XN4oF zR?*%p4R3jH^I_Q%x*;OrjUwy{pFrYL;=qrA+y|4BlZn+|(zsOeK+8;0IKSW-uTn|> zt0R%<9KL_geMUO*1HB=s_`yB*&v`ovlq_u8u+|U--0=A7CqHgMlLd+%5C>q3Um;9q zF*G!kxz&I{ZX-CMFu-=BUau=^0|Bx$!lAV9Ak#DbKBY}V$+Jmi!O?+foZNK)K#^d! zO(2}j1C3j=`+~|s>#`E9$8y)A3L}7aR2m3tVEKOVnIrIHEfLDtqFg}YAw0E)4Wo

suFpY0_HmES;g(UT>`*+wKN(D)9?#IdmxhFGBF0;dCF_#S=SZGwRWVR(4Z ze?Nun=ZRw1eIdhlWpw!J|LCV|;wPj3lJCjR1NL9Sa>gbSRJK3?;!I zFaSWoc8aS$LlVny+t9`enuxPaWx-K#7KU>oRVsmSx3F*pMOOhiRLQ#wvoP#>7&(DJ zv3Q!M&a#$I;fxZ960|!@!!#13`(G@$!RDifl&MV2kyK6^+`1SPr3At*q{W$~ zCv~t6L82dsHqn+!1G3R<>Wr2~?D((?fT9Qr$h9(}LF4g80l*h!Dxopq4F@eB0KVQc z@s7Lb5}N`I@X#UERSVP*FJf+?>wX*vtewOAh%+bvLE;d&7P7Pt)qfBczXB*qANaW> zolIcWwvFu=N-ku_P_3dOfpFwOnuWp1Lw>CL{tP()$Wm;BsuBoJ9NhH+p@8TIqGhz@ zcnX1wa*Z8$ht+ik#g+Eh?5!(WdR^L6NP12s#nI1JR?4BQ-w0DStOG1pHe7r+3Q?!d zdGedGr2i$|CK3zDvt`8G1FDK}8g4I$1KK$x^^@tFZBvQ~Kfym=% z^@Y;v3m2}mXj^H~wq!i%k%>qkssU9RC-&`cc`Xg2(wI8^ewd!_iQq;sbmoR6d7wHj z1?7?nca4$>iD&|ZM<&Iv^_QHV46J=~)@Az$1QH2cYvTpax;&~kB4&)9*f%&7SIp$o zG7+@?WBsawUw?V0!0W&F#=y03U7n7g6vEq_o{7?i;fpR@aBEr26fM|5a1{pk0}&#i z=3HwpfU7SMB7v}x3pNns9%|7+C~}cf&U1KXeSZT4tlAk zuo%nI)9-^_J3a!%#y%$ocAh^#SUuqlAgql;h%|7NNgbpCLSh%+%cTyjF1?LdymBRs zT(sq^HIyvF3>-hLQ5m|=hBFfII7T~5H?D|t#3n;2t_Qm^DqdHSn_K_Lqlq8Y|LwP%&{@FJoiRu zair2N&`tu$L{x7?l)(`PlsNPV&i(XoV=`cwOVfI>lmgvMqBgzf}r4dK&zNd8q%juaKT;!Q=c4`;5 zm!O80jvQpf`Z|9Bkn+Q(gG%Kpu~H6Rp4^@{N|dB#u<@#w_F~2cMU+aM-Eh(d^!nKo z`vwbDuYW2%ao_{o5fn^!>|6?wt1zHgM*(CNWM;k77G6)5+BWBQ01z^&H*u^NTKD_} z)@|FUmYnx)Xi@5b7}~r!N*yYq9Y<1H?NldIce(U|4>W;<^FE-Ifzo}!dLDd9gtLL* z*CK)F5ZaYS=wZy=+2{kWBnxu^6eST7`veFVB6=-j(>o1F<3t-BfN_79!`zH^4&v~3hq}J=Kt4E#n=-ICmyRmS|1*hK@o`u6tVaMA;#64-c(FuCtTQx%DTqLc za~Z|2L6I;}D0Un=FPBE>ux_vT8G<7dZ+yjz;Bgmkfr$AJBn`M|*~f3W&3f_dtvhfu zfUX@s_`b=*KiX%5cwNlwR7ie}6Ma5XG<(}dXQ9^%VTllj+B<-qmgy7zb=x+<($;5K zAkKD=lI@}cuBXIUPwm<_K0e;mAkz9%$*hN28mAz6fTE<(9eef5uErQr zDdxvoJq=ntP1}6{(nnZtl5I&H;`Ge+QE?UqE~Hj)Bn4ptA(h3}JyEhaw9rTdLL?HA zKy(KaqhrPuc3aYjX(LNiYnVc0i3DB_&Dx+MRPS;4k1e=k^s9J4)EEFoasc2rYN44w z^f*W)lK#P$^lJJiM^tmneNgqpERhC8!|n9ppL_(4Kj6GaN)m+vi6`e}doFb-h@BZs z{jmdtvbu&SIuX?M4m5#}Qis_=RSAS{-%~qKq$DB}jwJ%YXXE8)MTJ4dT8Zv35^Go& z3B)X6CejEq<ycua^3)<4Fo{D(>U!~ z7!(qgqli`6)hh^uk-0F&e6aO^*R+LkoJ7+H=z_zEYDa0XjsA)e9^lAT!* zl1zlkSJ^dhM1+oN5X4zc9!J=wudUm*FFE#GcYpI%7b5IK4L3mfG)%V-5p@YFaBlY21$AQmv$$|d*4s9cL`11W zXVC!y5wwT1?i)mjvqM!01aG)afzs?YL3XPf`9wGHi5@8`HjOh9h#sQtnHn0|)Wk<% z{9!Fx-HC==A%hxGH^$c2$RBA(KjwsayrU8b8YUTUh4x$$VZxb3IGB;r$c4}A^~{YB zP&&~d6qg%95p5@C1|$qWxaU6Oqu~el+&|k=28S_SpKhwvPu*JIf9D;8gM&b991!Lh z=j9WLLmm!3seqDWcdmqUvnR7K5~ikb-~>DghOfW;3bkbUyFn$}p+!WgLwC@j<-ASU zWtUx+-gVbq3VfRgfRggpj6jHbu&rCS!aeugLuXt7_%kq~3S*YgzTXHac(T-;F^W}D zcb2inPLf81Mn@ooOXPv;*i6~84WQ!TFiIV|hYk=3z6XGy3WJx$$|{V!P-*g@GLL<|S;qK-2edTe zftJ_QFu>Uwqx)YBkKDZn~uj}D`Uh(KxL*JrTt2WdXQR>irbkPQasxWxFouiaM zlpIF_F%Qu83ZE8iwg#fvbkD-E6`Q&+H*G9`g>^XPkq0s*RFN<@-Hb9}SI&T(holnp zc>3Hprdq5=R&z%x!NExd5{iW;sc@y)&I!Sgh=YNydq#qw)ywX_LOmc$ZTmz5r$;YF7u2m2Y?L$%u3HC# z=dO!Vhc06#1cI%`8Jc}Z!wOP}W(1-j_5yze&St(KB7v9#z!g4`NVI2UsihJ1$(yVb zDk|FI;#J9mr8MHAg^^qL8h;W9>cvtZ6s}x)B*P*!{kYJ8qKd|@6i8-o%sr_@2#?=- zp_$=<#A5S#=NOVPGPG>Yk_#jWd$a_hF@^HPJR%Ad**=v{-V|8e%I(V}3_LtkM?!70 zcn!(Iq3MAFm(cOO*_iw3#&+(1x%mo5BgrB@p>FO(05Tj*&q01~YO%h0sJoO`ZBcy7!x(vLUX}xpER>t>%2?%9ZNK zks}`Y5Ip4Z0_u?q@CgGa5i~wPSQ^3ivQ(l^OC{!ztwgJEQVRr1EH-U8$Alrla4Hcz zc2i6@ZD>tRf@ENH^hAEX`+Gb@b@GdY zM}K(7__+BUURltRF* z#N0x=ONHm~y;)KnnnWZD1<=me01`%LYfv$**Lczy9hP{ws~JuexHslZlA7kdp@3f9D+_NY!*loZ6|5K(1Al!nr+{#L??qT|vP~Mo7{| z!}zt_&O!ApdNs6R=MdEuvx^D@0!Ib~(g0zHQs{9y+p%K@Z`boj(&s1AOVObTF`mrq zLknpmdtOOIaYw}Lqc*S@RzLnyGg@d%%&64)YT4S`VDmLM!fM^YHp&pT9GqOD&wR5- zM^Nr=J3{j2l@r?rN=OlzRcU0@PJ%Y3=oZ_>CHuTgYVyDAC9rH`oMADCVP@0d9@j9DuDgTFF1yU^kvyOQC6Im`-B_32Tyiae;>gVuLTdo$ zbs7+jDCZ4O8iBJl+E#055JOA1f?&>MEhOU{up-vbh>aUt=Ha*n49MKEr0xLg=*%10 z!E`y5)F6e?o3okdU%&nQ$tamvDA1%~@>3~F8pihRv~~@=3wzxMwEIAL9K?Xxqe~Te-q#|(eyY=sfK5l7oy;SM~E?N^-{|O zfndVe5Km4{^BhMW+~W!l=9i0*^a9fG#R|^SF2u=I9h91_4QGrh9|lcanzhrmFItON z;ccbS@ts5}9DFJqBqWpvV-12>hwqn29S&H##Y3y;MpT$05rh!*IP?ekQJnz(Ow9Sn^3~Sf)Gg#6c~}#6hMD7nfaIW zOp78hF&4(^FJ!e%hCZy?;$BdXb46QmOu6hMk0n(R(i7R`y(u_G_>9*n%-Kf%qMT%1 zFjh5iioAJ(?990ASOO;cDCVqN=RW-``Rhbz2E*X-oB2&@oBb)${oMQGA0?QTN|Z`5 z$f50LCu1IXqCYdx6xd$6sdX+VSJu;g)^`Jcr$gp@Y6{x!)8MoEvO1LO2@&7jeIZtcAVCU>Qcfq96lcU``> zkf$0OF|j&l(rvb3lpZo1YDc55q4`n+h!Gbyxxu%;h_N0=S zIdCzc;$qlJiNuid+7oj3Tk%j^$l!YC8pK3WbUgQ5hlUfPL{{y*?>ZKU7(uQU^&urM zxtWHRHc`H4o__*s^BoMQ{(~IXqM*RmRN1tt56{UB+Q=w!)y~=$kF>=SuUiU}0;sfP zowp(d(-Ahww?n!>NAQk1!Nw&iR#sghP!3ee{*f(|hhJdt{JSE^s$+`{8)UMmWX?$h z3xbA@^OCh(w_Y7FWJ!RDRKOFJ;nMP0YFS5@MFJNNL-(A7cOl&W|Nkp_@tQe(Ih00pzUlq!(QwZzEK{#xOoO^;1RiBg#?ShEWUw0PF z<=b)-hE>0MU0_nuUnMpFf+q3}Pc%3y1Y!t9^p26tClC<#sqmojjIXJ|5b8+6lPc~$ zyG&8Pz}@>Kw09s%i(VTwJu+xxBi(CzLH2dQp!S1b^wD{Q3zl|?0%8%z@czBaDvQ}A zuRQbBWu|zmef8<5CHr;jo%GlKPxphZqOZ0`G2&694YHP$%HHq~j`ODmRl{lTwo!@d z0W7DC!S_ia*>!(3INfW!O1pz?v;M}Fz8D#9C^8t!+50UiLY@H(0l8Lo= zaq|Y};H(t1+v#_iHJayR5H7pMJRJ%P$luOhEZ^SQHqB zTBMJypO{{nqv{S5@~fgB8GkhY4wg` zH{EWSI1@o>W~kIrv#vFAa!NRHrHFEbz2oP1)*EuV9jwB|)5@{nO+?P!>~RTj z0!U~x9<6&EsVYjupaN+DkF6rhswK?R4qJR@A?@SYYA8ka;;j;O=dqPXk{fP#N#M>{ zncW6SM#vTVrqDFFqlvU1@z|yQ!r)x&V?XDf;dyiSIMFbrL2%Me5I{?d$RRo+>H&6@ z$2x2z(G-nOL`{qTqKTm|F0_WBV9_Fxz?sN26cf@MMz7KN!MQbLlJ^p>%Hg42cb<9W z4M68di}HVECS!U))+=p)p$YATMn-O~9m*K}89zqP(oWf*>BLYtY=&Uc0Z}dcc7O*a zn6%qhA*G<`Dg3*mth3p^C7wV@s>pe?KR2d71RZ<`?UpNwafhteAJDO)_!%YFO5)Vy z9F>AIOyNmY{KV8S7^j@{Zt*Fy+I1hVs)8BD>8O2|p+h=6P=2zYR zjBPbP`Tg#T{BrP_`@=g1+glF?p=VA7SGe0yN5$=cUgZY}hL<(6>tQwZwmeU+}4IoV;v(ovoo-Cr5U%Aj~-Yc|#O*eWp8 z>ti_FkhumGCy6DkF#3zphN%xrDE=oSIkPt_DZR`)*&37Vvo3E_jQD5K2?-AK-qf;{g<5^O_0~2U3faW3fXYjrt z20Z5;fN@O5@&2Hq&8UP!7$*9L>RIxu2noZFU_;4aJ(Wa3T@`yq8#qf`R)3`H+~ z`<3WCv)80n*Ab#bua)__Nk{K5`I{IPoA}lM9a-`2i6ZWocJNY@+a$VDd{%&Cb$ky`BhDdCctCj(u_HKo{S z>>rjsO7P%V{M?XEi=Iyinz`lIg{tXDEP9hjU*n6$tY3t_#}M^6%j2JM8dX=xh>m}y z^%U&w9R35j(J18xsQCUhUi;WGV1!OOYhrBNzN9s?OIGi7xhys*{#%I~+sW}WQjiC< z@;<;>I)weXszUNb%h~n(JbjQDBOHl^E~kEer3bUvY*F8qeZ1A=G1dtGJMAM~{8R=W zf8hBB&)KeAvS)q_3jGLImf267FU08LJi@}sl=PX&2?!fQ{8{|@4gn~7?0tb7oynfL zF}nC{Cr0mh8PUq*>#K7NtLTB`0F2MMlP*4lqlF<=#A$Ms;pvaHi3-a8x=`NTY7A0X>KS*ix%(u;@ zOD3Ob0*=h`6s}G*+r+#o`OcG@nM3i0lW4ET=Br!_iNN?#pbs*=i2qjyt7+IoiBtZ( zzWGan+CQGip?m{2c9m>lVneDM&OGsfWbBS{FLDS8E#A$i3}zrOM0(U(lUd>{$^R|U zim32fPy_C{c5GIvR{fqNp{bJSGMYG`NQg?h@gFL_!hoz|ga-Z*_8j7}-^F9o$b&g~U=-w}f@$g-9$*!GiE zBFk}4@bl=52VpgQAaY#y+1D7S{WFIZ3!L~juop^8{%HME*^^WNcXjPwQv zFDXHhL`2gD1QSO;6i_OzZg4_9vr0W46cIa38YM73C8>SMS2%m_Rr!UH#=HS69S~qc zL~Pkd1}Jf~L=IS=%7d9Mj2OGF%NtO~O9j<^xkbDish)Fs&|GkOhVDm+ zo?4NSYXp-kZ(QUNyyJ?hqT{zG=gNr|Epxx`I(X9-JQX-Api9Qm4*tT25MPjHJT*ous!fQKLW~zd7w>c!B(APhazg4;oy!! z|1#$eb)lo|5QY^q)Xa2%V$KD}iksJQn@Py!M%8`uxCKZ~H`TF$n=rXsFGtmlkIe4g z^Sn?Ok8w*E!nd2joIHP^SsoW9e4WfWfkRguf{m>RM!JqCd`^&2sMsm&c(N|k2>~k` z8(KP<%4R|<^VZJTML4Z_xT`0E89&Z;#q%<-Wdrp)cr2QRPv<xr*-@ z@FmXzh*3wrp?4}LR}Q}k5e$TO@iuk<_7n;Fi)q&+4pl7?{G8Q0c(++-@-S8wkirlt zbEQgTGQ$hG9%|&r0>oi8ci40$0<36OzEHF888fcaDN?ypVYpq0(Zn@>DXfDS=)MCk zj3~>b0iW$ULehu~>;s^qX zka|koop+)Aiu>D_ zeayIiCbJeARSt)NErQbe6OSm4MuX|Q40J;fuEsh6uhvi$#NPq8of%I%91)kZM<4)Y z{qCURt*Znl*T4pzrj@%uPS`FhlWcF;*Iaf@O#fg+i+63vOlnJ5ADZBS8~9m6sjgzE zK6JmmdUwtCcE@uyEx+j_`R2!qEO&Yk|B|xK%akCFBcpG0d+Vu+T4b@do7uUo_q={o zOU_@JMluHD+@QvDHwJqoq~pct!DgHi9vJsgDN*)57#8uD(BdXf;vH<10e9BW&CvCH zSWxR(xxg4SO3&W)ddV%dM_GwFE9}UqUBK+%7a1uGjaT#v&%yD*&PHhGwx(w9T;Ib^%mS(y+T=9Dm75Cf=J*V< z71o|D#qbGb<(X758EME6j&o`QDt0JPt}LCT9)&A}?mFJH-qW3sA_u4=0VawMnOo_4 zXRaB&>CD*c`l-?ur~_NXq$f$Lii!lYN!VUY>rP6UAEw!0MvWRYndvV7V(2v8;lxYy zllG`Z`;z@5ro5>~D2n_9x&l#B*EM9F5MgHZ#$S%hz(m!AE1L`e;~|v#a0_goHI=e3$0Ci$YP-{Ah0J zNdoRJEu}3@iYT85M+wP&k&OsOwMjm<*;3N~V)n--+^m&U z^9+Y(r5h3Me%rvnGH6GApL_`(`8jiN|NZw=dJe8-zJwck25Lh?)H zUHIg*aO0F9eu>#qZ@$pswgF#XO$udrrN|D{K}+c^iG5 zvVv*Cr5ck}NPJiOz_Vxp=^-`%;lARY?bUlKL$J%FDj#cH&+74kl}L*Nih>MoVoT>Ok=$$QYwvlA9-OKoHET?nAEN}{E{0fQb=BjFxxw+MZ6lHT zh$H^;sFGSXJI0436iT*&U@WCk;n#Y6wVW!kgmG+;7~9Ffj|>+OTso#P)rPPdX8LV5 zHbqd{fMiNf|20CZ0McAl$f|(q2_w!#hFw%aG0}6Xudt-I4!MI{JV%xLwQpQjTN6w0 z!s+;xvg|cJ6hJcT)@O;Z!6dtxlIDB52{{+^qIj`|6lkfj%vYUj>G%Ck0TW0>sv8Oz z6#5NbE{_$~F4DkVXf$Ef>b0#s}wKIdFWvcl|iPr&JT2gbCSQy>|V`pEM!s{~V^ zCp?eN6cO~n3u~b;WL;rj`AhWz-JblORI|pnXQ3y-tVE$Ok8ca@rn-EUJsi1VNum>& zF0H3(*+dUs<(T_!lPGcs!GZ!fLUfcmyEmYmsDL@qAximvB8ACunX z3OG};ji>v(|FHR5xJpe4IXG)Z@UW0Ut1)ESKnXW<;;ctN>1Df(wo-fLo5?Ic__+&8 zb0J6~i9HvG%^b2$P^d4<0db&ZZRY0YcOJ>gYkZkI+u%FVShd}#yw~y2O-P81q%8u} zN$>}&Qw1q-24|YP$RQ3mFATV@&rJjT=ZAmPZ#1pYmI;QoqLJ&&VVc3P8id6;5qRQk z#rq08Djs4+DI2UwZ(T~5q~CJs_U1b7g)C<46jVP%=~_mbL*BS>1BaKe=omuJ`xdi% z9*fxo7D%^lidRGCxtVQjruQaxU^}$wUnPf87FKPF^4B^u#7z4Y+epHIFnW)kw&3 z9YtDNTEKtZX)!GhX-yurL~PeFFjAaTW%vC{D=>DQ%(o#&0rxOiQDEtMT@)=wEmS>* z7G^OibdIi1iBV~a*Pjy01d%x-ARMQP&_$rKwv2Jn=V*u3HO1YnY96ODSA^h3_@%$ftDqcm?U(We;mf&y%8EJtiY#U7iIO? zzYDbYom>-wiEQ+3KLiGg$XzXS1#*$^Pf894GcOd?OJaw{!mqol78gKrHtWa z^ylzd<^Cp3PoMLJrv}SbPTv9q%cD;(q2z;h(SM(%E1PxtY|?q)0;eHeX+anDB;6hn zw(5n;BgF(r)8=Zh(kl|s(_7%8#!I({yNFZ%;?j#gb+GDy#pHys6hS2E9RW%s83EZF z0zyK<=$WrkvLyZNfi%|R-B_pV&&hEz^J^GS>kDVtZ8H5Aqg-c9a6NR-{a+S z`0fA&jPm2~JFvnRfTpWc1bFgqGej$Q$DV0mz0dE$l1Cze zi9)jU#z|eXgONbP<-Zs4ej6jgQ1i*|M<&H^2%MtkEanLdgck8a+#%21-SyV#|7)K9 zr>Bm`njP{qwOGiJ{G2|knn7Z%Z$1bd{gOd4xuiD63}k5paRVI0OeFv7Vu5UsV(hRx zMyK24S|)lafSV#D0WF5XR9tIrecGeZIa z_q2b_g8J95UqRv&kHXo^iUCn87=-yR2|#LFS=>m~c|Y@hz<{mdU(@T^-DNp$mUwmN zG?7~K_QDp#p?H77M+tkFIx6F5EpPqbb4mA6LpaT?iwh7ETiSvxtjVI1PM&+<&J}1& z{n?5)be{WtE7kvg`Zmg$uc!dB6f6~9XPi9-f2*ggbao1Pzg{d34g{}nJ{rv z(ewAj4E;YjM{iS}``F?)qrVZm;;nSw!utO~gF~x$g{sdp9R8ATEe6vL~+bHC`8$}%CE`Ja!nvDV+&4A_SzmAY+vaAIo^{sFBA8t`Fx-IlR zZ}cZl1(-HZ+_B&h>FLlB~PPabWjWhd`T|y zq7zWwOy9UN5+bM)e^?tVr)e-XE+qc&%V+oyl)_j1-}^AW#Nvx<)6h-&9Iw%eP-0j+ zoy@e=1Jnxc?!}XRe6I;SG=Z3$q4u|6rBbHB{Y(996lQ!el1GXEUaJkMk@%^o#eBQt zQ;S#*MeM}E{y_v_gtEw?t1%dGbEO21XlY6rO^w&Ls4R#jygm2=Cffgbsim;$EAOJ> zJNmLnKdhve#=|KuG^cWA+U53Qo|&TrP-;HcCfUXA%y;`0jH@Y0v2%Z1FZD#r>G3vB z^1pWrbcFic4>DxknXXW?Ku<6_vZX@WgM>+O9!7xpqWEj3dq8a$4dC&{BJJ4;O8MmA zz#|N7BM=SC2_c$=T4}~Qb}8<`2@>s?_MA1k|JnZpx|uycB=f@M?r45DgLYnP{$-WB z?MRsqL(~C(48(npsC+9_)L|9!!}rnCccm8EQ}xOZStXAkNmxrI{lkAVOEWCW6rVJ> zLzuS`d37G0N~}JM9WzWnD-;)lF0I3$s1XL`DzjdXlAd$g=c{q_xmfqi+UL1*rPl>ea`L9QlH<-kn!)rF^3&H%)?hx$G;Q#SR#4_JdXw-f&7u+?T0 z(U?Q@&lvV%S-o(--|lIraHe7M3kH1H8y&KT#bQ1Z3T+x82ap6j4#;Zn1JWhl6uTEb z%y=}jC1L!-+T<{R6lC>cP0rYOT2cP)?!P72G#e>#PxecHiISMv-rhApp>oR>s6*=Q z~U{YIrA+lTWT}i@5@U{2@n=g4m#Y^+k0E9 zVuy`5aeF!YJ~L`s_!m6HCMr#lj_7#;##-y+uZv6Bxdh9{2FP&90d$Oc5usv9EE!DXMESA3jQ9eF378HYA%^d8G-@3{ ztM0&t$3lepLO>v|r>BQ#?kuh1qtBqL6{0*?or2f>*b_Lt|8H;H##Wc%rv=e^m7%A*Yd5BA*=e@8=UJGswPfrYkK6KnN|wYGXda$ z&gjtA4vAe_1Dg@YZ~s1Kk_t#zzE089#+#~OL^Ers0sD~jz>qt24k z=qrODiR&qGdWpo@-bDNPqJ+}>W;}7){~UAVjoBXc{G3#U+eZVS7}zp5*COmF5677Y zkJ03o7%Chd@SG7J@2G^wza{P7Q+?NXfD6~=$2YDMQXFAX0xr+?mX zM$7;Ep=suS3nc{G%c<*wwfhR7vB6O#0mK*tonEq_U1xmDxBdA9WQ7o{m$q|R`|?FQzkQQZkYPAn?EMrd^U>(LjgOTvc{=3ZkQ`=KF5R0ed2+s2vpkKYEeekM zX#FVd40yX^8cKhp_Hm5YILTEtYo$Op*ur{Qvrc?jzy&q|Qh$JY**y@?J{`><=YYsH zcK>co_<(x}<&nKy`w`hb0=T{XZK!BUR6r#oPb0nyNsL;E@`6M1@#Foq*5_;xNBHV} z0wX@eE{(PRt}`05WSQU-@aHp0B;DG_;m)`u&HgJu7(x3Q&*9Irw~|k*O7V*2VP^lV zYwAn?J8`L~K6xh@qiCE?0QGf0F?=5zq--S=% z)ZG7%?GDKiJ2ktluJ(a0y-upWXwUy#oi9lykxYr_7wOF-oDfI zN{L)SvCL|oVI-uG8f*5NK29(Er>po0Q@9hHdu|rx7#bs>IBLJO5XMF#`IIp9=lP#z zi#^1m6T8Ppl6&8Wd7UAr=N15~{D&-gk}+P5@+{rB8J3r!IbR zdw*a%46h5WCq9~&U=gR^#y$yeP0lnB<<2iv08zECk(ftM`v~n zvm6Uk=LJO(F|n{-m&Ymt_mXL<;uG6`IiXkOHT4gzB3>C6hYwVu1g_ME5&5nru@8*| z6?!7gJcjDlcO_!K3}(aS(q9o9Ec882IPL44x2OLWD1h2W7fQ9Qc(t~2Ux@NF+nty1 z+2iJwab%{vsyUn|e;g@W-0&rB3yF(3dqwsU`f zFwAyVx(rWn^A(plmy&<&=SugQZstk%>HE(6`I_OXnK3oHOGLwA87FlOFr}Fu17kpa-{Ar`*sh z;x(b<@C{yd)*(ePNm`DetMm98sXw->qxcWyVbo5~7Y9T=jK)49l#zD2%IQtCXrdP1 z+3x8DeSPy;E#dcOVCKAyNSD3DfIf|&I$CP$dlv4C*6Q&>lFVO=`kJ!?zLxRL>|K}- z8AvHz-!5N2jOadX3Dy3wRL`K*GgbpqVxGRuu1D`&fMd5}82`a@x@XJrSU@($YWn#Y ztFt5$G%ILwco)ZRr;(EI>@xFA*WWv{(Gc9@T{O)W>Bvgy^_&h1w zPAq`K#mcJa#2{+k4VL_^^tt!dJLbJXkQmZhuU@~X(tLe62YJ8L-cNH5T1`*xmPjM^ z-#j!8g2cX3Et}UC*$1Q}oj>IZlRra4dB z$k~t=ZGm3j(`wOVw~N>Pp(n`Cqty(QxWW#?}NSkuaZCSox>c1u?PEuUTmNE z#{DL)h;J_sDS$P;@*{1*V}DcXpDP#X*`^a>F2d3F{<~DW=QW>o9slc+%K0DUFFY*& z7+K-c9MoBljOxpO>C4dX`(j~zeFl59qmdg>V-0JonI_c8hd-D9$Q~sdIK2KsNr{Kc zmp{A|Je+^~4c@;0vCS*~;(2RJ)QA|MxeUE$;mJsy*11Zx^0vA%;A|LzZ4w=bjy3-C zJ!tKZv$Fh^*yxsvR2K4+a=jJ238%A4pu`7H{BcjMFu)N!T=8Szd!Q;Yta@h~6~)rh z*grknq7DyePQJq+?yN!C}J9MlHV`|VK%&mWBL zUoGsJ)epHX%PM-*5Gv)mt-EvC|9w`G%qCC&CTS~F+%*sLAH zOKpfMG#gDHGsPn=+qUlBC+v8H*dI|0HMk(57B#N4cnNZkdMsOEqF7-{vo$Mu%2|`| zk$5VA@{o|8b?!QWH9I1$5x0XHu%cJ3@v0m^)_mc3XmdT>A?4b}>Ar!>8Z#%SH|@)x zjwge7Cxfc?euBf#ZF5T{?DMO*{U2nFmUms;7P!c*P=hqEIfR1$-cH>u>3 zjwRm2dqx$$b3HG=pA1<T(sP*NO~I;Qv$K*?xmIpmRF&3qcP1ZK!}>R*$NVOZ>NEYH zOKzK-H`ZF*08VxtT${WVB{+ZE@0T>{XZM<R9to0l|Ua=)T{o@cK2zri>v*>_FAUpZSs}O&a;F5pRAK8mq@04;1K!xRF% zUw$h2kQ@5U<#fG!TX0qQtE;0_I_;ZIPW>OoMp>Vfe1{8&$s0equW3YjPLUW%InuuL zcc;#T(p$vz77u%+z_)!LUcPBdYJ{V#q4m?%C5#4%b;Cn$gKn)enQwVnyxrDbZKrVJ zZ@N{v3nDF57N~HP_x%+6uD%DyQysFE>hvUkRK3=t-q`Zad|d@lr5WeV{O` znYrnD+3WmcV+FR)#~SPD*7@JQlU{i922WUH$VB7B36jg^zFC*VbVdwb2zv2^A|vpo z-JEYEdiB`GA~jMu`VnHSTo}eO$^wSwy{idav-d*tC|uU0{jt>W!^gJ>Wz$d9?!#w;(HLp@EJQe-hhEA>7Y`AV9fwdrhA_S9cL-aXGmc7z z)UPhI{<}ODFUx7!n$qktO%}tgK6n+b=9yzTy_jGsjbm?c>DsuVvefH%k5e4S4@z0#72e*M6Kh_#( zif$(BZU3O_dEo0_YUHjvHTb7DPc<?pfGm5>7hkro4*^XWYPppnC3;|-LVa`L~ zHj%GJa}bmcu{Vn3cu*eHZpq}TdI9lic8ku0clzG|d9<);C31p_WDn0ipCB}hz!j5B zxykO1%N%RteZ0Agt-Y#euZc5y&w~#Z&d{)~4+Y0pY$meL>FU~eYXUojge6!JVo(pK zs`zKq#S4~-ge%YGO#L;#z4$moCJ9|vQDRdT5+@#w2F)GZMmlW%3hg~@sh0}??i0`X zO?x%a?cBq1rEQh{_7Z(rKX^dHwxD5w2S*|smE(Wd9tb|jl6b^e4TSN|?73le1 z#e0kH3D+^*8eZOqWN2aM{Zwp-%2*nxxkGZqx-0-64WDIItoxX+45a7>u&^W7V8OnAc`q>trcziHVHUtt zj-_SAH6P{7OB8Ezh*XD2jcN{`1&Iwl&?r*aN<|s>9?AzEq*?ETpH_WvTdO^HOO5!p z*+E6D(1pPGOjV@gSpP61WDh~fw4I15#i%kqL&tj-R8-i5&;^qM()=cTafyZW93TRo%1EqmZXVTpQPwds=$=X$)VK8Sxgdz;`q zW`6sMbieJOmrC0>ca}i}q5J9~A@F-m7K{|un9K_bZRkwt_h z#lZq?e^sL1t_WIeGW0Z9;OLM~19u*sy6xHPEbI#0CVcgNk|ZY-aYUV_NShFlsPazm zQL6G*NH^#gO`Q%!>BKeH6VXvHI2Goq(8~y!&|}Qh={~Uh^cb?g73f!3vXZk8XI*5L z&&2lFU$6Jhy`2qn)-HNdWiyUoJ!~Oz7Y=B5-2EdQ>JdNpmB3HSxJQm@>D%|91xAfi zG4oNJB~s6AWeMD9usht9Jzd0-Az(Co>~Zz2hfbc)Y8b+1RN+g}Ag zo^d~Y_WX-ux&d^UbHBHmikrbbXPe?4aUrete|{?%HK3YzH$xr7kwV|Uc}~)|Qb4)Y zD>nNlOELOWV`KdDuVbQJ4l(a9L>@KtcFCXlX&Hr#T;1Wflj_*T$lw01MY=YsveUk$ zRvD;|i{vkUYR>r11Ye)cF*3!I#PmWn>5)qYM}F+Y{EkNX9`jTR{)KHe-;yXnWy9aW zZ(cOcfjba5!Jj<3)<*0IJGoJ67_RoQz18urQyWW-CUNjWZxPfC8RTyB4viNg+e1Ef zY`U0GLQfay{3LzE>wk^NJA(4jZEcDfVvEglR1U}??HTU72Dz`Z{dcs4RmOxixqqkC>A!tc|APoclHIGWssulUmy+!!}E7*HgN0XtaNHZ|FMOFl#dBSo~Z-TBy=qz z(U+F(1`k`qlR6nPhKc;6oM zfr>_uFk_|k(45iBH!VJpeU1D<=x>}ZM@AZnuwzZcpg7m9H`GD3&_sh3RT0-1NOb&F zLqnMV=j@!0}2%w6H8A3p{6cxL?MBlbd`u4`^4A|8&0a9#13iSk0r0`Dfpk1enq&LG1Y2 zDIi0jI?0J7i2c*?N?V)B_mi9zk9RB8Yx>y$!>jM%ZHV}Fhackmh1H0B9nxD~AnN_s zVxJf&G-TCDaB#}xM2Rh0)I59QN41HUjJ$H~j{^SFEW&uh!ojk-#rz zPwj@>of3rh;RPRlpv5h2Fm!h3W-t}XJ+|=V zC^t`|oL^`2?raaIN=b((Y5xU1002|sXo&QtIvf1GO0OrtJnLBJFWgg{3eF%YJSb8_ zO=S3s%Gc7=kSC^7{5RQ80P_F_)~M?$zzg&|ool{0)nYry-5x)T<>L!@I#IoZ6_


Fd_E8wnc9`E0`7HV+};U%r$m6oU1as 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 From 42362c41fa2c79218db35be0bcb51a326ee60821 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Thu, 16 Dec 2021 13:57:46 +0330 Subject: [PATCH 028/273] D1APP-29 profile (static) --- lib/config/design_config.dart | 23 +++-- .../authentication/screens/verification.dart | 2 +- lib/pages/home/home.dart | 2 +- .../profile/edit_profile/edit_profile.dart | 10 +++ lib/pages/home/profile/profile.dart | 89 ++++++++++++++++++- lib/pages/home/profile/widgets/menu_item.dart | 40 +++++++++ lib/pages/home/radar/radar.dart | 16 +--- .../home/radar/widgets/search_field.dart | 7 +- .../widgets/{didvan_bnb.dart => bnb.dart} | 0 lib/pages/home/widgets/logo_app_bar.dart | 23 +++++ lib/widgets/didvan/card.dart | 20 +++++ lib/widgets/didvan/divider.dart | 16 ++++ lib/widgets/didvan/text.dart | 2 +- lib/widgets/didvan/text_field.dart | 4 +- lib/widgets/item_title.dart | 35 ++++++++ 15 files changed, 258 insertions(+), 31 deletions(-) create mode 100644 lib/pages/home/profile/edit_profile/edit_profile.dart create mode 100644 lib/pages/home/profile/widgets/menu_item.dart rename lib/pages/home/widgets/{didvan_bnb.dart => bnb.dart} (100%) create mode 100644 lib/pages/home/widgets/logo_app_bar.dart create mode 100644 lib/widgets/didvan/card.dart create mode 100644 lib/widgets/didvan/divider.dart create mode 100644 lib/widgets/item_title.dart diff --git a/lib/config/design_config.dart b/lib/config/design_config.dart index b609d7c..9188728 100644 --- a/lib/config/design_config.dart +++ b/lib/config/design_config.dart @@ -2,13 +2,17 @@ import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; class DesignConfig { + static const backgroundColor = Color(0XFFF8F8FA); + static const Color lightPrimaryColor2 = Color(0XFFE6F3FA); static const Color lightPrimaryColor3 = Color(0XFFF5FAFC); static const Color primaryColor = Color(0XFF007EA7); static const Color darkPrimaryColor2 = Color(0XFF1B3C59); - static const Color greyColor4 = Color(0XFFE0E0E0); - static const Color greyColor5 = Color(0XFFE0E0E0); + static const Color cardBorderColor = Color(0XFFEBEBEB); + static const Color borderColor = Color(0XFFE0E0E0); + static const Color hintColor = Color(0XFFE0E0E0); + static const Color captionColor = Color(0XFF666666); static const Color lightRedColor = Color(0XFFFFF8F8); @@ -18,11 +22,12 @@ class DesignConfig { fontFamily: 'Dana-FA', textTheme: const TextTheme( bodyText1: body1Text, - bodyText2: body1Text, + bodyText2: body2Text, caption: captionText, subtitle2: subtitle2Text, subtitle1: subtitle1Text, ), + scaffoldBackgroundColor: backgroundColor, ); static const ColorScheme lightColorScheme = ColorScheme( @@ -31,7 +36,7 @@ class DesignConfig { secondary: Color(0XFFD61515), secondaryVariant: Color(0XFFA30001), surface: Colors.white, - background: Color(0XFFF8F8FA), + background: backgroundColor, error: Color(0XFFF00505), onPrimary: Colors.white, onSecondary: Colors.white, @@ -52,10 +57,16 @@ class DesignConfig { fontWeight: FontWeight.w700, ); static const TextStyle body1Text = TextStyle( - fontSize: 14, + fontSize: 15, + fontWeight: FontWeight.w700, + ); + static const TextStyle body2Text = TextStyle( + fontSize: 15, + fontWeight: FontWeight.w400, ); static const TextStyle captionText = TextStyle( fontSize: 13, + color: captionColor, ); static const BorderRadius lowBorderRadius = BorderRadius.all( @@ -67,7 +78,7 @@ class DesignConfig { static const BorderRadius highBorderRadius = BorderRadius.all( Radius.circular(16), ); - static final Border lightBorder = Border.all(color: DesignConfig.greyColor4); + static final Border lightBorder = Border.all(color: DesignConfig.borderColor); static final BoxDecoration actionCardDecoration = BoxDecoration( color: lightPrimaryColor3, boxShadow: defaultShadow, diff --git a/lib/pages/authentication/screens/verification.dart b/lib/pages/authentication/screens/verification.dart index 3dd17b8..2ef4a59 100644 --- a/lib/pages/authentication/screens/verification.dart +++ b/lib/pages/authentication/screens/verification.dart @@ -47,7 +47,7 @@ class Verification extends StatelessWidget { pinTheme: PinTheme( fieldHeight: 48, fieldWidth: 48, - inactiveColor: DesignConfig.greyColor4, + inactiveColor: DesignConfig.borderColor, activeFillColor: Theme.of(context).primaryColorLight, activeColor: Theme.of(context).primaryColor, borderRadius: DesignConfig.lowBorderRadius, diff --git a/lib/pages/home/home.dart b/lib/pages/home/home.dart index eb84b4e..e6d8645 100644 --- a/lib/pages/home/home.dart +++ b/lib/pages/home/home.dart @@ -5,7 +5,7 @@ import 'package:didvan/pages/home/radar/radar.dart'; import 'package:didvan/pages/home/radar/radar_state.dart'; import 'package:didvan/pages/home/statistics/statistics.dart'; import 'package:didvan/pages/home/studio/studio.dart'; -import 'package:didvan/pages/home/widgets/didvan_bnb.dart'; +import 'package:didvan/pages/home/widgets/bnb.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/home/profile/edit_profile/edit_profile.dart b/lib/pages/home/profile/edit_profile/edit_profile.dart new file mode 100644 index 0000000..8f0cfff --- /dev/null +++ b/lib/pages/home/profile/edit_profile/edit_profile.dart @@ -0,0 +1,10 @@ +import 'package:flutter/material.dart'; + +class EditProfile extends StatelessWidget { + const EditProfile({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return const Scaffold(); + } +} diff --git a/lib/pages/home/profile/profile.dart b/lib/pages/home/profile/profile.dart index 980fc84..7ddfd0f 100644 --- a/lib/pages/home/profile/profile.dart +++ b/lib/pages/home/profile/profile.dart @@ -1,3 +1,12 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/pages/home/profile/widgets/menu_item.dart'; +import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; +import 'package:didvan/routes/routes.dart'; +import 'package:didvan/widgets/didvan/card.dart'; +import 'package:didvan/widgets/didvan/divider.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/item_title.dart'; import 'package:flutter/material.dart'; class Profile extends StatelessWidget { @@ -5,6 +14,84 @@ class Profile extends StatelessWidget { @override Widget build(BuildContext context) { - return Container(); + return SingleChildScrollView( + padding: const EdgeInsets.all(16), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const LogoAppBar(hasExtraPadding: false), + const SizedBox(height: 16), + DidvanCard( + child: Column( + children: [ + MenuItem( + title: 'پیام‌ها', + icon: DidvanIcons.message_regular, + onTap: () => {}, + ), + const DidvanDivider(), + MenuItem( + title: 'ویرایش پروفایل', + icon: DidvanIcons.user_edit_regular, + onTap: () => {}, + ), + const DidvanDivider(), + MenuItem( + title: 'تنظیمات', + icon: DidvanIcons.setting_regular, + onTap: () => {}, + ), + const DidvanDivider(), + MenuItem( + title: 'نشان شده‌ها', + icon: DidvanIcons.bookmark_regular, + onTap: () => {}, + ), + const DidvanDivider(), + MenuItem( + title: 'پیام‌ها', + icon: DidvanIcons.sign_out_regular, + color: Theme.of(context).colorScheme.secondary, + onTap: () => {}, + ), + ], + ), + ), + const ItemTitle( + title: 'درباره ما', + icon: DidvanIcons.info_circle_regular, + ), + DidvanCard( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + MenuItem( + icon: DidvanIcons.didvan_solid, + title: 'معرفی دیدوان', + onTap: () => {}, + ), + const DidvanDivider(), + MenuItem( + icon: DidvanIcons.support_regular, + title: 'پیام به پشتیبانی', + onTap: () => {}, + ), + const DidvanDivider(), + MenuItem( + icon: DidvanIcons.alert_regular, + title: 'حریم خصوصی', + onTap: () => {}, + ), + ], + ), + ), + const SizedBox(height: 16), + DidvanText( + 'نسخه نرم‌افزار: آزمایشی', + style: Theme.of(context).textTheme.bodyText2, + ), + ], + ), + ); } } diff --git a/lib/pages/home/profile/widgets/menu_item.dart b/lib/pages/home/profile/widgets/menu_item.dart new file mode 100644 index 0000000..bfa8542 --- /dev/null +++ b/lib/pages/home/profile/widgets/menu_item.dart @@ -0,0 +1,40 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; + +class MenuItem extends StatelessWidget { + final String title; + final IconData? icon; + final String? suffix; + final VoidCallback onTap; + final Color color; + const MenuItem({ + Key? key, + required this.title, + this.icon, + this.suffix, + required this.onTap, + this.color = DesignConfig.darkPrimaryColor2, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return GestureDetector( + onTap: onTap, + child: Row( + children: [ + if (icon != null) Icon(icon, size: 18, color: color), + if (icon != null) const SizedBox(width: 4), + DidvanText(title, color: color), + const Spacer(), + Icon( + DidvanIcons.angle_left_regular, + size: 18, + color: color, + ), + ], + ), + ); + } +} diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index acd3f16..3921214 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -2,8 +2,8 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/pages/home/radar/widgets/categories_gird.dart'; import 'package:didvan/pages/home/radar/widgets/categories_list.dart'; import 'package:didvan/pages/home/radar/widgets/search_field.dart'; +import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/logos/didvan_vertical_logo.dart'; import 'package:flutter/material.dart'; class Radar extends StatefulWidget { @@ -29,7 +29,6 @@ class _RadarState extends State { @override Widget build(BuildContext context) { - final d = MediaQuery.of(context); return Scaffold( body: Stack( children: [ @@ -42,18 +41,7 @@ class _RadarState extends State { child: CustomScrollView( controller: _scrollController, slivers: [ - SliverPadding( - padding: const EdgeInsets.all( - 20, - ).copyWith(top: d.padding.top + 20), - sliver: SliverToBoxAdapter( - child: Container( - alignment: Alignment.centerRight, - height: 76, - child: const DidvanHorizontalLogo(), - ), - ), - ), + const SliverToBoxAdapter(child: LogoAppBar()), const SliverPadding( padding: EdgeInsets.symmetric(horizontal: 16), sliver: SliverToBoxAdapter( diff --git a/lib/pages/home/radar/widgets/search_field.dart b/lib/pages/home/radar/widgets/search_field.dart index 0b78189..dae26aa 100644 --- a/lib/pages/home/radar/widgets/search_field.dart +++ b/lib/pages/home/radar/widgets/search_field.dart @@ -51,7 +51,7 @@ class _SearchFieldState extends State { Radius.circular(4), ), borderSide: BorderSide( - color: DesignConfig.greyColor4, + color: DesignConfig.borderColor, ), ), fillColor: Colors.red, @@ -62,10 +62,7 @@ class _SearchFieldState extends State { ), border: InputBorder.none, hintText: 'جستجو مطلب در رادار', - hintStyle: Theme.of(context) - .textTheme - .subtitle2! - .copyWith(color: DesignConfig.greyColor5), + hintStyle: const TextStyle(color: DesignConfig.hintColor), ), ), ); diff --git a/lib/pages/home/widgets/didvan_bnb.dart b/lib/pages/home/widgets/bnb.dart similarity index 100% rename from lib/pages/home/widgets/didvan_bnb.dart rename to lib/pages/home/widgets/bnb.dart diff --git a/lib/pages/home/widgets/logo_app_bar.dart b/lib/pages/home/widgets/logo_app_bar.dart new file mode 100644 index 0000000..b8f2803 --- /dev/null +++ b/lib/pages/home/widgets/logo_app_bar.dart @@ -0,0 +1,23 @@ +import 'package:didvan/widgets/logos/didvan_vertical_logo.dart'; +import 'package:flutter/material.dart'; + +class LogoAppBar extends StatelessWidget { + final bool hasExtraPadding; + const LogoAppBar({Key? key, this.hasExtraPadding = true}) : super(key: key); + + @override + Widget build(BuildContext context) { + final MediaQueryData d = MediaQuery.of(context); + final double extraPadding = hasExtraPadding ? 0 : 16; + return Container( + padding: EdgeInsets.only( + left: 140 - extraPadding, + top: d.padding.top + 16 - extraPadding, + bottom: 16 - extraPadding, + right: 16 - extraPadding, + ), + alignment: Alignment.centerRight, + child: const DidvanHorizontalLogo(), + ); + } +} diff --git a/lib/widgets/didvan/card.dart b/lib/widgets/didvan/card.dart new file mode 100644 index 0000000..5b0e747 --- /dev/null +++ b/lib/widgets/didvan/card.dart @@ -0,0 +1,20 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:flutter/material.dart'; + +class DidvanCard extends StatelessWidget { + final Widget child; + const DidvanCard({Key? key, required this.child}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Container( + padding: const EdgeInsets.all(16), + decoration: BoxDecoration( + borderRadius: DesignConfig.lowBorderRadius, + color: Theme.of(context).colorScheme.surface, + border: DesignConfig.lightBorder, + ), + child: child, + ); + } +} diff --git a/lib/widgets/didvan/divider.dart b/lib/widgets/didvan/divider.dart new file mode 100644 index 0000000..22e2bf0 --- /dev/null +++ b/lib/widgets/didvan/divider.dart @@ -0,0 +1,16 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:flutter/material.dart'; + +class DidvanDivider extends StatelessWidget { + const DidvanDivider({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Container( + height: 1, + width: double.infinity, + margin: const EdgeInsets.symmetric(vertical: 12), + color: DesignConfig.borderColor, + ); + } +} diff --git a/lib/widgets/didvan/text.dart b/lib/widgets/didvan/text.dart index 2192f4d..3a0386c 100644 --- a/lib/widgets/didvan/text.dart +++ b/lib/widgets/didvan/text.dart @@ -12,7 +12,7 @@ class DidvanText extends StatelessWidget { const DidvanText( this.text, { Key? key, - this.style = DesignConfig.body1Text, + this.style = DesignConfig.body2Text, this.color, this.fontSize, this.fontWeight, diff --git a/lib/widgets/didvan/text_field.dart b/lib/widgets/didvan/text_field.dart index 9580aac..9b0af01 100644 --- a/lib/widgets/didvan/text_field.dart +++ b/lib/widgets/didvan/text_field.dart @@ -83,7 +83,7 @@ class _DidvanTextFieldState extends State { hintStyle: Theme.of(context) .textTheme .bodyText1! - .copyWith(color: DesignConfig.greyColor5), + .copyWith(color: DesignConfig.hintColor), ), ), ), @@ -97,7 +97,7 @@ class _DidvanTextFieldState extends State { } else if (_hasError) { return Theme.of(context).colorScheme.error; } - return DesignConfig.greyColor4; + return DesignConfig.borderColor; } Color _fillColor() { diff --git a/lib/widgets/item_title.dart b/lib/widgets/item_title.dart new file mode 100644 index 0000000..ed8bb84 --- /dev/null +++ b/lib/widgets/item_title.dart @@ -0,0 +1,35 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; + +class ItemTitle extends StatelessWidget { + final String title; + final IconData? icon; + final Color color; + + const ItemTitle({ + Key? key, + required this.title, + this.icon, + this.color = DesignConfig.darkPrimaryColor2, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return Padding( + padding: const EdgeInsets.only(top: 16, bottom: 12), + child: Row( + mainAxisSize: MainAxisSize.min, + children: [ + if (icon != null) Icon(icon, color: color), + if (icon != null) const SizedBox(width: 4), + DidvanText( + title, + style: Theme.of(context).textTheme.subtitle1, + color: DesignConfig.darkPrimaryColor2, + ) + ], + ), + ); + } +} From ec321d2e7b76daee82d09aa156b722b7f8a58fa7 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Thu, 16 Dec 2021 16:44:17 +0330 Subject: [PATCH 029/273] D1APP-32 edit profie (static) --- lib/config/design_config.dart | 17 ++++- lib/main.dart | 2 + lib/models/view/app_bar_data.dart | 7 +++ .../authentication/screens/password.dart | 2 +- .../authentication/screens/phone_number.dart | 4 +- .../authentication/screens/verification.dart | 4 +- .../profile/edit_profile/edit_profile.dart | 62 ++++++++++++++++++- .../edit_profile/widgets/profile_photo.dart | 42 +++++++++++++ .../profile/edit_profile/widgets/switch.dart | 50 +++++++++++++++ lib/pages/home/profile/profile.dart | 5 +- lib/pages/home/profile/widgets/menu_item.dart | 13 ++-- .../home/radar/widgets/search_field.dart | 2 +- lib/providers/settings_provider.dart | 13 ++++ lib/routes/route_generator.dart | 5 ++ lib/routes/routes.dart | 1 + lib/widgets/didvan/app_bar.dart | 40 ++++++++++++ lib/widgets/didvan/button.dart | 2 +- lib/widgets/didvan/divider.dart | 2 +- lib/widgets/didvan/scaffold.dart | 58 +++++++++++++++++ lib/widgets/didvan/text_field.dart | 16 +++-- 20 files changed, 325 insertions(+), 22 deletions(-) create mode 100644 lib/models/view/app_bar_data.dart create mode 100644 lib/pages/home/profile/edit_profile/widgets/profile_photo.dart create mode 100644 lib/pages/home/profile/edit_profile/widgets/switch.dart create mode 100644 lib/providers/settings_provider.dart create mode 100644 lib/widgets/didvan/app_bar.dart create mode 100644 lib/widgets/didvan/scaffold.dart diff --git a/lib/config/design_config.dart b/lib/config/design_config.dart index 9188728..c8fca02 100644 --- a/lib/config/design_config.dart +++ b/lib/config/design_config.dart @@ -3,15 +3,17 @@ import 'package:flutter/services.dart'; class DesignConfig { static const backgroundColor = Color(0XFFF8F8FA); + static const Color surfaceColor = Colors.white; static const Color lightPrimaryColor2 = Color(0XFFE6F3FA); static const Color lightPrimaryColor3 = Color(0XFFF5FAFC); static const Color primaryColor = Color(0XFF007EA7); static const Color darkPrimaryColor2 = Color(0XFF1B3C59); + static const Color secontCtaColor = Color(0XFFF5F5F5); static const Color cardBorderColor = Color(0XFFEBEBEB); static const Color borderColor = Color(0XFFE0E0E0); - static const Color hintColor = Color(0XFFE0E0E0); + static const Color hintColor = Color(0XFFBBBBBB); static const Color captionColor = Color(0XFF666666); static const Color lightRedColor = Color(0XFFFFF8F8); @@ -20,22 +22,29 @@ class DesignConfig { primaryColor: primaryColor, colorScheme: lightColorScheme, fontFamily: 'Dana-FA', + appBarTheme: const AppBarTheme( + backgroundColor: backgroundColor, + foregroundColor: darkPrimaryColor2, + ), textTheme: const TextTheme( bodyText1: body1Text, bodyText2: body2Text, caption: captionText, subtitle2: subtitle2Text, subtitle1: subtitle1Text, + headline3: headline3Text, ), scaffoldBackgroundColor: backgroundColor, ); + static final ThemeData darkTheme = ThemeData(); + static const ColorScheme lightColorScheme = ColorScheme( primary: primaryColor, primaryVariant: Color(0XFF1B3C59), secondary: Color(0XFFD61515), secondaryVariant: Color(0XFFA30001), - surface: Colors.white, + surface: surfaceColor, background: backgroundColor, error: Color(0XFFF00505), onPrimary: Colors.white, @@ -48,6 +57,10 @@ class DesignConfig { static const ColorScheme currentColorScheme = lightColorScheme; + static const TextStyle headline3Text = TextStyle( + fontSize: 20, + fontWeight: FontWeight.w600, + ); static const TextStyle subtitle1Text = TextStyle( fontSize: 17, fontWeight: FontWeight.w700, diff --git a/lib/main.dart b/lib/main.dart index d173178..3282f6f 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -22,6 +22,8 @@ class Didvan extends StatelessWidget { debugShowCheckedModeBanner: false, title: 'Didvan', theme: DesignConfig.lightTheme, + darkTheme: DesignConfig.darkTheme, + themeMode: ThemeMode.light, onGenerateRoute: (settings) => RouteGenerator.generateRoute(settings), initialRoute: '/', localizationsDelegates: const [ diff --git a/lib/models/view/app_bar_data.dart b/lib/models/view/app_bar_data.dart new file mode 100644 index 0000000..ad8df2f --- /dev/null +++ b/lib/models/view/app_bar_data.dart @@ -0,0 +1,7 @@ +class AppBarData { + final String? title; + final String? subtitle; + final bool hasBack; + + AppBarData({this.title, this.subtitle, this.hasBack = false}); +} diff --git a/lib/pages/authentication/screens/password.dart b/lib/pages/authentication/screens/password.dart index de83b7f..dd11163 100644 --- a/lib/pages/authentication/screens/password.dart +++ b/lib/pages/authentication/screens/password.dart @@ -30,7 +30,7 @@ class PasswordInput extends StatelessWidget { child: DidvanText( 'فراموشی رمز عبور', style: Theme.of(context).textTheme.subtitle2, - color: Theme.of(context).primaryColor, + color: Theme.of(context).colorScheme.primary, ), ), const Spacer(), diff --git a/lib/pages/authentication/screens/phone_number.dart b/lib/pages/authentication/screens/phone_number.dart index fdff2cc..30d01a6 100644 --- a/lib/pages/authentication/screens/phone_number.dart +++ b/lib/pages/authentication/screens/phone_number.dart @@ -48,7 +48,7 @@ class PhoneNumberInput extends StatelessWidget { style: Theme.of(context) .textTheme .caption! - .copyWith(color: Theme.of(context).primaryColor), + .copyWith(color: Theme.of(context).colorScheme.primary), recognizer: TapGestureRecognizer() ..onTap = () { //TODO: Needs implementaion @@ -60,7 +60,7 @@ class PhoneNumberInput extends StatelessWidget { style: Theme.of(context) .textTheme .caption! - .copyWith(color: Theme.of(context).primaryColor), + .copyWith(color: Theme.of(context).colorScheme.primary), recognizer: TapGestureRecognizer() ..onTap = () { //TODO: Needs implementaion diff --git a/lib/pages/authentication/screens/verification.dart b/lib/pages/authentication/screens/verification.dart index 2ef4a59..9b31088 100644 --- a/lib/pages/authentication/screens/verification.dart +++ b/lib/pages/authentication/screens/verification.dart @@ -48,8 +48,8 @@ class Verification extends StatelessWidget { fieldHeight: 48, fieldWidth: 48, inactiveColor: DesignConfig.borderColor, - activeFillColor: Theme.of(context).primaryColorLight, - activeColor: Theme.of(context).primaryColor, + activeFillColor: Theme.of(context).colorScheme.primary, + activeColor: Theme.of(context).colorScheme.primary, borderRadius: DesignConfig.lowBorderRadius, borderWidth: 1, shape: PinCodeFieldShape.box, diff --git a/lib/pages/home/profile/edit_profile/edit_profile.dart b/lib/pages/home/profile/edit_profile/edit_profile.dart index 8f0cfff..06caf69 100644 --- a/lib/pages/home/profile/edit_profile/edit_profile.dart +++ b/lib/pages/home/profile/edit_profile/edit_profile.dart @@ -1,3 +1,11 @@ +import 'package:didvan/models/view/app_bar_data.dart'; +import 'package:didvan/pages/home/profile/edit_profile/widgets/profile_photo.dart'; +import 'package:didvan/pages/home/profile/edit_profile/widgets/switch.dart'; +import 'package:didvan/pages/home/profile/widgets/menu_item.dart'; +import 'package:didvan/widgets/didvan/card.dart'; +import 'package:didvan/widgets/didvan/divider.dart'; +import 'package:didvan/widgets/didvan/scaffold.dart'; +import 'package:didvan/widgets/didvan/text_field.dart'; import 'package:flutter/material.dart'; class EditProfile extends StatelessWidget { @@ -5,6 +13,58 @@ class EditProfile extends StatelessWidget { @override Widget build(BuildContext context) { - return const Scaffold(); + return DidvanScaffold( + appBarData: AppBarData(), + slivers: [ + const SliverToBoxAdapter( + child: ProfilePhoto(), + ), + SliverPadding( + padding: const EdgeInsets.all(16), + sliver: SliverToBoxAdapter( + child: DidvanCard( + child: Column( + children: [ + DidvanTextField( + title: 'نام کاربری', + hintText: 'انتخاب نام کاربری (اختیاری)', + onChanged: (value) { + //TODO: Needs implementation + }, + ), + const SizedBox(height: 16), + DidvanTextField( + title: 'ایمیل', + hintText: 'مثال: example@email.com', + onChanged: (value) { + //TODO: Meeds implementaion + }, + ), + const SizedBox(height: 16), + const DidvanTextField( + title: 'موبایل', + enabled: false, + hintText: '09123456789', //TODO: Needs api + ), + const SizedBox(height: 16), + DidvanSwitch( + value: true, //TODO: Needs api + title: 'ورود با اثر انگشت', + onChanged: (value) => { + //TODO: Needs implementaion + }, + ), + const DidvanDivider(), + MenuItem( + title: 'تغییر رمز عبور', + onTap: () {}, + ), + ], + ), + ), + ), + ), + ], + ); } } diff --git a/lib/pages/home/profile/edit_profile/widgets/profile_photo.dart b/lib/pages/home/profile/edit_profile/widgets/profile_photo.dart new file mode 100644 index 0000000..635ac3c --- /dev/null +++ b/lib/pages/home/profile/edit_profile/widgets/profile_photo.dart @@ -0,0 +1,42 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:flutter/material.dart'; + +class ProfilePhoto extends StatelessWidget { + const ProfilePhoto({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return GestureDetector( + onTap: () { + //TODO: Needs implementation + }, + child: Center( + child: Stack( + children: [ + Container( + height: 96, + width: 96, + decoration: const BoxDecoration( + shape: BoxShape.circle, + color: DesignConfig.lightPrimaryColor2, + ), + child: const Icon( + DidvanIcons.profile_solid, + size: 60, + color: DesignConfig.darkPrimaryColor2, + ), + ), + const Positioned( + bottom: 4, + right: 4, + child: Icon( + DidvanIcons.camera_regular, + ), + ), + ], + ), + ), + ); + } +} diff --git a/lib/pages/home/profile/edit_profile/widgets/switch.dart b/lib/pages/home/profile/edit_profile/widgets/switch.dart new file mode 100644 index 0000000..940e1b1 --- /dev/null +++ b/lib/pages/home/profile/edit_profile/widgets/switch.dart @@ -0,0 +1,50 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/pages/home/profile/widgets/menu_item.dart'; +import 'package:flutter/cupertino.dart'; +import 'package:flutter/material.dart'; + +class DidvanSwitch extends StatefulWidget { + final bool value; + final String title; + final IconData? icon; + final void Function(bool value) onChanged; + const DidvanSwitch({ + Key? key, + required this.value, + required this.title, + this.icon, + required this.onChanged, + }) : super(key: key); + + @override + _DidvanSwitchState createState() => _DidvanSwitchState(); +} + +class _DidvanSwitchState extends State { + bool _value = false; + + @override + void initState() { + _value = widget.value; + super.initState(); + } + + @override + Widget build(BuildContext context) { + return MenuItem( + title: widget.title, + onTap: () => widget.onChanged(_value), + icon: widget.icon, + trailing: CupertinoSwitch( + activeColor: Theme.of(context).colorScheme.primary, + value: _value, + onChanged: (value) { + setState(() { + _value = value; + }); + widget.onChanged(value); + }, + ), + ); + } +} diff --git a/lib/pages/home/profile/profile.dart b/lib/pages/home/profile/profile.dart index 7ddfd0f..f8cc451 100644 --- a/lib/pages/home/profile/profile.dart +++ b/lib/pages/home/profile/profile.dart @@ -33,7 +33,8 @@ class Profile extends StatelessWidget { MenuItem( title: 'ویرایش پروفایل', icon: DidvanIcons.user_edit_regular, - onTap: () => {}, + onTap: () => + Navigator.of(context).pushNamed(Routes.editProfile), ), const DidvanDivider(), MenuItem( @@ -88,7 +89,7 @@ class Profile extends StatelessWidget { const SizedBox(height: 16), DidvanText( 'نسخه نرم‌افزار: آزمایشی', - style: Theme.of(context).textTheme.bodyText2, + style: Theme.of(context).textTheme.caption, ), ], ), diff --git a/lib/pages/home/profile/widgets/menu_item.dart b/lib/pages/home/profile/widgets/menu_item.dart index bfa8542..64a3510 100644 --- a/lib/pages/home/profile/widgets/menu_item.dart +++ b/lib/pages/home/profile/widgets/menu_item.dart @@ -8,6 +8,7 @@ class MenuItem extends StatelessWidget { final IconData? icon; final String? suffix; final VoidCallback onTap; + final Widget? trailing; final Color color; const MenuItem({ Key? key, @@ -16,6 +17,7 @@ class MenuItem extends StatelessWidget { this.suffix, required this.onTap, this.color = DesignConfig.darkPrimaryColor2, + this.trailing, }) : super(key: key); @override @@ -28,11 +30,12 @@ class MenuItem extends StatelessWidget { if (icon != null) const SizedBox(width: 4), DidvanText(title, color: color), const Spacer(), - Icon( - DidvanIcons.angle_left_regular, - size: 18, - color: color, - ), + trailing ?? + Icon( + DidvanIcons.angle_left_regular, + size: 18, + color: color, + ), ], ), ); diff --git a/lib/pages/home/radar/widgets/search_field.dart b/lib/pages/home/radar/widgets/search_field.dart index dae26aa..4d01a04 100644 --- a/lib/pages/home/radar/widgets/search_field.dart +++ b/lib/pages/home/radar/widgets/search_field.dart @@ -40,7 +40,7 @@ class _SearchFieldState extends State { Radius.circular(4), ), borderSide: BorderSide( - color: Theme.of(context).primaryColor, + color: Theme.of(context).colorScheme.primary, ), ), prefixIcon: const Icon( diff --git a/lib/providers/settings_provider.dart b/lib/providers/settings_provider.dart new file mode 100644 index 0000000..d49f51f --- /dev/null +++ b/lib/providers/settings_provider.dart @@ -0,0 +1,13 @@ +import 'package:didvan/providers/core_provider.dart'; +import 'package:flutter/material.dart'; + +class SettingsProvider extends CoreProvier { + ThemeMode _themeMode = ThemeMode.light; + + set themeMode(ThemeMode themeMode) { + _themeMode = themeMode; + notifyListeners(); + } + + ThemeMode get themeMode => _themeMode; +} diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index fe80ea0..ee73a39 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -3,6 +3,7 @@ import 'package:didvan/pages/authentication/authentication.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; import 'package:didvan/pages/home/home.dart'; import 'package:didvan/pages/home/home_state.dart'; +import 'package:didvan/pages/home/profile/edit_profile/edit_profile.dart'; import 'package:didvan/pages/splash/splash.dart'; import 'package:didvan/pages/splash/splash_state.dart'; import 'package:didvan/routes/routes.dart'; @@ -33,6 +34,10 @@ class RouteGenerator { child: const Home(), ), ); + case Routes.editProfile: + return _createRoute( + const EditProfile(), + ); default: return _errorRoute(); } diff --git a/lib/routes/routes.dart b/lib/routes/routes.dart index 31a76fe..27e2f8f 100644 --- a/lib/routes/routes.dart +++ b/lib/routes/routes.dart @@ -3,4 +3,5 @@ class Routes { static const String home = '/home'; static const String authenticaion = '/authentication'; static const String profile = '/profile'; + static const String editProfile = '/edit-profile'; } diff --git a/lib/widgets/didvan/app_bar.dart b/lib/widgets/didvan/app_bar.dart new file mode 100644 index 0000000..7082b32 --- /dev/null +++ b/lib/widgets/didvan/app_bar.dart @@ -0,0 +1,40 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/models/view/app_bar_data.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; + +class DidvanAppBar extends StatelessWidget { + final AppBarData appBarData; + const DidvanAppBar({Key? key, required this.appBarData}) : super(key: key); + + @override + Widget build(BuildContext context) { + final MediaQueryData d = MediaQuery.of(context); + return AnimatedContainer( + duration: DesignConfig.lowAnimationDuration, + child: Padding( + padding: EdgeInsets.only(top: d.padding.top, right: 4, left: 20), + child: Row( + children: [ + IconButton( + onPressed: () => Navigator.of(context).pop(), + color: DesignConfig.darkPrimaryColor2, + icon: const Icon(Icons.arrow_back), + ), + const SizedBox(width: 16), + Column( + children: [ + if (appBarData.title != null) + DidvanText( + appBarData.title!, + style: Theme.of(context).textTheme.headline3, + color: DesignConfig.darkPrimaryColor2, + ), + ], + ), + ], + ), + ), + ); + } +} diff --git a/lib/widgets/didvan/button.dart b/lib/widgets/didvan/button.dart index ad6dfca..fe90593 100644 --- a/lib/widgets/didvan/button.dart +++ b/lib/widgets/didvan/button.dart @@ -16,7 +16,7 @@ class DidvanButton extends StatelessWidget { borderRadius: DesignConfig.lowBorderRadius, ), height: 48, - color: Theme.of(context).primaryColor, + color: Theme.of(context).colorScheme.primary, onPressed: onPressed, child: _childBuilder(), ), diff --git a/lib/widgets/didvan/divider.dart b/lib/widgets/didvan/divider.dart index 22e2bf0..5199b62 100644 --- a/lib/widgets/didvan/divider.dart +++ b/lib/widgets/didvan/divider.dart @@ -9,7 +9,7 @@ class DidvanDivider extends StatelessWidget { return Container( height: 1, width: double.infinity, - margin: const EdgeInsets.symmetric(vertical: 12), + margin: const EdgeInsets.symmetric(vertical: 16), color: DesignConfig.borderColor, ); } diff --git a/lib/widgets/didvan/scaffold.dart b/lib/widgets/didvan/scaffold.dart new file mode 100644 index 0000000..3836413 --- /dev/null +++ b/lib/widgets/didvan/scaffold.dart @@ -0,0 +1,58 @@ +import 'package:didvan/models/view/app_bar_data.dart'; +import 'package:didvan/widgets/didvan/app_bar.dart'; +import 'package:flutter/material.dart'; + +class DidvanScaffold extends StatefulWidget { + final List? slivers; + final AppBarData appBarData; + final bool hasPadding; + const DidvanScaffold({ + Key? key, + this.slivers, + required this.appBarData, + this.hasPadding = true, + }) : super(key: key); + + @override + State createState() => _DidvanScaffoldState(); +} + +class _DidvanScaffoldState extends State { + bool _isElevated = false; + final ScrollController _scrollController = ScrollController(); + + @override + void initState() { + _scrollController.addListener(() => _handleAppBarElevation()); + super.initState(); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + body: CustomScrollView( + slivers: [ + SliverAppBar( + automaticallyImplyLeading: false, + pinned: true, + flexibleSpace: DidvanAppBar(appBarData: widget.appBarData), + ), + if (widget.slivers != null) ...widget.slivers! + ], + ), + ); + } + + void _handleAppBarElevation() { + if (_scrollController.position.pixels > kToolbarHeight && !_isElevated) { + setState(() { + _isElevated = true; + }); + } + if (_scrollController.position.pixels < kToolbarHeight && _isElevated) { + setState(() { + _isElevated = false; + }); + } + } +} diff --git a/lib/widgets/didvan/text_field.dart b/lib/widgets/didvan/text_field.dart index 9b0af01..081fb08 100644 --- a/lib/widgets/didvan/text_field.dart +++ b/lib/widgets/didvan/text_field.dart @@ -53,7 +53,11 @@ class _DidvanTextFieldState extends State { mainAxisSize: MainAxisSize.min, crossAxisAlignment: CrossAxisAlignment.start, children: [ - if (widget.title != null) DidvanText(widget.title!), + if (widget.title != null) + DidvanText( + widget.title!, + color: !widget.enabled ? DesignConfig.hintColor : null, + ), if (widget.title != null) const SizedBox(height: 8), Container( padding: const EdgeInsets.symmetric(horizontal: 12).copyWith( @@ -82,7 +86,7 @@ class _DidvanTextFieldState extends State { hintText: widget.hintText, hintStyle: Theme.of(context) .textTheme - .bodyText1! + .bodyText2! .copyWith(color: DesignConfig.hintColor), ), ), @@ -93,7 +97,7 @@ class _DidvanTextFieldState extends State { Color _borderColor() { if (_focusNode.hasFocus) { - return Theme.of(context).primaryColor; + return Theme.of(context).colorScheme.primary; } else if (_hasError) { return Theme.of(context).colorScheme.error; } @@ -101,9 +105,13 @@ class _DidvanTextFieldState extends State { } Color _fillColor() { + if (!widget.enabled) { + return DesignConfig.secontCtaColor; + } if (_focusNode.hasFocus) { return DesignConfig.lightPrimaryColor3; - } else if (_hasError) { + } + if (_hasError) { return DesignConfig.lightRedColor; } return Theme.of(context).colorScheme.surface; From c199785b98b41787dbe56e2efac13850f22bb315 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 22 Dec 2021 10:41:45 +0330 Subject: [PATCH 030/273] dark theme configuration --- lib/config/design_config.dart | 131 +++-------- lib/config/theme_data.dart | 213 ++++++++++++++++++ lib/main.dart | 46 ++-- .../authentication/screens/verification.dart | 3 +- .../widgets/authentication_app_bar.dart | 8 +- lib/pages/home/home.dart | 5 + .../edit_profile/widgets/profile_photo.dart | 10 +- .../profile/edit_profile/widgets/switch.dart | 1 - lib/pages/home/profile/profile.dart | 3 +- lib/pages/home/profile/widgets/menu_item.dart | 13 +- lib/pages/home/radar/radar.dart | 3 +- .../home/radar/widgets/categories_list.dart | 9 +- .../home/radar/widgets/category_item.dart | 11 +- .../home/radar/widgets/search_field.dart | 12 +- lib/pages/home/widgets/bnb.dart | 17 +- lib/pages/splash/splash.dart | 26 ++- lib/providers/theme_provider.dart | 6 + lib/routes/route_generator.dart | 9 +- lib/utils/actions_sheet.dart | 2 +- lib/widgets/didvan/app_bar.dart | 5 +- lib/widgets/didvan/card.dart | 2 +- lib/widgets/didvan/divider.dart | 4 +- lib/widgets/didvan/text.dart | 5 +- lib/widgets/didvan/text_field.dart | 13 +- lib/widgets/item_title.dart | 11 +- pubspec.lock | 14 ++ pubspec.yaml | 1 + 27 files changed, 389 insertions(+), 194 deletions(-) create mode 100644 lib/config/theme_data.dart create mode 100644 lib/providers/theme_provider.dart diff --git a/lib/config/design_config.dart b/lib/config/design_config.dart index c8fca02..3b009c9 100644 --- a/lib/config/design_config.dart +++ b/lib/config/design_config.dart @@ -1,86 +1,9 @@ +import 'package:didvan/config/theme_data.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; class DesignConfig { - static const backgroundColor = Color(0XFFF8F8FA); - static const Color surfaceColor = Colors.white; - - static const Color lightPrimaryColor2 = Color(0XFFE6F3FA); - static const Color lightPrimaryColor3 = Color(0XFFF5FAFC); - static const Color primaryColor = Color(0XFF007EA7); - static const Color darkPrimaryColor2 = Color(0XFF1B3C59); - - static const Color secontCtaColor = Color(0XFFF5F5F5); - static const Color cardBorderColor = Color(0XFFEBEBEB); - static const Color borderColor = Color(0XFFE0E0E0); - static const Color hintColor = Color(0XFFBBBBBB); - static const Color captionColor = Color(0XFF666666); - - static const Color lightRedColor = Color(0XFFFFF8F8); - - static final ThemeData lightTheme = ThemeData( - primaryColor: primaryColor, - colorScheme: lightColorScheme, - fontFamily: 'Dana-FA', - appBarTheme: const AppBarTheme( - backgroundColor: backgroundColor, - foregroundColor: darkPrimaryColor2, - ), - textTheme: const TextTheme( - bodyText1: body1Text, - bodyText2: body2Text, - caption: captionText, - subtitle2: subtitle2Text, - subtitle1: subtitle1Text, - headline3: headline3Text, - ), - scaffoldBackgroundColor: backgroundColor, - ); - - static final ThemeData darkTheme = ThemeData(); - - static const ColorScheme lightColorScheme = ColorScheme( - primary: primaryColor, - primaryVariant: Color(0XFF1B3C59), - secondary: Color(0XFFD61515), - secondaryVariant: Color(0XFFA30001), - surface: surfaceColor, - background: backgroundColor, - error: Color(0XFFF00505), - onPrimary: Colors.white, - onSecondary: Colors.white, - onSurface: Color(0XFF1F1F1F), - onBackground: Color(0XFF1F1F1F), - onError: Colors.white, - brightness: Brightness.light, - ); - - static const ColorScheme currentColorScheme = lightColorScheme; - - static const TextStyle headline3Text = TextStyle( - fontSize: 20, - fontWeight: FontWeight.w600, - ); - static const TextStyle subtitle1Text = TextStyle( - fontSize: 17, - fontWeight: FontWeight.w700, - ); - static const TextStyle subtitle2Text = TextStyle( - fontSize: 15, - fontWeight: FontWeight.w700, - ); - static const TextStyle body1Text = TextStyle( - fontSize: 15, - fontWeight: FontWeight.w700, - ); - static const TextStyle body2Text = TextStyle( - fontSize: 15, - fontWeight: FontWeight.w400, - ); - static const TextStyle captionText = TextStyle( - fontSize: 13, - color: captionColor, - ); + static late BuildContext context; static const BorderRadius lowBorderRadius = BorderRadius.all( Radius.circular(8), @@ -91,29 +14,39 @@ class DesignConfig { static const BorderRadius highBorderRadius = BorderRadius.all( Radius.circular(16), ); - static final Border lightBorder = Border.all(color: DesignConfig.borderColor); - static final BoxDecoration actionCardDecoration = BoxDecoration( - color: lightPrimaryColor3, - boxShadow: defaultShadow, - borderRadius: mediumBorderRadius, + + static final Border cardBorder = Border.all( + color: Theme.of(context).colorScheme.cardBorder, + width: 0.25, ); - static final List defaultShadow = [ - BoxShadow( - color: currentColorScheme.primaryVariant.withOpacity(0.25), - blurRadius: 16, - spreadRadius: 0, - ) - ]; + + static List get defaultShadow => [ + BoxShadow( + color: const Color(0XFF1B3C59).withOpacity(0.25), + blurRadius: 16, + spreadRadius: 0, + ) + ]; static const Duration lowAnimationDuration = Duration(milliseconds: 300); static const Duration mediumAnimationDuration = Duration(milliseconds: 600); - static final SystemUiOverlayStyle systemUIOverlayStyle = SystemUiOverlayStyle( - statusBarBrightness: Brightness.dark, - statusBarIconBrightness: Brightness.dark, - statusBarColor: Colors.transparent, - systemNavigationBarColor: currentColorScheme.surface, - systemNavigationBarDividerColor: Colors.transparent, - systemNavigationBarIconBrightness: Brightness.dark, - ); + static SystemUiOverlayStyle get systemUiOverlayStyle { + return SystemUiOverlayStyle( + statusBarIconBrightness: Theme.of(context).brightness == Brightness.dark + ? Brightness.light + : Brightness.dark, + statusBarColor: Colors.transparent, + systemNavigationBarColor: Theme.of(context).colorScheme.surface, + systemNavigationBarDividerColor: Colors.transparent, + systemNavigationBarIconBrightness: + Theme.of(context).colorScheme.brightness == Brightness.dark + ? Brightness.light + : Brightness.dark, + ); + } + + static void updateSystemUiOverlayStyle() { + SystemChrome.setSystemUIOverlayStyle(systemUiOverlayStyle); + } } diff --git a/lib/config/theme_data.dart b/lib/config/theme_data.dart new file mode 100644 index 0000000..d89b159 --- /dev/null +++ b/lib/config/theme_data.dart @@ -0,0 +1,213 @@ +import 'package:flutter/material.dart'; + +class LightThemeConfig { + static const Color _primary = Color(0XFF007EA7); + static const Color _white = Color(0XFFFFFFFF); + static const Color _black = Color(0XFF292929); + static const Color _background = Color(0XFFF8F8FA); + + static final ThemeData themeData = ThemeData( + backgroundColor: _background, + scaffoldBackgroundColor: _background, + colorScheme: _colorScheme, + fontFamily: 'Dana-FA', + textTheme: _textTheme, + ); + + static final TextTheme _textTheme = const TextTheme( + bodyText1: _body1Text, + bodyText2: _body2Text, + caption: _captionText, + subtitle2: _subtitle2Text, + subtitle1: _subtitle1Text, + headline3: _headline3Text, + ).apply(bodyColor: _black, displayColor: _black); + + static const ColorScheme _colorScheme = ColorScheme( + primary: _primary, + primaryVariant: _white, + secondary: Color(0XFFD61515), + secondaryVariant: _white, + surface: _white, + background: _background, + error: Color(0XFFF00505), + onPrimary: _white, + onSecondary: _white, + onSurface: _black, + onBackground: _white, + onError: _white, + brightness: Brightness.light, + ); + + static const TextStyle _headline3Text = TextStyle( + fontSize: 20, + fontWeight: FontWeight.w600, + ); + static const TextStyle _subtitle1Text = TextStyle( + fontSize: 17, + fontWeight: FontWeight.w700, + ); + static const TextStyle _subtitle2Text = TextStyle( + fontSize: 15, + fontWeight: FontWeight.w700, + ); + static const TextStyle _body1Text = TextStyle( + fontSize: 15, + fontWeight: FontWeight.w700, + ); + static const TextStyle _body2Text = TextStyle( + fontSize: 15, + fontWeight: FontWeight.w400, + ); + static const TextStyle _captionText = TextStyle( + fontSize: 13, + fontWeight: FontWeight.w400, + ); +} + +class DarkThemeConfig { + static const Color _primary = Color(0XFF007EA7); + static const Color _white = Color(0XFFFFFFFF); + static const Color _background = Color(0XFF202224); + + static final ThemeData themeData = ThemeData( + backgroundColor: _background, + scaffoldBackgroundColor: _background, + colorScheme: _colorScheme, + fontFamily: 'Dana-FA', + textTheme: _textTheme, + iconTheme: const IconThemeData( + color: text, + ), + ); + + static final TextTheme _textTheme = const TextTheme( + bodyText1: _body1Text, + bodyText2: _body2Text, + caption: _captionText, + subtitle2: _subtitle2Text, + subtitle1: _subtitle1Text, + headline3: _headline3Text, + ).apply(bodyColor: text, displayColor: text); + + static const ColorScheme _colorScheme = ColorScheme( + primary: _primary, + primaryVariant: _white, + secondary: Color(0XFFE53939), + secondaryVariant: _white, + surface: Color(0XFF181B1F), + background: _background, + error: Color(0XFFF53B3B), + onPrimary: _white, + onSecondary: _white, + onSurface: text, + onBackground: text, + onError: _white, + brightness: Brightness.dark, + ); + + static const TextStyle _headline3Text = TextStyle( + fontSize: 20, + fontWeight: FontWeight.w600, + ); + static const TextStyle _subtitle1Text = TextStyle( + fontSize: 17, + fontWeight: FontWeight.w700, + ); + static const TextStyle _subtitle2Text = TextStyle( + fontSize: 15, + fontWeight: FontWeight.w700, + ); + static const TextStyle _body1Text = TextStyle( + fontSize: 15, + fontWeight: FontWeight.w700, + ); + static const TextStyle _body2Text = TextStyle( + fontSize: 15, + fontWeight: FontWeight.w400, + ); + static const TextStyle _captionText = TextStyle( + fontSize: 13, + fontWeight: FontWeight.w400, + ); + + // Secondary colors + static const Color secondaryColor = Color(0XFFD61515); + static const Color secondaryDark = Color(0XFF703838); + + // Grey colors + static const Color white = Color(0XFFFFFFFF); + static const Color title = Color(0XFFF5F5F5); + static const Color text = Color(0XFFD6D6D6); + static const Color hint = Color(0XFFBBBBBB); + static const Color border = Color(0XFF666666); + + // Error and success + static const Color errorLight = Color(0XFFF0C9CD); + static const Color error = Color(0XFFF53B3B); + static const Color successLight = Color(0XFFBBD6B4); + static const Color success = Color(0XFF32A64C); +} + +extension DidvanColorScheme on ColorScheme { + // Secondary colors + Color get secondaryDisabled => brightness == Brightness.dark + ? const Color(0XFF703838) + : const Color(0XFFFFC8C8); + + Color get white => const Color(0XFFFFFFFF); + Color get focused => brightness == Brightness.dark + ? const Color(0XFF323C47) + : const Color(0XFFE6F3FA); + Color get navigation => brightness == Brightness.dark + ? const Color(0XFF181B1F) + : const Color(0XFF012348); + Color get focusedBorder => brightness == Brightness.dark + ? const Color(0XFFC8E0F4) + : const Color(0XFFE6F3FA); + Color get title => brightness == Brightness.dark + ? const Color(0XFFA3A3A3) + : const Color(0XFF1B3C59); + Color get text => brightness == Brightness.dark + ? const Color(0XFFA3A3A3) + : const Color(0XFF292929); + Color get inputText => brightness == Brightness.dark + ? const Color(0XFFA3A3A3) + : const Color(0XFF3D3D3D); + Color get caption => brightness == Brightness.dark + ? const Color(0XFFD6D6D6) + : const Color(0XFF666666); + Color get hint => const Color(0XFFBBBBBB); + Color get disabledText => brightness == Brightness.dark + ? const Color(0XFF666666) + : const Color(0XFFE0E0E0); + Color get border => brightness == Brightness.dark + ? const Color(0XFF666666) + : const Color(0XFFE0E0E0); + Color get cardBorder => brightness == Brightness.dark + ? const Color(0XFF666666) + : const Color(0XFFEBEBEB); + Color get disabledBackground => brightness == Brightness.dark + ? const Color(0XFF1F1F1F) + : const Color(0XFFE0E0E0); + Color get secondCTA => brightness == Brightness.dark + ? const Color(0XFF474747) + : const Color(0XFFF5F5F5); + Color get splash => brightness == Brightness.dark + ? const Color(0XFF333333) + : const Color(0XFFC8E0F4); + Color get black => brightness == Brightness.dark + ? const Color(0XFF1F1F1F) + : const Color(0XFF292929); + + // Error and success colors + Color get errorLight => brightness == Brightness.dark + ? const Color(0XFFF0C9CD) + : const Color(0XFFFFF8F8); + Color get successLight => brightness == Brightness.dark + ? const Color(0XFFBBD6B4) + : const Color(0XFFF5FFFC); + Color get success => brightness == Brightness.dark + ? const Color(0XFF32A64C) + : const Color(0XFF2BB24A); +} diff --git a/lib/main.dart b/lib/main.dart index 3282f6f..878f462 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,8 +1,8 @@ import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/routes/route_generator.dart'; import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; import 'package:flutter_localizations/flutter_localizations.dart'; import 'package:provider/provider.dart'; @@ -14,28 +14,30 @@ class Didvan extends StatelessWidget { const Didvan({Key? key}) : super(key: key); @override Widget build(BuildContext context) { - return ChangeNotifierProvider( - create: (context) => UserProvider(), - child: AnnotatedRegion( - value: DesignConfig.systemUIOverlayStyle, - child: MaterialApp( - debugShowCheckedModeBanner: false, - title: 'Didvan', - theme: DesignConfig.lightTheme, - darkTheme: DesignConfig.darkTheme, - themeMode: ThemeMode.light, - onGenerateRoute: (settings) => RouteGenerator.generateRoute(settings), - initialRoute: '/', - localizationsDelegates: const [ - GlobalCupertinoLocalizations.delegate, - GlobalMaterialLocalizations.delegate, - GlobalWidgetsLocalizations.delegate, - ], - supportedLocales: const [ - Locale("fa", "IR"), - ], - locale: const Locale("fa", "IR"), + return MultiProvider( + providers: [ + ChangeNotifierProvider( + create: (context) => UserProvider(), ), + ], + child: MaterialApp( + debugShowCheckedModeBanner: false, + title: 'Didvan', + theme: LightThemeConfig.themeData, + darkTheme: DarkThemeConfig.themeData, + color: LightThemeConfig.themeData.primaryColor, + themeMode: ThemeMode.light, + onGenerateRoute: (settings) => RouteGenerator.generateRoute(settings), + initialRoute: '/', + localizationsDelegates: const [ + GlobalCupertinoLocalizations.delegate, + GlobalMaterialLocalizations.delegate, + GlobalWidgetsLocalizations.delegate, + ], + supportedLocales: const [ + Locale("fa", "IR"), + ], + locale: const Locale("fa", "IR"), ), ); } diff --git a/lib/pages/authentication/screens/verification.dart b/lib/pages/authentication/screens/verification.dart index 9b31088..d0d3bde 100644 --- a/lib/pages/authentication/screens/verification.dart +++ b/lib/pages/authentication/screens/verification.dart @@ -1,4 +1,5 @@ import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; import 'package:didvan/pages/authentication/widgets/authentication_layout.dart'; import 'package:didvan/widgets/didvan/button.dart'; @@ -47,7 +48,7 @@ class Verification extends StatelessWidget { pinTheme: PinTheme( fieldHeight: 48, fieldWidth: 48, - inactiveColor: DesignConfig.borderColor, + inactiveColor: Theme.of(context).colorScheme.border, activeFillColor: Theme.of(context).colorScheme.primary, activeColor: Theme.of(context).colorScheme.primary, borderRadius: DesignConfig.lowBorderRadius, diff --git a/lib/pages/authentication/widgets/authentication_app_bar.dart b/lib/pages/authentication/widgets/authentication_app_bar.dart index 3361f0f..7061c00 100644 --- a/lib/pages/authentication/widgets/authentication_app_bar.dart +++ b/lib/pages/authentication/widgets/authentication_app_bar.dart @@ -1,4 +1,4 @@ -import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; @@ -16,9 +16,9 @@ class AuthenticationAppBar extends StatelessWidget { children: [ GestureDetector( onTap: () => context.read().currentPageIndex--, - child: const Icon( + child: Icon( Icons.arrow_back, - color: DesignConfig.darkPrimaryColor2, + color: Theme.of(context).colorScheme.title, ), ), const SizedBox( @@ -28,7 +28,7 @@ class AuthenticationAppBar extends StatelessWidget { DidvanText( title!, style: Theme.of(context).textTheme.subtitle2, - color: DesignConfig.darkPrimaryColor2, + color: Theme.of(context).colorScheme.title, ) ], ), diff --git a/lib/pages/home/home.dart b/lib/pages/home/home.dart index e6d8645..2928674 100644 --- a/lib/pages/home/home.dart +++ b/lib/pages/home/home.dart @@ -1,3 +1,4 @@ +import 'package:didvan/config/design_config.dart'; import 'package:didvan/pages/home/home_state.dart'; import 'package:didvan/pages/home/news/news.dart'; import 'package:didvan/pages/home/profile/profile.dart'; @@ -21,6 +22,10 @@ class _HomeState extends State with SingleTickerProviderStateMixin { @override void initState() { + Future.delayed(Duration(milliseconds: 500), () { + DesignConfig.context = context; + DesignConfig.updateSystemUiOverlayStyle(); + }); _tabController = TabController(length: 5, vsync: this); _tabController.addListener(() { context.read().currentPageIndex = _tabController.index; diff --git a/lib/pages/home/profile/edit_profile/widgets/profile_photo.dart b/lib/pages/home/profile/edit_profile/widgets/profile_photo.dart index 635ac3c..7ed6e5a 100644 --- a/lib/pages/home/profile/edit_profile/widgets/profile_photo.dart +++ b/lib/pages/home/profile/edit_profile/widgets/profile_photo.dart @@ -1,4 +1,4 @@ -import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:flutter/material.dart'; @@ -17,14 +17,14 @@ class ProfilePhoto extends StatelessWidget { Container( height: 96, width: 96, - decoration: const BoxDecoration( + decoration: BoxDecoration( shape: BoxShape.circle, - color: DesignConfig.lightPrimaryColor2, + color: Theme.of(context).colorScheme.focused, ), - child: const Icon( + child: Icon( DidvanIcons.profile_solid, size: 60, - color: DesignConfig.darkPrimaryColor2, + color: Theme.of(context).colorScheme.title, ), ), const Positioned( diff --git a/lib/pages/home/profile/edit_profile/widgets/switch.dart b/lib/pages/home/profile/edit_profile/widgets/switch.dart index 940e1b1..6c07c4e 100644 --- a/lib/pages/home/profile/edit_profile/widgets/switch.dart +++ b/lib/pages/home/profile/edit_profile/widgets/switch.dart @@ -1,4 +1,3 @@ -import 'package:didvan/config/design_config.dart'; import 'package:didvan/pages/home/profile/widgets/menu_item.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; diff --git a/lib/pages/home/profile/profile.dart b/lib/pages/home/profile/profile.dart index f8cc451..fa74059 100644 --- a/lib/pages/home/profile/profile.dart +++ b/lib/pages/home/profile/profile.dart @@ -1,4 +1,3 @@ -import 'package:didvan/config/design_config.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/pages/home/profile/widgets/menu_item.dart'; import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; @@ -50,7 +49,7 @@ class Profile extends StatelessWidget { ), const DidvanDivider(), MenuItem( - title: 'پیام‌ها', + title: 'خروج از حساب کاربری', icon: DidvanIcons.sign_out_regular, color: Theme.of(context).colorScheme.secondary, onTap: () => {}, diff --git a/lib/pages/home/profile/widgets/menu_item.dart b/lib/pages/home/profile/widgets/menu_item.dart index 64a3510..5f4e855 100644 --- a/lib/pages/home/profile/widgets/menu_item.dart +++ b/lib/pages/home/profile/widgets/menu_item.dart @@ -1,4 +1,4 @@ -import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; @@ -9,14 +9,14 @@ class MenuItem extends StatelessWidget { final String? suffix; final VoidCallback onTap; final Widget? trailing; - final Color color; + final Color? color; const MenuItem({ Key? key, required this.title, this.icon, this.suffix, required this.onTap, - this.color = DesignConfig.darkPrimaryColor2, + this.color, this.trailing, }) : super(key: key); @@ -28,13 +28,16 @@ class MenuItem extends StatelessWidget { children: [ if (icon != null) Icon(icon, size: 18, color: color), if (icon != null) const SizedBox(width: 4), - DidvanText(title, color: color), + DidvanText( + title, + color: color ?? Theme.of(context).colorScheme.title, + ), const Spacer(), trailing ?? Icon( DidvanIcons.angle_left_regular, size: 18, - color: color, + color: color ?? Theme.of(context).colorScheme.title, ), ], ), diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index 3921214..23cb1f6 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -1,4 +1,5 @@ import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; import 'package:didvan/pages/home/radar/widgets/categories_gird.dart'; import 'package:didvan/pages/home/radar/widgets/categories_list.dart'; import 'package:didvan/pages/home/radar/widgets/search_field.dart'; @@ -55,7 +56,7 @@ class _RadarState extends State { child: DidvanText( 'آخرین رصد', style: Theme.of(context).textTheme.subtitle1, - color: DesignConfig.darkPrimaryColor2, + color: Theme.of(context).colorScheme.title, ), ), ), diff --git a/lib/pages/home/radar/widgets/categories_list.dart b/lib/pages/home/radar/widgets/categories_list.dart index e9b4f3a..76ca59c 100644 --- a/lib/pages/home/radar/widgets/categories_list.dart +++ b/lib/pages/home/radar/widgets/categories_list.dart @@ -1,4 +1,5 @@ import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; import 'package:didvan/models/radar_category.dart'; import 'package:didvan/pages/home/radar/radar_state.dart'; import 'package:didvan/widgets/animated_visibility.dart'; @@ -47,9 +48,11 @@ class CategoriesList extends StatelessWidget { duration: DesignConfig.mediumAnimationDuration, child: _itemBuilder( RadarCategory(title: 'همه', asset: '', id: 0), + context, ), ), - for (var category in categories) _itemBuilder(category), + for (var category in categories) + _itemBuilder(category, context), ], ), ), @@ -58,7 +61,7 @@ class CategoriesList extends StatelessWidget { ); } - Widget _itemBuilder(RadarCategory category) { + Widget _itemBuilder(RadarCategory category, BuildContext context) { return Container( margin: const EdgeInsets.only(left: 12), width: 100, @@ -67,7 +70,7 @@ class CategoriesList extends StatelessWidget { child: DidvanText(category.title), decoration: BoxDecoration( border: Border.all( - color: DesignConfig.darkPrimaryColor2, + color: Theme.of(context).colorScheme.title, ), borderRadius: DesignConfig.lowBorderRadius, ), diff --git a/lib/pages/home/radar/widgets/category_item.dart b/lib/pages/home/radar/widgets/category_item.dart index 85f516c..bfbdbbb 100644 --- a/lib/pages/home/radar/widgets/category_item.dart +++ b/lib/pages/home/radar/widgets/category_item.dart @@ -1,4 +1,5 @@ import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; import 'package:didvan/widgets/animated_visibility.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; @@ -27,7 +28,7 @@ class CategoryItem extends StatelessWidget { decoration: BoxDecoration( borderRadius: DesignConfig.lowBorderRadius, border: isColapsed - ? Border.all(color: DesignConfig.darkPrimaryColor2) + ? Border.all(color: Theme.of(context).colorScheme.title) : null, ), child: Column( @@ -38,7 +39,11 @@ class CategoryItem extends StatelessWidget { child: Container( width: ds.width / 5, height: ds.width / 5, - decoration: DesignConfig.actionCardDecoration, + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.surface, + boxShadow: DesignConfig.defaultShadow, + borderRadius: DesignConfig.mediumBorderRadius, + ), padding: const EdgeInsets.all(8), child: Image.asset( asset, @@ -51,7 +56,7 @@ class CategoryItem extends StatelessWidget { DidvanText( title, style: Theme.of(context).textTheme.subtitle2, - color: DesignConfig.darkPrimaryColor2, + color: Theme.of(context).colorScheme.title, ), ], ), diff --git a/lib/pages/home/radar/widgets/search_field.dart b/lib/pages/home/radar/widgets/search_field.dart index 4d01a04..406cc8c 100644 --- a/lib/pages/home/radar/widgets/search_field.dart +++ b/lib/pages/home/radar/widgets/search_field.dart @@ -1,4 +1,4 @@ -import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:flutter/material.dart'; @@ -46,12 +46,12 @@ class _SearchFieldState extends State { prefixIcon: const Icon( DidvanIcons.search_regular, ), - enabledBorder: const OutlineInputBorder( - borderRadius: BorderRadius.all( + enabledBorder: OutlineInputBorder( + borderRadius: const BorderRadius.all( Radius.circular(4), ), borderSide: BorderSide( - color: DesignConfig.borderColor, + color: Theme.of(context).colorScheme.border, ), ), fillColor: Colors.red, @@ -62,7 +62,7 @@ class _SearchFieldState extends State { ), border: InputBorder.none, hintText: 'جستجو مطلب در رادار', - hintStyle: const TextStyle(color: DesignConfig.hintColor), + hintStyle: TextStyle(color: Theme.of(context).colorScheme.hint), ), ), ); @@ -70,7 +70,7 @@ class _SearchFieldState extends State { Color _fillColor() { if (_focusNode.hasFocus) { - return DesignConfig.lightPrimaryColor3; + return Theme.of(context).colorScheme.surface; } return Theme.of(context).colorScheme.surface; } diff --git a/lib/pages/home/widgets/bnb.dart b/lib/pages/home/widgets/bnb.dart index d92f996..036c46c 100644 --- a/lib/pages/home/widgets/bnb.dart +++ b/lib/pages/home/widgets/bnb.dart @@ -1,4 +1,5 @@ import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; @@ -40,8 +41,8 @@ class DidvanBNB extends StatelessWidget { _NavBarItem( isSelected: currentTabIndex == 2, title: 'رادار', - selectedIcon: DidvanIcons.news_solid, - unselectedIcon: DidvanIcons.news_regular, + selectedIcon: DidvanIcons.radar_solid, + unselectedIcon: DidvanIcons.radar_light, onTap: () => onTabChanged(2), ), _NavBarItem( @@ -85,7 +86,7 @@ class _NavBarItem extends StatelessWidget { child: Tooltip( message: title, decoration: BoxDecoration( - color: DesignConfig.darkPrimaryColor2, + color: Theme.of(context).colorScheme.title, borderRadius: DesignConfig.highBorderRadius, boxShadow: DesignConfig.defaultShadow, ), @@ -104,19 +105,23 @@ class _NavBarItem extends StatelessWidget { decoration: BoxDecoration( shape: BoxShape.circle, color: isSelected - ? DesignConfig.lightPrimaryColor2 + ? Theme.of(context).colorScheme.focused : Theme.of(context).colorScheme.surface, ), child: Icon( isSelected ? selectedIcon : unselectedIcon, size: 32, - color: isSelected ? DesignConfig.darkPrimaryColor2 : null, + color: isSelected + ? Theme.of(context).brightness == Brightness.dark + ? Theme.of(context).colorScheme.text + : Theme.of(context).colorScheme.title + : null, ), ), DidvanText( title, style: Theme.of(context).textTheme.caption, - color: DesignConfig.darkPrimaryColor2, + color: Theme.of(context).colorScheme.title, ), const Spacer(), ], diff --git a/lib/pages/splash/splash.dart b/lib/pages/splash/splash.dart index 36dc181..7e2645b 100644 --- a/lib/pages/splash/splash.dart +++ b/lib/pages/splash/splash.dart @@ -1,4 +1,6 @@ import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/main.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/widgets/logos/didvan_horizontal_logo.dart'; import 'package:flutter/material.dart'; @@ -16,23 +18,29 @@ class _SplashState extends State { void initState() { Future.delayed( const Duration(seconds: 2), - () => Navigator.of(context).pushReplacementNamed( - Routes.home, - ), + () { + Navigator.of(context).pushReplacementNamed( + Routes.home, + ); + }, ); super.initState(); } @override Widget build(BuildContext context) { + DesignConfig.context = context; return AnnotatedRegion( - value: DesignConfig.systemUIOverlayStyle.copyWith( - systemNavigationBarColor: DesignConfig.lightPrimaryColor3, + value: DesignConfig.systemUiOverlayStyle.copyWith( + systemNavigationBarColor: Theme.of(context).colorScheme.focused, ), - child: Container( - padding: const EdgeInsets.all(60), - color: DesignConfig.lightPrimaryColor3, - child: const DidvanVerticalLogo(), + child: Scaffold( + body: Container( + alignment: Alignment.center, + padding: const EdgeInsets.all(60), + color: Theme.of(context).colorScheme.focused, + child: const DidvanVerticalLogo(), + ), ), ); } diff --git a/lib/providers/theme_provider.dart b/lib/providers/theme_provider.dart new file mode 100644 index 0000000..638c1c7 --- /dev/null +++ b/lib/providers/theme_provider.dart @@ -0,0 +1,6 @@ +import 'package:didvan/providers/core_provider.dart'; +import 'package:flutter/material.dart'; + +class ThemeProvider extends CoreProvier { + late ThemeMode themeMode; +} diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index ee73a39..581c2bb 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -1,4 +1,3 @@ -import 'package:didvan/config/design_config.dart'; import 'package:didvan/pages/authentication/authentication.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; import 'package:didvan/pages/home/home.dart'; @@ -57,12 +56,8 @@ class RouteGenerator { } static Route _createRoute(page) { - return PageRouteBuilder( - pageBuilder: (context, animation, secondaryAnimation) => page, - transitionDuration: DesignConfig.mediumAnimationDuration, - transitionsBuilder: (context, animation, secondaryAnimation, child) { - return FadeTransition(opacity: animation, child: child); - }, + return MaterialPageRoute( + builder: (context) => page, ); } } diff --git a/lib/utils/actions_sheet.dart b/lib/utils/actions_sheet.dart index 64926d0..50b2a2a 100644 --- a/lib/utils/actions_sheet.dart +++ b/lib/utils/actions_sheet.dart @@ -23,7 +23,7 @@ class ActionSheetUtils { static AnnotatedRegion _customSystemOverlayStyle({required Widget child}) { return AnnotatedRegion( - value: DesignConfig.systemUIOverlayStyle.copyWith( + value: DesignConfig.systemUiOverlayStyle.copyWith( systemNavigationBarColor: Colors.black45, ), child: child, diff --git a/lib/widgets/didvan/app_bar.dart b/lib/widgets/didvan/app_bar.dart index 7082b32..16e42fd 100644 --- a/lib/widgets/didvan/app_bar.dart +++ b/lib/widgets/didvan/app_bar.dart @@ -1,4 +1,5 @@ import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; import 'package:didvan/models/view/app_bar_data.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; @@ -18,7 +19,7 @@ class DidvanAppBar extends StatelessWidget { children: [ IconButton( onPressed: () => Navigator.of(context).pop(), - color: DesignConfig.darkPrimaryColor2, + color: Theme.of(context).colorScheme.title, icon: const Icon(Icons.arrow_back), ), const SizedBox(width: 16), @@ -28,7 +29,7 @@ class DidvanAppBar extends StatelessWidget { DidvanText( appBarData.title!, style: Theme.of(context).textTheme.headline3, - color: DesignConfig.darkPrimaryColor2, + color: Theme.of(context).colorScheme.title, ), ], ), diff --git a/lib/widgets/didvan/card.dart b/lib/widgets/didvan/card.dart index 5b0e747..63e083a 100644 --- a/lib/widgets/didvan/card.dart +++ b/lib/widgets/didvan/card.dart @@ -12,7 +12,7 @@ class DidvanCard extends StatelessWidget { decoration: BoxDecoration( borderRadius: DesignConfig.lowBorderRadius, color: Theme.of(context).colorScheme.surface, - border: DesignConfig.lightBorder, + border: DesignConfig.cardBorder, ), child: child, ); diff --git a/lib/widgets/didvan/divider.dart b/lib/widgets/didvan/divider.dart index 5199b62..da16730 100644 --- a/lib/widgets/didvan/divider.dart +++ b/lib/widgets/didvan/divider.dart @@ -1,4 +1,4 @@ -import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; import 'package:flutter/material.dart'; class DidvanDivider extends StatelessWidget { @@ -10,7 +10,7 @@ class DidvanDivider extends StatelessWidget { height: 1, width: double.infinity, margin: const EdgeInsets.symmetric(vertical: 16), - color: DesignConfig.borderColor, + color: Theme.of(context).colorScheme.border, ); } } diff --git a/lib/widgets/didvan/text.dart b/lib/widgets/didvan/text.dart index 3a0386c..ab33f69 100644 --- a/lib/widgets/didvan/text.dart +++ b/lib/widgets/didvan/text.dart @@ -1,4 +1,3 @@ -import 'package:didvan/config/design_config.dart'; import 'package:flutter/material.dart'; class DidvanText extends StatelessWidget { @@ -12,7 +11,7 @@ class DidvanText extends StatelessWidget { const DidvanText( this.text, { Key? key, - this.style = DesignConfig.body2Text, + this.style, this.color, this.fontSize, this.fontWeight, @@ -23,7 +22,7 @@ class DidvanText extends StatelessWidget { Widget build(BuildContext context) { return Text( text, - style: style!.copyWith( + style: (style ?? Theme.of(context).textTheme.bodyText2)!.copyWith( color: color, fontWeight: fontWeight, fontSize: fontSize, diff --git a/lib/widgets/didvan/text_field.dart b/lib/widgets/didvan/text_field.dart index 081fb08..aaed428 100644 --- a/lib/widgets/didvan/text_field.dart +++ b/lib/widgets/didvan/text_field.dart @@ -1,4 +1,5 @@ import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; @@ -56,7 +57,7 @@ class _DidvanTextFieldState extends State { if (widget.title != null) DidvanText( widget.title!, - color: !widget.enabled ? DesignConfig.hintColor : null, + color: !widget.enabled ? Theme.of(context).colorScheme.hint : null, ), if (widget.title != null) const SizedBox(height: 8), Container( @@ -87,7 +88,7 @@ class _DidvanTextFieldState extends State { hintStyle: Theme.of(context) .textTheme .bodyText2! - .copyWith(color: DesignConfig.hintColor), + .copyWith(color: Theme.of(context).colorScheme.hint), ), ), ), @@ -101,18 +102,18 @@ class _DidvanTextFieldState extends State { } else if (_hasError) { return Theme.of(context).colorScheme.error; } - return DesignConfig.borderColor; + return Theme.of(context).colorScheme.border; } Color _fillColor() { if (!widget.enabled) { - return DesignConfig.secontCtaColor; + return Theme.of(context).colorScheme.secondCTA; } if (_focusNode.hasFocus) { - return DesignConfig.lightPrimaryColor3; + return Theme.of(context).colorScheme.focused; } if (_hasError) { - return DesignConfig.lightRedColor; + return Theme.of(context).colorScheme.errorLight; } return Theme.of(context).colorScheme.surface; } diff --git a/lib/widgets/item_title.dart b/lib/widgets/item_title.dart index ed8bb84..1ed15ad 100644 --- a/lib/widgets/item_title.dart +++ b/lib/widgets/item_title.dart @@ -1,17 +1,17 @@ -import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; class ItemTitle extends StatelessWidget { final String title; final IconData? icon; - final Color color; + final Color? color; const ItemTitle({ Key? key, required this.title, this.icon, - this.color = DesignConfig.darkPrimaryColor2, + this.color, }) : super(key: key); @override @@ -21,12 +21,13 @@ class ItemTitle extends StatelessWidget { child: Row( mainAxisSize: MainAxisSize.min, children: [ - if (icon != null) Icon(icon, color: color), + if (icon != null) + Icon(icon, color: color ?? Theme.of(context).colorScheme.title), if (icon != null) const SizedBox(width: 4), DidvanText( title, style: Theme.of(context).textTheme.subtitle1, - color: DesignConfig.darkPrimaryColor2, + color: color ?? Theme.of(context).colorScheme.title, ) ], ), diff --git a/pubspec.lock b/pubspec.lock index 1cace8f..91d1327 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -43,6 +43,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.15.0" + crypto: + dependency: transitive + description: + name: crypto + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.1" cupertino_icons: dependency: "direct main" description: @@ -86,6 +93,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.1.0" + hive: + dependency: "direct main" + description: + name: hive + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.5" http: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 596b680..2d58c87 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -39,6 +39,7 @@ dependencies: provider: ^6.0.1 pin_code_fields: ^7.3.0 rive: ^0.7.33 + hive: ^2.0.5 dev_dependencies: flutter_test: From cb5252520297dcfa6b2151c09646e1ed822b1c95 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 22 Dec 2021 12:15:00 +0330 Subject: [PATCH 031/273] D1APP-32 appbar fixed --- .../profile/edit_profile/edit_profile.dart | 9 ++- lib/pages/home/profile/profile.dart | 2 +- lib/pages/home/profile/settings/settings.dart | 23 ++++++++ lib/routes/route_generator.dart | 5 ++ lib/routes/routes.dart | 1 + lib/widgets/didvan/app_bar.dart | 52 +++++++++-------- lib/widgets/didvan/scaffold.dart | 1 + pubspec.lock | 56 ++++++++++++++++++- pubspec.yaml | 1 + 9 files changed, 121 insertions(+), 29 deletions(-) create mode 100644 lib/pages/home/profile/settings/settings.dart diff --git a/lib/pages/home/profile/edit_profile/edit_profile.dart b/lib/pages/home/profile/edit_profile/edit_profile.dart index 06caf69..1bd7628 100644 --- a/lib/pages/home/profile/edit_profile/edit_profile.dart +++ b/lib/pages/home/profile/edit_profile/edit_profile.dart @@ -14,10 +14,13 @@ class EditProfile extends StatelessWidget { @override Widget build(BuildContext context) { return DidvanScaffold( - appBarData: AppBarData(), + appBarData: AppBarData(title: 'ویرایش پروفایل'), slivers: [ - const SliverToBoxAdapter( - child: ProfilePhoto(), + const SliverPadding( + padding: EdgeInsets.only(top: 16), + sliver: SliverToBoxAdapter( + child: ProfilePhoto(), + ), ), SliverPadding( padding: const EdgeInsets.all(16), diff --git a/lib/pages/home/profile/profile.dart b/lib/pages/home/profile/profile.dart index fa74059..d6fc48c 100644 --- a/lib/pages/home/profile/profile.dart +++ b/lib/pages/home/profile/profile.dart @@ -39,7 +39,7 @@ class Profile extends StatelessWidget { MenuItem( title: 'تنظیمات', icon: DidvanIcons.setting_regular, - onTap: () => {}, + onTap: () => Navigator.of(context).pushNamed(Routes.settings), ), const DidvanDivider(), MenuItem( diff --git a/lib/pages/home/profile/settings/settings.dart b/lib/pages/home/profile/settings/settings.dart new file mode 100644 index 0000000..e445f8a --- /dev/null +++ b/lib/pages/home/profile/settings/settings.dart @@ -0,0 +1,23 @@ +import 'package:didvan/models/view/app_bar_data.dart'; +import 'package:didvan/pages/home/profile/widgets/menu_item.dart'; +import 'package:didvan/widgets/didvan/card.dart'; +import 'package:didvan/widgets/didvan/scaffold.dart'; +import 'package:flutter/material.dart'; + +class Settings extends StatelessWidget { + const Settings({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return DidvanScaffold( + appBarData: AppBarData(hasBack: true, title: 'تنظیمات'), + slivers: [ + SliverToBoxAdapter( + child: DidvanCard( + child: MenuItem(title: 'زمان دریافت اعلان', onTap: () {}), + ), + ), + ], + ); + } +} diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index 581c2bb..4fdba0a 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -3,6 +3,7 @@ import 'package:didvan/pages/authentication/authentication_state.dart'; import 'package:didvan/pages/home/home.dart'; import 'package:didvan/pages/home/home_state.dart'; import 'package:didvan/pages/home/profile/edit_profile/edit_profile.dart'; +import 'package:didvan/pages/home/profile/settings/settings.dart'; import 'package:didvan/pages/splash/splash.dart'; import 'package:didvan/pages/splash/splash_state.dart'; import 'package:didvan/routes/routes.dart'; @@ -37,6 +38,10 @@ class RouteGenerator { return _createRoute( const EditProfile(), ); + case Routes.settings: + return _createRoute( + const Settings(), + ); default: return _errorRoute(); } diff --git a/lib/routes/routes.dart b/lib/routes/routes.dart index 27e2f8f..92fbf3e 100644 --- a/lib/routes/routes.dart +++ b/lib/routes/routes.dart @@ -4,4 +4,5 @@ class Routes { static const String authenticaion = '/authentication'; static const String profile = '/profile'; static const String editProfile = '/edit-profile'; + static const String settings = '/settings'; } diff --git a/lib/widgets/didvan/app_bar.dart b/lib/widgets/didvan/app_bar.dart index 16e42fd..c14902d 100644 --- a/lib/widgets/didvan/app_bar.dart +++ b/lib/widgets/didvan/app_bar.dart @@ -11,30 +11,34 @@ class DidvanAppBar extends StatelessWidget { @override Widget build(BuildContext context) { final MediaQueryData d = MediaQuery.of(context); - return AnimatedContainer( - duration: DesignConfig.lowAnimationDuration, - child: Padding( - padding: EdgeInsets.only(top: d.padding.top, right: 4, left: 20), - child: Row( - children: [ - IconButton( - onPressed: () => Navigator.of(context).pop(), - color: Theme.of(context).colorScheme.title, - icon: const Icon(Icons.arrow_back), - ), - const SizedBox(width: 16), - Column( - children: [ - if (appBarData.title != null) - DidvanText( - appBarData.title!, - style: Theme.of(context).textTheme.headline3, - color: Theme.of(context).colorScheme.title, - ), - ], - ), - ], - ), + return Padding( + padding: EdgeInsets.only(top: d.padding.top, right: 4, left: 20), + child: Row( + children: [ + IconButton( + onPressed: () => Navigator.of(context).pop(), + color: Theme.of(context).colorScheme.title, + icon: const Icon(Icons.arrow_back), + ), + const SizedBox(width: 16), + Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + if (appBarData.title != null) + DidvanText( + appBarData.title!, + style: Theme.of(context).textTheme.headline3, + color: Theme.of(context).colorScheme.title, + ), + if (appBarData.subtitle != null) + DidvanText( + appBarData.title!, + style: Theme.of(context).textTheme.overline, + color: Theme.of(context).colorScheme.caption, + ), + ], + ), + ], ), ); } diff --git a/lib/widgets/didvan/scaffold.dart b/lib/widgets/didvan/scaffold.dart index 3836413..450b1d2 100644 --- a/lib/widgets/didvan/scaffold.dart +++ b/lib/widgets/didvan/scaffold.dart @@ -33,6 +33,7 @@ class _DidvanScaffoldState extends State { body: CustomScrollView( slivers: [ SliverAppBar( + backgroundColor: Theme.of(context).backgroundColor, automaticallyImplyLeading: false, pinned: true, flexibleSpace: DidvanAppBar(appBarData: widget.appBarData), diff --git a/pubspec.lock b/pubspec.lock index 91d1327..e771f17 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -43,6 +43,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.15.0" + cross_file: + dependency: transitive + description: + name: cross_file + url: "https://pub.dartlang.org" + source: hosted + version: "0.3.2" crypto: dependency: transitive description: @@ -81,11 +88,23 @@ packages: description: flutter source: sdk version: "0.0.0" + flutter_plugin_android_lifecycle: + dependency: transitive + description: + name: flutter_plugin_android_lifecycle + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.5" flutter_test: dependency: "direct dev" description: flutter source: sdk version: "0.0.0" + flutter_web_plugins: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" graphs: dependency: transitive description: @@ -114,6 +133,27 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "4.0.0" + image_picker: + dependency: "direct main" + description: + name: image_picker + url: "https://pub.dartlang.org" + source: hosted + version: "0.8.4+4" + image_picker_for_web: + dependency: transitive + description: + name: image_picker_for_web + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.4" + image_picker_platform_interface: + dependency: transitive + description: + name: image_picker_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "2.4.1" intl: dependency: transitive description: @@ -121,6 +161,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "0.17.0" + js: + dependency: transitive + description: + name: js + url: "https://pub.dartlang.org" + source: hosted + version: "0.6.3" lints: dependency: transitive description: @@ -163,6 +210,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "7.3.0" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.2" provider: dependency: "direct main" description: @@ -240,4 +294,4 @@ packages: version: "2.1.1" sdks: dart: ">=2.14.0 <3.0.0" - flutter: ">=1.16.0" + flutter: ">=2.5.0" diff --git a/pubspec.yaml b/pubspec.yaml index 2d58c87..aac10b9 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -40,6 +40,7 @@ dependencies: pin_code_fields: ^7.3.0 rive: ^0.7.33 hive: ^2.0.5 + image_picker: ^0.8.4+4 dev_dependencies: flutter_test: From d0535791734094d587a257ba25f9f88e72d7b1d1 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Thu, 23 Dec 2021 12:00:16 +0330 Subject: [PATCH 032/273] D1APP-30 settings page (static) + system chrome --- .../images/categories/business-dark.svg | 15 ++ .../images/categories/business-light.svg | 15 ++ lib/assets/images/categories/business.png | Bin 7836 -> 0 bytes .../images/categories/economic-dark.svg | 11 ++ .../images/categories/economic-light.svg | 11 ++ lib/assets/images/categories/economic.png | Bin 6727 -> 0 bytes .../images/categories/enviromental-dark.svg | 33 +++++ .../images/categories/enviromental-light.svg | 33 +++++ lib/assets/images/categories/enviromental.png | Bin 4860 -> 0 bytes .../images/categories/political-dark.svg | 8 + .../images/categories/political-light.svg | 8 + lib/assets/images/categories/political.png | Bin 5414 -> 0 bytes lib/assets/images/categories/social-dark.svg | 20 +++ lib/assets/images/categories/social-light.svg | 20 +++ lib/assets/images/categories/social.png | Bin 7312 -> 0 bytes lib/assets/images/categories/tech-dark.svg | 18 +++ lib/assets/images/categories/tech-light.svg | 18 +++ lib/assets/images/categories/tech.png | Bin 4720 -> 0 bytes lib/assets/images/logos/logo-h-t.png | Bin 47020 -> 0 bytes .../images/logos/logo-horizontal-dark.svg | 44 ++++++ .../images/logos/logo-horizontal-light.svg | 47 ++++++ lib/assets/images/logos/logo-v-t.png | Bin 54093 -> 0 bytes .../images/logos/logo-vertical-dark.svg | 44 ++++++ .../images/logos/logo-vertical-light.svg | 47 ++++++ lib/assets/images/themes/dark-theme.svg | 6 + lib/assets/images/themes/light-theme.svg | 6 + lib/config/design_config.dart | 22 +-- lib/constants/assets.dart | 40 +++-- lib/main.dart | 45 +++--- lib/models/settings_data.dart | 27 ++++ .../profile/edit_profile/edit_profile.dart | 88 +++++------ lib/pages/home/profile/profile.dart | 9 +- lib/pages/home/profile/settings/settings.dart | 117 ++++++++++++++- .../home/profile/settings/settings_state.dart | 73 +++++++++ lib/pages/home/profile/widgets/menu_item.dart | 9 ++ .../home/radar/widgets/category_item.dart | 5 +- lib/pages/splash/splash.dart | 42 ++++-- lib/providers/core_provider.dart | 2 + lib/providers/theme_provider.dart | 9 +- lib/routes/route_generator.dart | 6 +- lib/services/app_initalizer.dart | 37 +++++ .../request.dart} | 4 +- lib/services/network/request_helper.dart | 1 + lib/services/storage/storage.dart | 40 +++++ lib/utils/actions_sheet.dart | 4 +- lib/utils/date_time.dart | 8 + lib/widgets/didvan/app_bar.dart | 1 - lib/widgets/didvan/scaffold.dart | 45 ++---- lib/widgets/loading_indicators.dart | 1 + lib/widgets/logos/didvan_horizontal_logo.dart | 3 +- lib/widgets/logos/didvan_vertical_logo.dart | 3 +- lib/widgets/state_handler.dart | 48 ++++++ pubspec.lock | 140 ++++++++++++++++++ pubspec.yaml | 31 ++-- 54 files changed, 1101 insertions(+), 163 deletions(-) create mode 100644 lib/assets/images/categories/business-dark.svg create mode 100644 lib/assets/images/categories/business-light.svg delete mode 100644 lib/assets/images/categories/business.png create mode 100644 lib/assets/images/categories/economic-dark.svg create mode 100644 lib/assets/images/categories/economic-light.svg delete mode 100644 lib/assets/images/categories/economic.png create mode 100644 lib/assets/images/categories/enviromental-dark.svg create mode 100644 lib/assets/images/categories/enviromental-light.svg delete mode 100644 lib/assets/images/categories/enviromental.png create mode 100644 lib/assets/images/categories/political-dark.svg create mode 100644 lib/assets/images/categories/political-light.svg delete mode 100644 lib/assets/images/categories/political.png create mode 100644 lib/assets/images/categories/social-dark.svg create mode 100644 lib/assets/images/categories/social-light.svg delete mode 100644 lib/assets/images/categories/social.png create mode 100644 lib/assets/images/categories/tech-dark.svg create mode 100644 lib/assets/images/categories/tech-light.svg delete mode 100644 lib/assets/images/categories/tech.png delete mode 100644 lib/assets/images/logos/logo-h-t.png create mode 100644 lib/assets/images/logos/logo-horizontal-dark.svg create mode 100644 lib/assets/images/logos/logo-horizontal-light.svg delete mode 100644 lib/assets/images/logos/logo-v-t.png create mode 100644 lib/assets/images/logos/logo-vertical-dark.svg create mode 100644 lib/assets/images/logos/logo-vertical-light.svg create mode 100644 lib/assets/images/themes/dark-theme.svg create mode 100644 lib/assets/images/themes/light-theme.svg create mode 100644 lib/models/settings_data.dart create mode 100644 lib/pages/home/profile/settings/settings_state.dart create mode 100644 lib/services/app_initalizer.dart rename lib/services/{request_handler.dart => network/request.dart} (99%) create mode 100644 lib/services/network/request_helper.dart create mode 100644 lib/services/storage/storage.dart create mode 100644 lib/utils/date_time.dart create mode 100644 lib/widgets/loading_indicators.dart create mode 100644 lib/widgets/state_handler.dart diff --git a/lib/assets/images/categories/business-dark.svg b/lib/assets/images/categories/business-dark.svg new file mode 100644 index 0000000..9e09cda --- /dev/null +++ b/lib/assets/images/categories/business-dark.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/lib/assets/images/categories/business-light.svg b/lib/assets/images/categories/business-light.svg new file mode 100644 index 0000000..4b64c42 --- /dev/null +++ b/lib/assets/images/categories/business-light.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/lib/assets/images/categories/business.png b/lib/assets/images/categories/business.png deleted file mode 100644 index 0470a949a66364c49727f37b6d6b09cbf0e92255..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7836 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 + + + + + + + + + + diff --git a/lib/assets/images/categories/economic-light.svg b/lib/assets/images/categories/economic-light.svg new file mode 100644 index 0000000..0513930 --- /dev/null +++ b/lib/assets/images/categories/economic-light.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/lib/assets/images/categories/economic.png b/lib/assets/images/categories/economic.png deleted file mode 100644 index 44f67fbaf9639987013620a177b27eee2ec90ff8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6727 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 diff --git a/lib/assets/images/categories/enviromental-dark.svg b/lib/assets/images/categories/enviromental-dark.svg new file mode 100644 index 0000000..b59ba84 --- /dev/null +++ b/lib/assets/images/categories/enviromental-dark.svg @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/categories/enviromental-light.svg b/lib/assets/images/categories/enviromental-light.svg new file mode 100644 index 0000000..ce38dd6 --- /dev/null +++ b/lib/assets/images/categories/enviromental-light.svg @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/categories/enviromental.png b/lib/assets/images/categories/enviromental.png deleted file mode 100644 index f56f648343fb7bc8fcf798a274e8fbb2a52593fe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4860 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 i@ + + + + + + + diff --git a/lib/assets/images/categories/political-light.svg b/lib/assets/images/categories/political-light.svg new file mode 100644 index 0000000..c8f71b4 --- /dev/null +++ b/lib/assets/images/categories/political-light.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/lib/assets/images/categories/political.png b/lib/assets/images/categories/political.png deleted file mode 100644 index 06ea42a7fe8adea813f46e6f7e3fc8c955cdb0c0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5414 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 + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/categories/social-light.svg b/lib/assets/images/categories/social-light.svg new file mode 100644 index 0000000..2b28dac --- /dev/null +++ b/lib/assets/images/categories/social-light.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/categories/social.png b/lib/assets/images/categories/social.png deleted file mode 100644 index 2b4e4ea410fc7c3e43b7968ee83901fa5d58ff9c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7312 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
+ + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/categories/tech-light.svg b/lib/assets/images/categories/tech-light.svg new file mode 100644 index 0000000..ec8743a --- /dev/null +++ b/lib/assets/images/categories/tech-light.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/categories/tech.png b/lib/assets/images/categories/tech.png deleted file mode 100644 index 76bdc49bde27acca1827557bca33e79642f2a535..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4720 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
()taS7?6+jpZ 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 QD8Nuv(o(FGw+j3J0JzCh(*OVf diff --git a/lib/assets/images/logos/logo-horizontal-dark.svg b/lib/assets/images/logos/logo-horizontal-dark.svg new file mode 100644 index 0000000..ab9db91 --- /dev/null +++ b/lib/assets/images/logos/logo-horizontal-dark.svg @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/logos/logo-horizontal-light.svg b/lib/assets/images/logos/logo-horizontal-light.svg new file mode 100644 index 0000000..04e066b --- /dev/null +++ b/lib/assets/images/logos/logo-horizontal-light.svg @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/logos/logo-v-t.png b/lib/assets/images/logos/logo-v-t.png deleted file mode 100644 index 9d27213f032320cd7a2d39fb9e36399a7ca2ade0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 54093 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 FV1lpe#*Y91 diff --git a/lib/assets/images/logos/logo-vertical-dark.svg b/lib/assets/images/logos/logo-vertical-dark.svg new file mode 100644 index 0000000..0cf46df --- /dev/null +++ b/lib/assets/images/logos/logo-vertical-dark.svg @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/logos/logo-vertical-light.svg b/lib/assets/images/logos/logo-vertical-light.svg new file mode 100644 index 0000000..0f4c57f --- /dev/null +++ b/lib/assets/images/logos/logo-vertical-light.svg @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/themes/dark-theme.svg b/lib/assets/images/themes/dark-theme.svg new file mode 100644 index 0000000..ce96210 --- /dev/null +++ b/lib/assets/images/themes/dark-theme.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/lib/assets/images/themes/light-theme.svg b/lib/assets/images/themes/light-theme.svg new file mode 100644 index 0000000..93ac8c4 --- /dev/null +++ b/lib/assets/images/themes/light-theme.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/lib/config/design_config.dart b/lib/config/design_config.dart index 3b009c9..3c74136 100644 --- a/lib/config/design_config.dart +++ b/lib/config/design_config.dart @@ -15,10 +15,10 @@ class DesignConfig { Radius.circular(16), ); - static final Border cardBorder = Border.all( - color: Theme.of(context).colorScheme.cardBorder, - width: 0.25, - ); + static Border get cardBorder => Border.all( + color: Theme.of(context).colorScheme.cardBorder, + width: 0.5, + ); static List get defaultShadow => [ BoxShadow( @@ -28,6 +28,8 @@ class DesignConfig { ) ]; + static Brightness get brightness => Theme.of(context).brightness; + static const Duration lowAnimationDuration = Duration(milliseconds: 300); static const Duration mediumAnimationDuration = Duration(milliseconds: 600); @@ -37,12 +39,12 @@ class DesignConfig { ? Brightness.light : Brightness.dark, statusBarColor: Colors.transparent, - systemNavigationBarColor: Theme.of(context).colorScheme.surface, - systemNavigationBarDividerColor: Colors.transparent, - systemNavigationBarIconBrightness: - Theme.of(context).colorScheme.brightness == Brightness.dark - ? Brightness.light - : Brightness.dark, + // systemNavigationBarColor: Theme.of(context).colorScheme.surface, + // systemNavigationBarDividerColor: Colors.transparent, + // systemNavigationBarIconBrightness: + // Theme.of(context).colorScheme.brightness == Brightness.dark + // ? Brightness.light + // : Brightness.dark, ); } diff --git a/lib/constants/assets.dart b/lib/constants/assets.dart index 59af3fe..e22b26f 100644 --- a/lib/constants/assets.dart +++ b/lib/constants/assets.dart @@ -1,24 +1,36 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:flutter/cupertino.dart'; + class Assets { static const String _basePath = 'lib/assets'; static const String _baseImagesPath = _basePath + '/images'; + static const String _baseThemesPath = _basePath + '/images/themes'; static const String _baseAnimationsPath = _basePath + '/animations'; - static const String verticalLogoWithText = - _baseImagesPath + '/logos/logo-v-t.png'; - static const String horizontalLogoWithText = - _baseImagesPath + '/logos/logo-h-t.png'; + static String get verticalLogoWithText => + _baseImagesPath + '/logos/logo-vertical-$_themeSuffix.svg'; + static String get horizontalLogoWithText => + _baseImagesPath + '/logos/logo-horizontal-$_themeSuffix.svg'; static const String logoLoadingAnimation = _baseAnimationsPath + '/indicator.riv'; - static const businessCategoryIcon = - _baseImagesPath + '/categories/business.png'; - static const economicCategoryIcon = - _baseImagesPath + '/categories/economic.png'; - static const enviromentalCategoryIcon = - _baseImagesPath + '/categories/enviromental.png'; - static const politicalCategoryIcon = - _baseImagesPath + '/categories/political.png'; - static const socialCategoryIcon = _baseImagesPath + '/categories/social.png'; - static const techCategoryIcon = _baseImagesPath + '/categories/tech.png'; + static String get businessCategoryIcon => + _baseImagesPath + '/categories/business-$_themeSuffix.svg'; + static String get economicCategoryIcon => + _baseImagesPath + '/categories/economic-$_themeSuffix.svg'; + static String get enviromentalCategoryIcon => + _baseImagesPath + '/categories/enviromental-$_themeSuffix.svg'; + static String get politicalCategoryIcon => + _baseImagesPath + '/categories/political-$_themeSuffix.svg'; + static String get socialCategoryIcon => + _baseImagesPath + '/categories/social-$_themeSuffix.svg'; + static String get techCategoryIcon => + _baseImagesPath + '/categories/tech-$_themeSuffix.svg'; + + static const String lightTheme = _baseThemesPath + '/light-theme.svg'; + static const String darkTheme = _baseThemesPath + '/dark-theme.svg'; + + static String get _themeSuffix => + DesignConfig.brightness == Brightness.dark ? 'dark' : 'light'; } diff --git a/lib/main.dart b/lib/main.dart index 878f462..87129d8 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,5 +1,5 @@ -import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/providers/theme_provider.dart'; import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/routes/route_generator.dart'; import 'package:flutter/material.dart'; @@ -16,28 +16,33 @@ class Didvan extends StatelessWidget { Widget build(BuildContext context) { return MultiProvider( providers: [ - ChangeNotifierProvider( + ChangeNotifierProvider( create: (context) => UserProvider(), ), + ChangeNotifierProvider( + create: (context) => ThemeProvider(), + ), ], - child: MaterialApp( - debugShowCheckedModeBanner: false, - title: 'Didvan', - theme: LightThemeConfig.themeData, - darkTheme: DarkThemeConfig.themeData, - color: LightThemeConfig.themeData.primaryColor, - themeMode: ThemeMode.light, - onGenerateRoute: (settings) => RouteGenerator.generateRoute(settings), - initialRoute: '/', - localizationsDelegates: const [ - GlobalCupertinoLocalizations.delegate, - GlobalMaterialLocalizations.delegate, - GlobalWidgetsLocalizations.delegate, - ], - supportedLocales: const [ - Locale("fa", "IR"), - ], - locale: const Locale("fa", "IR"), + child: Consumer( + builder: (context, themeProvider, child) => MaterialApp( + debugShowCheckedModeBanner: false, + title: 'Didvan', + theme: LightThemeConfig.themeData, + darkTheme: DarkThemeConfig.themeData, + color: LightThemeConfig.themeData.primaryColor, + themeMode: themeProvider.themeMode, + onGenerateRoute: (settings) => RouteGenerator.generateRoute(settings), + initialRoute: '/', + localizationsDelegates: const [ + GlobalCupertinoLocalizations.delegate, + GlobalMaterialLocalizations.delegate, + GlobalWidgetsLocalizations.delegate, + ], + supportedLocales: const [ + Locale("fa", "IR"), + ], + locale: const Locale("fa", "IR"), + ), ), ); } diff --git a/lib/models/settings_data.dart b/lib/models/settings_data.dart new file mode 100644 index 0000000..e8404a9 --- /dev/null +++ b/lib/models/settings_data.dart @@ -0,0 +1,27 @@ +class SettingsData { + final String brightness; + final List notificationTimeRange; + final String fontFamily; + final double fontSizeScale; + + SettingsData( + this.brightness, + this.notificationTimeRange, + this.fontFamily, + this.fontSizeScale, + ); + + factory SettingsData.fromJson(Map json) => SettingsData( + json['brightness'], + json['notificationTimeRange'], + json['fontFamily'], + json['fontSizeScale'], + ); + + Map toJson() => { + 'brightness': brightness, + 'notificationTimeRange': notificationTimeRange, + 'fontFamily': fontFamily, + 'fontSizeScale': fontSizeScale, + }; +} diff --git a/lib/pages/home/profile/edit_profile/edit_profile.dart b/lib/pages/home/profile/edit_profile/edit_profile.dart index 1bd7628..c459622 100644 --- a/lib/pages/home/profile/edit_profile/edit_profile.dart +++ b/lib/pages/home/profile/edit_profile/edit_profile.dart @@ -16,55 +16,47 @@ class EditProfile extends StatelessWidget { return DidvanScaffold( appBarData: AppBarData(title: 'ویرایش پروفایل'), slivers: [ - const SliverPadding( - padding: EdgeInsets.only(top: 16), - sliver: SliverToBoxAdapter( - child: ProfilePhoto(), - ), - ), - SliverPadding( - padding: const EdgeInsets.all(16), - sliver: SliverToBoxAdapter( - child: DidvanCard( - child: Column( - children: [ - DidvanTextField( - title: 'نام کاربری', - hintText: 'انتخاب نام کاربری (اختیاری)', - onChanged: (value) { - //TODO: Needs implementation - }, - ), - const SizedBox(height: 16), - DidvanTextField( - title: 'ایمیل', - hintText: 'مثال: example@email.com', - onChanged: (value) { - //TODO: Meeds implementaion - }, - ), - const SizedBox(height: 16), - const DidvanTextField( - title: 'موبایل', - enabled: false, - hintText: '09123456789', //TODO: Needs api - ), - const SizedBox(height: 16), - DidvanSwitch( - value: true, //TODO: Needs api - title: 'ورود با اثر انگشت', - onChanged: (value) => { - //TODO: Needs implementaion - }, - ), - const DidvanDivider(), - MenuItem( - title: 'تغییر رمز عبور', - onTap: () {}, - ), - ], + const SizedBox(height: 16), + const ProfilePhoto(), + const SizedBox(height: 16), + DidvanCard( + child: Column( + children: [ + DidvanTextField( + title: 'نام کاربری', + hintText: 'انتخاب نام کاربری (اختیاری)', + onChanged: (value) { + //TODO: Needs implementation + }, ), - ), + const SizedBox(height: 16), + DidvanTextField( + title: 'ایمیل', + hintText: 'مثال: example@email.com', + onChanged: (value) { + //TODO: Meeds implementaion + }, + ), + const SizedBox(height: 16), + const DidvanTextField( + title: 'موبایل', + enabled: false, + hintText: '09123456789', //TODO: Needs api + ), + const SizedBox(height: 16), + DidvanSwitch( + value: true, //TODO: Needs api + title: 'ورود با اثر انگشت', + onChanged: (value) => { + //TODO: Needs implementaion + }, + ), + const DidvanDivider(), + MenuItem( + title: 'تغییر رمز عبور', + onTap: () {}, + ), + ], ), ), ], diff --git a/lib/pages/home/profile/profile.dart b/lib/pages/home/profile/profile.dart index d6fc48c..805099b 100644 --- a/lib/pages/home/profile/profile.dart +++ b/lib/pages/home/profile/profile.dart @@ -1,12 +1,14 @@ import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/pages/home/profile/widgets/menu_item.dart'; import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; +import 'package:didvan/providers/theme_provider.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/item_title.dart'; import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; class Profile extends StatelessWidget { const Profile({Key? key}) : super(key: key); @@ -18,7 +20,12 @@ class Profile extends StatelessWidget { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - const LogoAppBar(hasExtraPadding: false), + Consumer( + builder: (context, themeProvider, child) => LogoAppBar( + hasExtraPadding: false, + key: UniqueKey(), + ), + ), const SizedBox(height: 16), DidvanCard( child: Column( diff --git a/lib/pages/home/profile/settings/settings.dart b/lib/pages/home/profile/settings/settings.dart index e445f8a..c73bf6b 100644 --- a/lib/pages/home/profile/settings/settings.dart +++ b/lib/pages/home/profile/settings/settings.dart @@ -1,23 +1,124 @@ +import 'package:day_night_time_picker/lib/daynight_timepicker.dart'; +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/constants/assets.dart'; import 'package:didvan/models/view/app_bar_data.dart'; +import 'package:didvan/pages/home/profile/settings/settings_state.dart'; import 'package:didvan/pages/home/profile/widgets/menu_item.dart'; +import 'package:didvan/providers/theme_provider.dart'; import 'package:didvan/widgets/didvan/card.dart'; +import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/scaffold.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/item_title.dart'; +import 'package:didvan/widgets/state_handler.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_svg/flutter_svg.dart'; +import 'package:provider/provider.dart'; class Settings extends StatelessWidget { const Settings({Key? key}) : super(key: key); @override Widget build(BuildContext context) { - return DidvanScaffold( - appBarData: AppBarData(hasBack: true, title: 'تنظیمات'), - slivers: [ - SliverToBoxAdapter( - child: DidvanCard( - child: MenuItem(title: 'زمان دریافت اعلان', onTap: () {}), - ), + return Consumer( + builder: (context, state, child) => StateHandler( + state: context.read(), + builder: (context, state) => DidvanScaffold( + appBarData: AppBarData(hasBack: true, title: 'تنظیمات'), + slivers: [ + DidvanCard( + child: MenuItem( + title: 'زمان دریافت اعلان', + onTap: () => _pickTimeRange(context), + icon: DidvanIcons.notification_regular, + suffix: state.notificationTimeRange[0], + ), + ), + const ItemTitle( + title: 'انتخاب قلم', + icon: DidvanIcons.font_solid, + ), + DidvanCard( + child: Column( + children: [ + MenuItem( + suffix: 'نیاز به پیاده‌سازی', + title: 'فونت برنامه', + onTap: () {}, + ), + const DidvanDivider(), + MenuItem( + suffix: 'نیاز به پیاده‌سازی', + title: 'اندازه متن', + onTap: () {}, + ), + ], + ), + ), + const ItemTitle( + title: 'ظاهر برنامه', + icon: DidvanIcons.theme_solid, + ), + DidvanCard( + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceAround, + children: [ + _themeItem(context, state, 'light'), + _themeItem(context, state, 'dark'), + ], + ), + ), + ], ), - ], + ), + ); + } + + Future _pickTimeRange(context) async { + final SettingsState state = context.read(); + Navigator.of(context).push( + showPicker( + context: context, + value: const TimeOfDay(hour: 0, minute: 0), + onChange: (time) { + String hour = time.toString().split(':')[0]; + state.notificationTimeRange = []; + }, + ), + ); + } + + Widget _themeItem( + BuildContext context, SettingsState state, String brightness) { + final bool isDarkTheme = brightness == 'dark'; + return GestureDetector( + onTap: () { + state.brightness = brightness; + if (isDarkTheme && Theme.of(context).brightness == Brightness.dark) { + return; + } else if (!isDarkTheme && + Theme.of(context).brightness == Brightness.light) { + return; + } else { + if (isDarkTheme) { + context.read().themeMode = ThemeMode.dark; + DesignConfig.updateSystemUiOverlayStyle(); + } else { + context.read().themeMode = ThemeMode.light; + DesignConfig.updateSystemUiOverlayStyle(); + } + } + }, + child: Column( + children: [ + SvgPicture.asset(isDarkTheme ? Assets.darkTheme : Assets.lightTheme), + const SizedBox(height: 8), + DidvanText( + isDarkTheme ? 'تیره' : 'روشن', + ), + ], + ), ); } } diff --git a/lib/pages/home/profile/settings/settings_state.dart b/lib/pages/home/profile/settings/settings_state.dart new file mode 100644 index 0000000..0f0e973 --- /dev/null +++ b/lib/pages/home/profile/settings/settings_state.dart @@ -0,0 +1,73 @@ +import 'package:didvan/models/enums.dart'; +import 'package:didvan/providers/core_provider.dart'; +import 'package:didvan/services/storage/storage.dart'; + +class SettingsState extends CoreProvier { + SettingsState() { + getSettingsFromStorage(); + } + + List _notificationTimeRange = []; + String _fontFamily = 'Dana-FA'; + double _fontSizeScale = 1; + String _brightness = 'light'; + + set notificationTimeRange(List value) { + _notificationTimeRange = value; + StorageService.setValue( + key: 'notificationTimeRange', + value: value, + boxName: 'settings', + ); + } + + List get notificationTimeRange => _notificationTimeRange; + + set fontFamily(String value) { + _fontFamily = value; + StorageService.setValue( + key: 'fontFamily', + value: value, + boxName: 'settings', + ); + notifyListeners(); + } + + String get fontFamily => _fontFamily; + + set fontSizeScale(double value) { + _fontSizeScale = value; + StorageService.setValue( + key: 'fontSizeScale', + value: value, + boxName: 'settings', + ); + notifyListeners(); + } + + double get fontSizeScale => _fontSizeScale; + + set brightness(String value) { + _brightness = value; + StorageService.setValue( + key: 'brightness', + value: value, + boxName: 'settings', + ); + notifyListeners(); + } + + String get brightness => _brightness; + + Future getSettingsFromStorage() async { + appState = AppState.busy; + final Map settingsData = await StorageService.getBoxData( + boxName: 'settings', + ); + _notificationTimeRange = settingsData['notificationTimeRange']; + _fontFamily = settingsData['fontFamily']; + _fontSizeScale = settingsData['fontSizeScale']; + _brightness = settingsData['brightness']; + appState = AppState.idle; + } +} diff --git a/lib/pages/home/profile/widgets/menu_item.dart b/lib/pages/home/profile/widgets/menu_item.dart index 5f4e855..f6956a3 100644 --- a/lib/pages/home/profile/widgets/menu_item.dart +++ b/lib/pages/home/profile/widgets/menu_item.dart @@ -33,6 +33,15 @@ class MenuItem extends StatelessWidget { color: color ?? Theme.of(context).colorScheme.title, ), const Spacer(), + if (suffix != null) + DidvanText( + suffix!, + style: Theme.of(context) + .textTheme + .subtitle2! + .copyWith(fontWeight: FontWeight.w400), + color: Theme.of(context).colorScheme.primary, + ), trailing ?? Icon( DidvanIcons.angle_left_regular, diff --git a/lib/pages/home/radar/widgets/category_item.dart b/lib/pages/home/radar/widgets/category_item.dart index bfbdbbb..b9bec99 100644 --- a/lib/pages/home/radar/widgets/category_item.dart +++ b/lib/pages/home/radar/widgets/category_item.dart @@ -3,6 +3,7 @@ import 'package:didvan/config/theme_data.dart'; import 'package:didvan/widgets/animated_visibility.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_svg/flutter_svg.dart'; class CategoryItem extends StatelessWidget { final String title; @@ -45,9 +46,7 @@ class CategoryItem extends StatelessWidget { borderRadius: DesignConfig.mediumBorderRadius, ), padding: const EdgeInsets.all(8), - child: Image.asset( - asset, - ), + child: SvgPicture.asset(asset), ), ), const SizedBox( diff --git a/lib/pages/splash/splash.dart b/lib/pages/splash/splash.dart index 7e2645b..5d7de57 100644 --- a/lib/pages/splash/splash.dart +++ b/lib/pages/splash/splash.dart @@ -1,10 +1,14 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/main.dart'; +import 'package:didvan/pages/splash/splash_state.dart'; +import 'package:didvan/providers/theme_provider.dart'; import 'package:didvan/routes/routes.dart'; +import 'package:didvan/services/app_initalizer.dart'; import 'package:didvan/widgets/logos/didvan_horizontal_logo.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; +import 'package:provider/provider.dart'; class Splash extends StatefulWidget { const Splash({Key? key}) : super(key: key); @@ -14,31 +18,47 @@ class Splash extends StatefulWidget { } class _SplashState extends State { + bool _isGettingThemeData = true; + @override void initState() { - Future.delayed( - const Duration(seconds: 2), - () { - Navigator.of(context).pushReplacementNamed( - Routes.home, - ); - }, - ); + _initialize(); super.initState(); } + Future _initialize() async { + await AppInitializer.setupServices(); + final ThemeMode themeMode = await AppInitializer.initilizeSettings(); + context.read().themeMode = themeMode; + await Future.delayed( + const Duration(milliseconds: 200), + () => setState(() { + _isGettingThemeData = false; + }), + ); + await Future.delayed(const Duration(seconds: 2)); + Navigator.of(context).pushReplacementNamed(Routes.home); + } + @override Widget build(BuildContext context) { DesignConfig.context = context; + if (_isGettingThemeData) { + return Container( + color: Colors.black, + height: double.infinity, + width: double.infinity, + ); + } return AnnotatedRegion( value: DesignConfig.systemUiOverlayStyle.copyWith( - systemNavigationBarColor: Theme.of(context).colorScheme.focused, - ), + // systemNavigationBarColor: Theme.of(context).colorScheme.focused, + ), child: Scaffold( body: Container( alignment: Alignment.center, padding: const EdgeInsets.all(60), - color: Theme.of(context).colorScheme.focused, + color: Theme.of(context).colorScheme.background, child: const DidvanVerticalLogo(), ), ), diff --git a/lib/providers/core_provider.dart b/lib/providers/core_provider.dart index 3238711..45ef78c 100644 --- a/lib/providers/core_provider.dart +++ b/lib/providers/core_provider.dart @@ -9,5 +9,7 @@ class CoreProvier with ChangeNotifier { notifyListeners(); } + void update() => notifyListeners(); + AppState get appState => _appState; } diff --git a/lib/providers/theme_provider.dart b/lib/providers/theme_provider.dart index 638c1c7..ab095b2 100644 --- a/lib/providers/theme_provider.dart +++ b/lib/providers/theme_provider.dart @@ -2,5 +2,12 @@ import 'package:didvan/providers/core_provider.dart'; import 'package:flutter/material.dart'; class ThemeProvider extends CoreProvier { - late ThemeMode themeMode; + ThemeMode _themeMode = ThemeMode.system; + + set themeMode(ThemeMode value) { + _themeMode = value; + notifyListeners(); + } + + ThemeMode get themeMode => _themeMode; } diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index 4fdba0a..7b05f54 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -4,6 +4,7 @@ import 'package:didvan/pages/home/home.dart'; import 'package:didvan/pages/home/home_state.dart'; import 'package:didvan/pages/home/profile/edit_profile/edit_profile.dart'; import 'package:didvan/pages/home/profile/settings/settings.dart'; +import 'package:didvan/pages/home/profile/settings/settings_state.dart'; import 'package:didvan/pages/splash/splash.dart'; import 'package:didvan/pages/splash/splash_state.dart'; import 'package:didvan/routes/routes.dart'; @@ -40,7 +41,10 @@ class RouteGenerator { ); case Routes.settings: return _createRoute( - const Settings(), + ChangeNotifierProvider( + create: (context) => SettingsState(), + child: const Settings(), + ), ); default: return _errorRoute(); diff --git a/lib/services/app_initalizer.dart b/lib/services/app_initalizer.dart new file mode 100644 index 0000000..ac76df2 --- /dev/null +++ b/lib/services/app_initalizer.dart @@ -0,0 +1,37 @@ +import 'dart:io'; + +import 'package:didvan/models/settings_data.dart'; +import 'package:didvan/services/storage/storage.dart'; +import 'package:flutter/material.dart'; +import 'package:hive/hive.dart'; +import 'package:path_provider/path_provider.dart'; + +class AppInitializer { + static Future setupServices() async { + final Directory appDir = await getApplicationDocumentsDirectory(); + Hive.init(appDir.path); + } + + static Future initilizeSettings() async { + final bool settingsBoxExists = await StorageService.boxExists( + boxName: 'settings', + ); + if (settingsBoxExists) { + final String brightness = + await StorageService.getValue(key: 'brightness', boxName: 'settings'); + return brightness == 'dark' ? ThemeMode.dark : ThemeMode.light; + } else { + final SettingsData settingsData = SettingsData( + 'light', + ['00:00', '23:59'], + 'Dana-FA', + 1, + ); + await StorageService.setBoxData( + data: settingsData.toJson(), + boxName: 'settings', + ); + return ThemeMode.light; + } + } +} diff --git a/lib/services/request_handler.dart b/lib/services/network/request.dart similarity index 99% rename from lib/services/request_handler.dart rename to lib/services/network/request.dart index 462ee4d..fb2c7b7 100644 --- a/lib/services/request_handler.dart +++ b/lib/services/network/request.dart @@ -3,7 +3,7 @@ import 'dart:developer'; import 'dart:io'; import 'package:http/http.dart' as http; -class RequestHandler { +class RequestService { static late String token; String? errorMessage; @@ -18,7 +18,7 @@ class RequestHandler { bool isSuccess = false; - RequestHandler( + RequestService( this.url, { Map? requestHeaders, body, diff --git a/lib/services/network/request_helper.dart b/lib/services/network/request_helper.dart new file mode 100644 index 0000000..4e25ff3 --- /dev/null +++ b/lib/services/network/request_helper.dart @@ -0,0 +1 @@ +class RequestHelper {} diff --git a/lib/services/storage/storage.dart b/lib/services/storage/storage.dart new file mode 100644 index 0000000..ec01ccf --- /dev/null +++ b/lib/services/storage/storage.dart @@ -0,0 +1,40 @@ +import 'package:hive/hive.dart'; + +class StorageService { + static Future setValue({ + required String key, + required dynamic value, + required String boxName, + }) async { + final Box box = await Hive.openBox(boxName); + await box.put(key, value); + await box.close(); + } + + static Future getValue({required String key, required String boxName}) async { + final Box box = await Hive.openBox(boxName); + final value = await box.get(key); + await box.close(); + return value; + } + + static Future setBoxData({ + required Map data, + required String boxName, + }) async { + final Box box = await Hive.openBox(boxName); + await box.putAll(data); + await box.close(); + } + + static Future getBoxData({required String boxName}) async { + final Box box = await Hive.openBox(boxName); + await box.close(); + return box.toMap(); + } + + static Future boxExists({required String boxName}) async { + final bool result = await Hive.boxExists(boxName); + return result; + } +} diff --git a/lib/utils/actions_sheet.dart b/lib/utils/actions_sheet.dart index 50b2a2a..ee324d4 100644 --- a/lib/utils/actions_sheet.dart +++ b/lib/utils/actions_sheet.dart @@ -24,8 +24,8 @@ class ActionSheetUtils { static AnnotatedRegion _customSystemOverlayStyle({required Widget child}) { return AnnotatedRegion( value: DesignConfig.systemUiOverlayStyle.copyWith( - systemNavigationBarColor: Colors.black45, - ), + // systemNavigationBarColor: Colors.black45, + ), child: child, ); } diff --git a/lib/utils/date_time.dart b/lib/utils/date_time.dart new file mode 100644 index 0000000..f36466d --- /dev/null +++ b/lib/utils/date_time.dart @@ -0,0 +1,8 @@ +import 'package:flutter/material.dart'; + +class DateTimeUtils { + static TimeOfDay stringToTimeOfDay(String input) => TimeOfDay( + hour: int.parse(input.split(':')[0]), + minute: int.parse(input.split(':')[1]), + ); +} diff --git a/lib/widgets/didvan/app_bar.dart b/lib/widgets/didvan/app_bar.dart index c14902d..d9d244c 100644 --- a/lib/widgets/didvan/app_bar.dart +++ b/lib/widgets/didvan/app_bar.dart @@ -1,4 +1,3 @@ -import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/models/view/app_bar_data.dart'; import 'package:didvan/widgets/didvan/text.dart'; diff --git a/lib/widgets/didvan/scaffold.dart b/lib/widgets/didvan/scaffold.dart index 450b1d2..69fa6d7 100644 --- a/lib/widgets/didvan/scaffold.dart +++ b/lib/widgets/didvan/scaffold.dart @@ -2,7 +2,7 @@ import 'package:didvan/models/view/app_bar_data.dart'; import 'package:didvan/widgets/didvan/app_bar.dart'; import 'package:flutter/material.dart'; -class DidvanScaffold extends StatefulWidget { +class DidvanScaffold extends StatelessWidget { final List? slivers; final AppBarData appBarData; final bool hasPadding; @@ -13,20 +13,6 @@ class DidvanScaffold extends StatefulWidget { this.hasPadding = true, }) : super(key: key); - @override - State createState() => _DidvanScaffoldState(); -} - -class _DidvanScaffoldState extends State { - bool _isElevated = false; - final ScrollController _scrollController = ScrollController(); - - @override - void initState() { - _scrollController.addListener(() => _handleAppBarElevation()); - super.initState(); - } - @override Widget build(BuildContext context) { return Scaffold( @@ -36,24 +22,23 @@ class _DidvanScaffoldState extends State { backgroundColor: Theme.of(context).backgroundColor, automaticallyImplyLeading: false, pinned: true, - flexibleSpace: DidvanAppBar(appBarData: widget.appBarData), + flexibleSpace: DidvanAppBar(appBarData: appBarData), ), - if (widget.slivers != null) ...widget.slivers! + const SliverToBoxAdapter( + child: SizedBox(height: 16), + ), + if (slivers != null) + SliverPadding( + padding: const EdgeInsets.symmetric(horizontal: 16), + sliver: SliverList( + delegate: SliverChildBuilderDelegate( + (_, index) => slivers![index], + childCount: slivers!.length, + ), + ), + ), ], ), ); } - - void _handleAppBarElevation() { - if (_scrollController.position.pixels > kToolbarHeight && !_isElevated) { - setState(() { - _isElevated = true; - }); - } - if (_scrollController.position.pixels < kToolbarHeight && _isElevated) { - setState(() { - _isElevated = false; - }); - } - } } diff --git a/lib/widgets/loading_indicators.dart b/lib/widgets/loading_indicators.dart new file mode 100644 index 0000000..a47f241 --- /dev/null +++ b/lib/widgets/loading_indicators.dart @@ -0,0 +1 @@ +import 'package:flutter/material.dart'; diff --git a/lib/widgets/logos/didvan_horizontal_logo.dart b/lib/widgets/logos/didvan_horizontal_logo.dart index 19c2aaf..e9631d6 100644 --- a/lib/widgets/logos/didvan_horizontal_logo.dart +++ b/lib/widgets/logos/didvan_horizontal_logo.dart @@ -1,11 +1,12 @@ import 'package:didvan/constants/assets.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_svg/svg.dart'; class DidvanVerticalLogo extends StatelessWidget { const DidvanVerticalLogo({Key? key}) : super(key: key); @override Widget build(BuildContext context) { - return Image.asset(Assets.verticalLogoWithText); + return SvgPicture.asset(Assets.verticalLogoWithText); } } diff --git a/lib/widgets/logos/didvan_vertical_logo.dart b/lib/widgets/logos/didvan_vertical_logo.dart index 19e640e..4f5637a 100644 --- a/lib/widgets/logos/didvan_vertical_logo.dart +++ b/lib/widgets/logos/didvan_vertical_logo.dart @@ -1,11 +1,12 @@ import 'package:didvan/constants/assets.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_svg/svg.dart'; class DidvanHorizontalLogo extends StatelessWidget { const DidvanHorizontalLogo({Key? key}) : super(key: key); @override Widget build(BuildContext context) { - return Image.asset(Assets.horizontalLogoWithText); + return SvgPicture.asset(Assets.horizontalLogoWithText); } } diff --git a/lib/widgets/state_handler.dart b/lib/widgets/state_handler.dart new file mode 100644 index 0000000..0fc9a6f --- /dev/null +++ b/lib/widgets/state_handler.dart @@ -0,0 +1,48 @@ +import 'package:didvan/models/enums.dart'; +import 'package:didvan/providers/core_provider.dart'; +import 'package:flutter/material.dart'; + +class StateHandler extends StatelessWidget { + final T state; + final Widget Function(BuildContext context, T state) builder; + final VoidCallback? onRefresh; + final bool enableCustomLoadingIndicator; + final Color? customLoadingIndicatorColor; + final bool enableEmptyState; + final Widget? emptyState; + final double topPadding; + const StateHandler({ + Key? key, + required this.builder, + this.emptyState, + this.enableCustomLoadingIndicator = false, + this.enableEmptyState = false, + this.onRefresh, + this.topPadding = 0, + this.customLoadingIndicatorColor, + required this.state, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + if (enableEmptyState && state.appState == AppState.idle) { + return Container( + padding: EdgeInsets.only(top: topPadding), + alignment: Alignment.center, + child: SingleChildScrollView( + child: emptyState ?? const Text('Custom Widget Required!'), + ), + ); + } + switch (state.appState) { + case AppState.idle: + return builder(context, state); + case AppState.busy: + return const CircularProgressIndicator(); + case AppState.failed: + return enableCustomLoadingIndicator ? emptyState! : Container(); + default: + return Container(); + } + } +} diff --git a/pubspec.lock b/pubspec.lock index e771f17..cecec2c 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -64,6 +64,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.0.4" + day_night_time_picker: + dependency: "direct main" + description: + name: day_night_time_picker + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.3+1" fake_async: dependency: transitive description: @@ -71,6 +78,20 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.2.0" + ffi: + dependency: transitive + description: + name: ffi + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.2" + file: + dependency: transitive + description: + name: file + url: "https://pub.dartlang.org" + source: hosted + version: "6.1.2" flutter: dependency: "direct main" description: flutter @@ -95,6 +116,20 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.0.5" + flutter_spinkit: + dependency: "direct main" + description: + name: flutter_spinkit + url: "https://pub.dartlang.org" + source: hosted + version: "5.1.0" + flutter_svg: + dependency: "direct main" + description: + name: flutter_svg + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.0" flutter_test: dependency: "direct dev" description: flutter @@ -203,6 +238,76 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.8.0" + path_drawing: + dependency: transitive + description: + name: path_drawing + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.0" + path_parsing: + dependency: transitive + description: + name: path_parsing + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.0" + path_provider: + dependency: "direct main" + description: + name: path_provider + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.8" + path_provider_android: + dependency: transitive + description: + name: path_provider_android + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.9" + path_provider_ios: + dependency: transitive + description: + name: path_provider_ios + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.7" + path_provider_linux: + dependency: transitive + description: + name: path_provider_linux + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.4" + path_provider_macos: + dependency: transitive + description: + name: path_provider_macos + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.4" + path_provider_platform_interface: + dependency: transitive + description: + name: path_provider_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.1" + path_provider_windows: + dependency: transitive + description: + name: path_provider_windows + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.4" + petitparser: + dependency: transitive + description: + name: petitparser + url: "https://pub.dartlang.org" + source: hosted + version: "4.4.0" pin_code_fields: dependency: "direct main" description: @@ -210,6 +315,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "7.3.0" + platform: + dependency: transitive + description: + name: platform + url: "https://pub.dartlang.org" + source: hosted + version: "3.1.0" plugin_platform_interface: dependency: transitive description: @@ -217,6 +329,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.0.2" + process: + dependency: transitive + description: + name: process + url: "https://pub.dartlang.org" + source: hosted + version: "4.2.4" provider: dependency: "direct main" description: @@ -292,6 +411,27 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.1.1" + win32: + dependency: transitive + description: + name: win32 + url: "https://pub.dartlang.org" + source: hosted + version: "2.3.2" + xdg_directories: + dependency: transitive + description: + name: xdg_directories + url: "https://pub.dartlang.org" + source: hosted + version: "0.2.0" + xml: + dependency: transitive + description: + name: xml + url: "https://pub.dartlang.org" + source: hosted + version: "5.3.1" sdks: dart: ">=2.14.0 <3.0.0" flutter: ">=2.5.0" diff --git a/pubspec.yaml b/pubspec.yaml index aac10b9..e070249 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -41,6 +41,10 @@ dependencies: rive: ^0.7.33 hive: ^2.0.5 image_picker: ^0.8.4+4 + day_night_time_picker: ^1.0.3+1 + path_provider: ^2.0.8 + flutter_spinkit: ^5.1.0 + flutter_svg: ^1.0.0 dev_dependencies: flutter_test: @@ -66,15 +70,24 @@ flutter: # To add assets to your application, add an assets section, like this: assets: - - lib/assets/images/logos/logo-v-t.png - - lib/assets/images/logos/logo-h-t.png - - lib/assets/images/categories/business.png - - lib/assets/images/categories/economic.png - - lib/assets/images/categories/enviromental.png - - lib/assets/images/categories/political.png - - lib/assets/images/categories/social.png - - lib/assets/images/categories/tech.png - - lib/assets/animations/indicator.riv + - lib/assets/images/logos/logo-vertical-dark.svg + - lib/assets/images/logos/logo-vertical-light.svg + - lib/assets/images/logos/logo-horizontal-dark.svg + - lib/assets/images/logos/logo-horizontal-light.svg + - lib/assets/images/categories/business-light.svg + - lib/assets/images/categories/economic-light.svg + - lib/assets/images/categories/enviromental-light.svg + - lib/assets/images/categories/political-light.svg + - lib/assets/images/categories/social-light.svg + - lib/assets/images/categories/tech-light.svg + - lib/assets/images/categories/business-dark.svg + - lib/assets/images/categories/economic-dark.svg + - lib/assets/images/categories/enviromental-dark.svg + - lib/assets/images/categories/political-dark.svg + - lib/assets/images/categories/social-dark.svg + - lib/assets/images/categories/tech-dark.svg + - lib/assets/images/themes/light-theme.svg + - lib/assets/images/themes/dark-theme.svg - lib/assets/animations/indicator.riv From cb52647a3546e3579d1a2a3fd5ae0ee87aeb92dd Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Thu, 23 Dec 2021 12:02:09 +0330 Subject: [PATCH 033/273] menu item gesture area increased --- lib/pages/home/profile/widgets/menu_item.dart | 47 ++++++++++--------- 1 file changed, 25 insertions(+), 22 deletions(-) diff --git a/lib/pages/home/profile/widgets/menu_item.dart b/lib/pages/home/profile/widgets/menu_item.dart index f6956a3..d792327 100644 --- a/lib/pages/home/profile/widgets/menu_item.dart +++ b/lib/pages/home/profile/widgets/menu_item.dart @@ -24,31 +24,34 @@ class MenuItem extends StatelessWidget { Widget build(BuildContext context) { return GestureDetector( onTap: onTap, - child: Row( - children: [ - if (icon != null) Icon(icon, size: 18, color: color), - if (icon != null) const SizedBox(width: 4), - DidvanText( - title, - color: color ?? Theme.of(context).colorScheme.title, - ), - const Spacer(), - if (suffix != null) + child: Container( + color: Colors.transparent, + child: Row( + children: [ + if (icon != null) Icon(icon, size: 18, color: color), + if (icon != null) const SizedBox(width: 4), DidvanText( - suffix!, - style: Theme.of(context) - .textTheme - .subtitle2! - .copyWith(fontWeight: FontWeight.w400), - color: Theme.of(context).colorScheme.primary, + title, + color: color ?? Theme.of(context).colorScheme.title, ), - trailing ?? - Icon( - DidvanIcons.angle_left_regular, - size: 18, - color: color ?? Theme.of(context).colorScheme.title, + const Spacer(), + if (suffix != null) + DidvanText( + suffix!, + style: Theme.of(context) + .textTheme + .subtitle2! + .copyWith(fontWeight: FontWeight.w400), + color: Theme.of(context).colorScheme.primary, ), - ], + trailing ?? + Icon( + DidvanIcons.angle_left_regular, + size: 18, + color: color ?? Theme.of(context).colorScheme.title, + ), + ], + ), ), ); } From 8dc35af9655fbce3f552f09019da49a90a4b5e57 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Thu, 23 Dec 2021 12:24:29 +0330 Subject: [PATCH 034/273] color correction --- lib/config/theme_data.dart | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/config/theme_data.dart b/lib/config/theme_data.dart index d89b159..e1f5889 100644 --- a/lib/config/theme_data.dart +++ b/lib/config/theme_data.dart @@ -166,10 +166,10 @@ extension DidvanColorScheme on ColorScheme { ? const Color(0XFFC8E0F4) : const Color(0XFFE6F3FA); Color get title => brightness == Brightness.dark - ? const Color(0XFFA3A3A3) + ? const Color(0XFFD6D6D6) : const Color(0XFF1B3C59); Color get text => brightness == Brightness.dark - ? const Color(0XFFA3A3A3) + ? const Color(0XFFD6D6D6) : const Color(0XFF292929); Color get inputText => brightness == Brightness.dark ? const Color(0XFFA3A3A3) From 89379707163db6735cc5599366aefff23014b128 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Thu, 23 Dec 2021 18:59:46 +0330 Subject: [PATCH 035/273] D1APP-26 radar static items added --- lib/config/theme_data.dart | 16 +++- lib/pages/home/home.dart | 2 +- lib/pages/home/radar/radar.dart | 52 ++++++----- .../home/radar/widgets/categories_list.dart | 8 +- .../home/radar/widgets/category_item.dart | 2 +- lib/pages/home/radar/widgets/radar_item.dart | 84 +++++++++++++++++ lib/pages/splash/splash.dart | 3 - lib/widgets/didvan/card.dart | 12 ++- lib/widgets/didvan/text.dart | 3 + lib/widgets/loading_indicators.dart | 1 - lib/widgets/process_indicators.dart | 10 ++ lib/widgets/skeletun_image.dart | 48 ++++++++++ pubspec.lock | 93 ++++++++++++++++++- pubspec.yaml | 2 + 14 files changed, 295 insertions(+), 41 deletions(-) create mode 100644 lib/pages/home/radar/widgets/radar_item.dart delete mode 100644 lib/widgets/loading_indicators.dart create mode 100644 lib/widgets/process_indicators.dart create mode 100644 lib/widgets/skeletun_image.dart diff --git a/lib/config/theme_data.dart b/lib/config/theme_data.dart index e1f5889..688f13c 100644 --- a/lib/config/theme_data.dart +++ b/lib/config/theme_data.dart @@ -21,6 +21,7 @@ class LightThemeConfig { subtitle2: _subtitle2Text, subtitle1: _subtitle1Text, headline3: _headline3Text, + overline: _overlineText, ).apply(bodyColor: _black, displayColor: _black); static const ColorScheme _colorScheme = ColorScheme( @@ -63,6 +64,10 @@ class LightThemeConfig { fontSize: 13, fontWeight: FontWeight.w400, ); + static const TextStyle _overlineText = TextStyle( + fontSize: 12, + fontWeight: FontWeight.w300, + ); } class DarkThemeConfig { @@ -88,6 +93,7 @@ class DarkThemeConfig { subtitle2: _subtitle2Text, subtitle1: _subtitle1Text, headline3: _headline3Text, + overline: _overlineText, ).apply(bodyColor: text, displayColor: text); static const ColorScheme _colorScheme = ColorScheme( @@ -130,10 +136,10 @@ class DarkThemeConfig { fontSize: 13, fontWeight: FontWeight.w400, ); - - // Secondary colors - static const Color secondaryColor = Color(0XFFD61515); - static const Color secondaryDark = Color(0XFF703838); + static const TextStyle _overlineText = TextStyle( + fontSize: 12, + fontWeight: FontWeight.w300, + ); // Grey colors static const Color white = Color(0XFFFFFFFF); @@ -164,7 +170,7 @@ extension DidvanColorScheme on ColorScheme { : const Color(0XFF012348); Color get focusedBorder => brightness == Brightness.dark ? const Color(0XFFC8E0F4) - : const Color(0XFFE6F3FA); + : const Color(0XFF195D80); Color get title => brightness == Brightness.dark ? const Color(0XFFD6D6D6) : const Color(0XFF1B3C59); diff --git a/lib/pages/home/home.dart b/lib/pages/home/home.dart index 2928674..7f01284 100644 --- a/lib/pages/home/home.dart +++ b/lib/pages/home/home.dart @@ -22,7 +22,7 @@ class _HomeState extends State with SingleTickerProviderStateMixin { @override void initState() { - Future.delayed(Duration(milliseconds: 500), () { + Future.delayed(const Duration(milliseconds: 400), () { DesignConfig.context = context; DesignConfig.updateSystemUiOverlayStyle(); }); diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index 23cb1f6..e56d5c9 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -2,6 +2,7 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/pages/home/radar/widgets/categories_gird.dart'; import 'package:didvan/pages/home/radar/widgets/categories_list.dart'; +import 'package:didvan/pages/home/radar/widgets/radar_item.dart'; import 'package:didvan/pages/home/radar/widgets/search_field.dart'; import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; import 'package:didvan/widgets/didvan/text.dart'; @@ -33,35 +34,36 @@ class _RadarState extends State { return Scaffold( body: Stack( children: [ - Theme( - data: Theme.of(context).copyWith( - colorScheme: Theme.of(context).colorScheme.copyWith( - secondary: Colors.white, - ), - ), - child: CustomScrollView( - controller: _scrollController, - slivers: [ - const SliverToBoxAdapter(child: LogoAppBar()), - const SliverPadding( - padding: EdgeInsets.symmetric(horizontal: 16), - sliver: SliverToBoxAdapter( - child: SearchField(), + CustomScrollView( + controller: _scrollController, + slivers: [ + const SliverToBoxAdapter(child: LogoAppBar()), + const SliverPadding( + padding: EdgeInsets.symmetric(horizontal: 16), + sliver: SliverToBoxAdapter( + child: SearchField(), + ), + ), + SliverPadding( + padding: const EdgeInsets.only(top: 300, right: 16, bottom: 20), + sliver: SliverToBoxAdapter( + child: DidvanText( + 'آخرین رصد', + style: Theme.of(context).textTheme.subtitle1, + color: Theme.of(context).colorScheme.title, ), ), - SliverPadding( - padding: - const EdgeInsets.only(top: 300, right: 16, bottom: 20), - sliver: SliverToBoxAdapter( - child: DidvanText( - 'آخرین رصد', - style: Theme.of(context).textTheme.subtitle1, - color: Theme.of(context).colorScheme.title, - ), + ), + SliverPadding( + padding: const EdgeInsets.symmetric(horizontal: 16), + sliver: SliverList( + delegate: SliverChildBuilderDelegate( + (_, index) => const RadarItem(), + childCount: 10, ), ), - ], - ), + ), + ], ), CategoriesRow1(isColapsed: _isColapsed), CategoriesRow2(isColapsed: _isColapsed), diff --git a/lib/pages/home/radar/widgets/categories_list.dart b/lib/pages/home/radar/widgets/categories_list.dart index 76ca59c..b55fd88 100644 --- a/lib/pages/home/radar/widgets/categories_list.dart +++ b/lib/pages/home/radar/widgets/categories_list.dart @@ -67,10 +67,14 @@ class CategoriesList extends StatelessWidget { width: 100, padding: const EdgeInsets.all(4), alignment: Alignment.center, - child: DidvanText(category.title), + child: DidvanText( + category.title, + fontWeight: FontWeight.w600, + color: Theme.of(context).colorScheme.focusedBorder, + ), decoration: BoxDecoration( border: Border.all( - color: Theme.of(context).colorScheme.title, + color: Theme.of(context).colorScheme.focusedBorder, ), borderRadius: DesignConfig.lowBorderRadius, ), diff --git a/lib/pages/home/radar/widgets/category_item.dart b/lib/pages/home/radar/widgets/category_item.dart index b9bec99..9eebcea 100644 --- a/lib/pages/home/radar/widgets/category_item.dart +++ b/lib/pages/home/radar/widgets/category_item.dart @@ -29,7 +29,7 @@ class CategoryItem extends StatelessWidget { decoration: BoxDecoration( borderRadius: DesignConfig.lowBorderRadius, border: isColapsed - ? Border.all(color: Theme.of(context).colorScheme.title) + ? Border.all(color: Theme.of(context).colorScheme.focusedBorder) : null, ), child: Column( diff --git a/lib/pages/home/radar/widgets/radar_item.dart b/lib/pages/home/radar/widgets/radar_item.dart new file mode 100644 index 0000000..750ca92 --- /dev/null +++ b/lib/pages/home/radar/widgets/radar_item.dart @@ -0,0 +1,84 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/widgets/didvan/card.dart'; +import 'package:didvan/widgets/didvan/divider.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/skeletun_image.dart'; +import 'package:flutter/material.dart'; + +class RadarItem extends StatelessWidget { + const RadarItem({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return DidvanCard( + margin: const EdgeInsets.only(bottom: 20), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Container( + padding: const EdgeInsets.all(4), + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.secondary, + borderRadius: DesignConfig.highBorderRadius, + ), + child: DidvanText( + 'برای مدیران', + style: Theme.of(context).textTheme.overline, + color: Theme.of(context).colorScheme.white, + ), + ), + const SizedBox(height: 8), + const DidvanText( + 'نقش مهم فولاد در اقتصاد جهانی', + fontWeight: FontWeight.w600, + ), + const SizedBox(height: 8), + const SkeletonImage( + imageUrl: 'https://wallpapercave.com/wp/wp9373116.jpg', + width: double.infinity, + height: 140, + ), + const SizedBox(height: 8), + Row( + children: [ + DidvanText( + 'رادار کسب و کار', + style: Theme.of(context).textTheme.overline, + color: Theme.of(context).colorScheme.caption, + ), + const Spacer(), + DidvanText( + 'هفته پیش | خواندن 5 دقیقه', + style: Theme.of(context).textTheme.overline, + color: Theme.of(context).colorScheme.caption, + ), + ], + ), + const SizedBox(height: 8), + const DidvanText( + 'صنعت فولاد جوادی مجد سلیمی است پس باید به آن توجه زیادی شود تا بازار به انفجار نرسد. پس جواد مهربانگو باشیم...', + maxLine: 3, + ), + const DidvanDivider(), + Row( + children: const [ + Icon( + DidvanIcons.bookmark_regular, + ), + Spacer(), + DidvanText('2'), + SizedBox(width: 4), + Icon(DidvanIcons.chats_regular), + SizedBox(width: 16), + DidvanText('10'), + SizedBox(width: 4), + Icon(DidvanIcons.evaluation_regular), + ], + ), + ], + ), + ); + } +} diff --git a/lib/pages/splash/splash.dart b/lib/pages/splash/splash.dart index 5d7de57..cced112 100644 --- a/lib/pages/splash/splash.dart +++ b/lib/pages/splash/splash.dart @@ -1,7 +1,4 @@ import 'package:didvan/config/design_config.dart'; -import 'package:didvan/config/theme_data.dart'; -import 'package:didvan/main.dart'; -import 'package:didvan/pages/splash/splash_state.dart'; import 'package:didvan/providers/theme_provider.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/services/app_initalizer.dart'; diff --git a/lib/widgets/didvan/card.dart b/lib/widgets/didvan/card.dart index 63e083a..a6ba513 100644 --- a/lib/widgets/didvan/card.dart +++ b/lib/widgets/didvan/card.dart @@ -3,12 +3,20 @@ import 'package:flutter/material.dart'; class DidvanCard extends StatelessWidget { final Widget child; - const DidvanCard({Key? key, required this.child}) : super(key: key); + final EdgeInsets? padding; + final EdgeInsets? margin; + const DidvanCard( + {Key? key, + required this.child, + this.padding = const EdgeInsets.all(16), + this.margin}) + : super(key: key); @override Widget build(BuildContext context) { return Container( - padding: const EdgeInsets.all(16), + padding: padding, + margin: margin, decoration: BoxDecoration( borderRadius: DesignConfig.lowBorderRadius, color: Theme.of(context).colorScheme.surface, diff --git a/lib/widgets/didvan/text.dart b/lib/widgets/didvan/text.dart index ab33f69..601d941 100644 --- a/lib/widgets/didvan/text.dart +++ b/lib/widgets/didvan/text.dart @@ -7,6 +7,7 @@ class DidvanText extends StatelessWidget { final FontWeight? fontWeight; final double? fontSize; final TextAlign textAlign; + final int? maxLine; const DidvanText( this.text, { @@ -16,6 +17,7 @@ class DidvanText extends StatelessWidget { this.fontSize, this.fontWeight, this.textAlign = TextAlign.right, + this.maxLine, }) : super(key: key); @override @@ -28,6 +30,7 @@ class DidvanText extends StatelessWidget { fontSize: fontSize, ), textAlign: textAlign, + maxLines: maxLine, ); } } diff --git a/lib/widgets/loading_indicators.dart b/lib/widgets/loading_indicators.dart deleted file mode 100644 index a47f241..0000000 --- a/lib/widgets/loading_indicators.dart +++ /dev/null @@ -1 +0,0 @@ -import 'package:flutter/material.dart'; diff --git a/lib/widgets/process_indicators.dart b/lib/widgets/process_indicators.dart new file mode 100644 index 0000000..8c2b6a5 --- /dev/null +++ b/lib/widgets/process_indicators.dart @@ -0,0 +1,10 @@ +import 'package:flutter/material.dart'; + +class DidvanProgressIndicator extends StatelessWidget { + const DidvanProgressIndicator({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Container(); + } +} diff --git a/lib/widgets/skeletun_image.dart b/lib/widgets/skeletun_image.dart new file mode 100644 index 0000000..ce77323 --- /dev/null +++ b/lib/widgets/skeletun_image.dart @@ -0,0 +1,48 @@ +import 'package:cached_network_image/cached_network_image.dart'; +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; +import 'package:flutter/material.dart'; +import 'package:skeleton_text/skeleton_text.dart'; + +class SkeletonImage extends StatelessWidget { + final String imageUrl; + final double width; + final double height; + final BorderRadius? borderRadius; + const SkeletonImage({ + Key? key, + required this.imageUrl, + required this.width, + required this.height, + this.borderRadius, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return CachedNetworkImage( + width: width, + height: height, + imageUrl: imageUrl, + imageBuilder: (context, imageProvider) => Container( + decoration: BoxDecoration( + borderRadius: borderRadius ?? DesignConfig.lowBorderRadius, + image: DecorationImage( + image: imageProvider, + fit: BoxFit.cover, + ), + ), + ), + progressIndicatorBuilder: (context, url, progress) => SkeletonAnimation( + shimmerColor: Theme.of(context).colorScheme.border, + borderRadius: borderRadius ?? DesignConfig.lowBorderRadius, + child: Container( + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.disabledBackground, + ), + height: height, + width: width, + ), + ), + ); + } +} diff --git a/pubspec.lock b/pubspec.lock index cecec2c..7745d71 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -15,6 +15,27 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.1.0" + cached_network_image: + dependency: "direct main" + description: + name: cached_network_image + url: "https://pub.dartlang.org" + source: hosted + version: "3.2.0" + cached_network_image_platform_interface: + dependency: transitive + description: + name: cached_network_image_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.0" + cached_network_image_web: + dependency: transitive + description: + name: cached_network_image_web + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.1" characters: dependency: transitive description: @@ -97,6 +118,20 @@ packages: description: flutter source: sdk version: "0.0.0" + flutter_blurhash: + dependency: transitive + description: + name: flutter_blurhash + url: "https://pub.dartlang.org" + source: hosted + version: "0.6.0" + flutter_cache_manager: + dependency: transitive + description: + name: flutter_cache_manager + url: "https://pub.dartlang.org" + source: hosted + version: "3.3.0" flutter_lints: dependency: "direct dev" description: @@ -231,6 +266,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.0.0" + octo_image: + dependency: transitive + description: + name: octo_image + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.1" path: dependency: transitive description: @@ -301,6 +343,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.0.4" + pedantic: + dependency: transitive + description: + name: pedantic + url: "https://pub.dartlang.org" + source: hosted + version: "1.11.1" petitparser: dependency: transitive description: @@ -350,6 +399,20 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "0.7.33" + rxdart: + dependency: transitive + description: + name: rxdart + url: "https://pub.dartlang.org" + source: hosted + version: "0.27.3" + skeleton_text: + dependency: "direct main" + description: + name: skeleton_text + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.0" sky_engine: dependency: transitive description: flutter @@ -362,6 +425,20 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.8.1" + sqflite: + dependency: transitive + description: + name: sqflite + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.1" + sqflite_common: + dependency: transitive + description: + name: sqflite_common + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.0" stack_trace: dependency: transitive description: @@ -383,6 +460,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.1.0" + synchronized: + dependency: transitive + description: + name: synchronized + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.0" term_glyph: dependency: transitive description: @@ -404,6 +488,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.3.0" + uuid: + dependency: transitive + description: + name: uuid + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.5" vector_math: dependency: transitive description: @@ -433,5 +524,5 @@ packages: source: hosted version: "5.3.1" sdks: - dart: ">=2.14.0 <3.0.0" + dart: ">=2.15.0 <3.0.0" flutter: ">=2.5.0" diff --git a/pubspec.yaml b/pubspec.yaml index e070249..7bd1d72 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -45,6 +45,8 @@ dependencies: path_provider: ^2.0.8 flutter_spinkit: ^5.1.0 flutter_svg: ^1.0.0 + cached_network_image: ^3.2.0 + skeleton_text: ^3.0.0 dev_dependencies: flutter_test: From c3f8c4d471cdbac9443bb8b6b4ba7e48c30c1939 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 25 Dec 2021 18:19:27 +0330 Subject: [PATCH 036/273] D1APP-28 pageview basics --- .../radar/radar_details/radar_details.dart | 13 ++ .../radar_details/radar_details_state.dart | 3 + .../home/radar/widgets/categories_list.dart | 11 +- lib/pages/home/radar/widgets/radar_item.dart | 132 +++++++++--------- lib/routes/route_generator.dart | 9 ++ lib/routes/routes.dart | 1 + lib/widgets/didvan/card.dart | 18 +-- lib/widgets/didvan/page_view.dart | 84 +++++++++++ pubspec.lock | 7 + pubspec.yaml | 1 + 10 files changed, 203 insertions(+), 76 deletions(-) create mode 100644 lib/pages/home/radar/radar_details/radar_details.dart create mode 100644 lib/pages/home/radar/radar_details/radar_details_state.dart create mode 100644 lib/widgets/didvan/page_view.dart diff --git a/lib/pages/home/radar/radar_details/radar_details.dart b/lib/pages/home/radar/radar_details/radar_details.dart new file mode 100644 index 0000000..8e63b8e --- /dev/null +++ b/lib/pages/home/radar/radar_details/radar_details.dart @@ -0,0 +1,13 @@ +import 'package:didvan/widgets/didvan/page_view.dart'; +import 'package:flutter/material.dart'; + +class RadarDetails extends StatelessWidget { + const RadarDetails({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Scaffold( + body: DidvanPageView(), + ); + } +} diff --git a/lib/pages/home/radar/radar_details/radar_details_state.dart b/lib/pages/home/radar/radar_details/radar_details_state.dart new file mode 100644 index 0000000..c4e2fc5 --- /dev/null +++ b/lib/pages/home/radar/radar_details/radar_details_state.dart @@ -0,0 +1,3 @@ +import 'package:didvan/providers/core_provider.dart'; + +class RadarDetailsState extends CoreProvier {} diff --git a/lib/pages/home/radar/widgets/categories_list.dart b/lib/pages/home/radar/widgets/categories_list.dart index b55fd88..2cd9e07 100644 --- a/lib/pages/home/radar/widgets/categories_list.dart +++ b/lib/pages/home/radar/widgets/categories_list.dart @@ -67,10 +67,13 @@ class CategoriesList extends StatelessWidget { width: 100, padding: const EdgeInsets.all(4), alignment: Alignment.center, - child: DidvanText( - category.title, - fontWeight: FontWeight.w600, - color: Theme.of(context).colorScheme.focusedBorder, + child: FittedBox( + fit: BoxFit.scaleDown, + child: DidvanText( + category.title, + fontWeight: FontWeight.w600, + color: Theme.of(context).colorScheme.focusedBorder, + ), ), decoration: BoxDecoration( border: Border.all( diff --git a/lib/pages/home/radar/widgets/radar_item.dart b/lib/pages/home/radar/widgets/radar_item.dart index 750ca92..8a7a2f6 100644 --- a/lib/pages/home/radar/widgets/radar_item.dart +++ b/lib/pages/home/radar/widgets/radar_item.dart @@ -1,6 +1,7 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/routes/routes.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/text.dart'; @@ -12,72 +13,75 @@ class RadarItem extends StatelessWidget { @override Widget build(BuildContext context) { - return DidvanCard( - margin: const EdgeInsets.only(bottom: 20), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Container( - padding: const EdgeInsets.all(4), - decoration: BoxDecoration( - color: Theme.of(context).colorScheme.secondary, - borderRadius: DesignConfig.highBorderRadius, - ), - child: DidvanText( - 'برای مدیران', - style: Theme.of(context).textTheme.overline, - color: Theme.of(context).colorScheme.white, - ), - ), - const SizedBox(height: 8), - const DidvanText( - 'نقش مهم فولاد در اقتصاد جهانی', - fontWeight: FontWeight.w600, - ), - const SizedBox(height: 8), - const SkeletonImage( - imageUrl: 'https://wallpapercave.com/wp/wp9373116.jpg', - width: double.infinity, - height: 140, - ), - const SizedBox(height: 8), - Row( - children: [ - DidvanText( - 'رادار کسب و کار', + return GestureDetector( + onTap: () => Navigator.of(context).pushNamed(Routes.radarDetails), + child: DidvanCard( + margin: const EdgeInsets.only(bottom: 20), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Container( + padding: const EdgeInsets.all(4), + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.secondary, + borderRadius: DesignConfig.highBorderRadius, + ), + child: DidvanText( + 'برای مدیران', style: Theme.of(context).textTheme.overline, - color: Theme.of(context).colorScheme.caption, + color: Theme.of(context).colorScheme.white, ), - const Spacer(), - DidvanText( - 'هفته پیش | خواندن 5 دقیقه', - style: Theme.of(context).textTheme.overline, - color: Theme.of(context).colorScheme.caption, - ), - ], - ), - const SizedBox(height: 8), - const DidvanText( - 'صنعت فولاد جوادی مجد سلیمی است پس باید به آن توجه زیادی شود تا بازار به انفجار نرسد. پس جواد مهربانگو باشیم...', - maxLine: 3, - ), - const DidvanDivider(), - Row( - children: const [ - Icon( - DidvanIcons.bookmark_regular, - ), - Spacer(), - DidvanText('2'), - SizedBox(width: 4), - Icon(DidvanIcons.chats_regular), - SizedBox(width: 16), - DidvanText('10'), - SizedBox(width: 4), - Icon(DidvanIcons.evaluation_regular), - ], - ), - ], + ), + const SizedBox(height: 8), + const DidvanText( + 'نقش مهم فولاد در اقتصاد جهانی', + fontWeight: FontWeight.w600, + ), + const SizedBox(height: 8), + const SkeletonImage( + imageUrl: 'https://wallpapercave.com/wp/wp9373116.jpg', + width: double.infinity, + height: 140, + ), + const SizedBox(height: 8), + Row( + children: [ + DidvanText( + 'رادار کسب و کار', + style: Theme.of(context).textTheme.overline, + color: Theme.of(context).colorScheme.caption, + ), + const Spacer(), + DidvanText( + 'هفته پیش | خواندن 5 دقیقه', + style: Theme.of(context).textTheme.overline, + color: Theme.of(context).colorScheme.caption, + ), + ], + ), + const SizedBox(height: 8), + const DidvanText( + 'صنعت فولاد جوادی مجد سلیمی است پس باید به آن توجه زیادی شود تا بازار به انفجار نرسد. پس جواد مهربانگو باشیم...', + maxLine: 3, + ), + const DidvanDivider(), + Row( + children: const [ + Icon( + DidvanIcons.bookmark_regular, + ), + Spacer(), + DidvanText('2'), + SizedBox(width: 4), + Icon(DidvanIcons.chats_regular), + SizedBox(width: 16), + DidvanText('10'), + SizedBox(width: 4), + Icon(DidvanIcons.evaluation_regular), + ], + ), + ], + ), ), ); } diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index 7b05f54..761446d 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -5,6 +5,8 @@ import 'package:didvan/pages/home/home_state.dart'; import 'package:didvan/pages/home/profile/edit_profile/edit_profile.dart'; import 'package:didvan/pages/home/profile/settings/settings.dart'; import 'package:didvan/pages/home/profile/settings/settings_state.dart'; +import 'package:didvan/pages/home/radar/radar_details/radar_details.dart'; +import 'package:didvan/pages/home/radar/radar_details/radar_details_state.dart'; import 'package:didvan/pages/splash/splash.dart'; import 'package:didvan/pages/splash/splash_state.dart'; import 'package:didvan/routes/routes.dart'; @@ -46,6 +48,13 @@ class RouteGenerator { child: const Settings(), ), ); + case Routes.radarDetails: + return _createRoute( + ChangeNotifierProvider( + create: (context) => RadarDetailsState(), + child: const RadarDetails(), + ), + ); default: return _errorRoute(); } diff --git a/lib/routes/routes.dart b/lib/routes/routes.dart index 92fbf3e..752dece 100644 --- a/lib/routes/routes.dart +++ b/lib/routes/routes.dart @@ -5,4 +5,5 @@ class Routes { static const String profile = '/profile'; static const String editProfile = '/edit-profile'; static const String settings = '/settings'; + static const String radarDetails = '/radar-details'; } diff --git a/lib/widgets/didvan/card.dart b/lib/widgets/didvan/card.dart index a6ba513..92904a0 100644 --- a/lib/widgets/didvan/card.dart +++ b/lib/widgets/didvan/card.dart @@ -2,15 +2,17 @@ import 'package:didvan/config/design_config.dart'; import 'package:flutter/material.dart'; class DidvanCard extends StatelessWidget { - final Widget child; + final Widget? child; final EdgeInsets? padding; final EdgeInsets? margin; - const DidvanCard( - {Key? key, - required this.child, - this.padding = const EdgeInsets.all(16), - this.margin}) - : super(key: key); + final bool enableBorder; + const DidvanCard({ + Key? key, + this.child, + this.padding = const EdgeInsets.all(16), + this.margin, + this.enableBorder = true, + }) : super(key: key); @override Widget build(BuildContext context) { @@ -20,7 +22,7 @@ class DidvanCard extends StatelessWidget { decoration: BoxDecoration( borderRadius: DesignConfig.lowBorderRadius, color: Theme.of(context).colorScheme.surface, - border: DesignConfig.cardBorder, + border: enableBorder ? DesignConfig.cardBorder : null, ), child: child, ); diff --git a/lib/widgets/didvan/page_view.dart b/lib/widgets/didvan/page_view.dart new file mode 100644 index 0000000..8d4b8d1 --- /dev/null +++ b/lib/widgets/didvan/page_view.dart @@ -0,0 +1,84 @@ +import 'dart:math' as math; + +import 'package:carousel_slider/carousel_slider.dart'; +import 'package:didvan/widgets/didvan/card.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/skeletun_image.dart'; +import 'package:flutter/material.dart'; + +class DidvanPageView extends StatelessWidget { + const DidvanPageView({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + final double deviceTopPadding = MediaQuery.of(context).padding.top; + return CarouselSlider.builder( + itemCount: 5, + options: CarouselOptions( + height: double.infinity, + initialPage: 1, + viewportFraction: 0.94, + enableInfiniteScroll: false, + ), + itemBuilder: (context, index, realIndex) => Padding( + padding: EdgeInsets.only( + left: 4, + right: 4, + top: 16 + deviceTopPadding, + ), + child: DidvanCard( + padding: EdgeInsets.zero, + enableBorder: false, + child: CustomScrollView( + slivers: [ + const SliverAppBar( + automaticallyImplyLeading: false, + expandedHeight: 200, + flexibleSpace: SkeletonImage( + imageUrl: 'https://wallpapercave.com/wp/wp9373116.jpg', + width: double.infinity, + height: double.infinity, + ), + ), + SliverPadding( + padding: + const EdgeInsets.symmetric(vertical: 20, horizontal: 16), + sliver: SliverList( + delegate: SliverChildBuilderDelegate( + (_, index) { + switch (index) { + case 0: + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + DidvanText( + 'تحلیل شکاف فناوری صنعت فولاد ایران', + style: Theme.of(context).textTheme.bodyText1, + ), + const SizedBox(height: 8), + const DidvanText( + 'پایگاه خبری معدن نیوز - 2 ساعت پیش', + ), + const SizedBox(height: 8), + ], + ); + default: + return const Padding( + padding: EdgeInsets.only(bottom: 8), + child: DidvanText( + 'این سایت امروز (شنبه) تیم منتخب قاره آسیا در سال ۲۰۲۱ میلادی را معرفی کرد که از ایران، سردار آزمون و محمد حسین کنعانی‌زادگان در ترکیب اصلی و مهدی طارمی و سیدمجید حسینی در جمع بازیکنان ذخیره دیده می‌شوند.', + ), + ); + } + }, + childCount: 10, + ), + ), + ), + ], + ), + ), + ), + ); + } +} diff --git a/pubspec.lock b/pubspec.lock index 7745d71..b15174a 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -36,6 +36,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.0.1" + carousel_slider: + dependency: "direct main" + description: + name: carousel_slider + url: "https://pub.dartlang.org" + source: hosted + version: "4.0.0" characters: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 7bd1d72..e84d6af 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -47,6 +47,7 @@ dependencies: flutter_svg: ^1.0.0 cached_network_image: ^3.2.0 skeleton_text: ^3.0.0 + carousel_slider: ^4.0.0 dev_dependencies: flutter_test: From 0c92117205a3b948c78fd8d616dc53e889912f70 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 25 Dec 2021 19:18:25 +0330 Subject: [PATCH 037/273] D1APP-28 pageview's floating nav bar --- lib/widgets/didvan/page_view.dart | 140 ++++++++++++----------- lib/widgets/floating_navigation_bar.dart | 67 +++++++++++ 2 files changed, 142 insertions(+), 65 deletions(-) create mode 100644 lib/widgets/floating_navigation_bar.dart diff --git a/lib/widgets/didvan/page_view.dart b/lib/widgets/didvan/page_view.dart index 8d4b8d1..8499b9f 100644 --- a/lib/widgets/didvan/page_view.dart +++ b/lib/widgets/didvan/page_view.dart @@ -1,8 +1,7 @@ -import 'dart:math' as math; - import 'package:carousel_slider/carousel_slider.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/floating_navigation_bar.dart'; import 'package:didvan/widgets/skeletun_image.dart'; import 'package:flutter/material.dart'; @@ -12,73 +11,84 @@ class DidvanPageView extends StatelessWidget { @override Widget build(BuildContext context) { final double deviceTopPadding = MediaQuery.of(context).padding.top; - return CarouselSlider.builder( - itemCount: 5, - options: CarouselOptions( - height: double.infinity, - initialPage: 1, - viewportFraction: 0.94, - enableInfiniteScroll: false, - ), - itemBuilder: (context, index, realIndex) => Padding( - padding: EdgeInsets.only( - left: 4, - right: 4, - top: 16 + deviceTopPadding, - ), - child: DidvanCard( - padding: EdgeInsets.zero, - enableBorder: false, - child: CustomScrollView( - slivers: [ - const SliverAppBar( - automaticallyImplyLeading: false, - expandedHeight: 200, - flexibleSpace: SkeletonImage( - imageUrl: 'https://wallpapercave.com/wp/wp9373116.jpg', - width: double.infinity, - height: double.infinity, - ), - ), - SliverPadding( - padding: - const EdgeInsets.symmetric(vertical: 20, horizontal: 16), - sliver: SliverList( - delegate: SliverChildBuilderDelegate( - (_, index) { - switch (index) { - case 0: - return Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - DidvanText( - 'تحلیل شکاف فناوری صنعت فولاد ایران', - style: Theme.of(context).textTheme.bodyText1, - ), - const SizedBox(height: 8), - const DidvanText( - 'پایگاه خبری معدن نیوز - 2 ساعت پیش', - ), - const SizedBox(height: 8), - ], - ); - default: - return const Padding( - padding: EdgeInsets.only(bottom: 8), - child: DidvanText( - 'این سایت امروز (شنبه) تیم منتخب قاره آسیا در سال ۲۰۲۱ میلادی را معرفی کرد که از ایران، سردار آزمون و محمد حسین کنعانی‌زادگان در ترکیب اصلی و مهدی طارمی و سیدمجید حسینی در جمع بازیکنان ذخیره دیده می‌شوند.', - ), - ); - } - }, - childCount: 10, + return Stack( + children: [ + CarouselSlider.builder( + itemCount: 5, + options: CarouselOptions( + height: double.infinity, + initialPage: 1, + viewportFraction: 0.94, + enableInfiniteScroll: false, + ), + itemBuilder: (context, index, realIndex) => Padding( + padding: EdgeInsets.only( + left: 4, + right: 4, + top: 16 + deviceTopPadding, + ), + child: DidvanCard( + padding: EdgeInsets.zero, + enableBorder: false, + child: CustomScrollView( + slivers: [ + const SliverAppBar( + automaticallyImplyLeading: false, + expandedHeight: 200, + flexibleSpace: SkeletonImage( + imageUrl: 'https://wallpapercave.com/wp/wp9373116.jpg', + width: double.infinity, + height: double.infinity, + ), ), - ), + SliverPadding( + padding: const EdgeInsets.symmetric( + vertical: 20, horizontal: 16), + sliver: SliverList( + delegate: SliverChildBuilderDelegate( + (_, index) { + switch (index) { + case 0: + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + DidvanText( + 'تحلیل شکاف فناوری صنعت فولاد ایران', + style: + Theme.of(context).textTheme.bodyText1, + ), + const SizedBox(height: 8), + const DidvanText( + 'پایگاه خبری معدن نیوز - 2 ساعت پیش', + ), + const SizedBox(height: 8), + ], + ); + default: + return const Padding( + padding: EdgeInsets.only(bottom: 8), + child: DidvanText( + 'این سایت امروز (شنبه) تیم منتخب قاره آسیا در سال ۲۰۲۱ میلادی را معرفی کرد که از ایران، سردار آزمون و محمد حسین کنعانی‌زادگان در ترکیب اصلی و مهدی طارمی و سیدمجید حسینی در جمع بازیکنان ذخیره دیده می‌شوند.', + ), + ); + } + }, + childCount: 10, + ), + ), + ), + ], ), - ], + ), ), ), - ), + const Positioned( + left: 0, + right: 0, + bottom: 0, + child: FloatingNavigationBar(), + ), + ], ); } } diff --git a/lib/widgets/floating_navigation_bar.dart b/lib/widgets/floating_navigation_bar.dart new file mode 100644 index 0000000..54a1cf7 --- /dev/null +++ b/lib/widgets/floating_navigation_bar.dart @@ -0,0 +1,67 @@ +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; + +class FloatingNavigationBar extends StatelessWidget { + const FloatingNavigationBar({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Container( + margin: const EdgeInsets.symmetric(horizontal: 32, vertical: 20), + width: double.infinity, + height: 48, + padding: const EdgeInsets.symmetric(horizontal: 12), + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.surface, + borderRadius: BorderRadius.circular(24), + border: Border.all( + color: Theme.of(context).colorScheme.cardBorder, + ), + ), + child: Row( + children: [ + IconButton( + onPressed: () => Navigator.of(context).pop(), + icon: const Icon( + Icons.arrow_back, + ), + ), + const Spacer(), + IconButton( + onPressed: () {}, + icon: const Icon( + DidvanIcons.bookmark_regular, + ), + ), + IconButton( + onPressed: () {}, + icon: const Icon( + DidvanIcons.evaluation_regular, + ), + ), + SizedBox( + width: 48, + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + children: const [ + DidvanText('2'), + SizedBox(width: 4), + Icon( + DidvanIcons.chats_regular, + ), + ], + ), + ), + IconButton( + onPressed: () {}, + icon: const Icon( + Icons.more_horiz, + ), + ), + ], + ), + ); + } +} From 94098644fc29d097b53f0f31614cd24ac717eb4a Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 25 Dec 2021 21:02:48 +0330 Subject: [PATCH 038/273] D1APP-27 news page (static) --- lib/pages/home/news/news.dart | 45 ++++++++++++++++++- lib/pages/home/news/news_state.dart | 3 ++ lib/pages/home/news/widgets/news_item.dart | 45 +++++++++++++++++++ lib/pages/home/radar/radar.dart | 23 +++++----- lib/pages/home/radar/widgets/radar_item.dart | 6 +-- .../home/radar/widgets/search_field.dart | 15 ++++--- lib/widgets/didvan/card.dart | 21 +++++---- lib/widgets/didvan/page_view.dart | 2 +- lib/widgets/didvan/scaffold.dart | 2 +- 9 files changed, 133 insertions(+), 29 deletions(-) create mode 100644 lib/pages/home/news/news_state.dart create mode 100644 lib/pages/home/news/widgets/news_item.dart diff --git a/lib/pages/home/news/news.dart b/lib/pages/home/news/news.dart index ac0e882..1a00756 100644 --- a/lib/pages/home/news/news.dart +++ b/lib/pages/home/news/news.dart @@ -1,3 +1,8 @@ +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/pages/home/news/widgets/news_item.dart'; +import 'package:didvan/pages/home/radar/widgets/search_field.dart'; +import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; +import 'package:didvan/widgets/didvan/card.dart'; import 'package:flutter/material.dart'; class News extends StatelessWidget { @@ -5,6 +10,44 @@ class News extends StatelessWidget { @override Widget build(BuildContext context) { - return Container(); + return Scaffold( + body: CustomScrollView( + slivers: [ + const SliverToBoxAdapter(child: LogoAppBar()), + SliverPadding( + padding: const EdgeInsets.only(left: 16, right: 16, bottom: 16), + sliver: SliverToBoxAdapter( + child: Row( + children: [ + Expanded( + child: SearchField( + title: 'اخبار', + onChanged: (value) {}, + ), + ), + const SizedBox(width: 8), + GestureDetector( + onTap: () {}, + child: const Icon( + DidvanIcons.filter_regular, + size: 32, + ), + ), + ], + ), + ), + ), + SliverPadding( + padding: const EdgeInsets.symmetric(horizontal: 16), + sliver: SliverList( + delegate: SliverChildBuilderDelegate( + (context, index) => const NewsItem(), + childCount: 10, + ), + ), + ), + ], + ), + ); } } diff --git a/lib/pages/home/news/news_state.dart b/lib/pages/home/news/news_state.dart new file mode 100644 index 0000000..6717c21 --- /dev/null +++ b/lib/pages/home/news/news_state.dart @@ -0,0 +1,3 @@ +import 'package:didvan/providers/core_provider.dart'; + +class NewsState extends CoreProvier {} diff --git a/lib/pages/home/news/widgets/news_item.dart b/lib/pages/home/news/widgets/news_item.dart new file mode 100644 index 0000000..75b8caa --- /dev/null +++ b/lib/pages/home/news/widgets/news_item.dart @@ -0,0 +1,45 @@ +import 'package:didvan/widgets/didvan/card.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/skeletun_image.dart'; +import 'package:flutter/material.dart'; + +class NewsItem extends StatelessWidget { + const NewsItem({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Padding( + padding: const EdgeInsets.only(bottom: 16), + child: DidvanCard( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + children: [ + const SkeletonImage( + imageUrl: 'https://wallpapercave.com/wp/wp9373116.jpg', + width: 64, + height: 64, + ), + const SizedBox(width: 8), + Expanded( + child: SizedBox( + height: 64, + child: DidvanText( + 'بلاتکلیفی بازار فولاد به دلیل کاهش تقاضای جهانی', + style: Theme.of(context).textTheme.bodyText1, + ), + ), + ), + ], + ), + const SizedBox(height: 8), + const DidvanText( + 'صنعت فولاد جوادی مجد سلیمی است پس باید به آن توجه زیادی شود تا بازار به انفجار نرسد. پس جواد مهربانگو باشیم.', + ), + ], + ), + ), + ); + } +} diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index e56d5c9..537902a 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -38,14 +38,17 @@ class _RadarState extends State { controller: _scrollController, slivers: [ const SliverToBoxAdapter(child: LogoAppBar()), - const SliverPadding( - padding: EdgeInsets.symmetric(horizontal: 16), + SliverPadding( + padding: const EdgeInsets.only(left: 16, right: 16, bottom: 16), sliver: SliverToBoxAdapter( - child: SearchField(), + child: SearchField( + title: 'رادار', + onChanged: (value) {}, + ), ), ), SliverPadding( - padding: const EdgeInsets.only(top: 300, right: 16, bottom: 20), + padding: const EdgeInsets.only(top: 284, right: 16, bottom: 20), sliver: SliverToBoxAdapter( child: DidvanText( 'آخرین رصد', @@ -54,13 +57,13 @@ class _RadarState extends State { ), ), ), - SliverPadding( - padding: const EdgeInsets.symmetric(horizontal: 16), - sliver: SliverList( - delegate: SliverChildBuilderDelegate( - (_, index) => const RadarItem(), - childCount: 10, + SliverList( + delegate: SliverChildBuilderDelegate( + (context, index) => const Padding( + padding: EdgeInsets.only(bottom: 20), + child: RadarItem(), ), + childCount: 10, ), ), ], diff --git a/lib/pages/home/radar/widgets/radar_item.dart b/lib/pages/home/radar/widgets/radar_item.dart index 8a7a2f6..787b2c8 100644 --- a/lib/pages/home/radar/widgets/radar_item.dart +++ b/lib/pages/home/radar/widgets/radar_item.dart @@ -13,10 +13,10 @@ class RadarItem extends StatelessWidget { @override Widget build(BuildContext context) { - return GestureDetector( - onTap: () => Navigator.of(context).pushNamed(Routes.radarDetails), + return Padding( + padding: const EdgeInsets.symmetric(horizontal: 16), child: DidvanCard( - margin: const EdgeInsets.only(bottom: 20), + onTap: () => Navigator.of(context).pushNamed(Routes.radarDetails), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ diff --git a/lib/pages/home/radar/widgets/search_field.dart b/lib/pages/home/radar/widgets/search_field.dart index 406cc8c..85602a8 100644 --- a/lib/pages/home/radar/widgets/search_field.dart +++ b/lib/pages/home/radar/widgets/search_field.dart @@ -3,7 +3,11 @@ import 'package:didvan/constants/app_icons.dart'; import 'package:flutter/material.dart'; class SearchField extends StatefulWidget { - const SearchField({Key? key}) : super(key: key); + final String title; + final void Function(String? value) onChanged; + + const SearchField({Key? key, required this.title, required this.onChanged}) + : super(key: key); @override State createState() => _SearchFieldState(); @@ -31,7 +35,7 @@ class _SearchFieldState extends State { focusNode: _focusNode, style: Theme.of(context).textTheme.bodyText1, textAlignVertical: TextAlignVertical.center, - onChanged: (value) {}, + onChanged: widget.onChanged, keyboardType: TextInputType.text, textInputAction: TextInputAction.search, decoration: InputDecoration( @@ -46,6 +50,7 @@ class _SearchFieldState extends State { prefixIcon: const Icon( DidvanIcons.search_regular, ), + prefixIconColor: Theme.of(context).colorScheme.inputText, enabledBorder: OutlineInputBorder( borderRadius: const BorderRadius.all( Radius.circular(4), @@ -58,11 +63,11 @@ class _SearchFieldState extends State { contentPadding: const EdgeInsets.only( left: 12, right: 12, - bottom: 8, ), border: InputBorder.none, - hintText: 'جستجو مطلب در رادار', - hintStyle: TextStyle(color: Theme.of(context).colorScheme.hint), + hintText: 'جستجو مطلب در ${widget.title}', + hintStyle: + TextStyle(color: Theme.of(context).colorScheme.disabledText), ), ), ); diff --git a/lib/widgets/didvan/card.dart b/lib/widgets/didvan/card.dart index 92904a0..e631c97 100644 --- a/lib/widgets/didvan/card.dart +++ b/lib/widgets/didvan/card.dart @@ -6,25 +6,30 @@ class DidvanCard extends StatelessWidget { final EdgeInsets? padding; final EdgeInsets? margin; final bool enableBorder; + final VoidCallback? onTap; const DidvanCard({ Key? key, this.child, this.padding = const EdgeInsets.all(16), this.margin, this.enableBorder = true, + this.onTap, }) : super(key: key); @override Widget build(BuildContext context) { - return Container( - padding: padding, - margin: margin, - decoration: BoxDecoration( - borderRadius: DesignConfig.lowBorderRadius, - color: Theme.of(context).colorScheme.surface, - border: enableBorder ? DesignConfig.cardBorder : null, + return GestureDetector( + onTap: onTap, + child: Container( + padding: padding, + margin: margin, + decoration: BoxDecoration( + borderRadius: DesignConfig.lowBorderRadius, + color: Theme.of(context).colorScheme.surface, + border: enableBorder ? DesignConfig.cardBorder : null, + ), + child: child, ), - child: child, ); } } diff --git a/lib/widgets/didvan/page_view.dart b/lib/widgets/didvan/page_view.dart index 8499b9f..644740b 100644 --- a/lib/widgets/didvan/page_view.dart +++ b/lib/widgets/didvan/page_view.dart @@ -46,7 +46,7 @@ class DidvanPageView extends StatelessWidget { vertical: 20, horizontal: 16), sliver: SliverList( delegate: SliverChildBuilderDelegate( - (_, index) { + (context, index) { switch (index) { case 0: return Column( diff --git a/lib/widgets/didvan/scaffold.dart b/lib/widgets/didvan/scaffold.dart index 69fa6d7..51fac9e 100644 --- a/lib/widgets/didvan/scaffold.dart +++ b/lib/widgets/didvan/scaffold.dart @@ -32,7 +32,7 @@ class DidvanScaffold extends StatelessWidget { padding: const EdgeInsets.symmetric(horizontal: 16), sliver: SliverList( delegate: SliverChildBuilderDelegate( - (_, index) => slivers![index], + (context, index) => slivers![index], childCount: slivers!.length, ), ), From e65d35d1b8dd50f2885ba003bd79b3dd9f35a4a7 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 26 Dec 2021 12:06:37 +0330 Subject: [PATCH 039/273] D1APP-28 scroll area updated --- lib/pages/home/news/news.dart | 1 - .../radar/radar_details/radar_details.dart | 63 ++++++++++- lib/widgets/didvan/page_view.dart | 102 ++++-------------- 3 files changed, 85 insertions(+), 81 deletions(-) diff --git a/lib/pages/home/news/news.dart b/lib/pages/home/news/news.dart index 1a00756..337c4a6 100644 --- a/lib/pages/home/news/news.dart +++ b/lib/pages/home/news/news.dart @@ -2,7 +2,6 @@ import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/pages/home/news/widgets/news_item.dart'; import 'package:didvan/pages/home/radar/widgets/search_field.dart'; import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; -import 'package:didvan/widgets/didvan/card.dart'; import 'package:flutter/material.dart'; class News extends StatelessWidget { diff --git a/lib/pages/home/radar/radar_details/radar_details.dart b/lib/pages/home/radar/radar_details/radar_details.dart index 8e63b8e..76d3861 100644 --- a/lib/pages/home/radar/radar_details/radar_details.dart +++ b/lib/pages/home/radar/radar_details/radar_details.dart @@ -1,4 +1,7 @@ import 'package:didvan/widgets/didvan/page_view.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/floating_navigation_bar.dart'; +import 'package:didvan/widgets/skeletun_image.dart'; import 'package:flutter/material.dart'; class RadarDetails extends StatelessWidget { @@ -7,7 +10,65 @@ class RadarDetails extends StatelessWidget { @override Widget build(BuildContext context) { return Scaffold( - body: DidvanPageView(), + body: Stack( + children: [ + DidvanPageView( + pages: [ + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const SkeletonImage( + imageUrl: 'https://wallpapercave.com/wp/wp9373116.jpg', + width: double.infinity, + height: 200, + ), + const SizedBox(height: 20), + for (var i = 0; i < 10; i++) + Padding( + padding: const EdgeInsets.symmetric(horizontal: 16), + child: Builder( + builder: (context) { + switch (i) { + case 0: + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + DidvanText( + 'تحلیل شکاف فناوری صنعت فولاد ایران', + style: + Theme.of(context).textTheme.bodyText1, + ), + const SizedBox(height: 8), + const DidvanText( + 'پایگاه خبری معدن نیوز - 2 ساعت پیش', + ), + const SizedBox(height: 8), + ], + ); + default: + return const Padding( + padding: EdgeInsets.only(bottom: 8), + child: DidvanText( + 'این سایت امروز (شنبه) تیم منتخب قاره آسیا در سال ۲۰۲۱ میلادی را معرفی کرد که از ایران، سردار آزمون و محمد حسین کنعانی‌زادگان در ترکیب اصلی و مهدی طارمی و سیدمجید حسینی در جمع بازیکنان ذخیره دیده می‌شوند.', + ), + ); + } + }, + ), + ), + const SizedBox(height: 20), + ], + ), + ], + ), + const Positioned( + bottom: 0, + left: 0, + right: 0, + child: FloatingNavigationBar(), + ), + ], + ), ); } } diff --git a/lib/widgets/didvan/page_view.dart b/lib/widgets/didvan/page_view.dart index 644740b..6ecc97f 100644 --- a/lib/widgets/didvan/page_view.dart +++ b/lib/widgets/didvan/page_view.dart @@ -1,94 +1,38 @@ import 'package:carousel_slider/carousel_slider.dart'; import 'package:didvan/widgets/didvan/card.dart'; -import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/floating_navigation_bar.dart'; -import 'package:didvan/widgets/skeletun_image.dart'; import 'package:flutter/material.dart'; class DidvanPageView extends StatelessWidget { - const DidvanPageView({Key? key}) : super(key: key); + final List pages; + const DidvanPageView({Key? key, required this.pages}) : super(key: key); @override Widget build(BuildContext context) { final double deviceTopPadding = MediaQuery.of(context).padding.top; - return Stack( - children: [ - CarouselSlider.builder( - itemCount: 5, - options: CarouselOptions( - height: double.infinity, - initialPage: 1, - viewportFraction: 0.94, - enableInfiniteScroll: false, + return CarouselSlider.builder( + itemCount: 5, + options: CarouselOptions( + height: double.infinity, + initialPage: 2, + viewportFraction: 0.94, + enableInfiniteScroll: false, + ), + itemBuilder: (context, index, realIndex) => SizedBox( + height: MediaQuery.of(context).size.height, + child: SingleChildScrollView( + physics: const BouncingScrollPhysics(), + padding: EdgeInsets.only( + left: 4, + right: 4, + top: 16 + deviceTopPadding, ), - itemBuilder: (context, index, realIndex) => Padding( - padding: EdgeInsets.only( - left: 4, - right: 4, - top: 16 + deviceTopPadding, - ), - child: DidvanCard( - padding: EdgeInsets.zero, - enableBorder: false, - child: CustomScrollView( - slivers: [ - const SliverAppBar( - automaticallyImplyLeading: false, - expandedHeight: 200, - flexibleSpace: SkeletonImage( - imageUrl: 'https://wallpapercave.com/wp/wp9373116.jpg', - width: double.infinity, - height: double.infinity, - ), - ), - SliverPadding( - padding: const EdgeInsets.symmetric( - vertical: 20, horizontal: 16), - sliver: SliverList( - delegate: SliverChildBuilderDelegate( - (context, index) { - switch (index) { - case 0: - return Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - DidvanText( - 'تحلیل شکاف فناوری صنعت فولاد ایران', - style: - Theme.of(context).textTheme.bodyText1, - ), - const SizedBox(height: 8), - const DidvanText( - 'پایگاه خبری معدن نیوز - 2 ساعت پیش', - ), - const SizedBox(height: 8), - ], - ); - default: - return const Padding( - padding: EdgeInsets.only(bottom: 8), - child: DidvanText( - 'این سایت امروز (شنبه) تیم منتخب قاره آسیا در سال ۲۰۲۱ میلادی را معرفی کرد که از ایران، سردار آزمون و محمد حسین کنعانی‌زادگان در ترکیب اصلی و مهدی طارمی و سیدمجید حسینی در جمع بازیکنان ذخیره دیده می‌شوند.', - ), - ); - } - }, - childCount: 10, - ), - ), - ), - ], - ), - ), + child: DidvanCard( + padding: EdgeInsets.zero, + enableBorder: false, + child: pages[0], ), ), - const Positioned( - left: 0, - right: 0, - bottom: 0, - child: FloatingNavigationBar(), - ), - ], + ), ); } } From aad180e3f9f1199f5d6ee1faae79a7e9f5637345 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 26 Dec 2021 12:07:55 +0330 Subject: [PATCH 040/273] D1APP-25 FNB foreground color added --- lib/widgets/floating_navigation_bar.dart | 90 ++++++++++++++---------- 1 file changed, 52 insertions(+), 38 deletions(-) diff --git a/lib/widgets/floating_navigation_bar.dart b/lib/widgets/floating_navigation_bar.dart index 54a1cf7..f7c33c4 100644 --- a/lib/widgets/floating_navigation_bar.dart +++ b/lib/widgets/floating_navigation_bar.dart @@ -8,59 +8,73 @@ class FloatingNavigationBar extends StatelessWidget { @override Widget build(BuildContext context) { + final Color foregroundColor = + Theme.of(context).brightness == Brightness.dark + ? Theme.of(context).colorScheme.focusedBorder + : Theme.of(context).colorScheme.focused; return Container( - margin: const EdgeInsets.symmetric(horizontal: 32, vertical: 20), + margin: const EdgeInsets.only(left: 32, right: 32, bottom: 20), width: double.infinity, height: 48, padding: const EdgeInsets.symmetric(horizontal: 12), decoration: BoxDecoration( - color: Theme.of(context).colorScheme.surface, + color: Theme.of(context).colorScheme.navigation, borderRadius: BorderRadius.circular(24), border: Border.all( color: Theme.of(context).colorScheme.cardBorder, ), ), - child: Row( - children: [ - IconButton( - onPressed: () => Navigator.of(context).pop(), - icon: const Icon( - Icons.arrow_back, - ), + child: Theme( + data: Theme.of(context).copyWith( + iconTheme: IconThemeData( + color: foregroundColor, ), - const Spacer(), - IconButton( - onPressed: () {}, - icon: const Icon( - DidvanIcons.bookmark_regular, + ), + child: Row( + children: [ + IconButton( + onPressed: () => Navigator.of(context).pop(), + icon: const Icon( + Icons.arrow_back, + ), ), - ), - IconButton( - onPressed: () {}, - icon: const Icon( - DidvanIcons.evaluation_regular, + const Spacer(), + IconButton( + onPressed: () {}, + icon: const Icon( + DidvanIcons.bookmark_regular, + ), ), - ), - SizedBox( - width: 48, - child: Row( - mainAxisAlignment: MainAxisAlignment.center, - children: const [ - DidvanText('2'), - SizedBox(width: 4), - Icon( - DidvanIcons.chats_regular, - ), - ], + IconButton( + onPressed: () {}, + icon: const Icon( + DidvanIcons.evaluation_regular, + ), ), - ), - IconButton( - onPressed: () {}, - icon: const Icon( - Icons.more_horiz, + SizedBox( + width: 48, + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + DidvanText( + '2', + color: foregroundColor, + ), + const SizedBox(width: 4), + const Icon( + DidvanIcons.chats_regular, + ), + ], + ), ), - ), - ], + IconButton( + onPressed: () {}, + icon: const Icon( + Icons.more_horiz, + ), + ), + ], + ), ), ); } From 49045e85807788286b0acd393dcf339534b06de4 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 26 Dec 2021 12:19:36 +0330 Subject: [PATCH 041/273] D1APP-27 items bottom content added --- lib/pages/home/news/widgets/news_item.dart | 16 ++++++++++++++++ lib/pages/home/radar/widgets/radar_item.dart | 2 +- lib/widgets/didvan/divider.dart | 6 ++++-- lib/widgets/didvan/text.dart | 6 +++--- 4 files changed, 24 insertions(+), 6 deletions(-) diff --git a/lib/pages/home/news/widgets/news_item.dart b/lib/pages/home/news/widgets/news_item.dart index 75b8caa..5b4a799 100644 --- a/lib/pages/home/news/widgets/news_item.dart +++ b/lib/pages/home/news/widgets/news_item.dart @@ -1,4 +1,6 @@ +import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/widgets/didvan/card.dart'; +import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/skeletun_image.dart'; import 'package:flutter/material.dart'; @@ -36,6 +38,20 @@ class NewsItem extends StatelessWidget { const SizedBox(height: 8), const DidvanText( 'صنعت فولاد جوادی مجد سلیمی است پس باید به آن توجه زیادی شود تا بازار به انفجار نرسد. پس جواد مهربانگو باشیم.', + maxLines: 3, + ), + const DidvanDivider(verticalPadding: 8), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + DidvanText( + 'پایگاه خبری فولاد ایران / 2 ساعت پیش', + style: Theme.of(context).textTheme.overline, + ), + const Icon( + DidvanIcons.bookmark_regular, + ), + ], ), ], ), diff --git a/lib/pages/home/radar/widgets/radar_item.dart b/lib/pages/home/radar/widgets/radar_item.dart index 787b2c8..b31a91b 100644 --- a/lib/pages/home/radar/widgets/radar_item.dart +++ b/lib/pages/home/radar/widgets/radar_item.dart @@ -62,7 +62,7 @@ class RadarItem extends StatelessWidget { const SizedBox(height: 8), const DidvanText( 'صنعت فولاد جوادی مجد سلیمی است پس باید به آن توجه زیادی شود تا بازار به انفجار نرسد. پس جواد مهربانگو باشیم...', - maxLine: 3, + maxLines: 3, ), const DidvanDivider(), Row( diff --git a/lib/widgets/didvan/divider.dart b/lib/widgets/didvan/divider.dart index da16730..3b6b382 100644 --- a/lib/widgets/didvan/divider.dart +++ b/lib/widgets/didvan/divider.dart @@ -2,14 +2,16 @@ import 'package:didvan/config/theme_data.dart'; import 'package:flutter/material.dart'; class DidvanDivider extends StatelessWidget { - const DidvanDivider({Key? key}) : super(key: key); + final double? verticalPadding; + + const DidvanDivider({Key? key, this.verticalPadding}) : super(key: key); @override Widget build(BuildContext context) { return Container( height: 1, width: double.infinity, - margin: const EdgeInsets.symmetric(vertical: 16), + margin: EdgeInsets.symmetric(vertical: verticalPadding ?? 16), color: Theme.of(context).colorScheme.border, ); } diff --git a/lib/widgets/didvan/text.dart b/lib/widgets/didvan/text.dart index 601d941..777d8be 100644 --- a/lib/widgets/didvan/text.dart +++ b/lib/widgets/didvan/text.dart @@ -7,7 +7,7 @@ class DidvanText extends StatelessWidget { final FontWeight? fontWeight; final double? fontSize; final TextAlign textAlign; - final int? maxLine; + final int? maxLines; const DidvanText( this.text, { @@ -17,7 +17,7 @@ class DidvanText extends StatelessWidget { this.fontSize, this.fontWeight, this.textAlign = TextAlign.right, - this.maxLine, + this.maxLines, }) : super(key: key); @override @@ -30,7 +30,7 @@ class DidvanText extends StatelessWidget { fontSize: fontSize, ), textAlign: textAlign, - maxLines: maxLine, + maxLines: maxLines, ); } } From 63b5d17a7e6179ab2f394c8826a6605b50ffd428 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 26 Dec 2021 12:39:08 +0330 Subject: [PATCH 042/273] D1APP-28 news pageview added --- .../home/news/news_details/news_details.dart | 76 +++++++++++++++++++ .../news/news_details/news_details_state.dart | 3 + lib/pages/home/news/widgets/news_item.dart | 2 + .../radar/radar_details/radar_details.dart | 4 +- lib/routes/route_generator.dart | 9 +++ lib/routes/routes.dart | 1 + lib/widgets/floating_navigation_bar.dart | 44 +++++++---- 7 files changed, 122 insertions(+), 17 deletions(-) create mode 100644 lib/pages/home/news/news_details/news_details.dart create mode 100644 lib/pages/home/news/news_details/news_details_state.dart diff --git a/lib/pages/home/news/news_details/news_details.dart b/lib/pages/home/news/news_details/news_details.dart new file mode 100644 index 0000000..dc39cf2 --- /dev/null +++ b/lib/pages/home/news/news_details/news_details.dart @@ -0,0 +1,76 @@ +import 'package:didvan/widgets/didvan/page_view.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/floating_navigation_bar.dart'; +import 'package:didvan/widgets/skeletun_image.dart'; +import 'package:flutter/material.dart'; + +class NewsDetails extends StatelessWidget { + const NewsDetails({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Scaffold( + body: Stack( + children: [ + DidvanPageView( + pages: [ + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const SkeletonImage( + imageUrl: 'https://wallpapercave.com/wp/wp9373116.jpg', + width: double.infinity, + height: 200, + ), + const SizedBox(height: 20), + for (var i = 0; i < 10; i++) + Padding( + padding: const EdgeInsets.symmetric(horizontal: 16), + child: Builder( + builder: (context) { + switch (i) { + case 0: + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + DidvanText( + 'تحلیل شکاف فناوری صنعت فولاد ایران', + style: + Theme.of(context).textTheme.bodyText1, + ), + const SizedBox(height: 8), + const DidvanText( + 'پایگاه خبری معدن نیوز - 2 ساعت پیش', + ), + const SizedBox(height: 8), + ], + ); + default: + return const Padding( + padding: EdgeInsets.only(bottom: 8), + child: DidvanText( + 'این سایت امروز (شنبه) تیم منتخب قاره آسیا در سال ۲۰۲۱ میلادی را معرفی کرد که از ایران، سردار آزمون و محمد حسین کنعانی‌زادگان در ترکیب اصلی و مهدی طارمی و سیدمجید حسینی در جمع بازیکنان ذخیره دیده می‌شوند.', + ), + ); + } + }, + ), + ), + const SizedBox(height: 20), + ], + ), + ], + ), + const Positioned( + left: 0, + right: 0, + bottom: 0, + child: FloatingNavigationBar( + isRadar: false, + ), + ), + ], + ), + ); + } +} diff --git a/lib/pages/home/news/news_details/news_details_state.dart b/lib/pages/home/news/news_details/news_details_state.dart new file mode 100644 index 0000000..116b980 --- /dev/null +++ b/lib/pages/home/news/news_details/news_details_state.dart @@ -0,0 +1,3 @@ +import 'package:didvan/providers/core_provider.dart'; + +class NewsDetailsState extends CoreProvier {} diff --git a/lib/pages/home/news/widgets/news_item.dart b/lib/pages/home/news/widgets/news_item.dart index 5b4a799..4f722b1 100644 --- a/lib/pages/home/news/widgets/news_item.dart +++ b/lib/pages/home/news/widgets/news_item.dart @@ -1,4 +1,5 @@ import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/routes/routes.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/text.dart'; @@ -13,6 +14,7 @@ class NewsItem extends StatelessWidget { return Padding( padding: const EdgeInsets.only(bottom: 16), child: DidvanCard( + onTap: () => Navigator.of(context).pushNamed(Routes.newsDetails), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ diff --git a/lib/pages/home/radar/radar_details/radar_details.dart b/lib/pages/home/radar/radar_details/radar_details.dart index 76d3861..bcdfcae 100644 --- a/lib/pages/home/radar/radar_details/radar_details.dart +++ b/lib/pages/home/radar/radar_details/radar_details.dart @@ -65,7 +65,9 @@ class RadarDetails extends StatelessWidget { bottom: 0, left: 0, right: 0, - child: FloatingNavigationBar(), + child: FloatingNavigationBar( + isRadar: true, + ), ), ], ), diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index 761446d..6927ee1 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -2,6 +2,8 @@ import 'package:didvan/pages/authentication/authentication.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; import 'package:didvan/pages/home/home.dart'; import 'package:didvan/pages/home/home_state.dart'; +import 'package:didvan/pages/home/news/news_details/news_details.dart'; +import 'package:didvan/pages/home/news/news_details/news_details_state.dart'; import 'package:didvan/pages/home/profile/edit_profile/edit_profile.dart'; import 'package:didvan/pages/home/profile/settings/settings.dart'; import 'package:didvan/pages/home/profile/settings/settings_state.dart'; @@ -55,6 +57,13 @@ class RouteGenerator { child: const RadarDetails(), ), ); + case Routes.newsDetails: + return _createRoute( + ChangeNotifierProvider( + create: (context) => NewsDetailsState(), + child: const NewsDetails(), + ), + ); default: return _errorRoute(); } diff --git a/lib/routes/routes.dart b/lib/routes/routes.dart index 752dece..59254bc 100644 --- a/lib/routes/routes.dart +++ b/lib/routes/routes.dart @@ -6,4 +6,5 @@ class Routes { static const String editProfile = '/edit-profile'; static const String settings = '/settings'; static const String radarDetails = '/radar-details'; + static const String newsDetails = '/news-details'; } diff --git a/lib/widgets/floating_navigation_bar.dart b/lib/widgets/floating_navigation_bar.dart index f7c33c4..1dd24f0 100644 --- a/lib/widgets/floating_navigation_bar.dart +++ b/lib/widgets/floating_navigation_bar.dart @@ -4,7 +4,9 @@ import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; class FloatingNavigationBar extends StatelessWidget { - const FloatingNavigationBar({Key? key}) : super(key: key); + final bool isRadar; + const FloatingNavigationBar({Key? key, required this.isRadar}) + : super(key: key); @override Widget build(BuildContext context) { @@ -39,18 +41,20 @@ class FloatingNavigationBar extends StatelessWidget { ), ), const Spacer(), - IconButton( - onPressed: () {}, - icon: const Icon( - DidvanIcons.bookmark_regular, + if (isRadar) + IconButton( + onPressed: () {}, + icon: const Icon( + DidvanIcons.bookmark_regular, + ), ), - ), - IconButton( - onPressed: () {}, - icon: const Icon( - DidvanIcons.evaluation_regular, + if (isRadar) + IconButton( + onPressed: () {}, + icon: const Icon( + DidvanIcons.evaluation_regular, + ), ), - ), SizedBox( width: 48, child: Row( @@ -67,12 +71,20 @@ class FloatingNavigationBar extends StatelessWidget { ], ), ), - IconButton( - onPressed: () {}, - icon: const Icon( - Icons.more_horiz, + if (!isRadar) + IconButton( + onPressed: () {}, + icon: const Icon( + DidvanIcons.bookmark_regular, + ), + ), + if (isRadar) + IconButton( + onPressed: () {}, + icon: const Icon( + Icons.more_horiz, + ), ), - ), ], ), ), From d6b902ff2a71da87bf0a930582d35812e5934e68 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 26 Dec 2021 17:40:22 +0330 Subject: [PATCH 043/273] D1APP-30 time picker configured --- lib/config/theme_data.dart | 2 + lib/main.dart | 3 + lib/models/enums.dart | 5 ++ lib/models/view/action_sheet_data.dart | 25 ++++++ lib/pages/home/profile/settings/settings.dart | 75 +++++++++++++++++- lib/pages/splash/splash.dart | 3 + lib/utils/actions_sheet.dart | 76 +++++++++++++++++++ lib/widgets/didvan/button.dart | 9 ++- 8 files changed, 193 insertions(+), 5 deletions(-) create mode 100644 lib/models/view/action_sheet_data.dart diff --git a/lib/config/theme_data.dart b/lib/config/theme_data.dart index 688f13c..7046d03 100644 --- a/lib/config/theme_data.dart +++ b/lib/config/theme_data.dart @@ -12,6 +12,7 @@ class LightThemeConfig { colorScheme: _colorScheme, fontFamily: 'Dana-FA', textTheme: _textTheme, + cardColor: _colorScheme.surface, ); static final TextTheme _textTheme = const TextTheme( @@ -84,6 +85,7 @@ class DarkThemeConfig { iconTheme: const IconThemeData( color: text, ), + cardColor: _colorScheme.surface, ); static final TextTheme _textTheme = const TextTheme( diff --git a/lib/main.dart b/lib/main.dart index 87129d8..ba606ac 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -10,6 +10,8 @@ void main() { runApp(const Didvan()); } +final GlobalKey navigatorKey = GlobalKey(); + class Didvan extends StatelessWidget { const Didvan({Key? key}) : super(key: key); @override @@ -25,6 +27,7 @@ class Didvan extends StatelessWidget { ], child: Consumer( builder: (context, themeProvider, child) => MaterialApp( + navigatorKey: navigatorKey, debugShowCheckedModeBanner: false, title: 'Didvan', theme: LightThemeConfig.themeData, diff --git a/lib/models/enums.dart b/lib/models/enums.dart index e10ad91..247826c 100644 --- a/lib/models/enums.dart +++ b/lib/models/enums.dart @@ -3,3 +3,8 @@ enum AppState { busy, failed, } + +enum ButtonStyleMode { + primary, + flat, +} diff --git a/lib/models/view/action_sheet_data.dart b/lib/models/view/action_sheet_data.dart new file mode 100644 index 0000000..e7faf8a --- /dev/null +++ b/lib/models/view/action_sheet_data.dart @@ -0,0 +1,25 @@ +import 'package:flutter/cupertino.dart'; + +class ActionSheetData { + final Widget content; + final String? confrimTitle; + final String? dismissTitle; + final VoidCallback? onConfirmed; + final VoidCallback? onDismissed; + final String title; + final IconData? titleIcon; + final Color? titleColor; + final bool hasDismissButton; + + ActionSheetData({ + required this.content, + required this.title, + this.confrimTitle, + this.onConfirmed, + this.titleColor, + this.hasDismissButton = true, + this.titleIcon, + this.dismissTitle, + this.onDismissed, + }); +} diff --git a/lib/pages/home/profile/settings/settings.dart b/lib/pages/home/profile/settings/settings.dart index c73bf6b..27a65fa 100644 --- a/lib/pages/home/profile/settings/settings.dart +++ b/lib/pages/home/profile/settings/settings.dart @@ -1,11 +1,15 @@ +import 'package:day_night_time_picker/lib/constants.dart'; import 'package:day_night_time_picker/lib/daynight_timepicker.dart'; import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/constants/assets.dart'; +import 'package:didvan/models/view/action_sheet_data.dart'; import 'package:didvan/models/view/app_bar_data.dart'; import 'package:didvan/pages/home/profile/settings/settings_state.dart'; import 'package:didvan/pages/home/profile/widgets/menu_item.dart'; import 'package:didvan/providers/theme_provider.dart'; +import 'package:didvan/utils/actions_sheet.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/scaffold.dart'; @@ -75,15 +79,78 @@ class Settings extends StatelessWidget { ); } - Future _pickTimeRange(context) async { + Future _pickTimeRange(BuildContext context) async { + ActionSheetUtils.showBottomSheet( + data: ActionSheetData( + content: Row( + children: [ + const SizedBox(width: 8), + Expanded(child: _timeFieldBuilder(context, 0)), + const SizedBox(width: 8), + const DidvanText('-'), + const SizedBox(width: 8), + Expanded(child: _timeFieldBuilder(context, 1)), + const SizedBox(width: 8), + ], + ), + title: 'زمان دریافت اعلان', + titleIcon: DidvanIcons.notification_regular, + ), + ); + } + + Widget _timeFieldBuilder(BuildContext context, int index) { final SettingsState state = context.read(); - Navigator.of(context).push( + return ChangeNotifierProvider.value( + value: state, + child: StatefulBuilder( + builder: (context, setState) => GestureDetector( + onTap: () async { + await _openTimePicker(context, index); + setState(() {}); + }, + child: Container( + alignment: Alignment.center, + padding: const EdgeInsets.all(24), + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.splash, + borderRadius: DesignConfig.mediumBorderRadius, + border: Border.all( + color: Theme.of(context).colorScheme.border, + ), + ), + child: DidvanText(state.notificationTimeRange[index]), + ), + ), + ), + ); + } + + Future _openTimePicker(BuildContext context, int index) async { + final SettingsState state = context.read(); + await Navigator.of(context).push( showPicker( + okText: 'تایید', + cancelText: 'بازگشت', + accentColor: Theme.of(context).colorScheme.primary, + okCancelStyle: Theme.of(context).textTheme.bodyText2!, + unselectedColor: Theme.of(context).colorScheme.text, + blurredBackground: true, + hourLabel: 'ساعت', + minuteLabel: 'دقیقه', + is24HrFormat: true, + iosStylePicker: true, + minuteInterval: MinuteInterval.FIFTEEN, context: context, value: const TimeOfDay(hour: 0, minute: 0), + themeData: Theme.of(context), onChange: (time) { - String hour = time.toString().split(':')[0]; - state.notificationTimeRange = []; + state.notificationTimeRange = state.notificationTimeRange + ..replaceRange( + index, + index + 1, + ['${time.hour}:${time.minute}'], + ); }, ), ); diff --git a/lib/pages/splash/splash.dart b/lib/pages/splash/splash.dart index cced112..2f97304 100644 --- a/lib/pages/splash/splash.dart +++ b/lib/pages/splash/splash.dart @@ -1,7 +1,9 @@ import 'package:didvan/config/design_config.dart'; +import 'package:didvan/main.dart'; import 'package:didvan/providers/theme_provider.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/services/app_initalizer.dart'; +import 'package:didvan/utils/actions_sheet.dart'; import 'package:didvan/widgets/logos/didvan_horizontal_logo.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; @@ -24,6 +26,7 @@ class _SplashState extends State { } Future _initialize() async { + ActionSheetUtils.context = navigatorKey.currentContext!; await AppInitializer.setupServices(); final ThemeMode themeMode = await AppInitializer.initilizeSettings(); context.read().themeMode = themeMode; diff --git a/lib/utils/actions_sheet.dart b/lib/utils/actions_sheet.dart index ee324d4..0bf6f92 100644 --- a/lib/utils/actions_sheet.dart +++ b/lib/utils/actions_sheet.dart @@ -1,5 +1,12 @@ import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/assets.dart'; +import 'package:didvan/main.dart'; +import 'package:didvan/models/enums.dart'; +import 'package:didvan/models/view/action_sheet_data.dart'; +import 'package:didvan/widgets/didvan/button.dart'; +import 'package:didvan/widgets/didvan/card.dart'; +import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:rive/rive.dart'; @@ -29,4 +36,73 @@ class ActionSheetUtils { child: child, ); } + + static Future showBottomSheet({required ActionSheetData data}) async { + await showModalBottomSheet( + context: context, + builder: (context) => Container( + padding: const EdgeInsets.all(20), + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.surface, + borderRadius: const BorderRadius.vertical( + top: Radius.circular( + 10, + ), + ), + ), + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Center( + child: Container( + height: 3, + width: 50, + color: Theme.of(context).colorScheme.hint, + ), + ), + const SizedBox(height: 8), + Row( + children: [ + if (data.titleIcon != null) + Icon( + data.titleIcon, + color: + data.titleColor ?? Theme.of(context).colorScheme.title, + ), + if (data.titleIcon != null) const SizedBox(width: 8), + DidvanText( + data.title, + style: Theme.of(context).textTheme.subtitle1, + color: data.titleColor ?? Theme.of(context).colorScheme.title, + ) + ], + ), + const SizedBox(height: 28), + data.content, + const SizedBox(height: 28), + Row( + children: [ + if (data.hasDismissButton) + Expanded( + child: DidvanButton( + title: data.dismissTitle ?? 'بازگشت', + style: ButtonStyleMode.flat, + ), + ), + const SizedBox(width: 20), + Expanded( + child: DidvanButton( + style: ButtonStyleMode.primary, + onPressed: () {}, + title: data.confrimTitle ?? 'تایید', + ), + ), + ], + ), + ], + ), + ), + ); + } } diff --git a/lib/widgets/didvan/button.dart b/lib/widgets/didvan/button.dart index fe90593..dff6d73 100644 --- a/lib/widgets/didvan/button.dart +++ b/lib/widgets/didvan/button.dart @@ -1,11 +1,18 @@ import 'package:didvan/config/design_config.dart'; +import 'package:didvan/models/enums.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; class DidvanButton extends StatelessWidget { final VoidCallback? onPressed; final String? title; - const DidvanButton({Key? key, this.onPressed, this.title}) : super(key: key); + final ButtonStyleMode style; + const DidvanButton({ + Key? key, + this.onPressed, + this.title, + this.style = ButtonStyleMode.primary, + }) : super(key: key); @override Widget build(BuildContext context) { From d89ae8aba603af4c081da86802e409ba1da20c61 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 26 Dec 2021 18:26:57 +0330 Subject: [PATCH 044/273] D1APP-26 scrolling animation bug fixed --- lib/pages/home/radar/radar.dart | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index 537902a..81060b9 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -35,6 +35,9 @@ class _RadarState extends State { body: Stack( children: [ CustomScrollView( + physics: _isAnimating + ? const NeverScrollableScrollPhysics() + : const ScrollPhysics(), controller: _scrollController, slivers: [ const SliverToBoxAdapter(child: LogoAppBar()), @@ -81,24 +84,26 @@ class _RadarState extends State { final double position = _scrollController.position.pixels; if (position > 5 && !_isColapsed) { _isColapsed = true; - setState(() {}); _isAnimating = true; + setState(() {}); await _scrollController.animateTo( 380, duration: DesignConfig.mediumAnimationDuration, curve: Curves.ease, ); _isAnimating = false; + setState(() {}); } else if (position < 380 && _isColapsed) { _isColapsed = false; - setState(() {}); _isAnimating = true; + setState(() {}); await _scrollController.animateTo( 0, duration: DesignConfig.mediumAnimationDuration, curve: Curves.ease, ); _isAnimating = false; + setState(() {}); } } } From c5799e915fcd7927c15ba1fa20a22a7086da48e3 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 26 Dec 2021 18:39:28 +0330 Subject: [PATCH 045/273] D1APP-36 swith gesture data increased | todos x --- .../authentication/screens/phone_number.dart | 10 ++-------- .../home/profile/edit_profile/edit_profile.dart | 16 +++++----------- .../edit_profile/widgets/profile_photo.dart | 4 +--- .../profile/edit_profile/widgets/switch.dart | 7 ++++++- lib/services/network/request.dart | 1 - lib/utils/actions_sheet.dart | 2 -- 6 files changed, 14 insertions(+), 26 deletions(-) diff --git a/lib/pages/authentication/screens/phone_number.dart b/lib/pages/authentication/screens/phone_number.dart index 30d01a6..e108de7 100644 --- a/lib/pages/authentication/screens/phone_number.dart +++ b/lib/pages/authentication/screens/phone_number.dart @@ -49,10 +49,7 @@ class PhoneNumberInput extends StatelessWidget { .textTheme .caption! .copyWith(color: Theme.of(context).colorScheme.primary), - recognizer: TapGestureRecognizer() - ..onTap = () { - //TODO: Needs implementaion - }, + recognizer: TapGestureRecognizer()..onTap = () {}, ), const TextSpan(text: 'و\n'), TextSpan( @@ -61,10 +58,7 @@ class PhoneNumberInput extends StatelessWidget { .textTheme .caption! .copyWith(color: Theme.of(context).colorScheme.primary), - recognizer: TapGestureRecognizer() - ..onTap = () { - //TODO: Needs implementaion - }, + recognizer: TapGestureRecognizer()..onTap = () {}, ), const TextSpan(text: 'را می‌پذیرم'), ], diff --git a/lib/pages/home/profile/edit_profile/edit_profile.dart b/lib/pages/home/profile/edit_profile/edit_profile.dart index c459622..3e7abdb 100644 --- a/lib/pages/home/profile/edit_profile/edit_profile.dart +++ b/lib/pages/home/profile/edit_profile/edit_profile.dart @@ -25,31 +25,25 @@ class EditProfile extends StatelessWidget { DidvanTextField( title: 'نام کاربری', hintText: 'انتخاب نام کاربری (اختیاری)', - onChanged: (value) { - //TODO: Needs implementation - }, + onChanged: (value) {}, ), const SizedBox(height: 16), DidvanTextField( title: 'ایمیل', hintText: 'مثال: example@email.com', - onChanged: (value) { - //TODO: Meeds implementaion - }, + onChanged: (value) {}, ), const SizedBox(height: 16), const DidvanTextField( title: 'موبایل', enabled: false, - hintText: '09123456789', //TODO: Needs api + hintText: '09123456789', ), const SizedBox(height: 16), DidvanSwitch( - value: true, //TODO: Needs api + value: true, title: 'ورود با اثر انگشت', - onChanged: (value) => { - //TODO: Needs implementaion - }, + onChanged: (value) => {}, ), const DidvanDivider(), MenuItem( diff --git a/lib/pages/home/profile/edit_profile/widgets/profile_photo.dart b/lib/pages/home/profile/edit_profile/widgets/profile_photo.dart index 7ed6e5a..5ef63a5 100644 --- a/lib/pages/home/profile/edit_profile/widgets/profile_photo.dart +++ b/lib/pages/home/profile/edit_profile/widgets/profile_photo.dart @@ -8,9 +8,7 @@ class ProfilePhoto extends StatelessWidget { @override Widget build(BuildContext context) { return GestureDetector( - onTap: () { - //TODO: Needs implementation - }, + onTap: () {}, child: Center( child: Stack( children: [ diff --git a/lib/pages/home/profile/edit_profile/widgets/switch.dart b/lib/pages/home/profile/edit_profile/widgets/switch.dart index 6c07c4e..d122ef4 100644 --- a/lib/pages/home/profile/edit_profile/widgets/switch.dart +++ b/lib/pages/home/profile/edit_profile/widgets/switch.dart @@ -32,7 +32,12 @@ class _DidvanSwitchState extends State { Widget build(BuildContext context) { return MenuItem( title: widget.title, - onTap: () => widget.onChanged(_value), + onTap: () { + setState( + () => _value = !_value, + ); + widget.onChanged(_value); + }, icon: widget.icon, trailing: CupertinoSwitch( activeColor: Theme.of(context).colorScheme.primary, diff --git a/lib/services/network/request.dart b/lib/services/network/request.dart index fb2c7b7..5296878 100644 --- a/lib/services/network/request.dart +++ b/lib/services/network/request.dart @@ -169,7 +169,6 @@ class RequestService { } String _errorMessageGenerator(http.Response? response) { - //TODO: Needs implementation return ''; } } diff --git a/lib/utils/actions_sheet.dart b/lib/utils/actions_sheet.dart index 0bf6f92..0ba1e37 100644 --- a/lib/utils/actions_sheet.dart +++ b/lib/utils/actions_sheet.dart @@ -1,11 +1,9 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/assets.dart'; -import 'package:didvan/main.dart'; import 'package:didvan/models/enums.dart'; import 'package:didvan/models/view/action_sheet_data.dart'; import 'package:didvan/widgets/didvan/button.dart'; -import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; From 33bcf52b087cd9e05d6afeaa1157946c57f599f4 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Mon, 27 Dec 2021 12:14:41 +0330 Subject: [PATCH 046/273] D1APP-24 gesture disabled for changing page --- lib/pages/home/home.dart | 29 +++++++++++++---------------- 1 file changed, 13 insertions(+), 16 deletions(-) diff --git a/lib/pages/home/home.dart b/lib/pages/home/home.dart index 7f01284..c9ce74d 100644 --- a/lib/pages/home/home.dart +++ b/lib/pages/home/home.dart @@ -36,22 +36,19 @@ class _HomeState extends State with SingleTickerProviderStateMixin { @override Widget build(BuildContext context) { return Scaffold( - body: DefaultTabController( - length: 5, - child: TabBarView( - physics: const BouncingScrollPhysics(), - controller: _tabController, - children: [ - const News(), - const Statictics(), - ChangeNotifierProvider( - create: (context) => RadarState(), - child: const Radar(), - ), - const Studio(), - const Profile(), - ], - ), + body: TabBarView( + physics: const NeverScrollableScrollPhysics(), + controller: _tabController, + children: [ + const News(), + const Statictics(), + ChangeNotifierProvider( + create: (context) => RadarState(), + child: const Radar(), + ), + const Studio(), + const Profile(), + ], ), bottomNavigationBar: Consumer( builder: (context, state, child) => DidvanBNB( From 982389a3671bec33a18b82c3953d4c17df91e118 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Mon, 27 Dec 2021 16:45:22 +0330 Subject: [PATCH 047/273] D1APP-37 --- lib/config/theme_data.dart | 2 +- lib/models/view/app_bar_data.dart | 5 +- .../home/profile/chat_list/chat_list.dart | 76 +++++++++++++++++++ .../profile/chat_list/chat_list_state.dart | 3 + lib/pages/home/profile/profile.dart | 2 +- lib/routes/route_generator.dart | 10 +++ lib/routes/routes.dart | 1 + lib/widgets/didvan/app_bar.dart | 38 ++++++---- lib/widgets/didvan/badge.dart | 31 ++++++++ lib/widgets/didvan/text.dart | 6 +- 10 files changed, 153 insertions(+), 21 deletions(-) create mode 100644 lib/pages/home/profile/chat_list/chat_list.dart create mode 100644 lib/pages/home/profile/chat_list/chat_list_state.dart create mode 100644 lib/widgets/didvan/badge.dart diff --git a/lib/config/theme_data.dart b/lib/config/theme_data.dart index 7046d03..70fb3cc 100644 --- a/lib/config/theme_data.dart +++ b/lib/config/theme_data.dart @@ -183,7 +183,7 @@ extension DidvanColorScheme on ColorScheme { ? const Color(0XFFA3A3A3) : const Color(0XFF3D3D3D); Color get caption => brightness == Brightness.dark - ? const Color(0XFFD6D6D6) + ? const Color(0XFFBBBBBB) : const Color(0XFF666666); Color get hint => const Color(0XFFBBBBBB); Color get disabledText => brightness == Brightness.dark diff --git a/lib/models/view/app_bar_data.dart b/lib/models/view/app_bar_data.dart index ad8df2f..9e00aa5 100644 --- a/lib/models/view/app_bar_data.dart +++ b/lib/models/view/app_bar_data.dart @@ -1,7 +1,10 @@ +import 'package:flutter/material.dart'; + class AppBarData { final String? title; final String? subtitle; final bool hasBack; + final Widget? trailing; - AppBarData({this.title, this.subtitle, this.hasBack = false}); + AppBarData({this.title, this.subtitle, this.hasBack = false, this.trailing}); } diff --git a/lib/pages/home/profile/chat_list/chat_list.dart b/lib/pages/home/profile/chat_list/chat_list.dart new file mode 100644 index 0000000..9afec6d --- /dev/null +++ b/lib/pages/home/profile/chat_list/chat_list.dart @@ -0,0 +1,76 @@ +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/models/view/app_bar_data.dart'; +import 'package:didvan/widgets/didvan/badge.dart'; +import 'package:didvan/widgets/didvan/divider.dart'; +import 'package:didvan/widgets/didvan/scaffold.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; + +class ChatList extends StatelessWidget { + const ChatList({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return DidvanScaffold( + appBarData: AppBarData( + hasBack: true, + title: 'پیام‌ها', + trailing: const DidvanBadge( + text: '12', + ), + ), + slivers: [ + for (var i = 0; i < 10; i++) + Column( + children: [ + Row( + children: [ + const Icon( + DidvanIcons.avatar_light, + size: 32, + ), + const SizedBox(width: 12), + Expanded( + child: DidvanText( + 'سردبیر رادار سیاسی', + style: Theme.of(context).textTheme.bodyText1, + ), + ), + const DidvanBadge(text: '2'), + ], + ), + Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const SizedBox(width: 40), + const Icon( + DidvanIcons.check_double_light, + size: 16, + ), + const SizedBox(width: 4), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const DidvanText( + 'فورت فورت،تموم شد؟ خیلی تاثیرگذار بود.', + maxLines: 1, + ), + DidvanText( + '15 دقیقه پیش', + style: Theme.of(context).textTheme.caption, + color: Theme.of(context).colorScheme.caption, + ) + ], + ), + ), + ], + ), + const DidvanDivider(), + ], + ) + ], + ); + } +} diff --git a/lib/pages/home/profile/chat_list/chat_list_state.dart b/lib/pages/home/profile/chat_list/chat_list_state.dart new file mode 100644 index 0000000..a11ecee --- /dev/null +++ b/lib/pages/home/profile/chat_list/chat_list_state.dart @@ -0,0 +1,3 @@ +import 'package:didvan/providers/core_provider.dart'; + +class ChatListState extends CoreProvier {} diff --git a/lib/pages/home/profile/profile.dart b/lib/pages/home/profile/profile.dart index 805099b..212ba77 100644 --- a/lib/pages/home/profile/profile.dart +++ b/lib/pages/home/profile/profile.dart @@ -33,7 +33,7 @@ class Profile extends StatelessWidget { MenuItem( title: 'پیام‌ها', icon: DidvanIcons.message_regular, - onTap: () => {}, + onTap: () => Navigator.of(context).pushNamed(Routes.chatList), ), const DidvanDivider(), MenuItem( diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index 6927ee1..ca92ad5 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -4,6 +4,8 @@ import 'package:didvan/pages/home/home.dart'; import 'package:didvan/pages/home/home_state.dart'; import 'package:didvan/pages/home/news/news_details/news_details.dart'; import 'package:didvan/pages/home/news/news_details/news_details_state.dart'; +import 'package:didvan/pages/home/profile/chat_list/chat_list.dart'; +import 'package:didvan/pages/home/profile/chat_list/chat_list_state.dart'; import 'package:didvan/pages/home/profile/edit_profile/edit_profile.dart'; import 'package:didvan/pages/home/profile/settings/settings.dart'; import 'package:didvan/pages/home/profile/settings/settings_state.dart'; @@ -64,6 +66,14 @@ class RouteGenerator { child: const NewsDetails(), ), ); + case Routes.chatList: + return _createRoute( + ChangeNotifierProvider( + create: (context) => ChatListState(), + child: const ChatList(), + ), + ); + default: return _errorRoute(); } diff --git a/lib/routes/routes.dart b/lib/routes/routes.dart index 59254bc..8089c54 100644 --- a/lib/routes/routes.dart +++ b/lib/routes/routes.dart @@ -7,4 +7,5 @@ class Routes { static const String settings = '/settings'; static const String radarDetails = '/radar-details'; static const String newsDetails = '/news-details'; + static const String chatList = '/chat-list'; } diff --git a/lib/widgets/didvan/app_bar.dart b/lib/widgets/didvan/app_bar.dart index d9d244c..3daaf44 100644 --- a/lib/widgets/didvan/app_bar.dart +++ b/lib/widgets/didvan/app_bar.dart @@ -20,23 +20,29 @@ class DidvanAppBar extends StatelessWidget { icon: const Icon(Icons.arrow_back), ), const SizedBox(width: 16), - Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - if (appBarData.title != null) - DidvanText( - appBarData.title!, - style: Theme.of(context).textTheme.headline3, - color: Theme.of(context).colorScheme.title, - ), - if (appBarData.subtitle != null) - DidvanText( - appBarData.title!, - style: Theme.of(context).textTheme.overline, - color: Theme.of(context).colorScheme.caption, - ), - ], + Expanded( + child: Align( + alignment: Alignment.centerRight, + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + if (appBarData.title != null) + DidvanText( + appBarData.title!, + style: Theme.of(context).textTheme.headline3, + color: Theme.of(context).colorScheme.title, + ), + if (appBarData.subtitle != null) + DidvanText( + appBarData.title!, + style: Theme.of(context).textTheme.overline, + color: Theme.of(context).colorScheme.caption, + ), + ], + ), + ), ), + if (appBarData.trailing != null) appBarData.trailing!, ], ), ); diff --git a/lib/widgets/didvan/badge.dart b/lib/widgets/didvan/badge.dart new file mode 100644 index 0000000..6446337 --- /dev/null +++ b/lib/widgets/didvan/badge.dart @@ -0,0 +1,31 @@ +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; + +class DidvanBadge extends StatelessWidget { + final String text; + const DidvanBadge({ + Key? key, + required this.text, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return Container( + height: 24, + width: 24, + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.secondary, + shape: BoxShape.circle, + ), + alignment: Alignment.center, + child: FittedBox( + fit: BoxFit.scaleDown, + child: DidvanText( + text, + isEnglishFont: true, + style: Theme.of(context).textTheme.overline, + ), + ), + ); + } +} diff --git a/lib/widgets/didvan/text.dart b/lib/widgets/didvan/text.dart index 777d8be..286b1b7 100644 --- a/lib/widgets/didvan/text.dart +++ b/lib/widgets/didvan/text.dart @@ -8,6 +8,7 @@ class DidvanText extends StatelessWidget { final double? fontSize; final TextAlign textAlign; final int? maxLines; + final bool isEnglishFont; const DidvanText( this.text, { @@ -18,17 +19,18 @@ class DidvanText extends StatelessWidget { this.fontWeight, this.textAlign = TextAlign.right, this.maxLines, + this.isEnglishFont = false, }) : super(key: key); @override Widget build(BuildContext context) { return Text( text, - style: (style ?? Theme.of(context).textTheme.bodyText2)!.copyWith( + style: ((style ?? Theme.of(context).textTheme.bodyText2)!.copyWith( color: color, fontWeight: fontWeight, fontSize: fontSize, - ), + )).copyWith(fontFamily: isEnglishFont ? 'Dana' : null), textAlign: textAlign, maxLines: maxLines, ); From 3a32a5cce4fda20a48d638d016f35a3bd65f4a87 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 29 Dec 2021 14:39:20 +0330 Subject: [PATCH 048/273] chat list item gesture area increased --- .../home/profile/chat_list/chat_list.dart | 106 ++++++++++-------- 1 file changed, 57 insertions(+), 49 deletions(-) diff --git a/lib/pages/home/profile/chat_list/chat_list.dart b/lib/pages/home/profile/chat_list/chat_list.dart index 9afec6d..43ac7ad 100644 --- a/lib/pages/home/profile/chat_list/chat_list.dart +++ b/lib/pages/home/profile/chat_list/chat_list.dart @@ -1,6 +1,7 @@ import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/view/app_bar_data.dart'; +import 'package:didvan/routes/routes.dart'; import 'package:didvan/widgets/didvan/badge.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/scaffold.dart'; @@ -20,57 +21,64 @@ class ChatList extends StatelessWidget { text: '12', ), ), - slivers: [ - for (var i = 0; i < 10; i++) - Column( - children: [ - Row( - children: [ - const Icon( - DidvanIcons.avatar_light, - size: 32, + slivers: [for (var i = 0; i < 10; i++) _itemBuilder(context)], + ); + } + + Widget _itemBuilder(BuildContext context) { + return GestureDetector( + onTap: () => Navigator.of(context).pushNamed(Routes.chat), + child: Container( + color: Colors.transparent, + child: Column( + children: [ + Row( + children: [ + const Icon( + DidvanIcons.avatar_light, + size: 32, + ), + const SizedBox(width: 12), + Expanded( + child: DidvanText( + 'سردبیر رادار سیاسی', + style: Theme.of(context).textTheme.bodyText1, ), - const SizedBox(width: 12), - Expanded( - child: DidvanText( - 'سردبیر رادار سیاسی', - style: Theme.of(context).textTheme.bodyText1, - ), + ), + const DidvanBadge(text: '2'), + ], + ), + Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const SizedBox(width: 40), + const Icon( + DidvanIcons.check_double_light, + size: 16, + ), + const SizedBox(width: 4), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const DidvanText( + 'فورت فورت،تموم شد؟ خیلی تاثیرگذار بود.', + maxLines: 1, + ), + DidvanText( + '15 دقیقه پیش', + style: Theme.of(context).textTheme.caption, + color: Theme.of(context).colorScheme.caption, + ) + ], ), - const DidvanBadge(text: '2'), - ], - ), - Row( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - const SizedBox(width: 40), - const Icon( - DidvanIcons.check_double_light, - size: 16, - ), - const SizedBox(width: 4), - Expanded( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - const DidvanText( - 'فورت فورت،تموم شد؟ خیلی تاثیرگذار بود.', - maxLines: 1, - ), - DidvanText( - '15 دقیقه پیش', - style: Theme.of(context).textTheme.caption, - color: Theme.of(context).colorScheme.caption, - ) - ], - ), - ), - ], - ), - const DidvanDivider(), - ], - ) - ], + ), + ], + ), + const DidvanDivider(), + ], + ), + ), ); } } From 551061111e3513d319878ee2f7494819be54dab5 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 1 Jan 2022 14:10:46 +0330 Subject: [PATCH 049/273] D1APP-45 web & pwa basic support --- web/favicon.png | Bin 0 -> 10206 bytes web/icons/icon.png | Bin 0 -> 25287 bytes web/index.html | 104 +++++++++++++++++++++++++++++++++++++++++++++ web/manifest.json | 35 +++++++++++++++ 4 files changed, 139 insertions(+) create mode 100644 web/favicon.png create mode 100644 web/icons/icon.png create mode 100644 web/index.html create mode 100644 web/manifest.json diff --git a/web/favicon.png b/web/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..1c17c66c27664a9c8c394e623eb2f29648476330 GIT binary patch literal 10206 zcmV<4Cn4C0P)PyA07*naRCr$9dM8tCcwZ8wXl|{mwIeYJCzwh(b zeF)B7JOBlN5w2zr5lhAp${Sh&umT{p?)(4gR|+6Nl<;91DES-}N9F?X0Z3p`vv3Z8 z3X`J)Np8Q0^2YW61+UkEaO|T?yU0HPBV|+mFI*SQEk2H_s!*a5TP}ziIZTW94M(_a zV*(_$q!>7&BbQ|LSWgvdH@NJIrBOp7n9bau0qDQ5uK)TYsj5N_h15VnAq|yP@`UFi zv|!t{agaC$5c|=S##im6#L&vxC|$B;XN#0lP=#sS|K}GWAnb?d;m-k2fRd(gH6;w%zq4H1Y%@~9!-Cb(Ah|;>1^EXpR$?&>j5r{wqEIywp-k`P zPzXvS3RRLgswhMQiA|K_C?^P%6Gh4!^bm|j!W#^P*Xs%4IPE?SF!uA$OFAvzvyVt# zZxv2$Zbbk~3bMK#6zvXoQu`bV2GQTW*h1ra%_KpIL}=9KQzIS^BwsZzha*sxgha5x z64Jx|O$;CZS7S*6PT(OJ_0U5SVH9u6 zNdR<6v^!jX8z44GjswT@P-PiWuU83`mLcNx@k%6SN&!_NO86L&gZmH-98~3C9;8SK zIK>Y|jet@Pyl4X991slYoM_6XqPZ0nOs&A_nrKFs0D?gWy~C~;las+{fvE=@^X~#x z4?yNrWOYBNb2we@TqZ&E&r47(V3@RoN=wyXaVaka!*NjLN)q+`OhcusQC;>cqSYq= zME~S&n;<%x!;;jKn3DQZo%Ko(!N#7UvzVwUJykU(C-a;r{w<(1fc70Ak&5z!1pN(w z;$qDSf~H2nq9Qd=R1%XG0ub5v6ZI8-1W)-YAW-}}fH1Gs4x`ZwRn%+ua8ekdP<7m^ zjT6mz-!>W>!jOIou{OAu3YH#Bas;Ce=8Sa3l$Q3Ff%@kFVq_`^psIr4*q-bG)#!;8(Ce#N|8nU_{ zxMUTJSsBeFhAS$lFE3w}{6QW(r*MI?#cJir8HiRMsJjT83pVGC#FBakF*6U`Zvs!&2fAQVzTp~7q=E|;AoyB)-3x58-DYn&Af zg;DACqpZS9tE#*dfe=HEgVD(GCL=hGhY|^vAz1o_>d&8#fM<7|am^{$k))QBC~xgX z*f0>C7_^r@K-BLDl(fijav3>7R z{IYc)Hf-BZPn|rYLXrWig%=G*D6%BOU-E@oar{+Co;|f5!o!_CirAY?pek{S7QJF` z-kj4r95HG7ovS{8(vf`m0iDC)tXG2K9wu|ld?)jiKw%LNK?GM_v`8&J_6*=J2f(<4 z#V1ZAwSA6rWRBrQ(I7Et@dso}ikt6uO?NV+e;@Sf+7=F*rOxy!J$@9GR-n>bjc`!0z}51XjBs7!&yB#0(66iJGz{(`wEIXM}qF0Dyf z80<|*QtO#i@9Iye3~N@VV##d8GnLhx&GV$`&yjRorKCU*oL}<0+0ptk zUe5@e8H)H=mkbc|ZTzQCtG<)@%(DgO&wo`dIWR81*w}#P^u8pe%{<;<&Xj`z1;H@s zcgt1WE6+ZFwk;ah0HdfXW-nTf*WURIC50t`K_82w6a~E5gw&KIq@^aq>9j+y(?ODD z_FZRzqSx7R{lg`(5Zsi z!Yh$bF)ced3jTuSH6Q^-F0J$1syX$30$FvmXhBSAsWl*79H4e>wP1*uaqqF?N}#Zq zC!!Ffr3Z$?cj^;1#dunl!qw_|;?ABZ@B~t2m7J88EKGm?A>4Q8_1c8Pkths$9gdwk zi(yYp!!PT%16DI2MKu%NA-4^#x%vup>X3tm4bot-m?1K=P6$|hr6>x5!7z$T%dmI< zVf^^>CT#v~C!&D>h|vh@t47o2S(y9UxbQsu+-H}>M@z4{m$H%J9bVakdMohaakO}j8; z#6(n7c)*zqP(xw#ys`)WHS|sm7`6ohi zHS}Q3=uc8}KcbRsF*nRm?9H0-%;7pOSdE7oPM6D_(}q^=+pk2t)dHcBJ+ydp|2W^o zz%dvalay{>@+L<|ITVl~$-)ay-j4~7-K*`O9M3=sJdYJ?w_wn)=OJ^<_mJRnIq~!p zBXLvTt2L)D5DaOHCM1>@`aRc#NfWz|-C!~ppf`xvx_vLEOnn^T>9)O?dB( zXL0-Wm)9(SEr#bftlzp1*A03cR1hJDf@quD7E@n&4vjN2;PJ%xg!>c4fQ0_2Y78u! z)r?>`f=RE;!nZ3{!{D?dTvmxUW;~6t_w@&J2Y8;-#`x}+9T@uXWR#ay$fCm`$kA{K zE!xpP9tOqMrnfaC8C_OU$~QNrBuT0yi?z}n=2X(O=YCM?q@2i;Nabo;u=x%R-Grqw zB=;g29lsKEdZ$!bsbsfk!Y^Ae0qt5gfh;Q!1RiYiObVEIcf9c-RC%kRL?h_ZqcdjD zm;i%Lhd?kG3mYzSF_3F#6YIN`@e|`Kv)P1~r@nj+Y!K= zO0s*M1g|%ty67u((u>aPCxXF_B1AiVl?8T4`!o5dMbj!&;{VI@0my#_=$96|rVBk=l^=g={?tw!Wb3Jx7Pfy-Jn)qprZxz84F zHXCvDcpiq{|0pCTd9s4--@c>8dQ7s}Mkb_?Sy%?riZ6dq#S{jT8lnZ;u8-HjVp;>3 zU@|!n44$nGkY-t#F@nz0iZr-lgP_;BrLqd8?=4sHUoDsb9WOwob;UiwL9^alfk&Tt z9WaRK(!CQFzBL8afndF4%qDBKn9zU7NL<~kJDz>~-zY2hYm4bO_(9B^G9K;PTn2+t zhtHR-#+&mNW7U@nHA$;4^~_W<$!*7!*Wbkl3qArU!JvWHW6A92>PUKmCz(4jV8jHh zT)tKnlii#gjaJcut-TSg+86irYNFZN0L3b-FsG5mT{j5^YZIxwLb>Xi9{lRXlc5)N zVCjnbxPa|qyPHSi@WB%RM=u)YG%n6lR@$EXCI+2f2qwm)SWuXM~X>>XcX9~-(bLT#sEiQr6 zVMlIm8?;o=>{$Wf~4hM!inl zxZ+K;Z`HJp4xjInFkR*d!Igub#D?|TAy`aUyx?`TZrKdMP^d;7*?mU64!iap!laj` zYtk`o`U_~@G)qh0E?c<<^X4u_S#fDBh-H?`Zo{B~{V?jmp_)oD)!w`R5MG`%6WOg= zVCJjiQC%IVqwZM)AAX5p6H`oc$_-qDZr|~$BumvH{>#O$kO9|Su7wWFhp6vL49Kiki)$W0@#(W@ zke!7k@6U$FN-uFAr?yx#m6BBzAAj^Ea&lXvXODK6yXZ?ypZGdpF+G2OfGF*Z1j(VGrD`aZZAC&yB&z-;6O&zJ&EZtOxW4{PxvsbZyu2 z_q8Ct#;?|G!EHmwQNe6bR8ADsqOJYlFZqUmW!%!cZsB$MWVx)8PM9#7dtuDo8i|QQ z{ousNE=Jf#^9s@S#u1Rbest~C4fEf8Me}>kCv&Y2C+nn4XVElh(t3tAiDA8yoJ-eklA?aO~@%HrFB;2a5AVWeF=_P8xaDG3 zLVwq7+Kp=mKM6<@?!0>dCXOGADoWuFIVaY+S;zGWTze5zIlgaW+d0k z`sYvn&jPgg)8!~UT>xGbF=WuK$Z3;}$DVx^tCp?$1AxM4c3E?L`ra&r!eM;81fL?iNG{#*DKyhEGu%rSVZX7|&t9%TgDuT2Q ziv>sKP`R=~>2^g&e&f>DwcTL5cd@8Cp<-KhA4ZScAJI~wH}>y~X_LpnTaSv_<0{6a zlc|{1YQg&-eSsOT%=$wWyZ+W2Fk{Md@OXT1Iqj^TsCm>e6=MPKIbvrjw&=qzF#WZ+ zG!=Vu+7lRa@2!8JVpJn>*7?(W$dmYW{We8#xp}!Ne<1;^Zqm5RX2D=-E|r$6BgYKk z-kC7w5=c7cogP1R7H#^DK-A+y=PSBm!CO_CE~r_7j#4;Ox-k@V*aC*sZNW2XU==b%VVV=S?e)MN=d@dp#yQx;M=sc2a}e0i$29CA1uX9xAnz; zo*u2`m=c@7RE|j%b5IA}`!Gt+oJDHGG#p*GFlKn_NyH`my!G4mc@ctM^Ic+rdgskZCYyO zAXQPcG7$5SliU{U+;db*liYdRjTeR*7Be>dx(%bpjt7a#xZ%cLSiNXc{c&VG4Z^aG zSKRh63v^}9Y!#Hsyg4Y{J1P-j)b4j<(Y%6;u3rnb^jl<~SI*4L5H>7(1DWZ`^@bb? zqTaUmD7xJ`Mr$)^-ns=oSva%C^d|H`lOnwiMw1RcZ&3T3{as$+!HK+6=-#EhmN&B7 zc`aCFJi~(0*>e}8TjyL{(W9dl&0Ec8EphMj)m5>C5A@87)A9APZvdI%?HNyE)II$! z(1OIgi_5FfbHJlGar~4luzaqPTx9f_Q#iDdTvnK#)xu_|fnw#|hf zmrO^h+flE(uJs5~icYsZf<3zqfi*eKdSep$^uAmx{?#VZM1?|g02Ku($u^99bP~dm z2o}8cGRn%mSpCC#^t!yW7O*nQ_wv*^_+`^ptXwh=;jpBoOA_i-8+=yoDJm|*T|>tp z7zn^@HRI^IMMzI^X+BQEuS)26 z@iPjhbkexT2Ek~~mMW^0_8nXEYd@U^x5IjYBqj8C{%5N(;*lwUQHQqe+Tg?a)4)=k z^*Nj|GBsh-)?Ik$k^f-j()q}2l&(eX{qA}YZ@l_EI_9=UFcg6(^0?`a2QYTzzi?Z> zYvJ)!*Q9zA05NHFyX<&j@@#zm$ucdBx&OZYSoGTCbyLIfOsKCqi0kip7Qb!UrHF19 zFGqr>Y0<`B2!~JqUcxLE(Z{aX?^-FO>o0=dlrB|NDxJFI@T)(170FIp9g~?zfif`K z_8o!z{Ij5u2%h=RW4Ql+ZbNy+g(+7C5KEJ8{%scu&z4}&fSa^1f|YCf4H~XR>YZ}i z!XF4~7O|kPSSui=B)K&{s%;&aB(gNf&OHY)Z1|H@B4SrqDh0AOhCf1_4ot0 z`M&Ykv|)QJQ5FrC(Sl9A5v@LSt~_l`f(}WD`VTV+(vwD4tOKQCTCk}CEcI#E+AiIs-yxDKiY90Tp1`yWGo{%NSyAw2fz zP`p0=!5ZmFNO?(x2e;fe9^1F>iAzqjf|l&K0m1Se=aTkJd%FD$PE4gIH#cKtpEQ!) z^B6dtg$B#kqj1YDEF`H5QkOM?-jFU;Rms`SvV@f%Oh)VM%z8n(edHvpSoVWfYR+ub z0Pnp!9S)lffl#PkkP^9`gu1Xw2TR_^Jloinkka$PVP@T6FktLc6Y=xf^&o)qhwxJik^}U%<@V3#NL^>OJ@3 zG^|>&8akU5YE;686|>R3{bjLy65|V=*DAetjhKLvl5$zJ+XXoiDxihiZ;B`B<7IVw zQ);9W9xxUG)|4PgXxumxQ>Tna zPTS@h$+COT4-+n$I*5PBzQ?4=ZnvSVq7u))I1L+r-UPkPiipRD#q(am(A)YTD#=>& z1iKb2`3|F>or$O{OM=BJDk0xNTC%er!rqfLRaMqE)S%P1ln9NSEt|=Dms=>=vN=o( z)}I5&kes45k}KhmQhDf@5G^}<1Z8{r#S8t3&JG93=>92ZOYKXeAzAeY`4PkJByYSl z3I?56r+IoZ}kx)aXery9+ zE6mjC@1U^YEIY>m*&o2$)1Shqdv2*|UWiCCo|rfXZ_odn60=d^^hQCgE?Y+n_T2^e zD{8>8B=tse$1e%TyB#f?DW>#vPV)On`Hr1owczJk0Hvh5Ty0uu?JvxItvYg?4;L4e zz;oaZ_)C91M`GZRnmdbgWR2md47tLibnM!We|PE==-9TIw!TCg%J%)oFmU)w$Uj*C z-fo8C4qZVp+F(uzZmqbl$1It^gSt)GK6Ycj7B z;A+!K)!A$u3y?XEqcQ_%$M&##=6nfa0LgMqCjsGk)t`Tw^PesR{P|N*cJR5l3dDGc zWdYo67V>6Ct{e@k@cPlYdoDL++;CibMTa`H^3n2jm^gDWjvdL1Es%{OOWN;tr$fs% z+ig}2BqmM%>S~miSD~V^3N#dsHI}n-cQ}Hiv?M(8zyLh);L>R)NB{r_j7da6R6v+m zJ0F0J+xO$yR~F#cU$(2Tu>ydRQ$qejv~>5s5vtr$O9RYYgU)kRUGhCTt5I>bZpE>q zR*7a#LdYcmRLj?3=eB~y#j5ATX`cE^R>Qk*SiJfeZ{marsX4E5_N<3_jzIGIWY+0D z=+-`D+?XL~-#WVnD6c<&kC(5*d!MfXQ$GY_{G|QVcLI^kLz7n(5Cvp6ZHU4BuEIk@ z`=Mc4lJ?vK$4+6|oF(|+%kL?ok|H?lg4P(~J3Ut|-t$a6bcoH>>}*GpazCJ)vAr=l z*6GU1PPLCJ)CW)++}#cs7zZUJsCGU&-t8Lod1cShJVEl57s7LNB>ZQ;uG8~pPQ8Y> zFPp}h937}4LG}1#!D{C3x}`T6eP4g{=-9djD7NM;I}YN94Lh)D*C8CsKZ~*|FM{Ey z=Krwpgpt0}W;v*>#Au0OPZjKhaR7SK%BsffIC4Lcaa9 z?9kH)7O$>3u*^nwWN{t4Awb$ugzg6n$*GQd0g8EQv9gRL zDZUeVe6XYp2o$}I(mhP&*g5k=SA-6(W@Ct>=~KMkl*SsUsLv}<2E)`=#;>ejv4emPyg9v+zW{Sb(;%m45*5-ox07^%4_k$M& zC=QZ#SdQb=Kv5BVrwTc>y6PCb$DfA(?27mx@nF}I!X-5vO>LPYc)clAl_jWtKV^P^ zImN|wYTKM#-l+}gl+zrSHEo23=}8xK-?J`R1_)CjCM~~iKY*S4kEzwAm0CXwv06A@ z)Ip7g%Hb_oqz3b5#Z^DvgaN?SWEgDCCW8}FOvz5gmYvOU?3Cg~&TIT>4!XdBi>sU* z2*}>NQ$o1B3J8@gL*Z3B_2Lw+{BJ6DAA}AC_Kvtip!t|tNjR-E{3;Y?u8PiO-F#v*$O6mCr)qcKzTz8 zA{sLYCpf_I%wuN_j}b~050xWDM5;cjhJCvsdv_q zQ1^p|loXe%Z7WJ;<y*MQTdumgU2hZUyuG)3=lXkF!YE+_1B*Ko96D2Bfsw|Vl`#H4qhrqK}Q>eU7M_Ge7 zuhVgy$Qr(gc3;iAJpO_j{qDkI4l#{Xc}T_XUFA5njlG%zAPu^GLk;eml5$!pI)_8} zE97=bXx4r)NutC4T&Ml{gsja?OSdMDPyV-FY*LFJI8jtQ$Md+r(fylH@>|bX; z5J~Nq>g{GZsa=jxbLjP-+@1Omywq3Z{I};3x5g}-k^|LJ`Mx8fTD1Eic=P8mfS7Ae zNM^4M>PyA07*naRCr$OeFu0H)%yNB+mp?vHxfG1s~`d*7L=l*q9{d05Tpqxf{66qkt#)s zfFLTx0v3v5Z=m$vYZ6G=Y&LDPyEFgiJ7>=BB%}iRyWanud-DX7&F;)O@A>k>-7 zbO2=aWhR7Gdk6uM?In}78T96gfD#J80zfMHt^W6l|G*W1;jo| zBr7CEaXEj66kT^QOaaXxdk8cNB*>5zNl_FD^!2~% zU%Ubm$rwe_NeU!MfdV}UNICN!Q@ca1w~AXn@<9g|wr`;K|M=n&O3`=mF`ha`unLKw2gMk{_|I&g!W!xsz+zc zQ7->d2f6l33?upM{J6VUNY?0=Nlz&rk0H2PRoE(5gzU;=TAlpBjvzBK$gAG>2&bAk1FTCX+&C!0K^?cLGcetNK?`>vY63|i{@a$u>F``-*GRgF0>UP8v% zbKD}+oAgS`vCc?4v&j#jn8x#^;P}@d=Xs#O5ZS09C(r*j%S*FqVq@8+dOYyt=E9Sm z15Z{KJUKb==DOGcA=d;wr%$4AB;2U8wGvCG^8tw*s(OnB25SI}fmY}(X6Vf(NIE@# zPX@++DWFIK84OJNq#Zs=hsXoH*`Oq!90B{uSv~;iV(wg}1efmxZ=MG_ogwPZhA;$D z1f$46?0*g^5}U0`0+JR440m=m@-i}*XO;B0H#e6b2=4FT2$3Y2sVs>rBL8)R*idy9 zEgAbKGeCUtKoJwv=|E0beLw&^fM%PGeJ6kspqbR8HT}0pCk7xr@*EjRJ$RVbi2+DT zJvmiQJvqh?py)QoW^&k4QQe1f&=aiC9;KYhSz-!vL^v~S&53IBtXG6>&b*p%I2@52(?T>MGN$L8!X|$kaRH;q&S$Y zF^~+g(CK2KGZ_5@n{dP=Hz7=cqWAzs9Liv|!V(b%OGE_7%g;gx1au+o|C7MGhP7AapKIOJIOe0B_z^xLt=7w_^{oQujmgoI++| z0szM?9_}DmLZV;_t^u>Hrp^@9L@@?6guzlBl0J}2Bp;wW43V;|qxceW3sbNSmZ&IL zBEn&?Sh!STQqyl0-s1h;+MoaH0mP*Vbb39!ZZ}-1X)I!#=Wy_a_DdRCC_Qup7#*N^ z?QlE)P;%_wA~*dfWL!A{AghqoWL|gm=cUbU5`0NWxEtTr5?UF7;Z1bri2D??trd)c z4VkVawa29sfk{WPMgl)^Buiuj0%Brd3JzkbRm0bA4FtFH*Z*1oX@Eo4Q_i*P$i8+B zo-D3eSd^HjS{j&?AroEpBuRN0-^iKQK8GvuXJln16<9k03VpFapyrFcWg#Ha0!mA= z#oucGM&p!asw@8$6jKj@v27(wNC%i~Eg|VlP}BrHdJa-^UN4hM#FMOXmS3DxC>5as^)&RfYC||mb<9|jR0d=9##CkkX~w@F9W9do%l}D#($Y2Y9S=1 zqhu}j42%Iy*e@twk8>slBqHDD&=6S5$HNj9Cemv7d;F6e>0bjN!Ep=*cw8>zBqkv< zArUf>Vm;9ri5xXLNCt^<8`*VS$xK=g$F+};d+nTNdjw0?0!FAQ`ksF?{eP$fLPB71 z1w#(BBEV*W3^U8^l;DDw97s7i(0j6w9qIrQRFZuI=7e{@FhCL5II$L2Q27URAr*Ql z0ihis>1`SyNld*-5=-I>s!*QsB)b05!1jMUfHc67-Fe7LNCHV6N+r+$M-R!sPo67d zmy&UHDbmk=4Io$D2O&`kN*Pg6l3$DlM8v~ntqr5KzRqZ?sTfT)ptr<9ZwiH?1VfSn zxOCHal4ZtSX!9u-#sPPB8Wj1Gh1KInK$Jv_-clJ>w*YP`YQ@%rn<4?euQiw{`N+BUJRo)a5hRC=c zQgFoq(3@&NcGG=_mCbc3%fvjRe zMM0rNS_>lqDs2RnVypx&mPG7#9WY*#3U}78N_NT@$V}LY-1G|tRIN~RLQ>JQiD$4P zs%}roR(=Q!raM@AF;~BO#p98vs3E9)JObn6xKr})%Gdgj1CSb=qbxTH&}AnkF`_OR z3_Q9?o;I?o@-jYC(k{$`^WtynqN@%aUy<95K(bn65KyV36d3h1OhK(6=>mLav!Zx; zxI%~y4i?68eK9WjZ&lC~mcinSVvui84V>l|R2&dodT~#u@I@)!EVwd%RI;ysjMS@N z06wxW)UN=JkfN%3iwZ(aY#%A8{0QjuF-#&+k%Pj31cNOI!Bwhoek45Gw^ObC#{h_K zghj)3ENR<${-VgY6{k=Soe^+5e^VUiC&PY`I1XJ!0mmkScY^h{-s29y!;Og-K58O2>dBd#);utCNs&c%{l~gn6tb zz}n(A38B@Vl!D_2z#P(+Q6WZjNzyRk!a&0$3^^ht30_%-oaY88!;*kP=@>zQC>Irm zn5Zz6kBvlZR5-$dgJ81;ATYoTyArUQ0nzvK`534j?PX z_kJ*&pf?%W=Mk7#Y6!pbgNaBwBw5Kx{R+;+g>anTRlp!9Tp|U<)RRK*n1sNHr?^^^ zJrwp=+#ZRt0D`GFj`C>I@$;Gn>KoVhgrkz&taAUb^VJPsT^gFS~&;qZy`NKH!N zpGPSj0Tvi2)}>H&j888Tn0U!Jvo7_3JM%}yabXth=e{hJ&KGR%_U>WL(}3~zQW;BrG}v!Y48JJ6<8 z6SQg77>(=Rfnb~U27Hj(VG@ceH4DoH5_*O{L;W05T?H=!)xN{0vFqo3*!k06ICT6h zkd+HqD8<9V_L8KM`Vm4Z@f#1CrFqlbn}l z$VmsM0dT22r(j&kudV`Onj@z6B*_%qhKX$^z1Xp0J4pZ3>vV8a`YovwqXG5nRmaoq zTB2jSmQ2!UFWNw_?B^=Pi44SPZt}`=dzf?~Kp74G_o1KdJ#-RVzWxcH?fMO;Pn_qf zE+`O2Dw`3BX8d!>QR)Mdl9jv>j#CqnnRcv*!{uL};PQ7%5w#b>U}*-Kq>)Zm1Gccn z$04{%WnK(=Gs%G>FFG?5DF+S_5IrzZK2VYA9Jdh45GqTOn1z*j@e=2c+%yMtCLKIE zdzEWP1|mCYZxIXQ=RQF}(Fm?LUb05@hvMZq4+Vfj2iHTKCMyTls4xba?w#7;!4?hk zfr3;SyI3xn#5P-d(eJM%+i@u|8P`+nNKCdf&Xbjs3y;SOgFz3A$%xS4AVf!mA~q@v z70N{-E+zsdqcPum5uiw-(a(kU$Z_T2+h6u$^~UY^V)q}&vpX4(3}z#fdK%)*J??q~ zwLHjHvXbT_@!U)xEu(-cXJ<$K8CQofjfP9M`0-F=v&xMORPSyKwjs1eb(n&K%TBQW zF#xG5i}GJPalC>I@|Ar*aUII>aLLyY)qWHd9wMUy{PBP6l-G z{4IPOhpQ?*VbKL-=b~KYIP~iB2zox#7I##R^KB-9g47L@_llAaP}w=TIB@hVe%^Ns ze;hc0qo*$-At@Ekj7(0lnPX6mnTqI^)^TVuAi!otY;-tkRxOWa^=qI-lR9YDuogl? zD4NbM0ux;(lECV9^wdQx-|!{YfA%fXu3iIdRv1l2c=G{?aU^b;dfg|Lv@>rZ{p@GO zNFy%6Ng74geHVITBY531nVgE(BT0G#LaJ3kU|d|;RN6lRAW?*tnuhdKr&&@L^XrhV zpgas2=auwhuORKhc69-?O{?ffev%v%Q5zBU=Sn79d({g|ERd}}bC4MHaOaZ5$wtNM zl`yzxN4(gn4U-BCWh`BklW3L;O{o&9w8_bJ;k(}s;?o_!Flli9QX&H&GtEs#Zj~AI z%*^MXrv}?q|BnCwc@C*BfS072$IA&b{o7a;C1l$- zEB1YZR12#xspHq>5p@PhVO6F8N{FhieEu6Ur)gmohZE5i%V9{bPUzpg12ehl;?jmT zhgVz>kOZ$ecR3O3wtRyPpYO)0Qx^b|3KlbTWOCC&vZO)3b1Q(2Gkcc{KvE)~y=PoBPAg%o9D`clRpbxdNb=0^3 zIP2CKD5*M0Njp6p_A~2?kw#o!hgN-BimbH^0Qtrk|0I=0!P(GSHDL@4DA`K;+ekD+ zCOwY=$LX`kPE6!Qh|JwC8KBd96vyQexPEYM5fAFu-D6V(L?vkiT9C{ z7chCjI&9qf9aEu(AggMz`64LXRiQUR$xPV*$DyG`98CY(nxm^p#6P>#6qIE9glUDvNvA z!m2+fMO0q^Ns5HmLnPTJb%?mS=`_3Y(7s(uOd0-??3DfA6Vg1BwUG-kSJXAmW_;Fm>U2WTZJ@ z2(cBEMygB12*r7E5|R#*al#7-`~g{USh+P2QKP#QUTYcTJo1_{U=a@rDqkM9YE@Lj zLC)`ZysZFI!IN`61?eYGa+<8C}{XwUou%3DxJVCK_r0Du%~jYJ%$-?z03$Q_u_I1qrJr9CtOd%ps|ba>1Vr{)6N)R&S%w# zzhhM!t~?lmgHX424K!j3?AUr$_7PH9*VERlU*+dC6kE8Lm&U3qwo}PhA zR}ygO@NxXMXFm=cI*#m=RKRG2jyVqVaTx|A4{@-JOx%4>BP^cw8t$rBok<{4txOte z)bPo3S1@G4Vr<|33t+XtU@~c?k!mrRbc!o;Cz22KLQd*cU$wD+q5K3pxO_7ys@?`j zx~f`UWQmGKSS_jpAabn%(d`2euTadoautp<=R^csH8o9nO6r*bNIUjk5u#M2cFG99 z;~6QU)(R+ILWKvCYGJ9~U60*?O4TZ2;p9Ph;^7uPsZ-Ez!>nwX^PL?({e?bn%)#aJ zS78XFtPOwIKoDF?C?rr;u2Bu`+uVl-?rV-a$gB-8!{d>WmzM`Ol{X91oqe+4M0_WB zOjYm^%G}@%NR!FP%yhTggNv6F@XN1z@#XgKaOCiD!0Um|YRv~E;fHc(WWpR6fO!)K zV!-nq)G~X80f|1wD|5+2*Sj0O#E5At;7GB<7;0m_Dc?oTJ?du&TvAdF_C)&C?}~Mk zSgo;AekkIm{U&>C;|Y>2ZamMn)2J-Hj?o`vX5-mTZLo0CAjC$7G10E&Iby*C*C44f z@4ZhjY{C+@xyC?CzJ+C{oz#@uje2+1N4L&T;QsrXBRnh^E|(j*RN71#Bt8PIn(c+N zfg&h^u;8eoNP^jHg2iG+c6KiI{CN-`ZTuWR{rm@u^c#W#eQJu{j9HdcR-KWBetnL<4ZwYD8Trn%Je$FI^HsMD|}*3KJ&yXxoX0>y#ng`qR?!P>1bMuz2! zDKV)-u{WI#-CyX0mtX3N@UT#1W@a(&AWY^Gk#HMcAOKBdoKiwIeexBStyl*~N*YT9 z(^yu_f#^<4$6d`D;H&qiAu23{Jr_w}A38MBl7h9p-I=7QjvOyTHT4}3dI0O((4W3_3JXulb2>E@F*jp~Du1G=*H)>rHye zd3}nU_{Z2nqQc_Q_{~Ms=pjYaS_Q9*N-DUerpB>6&TNE*1!MKR5qPpqi+tv5QM)2e z+?2&1V(j?EFh+zjY2^bC0Wd2YJ$pZg*9Z4TUY?s-RsWY#r>JKUq&*}g2p@0x3R9;o z0Hwo`Gg1_B8i{ix+wn}7_Sm#|jA~4%%|tYBOcI%=b4ysYaXVfaIiCe@sUXy^9tj9K z>WY=BTtC>2suVmGn3|LC8PH5eWig55vUF`ICzHYuCRtKyY`U9ouLAhz~G zs+6=50%Wt6Z^DRC3t)`oQj2jZGS$-^c(Tirm^S_mI5G%4H-niqh5!H{07*naRQilc z`izo(Pn$?VSWAEzZgMaBtp4Cr%$zcxoA@dbru-*QngdTf{V+aX zHonBeCrp3JfPDVd>G*W>&Vtq|PYogAkb1fYQje2EiSwWQmkOewD5*-bT`*W0GOs7& zBWAsndTfTAdS(&!&`CJpi4 zk{SN|n%lgw^jT(;3Fj|f#?r;B@zgVqqh<5P$j)*7Ee=SM9-$$@7&B!aKHcyM4CDv$ z9T*)v=}v53I}M%M-&-PxgcFjSvHeHQ$EsDIW$r$M@MP2N@v<{CLmiPl9GC=Gty3OE>;o+1jI|R_iTpI+8l~}UAeliJ+c$_7iX#zOgj}H%q3DxgHcjQ zrKv0!r?>GiBhdPXKjO?U$@bbg$X zX0q!HvovDhyV0&(!j3H0tWjLK?#<8YW2o05*HlLukcfUdC)TV#0B02JA9|ClBp-ho_A}dx5E=ptI@l_f=8vC+cF%XhoGEYJ z03eb)wCP{%`~e64I)uJ`UVx3f>Ng1@L8@oYTZy&ru7!c(QEG7jMa-k3BXE4zN>&}h zdJUHVRILYp4hk)|9frFO^uEUCOm19pE@ul%J?TW;oAkDa$cYJKERoDuq}7 zupnV(oF_9Ii)IbQpzcrH6nKOw`t=Wc@o3lK(A#)Qr?^RyHEUPSMV(sJk)4xsQ^c9T z7!n+WuXp}{;V%zGVC4$fxNb4Z#YQm)q}UJvpcQL2V!_1OXxr`S8zhhbV@hfoI(Hw0 zjML{ZZ_Oe++`1)GbvLV8$w;6~fv!DYMdFnNmb=ZuI7FyZ(=l_(t9Y|t=Tb=_LJ0Fa zsX5}qXRO4WIco}XA_9>Pdb3kW+V?OruIwoyL?wibuZFL*0OH^YsnS-8Y48<1IXoFg z5N4t#j!ev-ISjA$d=hStH(!BWX;q9Me~!XBtctZC3-IrG0ko>jZc|_;@R(PMiZh#l(n5QgWIr5AhYt z;rPzwum(`rs$?l7KqO*`uT5Ttg$vdf0FmmkhMb^W`Tah)9A}Ffw5z?>(g28?bAgeK zrMRZwKw)#@c}9hBcBN-v@`QmH^Ga7HdFZ5+=8d&CBEWOx)CDwpq(2l&sv4iO&0Y;- zIFEM;>GMRFj+j24q{Qvn90IJ>8i;|zCgA7KzDCpbt+8yu6c$4hYK%6JvJJ^~K#BBP zKaeoHDw-mqLMUL4T*=^-h*B5Pro5= zs3eJ}O~!lXmC4w$aR*C@A+I>QM0TUs{eyCTS3A`|q*hqo`0gcHVe}UksY;ulp*P;C zR-$q6kX3Nqj)AW}hj%6n^lf%Yh%D>@nK?~PN4E!cAL)lPColL;9LqrVda&xFWAN>+-&Bva21I(JLCQ({K)&+p3q`~~+1nMh-#$m7RKDeBu!KITCdsm7 zFb1Af2Re6s1RpIN={p4_Sp-EbnDG1j{MS*mdg?Vs8iikkqU;TtHo}@EGvU%mhtixh z+5nzj%1!GV^Qu*6;pM9c39>RiLm+0rQ8^6%8@^1e{6~}2MbhcQ#Vc^qJ=UpN?EUc+ z3*OwSw3l!$PME$Bo7QdeS!9$aP042q=DdMddvq+58uNijjWcFs=HUL$Lvdi=v3#K- zCW-V$gOYh|3KI8H21a3Vvmyb+UtGS$Y$+h}4K+UI2ai1i_qT3_Z`RFV=5{pkP7TfT$Ea;hAeXxqLecC49JXwq3pYfirx2bUU3wCXejmo6niZ?!PO&efUB zQa6tU14nQ-N$RTt0shI*z|(ZoB+Ww$UIHFo{E|ezYM1{n>9FK^-$C zJCL20&Z|;c4s@BDcm+I1NQy_Ls*g!+2!rEVDW<}0w5(KMz_BrA(J3W0*^w2+#{ z9EY3NEk<-y1k07?YQl=+C(mNU=;^q4{4@|8#5S3t*1YiozjIOkL-krpMkZ{L;TSh| zC?0wEJ|BoUc&M*p9^U`p6KweSGh|&&0)njQ^4wDxHu&Xy6{{s3H12Y+;nQuqFm~ir z=xssl?>P@m$MngA@mBvXH|4n1ezx%4y|aEB2ERT_^;U~uglgV$hrR${D zrVFwzAjPz~qxWWBVd^8~c4OwOad@ol1HQBpBJKl*jKl9+cL25^G`zbJ`uFXQmd%?m zu2j-{YoCp*zyPzEsnu@1hWLWYj0dGV@oeXI*tlr)ElD8pd15aHj$e!=i#Mp|y=cs( zl4@ttA|(C!s^CKcK%Do)-ZfJSF88L&d;Fw1#g4(Rb;rW7{cjoR1vg$KLG>Cj7pvd< zG#~OwwSBN^9%|O8S|;*Ya05t$P-zWy8>4zGvYv=A6G$nCxO<SyvoQlQ}J2ZxU+E`{I&HR-s8M9r>dCO2)75l(IY)aW7m#fSf#J8?u;dqSqw_* z@g7J$#YnX<*S!d>_LLM==M$~P#ZH+$0}r=riS4VWvX3rHT1IJ}N0hBR@Z50x@ZDY* zDE>vH*6l__bR;&t{|;={Kqi%Lh9ru65Eh51RVTN8Xs8Wy7OceTB@`RdIMYgVKwP|(2z{W>G9!IX1r{zPVSfu`T{*<_fh?hw zr1JOdgCd8h56242Xv9**^0CW_i0V@xTO*y6yVnl*$>JHfw|Nuh7b59KKWCDz zkP6$f+&2pV+k!B9(%bla<5n0#$oi%6K+6y-Fx^H^UHatYlxcA z$HN^uJv?~_lndXsWN6UE-Lqb?hCk12Lz<_gl4iZE;JYpJa8Khpw?)SmykP;LG=~#) z+V;h@q!j4XCfy!qCR(<>7fa_)F0<(O*Ngi9A!+6AfFB68vaHa%xvd1@jMbw zoM_mnY1p-GCyRE|sk_;W?$?{+Le&~o8E0eNHB|o+>+Wi?o#M~^o4vgS(Ya^<#&8E8*N)Px$TEskm~+p7vbGy8(HWX}U#s&0{qH3>E zn;z%{yMMY>`Tkzh|f3~RM{8E)QzjeQY-J3ZeClSWhehCj`s zq|YU3aQfUuWD#LiXIKz%u2iW!%P=IB!g97H9bWAB22LD44n6e>yoJe(43r)(f^1fN zv}Pg8Eh1+nWj$tOWa8-Y(|!r0roA?(UyFIMy;$A~I_;~Fi+)=F(OZx~84#ME!6Y;~QZGg?j zXL(R$-;sf?gL-4!TZ2mF-(t^3zM!o;Fn08GMxvQ7h+<-P2R5yphG!mWb=!P%+Gi9} z=)Fxl(0kw%7{j=mMZFXWad%IUtWo0xfEXw8da+}}Y_x9C@V2A6FbPD3gEs;w16_M| z#@IIpl?p&CJtHuHbqSj=@ol)(PGTe-sF!1-#`Q5{!kf%7NEd;(OV7c$eE#yS1Bj5r z8b9b6fT-IUne*g{Uj4xqe75-uHZy~w=&a#Yt_v^r>V~HuZ_C=vlw{fq0B!kvJI0Th z@qYrKX-hxG=<$nT2+ObTC4^P)CPmiVAXJ#p=M^iK!@e(^AxD;A(7CgCb zNYq=O!WTT&GIjD`j2dw3v6jL%N0{*$nc1k*whyjexemRV=1WK{jB)q9cVqdYX*|oX zG)Gk^=0d^{T0oIXAbzs*+n+FO=s4(U_UJ8;Xu;X~4C;;72ll*y*WBn|%HMmjB;X1F z&6xWx-e11nZ^pBX3k82}UBucS7i>sX()$+odl6vmHe?1q`rr!~B0@Et(5TI@Nm7yy zwi2FbNR?Xef-&Gh=2)PCrPP;?x(VgD@YRNyc;vpjZhMC>ArWYS8$3DyM-HE2ET5ga zoLp3^c?Z_7eEXKYt3Jl3Heg~_7>R#Mljt=Bm(N{AawVpDT#-T*zAvu!b|REWK;C>LawKBxUl zW3c1vpI9XZYp?6^z!nmW&FkJlM3|pb-0Z2MQ%rU4#7QWri@-ys@h97MV(f@1KDAKR z_cu_tzmzm|>-{{&41a|MR0%M|v8bk=nr+@{uOd2N6u;})|4khJ>k#8?ER^BOL&ZvQ z%o9zV>UM-OL~Qb#Uk{*N*Eg7BS5}8o`z8o@y+@S`JDUT@7R;FE0r9e(?eOGqcQu>T zq-VZ{#&^}lPn+h#VxmBvI;gg+t6j+Jg{T}felZp=`3S}cO*aXz7w;{bjmCG@Q>!7$ zPUMADArgK4dMeJHzl1uqt8*uum*)Y!Id%qiZ21zVs7O9@tdtk)Cg#XMwK_GicKIB( z$plRLo{)GQd;i#nd+%$33gu%MzY~GcQocQV8U2mOjV8B4nwlF;DxK7Pie3vJXo?d!qqIhqTWB~zY z<}}>7`zO4+Y6H&fJ%CX&#^CwRPcW{+Hr?&P;5R1XuOEMfK0M5)eu{b??(CG{PR~GG zr3zTQXeugKj8{`NfUr=W4Y_^g22^Nq7ka(e8BaX+5aX4^=gOkeL~`80!^hF1&oEYX z8mp$ie#<@}!PAH|-`{x{{`&JMYsRixt$b>b&S+4QPjp23na@RLV!xwK1ls%^p3vFYlODiUv`o0hAzqzaKb(7EcalB2!pWWXeC*=`qZl z^rmXcm%a{OfQRyE7B71rKYaHy8+;O0As#bljKo`I0#x zrNDqfYr9xteJ-Ehad)d`m@sY_;$othsZO95)gHh6{uicCUxce?&atlbP48)n!2@4H zz1lU(R2(1(^n2^KV9wM9zKlekSnt5%d2iyC7aqSQ0MUAj%GGBEPQjLq+w*59s0sE` zR?O_I)vBQDvmNl%6YZHap?b0W?RY60 zG5{&5cC1~$85=i$f!u^7ASwc%ee~`PDYeBtkBHk19zF@*@A%H=17gknJZ}84buk+t zEC_o^Yg5?o$!A6D`_}B$m^pK0{zNjG_D7N@&-ocH{_s@65}(3I1?NNNsOnOMroTgx zNv5m4y?JUYbzR^7;VeAdqR}lO->+)8wenc+vG__;(#&eF+-|H`ItxvkH1Ji8mb6I1 zEB)ub!+3S*IMl3F9k2B5j^=mY30JO*Nr1wV;0er>-by@%DpC&|Jcf%`t|Buto00E| z@v*2^rzYywsexcy5Nouc9gU!UPr3)%6l+ib4jwvzCGW07w#&tW!{kCJP4fl8f9&ZF zbnfvg(&-@3ta{oYBG8pp0!^a{ZZa20Xp$u#e1U;OXThjO-MOz&Eq7Kt$CPt_-UHZa z>?Zq#*n^^2saly)t-Tak_e*$PRQcymuFrEL#A?CrP4jSPoocu2z!E%Y-g}>7=!m)g zv{tny{>45o;H{zkN)&a=XaZ`{rz*pB^kb^M&&;ReMH5ct#vYqP^!MApgCUsWP`p5r>cT!+H3?lFyZ@%NfH<_jA3TB9&kTi&+aW z<@(XK>Im|}rV*5wM$17|?(VsgE%tS-r&`pA)u>e&-+lZx;-bQD4Mb{3t$RBU!>_;W zW7GOrUm!BKGqW&r_INzjjwh~{rEx)V8^!=e<-^WQj2SlzP3~%h-aVdW5{6Hp;uir| zRIC=1aEVFD=+LnT`|*eC7Nd5}YHEG_t@UhVaXqsM7cO4Kb3I>$i^3zkAqtDTg-3+q z)Hf^HOxCi1lI~NaeH=P@9uIeYgQc(1R06f2kZPyBEcZF>ct50^US3S6x)K2-Jk=gu z#rr>2%xqYSo7!U2jWEkB-HFCc>*4#4=D=pzr^{FW7*!m2xQ;0K5|)`+s&wDiFb3VPoqHh~h(FM} z8NOUS1%ZTQRV9`D*8W$BQ*=Ew9W`3_W@X4CPnnTvmy6{bQ=>~FwKoG&?fnQ#?ZoM` z=<)I}C$Kl0+y)dX>cQ`dY5}AszTJhI`Bk0rr zO*YwP-u%gE^I*$TrJxkGK3w%0m=#BjtDKs(V6A_1T=;JDJT`x|EJx?tc@a+25M%J1EaYpNjby)*!#*Q%9>Az@P0dwzrt_41kbYO{ql?OS5& z%1KQ0k}fT40={^_0b>_o*|Lp3uQb#7&Me&3@@}lWO;Skki`Pa>!FOA}z+LSgz>0-a zedR;G22;yFz&jIWqjk5ZS(D9zJrYH##mGr-W9!S^ZDDBvYbZ%E!m!dHqX6@gZq!)*i3;2;kwedDVKkFT3b9=-2E5k z2U1DY4S&W-6m>8!-{gBJ-b&gbD#Ru7Qtf!O!vpwi#RTrRDWf{$WK)N;7ZXswU0>u; zjTRf@tv1-q%Ervu_|%%+z!z+IN2of9^TVJ^sELIGX>)hO+EY&h2{$NX}BVQ^7=W z5+q{Q7)wjk0*L-C?0ec7UmrZp4RR3K;%Z9KO}+!%l=JEvrov)Fsp)v^@%yo9={N+i z-hO4{MB=3MdTTCLulm#{g(w_Bj>Y&&XBVgLXj07*naRI%Z``2lqzirviWp#>~U zSU^07P(45VvIlPr8i@{FJ7VI@NY zM+U2#*Q9-xw7>a&&+jb|1BQ;rFW>&;%YSA?jM+J;Q@;lGZGDHg5G;lC5$lZI;{`@$(ku)%!|jlA?Wc#4nVDQfSF(a#dl_B|N+2^}4F$5UsZXT^m3UBYnOWl- zN#z=U1H~P21Bg=WXx;W6Y+W@8R+=1BU~pP-D=JK0N^@=4zCV{jYL$b?yLtA-&X_oI zFw)X9d^1JMv`cD`lGMzVgd{|Thp`sD+$qQ}0ib28KE&e5bMa8uj(B_O$U@uv`al$D zVN!zHqOSqfgKe7QlXoYuVRB_6d#aOe#H{x)i`vpghWo@V zMWJc(@|-ynSW^S?(y~SfH*qmj*+hMSXxJ{FovH;8S!k?wY~WjXa&Ye(8gUl}bb2N@0J*$F8 zly0kPOOZ|~3BNytoU|*&4i5~e)L4pcupLmMpf^ED+}{?C^DHA#_4PEKFWD-*22YO6 z<|yQ5tih!pUQ*w*FmkMzgI3klG%CX>A5J(cu^hK8_~ztpPbX1mqXeH7(G;hcjvj{4z;-_Wp8UBt)5 zvUHD|QJcj*vqY!#npbKH6Na-)))@g6S!*t^65bGAw?q}cjjLw2hmQoDMnexf>ctKrjClTo8` ze5nJlf*@|&{Rf_SegvsS)zVpv#FFpkR!#fDHkklRZDMkATz?yQ zNNNQKSuuR!*RW+cD`Id1XgG&#Wnl_iiZ*ndD{|$nFh{Hms3yqhpp(M8~MjQ(SR{U_DDvH zLCLl+$CaP^m8i~a)mloib-#d|7pk?+*aA2*5nnzATUJg&vxYTG4I&}2UKzg_OAE9c zVSLDuf#&z$gGFyoV9!NX#oqxU0`u)iO)UseA!#YuZTg(0SpVLKzN%Bkd#G_kx)Uv0 zHO3Dg&S81sMK!n3retjT`X}^wbvkHbk0F4J4bieroi8tYPbsMf9)aW9xnd=cE$&_^ z=FV+UytJok4TQwz=1QrBjl2x4&_i+MdJI8U1Gxn9>~@c22{cIAsq5q`zmhr=fvAG! zor>0SO{8)SwnEa!X*;@#Ny_A@Ub|=%o@zrRu;c+OVu8t&rS^9R{yL^ja`H8ydZ7J- zm_3!8rV4A#U|H!$1ojz1{$i>yUE&_jYQhvBKh8d=^Sjx%;Hp#@hgyVkKV1magAt)?h zON*J6gU{Zd&ZiX?QMN38P9PdGaVZup`4IZxASmQN6IP{|;Ouezq9p(JG%_=<7a@7n zfyuQxNRfAZ4A~RNN+!Ktovlh`1XrnyQ39 zXhcrhHs$h}ZooBiG!=$k{xeF@FW2--=yVOCczv-m7E7XxzKl!^=+_yGCJt1ccE$J3 z@lEjgWk1??8x9x^yueLeAfe70Hf@BNQ%9kET#PT2aJvcbt%8g=3RTdOdt%bG1^ALU zPe`!8^MxeAK#6-PcFdVQ48wXoU8M0L_zroOdkmSu#zRm}xtH3ph|(qo9`Z0dzf>+A z?+PSm7OS?xYjlw!YpsVjj|2h(4@sV&iWL|hQV$*~4S;Nh$VLsA1wb2~cI*UPDJe{y z!JYfPa(>U#fWuxah!7eoRcyEgW?O4*DhN-9kk}Ny)(^G7+65y}J|?n6UL-)Y_S0|B zliH00SRiXo8P5*LL`?Z|m^f}2?rV7$GBUDCB%QYkh|>PONbaXfkke-`V%(&;IJk$# zc+xC1KO+$JcteNwz}utx6bc@mXT%$MQV*XO22aDOd@!q=g_-H7v`~cIKg!ELyS_-+%K1U@=2a6MfVSMP}iV6`AhDYlEN1{BiwxE)@BI zG|o-&?74YvygqRWmaX~(An&(PLzY<@s-%a`=vLCt_DAxu_lof4`SwQ_d)Fc*IBpQR za1@2ulO%=Ks=;Q(^XwhYQEv`F+}pfP@zhsQJ~omMSu3Kd)0c|5^H+2qG?kq|V^E;q zQ6>>ZqO8d*vW4+Ty9d#;`!lFpo0tDmA474HZzo3*s)g2@Bp*%txpX-ZA8p=-k2h~a zj@`k?val|FMgRp&T`o)?_X^(X-}wgch`eiBkNwBaqVJn;ePlMB0L{>ZVf;hIZft$#)XS; zo8tq0NUQyqNuSf?pK=w;VZp?Kc=plz*ryg1 zaTceMIKXoQr{c_sb1avdB#~H9kpLz;GgIhFU|`j#CKG#KvJg+5IghPh?!vaOzJ;ACGJ>p3;`+>LmXK$FJHrWEhz-kUzk#kD z?pF_vzoC~_8ZTV)8AeW9f$Xeo7}cqW>elcqLbBW4Iln1MM_xcK^YIit7d{}oycFGV z6HM0Tv=@q3Hc*4{@Va$iqWNU3+hKm|_~s>$R?$;?5~C4WR}+wa`V8|6Nk+4zIFrOs z4n|`N=vw-j8ib9CMR=X}q=4W@;BgVj60hefEyo48J?Qz|qnJ6e527PNRgQDxpc1jT zl#)4M)O>8&vWsn$!EDrcUR6_{g0d9kv{=~GpEeJ*Li4*Dqf*5<-YHC0n5UVf8-bQj z=@AdE>6J%ZO0BIYR{;fN+1M+$2MI~Z_;cSOe6#y!{Jv*DTgzGv5*qf3OBj)TPy)flAdYV%F$> z==>O$Mxp_EzM!Wj(!cz}ukhB?<*;8*gFe*8l2ycsr{$pDL##R?JBP|EU=9yO?Hbk4 zs9{~yt5XA2Dpx>ML^umwkUxnrOwB129bPH;N@~+?ci`gXt2ln*4E7&9io?fF!FfG} zqmF>1=0s^FBCBZ4$b!yfz>wb0VDj*uEQ?bd2CYY#-e&3gZ5Tas6?-NlS!|kQe;(7) z8K5)dDrskiA@%qY74iiSut?CB5mu|46j@^hEmRDw;N z;5$D40H%$28MUib@B>NjpNc5d2&t^Iml82@`buot`W@qL1{?Xpcp|yD1h--dRaAvR z-wg(sY(a>O3`cZiIKsn2SvPy?&rA&zi11QlOzL@5UwCvmZZ+JbN0q&?G5UNj~~A(l2~gjQL0p=0QMs1w_?fB3Xhvz{}dA_@oi@ zP*eIwx)av$5De@4EQa-c2EkT8D8#raA)&~RLf6;d@5Q8f@8kD9WF$(^1qJ#>RSJo~ zn?&&TE9~Uc=_4@FmscIqr|mT)7MBfS(KFDI>p*ZVEjbqcF4h%|fRpD&-G((Ww9hl> z`D{C;21PhWc&6#TDJOi!k`M9Dn$O`Tk9shljo~B8!pfqQitLp4aOK47KpGYN70q{G zi;yZcUI~+}Bbn)}07jN2Tjk2IRj$aTj%q0RPFW%UxcvZ9LBvdFMS@U)QNQ$ht24+We;vc>O*^o4_aC@+DUmrz$sZ$` zhy-(~#V7Olr}JpRA(p`hGR^cJ1_%n#kU35&QBe>a6M=_X-ihu{J&Xu+> ze6hM*S02`V@(t!J--J^~&oF=+)pT9I@Kf`5sCitj{SzhS*bsF+3rjurAIhkDgQd{Q zvmtxUkQ9&N_81IAmTT99DLD8BGrgp({`&wVK3TQUa#K^0e)0^wxj7!mY#}dSf|7b_ zAkxp0N-Ihl2@$MAbc3N%aQQKiBq|Q0tSb5&Zmuym7ftfXW*}&KS6vKwxf41)(n@o> zIT2)IveoJkL55S)Gw|K72k_N*d+^iVqd0RZ0igFHab+OYWaQsfACylTDSUn^0~N*K zNbHkT6yiTH0P%5AEM28T>*i?Fsxiu!i}LLWH99ACE5J&PKsSEzBj&B#jH3rn0%jAl zfNoS*&_QREAbYPW=@&*J^*9YVp{t$)tzQ1jTuE9uof?4Irl&X~fBgIl7uIy4G~X z67noFHe{L9ny3m;os8f>^2(^&pa%MMdlX$Ce*iI&yvGk+z9B8DC9a)YL8t%tnM?TV z$QkTEb_S=;T>&*$O0zrJZ?R_McAPzN0U!xz4Pe?yqfR;LA%aD--m+7dBmK~L&9FCm zJ8ek9FLlByJtBqIT>?p}%vF}6r`&g2*Mps&|mWDounTpfOEvW)3rTiXxXtM1m>xA(vT0(G|+! z=|}Fxb5FKLi^g?)JV}6wVS!krPAW7ZpYn+^oLNY9IFXr^!;-Rul|-IpDiR0}2|{Ra z5c4z_yhzf}M+mM%zbBx6`|AOG_}RDkV)q_6l2U*GGYbe84ji4H6-wk~{h*|t9t-E? zpZ;HaR~qBSS%#l)4ts2`?Y*2mvpIItkThu$T1rz8sF$FKLllJgK~)u~I8@3ZRVqIU zv_u6Y5cEe&|5V~AMIgjcRTN4?s}g9cs?9;tT${}vN%qLDkM;WY_(Sje&DgV!lkB!M z-Ayx+wTXAUp839K-s5?%bF5WO>JY2kea-hosOw%w>e#Yu>w3Uqdxx3jGI?K%lRDn} zyEqca{YJ;CC+0eLW*Vu%L7Hfzyfo;xOi%n66R$i-efG{1t8t$+6K(6iBBFiYgl?_o zNC*vtohOkT)kac-jMtzan>P+{F3l%yxgOiD95`!g4oN5CiMZLP6Kr)=%vs22@CK2N zu7vYZ+ZB&W$mR-odGBF7wR1O~-nkotM~8uu%`Q1Lav)H;!DE&tgd}QSp_@QC_qt3B z?LcDaw;te}+dYr=-zZww{1k?D6*Y|KNsG3vS+N+R>-u5%{Y?D75vlX`0muU+A|1=Q z9A=N7KyGTPLeW!U_<>SkzlY+L|(IsRLP|1T+P(aos9>;M&dj;B{MY^`-%C7 zVOc2_ZNZPNsVMlw;Rl@b5c*`j%U^R#`R|6?5L@*n5$?GQhEGW()-wb=)yK%Y;Upy_ zZ6rx2U4ySVjDfx`Y`kJMHm_feb*p>O-`B-q6S85NLKaun)*tj0bJ-k{vsp~XQ#dwq zitVP?4j#wBqr(^)n}D67d@acy9!(Y`FxSxqs^6f54ow%JUZ&;zL75nN6p1sx0TQY6 zs4L}~)6qKc8PPKE5H!6X6`QSlk~+TTW<&@2;iC-4MND5@h{S#S0OYwkQfZ}3hNV${ zdYW?N}>=Ds*^pO|0@Dgtzrc2J)ae!6?efGyoOrZFwe$P ziRF<8Olm?8x$0crLXwHN8e(6GTJif}g#v8bGzBfLG$k9yRZCR$L28NYqU3A_88Y6P z#iju&8XLp#`Pe;YCVIY#QvG(6t|Z{7+bhoQl9|azF@2c4Q*tcahsUd~ymk%{TCqj6 zZP)=Ts)$zsj%5i$M|kB*gnE0~zB^w?Vj*B@bk33h5F4-#?~g9bM3yvACZSsTX{mWdV@eiSf+4ar936_@jq8)$A0N?Bbnj&p$`yyyW^BZ*WK>vST8My$45MN{Xe;19nKLJzUWOQV()Gf2`& z#YmKdtGXqwwDFRK?n1lm@7z{+btI!3_fS%Xz`$`5s$ZwUcXkrx%!@KT{znu}KjS2| zvxxL$E_g!ztil~B8*4(W`)(2Gx(Axk#p)VVC1LBjWua-+N`$(oMFG9Lcy4DgKw3Hg zs_u$o8|fMf@dQhwVlqi;4Z`pdn+H*t{e2}d{4mlZuG`;e(OuC`KWi$_YF>?C*G*ce z^+VDZx*nRpN3Aqz2oexZ18pTIC_?0Js`saNjonRlMU6@w;0skYo@2|CK|CUg>3>(| zCZ9nexznjTcmI~#R>Z5G-4EB)bFAxj5$^p44BvqAJf%%`j?gp_?Cd~OU!TeiCtK$& zk~-d-UwQ!Y0*Qv+Rw~F%Od>sY5_TrT%>adAQZg=(PyRtBMjl3bbeHF*xN@M5RC70? z?)}yXn*3W4Yl;d*84dTUU?66U%%sB*|JihfTQrYv~U2_-`va+=Z%tr z3%bv`la?-k>eQNDC?GRFLHXCj9XY{SMcT>y?6XLp`ZEDu0iwKJ4LAD3((AN4{*r$*UV@H;oe?Yu{H*;{6FwIiv`ir z29QS@Q5=d`{Bk~z?CA+)CMHnH<>pJIV*a4aO#B+@vELz|9QG`Rs~+mX3fZZ*p$zNhC*}bEHJQ+Hg11D+Rnpw3pxa zZhWKjU5Qt{QU{QZAzfX1FJRrCD(aU_9h(sB{-g-C-UcJMRoP=~Ni8!HX5%;z zi_wH_9_o8B?40vGMav679w5<$lj~nD_T>&#uHJpdHvy)6ke&)P>OrrbOG4d@(#51z#q99 zfwmijKk`8sfvcctl!B_XTSZcG7a7Ky9td!-GtjYuxf~wJzQ8QOi@8Pf0W|od%FL1b zXz@6&M5{Je$d}Ef2q3R&qg)?db?+)=vczbEa*#@MnTqPlq|wu?z~p*Zc5xWRxqY&f zc?H?{eiXAuP?$aqfMO4C=Fkud#h^E@ff3vQU*tW)AKnTxxCxrBCjByCm^PsF3Su5L zVVc4pjlgPeht=8&-SR0y((U83$XuN_a{~+gY#o4hRA!Fczx)8?1rj~0oHC=aaY+gO zg?Jo=L=xp}R!T}ngOGxX?TGzmV$U&s=n=1!$5G6mly+_m!Wcs_HHBg}4j=_hWMNmR zJ-iLgHX%(PU`GHn!)j}TrguZrR|#LZ2STibW=5)%B)j(fvbn1cNg5%9W}3omYGU^I%p5(G{o6^6v%cMw1F{pAZF?_=YsoaKmjxlGas#Z(f7K}-EE z-PjeEVbepe>g1_|JPn5_rqf*RT*_u?hzr%TsWumC6Klpa=drr-#P$05<|SqB)Ur(o zC{6)8X-(6F?)UTP05cqhNkxu<02gAqolcneTTY;@AlHwt@Ju`4R{n+a3~; z-fzP$QlB^@wrvZGSia%qczD3Xd+g*myLJYFiU>>U=E1LGk&SaI>8&!n6uYOOs@vp% z;G*fQHmL}Y8YE~GfwwFkRzl#R|1)^W5TZ^KZu+&oWhqQU#t+|( znWK+XB@mjgxI@I&|AJPK(gP@SpNh`B-5D-a$^67F+2SCT40h|)AeoN z4{7V<30NI5v~Jw+wov95ZLPf<-AF>z+a})g>p#29CCqu(+^M#SA37v+#YC)0$oW&K~$emOFB|xfvyg;Zg|(FqsA7$e3w7r zNT1}fL1ae9Y+;3TdFJ)okr;e}I7F`mB8np_`nMkjBsG;Lid}2Has$U>E*V?sG9(th z0%ZSDyXRyQGy4yyzRac4aXIoFb%o$e2rmJl64_T=^;HpF^$04(GBvlL2A^$PHgi8e znxMRFIE#fZ)8#W8t$>qyOy23tzW<_}%a(;1Fyz$1+mJl|C%5py3!th&Emqz9EPVc( zxpP%T8sw%@=PHvrMNs|srED<1)8XVe2V9Dk&y&}MVk%V<{(vcRiCPjOHU3Itehp!Ml+y4R0pawEjuWL|}6IB2ZKje=_nM}K^ z(k=z`D8iKN+){cDR4tRAi4!qK^HNL{=U$b=uiOfpJ&f*LK^P^XtmqoidF>N0t?Qk7 z>oO&EbGJC^+~v^pm%Memn`tF{ho3D;yeT zZZ1S}xZasl)zBVB$bT)uv8y%Bw@yNKa%s%vW0|giEDLDUl}hmtax*U>HA?k&?$Fmp eeHZ85=l=lG + + + + + + + + + + + + + + + + + + + didvan + + + + + + + diff --git a/web/manifest.json b/web/manifest.json new file mode 100644 index 0000000..dd7be18 --- /dev/null +++ b/web/manifest.json @@ -0,0 +1,35 @@ +{ + "name": "didvan", + "short_name": "didvan", + "start_url": ".", + "display": "standalone", + "background_color": "#0175C2", + "theme_color": "#0175C2", + "description": "A new Flutter project.", + "orientation": "portrait-primary", + "prefer_related_applications": false, + "icons": [ + { + "src": "icons/icon.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "icons/icon.png", + "sizes": "512x512", + "type": "image/png" + }, + { + "src": "icons/icon.png", + "sizes": "192x192", + "type": "image/png", + "purpose": "maskable" + }, + { + "src": "icons/icon.png", + "sizes": "512x512", + "type": "image/png", + "purpose": "maskable" + } + ] +} From ba83575aafad8f53e88ae283d1f942d9673c00ce Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 1 Jan 2022 14:12:44 +0330 Subject: [PATCH 050/273] D1APP-31 basic ui + audio recording support --- android/app/build.gradle | 3 +- android/app/src/main/AndroidManifest.xml | 2 + lib/pages/home/chat/chat.dart | 135 ++++++++++++++++++ lib/pages/home/chat/chat_state.dart | 3 + lib/pages/home/profile/settings/settings.dart | 3 +- .../home/profile/settings/settings_state.dart | 6 +- lib/pages/home/profile/widgets/menu_item.dart | 7 +- lib/routes/route_generator.dart | 10 +- lib/routes/routes.dart | 1 + lib/services/app_initalizer.dart | 19 ++- lib/services/storage/storage.dart | 3 + lib/widgets/didvan/app_bar.dart | 5 +- lib/widgets/didvan/badge.dart | 2 + lib/widgets/didvan/scaffold.dart | 45 +++--- pubspec.lock | 113 ++++++++++++++- pubspec.yaml | 8 ++ 16 files changed, 325 insertions(+), 40 deletions(-) create mode 100644 lib/pages/home/chat/chat.dart create mode 100644 lib/pages/home/chat/chat_state.dart diff --git a/android/app/build.gradle b/android/app/build.gradle index 52a5999..a74c195 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -26,7 +26,8 @@ apply plugin: 'kotlin-android' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 30 + compileSdkVersion 31 + compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index 8494439..799c3f3 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -1,5 +1,7 @@ + + diff --git a/lib/pages/home/chat/chat.dart b/lib/pages/home/chat/chat.dart new file mode 100644 index 0000000..59cfbe3 --- /dev/null +++ b/lib/pages/home/chat/chat.dart @@ -0,0 +1,135 @@ +import 'dart:developer'; + +import 'package:just_audio/just_audio.dart'; +import 'package:path_provider/path_provider.dart'; +import 'package:record/record.dart'; +import 'package:universal_html/js.dart' as js; +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/models/view/app_bar_data.dart'; +import 'package:didvan/widgets/didvan/scaffold.dart'; +import 'package:flutter/foundation.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_vibrate/flutter_vibrate.dart'; + +class Chat extends StatelessWidget { + const Chat({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Material( + child: Stack( + children: [ + Positioned( + top: 0, + bottom: 56, + left: 0, + right: 0, + child: DidvanScaffold( + appBarData: AppBarData( + hasBack: true, + subtitle: 'ارتباط با سردبیر', + title: 'رادار اقتصادی', + ), + slivers: const [], + ), + ), + Positioned( + bottom: 0, + right: 0, + left: 0, + child: Container( + height: 56, + decoration: BoxDecoration( + border: Border( + top: BorderSide( + color: Theme.of(context).colorScheme.cardBorder, + ), + ), + color: Theme.of(context).colorScheme.surface, + ), + child: Row( + children: [ + const _VoiceRecorderButton(), + Expanded( + child: TextField( + decoration: InputDecoration( + border: InputBorder.none, + hintText: 'بنویسید یا پیام صوتی بگذارید...', + hintStyle: Theme.of(context) + .textTheme + .caption! + .copyWith( + color: Theme.of(context).colorScheme.disabledText, + ), + ), + onChanged: (value) {}, + ), + ), + ], + ), + ), + ), + ], + ), + ); + } +} + +class _VoiceRecorderButton extends StatefulWidget { + const _VoiceRecorderButton({Key? key}) : super(key: key); + + @override + _VoiceRecorderButtonState createState() => _VoiceRecorderButtonState(); +} + +class _VoiceRecorderButtonState extends State<_VoiceRecorderButton> { + final _recorder = Record(); + final _player = AudioPlayer(); + + @override + void initState() { + _recorder.hasPermission(); + super.initState(); + } + + @override + Widget build(BuildContext context) { + return GestureDetector( + onLongPressStart: (details) async { + if (!kIsWeb) { + Vibrate.feedback(FeedbackType.medium); + } + await _recorder.start(); + }, + onLongPressEnd: (details) async { + final path = await _recorder.stop(); + if (kIsWeb) { + await _player.setUrl(path!); + } else { + await _player.setFilePath(path!); + } + await _player.play(); + if (kIsWeb) { + js.context.callMethod('playAudio', ['/dash.mp3']); + } + }, + child: Container( + color: Colors.transparent, + height: double.infinity, + width: 52, + child: Icon( + DidvanIcons.mic_solid, + color: Theme.of(context).colorScheme.focusedBorder, + ), + ), + ); + } + + @override + void dispose() { + _recorder.dispose(); + _player.dispose(); + super.dispose(); + } +} diff --git a/lib/pages/home/chat/chat_state.dart b/lib/pages/home/chat/chat_state.dart new file mode 100644 index 0000000..19ff935 --- /dev/null +++ b/lib/pages/home/chat/chat_state.dart @@ -0,0 +1,3 @@ +import 'package:didvan/providers/core_provider.dart'; + +class ChatState extends CoreProvier {} diff --git a/lib/pages/home/profile/settings/settings.dart b/lib/pages/home/profile/settings/settings.dart index 27a65fa..3025044 100644 --- a/lib/pages/home/profile/settings/settings.dart +++ b/lib/pages/home/profile/settings/settings.dart @@ -133,7 +133,8 @@ class Settings extends StatelessWidget { okText: 'تایید', cancelText: 'بازگشت', accentColor: Theme.of(context).colorScheme.primary, - okCancelStyle: Theme.of(context).textTheme.bodyText2!, + okStyle: Theme.of(context).textTheme.bodyText2!, + cancelStyle: Theme.of(context).textTheme.bodyText2!, unselectedColor: Theme.of(context).colorScheme.text, blurredBackground: true, hourLabel: 'ساعت', diff --git a/lib/pages/home/profile/settings/settings_state.dart b/lib/pages/home/profile/settings/settings_state.dart index 0f0e973..617c835 100644 --- a/lib/pages/home/profile/settings/settings_state.dart +++ b/lib/pages/home/profile/settings/settings_state.dart @@ -7,12 +7,12 @@ class SettingsState extends CoreProvier { getSettingsFromStorage(); } - List _notificationTimeRange = []; + List _notificationTimeRange = []; String _fontFamily = 'Dana-FA'; double _fontSizeScale = 1; String _brightness = 'light'; - set notificationTimeRange(List value) { + set notificationTimeRange(List value) { _notificationTimeRange = value; StorageService.setValue( key: 'notificationTimeRange', @@ -21,7 +21,7 @@ class SettingsState extends CoreProvier { ); } - List get notificationTimeRange => _notificationTimeRange; + List get notificationTimeRange => _notificationTimeRange; set fontFamily(String value) { _fontFamily = value; diff --git a/lib/pages/home/profile/widgets/menu_item.dart b/lib/pages/home/profile/widgets/menu_item.dart index d792327..085f6ae 100644 --- a/lib/pages/home/profile/widgets/menu_item.dart +++ b/lib/pages/home/profile/widgets/menu_item.dart @@ -28,7 +28,12 @@ class MenuItem extends StatelessWidget { color: Colors.transparent, child: Row( children: [ - if (icon != null) Icon(icon, size: 18, color: color), + if (icon != null) + Icon( + icon, + size: 18, + color: color ?? Theme.of(context).colorScheme.title, + ), if (icon != null) const SizedBox(width: 4), DidvanText( title, diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index ca92ad5..159efcf 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -1,5 +1,7 @@ import 'package:didvan/pages/authentication/authentication.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; +import 'package:didvan/pages/home/chat/chat.dart'; +import 'package:didvan/pages/home/chat/chat_state.dart'; import 'package:didvan/pages/home/home.dart'; import 'package:didvan/pages/home/home_state.dart'; import 'package:didvan/pages/home/news/news_details/news_details.dart'; @@ -73,7 +75,13 @@ class RouteGenerator { child: const ChatList(), ), ); - + case Routes.chat: + return _createRoute( + ChangeNotifierProvider( + create: (context) => ChatState(), + child: const Chat(), + ), + ); default: return _errorRoute(); } diff --git a/lib/routes/routes.dart b/lib/routes/routes.dart index 8089c54..ae38e38 100644 --- a/lib/routes/routes.dart +++ b/lib/routes/routes.dart @@ -8,4 +8,5 @@ class Routes { static const String radarDetails = '/radar-details'; static const String newsDetails = '/news-details'; static const String chatList = '/chat-list'; + static const String chat = '/chat'; } diff --git a/lib/services/app_initalizer.dart b/lib/services/app_initalizer.dart index ac76df2..0d628fb 100644 --- a/lib/services/app_initalizer.dart +++ b/lib/services/app_initalizer.dart @@ -1,15 +1,22 @@ -import 'dart:io'; - import 'package:didvan/models/settings_data.dart'; import 'package:didvan/services/storage/storage.dart'; +import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; -import 'package:hive/hive.dart'; -import 'package:path_provider/path_provider.dart'; +import 'package:hive_flutter/hive_flutter.dart'; +import 'package:permission_handler/permission_handler.dart'; class AppInitializer { static Future setupServices() async { - final Directory appDir = await getApplicationDocumentsDirectory(); - Hive.init(appDir.path); + // late final Directory appDir; + // late final Directory appTempsDir; + // if (!kIsWeb) { + await Hive.initFlutter(); + // appDir = await getApplicationDocumentsDirectory(); + // appTempsDir = await getApplicationDocumentsDirectory(); + // } + // Hive.init(appDir.path); + // StorageService.appDocsDir = appDir.path; + // StorageService.appTempsDir = appTempsDir.path; } static Future initilizeSettings() async { diff --git a/lib/services/storage/storage.dart b/lib/services/storage/storage.dart index ec01ccf..0f1a673 100644 --- a/lib/services/storage/storage.dart +++ b/lib/services/storage/storage.dart @@ -1,6 +1,9 @@ import 'package:hive/hive.dart'; class StorageService { + static late final String appDocsDir; + static late final String appTempsDir; + static Future setValue({ required String key, required dynamic value, diff --git a/lib/widgets/didvan/app_bar.dart b/lib/widgets/didvan/app_bar.dart index 3daaf44..d4ca0df 100644 --- a/lib/widgets/didvan/app_bar.dart +++ b/lib/widgets/didvan/app_bar.dart @@ -9,9 +9,8 @@ class DidvanAppBar extends StatelessWidget { @override Widget build(BuildContext context) { - final MediaQueryData d = MediaQuery.of(context); return Padding( - padding: EdgeInsets.only(top: d.padding.top, right: 4, left: 20), + padding: const EdgeInsets.only(right: 4, left: 20), child: Row( children: [ IconButton( @@ -34,7 +33,7 @@ class DidvanAppBar extends StatelessWidget { ), if (appBarData.subtitle != null) DidvanText( - appBarData.title!, + appBarData.subtitle!, style: Theme.of(context).textTheme.overline, color: Theme.of(context).colorScheme.caption, ), diff --git a/lib/widgets/didvan/badge.dart b/lib/widgets/didvan/badge.dart index 6446337..855b36f 100644 --- a/lib/widgets/didvan/badge.dart +++ b/lib/widgets/didvan/badge.dart @@ -1,3 +1,4 @@ +import 'package:didvan/config/theme_data.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; @@ -24,6 +25,7 @@ class DidvanBadge extends StatelessWidget { text, isEnglishFont: true, style: Theme.of(context).textTheme.overline, + color: Theme.of(context).colorScheme.white, ), ), ); diff --git a/lib/widgets/didvan/scaffold.dart b/lib/widgets/didvan/scaffold.dart index 51fac9e..77853d6 100644 --- a/lib/widgets/didvan/scaffold.dart +++ b/lib/widgets/didvan/scaffold.dart @@ -15,29 +15,34 @@ class DidvanScaffold extends StatelessWidget { @override Widget build(BuildContext context) { + final double statusBarHeight = MediaQuery.of(context).padding.top; return Scaffold( - body: CustomScrollView( - slivers: [ - SliverAppBar( - backgroundColor: Theme.of(context).backgroundColor, - automaticallyImplyLeading: false, - pinned: true, - flexibleSpace: DidvanAppBar(appBarData: appBarData), - ), - const SliverToBoxAdapter( - child: SizedBox(height: 16), - ), - if (slivers != null) - SliverPadding( - padding: const EdgeInsets.symmetric(horizontal: 16), - sliver: SliverList( - delegate: SliverChildBuilderDelegate( - (context, index) => slivers![index], - childCount: slivers!.length, + body: Padding( + padding: EdgeInsets.only(top: statusBarHeight), + child: CustomScrollView( + slivers: [ + SliverAppBar( + toolbarHeight: kToolbarHeight, + backgroundColor: Theme.of(context).backgroundColor, + automaticallyImplyLeading: false, + pinned: true, + flexibleSpace: DidvanAppBar(appBarData: appBarData), + ), + const SliverToBoxAdapter( + child: SizedBox(height: 16), + ), + if (slivers != null) + SliverPadding( + padding: const EdgeInsets.symmetric(horizontal: 16), + sliver: SliverList( + delegate: SliverChildBuilderDelegate( + (context, index) => slivers![index], + childCount: slivers!.length, + ), ), ), - ), - ], + ], + ), ), ); } diff --git a/pubspec.lock b/pubspec.lock index b15174a..2a8196e 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -8,6 +8,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.8.2" + audio_session: + dependency: transitive + description: + name: audio_session + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.6+1" boolean_selector: dependency: transitive description: @@ -85,6 +92,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "3.0.1" + csslib: + dependency: transitive + description: + name: csslib + url: "https://pub.dartlang.org" + source: hosted + version: "0.17.1" cupertino_icons: dependency: "direct main" description: @@ -98,7 +112,7 @@ packages: name: day_night_time_picker url: "https://pub.dartlang.org" source: hosted - version: "1.0.3+1" + version: "1.0.4+1" fake_async: dependency: transitive description: @@ -177,6 +191,13 @@ packages: description: flutter source: sdk version: "0.0.0" + flutter_vibrate: + dependency: "direct main" + description: + name: flutter_vibrate + url: "https://pub.dartlang.org" + source: hosted + version: "1.3.0" flutter_web_plugins: dependency: transitive description: flutter @@ -196,6 +217,20 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.0.5" + hive_flutter: + dependency: "direct main" + description: + name: hive_flutter + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.0" + html: + dependency: transitive + description: + name: html + url: "https://pub.dartlang.org" + source: hosted + version: "0.15.0" http: dependency: transitive description: @@ -245,6 +280,27 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "0.6.3" + just_audio: + dependency: "direct main" + description: + name: just_audio + url: "https://pub.dartlang.org" + source: hosted + version: "0.9.18" + just_audio_platform_interface: + dependency: transitive + description: + name: just_audio_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "4.0.0" + just_audio_web: + dependency: transitive + description: + name: just_audio_web + url: "https://pub.dartlang.org" + source: hosted + version: "0.4.2" lints: dependency: transitive description: @@ -314,7 +370,7 @@ packages: name: path_provider_android url: "https://pub.dartlang.org" source: hosted - version: "2.0.9" + version: "2.0.11" path_provider_ios: dependency: transitive description: @@ -357,6 +413,20 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.11.1" + permission_handler: + dependency: "direct main" + description: + name: permission_handler + url: "https://pub.dartlang.org" + source: hosted + version: "8.3.0" + permission_handler_platform_interface: + dependency: transitive + description: + name: permission_handler_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "3.7.0" petitparser: dependency: transitive description: @@ -398,7 +468,28 @@ packages: name: provider url: "https://pub.dartlang.org" source: hosted - version: "6.0.1" + version: "6.0.2" + record: + dependency: "direct main" + description: + name: record + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.2" + record_platform_interface: + dependency: transitive + description: + name: record_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "0.2.0" + record_web: + dependency: "direct main" + description: + name: record_web + url: "https://pub.dartlang.org" + source: hosted + version: "0.2.1" rive: dependency: "direct main" description: @@ -495,6 +586,20 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.3.0" + universal_html: + dependency: "direct main" + description: + name: universal_html + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.8" + universal_io: + dependency: transitive + description: + name: universal_io + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.4" uuid: dependency: transitive description: @@ -515,7 +620,7 @@ packages: name: win32 url: "https://pub.dartlang.org" source: hosted - version: "2.3.2" + version: "2.3.3" xdg_directories: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index e84d6af..395295a 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -48,6 +48,14 @@ dependencies: cached_network_image: ^3.2.0 skeleton_text: ^3.0.0 carousel_slider: ^4.0.0 + flutter_vibrate: ^1.3.0 + hive_flutter: ^1.1.0 + # flutter_sound: ^8.4.2 + permission_handler: ^8.3.0 + universal_html: ^2.0.8 + record: ^3.0.2 + just_audio: ^0.9.18 + record_web: ^0.2.1 dev_dependencies: flutter_test: From 4886fd8105f38fe25945d9bad661e2bb565b0ecf Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 1 Jan 2022 14:20:22 +0330 Subject: [PATCH 051/273] D1APP-20 icons updated to latest export --- .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 10206 -> 10118 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 5787 -> 5713 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 15222 -> 15122 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 25420 -> 25287 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 35085 -> 35379 bytes 5 files changed, 0 insertions(+), 0 deletions(-) diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/android/app/src/main/res/mipmap-hdpi/ic_launcher.png index 1c17c66c27664a9c8c394e623eb2f29648476330..549da667184dfdc479c520688c0e52f198bbd843 100644 GIT binary patch literal 10118 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 literal 10206 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 Dh{p00 literal 5787 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 @@ -99,6 +114,14 @@ // Service workers not supported. Just drop the From 4a54b00a3bc945062d5002b8e7b3ffc858d81edb Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 29 Jan 2022 13:58:08 +0330 Subject: [PATCH 162/273] service updates --- lib/services/media/media.dart | 19 +--- lib/services/network/request.dart | 22 +++-- lib/services/network/request_helper.dart | 113 +++++++++++++---------- lib/utils/date_time.dart | 41 +++++++- 4 files changed, 117 insertions(+), 78 deletions(-) diff --git a/lib/services/media/media.dart b/lib/services/media/media.dart index d8c77f6..de0dba3 100644 --- a/lib/services/media/media.dart +++ b/lib/services/media/media.dart @@ -1,24 +1,9 @@ -import 'dart:io'; - -import 'package:flutter/foundation.dart'; -import 'package:image_cropper/image_cropper.dart'; import 'package:image_picker/image_picker.dart'; class MediaService { - static Future pickImage({required ImageSource source}) async { + static Future pickImage({required ImageSource source}) async { final imagePicker = ImagePicker(); final XFile? pickedFile = await imagePicker.pickImage(source: source); - if (pickedFile == null) { - return null; - } - if (kIsWeb) { - return File(pickedFile.path); - } - final cropedFile = await ImageCropper.cropImage( - sourcePath: pickedFile.path, - aspectRatio: const CropAspectRatio(ratioX: 1, ratioY: 1), - compressQuality: 70, - ); - return cropedFile; + return pickedFile; } } diff --git a/lib/services/network/request.dart b/lib/services/network/request.dart index 13dd08c..1b11098 100644 --- a/lib/services/network/request.dart +++ b/lib/services/network/request.dart @@ -1,25 +1,26 @@ import 'dart:convert'; import 'dart:developer'; -import 'dart:io'; import 'package:http/http.dart' as http; import 'package:http_parser/http_parser.dart' as parser; +import 'package:image_picker/image_picker.dart'; class RequestService { static late String token; - Map get result => _body['result'] ?? const {}; - Map get errors => _body['errors'] ?? const {}; + Map get result => _body?['result'] ?? const {}; + Map get errors => _body?['errors'] ?? const {}; String errorMessage = 'خطا! لطفا اتصال اینترنت خود را بررسی و مجددا تلاش نمایید.'; - dynamic _body; + Map? _body; + final Map _headers = { "accept": "*/*", "Content-Type": "application/json; charset=UTF-8", }; final String url; - dynamic _requestBody; + Map? _requestBody; bool isSuccess = false; @@ -99,16 +100,17 @@ class RequestService { } } - Future multipart(File file) async { + Future multipart(XFile file) async { try { final request = http.MultipartRequest('PUT', Uri.parse(url)); _headers.update('Content-Type', (_) => 'multipart/form-data'); request.headers.addAll(_headers); + final length = await file.length(); request.files.add( http.MultipartFile( 'photo', file.readAsBytes().asStream(), - file.lengthSync(), + length, filename: 'profile-photo', contentType: parser.MediaType('image', 'jpg'), ), @@ -116,7 +118,7 @@ class RequestService { final streamedResponse = await request .send() .timeout( - const Duration(seconds: 10), + const Duration(seconds: 30), ) .catchError( (e) => throw e, @@ -154,7 +156,7 @@ class RequestService { _body = json.decode(response.body); } } - if (!isSuccess) errorMessage = _errorMessageGenerator(response); + errorMessage = _errorMessageGenerator(response); } bool _handleError(http.Response? response) { @@ -189,7 +191,7 @@ class RequestService { String _errorMessageGenerator(http.Response? response) { String? error; if (response != null) { - if (!response.body.contains('')) { + if (_body != null) { if (result.isNotEmpty) { error = result['msg']; } diff --git a/lib/services/network/request_helper.dart b/lib/services/network/request_helper.dart index 1764ee7..6826af8 100644 --- a/lib/services/network/request_helper.dart +++ b/lib/services/network/request_helper.dart @@ -1,3 +1,6 @@ +import 'package:didvan/models/requests/news.dart'; +import 'package:didvan/models/requests/radar.dart'; + class RequestHelper { static const String baseUrl = 'https://api.didvan.app'; static const String _baseUserUrl = baseUrl + '/user'; @@ -11,62 +14,59 @@ class RequestHelper { static const String updateUserProfile = _baseUserUrl + '/profile/photo'; static const String checkUsername = _baseUserUrl + '/CheckUsername'; static const String updateProfile = _baseUserUrl + '/profile/edit'; + static String bookmarks(String? type) => + _baseUserUrl + '/marked/${type ?? ''}'; static const String directTypes = baseUrl + '/direct/types'; - static const String addComment = baseUrl + '/comment/add'; - static String feedbackComment(int id) => baseUrl + '/comment/$id/feedback'; - static String direct(int id) => _baseUserUrl + '/direct/$id'; static String markRadar(int id) => _baseRadarUrl + '/$id/mark'; - static String radarDetails(int id) => _baseRadarUrl + '/$id'; static String radarComments(int id) => _baseRadarUrl + '/$id/comments'; - static String markNews(int id) => _baseNewsUrl + '/$id/mark'; - static String newsDetails(int id) => _baseNewsUrl + '/$id'; - static String newsComments(int id) => _baseNewsUrl + '/$id/comments'; - static String radarOverviews({ - required int page, - List categories = const [], - String? startDate, - String? endDate, - String? search, - }) { - String? cats; - if (categories.isNotEmpty) { - cats = ''; - for (var i = 0; i < categories.length; i++) { - cats = cats! + categories[i].toString(); - if (i != categories.length - 1) { - cats += ','; - } - } - } - return _baseRadarUrl + - _urlConcatGenerator([ - MapEntry('page', page.toString()), - MapEntry('start', startDate), - MapEntry('end', endDate), - MapEntry('search', search), - MapEntry('categories', cats), - ]); - } + static String addRadarComment(int id) => _baseRadarUrl + '/$id/comments/add'; + static String feedbackRadarComment(int radarId, int id) => + _baseRadarUrl + '/$radarId/comments/$id/feedback'; + static String radarDetails(int id, RadarRequestArgs args) => + _baseRadarUrl + + '/$id' + + _urlConcatGenerator([ + MapEntry('page', args.page.toString()), + MapEntry('start', args.startDate), + MapEntry('end', args.endDate), + MapEntry('search', args.search), + MapEntry('categories', _urlListConcatGenerator(args.categories)), + ]); + static String radarOverviews({required RadarRequestArgs args}) => + _baseRadarUrl + + _urlConcatGenerator([ + MapEntry('page', args.page.toString()), + MapEntry('start', args.startDate), + MapEntry('end', args.endDate), + MapEntry('search', args.search), + MapEntry('categories', _urlListConcatGenerator(args.categories)), + ]); - static String newsOverviews({ - required int page, - String? startDate, - String? endDate, - String? search, - }) { - String? cats; - return _baseNewsUrl + - _urlConcatGenerator([ - MapEntry('page', page.toString()), - MapEntry('start', startDate), - MapEntry('end', endDate), - MapEntry('search', search), - MapEntry('categories', cats), - ]); - } + static String markNews(int id) => _baseNewsUrl + '/$id/mark'; + static String newsComments(int id) => _baseNewsUrl + '/$id/comments'; + static String addNewsComment(int id) => _baseNewsUrl + '/$id/comments/add'; + static String feedbackNewsComment(int radarId, int id) => + _baseNewsUrl + '/$radarId/comments/$id/feedback'; + static String newsDetails(int id, NewsRequestArgs args) => + _baseNewsUrl + + '/$id' + + _urlConcatGenerator([ + MapEntry('page', args.page.toString()), + MapEntry('start', args.startDate), + MapEntry('end', args.endDate), + MapEntry('search', args.search), + ]); + static String newsOverviews({required NewsRequestArgs args}) => + _baseNewsUrl + + _urlConcatGenerator([ + MapEntry('page', args.page.toString()), + MapEntry('start', args.startDate), + MapEntry('end', args.endDate), + MapEntry('search', args.search), + ]); static String _urlConcatGenerator(List> additions) { String result = ''; @@ -82,4 +82,19 @@ class RequestHelper { } return result; } + + static String? _urlListConcatGenerator(List? input) { + String? result; + if (input == null) return null; + if (input.isNotEmpty) { + result = ''; + for (var i = 0; i < input.length; i++) { + result = result! + input[i].toString(); + if (i != input.length - 1) { + result += ','; + } + } + return result; + } + } } diff --git a/lib/utils/date_time.dart b/lib/utils/date_time.dart index f49296f..e2332a4 100644 --- a/lib/utils/date_time.dart +++ b/lib/utils/date_time.dart @@ -11,6 +11,7 @@ class DateTimeUtils { static String normalizeTimeDuration(Duration input) { String minute; String second; + if (input.inMinutes < 10) { minute = '0${input.inMinutes}'; } else { @@ -25,22 +26,58 @@ class DateTimeUtils { return '$minute:$second'; } - static Future showDatePicker( - {String? initialDate, String? startDate, String? endDate}) async { + static Future showDatePicker({ + String? initialDate, + String? startDate, + String? endDate, + }) async { final initDate = initialDate == null ? null : DateTime.parse(initialDate); final initialJalali = Jalali.fromDateTime(initDate ?? DateTime.now()); + final firstDate = Jalali.fromDateTime( startDate == null ? DateTime(2021) : DateTime.parse(startDate), ); + final lastDate = Jalali.fromDateTime( endDate == null ? DateTime.now() : DateTime.parse(endDate), ); + final Jalali? result = await showPersianDatePicker( context: DesignConfig.context, initialDate: initialJalali, firstDate: firstDate, lastDate: lastDate, ); + return result?.toDateTime().toString(); } + + static String momentGenerator(String input) { + final date = DateTime.parse(input); + final int seconds = (DateTime.now().difference(date).inSeconds).floor(); + + double interval = seconds / 31536000; + + if (interval > 1) { + return interval.floor().toString() + " سال پیش"; + } + interval = seconds / 2592000; + if (interval > 1) { + return interval.floor().toString() + " ماه پیش"; + } + interval = seconds / 86400; + if (interval > 1) { + return interval.floor().toString() + " روز پیش"; + } + interval = seconds / 3600; + if (interval > 1) { + return interval.floor().toString() + " ساعت پیش"; + } + interval = seconds / 60; + if (interval > 1) { + return interval.floor().toString() + " دقیقه پیش"; + } + return 'هم اکنون'; + // return seconds.floor().toString() + " ثانیه پیش"; + } } From 14c79edc7b76d93a150ad5353f59d6e89a87b76d Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 29 Jan 2022 13:58:28 +0330 Subject: [PATCH 163/273] about us route added --- lib/routes/route_generator.dart | 42 ++++++++++++++++++++++++++++----- lib/routes/routes.dart | 4 ++++ 2 files changed, 40 insertions(+), 6 deletions(-) diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index be91c0e..ca22e7e 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -12,13 +12,18 @@ import 'package:didvan/pages/home/news/news_state.dart'; import 'package:didvan/pages/home/radar/radar_details/radar_details.dart'; import 'package:didvan/pages/home/radar/radar_details/radar_details_state.dart'; import 'package:didvan/pages/home/radar/radar_state.dart'; +import 'package:didvan/pages/home/settings/about_us/about_us.dart'; +import 'package:didvan/pages/home/settings/bookmarks/bookmarks.dart'; +import 'package:didvan/pages/home/settings/bookmarks/bookmark_state.dart'; +import 'package:didvan/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart'; import 'package:didvan/pages/home/settings/direct_list/direct_list.dart'; import 'package:didvan/pages/home/settings/direct_list/direct_list_state.dart'; import 'package:didvan/pages/home/settings/general_settings/settings.dart'; import 'package:didvan/pages/home/settings/general_settings/settings_state.dart'; -import 'package:didvan/pages/home/settings/profile/edit_profile.dart'; +import 'package:didvan/pages/home/settings/profile/profile.dart'; import 'package:didvan/pages/splash/splash.dart'; import 'package:didvan/routes/routes.dart'; +import 'package:didvan/widgets/image_cropper.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; @@ -57,6 +62,16 @@ class RouteGenerator { return _createRoute( const Profile(), ); + case Routes.aboutUs: + return _createRoute( + const AboutUs(), + ); + case Routes.imageCropper: + return _createRoute( + ImageCropper( + data: settings.arguments as Map, + ), + ); case Routes.generalSettings: return _createRoute( ChangeNotifierProvider( @@ -71,12 +86,13 @@ class RouteGenerator { ChangeNotifierProvider( create: (context) => RadarDetailsState(), ), - ChangeNotifierProvider.value( - value: (settings.arguments as Map)['state'], - ) + if ((settings.arguments as Map)['state'] != null) + ChangeNotifierProvider.value( + value: (settings.arguments as Map)['state'], + ) ], child: RadarDetails( - id: (settings.arguments as Map)['id'], + pageData: settings.arguments as Map, ), ), ); @@ -92,7 +108,7 @@ class RouteGenerator { ) ], child: NewsDetails( - id: (settings.arguments as Map)['id'], + pageData: settings.arguments as Map, ), ), ); @@ -119,6 +135,20 @@ class RouteGenerator { ), ), ); + case Routes.bookmarks: + return _createRoute( + ChangeNotifierProvider( + create: (context) => BookmarksState(), + child: const Bookmarks(), + ), + ); + case Routes.filteredBookmarks: + return _createRoute( + ChangeNotifierProvider.value( + value: settings.arguments as BookmarksState, + child: const FilteredBookmarks(), + ), + ); default: return _errorRoute(); } diff --git a/lib/routes/routes.dart b/lib/routes/routes.dart index 959d5a7..5bc9c90 100644 --- a/lib/routes/routes.dart +++ b/lib/routes/routes.dart @@ -1,6 +1,7 @@ class Routes { static const String splash = '/'; static const String home = '/home'; + static const String aboutUs = '/about-us'; static const String authenticaion = '/authentication'; static const String profile = '/profile'; static const String settings = '/settings'; @@ -10,4 +11,7 @@ class Routes { static const String directList = '/direct-list'; static const String direct = '/direct'; static const String comments = '/comments'; + static const String bookmarks = '/bookmarks'; + static const String filteredBookmarks = '/filtered-bookmarks'; + static const String imageCropper = '/image-cropper'; } From fdbbc914af98e3aca0aad91d0bd754959a18b846 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 29 Jan 2022 13:58:56 +0330 Subject: [PATCH 164/273] mark & unmark functions moved to user provider --- lib/providers/user_provider.dart | 45 +++++++++++++++++++++++++++++--- 1 file changed, 42 insertions(+), 3 deletions(-) diff --git a/lib/providers/user_provider.dart b/lib/providers/user_provider.dart index d2d503d..605e8de 100644 --- a/lib/providers/user_provider.dart +++ b/lib/providers/user_provider.dart @@ -1,5 +1,4 @@ -import 'dart:io'; - +import 'package:collection/collection.dart'; import 'package:didvan/models/enums.dart'; import 'package:didvan/models/user.dart'; import 'package:didvan/models/view/alert_data.dart'; @@ -11,6 +10,10 @@ import 'package:didvan/utils/action_sheet.dart'; class UserProvider extends CoreProvier { late User user; + + static final List _radarMarkQueue = []; + static final List _newsMarkQueue = []; + Future setAndGetToken({String? newToken}) async { if (newToken == null) { final token = await StorageService.getValue(key: 'token'); @@ -29,7 +32,7 @@ class UserProvider extends CoreProvier { throw 'Getting user from API failed!'; } - Future setProfilePhoto(File file) async { + Future setProfilePhoto(dynamic file) async { appState = AppState.isolatedBusy; final RequestService service = RequestService(RequestHelper.updateUserProfile); @@ -94,4 +97,40 @@ class UserProvider extends CoreProvier { ), ); } + + static Future changeRadarMark(int id, bool value) async { + _radarMarkQueue.add(MapEntry(id, value)); + Future.delayed(const Duration(milliseconds: 500), () async { + final MapEntry? lastChange = + _radarMarkQueue.lastWhereOrNull((item) => item.key == id); + if (lastChange == null) return; + if (lastChange.value) { + final service = RequestService(RequestHelper.markRadar(id)); + if (value) { + await service.post(); + } else { + await service.delete(); + } + _radarMarkQueue.removeWhere((element) => element.key == id); + } + }); + } + + static Future changeNewsMark(int id, bool value) async { + _newsMarkQueue.add(MapEntry(id, value)); + Future.delayed(const Duration(milliseconds: 500), () async { + final MapEntry? lastChange = + _newsMarkQueue.lastWhereOrNull((item) => item.key == id); + if (lastChange == null) return; + if (lastChange.value) { + final service = RequestService(RequestHelper.markNews(id)); + if (value) { + await service.post(); + } else { + await service.delete(); + } + _newsMarkQueue.removeWhere((element) => element.key == id); + } + }); + } } From 0553cc75aee633a398cbeb4506430079c0609b15 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 29 Jan 2022 13:59:20 +0330 Subject: [PATCH 165/273] splash screen error handling added --- lib/pages/splash/splash.dart | 87 +++++++++++++++++++++++++----------- 1 file changed, 60 insertions(+), 27 deletions(-) diff --git a/lib/pages/splash/splash.dart b/lib/pages/splash/splash.dart index 3ea027d..4486bec 100644 --- a/lib/pages/splash/splash.dart +++ b/lib/pages/splash/splash.dart @@ -10,10 +10,12 @@ import 'package:didvan/services/app_initalizer.dart'; import 'package:didvan/services/network/request.dart'; import 'package:didvan/services/storage/storage.dart'; import 'package:didvan/utils/action_sheet.dart'; +import 'package:didvan/widgets/didvan/button.dart'; import 'package:didvan/widgets/logos/didvan_horizontal_logo.dart'; import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; +import 'package:flutter_spinkit/flutter_spinkit.dart'; import 'package:provider/provider.dart'; import 'package:universal_html/html.dart' as html; @@ -26,6 +28,7 @@ class Splash extends StatefulWidget { class _SplashState extends State { bool _isGettingThemeData = true; + bool _errorOccured = false; @override void initState() { @@ -51,40 +54,70 @@ class _SplashState extends State { alignment: Alignment.center, padding: const EdgeInsets.all(60), color: Theme.of(context).colorScheme.background, - child: const DidvanVerticalLogo(), + child: Column( + children: [ + const SizedBox(height: 70), + const Expanded( + child: DidvanVerticalLogo(), + ), + if (!_errorOccured) + SpinKitSpinningLines( + color: Theme.of(context).colorScheme.primary, + ), + if (_errorOccured) const SizedBox(height: 38), + if (_errorOccured) + DidvanButton( + width: 120, + height: 40, + title: 'تلاش مجدد', + onPressed: () { + setState(() { + _errorOccured = false; + }); + _initialize(); + }, + ), + ], + ), ), ), ); } Future _initialize() async { - ActionSheetUtils.context = navigatorKey.currentContext!; - if (kIsWeb) { - html.window.onBeforeUnload.listen((event) { - StorageService.webStorage - .removeWhere((key, value) => key == 'image-cache'); + try { + ActionSheetUtils.context = navigatorKey.currentContext!; + if (kIsWeb) { + html.window.onBeforeUnload.listen((event) { + StorageService.webStorage + .removeWhere((key, value) => key == 'image-cache'); + }); + } + await AppInitializer.setupServices(); + final ThemeMode themeMode = await AppInitializer.initilizeSettings(); + context.read().themeMode = themeMode; + await Future.delayed( + const Duration(milliseconds: 200), + () => setState(() { + _isGettingThemeData = false; + }), + ); + final userProvider = context.read(); + final String? token = await userProvider.setAndGetToken(); + if (token != null) { + log(token); + RequestService.token = token; + await userProvider.getUserInfo(); + await context.read().getData(); + } + Navigator.of(context).pushReplacementNamed( + token == null ? Routes.authenticaion : Routes.home, + arguments: token == null ? false : null, + ); + } catch (e) { + setState(() { + _errorOccured = true; }); } - await AppInitializer.setupServices(); - final ThemeMode themeMode = await AppInitializer.initilizeSettings(); - context.read().themeMode = themeMode; - await Future.delayed( - const Duration(milliseconds: 200), - () => setState(() { - _isGettingThemeData = false; - }), - ); - final userProvider = context.read(); - final String? token = await userProvider.setAndGetToken(); - if (token != null) { - log(token); - RequestService.token = token; - await userProvider.getUserInfo(); - await context.read().getData(); - } - Navigator.of(context).pushReplacementNamed( - token == null ? Routes.authenticaion : Routes.home, - arguments: token == null ? false : null, - ); } } From 711a4ad1d0a738d1d0df6b2fffbbeef5267d1804 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 29 Jan 2022 14:03:32 +0330 Subject: [PATCH 166/273] restucturing | reusablity --- lib/models/news_overview.dart | 7 +- lib/models/radar_overview.dart | 7 +- lib/pages/home/news/news.dart | 18 +- .../home/news/news_details/news_details.dart | 11 +- .../news/news_details/news_details_state.dart | 4 +- lib/pages/home/news/news_state.dart | 39 +--- lib/pages/home/radar/radar.dart | 48 +++-- .../radar/radar_details/radar_details.dart | 12 +- .../radar_details/radar_details_state.dart | 13 +- lib/pages/home/radar/radar_state.dart | 47 +---- .../settings/general_settings/settings.dart | 2 +- .../{edit_profile.dart => profile.dart} | 31 ++- lib/pages/home/settings/settings.dart | 9 +- .../home/settings/settings/settings.dart | 190 ------------------ .../{settings => }/widgets/menu_item.dart | 30 ++- .../news_overview.dart} | 13 +- .../radar_overview.dart} | 34 ++-- 17 files changed, 166 insertions(+), 349 deletions(-) rename lib/pages/home/settings/profile/{edit_profile.dart => profile.dart} (84%) delete mode 100644 lib/pages/home/settings/settings/settings.dart rename lib/pages/home/{settings => }/widgets/menu_item.dart (74%) rename lib/pages/home/{news/widgets/news_item.dart => widgets/news_overview.dart} (88%) rename lib/pages/home/{radar/widgets/radar_item.dart => widgets/radar_overview.dart} (83%) diff --git a/lib/models/news_overview.dart b/lib/models/news_overview.dart index b6d89e9..bdee076 100644 --- a/lib/models/news_overview.dart +++ b/lib/models/news_overview.dart @@ -1,4 +1,4 @@ -class NewsOverview { +class NewsOverviewData { final int id; final String title; final String reference; @@ -7,7 +7,7 @@ class NewsOverview { final String createdAt; bool marked; - NewsOverview({ + NewsOverviewData({ required this.id, required this.title, required this.reference, @@ -17,7 +17,8 @@ class NewsOverview { required this.marked, }); - factory NewsOverview.fromJson(Map json) => NewsOverview( + factory NewsOverviewData.fromJson(Map json) => + NewsOverviewData( id: json['id'], title: json['title'], reference: json['reference'], diff --git a/lib/models/radar_overview.dart b/lib/models/radar_overview.dart index a601084..b4e1da8 100644 --- a/lib/models/radar_overview.dart +++ b/lib/models/radar_overview.dart @@ -1,6 +1,6 @@ import 'category.dart'; -class RadarOverview { +class RadarOverviewData { final int id; final String image; final String title; @@ -12,7 +12,7 @@ class RadarOverview { final List categories; int comments; - RadarOverview({ + RadarOverviewData({ required this.id, required this.image, required this.title, @@ -25,7 +25,8 @@ class RadarOverview { required this.comments, }); - factory RadarOverview.fromJson(Map json) => RadarOverview( + factory RadarOverviewData.fromJson(Map json) => + RadarOverviewData( id: json['id'], image: json['image'], title: json['title'], diff --git a/lib/pages/home/news/news.dart b/lib/pages/home/news/news.dart index a054cc0..7e80527 100644 --- a/lib/pages/home/news/news.dart +++ b/lib/pages/home/news/news.dart @@ -4,7 +4,7 @@ import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/enums.dart'; import 'package:didvan/models/view/action_sheet_data.dart'; import 'package:didvan/pages/home/news/news_state.dart'; -import 'package:didvan/pages/home/news/widgets/news_item.dart'; +import 'package:didvan/pages/home/widgets/news_overview.dart'; import 'package:didvan/utils/action_sheet.dart'; import 'package:didvan/widgets/date_picker_button.dart'; import 'package:didvan/widgets/item_title.dart'; @@ -56,16 +56,20 @@ class _NewsState extends State { SliverStateHandler( onRetry: () => state.getNews(page: state.page), state: state, - builder: (context, state, index) => NewsItem( - news: state.news[index], - ), + builder: (context, state, index) { + final news = state.news[index]; + return NewsOverview( + news: news, + onMarkChanged: (value) => state.onMarkChanged(news.id, value), + ); + }, enableEmptyState: state.news.isEmpty, emptyState: EmptyResult( onNewSearch: () => _focusNode.requestFocus(), ), childCount: state.news.length, itemPadding: const EdgeInsets.only(left: 16, right: 16, bottom: 16), - placeholder: const _NewsItemPlaceholder(), + placeholder: const _NewsOverviewPlaceholder(), ), ], ); @@ -131,8 +135,8 @@ class _NewsState extends State { } } -class _NewsItemPlaceholder extends StatelessWidget { - const _NewsItemPlaceholder({Key? key}) : super(key: key); +class _NewsOverviewPlaceholder extends StatelessWidget { + const _NewsOverviewPlaceholder({Key? key}) : super(key: key); @override Widget build(BuildContext context) { diff --git a/lib/pages/home/news/news_details/news_details.dart b/lib/pages/home/news/news_details/news_details.dart index c1b756a..1cf70fe 100644 --- a/lib/pages/home/news/news_details/news_details.dart +++ b/lib/pages/home/news/news_details/news_details.dart @@ -49,8 +49,17 @@ class _NewsDetailsState extends State { left: 0, right: 0, child: FloatingNavigationBar( - news: state.currentNews, scrollController: _scrollController, + comments: state.currentNews.comments, + id: state.currentNews.id, + marked: state.currentNews.marked, + title: state.currentNews.title, + onCommentsChanged: state.onCommentsChanged, + onMarkChanged: (value) => widget.pageData['onMarkChanged']( + state.currentNews.id, + value, + ), + isRadar: false, ), ), ], diff --git a/lib/pages/home/news/news_details/news_details_state.dart b/lib/pages/home/news/news_details/news_details_state.dart index 72173a7..27b8ad3 100644 --- a/lib/pages/home/news/news_details/news_details_state.dart +++ b/lib/pages/home/news/news_details/news_details_state.dart @@ -66,8 +66,8 @@ class NewsDetailsState extends CoreProvier { bool exists(NewsDetailsData? newsItem) => news.any((n) => newsItem != null && n != null && n.id == newsItem.id); - void onCommentAdded(int id) { - news.firstWhere((item) => item!.id == id)!.comments++; + void onCommentsChanged(int count) { + news.firstWhere((item) => item!.id == currentNews.id)!.comments = count; notifyListeners(); } } diff --git a/lib/pages/home/news/news_state.dart b/lib/pages/home/news/news_state.dart index 2851146..2c54cef 100644 --- a/lib/pages/home/news/news_state.dart +++ b/lib/pages/home/news/news_state.dart @@ -1,8 +1,8 @@ -import 'package:collection/collection.dart'; import 'package:didvan/models/enums.dart'; import 'package:didvan/models/news_overview.dart'; import 'package:didvan/models/requests/news.dart'; import 'package:didvan/providers/core_provider.dart'; +import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/services/network/request.dart'; import 'package:didvan/services/network/request_helper.dart'; @@ -13,8 +13,7 @@ class NewsState extends CoreProvier { String? endDate; int page = 1; - final List _markQueue = []; - final List news = []; + final List news = []; void init() { search = ''; @@ -58,7 +57,7 @@ class NewsState extends CoreProvier { if (service.isSuccess) { final newsList = service.result['news']; for (var i = 0; i < newsList.length; i++) { - news.add(NewsOverview.fromJson(newsList[i])); + news.add(NewsOverviewData.fromJson(newsList[i])); } appState = AppState.idle; return; @@ -66,36 +65,10 @@ class NewsState extends CoreProvier { appState = AppState.failed; } - Future mark(int id) async { - news.firstWhere((element) => element.id == id).marked = true; + Future onMarkChanged(int id, bool value) async { + news.firstWhere((element) => element.id == id).marked = value; notifyListeners(); - _markQueue.add(MapEntry(id, true)); - Future.delayed(const Duration(milliseconds: 500), () async { - final MapEntry? lastChange = - _markQueue.lastWhereOrNull((item) => item.key == id); - if (lastChange == null) return; - if (lastChange.value) { - final service = RequestService(RequestHelper.markNews(id)); - await service.post(); - _markQueue.removeWhere((element) => element.key == id); - } - }); - } - - Future unMark(int id) async { - news.firstWhere((element) => element.id == id).marked = false; - notifyListeners(); - _markQueue.add(MapEntry(id, false)); - Future.delayed(const Duration(milliseconds: 500), () async { - final MapEntry? lastChange = - _markQueue.lastWhereOrNull((item) => item.key == id); - if (lastChange == null) return; - if (!lastChange.value) { - final service = RequestService(RequestHelper.markNews(id)); - await service.delete(); - _markQueue.removeWhere((element) => element.key == id); - } - }); + UserProvider.changeNewsMark(id, value); } bool get isFiltering => startDate != null || endDate != null; diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index 3421a68..3765857 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -9,7 +9,7 @@ import 'package:didvan/models/view/action_sheet_data.dart'; import 'package:didvan/pages/home/radar/radar_state.dart'; import 'package:didvan/pages/home/radar/widgets/categories_gird.dart'; import 'package:didvan/pages/home/radar/widgets/categories_list.dart'; -import 'package:didvan/pages/home/radar/widgets/radar_item.dart'; +import 'package:didvan/pages/home/widgets/radar_overview.dart'; import 'package:didvan/widgets/animated_visibility.dart'; import 'package:didvan/widgets/search_field.dart'; import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; @@ -114,7 +114,7 @@ class _RadarState extends State { ), ), SliverStateHandler( - onRetry: () => state.getRadarOverviews(page: state.page), + onRetry: () => state.getRadarOverviewDatas(page: state.page), state: state, itemPadding: const EdgeInsets.only( bottom: 20, @@ -122,12 +122,21 @@ class _RadarState extends State { right: 16, ), enableEmptyState: state.radars.isEmpty, - emptyState: - EmptyResult(onNewSearch: () => _focusNode.requestFocus()), - placeholder: const _RadarItemPlaceholder(), - builder: (context, state, index) => RadarItem( - radar: state.radars[index], + emptyState: Padding( + padding: const EdgeInsets.only(bottom: 120), + child: + EmptyResult(onNewSearch: () => _focusNode.requestFocus()), ), + placeholder: const _RadarOverviewPlaceholder(), + builder: (context, state, index) { + final radar = state.radars[index]; + return RadarOverview( + radar: radar, + onMarkChanged: (value) => state.changeMark(radar.id, value), + onCommentsChanged: (count) => + state.onCommentsChanged(radar.id, count), + ); + }, childCount: state.radars.length, ), if (state.radars.length == 1) @@ -136,20 +145,9 @@ class _RadarState extends State { ), ], ), - if (state.appState != AppState.failed) - CategoriesRow1( - isColapsed: - state.isColapsed || state.searching || state.filtering, - ), - if (state.appState != AppState.failed) - CategoriesRow2( - isColapsed: - state.isColapsed || state.searching || state.filtering, - ), - if (state.appState != AppState.failed) - CategoriesList( - isColapsed: state.isColapsed && !state.searching, - ), + if (state.appState != AppState.failed) const CategoriesRow1(), + if (state.appState != AppState.failed) const CategoriesRow2(), + if (state.appState != AppState.failed) const CategoriesList(), ], ), ); @@ -163,7 +161,7 @@ class _RadarState extends State { _timer?.cancel(); _timer = Timer(const Duration(seconds: 1), () { state.search = value; - state.getRadarOverviews(page: 1); + state.getRadarOverviewDatas(page: 1); }); } @@ -208,7 +206,7 @@ class _RadarState extends State { dismissTitle: 'حذف فیلتر', confrimTitle: 'نمایش نتایج', onDismissed: () => state.resetFilters(false), - onConfirmed: () => state.getRadarOverviews(page: 1), + onConfirmed: () => state.getRadarOverviewDatas(page: 1), content: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ @@ -276,8 +274,8 @@ class _RadarState extends State { } } -class _RadarItemPlaceholder extends StatelessWidget { - const _RadarItemPlaceholder({ +class _RadarOverviewPlaceholder extends StatelessWidget { + const _RadarOverviewPlaceholder({ Key? key, }) : super(key: key); diff --git a/lib/pages/home/radar/radar_details/radar_details.dart b/lib/pages/home/radar/radar_details/radar_details.dart index e2896b1..4d1fcf7 100644 --- a/lib/pages/home/radar/radar_details/radar_details.dart +++ b/lib/pages/home/radar/radar_details/radar_details.dart @@ -50,7 +50,17 @@ class _RadarDetailsState extends State { left: 0, right: 0, child: FloatingNavigationBar( - radar: state.currentRadar, + comments: state.currentRadar.comments, + id: state.currentRadar.id, + isRadar: true, + marked: state.currentRadar.marked, + title: state.currentRadar.title, + onMarkChanged: (value) => widget.pageData['onMarkChanged']( + state.currentRadar.id, + value, + ), + onCommentsChanged: state.onCommentsChanged, + categories: state.currentRadar.categories, scrollController: _scrollController, ), ), diff --git a/lib/pages/home/radar/radar_details/radar_details_state.dart b/lib/pages/home/radar/radar_details/radar_details_state.dart index 9ecbf05..ddaef05 100644 --- a/lib/pages/home/radar/radar_details/radar_details_state.dart +++ b/lib/pages/home/radar/radar_details/radar_details_state.dart @@ -15,7 +15,13 @@ class RadarDetailsState extends CoreProvier { int _currentIndex = 0; int get currentIndex => _currentIndex; - RadarDetailsData get currentRadar => radars[_currentIndex]!; + RadarDetailsData get currentRadar { + try { + return radars[_currentIndex]!; + } catch (e) { + return radars[_currentIndex + 1]!; + } + } Future getRadarDetails(int id, {bool? isForward}) async { if (isForward == null) { @@ -74,8 +80,9 @@ class RadarDetailsState extends CoreProvier { bool exists(RadarDetailsData? radar) => radars.any((r) => radar != null && r != null && r.id == radar.id); - void onCommentAdded(int id) { - radars.firstWhere((radar) => radar!.id == id)!.comments++; + void onCommentsChanged(int count) { + radars.firstWhere((radar) => radar!.id == currentRadar.id)!.comments = + count; notifyListeners(); } } diff --git a/lib/pages/home/radar/radar_state.dart b/lib/pages/home/radar/radar_state.dart index 822d5b9..dd3fe11 100644 --- a/lib/pages/home/radar/radar_state.dart +++ b/lib/pages/home/radar/radar_state.dart @@ -1,10 +1,10 @@ -import 'package:collection/collection.dart'; import 'package:didvan/constants/assets.dart'; import 'package:didvan/models/enums.dart'; import 'package:didvan/models/requests/radar.dart'; import 'package:didvan/models/view/radar_category.dart'; import 'package:didvan/models/radar_overview.dart'; import 'package:didvan/providers/core_provider.dart'; +import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/services/network/request.dart'; import 'package:didvan/services/network/request_helper.dart'; @@ -16,10 +16,9 @@ class RadarState extends CoreProvier { int page = 1; bool isScrolled = false; bool shouldColapse = false; - final List _markQueue = []; final List selectedCats = []; List categories = []; - final List radars = []; + final List radars = []; bool get filtering => selectedCats.length > 1 || startDate != null || endDate != null; @@ -43,7 +42,7 @@ class RadarState extends CoreProvier { } } - Future getRadarOverviews({ + Future getRadarOverviewDatas({ required int page, }) async { if (this.page == page) { @@ -66,7 +65,7 @@ class RadarState extends CoreProvier { await service.httpGet(); if (service.isSuccess) { for (var i = 0; i < service.result['radars'].length; i++) { - radars.add(RadarOverview.fromJson(service.result['radars'][i])); + radars.add(RadarOverviewData.fromJson(service.result['radars'][i])); } if (searching || filtering || isColapsed || isCategorySelected) { shouldColapse = true; @@ -78,47 +77,21 @@ class RadarState extends CoreProvier { appState = AppState.failed; } - Future mark(int id) async { - radars.firstWhere((element) => element.id == id).marked = true; + Future changeMark(int id, bool value) async { + radars.firstWhere((element) => element.id == id).marked = value; notifyListeners(); - _markQueue.add(MapEntry(id, true)); - Future.delayed(const Duration(milliseconds: 500), () async { - final MapEntry? lastChange = - _markQueue.lastWhereOrNull((item) => item.key == id); - if (lastChange == null) return; - if (lastChange.value) { - final service = RequestService(RequestHelper.markRadar(id)); - await service.post(); - _markQueue.removeWhere((element) => element.key == id); - } - }); + UserProvider.changeRadarMark(id, value); } - Future unMark(int id) async { - radars.firstWhere((element) => element.id == id).marked = false; - notifyListeners(); - _markQueue.add(MapEntry(id, false)); - Future.delayed(const Duration(milliseconds: 500), () async { - final MapEntry? lastChange = - _markQueue.lastWhereOrNull((item) => item.key == id); - if (lastChange == null) return; - if (!lastChange.value) { - final service = RequestService(RequestHelper.markRadar(id)); - await service.delete(); - _markQueue.removeWhere((element) => element.key == id); - } - }); - } - - void onCommentAdded(int id) { - radars.firstWhere((radar) => radar.id == id).comments++; + void onCommentsChanged(int id, int count) { + radars.firstWhere((radar) => radar.id == id).comments = count; notifyListeners(); } void init() { resetFilters(true); Future.delayed(Duration.zero, () { - getRadarOverviews(page: 1); + getRadarOverviewDatas(page: 1); }); categories = [ RadarCategory( diff --git a/lib/pages/home/settings/general_settings/settings.dart b/lib/pages/home/settings/general_settings/settings.dart index 18680a3..a02499b 100644 --- a/lib/pages/home/settings/general_settings/settings.dart +++ b/lib/pages/home/settings/general_settings/settings.dart @@ -7,7 +7,7 @@ import 'package:didvan/constants/assets.dart'; import 'package:didvan/models/view/action_sheet_data.dart'; import 'package:didvan/models/view/app_bar_data.dart'; import 'package:didvan/pages/home/settings/general_settings/settings_state.dart'; -import 'package:didvan/pages/home/settings/widgets/menu_item.dart'; +import 'package:didvan/pages/home/widgets/menu_item.dart'; import 'package:didvan/providers/theme_provider.dart'; import 'package:didvan/utils/action_sheet.dart'; import 'package:didvan/widgets/didvan/card.dart'; diff --git a/lib/pages/home/settings/profile/edit_profile.dart b/lib/pages/home/settings/profile/profile.dart similarity index 84% rename from lib/pages/home/settings/profile/edit_profile.dart rename to lib/pages/home/settings/profile/profile.dart index fe7ec8f..0dfb2f3 100644 --- a/lib/pages/home/settings/profile/edit_profile.dart +++ b/lib/pages/home/settings/profile/profile.dart @@ -1,14 +1,17 @@ import 'dart:async'; +import 'package:didvan/config/design_config.dart'; import 'package:didvan/models/view/app_bar_data.dart'; import 'package:didvan/pages/home/settings/profile/widgets/profile_photo.dart'; -import 'package:didvan/pages/home/settings/widgets/menu_item.dart'; +import 'package:didvan/pages/home/widgets/menu_item.dart'; import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/routes/routes.dart'; +import 'package:didvan/widgets/animated_visibility.dart'; import 'package:didvan/widgets/didvan/button.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/scaffold.dart'; +import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/didvan/text_field.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; @@ -26,6 +29,7 @@ class _ProfileState extends State { late String fullName; String? username; String? email; + bool _usernameIsAvailible = true; final _formKey = GlobalKey(); @@ -54,6 +58,7 @@ class _ProfileState extends State { const SizedBox(height: 16), DidvanCard( child: Column( + crossAxisAlignment: CrossAxisAlignment.start, children: [ DidvanTextField( title: 'نام و نام‌ خانوادگی', @@ -76,12 +81,15 @@ class _ProfileState extends State { hintText: 'انتخاب نام کاربری (اختیاری)', onChanged: _onUsernameChanged, initialValue: state.user.username, - validator: (value) async { - final result = await state.checkUsername(value); - if (result == false) { - return 'نام کاربری در دسترس نمی‌باشد'; - } - }, + ), + AnimatedVisibility( + duration: DesignConfig.lowAnimationDuration, + isVisible: !_usernameIsAvailible, + child: DidvanText( + 'نام کاربری در دسترس نمی‌باشد', + style: Theme.of(context).textTheme.caption, + color: Theme.of(context).colorScheme.error, + ), ), const SizedBox(height: 16), DidvanTextField( @@ -156,6 +164,7 @@ class _ProfileState extends State { } void _onUsernameChanged(String value) { + _usernameIsAvailible = true; _setButtonState(); username = value; _timer?.cancel(); @@ -163,7 +172,13 @@ class _ProfileState extends State { return; } _timer = Timer(const Duration(seconds: 1), () { - _formKey.currentState!.validate(); + context.read().checkUsername(value).then((value) { + if (value == false) { + setState(() { + _usernameIsAvailible = false; + }); + } + }); }); } } diff --git a/lib/pages/home/settings/settings.dart b/lib/pages/home/settings/settings.dart index 7df07b9..5a4a048 100644 --- a/lib/pages/home/settings/settings.dart +++ b/lib/pages/home/settings/settings.dart @@ -1,5 +1,5 @@ import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/pages/home/settings/widgets/menu_item.dart'; +import 'package:didvan/pages/home/widgets/menu_item.dart'; import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; import 'package:didvan/providers/theme_provider.dart'; import 'package:didvan/providers/user_provider.dart'; @@ -11,6 +11,7 @@ import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/item_title.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; +import 'package:url_launcher/url_launcher.dart'; class Settings extends StatelessWidget { const Settings({Key? key}) : super(key: key); @@ -86,13 +87,15 @@ class Settings extends StatelessWidget { MenuItem( icon: DidvanIcons.didvan_solid, title: 'معرفی دیدوان', - onTap: () => {}, + onTap: () => Navigator.of(context).pushNamed(Routes.aboutUs), ), const DidvanDivider(), MenuItem( icon: DidvanIcons.support_regular, title: 'پیام به پشتیبانی', - onTap: () => {}, + onTap: () { + launch('mailto:info@didvan.app'); + }, ), const DidvanDivider(), MenuItem( diff --git a/lib/pages/home/settings/settings/settings.dart b/lib/pages/home/settings/settings/settings.dart deleted file mode 100644 index 915241d..0000000 --- a/lib/pages/home/settings/settings/settings.dart +++ /dev/null @@ -1,190 +0,0 @@ -import 'package:day_night_time_picker/lib/constants.dart'; -import 'package:day_night_time_picker/lib/daynight_timepicker.dart'; -import 'package:didvan/config/design_config.dart'; -import 'package:didvan/config/theme_data.dart'; -import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/constants/assets.dart'; -import 'package:didvan/models/view/action_sheet_data.dart'; -import 'package:didvan/models/view/app_bar_data.dart'; -import 'package:didvan/pages/home/settings/general_settings/settings_state.dart'; -import 'package:didvan/pages/home/settings/widgets/menu_item.dart'; -import 'package:didvan/providers/theme_provider.dart'; -import 'package:didvan/utils/action_sheet.dart'; -import 'package:didvan/widgets/didvan/card.dart'; -import 'package:didvan/widgets/didvan/divider.dart'; -import 'package:didvan/widgets/didvan/scaffold.dart'; -import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/item_title.dart'; -import 'package:didvan/widgets/state_handler.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_svg/flutter_svg.dart'; -import 'package:provider/provider.dart'; - -class GeneralSettings extends StatelessWidget { - const GeneralSettings({Key? key}) : super(key: key); - - @override - Widget build(BuildContext context) { - return Consumer( - builder: (context, state, child) => StateHandler( - state: context.read(), - builder: (context, state) => DidvanScaffold( - appBarData: AppBarData(hasBack: true, title: 'تنظیمات'), - children: [ - DidvanCard( - child: MenuItem( - title: 'زمان دریافت اعلان', - onTap: () => _pickTimeRange(context), - icon: DidvanIcons.notification_regular, - suffix: state.notificationTimeRange[0], - ), - ), - const ItemTitle( - title: 'انتخاب قلم', - icon: DidvanIcons.font_solid, - ), - DidvanCard( - child: Column( - children: [ - MenuItem( - suffix: 'نیاز به پیاده‌سازی', - title: 'فونت برنامه', - onTap: () {}, - ), - const DidvanDivider(), - MenuItem( - suffix: 'نیاز به پیاده‌سازی', - title: 'اندازه متن', - onTap: () {}, - ), - ], - ), - ), - const ItemTitle( - title: 'ظاهر برنامه', - icon: DidvanIcons.theme_solid, - ), - DidvanCard( - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceAround, - children: [ - _themeItem(context, state, 'light'), - _themeItem(context, state, 'dark'), - ], - ), - ), - ], - ), - ), - ); - } - - Future _pickTimeRange(BuildContext context) async { - ActionSheetUtils.showBottomSheet( - data: ActionSheetData( - content: Row( - children: [ - const SizedBox(width: 8), - Expanded(child: _timeFieldBuilder(context, 0)), - const SizedBox(width: 8), - const DidvanText('-'), - const SizedBox(width: 8), - Expanded(child: _timeFieldBuilder(context, 1)), - const SizedBox(width: 8), - ], - ), - title: 'زمان دریافت اعلان', - titleIcon: DidvanIcons.notification_regular, - ), - ); - } - - Widget _timeFieldBuilder(BuildContext context, int index) { - final GeneralSettingsState state = context.read(); - return ChangeNotifierProvider.value( - value: state, - child: StatefulBuilder( - builder: (context, setState) => GestureDetector( - onTap: () async { - await _openTimePicker(context, index); - setState(() {}); - }, - child: Container( - alignment: Alignment.center, - padding: const EdgeInsets.all(24), - decoration: BoxDecoration( - color: Theme.of(context).colorScheme.splash, - borderRadius: DesignConfig.mediumBorderRadius, - border: Border.all( - color: Theme.of(context).colorScheme.border, - ), - ), - child: DidvanText(state.notificationTimeRange[index]), - ), - ), - ), - ); - } - - Future _openTimePicker(BuildContext context, int index) async { - final GeneralSettingsState state = context.read(); - await Navigator.of(context).push( - showPicker( - okText: 'تایید', - cancelText: 'بازگشت', - accentColor: Theme.of(context).colorScheme.primary, - okStyle: Theme.of(context).textTheme.bodyText2!, - cancelStyle: Theme.of(context).textTheme.bodyText2!, - unselectedColor: Theme.of(context).colorScheme.text, - blurredBackground: true, - hourLabel: 'ساعت', - minuteLabel: 'دقیقه', - is24HrFormat: true, - iosStylePicker: true, - minuteInterval: MinuteInterval.FIFTEEN, - context: context, - value: const TimeOfDay(hour: 0, minute: 0), - themeData: Theme.of(context), - onChange: (time) { - state.notificationTimeRange = state.notificationTimeRange - ..replaceRange( - index, - index + 1, - ['${time.hour}:${time.minute}'], - ); - }, - ), - ); - } - - Widget _themeItem( - BuildContext context, GeneralSettingsState state, String brightness) { - final bool isDarkTheme = brightness == 'dark'; - return GestureDetector( - onTap: () { - state.brightness = brightness; - if (isDarkTheme && DesignConfig.isDark) { - return; - } else if (!isDarkTheme && !DesignConfig.isDark) { - return; - } else { - if (isDarkTheme) { - context.read().themeMode = ThemeMode.dark; - } else { - context.read().themeMode = ThemeMode.light; - } - DesignConfig.updateSystemUiOverlayStyle(); - } - }, - child: Column( - children: [ - SvgPicture.asset(isDarkTheme ? Assets.darkTheme : Assets.lightTheme), - const SizedBox(height: 8), - DidvanText( - isDarkTheme ? 'تیره' : 'روشن', - ), - ], - ), - ); - } -} diff --git a/lib/pages/home/settings/widgets/menu_item.dart b/lib/pages/home/widgets/menu_item.dart similarity index 74% rename from lib/pages/home/settings/widgets/menu_item.dart rename to lib/pages/home/widgets/menu_item.dart index 085f6ae..bd65501 100644 --- a/lib/pages/home/settings/widgets/menu_item.dart +++ b/lib/pages/home/widgets/menu_item.dart @@ -4,21 +4,29 @@ import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; class MenuItem extends StatelessWidget { - final String title; + final String? title; + final Widget? titleWidget; final IconData? icon; + final double iconSize; final String? suffix; final VoidCallback onTap; final Widget? trailing; final Color? color; - const MenuItem({ + MenuItem({ Key? key, - required this.title, + required this.onTap, + this.title, this.icon, this.suffix, - required this.onTap, this.color, this.trailing, - }) : super(key: key); + this.titleWidget, + this.iconSize = 18, + }) : super(key: key) { + if (title == null && titleWidget == null) { + throw Exception; + } + } @override Widget build(BuildContext context) { @@ -31,14 +39,16 @@ class MenuItem extends StatelessWidget { if (icon != null) Icon( icon, - size: 18, + size: iconSize, color: color ?? Theme.of(context).colorScheme.title, ), if (icon != null) const SizedBox(width: 4), - DidvanText( - title, - color: color ?? Theme.of(context).colorScheme.title, - ), + if (titleWidget != null) titleWidget!, + if (titleWidget == null) + DidvanText( + title!, + color: color ?? Theme.of(context).colorScheme.title, + ), const Spacer(), if (suffix != null) DidvanText( diff --git a/lib/pages/home/news/widgets/news_item.dart b/lib/pages/home/widgets/news_overview.dart similarity index 88% rename from lib/pages/home/news/widgets/news_item.dart rename to lib/pages/home/widgets/news_overview.dart index 993e875..009f7fa 100644 --- a/lib/pages/home/news/widgets/news_item.dart +++ b/lib/pages/home/widgets/news_overview.dart @@ -11,9 +11,12 @@ import 'package:didvan/widgets/skeleton_image.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; -class NewsItem extends StatelessWidget { - final NewsOverview news; - const NewsItem({Key? key, required this.news}) : super(key: key); +class NewsOverview extends StatelessWidget { + final NewsOverviewData news; + final void Function(bool value) onMarkChanged; + const NewsOverview( + {Key? key, required this.news, required this.onMarkChanged}) + : super(key: key); @override Widget build(BuildContext context) { @@ -77,8 +80,8 @@ class NewsItem extends StatelessWidget { ), BookmarkButton( value: news.marked, - onMark: () => state.mark(news.id), - onUnmark: () => state.unMark(news.id), + onMarkChanged: onMarkChanged, + bigGestureSize: true, ), ], ), diff --git a/lib/pages/home/radar/widgets/radar_item.dart b/lib/pages/home/widgets/radar_overview.dart similarity index 83% rename from lib/pages/home/radar/widgets/radar_item.dart rename to lib/pages/home/widgets/radar_overview.dart index 6af1f4a..e246463 100644 --- a/lib/pages/home/radar/widgets/radar_item.dart +++ b/lib/pages/home/widgets/radar_overview.dart @@ -2,7 +2,6 @@ import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/radar_overview.dart'; import 'package:didvan/models/requests/radar.dart'; -import 'package:didvan/pages/home/radar/radar_state.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/utils/date_time.dart'; import 'package:didvan/widgets/bookmark_button.dart'; @@ -12,28 +11,30 @@ import 'package:didvan/widgets/didvan/icon_button.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/skeleton_image.dart'; import 'package:flutter/material.dart'; -import 'package:provider/provider.dart'; -class RadarItem extends StatelessWidget { - final RadarOverview radar; - const RadarItem({Key? key, required this.radar}) : super(key: key); +class RadarOverview extends StatelessWidget { + final RadarOverviewData radar; + final void Function(int count) onCommentsChanged; + final void Function(bool value) onMarkChanged; + final RadarRequestArgs? radarRequestArgs; + const RadarOverview({ + Key? key, + required this.radar, + required this.onCommentsChanged, + required this.onMarkChanged, + this.radarRequestArgs, + }) : super(key: key); @override Widget build(BuildContext context) { - final state = context.read(); return DidvanCard( onTap: () => Navigator.of(context).pushNamed( Routes.radarDetails, arguments: { - 'state': state, + 'onMarkChanged': onMarkChanged, + 'onCommentsChanged': onCommentsChanged, 'id': radar.id, - 'args': RadarRequestArgs( - page: state.page, - categories: state.selectedCats.map((e) => e.id).toList(), - endDate: state.endDate, - search: state.search, - startDate: state.startDate, - ) + 'args': radarRequestArgs, }, ), child: Column( @@ -99,8 +100,7 @@ class RadarItem extends StatelessWidget { children: [ BookmarkButton( value: radar.marked, - onMark: () => state.mark(radar.id), - onUnmark: () => state.unMark(radar.id), + onMarkChanged: onMarkChanged, ), const Spacer(), if (radar.comments != 0) DidvanText(radar.comments.toString()), @@ -114,7 +114,7 @@ class RadarItem extends StatelessWidget { 'isRadar': true, 'title': radar.title, 'id': radar.id, - 'onCommentAdded': () => state.onCommentAdded(radar.id) + 'onCommentsChanged': onCommentsChanged }, ), ), From 4fedb89cc099231eec59c330842a6603b65c6d17 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 29 Jan 2022 14:03:54 +0330 Subject: [PATCH 167/273] misstype fixed --- lib/pages/authentication/screens/verification.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/pages/authentication/screens/verification.dart b/lib/pages/authentication/screens/verification.dart index 3d48f4d..e6f5d4f 100644 --- a/lib/pages/authentication/screens/verification.dart +++ b/lib/pages/authentication/screens/verification.dart @@ -18,7 +18,7 @@ class Verification extends StatelessWidget { appBarTitle: 'تغییر رمز عبور', children: [ DidvanText( - 'کد 6 رقممی ارسال شده به موبایل', + 'کد 6 رقمی ارسال شده به موبایل', style: Theme.of(context).textTheme.subtitle2, fontWeight: FontWeight.normal, ), From 7d2ee16c428cd19086f04f7f6b2d8b01221bb2b8 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 29 Jan 2022 14:04:30 +0330 Subject: [PATCH 168/273] image cropper added --- .../profile/widgets/profile_photo.dart | 37 ++++++++++++------- 1 file changed, 23 insertions(+), 14 deletions(-) diff --git a/lib/pages/home/settings/profile/widgets/profile_photo.dart b/lib/pages/home/settings/profile/widgets/profile_photo.dart index 87940d9..3b307ee 100644 --- a/lib/pages/home/settings/profile/widgets/profile_photo.dart +++ b/lib/pages/home/settings/profile/widgets/profile_photo.dart @@ -1,11 +1,10 @@ -import 'dart:io'; - import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/enums.dart'; import 'package:didvan/models/view/alert_data.dart'; -import 'package:didvan/pages/home/settings/widgets/menu_item.dart'; +import 'package:didvan/pages/home/widgets/menu_item.dart'; import 'package:didvan/providers/user_provider.dart'; +import 'package:didvan/routes/routes.dart'; import 'package:didvan/services/media/media.dart'; import 'package:didvan/utils/action_sheet.dart'; import 'package:didvan/widgets/didvan/card.dart'; @@ -24,8 +23,6 @@ class ProfilePhoto extends StatefulWidget { } class _ProfilePhotoState extends State { - File? profileImage; - @override Widget build(BuildContext context) { final userProvider = context.watch(); @@ -50,6 +47,7 @@ class _ProfilePhotoState extends State { ), if (userProvider.user.photo != null) SkeletonImage( + key: GlobalKey(debugLabel: userProvider.user.photo), imageUrl: userProvider.user.photo!, width: 96, height: 96, @@ -113,15 +111,26 @@ class _ProfilePhotoState extends State { ActionSheetUtils.pop(); final pickedFile = await MediaService.pickImage(source: source); if (pickedFile != null) { - final state = context.read(); - final result = await state.setProfilePhoto(pickedFile); - ActionSheetUtils.showAlert( - AlertData( - message: result - ? 'تصویر پروفایل بارگذاری شد.' - : 'بارگذاری تصویر موفقیت آمیز نبود.', - aLertType: result ? ALertType.success : ALertType.error, - ), + ActionSheetUtils.showLogoLoadingIndicator(); + final bytes = await pickedFile.readAsBytes(); + ActionSheetUtils.pop(); + Navigator.of(context).pushNamed( + Routes.imageCropper, + arguments: { + 'bytes': bytes, + 'onCropped': () async { + final state = context.read(); + final result = await state.setProfilePhoto(pickedFile); + ActionSheetUtils.showAlert( + AlertData( + message: result + ? 'تصویر پروفایل بارگذاری شد.' + : 'بارگذاری تصویر موفقیت آمیز نبود.', + aLertType: result ? ALertType.success : ALertType.error, + ), + ); + } + }, ); } } From 06033799b229556293bcf14d8c0b0ca8eade9389 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 29 Jan 2022 14:05:37 +0330 Subject: [PATCH 169/273] empty state added --- lib/pages/home/settings/direct_list/direct_list.dart | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/lib/pages/home/settings/direct_list/direct_list.dart b/lib/pages/home/settings/direct_list/direct_list.dart index e1d1bc7..5a13fc4 100644 --- a/lib/pages/home/settings/direct_list/direct_list.dart +++ b/lib/pages/home/settings/direct_list/direct_list.dart @@ -1,3 +1,4 @@ +import 'package:didvan/constants/assets.dart'; import 'package:didvan/models/view/app_bar_data.dart'; import 'package:didvan/pages/home/settings/direct_list/direct_list_state.dart'; import 'package:didvan/pages/home/settings/direct_list/widgets/chat_room_item.dart'; @@ -5,7 +6,8 @@ import 'package:didvan/widgets/didvan/badge.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/scaffold.dart'; import 'package:didvan/widgets/shimmer_placeholder.dart'; -import 'package:didvan/widgets/sliver_state_handler.dart'; +import 'package:didvan/widgets/state_handlers/empty_state.dart'; +import 'package:didvan/widgets/state_handlers/sliver_state_handler.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; @@ -40,6 +42,7 @@ class _DirectListState extends State { ), slivers: [ SliverStateHandler( + onRetry: state.getDirectsList, itemPadding: const EdgeInsets.symmetric(horizontal: 16), state: state, placeholder: const _ChatRoomPlaceholder(), @@ -47,6 +50,11 @@ class _DirectListState extends State { chatRoom: state.chatRooms[index], ), childCount: state.chatRooms.length, + enableEmptyState: state.chatRooms.isEmpty, + emptyState: EmptyState( + asset: Assets.emptyBookmark, + title: 'پیامی وجود ندارد', + ), ), ], ), From 293e759499e9f8fcc917b69937e7562e51dbbdd2 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 29 Jan 2022 14:06:07 +0330 Subject: [PATCH 170/273] restructuring | code cleaning --- .../home/comments/widgets/comment_item.dart | 1 + .../home/radar/widgets/categories_gird.dart | 10 +++++----- .../home/radar/widgets/categories_list.dart | 18 +++++++----------- .../home/radar/widgets/category_item.dart | 2 +- 4 files changed, 14 insertions(+), 17 deletions(-) diff --git a/lib/pages/home/comments/widgets/comment_item.dart b/lib/pages/home/comments/widgets/comment_item.dart index 07a92af..1230d14 100644 --- a/lib/pages/home/comments/widgets/comment_item.dart +++ b/lib/pages/home/comments/widgets/comment_item.dart @@ -114,6 +114,7 @@ class CommentState extends State { onPressed: () { state.commentId = _comment.id; state.replyingTo = comment.user; + state.showReplyBox = true; state.update(); widget.focusNode.requestFocus(); }, diff --git a/lib/pages/home/radar/widgets/categories_gird.dart b/lib/pages/home/radar/widgets/categories_gird.dart index 44d217e..8fc0048 100644 --- a/lib/pages/home/radar/widgets/categories_gird.dart +++ b/lib/pages/home/radar/widgets/categories_gird.dart @@ -5,11 +5,12 @@ import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; class CategoriesRow1 extends StatelessWidget { - final bool isColapsed; - const CategoriesRow1({Key? key, required this.isColapsed}) : super(key: key); + const CategoriesRow1({Key? key}) : super(key: key); @override Widget build(BuildContext context) { + final state = context.watch(); + final isColapsed = state.isColapsed || state.searching || state.filtering; final MediaQueryData d = MediaQuery.of(context); return AnimatedPositioned( curve: Curves.easeIn, @@ -42,13 +43,12 @@ class CategoriesRow1 extends StatelessWidget { class CategoriesRow2 extends StatelessWidget { const CategoriesRow2({ Key? key, - required this.isColapsed, }) : super(key: key); - final bool isColapsed; - @override Widget build(BuildContext context) { + final state = context.watch(); + final isColapsed = state.isColapsed || state.searching || state.filtering; final MediaQueryData d = MediaQuery.of(context); return AnimatedPositioned( curve: Curves.easeIn, diff --git a/lib/pages/home/radar/widgets/categories_list.dart b/lib/pages/home/radar/widgets/categories_list.dart index 8bdf7c0..83995b3 100644 --- a/lib/pages/home/radar/widgets/categories_list.dart +++ b/lib/pages/home/radar/widgets/categories_list.dart @@ -8,11 +8,7 @@ import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; class CategoriesList extends StatefulWidget { - final bool isColapsed; - const CategoriesList({ - Key? key, - required this.isColapsed, - }) : super(key: key); + const CategoriesList({Key? key}) : super(key: key); @override State createState() => _CategoriesListState(); @@ -41,15 +37,15 @@ class _CategoriesListState extends State { @override Widget build(BuildContext context) { final MediaQueryData d = MediaQuery.of(context); - final RadarState state = context.read(); + final state = context.watch(); + final isColapsed = state.isColapsed || state.searching || state.filtering; return Positioned( top: 0, left: 0, right: 0, child: AnimatedCrossFade( - crossFadeState: widget.isColapsed - ? CrossFadeState.showSecond - : CrossFadeState.showFirst, + crossFadeState: + isColapsed ? CrossFadeState.showSecond : CrossFadeState.showFirst, duration: DesignConfig.mediumAnimationDuration, reverseDuration: DesignConfig.lowAnimationDuration, sizeCurve: Curves.easeIn, @@ -61,7 +57,7 @@ class _CategoriesListState extends State { boxShadow: DesignConfig.defaultShadow, ), child: AnimatedVisibility( - isVisible: widget.isColapsed, + isVisible: isColapsed, duration: DesignConfig.mediumAnimationDuration, child: SingleChildScrollView( controller: _scrollController, @@ -102,7 +98,7 @@ class _CategoriesListState extends State { duration: DesignConfig.lowAnimationDuration, curve: Curves.easeIn, ); - state.getRadarOverviews(page: 1); + state.getRadarOverviewDatas(page: 1); }, child: Container( margin: const EdgeInsets.only(left: 12), diff --git a/lib/pages/home/radar/widgets/category_item.dart b/lib/pages/home/radar/widgets/category_item.dart index 7ec8494..f545396 100644 --- a/lib/pages/home/radar/widgets/category_item.dart +++ b/lib/pages/home/radar/widgets/category_item.dart @@ -29,7 +29,7 @@ class CategoryItem extends StatelessWidget { if (category.id != 0) { state.selectedCats.add(category); } - state.getRadarOverviews(page: 1); + state.getRadarOverviewDatas(page: 1); }, child: AnimatedContainer( duration: DesignConfig.mediumAnimationDuration, From f6fb9082ce9e18e748a165d4230357e857011c11 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 29 Jan 2022 14:06:24 +0330 Subject: [PATCH 171/273] comments final --- lib/pages/home/comments/comments.dart | 13 +++++- lib/pages/home/comments/comments_state.dart | 52 ++++++++++++--------- 2 files changed, 42 insertions(+), 23 deletions(-) diff --git a/lib/pages/home/comments/comments.dart b/lib/pages/home/comments/comments.dart index 25389f7..b13e31c 100644 --- a/lib/pages/home/comments/comments.dart +++ b/lib/pages/home/comments/comments.dart @@ -26,6 +26,8 @@ class Comments extends StatefulWidget { class _CommentsState extends State { final _focusNode = FocusNode(); + double _bottomPadding = 0; + @override void initState() { final state = context.read(); @@ -41,6 +43,14 @@ class _CommentsState extends State { @override Widget build(BuildContext context) { + final bottomViewInset = MediaQuery.of(context).viewInsets.bottom; + if (bottomViewInset == 0) { + if (_bottomPadding != 0) { + FocusScope.of(context).unfocus(); + _bottomPadding = 0; + } + } + _bottomPadding = bottomViewInset; return Material( child: Stack( children: [ @@ -99,7 +109,7 @@ class _MessageBoxState extends State<_MessageBox> { children: [ AnimatedVisibility( duration: DesignConfig.lowAnimationDuration, - isVisible: state.replyingTo != null, + isVisible: state.showReplyBox, child: Container( padding: const EdgeInsets.all(8), decoration: BoxDecoration( @@ -127,6 +137,7 @@ class _MessageBoxState extends State<_MessageBox> { onPressed: () { state.commentId = null; state.replyingTo = null; + state.showReplyBox = false; state.update(); }, ), diff --git a/lib/pages/home/comments/comments_state.dart b/lib/pages/home/comments/comments_state.dart index 48a7eba..7cb276c 100644 --- a/lib/pages/home/comments/comments_state.dart +++ b/lib/pages/home/comments/comments_state.dart @@ -15,6 +15,7 @@ class CommentsState extends CoreProvier { String text = ''; int? commentId; UserOverview? replyingTo; + bool showReplyBox = false; late VoidCallback onCommentAdded; final List comments = []; @@ -62,23 +63,22 @@ class CommentsState extends CoreProvier { Future addComment() async { final user = DesignConfig.context.read().user; if (replyingTo != null) { - final comment = comments.firstWhere((comment) => comment.id == commentId); - comment.replies.add( - Reply( - id: 0, - text: text, - createdAt: DateTime.now().toString(), - liked: false, - disliked: false, - feedback: const FeedbackData(like: 0, dislike: 0), - toUser: replyingTo!, - user: UserOverview( - id: user.id, - fullName: user.fullName, - photo: user.photo, - ), - ), - ); + comments.firstWhere((comment) => comment.id == commentId).replies.add( + Reply( + id: 0, + text: text, + createdAt: DateTime.now().toString(), + liked: false, + disliked: false, + feedback: const FeedbackData(like: 0, dislike: 0), + toUser: replyingTo!, + user: UserOverview( + id: user.id, + fullName: user.fullName, + photo: user.photo, + ), + ), + ); } else { comments.insert( 0, @@ -109,22 +109,30 @@ class CommentsState extends CoreProvier { if (replyingTo != null) { body.addAll({'replyUserId': replyingTo!.id}); } + + showReplyBox = false; + update(); body.addAll({'text': text}); final service = RequestService( isRadar ? RequestHelper.addRadarComment(itemId) : RequestHelper.addNewsComment(itemId), body: body); - commentId = null; - replyingTo = null; - update(); + await service.post(); if (service.isSuccess) { if (replyingTo != null) { - comments.firstWhere((comment) => comment.id == commentId).id = + comments + .firstWhere((comment) => comment.id == commentId) + .replies + .firstWhere((reply) => reply.id == 0) + .id = service.result['comment']['id']; + } else { + comments.firstWhere((comment) => comment.id == 0).id = service.result['comment']['id']; } + commentId = null; + replyingTo = null; } - update(); } } From 0bcd44d5e36f65c58a0e4af1f59fe79919f64976 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 29 Jan 2022 14:06:35 +0330 Subject: [PATCH 172/273] about us --- .../home/settings/about_us/about_us.dart | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 lib/pages/home/settings/about_us/about_us.dart diff --git a/lib/pages/home/settings/about_us/about_us.dart b/lib/pages/home/settings/about_us/about_us.dart new file mode 100644 index 0000000..037057d --- /dev/null +++ b/lib/pages/home/settings/about_us/about_us.dart @@ -0,0 +1,25 @@ +import 'package:didvan/models/view/app_bar_data.dart'; +import 'package:didvan/widgets/didvan/scaffold.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; + +class AboutUs extends StatelessWidget { + const AboutUs({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return DidvanScaffold( + appBarData: AppBarData( + hasBack: true, + title: 'معرفی دیدوان', + ), + children: const [ + DidvanText( + '''برای سفر مطمئن در جغرافیای مکانی به ابزارهایی مانند نقشه، قطب نما، سیستم ناوبری، علائم کنار جاده و یا حتی علائم طبیعی نیاز داریم. اما برای سفر در جغرافیای زمانی چه؟ +همه ما آدمیان و همه‌ی سازمان‌ها و شرکت‌هایمان، لاجرم مسافران جغرافیای زمانی هستند. ما همواره در مسیری رو به مقصدی در آینده در حرکت هستیم. اما فراموش نکنیم که سفر زمانی یک تفاوت بنیادین با طی مسیر در جغرافیای مکانی دارد. جغرافیای زمانی هیچ‌گاه نمی‌ایستد و سفر به آینده یک سفر شگفت‌انگیز به جایی است که قسمت‌هایی از آن را قبلاً در گذشته دیده‌ایم، قسمت‌هایی از آن را طی مسیر به تدریج می‌بینیم و قسمت‌هایی از آن کاملاً بدیع هستند. +برای سفر مطمئن در جغرافیای زمانی ما به سیستم‌های پیش‌نگر نیاز داریم و یکی از ارکان این سیستم‌ها، سامانه‌های رصد راهبردی هستند. دیدوان با شعار "چشم همیشه باز مدیران" سامانه رصد راهبردی شرکت فولاد مبارکه است تا سفری مطمئن به آینده را برای این شرکت رقم بزند.\nدر پارسی کهن دیدوان به این شکل معنی شده است: شخصی را گویند که بر جای بلند مانند سر کوه و بالای کشتی نشیند و هرچه از دور بیند خبر دهد. دیدوان چشمی است که آینده را می‌بیند. ما در دیدوان تلاش داریم که با رویکردی آینده‌پژوهانه مسیر پیش‌روی صنایع را تحلیل کنیم و با تحویل آن به مدیران صنایع، راهنمایی باشیم برای اخذ تصمیمات درست.''', + ), + ], + ); + } +} From c282921b2b093b8ff980523c31201a392d771882 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 29 Jan 2022 14:06:53 +0330 Subject: [PATCH 173/273] bookmarks (basic) --- .../settings/bookmarks/bookmark_state.dart | 68 +++++++ .../home/settings/bookmarks/bookmarks.dart | 188 ++++++++++++++++++ .../filtered_bookmark/filtered_bookmark.dart | 138 +++++++++++++ 3 files changed, 394 insertions(+) create mode 100644 lib/pages/home/settings/bookmarks/bookmark_state.dart create mode 100644 lib/pages/home/settings/bookmarks/bookmarks.dart create mode 100644 lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart diff --git a/lib/pages/home/settings/bookmarks/bookmark_state.dart b/lib/pages/home/settings/bookmarks/bookmark_state.dart new file mode 100644 index 0000000..edd2310 --- /dev/null +++ b/lib/pages/home/settings/bookmarks/bookmark_state.dart @@ -0,0 +1,68 @@ +import 'package:didvan/models/enums.dart'; +import 'package:didvan/models/item_overview.dart'; +import 'package:didvan/providers/core_provider.dart'; +import 'package:didvan/services/network/request.dart'; +import 'package:didvan/services/network/request_helper.dart'; + +class BookmarksState extends CoreProvier { + final List bookmarks = []; + final List filterdBookmarks = []; + String search = ''; + String lastSearch = ''; + + String? groupName; + + bool get searching => search != ''; + + Future getBookmarks() async { + if (search != '') { + lastSearch = search; + } + appState = AppState.busy; + final service = RequestService(RequestHelper.bookmarks(groupName)); + await service.httpGet(); + String resultKey; + switch (groupName) { + case 'radar': + resultKey = 'radars'; + break; + case 'news': + resultKey = groupName!; + break; + default: + resultKey = 'contents'; + } + if (service.isSuccess) { + final marks = service.result[resultKey]; + if (groupName == null) { + bookmarks.clear(); + for (var i = 0; i < marks.length; i++) { + bookmarks.add(ItemOverview.fromJson(marks[i])); + } + } else { + filterdBookmarks.clear(); + for (var i = 0; i < marks.length; i++) { + filterdBookmarks.add(ItemOverview.fromJson(marks[i])); + } + } + + appState = AppState.idle; + return; + } + appState = AppState.failed; + } + + void unMark(int id) { + bookmarks.removeWhere((element) => element.id == id); + filterdBookmarks.removeWhere((element) => element.id == id); + notifyListeners(); + final service = RequestService(RequestHelper.markRadar(id)); + service.delete(); + } + + void onCommentsChanged(int id, int value) { + bookmarks.firstWhere((radar) => radar.id == id).comments = value; + filterdBookmarks.firstWhere((radar) => radar.id == id).comments = value; + notifyListeners(); + } +} diff --git a/lib/pages/home/settings/bookmarks/bookmarks.dart b/lib/pages/home/settings/bookmarks/bookmarks.dart new file mode 100644 index 0000000..d6526b0 --- /dev/null +++ b/lib/pages/home/settings/bookmarks/bookmarks.dart @@ -0,0 +1,188 @@ +import 'dart:async'; + +import 'package:didvan/models/view/app_bar_data.dart'; +import 'package:didvan/pages/home/settings/bookmarks/bookmark_state.dart'; +import 'package:didvan/widgets/didvan/card.dart'; +import 'package:didvan/widgets/didvan/divider.dart'; +import 'package:didvan/widgets/didvan/scaffold.dart'; +import 'package:didvan/widgets/multitype_item.dart'; +import 'package:didvan/widgets/search_field.dart'; +import 'package:didvan/widgets/shimmer_placeholder.dart'; +import 'package:didvan/widgets/state_handlers/empty_list.dart'; +import 'package:didvan/widgets/state_handlers/empty_result.dart'; +import 'package:didvan/widgets/state_handlers/sliver_state_handler.dart'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; + +class Bookmarks extends StatefulWidget { + const Bookmarks({Key? key}) : super(key: key); + + @override + State createState() => _BookmarksState(); +} + +class _BookmarksState extends State { + final _focuseNode = FocusNode(); + Timer? _timer; + + @override + void initState() { + Future.delayed(Duration.zero, () { + context.read().getBookmarks(); + }); + super.initState(); + } + + @override + Widget build(BuildContext context) { + final state = context.watch(); + return DidvanScaffold( + appBarData: AppBarData( + title: 'نشان شده‌ها', + hasBack: true, + ), + children: [ + SearchField( + title: 'نشان شده‌ها', + onChanged: _onChanged, + focusNode: _focuseNode, + ), + const SizedBox(height: 16), + // AnimatedVisibility( + // duration: DesignConfig.lowAnimationDuration, + // isVisible: !state.searching, + // child: DidvanCard( + // child: Column( + // children: [ + // MenuItem( + // onTap: () => _onCategorySelected('radar'), + // title: 'تحلیل‌های رادار', + // icon: DidvanIcons.radar_regular, + // iconSize: 24, + // ), + // const DidvanDivider(), + // MenuItem( + // onTap: () => _onCategorySelected('news'), + // title: 'اخبار', + // icon: DidvanIcons.news_regular, + // iconSize: 24, + // ), + // const DidvanDivider(), + // MenuItem( + // onTap: () => _onCategorySelected('video'), + // title: 'ویدئو‌ها', + // icon: DidvanIcons.video_regular, + // iconSize: 24, + // ), + // const DidvanDivider(), + // MenuItem( + // onTap: () => _onCategorySelected('podcast'), + // title: 'پادکست‌ها', + // icon: DidvanIcons.podcast_regular, + // iconSize: 24, + // ), + // ], + // ), + // ), + // ), + // Align( + // alignment: Alignment.centerRight, + // child: AnimatedVisibility( + // duration: DesignConfig.lowAnimationDuration, + // isVisible: !state.searching, + // child: const ItemTitle(title: 'آخرین نشان نشده‌ها'), + // ), + // ), + ], + slivers: [ + SliverStateHandler( + state: state, + // centerEmptyState: state.searching, + builder: (context, state, index) => MultitypeItem( + item: state.bookmarks[index], + ), + placeholder: const _NewsOverviewPlaceholder(), + itemPadding: const EdgeInsets.only(bottom: 8), + emptyState: state.searching + ? EmptyResult(onNewSearch: _focuseNode.requestFocus) + : const EmptyList(), + enableEmptyState: state.bookmarks.isEmpty, + childCount: state.bookmarks.length, + onRetry: state.getBookmarks, + ), + ], + ); + } + + // void _onCategorySelected(String? type) { + // FocusScope.of(context).unfocus(); + // final state = context.read(); + // state.groupName = type; + // Navigator.of(context).pushNamed(Routes.filteredBookmarks, arguments: state); + // } + + void _onChanged(String value) { + final state = context.read(); + if (value.length < 4 && value.isNotEmpty || state.lastSearch == value) { + return; + } + _timer?.cancel(); + _timer = Timer(const Duration(seconds: 1), () { + state.search = value; + state.getBookmarks(); + }); + } +} + +class _NewsOverviewPlaceholder extends StatelessWidget { + const _NewsOverviewPlaceholder({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return DidvanCard( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const ShimmerPlaceholder(height: 64, width: 64), + const SizedBox(width: 8), + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: const [ + ShimmerPlaceholder(height: 18, width: 200), + SizedBox(height: 8), + ShimmerPlaceholder(height: 18, width: 100), + ], + ), + ], + ), + const SizedBox(height: 12), + const ShimmerPlaceholder( + height: 16, + width: double.infinity, + ), + const SizedBox(height: 8), + const ShimmerPlaceholder( + height: 16, + width: double.infinity, + ), + const SizedBox(height: 8), + const ShimmerPlaceholder( + height: 16, + width: 100, + ), + const DidvanDivider(verticalPadding: 8), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: const [ + ShimmerPlaceholder(height: 12, width: 150), + ShimmerPlaceholder(height: 24, width: 24), + ], + ), + ], + ), + ); + } +} diff --git a/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart b/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart new file mode 100644 index 0000000..9b5fa6e --- /dev/null +++ b/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart @@ -0,0 +1,138 @@ +import 'package:didvan/models/view/app_bar_data.dart'; +import 'package:didvan/pages/home/widgets/radar_overview.dart'; +import 'package:didvan/pages/home/settings/bookmarks/bookmark_state.dart'; +import 'package:didvan/widgets/didvan/card.dart'; +import 'package:didvan/widgets/didvan/divider.dart'; +import 'package:didvan/widgets/didvan/scaffold.dart'; +import 'package:didvan/widgets/shimmer_placeholder.dart'; +import 'package:didvan/widgets/state_handlers/empty_list.dart'; +import 'package:didvan/widgets/state_handlers/sliver_state_handler.dart'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; + +class FilteredBookmarks extends StatefulWidget { + const FilteredBookmarks({Key? key}) : super(key: key); + + @override + _FilteredBookmarksState createState() => _FilteredBookmarksState(); +} + +class _FilteredBookmarksState extends State { + @override + void initState() { + Future.delayed(Duration.zero, context.read().getBookmarks); + super.initState(); + } + + String get _appBarTitle { + switch (context.read().groupName) { + case 'radar': + return 'تحلیل‌های رادار'; + case 'news': + return 'اخبار'; + case 'video': + return 'ویدئو‌ها'; + case 'podcast': + return 'پادکست‌ها'; + default: + return 'پادکست‌ها'; + } + } + + @override + Widget build(BuildContext context) { + return DidvanScaffold( + appBarData: AppBarData(title: _appBarTitle), + slivers: [ + Consumer( + builder: (context, state, child) => + SliverStateHandler( + state: state, + enableEmptyState: state.filterdBookmarks.isEmpty, + itemPadding: const EdgeInsets.only(bottom: 8), + placeholder: const _RadarOverviewPlaceholder(), + emptyState: const EmptyList(), + builder: (context, state, index) => RadarOverview( + radar: state.filterdBookmarks[index], + onMarkChanged: (value) {}, + onCommentsChanged: (count) => state.onCommentsChanged( + state.filterdBookmarks[index].id, + count, + ), + ), + childCount: state.filterdBookmarks.length, + onRetry: state.getBookmarks, + ), + ), + ], + ); + } +} + +class _RadarOverviewPlaceholder extends StatelessWidget { + const _RadarOverviewPlaceholder({ + Key? key, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return DidvanCard( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const ShimmerPlaceholder( + width: 200, + height: 16, + ), + const SizedBox(height: 8), + const AspectRatio(aspectRatio: 16 / 9, child: ShimmerPlaceholder()), + const SizedBox(height: 8), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: const [ + ShimmerPlaceholder( + height: 12, + width: 70, + ), + ShimmerPlaceholder( + height: 12, + width: 70, + ), + ], + ), + const SizedBox(height: 8), + const ShimmerPlaceholder( + height: 16, + ), + const SizedBox(height: 8), + const ShimmerPlaceholder( + height: 16, + ), + const SizedBox(height: 8), + const ShimmerPlaceholder( + height: 16, + ), + const DidvanDivider(), + Row( + children: const [ + ShimmerPlaceholder( + height: 32, + width: 32, + ), + Spacer(), + ShimmerPlaceholder( + height: 32, + width: 32, + ), + SizedBox(width: 16), + ShimmerPlaceholder( + height: 32, + width: 32, + ), + ], + ), + ], + ), + ); + } +} From 8d84f0df472c66150cc2c93995c470d9471a2b8a Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 29 Jan 2022 15:58:15 +0330 Subject: [PATCH 174/273] bookmark bug fixed --- lib/pages/home/news/news.dart | 9 ++++++- lib/pages/home/radar/radar.dart | 24 ++++++++++++----- .../radar/radar_details/radar_details.dart | 8 +++++- .../home/radar/widgets/categories_gird.dart | 4 +-- .../home/radar/widgets/categories_list.dart | 2 +- .../filtered_bookmark/filtered_bookmark.dart | 8 +++--- lib/pages/home/widgets/news_overview.dart | 27 ++++++++----------- lib/pages/home/widgets/radar_overview.dart | 6 ++--- lib/providers/user_provider.dart | 24 +++++++---------- lib/routes/route_generator.dart | 23 +++------------- 10 files changed, 67 insertions(+), 68 deletions(-) diff --git a/lib/pages/home/news/news.dart b/lib/pages/home/news/news.dart index 7e80527..ab60ad2 100644 --- a/lib/pages/home/news/news.dart +++ b/lib/pages/home/news/news.dart @@ -2,6 +2,7 @@ import 'dart:async'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/enums.dart'; +import 'package:didvan/models/requests/news.dart'; import 'package:didvan/models/view/action_sheet_data.dart'; import 'package:didvan/pages/home/news/news_state.dart'; import 'package:didvan/pages/home/widgets/news_overview.dart'; @@ -60,7 +61,13 @@ class _NewsState extends State { final news = state.news[index]; return NewsOverview( news: news, - onMarkChanged: (value) => state.onMarkChanged(news.id, value), + onMarkChanged: (id, value) => state.onMarkChanged(id, value), + newsRequestArgs: NewsRequestArgs( + page: state.page, + endDate: state.endDate, + startDate: state.startDate, + search: state.search, + ), ); }, enableEmptyState: state.news.isEmpty, diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index 3765857..1baf079 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -1,3 +1,5 @@ +// ignore_for_file: prefer_const_constructors + import 'dart:async'; import 'dart:math'; @@ -5,6 +7,7 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/enums.dart'; +import 'package:didvan/models/requests/radar.dart'; import 'package:didvan/models/view/action_sheet_data.dart'; import 'package:didvan/pages/home/radar/radar_state.dart'; import 'package:didvan/pages/home/radar/widgets/categories_gird.dart'; @@ -132,9 +135,18 @@ class _RadarState extends State { final radar = state.radars[index]; return RadarOverview( radar: radar, - onMarkChanged: (value) => state.changeMark(radar.id, value), - onCommentsChanged: (count) => - state.onCommentsChanged(radar.id, count), + onMarkChanged: (id, value) => state.changeMark(id, value), + onCommentsChanged: (id, count) => + state.onCommentsChanged(id, count), + radarRequestArgs: RadarRequestArgs( + page: state.page, + categories: + List.from(state.selectedCats.map((cat) => cat.id)), + endDate: state.endDate, + isSingleItem: false, + search: state.search, + startDate: state.startDate, + ), ); }, childCount: state.radars.length, @@ -145,9 +157,9 @@ class _RadarState extends State { ), ], ), - if (state.appState != AppState.failed) const CategoriesRow1(), - if (state.appState != AppState.failed) const CategoriesRow2(), - if (state.appState != AppState.failed) const CategoriesList(), + if (state.appState != AppState.failed) CategoriesRow1(), + if (state.appState != AppState.failed) CategoriesRow2(), + if (state.appState != AppState.failed) CategoriesList(), ], ), ); diff --git a/lib/pages/home/radar/radar_details/radar_details.dart b/lib/pages/home/radar/radar_details/radar_details.dart index 4d1fcf7..0702917 100644 --- a/lib/pages/home/radar/radar_details/radar_details.dart +++ b/lib/pages/home/radar/radar_details/radar_details.dart @@ -59,9 +59,15 @@ class _RadarDetailsState extends State { state.currentRadar.id, value, ), - onCommentsChanged: state.onCommentsChanged, categories: state.currentRadar.categories, scrollController: _scrollController, + onCommentsChanged: (count) { + state.onCommentsChanged(count); + widget.pageData['onCommentsChanged']( + state.currentRadar.id, + count, + ); + }, ), ), ], diff --git a/lib/pages/home/radar/widgets/categories_gird.dart b/lib/pages/home/radar/widgets/categories_gird.dart index 8fc0048..9818b02 100644 --- a/lib/pages/home/radar/widgets/categories_gird.dart +++ b/lib/pages/home/radar/widgets/categories_gird.dart @@ -9,7 +9,7 @@ class CategoriesRow1 extends StatelessWidget { @override Widget build(BuildContext context) { - final state = context.watch(); + final state = context.read(); final isColapsed = state.isColapsed || state.searching || state.filtering; final MediaQueryData d = MediaQuery.of(context); return AnimatedPositioned( @@ -47,7 +47,7 @@ class CategoriesRow2 extends StatelessWidget { @override Widget build(BuildContext context) { - final state = context.watch(); + final state = context.read(); final isColapsed = state.isColapsed || state.searching || state.filtering; final MediaQueryData d = MediaQuery.of(context); return AnimatedPositioned( diff --git a/lib/pages/home/radar/widgets/categories_list.dart b/lib/pages/home/radar/widgets/categories_list.dart index 83995b3..6546c61 100644 --- a/lib/pages/home/radar/widgets/categories_list.dart +++ b/lib/pages/home/radar/widgets/categories_list.dart @@ -37,7 +37,7 @@ class _CategoriesListState extends State { @override Widget build(BuildContext context) { final MediaQueryData d = MediaQuery.of(context); - final state = context.watch(); + final state = context.read(); final isColapsed = state.isColapsed || state.searching || state.filtering; return Positioned( top: 0, diff --git a/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart b/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart index 9b5fa6e..e250b17 100644 --- a/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart +++ b/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart @@ -54,11 +54,9 @@ class _FilteredBookmarksState extends State { emptyState: const EmptyList(), builder: (context, state, index) => RadarOverview( radar: state.filterdBookmarks[index], - onMarkChanged: (value) {}, - onCommentsChanged: (count) => state.onCommentsChanged( - state.filterdBookmarks[index].id, - count, - ), + onMarkChanged: (id, value) {}, + onCommentsChanged: (id, count) => + state.onCommentsChanged(id, count), ), childCount: state.filterdBookmarks.length, onRetry: state.getBookmarks, diff --git a/lib/pages/home/widgets/news_overview.dart b/lib/pages/home/widgets/news_overview.dart index 009f7fa..8454fd1 100644 --- a/lib/pages/home/widgets/news_overview.dart +++ b/lib/pages/home/widgets/news_overview.dart @@ -1,6 +1,5 @@ import 'package:didvan/models/news_overview.dart'; import 'package:didvan/models/requests/news.dart'; -import 'package:didvan/pages/home/news/news_state.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/utils/date_time.dart'; import 'package:didvan/widgets/bookmark_button.dart'; @@ -9,30 +8,27 @@ import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/skeleton_image.dart'; import 'package:flutter/material.dart'; -import 'package:provider/provider.dart'; class NewsOverview extends StatelessWidget { final NewsOverviewData news; - final void Function(bool value) onMarkChanged; - const NewsOverview( - {Key? key, required this.news, required this.onMarkChanged}) - : super(key: key); + final NewsRequestArgs? newsRequestArgs; + final void Function(int id, bool value) onMarkChanged; + const NewsOverview({ + Key? key, + required this.news, + required this.onMarkChanged, + this.newsRequestArgs, + }) : super(key: key); @override Widget build(BuildContext context) { - final state = context.read(); return DidvanCard( onTap: () => Navigator.of(context).pushNamed( Routes.newsDetails, arguments: { - 'state': state, + 'onMarkChanged': onMarkChanged, 'id': news.id, - 'args': NewsRequestArgs( - page: state.page, - endDate: state.endDate, - search: state.search, - startDate: state.startDate, - ) + 'args': newsRequestArgs, }, ), child: Column( @@ -80,8 +76,7 @@ class NewsOverview extends StatelessWidget { ), BookmarkButton( value: news.marked, - onMarkChanged: onMarkChanged, - bigGestureSize: true, + onMarkChanged: (value) => onMarkChanged(news.id, value), ), ], ), diff --git a/lib/pages/home/widgets/radar_overview.dart b/lib/pages/home/widgets/radar_overview.dart index e246463..c9430ba 100644 --- a/lib/pages/home/widgets/radar_overview.dart +++ b/lib/pages/home/widgets/radar_overview.dart @@ -14,8 +14,8 @@ import 'package:flutter/material.dart'; class RadarOverview extends StatelessWidget { final RadarOverviewData radar; - final void Function(int count) onCommentsChanged; - final void Function(bool value) onMarkChanged; + final void Function(int id, int count) onCommentsChanged; + final void Function(int id, bool value) onMarkChanged; final RadarRequestArgs? radarRequestArgs; const RadarOverview({ Key? key, @@ -100,7 +100,7 @@ class RadarOverview extends StatelessWidget { children: [ BookmarkButton( value: radar.marked, - onMarkChanged: onMarkChanged, + onMarkChanged: (value) => onMarkChanged(radar.id, value), ), const Spacer(), if (radar.comments != 0) DidvanText(radar.comments.toString()), diff --git a/lib/providers/user_provider.dart b/lib/providers/user_provider.dart index 605e8de..3be9ea5 100644 --- a/lib/providers/user_provider.dart +++ b/lib/providers/user_provider.dart @@ -104,15 +104,13 @@ class UserProvider extends CoreProvier { final MapEntry? lastChange = _radarMarkQueue.lastWhereOrNull((item) => item.key == id); if (lastChange == null) return; + final service = RequestService(RequestHelper.markRadar(id)); if (lastChange.value) { - final service = RequestService(RequestHelper.markRadar(id)); - if (value) { - await service.post(); - } else { - await service.delete(); - } - _radarMarkQueue.removeWhere((element) => element.key == id); + await service.post(); + } else { + await service.delete(); } + _radarMarkQueue.removeWhere((element) => element.key == id); }); } @@ -122,15 +120,13 @@ class UserProvider extends CoreProvier { final MapEntry? lastChange = _newsMarkQueue.lastWhereOrNull((item) => item.key == id); if (lastChange == null) return; + final service = RequestService(RequestHelper.markNews(id)); if (lastChange.value) { - final service = RequestService(RequestHelper.markNews(id)); - if (value) { - await service.post(); - } else { - await service.delete(); - } - _newsMarkQueue.removeWhere((element) => element.key == id); + await service.post(); + } else { + await service.delete(); } + _newsMarkQueue.removeWhere((element) => element.key == id); }); } } diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index ca22e7e..85164f2 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -81,16 +81,8 @@ class RouteGenerator { ); case Routes.radarDetails: return _createRoute( - MultiProvider( - providers: [ - ChangeNotifierProvider( - create: (context) => RadarDetailsState(), - ), - if ((settings.arguments as Map)['state'] != null) - ChangeNotifierProvider.value( - value: (settings.arguments as Map)['state'], - ) - ], + ChangeNotifierProvider( + create: (context) => RadarDetailsState(), child: RadarDetails( pageData: settings.arguments as Map, ), @@ -98,15 +90,8 @@ class RouteGenerator { ); case Routes.newsDetails: return _createRoute( - MultiProvider( - providers: [ - ChangeNotifierProvider( - create: (context) => NewsDetailsState(), - ), - ChangeNotifierProvider.value( - value: (settings.arguments as Map)['state'], - ) - ], + ChangeNotifierProvider( + create: (context) => NewsDetailsState(), child: NewsDetails( pageData: settings.arguments as Map, ), From b90c8df0537beed864a3a86def3d168161b5e1fc Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 29 Jan 2022 15:58:30 +0330 Subject: [PATCH 175/273] git ignore updated --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 0fa6b67..b4dd55c 100644 --- a/.gitignore +++ b/.gitignore @@ -44,3 +44,5 @@ app.*.map.json /android/app/debug /android/app/profile /android/app/release + +.fandogh/ From 5b166b9d9750469cf9101206a786bb352a0ed7dd Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 30 Jan 2022 15:37:52 +0330 Subject: [PATCH 176/273] code cleaning --- lib/widgets/skeleton_image.dart | 113 +++++++++++--------------------- 1 file changed, 39 insertions(+), 74 deletions(-) diff --git a/lib/widgets/skeleton_image.dart b/lib/widgets/skeleton_image.dart index aecc541..ed1f93d 100644 --- a/lib/widgets/skeleton_image.dart +++ b/lib/widgets/skeleton_image.dart @@ -39,22 +39,11 @@ class _SkeletonImageState extends State { Future _getImage() async { final url = RequestHelper.baseUrl + widget.imageUrl; - - // final storage = StorageService.webStorage; - // String? imageCache = storage['image-cache']; - // final Map data = imageCache == null ? {} : jsonDecode(imageCache); - // if (data.containsKey(url)) { - // _bytes = Uint8List.fromList( - // List.from(data[url]), - // ); - // } else { _bytes = (await http.get( Uri.parse(url), headers: {'Authorization': 'Bearer ${RequestService.token}'}, )) .bodyBytes; - // addImageToStorage(); - // } if (mounted) { setState(() { _isLoading = false; @@ -62,74 +51,50 @@ class _SkeletonImageState extends State { } } - // void addImageToStorage() { - // final storage = StorageService.webStorage; - // String? imageCache = storage['image-cache']; - // final Map data = imageCache == null ? {} : Map.from(jsonDecode(imageCache)); - // data.addAll({RequestHelper.baseUrl + widget.imageUrl: _bytes}); - // StorageService.webStorage.addAll({'image-cache': jsonEncode(data)}); - // } - @override Widget build(BuildContext context) { - return _aspectRatioGenerator( - child: Builder(builder: (context) { - if (kIsWeb) { - if (_isLoading) { - return ShimmerPlaceholder( - borderRadius: widget.borderRadius, - width: widget.aspectRatio == null ? widget.width : null, - height: widget.aspectRatio == null ? widget.height : null, - ); - } - return ClipRRect( - borderRadius: widget.borderRadius, - child: Image.memory( - _bytes, - fit: BoxFit.cover, - width: widget.width, - height: widget.height, - ), - ); - // Builder( - // builder: (context) { - // if (_bytes == null || _bytes!.isEmpty) { - // return ShimmerPlaceholder( - // borderRadius: widget.borderRadius, - // ); - // } - // return ClipRRect( - // borderRadius: widget.borderRadius, - // child: Image.memory( - // _bytes!, - // width: widget.width, - // height: widget.height, - // fit: BoxFit.cover, - // ), - // ); - // }, - // ); - } - return CachedNetworkImage( - httpHeaders: {'Authorization': 'Bearer ${RequestService.token}'}, - width: widget.width, - height: widget.height, - imageUrl: RequestHelper.baseUrl + widget.imageUrl, - imageBuilder: (context, imageProvider) => Container( - decoration: BoxDecoration( - borderRadius: widget.borderRadius ?? DesignConfig.lowBorderRadius, - image: DecorationImage( - image: imageProvider, - fit: BoxFit.cover, - ), - ), - ), - progressIndicatorBuilder: (context, url, progress) => - ShimmerPlaceholder( + if (kIsWeb) { + if (_isLoading) { + return _aspectRatioGenerator( + child: ShimmerPlaceholder( borderRadius: widget.borderRadius, + width: widget.aspectRatio == null ? widget.width : null, + height: widget.aspectRatio == null ? widget.height : null, ), ); - }), + } + return _aspectRatioGenerator( + child: ClipRRect( + borderRadius: widget.borderRadius, + child: Image.memory( + _bytes, + fit: BoxFit.cover, + width: widget.width, + height: widget.height, + ), + ), + ); + } + return _aspectRatioGenerator( + child: CachedNetworkImage( + httpHeaders: {'Authorization': 'Bearer ${RequestService.token}'}, + width: widget.width, + height: widget.height, + imageUrl: RequestHelper.baseUrl + widget.imageUrl, + imageBuilder: (context, imageProvider) => Container( + decoration: BoxDecoration( + borderRadius: widget.borderRadius ?? DesignConfig.lowBorderRadius, + image: DecorationImage( + image: imageProvider, + fit: BoxFit.cover, + ), + ), + ), + progressIndicatorBuilder: (context, url, progress) => + ShimmerPlaceholder( + borderRadius: widget.borderRadius, + ), + ), ); } From 6da1f5f9f391b36d09906cfd00c2a2422dff8072 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 30 Jan 2022 16:23:11 +0330 Subject: [PATCH 177/273] comment count bug fixed --- lib/pages/home/comments/comments.dart | 2 +- lib/pages/home/comments/comments_state.dart | 11 ++++++++--- lib/pages/home/widgets/radar_overview.dart | 3 ++- lib/widgets/floating_navigation_bar.dart | 8 +++++++- 4 files changed, 18 insertions(+), 6 deletions(-) diff --git a/lib/pages/home/comments/comments.dart b/lib/pages/home/comments/comments.dart index b13e31c..ce45163 100644 --- a/lib/pages/home/comments/comments.dart +++ b/lib/pages/home/comments/comments.dart @@ -33,7 +33,7 @@ class _CommentsState extends State { final state = context.read(); state.itemId = widget.pageData['id']; state.isRadar = widget.pageData['isRadar']; - state.onCommentAdded = widget.pageData['onCommentAdded']; + state.onCommentsChanged = widget.pageData['onCommentsChanged']; Future.delayed( Duration.zero, () => state.getComments(), diff --git a/lib/pages/home/comments/comments_state.dart b/lib/pages/home/comments/comments_state.dart index 7cb276c..f690887 100644 --- a/lib/pages/home/comments/comments_state.dart +++ b/lib/pages/home/comments/comments_state.dart @@ -8,7 +8,6 @@ import 'package:didvan/providers/core_provider.dart'; import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/services/network/request.dart'; import 'package:didvan/services/network/request_helper.dart'; -import 'package:flutter/cupertino.dart'; import 'package:provider/provider.dart'; class CommentsState extends CoreProvier { @@ -16,7 +15,8 @@ class CommentsState extends CoreProvier { int? commentId; UserOverview? replyingTo; bool showReplyBox = false; - late VoidCallback onCommentAdded; + late void Function(int count) onCommentsChanged; + int _count = 0; final List comments = []; final Map> _feedbackQueue = {}; @@ -36,6 +36,10 @@ class CommentsState extends CoreProvier { final messages = service.result['comments']; for (var i = 0; i < messages.length; i++) { comments.add(CommentData.fromJson(messages[i])); + _count++; + for (var j = 0; j < messages[i]['replies'].length; j++) { + _count++; + } } appState = AppState.idle; return; @@ -99,7 +103,8 @@ class CommentsState extends CoreProvier { ); } - onCommentAdded(); + _count++; + onCommentsChanged(_count); final body = {}; diff --git a/lib/pages/home/widgets/radar_overview.dart b/lib/pages/home/widgets/radar_overview.dart index c9430ba..02fce1d 100644 --- a/lib/pages/home/widgets/radar_overview.dart +++ b/lib/pages/home/widgets/radar_overview.dart @@ -114,7 +114,8 @@ class RadarOverview extends StatelessWidget { 'isRadar': true, 'title': radar.title, 'id': radar.id, - 'onCommentsChanged': onCommentsChanged + 'onCommentsChanged': (count) => + onCommentsChanged(radar.id, count) }, ), ), diff --git a/lib/widgets/floating_navigation_bar.dart b/lib/widgets/floating_navigation_bar.dart index 1d61ab9..e670b1c 100644 --- a/lib/widgets/floating_navigation_bar.dart +++ b/lib/widgets/floating_navigation_bar.dart @@ -46,6 +46,12 @@ class _FloatingNavigationBarState extends State { bool _isScrolled = false; int _comments = 0; + @override + void didUpdateWidget(covariant FloatingNavigationBar oldWidget) { + _comments = widget.comments; + super.didUpdateWidget(oldWidget); + } + @override void initState() { _isScrolled = false; @@ -106,7 +112,7 @@ class _FloatingNavigationBarState extends State { bigGestureSize: true, ), SizedBox( - width: 48, + width: 60, child: Row( mainAxisAlignment: MainAxisAlignment.center, children: [ From b12a294f4e5acab7d585fefb9fdfbc51490d0ee2 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 30 Jan 2022 17:03:16 +0330 Subject: [PATCH 178/273] radars search bug fixed --- lib/pages/home/radar/radar.dart | 7 ++++--- .../home/radar/radar_details/radar_details_state.dart | 2 ++ lib/widgets/search_field.dart | 1 - 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index 1baf079..6da91c3 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -66,8 +66,7 @@ class _RadarState extends State { builder: (context, state, child) => Stack( children: [ CustomScrollView( - physics: _isAnimating || - (state.appState == AppState.busy && state.radars.isEmpty) + physics: _isAnimating ? const NeverScrollableScrollPhysics() : const ScrollPhysics(), controller: _scrollController, @@ -159,7 +158,8 @@ class _RadarState extends State { ), if (state.appState != AppState.failed) CategoriesRow1(), if (state.appState != AppState.failed) CategoriesRow2(), - if (state.appState != AppState.failed) CategoriesList(), + if (state.appState != AppState.failed && !state.searching) + CategoriesList(), ], ), ); @@ -281,6 +281,7 @@ class _RadarState extends State { @override void dispose() { + _focusNode.dispose(); _scrollController.dispose(); super.dispose(); } diff --git a/lib/pages/home/radar/radar_details/radar_details_state.dart b/lib/pages/home/radar/radar_details/radar_details_state.dart index ddaef05..f426a89 100644 --- a/lib/pages/home/radar/radar_details/radar_details_state.dart +++ b/lib/pages/home/radar/radar_details/radar_details_state.dart @@ -48,6 +48,7 @@ class RadarDetailsState extends CoreProvier { if (result['nextRadar'].isNotEmpty) { nextRadar = RadarDetailsData.fromJson(result['nextRadar']); } + if (isForward == null) { radars.addAll(List.generate(max(radar.order - 2, 0), (index) => null)); if (prevRadar != null) { @@ -72,6 +73,7 @@ class RadarDetailsState extends CoreProvier { appState = AppState.idle; return; } + if (isForward == null) { appState = AppState.failed; } diff --git a/lib/widgets/search_field.dart b/lib/widgets/search_field.dart index da923b3..1dd684c 100644 --- a/lib/widgets/search_field.dart +++ b/lib/widgets/search_field.dart @@ -125,7 +125,6 @@ class _SearchFieldState extends State { @override void dispose() { - widget.focusNode.dispose(); super.dispose(); } } From 4b4180ae4cdac55f5d0a49dcecf2c2dd0d0f060b Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 30 Jan 2022 17:25:02 +0330 Subject: [PATCH 179/273] restructuring --- lib/pages/home/direct/widgets/message_box.dart | 2 +- lib/pages/home/news/news.dart | 4 ++-- lib/pages/home/news/news_details/news_details.dart | 2 +- lib/pages/home/radar/radar.dart | 4 ++-- lib/pages/home/radar/radar_details/radar_details.dart | 2 +- lib/pages/home/settings/bookmarks/bookmarks.dart | 4 ++-- lib/{ => pages/home}/widgets/audio_visualizer.dart | 0 lib/{ => pages/home}/widgets/bookmark_button.dart | 0 lib/{ => pages/home}/widgets/date_picker_button.dart | 0 lib/{ => pages/home}/widgets/floating_navigation_bar.dart | 2 +- lib/{ => pages/home}/widgets/multitype_item.dart | 0 lib/pages/home/widgets/news_overview.dart | 2 +- lib/pages/home/widgets/radar_overview.dart | 2 +- lib/{ => pages/home}/widgets/search_field.dart | 0 lib/{ => pages/home}/widgets/tag_item.dart | 0 lib/widgets/didvan/page_view.dart | 2 +- 16 files changed, 13 insertions(+), 13 deletions(-) rename lib/{ => pages/home}/widgets/audio_visualizer.dart (100%) rename lib/{ => pages/home}/widgets/bookmark_button.dart (100%) rename lib/{ => pages/home}/widgets/date_picker_button.dart (100%) rename lib/{ => pages/home}/widgets/floating_navigation_bar.dart (99%) rename lib/{ => pages/home}/widgets/multitype_item.dart (100%) rename lib/{ => pages/home}/widgets/search_field.dart (100%) rename lib/{ => pages/home}/widgets/tag_item.dart (100%) diff --git a/lib/pages/home/direct/widgets/message_box.dart b/lib/pages/home/direct/widgets/message_box.dart index aac3bae..3f2ccf4 100644 --- a/lib/pages/home/direct/widgets/message_box.dart +++ b/lib/pages/home/direct/widgets/message_box.dart @@ -1,7 +1,7 @@ import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/pages/home/direct/direct_state.dart'; -import 'package:didvan/widgets/audio_visualizer.dart'; +import 'package:didvan/pages/home/widgets/audio_visualizer.dart'; import 'package:didvan/widgets/didvan/icon_button.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; diff --git a/lib/pages/home/news/news.dart b/lib/pages/home/news/news.dart index ab60ad2..34615fd 100644 --- a/lib/pages/home/news/news.dart +++ b/lib/pages/home/news/news.dart @@ -7,9 +7,9 @@ import 'package:didvan/models/view/action_sheet_data.dart'; import 'package:didvan/pages/home/news/news_state.dart'; import 'package:didvan/pages/home/widgets/news_overview.dart'; import 'package:didvan/utils/action_sheet.dart'; -import 'package:didvan/widgets/date_picker_button.dart'; +import 'package:didvan/pages/home/widgets/date_picker_button.dart'; import 'package:didvan/widgets/item_title.dart'; -import 'package:didvan/widgets/search_field.dart'; +import 'package:didvan/pages/home/widgets/search_field.dart'; import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; diff --git a/lib/pages/home/news/news_details/news_details.dart b/lib/pages/home/news/news_details/news_details.dart index 1cf70fe..8d00e0b 100644 --- a/lib/pages/home/news/news_details/news_details.dart +++ b/lib/pages/home/news/news_details/news_details.dart @@ -1,6 +1,6 @@ import 'package:didvan/pages/home/news/news_details/news_details_state.dart'; import 'package:didvan/widgets/didvan/page_view.dart'; -import 'package:didvan/widgets/floating_navigation_bar.dart'; +import 'package:didvan/pages/home/widgets/floating_navigation_bar.dart'; import 'package:didvan/widgets/state_handlers/state_handler.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index 6da91c3..84eef84 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -14,10 +14,10 @@ import 'package:didvan/pages/home/radar/widgets/categories_gird.dart'; import 'package:didvan/pages/home/radar/widgets/categories_list.dart'; import 'package:didvan/pages/home/widgets/radar_overview.dart'; import 'package:didvan/widgets/animated_visibility.dart'; -import 'package:didvan/widgets/search_field.dart'; +import 'package:didvan/pages/home/widgets/search_field.dart'; import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; import 'package:didvan/utils/action_sheet.dart'; -import 'package:didvan/widgets/date_picker_button.dart'; +import 'package:didvan/pages/home/widgets/date_picker_button.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/checkbox.dart'; import 'package:didvan/widgets/didvan/divider.dart'; diff --git a/lib/pages/home/radar/radar_details/radar_details.dart b/lib/pages/home/radar/radar_details/radar_details.dart index 0702917..4e9bedc 100644 --- a/lib/pages/home/radar/radar_details/radar_details.dart +++ b/lib/pages/home/radar/radar_details/radar_details.dart @@ -1,7 +1,7 @@ import 'package:didvan/models/requests/radar.dart'; import 'package:didvan/pages/home/radar/radar_details/radar_details_state.dart'; import 'package:didvan/widgets/didvan/page_view.dart'; -import 'package:didvan/widgets/floating_navigation_bar.dart'; +import 'package:didvan/pages/home/widgets/floating_navigation_bar.dart'; import 'package:didvan/widgets/state_handlers/state_handler.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/home/settings/bookmarks/bookmarks.dart b/lib/pages/home/settings/bookmarks/bookmarks.dart index d6526b0..8bfd02a 100644 --- a/lib/pages/home/settings/bookmarks/bookmarks.dart +++ b/lib/pages/home/settings/bookmarks/bookmarks.dart @@ -5,8 +5,8 @@ import 'package:didvan/pages/home/settings/bookmarks/bookmark_state.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/scaffold.dart'; -import 'package:didvan/widgets/multitype_item.dart'; -import 'package:didvan/widgets/search_field.dart'; +import 'package:didvan/pages/home/widgets/multitype_item.dart'; +import 'package:didvan/pages/home/widgets/search_field.dart'; import 'package:didvan/widgets/shimmer_placeholder.dart'; import 'package:didvan/widgets/state_handlers/empty_list.dart'; import 'package:didvan/widgets/state_handlers/empty_result.dart'; diff --git a/lib/widgets/audio_visualizer.dart b/lib/pages/home/widgets/audio_visualizer.dart similarity index 100% rename from lib/widgets/audio_visualizer.dart rename to lib/pages/home/widgets/audio_visualizer.dart diff --git a/lib/widgets/bookmark_button.dart b/lib/pages/home/widgets/bookmark_button.dart similarity index 100% rename from lib/widgets/bookmark_button.dart rename to lib/pages/home/widgets/bookmark_button.dart diff --git a/lib/widgets/date_picker_button.dart b/lib/pages/home/widgets/date_picker_button.dart similarity index 100% rename from lib/widgets/date_picker_button.dart rename to lib/pages/home/widgets/date_picker_button.dart diff --git a/lib/widgets/floating_navigation_bar.dart b/lib/pages/home/widgets/floating_navigation_bar.dart similarity index 99% rename from lib/widgets/floating_navigation_bar.dart rename to lib/pages/home/widgets/floating_navigation_bar.dart index e670b1c..58ef5ee 100644 --- a/lib/widgets/floating_navigation_bar.dart +++ b/lib/pages/home/widgets/floating_navigation_bar.dart @@ -6,7 +6,7 @@ import 'package:didvan/models/view/action_sheet_data.dart'; import 'package:didvan/pages/home/widgets/menu_item.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/utils/action_sheet.dart'; -import 'package:didvan/widgets/bookmark_button.dart'; +import 'package:didvan/pages/home/widgets/bookmark_button.dart'; import 'package:didvan/widgets/didvan/chip.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/icon_button.dart'; diff --git a/lib/widgets/multitype_item.dart b/lib/pages/home/widgets/multitype_item.dart similarity index 100% rename from lib/widgets/multitype_item.dart rename to lib/pages/home/widgets/multitype_item.dart diff --git a/lib/pages/home/widgets/news_overview.dart b/lib/pages/home/widgets/news_overview.dart index 8454fd1..8f43f6b 100644 --- a/lib/pages/home/widgets/news_overview.dart +++ b/lib/pages/home/widgets/news_overview.dart @@ -2,7 +2,7 @@ import 'package:didvan/models/news_overview.dart'; import 'package:didvan/models/requests/news.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/utils/date_time.dart'; -import 'package:didvan/widgets/bookmark_button.dart'; +import 'package:didvan/pages/home/widgets/bookmark_button.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/text.dart'; diff --git a/lib/pages/home/widgets/radar_overview.dart b/lib/pages/home/widgets/radar_overview.dart index 02fce1d..2d7946f 100644 --- a/lib/pages/home/widgets/radar_overview.dart +++ b/lib/pages/home/widgets/radar_overview.dart @@ -4,7 +4,7 @@ import 'package:didvan/models/radar_overview.dart'; import 'package:didvan/models/requests/radar.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/utils/date_time.dart'; -import 'package:didvan/widgets/bookmark_button.dart'; +import 'package:didvan/pages/home/widgets/bookmark_button.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/icon_button.dart'; diff --git a/lib/widgets/search_field.dart b/lib/pages/home/widgets/search_field.dart similarity index 100% rename from lib/widgets/search_field.dart rename to lib/pages/home/widgets/search_field.dart diff --git a/lib/widgets/tag_item.dart b/lib/pages/home/widgets/tag_item.dart similarity index 100% rename from lib/widgets/tag_item.dart rename to lib/pages/home/widgets/tag_item.dart diff --git a/lib/widgets/didvan/page_view.dart b/lib/widgets/didvan/page_view.dart index ef66441..7eb1739 100644 --- a/lib/widgets/didvan/page_view.dart +++ b/lib/widgets/didvan/page_view.dart @@ -4,7 +4,7 @@ import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/skeleton_image.dart'; -import 'package:didvan/widgets/tag_item.dart'; +import 'package:didvan/pages/home/widgets/tag_item.dart'; import 'package:flutter/material.dart'; import 'package:flutter_html/flutter_html.dart'; From 9920ba6b2f7577ac517a7e1db905098faa6a1d64 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 1 Feb 2022 16:52:54 +0330 Subject: [PATCH 180/273] firebase messaging configured --- android/app/build.gradle | 3 +++ android/app/google-services.json | 39 +++++++++++++++++++++++++++++ android/build.gradle | 1 + lib/services/app_initalizer.dart | 28 +++++++++++++++++++++ pubspec.lock | 42 ++++++++++++++++++++++++++++++++ pubspec.yaml | 2 ++ 6 files changed, 115 insertions(+) create mode 100644 android/app/google-services.json diff --git a/android/app/build.gradle b/android/app/build.gradle index 293ad3a..21ce8ff 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -22,6 +22,7 @@ if (flutterVersionName == null) { } apply plugin: 'com.android.application' +apply plugin: 'com.google.gms.google-services' apply plugin: 'kotlin-android' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" @@ -65,5 +66,7 @@ flutter { } dependencies { + implementation platform('com.google.firebase:firebase-bom:29.0.4') + implementation 'com.google.firebase:firebase-analytics' implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" } diff --git a/android/app/google-services.json b/android/app/google-services.json new file mode 100644 index 0000000..5cb370e --- /dev/null +++ b/android/app/google-services.json @@ -0,0 +1,39 @@ +{ + "project_info": { + "project_number": "935017686266", + "project_id": "didvan-9b7da", + "storage_bucket": "didvan-9b7da.appspot.com" + }, + "client": [ + { + "client_info": { + "mobilesdk_app_id": "1:935017686266:android:f9cbc9aba8e3d65ed2d543", + "android_client_info": { + "package_name": "com.didvan.didvanapp" + } + }, + "oauth_client": [ + { + "client_id": "935017686266-lebnol7rb05oi9h0mripb41c892d2gij.apps.googleusercontent.com", + "client_type": 3 + } + ], + "api_key": [ + { + "current_key": "AIzaSyBp-UHjWeM0H0UHtX5yguFKG-riMzvvCzw" + } + ], + "services": { + "appinvite_service": { + "other_platform_oauth_client": [ + { + "client_id": "935017686266-lebnol7rb05oi9h0mripb41c892d2gij.apps.googleusercontent.com", + "client_type": 3 + } + ] + } + } + } + ], + "configuration_version": "1" +} \ No newline at end of file diff --git a/android/build.gradle b/android/build.gradle index ed45c65..1607692 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -6,6 +6,7 @@ buildscript { } dependencies { + classpath 'com.google.gms:google-services:4.3.10' classpath 'com.android.tools.build:gradle:4.1.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } diff --git a/lib/services/app_initalizer.dart b/lib/services/app_initalizer.dart index 74c1e6c..2e9b1aa 100644 --- a/lib/services/app_initalizer.dart +++ b/lib/services/app_initalizer.dart @@ -1,4 +1,6 @@ import 'package:didvan/services/storage/storage.dart'; +import 'package:firebase_core/firebase_core.dart'; +import 'package:firebase_messaging/firebase_messaging.dart'; import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:path_provider/path_provider.dart'; @@ -10,6 +12,7 @@ class AppInitializer { (await getApplicationDocumentsDirectory()).path; StorageService.appTempsDir = (await getTemporaryDirectory()).path; } + await _initializeFirebase(); } static Future initilizeSettings() async { @@ -40,4 +43,29 @@ class AppInitializer { return ThemeMode.light; } } + + static Future _initializeFirebase() async { + try { + await Firebase.initializeApp( + options: const FirebaseOptions( + apiKey: 'AIzaSyBp-UHjWeM0H0UHtX5yguFKG-riMzvvCzw', + appId: '1:935017686266:android:f9cbc9aba8e3d65ed2d543', + messagingSenderId: '935017686266', + projectId: 'didvan-9b7da', + ), + ); + } catch (e) { + Firebase.app(); + } + final FirebaseMessaging fcm = FirebaseMessaging.instance; + await fcm.requestPermission( + alert: true, + announcement: false, + badge: true, + carPlay: false, + criticalAlert: false, + provisional: false, + sound: true, + ); + } } diff --git a/pubspec.lock b/pubspec.lock index c9f9dab..fce966d 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -155,6 +155,48 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "6.1.2" + firebase_core: + dependency: "direct main" + description: + name: firebase_core + url: "https://pub.dartlang.org" + source: hosted + version: "1.12.0" + firebase_core_platform_interface: + dependency: transitive + description: + name: firebase_core_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "4.2.4" + firebase_core_web: + dependency: transitive + description: + name: firebase_core_web + url: "https://pub.dartlang.org" + source: hosted + version: "1.5.4" + firebase_messaging: + dependency: "direct main" + description: + name: firebase_messaging + url: "https://pub.dartlang.org" + source: hosted + version: "11.2.6" + firebase_messaging_platform_interface: + dependency: transitive + description: + name: firebase_messaging_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "3.1.6" + firebase_messaging_web: + dependency: transitive + description: + name: firebase_messaging_web + url: "https://pub.dartlang.org" + source: hosted + version: "2.2.7" flutter: dependency: "direct main" description: flutter diff --git a/pubspec.yaml b/pubspec.yaml index 5836571..90f4ef2 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -60,6 +60,8 @@ dependencies: flutter_html: ^3.0.0-alpha.2 crop: ^0.5.2 url_launcher: ^6.0.18 + firebase_messaging: ^11.2.6 + firebase_core: ^1.12.0 dev_dependencies: From 8384e0b0f3f5de45b7bb97863025001a704d1774 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 1 Feb 2022 17:29:39 +0330 Subject: [PATCH 181/273] test file updated --- test/widget_test.dart | 20 +------------------- 1 file changed, 1 insertion(+), 19 deletions(-) diff --git a/test/widget_test.dart b/test/widget_test.dart index c0a607b..ae40864 100644 --- a/test/widget_test.dart +++ b/test/widget_test.dart @@ -5,26 +5,8 @@ // gestures. You can also use WidgetTester to find child widgets in the widget // tree, read text, and verify that the values of widget properties are correct. -import 'package:flutter/material.dart'; import 'package:flutter_test/flutter_test.dart'; -import 'package:didvan/main.dart'; - void main() { - testWidgets('Counter increments smoke test', (WidgetTester tester) async { - // Build our app and trigger a frame. - await tester.pumpWidget(const Didvan()); - - // Verify that our counter starts at 0. - expect(find.text('0'), findsOneWidget); - expect(find.text('1'), findsNothing); - - // Tap the '+' icon and trigger a frame. - await tester.tap(find.byIcon(Icons.add)); - await tester.pump(); - - // Verify that our counter has incremented. - expect(find.text('0'), findsNothing); - expect(find.text('1'), findsOneWidget); - }); + testWidgets('Counter increments smoke test', (WidgetTester tester) async {}); } From 3b3cdd20d0674687a678ff50d9d126b7a1d8e1b5 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 2 Feb 2022 15:56:39 +0330 Subject: [PATCH 182/273] D1APP-81 --- .../news/news_details/news_details_state.dart | 21 +++++++++++++++++ .../radar_details/radar_details_state.dart | 23 ++++++++++++++++++- 2 files changed, 43 insertions(+), 1 deletion(-) diff --git a/lib/pages/home/news/news_details/news_details_state.dart b/lib/pages/home/news/news_details/news_details_state.dart index 27b8ad3..816287d 100644 --- a/lib/pages/home/news/news_details/news_details_state.dart +++ b/lib/pages/home/news/news_details/news_details_state.dart @@ -1,3 +1,4 @@ +import 'dart:async'; import 'dart:math'; import 'package:didvan/models/enums.dart'; @@ -11,6 +12,8 @@ class NewsDetailsState extends CoreProvier { final List news = []; late final int initialIndex; late final NewsRequestArgs args; + late Timer _trackingTimer; + int _trackingTimerCounter = 0; int _currentIndex = 0; int get currentIndex => _currentIndex; @@ -23,6 +26,7 @@ class NewsDetailsState extends CoreProvier { } final service = RequestService(RequestHelper.newsDetails(id, args)); await service.httpGet(); + _handleTracking(sendRequest: isForward != null); if (service.isSuccess) { final result = service.result; NewsDetailsData? prevNews; @@ -70,4 +74,21 @@ class NewsDetailsState extends CoreProvier { news.firstWhere((item) => item!.id == currentNews.id)!.comments = count; notifyListeners(); } + + Future _handleTracking({bool sendRequest = true}) async { + if (!sendRequest) { + _trackingTimer = Timer.periodic(const Duration(seconds: 1), (timer) { + _trackingTimerCounter++; + }); + return; + } + //send request + _trackingTimerCounter = 0; + } + + @override + void dispose() { + _trackingTimer.cancel(); + super.dispose(); + } } diff --git a/lib/pages/home/radar/radar_details/radar_details_state.dart b/lib/pages/home/radar/radar_details/radar_details_state.dart index f426a89..10860ff 100644 --- a/lib/pages/home/radar/radar_details/radar_details_state.dart +++ b/lib/pages/home/radar/radar_details/radar_details_state.dart @@ -1,3 +1,4 @@ +import 'dart:async'; import 'dart:math'; import 'package:didvan/models/enums.dart'; @@ -9,6 +10,8 @@ import 'package:didvan/services/network/request_helper.dart'; class RadarDetailsState extends CoreProvier { final List radars = []; + late Timer _trackingTimer; + int _trackingTimerCounter = 0; late final int initialIndex; late final RadarRequestArgs args; @@ -29,6 +32,7 @@ class RadarDetailsState extends CoreProvier { } final service = RequestService(RequestHelper.radarDetails(id, args)); await service.httpGet(); + _handleTracking(sendRequest: isForward != null); if (service.isSuccess) { final result = service.result; RadarDetailsData? prevRadar; @@ -73,7 +77,7 @@ class RadarDetailsState extends CoreProvier { appState = AppState.idle; return; } - + //why? total page state shouldn't die! if (isForward == null) { appState = AppState.failed; } @@ -87,4 +91,21 @@ class RadarDetailsState extends CoreProvier { count; notifyListeners(); } + + Future _handleTracking({bool sendRequest = true}) async { + if (!sendRequest) { + _trackingTimer = Timer.periodic(const Duration(seconds: 1), (timer) { + _trackingTimerCounter++; + }); + return; + } + //send request + _trackingTimerCounter = 0; + } + + @override + void dispose() { + _trackingTimer.cancel(); + super.dispose(); + } } From afc9c7bafefe953573f00b820929c0eef5b73c44 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Feb 2022 12:56:08 +0330 Subject: [PATCH 183/273] D1APP-67 bookmarks --- lib/models/item_overview.dart | 42 +---- lib/models/news_overview.dart | 40 ++-- lib/models/radar_overview.dart | 49 ++--- lib/models/view/action_sheet_data.dart | 2 +- lib/pages/home/news/news.dart | 58 +----- .../home/news/news_details/news_details.dart | 5 +- .../news/news_details/news_details_state.dart | 8 +- lib/pages/home/radar/radar.dart | 73 +------- .../radar/radar_details/radar_details.dart | 9 +- .../radar_details/radar_details_state.dart | 2 +- .../settings/bookmarks/bookmark_state.dart | 60 +++--- .../home/settings/bookmarks/bookmarks.dart | 171 +++++++----------- .../filtered_bookmark/filtered_bookmark.dart | 124 ++++--------- .../filtered_bookmarks_state.dart | 65 +++++++ lib/pages/home/widgets/bookmark_button.dart | 31 +++- .../home/widgets/floating_navigation_bar.dart | 18 +- ...type_item.dart => multitype_overview.dart} | 52 +++++- lib/pages/home/widgets/news_overview.dart | 51 ++++++ lib/pages/home/widgets/radar_overview.dart | 64 +++++++ lib/routes/route_generator.dart | 7 +- lib/services/network/request_helper.dart | 2 +- lib/utils/action_sheet.dart | 76 ++++++++ lib/widgets/state_handlers/state_handler.dart | 2 +- 23 files changed, 535 insertions(+), 476 deletions(-) create mode 100644 lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart rename lib/pages/home/widgets/{multitype_item.dart => multitype_overview.dart} (58%) diff --git a/lib/models/item_overview.dart b/lib/models/item_overview.dart index 3832850..921d7db 100644 --- a/lib/models/item_overview.dart +++ b/lib/models/item_overview.dart @@ -1,62 +1,26 @@ -import 'package:didvan/models/category.dart'; - -class ItemOverview { +class OverviewData { final int id; final String title; final String image; final String description; - final int? timeToRead; - final String? reference; - final bool? forManagers; final String createdAt; final String? type; - final List? categories; - int? comments; - ItemOverview({ + const OverviewData({ required this.id, required this.title, required this.image, required this.description, - required this.timeToRead, - required this.reference, - required this.forManagers, required this.createdAt, required this.type, - required this.categories, - required this.comments, }); - factory ItemOverview.fromJson(Map json) => ItemOverview( + factory OverviewData.fromJson(Map json) => OverviewData( id: json['id'], title: json['title'], image: json['image'], description: json['description'], - timeToRead: json['timeToRead'], - reference: json['reference'], - forManagers: json['forManagers'], createdAt: json['createdAt'], type: json['type'], - comments: json['comments'], - categories: json['categories'] == null - ? null - : List.from( - json['categories'].map( - (cat) => Category.fromJson(cat), - ), - ), ); - - Map toJson() => { - 'id': id, - 'title': title, - 'image': image, - 'description': description, - 'timeToRead': timeToRead, - 'reference': reference, - 'forManagers': forManagers, - 'createdAt': createdAt, - 'type': type, - 'categories': categories?.map((e) => e.toJson()).toList(), - }; } diff --git a/lib/models/news_overview.dart b/lib/models/news_overview.dart index bdee076..35d2161 100644 --- a/lib/models/news_overview.dart +++ b/lib/models/news_overview.dart @@ -1,21 +1,25 @@ -class NewsOverviewData { - final int id; - final String title; +import 'package:didvan/models/item_overview.dart'; + +class NewsOverviewData extends OverviewData { final String reference; - final String description; - final String image; - final String createdAt; bool marked; NewsOverviewData({ - required this.id, - required this.title, required this.reference, - required this.description, - required this.image, - required this.createdAt, required this.marked, - }); + required id, + required createdAt, + required description, + required title, + required image, + }) : super( + createdAt: createdAt, + description: description, + id: id, + image: image, + title: title, + type: 'news', + ); factory NewsOverviewData.fromJson(Map json) => NewsOverviewData( @@ -25,16 +29,6 @@ class NewsOverviewData { description: json['description'], image: json['image'], createdAt: json['createdAt'], - marked: json['marked'], + marked: json['marked'] ?? true, ); - - Map toJson() => { - 'id': id, - 'title': title, - 'reference': reference, - 'description': description, - 'image': image, - 'createdAt': createdAt, - 'marked': marked, - }; } diff --git a/lib/models/radar_overview.dart b/lib/models/radar_overview.dart index b4e1da8..ba3469e 100644 --- a/lib/models/radar_overview.dart +++ b/lib/models/radar_overview.dart @@ -1,29 +1,33 @@ +import 'package:didvan/models/item_overview.dart'; + import 'category.dart'; -class RadarOverviewData { - final int id; - final String image; - final String title; - final String description; - final int timeToRead; - final String createdAt; +class RadarOverviewData extends OverviewData { final bool forManagers; - bool marked; final List categories; + final int timeToRead; int comments; + bool marked; RadarOverviewData({ - required this.id, - required this.image, - required this.title, - required this.description, - required this.timeToRead, - required this.createdAt, required this.forManagers, - required this.marked, required this.categories, required this.comments, - }); + required this.timeToRead, + required this.marked, + required createdAt, + required description, + required id, + required image, + required title, + }) : super( + createdAt: createdAt, + description: description, + id: id, + image: image, + title: title, + type: 'radar', + ); factory RadarOverviewData.fromJson(Map json) => RadarOverviewData( @@ -42,17 +46,4 @@ class RadarOverviewData { ), ), ); - - Map toJson() => { - 'id': id, - 'image': image, - 'title': title, - 'description': description, - 'timeToRead': timeToRead, - 'createdAt': createdAt, - 'forManagers': forManagers, - 'marked': marked, - 'comment': comments, - 'categories': categories.map((e) => e.toJson()).toList(), - }; } diff --git a/lib/models/view/action_sheet_data.dart b/lib/models/view/action_sheet_data.dart index 3659dd8..a95a4a2 100644 --- a/lib/models/view/action_sheet_data.dart +++ b/lib/models/view/action_sheet_data.dart @@ -13,7 +13,7 @@ class ActionSheetData { final bool withoutButtonMode; final bool smallDismissButton; - ActionSheetData({ + const ActionSheetData({ required this.content, required this.title, this.confrimTitle, diff --git a/lib/pages/home/news/news.dart b/lib/pages/home/news/news.dart index 34615fd..2adeb13 100644 --- a/lib/pages/home/news/news.dart +++ b/lib/pages/home/news/news.dart @@ -11,9 +11,6 @@ import 'package:didvan/pages/home/widgets/date_picker_button.dart'; import 'package:didvan/widgets/item_title.dart'; import 'package:didvan/pages/home/widgets/search_field.dart'; import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; -import 'package:didvan/widgets/didvan/card.dart'; -import 'package:didvan/widgets/didvan/divider.dart'; -import 'package:didvan/widgets/shimmer_placeholder.dart'; import 'package:didvan/widgets/state_handlers/empty_result.dart'; import 'package:didvan/widgets/state_handlers/sliver_state_handler.dart'; import 'package:flutter/material.dart'; @@ -76,7 +73,7 @@ class _NewsState extends State { ), childCount: state.news.length, itemPadding: const EdgeInsets.only(left: 16, right: 16, bottom: 16), - placeholder: const _NewsOverviewPlaceholder(), + placeholder: NewsOverview.placeholder, ), ], ); @@ -141,56 +138,3 @@ class _NewsState extends State { ); } } - -class _NewsOverviewPlaceholder extends StatelessWidget { - const _NewsOverviewPlaceholder({Key? key}) : super(key: key); - - @override - Widget build(BuildContext context) { - return DidvanCard( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Row( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - const ShimmerPlaceholder(height: 64, width: 64), - const SizedBox(width: 8), - Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: const [ - ShimmerPlaceholder(height: 18, width: 200), - SizedBox(height: 8), - ShimmerPlaceholder(height: 18, width: 100), - ], - ), - ], - ), - const SizedBox(height: 12), - const ShimmerPlaceholder( - height: 16, - width: double.infinity, - ), - const SizedBox(height: 8), - const ShimmerPlaceholder( - height: 16, - width: double.infinity, - ), - const SizedBox(height: 8), - const ShimmerPlaceholder( - height: 16, - width: 100, - ), - const DidvanDivider(verticalPadding: 8), - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: const [ - ShimmerPlaceholder(height: 12, width: 150), - ShimmerPlaceholder(height: 24, width: 24), - ], - ), - ], - ), - ); - } -} diff --git a/lib/pages/home/news/news_details/news_details.dart b/lib/pages/home/news/news_details/news_details.dart index 8d00e0b..d30e52f 100644 --- a/lib/pages/home/news/news_details/news_details.dart +++ b/lib/pages/home/news/news_details/news_details.dart @@ -1,3 +1,4 @@ +import 'package:didvan/models/requests/news.dart'; import 'package:didvan/pages/home/news/news_details/news_details_state.dart'; import 'package:didvan/widgets/didvan/page_view.dart'; import 'package:didvan/pages/home/widgets/floating_navigation_bar.dart'; @@ -19,7 +20,7 @@ class _NewsDetailsState extends State { @override void initState() { final state = context.read(); - state.args = widget.pageData['args']; + state.args = widget.pageData['args'] ?? const NewsRequestArgs(page: 0); Future.delayed(Duration.zero, () { state.getNewsDetails(widget.pageData['id']); }); @@ -49,6 +50,8 @@ class _NewsDetailsState extends State { left: 0, right: 0, child: FloatingNavigationBar( + hasUnmarkConfirmation: + widget.pageData['hasUnmarkConfirmation'], scrollController: _scrollController, comments: state.currentNews.comments, id: state.currentNews.id, diff --git a/lib/pages/home/news/news_details/news_details_state.dart b/lib/pages/home/news/news_details/news_details_state.dart index 816287d..ba97db3 100644 --- a/lib/pages/home/news/news_details/news_details_state.dart +++ b/lib/pages/home/news/news_details/news_details_state.dart @@ -29,11 +29,17 @@ class NewsDetailsState extends CoreProvier { _handleTracking(sendRequest: isForward != null); if (service.isSuccess) { final result = service.result; + final newsItem = NewsDetailsData.fromJson(result['news']); + if (args.page == 0) { + news.add(newsItem); + initialIndex = 0; + appState = AppState.idle; + return; + } NewsDetailsData? prevNews; if (result['prevNews'].isNotEmpty) { prevNews = NewsDetailsData.fromJson(result['prevNews']); } - final newsItem = NewsDetailsData.fromJson(result['news']); NewsDetailsData? nextNews; if (result['nextNews'].isNotEmpty) { nextNews = NewsDetailsData.fromJson(result['nextNews']); diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index 84eef84..a6bbf3b 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -18,12 +18,9 @@ import 'package:didvan/pages/home/widgets/search_field.dart'; import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; import 'package:didvan/utils/action_sheet.dart'; import 'package:didvan/pages/home/widgets/date_picker_button.dart'; -import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/checkbox.dart'; -import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/item_title.dart'; -import 'package:didvan/widgets/shimmer_placeholder.dart'; import 'package:didvan/widgets/state_handlers/empty_result.dart'; import 'package:didvan/widgets/state_handlers/sliver_state_handler.dart'; import 'package:flutter/material.dart'; @@ -129,7 +126,7 @@ class _RadarState extends State { child: EmptyResult(onNewSearch: () => _focusNode.requestFocus()), ), - placeholder: const _RadarOverviewPlaceholder(), + placeholder: RadarOverview.placeholder, builder: (context, state, index) { final radar = state.radars[index]; return RadarOverview( @@ -286,71 +283,3 @@ class _RadarState extends State { super.dispose(); } } - -class _RadarOverviewPlaceholder extends StatelessWidget { - const _RadarOverviewPlaceholder({ - Key? key, - }) : super(key: key); - - @override - Widget build(BuildContext context) { - return DidvanCard( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - const ShimmerPlaceholder( - width: 200, - height: 16, - ), - const SizedBox(height: 8), - const AspectRatio(aspectRatio: 16 / 9, child: ShimmerPlaceholder()), - const SizedBox(height: 8), - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: const [ - ShimmerPlaceholder( - height: 12, - width: 70, - ), - ShimmerPlaceholder( - height: 12, - width: 70, - ), - ], - ), - const SizedBox(height: 8), - const ShimmerPlaceholder( - height: 16, - ), - const SizedBox(height: 8), - const ShimmerPlaceholder( - height: 16, - ), - const SizedBox(height: 8), - const ShimmerPlaceholder( - height: 16, - ), - const DidvanDivider(), - Row( - children: const [ - ShimmerPlaceholder( - height: 32, - width: 32, - ), - Spacer(), - ShimmerPlaceholder( - height: 32, - width: 32, - ), - SizedBox(width: 16), - ShimmerPlaceholder( - height: 32, - width: 32, - ), - ], - ), - ], - ), - ); - } -} diff --git a/lib/pages/home/radar/radar_details/radar_details.dart b/lib/pages/home/radar/radar_details/radar_details.dart index 4e9bedc..9e83488 100644 --- a/lib/pages/home/radar/radar_details/radar_details.dart +++ b/lib/pages/home/radar/radar_details/radar_details.dart @@ -32,7 +32,7 @@ class _RadarDetailsState extends State { return Scaffold( body: Consumer( builder: (context, state, child) => StateHandler( - onRetry: () => state.getRadarDetails(state.currentRadar.id), + onRetry: () => state.getRadarDetails(widget.pageData['id']), state: state, builder: (context, state) => Stack( children: [ @@ -50,12 +50,15 @@ class _RadarDetailsState extends State { left: 0, right: 0, child: FloatingNavigationBar( + hasUnmarkConfirmation: + widget.pageData['hasUnmarkConfirmation'], comments: state.currentRadar.comments, id: state.currentRadar.id, isRadar: true, marked: state.currentRadar.marked, title: state.currentRadar.title, - onMarkChanged: (value) => widget.pageData['onMarkChanged']( + onMarkChanged: (value) => + widget.pageData['onMarkChanged']?.call( state.currentRadar.id, value, ), @@ -63,7 +66,7 @@ class _RadarDetailsState extends State { scrollController: _scrollController, onCommentsChanged: (count) { state.onCommentsChanged(count); - widget.pageData['onCommentsChanged']( + widget.pageData['onCommentsChanged']?.call( state.currentRadar.id, count, ); diff --git a/lib/pages/home/radar/radar_details/radar_details_state.dart b/lib/pages/home/radar/radar_details/radar_details_state.dart index 10860ff..61f9ccf 100644 --- a/lib/pages/home/radar/radar_details/radar_details_state.dart +++ b/lib/pages/home/radar/radar_details/radar_details_state.dart @@ -35,7 +35,6 @@ class RadarDetailsState extends CoreProvier { _handleTracking(sendRequest: isForward != null); if (service.isSuccess) { final result = service.result; - RadarDetailsData? prevRadar; final radar = RadarDetailsData.fromJson(result['radar']); if (args.page == 0) { radars.add(radar); @@ -44,6 +43,7 @@ class RadarDetailsState extends CoreProvier { return; } + RadarDetailsData? prevRadar; if (result['prevRadar'].isNotEmpty) { prevRadar = RadarDetailsData.fromJson(result['prevRadar']); } diff --git a/lib/pages/home/settings/bookmarks/bookmark_state.dart b/lib/pages/home/settings/bookmarks/bookmark_state.dart index edd2310..5786b50 100644 --- a/lib/pages/home/settings/bookmarks/bookmark_state.dart +++ b/lib/pages/home/settings/bookmarks/bookmark_state.dart @@ -1,17 +1,15 @@ import 'package:didvan/models/enums.dart'; import 'package:didvan/models/item_overview.dart'; import 'package:didvan/providers/core_provider.dart'; +import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/services/network/request.dart'; import 'package:didvan/services/network/request_helper.dart'; class BookmarksState extends CoreProvier { - final List bookmarks = []; - final List filterdBookmarks = []; + final List bookmarks = []; String search = ''; String lastSearch = ''; - String? groupName; - bool get searching => search != ''; Future getBookmarks() async { @@ -19,50 +17,34 @@ class BookmarksState extends CoreProvier { lastSearch = search; } appState = AppState.busy; - final service = RequestService(RequestHelper.bookmarks(groupName)); + final service = RequestService(RequestHelper.bookmarks()); await service.httpGet(); - String resultKey; - switch (groupName) { - case 'radar': - resultKey = 'radars'; - break; - case 'news': - resultKey = groupName!; - break; - default: - resultKey = 'contents'; - } - if (service.isSuccess) { - final marks = service.result[resultKey]; - if (groupName == null) { - bookmarks.clear(); - for (var i = 0; i < marks.length; i++) { - bookmarks.add(ItemOverview.fromJson(marks[i])); - } - } else { - filterdBookmarks.clear(); - for (var i = 0; i < marks.length; i++) { - filterdBookmarks.add(ItemOverview.fromJson(marks[i])); - } - } + if (service.isSuccess) { + final marks = service.result['contents']; + bookmarks.clear(); + for (var i = 0; i < marks.length; i++) { + bookmarks.add(OverviewData.fromJson(marks[i])); + } appState = AppState.idle; return; } appState = AppState.failed; } - void unMark(int id) { + void onMarkChanged(int id, bool value) { + if (value) return; + final type = bookmarks.firstWhere((element) => element.id == id).type; + switch (type) { + case 'radars': + UserProvider.changeRadarMark(id, value); + break; + case 'news': + UserProvider.changeNewsMark(id, value); + break; + default: + } bookmarks.removeWhere((element) => element.id == id); - filterdBookmarks.removeWhere((element) => element.id == id); - notifyListeners(); - final service = RequestService(RequestHelper.markRadar(id)); - service.delete(); - } - - void onCommentsChanged(int id, int value) { - bookmarks.firstWhere((radar) => radar.id == id).comments = value; - filterdBookmarks.firstWhere((radar) => radar.id == id).comments = value; notifyListeners(); } } diff --git a/lib/pages/home/settings/bookmarks/bookmarks.dart b/lib/pages/home/settings/bookmarks/bookmarks.dart index 8bfd02a..6d1474a 100644 --- a/lib/pages/home/settings/bookmarks/bookmarks.dart +++ b/lib/pages/home/settings/bookmarks/bookmarks.dart @@ -1,13 +1,18 @@ import 'dart:async'; +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/view/app_bar_data.dart'; import 'package:didvan/pages/home/settings/bookmarks/bookmark_state.dart'; +import 'package:didvan/pages/home/widgets/menu_item.dart'; +import 'package:didvan/routes/routes.dart'; +import 'package:didvan/widgets/animated_visibility.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/scaffold.dart'; -import 'package:didvan/pages/home/widgets/multitype_item.dart'; +import 'package:didvan/pages/home/widgets/multitype_overview.dart'; import 'package:didvan/pages/home/widgets/search_field.dart'; -import 'package:didvan/widgets/shimmer_placeholder.dart'; +import 'package:didvan/widgets/item_title.dart'; import 'package:didvan/widgets/state_handlers/empty_list.dart'; import 'package:didvan/widgets/state_handlers/empty_result.dart'; import 'package:didvan/widgets/state_handlers/sliver_state_handler.dart'; @@ -48,60 +53,62 @@ class _BookmarksState extends State { focusNode: _focuseNode, ), const SizedBox(height: 16), - // AnimatedVisibility( - // duration: DesignConfig.lowAnimationDuration, - // isVisible: !state.searching, - // child: DidvanCard( - // child: Column( - // children: [ - // MenuItem( - // onTap: () => _onCategorySelected('radar'), - // title: 'تحلیل‌های رادار', - // icon: DidvanIcons.radar_regular, - // iconSize: 24, - // ), - // const DidvanDivider(), - // MenuItem( - // onTap: () => _onCategorySelected('news'), - // title: 'اخبار', - // icon: DidvanIcons.news_regular, - // iconSize: 24, - // ), - // const DidvanDivider(), - // MenuItem( - // onTap: () => _onCategorySelected('video'), - // title: 'ویدئو‌ها', - // icon: DidvanIcons.video_regular, - // iconSize: 24, - // ), - // const DidvanDivider(), - // MenuItem( - // onTap: () => _onCategorySelected('podcast'), - // title: 'پادکست‌ها', - // icon: DidvanIcons.podcast_regular, - // iconSize: 24, - // ), - // ], - // ), - // ), - // ), - // Align( - // alignment: Alignment.centerRight, - // child: AnimatedVisibility( - // duration: DesignConfig.lowAnimationDuration, - // isVisible: !state.searching, - // child: const ItemTitle(title: 'آخرین نشان نشده‌ها'), - // ), - // ), + AnimatedVisibility( + duration: DesignConfig.lowAnimationDuration, + isVisible: !state.searching, + child: DidvanCard( + child: Column( + children: [ + MenuItem( + onTap: () => _onCategorySelected('radars'), + title: 'تحلیل‌های رادار', + icon: DidvanIcons.radar_regular, + iconSize: 24, + ), + const DidvanDivider(), + MenuItem( + onTap: () => _onCategorySelected('news'), + title: 'اخبار', + icon: DidvanIcons.news_regular, + iconSize: 24, + ), + const DidvanDivider(), + MenuItem( + onTap: () => _onCategorySelected('videos'), + title: 'ویدئو‌ها', + icon: DidvanIcons.video_regular, + iconSize: 24, + ), + const DidvanDivider(), + MenuItem( + onTap: () => _onCategorySelected('podcasts'), + title: 'پادکست‌ها', + icon: DidvanIcons.podcast_regular, + iconSize: 24, + ), + ], + ), + ), + ), + Align( + alignment: Alignment.centerRight, + child: AnimatedVisibility( + duration: DesignConfig.lowAnimationDuration, + isVisible: !state.searching, + child: const ItemTitle(title: 'آخرین نشان شده‌ها'), + ), + ), ], slivers: [ SliverStateHandler( state: state, - // centerEmptyState: state.searching, - builder: (context, state, index) => MultitypeItem( + centerEmptyState: state.searching, + builder: (context, state, index) => MultitypeOverview( item: state.bookmarks[index], + onMarkChanged: state.onMarkChanged, + hasUnmarkConfirmation: true, ), - placeholder: const _NewsOverviewPlaceholder(), + placeholder: MultitypeOverview.placeholder, itemPadding: const EdgeInsets.only(bottom: 8), emptyState: state.searching ? EmptyResult(onNewSearch: _focuseNode.requestFocus) @@ -114,12 +121,11 @@ class _BookmarksState extends State { ); } - // void _onCategorySelected(String? type) { - // FocusScope.of(context).unfocus(); - // final state = context.read(); - // state.groupName = type; - // Navigator.of(context).pushNamed(Routes.filteredBookmarks, arguments: state); - // } + void _onCategorySelected(String type) { + if (type != 'radars' && type != 'news') return; + FocusScope.of(context).unfocus(); + Navigator.of(context).pushNamed(Routes.filteredBookmarks, arguments: type); + } void _onChanged(String value) { final state = context.read(); @@ -133,56 +139,3 @@ class _BookmarksState extends State { }); } } - -class _NewsOverviewPlaceholder extends StatelessWidget { - const _NewsOverviewPlaceholder({Key? key}) : super(key: key); - - @override - Widget build(BuildContext context) { - return DidvanCard( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Row( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - const ShimmerPlaceholder(height: 64, width: 64), - const SizedBox(width: 8), - Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: const [ - ShimmerPlaceholder(height: 18, width: 200), - SizedBox(height: 8), - ShimmerPlaceholder(height: 18, width: 100), - ], - ), - ], - ), - const SizedBox(height: 12), - const ShimmerPlaceholder( - height: 16, - width: double.infinity, - ), - const SizedBox(height: 8), - const ShimmerPlaceholder( - height: 16, - width: double.infinity, - ), - const SizedBox(height: 8), - const ShimmerPlaceholder( - height: 16, - width: 100, - ), - const DidvanDivider(verticalPadding: 8), - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: const [ - ShimmerPlaceholder(height: 12, width: 150), - ShimmerPlaceholder(height: 24, width: 24), - ], - ), - ], - ), - ); - } -} diff --git a/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart b/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart index e250b17..ac5bee1 100644 --- a/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart +++ b/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart @@ -1,10 +1,10 @@ +import 'package:didvan/models/news_overview.dart'; +import 'package:didvan/models/radar_overview.dart'; import 'package:didvan/models/view/app_bar_data.dart'; +import 'package:didvan/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart'; +import 'package:didvan/pages/home/widgets/news_overview.dart'; import 'package:didvan/pages/home/widgets/radar_overview.dart'; -import 'package:didvan/pages/home/settings/bookmarks/bookmark_state.dart'; -import 'package:didvan/widgets/didvan/card.dart'; -import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/scaffold.dart'; -import 'package:didvan/widgets/shimmer_placeholder.dart'; import 'package:didvan/widgets/state_handlers/empty_list.dart'; import 'package:didvan/widgets/state_handlers/sliver_state_handler.dart'; import 'package:flutter/material.dart'; @@ -20,19 +20,22 @@ class FilteredBookmarks extends StatefulWidget { class _FilteredBookmarksState extends State { @override void initState() { - Future.delayed(Duration.zero, context.read().getBookmarks); + Future.delayed( + Duration.zero, + context.read().getBookmarks, + ); super.initState(); } String get _appBarTitle { - switch (context.read().groupName) { - case 'radar': + switch (context.read().type) { + case 'radars': return 'تحلیل‌های رادار'; case 'news': return 'اخبار'; - case 'video': + case 'videos': return 'ویدئو‌ها'; - case 'podcast': + case 'podcasts': return 'پادکست‌ها'; default: return 'پادکست‌ها'; @@ -44,93 +47,40 @@ class _FilteredBookmarksState extends State { return DidvanScaffold( appBarData: AppBarData(title: _appBarTitle), slivers: [ - Consumer( + Consumer( builder: (context, state, child) => - SliverStateHandler( + SliverStateHandler( state: state, - enableEmptyState: state.filterdBookmarks.isEmpty, + enableEmptyState: state.bookmarks.isEmpty, itemPadding: const EdgeInsets.only(bottom: 8), - placeholder: const _RadarOverviewPlaceholder(), + placeholder: RadarOverview.placeholder, emptyState: const EmptyList(), - builder: (context, state, index) => RadarOverview( - radar: state.filterdBookmarks[index], - onMarkChanged: (id, value) {}, - onCommentsChanged: (id, count) => - state.onCommentsChanged(id, count), - ), - childCount: state.filterdBookmarks.length, - onRetry: state.getBookmarks, + builder: (context, state, index) { + if (state.type == 'radars') { + return RadarOverview( + radar: state.bookmarks[index] as RadarOverviewData, + onMarkChanged: _onBookmarkChanged, + onCommentsChanged: state.onCommentsChanged, + hasUnmarkConfirmation: true, + ); + } + return NewsOverview( + news: state.bookmarks[index] as NewsOverviewData, + onMarkChanged: _onBookmarkChanged, + hasUnmarkConfirmation: true, + ); + }, + childCount: state.bookmarks.length, + onRetry: () => state.getBookmarks(), ), ), ], ); } -} -class _RadarOverviewPlaceholder extends StatelessWidget { - const _RadarOverviewPlaceholder({ - Key? key, - }) : super(key: key); - - @override - Widget build(BuildContext context) { - return DidvanCard( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - const ShimmerPlaceholder( - width: 200, - height: 16, - ), - const SizedBox(height: 8), - const AspectRatio(aspectRatio: 16 / 9, child: ShimmerPlaceholder()), - const SizedBox(height: 8), - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: const [ - ShimmerPlaceholder( - height: 12, - width: 70, - ), - ShimmerPlaceholder( - height: 12, - width: 70, - ), - ], - ), - const SizedBox(height: 8), - const ShimmerPlaceholder( - height: 16, - ), - const SizedBox(height: 8), - const ShimmerPlaceholder( - height: 16, - ), - const SizedBox(height: 8), - const ShimmerPlaceholder( - height: 16, - ), - const DidvanDivider(), - Row( - children: const [ - ShimmerPlaceholder( - height: 32, - width: 32, - ), - Spacer(), - ShimmerPlaceholder( - height: 32, - width: 32, - ), - SizedBox(width: 16), - ShimmerPlaceholder( - height: 32, - width: 32, - ), - ], - ), - ], - ), - ); + Future _onBookmarkChanged(int id, bool value) async { + if (value) return; + final state = context.read(); + state.onMarkChanged(id, false); } } diff --git a/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart b/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart new file mode 100644 index 0000000..ff5d20b --- /dev/null +++ b/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart @@ -0,0 +1,65 @@ +import 'package:didvan/models/enums.dart'; +import 'package:didvan/models/item_overview.dart'; +import 'package:didvan/models/news_overview.dart'; +import 'package:didvan/models/radar_overview.dart'; +import 'package:didvan/providers/core_provider.dart'; +import 'package:didvan/providers/user_provider.dart'; +import 'package:didvan/services/network/request.dart'; +import 'package:didvan/services/network/request_helper.dart'; + +class FilteredBookmarksState extends CoreProvier { + String search = ''; + String lastSearch = ''; + final List bookmarks = []; + final String type; + + FilteredBookmarksState(this.type); + + bool get searching => search != ''; + + Future getBookmarks() async { + if (search != '') { + lastSearch = search; + } + appState = AppState.busy; + final service = RequestService( + RequestHelper.bookmarks(type: type == 'radars' ? 'radar' : type)); + await service.httpGet(); + + if (service.isSuccess) { + final marks = service.result[type]; + bookmarks.clear(); + for (var i = 0; i < marks.length; i++) { + if (type == 'radars') { + bookmarks.add(RadarOverviewData.fromJson(marks[i])); + } + if (type == 'news') { + bookmarks.add(NewsOverviewData.fromJson(marks[i])); + } + } + appState = AppState.idle; + return; + } + appState = AppState.failed; + } + + void onMarkChanged(int id, bool value) { + switch (type) { + case 'radars': + UserProvider.changeRadarMark(id, value); + break; + case 'news': + UserProvider.changeNewsMark(id, value); + break; + default: + } + bookmarks.removeWhere((element) => element.id == id); + notifyListeners(); + } + + void onCommentsChanged(int id, int value) { + (bookmarks.firstWhere((radar) => radar.id == id) as RadarOverviewData) + .comments = value; + notifyListeners(); + } +} diff --git a/lib/pages/home/widgets/bookmark_button.dart b/lib/pages/home/widgets/bookmark_button.dart index b1b0716..eb4aa46 100644 --- a/lib/pages/home/widgets/bookmark_button.dart +++ b/lib/pages/home/widgets/bookmark_button.dart @@ -1,16 +1,21 @@ import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/models/view/action_sheet_data.dart'; +import 'package:didvan/utils/action_sheet.dart'; import 'package:didvan/widgets/didvan/icon_button.dart'; +import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; class BookmarkButton extends StatefulWidget { final bool value; final void Function(bool value) onMarkChanged; final bool bigGestureSize; + final bool askForConfirmation; const BookmarkButton({ Key? key, required this.value, this.bigGestureSize = false, required this.onMarkChanged, + this.askForConfirmation = false, }) : super(key: key); @override @@ -37,11 +42,27 @@ class _BookmarkButtonState extends State { return DidvanIconButton( gestureSize: widget.bigGestureSize ? 32 : 24, icon: _value ? DidvanIcons.bookmark_solid : DidvanIcons.bookmark_regular, - onPressed: () { - setState(() { - _value = !_value; - }); - widget.onMarkChanged(_value); + onPressed: () async { + bool confirm = false; + if (widget.askForConfirmation) { + await ActionSheetUtils.openDialog( + data: ActionSheetData( + content: const DidvanText( + 'آیا می‌خواهید این محتوا از نشان‌ شده‌ها حذف شود؟', + ), + titleIcon: DidvanIcons.bookmark_regular, + titleColor: Theme.of(context).colorScheme.secondary, + title: 'تایید عملیات', + onConfirmed: () => confirm = true, + ), + ); + } + if (!widget.askForConfirmation || confirm) { + setState(() { + _value = !_value; + }); + widget.onMarkChanged(_value); + } }, ); } diff --git a/lib/pages/home/widgets/floating_navigation_bar.dart b/lib/pages/home/widgets/floating_navigation_bar.dart index 58ef5ee..fea2fbc 100644 --- a/lib/pages/home/widgets/floating_navigation_bar.dart +++ b/lib/pages/home/widgets/floating_navigation_bar.dart @@ -16,6 +16,7 @@ import 'package:flutter/material.dart'; class FloatingNavigationBar extends StatefulWidget { final ScrollController scrollController; + final bool hasUnmarkConfirmation; final void Function(int count) onCommentsChanged; final bool isRadar; final bool marked; @@ -36,6 +37,7 @@ class FloatingNavigationBar extends StatefulWidget { required this.id, required this.title, this.categories, + this.hasUnmarkConfirmation = false, }) : super(key: key); @override @@ -107,8 +109,14 @@ class _FloatingNavigationBarState extends State { const Spacer(), if (widget.isRadar) BookmarkButton( + askForConfirmation: widget.hasUnmarkConfirmation, value: widget.marked, - onMarkChanged: widget.onMarkChanged, + onMarkChanged: (value) { + widget.onMarkChanged(value); + if (widget.hasUnmarkConfirmation && !value) { + Navigator.of(context).pop(); + } + }, bigGestureSize: true, ), SizedBox( @@ -140,8 +148,14 @@ class _FloatingNavigationBarState extends State { if (!widget.isRadar) const SizedBox(width: 12), if (!widget.isRadar) BookmarkButton( + askForConfirmation: widget.hasUnmarkConfirmation, value: widget.marked, - onMarkChanged: widget.onMarkChanged, + onMarkChanged: (value) { + widget.onMarkChanged(value); + if (widget.hasUnmarkConfirmation && !value) { + Navigator.of(context).pop(); + } + }, bigGestureSize: true, ), if (widget.isRadar) diff --git a/lib/pages/home/widgets/multitype_item.dart b/lib/pages/home/widgets/multitype_overview.dart similarity index 58% rename from lib/pages/home/widgets/multitype_item.dart rename to lib/pages/home/widgets/multitype_overview.dart index 4bdab92..ef0a944 100644 --- a/lib/pages/home/widgets/multitype_item.dart +++ b/lib/pages/home/widgets/multitype_overview.dart @@ -1,19 +1,42 @@ import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/item_overview.dart'; +import 'package:didvan/models/requests/news.dart'; +import 'package:didvan/models/requests/radar.dart'; +import 'package:didvan/routes/routes.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/shimmer_placeholder.dart'; import 'package:didvan/widgets/skeleton_image.dart'; import 'package:flutter/material.dart'; import 'package:persian_number_utility/persian_number_utility.dart'; -class MultitypeItem extends StatelessWidget { - final ItemOverview item; - const MultitypeItem({Key? key, required this.item}) : super(key: key); +class MultitypeOverview extends StatelessWidget { + final OverviewData item; + final bool hasUnmarkConfirmation; + final void Function(int id, bool value) onMarkChanged; + + const MultitypeOverview({ + Key? key, + required this.item, + required this.onMarkChanged, + this.hasUnmarkConfirmation = false, + }) : super(key: key); @override Widget build(BuildContext context) { return DidvanCard( + onTap: () => Navigator.of(context).pushNamed( + item.type == 'radar' ? Routes.radarDetails : Routes.newsDetails, + arguments: { + 'onMarkChanged': onMarkChanged, + 'id': item.id, + 'args': item.type == 'radar' + ? const RadarRequestArgs(page: 0) + : const NewsRequestArgs(page: 0), + 'hasUnmarkConfirmation': hasUnmarkConfirmation, + }, + ), child: Row( crossAxisAlignment: CrossAxisAlignment.start, children: [ @@ -72,4 +95,27 @@ class MultitypeItem extends StatelessWidget { ), ); } + + static Widget get placeholder => DidvanCard( + child: Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const ShimmerPlaceholder(height: 80, width: 80), + const SizedBox(width: 8), + SizedBox( + height: 80, + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: const [ + ShimmerPlaceholder(height: 18, width: 200), + SizedBox(height: 8), + ShimmerPlaceholder(height: 18, width: 100), + Spacer(), + ShimmerPlaceholder(height: 14, width: 80), + ], + ), + ), + ], + ), + ); } diff --git a/lib/pages/home/widgets/news_overview.dart b/lib/pages/home/widgets/news_overview.dart index 8f43f6b..0c625de 100644 --- a/lib/pages/home/widgets/news_overview.dart +++ b/lib/pages/home/widgets/news_overview.dart @@ -6,6 +6,7 @@ import 'package:didvan/pages/home/widgets/bookmark_button.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/shimmer_placeholder.dart'; import 'package:didvan/widgets/skeleton_image.dart'; import 'package:flutter/material.dart'; @@ -13,11 +14,13 @@ class NewsOverview extends StatelessWidget { final NewsOverviewData news; final NewsRequestArgs? newsRequestArgs; final void Function(int id, bool value) onMarkChanged; + final bool hasUnmarkConfirmation; const NewsOverview({ Key? key, required this.news, required this.onMarkChanged, this.newsRequestArgs, + this.hasUnmarkConfirmation = false, }) : super(key: key); @override @@ -29,6 +32,7 @@ class NewsOverview extends StatelessWidget { 'onMarkChanged': onMarkChanged, 'id': news.id, 'args': newsRequestArgs, + 'hasUnmarkConfirmation': hasUnmarkConfirmation, }, ), child: Column( @@ -77,6 +81,7 @@ class NewsOverview extends StatelessWidget { BookmarkButton( value: news.marked, onMarkChanged: (value) => onMarkChanged(news.id, value), + askForConfirmation: hasUnmarkConfirmation, ), ], ), @@ -84,4 +89,50 @@ class NewsOverview extends StatelessWidget { ), ); } + + static Widget get placeholder => DidvanCard( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const ShimmerPlaceholder(height: 64, width: 64), + const SizedBox(width: 8), + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: const [ + ShimmerPlaceholder(height: 18, width: 200), + SizedBox(height: 8), + ShimmerPlaceholder(height: 18, width: 100), + ], + ), + ], + ), + const SizedBox(height: 12), + const ShimmerPlaceholder( + height: 16, + width: double.infinity, + ), + const SizedBox(height: 8), + const ShimmerPlaceholder( + height: 16, + width: double.infinity, + ), + const SizedBox(height: 8), + const ShimmerPlaceholder( + height: 16, + width: 100, + ), + const DidvanDivider(verticalPadding: 8), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: const [ + ShimmerPlaceholder(height: 12, width: 150), + ShimmerPlaceholder(height: 24, width: 24), + ], + ), + ], + ), + ); } diff --git a/lib/pages/home/widgets/radar_overview.dart b/lib/pages/home/widgets/radar_overview.dart index 2d7946f..35be2a4 100644 --- a/lib/pages/home/widgets/radar_overview.dart +++ b/lib/pages/home/widgets/radar_overview.dart @@ -9,6 +9,7 @@ import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/icon_button.dart'; import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/shimmer_placeholder.dart'; import 'package:didvan/widgets/skeleton_image.dart'; import 'package:flutter/material.dart'; @@ -16,6 +17,7 @@ class RadarOverview extends StatelessWidget { final RadarOverviewData radar; final void Function(int id, int count) onCommentsChanged; final void Function(int id, bool value) onMarkChanged; + final bool hasUnmarkConfirmation; final RadarRequestArgs? radarRequestArgs; const RadarOverview({ Key? key, @@ -23,6 +25,7 @@ class RadarOverview extends StatelessWidget { required this.onCommentsChanged, required this.onMarkChanged, this.radarRequestArgs, + this.hasUnmarkConfirmation = false, }) : super(key: key); @override @@ -35,6 +38,7 @@ class RadarOverview extends StatelessWidget { 'onCommentsChanged': onCommentsChanged, 'id': radar.id, 'args': radarRequestArgs, + 'hasUnmarkConfirmation': hasUnmarkConfirmation, }, ), child: Column( @@ -101,6 +105,7 @@ class RadarOverview extends StatelessWidget { BookmarkButton( value: radar.marked, onMarkChanged: (value) => onMarkChanged(radar.id, value), + askForConfirmation: hasUnmarkConfirmation, ), const Spacer(), if (radar.comments != 0) DidvanText(radar.comments.toString()), @@ -129,4 +134,63 @@ class RadarOverview extends StatelessWidget { ), ); } + + static Widget get placeholder => DidvanCard( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const ShimmerPlaceholder( + width: 200, + height: 16, + ), + const SizedBox(height: 8), + const AspectRatio(aspectRatio: 16 / 9, child: ShimmerPlaceholder()), + const SizedBox(height: 8), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: const [ + ShimmerPlaceholder( + height: 12, + width: 70, + ), + ShimmerPlaceholder( + height: 12, + width: 70, + ), + ], + ), + const SizedBox(height: 8), + const ShimmerPlaceholder( + height: 16, + ), + const SizedBox(height: 8), + const ShimmerPlaceholder( + height: 16, + ), + const SizedBox(height: 8), + const ShimmerPlaceholder( + height: 16, + ), + const DidvanDivider(), + Row( + children: const [ + ShimmerPlaceholder( + height: 32, + width: 32, + ), + Spacer(), + ShimmerPlaceholder( + height: 32, + width: 32, + ), + SizedBox(width: 16), + ShimmerPlaceholder( + height: 32, + width: 32, + ), + ], + ), + ], + ), + ); } diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index 85164f2..15452b7 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -16,6 +16,7 @@ import 'package:didvan/pages/home/settings/about_us/about_us.dart'; import 'package:didvan/pages/home/settings/bookmarks/bookmarks.dart'; import 'package:didvan/pages/home/settings/bookmarks/bookmark_state.dart'; import 'package:didvan/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart'; +import 'package:didvan/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart'; import 'package:didvan/pages/home/settings/direct_list/direct_list.dart'; import 'package:didvan/pages/home/settings/direct_list/direct_list_state.dart'; import 'package:didvan/pages/home/settings/general_settings/settings.dart'; @@ -129,8 +130,10 @@ class RouteGenerator { ); case Routes.filteredBookmarks: return _createRoute( - ChangeNotifierProvider.value( - value: settings.arguments as BookmarksState, + ChangeNotifierProvider( + create: (context) => FilteredBookmarksState( + settings.arguments as String, + ), child: const FilteredBookmarks(), ), ); diff --git a/lib/services/network/request_helper.dart b/lib/services/network/request_helper.dart index 6826af8..b9f2876 100644 --- a/lib/services/network/request_helper.dart +++ b/lib/services/network/request_helper.dart @@ -14,7 +14,7 @@ class RequestHelper { static const String updateUserProfile = _baseUserUrl + '/profile/photo'; static const String checkUsername = _baseUserUrl + '/CheckUsername'; static const String updateProfile = _baseUserUrl + '/profile/edit'; - static String bookmarks(String? type) => + static String bookmarks({String? type}) => _baseUserUrl + '/marked/${type ?? ''}'; static const String directTypes = baseUrl + '/direct/types'; diff --git a/lib/utils/action_sheet.dart b/lib/utils/action_sheet.dart index 18b4930..f121af0 100644 --- a/lib/utils/action_sheet.dart +++ b/lib/utils/action_sheet.dart @@ -156,6 +156,82 @@ class ActionSheetUtils { ); } + static Future openDialog({required ActionSheetData data}) async { + await showDialog( + context: context, + builder: (context) => Dialog( + shape: const RoundedRectangleBorder( + borderRadius: DesignConfig.mediumBorderRadius, + ), + child: Padding( + padding: const EdgeInsets.all(24.0), + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + mainAxisSize: MainAxisSize.min, + children: [ + GestureDetector( + onTap: () => Navigator.of(context).pop(), + child: Icon( + data.titleIcon, + size: 20, + color: data.titleColor, + ), + ), + const SizedBox( + width: 8, + ), + Expanded( + child: DidvanText( + data.title, + style: Theme.of(context).textTheme.headline3, + color: data.titleColor, + fontWeight: FontWeight.bold, + ), + ), + ], + ), + const SizedBox( + height: 12, + ), + data.content, + const SizedBox( + height: 12, + ), + Row( + children: [ + if (data.hasDismissButton) + Expanded( + child: DidvanButton( + onPressed: data.onDismissed ?? () => pop(), + title: data.dismissTitle ?? 'بازگشت', + style: ButtonStyleMode.flat, + ), + ), + if (data.hasDismissButton) + const SizedBox( + width: 20, + ), + Expanded( + child: DidvanButton( + onPressed: () { + pop(); + data.onConfirmed?.call(); + }, + title: data.confrimTitle ?? 'تایید', + ), + ), + ], + ), + ], + ), + ), + ), + ); + } + static void pop() { DesignConfig.updateSystemUiOverlayStyle(); Navigator.of(context).pop(); diff --git a/lib/widgets/state_handlers/state_handler.dart b/lib/widgets/state_handlers/state_handler.dart index bb26748..107db8e 100644 --- a/lib/widgets/state_handlers/state_handler.dart +++ b/lib/widgets/state_handlers/state_handler.dart @@ -43,7 +43,7 @@ class StateHandler extends StatelessWidget { color: Theme.of(context).colorScheme.primary, ); case AppState.failed: - return EmptyConnection(onRetry: onRetry); + return Center(child: EmptyConnection(onRetry: onRetry)); default: return Container(); } From a2e0a9a29f63a1940b873f2e63108e324cab957b Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Feb 2022 13:24:22 +0330 Subject: [PATCH 184/273] D1APP-90 pageview scroll controlling --- .../home/news/news_details/news_details.dart | 1 + .../radar/radar_details/radar_details.dart | 1 + .../home/widgets/floating_navigation_bar.dart | 18 ++++++++++++++++++ lib/widgets/didvan/page_view.dart | 9 ++++++--- 4 files changed, 26 insertions(+), 3 deletions(-) diff --git a/lib/pages/home/news/news_details/news_details.dart b/lib/pages/home/news/news_details/news_details.dart index d30e52f..9b55a2d 100644 --- a/lib/pages/home/news/news_details/news_details.dart +++ b/lib/pages/home/news/news_details/news_details.dart @@ -43,6 +43,7 @@ class _NewsDetailsState extends State { onPageChanged: _onPageChnaged, scrollController: _scrollController, items: state.news, + currentIndex: state.currentIndex, ), if (state.news.isNotEmpty) Positioned( diff --git a/lib/pages/home/radar/radar_details/radar_details.dart b/lib/pages/home/radar/radar_details/radar_details.dart index 9e83488..6b27000 100644 --- a/lib/pages/home/radar/radar_details/radar_details.dart +++ b/lib/pages/home/radar/radar_details/radar_details.dart @@ -43,6 +43,7 @@ class _RadarDetailsState extends State { onPageChanged: _onPageChanged, scrollController: _scrollController, items: state.radars, + currentIndex: state.currentIndex, ), if (state.radars.isNotEmpty) Positioned( diff --git a/lib/pages/home/widgets/floating_navigation_bar.dart b/lib/pages/home/widgets/floating_navigation_bar.dart index fea2fbc..25bf4ef 100644 --- a/lib/pages/home/widgets/floating_navigation_bar.dart +++ b/lib/pages/home/widgets/floating_navigation_bar.dart @@ -56,6 +56,7 @@ class _FloatingNavigationBarState extends State { @override void initState() { + _handleScroll(); _isScrolled = false; _comments = widget.comments; super.initState(); @@ -170,6 +171,23 @@ class _FloatingNavigationBarState extends State { ); } + void _handleScroll() { + widget.scrollController.addListener(() { + final position = widget.scrollController.position.pixels; + final size = MediaQuery.of(context).size.height * 0.3; + if (position > size && _isScrolled == false) { + setState(() { + _isScrolled = true; + }); + } + if (position < size && _isScrolled == true) { + setState(() { + _isScrolled = false; + }); + } + }); + } + void _showMoreOptions() { final categories = widget.categories!; ActionSheetUtils.showBottomSheet( diff --git a/lib/widgets/didvan/page_view.dart b/lib/widgets/didvan/page_view.dart index 7eb1739..efbe19b 100644 --- a/lib/widgets/didvan/page_view.dart +++ b/lib/widgets/didvan/page_view.dart @@ -11,17 +11,19 @@ import 'package:flutter_html/flutter_html.dart'; class DidvanPageView extends StatefulWidget { final List items; final int initialIndex; + final int currentIndex; final bool isRadar; - final ScrollController? scrollController; + final ScrollController scrollController; final void Function(int index) onPageChanged; const DidvanPageView({ Key? key, required this.initialIndex, required this.items, - this.scrollController, + required this.scrollController, required this.onPageChanged, required this.isRadar, + required this.currentIndex, }) : super(key: key); @override @@ -48,7 +50,8 @@ class _DidvanPageViewState extends State { child: SizedBox( height: MediaQuery.of(context).size.height, child: SingleChildScrollView( - controller: index == 1 ? widget.scrollController : null, + controller: + index == widget.currentIndex ? widget.scrollController : null, physics: const BouncingScrollPhysics(), padding: EdgeInsets.only( left: 4, From e289de8de8cc28b05350e042795232a5dcced4b0 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Feb 2022 15:18:41 +0330 Subject: [PATCH 185/273] gitlab ci configuration --- .gitlab-ci.yml | 33 +++++++++++++++++++++++++++++++++ Dockerfile | 3 +++ 2 files changed, 36 insertions(+) create mode 100644 .gitlab-ci.yml create mode 100644 Dockerfile diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..627df15 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,33 @@ +stages: + - build + - push + - deploy + +build: + script: + - flutter clean + - flutter build web --webrenderer canvaskit + +push: + stage: push + image: docker:latest + services: + - docker:dind + script: + - docker login -u $CI_DEPLOY_USER -p $CI_DEPLOY_PASSWORD $CI_REGISTRY + - docker build --pull -t registry.gitlab.com/didvan/didvan-panel-server/api:latest . + - docker push registry.gitlab.com/didvan/didvan-panel-server/api:latest + only: + - test + +deploy: + stage: deploy + image: python:3.10.2 + variables: + COLLECT_ERROR: 1 + script: + - pip install fandogh_cli --upgrade + - fandogh login --username=$FAN_USR --password=$FAN_PASS + - fandogh service apply -f ./deployment/config.yaml -p SEC_NAME + only: + - test \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..32d7267 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,3 @@ +FROM nginx:latest +COPY ./build/web /usr/share/nginx/html/ +ENTRYPOINT ["nginx", "-g", "daemon off;"] \ No newline at end of file From 490c381c2f6f42eda304fa533868a650a4511404 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Feb 2022 15:32:29 +0330 Subject: [PATCH 186/273] deployment configuration --- deployment/config.yaml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 deployment/config.yaml diff --git a/deployment/config.yaml b/deployment/config.yaml new file mode 100644 index 0000000..c6a4b12 --- /dev/null +++ b/deployment/config.yaml @@ -0,0 +1,14 @@ +kind: ExternalService +name: app-test +spec: + allow_http: false + disable_default_domains: true + image: registry.gitlab.com/didvan/didvan-app/api:latest + image_pull_policy: Always + image_pull_secret: $SEC_NAME + path: / + replicas: 1 + resources: + memory: 250Mi + domains: + - name: test.didvan.app \ No newline at end of file From 0ba6e2280e7defcdb6a400b17d16198b7e66b3c5 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Feb 2022 15:35:58 +0330 Subject: [PATCH 187/273] auto deploy configuration --- .gitlab-ci.yml | 3 +++ deployment/config.yaml | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 627df15..1101f2f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -4,9 +4,12 @@ stages: - deploy build: + stage: build script: - flutter clean - flutter build web --webrenderer canvaskit + only: + - test push: stage: push diff --git a/deployment/config.yaml b/deployment/config.yaml index c6a4b12..c49f51c 100644 --- a/deployment/config.yaml +++ b/deployment/config.yaml @@ -9,6 +9,6 @@ spec: path: / replicas: 1 resources: - memory: 250Mi + memory: 150Mi domains: - name: test.didvan.app \ No newline at end of file From d65d037be15de318a7b45e6c9b2ec9f7c03c95be Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Feb 2022 15:40:27 +0330 Subject: [PATCH 188/273] auto deployement configuration --- .gitlab-ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 1101f2f..434651f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -5,6 +5,7 @@ stages: build: stage: build + image: cirrusci/flutter:latest script: - flutter clean - flutter build web --webrenderer canvaskit From 5879e6025635f97bce7cb56dd25a1348fd53287a Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Feb 2022 15:44:16 +0330 Subject: [PATCH 189/273] auto deployement configuration --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 434651f..2265157 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -8,7 +8,7 @@ build: image: cirrusci/flutter:latest script: - flutter clean - - flutter build web --webrenderer canvaskit + - flutter build web --web-renderer canvaskit only: - test From 0887ff84bf3eec6d1b04965229f93b42dbeeee22 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Feb 2022 12:22:14 +0000 Subject: [PATCH 190/273] font name updated --- lib/assets/fonts/{dana.ttf => Dana.ttf} | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename lib/assets/fonts/{dana.ttf => Dana.ttf} (100%) diff --git a/lib/assets/fonts/dana.ttf b/lib/assets/fonts/Dana.ttf similarity index 100% rename from lib/assets/fonts/dana.ttf rename to lib/assets/fonts/Dana.ttf From 87ab66ff692fafa36dca5f12b81663b23f74816f Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Feb 2022 12:30:21 +0000 Subject: [PATCH 191/273] Update Dockerfile --- Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 32d7267..a5b9d56 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,3 +1,3 @@ FROM nginx:latest -COPY ./build/web /usr/share/nginx/html/ -ENTRYPOINT ["nginx", "-g", "daemon off;"] \ No newline at end of file +COPY /build/web /usr/share/nginx/html/ +ENTRYPOINT ["nginx", "-g", "daemon off;"] From 2c858ee87e166b844fc3392e580fcb5ec1403207 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Feb 2022 12:53:18 +0000 Subject: [PATCH 192/273] Update .gitlab-ci.yml, Dockerfile --- .gitlab-ci.yml | 5 ++++- Dockerfile | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 2265157..bc0a4d1 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,3 +1,6 @@ +cache: + paths: + - build/web stages: - build - push @@ -34,4 +37,4 @@ deploy: - fandogh login --username=$FAN_USR --password=$FAN_PASS - fandogh service apply -f ./deployment/config.yaml -p SEC_NAME only: - - test \ No newline at end of file + - test diff --git a/Dockerfile b/Dockerfile index a5b9d56..f75af4b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,3 +1,3 @@ FROM nginx:latest -COPY /build/web /usr/share/nginx/html/ +COPY ./build/web /usr/share/nginx/html/ ENTRYPOINT ["nginx", "-g", "daemon off;"] From 4e9e476a9fb3c7bf579e3fb6d17649927d373139 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Feb 2022 13:00:25 +0000 Subject: [PATCH 193/273] Update .gitlab-ci.yml --- .gitlab-ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index bc0a4d1..34e5ed5 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -22,8 +22,8 @@ push: - docker:dind script: - docker login -u $CI_DEPLOY_USER -p $CI_DEPLOY_PASSWORD $CI_REGISTRY - - docker build --pull -t registry.gitlab.com/didvan/didvan-panel-server/api:latest . - - docker push registry.gitlab.com/didvan/didvan-panel-server/api:latest + - docker build --pull -t registry.gitlab.com/didvan/didvan-app/api:latest . + - docker push registry.gitlab.com/didvan/didvan-app/api:latest only: - test From bfb6d9dc1835e62e3808d734ae265a66eafe55d1 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Feb 2022 13:25:08 +0000 Subject: [PATCH 194/273] test --- lib/services/network/request_helper.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/services/network/request_helper.dart b/lib/services/network/request_helper.dart index b9f2876..c5f7296 100644 --- a/lib/services/network/request_helper.dart +++ b/lib/services/network/request_helper.dart @@ -2,7 +2,7 @@ import 'package:didvan/models/requests/news.dart'; import 'package:didvan/models/requests/radar.dart'; class RequestHelper { - static const String baseUrl = 'https://api.didvan.app'; + static const String baseUrl = 'https://test.api.didvan.app'; static const String _baseUserUrl = baseUrl + '/user'; static const String _baseRadarUrl = baseUrl + '/radar'; static const String _baseNewsUrl = baseUrl + '/news'; From c10ee395d00f077607f92b9a0564a9a943a4f5ab Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Feb 2022 13:42:13 +0000 Subject: [PATCH 195/273] test --- lib/services/network/request_helper.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/services/network/request_helper.dart b/lib/services/network/request_helper.dart index c5f7296..b9f2876 100644 --- a/lib/services/network/request_helper.dart +++ b/lib/services/network/request_helper.dart @@ -2,7 +2,7 @@ import 'package:didvan/models/requests/news.dart'; import 'package:didvan/models/requests/radar.dart'; class RequestHelper { - static const String baseUrl = 'https://test.api.didvan.app'; + static const String baseUrl = 'https://api.didvan.app'; static const String _baseUserUrl = baseUrl + '/user'; static const String _baseRadarUrl = baseUrl + '/radar'; static const String _baseNewsUrl = baseUrl + '/news'; From 04184c3b5a9a8d7fa8961e9730df3146b9c91bdc Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Feb 2022 17:36:37 +0330 Subject: [PATCH 196/273] gitlab ci configuration for dev and test --- .gitlab-ci.yml | 28 ++++++++++++++++++++++----- deployment/dev.yaml | 14 ++++++++++++++ deployment/{config.yaml => test.yaml} | 0 3 files changed, 37 insertions(+), 5 deletions(-) create mode 100644 deployment/dev.yaml rename deployment/{config.yaml => test.yaml} (100%) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 2265157..9badbc2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,3 +1,7 @@ +cache: + paths: + - build/web + stages: - build - push @@ -11,6 +15,7 @@ build: - flutter build web --web-renderer canvaskit only: - test + - dev push: stage: push @@ -19,12 +24,13 @@ push: - docker:dind script: - docker login -u $CI_DEPLOY_USER -p $CI_DEPLOY_PASSWORD $CI_REGISTRY - - docker build --pull -t registry.gitlab.com/didvan/didvan-panel-server/api:latest . - - docker push registry.gitlab.com/didvan/didvan-panel-server/api:latest + - docker build --pull -t registry.gitlab.com/didvan/didvan-app/api:latest . + - docker push registry.gitlab.com/didvan/didvan-app/api:latest only: - test + - dev -deploy: +deploy-test: stage: deploy image: python:3.10.2 variables: @@ -32,6 +38,18 @@ deploy: script: - pip install fandogh_cli --upgrade - fandogh login --username=$FAN_USR --password=$FAN_PASS - - fandogh service apply -f ./deployment/config.yaml -p SEC_NAME + - fandogh service apply -f ./deployment/test.yaml -p SEC_NAME only: - - test \ No newline at end of file + - test + +deploy-dev: + stage: deploy + image: python:3.10.2 + variables: + COLLECT_ERROR: 1 + script: + - pip install fandogh_cli --upgrade + - fandogh login --username=$FAN_USR --password=$FAN_PASS + - fandogh service apply -f ./deployment/dev.yaml -p SEC_NAME + only: + - dev \ No newline at end of file diff --git a/deployment/dev.yaml b/deployment/dev.yaml new file mode 100644 index 0000000..6738cdd --- /dev/null +++ b/deployment/dev.yaml @@ -0,0 +1,14 @@ +kind: ExternalService +name: app-dev +spec: + allow_http: false + disable_default_domains: true + image: registry.gitlab.com/didvan/didvan-app/api:latest + image_pull_policy: Always + image_pull_secret: $SEC_NAME + path: / + replicas: 1 + resources: + memory: 100Mi + domains: + - name: dev.didvan.app \ No newline at end of file diff --git a/deployment/config.yaml b/deployment/test.yaml similarity index 100% rename from deployment/config.yaml rename to deployment/test.yaml From 32f61f01db99e6f451e99994ecc1088dd03a4938 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Feb 2022 17:57:05 +0330 Subject: [PATCH 197/273] D1APP-68 related contents --- lib/models/news_details_data.dart | 2 + lib/models/radar_details_data.dart | 2 + .../home/news/news_details/news_details.dart | 7 ++++ .../news/news_details/news_details_state.dart | 21 +++++++++++ .../radar/radar_details/radar_details.dart | 7 ++++ .../radar_details/radar_details_state.dart | 21 +++++++++++ .../home/widgets/multitype_overview.dart | 2 + lib/services/network/request_helper.dart | 7 ++++ lib/widgets/didvan/page_view.dart | 37 ++++++++++++++++++- 9 files changed, 104 insertions(+), 2 deletions(-) diff --git a/lib/models/news_details_data.dart b/lib/models/news_details_data.dart index 1b603bd..75430e6 100644 --- a/lib/models/news_details_data.dart +++ b/lib/models/news_details_data.dart @@ -1,4 +1,5 @@ import 'package:didvan/models/content.dart'; +import 'package:didvan/models/item_overview.dart'; import 'package:didvan/models/tag.dart'; class NewsDetailsData { @@ -12,6 +13,7 @@ class NewsDetailsData { final int order; final List tags; final List contents; + final List relatedContents = []; NewsDetailsData({ required this.id, diff --git a/lib/models/radar_details_data.dart b/lib/models/radar_details_data.dart index fb493e3..70be8d0 100644 --- a/lib/models/radar_details_data.dart +++ b/lib/models/radar_details_data.dart @@ -1,4 +1,5 @@ import 'package:didvan/models/category.dart'; +import 'package:didvan/models/item_overview.dart'; import 'content.dart'; import 'tag.dart'; @@ -17,6 +18,7 @@ class RadarDetailsData { final List contents; final List categories; final int order; + final List relatedContents = []; RadarDetailsData({ required this.id, diff --git a/lib/pages/home/news/news_details/news_details.dart b/lib/pages/home/news/news_details/news_details.dart index 9b55a2d..ddff4cd 100644 --- a/lib/pages/home/news/news_details/news_details.dart +++ b/lib/pages/home/news/news_details/news_details.dart @@ -20,6 +20,13 @@ class _NewsDetailsState extends State { @override void initState() { final state = context.read(); + _scrollController.addListener(() { + if (_scrollController.position.pixels > + _scrollController.position.maxScrollExtent - 200 && + !state.relatedQueue.contains(state.currentNews.id)) { + state.getRelatedContents(); + } + }); state.args = widget.pageData['args'] ?? const NewsRequestArgs(page: 0); Future.delayed(Duration.zero, () { state.getNewsDetails(widget.pageData['id']); diff --git a/lib/pages/home/news/news_details/news_details_state.dart b/lib/pages/home/news/news_details/news_details_state.dart index ba97db3..ece6105 100644 --- a/lib/pages/home/news/news_details/news_details_state.dart +++ b/lib/pages/home/news/news_details/news_details_state.dart @@ -2,6 +2,7 @@ import 'dart:async'; import 'dart:math'; import 'package:didvan/models/enums.dart'; +import 'package:didvan/models/item_overview.dart'; import 'package:didvan/models/news_details_data.dart'; import 'package:didvan/models/requests/news.dart'; import 'package:didvan/providers/core_provider.dart'; @@ -14,6 +15,7 @@ class NewsDetailsState extends CoreProvier { late final NewsRequestArgs args; late Timer _trackingTimer; int _trackingTimerCounter = 0; + final List relatedQueue = []; int _currentIndex = 0; int get currentIndex => _currentIndex; @@ -92,6 +94,25 @@ class NewsDetailsState extends CoreProvier { _trackingTimerCounter = 0; } + Future getRelatedContents() async { + if (currentNews.relatedContents.isNotEmpty) return; + relatedQueue.add(currentNews.id); + final service = RequestService( + RequestHelper.tag(currentNews.tags.map((tag) => tag.id).toList())); + await service.httpGet(); + if (service.isSuccess) { + final relateds = service.result['contents']; + for (var i = 0; i < relateds.length; i++) { + news + .where((element) => element != null) + .firstWhere((element) => element!.id == currentNews.id)! + .relatedContents + .add(OverviewData.fromJson(relateds[i])); + } + notifyListeners(); + } + } + @override void dispose() { _trackingTimer.cancel(); diff --git a/lib/pages/home/radar/radar_details/radar_details.dart b/lib/pages/home/radar/radar_details/radar_details.dart index 6b27000..010cabe 100644 --- a/lib/pages/home/radar/radar_details/radar_details.dart +++ b/lib/pages/home/radar/radar_details/radar_details.dart @@ -20,6 +20,13 @@ class _RadarDetailsState extends State { @override void initState() { final state = context.read(); + _scrollController.addListener(() { + if (_scrollController.position.pixels > + _scrollController.position.maxScrollExtent - 200 && + !state.relatedQueue.contains(state.currentRadar.id)) { + state.getRelatedContents(); + } + }); state.args = widget.pageData['args'] ?? const RadarRequestArgs(page: 0); Future.delayed(Duration.zero, () { state.getRadarDetails(widget.pageData['id']); diff --git a/lib/pages/home/radar/radar_details/radar_details_state.dart b/lib/pages/home/radar/radar_details/radar_details_state.dart index 61f9ccf..5d9a439 100644 --- a/lib/pages/home/radar/radar_details/radar_details_state.dart +++ b/lib/pages/home/radar/radar_details/radar_details_state.dart @@ -2,6 +2,7 @@ import 'dart:async'; import 'dart:math'; import 'package:didvan/models/enums.dart'; +import 'package:didvan/models/item_overview.dart'; import 'package:didvan/models/radar_details_data.dart'; import 'package:didvan/models/requests/radar.dart'; import 'package:didvan/providers/core_provider.dart'; @@ -14,6 +15,7 @@ class RadarDetailsState extends CoreProvier { int _trackingTimerCounter = 0; late final int initialIndex; late final RadarRequestArgs args; + final List relatedQueue = []; int _currentIndex = 0; int get currentIndex => _currentIndex; @@ -83,6 +85,25 @@ class RadarDetailsState extends CoreProvier { } } + Future getRelatedContents() async { + if (currentRadar.relatedContents.isNotEmpty) return; + relatedQueue.add(currentRadar.id); + final service = RequestService( + RequestHelper.tag(currentRadar.tags.map((tag) => tag.id).toList())); + await service.httpGet(); + if (service.isSuccess) { + final relateds = service.result['contents']; + for (var i = 0; i < relateds.length; i++) { + radars + .where((element) => element != null) + .firstWhere((element) => element!.id == currentRadar.id)! + .relatedContents + .add(OverviewData.fromJson(relateds[i])); + } + notifyListeners(); + } + } + bool exists(RadarDetailsData? radar) => radars.any((r) => radar != null && r != null && r.id == radar.id); diff --git a/lib/pages/home/widgets/multitype_overview.dart b/lib/pages/home/widgets/multitype_overview.dart index ef0a944..4cd5f54 100644 --- a/lib/pages/home/widgets/multitype_overview.dart +++ b/lib/pages/home/widgets/multitype_overview.dart @@ -72,6 +72,8 @@ class MultitypeOverview extends StatelessWidget { DidvanText( item.title, style: Theme.of(context).textTheme.bodyText1, + maxLines: 2, + overflow: TextOverflow.ellipsis, ), Row( children: [ diff --git a/lib/services/network/request_helper.dart b/lib/services/network/request_helper.dart index b9f2876..5baf2fb 100644 --- a/lib/services/network/request_helper.dart +++ b/lib/services/network/request_helper.dart @@ -19,6 +19,13 @@ class RequestHelper { static const String directTypes = baseUrl + '/direct/types'; static String direct(int id) => _baseUserUrl + '/direct/$id'; + static String tag(List ids) => + baseUrl + + '/tag' + + _urlConcatGenerator([ + const MapEntry('limit', '3'), + MapEntry('tags', _urlListConcatGenerator(ids)) + ]); static String markRadar(int id) => _baseRadarUrl + '/$id/mark'; static String radarComments(int id) => _baseRadarUrl + '/$id/comments'; diff --git a/lib/widgets/didvan/page_view.dart b/lib/widgets/didvan/page_view.dart index efbe19b..77f91ad 100644 --- a/lib/widgets/didvan/page_view.dart +++ b/lib/widgets/didvan/page_view.dart @@ -1,8 +1,10 @@ import 'package:carousel_slider/carousel_slider.dart'; +import 'package:didvan/pages/home/widgets/multitype_overview.dart'; import 'package:didvan/utils/date_time.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/item_title.dart'; import 'package:didvan/widgets/skeleton_image.dart'; import 'package:didvan/pages/home/widgets/tag_item.dart'; import 'package:flutter/material.dart'; @@ -109,9 +111,40 @@ class _DidvanPageViewState extends State { ), ), const Padding( - padding: EdgeInsets.symmetric(horizontal: 16), - child: DidvanDivider(), + padding: EdgeInsets.only( + left: 16, + right: 16, + top: 16, + ), + child: DidvanDivider(verticalPadding: 0), ), + const Padding( + padding: EdgeInsets.symmetric(horizontal: 16.0), + child: ItemTitle(title: 'مطالب مشابه'), + ), + if (item.relatedContents.isEmpty) + for (var i = 0; i < 3; i++) + Padding( + padding: const EdgeInsets.only( + bottom: 8, + left: 16, + right: 16, + ), + child: MultitypeOverview.placeholder, + ), + for (var i = 0; i < item.relatedContents.length; i++) + Padding( + padding: const EdgeInsets.only( + bottom: 8, + left: 16, + right: 16, + ), + child: MultitypeOverview( + item: item.relatedContents[i], + onMarkChanged: (id, value) {}, + ), + ), + const SizedBox(height: 8), ], ); }, From a8132e64529c3e67c358925f4989b1faf2d89fc7 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Feb 2022 17:57:42 +0330 Subject: [PATCH 198/273] D1APP-90 arrow button bug fixed --- lib/pages/home/widgets/floating_navigation_bar.dart | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/pages/home/widgets/floating_navigation_bar.dart b/lib/pages/home/widgets/floating_navigation_bar.dart index 25bf4ef..5d8b867 100644 --- a/lib/pages/home/widgets/floating_navigation_bar.dart +++ b/lib/pages/home/widgets/floating_navigation_bar.dart @@ -51,6 +51,8 @@ class _FloatingNavigationBarState extends State { @override void didUpdateWidget(covariant FloatingNavigationBar oldWidget) { _comments = widget.comments; + _isScrolled = false; + _handleScroll(); super.didUpdateWidget(oldWidget); } From 34ac5925240a8f67b1c9c748655ef1e0023b00bc Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Feb 2022 17:57:56 +0330 Subject: [PATCH 199/273] bookmark url updated --- .../bookmarks/filtered_bookmark/filtered_bookmarks_state.dart | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart b/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart index ff5d20b..99c7476 100644 --- a/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart +++ b/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart @@ -22,8 +22,7 @@ class FilteredBookmarksState extends CoreProvier { lastSearch = search; } appState = AppState.busy; - final service = RequestService( - RequestHelper.bookmarks(type: type == 'radars' ? 'radar' : type)); + final service = RequestService(RequestHelper.bookmarks(type: type)); await service.httpGet(); if (service.isSuccess) { From ec53be589b7aad47aa22ea8fd618fd8b094f136b Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Feb 2022 14:44:31 +0000 Subject: [PATCH 200/273] Update lib/assets/fonts/Dana.ttf --- lib/assets/fonts/{dana.ttf => Dana.ttf} | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename lib/assets/fonts/{dana.ttf => Dana.ttf} (100%) diff --git a/lib/assets/fonts/dana.ttf b/lib/assets/fonts/Dana.ttf similarity index 100% rename from lib/assets/fonts/dana.ttf rename to lib/assets/fonts/Dana.ttf From 84af011e4f009dffe5ad1f45684b0919cc222b5c Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Feb 2022 18:41:57 +0330 Subject: [PATCH 201/273] D1APP-93 floating back button added to pageview --- lib/widgets/didvan/page_view.dart | 296 +++++++++++++++++++----------- 1 file changed, 190 insertions(+), 106 deletions(-) diff --git a/lib/widgets/didvan/page_view.dart b/lib/widgets/didvan/page_view.dart index 77f91ad..0f54599 100644 --- a/lib/widgets/didvan/page_view.dart +++ b/lib/widgets/didvan/page_view.dart @@ -1,9 +1,14 @@ import 'package:carousel_slider/carousel_slider.dart'; +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/pages/home/widgets/multitype_overview.dart'; import 'package:didvan/utils/date_time.dart'; +import 'package:didvan/widgets/animated_visibility.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/ink_wrapper.dart'; import 'package:didvan/widgets/item_title.dart'; import 'package:didvan/widgets/skeleton_image.dart'; import 'package:didvan/pages/home/widgets/tag_item.dart'; @@ -36,124 +41,140 @@ class _DidvanPageViewState extends State { @override Widget build(BuildContext context) { final double deviceTopPadding = MediaQuery.of(context).padding.top; - return Directionality( - textDirection: TextDirection.ltr, - child: CarouselSlider.builder( - itemCount: widget.items.length, - options: CarouselOptions( - onPageChanged: (index, reason) => widget.onPageChanged(index), - height: double.infinity, - initialPage: widget.initialIndex, - viewportFraction: 0.94, - enableInfiniteScroll: false, - ), - itemBuilder: (context, index, realIndex) => Directionality( - textDirection: TextDirection.rtl, - child: SizedBox( - height: MediaQuery.of(context).size.height, - child: SingleChildScrollView( - controller: - index == widget.currentIndex ? widget.scrollController : null, - physics: const BouncingScrollPhysics(), - padding: EdgeInsets.only( - left: 4, - right: 4, - top: 16 + deviceTopPadding, - bottom: 92, - ), - child: DidvanCard( - padding: EdgeInsets.zero, - enableBorder: false, - child: Builder( - builder: (context) { - final item = widget.items[index]; - if (item == null) { - return const SizedBox(); - } - return Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - SkeletonImage( - imageUrl: item.image, - aspectRatio: 16 / 9, - ), - const SizedBox(height: 20), - Padding( - padding: const EdgeInsets.symmetric(horizontal: 16), - child: DidvanText( - item.title, - style: Theme.of(context).textTheme.subtitle1, - ), - ), - const SizedBox(height: 8), - Padding( - padding: const EdgeInsets.symmetric(horizontal: 16), - child: _subtitle(item), - ), - for (var i = 0; i < item.contents.length; i++) - Padding( - padding: const EdgeInsets.symmetric( - horizontal: 16, - vertical: 4, + return Stack( + children: [ + Directionality( + textDirection: TextDirection.ltr, + child: CarouselSlider.builder( + itemCount: widget.items.length, + options: CarouselOptions( + onPageChanged: (index, reason) => widget.onPageChanged(index), + height: double.infinity, + initialPage: widget.initialIndex, + viewportFraction: 0.94, + enableInfiniteScroll: false, + ), + itemBuilder: (context, index, realIndex) => Directionality( + textDirection: TextDirection.rtl, + child: SizedBox( + height: MediaQuery.of(context).size.height, + child: SingleChildScrollView( + controller: index == widget.currentIndex + ? widget.scrollController + : null, + physics: const BouncingScrollPhysics(), + padding: EdgeInsets.only( + left: 4, + right: 4, + top: 16 + deviceTopPadding, + bottom: 92, + ), + child: DidvanCard( + padding: EdgeInsets.zero, + enableBorder: false, + child: Builder( + builder: (context) { + final item = widget.items[index]; + if (item == null) { + return const SizedBox(); + } + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + SkeletonImage( + imageUrl: item.image, + aspectRatio: 16 / 9, ), - child: _contentBuilder(item, i), - ), - if (item.tags.isNotEmpty) const SizedBox(height: 20), - Padding( - padding: const EdgeInsets.symmetric(horizontal: 16), - child: Wrap( - spacing: 8, - runSpacing: 8, - children: [ - for (var i = 0; i < item.tags.length; i++) - TagItem(label: item.tags[i].label), - ], - ), - ), - const Padding( - padding: EdgeInsets.only( - left: 16, - right: 16, - top: 16, - ), - child: DidvanDivider(verticalPadding: 0), - ), - const Padding( - padding: EdgeInsets.symmetric(horizontal: 16.0), - child: ItemTitle(title: 'مطالب مشابه'), - ), - if (item.relatedContents.isEmpty) - for (var i = 0; i < 3; i++) + const SizedBox(height: 20), Padding( - padding: const EdgeInsets.only( - bottom: 8, + padding: + const EdgeInsets.symmetric(horizontal: 16), + child: DidvanText( + item.title, + style: Theme.of(context).textTheme.subtitle1, + ), + ), + const SizedBox(height: 8), + Padding( + padding: + const EdgeInsets.symmetric(horizontal: 16), + child: _subtitle(item), + ), + for (var i = 0; i < item.contents.length; i++) + Padding( + padding: const EdgeInsets.symmetric( + horizontal: 16, + vertical: 4, + ), + child: _contentBuilder(item, i), + ), + if (item.tags.isNotEmpty) + const SizedBox(height: 20), + Padding( + padding: + const EdgeInsets.symmetric(horizontal: 16), + child: Wrap( + spacing: 8, + runSpacing: 8, + children: [ + for (var i = 0; i < item.tags.length; i++) + TagItem(label: item.tags[i].label), + ], + ), + ), + const Padding( + padding: EdgeInsets.only( left: 16, right: 16, + top: 16, ), - child: MultitypeOverview.placeholder, + child: DidvanDivider(verticalPadding: 0), ), - for (var i = 0; i < item.relatedContents.length; i++) - Padding( - padding: const EdgeInsets.only( - bottom: 8, - left: 16, - right: 16, + const Padding( + padding: EdgeInsets.symmetric(horizontal: 16.0), + child: ItemTitle(title: 'مطالب مشابه'), ), - child: MultitypeOverview( - item: item.relatedContents[i], - onMarkChanged: (id, value) {}, - ), - ), - const SizedBox(height: 8), - ], - ); - }, + if (item.relatedContents.isEmpty) + for (var i = 0; i < 3; i++) + Padding( + padding: const EdgeInsets.only( + bottom: 8, + left: 16, + right: 16, + ), + child: MultitypeOverview.placeholder, + ), + for (var i = 0; + i < item.relatedContents.length; + i++) + Padding( + padding: const EdgeInsets.only( + bottom: 8, + left: 16, + right: 16, + ), + child: MultitypeOverview( + item: item.relatedContents[i], + onMarkChanged: (id, value) {}, + ), + ), + const SizedBox(height: 8), + ], + ); + }, + ), + ), ), ), ), ), ), - ), + Positioned( + child: _BackButton(scrollController: widget.scrollController), + right: 24, + top: 24 + deviceTopPadding, + ), + ], ); } @@ -219,3 +240,66 @@ class _DidvanPageViewState extends State { } } } + +class _BackButton extends StatefulWidget { + final ScrollController scrollController; + const _BackButton({Key? key, required this.scrollController}) + : super(key: key); + + @override + __BackButtonState createState() => __BackButtonState(); +} + +class __BackButtonState extends State<_BackButton> { + bool _isVisible = false; + + @override + void didUpdateWidget(covariant _BackButton oldWidget) { + _isVisible = false; + _handleScroll(); + super.didUpdateWidget(oldWidget); + } + + @override + void initState() { + _handleScroll(); + super.initState(); + } + + void _handleScroll() { + widget.scrollController.addListener(() { + final position = widget.scrollController.position.pixels; + final size = MediaQuery.of(context).size.height * 0.3; + if (position > size && _isVisible == false) { + setState(() { + _isVisible = true; + }); + } + if (position < size && _isVisible == true) { + setState(() { + _isVisible = false; + }); + } + }); + } + + @override + Widget build(BuildContext context) { + return AnimatedVisibility( + duration: DesignConfig.lowAnimationDuration, + isVisible: _isVisible, + child: InkWrapper( + borderRadius: DesignConfig.lowBorderRadius, + onPressed: Navigator.of(context).pop, + child: Container( + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.splash, + border: Border.all(color: Theme.of(context).colorScheme.border), + borderRadius: DesignConfig.lowBorderRadius, + ), + child: const Icon(DidvanIcons.back_regular, size: 32), + ), + ), + ); + } +} From bfc4d99d8eebff7ead5773661171e66074e2db8c Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Feb 2022 18:55:36 +0330 Subject: [PATCH 202/273] web initial loading animation --- lib/assets/animations/loading.gif | Bin 0 -> 98028 bytes pubspec.yaml | 1 + web/index.html | 2 +- 3 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 lib/assets/animations/loading.gif diff --git a/lib/assets/animations/loading.gif b/lib/assets/animations/loading.gif new file mode 100644 index 0000000000000000000000000000000000000000..cf967e12e1f9543412155cc4c8ab27f2197f1eee GIT binary patch literal 98028 zcmeF32{e@d-}kTCn6Wj+SjIXS`x25Lr5d}jHFhJ_jK)|}A@!3~Gj^gFGZ>_?CP_nx z*0F{tduc@!l|o3Hp6UMmpXdCSU;q2LpXJ>DbMD)@T)xK{bDVKp^LoEOuj}hTus64$ zbOYVMCjfYxp8odq>9=Rjyb~Nu=Dgrwv*+{j-WL?SFD!gtRP_Gbx%cPKe<&^eP+q=J zRkd*O;$ltBVr}hWUER{vt4r6eeY|;d`PQxFJ9k#v+gCa}SGu}ZdU{rSdspw>TkY%n z^x(m#p`kUwF*dgL=+S4v@#M*u7cag{OnjM|`ts`4*O{5GuU~(ioBQ_W&9`^&zRk~n zUs(9Qvhw}Yr}fXDe|-D)^DAF3r5j_JaqSwOd=;5{1QOw241|L4=GsD}n+sc9K)oH3IP08|H>DV7%a< z_D$VVGH7nG>+vSAs8&F50HqZ_|AOzTz~fne>Oe}+)l(x%+Tm#ZJ$(9NJS<&O+0Ygb zJhg(q6hE*YVUFJlB#LX(9E%u%kVK$iL&U7uI#>8bm8h4IyUjjvDQUD(AxL?|frt?8 z(*z;Zvazk#X?8CZTOgv#CHw23-U5(=i%<;2n4qYN>_ zo(NDFdVuIBQqK`$h?raiT0=$3jq>3aU<(Xa6@G95oDmxF7_xCVA$)Y*Q85sIp0V?&X|&A3p}@)<@b-mM}& z6jl%fISB-iM>ESYcomW&%M8f$?%}BciurcRp%^mTDpZ&y9e+d1e{=iI7ny9u(7M3Q zdVoYmV|-|aKP(}%Gs#;EKt-%zLr=up87Az?CKiAw=ZOBGJqSntgL`+^(0s$e1ChSP z1ruyUh0elgN89Q{Z}GeKMWc5{;*S^ru*1?Hg~$hpkM9L!uIl)eGQ04;X8AG^zMJx! z4*D2A(itl=jA+ykl}wek3LOj^H4J@~oMd<_V7H>7pVC5)_c{;Az>dKyG;T;=0q9Og zLa!ej#fR#rc3OvuM{G6#I^tKXL&p!!TpS2k6rbL4X*WK&E7RsU5HQ0yPuMW~UPrsH& zHT0FhVu27Dui{QK^5DiJF2+6+;YoVW=BrI_huyp6^wFw9UkqpryLS=W$?|S|V{p!- ze?EhG;{p4PK~7jsMMk{NaJa7FC4ZK?;!64TZ)v6sHIWjrBYCGm6K=<1(Xd6-CZHMN z#!(X=(I#o0uMq(X%RTdMqbu(yn)vz^^|0&F`8##f2zLX^$T86cDzLebavcu}8K)jo z*I{pdeILcvR!!<6&hFzIZ+S@@RZ&VePQi(`a56{{sspEDBaw+UzURO8+3)zaxPdOA zt%#F%#7f(J%g*JsK*lTVT z=Dv{d8|0%HkrIB3D;Tpyav)Wx^dhN$R@+Ik)2PchD_bl`KLOJpkzA(jdeOm8}wvT~7_S?zVf zX|&pZrP{B*+UMGrEczeUX6RpEn^VB2s#MR^tDU`SoY!oU*KBqEw)Oej5l#0auidBL z9%kGb$+|m!W$Y#I;mbSE=lCz?9=v-0;=}Sg7V90G{Vq56U0&Y1{ColM%nQyO&U`_^ zd|}~yQPKRlbMwW;f8ig&;{5sdT<-gllJ}*h@5{>GmzRIwazB)m{N$ptG65QWsHpf* zS^43@g%4F#A3l9qsH|MLaN!SLTBxpGxO8cure@*t<%QbXg)3Kn64d3(KOsu6=J5n5 zwOC)jc=hUHL&H*i{ZFhCEE*e^nwkWBwbb0a)Y7ta{rbn|=8r8c9|emWHw4i2@z$-6 zw{L&Eb7xrqV1hHBzuelo+}5@%z_5;vzmVA7yDQz@0v=oG?OhS@Sa^o2pjU#F+P3NTN= zc!KrZ+}Ag6zP^3?_1(L#^Yh={zWoFFzP*3{?Zby}3k%;C7r!kn{UpG}#qWZ}$B*Ba zmw(dW>grD*6dY@70xVqr@@4(&*Y$7T)&+3*_3K|Kaee*&4<&nigZG2TzN4x=PDlyDD3(Qeh4IgV$ zH?c5jr>SY1Jd*nqM6;5w9hmNwhX`>!y|~Mur`^aaxuu>M*G-qlX#k5IM_>5FT~zj^Y`6t44Qej97}swpitYf=o3*S z8ll{pl~a(m&=XKv#3ji(MwXC7A-9k8iWX#-jK~%|Gn(9G6QT+8^bD!&*tH(k>_6>M zYng^oIADP)hwiAF^3v4_v`EGQHR7V>V z@_zO_Rz{nkMqx{Gf)>I_PSi@P3!Z61l~5wfJCzneUP-2rNfB_KTsKG0yFx)W20Gw`7sfdv2w2#P@D4HP+fgD8P$gws>NslGxp)IwY0``%O)e{qt<1TM z&qZ(+OW4Dx2rHR!TCklFE%0pTX4-Gmq~6;2bdBByVc*8o^-dZ{AN0VtE*m3Fqoj;q z^X<`RC~UMEpo4|vxOfQiCfe}6uXHwMNWW9?_Q6e&*a9|gz?sr)$llhp)aq$EPh%V+EU;fc03)?1-Qhj3-T}Q%;P@;IH$jIW(Aeuh#U*M3^sPq{fd;-5 zO`k=`vFNkHHBenzu^)^;v#5eHW<{~4Cui9gyk^@xm6#++U1R=D>mi5|#H&7`57(x9 zvb*n+hsh2gaigku9My6*DIHBl*jcmoXuw6e7&96(lf z&`<*j-fmhTwJKb^NGrw3BMGzFyEAzG=9|5qRbhllS3g@;~J0_|lFv6cOYjlFE@hdjE9&RzS(y!@6(bgRWn9 zpS=8C`t0VjAg|~ij7b@+Ch;_a#!#KAssF97oUebH38?ep(=QSLG=@n%)($pW`sG5fN{IEaQ`Ea-sXN6 zyCpnddQuK}|EXnL=DTxbHPz)tFD zhf6)zBRwDt$PcTdIV+8_ywFbIQz55iOcS74GM&iiT;+UijsGD9!NeZgpxbynuy z0ITGFR<~yKY!n1+2~Wg zC_VLoosThmV|2_WBY=}E=>hMb?Ams4!bTlel;vs~zv1A5wFM~ws#zPOnzsOsIlNC1 zb(1T6FZ4bkO+9`idFt+lNSJDV7H-xLvq_E)R^_^64;9h&_#Vtec9G$8Q5bb*iOb#% zQE3X2%X|?Uyr1J7n7$KhZ=5xexbIcp>+N4ZKcGuAaD`oGtrfluq`Ebf%J$FNZ~Zcu zb*7?RcYk3~R=aQsEh z?5mp0hRvK7Gfs4<2l{qr324P2VS(k zm}{MQGw}Mu#E0ddb=qIyi!lUe`4e9+ka1vZEZhmyuaf|L78{=?oV?3pRL{>@c5G)1^oEe@F*Zh zLDlywejFeFB|<)X_A83~$&Z4L@E;LUz>k8;@K*@=;lrO(q<|k+R@PTn|C=TM53p7M zn}mNc*t9#UMimy5(RRszE>5baN@@~$^tzlXPjX(#npcZtTm0(>T$>a_M!VDbdzu@L zEUI2_eEV>F8`gS$aX?!7%Hg*%^I%cc$Fh19LS3OL%3x0~k5T5ZLD4MeCfTa(*zc$H z*>s1SP>tV3a5SNH1{2;(#Nf1}Y+B0Cm6U7NZp9L8(q7`s9L$>!s$KlvO7sZFJ{H0^ zP)Ls4hQ)SRDJ8;AdtH3lKDH!#B1uy_v<-$REs01u#r!s)ib2+*d*#sa_8mC>tx2m8 zL$0xi%lR6HLWum$NRHM5W2{wnbLNztP{}sc-o2T8q`buUXJ~{(Nhe=zZ~V=*aiKj6 zBd~jI2P< zoRV8{5awDL%gS&WMo-+65nnh82WC{c!7BPw zBWml+*d~U`e&f>CVEMSuUaEoq+}0{uQfYb3amS>TLSw~aK4*)MZIPDaZi~!S;36o} zNN%fp?&b515m@h{r?YxIazFi&nxD?leu;f`*_VB|#qu&**f=w&uT`98+qK>9izMNd z0~&-YK5<8Ss%4;$y^D(@v(kJMVsqo`1CGU42D?YI(@qx8t+8(uA6Z!NS&yx>_A4uo z>Ga9Pz8RMf!kzei`a)Sl zd$5ZAXwqvP$>-Cv7my+u5+EH;TQD8XejlUhtYthg-TevqQ5>leu;wCNZoT;davmp| z{}jMQ?GSX`8r1FrFWxK8)^oN%&S|=>nvn&VOBMId5oxj<-jS1WhQ2PI&7CHCq6;-a ztHi}rLPwyK){Pu(2M0~c1kL$*y?LrVAH2X&-eIwH7#&P&)L!|q8+gtvY7XeRf>AF zoP)hjLVX?`V8KcNkbT~roauX;qO;Ofw@W1~WS@zLt5!@?^O>@7uiS}s9ZOzAH|4GA zC((4ik;4T#ySYco^I~3bC5w5Gc?NjN+HK*jmR9E8DO9_j@a)4$2Um9UgH7h#^e2`d zEpokp+^?2+WA7=vs0%~)I(nb8Hjj={ydoK| z2I|e_{E|riTScXw)7bTO>Bj>lli2$FrfO*BDVk1cur=NDqS$ga4bv8^9LwICoUxZY z*>T=dDzzq{4}2eWTCS^HdY3;oc&n6^UZWb~w>m3*bC&ehy7%)?y|MKakN!*zwfNaX~m~d@TxJ)$M?;gKmHX*%C|sJjxx6wTF(|^{P1m1siV9&}e#4k7{Va`JS07nF+i~Qs8jKm|dN(+I!;T3C;7* zf^sf?)7xp8z2!lX>c$BAWmq5*ao)D{pbVeBdu1x++!qn=tt7}uT!rl|eQ<{i&~}W1 zDjnc++fOb+=>}O0eePk+Vt#zG!9t=6q*6k2T~~z~n1Zeg(g1cYu6w4zdw58 z>$8P3*KWRc{Sf=)>+`ky*KU96|8Vl_*B8KsX1=i7LcGGa3HU<-{!fNpDdLHj6f<~A z8FhL&jry#nErr*&7T)ly?j%)r2G{k5)b}23dGLG7gXGrH^1&AsgA-RDO*f3sv`xGj zeEs3W>gT_!KNqX276qf@U$JX#?N5B=@&1Hh1>oAy@UgM+FA)2;CFt_?>&rK8{6ty7 z2>Nenc7@MhX>DEkGoW4V>iP+^f3%^0#k8OL`+v!_!^8iGwV(eEXazIv=gV8-E?f!fGv5&7**Ig_ab z`+Jh|4ae5|ju{%~$YU-L)@JK3NOid#zYhHz5i3;aGK~pT%V}FqQhUi@r77BmlM6(G zVwft{M>>4`#mK}!raFZefmISknWjlrt`LQtW0%Q~C3C2bLMPZH9#qXpDJl_`dx9u* z?94mjV~Mi^EI6`ag-h6fB9%-MiJU+?oMLCv7547sJ7R=(HRpM1?TR3d3kA-y5h?6C zzW>gI4)Qo^ZG1E>m2II~vGbfMg|lIQuQwuwb&N0M9*T1yiL?7UQ+RIU8NQ8eoS z{-RH+qZvthx9SuX=0mrG1RUvC0oZOd`I2Ku{4YaN5yB*zZDts8Bf~atrKPHf6}WG?(Ijk zPw?0E9e{Zo5rvZd_uSO?R%4MC=15F21Ge7s5H;GpgZ)GERdBx8Y}d!xlPCMF}?NTbvU zd*)}DA%IJS!}zan=R~*(yCFb95;7Rpz zt@{XgJjc;!2FZ$SRf64>+{T0wq$f(;tIaT&d@49z4{$gr+x$A))+>qJtI}tWaum7` zC~|gdxGr50nck?A3ZKS8d>yR|rcb6(MLq*fPCx^btvNVJ{nm_j8kxfpp>%oUHhaK) z5EomGZ#46^%L&Oojadv7clE$r@Vf%e_nVq9jkgCJ>u|YTG2x=Ax=ZYilz2#~UE*vn zlk4i?HV6vxGe;SSV3RkjFHV>`w^=B&(oOcwV#PsR;4~H=VPr{=(|!rP5TUw99E!EW z!2yxnX#{IA-g69(QCT}H_#49^YQ8{RJPyuk@$@vaz(~~`;zBovT4_fR6ML7{wX5mD z1s>aa2i|2HN%J9cOY~I`7RWX2*{Vlp80*?4Nk7`}U-~u8Ryes-~xA;;?v??);vZExCN=5x0vS?M}-U2JfYT z5Bt;9O=Q^~#UM?jBi^VmpML0iqF7O!lXRTMwJUA5#W{m*X_9_EgkL^XO_fJZyWRv$_V{zR0_3Pwm4x#nh$lDe6kyWVvg?6z+-KHaRVg_tFg9 ztF!-T-aYAzJ(`W;H#FZ}_duYax`n%1ZFOvTX;~o0`(bux+KC`nvj7nQq>ft^&FYH=vB&c-zIuQj|aJ6(kVr}42V34 zLYzzU)!jN~71!>OR_o36-nn??c34p^fnN`%epx)@ja6;ZZ-cTI8K|5n#0`*Gz(K2y z^-^78f}w()l-#{XM~BrAie=a?TTn*zzt=6^+BNsQTd4w<1GEkFm z#_ob=aC_9!iSnDXgC&#;#e}#MMR}G}h{XGT$|liix&enxWQ@SYp5Roq5Wa~lFTPwl z0j`i=DMU4ob~H6kHut0nAHIK9F^ViNq0J~(;v`5i4aU5JXR$|!1wkXju&v>RstegW z-3*2kwmyBLda{`pUbRnY`*f^o1`i@%8v#|nM}uFmjIlvQ!fd|?nYZ$X~7`2AhT&Kr*(-d}CH@qIqx z?2V_d-9BA^^8J0xgB#C3-T!p^>-P`z4L2u*cdoT5Y{!8>|JFkPt@40Qy{vY&Uj1yn zaqcyfyleR4n^xy9z~4#G!)eek#V zEzl5_J35v-JC_AQ=->6p|IFfK)R#~7VtPTvU3Veir=#~X;!Y6^1@QZqRO&})x z!ch1u5EK4zPJbmS{At51Aaenb3wq|i)f0Zw_%95FpD6z8dif`Z{~@&gmsA!0qXhn| z#|y}OF3R4ua7(QGO#fV!o1E5fju8SfuMd*I9n?p7z8;*) zWxb~xw@ua04Oi}h&&6vE1v7J>ew(FVZ<@cSls-_m{8(K@n|UaKJDAWdsYR?JGNz{C z*~+H&PrDQ~h#xWzhmUAdpczH@VwLsnA~<1}tceQ;`dYRRG6jgfZF#LNMg6>ig>})% zy5!%EC$kgX9|x%`4hm_gxep~vs^sU!%dx-Z4Jc~mCwD05_D3d$>J6w;tWwq@IKuAQ zV<>g^mQ6K^! zD117Tzy1szj?AgaIe|^{JV4Y0;|xQw3=m-Ye(hzZI+h`1Xc0JD?ILM0E@^Op4@`4Y z?$clBOIu-HyO2=739nW*fS}++!>!X`JU-UxaMjx*9>2GRCQ4WacD@oJfs+3UaZo?GfwMKEmx=kN?!X>8NeS znX*8KXgtRfTM<#HN5FuHK(^79NIE*LNi(6OEao)CS(_k!Xf0c)n}-V-9&ul~%h0Y` zVylvZ2>E!9l9HV$>zFD*Vxn0zwH$oL8BZw3V=|RAQtm4vj1_|WvI6i~8WfChVkk?G zNE6lIXady;=6sSb8sDDhdZG%-ER8 z?C3F{%r!%&=}9>;HHow&2TJ>#>6|$vwc~7wSkIXGL|xg0^C^vSyt);*r;ET;-!@Gj z<L~t-!Vj^Q>EQkbpA9pmZ|1E(n*Ut}aOc2aO0&axT5Fpg7}WFHIo)kaOIW+aY<| zvsX;}aCf%tV5%ZWO~!S|L!tw(Q#L)j;R+lOim(Np5##aPfZy*gDVP~R({)(r5T{qZJ4En_U`ercyo&>KXO^MeImMX$P9_t6f}{XGW11?Y zjU4G=uHq;#h^LI6IXfK7(~Jh7`gD+(9{`qEc==L(bbV5;v-sRy9stPnWiNn%+Sn%rm9f zYy&SEclY=bm32efd4wB$d_hFT=?Db5FGw=>6(8|Fj_u$TVuHh(`c4oz8xGnHD9%dx zk-(ta z99GzVAf;iX#A{2UlW0rLn}+;W69O-qHnSD8si8vb(K@K`EGkWz?38<;B;gX77hZ}6 z3z-B)>{^Jpq_OXy_Tkx2!o_m3I}*c9+`H@DaFpp@7XMVV1@yL_XM*(C4y4p?S3Bq0 zBJR<#Vj|~za@Ut}FSFV!#Bs0rqLr+itpj?*ANQSAMMxa=Z{eCY*ZV}@+{$+%gPw@( z13w^nq-r#$Lsa=~*ROb{D&=d!M-L)Y+Wa|+V&}GnM+^sr3?wO?g-VjUV}jfOimW6K zMIQJP6vq`}GZIl@_#;6sfDll40t@MbUnH_JXt+5+5F^H%hT6gQ*TG+ z7N!bEemcg`!fOMr@$<5Q2wm1|3hQ`nG^o5 zxc_UJSzx04y2KYK&A;?f{!p6#X^;Q!l=%NVIsDi5oPQMt{vUo{kSmn_({qLF<&v%Y z%C#*#I)pbUn8mDV$J?f{HvTR)I(jkXw4|JxiDR)#OH`2L=ER8ct8$u32HULtlwGe! zrz-DSinecgl{!1b+jmwb5_kViRtzg6>s$%+tcGV(jLu2#ai6jCdedOTUOcE<7kq*yO)f0+@V`m(^T!Jj1eU*Vi!p95Jz%~ zYObB@rD{%mWtFo((w&5MGj``l@89fBI=M5gF2sMA{#>%x!9E?1OfcJu1dkymIS8{D z?mh}-Q9h%}>sJU(7yY6-@>_+EklDh*IVU1;ehKBARv|DAcK19capJCTX0s7T=s?8G zYpUVMBWYI7iAlCBOJi^p^DI8;GIcPlQTPheThvG0U|Gb`C&f|=1HYFnoq9nJ7vqg$ z-LjHt&e4e+Rql@6HP$TO>@+Hx!zLS$Qn^MLaqqM(nDfDPTS!Unm?5&z_A2ixs@AON zsPrw7(p+p)pro{V+x441h0LUhXP*8pGV!_lTP??BcB(QjP)W@iom6$pn_jZF45xBc zi_c7=5jn04INZX(;53KNgV=91&##x;~`RX0D|tYO})HsI8#Q&-^5vgLtbD0 zef>GYabf5w23?0%FRmVBLTMi^uRVvZ^$$H{p5QjP(_A#c&eFKs<^T-M`#dh>#q&^W zi;DA-0A1;zPeDwLT46%FjjSLL?fZPEm&qAksya?W7YK4#-X{p}H)<>7xH{d+>9ETy z2A8$7%i2jsj{6DRX%pQFj#bFo?DUR6+v5Jxkimq3r+4!|p-IH8kHNgXOsO0T28)T| zMxunq%1-c?WLxR42WSA0TOP&CZgrPo=wIO2#)Jq$L34^3RA8PwxQ=nh<}v0t)FYD1 zaM**RTXSm2CXwnQXw3v@ju-ZjFwg@$(7eu+D+#k7Z|!m^Z2`;i)Ys)=Q~)tD%E%>I z*xtC6iq>Spr(I7f*WsV55mDP5A82%3dOWi90XPhr33VV&~g zeq-82xoK=lEOjW*;>e~RHmUHyfxL%y099Aj->vu2MN>TzdTOi+gA-nv-Lk+aA%m!& zA=&^`ejpprhd3&xZ#Zg>QWf#UbwB}4hrl{9F^0AkQXuRfYw|Cc&IP(F9N`?0de(>F zGTREBpe@WILf1(fQVBJm*wavAdstJvXAHM*a|zYSWE721a}B(o#H5xoIYUJA=AF!m z#qe1D9-Xg#%(sqR5jLR2`vc7*lyr%@@eJjH#ENa?VJg&@DSQ8;`U(^;P5?KTO3aAoxVIAQ z;dE3KG%@(J9^suj=afv6wy0lx#pK0J#x+g zQ9%{!8Udy=fm26PVWz@#!1j~6Lw?5RGfTw5;zP-}o3qx2^v72(Z`4@t;n!q<8+*Qm zow{nL0IhXKikg!T{cuiGimk9J!*7Q4*&#xQUjZWUk6?5JaKxsH`OfK;u#;6KyrGII zLiddn>aLj*;gMKb2Ti^>JE>c;t=YEt)bsn!k$u~&kVJDGyZj83T`0z-O1T3fe#Xwg z@6gHt;p!mCV(??nIL()Quj z*S>4@G;sXrbzl0i<)Inmo=6c>CJgw>-BW>X@wh=TW zW|Hu+4(A_YsQ`(+Dt@FPV@v68R}o@6DfY0W8Qr_N#e?B%u?ov%)Bj|CZ}8}`M#?~Z2Njo8enAWQ+u8$ZG$_Z~l=6%@ z$53=O%`)Tp*l))tG}sNLZdxM`=Mb#qADu+nMliyDSjC@nvc@(zYr=NtZ+)ROnRLxp z6Xs|H8Qx*^Uonh@h!LVR>2%&*QKt2ny%3Ldtq1a z{UI48@<)z5o33=v3|4OTp-*`{lcym+!{jEWTV=SzP<_ck23TN5^Vs z=dWZRL5lcv@7^atiug0@XKirspQMP-V`HBmKK!|v#V>-ym#0s^{L>)ub!zJC%a{Ko zOZ>Y|&_Br%|Go|M-&x}SVQ%=pcq&2Ufc)o1j@!%auS9bcHwEytjnxu`#8vHCKEvj2AO=P09Bove?^Nm;zN-9NFR*+sCkgp4(Rc`+_(L%xEF%e~?g z$J#TEj{BwPwuZ}9h?wDiV?P<5T>OBvfPZV;B;u|~rnh~HXO zZ2SR7jPQ<$t|4X0G#49$3tz-qNASrUxa*p#r?P7_86$oq&K!w#4JTsKG{;zXC3QW7 z;-%LM7E+^44lFdHK@Iow3pR_-@7xUnMi_DW}AdJu#fTf68(xCI7nF6N*98S zAb4f78}SYS!P9Gba2hr!Iqy_bMAxo;;Z+RLquN0!tei+A`(31Na}IKwAuKgJ=K#>< z@8y*X^YZmNYUgh|tDWpcp7?DX6)Y}@9FcAn$%XPr_c5vb77ANoJvxlo>9>biY0dO$ zU3^Z>iQk-DBA-Ej>mA|P48rU^S4V-@9-I-%k&mF;`yOrXX+5|5a$O1hL>LUtl~)wa zmE+&e()KBJTMh9e5i4zd_7Q!cB#v8CXzjrQXBn)Hi%c8OgP~x3jXDZ45c8&3jo+d% ztT?eAlarOmFqkn(*k(JdgQ{+xpQ|$RUE0)Ju1jd{H^kTp40{*Fi@%3Pj{id

NZog>tx<`9A9+(iq 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 z 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μ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 Date: Sun, 6 Feb 2022 10:32:49 +0330 Subject: [PATCH 203/273] web initial loading asset path updated --- web/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/index.html b/web/index.html index a3aec6a..90612ef 100644 --- a/web/index.html +++ b/web/index.html @@ -46,7 +46,7 @@

- +
+ - + diff --git a/pubspec.lock b/pubspec.lock index 21c01a3..e7b83b5 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -546,6 +546,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "6.0.2" + pushe_flutter: + dependency: "direct main" + description: + name: pushe_flutter + url: "https://pub.dartlang.org" + source: hosted + version: "2.5.2" record: dependency: "direct main" description: diff --git a/pubspec.yaml b/pubspec.yaml index 0d9b80b..b33060f 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -61,7 +61,7 @@ dependencies: url_launcher: ^6.0.18 transparent_image: ^2.0.0 audio_video_progress_bar: ^0.10.0 - + pushe_flutter: ^2.5.1 dev_dependencies: flutter_test: From 13f0960fd4d25c28c496685747371321556f99ee Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 20 Feb 2022 18:19:42 +0330 Subject: [PATCH 226/273] pushe removed + studio appbar --- .../gradle/wrapper/gradle-wrapper.properties | 2 +- lib/assets/images/logos/studio-dark.svg | 22 ++++++++++++++++ lib/assets/images/logos/studio-light.svg | 25 +++++++++++++++++++ lib/constants/assets.dart | 6 +++-- lib/pages/home/studio/studio.dart | 22 +++++++++------- lib/pages/home/widgets/logo_app_bar.dart | 11 +++++--- lib/widgets/logos/didvan_vertical_logo.dart | 13 ++++++++-- pubspec.lock | 7 ++++++ pubspec.yaml | 4 ++- 9 files changed, 93 insertions(+), 19 deletions(-) create mode 100644 lib/assets/images/logos/studio-dark.svg create mode 100644 lib/assets/images/logos/studio-light.svg diff --git a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties index 562c5e4..cc5527d 100644 --- a/android/gradle/wrapper/gradle-wrapper.properties +++ b/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-all.zip diff --git a/lib/assets/images/logos/studio-dark.svg b/lib/assets/images/logos/studio-dark.svg new file mode 100644 index 0000000..3d0e67d --- /dev/null +++ b/lib/assets/images/logos/studio-dark.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/logos/studio-light.svg b/lib/assets/images/logos/studio-light.svg new file mode 100644 index 0000000..73d14b1 --- /dev/null +++ b/lib/assets/images/logos/studio-light.svg @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/constants/assets.dart b/lib/constants/assets.dart index a331516..e19e386 100644 --- a/lib/constants/assets.dart +++ b/lib/constants/assets.dart @@ -8,11 +8,13 @@ class Assets { static const String _baseEmptyStatesPath = _basePath + '/images/empty_states'; static const String _baseAnimationsPath = _basePath + '/animations'; static const String _baseRecordsPath = _basePath + '/images/records'; + static const String _baseLogosPath = _basePath + '/images/logos'; static String get verticalLogoWithText => - _baseImagesPath + '/logos/logo-vertical-$_themeSuffix.svg'; + _baseLogosPath + '/logo-vertical-$_themeSuffix.svg'; static String get horizontalLogoWithText => - _baseImagesPath + '/logos/logo-horizontal-$_themeSuffix.svg'; + _baseLogosPath + '/logo-horizontal-$_themeSuffix.svg'; + static String get studioLogo => _baseLogosPath + '/studio-$_themeSuffix.svg'; static String get logoLoadingAnimation => _baseAnimationsPath + '/indicator-$_themeSuffix.riv'; diff --git a/lib/pages/home/studio/studio.dart b/lib/pages/home/studio/studio.dart index dd7eed3..5af5949 100644 --- a/lib/pages/home/studio/studio.dart +++ b/lib/pages/home/studio/studio.dart @@ -1,7 +1,8 @@ import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/constants/assets.dart'; import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; -import 'package:didvan/widgets/state_handlers/empty_state.dart'; +import 'package:didvan/widgets/didvan/icon_button.dart'; import 'package:flutter/material.dart'; class Studio extends StatelessWidget { @@ -11,14 +12,17 @@ class Studio extends StatelessWidget { Widget build(BuildContext context) { return Column( children: [ - const LogoAppBar(), - Expanded( - child: EmptyState( - asset: Assets.emptyStudio, - title: 'استودیو آینده', - subtitle: 'به زودی...', - titleColor: Theme.of(context).colorScheme.title, - ), + Row( + children: [ + const Expanded(child: LogoAppBar(type: 'studio')), + Padding( + padding: EdgeInsets.only(top: MediaQuery.of(context).padding.top), + child: DidvanIconButton( + icon: DidvanIcons.bookmark_regular, + onPressed: () {}, + ), + ), + ], ), ], ); diff --git a/lib/pages/home/widgets/logo_app_bar.dart b/lib/pages/home/widgets/logo_app_bar.dart index b8f2803..6aef13d 100644 --- a/lib/pages/home/widgets/logo_app_bar.dart +++ b/lib/pages/home/widgets/logo_app_bar.dart @@ -2,22 +2,25 @@ import 'package:didvan/widgets/logos/didvan_vertical_logo.dart'; import 'package:flutter/material.dart'; class LogoAppBar extends StatelessWidget { + final String? type; final bool hasExtraPadding; - const LogoAppBar({Key? key, this.hasExtraPadding = true}) : super(key: key); + const LogoAppBar({Key? key, this.hasExtraPadding = true, this.type}) + : super(key: key); @override Widget build(BuildContext context) { final MediaQueryData d = MediaQuery.of(context); final double extraPadding = hasExtraPadding ? 0 : 16; return Container( + margin: EdgeInsets.only(top: d.padding.top), padding: EdgeInsets.only( - left: 140 - extraPadding, - top: d.padding.top + 16 - extraPadding, + left: (type == null ? 140 : 0) - extraPadding, + top: 16 - extraPadding, bottom: 16 - extraPadding, right: 16 - extraPadding, ), alignment: Alignment.centerRight, - child: const DidvanHorizontalLogo(), + child: DidvanHorizontalLogo(type: type), ); } } diff --git a/lib/widgets/logos/didvan_vertical_logo.dart b/lib/widgets/logos/didvan_vertical_logo.dart index 4f5637a..75cf9d5 100644 --- a/lib/widgets/logos/didvan_vertical_logo.dart +++ b/lib/widgets/logos/didvan_vertical_logo.dart @@ -3,10 +3,19 @@ import 'package:flutter/material.dart'; import 'package:flutter_svg/svg.dart'; class DidvanHorizontalLogo extends StatelessWidget { - const DidvanHorizontalLogo({Key? key}) : super(key: key); + final String? type; + const DidvanHorizontalLogo({Key? key, this.type}) : super(key: key); @override Widget build(BuildContext context) { - return SvgPicture.asset(Assets.horizontalLogoWithText); + return SvgPicture.asset(_asset); + } + + String get _asset { + if (type == 'studio') { + return Assets.studioLogo; + } else { + return Assets.horizontalLogoWithText; + } } } diff --git a/pubspec.lock b/pubspec.lock index 21c01a3..e7b83b5 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -546,6 +546,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "6.0.2" + pushe_flutter: + dependency: "direct main" + description: + name: pushe_flutter + url: "https://pub.dartlang.org" + source: hosted + version: "2.5.2" record: dependency: "direct main" description: diff --git a/pubspec.yaml b/pubspec.yaml index 0d9b80b..6aa9355 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -61,7 +61,7 @@ dependencies: url_launcher: ^6.0.18 transparent_image: ^2.0.0 audio_video_progress_bar: ^0.10.0 - + pushe_flutter: ^2.5.1-nullsafety.1 dev_dependencies: flutter_test: @@ -91,6 +91,8 @@ flutter: - lib/assets/images/logos/logo-vertical-light.svg - lib/assets/images/logos/logo-horizontal-dark.svg - lib/assets/images/logos/logo-horizontal-light.svg + - lib/assets/images/logos/studio-dark.svg + - lib/assets/images/logos/studio-light.svg - lib/assets/images/categories/business-light.svg - lib/assets/images/categories/economic-light.svg - lib/assets/images/categories/enviromental-light.svg From 85f5c767bf2f185490fac39cee119f3c1dc9a2fe Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 20 Feb 2022 18:28:47 +0330 Subject: [PATCH 227/273] pushe removed completely :) --- android/app/src/main/AndroidManifest.xml | 3 --- 1 file changed, 3 deletions(-) diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index 3982d9b..e1ff723 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -38,8 +38,5 @@ - From d46323826ce3ef68dffc7187f418d03d84a694f9 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 22 Feb 2022 14:51:52 +0330 Subject: [PATCH 228/273] D1APP-105 ios configuration --- ios/Flutter/Debug.xcconfig | 1 + ios/Flutter/Release.xcconfig | 1 + ios/Podfile | 41 +++++++++ ios/Podfile.lock | 79 +++++++++++++++++ ios/Runner.xcodeproj/project.pbxproj | 87 +++++++++++++++++-- .../xcshareddata/xcschemes/Runner.xcscheme | 2 +- .../contents.xcworkspacedata | 3 + 7 files changed, 208 insertions(+), 6 deletions(-) create mode 100644 ios/Podfile create mode 100644 ios/Podfile.lock diff --git a/ios/Flutter/Debug.xcconfig b/ios/Flutter/Debug.xcconfig index 592ceee..ec97fc6 100644 --- a/ios/Flutter/Debug.xcconfig +++ b/ios/Flutter/Debug.xcconfig @@ -1 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" #include "Generated.xcconfig" diff --git a/ios/Flutter/Release.xcconfig b/ios/Flutter/Release.xcconfig index 592ceee..c4855bf 100644 --- a/ios/Flutter/Release.xcconfig +++ b/ios/Flutter/Release.xcconfig @@ -1 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" #include "Generated.xcconfig" diff --git a/ios/Podfile b/ios/Podfile new file mode 100644 index 0000000..252d9ec --- /dev/null +++ b/ios/Podfile @@ -0,0 +1,41 @@ +# Uncomment this line to define a global platform for your project +platform :ios, '9.0' + +# CocoaPods analytics sends network stats synchronously affecting flutter build latency. +ENV['COCOAPODS_DISABLE_STATS'] = 'true' + +project 'Runner', { + 'Debug' => :debug, + 'Profile' => :release, + 'Release' => :release, +} + +def flutter_root + generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__) + unless File.exist?(generated_xcode_build_settings_path) + raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first" + end + + File.foreach(generated_xcode_build_settings_path) do |line| + matches = line.match(/FLUTTER_ROOT\=(.*)/) + return matches[1].strip if matches + end + raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get" +end + +require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root) + +flutter_ios_podfile_setup + +target 'Runner' do + use_frameworks! + use_modular_headers! + + flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) +end + +post_install do |installer| + installer.pods_project.targets.each do |target| + flutter_additional_ios_build_settings(target) + end +end diff --git a/ios/Podfile.lock b/ios/Podfile.lock new file mode 100644 index 0000000..030b5b7 --- /dev/null +++ b/ios/Podfile.lock @@ -0,0 +1,79 @@ +PODS: + - audio_session (0.0.1): + - Flutter + - Flutter (1.0.0) + - flutter_secure_storage (3.3.1): + - Flutter + - flutter_vibrate (0.0.1): + - Flutter + - FMDB (2.7.5): + - FMDB/standard (= 2.7.5) + - FMDB/standard (2.7.5) + - image_picker (0.0.1): + - Flutter + - just_audio (0.0.1): + - Flutter + - path_provider_ios (0.0.1): + - Flutter + - record (0.0.1): + - Flutter + - sqflite (0.0.2): + - Flutter + - FMDB (>= 2.7.5) + - url_launcher_ios (0.0.1): + - Flutter + +DEPENDENCIES: + - audio_session (from `.symlinks/plugins/audio_session/ios`) + - Flutter (from `Flutter`) + - flutter_secure_storage (from `.symlinks/plugins/flutter_secure_storage/ios`) + - flutter_vibrate (from `.symlinks/plugins/flutter_vibrate/ios`) + - image_picker (from `.symlinks/plugins/image_picker/ios`) + - just_audio (from `.symlinks/plugins/just_audio/ios`) + - path_provider_ios (from `.symlinks/plugins/path_provider_ios/ios`) + - record (from `.symlinks/plugins/record/ios`) + - sqflite (from `.symlinks/plugins/sqflite/ios`) + - url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`) + +SPEC REPOS: + trunk: + - FMDB + +EXTERNAL SOURCES: + audio_session: + :path: ".symlinks/plugins/audio_session/ios" + Flutter: + :path: Flutter + flutter_secure_storage: + :path: ".symlinks/plugins/flutter_secure_storage/ios" + flutter_vibrate: + :path: ".symlinks/plugins/flutter_vibrate/ios" + image_picker: + :path: ".symlinks/plugins/image_picker/ios" + just_audio: + :path: ".symlinks/plugins/just_audio/ios" + path_provider_ios: + :path: ".symlinks/plugins/path_provider_ios/ios" + record: + :path: ".symlinks/plugins/record/ios" + sqflite: + :path: ".symlinks/plugins/sqflite/ios" + url_launcher_ios: + :path: ".symlinks/plugins/url_launcher_ios/ios" + +SPEC CHECKSUMS: + audio_session: 4f3e461722055d21515cf3261b64c973c062f345 + Flutter: 50d75fe2f02b26cc09d224853bb45737f8b3214a + flutter_secure_storage: 7953c38a04c3fdbb00571bcd87d8e3b5ceb9daec + flutter_vibrate: 9f4c2ab57008965f78969472367c329dd77eb801 + FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a + image_picker: 9aa50e1d8cdacdbed739e925b7eea16d014367e6 + just_audio: baa7252489dbcf47a4c7cc9ca663e9661c99aafa + path_provider_ios: 7d7ce634493af4477d156294792024ec3485acd5 + record: 7ee2393532f8553bbb09fa19e95478323b7c0a99 + sqflite: 6d358c025f5b867b29ed92fc697fd34924e11904 + url_launcher_ios: 02f1989d4e14e998335b02b67a7590fa34f971af + +PODFILE CHECKSUM: a75497545d4391e2d394c3668e20cfb1c2bbd4aa + +COCOAPODS: 1.11.2 diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index ab390f9..8cf340e 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 46; + objectVersion = 50; objects = { /* Begin PBXBuildFile section */ @@ -13,6 +13,7 @@ 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; + E870A5F479A60D6704DD5DF2 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 75DBECA488F412614712FB74 /* Pods_Runner.framework */; }; /* End PBXBuildFile section */ /* Begin PBXCopyFilesBuildPhase section */ @@ -31,9 +32,11 @@ /* Begin PBXFileReference section */ 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 1CDA6531AC975E620DBA1134 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; }; 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 75DBECA488F412614712FB74 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; @@ -42,6 +45,8 @@ 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 98ACB01D5FA5A78DB2686183 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; + C97DED20C4A171F16FB949CD /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -49,12 +54,32 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + E870A5F479A60D6704DD5DF2 /* Pods_Runner.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 650C3E9A238A953E4E8E6AED /* Frameworks */ = { + isa = PBXGroup; + children = ( + 75DBECA488F412614712FB74 /* Pods_Runner.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; + 8170350417391B7E9B77985B /* Pods */ = { + isa = PBXGroup; + children = ( + C97DED20C4A171F16FB949CD /* Pods-Runner.debug.xcconfig */, + 98ACB01D5FA5A78DB2686183 /* Pods-Runner.release.xcconfig */, + 1CDA6531AC975E620DBA1134 /* Pods-Runner.profile.xcconfig */, + ); + name = Pods; + path = Pods; + sourceTree = ""; + }; 9740EEB11CF90186004384FC /* Flutter */ = { isa = PBXGroup; children = ( @@ -72,6 +97,8 @@ 9740EEB11CF90186004384FC /* Flutter */, 97C146F01CF9000F007C117D /* Runner */, 97C146EF1CF9000F007C117D /* Products */, + 8170350417391B7E9B77985B /* Pods */, + 650C3E9A238A953E4E8E6AED /* Frameworks */, ); sourceTree = ""; }; @@ -105,12 +132,14 @@ isa = PBXNativeTarget; buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; buildPhases = ( + 9F9C99F59A6A1134B656560D /* [CP] Check Pods Manifest.lock */, 9740EEB61CF901F6004384FC /* Run Script */, 97C146EA1CF9000F007C117D /* Sources */, 97C146EB1CF9000F007C117D /* Frameworks */, 97C146EC1CF9000F007C117D /* Resources */, 9705A1C41CF9048500538489 /* Embed Frameworks */, 3B06AD1E1E4923F5004D2608 /* Thin Binary */, + AE20B55CEF8506DDEEBE3543 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -127,7 +156,7 @@ 97C146E61CF9000F007C117D /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1020; + LastUpgradeCheck = 1300; ORGANIZATIONNAME = ""; TargetAttributes = { 97C146ED1CF9000F007C117D = { @@ -197,6 +226,45 @@ shellPath = /bin/sh; shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; }; + 9F9C99F59A6A1134B656560D /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + AE20B55CEF8506DDEEBE3543 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ @@ -290,7 +358,10 @@ CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = com.didvan.didvanapp; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; @@ -414,7 +485,10 @@ CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = com.didvan.didvanapp; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; @@ -433,7 +507,10 @@ CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = com.didvan.didvanapp; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; diff --git a/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme index a28140c..3db53b6 100644 --- a/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -1,6 +1,6 @@ + + From 96eddd7ebfe3d187f16b091b4451c391260b3c92 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 22 Feb 2022 14:52:24 +0330 Subject: [PATCH 229/273] code cleaning --- lib/pages/home/direct/widgets/audio_widget.dart | 1 - lib/pages/home/direct/widgets/message.dart | 3 --- 2 files changed, 4 deletions(-) diff --git a/lib/pages/home/direct/widgets/audio_widget.dart b/lib/pages/home/direct/widgets/audio_widget.dart index 588f293..d974ba2 100644 --- a/lib/pages/home/direct/widgets/audio_widget.dart +++ b/lib/pages/home/direct/widgets/audio_widget.dart @@ -1,6 +1,5 @@ import 'dart:io'; -import 'package:didvan/models/message_data/message_data.dart'; import 'package:didvan/pages/home/widgets/audio_slider.dart'; import 'package:didvan/pages/home/widgets/player_controller_button.dart'; import 'package:didvan/services/media/media.dart'; diff --git a/lib/pages/home/direct/widgets/message.dart b/lib/pages/home/direct/widgets/message.dart index 3225052..e0c811e 100644 --- a/lib/pages/home/direct/widgets/message.dart +++ b/lib/pages/home/direct/widgets/message.dart @@ -4,9 +4,6 @@ import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/message_data/message_data.dart'; import 'package:didvan/pages/home/direct/direct_state.dart'; import 'package:didvan/pages/home/direct/widgets/audio_widget.dart'; -import 'package:didvan/pages/home/widgets/audio_slider.dart'; -import 'package:didvan/pages/home/widgets/player_controller_button.dart'; -import 'package:didvan/services/media/media.dart'; import 'package:didvan/utils/date_time.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/text.dart'; From 9f828c637b6c38612054dc5bcb54291b2762667c Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 22 Feb 2022 14:53:05 +0330 Subject: [PATCH 230/273] D1APP-94 captions new approach --- lib/widgets/didvan/page_view.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/widgets/didvan/page_view.dart b/lib/widgets/didvan/page_view.dart index 346ade7..4f92f2e 100644 --- a/lib/widgets/didvan/page_view.dart +++ b/lib/widgets/didvan/page_view.dart @@ -190,7 +190,7 @@ class _DidvanPageViewState extends State { margin: EdgeInsets.zero, padding: EdgeInsets.zero, ), - 'caption': Style( + 'span': Style( textAlign: TextAlign.center, fontSize: FontSize.small, alignment: Alignment.center, From 2a581e0dd987cecea9f0a75fdef385a7d624873a Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 22 Feb 2022 14:53:54 +0330 Subject: [PATCH 231/273] D1APP-100 pagination added to radars and news --- lib/pages/home/news/news.dart | 11 ++++++++++- lib/pages/home/news/news_state.dart | 12 ++++++++---- lib/pages/home/radar/radar.dart | 17 +++++++++++++---- lib/pages/home/radar/radar_state.dart | 19 ++++++++++++------- .../home/radar/widgets/categories_list.dart | 2 +- .../home/radar/widgets/category_item.dart | 2 +- lib/pages/home/studio/studio.dart | 2 -- lib/pages/home/widgets/radar_overview.dart | 5 +++-- 8 files changed, 48 insertions(+), 22 deletions(-) diff --git a/lib/pages/home/news/news.dart b/lib/pages/home/news/news.dart index 2adeb13..8e8ffdc 100644 --- a/lib/pages/home/news/news.dart +++ b/lib/pages/home/news/news.dart @@ -55,6 +55,14 @@ class _NewsState extends State { onRetry: () => state.getNews(page: state.page), state: state, builder: (context, state, index) { + index += 2; + if (index % 15 == 0 && index / 15 >= state.page) { + state.getNews(page: index ~/ 15 + 1); + } + index -= 2; + if (index >= state.news.length) { + return NewsOverview.placeholder; + } final news = state.news[index]; return NewsOverview( news: news, @@ -71,7 +79,8 @@ class _NewsState extends State { emptyState: EmptyResult( onNewSearch: () => _focusNode.requestFocus(), ), - childCount: state.news.length, + childCount: + state.news.length + (state.lastPage == state.page ? 0 : 3), itemPadding: const EdgeInsets.only(left: 16, right: 16, bottom: 16), placeholder: NewsOverview.placeholder, ), diff --git a/lib/pages/home/news/news_state.dart b/lib/pages/home/news/news_state.dart index 2c54cef..735011e 100644 --- a/lib/pages/home/news/news_state.dart +++ b/lib/pages/home/news/news_state.dart @@ -12,6 +12,7 @@ class NewsState extends CoreProvier { String? startDate; String? endDate; int page = 1; + int lastPage = 0; final List news = []; @@ -34,19 +35,21 @@ class NewsState extends CoreProvier { Future getNews({ required int page, }) async { - if (this.page == page) { + this.page = page; + if (this.page == 1) { news.clear(); } - this.page = page; if (search != '') { lastSearch = search; } lastSearch = search; - appState = AppState.busy; + if (page == 1) { + appState = AppState.busy; + } final service = RequestService( RequestHelper.newsOverviews( args: NewsRequestArgs( - page: 1, + page: page, startDate: startDate?.split(' ').first, endDate: endDate?.split(' ').first, search: search == '' ? null : search, @@ -55,6 +58,7 @@ class NewsState extends CoreProvier { ); await service.httpGet(); if (service.isSuccess) { + lastPage = service.result['lastPage']; final newsList = service.result['news']; for (var i = 0; i < newsList.length; i++) { news.add(NewsOverviewData.fromJson(newsList[i])); diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index 419a64a..c70cf5e 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -113,7 +113,7 @@ class _RadarState extends State { ), ), SliverStateHandler( - onRetry: () => state.getRadarOverviewDatas(page: state.page), + onRetry: () => state.getRadars(page: state.page), state: state, itemPadding: const EdgeInsets.only( bottom: 20, @@ -128,6 +128,14 @@ class _RadarState extends State { ), placeholder: RadarOverview.placeholder, builder: (context, state, index) { + index += 2; + if (index % 15 == 0 && index / 15 >= state.page) { + state.getRadars(page: index ~/ 15 + 1); + } + index -= 2; + if (index >= state.radars.length) { + return RadarOverview.placeholder; + } final radar = state.radars[index]; return RadarOverview( radar: radar, @@ -145,7 +153,8 @@ class _RadarState extends State { ), ); }, - childCount: state.radars.length, + childCount: state.radars.length + + (state.lastPage == state.page ? 0 : 3), ), if (state.radars.length == 1) const SliverToBoxAdapter( @@ -172,7 +181,7 @@ class _RadarState extends State { _timer?.cancel(); _timer = Timer(const Duration(seconds: 1), () { state.search = value; - state.getRadarOverviewDatas(page: 1); + state.getRadars(page: 1); }); } @@ -217,7 +226,7 @@ class _RadarState extends State { dismissTitle: 'حذف فیلتر', confrimTitle: 'نمایش نتایج', onDismissed: () => state.resetFilters(false), - onConfirmed: () => state.getRadarOverviewDatas(page: 1), + onConfirmed: () => state.getRadars(page: 1), content: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ diff --git a/lib/pages/home/radar/radar_state.dart b/lib/pages/home/radar/radar_state.dart index e6236c2..b3da200 100644 --- a/lib/pages/home/radar/radar_state.dart +++ b/lib/pages/home/radar/radar_state.dart @@ -14,6 +14,7 @@ class RadarState extends CoreProvier { String? startDate; String? endDate; int page = 1; + int lastPage = 1; bool isScrolled = false; bool shouldColapse = false; final List selectedCats = []; @@ -38,19 +39,21 @@ class RadarState extends CoreProvier { lastSearch = ''; isScrolled = false; if (!isInit) { - getRadarOverviewDatas(page: 1); + getRadars(page: 1); } } - Future getRadarOverviewDatas({ + Future getRadars({ required int page, }) async { + this.page = page; if (this.page == page) { radars.clear(); } - this.page = page; lastSearch = search; - appState = AppState.busy; + if (page == 1) { + appState = AppState.busy; + } final RequestService service = RequestService( RequestHelper.radarOverviews( args: RadarRequestArgs( @@ -64,8 +67,10 @@ class RadarState extends CoreProvier { ); await service.httpGet(); if (service.isSuccess) { - for (var i = 0; i < service.result['radars'].length; i++) { - radars.add(RadarOverviewData.fromJson(service.result['radars'][i])); + lastPage = service.result['lastPage']; + final radarsList = service.result['radars']; + for (var i = 0; i < radarsList.length; i++) { + radars.add(RadarOverviewData.fromJson(radarsList[i])); } if (searching || filtering || isColapsed || isCategorySelected) { shouldColapse = true; @@ -91,7 +96,7 @@ class RadarState extends CoreProvier { void init() { resetFilters(true); Future.delayed(Duration.zero, () { - getRadarOverviewDatas(page: 1); + getRadars(page: 1); }); categories = [ RadarCategory( diff --git a/lib/pages/home/radar/widgets/categories_list.dart b/lib/pages/home/radar/widgets/categories_list.dart index 6546c61..1ea20d5 100644 --- a/lib/pages/home/radar/widgets/categories_list.dart +++ b/lib/pages/home/radar/widgets/categories_list.dart @@ -98,7 +98,7 @@ class _CategoriesListState extends State { duration: DesignConfig.lowAnimationDuration, curve: Curves.easeIn, ); - state.getRadarOverviewDatas(page: 1); + state.getRadars(page: 1); }, child: Container( margin: const EdgeInsets.only(left: 12), diff --git a/lib/pages/home/radar/widgets/category_item.dart b/lib/pages/home/radar/widgets/category_item.dart index f545396..dc608f4 100644 --- a/lib/pages/home/radar/widgets/category_item.dart +++ b/lib/pages/home/radar/widgets/category_item.dart @@ -29,7 +29,7 @@ class CategoryItem extends StatelessWidget { if (category.id != 0) { state.selectedCats.add(category); } - state.getRadarOverviewDatas(page: 1); + state.getRadars(page: 1); }, child: AnimatedContainer( duration: DesignConfig.mediumAnimationDuration, diff --git a/lib/pages/home/studio/studio.dart b/lib/pages/home/studio/studio.dart index 5af5949..148fbf2 100644 --- a/lib/pages/home/studio/studio.dart +++ b/lib/pages/home/studio/studio.dart @@ -1,6 +1,4 @@ -import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/constants/assets.dart'; import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; import 'package:didvan/widgets/didvan/icon_button.dart'; import 'package:flutter/material.dart'; diff --git a/lib/pages/home/widgets/radar_overview.dart b/lib/pages/home/widgets/radar_overview.dart index a16a339..e6c252b 100644 --- a/lib/pages/home/widgets/radar_overview.dart +++ b/lib/pages/home/widgets/radar_overview.dart @@ -44,7 +44,6 @@ class RadarOverview extends StatelessWidget { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - const SizedBox(height: 8), DidvanText( radar.title, fontWeight: FontWeight.w600, @@ -139,11 +138,13 @@ class RadarOverview extends StatelessWidget { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ + const ShimmerPlaceholder(height: 16), + const SizedBox(height: 8), const ShimmerPlaceholder( width: 200, height: 16, ), - const SizedBox(height: 8), + const SizedBox(height: 16), const AspectRatio(aspectRatio: 16 / 9, child: ShimmerPlaceholder()), const SizedBox(height: 8), Row( From 3ba7ea28fa545e542babed863699c003bbf98853 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 22 Feb 2022 15:27:21 +0330 Subject: [PATCH 232/273] D1APP-107 image picker ios configuration --- ios/Runner/Info.plist | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist index 8a877dd..fe7e5e3 100644 --- a/ios/Runner/Info.plist +++ b/ios/Runner/Info.plist @@ -26,6 +26,10 @@ LaunchScreen UIMainStoryboardFile Main +NSPhotoLibraryUsageDescription +We need to access to the user gallery to add user profile photo +NSCameraUsageDescription +We need to access to the user gallery to add user profile photo UISupportedInterfaceOrientations UIInterfaceOrientationPortrait From 79645b20742b374078632db0bcd2fdd9a7ec633e Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 22 Feb 2022 15:28:21 +0330 Subject: [PATCH 233/273] D1APP-106 voice recorder ios configuration --- ios/Runner/Info.plist | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist index fe7e5e3..4d67f3b 100644 --- a/ios/Runner/Info.plist +++ b/ios/Runner/Info.plist @@ -26,6 +26,8 @@ LaunchScreen UIMainStoryboardFile Main + NSMicrophoneUsageDescription +We need to access to the microphone to record audio file NSPhotoLibraryUsageDescription We need to access to the user gallery to add user profile photo NSCameraUsageDescription From b8dfbc23455b069dbb6234e9b891752246f72d40 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 22 Feb 2022 19:27:53 +0330 Subject: [PATCH 234/273] D1APversionP-74 image cropper final --- android/app/src/main/AndroidManifest.xml | 4 + ios/Podfile.lock | 10 + .../profile/widgets/profile_photo.dart | 49 +++-- lib/pages/splash/splash.dart | 2 +- lib/providers/user_provider.dart | 2 +- lib/routes/route_generator.dart | 7 - lib/widgets/image_cropper.dart | 201 ------------------ pubspec.lock | 28 +-- pubspec.yaml | 4 +- 9 files changed, 53 insertions(+), 254 deletions(-) delete mode 100644 lib/widgets/image_cropper.dart diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index e1ff723..34d2e7f 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -36,6 +36,10 @@ + diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 030b5b7..402e2e1 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -9,6 +9,9 @@ PODS: - FMDB (2.7.5): - FMDB/standard (= 2.7.5) - FMDB/standard (2.7.5) + - image_cropper (0.0.4): + - Flutter + - TOCropViewController (~> 2.6.1) - image_picker (0.0.1): - Flutter - just_audio (0.0.1): @@ -20,6 +23,7 @@ PODS: - sqflite (0.0.2): - Flutter - FMDB (>= 2.7.5) + - TOCropViewController (2.6.1) - url_launcher_ios (0.0.1): - Flutter @@ -28,6 +32,7 @@ DEPENDENCIES: - Flutter (from `Flutter`) - flutter_secure_storage (from `.symlinks/plugins/flutter_secure_storage/ios`) - flutter_vibrate (from `.symlinks/plugins/flutter_vibrate/ios`) + - image_cropper (from `.symlinks/plugins/image_cropper/ios`) - image_picker (from `.symlinks/plugins/image_picker/ios`) - just_audio (from `.symlinks/plugins/just_audio/ios`) - path_provider_ios (from `.symlinks/plugins/path_provider_ios/ios`) @@ -38,6 +43,7 @@ DEPENDENCIES: SPEC REPOS: trunk: - FMDB + - TOCropViewController EXTERNAL SOURCES: audio_session: @@ -48,6 +54,8 @@ EXTERNAL SOURCES: :path: ".symlinks/plugins/flutter_secure_storage/ios" flutter_vibrate: :path: ".symlinks/plugins/flutter_vibrate/ios" + image_cropper: + :path: ".symlinks/plugins/image_cropper/ios" image_picker: :path: ".symlinks/plugins/image_picker/ios" just_audio: @@ -67,11 +75,13 @@ SPEC CHECKSUMS: flutter_secure_storage: 7953c38a04c3fdbb00571bcd87d8e3b5ceb9daec flutter_vibrate: 9f4c2ab57008965f78969472367c329dd77eb801 FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a + image_cropper: 60c2789d1f1a78c873235d4319ca0c34a69f2d98 image_picker: 9aa50e1d8cdacdbed739e925b7eea16d014367e6 just_audio: baa7252489dbcf47a4c7cc9ca663e9661c99aafa path_provider_ios: 7d7ce634493af4477d156294792024ec3485acd5 record: 7ee2393532f8553bbb09fa19e95478323b7c0a99 sqflite: 6d358c025f5b867b29ed92fc697fd34924e11904 + TOCropViewController: edfd4f25713d56905ad1e0b9f5be3fbe0f59c863 url_launcher_ios: 02f1989d4e14e998335b02b67a7590fa34f971af PODFILE CHECKSUM: a75497545d4391e2d394c3668e20cfb1c2bbd4aa diff --git a/lib/pages/home/settings/profile/widgets/profile_photo.dart b/lib/pages/home/settings/profile/widgets/profile_photo.dart index 53c1003..1791b94 100644 --- a/lib/pages/home/settings/profile/widgets/profile_photo.dart +++ b/lib/pages/home/settings/profile/widgets/profile_photo.dart @@ -1,3 +1,5 @@ +import 'dart:io'; + import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/enums.dart'; @@ -5,15 +7,16 @@ import 'package:didvan/models/view/action_sheet_data.dart'; import 'package:didvan/models/view/alert_data.dart'; import 'package:didvan/pages/home/widgets/menu_item.dart'; import 'package:didvan/providers/user_provider.dart'; -import 'package:didvan/routes/routes.dart'; import 'package:didvan/services/media/media.dart'; import 'package:didvan/utils/action_sheet.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/skeleton_image.dart'; +import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:image_picker/image_picker.dart'; import 'package:provider/provider.dart'; +import 'package:image_cropper/image_cropper.dart'; class ProfilePhoto extends StatefulWidget { const ProfilePhoto({Key? key}) : super(key: key); @@ -135,27 +138,31 @@ class _ProfilePhotoState extends State { return; } final pickedFile = await MediaService.pickImage(source: source); - if (pickedFile != null) { - ActionSheetUtils.showLogoLoadingIndicator(); - final bytes = await pickedFile.readAsBytes(); - ActionSheetUtils.pop(); - Navigator.of(context).pushNamed( - Routes.imageCropper, - arguments: { - 'bytes': bytes, - 'onCropped': () async { - final result = await state.setProfilePhoto(pickedFile); - ActionSheetUtils.showAlert( - AlertData( - message: result - ? 'تصویر پروفایل بارگذاری شد.' - : 'بارگذاری تصویر موفقیت آمیز نبود.', - aLertType: result ? ALertType.success : ALertType.error, - ), - ); - } - }, + File? file; + if (pickedFile != null && !kIsWeb) { + file = await ImageCropper().cropImage( + sourcePath: pickedFile.path, + aspectRatio: const CropAspectRatio(ratioX: 1, ratioY: 1), + iosUiSettings: const IOSUiSettings( + title: 'برش تصویر', + doneButtonTitle: 'تایید', + cancelButtonTitle: 'بازگشت', + ), + androidUiSettings: const AndroidUiSettings(toolbarTitle: 'برش تصویر'), + compressQuality: 70, ); + if (file == null) return; } + if (pickedFile == null) return; + final uploadFile = kIsWeb ? pickedFile : file; + final result = await state.setProfilePhoto(uploadFile); + ActionSheetUtils.showAlert( + AlertData( + message: result + ? 'تصویر پروفایل بارگذاری شد.' + : 'بارگذاری تصویر موفقیت آمیز نبود.', + aLertType: result ? ALertType.success : ALertType.error, + ), + ); } } diff --git a/lib/pages/splash/splash.dart b/lib/pages/splash/splash.dart index 9850236..7aaddf7 100644 --- a/lib/pages/splash/splash.dart +++ b/lib/pages/splash/splash.dart @@ -64,7 +64,7 @@ class _SplashState extends State { SpinKitSpinningLines( color: Theme.of(context).colorScheme.primary, ), - if (_errorOccured) const SizedBox(height: 38), + if (_errorOccured) const SizedBox(height: 30), if (_errorOccured) DidvanButton( width: 120, diff --git a/lib/providers/user_provider.dart b/lib/providers/user_provider.dart index 77aa17d..219acd1 100644 --- a/lib/providers/user_provider.dart +++ b/lib/providers/user_provider.dart @@ -64,7 +64,7 @@ class UserProvider extends CoreProvier { appState = AppState.idle; return true; } - appState = AppState.failed; + appState = AppState.idle; return false; } diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index 2f145d4..450a9a1 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -24,7 +24,6 @@ import 'package:didvan/pages/home/settings/general_settings/settings_state.dart' import 'package:didvan/pages/home/settings/profile/profile.dart'; import 'package:didvan/pages/splash/splash.dart'; import 'package:didvan/routes/routes.dart'; -import 'package:didvan/widgets/image_cropper.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; @@ -67,12 +66,6 @@ class RouteGenerator { return _createRoute( const AboutUs(), ); - case Routes.imageCropper: - return _createRoute( - ImageCropper( - data: settings.arguments as Map, - ), - ); case Routes.generalSettings: return _createRoute( ChangeNotifierProvider( diff --git a/lib/widgets/image_cropper.dart b/lib/widgets/image_cropper.dart deleted file mode 100644 index fd67e93..0000000 --- a/lib/widgets/image_cropper.dart +++ /dev/null @@ -1,201 +0,0 @@ -import 'package:crop/crop.dart'; -import 'package:didvan/config/theme_data.dart'; -import 'package:didvan/constants/app_icons.dart'; -import 'package:flutter/material.dart'; - -class ImageCropper extends StatefulWidget { - final Map data; - - const ImageCropper({Key? key, required this.data}) : super(key: key); - - @override - State createState() => _ImageCropperState(); -} - -class _ImageCropperState extends State { - double _rotation = 0; - BoxShape shape = BoxShape.rectangle; - - final _controller = CropController(); - - get _bytes => widget.data['bytes']; - get _onCropped => widget.data['onCropped']; - - @override - Widget build(BuildContext context) { - final theme = Theme.of(context); - return Scaffold( - appBar: AppBar( - title: const Text('برش عکس'), - centerTitle: true, - actions: [ - IconButton( - onPressed: _cropImage, - tooltip: 'Crop', - icon: const Icon(Icons.crop), - ) - ], - ), - body: Column( - children: [ - Expanded( - child: Container( - color: Colors.black, - padding: const EdgeInsets.all(8), - child: Crop( - onChanged: (decomposition) { - if (_rotation != decomposition.rotation) { - setState(() { - _rotation = ((decomposition.rotation + 180) % 360) - 180; - }); - } - }, - controller: _controller, - shape: shape, - child: Image.memory( - _bytes, - fit: BoxFit.cover, - ), - helper: shape == BoxShape.rectangle - ? Container( - decoration: BoxDecoration( - border: Border.all(color: Colors.white, width: 2), - ), - ) - : null, - ), - ), - ), - Row( - children: [ - IconButton( - icon: const Icon(Icons.redo), - tooltip: 'برگرداندن', - onPressed: () { - _controller.rotation = 0; - _controller.scale = 1; - _controller.offset = Offset.zero; - setState(() { - _rotation = 0; - }); - }, - ), - Expanded( - child: SliderTheme( - data: theme.sliderTheme.copyWith( - trackShape: const RectangularSliderTrackShape(), - ), - child: Slider( - thumbColor: Theme.of(context).colorScheme.title, - divisions: 360, - value: _rotation, - min: -180, - max: 180, - label: '$_rotation°', - onChanged: (n) { - setState(() { - _rotation = n.roundToDouble(); - _controller.rotation = _rotation; - }); - }, - ), - ), - ), - // PopupMenuButton( - // icon: const Icon(Icons.crop_free), - // itemBuilder: (context) => [ - // const PopupMenuItem( - // child: Text("Box"), - // value: BoxShape.rectangle, - // ), - // const PopupMenuItem( - // child: Text("Oval"), - // value: BoxShape.circle, - // ), - // ], - // tooltip: 'Crop Shape', - // onSelected: (x) { - // setState(() { - // shape = x; - // }); - // }, - // ), - // PopupMenuButton( - // icon: const Icon(Icons.aspect_ratio), - // itemBuilder: (context) => [ - // const PopupMenuItem( - // child: Text("Original"), - // value: 1000 / 667.0, - // ), - // const PopupMenuDivider(), - // const PopupMenuItem( - // child: Text("16:9"), - // value: 16.0 / 9.0, - // ), - // const PopupMenuItem( - // child: Text("4:3"), - // value: 4.0 / 3.0, - // ), - // const PopupMenuItem( - // child: Text("1:1"), - // value: 1, - // ), - // const PopupMenuItem( - // child: Text("3:4"), - // value: 3.0 / 4.0, - // ), - // const PopupMenuItem( - // child: Text("9:16"), - // value: 9.0 / 16.0, - // ), - // ], - // tooltip: 'Aspect Ratio', - // onSelected: (x) { - // _controller.aspectRatio = x; - // setState(() {}); - // }, - // ), - ], - ), - ], - ), - ); - } - - void _cropImage() async { - final pixelRatio = MediaQuery.of(context).devicePixelRatio; - final cropped = await _controller.crop(pixelRatio: pixelRatio); - - Navigator.of(context).push( - MaterialPageRoute( - builder: (context) => Scaffold( - appBar: AppBar( - title: const Text('تایید برش'), - centerTitle: true, - actions: [ - Builder( - builder: (context) => IconButton( - icon: const Icon( - DidvanIcons.check_circle_solid, - size: 32, - ), - onPressed: () { - Navigator.of(context).pop(); - Navigator.of(context).pop(); - _onCropped(); - }, - ), - ), - ], - ), - body: Center( - child: RawImage( - image: cropped, - ), - ), - ), - fullscreenDialog: true, - ), - ); - } -} diff --git a/pubspec.lock b/pubspec.lock index 21c01a3..6942b4d 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -92,20 +92,6 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.15.0" - collision: - dependency: transitive - description: - name: collision - url: "https://pub.dartlang.org" - source: hosted - version: "0.0.3" - crop: - dependency: "direct main" - description: - name: crop - url: "https://pub.dartlang.org" - source: hosted - version: "0.5.2" cross_file: dependency: transitive description: @@ -308,6 +294,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "4.0.0" + image_cropper: + dependency: "direct main" + description: + name: image_cropper + url: "https://pub.dartlang.org" + source: hosted + version: "1.5.0" image_picker: dependency: "direct main" description: @@ -656,13 +649,6 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "0.4.8" - transparent_image: - dependency: "direct main" - description: - name: transparent_image - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.0" typed_data: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 9174c6b..119a748 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -57,10 +57,10 @@ dependencies: bot_toast: ^4.0.1 flutter_secure_storage: ^5.0.2 flutter_html: ^3.0.0-alpha.2 - crop: ^0.5.2 url_launcher: ^6.0.18 - transparent_image: ^2.0.0 audio_video_progress_bar: ^0.10.0 + image_cropper: ^1.5.0 + dev_dependencies: flutter_test: From 9d58b8a8f6726cd215bb22f8e6ce9cf201c330ee Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 23 Feb 2022 18:42:29 +0330 Subject: [PATCH 235/273] D1APP-99 studio tab buttons & slider --- lib/pages/home/studio/studio.dart | 53 ++++++++--- lib/pages/home/studio/studio_state.dart | 5 ++ lib/pages/home/studio/widgets/slider.dart | 51 +++++++++++ lib/pages/home/studio/widgets/tab_bar.dart | 100 +++++++++++++++++++++ 4 files changed, 197 insertions(+), 12 deletions(-) create mode 100644 lib/pages/home/studio/studio_state.dart create mode 100644 lib/pages/home/studio/widgets/slider.dart create mode 100644 lib/pages/home/studio/widgets/tab_bar.dart diff --git a/lib/pages/home/studio/studio.dart b/lib/pages/home/studio/studio.dart index 148fbf2..2655767 100644 --- a/lib/pages/home/studio/studio.dart +++ b/lib/pages/home/studio/studio.dart @@ -1,26 +1,55 @@ import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/pages/home/studio/widgets/slider.dart'; +import 'package:didvan/pages/home/studio/widgets/tab_bar.dart'; import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; +import 'package:didvan/pages/home/widgets/search_field.dart'; import 'package:didvan/widgets/didvan/icon_button.dart'; import 'package:flutter/material.dart'; -class Studio extends StatelessWidget { +class Studio extends StatefulWidget { const Studio({Key? key}) : super(key: key); + @override + State createState() => _StudioState(); +} + +class _StudioState extends State { + final FocusNode _focusNode = FocusNode(); + @override Widget build(BuildContext context) { - return Column( - children: [ - Row( - children: [ - const Expanded(child: LogoAppBar(type: 'studio')), - Padding( - padding: EdgeInsets.only(top: MediaQuery.of(context).padding.top), - child: DidvanIconButton( - icon: DidvanIcons.bookmark_regular, - onPressed: () {}, + return CustomScrollView( + slivers: [ + SliverToBoxAdapter( + child: Row( + children: [ + const Expanded(child: LogoAppBar(type: 'studio')), + Padding( + padding: + EdgeInsets.only(top: MediaQuery.of(context).padding.top), + child: DidvanIconButton( + icon: DidvanIcons.bookmark_regular, + onPressed: () {}, + ), ), + ], + ), + ), + const SliverToBoxAdapter( + child: StudioTabBar(), + ), + SliverToBoxAdapter( + child: Padding( + padding: const EdgeInsets.all(16.0), + child: SearchField( + title: 'جستجو در استودیو', + onChanged: (value) {}, + focusNode: _focusNode, ), - ], + ), + ), + const SliverToBoxAdapter( + child: StudioSlider(), ), ], ); diff --git a/lib/pages/home/studio/studio_state.dart b/lib/pages/home/studio/studio_state.dart new file mode 100644 index 0000000..ffa0282 --- /dev/null +++ b/lib/pages/home/studio/studio_state.dart @@ -0,0 +1,5 @@ +import 'package:didvan/providers/core_provider.dart'; + +class StudioState extends CoreProvier { + bool videosSelected = true; +} diff --git a/lib/pages/home/studio/widgets/slider.dart b/lib/pages/home/studio/widgets/slider.dart new file mode 100644 index 0000000..d312b2b --- /dev/null +++ b/lib/pages/home/studio/widgets/slider.dart @@ -0,0 +1,51 @@ +import 'package:carousel_slider/carousel_slider.dart'; +import 'package:didvan/config/theme_data.dart'; +import 'package:flutter/material.dart'; + +class StudioSlider extends StatelessWidget { + const StudioSlider({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Column( + children: [ + CarouselSlider( + items: [ + Image.network('https://wallpapercave.com/wp/wp10731650.jpg'), + Image.network('https://wallpapercave.com/wp/wp10731650.jpg'), + Image.network('https://wallpapercave.com/wp/wp10731650.jpg'), + Image.network('https://wallpapercave.com/wp/wp10731650.jpg'), + ], + options: CarouselOptions( + viewportFraction: 0.94, + aspectRatio: 16 / 9, + autoPlay: true, + ), + ), + Row(), + ], + ); + } +} + +class _SliderIndicator extends StatelessWidget { + final bool isCurrentIndex; + const _SliderIndicator({Key? key, required this.isCurrentIndex}) + : super(key: key); + + @override + Widget build(BuildContext context) { + return Container( + height: 8, + width: 8, + decoration: BoxDecoration( + border: Border.all( + color: Theme.of(context).colorScheme.focusedBorder, + ), + shape: BoxShape.circle, + color: + isCurrentIndex ? Theme.of(context).colorScheme.focusedBorder : null, + ), + ); + } +} diff --git a/lib/pages/home/studio/widgets/tab_bar.dart b/lib/pages/home/studio/widgets/tab_bar.dart new file mode 100644 index 0000000..61483bc --- /dev/null +++ b/lib/pages/home/studio/widgets/tab_bar.dart @@ -0,0 +1,100 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; + +class StudioTabBar extends StatelessWidget { + const StudioTabBar({ + Key? key, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return Container( + margin: const EdgeInsets.symmetric(horizontal: 16), + padding: const EdgeInsets.all(4), + decoration: BoxDecoration( + border: Border.all(color: Theme.of(context).colorScheme.border), + borderRadius: DesignConfig.lowBorderRadius, + ), + child: Row( + children: [ + Expanded( + child: _StudioTypeButton( + icon: DidvanIcons.video_solid, + selectedColor: Theme.of(context).colorScheme.secondary, + title: 'ویدئو', + onTap: () {}, + isSelected: true, + ), + ), + Container( + width: 1, + height: 32, + color: Theme.of(context).colorScheme.border, + ), + Expanded( + child: _StudioTypeButton( + icon: DidvanIcons.podcast_solid, + selectedColor: Theme.of(context).colorScheme.focusedBorder, + title: 'پادکست', + onTap: () {}, + isSelected: true, + ), + ), + ], + ), + ); + } +} + +class _StudioTypeButton extends StatelessWidget { + final IconData icon; + final String title; + final VoidCallback onTap; + final bool isSelected; + final Color selectedColor; + const _StudioTypeButton({ + Key? key, + required this.icon, + required this.selectedColor, + required this.title, + required this.onTap, + required this.isSelected, + }) : super(key: key); + + Color? get _color => isSelected ? selectedColor : null; + + @override + Widget build(BuildContext context) { + return GestureDetector( + onTap: onTap, + child: Container( + color: Colors.transparent, + child: Column( + children: [ + Icon( + icon, + size: 32, + color: _color, + ), + if (!isSelected) const SizedBox(height: 18), + if (isSelected) + Container( + width: 88, + height: 1, + color: _color, + ), + if (isSelected) + DidvanText( + title, + style: Theme.of(context).textTheme.overline, + color: _color, + ) + ], + ), + ), + ); + } +} From b4f9511d177f140e8b179a986c678ccb5e8b2b31 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 23 Feb 2022 18:52:03 +0330 Subject: [PATCH 236/273] D1APP-102 bottom sage area + adaptive back icons --- .../authentication/widgets/authentication_app_bar.dart | 6 +++++- lib/pages/home/widgets/floating_navigation_bar.dart | 6 +++++- lib/routes/route_generator.dart | 2 +- lib/widgets/didvan/app_bar.dart | 6 +++++- lib/widgets/didvan/page_view.dart | 7 ++++++- 5 files changed, 22 insertions(+), 5 deletions(-) diff --git a/lib/pages/authentication/widgets/authentication_app_bar.dart b/lib/pages/authentication/widgets/authentication_app_bar.dart index e9cb490..9fc7394 100644 --- a/lib/pages/authentication/widgets/authentication_app_bar.dart +++ b/lib/pages/authentication/widgets/authentication_app_bar.dart @@ -1,3 +1,5 @@ +import 'dart:io'; + import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; @@ -16,7 +18,9 @@ class AuthenticationAppBar extends StatelessWidget { return Row( children: [ DidvanIconButton( - icon: DidvanIcons.back_regular, + icon: Platform.isIOS + ? Icons.arrow_back_ios + : DidvanIcons.back_regular, onPressed: () { if (state.currentPageIndex == 0) { Navigator.of(context).pop(); diff --git a/lib/pages/home/widgets/floating_navigation_bar.dart b/lib/pages/home/widgets/floating_navigation_bar.dart index 6ed2f01..1b1c290 100644 --- a/lib/pages/home/widgets/floating_navigation_bar.dart +++ b/lib/pages/home/widgets/floating_navigation_bar.dart @@ -1,3 +1,5 @@ +import 'dart:io'; + import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; @@ -98,7 +100,9 @@ class _FloatingNavigationBarState extends State { } Navigator.of(context).pop(); }, - icon: DidvanIcons.back_regular, + icon: Platform.isIOS + ? Icons.arrow_back_ios + : DidvanIcons.back_regular, ), ), const Spacer(), diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index 450a9a1..f1b66bc 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -150,7 +150,7 @@ class RouteGenerator { static Route _createRoute(page) { return MaterialPageRoute( - builder: (context) => page, + builder: (context) => SafeArea(child: page, top: false), ); } } diff --git a/lib/widgets/didvan/app_bar.dart b/lib/widgets/didvan/app_bar.dart index b61d6dd..ac78e99 100644 --- a/lib/widgets/didvan/app_bar.dart +++ b/lib/widgets/didvan/app_bar.dart @@ -1,3 +1,5 @@ +import 'dart:io'; + import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/view/app_bar_data.dart'; @@ -36,7 +38,9 @@ class DidvanAppBar extends StatelessWidget { IconButton( onPressed: () => Navigator.of(context).pop(), color: Theme.of(context).colorScheme.title, - icon: const Icon(DidvanIcons.back_regular), + icon: Icon( + Platform.isIOS ? Icons.arrow_back_ios : DidvanIcons.back_regular, + ), ), const SizedBox(width: 16), Expanded( diff --git a/lib/widgets/didvan/page_view.dart b/lib/widgets/didvan/page_view.dart index 4f92f2e..01e4234 100644 --- a/lib/widgets/didvan/page_view.dart +++ b/lib/widgets/didvan/page_view.dart @@ -1,3 +1,5 @@ +import 'dart:io'; + import 'package:carousel_slider/carousel_slider.dart'; import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; @@ -301,7 +303,10 @@ class __BackButtonState extends State<_BackButton> { border: Border.all(color: Theme.of(context).colorScheme.border), borderRadius: DesignConfig.lowBorderRadius, ), - child: const Icon(DidvanIcons.back_regular, size: 32), + child: Icon( + Platform.isIOS ? Icons.arrow_back_ios : DidvanIcons.back_regular, + size: 32, + ), ), ), ); From efd512e9b6e5c9bc0fb1e50795a0f8752b08c130 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 23 Feb 2022 18:57:19 +0330 Subject: [PATCH 237/273] D1APP-102 non-safe area color added --- lib/routes/route_generator.dart | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index f1b66bc..68be14e 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -1,3 +1,4 @@ +import 'package:didvan/config/design_config.dart'; import 'package:didvan/pages/authentication/authentication.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; import 'package:didvan/pages/home/comments/comments.dart'; @@ -150,7 +151,13 @@ class RouteGenerator { static Route _createRoute(page) { return MaterialPageRoute( - builder: (context) => SafeArea(child: page, top: false), + builder: (context) => Container( + color: Theme.of(context).colorScheme.surface, + child: SafeArea( + child: page, + top: false, + ), + ), ); } } From db45aa3a362409bf190bd5359a69403829c77a68 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 23 Feb 2022 19:46:20 +0330 Subject: [PATCH 238/273] D1APP-87 interactive viewer on image contents --- lib/widgets/didvan/icon_button.dart | 8 ++++++- lib/widgets/didvan/page_view.dart | 37 ++++++++++++++++++++++++++--- 2 files changed, 41 insertions(+), 4 deletions(-) diff --git a/lib/widgets/didvan/icon_button.dart b/lib/widgets/didvan/icon_button.dart index 6f12245..ef501d7 100644 --- a/lib/widgets/didvan/icon_button.dart +++ b/lib/widgets/didvan/icon_button.dart @@ -4,6 +4,7 @@ import 'package:flutter/material.dart'; class DidvanIconButton extends StatelessWidget { final IconData icon; final Color? color; + final Color? backgroundColor; final double? size; final double? gestureSize; final VoidCallback onPressed; @@ -14,6 +15,7 @@ class DidvanIconButton extends StatelessWidget { this.color, this.size, this.gestureSize, + this.backgroundColor, }) : super(key: key); @override @@ -21,7 +23,11 @@ class DidvanIconButton extends StatelessWidget { return InkWrapper( onPressed: onPressed, borderRadius: BorderRadius.circular(200), - child: SizedBox( + child: Container( + decoration: BoxDecoration( + color: backgroundColor, + shape: BoxShape.circle, + ), height: gestureSize ?? 48, width: gestureSize ?? 48, child: Icon( diff --git a/lib/widgets/didvan/page_view.dart b/lib/widgets/didvan/page_view.dart index 01e4234..8368202 100644 --- a/lib/widgets/didvan/page_view.dart +++ b/lib/widgets/didvan/page_view.dart @@ -9,6 +9,7 @@ import 'package:didvan/utils/date_time.dart'; import 'package:didvan/widgets/animated_visibility.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; +import 'package:didvan/widgets/didvan/icon_button.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/ink_wrapper.dart'; import 'package:didvan/widgets/item_title.dart'; @@ -201,9 +202,39 @@ class _DidvanPageViewState extends State { ); } if (content.image != null) { - return SkeletonImage( - imageUrl: content.image!, - aspectRatio: 16 / 9, + return GestureDetector( + onTap: () { + showDialog( + context: context, + builder: (context) => Stack( + children: [ + Positioned.fill( + child: InteractiveViewer( + child: Center( + child: SkeletonImage( + width: MediaQuery.of(context).size.width, + height: 200, + imageUrl: content.image, + ), + ), + ), + ), + Positioned( + right: 16, + child: DidvanIconButton( + backgroundColor: Theme.of(context).colorScheme.primary, + icon: DidvanIcons.back_regular, + onPressed: Navigator.of(context).pop, + ), + ), + ], + ), + ); + }, + child: SkeletonImage( + imageUrl: content.image!, + aspectRatio: 16 / 9, + ), ); } return const SizedBox(); From e306e43cb63cd396ad6b532daa14e1e306f5b9ad Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 23 Feb 2022 19:49:23 +0330 Subject: [PATCH 239/273] back icons reverted to default --- lib/pages/authentication/widgets/authentication_app_bar.dart | 4 +--- lib/pages/home/widgets/floating_navigation_bar.dart | 4 +--- lib/widgets/didvan/app_bar.dart | 4 ++-- lib/widgets/didvan/page_view.dart | 4 ++-- 4 files changed, 6 insertions(+), 10 deletions(-) diff --git a/lib/pages/authentication/widgets/authentication_app_bar.dart b/lib/pages/authentication/widgets/authentication_app_bar.dart index 9fc7394..86f971e 100644 --- a/lib/pages/authentication/widgets/authentication_app_bar.dart +++ b/lib/pages/authentication/widgets/authentication_app_bar.dart @@ -18,9 +18,7 @@ class AuthenticationAppBar extends StatelessWidget { return Row( children: [ DidvanIconButton( - icon: Platform.isIOS - ? Icons.arrow_back_ios - : DidvanIcons.back_regular, + icon: DidvanIcons.back_regular, onPressed: () { if (state.currentPageIndex == 0) { Navigator.of(context).pop(); diff --git a/lib/pages/home/widgets/floating_navigation_bar.dart b/lib/pages/home/widgets/floating_navigation_bar.dart index 1b1c290..c02c2a8 100644 --- a/lib/pages/home/widgets/floating_navigation_bar.dart +++ b/lib/pages/home/widgets/floating_navigation_bar.dart @@ -100,9 +100,7 @@ class _FloatingNavigationBarState extends State { } Navigator.of(context).pop(); }, - icon: Platform.isIOS - ? Icons.arrow_back_ios - : DidvanIcons.back_regular, + icon: DidvanIcons.back_regular, ), ), const Spacer(), diff --git a/lib/widgets/didvan/app_bar.dart b/lib/widgets/didvan/app_bar.dart index ac78e99..44c915f 100644 --- a/lib/widgets/didvan/app_bar.dart +++ b/lib/widgets/didvan/app_bar.dart @@ -38,8 +38,8 @@ class DidvanAppBar extends StatelessWidget { IconButton( onPressed: () => Navigator.of(context).pop(), color: Theme.of(context).colorScheme.title, - icon: Icon( - Platform.isIOS ? Icons.arrow_back_ios : DidvanIcons.back_regular, + icon: const Icon( + DidvanIcons.back_regular, ), ), const SizedBox(width: 16), diff --git a/lib/widgets/didvan/page_view.dart b/lib/widgets/didvan/page_view.dart index 8368202..6a09ab1 100644 --- a/lib/widgets/didvan/page_view.dart +++ b/lib/widgets/didvan/page_view.dart @@ -334,8 +334,8 @@ class __BackButtonState extends State<_BackButton> { border: Border.all(color: Theme.of(context).colorScheme.border), borderRadius: DesignConfig.lowBorderRadius, ), - child: Icon( - Platform.isIOS ? Icons.arrow_back_ios : DidvanIcons.back_regular, + child: const Icon( + DidvanIcons.back_regular, size: 32, ), ), From 05e15b55c4d1ccc5e23e8589bc1ca6e5fa696cdb Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 23 Feb 2022 19:50:28 +0330 Subject: [PATCH 240/273] code cleaning --- lib/pages/authentication/widgets/authentication_app_bar.dart | 2 -- lib/pages/home/widgets/floating_navigation_bar.dart | 2 -- lib/routes/route_generator.dart | 1 - lib/widgets/didvan/app_bar.dart | 2 -- lib/widgets/didvan/page_view.dart | 2 -- 5 files changed, 9 deletions(-) diff --git a/lib/pages/authentication/widgets/authentication_app_bar.dart b/lib/pages/authentication/widgets/authentication_app_bar.dart index 86f971e..e9cb490 100644 --- a/lib/pages/authentication/widgets/authentication_app_bar.dart +++ b/lib/pages/authentication/widgets/authentication_app_bar.dart @@ -1,5 +1,3 @@ -import 'dart:io'; - import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; diff --git a/lib/pages/home/widgets/floating_navigation_bar.dart b/lib/pages/home/widgets/floating_navigation_bar.dart index c02c2a8..6ed2f01 100644 --- a/lib/pages/home/widgets/floating_navigation_bar.dart +++ b/lib/pages/home/widgets/floating_navigation_bar.dart @@ -1,5 +1,3 @@ -import 'dart:io'; - import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index 68be14e..2f32f32 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -1,4 +1,3 @@ -import 'package:didvan/config/design_config.dart'; import 'package:didvan/pages/authentication/authentication.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; import 'package:didvan/pages/home/comments/comments.dart'; diff --git a/lib/widgets/didvan/app_bar.dart b/lib/widgets/didvan/app_bar.dart index 44c915f..062e6cb 100644 --- a/lib/widgets/didvan/app_bar.dart +++ b/lib/widgets/didvan/app_bar.dart @@ -1,5 +1,3 @@ -import 'dart:io'; - import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/view/app_bar_data.dart'; diff --git a/lib/widgets/didvan/page_view.dart b/lib/widgets/didvan/page_view.dart index 6a09ab1..588a421 100644 --- a/lib/widgets/didvan/page_view.dart +++ b/lib/widgets/didvan/page_view.dart @@ -1,5 +1,3 @@ -import 'dart:io'; - import 'package:carousel_slider/carousel_slider.dart'; import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; From f68b7973e6578eda20c0aad9df748940c843a1ab Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 26 Feb 2022 02:05:44 +0330 Subject: [PATCH 241/273] D1APP-104 new models updates for bookmarks -_-+-- --- lib/models/item_overview.dart | 26 -------- lib/models/news_details_data.dart | 2 +- lib/models/news_overview.dart | 34 ----------- lib/models/overview_data.dart | 61 +++++++++++++++++++ lib/models/radar_details_data.dart | 2 +- lib/models/radar_overview.dart | 49 --------------- lib/pages/home/hashtag/hashtag.dart | 21 +++++++ lib/pages/home/hashtag/hashtag_state.dart | 20 ++++++ .../news/news_details/news_details_state.dart | 2 +- lib/pages/home/news/news_state.dart | 6 +- .../radar_details/radar_details_state.dart | 6 +- lib/pages/home/radar/radar_state.dart | 6 +- .../settings/bookmarks/bookmark_state.dart | 4 +- .../home/settings/bookmarks/bookmarks.dart | 4 +- .../filtered_bookmark/filtered_bookmark.dart | 14 ++--- .../filtered_bookmarks_state.dart | 16 ++--- .../home/widgets/multitype_overview.dart | 2 +- lib/pages/home/widgets/news_overview.dart | 6 +- lib/pages/home/widgets/radar_overview.dart | 6 +- lib/services/network/request_helper.dart | 8 ++- 20 files changed, 141 insertions(+), 154 deletions(-) delete mode 100644 lib/models/item_overview.dart delete mode 100644 lib/models/news_overview.dart create mode 100644 lib/models/overview_data.dart delete mode 100644 lib/models/radar_overview.dart create mode 100644 lib/pages/home/hashtag/hashtag.dart create mode 100644 lib/pages/home/hashtag/hashtag_state.dart diff --git a/lib/models/item_overview.dart b/lib/models/item_overview.dart deleted file mode 100644 index 921d7db..0000000 --- a/lib/models/item_overview.dart +++ /dev/null @@ -1,26 +0,0 @@ -class OverviewData { - final int id; - final String title; - final String image; - final String description; - final String createdAt; - final String? type; - - const OverviewData({ - required this.id, - required this.title, - required this.image, - required this.description, - required this.createdAt, - required this.type, - }); - - factory OverviewData.fromJson(Map json) => OverviewData( - id: json['id'], - title: json['title'], - image: json['image'], - description: json['description'], - createdAt: json['createdAt'], - type: json['type'], - ); -} diff --git a/lib/models/news_details_data.dart b/lib/models/news_details_data.dart index 75430e6..0a1a68b 100644 --- a/lib/models/news_details_data.dart +++ b/lib/models/news_details_data.dart @@ -1,5 +1,5 @@ import 'package:didvan/models/content.dart'; -import 'package:didvan/models/item_overview.dart'; +import 'package:didvan/models/overview_data.dart'; import 'package:didvan/models/tag.dart'; class NewsDetailsData { diff --git a/lib/models/news_overview.dart b/lib/models/news_overview.dart deleted file mode 100644 index 35d2161..0000000 --- a/lib/models/news_overview.dart +++ /dev/null @@ -1,34 +0,0 @@ -import 'package:didvan/models/item_overview.dart'; - -class NewsOverviewData extends OverviewData { - final String reference; - bool marked; - - NewsOverviewData({ - required this.reference, - required this.marked, - required id, - required createdAt, - required description, - required title, - required image, - }) : super( - createdAt: createdAt, - description: description, - id: id, - image: image, - title: title, - type: 'news', - ); - - factory NewsOverviewData.fromJson(Map json) => - NewsOverviewData( - id: json['id'], - title: json['title'], - reference: json['reference'], - description: json['description'], - image: json['image'], - createdAt: json['createdAt'], - marked: json['marked'] ?? true, - ); -} diff --git a/lib/models/overview_data.dart b/lib/models/overview_data.dart new file mode 100644 index 0000000..4d16449 --- /dev/null +++ b/lib/models/overview_data.dart @@ -0,0 +1,61 @@ +import 'package:didvan/models/category.dart'; + +class OverviewData { + final int id; + final String title; + final String image; + final String description; + final int? timeToRead; + final String? reference; + final bool forManagers; + final String createdAt; + final String type; + int comments; + bool marked; + final List? categories; + + OverviewData({ + required this.id, + required this.title, + required this.image, + required this.description, + required this.createdAt, + required this.type, + required this.marked, + required this.comments, + required this.forManagers, + this.timeToRead, + this.reference, + this.categories, + }); + + factory OverviewData.fromJson(Map json) => OverviewData( + id: json['id'], + title: json['title'], + image: json['image'], + description: json['description'], + timeToRead: json['timeToRead'], + reference: json['reference'], + forManagers: json['forManagers'] ?? false, + comments: json['comments'] ?? 0, + createdAt: json['createdAt'], + type: json['type'] ?? '', + marked: json['marked'] ?? false, + categories: (json['categories'] as List?) + ?.map((e) => CategoryData.fromJson(e as Map)) + .toList(), + ); + + Map toJson() => { + 'id': id, + 'title': title, + 'image': image, + 'description': description, + 'timeToRead': timeToRead, + 'reference': reference, + 'forManagers': forManagers, + 'createdAt': createdAt, + 'type': type, + 'categories': categories?.map((e) => e.toJson()).toList(), + }; +} diff --git a/lib/models/radar_details_data.dart b/lib/models/radar_details_data.dart index d075e09..a41bb1e 100644 --- a/lib/models/radar_details_data.dart +++ b/lib/models/radar_details_data.dart @@ -1,5 +1,5 @@ import 'package:didvan/models/category.dart'; -import 'package:didvan/models/item_overview.dart'; +import 'package:didvan/models/overview_data.dart'; import 'content.dart'; import 'tag.dart'; diff --git a/lib/models/radar_overview.dart b/lib/models/radar_overview.dart deleted file mode 100644 index db1cb54..0000000 --- a/lib/models/radar_overview.dart +++ /dev/null @@ -1,49 +0,0 @@ -import 'package:didvan/models/item_overview.dart'; - -import 'category.dart'; - -class RadarOverviewData extends OverviewData { - final bool forManagers; - final List categories; - final int timeToRead; - int comments; - bool marked; - - RadarOverviewData({ - required this.forManagers, - required this.categories, - required this.comments, - required this.timeToRead, - required this.marked, - required createdAt, - required description, - required id, - required image, - required title, - }) : super( - createdAt: createdAt, - description: description, - id: id, - image: image, - title: title, - type: 'radar', - ); - - factory RadarOverviewData.fromJson(Map json) => - RadarOverviewData( - id: json['id'], - image: json['image'], - title: json['title'], - description: json['description'], - timeToRead: json['timeToRead'], - createdAt: json['createdAt'], - forManagers: json['forManagers'], - marked: json['marked'], - comments: json['comments'], - categories: List.from( - json['categories'].map( - (category) => CategoryData.fromJson(category), - ), - ), - ); -} diff --git a/lib/pages/home/hashtag/hashtag.dart b/lib/pages/home/hashtag/hashtag.dart new file mode 100644 index 0000000..acd93a2 --- /dev/null +++ b/lib/pages/home/hashtag/hashtag.dart @@ -0,0 +1,21 @@ +import 'package:didvan/models/tag.dart'; +import 'package:didvan/models/view/app_bar_data.dart'; +import 'package:didvan/widgets/didvan/scaffold.dart'; +import 'package:flutter/material.dart'; + +class Hashtag extends StatefulWidget { + final Tag tag; + const Hashtag({Key? key, required this.tag}) : super(key: key); + + @override + _HashtagState createState() => _HashtagState(); +} + +class _HashtagState extends State { + @override + Widget build(BuildContext context) { + return DidvanScaffold( + appBarData: AppBarData(title: widget.tag.label, hasBack: true), + ); + } +} diff --git a/lib/pages/home/hashtag/hashtag_state.dart b/lib/pages/home/hashtag/hashtag_state.dart new file mode 100644 index 0000000..6369e13 --- /dev/null +++ b/lib/pages/home/hashtag/hashtag_state.dart @@ -0,0 +1,20 @@ +import 'package:didvan/models/enums.dart'; +import 'package:didvan/providers/core_provider.dart'; +import 'package:didvan/services/network/request.dart'; +import 'package:didvan/services/network/request_helper.dart'; + +class HashtagState extends CoreProvier { + late final int id; + int page = 1; + + Future getTagItems({required int page}) async { + appState = AppState.busy; + final service = RequestService(RequestHelper.tag( + ids: [id], + limit: 15, + page: page, + )); + await service.httpGet(); + if (service.isSuccess) {} + } +} diff --git a/lib/pages/home/news/news_details/news_details_state.dart b/lib/pages/home/news/news_details/news_details_state.dart index b9ac878..879a178 100644 --- a/lib/pages/home/news/news_details/news_details_state.dart +++ b/lib/pages/home/news/news_details/news_details_state.dart @@ -2,8 +2,8 @@ import 'dart:async'; import 'dart:math'; import 'package:didvan/models/enums.dart'; -import 'package:didvan/models/item_overview.dart'; import 'package:didvan/models/news_details_data.dart'; +import 'package:didvan/models/overview_data.dart'; import 'package:didvan/models/requests/news.dart'; import 'package:didvan/providers/core_provider.dart'; import 'package:didvan/services/network/request.dart'; diff --git a/lib/pages/home/news/news_state.dart b/lib/pages/home/news/news_state.dart index 735011e..47f3366 100644 --- a/lib/pages/home/news/news_state.dart +++ b/lib/pages/home/news/news_state.dart @@ -1,5 +1,5 @@ import 'package:didvan/models/enums.dart'; -import 'package:didvan/models/news_overview.dart'; +import 'package:didvan/models/overview_data.dart'; import 'package:didvan/models/requests/news.dart'; import 'package:didvan/providers/core_provider.dart'; import 'package:didvan/providers/user_provider.dart'; @@ -14,7 +14,7 @@ class NewsState extends CoreProvier { int page = 1; int lastPage = 0; - final List news = []; + final List news = []; void init() { search = ''; @@ -61,7 +61,7 @@ class NewsState extends CoreProvier { lastPage = service.result['lastPage']; final newsList = service.result['news']; for (var i = 0; i < newsList.length; i++) { - news.add(NewsOverviewData.fromJson(newsList[i])); + news.add(OverviewData.fromJson(newsList[i])); } appState = AppState.idle; return; diff --git a/lib/pages/home/radar/radar_details/radar_details_state.dart b/lib/pages/home/radar/radar_details/radar_details_state.dart index ed210be..e08e1c8 100644 --- a/lib/pages/home/radar/radar_details/radar_details_state.dart +++ b/lib/pages/home/radar/radar_details/radar_details_state.dart @@ -2,12 +2,13 @@ import 'dart:async'; import 'dart:math'; import 'package:didvan/models/enums.dart'; -import 'package:didvan/models/item_overview.dart'; +import 'package:didvan/models/overview_data.dart'; import 'package:didvan/models/radar_details_data.dart'; import 'package:didvan/models/requests/radar.dart'; import 'package:didvan/providers/core_provider.dart'; import 'package:didvan/services/network/request.dart'; import 'package:didvan/services/network/request_helper.dart'; +import 'package:flutter/material.dart'; class RadarDetailsState extends CoreProvier { final List radars = []; @@ -41,6 +42,7 @@ class RadarDetailsState extends CoreProvier { _handleTracking(sendRequest: isForward != null); if (service.isSuccess) { final result = service.result; + debugPrint(service.result.toString()); final radar = RadarDetailsData.fromJson(result['radar']); if (args.page == 0) { radars.add(radar); @@ -96,7 +98,7 @@ class RadarDetailsState extends CoreProvier { final service = RequestService(RequestHelper.tag( ids: currentRadar.tags.map((tag) => tag.id).toList(), itemId: currentRadar.id, - type: 'news', + type: 'radar', )); await service.httpGet(); if (service.isSuccess) { diff --git a/lib/pages/home/radar/radar_state.dart b/lib/pages/home/radar/radar_state.dart index b3da200..75318ee 100644 --- a/lib/pages/home/radar/radar_state.dart +++ b/lib/pages/home/radar/radar_state.dart @@ -1,8 +1,8 @@ import 'package:didvan/constants/assets.dart'; import 'package:didvan/models/enums.dart'; +import 'package:didvan/models/overview_data.dart'; import 'package:didvan/models/requests/radar.dart'; import 'package:didvan/models/view/radar_category.dart'; -import 'package:didvan/models/radar_overview.dart'; import 'package:didvan/providers/core_provider.dart'; import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/services/network/request.dart'; @@ -19,7 +19,7 @@ class RadarState extends CoreProvier { bool shouldColapse = false; final List selectedCats = []; List categories = []; - final List radars = []; + final List radars = []; bool get filtering => selectedCats.length > 1 || startDate != null || endDate != null; @@ -70,7 +70,7 @@ class RadarState extends CoreProvier { lastPage = service.result['lastPage']; final radarsList = service.result['radars']; for (var i = 0; i < radarsList.length; i++) { - radars.add(RadarOverviewData.fromJson(radarsList[i])); + radars.add(OverviewData.fromJson(radarsList[i])); } if (searching || filtering || isColapsed || isCategorySelected) { shouldColapse = true; diff --git a/lib/pages/home/settings/bookmarks/bookmark_state.dart b/lib/pages/home/settings/bookmarks/bookmark_state.dart index 5786b50..1807179 100644 --- a/lib/pages/home/settings/bookmarks/bookmark_state.dart +++ b/lib/pages/home/settings/bookmarks/bookmark_state.dart @@ -1,5 +1,5 @@ import 'package:didvan/models/enums.dart'; -import 'package:didvan/models/item_overview.dart'; +import 'package:didvan/models/overview_data.dart'; import 'package:didvan/providers/core_provider.dart'; import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/services/network/request.dart'; @@ -36,7 +36,7 @@ class BookmarksState extends CoreProvier { if (value) return; final type = bookmarks.firstWhere((element) => element.id == id).type; switch (type) { - case 'radars': + case 'radar': UserProvider.changeRadarMark(id, value); break; case 'news': diff --git a/lib/pages/home/settings/bookmarks/bookmarks.dart b/lib/pages/home/settings/bookmarks/bookmarks.dart index 6d1474a..05a7e10 100644 --- a/lib/pages/home/settings/bookmarks/bookmarks.dart +++ b/lib/pages/home/settings/bookmarks/bookmarks.dart @@ -60,7 +60,7 @@ class _BookmarksState extends State { child: Column( children: [ MenuItem( - onTap: () => _onCategorySelected('radars'), + onTap: () => _onCategorySelected('radar'), title: 'تحلیل‌های رادار', icon: DidvanIcons.radar_regular, iconSize: 24, @@ -122,7 +122,7 @@ class _BookmarksState extends State { } void _onCategorySelected(String type) { - if (type != 'radars' && type != 'news') return; + if (type != 'radar' && type != 'news') return; FocusScope.of(context).unfocus(); Navigator.of(context).pushNamed(Routes.filteredBookmarks, arguments: type); } diff --git a/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart b/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart index ac5bee1..1c9d760 100644 --- a/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart +++ b/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart @@ -1,5 +1,3 @@ -import 'package:didvan/models/news_overview.dart'; -import 'package:didvan/models/radar_overview.dart'; import 'package:didvan/models/view/app_bar_data.dart'; import 'package:didvan/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart'; import 'package:didvan/pages/home/widgets/news_overview.dart'; @@ -29,13 +27,13 @@ class _FilteredBookmarksState extends State { String get _appBarTitle { switch (context.read().type) { - case 'radars': + case 'radar': return 'تحلیل‌های رادار'; case 'news': return 'اخبار'; - case 'videos': + case 'video': return 'ویدئو‌ها'; - case 'podcasts': + case 'podcast': return 'پادکست‌ها'; default: return 'پادکست‌ها'; @@ -56,16 +54,16 @@ class _FilteredBookmarksState extends State { placeholder: RadarOverview.placeholder, emptyState: const EmptyList(), builder: (context, state, index) { - if (state.type == 'radars') { + if (state.type == 'radar') { return RadarOverview( - radar: state.bookmarks[index] as RadarOverviewData, + radar: state.bookmarks[index], onMarkChanged: _onBookmarkChanged, onCommentsChanged: state.onCommentsChanged, hasUnmarkConfirmation: true, ); } return NewsOverview( - news: state.bookmarks[index] as NewsOverviewData, + news: state.bookmarks[index], onMarkChanged: _onBookmarkChanged, hasUnmarkConfirmation: true, ); diff --git a/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart b/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart index 99c7476..4625410 100644 --- a/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart +++ b/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart @@ -1,7 +1,5 @@ import 'package:didvan/models/enums.dart'; -import 'package:didvan/models/item_overview.dart'; -import 'package:didvan/models/news_overview.dart'; -import 'package:didvan/models/radar_overview.dart'; +import 'package:didvan/models/overview_data.dart'; import 'package:didvan/providers/core_provider.dart'; import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/services/network/request.dart'; @@ -29,12 +27,7 @@ class FilteredBookmarksState extends CoreProvier { final marks = service.result[type]; bookmarks.clear(); for (var i = 0; i < marks.length; i++) { - if (type == 'radars') { - bookmarks.add(RadarOverviewData.fromJson(marks[i])); - } - if (type == 'news') { - bookmarks.add(NewsOverviewData.fromJson(marks[i])); - } + bookmarks.add(OverviewData.fromJson(marks[i])); } appState = AppState.idle; return; @@ -44,7 +37,7 @@ class FilteredBookmarksState extends CoreProvier { void onMarkChanged(int id, bool value) { switch (type) { - case 'radars': + case 'radar': UserProvider.changeRadarMark(id, value); break; case 'news': @@ -57,8 +50,7 @@ class FilteredBookmarksState extends CoreProvier { } void onCommentsChanged(int id, int value) { - (bookmarks.firstWhere((radar) => radar.id == id) as RadarOverviewData) - .comments = value; + bookmarks.firstWhere((radar) => radar.id == id).comments = value; notifyListeners(); } } diff --git a/lib/pages/home/widgets/multitype_overview.dart b/lib/pages/home/widgets/multitype_overview.dart index 4cd5f54..f45ea16 100644 --- a/lib/pages/home/widgets/multitype_overview.dart +++ b/lib/pages/home/widgets/multitype_overview.dart @@ -1,6 +1,6 @@ import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/models/item_overview.dart'; +import 'package:didvan/models/overview_data.dart'; import 'package:didvan/models/requests/news.dart'; import 'package:didvan/models/requests/radar.dart'; import 'package:didvan/routes/routes.dart'; diff --git a/lib/pages/home/widgets/news_overview.dart b/lib/pages/home/widgets/news_overview.dart index 0c625de..03a19aa 100644 --- a/lib/pages/home/widgets/news_overview.dart +++ b/lib/pages/home/widgets/news_overview.dart @@ -1,4 +1,4 @@ -import 'package:didvan/models/news_overview.dart'; +import 'package:didvan/models/overview_data.dart'; import 'package:didvan/models/requests/news.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/utils/date_time.dart'; @@ -11,7 +11,7 @@ import 'package:didvan/widgets/skeleton_image.dart'; import 'package:flutter/material.dart'; class NewsOverview extends StatelessWidget { - final NewsOverviewData news; + final OverviewData news; final NewsRequestArgs? newsRequestArgs; final void Function(int id, bool value) onMarkChanged; final bool hasUnmarkConfirmation; @@ -69,7 +69,7 @@ class NewsOverview extends StatelessWidget { Row( children: [ DidvanText( - news.reference, + news.reference!, style: Theme.of(context).textTheme.caption, ), DidvanText( diff --git a/lib/pages/home/widgets/radar_overview.dart b/lib/pages/home/widgets/radar_overview.dart index e6c252b..64d462d 100644 --- a/lib/pages/home/widgets/radar_overview.dart +++ b/lib/pages/home/widgets/radar_overview.dart @@ -1,6 +1,6 @@ import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/models/radar_overview.dart'; +import 'package:didvan/models/overview_data.dart'; import 'package:didvan/models/requests/radar.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/utils/date_time.dart'; @@ -14,7 +14,7 @@ import 'package:didvan/widgets/skeleton_image.dart'; import 'package:flutter/material.dart'; class RadarOverview extends StatelessWidget { - final RadarOverviewData radar; + final OverviewData radar; final void Function(int id, int count) onCommentsChanged; final void Function(int id, bool value) onMarkChanged; final bool hasUnmarkConfirmation; @@ -81,7 +81,7 @@ class RadarOverview extends StatelessWidget { Row( children: [ DidvanText( - radar.categories.first.label, + radar.categories!.first.label, style: Theme.of(context).textTheme.overline, color: Theme.of(context).colorScheme.caption, ), diff --git a/lib/services/network/request_helper.dart b/lib/services/network/request_helper.dart index ba7e262..7e1902e 100644 --- a/lib/services/network/request_helper.dart +++ b/lib/services/network/request_helper.dart @@ -24,13 +24,15 @@ class RequestHelper { _baseDirectUrl + '/$id/sendMessage'; static String tag({ required List ids, - required String type, - required int itemId, + String? type, + int? itemId, + int? page, + int? limit, }) => baseUrl + '/tag' + _urlConcatGenerator([ - const MapEntry('limit', '3'), + MapEntry('limit', limit?.toString() ?? '3'), MapEntry('type', type), MapEntry('id', itemId.toString()), MapEntry('tags', _urlListConcatGenerator(ids)) From 7506c5430d8e6c55ba9446e6b5abdd117af6b778 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 26 Feb 2022 02:37:09 +0330 Subject: [PATCH 242/273] bug fix + code cleaning --- lib/pages/home/radar/radar_details/radar_details_state.dart | 1 - .../bookmarks/filtered_bookmark/filtered_bookmarks_state.dart | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/pages/home/radar/radar_details/radar_details_state.dart b/lib/pages/home/radar/radar_details/radar_details_state.dart index e08e1c8..1e6c4e8 100644 --- a/lib/pages/home/radar/radar_details/radar_details_state.dart +++ b/lib/pages/home/radar/radar_details/radar_details_state.dart @@ -42,7 +42,6 @@ class RadarDetailsState extends CoreProvier { _handleTracking(sendRequest: isForward != null); if (service.isSuccess) { final result = service.result; - debugPrint(service.result.toString()); final radar = RadarDetailsData.fromJson(result['radar']); if (args.page == 0) { radars.add(radar); diff --git a/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart b/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart index 4625410..fffd1dc 100644 --- a/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart +++ b/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart @@ -24,7 +24,7 @@ class FilteredBookmarksState extends CoreProvier { await service.httpGet(); if (service.isSuccess) { - final marks = service.result[type]; + final marks = service.result[type != 'news' ? type + 's' : type]; bookmarks.clear(); for (var i = 0; i < marks.length; i++) { bookmarks.add(OverviewData.fromJson(marks[i])); From 72c6a8c602e68bcddb08835fc53fa862df63fc4d Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 27 Feb 2022 11:19:55 +0330 Subject: [PATCH 243/273] project structure cganged --- lib/routes/route_generator.dart | 50 +++++++++---------- lib/utils/action_sheet.dart | 4 +- .../authentication/authentication.dart | 10 ++-- .../authentication/authentication_state.dart | 0 .../authentication/screens/password.dart | 10 ++-- .../screens/reset_password.dart | 6 +-- .../authentication/screens/username.dart | 8 +-- .../authentication/screens/verification.dart | 8 +-- .../widgets/authentication_app_bar.dart | 6 +-- .../widgets/authentication_layout.dart | 4 +- .../home/comments/comments.dart | 16 +++--- .../home/comments/comments_state.dart | 0 .../home/comments/widgets/comment_item.dart | 12 ++--- lib/{pages => views}/home/direct/direct.dart | 10 ++-- .../home/direct/direct_state.dart | 0 .../home/direct/widgets/audio_widget.dart | 4 +- .../home/direct/widgets/message.dart | 10 ++-- .../home/direct/widgets/message_box.dart | 8 +-- .../home/hashtag/hashtag.dart | 2 +- .../home/hashtag/hashtag_state.dart | 0 lib/{pages => views}/home/home.dart | 14 +++--- lib/{pages => views}/home/home_state.dart | 0 lib/{pages => views}/home/news/news.dart | 16 +++--- .../home/news/news_details/news_details.dart | 8 +-- .../news/news_details/news_details_state.dart | 0 .../home/news/news_state.dart | 0 lib/{pages => views}/home/radar/radar.dart | 26 +++++----- .../radar/radar_details/radar_details.dart | 8 +-- .../radar_details/radar_details_state.dart | 0 .../home/radar/radar_state.dart | 0 .../home/radar/widgets/categories_gird.dart | 4 +- .../home/radar/widgets/categories_list.dart | 6 +-- .../home/radar/widgets/category_item.dart | 6 +-- .../home/settings/about_us/about_us.dart | 4 +- .../settings/bookmarks/bookmark_state.dart | 0 .../home/settings/bookmarks/bookmarks.dart | 24 ++++----- .../filtered_bookmark/filtered_bookmark.dart | 12 ++--- .../filtered_bookmarks_state.dart | 0 .../settings/direct_list/direct_list.dart | 16 +++--- .../direct_list/direct_list_state.dart | 0 .../direct_list/widgets/direct_item.dart | 6 +-- .../settings/general_settings/settings.dart | 16 +++--- .../general_settings/settings_state.dart | 0 .../home/settings/profile/profile.dart | 18 +++---- .../profile/widgets/profile_photo.dart | 8 +-- .../home/settings/settings.dart | 12 ++--- .../home/statistics/statistics.dart | 4 +- lib/{pages => views}/home/studio/studio.dart | 10 ++-- .../home/studio/studio_state.dart | 0 .../home/studio/widgets/slider.dart | 0 .../home/studio/widgets/tab_bar.dart | 2 +- .../home/widgets/audio_slider.dart | 0 .../home/widgets/audio_visualizer.dart | 0 lib/{pages => views}/home/widgets/bnb.dart | 2 +- .../home/widgets/bookmark_button.dart | 4 +- .../home/widgets/date_picker_button.dart | 2 +- .../home/widgets/floating_navigation_bar.dart | 14 +++--- .../home/widgets/logo_app_bar.dart | 2 +- .../home/widgets/menu_item.dart | 2 +- .../home/widgets/multitype_overview.dart | 8 +-- .../home/widgets/news_overview.dart | 12 ++--- .../widgets/player_controller_button.dart | 2 +- .../home/widgets/radar_overview.dart | 14 +++--- .../home/widgets/search_field.dart | 2 +- .../home/widgets/tag_item.dart | 2 +- lib/{pages => views}/splash/splash.dart | 4 +- .../widgets/animated_visibility.dart | 0 lib/{ => views}/widgets/didvan/app_bar.dart | 2 +- lib/{ => views}/widgets/didvan/badge.dart | 2 +- lib/{ => views}/widgets/didvan/button.dart | 2 +- lib/{ => views}/widgets/didvan/card.dart | 0 lib/{ => views}/widgets/didvan/checkbox.dart | 2 +- lib/{ => views}/widgets/didvan/chip.dart | 4 +- lib/{ => views}/widgets/didvan/divider.dart | 0 .../widgets/didvan/icon_button.dart | 2 +- lib/{ => views}/widgets/didvan/page_view.dart | 20 ++++---- lib/{ => views}/widgets/didvan/scaffold.dart | 2 +- lib/{ => views}/widgets/didvan/switch.dart | 2 +- lib/{ => views}/widgets/didvan/text.dart | 0 .../widgets/didvan/text_field.dart | 4 +- lib/{ => views}/widgets/ink_wrapper.dart | 0 lib/{ => views}/widgets/item_title.dart | 2 +- .../widgets/logos/didvan_horizontal_logo.dart | 0 .../widgets/logos/didvan_vertical_logo.dart | 0 .../widgets/process_indicators.dart | 0 .../widgets/shimmer_placeholder.dart | 0 lib/{ => views}/widgets/skeleton_image.dart | 2 +- .../state_handlers/empty_connection.dart | 2 +- .../widgets/state_handlers/empty_list.dart | 2 +- .../widgets/state_handlers/empty_result.dart | 2 +- .../widgets/state_handlers/empty_state.dart | 4 +- .../state_handlers/sliver_state_handler.dart | 2 +- .../widgets/state_handlers/state_handler.dart | 2 +- 93 files changed, 259 insertions(+), 259 deletions(-) rename lib/{pages => views}/authentication/authentication.dart (81%) rename lib/{pages => views}/authentication/authentication_state.dart (100%) rename lib/{pages => views}/authentication/screens/password.dart (88%) rename lib/{pages => views}/authentication/screens/reset_password.dart (83%) rename lib/{pages => views}/authentication/screens/username.dart (92%) rename lib/{pages => views}/authentication/screens/verification.dart (90%) rename lib/{pages => views}/authentication/widgets/authentication_app_bar.dart (85%) rename lib/{pages => views}/authentication/widgets/authentication_layout.dart (92%) rename lib/{pages => views}/home/comments/comments.dart (93%) rename lib/{pages => views}/home/comments/comments_state.dart (100%) rename lib/{pages => views}/home/comments/widgets/comment_item.dart (96%) rename lib/{pages => views}/home/direct/direct.dart (90%) rename lib/{pages => views}/home/direct/direct_state.dart (100%) rename lib/{pages => views}/home/direct/widgets/audio_widget.dart (86%) rename lib/{pages => views}/home/direct/widgets/message.dart (95%) rename lib/{pages => views}/home/direct/widgets/message_box.dart (96%) rename lib/{pages => views}/home/hashtag/hashtag.dart (89%) rename lib/{pages => views}/home/hashtag/hashtag_state.dart (100%) rename lib/{pages => views}/home/home.dart (78%) rename lib/{pages => views}/home/home_state.dart (100%) rename lib/{pages => views}/home/news/news.dart (90%) rename lib/{pages => views}/home/news/news_details/news_details.dart (91%) rename lib/{pages => views}/home/news/news_details/news_details_state.dart (100%) rename lib/{pages => views}/home/news/news_state.dart (100%) rename lib/{pages => views}/home/radar/radar.dart (92%) rename lib/{pages => views}/home/radar/radar_details/radar_details.dart (92%) rename lib/{pages => views}/home/radar/radar_details/radar_details_state.dart (100%) rename lib/{pages => views}/home/radar/radar_state.dart (100%) rename lib/{pages => views}/home/radar/widgets/categories_gird.dart (94%) rename lib/{pages => views}/home/radar/widgets/categories_list.dart (96%) rename lib/{pages => views}/home/radar/widgets/category_item.dart (93%) rename lib/{pages => views}/home/settings/about_us/about_us.dart (95%) rename lib/{pages => views}/home/settings/bookmarks/bookmark_state.dart (100%) rename lib/{pages => views}/home/settings/bookmarks/bookmarks.dart (84%) rename lib/{pages => views}/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart (85%) rename lib/{pages => views}/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart (100%) rename lib/{pages => views}/home/settings/direct_list/direct_list.dart (84%) rename lib/{pages => views}/home/settings/direct_list/direct_list_state.dart (100%) rename lib/{pages => views}/home/settings/direct_list/widgets/direct_item.dart (94%) rename lib/{pages => views}/home/settings/general_settings/settings.dart (92%) rename lib/{pages => views}/home/settings/general_settings/settings_state.dart (100%) rename lib/{pages => views}/home/settings/profile/profile.dart (91%) rename lib/{pages => views}/home/settings/profile/widgets/profile_photo.dart (96%) rename lib/{pages => views}/home/settings/settings.dart (92%) rename lib/{pages => views}/home/statistics/statistics.dart (83%) rename lib/{pages => views}/home/studio/studio.dart (81%) rename lib/{pages => views}/home/studio/studio_state.dart (100%) rename lib/{pages => views}/home/studio/widgets/slider.dart (100%) rename lib/{pages => views}/home/studio/widgets/tab_bar.dart (97%) rename lib/{pages => views}/home/widgets/audio_slider.dart (100%) rename lib/{pages => views}/home/widgets/audio_visualizer.dart (100%) rename lib/{pages => views}/home/widgets/bnb.dart (98%) rename lib/{pages => views}/home/widgets/bookmark_button.dart (94%) rename lib/{pages => views}/home/widgets/date_picker_button.dart (97%) rename lib/{pages => views}/home/widgets/floating_navigation_bar.dart (95%) rename lib/{pages => views}/home/widgets/logo_app_bar.dart (91%) rename lib/{pages => views}/home/widgets/menu_item.dart (97%) rename lib/{pages => views}/home/widgets/multitype_overview.dart (94%) rename lib/{pages => views}/home/widgets/news_overview.dart (91%) rename lib/{pages => views}/home/widgets/player_controller_button.dart (94%) rename lib/{pages => views}/home/widgets/radar_overview.dart (93%) rename lib/{pages => views}/home/widgets/search_field.dart (98%) rename lib/{pages => views}/home/widgets/tag_item.dart (95%) rename lib/{pages => views}/splash/splash.dart (96%) rename lib/{ => views}/widgets/animated_visibility.dart (100%) rename lib/{ => views}/widgets/didvan/app_bar.dart (97%) rename lib/{ => views}/widgets/didvan/badge.dart (93%) rename lib/{ => views}/widgets/didvan/button.dart (97%) rename lib/{ => views}/widgets/didvan/card.dart (100%) rename lib/{ => views}/widgets/didvan/checkbox.dart (95%) rename lib/{ => views}/widgets/didvan/chip.dart (89%) rename lib/{ => views}/widgets/didvan/divider.dart (100%) rename lib/{ => views}/widgets/didvan/icon_button.dart (94%) rename lib/{ => views}/widgets/didvan/page_view.dart (95%) rename lib/{ => views}/widgets/didvan/scaffold.dart (98%) rename lib/{ => views}/widgets/didvan/switch.dart (95%) rename lib/{ => views}/widgets/didvan/text.dart (100%) rename lib/{ => views}/widgets/didvan/text_field.dart (98%) rename lib/{ => views}/widgets/ink_wrapper.dart (100%) rename lib/{ => views}/widgets/item_title.dart (94%) rename lib/{ => views}/widgets/logos/didvan_horizontal_logo.dart (100%) rename lib/{ => views}/widgets/logos/didvan_vertical_logo.dart (100%) rename lib/{ => views}/widgets/process_indicators.dart (100%) rename lib/{ => views}/widgets/shimmer_placeholder.dart (100%) rename lib/{ => views}/widgets/skeleton_image.dart (96%) rename lib/{ => views}/widgets/state_handlers/empty_connection.dart (87%) rename lib/{ => views}/widgets/state_handlers/empty_list.dart (82%) rename lib/{ => views}/widgets/state_handlers/empty_result.dart (87%) rename lib/{ => views}/widgets/state_handlers/empty_state.dart (92%) rename lib/{ => views}/widgets/state_handlers/sliver_state_handler.dart (96%) rename lib/{ => views}/widgets/state_handlers/state_handler.dart (95%) diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index 2f32f32..dfb10c8 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -1,28 +1,28 @@ -import 'package:didvan/pages/authentication/authentication.dart'; -import 'package:didvan/pages/authentication/authentication_state.dart'; -import 'package:didvan/pages/home/comments/comments.dart'; -import 'package:didvan/pages/home/comments/comments_state.dart'; -import 'package:didvan/pages/home/direct/direct.dart'; -import 'package:didvan/pages/home/direct/direct_state.dart'; -import 'package:didvan/pages/home/home.dart'; -import 'package:didvan/pages/home/home_state.dart'; -import 'package:didvan/pages/home/news/news_details/news_details.dart'; -import 'package:didvan/pages/home/news/news_details/news_details_state.dart'; -import 'package:didvan/pages/home/news/news_state.dart'; -import 'package:didvan/pages/home/radar/radar_details/radar_details.dart'; -import 'package:didvan/pages/home/radar/radar_details/radar_details_state.dart'; -import 'package:didvan/pages/home/radar/radar_state.dart'; -import 'package:didvan/pages/home/settings/about_us/about_us.dart'; -import 'package:didvan/pages/home/settings/bookmarks/bookmarks.dart'; -import 'package:didvan/pages/home/settings/bookmarks/bookmark_state.dart'; -import 'package:didvan/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart'; -import 'package:didvan/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart'; -import 'package:didvan/pages/home/settings/direct_list/direct_list.dart'; -import 'package:didvan/pages/home/settings/direct_list/direct_list_state.dart'; -import 'package:didvan/pages/home/settings/general_settings/settings.dart'; -import 'package:didvan/pages/home/settings/general_settings/settings_state.dart'; -import 'package:didvan/pages/home/settings/profile/profile.dart'; -import 'package:didvan/pages/splash/splash.dart'; +import 'package:didvan/views/authentication/authentication.dart'; +import 'package:didvan/views/authentication/authentication_state.dart'; +import 'package:didvan/views/home/comments/comments.dart'; +import 'package:didvan/views/home/comments/comments_state.dart'; +import 'package:didvan/views/home/direct/direct.dart'; +import 'package:didvan/views/home/direct/direct_state.dart'; +import 'package:didvan/views/home/home.dart'; +import 'package:didvan/views/home/home_state.dart'; +import 'package:didvan/views/home/news/news_details/news_details.dart'; +import 'package:didvan/views/home/news/news_details/news_details_state.dart'; +import 'package:didvan/views/home/news/news_state.dart'; +import 'package:didvan/views/home/radar/radar_details/radar_details.dart'; +import 'package:didvan/views/home/radar/radar_details/radar_details_state.dart'; +import 'package:didvan/views/home/radar/radar_state.dart'; +import 'package:didvan/views/home/settings/about_us/about_us.dart'; +import 'package:didvan/views/home/settings/bookmarks/bookmarks.dart'; +import 'package:didvan/views/home/settings/bookmarks/bookmark_state.dart'; +import 'package:didvan/views/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart'; +import 'package:didvan/views/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart'; +import 'package:didvan/views/home/settings/direct_list/direct_list.dart'; +import 'package:didvan/views/home/settings/direct_list/direct_list_state.dart'; +import 'package:didvan/views/home/settings/general_settings/settings.dart'; +import 'package:didvan/views/home/settings/general_settings/settings_state.dart'; +import 'package:didvan/views/home/settings/profile/profile.dart'; +import 'package:didvan/views/splash/splash.dart'; import 'package:didvan/routes/routes.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/utils/action_sheet.dart b/lib/utils/action_sheet.dart index 7d4a98e..0bdb571 100644 --- a/lib/utils/action_sheet.dart +++ b/lib/utils/action_sheet.dart @@ -7,8 +7,8 @@ import 'package:didvan/constants/assets.dart'; import 'package:didvan/models/enums.dart'; import 'package:didvan/models/view/action_sheet_data.dart'; import 'package:didvan/models/view/alert_data.dart'; -import 'package:didvan/widgets/didvan/button.dart'; -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/didvan/button.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; import 'package:rive/rive.dart'; diff --git a/lib/pages/authentication/authentication.dart b/lib/views/authentication/authentication.dart similarity index 81% rename from lib/pages/authentication/authentication.dart rename to lib/views/authentication/authentication.dart index cd06164..9119411 100644 --- a/lib/pages/authentication/authentication.dart +++ b/lib/views/authentication/authentication.dart @@ -1,9 +1,9 @@ import 'package:didvan/config/design_config.dart'; -import 'package:didvan/pages/authentication/authentication_state.dart'; -import 'package:didvan/pages/authentication/screens/password.dart'; -import 'package:didvan/pages/authentication/screens/username.dart'; -import 'package:didvan/pages/authentication/screens/reset_password.dart'; -import 'package:didvan/pages/authentication/screens/verification.dart'; +import 'package:didvan/views/authentication/authentication_state.dart'; +import 'package:didvan/views/authentication/screens/password.dart'; +import 'package:didvan/views/authentication/screens/reset_password.dart'; +import 'package:didvan/views/authentication/screens/username.dart'; +import 'package:didvan/views/authentication/screens/verification.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/authentication/authentication_state.dart b/lib/views/authentication/authentication_state.dart similarity index 100% rename from lib/pages/authentication/authentication_state.dart rename to lib/views/authentication/authentication_state.dart diff --git a/lib/pages/authentication/screens/password.dart b/lib/views/authentication/screens/password.dart similarity index 88% rename from lib/pages/authentication/screens/password.dart rename to lib/views/authentication/screens/password.dart index 616f139..391556b 100644 --- a/lib/pages/authentication/screens/password.dart +++ b/lib/views/authentication/screens/password.dart @@ -1,13 +1,13 @@ import 'dart:developer'; -import 'package:didvan/pages/authentication/authentication_state.dart'; -import 'package:didvan/pages/authentication/widgets/authentication_layout.dart'; import 'package:didvan/providers/server_data_provider.dart'; import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/routes/routes.dart'; -import 'package:didvan/widgets/didvan/button.dart'; -import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/didvan/text_field.dart'; +import 'package:didvan/views/authentication/authentication_state.dart'; +import 'package:didvan/views/authentication/widgets/authentication_layout.dart'; +import 'package:didvan/views/widgets/didvan/button.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/didvan/text_field.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/authentication/screens/reset_password.dart b/lib/views/authentication/screens/reset_password.dart similarity index 83% rename from lib/pages/authentication/screens/reset_password.dart rename to lib/views/authentication/screens/reset_password.dart index 328265b..212dd2d 100644 --- a/lib/pages/authentication/screens/reset_password.dart +++ b/lib/views/authentication/screens/reset_password.dart @@ -1,6 +1,6 @@ -import 'package:didvan/pages/authentication/widgets/authentication_layout.dart'; -import 'package:didvan/widgets/didvan/button.dart'; -import 'package:didvan/widgets/didvan/text_field.dart'; +import 'package:didvan/views/authentication/widgets/authentication_layout.dart'; +import 'package:didvan/views/widgets/didvan/button.dart'; +import 'package:didvan/views/widgets/didvan/text_field.dart'; import 'package:flutter/material.dart'; class ResetPassword extends StatelessWidget { diff --git a/lib/pages/authentication/screens/username.dart b/lib/views/authentication/screens/username.dart similarity index 92% rename from lib/pages/authentication/screens/username.dart rename to lib/views/authentication/screens/username.dart index 395db9d..fcec2fd 100644 --- a/lib/pages/authentication/screens/username.dart +++ b/lib/views/authentication/screens/username.dart @@ -1,7 +1,7 @@ -import 'package:didvan/pages/authentication/authentication_state.dart'; -import 'package:didvan/pages/authentication/widgets/authentication_layout.dart'; -import 'package:didvan/widgets/didvan/button.dart'; -import 'package:didvan/widgets/didvan/text_field.dart'; +import 'package:didvan/views/authentication/authentication_state.dart'; +import 'package:didvan/views/authentication/widgets/authentication_layout.dart'; +import 'package:didvan/views/widgets/didvan/button.dart'; +import 'package:didvan/views/widgets/didvan/text_field.dart'; import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/authentication/screens/verification.dart b/lib/views/authentication/screens/verification.dart similarity index 90% rename from lib/pages/authentication/screens/verification.dart rename to lib/views/authentication/screens/verification.dart index e6f5d4f..80bfeef 100644 --- a/lib/pages/authentication/screens/verification.dart +++ b/lib/views/authentication/screens/verification.dart @@ -1,9 +1,9 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; -import 'package:didvan/pages/authentication/authentication_state.dart'; -import 'package:didvan/pages/authentication/widgets/authentication_layout.dart'; -import 'package:didvan/widgets/didvan/button.dart'; -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/views/authentication/authentication_state.dart'; +import 'package:didvan/views/authentication/widgets/authentication_layout.dart'; +import 'package:didvan/views/widgets/didvan/button.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; import 'package:pin_code_fields/pin_code_fields.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/authentication/widgets/authentication_app_bar.dart b/lib/views/authentication/widgets/authentication_app_bar.dart similarity index 85% rename from lib/pages/authentication/widgets/authentication_app_bar.dart rename to lib/views/authentication/widgets/authentication_app_bar.dart index e9cb490..81e86f3 100644 --- a/lib/pages/authentication/widgets/authentication_app_bar.dart +++ b/lib/views/authentication/widgets/authentication_app_bar.dart @@ -1,8 +1,8 @@ import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/pages/authentication/authentication_state.dart'; -import 'package:didvan/widgets/didvan/icon_button.dart'; -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/views/authentication/authentication_state.dart'; +import 'package:didvan/views/widgets/didvan/icon_button.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/authentication/widgets/authentication_layout.dart b/lib/views/authentication/widgets/authentication_layout.dart similarity index 92% rename from lib/pages/authentication/widgets/authentication_layout.dart rename to lib/views/authentication/widgets/authentication_layout.dart index 4d063d4..e3fceca 100644 --- a/lib/pages/authentication/widgets/authentication_layout.dart +++ b/lib/views/authentication/widgets/authentication_layout.dart @@ -1,5 +1,5 @@ -import 'package:didvan/pages/authentication/widgets/authentication_app_bar.dart'; -import 'package:didvan/widgets/logos/didvan_horizontal_logo.dart'; +import 'package:didvan/views/authentication/widgets/authentication_app_bar.dart'; +import 'package:didvan/views/widgets/logos/didvan_horizontal_logo.dart'; import 'package:flutter/material.dart'; class AuthenticationLayout extends StatelessWidget { diff --git a/lib/pages/home/comments/comments.dart b/lib/views/home/comments/comments.dart similarity index 93% rename from lib/pages/home/comments/comments.dart rename to lib/views/home/comments/comments.dart index ce45163..0bf0c72 100644 --- a/lib/pages/home/comments/comments.dart +++ b/lib/views/home/comments/comments.dart @@ -2,14 +2,14 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/view/app_bar_data.dart'; -import 'package:didvan/pages/home/comments/comments_state.dart'; -import 'package:didvan/pages/home/comments/widgets/comment_item.dart'; -import 'package:didvan/widgets/animated_visibility.dart'; -import 'package:didvan/widgets/didvan/icon_button.dart'; -import 'package:didvan/widgets/didvan/scaffold.dart'; -import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/shimmer_placeholder.dart'; -import 'package:didvan/widgets/state_handlers/sliver_state_handler.dart'; +import 'package:didvan/views/home/comments/comments_state.dart'; +import 'package:didvan/views/home/comments/widgets/comment_item.dart'; +import 'package:didvan/views/widgets/animated_visibility.dart'; +import 'package:didvan/views/widgets/didvan/icon_button.dart'; +import 'package:didvan/views/widgets/didvan/scaffold.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/shimmer_placeholder.dart'; +import 'package:didvan/views/widgets/state_handlers/sliver_state_handler.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/home/comments/comments_state.dart b/lib/views/home/comments/comments_state.dart similarity index 100% rename from lib/pages/home/comments/comments_state.dart rename to lib/views/home/comments/comments_state.dart diff --git a/lib/pages/home/comments/widgets/comment_item.dart b/lib/views/home/comments/widgets/comment_item.dart similarity index 96% rename from lib/pages/home/comments/widgets/comment_item.dart rename to lib/views/home/comments/widgets/comment_item.dart index 1230d14..62fc0a2 100644 --- a/lib/pages/home/comments/widgets/comment_item.dart +++ b/lib/views/home/comments/widgets/comment_item.dart @@ -2,13 +2,13 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/comment/comment.dart'; -import 'package:didvan/pages/home/comments/comments_state.dart'; import 'package:didvan/utils/date_time.dart'; -import 'package:didvan/widgets/animated_visibility.dart'; -import 'package:didvan/widgets/didvan/icon_button.dart'; -import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/ink_wrapper.dart'; -import 'package:didvan/widgets/skeleton_image.dart'; +import 'package:didvan/views/home/comments/comments_state.dart'; +import 'package:didvan/views/widgets/animated_visibility.dart'; +import 'package:didvan/views/widgets/didvan/icon_button.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/ink_wrapper.dart'; +import 'package:didvan/views/widgets/skeleton_image.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/home/direct/direct.dart b/lib/views/home/direct/direct.dart similarity index 90% rename from lib/pages/home/direct/direct.dart rename to lib/views/home/direct/direct.dart index 2cf46aa..e3cf43e 100644 --- a/lib/pages/home/direct/direct.dart +++ b/lib/views/home/direct/direct.dart @@ -1,11 +1,11 @@ import 'package:didvan/models/enums.dart'; -import 'package:didvan/pages/home/direct/direct_state.dart'; -import 'package:didvan/pages/home/direct/widgets/message.dart'; -import 'package:didvan/pages/home/direct/widgets/message_box.dart'; import 'package:didvan/models/view/app_bar_data.dart'; import 'package:didvan/providers/server_data_provider.dart'; -import 'package:didvan/widgets/didvan/scaffold.dart'; -import 'package:didvan/widgets/state_handlers/sliver_state_handler.dart'; +import 'package:didvan/views/home/direct/direct_state.dart'; +import 'package:didvan/views/home/direct/widgets/message.dart'; +import 'package:didvan/views/home/direct/widgets/message_box.dart'; +import 'package:didvan/views/widgets/didvan/scaffold.dart'; +import 'package:didvan/views/widgets/state_handlers/sliver_state_handler.dart'; import 'package:flutter/material.dart'; import 'package:flutter_spinkit/flutter_spinkit.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/home/direct/direct_state.dart b/lib/views/home/direct/direct_state.dart similarity index 100% rename from lib/pages/home/direct/direct_state.dart rename to lib/views/home/direct/direct_state.dart diff --git a/lib/pages/home/direct/widgets/audio_widget.dart b/lib/views/home/direct/widgets/audio_widget.dart similarity index 86% rename from lib/pages/home/direct/widgets/audio_widget.dart rename to lib/views/home/direct/widgets/audio_widget.dart index d974ba2..5bb7ba7 100644 --- a/lib/pages/home/direct/widgets/audio_widget.dart +++ b/lib/views/home/direct/widgets/audio_widget.dart @@ -1,8 +1,8 @@ import 'dart:io'; -import 'package:didvan/pages/home/widgets/audio_slider.dart'; -import 'package:didvan/pages/home/widgets/player_controller_button.dart'; import 'package:didvan/services/media/media.dart'; +import 'package:didvan/views/home/widgets/audio_slider.dart'; +import 'package:didvan/views/home/widgets/player_controller_button.dart'; import 'package:flutter/material.dart'; class AudioWidget extends StatelessWidget { diff --git a/lib/pages/home/direct/widgets/message.dart b/lib/views/home/direct/widgets/message.dart similarity index 95% rename from lib/pages/home/direct/widgets/message.dart rename to lib/views/home/direct/widgets/message.dart index e0c811e..818b2ff 100644 --- a/lib/pages/home/direct/widgets/message.dart +++ b/lib/views/home/direct/widgets/message.dart @@ -2,12 +2,12 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/message_data/message_data.dart'; -import 'package:didvan/pages/home/direct/direct_state.dart'; -import 'package:didvan/pages/home/direct/widgets/audio_widget.dart'; import 'package:didvan/utils/date_time.dart'; -import 'package:didvan/widgets/didvan/divider.dart'; -import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/skeleton_image.dart'; +import 'package:didvan/views/home/direct/direct_state.dart'; +import 'package:didvan/views/home/direct/widgets/audio_widget.dart'; +import 'package:didvan/views/widgets/didvan/divider.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/skeleton_image.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; import 'package:persian_number_utility/persian_number_utility.dart'; diff --git a/lib/pages/home/direct/widgets/message_box.dart b/lib/views/home/direct/widgets/message_box.dart similarity index 96% rename from lib/pages/home/direct/widgets/message_box.dart rename to lib/views/home/direct/widgets/message_box.dart index 582446c..090f409 100644 --- a/lib/pages/home/direct/widgets/message_box.dart +++ b/lib/views/home/direct/widgets/message_box.dart @@ -1,10 +1,10 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/pages/home/direct/direct_state.dart'; -import 'package:didvan/pages/home/direct/widgets/audio_widget.dart'; -import 'package:didvan/widgets/didvan/icon_button.dart'; -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/views/home/direct/direct_state.dart'; +import 'package:didvan/views/home/direct/widgets/audio_widget.dart'; +import 'package:didvan/views/widgets/didvan/icon_button.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/home/hashtag/hashtag.dart b/lib/views/home/hashtag/hashtag.dart similarity index 89% rename from lib/pages/home/hashtag/hashtag.dart rename to lib/views/home/hashtag/hashtag.dart index acd93a2..91f42af 100644 --- a/lib/pages/home/hashtag/hashtag.dart +++ b/lib/views/home/hashtag/hashtag.dart @@ -1,6 +1,6 @@ import 'package:didvan/models/tag.dart'; import 'package:didvan/models/view/app_bar_data.dart'; -import 'package:didvan/widgets/didvan/scaffold.dart'; +import 'package:didvan/views/widgets/didvan/scaffold.dart'; import 'package:flutter/material.dart'; class Hashtag extends StatefulWidget { diff --git a/lib/pages/home/hashtag/hashtag_state.dart b/lib/views/home/hashtag/hashtag_state.dart similarity index 100% rename from lib/pages/home/hashtag/hashtag_state.dart rename to lib/views/home/hashtag/hashtag_state.dart diff --git a/lib/pages/home/home.dart b/lib/views/home/home.dart similarity index 78% rename from lib/pages/home/home.dart rename to lib/views/home/home.dart index 880e84a..0e1d5a8 100644 --- a/lib/pages/home/home.dart +++ b/lib/views/home/home.dart @@ -1,11 +1,11 @@ import 'package:didvan/config/design_config.dart'; -import 'package:didvan/pages/home/home_state.dart'; -import 'package:didvan/pages/home/news/news.dart'; -import 'package:didvan/pages/home/radar/radar.dart'; -import 'package:didvan/pages/home/settings/settings.dart'; -import 'package:didvan/pages/home/statistics/statistics.dart'; -import 'package:didvan/pages/home/studio/studio.dart'; -import 'package:didvan/pages/home/widgets/bnb.dart'; +import 'package:didvan/views/home/home_state.dart'; +import 'package:didvan/views/home/news/news.dart'; +import 'package:didvan/views/home/radar/radar.dart'; +import 'package:didvan/views/home/settings/settings.dart'; +import 'package:didvan/views/home/statistics/statistics.dart'; +import 'package:didvan/views/home/studio/studio.dart'; +import 'package:didvan/views/home/widgets/bnb.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/home/home_state.dart b/lib/views/home/home_state.dart similarity index 100% rename from lib/pages/home/home_state.dart rename to lib/views/home/home_state.dart diff --git a/lib/pages/home/news/news.dart b/lib/views/home/news/news.dart similarity index 90% rename from lib/pages/home/news/news.dart rename to lib/views/home/news/news.dart index 8e8ffdc..df3950e 100644 --- a/lib/pages/home/news/news.dart +++ b/lib/views/home/news/news.dart @@ -4,15 +4,15 @@ import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/enums.dart'; import 'package:didvan/models/requests/news.dart'; import 'package:didvan/models/view/action_sheet_data.dart'; -import 'package:didvan/pages/home/news/news_state.dart'; -import 'package:didvan/pages/home/widgets/news_overview.dart'; import 'package:didvan/utils/action_sheet.dart'; -import 'package:didvan/pages/home/widgets/date_picker_button.dart'; -import 'package:didvan/widgets/item_title.dart'; -import 'package:didvan/pages/home/widgets/search_field.dart'; -import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; -import 'package:didvan/widgets/state_handlers/empty_result.dart'; -import 'package:didvan/widgets/state_handlers/sliver_state_handler.dart'; +import 'package:didvan/views/home/news/news_state.dart'; +import 'package:didvan/views/home/widgets/date_picker_button.dart'; +import 'package:didvan/views/home/widgets/logo_app_bar.dart'; +import 'package:didvan/views/home/widgets/news_overview.dart'; +import 'package:didvan/views/home/widgets/search_field.dart'; +import 'package:didvan/views/widgets/item_title.dart'; +import 'package:didvan/views/widgets/state_handlers/empty_result.dart'; +import 'package:didvan/views/widgets/state_handlers/sliver_state_handler.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/home/news/news_details/news_details.dart b/lib/views/home/news/news_details/news_details.dart similarity index 91% rename from lib/pages/home/news/news_details/news_details.dart rename to lib/views/home/news/news_details/news_details.dart index 692ecc4..55d09d4 100644 --- a/lib/pages/home/news/news_details/news_details.dart +++ b/lib/views/home/news/news_details/news_details.dart @@ -1,8 +1,8 @@ import 'package:didvan/models/requests/news.dart'; -import 'package:didvan/pages/home/news/news_details/news_details_state.dart'; -import 'package:didvan/widgets/didvan/page_view.dart'; -import 'package:didvan/pages/home/widgets/floating_navigation_bar.dart'; -import 'package:didvan/widgets/state_handlers/state_handler.dart'; +import 'package:didvan/views/home/news/news_details/news_details_state.dart'; +import 'package:didvan/views/home/widgets/floating_navigation_bar.dart'; +import 'package:didvan/views/widgets/didvan/page_view.dart'; +import 'package:didvan/views/widgets/state_handlers/state_handler.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/home/news/news_details/news_details_state.dart b/lib/views/home/news/news_details/news_details_state.dart similarity index 100% rename from lib/pages/home/news/news_details/news_details_state.dart rename to lib/views/home/news/news_details/news_details_state.dart diff --git a/lib/pages/home/news/news_state.dart b/lib/views/home/news/news_state.dart similarity index 100% rename from lib/pages/home/news/news_state.dart rename to lib/views/home/news/news_state.dart diff --git a/lib/pages/home/radar/radar.dart b/lib/views/home/radar/radar.dart similarity index 92% rename from lib/pages/home/radar/radar.dart rename to lib/views/home/radar/radar.dart index c70cf5e..0c97ddb 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/views/home/radar/radar.dart @@ -9,20 +9,20 @@ import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/enums.dart'; import 'package:didvan/models/requests/radar.dart'; import 'package:didvan/models/view/action_sheet_data.dart'; -import 'package:didvan/pages/home/radar/radar_state.dart'; -import 'package:didvan/pages/home/radar/widgets/categories_gird.dart'; -import 'package:didvan/pages/home/radar/widgets/categories_list.dart'; -import 'package:didvan/pages/home/widgets/radar_overview.dart'; -import 'package:didvan/widgets/animated_visibility.dart'; -import 'package:didvan/pages/home/widgets/search_field.dart'; -import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; +import 'package:didvan/views/home/radar/radar_state.dart'; +import 'package:didvan/views/home/radar/widgets/categories_gird.dart'; +import 'package:didvan/views/home/radar/widgets/categories_list.dart'; +import 'package:didvan/views/home/widgets/date_picker_button.dart'; +import 'package:didvan/views/home/widgets/logo_app_bar.dart'; import 'package:didvan/utils/action_sheet.dart'; -import 'package:didvan/pages/home/widgets/date_picker_button.dart'; -import 'package:didvan/widgets/didvan/checkbox.dart'; -import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/item_title.dart'; -import 'package:didvan/widgets/state_handlers/empty_result.dart'; -import 'package:didvan/widgets/state_handlers/sliver_state_handler.dart'; +import 'package:didvan/views/home/widgets/radar_overview.dart'; +import 'package:didvan/views/home/widgets/search_field.dart'; +import 'package:didvan/views/widgets/animated_visibility.dart'; +import 'package:didvan/views/widgets/didvan/checkbox.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/item_title.dart'; +import 'package:didvan/views/widgets/state_handlers/empty_result.dart'; +import 'package:didvan/views/widgets/state_handlers/sliver_state_handler.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/home/radar/radar_details/radar_details.dart b/lib/views/home/radar/radar_details/radar_details.dart similarity index 92% rename from lib/pages/home/radar/radar_details/radar_details.dart rename to lib/views/home/radar/radar_details/radar_details.dart index c4ac5f0..1c9eb11 100644 --- a/lib/pages/home/radar/radar_details/radar_details.dart +++ b/lib/views/home/radar/radar_details/radar_details.dart @@ -1,8 +1,8 @@ import 'package:didvan/models/requests/radar.dart'; -import 'package:didvan/pages/home/radar/radar_details/radar_details_state.dart'; -import 'package:didvan/widgets/didvan/page_view.dart'; -import 'package:didvan/pages/home/widgets/floating_navigation_bar.dart'; -import 'package:didvan/widgets/state_handlers/state_handler.dart'; +import 'package:didvan/views/home/radar/radar_details/radar_details_state.dart'; +import 'package:didvan/views/home/widgets/floating_navigation_bar.dart'; +import 'package:didvan/views/widgets/didvan/page_view.dart'; +import 'package:didvan/views/widgets/state_handlers/state_handler.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/home/radar/radar_details/radar_details_state.dart b/lib/views/home/radar/radar_details/radar_details_state.dart similarity index 100% rename from lib/pages/home/radar/radar_details/radar_details_state.dart rename to lib/views/home/radar/radar_details/radar_details_state.dart diff --git a/lib/pages/home/radar/radar_state.dart b/lib/views/home/radar/radar_state.dart similarity index 100% rename from lib/pages/home/radar/radar_state.dart rename to lib/views/home/radar/radar_state.dart diff --git a/lib/pages/home/radar/widgets/categories_gird.dart b/lib/views/home/radar/widgets/categories_gird.dart similarity index 94% rename from lib/pages/home/radar/widgets/categories_gird.dart rename to lib/views/home/radar/widgets/categories_gird.dart index 9818b02..abcc0e2 100644 --- a/lib/pages/home/radar/widgets/categories_gird.dart +++ b/lib/views/home/radar/widgets/categories_gird.dart @@ -1,6 +1,6 @@ import 'package:didvan/config/design_config.dart'; -import 'package:didvan/pages/home/radar/radar_state.dart'; -import 'package:didvan/pages/home/radar/widgets/category_item.dart'; +import 'package:didvan/views/home/radar/radar_state.dart'; +import 'package:didvan/views/home/radar/widgets/category_item.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/home/radar/widgets/categories_list.dart b/lib/views/home/radar/widgets/categories_list.dart similarity index 96% rename from lib/pages/home/radar/widgets/categories_list.dart rename to lib/views/home/radar/widgets/categories_list.dart index 1ea20d5..bca0187 100644 --- a/lib/pages/home/radar/widgets/categories_list.dart +++ b/lib/views/home/radar/widgets/categories_list.dart @@ -1,9 +1,9 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/models/view/radar_category.dart'; -import 'package:didvan/pages/home/radar/radar_state.dart'; -import 'package:didvan/widgets/animated_visibility.dart'; -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/views/home/radar/radar_state.dart'; +import 'package:didvan/views/widgets/animated_visibility.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/home/radar/widgets/category_item.dart b/lib/views/home/radar/widgets/category_item.dart similarity index 93% rename from lib/pages/home/radar/widgets/category_item.dart rename to lib/views/home/radar/widgets/category_item.dart index dc608f4..f8176a5 100644 --- a/lib/pages/home/radar/widgets/category_item.dart +++ b/lib/views/home/radar/widgets/category_item.dart @@ -1,9 +1,9 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/models/view/radar_category.dart'; -import 'package:didvan/pages/home/radar/radar_state.dart'; -import 'package:didvan/widgets/animated_visibility.dart'; -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/views/home/radar/radar_state.dart'; +import 'package:didvan/views/widgets/animated_visibility.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/home/settings/about_us/about_us.dart b/lib/views/home/settings/about_us/about_us.dart similarity index 95% rename from lib/pages/home/settings/about_us/about_us.dart rename to lib/views/home/settings/about_us/about_us.dart index 037057d..6cc17f9 100644 --- a/lib/pages/home/settings/about_us/about_us.dart +++ b/lib/views/home/settings/about_us/about_us.dart @@ -1,6 +1,6 @@ import 'package:didvan/models/view/app_bar_data.dart'; -import 'package:didvan/widgets/didvan/scaffold.dart'; -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/didvan/scaffold.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; class AboutUs extends StatelessWidget { diff --git a/lib/pages/home/settings/bookmarks/bookmark_state.dart b/lib/views/home/settings/bookmarks/bookmark_state.dart similarity index 100% rename from lib/pages/home/settings/bookmarks/bookmark_state.dart rename to lib/views/home/settings/bookmarks/bookmark_state.dart diff --git a/lib/pages/home/settings/bookmarks/bookmarks.dart b/lib/views/home/settings/bookmarks/bookmarks.dart similarity index 84% rename from lib/pages/home/settings/bookmarks/bookmarks.dart rename to lib/views/home/settings/bookmarks/bookmarks.dart index 05a7e10..1cb736a 100644 --- a/lib/pages/home/settings/bookmarks/bookmarks.dart +++ b/lib/views/home/settings/bookmarks/bookmarks.dart @@ -3,19 +3,19 @@ import 'dart:async'; import 'package:didvan/config/design_config.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/view/app_bar_data.dart'; -import 'package:didvan/pages/home/settings/bookmarks/bookmark_state.dart'; -import 'package:didvan/pages/home/widgets/menu_item.dart'; import 'package:didvan/routes/routes.dart'; -import 'package:didvan/widgets/animated_visibility.dart'; -import 'package:didvan/widgets/didvan/card.dart'; -import 'package:didvan/widgets/didvan/divider.dart'; -import 'package:didvan/widgets/didvan/scaffold.dart'; -import 'package:didvan/pages/home/widgets/multitype_overview.dart'; -import 'package:didvan/pages/home/widgets/search_field.dart'; -import 'package:didvan/widgets/item_title.dart'; -import 'package:didvan/widgets/state_handlers/empty_list.dart'; -import 'package:didvan/widgets/state_handlers/empty_result.dart'; -import 'package:didvan/widgets/state_handlers/sliver_state_handler.dart'; +import 'package:didvan/views/home/settings/bookmarks/bookmark_state.dart'; +import 'package:didvan/views/home/widgets/menu_item.dart'; +import 'package:didvan/views/home/widgets/multitype_overview.dart'; +import 'package:didvan/views/home/widgets/search_field.dart'; +import 'package:didvan/views/widgets/animated_visibility.dart'; +import 'package:didvan/views/widgets/didvan/card.dart'; +import 'package:didvan/views/widgets/didvan/divider.dart'; +import 'package:didvan/views/widgets/didvan/scaffold.dart'; +import 'package:didvan/views/widgets/item_title.dart'; +import 'package:didvan/views/widgets/state_handlers/empty_list.dart'; +import 'package:didvan/views/widgets/state_handlers/empty_result.dart'; +import 'package:didvan/views/widgets/state_handlers/sliver_state_handler.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart b/lib/views/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart similarity index 85% rename from lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart rename to lib/views/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart index 1c9d760..f9a5454 100644 --- a/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart +++ b/lib/views/home/settings/bookmarks/filtered_bookmark/filtered_bookmark.dart @@ -1,10 +1,10 @@ import 'package:didvan/models/view/app_bar_data.dart'; -import 'package:didvan/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart'; -import 'package:didvan/pages/home/widgets/news_overview.dart'; -import 'package:didvan/pages/home/widgets/radar_overview.dart'; -import 'package:didvan/widgets/didvan/scaffold.dart'; -import 'package:didvan/widgets/state_handlers/empty_list.dart'; -import 'package:didvan/widgets/state_handlers/sliver_state_handler.dart'; +import 'package:didvan/views/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart'; +import 'package:didvan/views/home/widgets/news_overview.dart'; +import 'package:didvan/views/home/widgets/radar_overview.dart'; +import 'package:didvan/views/widgets/didvan/scaffold.dart'; +import 'package:didvan/views/widgets/state_handlers/empty_list.dart'; +import 'package:didvan/views/widgets/state_handlers/sliver_state_handler.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart b/lib/views/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart similarity index 100% rename from lib/pages/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart rename to lib/views/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart diff --git a/lib/pages/home/settings/direct_list/direct_list.dart b/lib/views/home/settings/direct_list/direct_list.dart similarity index 84% rename from lib/pages/home/settings/direct_list/direct_list.dart rename to lib/views/home/settings/direct_list/direct_list.dart index 03cc32e..7c8d264 100644 --- a/lib/pages/home/settings/direct_list/direct_list.dart +++ b/lib/views/home/settings/direct_list/direct_list.dart @@ -1,13 +1,13 @@ import 'package:didvan/constants/assets.dart'; import 'package:didvan/models/view/app_bar_data.dart'; -import 'package:didvan/pages/home/settings/direct_list/direct_list_state.dart'; -import 'package:didvan/pages/home/settings/direct_list/widgets/direct_item.dart'; -import 'package:didvan/widgets/didvan/badge.dart'; -import 'package:didvan/widgets/didvan/divider.dart'; -import 'package:didvan/widgets/didvan/scaffold.dart'; -import 'package:didvan/widgets/shimmer_placeholder.dart'; -import 'package:didvan/widgets/state_handlers/empty_state.dart'; -import 'package:didvan/widgets/state_handlers/sliver_state_handler.dart'; +import 'package:didvan/views/home/settings/direct_list/direct_list_state.dart'; +import 'package:didvan/views/home/settings/direct_list/widgets/direct_item.dart'; +import 'package:didvan/views/widgets/didvan/badge.dart'; +import 'package:didvan/views/widgets/didvan/divider.dart'; +import 'package:didvan/views/widgets/didvan/scaffold.dart'; +import 'package:didvan/views/widgets/shimmer_placeholder.dart'; +import 'package:didvan/views/widgets/state_handlers/empty_state.dart'; +import 'package:didvan/views/widgets/state_handlers/sliver_state_handler.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/home/settings/direct_list/direct_list_state.dart b/lib/views/home/settings/direct_list/direct_list_state.dart similarity index 100% rename from lib/pages/home/settings/direct_list/direct_list_state.dart rename to lib/views/home/settings/direct_list/direct_list_state.dart diff --git a/lib/pages/home/settings/direct_list/widgets/direct_item.dart b/lib/views/home/settings/direct_list/widgets/direct_item.dart similarity index 94% rename from lib/pages/home/settings/direct_list/widgets/direct_item.dart rename to lib/views/home/settings/direct_list/widgets/direct_item.dart index 088106e..6aa9a45 100644 --- a/lib/pages/home/settings/direct_list/widgets/direct_item.dart +++ b/lib/views/home/settings/direct_list/widgets/direct_item.dart @@ -3,9 +3,9 @@ import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/chat_room/chat_room.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/utils/date_time.dart'; -import 'package:didvan/widgets/didvan/badge.dart'; -import 'package:didvan/widgets/didvan/divider.dart'; -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/didvan/badge.dart'; +import 'package:didvan/views/widgets/didvan/divider.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; class ChatRoomItem extends StatelessWidget { diff --git a/lib/pages/home/settings/general_settings/settings.dart b/lib/views/home/settings/general_settings/settings.dart similarity index 92% rename from lib/pages/home/settings/general_settings/settings.dart rename to lib/views/home/settings/general_settings/settings.dart index a02499b..c3cc3eb 100644 --- a/lib/pages/home/settings/general_settings/settings.dart +++ b/lib/views/home/settings/general_settings/settings.dart @@ -6,16 +6,16 @@ import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/constants/assets.dart'; import 'package:didvan/models/view/action_sheet_data.dart'; import 'package:didvan/models/view/app_bar_data.dart'; -import 'package:didvan/pages/home/settings/general_settings/settings_state.dart'; -import 'package:didvan/pages/home/widgets/menu_item.dart'; import 'package:didvan/providers/theme_provider.dart'; import 'package:didvan/utils/action_sheet.dart'; -import 'package:didvan/widgets/didvan/card.dart'; -import 'package:didvan/widgets/didvan/divider.dart'; -import 'package:didvan/widgets/didvan/scaffold.dart'; -import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/item_title.dart'; -import 'package:didvan/widgets/state_handlers/state_handler.dart'; +import 'package:didvan/views/home/settings/general_settings/settings_state.dart'; +import 'package:didvan/views/home/widgets/menu_item.dart'; +import 'package:didvan/views/widgets/didvan/card.dart'; +import 'package:didvan/views/widgets/didvan/divider.dart'; +import 'package:didvan/views/widgets/didvan/scaffold.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/item_title.dart'; +import 'package:didvan/views/widgets/state_handlers/state_handler.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/home/settings/general_settings/settings_state.dart b/lib/views/home/settings/general_settings/settings_state.dart similarity index 100% rename from lib/pages/home/settings/general_settings/settings_state.dart rename to lib/views/home/settings/general_settings/settings_state.dart diff --git a/lib/pages/home/settings/profile/profile.dart b/lib/views/home/settings/profile/profile.dart similarity index 91% rename from lib/pages/home/settings/profile/profile.dart rename to lib/views/home/settings/profile/profile.dart index 0dfb2f3..071d6ac 100644 --- a/lib/pages/home/settings/profile/profile.dart +++ b/lib/views/home/settings/profile/profile.dart @@ -2,17 +2,17 @@ import 'dart:async'; import 'package:didvan/config/design_config.dart'; import 'package:didvan/models/view/app_bar_data.dart'; -import 'package:didvan/pages/home/settings/profile/widgets/profile_photo.dart'; -import 'package:didvan/pages/home/widgets/menu_item.dart'; import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/routes/routes.dart'; -import 'package:didvan/widgets/animated_visibility.dart'; -import 'package:didvan/widgets/didvan/button.dart'; -import 'package:didvan/widgets/didvan/card.dart'; -import 'package:didvan/widgets/didvan/divider.dart'; -import 'package:didvan/widgets/didvan/scaffold.dart'; -import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/didvan/text_field.dart'; +import 'package:didvan/views/home/settings/profile/widgets/profile_photo.dart'; +import 'package:didvan/views/home/widgets/menu_item.dart'; +import 'package:didvan/views/widgets/animated_visibility.dart'; +import 'package:didvan/views/widgets/didvan/button.dart'; +import 'package:didvan/views/widgets/didvan/card.dart'; +import 'package:didvan/views/widgets/didvan/divider.dart'; +import 'package:didvan/views/widgets/didvan/scaffold.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/didvan/text_field.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/lib/pages/home/settings/profile/widgets/profile_photo.dart b/lib/views/home/settings/profile/widgets/profile_photo.dart similarity index 96% rename from lib/pages/home/settings/profile/widgets/profile_photo.dart rename to lib/views/home/settings/profile/widgets/profile_photo.dart index 1791b94..62f1018 100644 --- a/lib/pages/home/settings/profile/widgets/profile_photo.dart +++ b/lib/views/home/settings/profile/widgets/profile_photo.dart @@ -5,13 +5,13 @@ import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/enums.dart'; import 'package:didvan/models/view/action_sheet_data.dart'; import 'package:didvan/models/view/alert_data.dart'; -import 'package:didvan/pages/home/widgets/menu_item.dart'; import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/services/media/media.dart'; import 'package:didvan/utils/action_sheet.dart'; -import 'package:didvan/widgets/didvan/divider.dart'; -import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/skeleton_image.dart'; +import 'package:didvan/views/home/widgets/menu_item.dart'; +import 'package:didvan/views/widgets/didvan/divider.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/skeleton_image.dart'; import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:image_picker/image_picker.dart'; diff --git a/lib/pages/home/settings/settings.dart b/lib/views/home/settings/settings.dart similarity index 92% rename from lib/pages/home/settings/settings.dart rename to lib/views/home/settings/settings.dart index 5a4a048..7753d26 100644 --- a/lib/pages/home/settings/settings.dart +++ b/lib/views/home/settings/settings.dart @@ -1,14 +1,14 @@ import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/pages/home/widgets/menu_item.dart'; -import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; import 'package:didvan/providers/theme_provider.dart'; import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/services/storage/storage.dart'; -import 'package:didvan/widgets/didvan/card.dart'; -import 'package:didvan/widgets/didvan/divider.dart'; -import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/item_title.dart'; +import 'package:didvan/views/home/widgets/logo_app_bar.dart'; +import 'package:didvan/views/home/widgets/menu_item.dart'; +import 'package:didvan/views/widgets/didvan/card.dart'; +import 'package:didvan/views/widgets/didvan/divider.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/item_title.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; import 'package:url_launcher/url_launcher.dart'; diff --git a/lib/pages/home/statistics/statistics.dart b/lib/views/home/statistics/statistics.dart similarity index 83% rename from lib/pages/home/statistics/statistics.dart rename to lib/views/home/statistics/statistics.dart index e727b5a..eef8150 100644 --- a/lib/pages/home/statistics/statistics.dart +++ b/lib/views/home/statistics/statistics.dart @@ -1,7 +1,7 @@ import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/assets.dart'; -import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; -import 'package:didvan/widgets/state_handlers/empty_state.dart'; +import 'package:didvan/views/home/widgets/logo_app_bar.dart'; +import 'package:didvan/views/widgets/state_handlers/empty_state.dart'; import 'package:flutter/material.dart'; class Statictics extends StatelessWidget { diff --git a/lib/pages/home/studio/studio.dart b/lib/views/home/studio/studio.dart similarity index 81% rename from lib/pages/home/studio/studio.dart rename to lib/views/home/studio/studio.dart index 2655767..a6f675a 100644 --- a/lib/pages/home/studio/studio.dart +++ b/lib/views/home/studio/studio.dart @@ -1,9 +1,9 @@ import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/pages/home/studio/widgets/slider.dart'; -import 'package:didvan/pages/home/studio/widgets/tab_bar.dart'; -import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; -import 'package:didvan/pages/home/widgets/search_field.dart'; -import 'package:didvan/widgets/didvan/icon_button.dart'; +import 'package:didvan/views/home/studio/widgets/slider.dart'; +import 'package:didvan/views/home/studio/widgets/tab_bar.dart'; +import 'package:didvan/views/home/widgets/logo_app_bar.dart'; +import 'package:didvan/views/home/widgets/search_field.dart'; +import 'package:didvan/views/widgets/didvan/icon_button.dart'; import 'package:flutter/material.dart'; class Studio extends StatefulWidget { diff --git a/lib/pages/home/studio/studio_state.dart b/lib/views/home/studio/studio_state.dart similarity index 100% rename from lib/pages/home/studio/studio_state.dart rename to lib/views/home/studio/studio_state.dart diff --git a/lib/pages/home/studio/widgets/slider.dart b/lib/views/home/studio/widgets/slider.dart similarity index 100% rename from lib/pages/home/studio/widgets/slider.dart rename to lib/views/home/studio/widgets/slider.dart diff --git a/lib/pages/home/studio/widgets/tab_bar.dart b/lib/views/home/studio/widgets/tab_bar.dart similarity index 97% rename from lib/pages/home/studio/widgets/tab_bar.dart rename to lib/views/home/studio/widgets/tab_bar.dart index 61483bc..c5caacb 100644 --- a/lib/pages/home/studio/widgets/tab_bar.dart +++ b/lib/views/home/studio/widgets/tab_bar.dart @@ -1,7 +1,7 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; class StudioTabBar extends StatelessWidget { diff --git a/lib/pages/home/widgets/audio_slider.dart b/lib/views/home/widgets/audio_slider.dart similarity index 100% rename from lib/pages/home/widgets/audio_slider.dart rename to lib/views/home/widgets/audio_slider.dart diff --git a/lib/pages/home/widgets/audio_visualizer.dart b/lib/views/home/widgets/audio_visualizer.dart similarity index 100% rename from lib/pages/home/widgets/audio_visualizer.dart rename to lib/views/home/widgets/audio_visualizer.dart diff --git a/lib/pages/home/widgets/bnb.dart b/lib/views/home/widgets/bnb.dart similarity index 98% rename from lib/pages/home/widgets/bnb.dart rename to lib/views/home/widgets/bnb.dart index 01e2927..42d8ad9 100644 --- a/lib/pages/home/widgets/bnb.dart +++ b/lib/views/home/widgets/bnb.dart @@ -1,7 +1,7 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; class DidvanBNB extends StatelessWidget { diff --git a/lib/pages/home/widgets/bookmark_button.dart b/lib/views/home/widgets/bookmark_button.dart similarity index 94% rename from lib/pages/home/widgets/bookmark_button.dart rename to lib/views/home/widgets/bookmark_button.dart index eb4aa46..4de2621 100644 --- a/lib/pages/home/widgets/bookmark_button.dart +++ b/lib/views/home/widgets/bookmark_button.dart @@ -1,8 +1,8 @@ import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/view/action_sheet_data.dart'; import 'package:didvan/utils/action_sheet.dart'; -import 'package:didvan/widgets/didvan/icon_button.dart'; -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/didvan/icon_button.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; class BookmarkButton extends StatefulWidget { diff --git a/lib/pages/home/widgets/date_picker_button.dart b/lib/views/home/widgets/date_picker_button.dart similarity index 97% rename from lib/pages/home/widgets/date_picker_button.dart rename to lib/views/home/widgets/date_picker_button.dart index a2ac7f7..ac5164c 100644 --- a/lib/pages/home/widgets/date_picker_button.dart +++ b/lib/views/home/widgets/date_picker_button.dart @@ -1,7 +1,7 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/utils/date_time.dart'; -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; import 'package:persian_number_utility/persian_number_utility.dart'; diff --git a/lib/pages/home/widgets/floating_navigation_bar.dart b/lib/views/home/widgets/floating_navigation_bar.dart similarity index 95% rename from lib/pages/home/widgets/floating_navigation_bar.dart rename to lib/views/home/widgets/floating_navigation_bar.dart index 6ed2f01..3cc0323 100644 --- a/lib/pages/home/widgets/floating_navigation_bar.dart +++ b/lib/views/home/widgets/floating_navigation_bar.dart @@ -3,15 +3,15 @@ import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/message_data/radar_attachment.dart'; import 'package:didvan/models/view/action_sheet_data.dart'; -import 'package:didvan/pages/home/widgets/menu_item.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/utils/action_sheet.dart'; -import 'package:didvan/pages/home/widgets/bookmark_button.dart'; -import 'package:didvan/widgets/didvan/chip.dart'; -import 'package:didvan/widgets/didvan/divider.dart'; -import 'package:didvan/widgets/didvan/icon_button.dart'; -import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/item_title.dart'; +import 'package:didvan/views/home/widgets/bookmark_button.dart'; +import 'package:didvan/views/home/widgets/menu_item.dart'; +import 'package:didvan/views/widgets/didvan/chip.dart'; +import 'package:didvan/views/widgets/didvan/divider.dart'; +import 'package:didvan/views/widgets/didvan/icon_button.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/item_title.dart'; import 'package:flutter/material.dart'; class FloatingNavigationBar extends StatefulWidget { diff --git a/lib/pages/home/widgets/logo_app_bar.dart b/lib/views/home/widgets/logo_app_bar.dart similarity index 91% rename from lib/pages/home/widgets/logo_app_bar.dart rename to lib/views/home/widgets/logo_app_bar.dart index 6aef13d..50f0bfc 100644 --- a/lib/pages/home/widgets/logo_app_bar.dart +++ b/lib/views/home/widgets/logo_app_bar.dart @@ -1,4 +1,4 @@ -import 'package:didvan/widgets/logos/didvan_vertical_logo.dart'; +import 'package:didvan/views/widgets/logos/didvan_vertical_logo.dart'; import 'package:flutter/material.dart'; class LogoAppBar extends StatelessWidget { diff --git a/lib/pages/home/widgets/menu_item.dart b/lib/views/home/widgets/menu_item.dart similarity index 97% rename from lib/pages/home/widgets/menu_item.dart rename to lib/views/home/widgets/menu_item.dart index bd65501..d0612c7 100644 --- a/lib/pages/home/widgets/menu_item.dart +++ b/lib/views/home/widgets/menu_item.dart @@ -1,6 +1,6 @@ import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; class MenuItem extends StatelessWidget { diff --git a/lib/pages/home/widgets/multitype_overview.dart b/lib/views/home/widgets/multitype_overview.dart similarity index 94% rename from lib/pages/home/widgets/multitype_overview.dart rename to lib/views/home/widgets/multitype_overview.dart index f45ea16..0076a05 100644 --- a/lib/pages/home/widgets/multitype_overview.dart +++ b/lib/views/home/widgets/multitype_overview.dart @@ -4,10 +4,10 @@ import 'package:didvan/models/overview_data.dart'; import 'package:didvan/models/requests/news.dart'; import 'package:didvan/models/requests/radar.dart'; import 'package:didvan/routes/routes.dart'; -import 'package:didvan/widgets/didvan/card.dart'; -import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/shimmer_placeholder.dart'; -import 'package:didvan/widgets/skeleton_image.dart'; +import 'package:didvan/views/widgets/didvan/card.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/shimmer_placeholder.dart'; +import 'package:didvan/views/widgets/skeleton_image.dart'; import 'package:flutter/material.dart'; import 'package:persian_number_utility/persian_number_utility.dart'; diff --git a/lib/pages/home/widgets/news_overview.dart b/lib/views/home/widgets/news_overview.dart similarity index 91% rename from lib/pages/home/widgets/news_overview.dart rename to lib/views/home/widgets/news_overview.dart index 03a19aa..e998acf 100644 --- a/lib/pages/home/widgets/news_overview.dart +++ b/lib/views/home/widgets/news_overview.dart @@ -2,12 +2,12 @@ import 'package:didvan/models/overview_data.dart'; import 'package:didvan/models/requests/news.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/utils/date_time.dart'; -import 'package:didvan/pages/home/widgets/bookmark_button.dart'; -import 'package:didvan/widgets/didvan/card.dart'; -import 'package:didvan/widgets/didvan/divider.dart'; -import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/shimmer_placeholder.dart'; -import 'package:didvan/widgets/skeleton_image.dart'; +import 'package:didvan/views/home/widgets/bookmark_button.dart'; +import 'package:didvan/views/widgets/didvan/card.dart'; +import 'package:didvan/views/widgets/didvan/divider.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/shimmer_placeholder.dart'; +import 'package:didvan/views/widgets/skeleton_image.dart'; import 'package:flutter/material.dart'; class NewsOverview extends StatelessWidget { diff --git a/lib/pages/home/widgets/player_controller_button.dart b/lib/views/home/widgets/player_controller_button.dart similarity index 94% rename from lib/pages/home/widgets/player_controller_button.dart rename to lib/views/home/widgets/player_controller_button.dart index 029387d..7e2cc14 100644 --- a/lib/pages/home/widgets/player_controller_button.dart +++ b/lib/views/home/widgets/player_controller_button.dart @@ -3,7 +3,7 @@ import 'dart:io'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/services/media/media.dart'; -import 'package:didvan/widgets/didvan/icon_button.dart'; +import 'package:didvan/views/widgets/didvan/icon_button.dart'; import 'package:flutter/material.dart'; class AudioControllerButton extends StatelessWidget { diff --git a/lib/pages/home/widgets/radar_overview.dart b/lib/views/home/widgets/radar_overview.dart similarity index 93% rename from lib/pages/home/widgets/radar_overview.dart rename to lib/views/home/widgets/radar_overview.dart index 64d462d..5616994 100644 --- a/lib/pages/home/widgets/radar_overview.dart +++ b/lib/views/home/widgets/radar_overview.dart @@ -4,13 +4,13 @@ import 'package:didvan/models/overview_data.dart'; import 'package:didvan/models/requests/radar.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/utils/date_time.dart'; -import 'package:didvan/pages/home/widgets/bookmark_button.dart'; -import 'package:didvan/widgets/didvan/card.dart'; -import 'package:didvan/widgets/didvan/divider.dart'; -import 'package:didvan/widgets/didvan/icon_button.dart'; -import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/shimmer_placeholder.dart'; -import 'package:didvan/widgets/skeleton_image.dart'; +import 'package:didvan/views/home/widgets/bookmark_button.dart'; +import 'package:didvan/views/widgets/didvan/card.dart'; +import 'package:didvan/views/widgets/didvan/divider.dart'; +import 'package:didvan/views/widgets/didvan/icon_button.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/shimmer_placeholder.dart'; +import 'package:didvan/views/widgets/skeleton_image.dart'; import 'package:flutter/material.dart'; class RadarOverview extends StatelessWidget { diff --git a/lib/pages/home/widgets/search_field.dart b/lib/views/home/widgets/search_field.dart similarity index 98% rename from lib/pages/home/widgets/search_field.dart rename to lib/views/home/widgets/search_field.dart index 1dd684c..dea0aa1 100644 --- a/lib/pages/home/widgets/search_field.dart +++ b/lib/views/home/widgets/search_field.dart @@ -1,6 +1,6 @@ import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/widgets/didvan/icon_button.dart'; +import 'package:didvan/views/widgets/didvan/icon_button.dart'; import 'package:flutter/material.dart'; class SearchField extends StatefulWidget { diff --git a/lib/pages/home/widgets/tag_item.dart b/lib/views/home/widgets/tag_item.dart similarity index 95% rename from lib/pages/home/widgets/tag_item.dart rename to lib/views/home/widgets/tag_item.dart index 24d9fa3..a447dc8 100644 --- a/lib/pages/home/widgets/tag_item.dart +++ b/lib/views/home/widgets/tag_item.dart @@ -1,7 +1,7 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; class TagItem extends StatelessWidget { diff --git a/lib/pages/splash/splash.dart b/lib/views/splash/splash.dart similarity index 96% rename from lib/pages/splash/splash.dart rename to lib/views/splash/splash.dart index 7aaddf7..a66e8d1 100644 --- a/lib/pages/splash/splash.dart +++ b/lib/views/splash/splash.dart @@ -10,8 +10,8 @@ import 'package:didvan/services/app_initalizer.dart'; import 'package:didvan/services/network/request.dart'; import 'package:didvan/services/storage/storage.dart'; import 'package:didvan/utils/action_sheet.dart'; -import 'package:didvan/widgets/didvan/button.dart'; -import 'package:didvan/widgets/logos/didvan_horizontal_logo.dart'; +import 'package:didvan/views/widgets/didvan/button.dart'; +import 'package:didvan/views/widgets/logos/didvan_horizontal_logo.dart'; import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; diff --git a/lib/widgets/animated_visibility.dart b/lib/views/widgets/animated_visibility.dart similarity index 100% rename from lib/widgets/animated_visibility.dart rename to lib/views/widgets/animated_visibility.dart diff --git a/lib/widgets/didvan/app_bar.dart b/lib/views/widgets/didvan/app_bar.dart similarity index 97% rename from lib/widgets/didvan/app_bar.dart rename to lib/views/widgets/didvan/app_bar.dart index 062e6cb..1de49fe 100644 --- a/lib/widgets/didvan/app_bar.dart +++ b/lib/views/widgets/didvan/app_bar.dart @@ -1,7 +1,7 @@ import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/view/app_bar_data.dart'; -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; class DidvanAppBar extends StatelessWidget { diff --git a/lib/widgets/didvan/badge.dart b/lib/views/widgets/didvan/badge.dart similarity index 93% rename from lib/widgets/didvan/badge.dart rename to lib/views/widgets/didvan/badge.dart index 5223d0a..c88c0fd 100644 --- a/lib/widgets/didvan/badge.dart +++ b/lib/views/widgets/didvan/badge.dart @@ -1,5 +1,5 @@ import 'package:didvan/config/theme_data.dart'; -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; class DidvanBadge extends StatelessWidget { diff --git a/lib/widgets/didvan/button.dart b/lib/views/widgets/didvan/button.dart similarity index 97% rename from lib/widgets/didvan/button.dart rename to lib/views/widgets/didvan/button.dart index bb8e6ea..de7498b 100644 --- a/lib/widgets/didvan/button.dart +++ b/lib/views/widgets/didvan/button.dart @@ -1,7 +1,7 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/models/enums.dart'; -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; class DidvanButton extends StatelessWidget { diff --git a/lib/widgets/didvan/card.dart b/lib/views/widgets/didvan/card.dart similarity index 100% rename from lib/widgets/didvan/card.dart rename to lib/views/widgets/didvan/card.dart diff --git a/lib/widgets/didvan/checkbox.dart b/lib/views/widgets/didvan/checkbox.dart similarity index 95% rename from lib/widgets/didvan/checkbox.dart rename to lib/views/widgets/didvan/checkbox.dart index 588234c..dfeb454 100644 --- a/lib/widgets/didvan/checkbox.dart +++ b/lib/views/widgets/didvan/checkbox.dart @@ -1,4 +1,4 @@ -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; class DidvanCheckbox extends StatefulWidget { diff --git a/lib/widgets/didvan/chip.dart b/lib/views/widgets/didvan/chip.dart similarity index 89% rename from lib/widgets/didvan/chip.dart rename to lib/views/widgets/didvan/chip.dart index 358bcef..a1a7e73 100644 --- a/lib/widgets/didvan/chip.dart +++ b/lib/views/widgets/didvan/chip.dart @@ -1,7 +1,7 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; -import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/ink_wrapper.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/ink_wrapper.dart'; import 'package:flutter/material.dart'; class DidvanChip extends StatelessWidget { diff --git a/lib/widgets/didvan/divider.dart b/lib/views/widgets/didvan/divider.dart similarity index 100% rename from lib/widgets/didvan/divider.dart rename to lib/views/widgets/didvan/divider.dart diff --git a/lib/widgets/didvan/icon_button.dart b/lib/views/widgets/didvan/icon_button.dart similarity index 94% rename from lib/widgets/didvan/icon_button.dart rename to lib/views/widgets/didvan/icon_button.dart index ef501d7..3046757 100644 --- a/lib/widgets/didvan/icon_button.dart +++ b/lib/views/widgets/didvan/icon_button.dart @@ -1,4 +1,4 @@ -import 'package:didvan/widgets/ink_wrapper.dart'; +import 'package:didvan/views/widgets/ink_wrapper.dart'; import 'package:flutter/material.dart'; class DidvanIconButton extends StatelessWidget { diff --git a/lib/widgets/didvan/page_view.dart b/lib/views/widgets/didvan/page_view.dart similarity index 95% rename from lib/widgets/didvan/page_view.dart rename to lib/views/widgets/didvan/page_view.dart index 588a421..2247d50 100644 --- a/lib/widgets/didvan/page_view.dart +++ b/lib/views/widgets/didvan/page_view.dart @@ -2,17 +2,17 @@ import 'package:carousel_slider/carousel_slider.dart'; import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/pages/home/widgets/multitype_overview.dart'; import 'package:didvan/utils/date_time.dart'; -import 'package:didvan/widgets/animated_visibility.dart'; -import 'package:didvan/widgets/didvan/card.dart'; -import 'package:didvan/widgets/didvan/divider.dart'; -import 'package:didvan/widgets/didvan/icon_button.dart'; -import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/ink_wrapper.dart'; -import 'package:didvan/widgets/item_title.dart'; -import 'package:didvan/widgets/skeleton_image.dart'; -import 'package:didvan/pages/home/widgets/tag_item.dart'; +import 'package:didvan/views/home/widgets/multitype_overview.dart'; +import 'package:didvan/views/home/widgets/tag_item.dart'; +import 'package:didvan/views/widgets/animated_visibility.dart'; +import 'package:didvan/views/widgets/didvan/card.dart'; +import 'package:didvan/views/widgets/didvan/divider.dart'; +import 'package:didvan/views/widgets/didvan/icon_button.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/ink_wrapper.dart'; +import 'package:didvan/views/widgets/item_title.dart'; +import 'package:didvan/views/widgets/skeleton_image.dart'; import 'package:flutter/material.dart'; import 'package:flutter_html/flutter_html.dart'; diff --git a/lib/widgets/didvan/scaffold.dart b/lib/views/widgets/didvan/scaffold.dart similarity index 98% rename from lib/widgets/didvan/scaffold.dart rename to lib/views/widgets/didvan/scaffold.dart index 1790794..db75ac9 100644 --- a/lib/widgets/didvan/scaffold.dart +++ b/lib/views/widgets/didvan/scaffold.dart @@ -1,5 +1,5 @@ import 'package:didvan/models/view/app_bar_data.dart'; -import 'package:didvan/widgets/didvan/app_bar.dart'; +import 'package:didvan/views/widgets/didvan/app_bar.dart'; import 'package:flutter/material.dart'; class DidvanScaffold extends StatefulWidget { diff --git a/lib/widgets/didvan/switch.dart b/lib/views/widgets/didvan/switch.dart similarity index 95% rename from lib/widgets/didvan/switch.dart rename to lib/views/widgets/didvan/switch.dart index 6b6841d..558a2f7 100644 --- a/lib/widgets/didvan/switch.dart +++ b/lib/views/widgets/didvan/switch.dart @@ -1,4 +1,4 @@ -import 'package:didvan/pages/home/widgets/menu_item.dart'; +import 'package:didvan/views/home/widgets/menu_item.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; diff --git a/lib/widgets/didvan/text.dart b/lib/views/widgets/didvan/text.dart similarity index 100% rename from lib/widgets/didvan/text.dart rename to lib/views/widgets/didvan/text.dart diff --git a/lib/widgets/didvan/text_field.dart b/lib/views/widgets/didvan/text_field.dart similarity index 98% rename from lib/widgets/didvan/text_field.dart rename to lib/views/widgets/didvan/text_field.dart index f8dd15c..bf01ab4 100644 --- a/lib/widgets/didvan/text_field.dart +++ b/lib/views/widgets/didvan/text_field.dart @@ -1,8 +1,8 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/widgets/animated_visibility.dart'; -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/animated_visibility.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:persian_number_utility/persian_number_utility.dart'; diff --git a/lib/widgets/ink_wrapper.dart b/lib/views/widgets/ink_wrapper.dart similarity index 100% rename from lib/widgets/ink_wrapper.dart rename to lib/views/widgets/ink_wrapper.dart diff --git a/lib/widgets/item_title.dart b/lib/views/widgets/item_title.dart similarity index 94% rename from lib/widgets/item_title.dart rename to lib/views/widgets/item_title.dart index 1c0a89d..0477d87 100644 --- a/lib/widgets/item_title.dart +++ b/lib/views/widgets/item_title.dart @@ -1,5 +1,5 @@ import 'package:didvan/config/theme_data.dart'; -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; class ItemTitle extends StatelessWidget { diff --git a/lib/widgets/logos/didvan_horizontal_logo.dart b/lib/views/widgets/logos/didvan_horizontal_logo.dart similarity index 100% rename from lib/widgets/logos/didvan_horizontal_logo.dart rename to lib/views/widgets/logos/didvan_horizontal_logo.dart diff --git a/lib/widgets/logos/didvan_vertical_logo.dart b/lib/views/widgets/logos/didvan_vertical_logo.dart similarity index 100% rename from lib/widgets/logos/didvan_vertical_logo.dart rename to lib/views/widgets/logos/didvan_vertical_logo.dart diff --git a/lib/widgets/process_indicators.dart b/lib/views/widgets/process_indicators.dart similarity index 100% rename from lib/widgets/process_indicators.dart rename to lib/views/widgets/process_indicators.dart diff --git a/lib/widgets/shimmer_placeholder.dart b/lib/views/widgets/shimmer_placeholder.dart similarity index 100% rename from lib/widgets/shimmer_placeholder.dart rename to lib/views/widgets/shimmer_placeholder.dart diff --git a/lib/widgets/skeleton_image.dart b/lib/views/widgets/skeleton_image.dart similarity index 96% rename from lib/widgets/skeleton_image.dart rename to lib/views/widgets/skeleton_image.dart index dcad6af..bf7db1c 100644 --- a/lib/widgets/skeleton_image.dart +++ b/lib/views/widgets/skeleton_image.dart @@ -1,8 +1,8 @@ -import 'package:didvan/widgets/shimmer_placeholder.dart'; import 'package:cached_network_image/cached_network_image.dart'; import 'package:didvan/config/design_config.dart'; import 'package:didvan/services/network/request.dart'; import 'package:didvan/services/network/request_helper.dart'; +import 'package:didvan/views/widgets/shimmer_placeholder.dart'; import 'package:flutter/material.dart'; import 'package:cached_network_image_platform_interface/cached_network_image_platform_interface.dart'; diff --git a/lib/widgets/state_handlers/empty_connection.dart b/lib/views/widgets/state_handlers/empty_connection.dart similarity index 87% rename from lib/widgets/state_handlers/empty_connection.dart rename to lib/views/widgets/state_handlers/empty_connection.dart index 53e87a6..c6543bb 100644 --- a/lib/widgets/state_handlers/empty_connection.dart +++ b/lib/views/widgets/state_handlers/empty_connection.dart @@ -1,5 +1,5 @@ import 'package:didvan/constants/assets.dart'; -import 'package:didvan/widgets/state_handlers/empty_state.dart'; +import 'package:didvan/views/widgets/state_handlers/empty_state.dart'; import 'package:flutter/material.dart'; class EmptyConnection extends StatelessWidget { diff --git a/lib/widgets/state_handlers/empty_list.dart b/lib/views/widgets/state_handlers/empty_list.dart similarity index 82% rename from lib/widgets/state_handlers/empty_list.dart rename to lib/views/widgets/state_handlers/empty_list.dart index da00ac7..9be66b6 100644 --- a/lib/widgets/state_handlers/empty_list.dart +++ b/lib/views/widgets/state_handlers/empty_list.dart @@ -1,5 +1,5 @@ import 'package:didvan/constants/assets.dart'; -import 'package:didvan/widgets/state_handlers/empty_state.dart'; +import 'package:didvan/views/widgets/state_handlers/empty_state.dart'; import 'package:flutter/material.dart'; class EmptyList extends StatelessWidget { diff --git a/lib/widgets/state_handlers/empty_result.dart b/lib/views/widgets/state_handlers/empty_result.dart similarity index 87% rename from lib/widgets/state_handlers/empty_result.dart rename to lib/views/widgets/state_handlers/empty_result.dart index bbb5fbb..1ae6b8f 100644 --- a/lib/widgets/state_handlers/empty_result.dart +++ b/lib/views/widgets/state_handlers/empty_result.dart @@ -1,5 +1,5 @@ import 'package:didvan/constants/assets.dart'; -import 'package:didvan/widgets/state_handlers/empty_state.dart'; +import 'package:didvan/views/widgets/state_handlers/empty_state.dart'; import 'package:flutter/material.dart'; class EmptyResult extends StatelessWidget { diff --git a/lib/widgets/state_handlers/empty_state.dart b/lib/views/widgets/state_handlers/empty_state.dart similarity index 92% rename from lib/widgets/state_handlers/empty_state.dart rename to lib/views/widgets/state_handlers/empty_state.dart index 6d4a883..abfe420 100644 --- a/lib/widgets/state_handlers/empty_state.dart +++ b/lib/views/widgets/state_handlers/empty_state.dart @@ -1,6 +1,6 @@ import 'package:didvan/config/theme_data.dart'; -import 'package:didvan/widgets/didvan/button.dart'; -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/didvan/button.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; diff --git a/lib/widgets/state_handlers/sliver_state_handler.dart b/lib/views/widgets/state_handlers/sliver_state_handler.dart similarity index 96% rename from lib/widgets/state_handlers/sliver_state_handler.dart rename to lib/views/widgets/state_handlers/sliver_state_handler.dart index e160f70..cb762f5 100644 --- a/lib/widgets/state_handlers/sliver_state_handler.dart +++ b/lib/views/widgets/state_handlers/sliver_state_handler.dart @@ -1,6 +1,6 @@ import 'package:didvan/models/enums.dart'; import 'package:didvan/providers/core_provider.dart'; -import 'package:didvan/widgets/state_handlers/empty_connection.dart'; +import 'package:didvan/views/widgets/state_handlers/empty_connection.dart'; import 'package:flutter/material.dart'; class SliverStateHandler extends SliverList { diff --git a/lib/widgets/state_handlers/state_handler.dart b/lib/views/widgets/state_handlers/state_handler.dart similarity index 95% rename from lib/widgets/state_handlers/state_handler.dart rename to lib/views/widgets/state_handlers/state_handler.dart index 107db8e..513ac3f 100644 --- a/lib/widgets/state_handlers/state_handler.dart +++ b/lib/views/widgets/state_handlers/state_handler.dart @@ -1,6 +1,6 @@ import 'package:didvan/models/enums.dart'; import 'package:didvan/providers/core_provider.dart'; -import 'package:didvan/widgets/state_handlers/empty_connection.dart'; +import 'package:didvan/views/widgets/state_handlers/empty_connection.dart'; import 'package:flutter/material.dart'; import 'package:flutter_spinkit/flutter_spinkit.dart'; From 911d992deeb0868469a0cac4e5119ea5c39a1e0d Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 2 Mar 2022 13:52:02 +0330 Subject: [PATCH 244/273] D1APP-105 app icons added + some configs --- ios/Runner.xcodeproj/project.pbxproj | 15 ++- .../AppIcon.appiconset/100.png | Bin 0 -> 15884 bytes .../AppIcon.appiconset/1024.png | Bin 0 -> 527860 bytes .../AppIcon.appiconset/114.png | Bin 0 -> 18848 bytes .../AppIcon.appiconset/120.png | Bin 0 -> 20247 bytes .../AppIcon.appiconset/128.png | Bin 0 -> 22001 bytes .../AppIcon.appiconset/144.png | Bin 0 -> 25730 bytes .../AppIcon.appiconset/152.png | Bin 0 -> 27661 bytes .../Assets.xcassets/AppIcon.appiconset/16.png | Bin 0 -> 974 bytes .../AppIcon.appiconset/167.png | Bin 0 -> 30939 bytes .../AppIcon.appiconset/172.png | Bin 0 -> 32004 bytes .../AppIcon.appiconset/180.png | Bin 0 -> 33838 bytes .../AppIcon.appiconset/196.png | Bin 0 -> 37725 bytes .../Assets.xcassets/AppIcon.appiconset/20.png | Bin 0 -> 1449 bytes .../AppIcon.appiconset/216.png | Bin 0 -> 42491 bytes .../AppIcon.appiconset/256.png | Bin 0 -> 52790 bytes .../Assets.xcassets/AppIcon.appiconset/29.png | Bin 0 -> 2671 bytes .../Assets.xcassets/AppIcon.appiconset/32.png | Bin 0 -> 3111 bytes .../Assets.xcassets/AppIcon.appiconset/40.png | Bin 0 -> 4373 bytes .../Assets.xcassets/AppIcon.appiconset/48.png | Bin 0 -> 5674 bytes .../Assets.xcassets/AppIcon.appiconset/50.png | Bin 0 -> 5989 bytes .../AppIcon.appiconset/512.png | Bin 0 -> 169252 bytes .../Assets.xcassets/AppIcon.appiconset/55.png | Bin 0 -> 6847 bytes .../Assets.xcassets/AppIcon.appiconset/57.png | Bin 0 -> 7193 bytes .../Assets.xcassets/AppIcon.appiconset/58.png | Bin 0 -> 7383 bytes .../Assets.xcassets/AppIcon.appiconset/60.png | Bin 0 -> 7727 bytes .../Assets.xcassets/AppIcon.appiconset/64.png | Bin 0 -> 8447 bytes .../Assets.xcassets/AppIcon.appiconset/72.png | Bin 0 -> 9902 bytes .../Assets.xcassets/AppIcon.appiconset/76.png | Bin 0 -> 10829 bytes .../Assets.xcassets/AppIcon.appiconset/80.png | Bin 0 -> 11565 bytes .../Assets.xcassets/AppIcon.appiconset/87.png | Bin 0 -> 13100 bytes .../Assets.xcassets/AppIcon.appiconset/88.png | Bin 0 -> 13301 bytes .../AppIcon.appiconset/Contents.json | 123 +----------------- .../Icon-App-1024x1024@1x.png | Bin 10932 -> 0 bytes .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 564 -> 0 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 1283 -> 0 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 1588 -> 0 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 1025 -> 0 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 1716 -> 0 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 1920 -> 0 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 1283 -> 0 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 1895 -> 0 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 2665 -> 0 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 2665 -> 0 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 3831 -> 0 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 1888 -> 0 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 3294 -> 0 bytes .../Icon-App-83.5x83.5@2x.png | Bin 3612 -> 0 bytes 48 files changed, 14 insertions(+), 124 deletions(-) create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/100.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/1024.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/114.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/120.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/128.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/144.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/152.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/16.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/167.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/172.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/180.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/196.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/20.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/216.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/256.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/29.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/32.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/40.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/48.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/50.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/512.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/55.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/57.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/58.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/60.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/64.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/72.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/76.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/80.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/87.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/88.png delete mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png delete mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png delete mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png delete mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png delete mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png delete mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png delete mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png delete mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png delete mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png delete mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png delete mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png delete mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png delete mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png delete mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png delete mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index 8cf340e..afb27d5 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 50; + objectVersion = 51; objects = { /* Begin PBXBuildFile section */ @@ -76,7 +76,6 @@ 98ACB01D5FA5A78DB2686183 /* Pods-Runner.release.xcconfig */, 1CDA6531AC975E620DBA1134 /* Pods-Runner.profile.xcconfig */, ); - name = Pods; path = Pods; sourceTree = ""; }; @@ -355,7 +354,10 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; + CODE_SIGN_IDENTITY = "Apple Development"; + CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + DEVELOPMENT_TEAM = W2PAW454F9; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -364,6 +366,7 @@ ); PRODUCT_BUNDLE_IDENTIFIER = com.didvan.didvanapp; PRODUCT_NAME = "$(TARGET_NAME)"; + PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; SWIFT_VERSION = 5.0; VERSIONING_SYSTEM = "apple-generic"; @@ -482,7 +485,10 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; + CODE_SIGN_IDENTITY = "Apple Development"; + CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + DEVELOPMENT_TEAM = W2PAW454F9; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -491,6 +497,7 @@ ); PRODUCT_BUNDLE_IDENTIFIER = com.didvan.didvanapp; PRODUCT_NAME = "$(TARGET_NAME)"; + PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; @@ -504,7 +511,10 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; + CODE_SIGN_IDENTITY = "Apple Development"; + CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + DEVELOPMENT_TEAM = W2PAW454F9; ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -513,6 +523,7 @@ ); PRODUCT_BUNDLE_IDENTIFIER = com.didvan.didvanapp; PRODUCT_NAME = "$(TARGET_NAME)"; + PROVISIONING_PROFILE_SPECIFIER = ""; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; SWIFT_VERSION = 5.0; VERSIONING_SYSTEM = "apple-generic"; diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/100.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/100.png new file mode 100644 index 0000000000000000000000000000000000000000..c89e7edb111baaa9129da241284ad8352d7a5ea4 GIT binary patch literal 15884 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 y6H@A(hiY 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

|&PG`Y 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�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

OFye~GzzWiC5<$m!Qp5QZ^zNh(`*z6^CB68 zH6ugwv~Dd^kEl58=Sa4u*P+jmN5YNOfI1(<2ugA~OQ2K_742p!nG=F`iQtF4YR8;9 z2RINTNHg}&mI~A1=?GhPAIX_{G$&>#j@FRmd`OC091d{M#pBS`YG}#5OpR{Q6T#Jp z1b#(0w5rZ29mG^~g}$Lj`wws!0mxajDV@v>En;;RG!eOfz5AqOBu3{d5ER|ZqU9gz!P2)7E~e8pQVXKR4a`$E zQt^Z^6OB1t$UOYVeBXhG__(ueIBD4{) zND&f=a)6dY3x8n}oh01~_#CkDY*?L5#X)Y?jH9^K)f*O9H%OLT0U2pNfqL&94%MEO zEe>*{wew`-b^0B7@Wx>JMoC?r7ahoe3hY^FmLyw^LU#9gRFeG5G@$MSr_P>99mFZ@ zY_g_Ck5~EiM0GVwh9feaNNqHsrp}5nuuV0!bO5{tU~~=*<>shX;Q|y7WZ4TaizpM2 zYKdeWRc>WnaXNIX&&O<;KFR9w7(tXc?l5)0=U+wmG~qK)P$8??zO8&e12WoN$MU*8 zBT2eO44?9OxC2==Sar&>|Q;EO8)7C%l^nyrZa=2G5uIuBD|{6*#)F6oYEiSMATII zQOt(P3M2R{SuEmc+ggUE_Lly~j6MCUTuoT}0o!>p>2$Yl z#WUKrVSgyn`y)g@jMJ+9wNV5%>c9>6F&=!7vw*6HZl(WsKX$$MOCA4`429H+wHss> zt$0;0UUrq4DAQPr<3EHga}bl6IMV!YHA6>Af%?pkd5`}zp%3+4QrTnw#!XtJtWrk# z`tuPg`lyxx@H9P%74-Xo$HS_lNfRZjYZoKm@&7@3j+8gw{`b{#^ zqHFoCC3Jp^X6mJprEGf4bIjdj1doRk?$)iX8ExAbcD8mL^#9v8`!9GN$_CIT-atUF zT(_QcU6y(2ijz{!yRyjuGjnBUE&6{6hwnrlk0c#=`HH7aD@Mm~{KswRe*vxQdqlD# z)KL=Jxr@;*cKEl9LFE?O%PoXH-80d@2|Z`97X9CZGwVz`$Wl@y-Ikfj6}Ov-HIo0O zg!nrjTeODg8f{|diC|FVznEgxc-5AhQMvi)hNdJO5J@c;k-07*qoM6N<$g1o?D AdjJ3c literal 15222 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 diff --git a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png index f4ef1e7831734ec187d8f83fe03f25df8c48ca35..966049e70f084f748298a4f2da717de957dde157 100644 GIT binary patch literal 25287 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 Hu0mjfp^?|5 diff --git a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png index aa2f21e43b5a10b4d273b1cec144435d4d770c48..d4f8ac862c7b4403b562c067f4461ca767062e54 100644 GIT binary patch literal 35379 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 Date: Sat, 1 Jan 2022 14:26:08 +0330 Subject: [PATCH 052/273] assets update to last export --- .../images/logos/logo-horizontal-dark.svg | 12 ++--- .../images/logos/logo-horizontal-light.svg | 48 +++++++++---------- .../images/logos/logo-vertical-dark.svg | 4 +- .../images/logos/logo-vertical-light.svg | 6 +-- 4 files changed, 35 insertions(+), 35 deletions(-) diff --git a/lib/assets/images/logos/logo-horizontal-dark.svg b/lib/assets/images/logos/logo-horizontal-dark.svg index ab9db91..95d2d09 100644 --- a/lib/assets/images/logos/logo-horizontal-dark.svg +++ b/lib/assets/images/logos/logo-horizontal-dark.svg @@ -22,13 +22,13 @@ - - - - - + + + + + - + diff --git a/lib/assets/images/logos/logo-horizontal-light.svg b/lib/assets/images/logos/logo-horizontal-light.svg index 04e066b..4657fce 100644 --- a/lib/assets/images/logos/logo-horizontal-light.svg +++ b/lib/assets/images/logos/logo-horizontal-light.svg @@ -1,26 +1,26 @@ - - - + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + @@ -33,15 +33,15 @@ - + - - + + diff --git a/lib/assets/images/logos/logo-vertical-dark.svg b/lib/assets/images/logos/logo-vertical-dark.svg index 0cf46df..db6df03 100644 --- a/lib/assets/images/logos/logo-vertical-dark.svg +++ b/lib/assets/images/logos/logo-vertical-dark.svg @@ -11,8 +11,8 @@ - - + + diff --git a/lib/assets/images/logos/logo-vertical-light.svg b/lib/assets/images/logos/logo-vertical-light.svg index 0f4c57f..b79519f 100644 --- a/lib/assets/images/logos/logo-vertical-light.svg +++ b/lib/assets/images/logos/logo-vertical-light.svg @@ -11,9 +11,9 @@ - + - + @@ -31,7 +31,7 @@ - + From 792be0af9651afb33dbee000990571f0b3795ce8 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 1 Jan 2022 15:31:28 +0330 Subject: [PATCH 053/273] theme chaging bug fixed | code cleaning --- lib/config/design_config.dart | 23 ++++++++++--------- lib/main.dart | 2 ++ lib/pages/home/chat/chat.dart | 3 --- lib/pages/home/home.dart | 5 +--- lib/pages/home/profile/settings/settings.dart | 3 +-- lib/pages/splash/splash.dart | 5 ++-- lib/services/app_initalizer.dart | 11 --------- 7 files changed, 18 insertions(+), 34 deletions(-) diff --git a/lib/config/design_config.dart b/lib/config/design_config.dart index 3c74136..aa6008c 100644 --- a/lib/config/design_config.dart +++ b/lib/config/design_config.dart @@ -1,9 +1,10 @@ import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/main.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; class DesignConfig { - static late BuildContext context; + static BuildContext get context => navigatorKey.currentContext!; static const BorderRadius lowBorderRadius = BorderRadius.all( Radius.circular(8), @@ -35,20 +36,20 @@ class DesignConfig { static SystemUiOverlayStyle get systemUiOverlayStyle { return SystemUiOverlayStyle( - statusBarIconBrightness: Theme.of(context).brightness == Brightness.dark - ? Brightness.light - : Brightness.dark, + statusBarIconBrightness: + brightness == Brightness.dark ? Brightness.light : Brightness.dark, statusBarColor: Colors.transparent, - // systemNavigationBarColor: Theme.of(context).colorScheme.surface, - // systemNavigationBarDividerColor: Colors.transparent, - // systemNavigationBarIconBrightness: - // Theme.of(context).colorScheme.brightness == Brightness.dark - // ? Brightness.light - // : Brightness.dark, + systemNavigationBarColor: Theme.of(context).colorScheme.surface, + systemNavigationBarDividerColor: Colors.transparent, + systemNavigationBarIconBrightness: + brightness == Brightness.dark ? Brightness.light : Brightness.dark, ); } static void updateSystemUiOverlayStyle() { - SystemChrome.setSystemUIOverlayStyle(systemUiOverlayStyle); + Future.delayed( + DesignConfig.lowAnimationDuration, + () => SystemChrome.setSystemUIOverlayStyle(systemUiOverlayStyle), + ); } } diff --git a/lib/main.dart b/lib/main.dart index ba606ac..07d754d 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -11,6 +11,7 @@ void main() { } final GlobalKey navigatorKey = GlobalKey(); +final GlobalKey materialKey = GlobalKey(); class Didvan extends StatelessWidget { const Didvan({Key? key}) : super(key: key); @@ -27,6 +28,7 @@ class Didvan extends StatelessWidget { ], child: Consumer( builder: (context, themeProvider, child) => MaterialApp( + key: materialKey, navigatorKey: navigatorKey, debugShowCheckedModeBanner: false, title: 'Didvan', diff --git a/lib/pages/home/chat/chat.dart b/lib/pages/home/chat/chat.dart index 59cfbe3..45e78f4 100644 --- a/lib/pages/home/chat/chat.dart +++ b/lib/pages/home/chat/chat.dart @@ -1,7 +1,4 @@ -import 'dart:developer'; - import 'package:just_audio/just_audio.dart'; -import 'package:path_provider/path_provider.dart'; import 'package:record/record.dart'; import 'package:universal_html/js.dart' as js; import 'package:didvan/config/theme_data.dart'; diff --git a/lib/pages/home/home.dart b/lib/pages/home/home.dart index c9ce74d..cfb7f07 100644 --- a/lib/pages/home/home.dart +++ b/lib/pages/home/home.dart @@ -22,10 +22,7 @@ class _HomeState extends State with SingleTickerProviderStateMixin { @override void initState() { - Future.delayed(const Duration(milliseconds: 400), () { - DesignConfig.context = context; - DesignConfig.updateSystemUiOverlayStyle(); - }); + DesignConfig.updateSystemUiOverlayStyle(); _tabController = TabController(length: 5, vsync: this); _tabController.addListener(() { context.read().currentPageIndex = _tabController.index; diff --git a/lib/pages/home/profile/settings/settings.dart b/lib/pages/home/profile/settings/settings.dart index 3025044..3c79c46 100644 --- a/lib/pages/home/profile/settings/settings.dart +++ b/lib/pages/home/profile/settings/settings.dart @@ -171,11 +171,10 @@ class Settings extends StatelessWidget { } else { if (isDarkTheme) { context.read().themeMode = ThemeMode.dark; - DesignConfig.updateSystemUiOverlayStyle(); } else { context.read().themeMode = ThemeMode.light; - DesignConfig.updateSystemUiOverlayStyle(); } + DesignConfig.updateSystemUiOverlayStyle(); } }, child: Column( diff --git a/lib/pages/splash/splash.dart b/lib/pages/splash/splash.dart index 2f97304..b2c9677 100644 --- a/lib/pages/splash/splash.dart +++ b/lib/pages/splash/splash.dart @@ -42,7 +42,6 @@ class _SplashState extends State { @override Widget build(BuildContext context) { - DesignConfig.context = context; if (_isGettingThemeData) { return Container( color: Colors.black, @@ -52,8 +51,8 @@ class _SplashState extends State { } return AnnotatedRegion( value: DesignConfig.systemUiOverlayStyle.copyWith( - // systemNavigationBarColor: Theme.of(context).colorScheme.focused, - ), + systemNavigationBarColor: Theme.of(context).colorScheme.background, + ), child: Scaffold( body: Container( alignment: Alignment.center, diff --git a/lib/services/app_initalizer.dart b/lib/services/app_initalizer.dart index 0d628fb..5dfe216 100644 --- a/lib/services/app_initalizer.dart +++ b/lib/services/app_initalizer.dart @@ -1,22 +1,11 @@ import 'package:didvan/models/settings_data.dart'; import 'package:didvan/services/storage/storage.dart'; -import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:hive_flutter/hive_flutter.dart'; -import 'package:permission_handler/permission_handler.dart'; class AppInitializer { static Future setupServices() async { - // late final Directory appDir; - // late final Directory appTempsDir; - // if (!kIsWeb) { await Hive.initFlutter(); - // appDir = await getApplicationDocumentsDirectory(); - // appTempsDir = await getApplicationDocumentsDirectory(); - // } - // Hive.init(appDir.path); - // StorageService.appDocsDir = appDir.path; - // StorageService.appTempsDir = appTempsDir.path; } static Future initilizeSettings() async { From 80458c9ba8cf5e9277c523a0fa409d0f327095ab Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 1 Jan 2022 19:46:36 +0330 Subject: [PATCH 054/273] update assets --- lib/assets/images/records/record-dark.svg | 38 +++++++++++++++++++ lib/assets/images/records/record-light.svg | 38 +++++++++++++++++++ .../themes/{dark-theme.svg => theme-dark.svg} | 0 .../{light-theme.svg => theme-light.svg} | 0 lib/constants/assets.dart | 3 ++ pubspec.yaml | 6 ++- 6 files changed, 83 insertions(+), 2 deletions(-) create mode 100644 lib/assets/images/records/record-dark.svg create mode 100644 lib/assets/images/records/record-light.svg rename lib/assets/images/themes/{dark-theme.svg => theme-dark.svg} (100%) rename lib/assets/images/themes/{light-theme.svg => theme-light.svg} (100%) diff --git a/lib/assets/images/records/record-dark.svg b/lib/assets/images/records/record-dark.svg new file mode 100644 index 0000000..a95f8e3 --- /dev/null +++ b/lib/assets/images/records/record-dark.svg @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/records/record-light.svg b/lib/assets/images/records/record-light.svg new file mode 100644 index 0000000..375ee5b --- /dev/null +++ b/lib/assets/images/records/record-light.svg @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/themes/dark-theme.svg b/lib/assets/images/themes/theme-dark.svg similarity index 100% rename from lib/assets/images/themes/dark-theme.svg rename to lib/assets/images/themes/theme-dark.svg diff --git a/lib/assets/images/themes/light-theme.svg b/lib/assets/images/themes/theme-light.svg similarity index 100% rename from lib/assets/images/themes/light-theme.svg rename to lib/assets/images/themes/theme-light.svg diff --git a/lib/constants/assets.dart b/lib/constants/assets.dart index e22b26f..cf1b73a 100644 --- a/lib/constants/assets.dart +++ b/lib/constants/assets.dart @@ -6,6 +6,7 @@ class Assets { static const String _baseImagesPath = _basePath + '/images'; static const String _baseThemesPath = _basePath + '/images/themes'; static const String _baseAnimationsPath = _basePath + '/animations'; + static const String _baseRecordsPath = _basePath + '/records'; static String get verticalLogoWithText => _baseImagesPath + '/logos/logo-vertical-$_themeSuffix.svg'; @@ -31,6 +32,8 @@ class Assets { static const String lightTheme = _baseThemesPath + '/light-theme.svg'; static const String darkTheme = _baseThemesPath + '/dark-theme.svg'; + static String get recordDark => _baseRecordsPath + '/$_themeSuffix-theme.svg'; + static String get _themeSuffix => DesignConfig.brightness == Brightness.dark ? 'dark' : 'light'; } diff --git a/pubspec.yaml b/pubspec.yaml index 395295a..748390f 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -97,8 +97,10 @@ flutter: - lib/assets/images/categories/political-dark.svg - lib/assets/images/categories/social-dark.svg - lib/assets/images/categories/tech-dark.svg - - lib/assets/images/themes/light-theme.svg - - lib/assets/images/themes/dark-theme.svg + - lib/assets/images/themes/theme-light.svg + - lib/assets/images/themes/theme-dark.svg + - lib/assets/images/records/record-dark.svg + - lib/assets/images/records/record-light.svg - lib/assets/animations/indicator.riv From 98e1e508912c94738cc1792a2ffc0197abeb0851 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 2 Jan 2022 15:09:47 +0330 Subject: [PATCH 055/273] asset paths fixed --- lib/constants/assets.dart | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/constants/assets.dart b/lib/constants/assets.dart index cf1b73a..66bffde 100644 --- a/lib/constants/assets.dart +++ b/lib/constants/assets.dart @@ -29,10 +29,10 @@ class Assets { static String get techCategoryIcon => _baseImagesPath + '/categories/tech-$_themeSuffix.svg'; - static const String lightTheme = _baseThemesPath + '/light-theme.svg'; - static const String darkTheme = _baseThemesPath + '/dark-theme.svg'; + static const String lightTheme = _baseThemesPath + '/theme-light.svg'; + static const String darkTheme = _baseThemesPath + '/theme-dark.svg'; - static String get recordDark => _baseRecordsPath + '/$_themeSuffix-theme.svg'; + static String get record => _baseRecordsPath + '/record-$_themeSuffix.svg'; static String get _themeSuffix => DesignConfig.brightness == Brightness.dark ? 'dark' : 'light'; From 0ec05f17641ffc70ec28896b8e7f574fd13395aa Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Mon, 3 Jan 2022 19:43:45 +0330 Subject: [PATCH 056/273] D1APP-31 message box (full audio support) --- lib/config/theme_data.dart | 4 +- lib/constants/assets.dart | 2 +- lib/pages/home/chat/chat.dart | 100 +----- lib/pages/home/chat/chat_state.dart | 53 +++- lib/pages/home/chat/widgets/message_box.dart | 138 ++++++++ lib/services/app_initalizer.dart | 3 + lib/utils/date_time.dart | 17 + lib/widgets/audio_visualizer.dart | 314 +++++++++++++++++++ lib/widgets/didvan/icon_button.dart | 35 +++ pubspec.lock | 7 + pubspec.yaml | 1 + 11 files changed, 572 insertions(+), 102 deletions(-) create mode 100644 lib/pages/home/chat/widgets/message_box.dart create mode 100644 lib/widgets/audio_visualizer.dart create mode 100644 lib/widgets/didvan/icon_button.dart diff --git a/lib/config/theme_data.dart b/lib/config/theme_data.dart index 70fb3cc..b1a3388 100644 --- a/lib/config/theme_data.dart +++ b/lib/config/theme_data.dart @@ -82,8 +82,8 @@ class DarkThemeConfig { colorScheme: _colorScheme, fontFamily: 'Dana-FA', textTheme: _textTheme, - iconTheme: const IconThemeData( - color: text, + iconTheme: IconThemeData( + color: _colorScheme.focusedBorder, ), cardColor: _colorScheme.surface, ); diff --git a/lib/constants/assets.dart b/lib/constants/assets.dart index 66bffde..27b28bc 100644 --- a/lib/constants/assets.dart +++ b/lib/constants/assets.dart @@ -6,7 +6,7 @@ class Assets { static const String _baseImagesPath = _basePath + '/images'; static const String _baseThemesPath = _basePath + '/images/themes'; static const String _baseAnimationsPath = _basePath + '/animations'; - static const String _baseRecordsPath = _basePath + '/records'; + static const String _baseRecordsPath = _basePath + '/images/records'; static String get verticalLogoWithText => _baseImagesPath + '/logos/logo-vertical-$_themeSuffix.svg'; diff --git a/lib/pages/home/chat/chat.dart b/lib/pages/home/chat/chat.dart index 45e78f4..4d07d2e 100644 --- a/lib/pages/home/chat/chat.dart +++ b/lib/pages/home/chat/chat.dart @@ -1,13 +1,7 @@ -import 'package:just_audio/just_audio.dart'; -import 'package:record/record.dart'; -import 'package:universal_html/js.dart' as js; -import 'package:didvan/config/theme_data.dart'; -import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/pages/home/chat/widgets/message_box.dart'; import 'package:didvan/models/view/app_bar_data.dart'; import 'package:didvan/widgets/didvan/scaffold.dart'; -import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; -import 'package:flutter_vibrate/flutter_vibrate.dart'; class Chat extends StatelessWidget { const Chat({Key? key}) : super(key: key); @@ -32,101 +26,13 @@ class Chat extends StatelessWidget { ), ), Positioned( - bottom: 0, + bottom: MediaQuery.of(context).viewInsets.bottom, right: 0, left: 0, - child: Container( - height: 56, - decoration: BoxDecoration( - border: Border( - top: BorderSide( - color: Theme.of(context).colorScheme.cardBorder, - ), - ), - color: Theme.of(context).colorScheme.surface, - ), - child: Row( - children: [ - const _VoiceRecorderButton(), - Expanded( - child: TextField( - decoration: InputDecoration( - border: InputBorder.none, - hintText: 'بنویسید یا پیام صوتی بگذارید...', - hintStyle: Theme.of(context) - .textTheme - .caption! - .copyWith( - color: Theme.of(context).colorScheme.disabledText, - ), - ), - onChanged: (value) {}, - ), - ), - ], - ), - ), + child: const MessageBox(), ), ], ), ); } } - -class _VoiceRecorderButton extends StatefulWidget { - const _VoiceRecorderButton({Key? key}) : super(key: key); - - @override - _VoiceRecorderButtonState createState() => _VoiceRecorderButtonState(); -} - -class _VoiceRecorderButtonState extends State<_VoiceRecorderButton> { - final _recorder = Record(); - final _player = AudioPlayer(); - - @override - void initState() { - _recorder.hasPermission(); - super.initState(); - } - - @override - Widget build(BuildContext context) { - return GestureDetector( - onLongPressStart: (details) async { - if (!kIsWeb) { - Vibrate.feedback(FeedbackType.medium); - } - await _recorder.start(); - }, - onLongPressEnd: (details) async { - final path = await _recorder.stop(); - if (kIsWeb) { - await _player.setUrl(path!); - } else { - await _player.setFilePath(path!); - } - await _player.play(); - if (kIsWeb) { - js.context.callMethod('playAudio', ['/dash.mp3']); - } - }, - child: Container( - color: Colors.transparent, - height: double.infinity, - width: 52, - child: Icon( - DidvanIcons.mic_solid, - color: Theme.of(context).colorScheme.focusedBorder, - ), - ), - ); - } - - @override - void dispose() { - _recorder.dispose(); - _player.dispose(); - super.dispose(); - } -} diff --git a/lib/pages/home/chat/chat_state.dart b/lib/pages/home/chat/chat_state.dart index 19ff935..d841aac 100644 --- a/lib/pages/home/chat/chat_state.dart +++ b/lib/pages/home/chat/chat_state.dart @@ -1,3 +1,52 @@ -import 'package:didvan/providers/core_provider.dart'; +import 'dart:io'; -class ChatState extends CoreProvier {} +import 'package:didvan/providers/core_provider.dart'; +import 'package:flutter/foundation.dart'; +import 'package:flutter_vibrate/flutter_vibrate.dart'; +import 'package:record/record.dart'; + +class ChatState extends CoreProvier { + final _recorder = Record(); + + File? recordedFile; + + bool isRecording = false; + + void deleteRecordedFile() { + recordedFile!.delete(); + recordedFile = null; + notifyListeners(); + } + + Future startRecording() async { + await _recorder.hasPermission(); + if (!kIsWeb) { + Vibrate.feedback(FeedbackType.medium); + } + isRecording = true; + _recorder.start(); + notifyListeners(); + } + + Future stopRecording(bool sendImidiately) async { + final path = await _recorder.stop(); + isRecording = false; + if (path == null) { + notifyListeners(); + return; + } + if (kIsWeb) { + final uri = Uri.file(path); + recordedFile = File.fromUri(uri); + } else { + recordedFile = File(path); + } + if (sendImidiately) { + await sendMessage(); + } else { + notifyListeners(); + } + } + + Future sendMessage() async {} +} diff --git a/lib/pages/home/chat/widgets/message_box.dart b/lib/pages/home/chat/widgets/message_box.dart new file mode 100644 index 0000000..6c2ac9b --- /dev/null +++ b/lib/pages/home/chat/widgets/message_box.dart @@ -0,0 +1,138 @@ +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/pages/home/chat/chat_state.dart'; +import 'package:didvan/widgets/audio_visualizer.dart'; +import 'package:didvan/widgets/didvan/icon_button.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; + +class MessageBox extends StatelessWidget { + const MessageBox({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Container( + height: 56, + decoration: BoxDecoration( + border: Border( + top: BorderSide( + color: Theme.of(context).colorScheme.cardBorder, + ), + ), + color: Theme.of(context).colorScheme.surface, + ), + child: Consumer( + builder: (context, state, child) { + if (state.isRecording) { + return const _Recording(); + } else if (!state.isRecording && state.recordedFile != null) { + return const _RecordChecking(); + } + return const _Typing(); + }, + ), + ); + } +} + +class _Typing extends StatelessWidget { + const _Typing({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + final state = context.read(); + return Row( + children: [ + DidvanIconButton( + icon: DidvanIcons.mic_solid, + onPressed: state.startRecording, + size: 32, + color: Theme.of(context).colorScheme.focusedBorder, + ), + Expanded( + child: TextField( + textInputAction: TextInputAction.send, + decoration: InputDecoration( + border: InputBorder.none, + hintText: 'بنویسید یا پیام صوتی بگذارید...', + hintStyle: Theme.of(context) + .textTheme + .caption! + .copyWith(color: Theme.of(context).colorScheme.disabledText), + ), + onChanged: (value) {}, + ), + ), + ], + ); + } +} + +class _Recording extends StatelessWidget { + const _Recording({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + final state = context.read(); + return Row( + children: [ + GestureDetector( + onTap: () => state.stopRecording(true), + child: Container( + color: Colors.transparent, + height: double.infinity, + width: 52, + child: Icon( + DidvanIcons.send_solid, + color: Theme.of(context).colorScheme.focusedBorder, + ), + ), + ), + Expanded( + child: DidvanText( + 'در حال ضبط صدا ...', + style: Theme.of(context).textTheme.caption, + ), + ), + DidvanIconButton( + icon: DidvanIcons.stop_circle_solid, + color: Theme.of(context).colorScheme.secondary, + onPressed: () => state.stopRecording(false), + size: 32, + ), + ], + ); + } +} + +class _RecordChecking extends StatelessWidget { + const _RecordChecking({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + final state = context.read(); + return Row( + children: [ + DidvanIconButton( + icon: DidvanIcons.send_solid, + onPressed: () => state.stopRecording(true), + color: Theme.of(context).colorScheme.focusedBorder, + ), + Expanded( + child: Padding( + padding: const EdgeInsets.symmetric(vertical: 8), + child: AudioVisualizer( + audioFile: state.recordedFile!, + ), + ), + ), + DidvanIconButton( + icon: DidvanIcons.trash_solid, + color: Theme.of(context).colorScheme.secondary, + onPressed: state.deleteRecordedFile, + ), + ], + ); + } +} diff --git a/lib/services/app_initalizer.dart b/lib/services/app_initalizer.dart index 5dfe216..0b948e5 100644 --- a/lib/services/app_initalizer.dart +++ b/lib/services/app_initalizer.dart @@ -2,9 +2,12 @@ import 'package:didvan/models/settings_data.dart'; import 'package:didvan/services/storage/storage.dart'; import 'package:flutter/material.dart'; import 'package:hive_flutter/hive_flutter.dart'; +import 'package:path_provider/path_provider.dart'; class AppInitializer { static Future setupServices() async { + StorageService.appDocsDir = (await getApplicationDocumentsDirectory()).path; + StorageService.appTempsDir = (await getTemporaryDirectory()).path; await Hive.initFlutter(); } diff --git a/lib/utils/date_time.dart b/lib/utils/date_time.dart index f36466d..c603d1a 100644 --- a/lib/utils/date_time.dart +++ b/lib/utils/date_time.dart @@ -5,4 +5,21 @@ class DateTimeUtils { hour: int.parse(input.split(':')[0]), minute: int.parse(input.split(':')[1]), ); + + static String normalizeTimeDuration(Duration input) { + String minute; + String second; + if (input.inMinutes < 10) { + minute = '0${input.inMinutes}'; + } else { + minute = input.inMinutes.toString(); + } + int realSeconds = input.inSeconds % 60; + if (realSeconds < 10) { + second = '0$realSeconds'; + } else { + second = (realSeconds).toString(); + } + return '$minute:$second'; + } } diff --git a/lib/widgets/audio_visualizer.dart b/lib/widgets/audio_visualizer.dart new file mode 100644 index 0000000..f4fdc3d --- /dev/null +++ b/lib/widgets/audio_visualizer.dart @@ -0,0 +1,314 @@ +import 'dart:io'; +import 'dart:math'; + +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/constants/assets.dart'; +import 'package:didvan/services/storage/storage.dart'; +import 'package:didvan/utils/date_time.dart'; +import 'package:didvan/widgets/didvan/icon_button.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/foundation.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_svg/flutter_svg.dart'; +import 'package:just_audio/just_audio.dart'; +import 'package:just_waveform/just_waveform.dart'; + +class AudioVisualizer extends StatefulWidget { + final File audioFile; + + const AudioVisualizer({ + Key? key, + required this.audioFile, + }) : super(key: key); + + @override + State createState() => _AudioVisualizerState(); +} + +class _AudioVisualizerState extends State { + final AudioPlayer _audioPlayer = AudioPlayer(); + + Stream? waveDataStream; + + @override + void initState() { + if (!kIsWeb) { + waveDataStream = JustWaveform.extract( + audioInFile: widget.audioFile, + waveOutFile: File(StorageService.appTempsDir + '/rec-wave.wave'), + zoom: const WaveformZoom.pixelsPerSecond(100), + ); + } + _setupAudioPlayer(); + super.initState(); + } + + @override + Widget build(BuildContext context) { + return Container( + decoration: BoxDecoration( + color: Theme.of(context).brightness == Brightness.dark + ? Theme.of(context).colorScheme.black + : Theme.of(context).colorScheme.background, + borderRadius: DesignConfig.mediumBorderRadius, + ), + child: Row( + children: [ + const SizedBox(width: 12), + StreamBuilder( + stream: _audioPlayer.positionStream, + builder: (context, snapshot) { + String text = ''; + if (_audioPlayer.duration == null) { + Future.delayed(Duration.zero, () { + setState(() {}); + }); + } + if (snapshot.data == null || snapshot.data == Duration.zero) { + text = DateTimeUtils.normalizeTimeDuration( + _audioPlayer.duration ?? Duration.zero); + } else { + text = DateTimeUtils.normalizeTimeDuration(snapshot.data!); + } + return DidvanText( + text, + color: Theme.of(context).colorScheme.focusedBorder, + isEnglishFont: true, + ); + }, + ), + const SizedBox(width: 12), + Expanded( + child: Builder( + builder: (context) { + if (kIsWeb) { + return SvgPicture.asset(Assets.record); + } + return StreamBuilder( + stream: waveDataStream, + builder: (context, snapshot) { + if (snapshot.data == null) { + return const SizedBox(); + } + if (snapshot.data!.waveform == null) { + return const SizedBox(); + } + final waveform = snapshot.data!.waveform!; + return GestureDetector( + onHorizontalDragUpdate: _changePosition, + onTapDown: _changePosition, + child: SizedBox( + height: double.infinity, + width: double.infinity, + child: _AudioWaveformWidget( + waveform: waveform, + audioPlayer: _audioPlayer, + start: Duration.zero, + scale: 2, + strokeWidth: 3, + duration: waveform.duration, + waveColor: + Theme.of(context).colorScheme.focusedBorder, + ), + ), + ); + }, + ); + }, + ), + ), + StreamBuilder( + stream: _audioPlayer.playingStream, + builder: (context, snapshot) { + return DidvanIconButton( + icon: snapshot.data == true + ? DidvanIcons.pause_circle_solid + : DidvanIcons.play_circle_solid, + color: Theme.of(context).colorScheme.focusedBorder, + onPressed: _playAndPouse, + ); + }, + ), + ], + ), + ); + } + + void _changePosition(details) { + double posper = + details.localPosition.dx / (MediaQuery.of(context).size.width - 200); + if (posper >= 1 || posper < 0) return; + final position = _audioPlayer.duration!.inMilliseconds; + _audioPlayer.seek( + Duration(milliseconds: (posper * position).toInt()), + ); + setState(() {}); + } + + Future _setupAudioPlayer() async { + if (kIsWeb) { + await _audioPlayer.setUrl( + widget.audioFile.uri.path.replaceAll('%3A', ':'), + ); + } else { + await _audioPlayer.setFilePath(widget.audioFile.path); + } + } + + Future _playAndPouse() async { + if (_audioPlayer.playing) { + _audioPlayer.pause(); + return; + } + await _audioPlayer.play(); + } + + @override + void dispose() { + _audioPlayer.dispose(); + super.dispose(); + } +} + +class _AudioWaveformWidget extends StatefulWidget { + final Color waveColor; + final double scale; + final double strokeWidth; + final double pixelsPerStep; + final Waveform waveform; + final Duration start; + final Duration duration; + final AudioPlayer audioPlayer; + + const _AudioWaveformWidget({ + Key? key, + required this.waveform, + required this.start, + required this.duration, + required this.audioPlayer, + this.waveColor = Colors.blue, + this.scale = 1.0, + this.strokeWidth = 5.0, + this.pixelsPerStep = 8.0, + }) : super(key: key); + + @override + __AudioWaveformWidgetState createState() => __AudioWaveformWidgetState(); +} + +class __AudioWaveformWidgetState extends State<_AudioWaveformWidget> + with SingleTickerProviderStateMixin { + double progress = 0; + + @override + void initState() { + widget.audioPlayer.positionStream.listen((event) { + if (widget.audioPlayer.duration == null) return; + setState(() { + progress = event.inMilliseconds / + widget.audioPlayer.duration!.inMilliseconds * + 100; + if (progress >= 100) { + progress = 0; + widget.audioPlayer.stop(); + widget.audioPlayer.seek(Duration.zero); + } + }); + }); + super.initState(); + } + + @override + Widget build(BuildContext context) { + return ClipRect( + child: CustomPaint( + painter: _AudioWaveformPainter( + waveColor: widget.waveColor, + waveform: widget.waveform, + start: widget.start, + duration: widget.duration, + scale: widget.scale, + strokeWidth: widget.strokeWidth, + pixelsPerStep: widget.pixelsPerStep, + progressPercentage: progress, + progressColor: Theme.of(context).colorScheme.focusedBorder, + color: Theme.of(context).colorScheme.border, + ), + ), + ); + } +} + +class _AudioWaveformPainter extends CustomPainter { + final double scale; + final double strokeWidth; + final double pixelsPerStep; + final Waveform waveform; + final Duration start; + final Duration duration; + final double progressPercentage; + final Color progressColor; + final Color color; + + _AudioWaveformPainter({ + required this.waveform, + required this.start, + required this.duration, + required this.progressPercentage, + required this.color, + required this.progressColor, + Color waveColor = Colors.blue, + this.scale = 1.0, + this.strokeWidth = 5.0, + this.pixelsPerStep = 8.0, + }); + + @override + void paint(Canvas canvas, Size size) { + if (duration == Duration.zero) return; + double width = size.width; + double height = size.height; + + final waveformPixelsPerWindow = waveform.positionToPixel(duration).toInt(); + final waveformPixelsPerDevicePixel = waveformPixelsPerWindow / width; + final waveformPixelsPerStep = waveformPixelsPerDevicePixel * pixelsPerStep; + final sampleOffset = waveform.positionToPixel(start); + final sampleStart = -sampleOffset % waveformPixelsPerStep; + final totalLength = waveformPixelsPerWindow; + final wavePaintB = Paint() + ..style = PaintingStyle.stroke + ..strokeWidth = strokeWidth + ..strokeCap = StrokeCap.round + ..color = progressColor; + final wavePaintA = Paint() + ..style = PaintingStyle.stroke + ..strokeWidth = strokeWidth + ..strokeCap = StrokeCap.round + ..color = color; + for (var i = sampleStart.toDouble(); + i <= waveformPixelsPerWindow + 1.0; + i += waveformPixelsPerStep) { + final sampleIdx = (sampleOffset + i).toInt(); + final x = i / waveformPixelsPerDevicePixel; + final minY = normalise(waveform.getPixelMin(sampleIdx), height); + final maxY = normalise(waveform.getPixelMax(sampleIdx), height); + canvas.drawLine( + Offset(x + strokeWidth / 2, max(strokeWidth * 0.75, minY)), + Offset(x + strokeWidth / 2, min(height - strokeWidth * 0.75, maxY)), + i / totalLength < progressPercentage / 100 ? wavePaintB : wavePaintA, + ); + } + } + + @override + bool shouldRepaint(covariant _AudioWaveformPainter oldDelegate) { + return oldDelegate.progressPercentage != progressPercentage; + } + + double normalise(int s, double height) { + final y = 32768 + (scale * s).clamp(-32768.0, 32767.0).toDouble(); + return height - 1 - y * height / 65536; + } +} diff --git a/lib/widgets/didvan/icon_button.dart b/lib/widgets/didvan/icon_button.dart new file mode 100644 index 0000000..6f12245 --- /dev/null +++ b/lib/widgets/didvan/icon_button.dart @@ -0,0 +1,35 @@ +import 'package:didvan/widgets/ink_wrapper.dart'; +import 'package:flutter/material.dart'; + +class DidvanIconButton extends StatelessWidget { + final IconData icon; + final Color? color; + final double? size; + final double? gestureSize; + final VoidCallback onPressed; + const DidvanIconButton({ + Key? key, + required this.icon, + required this.onPressed, + this.color, + this.size, + this.gestureSize, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return InkWrapper( + onPressed: onPressed, + borderRadius: BorderRadius.circular(200), + child: SizedBox( + height: gestureSize ?? 48, + width: gestureSize ?? 48, + child: Icon( + icon, + size: size, + color: color, + ), + ), + ); + } +} diff --git a/pubspec.lock b/pubspec.lock index 2a8196e..bd7794e 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -301,6 +301,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "0.4.2" + just_waveform: + dependency: "direct main" + description: + name: just_waveform + url: "https://pub.dartlang.org" + source: hosted + version: "0.0.1" lints: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 748390f..ac58b10 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -56,6 +56,7 @@ dependencies: record: ^3.0.2 just_audio: ^0.9.18 record_web: ^0.2.1 + just_waveform: ^0.0.1 dev_dependencies: flutter_test: From 9fcd2e0a16f3f9de89ae1b7a77ce20a8f42e4b38 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 4 Jan 2022 16:14:57 +0330 Subject: [PATCH 057/273] D1APP-22 request service bug fixed --- lib/services/network/request.dart | 29 ++++++++++++++++++++++------- 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/lib/services/network/request.dart b/lib/services/network/request.dart index 5296878..435a17b 100644 --- a/lib/services/network/request.dart +++ b/lib/services/network/request.dart @@ -4,11 +4,16 @@ import 'dart:io'; import 'package:http/http.dart' as http; class RequestService { - static late String token; + static late String _token; + + static set token(value) => _token = value; + + Map get result => _body['result'] ?? const {}; + Map get errors => _body['errors'] ?? const {}; String? errorMessage; - dynamic body; + dynamic _body; final Map _headers = { "accept": "*/*", "Content-Type": "application/json; charset=UTF-8", @@ -26,7 +31,7 @@ class RequestService { }) { if (body != null) _requestBody = body; if (requestHeaders != null) _headers.addAll(requestHeaders); - if (useAutherization) _headers.addAll({'Authorization': 'Bearer $token'}); + if (useAutherization) _headers.addAll({'Authorization': 'Bearer $_token'}); if (body != null) _requestBody = body; } @@ -61,8 +66,10 @@ class RequestService { const Duration(seconds: 10), ) .catchError( - (e) => throw e, - ); + (e) { + throw e; + }, + ); _handleResponse(response); } catch (e) { _handleError(null); @@ -140,7 +147,7 @@ class RequestService { void _handleResponse(http.Response? response) { if (_handleError(response)) { if (response!.body.isNotEmpty) { - body = json.decode(response.body); + _body = json.decode(response.body); } } } @@ -156,8 +163,16 @@ class RequestService { return false; } if (response.statusCode != 200 && response.statusCode != 204) { + String data; + if (response.body.isEmpty) { + data = 'No results!'; + } else if (response.body.contains('')) { + data = response.body; + } else { + data = jsonDecode(response.body); + } log( - 'Request to [$url] failed with status code ${response.statusCode} & result : \n ${response.body.isNotEmpty ? json.decode(response.body) : 'No result.'}', + 'Request to [$url] failed with status code ${response.statusCode} & result : \n $data', name: 'Request fail error', ); isSuccess = false; From 0e312636a7b0df58665e102d67023ceef53e5c24 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 4 Jan 2022 17:34:25 +0330 Subject: [PATCH 058/273] D1APP-22 request service another bug fixed! --- lib/services/network/request.dart | 9 +++++---- lib/services/network/request_helper.dart | 7 ++++++- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/lib/services/network/request.dart b/lib/services/network/request.dart index 435a17b..fdc3aab 100644 --- a/lib/services/network/request.dart +++ b/lib/services/network/request.dart @@ -150,6 +150,7 @@ class RequestService { _body = json.decode(response.body); } } + errorMessage = _errorMessageGenerator(); } bool _handleError(http.Response? response) { @@ -159,7 +160,6 @@ class RequestService { name: 'Request fail error', ); isSuccess = false; - errorMessage = _errorMessageGenerator(response); return false; } if (response.statusCode != 200 && response.statusCode != 204) { @@ -176,14 +176,15 @@ class RequestService { name: 'Request fail error', ); isSuccess = false; - errorMessage = _errorMessageGenerator(response); return false; } isSuccess = true; return true; } - String _errorMessageGenerator(http.Response? response) { - return ''; + String _errorMessageGenerator() { + return isSuccess + ? result['msg'] + : 'خطا! لطفا اتصال اینترنت خود را بررسی و مجددا تلاش نمایید.'; } } diff --git a/lib/services/network/request_helper.dart b/lib/services/network/request_helper.dart index 4e25ff3..b33d39d 100644 --- a/lib/services/network/request_helper.dart +++ b/lib/services/network/request_helper.dart @@ -1 +1,6 @@ -class RequestHelper {} +class RequestHelper { + static const String _baseUrl = 'https://didvan-greatsam.fandogh.cloud'; + + static const String confirmUsername = _baseUrl + '/user/confirmUsername'; + static const String login = _baseUrl + '/user/login'; +} From a472c97c4e91f097d403297e57e39491e5dbe264 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 4 Jan 2022 19:43:27 +0330 Subject: [PATCH 059/273] D1APP-43 authentication (dynamic) --- lib/config/theme_data.dart | 121 +++++++++--------- lib/models/enums.dart | 1 + lib/models/view/alert_data.dart | 5 + lib/pages/authentication/authentication.dart | 19 ++- .../authentication/authentication_state.dart | 41 +++++- .../authentication/screens/password.dart | 49 +++++-- .../{phone_number.dart => username.dart} | 19 +-- .../authentication/screens/verification.dart | 4 +- .../widgets/authentication_layout.dart | 5 +- lib/pages/splash/splash.dart | 6 +- lib/providers/core_provider.dart | 7 + lib/providers/user_provider.dart | 12 +- lib/services/network/request.dart | 23 ++-- lib/utils/actions_sheet.dart | 42 ++++-- lib/widgets/didvan/button.dart | 5 +- lib/widgets/didvan/text_field.dart | 59 ++++++++- lib/widgets/logos/didvan_horizontal_logo.dart | 5 +- pubspec.lock | 7 + pubspec.yaml | 1 + 19 files changed, 317 insertions(+), 114 deletions(-) create mode 100644 lib/models/view/alert_data.dart rename lib/pages/authentication/screens/{phone_number.dart => username.dart} (81%) diff --git a/lib/config/theme_data.dart b/lib/config/theme_data.dart index b1a3388..632cf90 100644 --- a/lib/config/theme_data.dart +++ b/lib/config/theme_data.dart @@ -1,10 +1,10 @@ import 'package:flutter/material.dart'; class LightThemeConfig { - static const Color _primary = Color(0XFF007EA7); - static const Color _white = Color(0XFFFFFFFF); - static const Color _black = Color(0XFF292929); - static const Color _background = Color(0XFFF8F8FA); + static const Color _primary = Color(0xFF007EA7); + static const Color _white = Color(0xFFFFFFFF); + static const Color _black = Color(0xFF292929); + static const Color _background = Color(0xFFF8F8FA); static final ThemeData themeData = ThemeData( backgroundColor: _background, @@ -28,11 +28,11 @@ class LightThemeConfig { static const ColorScheme _colorScheme = ColorScheme( primary: _primary, primaryVariant: _white, - secondary: Color(0XFFD61515), + secondary: Color(0xFFD61515), secondaryVariant: _white, surface: _white, background: _background, - error: Color(0XFFF00505), + error: Color(0xFFF00505), onPrimary: _white, onSecondary: _white, onSurface: _black, @@ -72,9 +72,9 @@ class LightThemeConfig { } class DarkThemeConfig { - static const Color _primary = Color(0XFF007EA7); - static const Color _white = Color(0XFFFFFFFF); - static const Color _background = Color(0XFF202224); + static const Color _primary = Color(0xFF007EA7); + static const Color _white = Color(0xFFFFFFFF); + static const Color _background = Color(0xFF202224); static final ThemeData themeData = ThemeData( backgroundColor: _background, @@ -101,11 +101,11 @@ class DarkThemeConfig { static const ColorScheme _colorScheme = ColorScheme( primary: _primary, primaryVariant: _white, - secondary: Color(0XFFE53939), + secondary: Color(0xFFE53939), secondaryVariant: _white, - surface: Color(0XFF181B1F), + surface: Color(0xFF181B1F), background: _background, - error: Color(0XFFF53B3B), + error: Color(0xFFF53B3B), onPrimary: _white, onSecondary: _white, onSurface: text, @@ -144,78 +144,81 @@ class DarkThemeConfig { ); // Grey colors - static const Color white = Color(0XFFFFFFFF); - static const Color title = Color(0XFFF5F5F5); - static const Color text = Color(0XFFD6D6D6); - static const Color hint = Color(0XFFBBBBBB); - static const Color border = Color(0XFF666666); + static const Color white = Color(0xFFFFFFFF); + static const Color title = Color(0xFFF5F5F5); + static const Color text = Color(0xFFD6D6D6); + static const Color hint = Color(0xFFBBBBBB); + static const Color border = Color(0xFF666666); // Error and success - static const Color errorLight = Color(0XFFF0C9CD); - static const Color error = Color(0XFFF53B3B); - static const Color successLight = Color(0XFFBBD6B4); - static const Color success = Color(0XFF32A64C); + static const Color errorLight = Color(0xFFF0C9CD); + static const Color error = Color(0xFFF53B3B); + static const Color successLight = Color(0xFFBBD6B4); + static const Color success = Color(0xFF32A64C); } extension DidvanColorScheme on ColorScheme { // Secondary colors Color get secondaryDisabled => brightness == Brightness.dark - ? const Color(0XFF703838) - : const Color(0XFFFFC8C8); + ? const Color(0xFF703838) + : const Color(0xFFFFC8C8); - Color get white => const Color(0XFFFFFFFF); + Color get white => const Color(0xFFFFFFFF); Color get focused => brightness == Brightness.dark - ? const Color(0XFF323C47) - : const Color(0XFFE6F3FA); + ? const Color(0xFF323C47) + : const Color(0xFFE6F3FA); Color get navigation => brightness == Brightness.dark - ? const Color(0XFF181B1F) - : const Color(0XFF012348); + ? const Color(0xFF181B1F) + : const Color(0xFF012348); Color get focusedBorder => brightness == Brightness.dark - ? const Color(0XFFC8E0F4) - : const Color(0XFF195D80); + ? const Color(0xFFC8E0F4) + : const Color(0xFF195D80); Color get title => brightness == Brightness.dark - ? const Color(0XFFD6D6D6) - : const Color(0XFF1B3C59); + ? const Color(0xFFD6D6D6) + : const Color(0xFF1B3C59); Color get text => brightness == Brightness.dark - ? const Color(0XFFD6D6D6) - : const Color(0XFF292929); + ? const Color(0xFFD6D6D6) + : const Color(0xFF292929); Color get inputText => brightness == Brightness.dark - ? const Color(0XFFA3A3A3) - : const Color(0XFF3D3D3D); + ? const Color(0xFFA3A3A3) + : const Color(0xFF3D3D3D); Color get caption => brightness == Brightness.dark - ? const Color(0XFFBBBBBB) - : const Color(0XFF666666); - Color get hint => const Color(0XFFBBBBBB); + ? const Color(0xFFBBBBBB) + : const Color(0xFF666666); + Color get hint => const Color(0xFFBBBBBB); Color get disabledText => brightness == Brightness.dark - ? const Color(0XFF666666) - : const Color(0XFFE0E0E0); + ? const Color(0xFF666666) + : const Color(0xFFE0E0E0); Color get border => brightness == Brightness.dark - ? const Color(0XFF666666) - : const Color(0XFFE0E0E0); + ? const Color(0xFF666666) + : const Color(0xFFE0E0E0); Color get cardBorder => brightness == Brightness.dark - ? const Color(0XFF666666) - : const Color(0XFFEBEBEB); + ? const Color(0xFF666666) + : const Color(0xFFEBEBEB); Color get disabledBackground => brightness == Brightness.dark - ? const Color(0XFF1F1F1F) - : const Color(0XFFE0E0E0); + ? const Color(0xFF1F1F1F) + : const Color(0xFFE0E0E0); Color get secondCTA => brightness == Brightness.dark - ? const Color(0XFF474747) - : const Color(0XFFF5F5F5); + ? const Color(0xFF474747) + : const Color(0xFFF5F5F5); Color get splash => brightness == Brightness.dark - ? const Color(0XFF333333) - : const Color(0XFFC8E0F4); + ? const Color(0xFF333333) + : const Color(0xFFC8E0F4); Color get black => brightness == Brightness.dark - ? const Color(0XFF1F1F1F) - : const Color(0XFF292929); + ? const Color(0xFF1F1F1F) + : const Color(0xFF292929); + Color get overlay => brightness == Brightness.dark + ? const Color(0xFF0F1011) + : const Color(0xFF292929); // Error and success colors Color get errorLight => brightness == Brightness.dark - ? const Color(0XFFF0C9CD) - : const Color(0XFFFFF8F8); + ? const Color(0xFFF0C9CD) + : const Color(0xFFFFF8F8); Color get successLight => brightness == Brightness.dark - ? const Color(0XFFBBD6B4) - : const Color(0XFFF5FFFC); + ? const Color(0xFFBBD6B4) + : const Color(0xFFF5FFFC); Color get success => brightness == Brightness.dark - ? const Color(0XFF32A64C) - : const Color(0XFF2BB24A); + ? const Color(0xFF32A64C) + : const Color(0xFF2BB24A); } diff --git a/lib/models/enums.dart b/lib/models/enums.dart index 247826c..1859789 100644 --- a/lib/models/enums.dart +++ b/lib/models/enums.dart @@ -1,6 +1,7 @@ enum AppState { idle, busy, + isolatedBusy, failed, } diff --git a/lib/models/view/alert_data.dart b/lib/models/view/alert_data.dart new file mode 100644 index 0000000..88d5571 --- /dev/null +++ b/lib/models/view/alert_data.dart @@ -0,0 +1,5 @@ +class AlertData { + final String message; + + AlertData({required this.message}); +} diff --git a/lib/pages/authentication/authentication.dart b/lib/pages/authentication/authentication.dart index 0f8209e..6c98ca8 100644 --- a/lib/pages/authentication/authentication.dart +++ b/lib/pages/authentication/authentication.dart @@ -1,7 +1,7 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; import 'package:didvan/pages/authentication/screens/password.dart'; -import 'package:didvan/pages/authentication/screens/phone_number.dart'; +import 'package:didvan/pages/authentication/screens/username.dart'; import 'package:didvan/pages/authentication/screens/reset_password.dart'; import 'package:didvan/pages/authentication/screens/verification.dart'; import 'package:flutter/material.dart'; @@ -16,7 +16,7 @@ class Authentication extends StatefulWidget { class _AuthenticationState extends State { final List _pages = const [ - PhoneNumberInput(), + UsernameInput(), PasswordInput(), Verification(), ResetPassword(), @@ -26,9 +26,18 @@ class _AuthenticationState extends State { Widget build(BuildContext context) { return Scaffold( body: Consumer( - builder: (context, state, child) => AnimatedSwitcher( - duration: DesignConfig.mediumAnimationDuration, - child: _pages[state.currentPageIndex], + builder: (context, state, child) => WillPopScope( + onWillPop: () async { + if (state.currentPageIndex == 0) { + return true; + } + state.currentPageIndex--; + return false; + }, + child: AnimatedSwitcher( + duration: DesignConfig.mediumAnimationDuration, + child: _pages[state.currentPageIndex], + ), ), ), ); diff --git a/lib/pages/authentication/authentication_state.dart b/lib/pages/authentication/authentication_state.dart index 395288c..d26ecc3 100644 --- a/lib/pages/authentication/authentication_state.dart +++ b/lib/pages/authentication/authentication_state.dart @@ -1,8 +1,13 @@ +import 'package:didvan/models/enums.dart'; +import 'package:didvan/models/view/alert_data.dart'; import 'package:didvan/providers/core_provider.dart'; +import 'package:didvan/services/network/request.dart'; +import 'package:didvan/services/network/request_helper.dart'; +import 'package:didvan/utils/actions_sheet.dart'; class AuthenticationState extends CoreProvier { int _currentPageIndex = 0; - String phoneNumber = ''; + String username = ''; String password = ''; String verificationCode = ''; @@ -12,4 +17,38 @@ class AuthenticationState extends CoreProvier { } int get currentPageIndex => _currentPageIndex; + + Future confirmUsername() async { + appState = AppState.isolatedBusy; + final RequestService service = RequestService( + RequestHelper.confirmUsername, + useAutherization: false, + body: {'username': username}, + ); + await service.post(); + if (service.isSuccess && service.result['confirmed']) { + appState = AppState.idle; + currentPageIndex++; + } else { + appState = AppState.failed; + ActionSheetUtils.showAlert(AlertData(message: service.errorMessage)); + } + } + + Future login() async { + appState = AppState.isolatedBusy; + final RequestService service = RequestService( + RequestHelper.login, + useAutherization: false, + body: {'username': username, "password": password}, + ); + await service.post(); + if (service.isSuccess && service.result['loggedIn']) { + appState = AppState.idle; + return service.result['token']; + } else { + appState = AppState.failed; + ActionSheetUtils.showAlert(AlertData(message: service.errorMessage)); + } + } } diff --git a/lib/pages/authentication/screens/password.dart b/lib/pages/authentication/screens/password.dart index dd11163..bdd0953 100644 --- a/lib/pages/authentication/screens/password.dart +++ b/lib/pages/authentication/screens/password.dart @@ -1,26 +1,43 @@ import 'package:didvan/pages/authentication/authentication_state.dart'; import 'package:didvan/pages/authentication/widgets/authentication_layout.dart'; +import 'package:didvan/providers/user_provider.dart'; +import 'package:didvan/routes/routes.dart'; +import 'package:didvan/services/network/request.dart'; import 'package:didvan/widgets/didvan/button.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/didvan/text_field.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; -class PasswordInput extends StatelessWidget { +class PasswordInput extends StatefulWidget { const PasswordInput({Key? key}) : super(key: key); + @override + State createState() => _PasswordInputState(); +} + +class _PasswordInputState extends State { + final _formKey = GlobalKey(); + @override Widget build(BuildContext context) { final AuthenticationState state = context.read(); return AuthenticationLayout( - appBarTitle: 'ورود با شماره موبایل ' + state.phoneNumber, + appBarTitle: + 'ورود با ${state.username.contains('09') ? 'شماره موبایل' : 'نام کاربری'} ${state.username}', children: [ - DidvanTextField( - onChanged: (value) => state.password = value, - autoFocus: true, - title: 'کلمه عبور', - hintText: 'کلمه عبور', - obsecureText: true, + Form( + key: _formKey, + child: DidvanTextField( + onChanged: (value) => state.password = value, + autoFocus: true, + title: 'کلمه عبور', + hintText: 'کلمه عبور', + obsecureText: true, + validator: (value) => value!.length < 8 + ? 'کلمه عبور نمی‌تواند از 8 کاراکتر کمتر باشد' + : null, + ), ), const SizedBox( height: 32, @@ -35,7 +52,7 @@ class PasswordInput extends StatelessWidget { ), const Spacer(), DidvanButton( - onPressed: () {}, + onPressed: () => _onPressed(context), title: 'ورود', ), const SizedBox( @@ -44,4 +61,18 @@ class PasswordInput extends StatelessWidget { ], ); } + + Future _onPressed(BuildContext context) async { + if (!_formKey.currentState!.validate()) { + return; + } + final state = context.read(); + final token = await state.login(); + if (token != null) { + final userProvider = context.read(); + await userProvider.setAndGetToken(token: token); + RequestService.token = token; + Navigator.of(context).pushReplacementNamed(Routes.home); + } + } } diff --git a/lib/pages/authentication/screens/phone_number.dart b/lib/pages/authentication/screens/username.dart similarity index 81% rename from lib/pages/authentication/screens/phone_number.dart rename to lib/pages/authentication/screens/username.dart index e108de7..3c7b8e6 100644 --- a/lib/pages/authentication/screens/phone_number.dart +++ b/lib/pages/authentication/screens/username.dart @@ -6,8 +6,8 @@ import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; -class PhoneNumberInput extends StatelessWidget { - const PhoneNumberInput({ +class UsernameInput extends StatelessWidget { + const UsernameInput({ Key? key, }) : super(key: key); @@ -17,12 +17,15 @@ class PhoneNumberInput extends StatelessWidget { return AuthenticationLayout( children: [ DidvanTextField( - title: 'شماره موبایل', - textInputType: TextInputType.phone, - hintText: 'شماره موبایل', + initialValue: state.username, + title: 'نام کاربری یا شماره موبایل', + hintText: 'نام کاربری یا شماره موبایل', textAlign: TextAlign.center, + validator: (value) => value!.length < 4 + ? 'نام کاربری نمی‌تواند از 4 کاراکتر کوچکتر باشد' + : null, onChanged: (value) { - state.phoneNumber = value; + state.username = value; }, ), const SizedBox( @@ -30,9 +33,7 @@ class PhoneNumberInput extends StatelessWidget { ), DidvanButton( title: 'ورود', - onPressed: () { - state.currentPageIndex = 1; - }, + onPressed: state.confirmUsername, ), const Spacer(), Padding( diff --git a/lib/pages/authentication/screens/verification.dart b/lib/pages/authentication/screens/verification.dart index d0d3bde..3d48f4d 100644 --- a/lib/pages/authentication/screens/verification.dart +++ b/lib/pages/authentication/screens/verification.dart @@ -26,7 +26,7 @@ class Verification extends StatelessWidget { height: 8, ), DidvanText( - state.phoneNumber, + state.username, style: Theme.of(context).textTheme.subtitle1, ), const SizedBox( @@ -65,7 +65,7 @@ class Verification extends StatelessWidget { onPressed: () { state.currentPageIndex++; }, - title: 'تایید', + title: 'ارسال مجدد کد', ), const SizedBox( height: 48, diff --git a/lib/pages/authentication/widgets/authentication_layout.dart b/lib/pages/authentication/widgets/authentication_layout.dart index 2b178e5..f15e7fe 100644 --- a/lib/pages/authentication/widgets/authentication_layout.dart +++ b/lib/pages/authentication/widgets/authentication_layout.dart @@ -14,7 +14,6 @@ class AuthenticationLayout extends StatelessWidget { Widget build(BuildContext context) { return SingleChildScrollView( padding: const EdgeInsets.symmetric(horizontal: 20), - physics: const NeverScrollableScrollPhysics(), child: SizedBox( height: MediaQuery.of(context).size.height, child: Column( @@ -34,7 +33,9 @@ class AuthenticationLayout extends StatelessWidget { right: 100, bottom: 40, ), - child: DidvanVerticalLogo(), + child: DidvanVerticalLogo( + height: 200, + ), ), ...children, ], diff --git a/lib/pages/splash/splash.dart b/lib/pages/splash/splash.dart index b2c9677..7ab9d3d 100644 --- a/lib/pages/splash/splash.dart +++ b/lib/pages/splash/splash.dart @@ -1,6 +1,7 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/main.dart'; import 'package:didvan/providers/theme_provider.dart'; +import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/services/app_initalizer.dart'; import 'package:didvan/utils/actions_sheet.dart'; @@ -36,8 +37,11 @@ class _SplashState extends State { _isGettingThemeData = false; }), ); + final String? token = await context.read().setAndGetToken(); await Future.delayed(const Duration(seconds: 2)); - Navigator.of(context).pushReplacementNamed(Routes.home); + Navigator.of(context).pushReplacementNamed( + token == null ? Routes.authenticaion : Routes.home, + ); } @override diff --git a/lib/providers/core_provider.dart b/lib/providers/core_provider.dart index 45ef78c..5870c8f 100644 --- a/lib/providers/core_provider.dart +++ b/lib/providers/core_provider.dart @@ -1,10 +1,17 @@ import 'package:didvan/models/enums.dart'; +import 'package:didvan/utils/actions_sheet.dart'; import 'package:flutter/cupertino.dart'; class CoreProvier with ChangeNotifier { AppState _appState = AppState.idle; set appState(AppState newState) { + if (newState == AppState.isolatedBusy) { + ActionSheetUtils.showLogoLoadingIndicator(); + } + if (_appState == AppState.isolatedBusy) { + ActionSheetUtils.pop(); + } _appState = newState; notifyListeners(); } diff --git a/lib/providers/user_provider.dart b/lib/providers/user_provider.dart index e3efcab..35eeb73 100644 --- a/lib/providers/user_provider.dart +++ b/lib/providers/user_provider.dart @@ -1,3 +1,13 @@ import 'package:didvan/providers/core_provider.dart'; +import 'package:hive/hive.dart'; -class UserProvider extends CoreProvier {} +class UserProvider extends CoreProvier { + Future setAndGetToken({String? token}) async { + final box = await Hive.openBox('autherization'); + if (token != null) { + await box.put('token', token); + } else { + return box.toMap()['token']; + } + } +} diff --git a/lib/services/network/request.dart b/lib/services/network/request.dart index fdc3aab..e358dcd 100644 --- a/lib/services/network/request.dart +++ b/lib/services/network/request.dart @@ -11,7 +11,8 @@ class RequestService { Map get result => _body['result'] ?? const {}; Map get errors => _body['errors'] ?? const {}; - String? errorMessage; + String errorMessage = + 'خطا! لطفا اتصال اینترنت خود را بررسی و مجددا تلاش نمایید.'; dynamic _body; final Map _headers = { @@ -150,7 +151,7 @@ class RequestService { _body = json.decode(response.body); } } - errorMessage = _errorMessageGenerator(); + errorMessage = _errorMessageGenerator(response); } bool _handleError(http.Response? response) { @@ -162,8 +163,8 @@ class RequestService { isSuccess = false; return false; } - if (response.statusCode != 200 && response.statusCode != 204) { - String data; + if (response.statusCode != 200) { + dynamic data; if (response.body.isEmpty) { data = 'No results!'; } else if (response.body.contains('')) { @@ -182,9 +183,15 @@ class RequestService { return true; } - String _errorMessageGenerator() { - return isSuccess - ? result['msg'] - : 'خطا! لطفا اتصال اینترنت خود را بررسی و مجددا تلاش نمایید.'; + String _errorMessageGenerator(http.Response? response) { + String? error; + if (response != null) { + if (!response.body.contains('')) { + if (result.isNotEmpty) { + error = result['msg']; + } + } + } + return error ?? 'خطا! لطفا اتصال اینترنت خود را بررسی و مجددا تلاش نمایید.'; } } diff --git a/lib/utils/actions_sheet.dart b/lib/utils/actions_sheet.dart index 0ba1e37..18fc11c 100644 --- a/lib/utils/actions_sheet.dart +++ b/lib/utils/actions_sheet.dart @@ -1,8 +1,10 @@ +import 'package:another_flushbar/flushbar.dart'; import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/assets.dart'; import 'package:didvan/models/enums.dart'; import 'package:didvan/models/view/action_sheet_data.dart'; +import 'package:didvan/models/view/alert_data.dart'; import 'package:didvan/widgets/didvan/button.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; @@ -15,13 +17,15 @@ class ActionSheetUtils { static Future showLogoLoadingIndicator() async { await showDialog( context: context, - builder: (context) => _customSystemOverlayStyle( - child: Padding( - padding: EdgeInsets.symmetric( - horizontal: MediaQuery.of(context).size.width / 3, - ), - child: const RiveAnimation.asset(Assets.logoLoadingAnimation), + builder: (context) => + // _customSystemOverlayStyle( + // child: + Padding( + padding: EdgeInsets.symmetric( + horizontal: MediaQuery.of(context).size.width / 3, ), + child: const RiveAnimation.asset(Assets.logoLoadingAnimation), + // ), ), ); } @@ -29,12 +33,29 @@ class ActionSheetUtils { static AnnotatedRegion _customSystemOverlayStyle({required Widget child}) { return AnnotatedRegion( value: DesignConfig.systemUiOverlayStyle.copyWith( - // systemNavigationBarColor: Colors.black45, - ), + systemNavigationBarColor: DesignConfig + .systemUiOverlayStyle.systemNavigationBarColor! + .withBlue(20), + ), child: child, ); } + static Future showAlert(AlertData alertData) async { + await Flushbar( + margin: const EdgeInsets.symmetric(horizontal: 16), + message: alertData.message, + backgroundColor: Theme.of(context).colorScheme.focused, + borderRadius: DesignConfig.mediumBorderRadius, + messageColor: Theme.of(context).colorScheme.text, + flushbarPosition: FlushbarPosition.TOP, + duration: const Duration(seconds: 2), + boxShadows: [ + BoxShadow(color: Theme.of(context).colorScheme.cardBorder), + ], + ).show(context); + } + static Future showBottomSheet({required ActionSheetData data}) async { await showModalBottomSheet( context: context, @@ -103,4 +124,9 @@ class ActionSheetUtils { ), ); } + + static void pop() { + DesignConfig.updateSystemUiOverlayStyle(); + Navigator.of(context).pop(); + } } diff --git a/lib/widgets/didvan/button.dart b/lib/widgets/didvan/button.dart index dff6d73..7578856 100644 --- a/lib/widgets/didvan/button.dart +++ b/lib/widgets/didvan/button.dart @@ -24,7 +24,10 @@ class DidvanButton extends StatelessWidget { ), height: 48, color: Theme.of(context).colorScheme.primary, - onPressed: onPressed, + onPressed: () { + FocusScope.of(context).unfocus(); + onPressed?.call(); + }, child: _childBuilder(), ), ); diff --git a/lib/widgets/didvan/text_field.dart b/lib/widgets/didvan/text_field.dart index aaed428..7ec263f 100644 --- a/lib/widgets/didvan/text_field.dart +++ b/lib/widgets/didvan/text_field.dart @@ -1,5 +1,7 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/widgets/animated_visibility.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; @@ -36,11 +38,14 @@ class _DidvanTextFieldState extends State { final FocusNode _focusNode = FocusNode(); final TextEditingController _controller = TextEditingController(); - bool _hasError = false; bool _hideContent = false; + String? _error; @override void initState() { + if (widget.initialValue != null) { + _controller.text = widget.initialValue; + } _hideContent = widget.obsecureText; _focusNode.addListener(() { setState(() {}); @@ -57,7 +62,7 @@ class _DidvanTextFieldState extends State { if (widget.title != null) DidvanText( widget.title!, - color: !widget.enabled ? Theme.of(context).colorScheme.hint : null, + color: _titleColor(), ), if (widget.title != null) const SizedBox(height: 8), Container( @@ -85,6 +90,7 @@ class _DidvanTextFieldState extends State { enabled: widget.enabled, border: InputBorder.none, hintText: widget.hintText, + errorStyle: const TextStyle(height: 0), hintStyle: Theme.of(context) .textTheme .bodyText2! @@ -92,6 +98,24 @@ class _DidvanTextFieldState extends State { ), ), ), + const SizedBox(height: 8), + AnimatedVisibility( + isVisible: _error != null, + duration: DesignConfig.lowAnimationDuration, + child: Row( + children: [ + Icon( + DidvanIcons.lightbulb_exclamation_regular, + color: Theme.of(context).colorScheme.error, + size: 14, + ), + DidvanText( + _error ?? '', + style: Theme.of(context).textTheme.caption, + color: Theme.of(context).colorScheme.error, + ), + ], + )) ], ); } @@ -99,12 +123,21 @@ class _DidvanTextFieldState extends State { Color _borderColor() { if (_focusNode.hasFocus) { return Theme.of(context).colorScheme.primary; - } else if (_hasError) { + } else if (_error != null) { return Theme.of(context).colorScheme.error; } return Theme.of(context).colorScheme.border; } + Color? _titleColor() { + if (!widget.enabled) { + return Theme.of(context).colorScheme.hint; + } + if (_error != null) { + return Theme.of(context).colorScheme.error; + } + } + Color _fillColor() { if (!widget.enabled) { return Theme.of(context).colorScheme.secondCTA; @@ -112,7 +145,7 @@ class _DidvanTextFieldState extends State { if (_focusNode.hasFocus) { return Theme.of(context).colorScheme.focused; } - if (_hasError) { + if (_error != null) { return Theme.of(context).colorScheme.errorLight; } return Theme.of(context).colorScheme.surface; @@ -129,7 +162,9 @@ class _DidvanTextFieldState extends State { }); }, child: Icon( - _hideContent ? Icons.remove_red_eye : Icons.remove_red_eye_outlined, + _hideContent + ? DidvanIcons.eye_regular + : DidvanIcons.eye_slash_regular, ), ), ); @@ -143,6 +178,18 @@ class _DidvanTextFieldState extends State { } String? _validator(String? value) { - _hasError = false; + if (widget.validator != null) { + final String? error = widget.validator!(value); + if (error != null) { + setState(() { + _error = error; + }); + return ''; + } else { + setState(() { + _error = null; + }); + } + } } } diff --git a/lib/widgets/logos/didvan_horizontal_logo.dart b/lib/widgets/logos/didvan_horizontal_logo.dart index e9631d6..13437e0 100644 --- a/lib/widgets/logos/didvan_horizontal_logo.dart +++ b/lib/widgets/logos/didvan_horizontal_logo.dart @@ -3,10 +3,11 @@ import 'package:flutter/material.dart'; import 'package:flutter_svg/svg.dart'; class DidvanVerticalLogo extends StatelessWidget { - const DidvanVerticalLogo({Key? key}) : super(key: key); + final double? height; + const DidvanVerticalLogo({Key? key, this.height}) : super(key: key); @override Widget build(BuildContext context) { - return SvgPicture.asset(Assets.verticalLogoWithText); + return SvgPicture.asset(Assets.verticalLogoWithText, height: height); } } diff --git a/pubspec.lock b/pubspec.lock index bd7794e..9d580f9 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -1,6 +1,13 @@ # Generated by pub # See https://dart.dev/tools/pub/glossary#lockfile packages: + another_flushbar: + dependency: "direct main" + description: + name: another_flushbar + url: "https://pub.dartlang.org" + source: hosted + version: "1.10.28" async: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index ac58b10..81a0276 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -57,6 +57,7 @@ dependencies: just_audio: ^0.9.18 record_web: ^0.2.1 just_waveform: ^0.0.1 + another_flushbar: ^1.10.28 dev_dependencies: flutter_test: From 8b3d03caebf68d814d5b56098c066f4158a40c4e Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 4 Jan 2022 19:56:02 +0330 Subject: [PATCH 060/273] D1APP-1 icon theme fixed --- lib/config/theme_data.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/config/theme_data.dart b/lib/config/theme_data.dart index 632cf90..49b438c 100644 --- a/lib/config/theme_data.dart +++ b/lib/config/theme_data.dart @@ -83,7 +83,7 @@ class DarkThemeConfig { fontFamily: 'Dana-FA', textTheme: _textTheme, iconTheme: IconThemeData( - color: _colorScheme.focusedBorder, + color: _colorScheme.text, ), cardColor: _colorScheme.surface, ); From 1a9c9056d4bee73fa8f1cabd1e4d8dd836d1fba9 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 4 Jan 2022 20:04:44 +0330 Subject: [PATCH 061/273] D1APP-49 logout --- lib/pages/home/profile/profile.dart | 6 +++++- lib/utils/actions_sheet.dart | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/pages/home/profile/profile.dart b/lib/pages/home/profile/profile.dart index 212ba77..bbd0665 100644 --- a/lib/pages/home/profile/profile.dart +++ b/lib/pages/home/profile/profile.dart @@ -8,6 +8,7 @@ import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/item_title.dart'; import 'package:flutter/material.dart'; +import 'package:hive/hive.dart'; import 'package:provider/provider.dart'; class Profile extends StatelessWidget { @@ -59,7 +60,10 @@ class Profile extends StatelessWidget { title: 'خروج از حساب کاربری', icon: DidvanIcons.sign_out_regular, color: Theme.of(context).colorScheme.secondary, - onTap: () => {}, + onTap: () async { + await Hive.deleteBoxFromDisk('autherization'); + Navigator.of(context).pushReplacementNamed(Routes.splash); + }, ), ], ), diff --git a/lib/utils/actions_sheet.dart b/lib/utils/actions_sheet.dart index 18fc11c..f3b333b 100644 --- a/lib/utils/actions_sheet.dart +++ b/lib/utils/actions_sheet.dart @@ -12,7 +12,7 @@ import 'package:flutter/services.dart'; import 'package:rive/rive.dart'; class ActionSheetUtils { - static late final BuildContext context; + static late BuildContext context; static Future showLogoLoadingIndicator() async { await showDialog( From 0202c65080b32732089f49a384067ab514668452 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 5 Jan 2022 12:58:10 +0330 Subject: [PATCH 062/273] D1APP-46 --- lib/assets/animations/indicator-dark.riv | Bin 0 -> 4531 bytes .../{indicator.riv => indicator-light.riv} | Bin lib/constants/assets.dart | 4 ++-- lib/utils/actions_sheet.dart | 2 +- pubspec.yaml | 3 ++- 5 files changed, 5 insertions(+), 4 deletions(-) create mode 100644 lib/assets/animations/indicator-dark.riv rename lib/assets/animations/{indicator.riv => indicator-light.riv} (100%) diff --git a/lib/assets/animations/indicator-dark.riv b/lib/assets/animations/indicator-dark.riv new file mode 100644 index 0000000000000000000000000000000000000000..d995f6079420b03a08c057b50257b6382d92be9b GIT binary patch literal 4531 zcmb_fdvq1W8Q%@rE0W|UT!Fg_5|M}D5l{#Sn8(g8@<V%BYvbjfVb9#V`VC3N$bo8IqUD>J2b zik$S-n-zM(&yS4{c-0>+At_0T=^;xVrJZ_eh2PPv`*!L0p}Hly)oYHVlPUc?4*g`N zq;rXs!7+|D>|%2!zGqhovhw%2^S?W|M%UW!Y_iE+m5NPY*ze8{U+zbmci=7?GaTzA z;1GsQ88%0J_TCu85Nq&9OBLI~5s0=nad(qW*hzFUoA)VuIB9Er6W8dtf2s#rJ%uvy>e|E` zncC5fvO_$7Sz^;hVRpQF>iRC7Av(-#M<9L-*liGXt;Dy+#xv@c*xYqs9!IRvdT)>s zVJA_3l26$eZH6Q*zTbP~lX7N8CvHY(?X5wB5XRdsq*V9_i!^( zRGz|U=IG2WgQ2D zH@giO-^5ZW8(HB^p+jr}hon({h)+2Xt$fCW$%c2_%0>s2AHkI$DPr(HIAkRAwaXza zAwsM)lEvn~IK-oHM2E4GE>e%P(f~-A5G##T!Pk*I=duz<)EO(;gt1kKl@3Om@x|7! zkhk|;lLBCd!Obv5MU*#oameuq<}gKezMlllQOKC%ZjlBitB)G(YM43P^x!zQ=06GS zc7m}RBSw*8>qY8uL|X$ym)#-}GZ~^o*h!&;i_k10;e5)WXrnks4NZHT8I{A0%8jO# z{0LgfWgNxnqb;qp&PURUN8w-y1H?}d9^b?gD~j-1=OYQvryPz}zL;Egyc@UXG37B= z-eM8qed1P(Vu=_4d$(m2>n9n-qgafic%Qfx>v2ThVGw?pwOBVc9MR_egY^kF5q-*$ zXfqn-IvBQWI^|i&x88SY~m1 ziWphlieHKtSw-@TOICcI-HQ2IH|ZEQ?G2Gt>me@lxnx!A>KzlS zj4dm9yi}2rHdRg4JF-VY%KXPo?~JGT4XZT4srZHMji08PVAgzYR++l?@}oiRVtr+R zd_QNjPM>%!#{lP*sTtiH1KM)qw+L6hlu5i}K?=_{9i|J&8{}{MkLvW!Z@fa{jq4yWbEa(IK{7OoDPMaH(&eK%osN0_F~l`( zk|vqjv~w#BJZ_-` z!#bN@^6g*;!oma_bo%4*ssQd-J=U?FuG)e~uMJZV(K>%KI}t=K77sPG*h?UC%mZz$ zu1B*$R{x{<5Pf!Cl8dsVaH6R-9I6c99xwNItfl?^hzyu{I*Z;YFL6aWT>%$Y4^9l= zetnPHR-o(|L|VWE`cMuJH5^oR8bsm>Uo`O9@gTB&I>h=)b!Ufuye`kxW&XFv4Q+Ay zG6zpAxtwM7e0{t@(qaZUG6jFjDEik>3RLV+WmCR$YT2@ORx{kE6>uVfhby%v?PVIT{ zVFBil##S-9-D6ubV1cNs;158n2&_76FT&|@OLZZ#rvs2?s|Z78C=Ol;dxc1RoX3t3 z32T5eVJ{Z}%>!X>ay2(%K=W8-z1(Sg@7ZSO+~KoK5DUtEzB_Z2mPXkdIKN6(C8@nBF7994c-|0Kb@s+r+1?+&(#N!-1-7j z>vutOaLInJV<~>H@L+YZPWN0}!LGC*vbx_46Htch*s!PB)`W)rI_a`00nsPVCol^^ zWYM&)rnW5QWdo1xI~>~Go&W_6Mp8luYavecMXp-=FNVraKY@7c|8V?+$X2Yl9pB~bsd%@ zB|jK5`p@zh)=;J7Q3J&n1A(t;ZPu2_Z5H>*54zjB4(s^;fYH)q&?o_* _baseImagesPath + '/logos/logo-horizontal-$_themeSuffix.svg'; - static const String logoLoadingAnimation = - _baseAnimationsPath + '/indicator.riv'; + static String get logoLoadingAnimation => + _baseAnimationsPath + '/indicator-$_themeSuffix.riv'; static String get businessCategoryIcon => _baseImagesPath + '/categories/business-$_themeSuffix.svg'; diff --git a/lib/utils/actions_sheet.dart b/lib/utils/actions_sheet.dart index f3b333b..9ad255f 100644 --- a/lib/utils/actions_sheet.dart +++ b/lib/utils/actions_sheet.dart @@ -24,7 +24,7 @@ class ActionSheetUtils { padding: EdgeInsets.symmetric( horizontal: MediaQuery.of(context).size.width / 3, ), - child: const RiveAnimation.asset(Assets.logoLoadingAnimation), + child: RiveAnimation.asset(Assets.logoLoadingAnimation), // ), ), ); diff --git a/pubspec.yaml b/pubspec.yaml index 81a0276..636d094 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -103,7 +103,8 @@ flutter: - lib/assets/images/themes/theme-dark.svg - lib/assets/images/records/record-dark.svg - lib/assets/images/records/record-light.svg - - lib/assets/animations/indicator.riv + - lib/assets/animations/indicator-light.riv + - lib/assets/animations/indicator-dark.riv From 07e009f5bdec5b0a939986d9ce65323c78404d9a Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 5 Jan 2022 14:21:10 +0330 Subject: [PATCH 063/273] D1APP-1 dark theme light error updated --- lib/config/theme_data.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/config/theme_data.dart b/lib/config/theme_data.dart index 49b438c..5691739 100644 --- a/lib/config/theme_data.dart +++ b/lib/config/theme_data.dart @@ -213,7 +213,7 @@ extension DidvanColorScheme on ColorScheme { // Error and success colors Color get errorLight => brightness == Brightness.dark - ? const Color(0xFFF0C9CD) + ? error.withOpacity(0.05) : const Color(0xFFFFF8F8); Color get successLight => brightness == Brightness.dark ? const Color(0xFFBBD6B4) From ba321e423354cefc15eb3b5b02fdc33d8b6b8562 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 5 Jan 2022 14:21:49 +0330 Subject: [PATCH 064/273] D1APP-43 username validation added --- .../authentication/screens/username.dart | 39 ++++++++++++------- 1 file changed, 26 insertions(+), 13 deletions(-) diff --git a/lib/pages/authentication/screens/username.dart b/lib/pages/authentication/screens/username.dart index 3c7b8e6..be3dd43 100644 --- a/lib/pages/authentication/screens/username.dart +++ b/lib/pages/authentication/screens/username.dart @@ -6,34 +6,47 @@ import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; -class UsernameInput extends StatelessWidget { +class UsernameInput extends StatefulWidget { const UsernameInput({ Key? key, }) : super(key: key); + @override + State createState() => _UsernameInputState(); +} + +class _UsernameInputState extends State { + final _formKey = GlobalKey(); @override Widget build(BuildContext context) { final AuthenticationState state = context.read(); return AuthenticationLayout( children: [ - DidvanTextField( - initialValue: state.username, - title: 'نام کاربری یا شماره موبایل', - hintText: 'نام کاربری یا شماره موبایل', - textAlign: TextAlign.center, - validator: (value) => value!.length < 4 - ? 'نام کاربری نمی‌تواند از 4 کاراکتر کوچکتر باشد' - : null, - onChanged: (value) { - state.username = value; - }, + Form( + key: _formKey, + child: DidvanTextField( + initialValue: state.username, + title: 'نام کاربری یا شماره موبایل', + hintText: 'نام کاربری یا شماره موبایل', + textAlign: TextAlign.center, + validator: (value) => value!.length < 4 + ? 'نام کاربری نمی‌تواند از 4 کاراکتر کوچکتر باشد' + : null, + onChanged: (value) { + state.username = value; + }, + ), ), const SizedBox( height: 20, ), DidvanButton( title: 'ورود', - onPressed: state.confirmUsername, + onPressed: () { + if (_formKey.currentState!.validate()) { + state.confirmUsername(); + } + }, ), const Spacer(), Padding( From 4e53e07a944481c021bea2cd66fc1462456a6864 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 5 Jan 2022 14:23:54 +0330 Subject: [PATCH 065/273] bug fixes --- lib/pages/splash/splash.dart | 4 ++++ lib/services/storage/storage.dart | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/pages/splash/splash.dart b/lib/pages/splash/splash.dart index 7ab9d3d..5ea69af 100644 --- a/lib/pages/splash/splash.dart +++ b/lib/pages/splash/splash.dart @@ -4,6 +4,7 @@ import 'package:didvan/providers/theme_provider.dart'; import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/services/app_initalizer.dart'; +import 'package:didvan/services/network/request.dart'; import 'package:didvan/utils/actions_sheet.dart'; import 'package:didvan/widgets/logos/didvan_horizontal_logo.dart'; import 'package:flutter/material.dart'; @@ -38,6 +39,9 @@ class _SplashState extends State { }), ); final String? token = await context.read().setAndGetToken(); + if (token != null) { + RequestService.token = token; + } await Future.delayed(const Duration(seconds: 2)); Navigator.of(context).pushReplacementNamed( token == null ? Routes.authenticaion : Routes.home, diff --git a/lib/services/storage/storage.dart b/lib/services/storage/storage.dart index 0f1a673..eaca3a5 100644 --- a/lib/services/storage/storage.dart +++ b/lib/services/storage/storage.dart @@ -1,8 +1,8 @@ import 'package:hive/hive.dart'; class StorageService { - static late final String appDocsDir; - static late final String appTempsDir; + static late String appDocsDir; + static late String appTempsDir; static Future setValue({ required String key, From fcfe882d40e644f7a4b86db399306f2c5d7ea2fa Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 5 Jan 2022 14:37:42 +0330 Subject: [PATCH 066/273] D1APP-1 new colors applied --- lib/config/theme_data.dart | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/lib/config/theme_data.dart b/lib/config/theme_data.dart index 5691739..ba5ac5c 100644 --- a/lib/config/theme_data.dart +++ b/lib/config/theme_data.dart @@ -185,15 +185,17 @@ extension DidvanColorScheme on ColorScheme { Color get caption => brightness == Brightness.dark ? const Color(0xFFBBBBBB) : const Color(0xFF666666); - Color get hint => const Color(0xFFBBBBBB); + Color get hint => brightness == Brightness.dark + ? const Color(0xFF7A7A7A) + : const Color(0xFFBBBBBB); Color get disabledText => brightness == Brightness.dark - ? const Color(0xFF666666) + ? const Color(0xFF5C5C5C) : const Color(0xFFE0E0E0); Color get border => brightness == Brightness.dark - ? const Color(0xFF666666) + ? const Color(0xFF5C5C5C) : const Color(0xFFE0E0E0); Color get cardBorder => brightness == Brightness.dark - ? const Color(0xFF666666) + ? const Color(0xFF5C5C5C) : const Color(0xFFEBEBEB); Color get disabledBackground => brightness == Brightness.dark ? const Color(0xFF1F1F1F) @@ -213,7 +215,7 @@ extension DidvanColorScheme on ColorScheme { // Error and success colors Color get errorLight => brightness == Brightness.dark - ? error.withOpacity(0.05) + ? const Color(0xFF2B2325) : const Color(0xFFFFF8F8); Color get successLight => brightness == Brightness.dark ? const Color(0xFFBBD6B4) From 1e4ae8e5dbec122d87c4f633940cfe3f9ea3bce4 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 5 Jan 2022 16:28:44 +0330 Subject: [PATCH 067/273] shimmer placeholder component --- lib/widgets/shimmer_placeholder.dart | 34 ++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 lib/widgets/shimmer_placeholder.dart diff --git a/lib/widgets/shimmer_placeholder.dart b/lib/widgets/shimmer_placeholder.dart new file mode 100644 index 0000000..502c094 --- /dev/null +++ b/lib/widgets/shimmer_placeholder.dart @@ -0,0 +1,34 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; +import 'package:flutter/material.dart'; +import 'package:skeleton_text/skeleton_text.dart'; + +class ShimmerPlaceholder extends StatelessWidget { + final double? height; + final double? width; + final BorderRadius borderRadius; + + const ShimmerPlaceholder({ + Key? key, + this.height, + this.width, + this.borderRadius = DesignConfig.lowBorderRadius, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return SkeletonAnimation( + borderRadius: borderRadius, + shimmerColor: Theme.of(context).colorScheme.secondCTA, + gradientColor: Theme.of(context).colorScheme.cardBorder, + child: Container( + height: height, + width: width, + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.disabledBackground, + borderRadius: borderRadius, + ), + ), + ); + } +} From f906c1cfa2709e8429876a3cc4c24d0fcb9f8cb4 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 5 Jan 2022 17:08:40 +0330 Subject: [PATCH 068/273] sliver state handler component (beta) --- lib/widgets/sliver_state_handler.dart | 45 +++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 lib/widgets/sliver_state_handler.dart diff --git a/lib/widgets/sliver_state_handler.dart b/lib/widgets/sliver_state_handler.dart new file mode 100644 index 0000000..2c2f4e1 --- /dev/null +++ b/lib/widgets/sliver_state_handler.dart @@ -0,0 +1,45 @@ +import 'package:didvan/models/enums.dart'; +import 'package:didvan/providers/core_provider.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; + +class SliverStateHandler extends SliverList { + final T state; + final Widget Function(BuildContext context, T state, int index) builder; + final int childCount; + final VoidCallback? onRefresh; + final bool enableEmptyState; + final Widget? emptyState; + final Widget? placeholder; + SliverStateHandler({ + Key? key, + required this.builder, + required this.childCount, + this.placeholder, + this.emptyState, + this.enableEmptyState = false, + this.onRefresh, + required this.state, + }) : super( + key: key, + delegate: SliverChildBuilderDelegate( + (context, index) { + if (state.appState == AppState.failed) { + return const DidvanText('مشکل اتصال'); + } + if (enableEmptyState) { + return emptyState; + } + if (state.appState == AppState.busy) { + return placeholder; + } + return builder(context, state, index); + }, + childCount: state.appState == AppState.idle + ? childCount + : state.appState == AppState.busy + ? 3 + : 1, + ), + ); +} From 0acafc58aba552cb58020f0d36d5f7eefebe796a Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 5 Jan 2022 18:15:00 +0330 Subject: [PATCH 069/273] stylizable item title component --- lib/widgets/item_title.dart | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/widgets/item_title.dart b/lib/widgets/item_title.dart index 1ed15ad..1c0a89d 100644 --- a/lib/widgets/item_title.dart +++ b/lib/widgets/item_title.dart @@ -4,6 +4,7 @@ import 'package:flutter/material.dart'; class ItemTitle extends StatelessWidget { final String title; + final TextStyle? style; final IconData? icon; final Color? color; @@ -12,6 +13,7 @@ class ItemTitle extends StatelessWidget { required this.title, this.icon, this.color, + this.style, }) : super(key: key); @override @@ -26,7 +28,7 @@ class ItemTitle extends StatelessWidget { if (icon != null) const SizedBox(width: 4), DidvanText( title, - style: Theme.of(context).textTheme.subtitle1, + style: style ?? Theme.of(context).textTheme.subtitle1, color: color ?? Theme.of(context).colorScheme.title, ) ], From 325f82e52b14ff9f7aad46e4d8b319fd8f5f0edb Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 5 Jan 2022 18:43:44 +0330 Subject: [PATCH 070/273] D1APP-16 bottom sheet bug fixed (update file name) --- lib/utils/{actions_sheet.dart => action_sheet.dart} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename lib/utils/{actions_sheet.dart => action_sheet.dart} (98%) diff --git a/lib/utils/actions_sheet.dart b/lib/utils/action_sheet.dart similarity index 98% rename from lib/utils/actions_sheet.dart rename to lib/utils/action_sheet.dart index 9ad255f..380f471 100644 --- a/lib/utils/actions_sheet.dart +++ b/lib/utils/action_sheet.dart @@ -109,7 +109,7 @@ class ActionSheetUtils { style: ButtonStyleMode.flat, ), ), - const SizedBox(width: 20), + if (data.hasDismissButton) const SizedBox(width: 20), Expanded( child: DidvanButton( style: ButtonStyleMode.primary, From 32ee689fe53a04b97d9473e709c1751f5f6633d6 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 5 Jan 2022 18:57:50 +0330 Subject: [PATCH 071/273] sliver state handler padding support --- lib/widgets/sliver_state_handler.dart | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/lib/widgets/sliver_state_handler.dart b/lib/widgets/sliver_state_handler.dart index 2c2f4e1..1244695 100644 --- a/lib/widgets/sliver_state_handler.dart +++ b/lib/widgets/sliver_state_handler.dart @@ -11,15 +11,17 @@ class SliverStateHandler extends SliverList { final bool enableEmptyState; final Widget? emptyState; final Widget? placeholder; + final EdgeInsets? itemPadding; SliverStateHandler({ Key? key, + required this.state, required this.builder, required this.childCount, + this.itemPadding, this.placeholder, this.emptyState, this.enableEmptyState = false, this.onRefresh, - required this.state, }) : super( key: key, delegate: SliverChildBuilderDelegate( @@ -31,9 +33,15 @@ class SliverStateHandler extends SliverList { return emptyState; } if (state.appState == AppState.busy) { - return placeholder; + return Padding( + padding: itemPadding ?? const EdgeInsets.all(0), + child: placeholder, + ); } - return builder(context, state, index); + return Padding( + padding: itemPadding ?? const EdgeInsets.all(0), + child: builder(context, state, index), + ); }, childCount: state.appState == AppState.idle ? childCount From 6e13f37ede758611641c3cd8913b784687d7a7dd Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 5 Jan 2022 19:01:44 +0330 Subject: [PATCH 072/273] D1APP-16 action sheet util filepath update --- lib/pages/authentication/authentication_state.dart | 2 +- lib/pages/home/profile/settings/settings.dart | 2 +- lib/pages/splash/splash.dart | 2 +- lib/providers/core_provider.dart | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/pages/authentication/authentication_state.dart b/lib/pages/authentication/authentication_state.dart index d26ecc3..b6074ee 100644 --- a/lib/pages/authentication/authentication_state.dart +++ b/lib/pages/authentication/authentication_state.dart @@ -3,7 +3,7 @@ import 'package:didvan/models/view/alert_data.dart'; import 'package:didvan/providers/core_provider.dart'; import 'package:didvan/services/network/request.dart'; import 'package:didvan/services/network/request_helper.dart'; -import 'package:didvan/utils/actions_sheet.dart'; +import 'package:didvan/utils/action_sheet.dart'; class AuthenticationState extends CoreProvier { int _currentPageIndex = 0; diff --git a/lib/pages/home/profile/settings/settings.dart b/lib/pages/home/profile/settings/settings.dart index 3c79c46..7c30e8e 100644 --- a/lib/pages/home/profile/settings/settings.dart +++ b/lib/pages/home/profile/settings/settings.dart @@ -9,7 +9,7 @@ import 'package:didvan/models/view/app_bar_data.dart'; import 'package:didvan/pages/home/profile/settings/settings_state.dart'; import 'package:didvan/pages/home/profile/widgets/menu_item.dart'; import 'package:didvan/providers/theme_provider.dart'; -import 'package:didvan/utils/actions_sheet.dart'; +import 'package:didvan/utils/action_sheet.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/scaffold.dart'; diff --git a/lib/pages/splash/splash.dart b/lib/pages/splash/splash.dart index 5ea69af..8fe2b63 100644 --- a/lib/pages/splash/splash.dart +++ b/lib/pages/splash/splash.dart @@ -5,7 +5,7 @@ import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/services/app_initalizer.dart'; import 'package:didvan/services/network/request.dart'; -import 'package:didvan/utils/actions_sheet.dart'; +import 'package:didvan/utils/action_sheet.dart'; import 'package:didvan/widgets/logos/didvan_horizontal_logo.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; diff --git a/lib/providers/core_provider.dart b/lib/providers/core_provider.dart index 5870c8f..820387d 100644 --- a/lib/providers/core_provider.dart +++ b/lib/providers/core_provider.dart @@ -1,5 +1,5 @@ import 'package:didvan/models/enums.dart'; -import 'package:didvan/utils/actions_sheet.dart'; +import 'package:didvan/utils/action_sheet.dart'; import 'package:flutter/cupertino.dart'; class CoreProvier with ChangeNotifier { From fdff9669a6897a0335118909d4d32b69ae8cea40 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 5 Jan 2022 19:03:31 +0330 Subject: [PATCH 073/273] D1APP-48 radar overview model --- lib/models/radar_overview/category.dart | 16 ++++++ lib/models/radar_overview/radar_overview.dart | 53 +++++++++++++++++++ 2 files changed, 69 insertions(+) create mode 100644 lib/models/radar_overview/category.dart create mode 100644 lib/models/radar_overview/radar_overview.dart diff --git a/lib/models/radar_overview/category.dart b/lib/models/radar_overview/category.dart new file mode 100644 index 0000000..6968552 --- /dev/null +++ b/lib/models/radar_overview/category.dart @@ -0,0 +1,16 @@ +class Category { + final int id; + final String label; + + const Category({required this.id, required this.label}); + + factory Category.fromJson(Map json) => Category( + id: json['id'], + label: json['label'], + ); + + Map toJson() => { + 'id': id, + 'label': label, + }; +} diff --git a/lib/models/radar_overview/radar_overview.dart b/lib/models/radar_overview/radar_overview.dart new file mode 100644 index 0000000..4b9aa81 --- /dev/null +++ b/lib/models/radar_overview/radar_overview.dart @@ -0,0 +1,53 @@ +import 'category.dart'; + +class RadarOverview { + final int id; + final String image; + final String title; + final String description; + final int timeToRead; + final String createdAt; + final bool forManagers; + final bool marked; + final List categories; + + const RadarOverview({ + required this.id, + required this.image, + required this.title, + required this.description, + required this.timeToRead, + required this.createdAt, + required this.forManagers, + required this.marked, + required this.categories, + }); + + factory RadarOverview.fromJson(Map json) => RadarOverview( + id: json['id'], + image: json['image'], + title: json['title'], + description: json['description'], + timeToRead: json['timeToRead'], + createdAt: json['createdAt'], + forManagers: json['forManagers'], + marked: json['marked'], + categories: List.from( + json['categories'].map( + (category) => Category.fromJson(category), + ), + ), + ); + + Map toJson() => { + 'id': id, + 'image': image, + 'title': title, + 'description': description, + 'timeToRead': timeToRead, + 'createdAt': createdAt, + 'forManagers': forManagers, + 'marked': marked, + 'categories': categories.map((e) => e.toJson()).toList(), + }; +} From 1c0faf0db5483b708213f4b83a548dbb0011c6f1 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 5 Jan 2022 19:20:14 +0330 Subject: [PATCH 074/273] D1APP-22 new url & update token storing --- lib/services/network/request.dart | 2 +- lib/services/network/request_helper.dart | 32 ++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) diff --git a/lib/services/network/request.dart b/lib/services/network/request.dart index e358dcd..dc23f9b 100644 --- a/lib/services/network/request.dart +++ b/lib/services/network/request.dart @@ -6,7 +6,7 @@ import 'package:http/http.dart' as http; class RequestService { static late String _token; - static set token(value) => _token = value; + static set token(String value) => _token = value; Map get result => _body['result'] ?? const {}; Map get errors => _body['errors'] ?? const {}; diff --git a/lib/services/network/request_helper.dart b/lib/services/network/request_helper.dart index b33d39d..48be3b6 100644 --- a/lib/services/network/request_helper.dart +++ b/lib/services/network/request_helper.dart @@ -3,4 +3,36 @@ class RequestHelper { static const String confirmUsername = _baseUrl + '/user/confirmUsername'; static const String login = _baseUrl + '/user/login'; + + static String getRadarOverviews({ + required int page, + int? radarId, + String? startDate, + String? endDate, + String? search, + }) => + _baseUrl + + '/radar' + + _urlConcatGenerator([ + MapEntry('page', page.toString()), + MapEntry('start', startDate), + MapEntry('end', endDate), + MapEntry('search', search), + MapEntry('radar', radarId?.toString()), + ]); + + static String _urlConcatGenerator(List> additions) { + String result = ''; + additions.removeWhere((element) => element.value == null); + if (additions.isNotEmpty) { + result += '?'; + for (var i = 0; i < additions.length; i++) { + result += (additions[i].key + additions[i].value!); + if (i != additions.length) { + result += '&'; + } + } + } + return result; + } } From df40160c55d7556d3884b36e6e9db8f8a1857b4f Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 5 Jan 2022 19:41:17 +0330 Subject: [PATCH 075/273] D1APP-16 bottom sheet size configured --- lib/utils/action_sheet.dart | 93 +++++++++++++++++++------------------ 1 file changed, 49 insertions(+), 44 deletions(-) diff --git a/lib/utils/action_sheet.dart b/lib/utils/action_sheet.dart index 380f471..a44f4a0 100644 --- a/lib/utils/action_sheet.dart +++ b/lib/utils/action_sheet.dart @@ -58,6 +58,8 @@ class ActionSheetUtils { static Future showBottomSheet({required ActionSheetData data}) async { await showModalBottomSheet( + backgroundColor: Colors.transparent, + isScrollControlled: true, context: context, builder: (context) => Container( padding: const EdgeInsets.all(20), @@ -69,57 +71,60 @@ class ActionSheetUtils { ), ), ), - child: Column( - mainAxisSize: MainAxisSize.min, - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Center( - child: Container( - height: 3, - width: 50, - color: Theme.of(context).colorScheme.hint, + child: SingleChildScrollView( + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Center( + child: Container( + height: 3, + width: 50, + color: Theme.of(context).colorScheme.hint, + ), ), - ), - const SizedBox(height: 8), - Row( - children: [ - if (data.titleIcon != null) - Icon( - data.titleIcon, + const SizedBox(height: 8), + Row( + children: [ + if (data.titleIcon != null) + Icon( + data.titleIcon, + color: data.titleColor ?? + Theme.of(context).colorScheme.title, + ), + if (data.titleIcon != null) const SizedBox(width: 8), + DidvanText( + data.title, + style: Theme.of(context).textTheme.subtitle1, color: data.titleColor ?? Theme.of(context).colorScheme.title, - ), - if (data.titleIcon != null) const SizedBox(width: 8), - DidvanText( - data.title, - style: Theme.of(context).textTheme.subtitle1, - color: data.titleColor ?? Theme.of(context).colorScheme.title, - ) - ], - ), - const SizedBox(height: 28), - data.content, - const SizedBox(height: 28), - Row( - children: [ - if (data.hasDismissButton) + ) + ], + ), + const SizedBox(height: 28), + data.content, + const SizedBox(height: 28), + Row( + children: [ + if (data.hasDismissButton) + Expanded( + child: DidvanButton( + title: data.dismissTitle ?? 'بازگشت', + style: ButtonStyleMode.flat, + ), + ), + if (data.hasDismissButton) const SizedBox(width: 20), Expanded( child: DidvanButton( - title: data.dismissTitle ?? 'بازگشت', - style: ButtonStyleMode.flat, + style: ButtonStyleMode.primary, + onPressed: () {}, + title: data.confrimTitle ?? 'تایید', ), ), - if (data.hasDismissButton) const SizedBox(width: 20), - Expanded( - child: DidvanButton( - style: ButtonStyleMode.primary, - onPressed: () {}, - title: data.confrimTitle ?? 'تایید', - ), - ), - ], - ), - ], + ], + ), + ], + ), ), ), ); From af67f2d476a53a20e757e7911d13475145aa6c39 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 5 Jan 2022 19:51:10 +0330 Subject: [PATCH 076/273] D1APP-1 checkbox theme added --- lib/config/theme_data.dart | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/lib/config/theme_data.dart b/lib/config/theme_data.dart index ba5ac5c..d15a530 100644 --- a/lib/config/theme_data.dart +++ b/lib/config/theme_data.dart @@ -13,6 +13,15 @@ class LightThemeConfig { fontFamily: 'Dana-FA', textTheme: _textTheme, cardColor: _colorScheme.surface, + checkboxTheme: CheckboxThemeData( + fillColor: MaterialStateProperty.all(_colorScheme.primary), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(4), + ), + ), + iconTheme: IconThemeData( + color: _colorScheme.text, + ), ); static final TextTheme _textTheme = const TextTheme( @@ -85,6 +94,12 @@ class DarkThemeConfig { iconTheme: IconThemeData( color: _colorScheme.text, ), + checkboxTheme: CheckboxThemeData( + fillColor: MaterialStateProperty.all(_colorScheme.primary), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(4), + ), + ), cardColor: _colorScheme.surface, ); From eca4f56ad4a2f97f99dab078fe078938ad7392bb Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Thu, 6 Jan 2022 14:02:37 +0330 Subject: [PATCH 077/273] didvan checkbox component --- lib/widgets/didvan/checkbox.dart | 59 ++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 lib/widgets/didvan/checkbox.dart diff --git a/lib/widgets/didvan/checkbox.dart b/lib/widgets/didvan/checkbox.dart new file mode 100644 index 0000000..588234c --- /dev/null +++ b/lib/widgets/didvan/checkbox.dart @@ -0,0 +1,59 @@ +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; + +class DidvanCheckbox extends StatefulWidget { + final String title; + final bool? value; + final void Function(bool value) onChanged; + const DidvanCheckbox({ + Key? key, + required this.title, + required this.value, + required this.onChanged, + }) : super(key: key); + + @override + State createState() => _DidvanCheckboxState(); +} + +class _DidvanCheckboxState extends State { + bool _value = false; + + @override + void initState() { + if (widget.value != null) { + _value = widget.value!; + } + super.initState(); + } + + @override + Widget build(BuildContext context) { + return GestureDetector( + onTap: () { + setState(() { + _value = !_value; + }); + widget.onChanged(_value); + }, + child: Container( + color: Colors.transparent, + child: Row( + children: [ + Checkbox( + value: _value, + onChanged: (value) { + setState(() { + _value = value ?? false; + }); + widget.onChanged(_value); + }, + ), + const SizedBox(width: 8), + DidvanText(widget.title), + ], + ), + ), + ); + } +} From 57f2656416b14439b369a6e7bba5f198cfbca776 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Thu, 6 Jan 2022 16:04:28 +0330 Subject: [PATCH 078/273] date picker button component --- lib/widgets/date_picker_button.dart | 68 +++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 lib/widgets/date_picker_button.dart diff --git a/lib/widgets/date_picker_button.dart b/lib/widgets/date_picker_button.dart new file mode 100644 index 0000000..5a7366f --- /dev/null +++ b/lib/widgets/date_picker_button.dart @@ -0,0 +1,68 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/utils/date_time.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; +import 'package:persian_number_utility/persian_number_utility.dart'; + +class DatePickerButton extends StatefulWidget { + final String? initialValue; + final String? emptyText; + final void Function(String? date) onPicked; + final String? firstDate; + final String? lastDate; + const DatePickerButton({ + Key? key, + this.initialValue, + required this.onPicked, + this.firstDate, + this.lastDate, + this.emptyText, + }) : super(key: key); + + @override + State createState() => _DatePickerButtonState(); +} + +class _DatePickerButtonState extends State { + String? pickedDate; + + @override + void initState() { + pickedDate = widget.initialValue; + super.initState(); + } + + @override + Widget build(BuildContext context) { + return Expanded( + child: GestureDetector( + onTap: () async { + pickedDate = await DateTimeUtils.showDatePicker( + initialDate: pickedDate, + startDate: widget.firstDate, + endDate: widget.lastDate, + ); + if (pickedDate == null) { + return; + } + setState(() {}); + widget.onPicked(pickedDate); + }, + child: Container( + padding: const EdgeInsets.all(12), + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.splash, + borderRadius: DesignConfig.lowBorderRadius, + border: Border.all(color: Theme.of(context).colorScheme.border), + ), + child: DidvanText( + pickedDate == null + ? widget.emptyText ?? 'تاریخ' + : pickedDate!.toPersianDate(), + ), + ), + ), + ); + } +} From e75fdf0ee80526355f1f2411c6f1f8ae0827c52d Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Thu, 6 Jan 2022 16:06:56 +0330 Subject: [PATCH 079/273] D1APP-38 radar page (dynamic) --- lib/config/theme_data.dart | 1 + lib/models/enums.dart | 6 + lib/pages/home/radar/radar.dart | 277 +++++++++++++++--- lib/pages/home/radar/radar_state.dart | 58 +++- lib/pages/home/radar/widgets/radar_item.dart | 135 +++++---- .../home/radar/widgets/search_field.dart | 5 +- lib/services/network/request_helper.dart | 37 ++- lib/utils/action_sheet.dart | 2 +- lib/utils/date_time.dart | 21 ++ pubspec.lock | 14 + pubspec.yaml | 2 + 11 files changed, 433 insertions(+), 125 deletions(-) diff --git a/lib/config/theme_data.dart b/lib/config/theme_data.dart index d15a530..c326176 100644 --- a/lib/config/theme_data.dart +++ b/lib/config/theme_data.dart @@ -95,6 +95,7 @@ class DarkThemeConfig { color: _colorScheme.text, ), checkboxTheme: CheckboxThemeData( + materialTapTargetSize: MaterialTapTargetSize.shrinkWrap, fillColor: MaterialStateProperty.all(_colorScheme.primary), shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(4), diff --git a/lib/models/enums.dart b/lib/models/enums.dart index 1859789..1a7fd8d 100644 --- a/lib/models/enums.dart +++ b/lib/models/enums.dart @@ -9,3 +9,9 @@ enum ButtonStyleMode { primary, flat, } + +enum ALertType { + error, + info, + success, +} diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index 81060b9..a0e9674 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -1,12 +1,28 @@ +import 'dart:async'; + import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/models/enums.dart'; +import 'package:didvan/models/radar_category.dart'; +import 'package:didvan/models/view/action_sheet_data.dart'; +import 'package:didvan/pages/home/radar/radar_state.dart'; import 'package:didvan/pages/home/radar/widgets/categories_gird.dart'; import 'package:didvan/pages/home/radar/widgets/categories_list.dart'; import 'package:didvan/pages/home/radar/widgets/radar_item.dart'; import 'package:didvan/pages/home/radar/widgets/search_field.dart'; import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; +import 'package:didvan/utils/action_sheet.dart'; +import 'package:didvan/widgets/date_picker_button.dart'; +import 'package:didvan/widgets/didvan/card.dart'; +import 'package:didvan/widgets/didvan/checkbox.dart'; +import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/item_title.dart'; +import 'package:didvan/widgets/shimmer_placeholder.dart'; +import 'package:didvan/widgets/sliver_state_handler.dart'; import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; class Radar extends StatefulWidget { const Radar({Key? key}) : super(key: key); @@ -21,64 +37,105 @@ class _RadarState extends State { bool _isColapsed = false; bool _isAnimating = false; + Timer? _timer; + @override void initState() { _scrollController.addListener(() async { _handleAnimations(); }); + Future.delayed(Duration.zero, () { + context.read().getRadarOverviews(page: 1); + }); super.initState(); } @override Widget build(BuildContext context) { return Scaffold( - body: Stack( - children: [ - CustomScrollView( - physics: _isAnimating - ? const NeverScrollableScrollPhysics() - : const ScrollPhysics(), - controller: _scrollController, - slivers: [ - const SliverToBoxAdapter(child: LogoAppBar()), - SliverPadding( - padding: const EdgeInsets.only(left: 16, right: 16, bottom: 16), - sliver: SliverToBoxAdapter( - child: SearchField( - title: 'رادار', - onChanged: (value) {}, + body: Consumer( + child: SliverPadding( + padding: const EdgeInsets.only(left: 16, right: 16, bottom: 16), + sliver: SliverToBoxAdapter( + child: Row( + children: [ + Expanded( + child: SearchField(title: 'رادار', onChanged: _onChanged), + ), + const SizedBox(width: 8), + GestureDetector( + onTap: _showFilterBottomSheet, + child: const Icon( + DidvanIcons.filter_regular, + size: 32, ), ), - ), - SliverPadding( - padding: const EdgeInsets.only(top: 284, right: 16, bottom: 20), - sliver: SliverToBoxAdapter( - child: DidvanText( - 'آخرین رصد', - style: Theme.of(context).textTheme.subtitle1, - color: Theme.of(context).colorScheme.title, - ), - ), - ), - SliverList( - delegate: SliverChildBuilderDelegate( - (context, index) => const Padding( - padding: EdgeInsets.only(bottom: 20), - child: RadarItem(), - ), - childCount: 10, - ), - ), - ], + ], + ), ), - CategoriesRow1(isColapsed: _isColapsed), - CategoriesRow2(isColapsed: _isColapsed), - CategoriesList(isColapsed: _isColapsed), - ], + ), + builder: (context, state, child) => Stack( + children: [ + CustomScrollView( + physics: _isAnimating || + (state.appState == AppState.busy && state.radars.isEmpty) + ? const NeverScrollableScrollPhysics() + : const ScrollPhysics(), + controller: _scrollController, + slivers: [ + const SliverToBoxAdapter(child: LogoAppBar()), + child!, + if (!state.isFiltering) + const SliverToBoxAdapter( + child: SizedBox(height: 284), + ), + if (state.radars.isNotEmpty && !state.isFiltering) + SliverPadding( + padding: const EdgeInsets.only(right: 16, bottom: 20), + sliver: SliverToBoxAdapter( + child: DidvanText( + 'آخرین رصد', + style: Theme.of(context).textTheme.subtitle1, + color: Theme.of(context).colorScheme.title, + ), + ), + ), + SliverStateHandler( + state: state, + itemPadding: const EdgeInsets.only( + bottom: 20, + left: 16, + right: 16, + ), + placeholder: const _RadarItemPlaceholder(), + builder: (context, state, index) => RadarItem( + radar: state.radars[index], + ), + childCount: state.radars.length, + ), + ], + ), + CategoriesRow1(isColapsed: _isColapsed || state.isFiltering), + CategoriesRow2(isColapsed: _isColapsed || state.isFiltering), + if (!state.isFiltering) CategoriesList(isColapsed: _isColapsed), + ], + ), ), ); } + void _onChanged(String value) { + context.read().resetFilters(); + if (value.length < 4 && value.isNotEmpty) return; + _timer?.cancel(); + _timer = Timer(const Duration(seconds: 2), () { + context.read().getRadarOverviews( + page: 1, + search: value, + ); + }); + } + void _handleAnimations() async { if (_isAnimating) return; final double position = _scrollController.position.pixels; @@ -106,4 +163,144 @@ class _RadarState extends State { setState(() {}); } } + + Future _showFilterBottomSheet() async { + final state = context.read(); + await ActionSheetUtils.showBottomSheet( + data: ActionSheetData( + title: 'فیلتر جستجو', + titleIcon: DidvanIcons.filter_regular, + hasDismissButton: false, + confrimTitle: 'نمایش نتایج', + onConfirmed: () { + Navigator.of(context).pop(); + state.getRadarOverviews(page: 1, filter: true); + }, + content: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + ItemTitle( + title: 'تاریخ رادار', + style: Theme.of(context).textTheme.bodyText2, + icon: DidvanIcons.calendar_range_regular, + ), + const SizedBox(height: 8), + StatefulBuilder( + builder: (context, setState) => Row( + children: [ + DatePickerButton( + initialValue: state.startDate, + emptyText: 'از تاریخ', + onPicked: (date) => setState(() => state.startDate = date), + lastDate: state.endDate, + ), + const SizedBox(width: 8), + DatePickerButton( + initialValue: state.endDate, + emptyText: 'تا تاریخ', + onPicked: (date) => setState(() => state.endDate = date), + firstDate: state.startDate, + ), + ], + ), + ), + const SizedBox(height: 28), + ItemTitle( + title: 'دسته بندی', + icon: DidvanIcons.radar_regular, + style: Theme.of(context).textTheme.bodyText2, + ), + const SizedBox(height: 12), + Wrap( + children: [ + for (var i = 0; i < state.categories.length; i++) + SizedBox( + width: (MediaQuery.of(context).size.width - 40) / 2, + child: DidvanCheckbox( + title: state.categories[i].title, + value: state.selectedCats.contains(state.categories[i]), + onChanged: (value) { + if (value) { + state.selectedCats.add(state.categories[i]); + return; + } + state.selectedCats.remove(state.categories[i]); + }, + ), + ), + ], + ), + ], + ), + ), + ); + } +} + +class _RadarItemPlaceholder extends StatelessWidget { + const _RadarItemPlaceholder({ + Key? key, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return DidvanCard( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const ShimmerPlaceholder( + width: 200, + height: 16, + ), + const SizedBox(height: 8), + const ShimmerPlaceholder(height: 140), + const SizedBox(height: 8), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: const [ + ShimmerPlaceholder( + height: 12, + width: 70, + ), + ShimmerPlaceholder( + height: 12, + width: 70, + ), + ], + ), + const SizedBox(height: 8), + const ShimmerPlaceholder( + height: 16, + ), + const SizedBox(height: 8), + const ShimmerPlaceholder( + height: 16, + ), + const SizedBox(height: 8), + const ShimmerPlaceholder( + height: 16, + ), + const DidvanDivider(), + Row( + children: const [ + ShimmerPlaceholder( + height: 32, + width: 32, + ), + Spacer(), + ShimmerPlaceholder( + height: 32, + width: 32, + ), + SizedBox(width: 16), + ShimmerPlaceholder( + height: 32, + width: 32, + ), + ], + ), + ], + ), + ); + } } diff --git a/lib/pages/home/radar/radar_state.dart b/lib/pages/home/radar/radar_state.dart index 1b84299..1c2806b 100644 --- a/lib/pages/home/radar/radar_state.dart +++ b/lib/pages/home/radar/radar_state.dart @@ -1,12 +1,68 @@ import 'package:didvan/constants/assets.dart'; +import 'package:didvan/models/enums.dart'; import 'package:didvan/models/radar_category.dart'; +import 'package:didvan/models/radar_overview/radar_overview.dart'; import 'package:didvan/providers/core_provider.dart'; +import 'package:didvan/services/network/request.dart'; +import 'package:didvan/services/network/request_helper.dart'; class RadarState extends CoreProvier { + bool isFiltering = false; + String? _lastSearch; + String? startDate; + String? endDate; + final List selectedCats = []; + + final List radars = []; + + void resetFilters() { + startDate = null; + endDate = null; + selectedCats.clear(); + } + + Future getRadarOverviews({ + required int page, + String? search, + bool filter = false, + }) async { + if (search != null && search.isNotEmpty) { + if (_lastSearch == search && !filter) { + return; + } + isFiltering = true; + _lastSearch = search; + } else { + isFiltering = false; + } + if (filter) { + isFiltering = true; + } + appState = AppState.busy; + final RequestService service = RequestService( + RequestHelper.getRadarOverviews( + page: page, + startDate: startDate?.split(' ').first, + endDate: endDate?.split(' ').first, + search: search, + categories: selectedCats.map((e) => e.id).toList(), + ), + ); + await service.httpGet(); + if (service.isSuccess) { + for (var i = 0; i < service.result['radars'].length; i++) { + radars.add(RadarOverview.fromJson(service.result['radars'][i])); + } + appState = AppState.idle; + return; + } + appState = AppState.failed; + } + final List categories = [ RadarCategory( id: 1, - title: 'افتصادی', + title: 'اقتصادی', asset: Assets.economicCategoryIcon, ), RadarCategory( diff --git a/lib/pages/home/radar/widgets/radar_item.dart b/lib/pages/home/radar/widgets/radar_item.dart index b31a91b..0c6a02c 100644 --- a/lib/pages/home/radar/widgets/radar_item.dart +++ b/lib/pages/home/radar/widgets/radar_item.dart @@ -1,6 +1,7 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/models/radar_overview/radar_overview.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; @@ -9,79 +10,77 @@ import 'package:didvan/widgets/skeletun_image.dart'; import 'package:flutter/material.dart'; class RadarItem extends StatelessWidget { - const RadarItem({Key? key}) : super(key: key); + final RadarOverview? radar; + const RadarItem({Key? key, required this.radar}) : super(key: key); @override Widget build(BuildContext context) { - return Padding( - padding: const EdgeInsets.symmetric(horizontal: 16), - child: DidvanCard( - onTap: () => Navigator.of(context).pushNamed(Routes.radarDetails), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Container( - padding: const EdgeInsets.all(4), - decoration: BoxDecoration( - color: Theme.of(context).colorScheme.secondary, - borderRadius: DesignConfig.highBorderRadius, - ), - child: DidvanText( - 'برای مدیران', + return DidvanCard( + onTap: () => Navigator.of(context).pushNamed(Routes.radarDetails), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Container( + padding: const EdgeInsets.all(4), + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.secondary, + borderRadius: DesignConfig.highBorderRadius, + ), + child: DidvanText( + 'برای مدیران', + style: Theme.of(context).textTheme.overline, + color: Theme.of(context).colorScheme.white, + ), + ), + const SizedBox(height: 8), + const DidvanText( + 'نقش مهم فولاد در اقتصاد جهانی', + fontWeight: FontWeight.w600, + ), + const SizedBox(height: 8), + const SkeletonImage( + imageUrl: 'https://wallpapercave.com/wp/wp9373116.jpg', + width: double.infinity, + height: 140, + ), + const SizedBox(height: 8), + Row( + children: [ + DidvanText( + 'رادار کسب و کار', style: Theme.of(context).textTheme.overline, - color: Theme.of(context).colorScheme.white, + color: Theme.of(context).colorScheme.caption, ), - ), - const SizedBox(height: 8), - const DidvanText( - 'نقش مهم فولاد در اقتصاد جهانی', - fontWeight: FontWeight.w600, - ), - const SizedBox(height: 8), - const SkeletonImage( - imageUrl: 'https://wallpapercave.com/wp/wp9373116.jpg', - width: double.infinity, - height: 140, - ), - const SizedBox(height: 8), - Row( - children: [ - DidvanText( - 'رادار کسب و کار', - style: Theme.of(context).textTheme.overline, - color: Theme.of(context).colorScheme.caption, - ), - const Spacer(), - DidvanText( - 'هفته پیش | خواندن 5 دقیقه', - style: Theme.of(context).textTheme.overline, - color: Theme.of(context).colorScheme.caption, - ), - ], - ), - const SizedBox(height: 8), - const DidvanText( - 'صنعت فولاد جوادی مجد سلیمی است پس باید به آن توجه زیادی شود تا بازار به انفجار نرسد. پس جواد مهربانگو باشیم...', - maxLines: 3, - ), - const DidvanDivider(), - Row( - children: const [ - Icon( - DidvanIcons.bookmark_regular, - ), - Spacer(), - DidvanText('2'), - SizedBox(width: 4), - Icon(DidvanIcons.chats_regular), - SizedBox(width: 16), - DidvanText('10'), - SizedBox(width: 4), - Icon(DidvanIcons.evaluation_regular), - ], - ), - ], - ), + const Spacer(), + DidvanText( + 'هفته پیش | خواندن 5 دقیقه', + style: Theme.of(context).textTheme.overline, + color: Theme.of(context).colorScheme.caption, + ), + ], + ), + const SizedBox(height: 8), + const DidvanText( + 'صنعت فولاد جوادی مجد سلیمی است پس باید به آن توجه زیادی شود تا بازار به انفجار نرسد. پس جواد مهربانگو باشیم...', + maxLines: 3, + ), + const DidvanDivider(), + Row( + children: const [ + Icon( + DidvanIcons.bookmark_regular, + ), + Spacer(), + DidvanText('2'), + SizedBox(width: 4), + Icon(DidvanIcons.chats_regular), + SizedBox(width: 16), + DidvanText('10'), + SizedBox(width: 4), + Icon(DidvanIcons.evaluation_regular), + ], + ), + ], ), ); } diff --git a/lib/pages/home/radar/widgets/search_field.dart b/lib/pages/home/radar/widgets/search_field.dart index 85602a8..719a3f2 100644 --- a/lib/pages/home/radar/widgets/search_field.dart +++ b/lib/pages/home/radar/widgets/search_field.dart @@ -4,7 +4,7 @@ import 'package:flutter/material.dart'; class SearchField extends StatefulWidget { final String title; - final void Function(String? value) onChanged; + final void Function(String value) onChanged; const SearchField({Key? key, required this.title, required this.onChanged}) : super(key: key); @@ -47,8 +47,9 @@ class _SearchFieldState extends State { color: Theme.of(context).colorScheme.primary, ), ), - prefixIcon: const Icon( + prefixIcon: Icon( DidvanIcons.search_regular, + color: Theme.of(context).colorScheme.text, ), prefixIconColor: Theme.of(context).colorScheme.inputText, enabledBorder: OutlineInputBorder( diff --git a/lib/services/network/request_helper.dart b/lib/services/network/request_helper.dart index 48be3b6..c0d37fc 100644 --- a/lib/services/network/request_helper.dart +++ b/lib/services/network/request_helper.dart @@ -6,20 +6,31 @@ class RequestHelper { static String getRadarOverviews({ required int page, - int? radarId, + List categories = const [], String? startDate, String? endDate, String? search, - }) => - _baseUrl + - '/radar' + - _urlConcatGenerator([ - MapEntry('page', page.toString()), - MapEntry('start', startDate), - MapEntry('end', endDate), - MapEntry('search', search), - MapEntry('radar', radarId?.toString()), - ]); + }) { + String? cats; + if (categories.isNotEmpty) { + cats = ''; + for (var i = 0; i < categories.length; i++) { + cats = cats! + categories[i].toString(); + if (i != categories.length - 1) { + cats += ','; + } + } + } + return _baseUrl + + '/radar' + + _urlConcatGenerator([ + MapEntry('page', page.toString()), + MapEntry('start', startDate), + MapEntry('end', endDate), + MapEntry('search', search), + MapEntry('categories', cats), + ]); + } static String _urlConcatGenerator(List> additions) { String result = ''; @@ -27,8 +38,8 @@ class RequestHelper { if (additions.isNotEmpty) { result += '?'; for (var i = 0; i < additions.length; i++) { - result += (additions[i].key + additions[i].value!); - if (i != additions.length) { + result += (additions[i].key + '=' + additions[i].value!); + if (i != additions.length - 1) { result += '&'; } } diff --git a/lib/utils/action_sheet.dart b/lib/utils/action_sheet.dart index a44f4a0..a05f319 100644 --- a/lib/utils/action_sheet.dart +++ b/lib/utils/action_sheet.dart @@ -117,7 +117,7 @@ class ActionSheetUtils { Expanded( child: DidvanButton( style: ButtonStyleMode.primary, - onPressed: () {}, + onPressed: data.onConfirmed, title: data.confrimTitle ?? 'تایید', ), ), diff --git a/lib/utils/date_time.dart b/lib/utils/date_time.dart index c603d1a..f49296f 100644 --- a/lib/utils/date_time.dart +++ b/lib/utils/date_time.dart @@ -1,4 +1,6 @@ +import 'package:didvan/config/design_config.dart'; import 'package:flutter/material.dart'; +import 'package:persian_datetime_picker/persian_datetime_picker.dart'; class DateTimeUtils { static TimeOfDay stringToTimeOfDay(String input) => TimeOfDay( @@ -22,4 +24,23 @@ class DateTimeUtils { } return '$minute:$second'; } + + static Future showDatePicker( + {String? initialDate, String? startDate, String? endDate}) async { + final initDate = initialDate == null ? null : DateTime.parse(initialDate); + final initialJalali = Jalali.fromDateTime(initDate ?? DateTime.now()); + final firstDate = Jalali.fromDateTime( + startDate == null ? DateTime(2021) : DateTime.parse(startDate), + ); + final lastDate = Jalali.fromDateTime( + endDate == null ? DateTime.now() : DateTime.parse(endDate), + ); + final Jalali? result = await showPersianDatePicker( + context: DesignConfig.context, + initialDate: initialJalali, + firstDate: firstDate, + lastDate: lastDate, + ); + return result?.toDateTime().toString(); + } } diff --git a/pubspec.lock b/pubspec.lock index 9d580f9..e678844 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -441,6 +441,20 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "3.7.0" + persian_datetime_picker: + dependency: "direct main" + description: + name: persian_datetime_picker + url: "https://pub.dartlang.org" + source: hosted + version: "2.4.0" + persian_number_utility: + dependency: "direct main" + description: + name: persian_number_utility + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.1" petitparser: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 636d094..e588d03 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -58,6 +58,8 @@ dependencies: record_web: ^0.2.1 just_waveform: ^0.0.1 another_flushbar: ^1.10.28 + persian_datetime_picker: ^2.4.0 + persian_number_utility: ^1.1.1 dev_dependencies: flutter_test: From 253a6179de178d405a7be5ff0a875475c1d22d6e Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Fri, 7 Jan 2022 12:19:07 +0330 Subject: [PATCH 080/273] D1APP-38 clear filters button added --- lib/pages/home/radar/radar.dart | 8 +++----- lib/pages/home/radar/radar_state.dart | 1 + lib/utils/action_sheet.dart | 9 ++++++++- lib/widgets/didvan/button.dart | 5 ++++- 4 files changed, 16 insertions(+), 7 deletions(-) diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index a0e9674..29dbccf 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -170,12 +170,10 @@ class _RadarState extends State { data: ActionSheetData( title: 'فیلتر جستجو', titleIcon: DidvanIcons.filter_regular, - hasDismissButton: false, + dismissTitle: 'حذف فیلتر', confrimTitle: 'نمایش نتایج', - onConfirmed: () { - Navigator.of(context).pop(); - state.getRadarOverviews(page: 1, filter: true); - }, + onDismissed: state.resetFilters, + onConfirmed: () => state.getRadarOverviews(page: 1, filter: true), content: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ diff --git a/lib/pages/home/radar/radar_state.dart b/lib/pages/home/radar/radar_state.dart index 1c2806b..3807720 100644 --- a/lib/pages/home/radar/radar_state.dart +++ b/lib/pages/home/radar/radar_state.dart @@ -19,6 +19,7 @@ class RadarState extends CoreProvier { startDate = null; endDate = null; selectedCats.clear(); + getRadarOverviews(page: 1); } Future getRadarOverviews({ diff --git a/lib/utils/action_sheet.dart b/lib/utils/action_sheet.dart index a05f319..8eaece4 100644 --- a/lib/utils/action_sheet.dart +++ b/lib/utils/action_sheet.dart @@ -109,6 +109,10 @@ class ActionSheetUtils { if (data.hasDismissButton) Expanded( child: DidvanButton( + onPressed: () { + Navigator.of(context).pop(); + data.onDismissed?.call(); + }, title: data.dismissTitle ?? 'بازگشت', style: ButtonStyleMode.flat, ), @@ -117,7 +121,10 @@ class ActionSheetUtils { Expanded( child: DidvanButton( style: ButtonStyleMode.primary, - onPressed: data.onConfirmed, + onPressed: () { + Navigator.of(context).pop(); + data.onConfirmed?.call(); + }, title: data.confrimTitle ?? 'تایید', ), ), diff --git a/lib/widgets/didvan/button.dart b/lib/widgets/didvan/button.dart index 7578856..79eaf90 100644 --- a/lib/widgets/didvan/button.dart +++ b/lib/widgets/didvan/button.dart @@ -1,4 +1,5 @@ import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; import 'package:didvan/models/enums.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; @@ -23,7 +24,9 @@ class DidvanButton extends StatelessWidget { borderRadius: DesignConfig.lowBorderRadius, ), height: 48, - color: Theme.of(context).colorScheme.primary, + color: style == ButtonStyleMode.primary + ? Theme.of(context).colorScheme.primary + : Theme.of(context).colorScheme.secondCTA, onPressed: () { FocusScope.of(context).unfocus(); onPressed?.call(); From 064e54c5efecd6d0f04b9cb3741649a51fdb9018 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Fri, 7 Jan 2022 12:36:43 +0330 Subject: [PATCH 081/273] chat -> direct --- lib/constants/app_icons.dart | 6 ++--- .../{chat/chat.dart => direct/direct.dart} | 6 ++--- .../direct_state.dart} | 2 +- .../{chat => direct}/widgets/message_box.dart | 10 ++++---- .../direct_list.dart} | 6 ++--- .../direct_list_state.dart} | 2 +- lib/pages/home/profile/profile.dart | 3 ++- lib/pages/home/radar/widgets/radar_item.dart | 2 +- lib/routes/route_generator.dart | 24 +++++++++---------- lib/routes/routes.dart | 4 ++-- lib/widgets/floating_navigation_bar.dart | 2 +- 11 files changed, 34 insertions(+), 33 deletions(-) rename lib/pages/home/{chat/chat.dart => direct/direct.dart} (85%) rename lib/pages/home/{chat/chat_state.dart => direct/direct_state.dart} (96%) rename lib/pages/home/{chat => direct}/widgets/message_box.dart (94%) rename lib/pages/home/profile/{chat_list/chat_list.dart => direct_list/direct_list.dart} (94%) rename lib/pages/home/profile/{chat_list/chat_list_state.dart => direct_list/direct_list_state.dart} (55%) diff --git a/lib/constants/app_icons.dart b/lib/constants/app_icons.dart index 6827ded..23f7b58 100644 --- a/lib/constants/app_icons.dart +++ b/lib/constants/app_icons.dart @@ -113,11 +113,11 @@ class DidvanIcons { IconData(0xe82b, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData chart_solid = IconData(0xe82c, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData chats_light = + static const IconData directs_light = IconData(0xe82d, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData chats_regular = + static const IconData directs_regular = IconData(0xe82e, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData chats_solid = + static const IconData directs_solid = IconData(0xe82f, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData check_light = IconData(0xe830, fontFamily: _kFontFam, fontPackage: _kFontPkg); diff --git a/lib/pages/home/chat/chat.dart b/lib/pages/home/direct/direct.dart similarity index 85% rename from lib/pages/home/chat/chat.dart rename to lib/pages/home/direct/direct.dart index 4d07d2e..e6a4019 100644 --- a/lib/pages/home/chat/chat.dart +++ b/lib/pages/home/direct/direct.dart @@ -1,10 +1,10 @@ -import 'package:didvan/pages/home/chat/widgets/message_box.dart'; +import 'package:didvan/pages/home/direct/widgets/message_box.dart'; import 'package:didvan/models/view/app_bar_data.dart'; import 'package:didvan/widgets/didvan/scaffold.dart'; import 'package:flutter/material.dart'; -class Chat extends StatelessWidget { - const Chat({Key? key}) : super(key: key); +class Direct extends StatelessWidget { + const Direct({Key? key}) : super(key: key); @override Widget build(BuildContext context) { diff --git a/lib/pages/home/chat/chat_state.dart b/lib/pages/home/direct/direct_state.dart similarity index 96% rename from lib/pages/home/chat/chat_state.dart rename to lib/pages/home/direct/direct_state.dart index d841aac..2758c21 100644 --- a/lib/pages/home/chat/chat_state.dart +++ b/lib/pages/home/direct/direct_state.dart @@ -5,7 +5,7 @@ import 'package:flutter/foundation.dart'; import 'package:flutter_vibrate/flutter_vibrate.dart'; import 'package:record/record.dart'; -class ChatState extends CoreProvier { +class DirectState extends CoreProvier { final _recorder = Record(); File? recordedFile; diff --git a/lib/pages/home/chat/widgets/message_box.dart b/lib/pages/home/direct/widgets/message_box.dart similarity index 94% rename from lib/pages/home/chat/widgets/message_box.dart rename to lib/pages/home/direct/widgets/message_box.dart index 6c2ac9b..5aa2db5 100644 --- a/lib/pages/home/chat/widgets/message_box.dart +++ b/lib/pages/home/direct/widgets/message_box.dart @@ -1,6 +1,6 @@ import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/pages/home/chat/chat_state.dart'; +import 'package:didvan/pages/home/direct/direct_state.dart'; import 'package:didvan/widgets/audio_visualizer.dart'; import 'package:didvan/widgets/didvan/icon_button.dart'; import 'package:didvan/widgets/didvan/text.dart'; @@ -22,7 +22,7 @@ class MessageBox extends StatelessWidget { ), color: Theme.of(context).colorScheme.surface, ), - child: Consumer( + child: Consumer( builder: (context, state, child) { if (state.isRecording) { return const _Recording(); @@ -41,7 +41,7 @@ class _Typing extends StatelessWidget { @override Widget build(BuildContext context) { - final state = context.read(); + final state = context.read(); return Row( children: [ DidvanIconButton( @@ -74,7 +74,7 @@ class _Recording extends StatelessWidget { @override Widget build(BuildContext context) { - final state = context.read(); + final state = context.read(); return Row( children: [ GestureDetector( @@ -111,7 +111,7 @@ class _RecordChecking extends StatelessWidget { @override Widget build(BuildContext context) { - final state = context.read(); + final state = context.read(); return Row( children: [ DidvanIconButton( diff --git a/lib/pages/home/profile/chat_list/chat_list.dart b/lib/pages/home/profile/direct_list/direct_list.dart similarity index 94% rename from lib/pages/home/profile/chat_list/chat_list.dart rename to lib/pages/home/profile/direct_list/direct_list.dart index 43ac7ad..15c7a90 100644 --- a/lib/pages/home/profile/chat_list/chat_list.dart +++ b/lib/pages/home/profile/direct_list/direct_list.dart @@ -8,8 +8,8 @@ import 'package:didvan/widgets/didvan/scaffold.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; -class ChatList extends StatelessWidget { - const ChatList({Key? key}) : super(key: key); +class DirectList extends StatelessWidget { + const DirectList({Key? key}) : super(key: key); @override Widget build(BuildContext context) { @@ -27,7 +27,7 @@ class ChatList extends StatelessWidget { Widget _itemBuilder(BuildContext context) { return GestureDetector( - onTap: () => Navigator.of(context).pushNamed(Routes.chat), + onTap: () => Navigator.of(context).pushNamed(Routes.direct), child: Container( color: Colors.transparent, child: Column( diff --git a/lib/pages/home/profile/chat_list/chat_list_state.dart b/lib/pages/home/profile/direct_list/direct_list_state.dart similarity index 55% rename from lib/pages/home/profile/chat_list/chat_list_state.dart rename to lib/pages/home/profile/direct_list/direct_list_state.dart index a11ecee..913a161 100644 --- a/lib/pages/home/profile/chat_list/chat_list_state.dart +++ b/lib/pages/home/profile/direct_list/direct_list_state.dart @@ -1,3 +1,3 @@ import 'package:didvan/providers/core_provider.dart'; -class ChatListState extends CoreProvier {} +class DirectListState extends CoreProvier {} diff --git a/lib/pages/home/profile/profile.dart b/lib/pages/home/profile/profile.dart index bbd0665..54f16aa 100644 --- a/lib/pages/home/profile/profile.dart +++ b/lib/pages/home/profile/profile.dart @@ -34,7 +34,8 @@ class Profile extends StatelessWidget { MenuItem( title: 'پیام‌ها', icon: DidvanIcons.message_regular, - onTap: () => Navigator.of(context).pushNamed(Routes.chatList), + onTap: () => + Navigator.of(context).pushNamed(Routes.directList), ), const DidvanDivider(), MenuItem( diff --git a/lib/pages/home/radar/widgets/radar_item.dart b/lib/pages/home/radar/widgets/radar_item.dart index 0c6a02c..c8751f8 100644 --- a/lib/pages/home/radar/widgets/radar_item.dart +++ b/lib/pages/home/radar/widgets/radar_item.dart @@ -73,7 +73,7 @@ class RadarItem extends StatelessWidget { Spacer(), DidvanText('2'), SizedBox(width: 4), - Icon(DidvanIcons.chats_regular), + Icon(DidvanIcons.directs_regular), SizedBox(width: 16), DidvanText('10'), SizedBox(width: 4), diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index 159efcf..263f212 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -1,13 +1,13 @@ import 'package:didvan/pages/authentication/authentication.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; -import 'package:didvan/pages/home/chat/chat.dart'; -import 'package:didvan/pages/home/chat/chat_state.dart'; +import 'package:didvan/pages/home/direct/direct.dart'; +import 'package:didvan/pages/home/direct/direct_state.dart'; import 'package:didvan/pages/home/home.dart'; import 'package:didvan/pages/home/home_state.dart'; import 'package:didvan/pages/home/news/news_details/news_details.dart'; import 'package:didvan/pages/home/news/news_details/news_details_state.dart'; -import 'package:didvan/pages/home/profile/chat_list/chat_list.dart'; -import 'package:didvan/pages/home/profile/chat_list/chat_list_state.dart'; +import 'package:didvan/pages/home/profile/direct_list/direct_list.dart'; +import 'package:didvan/pages/home/profile/direct_list/direct_list_state.dart'; import 'package:didvan/pages/home/profile/edit_profile/edit_profile.dart'; import 'package:didvan/pages/home/profile/settings/settings.dart'; import 'package:didvan/pages/home/profile/settings/settings_state.dart'; @@ -68,18 +68,18 @@ class RouteGenerator { child: const NewsDetails(), ), ); - case Routes.chatList: + case Routes.directList: return _createRoute( - ChangeNotifierProvider( - create: (context) => ChatListState(), - child: const ChatList(), + ChangeNotifierProvider( + create: (context) => DirectListState(), + child: const DirectList(), ), ); - case Routes.chat: + case Routes.direct: return _createRoute( - ChangeNotifierProvider( - create: (context) => ChatState(), - child: const Chat(), + ChangeNotifierProvider( + create: (context) => DirectState(), + child: const Direct(), ), ); default: diff --git a/lib/routes/routes.dart b/lib/routes/routes.dart index ae38e38..ccfb5a7 100644 --- a/lib/routes/routes.dart +++ b/lib/routes/routes.dart @@ -7,6 +7,6 @@ class Routes { static const String settings = '/settings'; static const String radarDetails = '/radar-details'; static const String newsDetails = '/news-details'; - static const String chatList = '/chat-list'; - static const String chat = '/chat'; + static const String directList = '/direct-list'; + static const String direct = '/direct'; } diff --git a/lib/widgets/floating_navigation_bar.dart b/lib/widgets/floating_navigation_bar.dart index 1dd24f0..8f74f82 100644 --- a/lib/widgets/floating_navigation_bar.dart +++ b/lib/widgets/floating_navigation_bar.dart @@ -66,7 +66,7 @@ class FloatingNavigationBar extends StatelessWidget { ), const SizedBox(width: 4), const Icon( - DidvanIcons.chats_regular, + DidvanIcons.directs_regular, ), ], ), From c472ed9dea0824fb253513861e743cffcd874754 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Fri, 7 Jan 2022 12:41:10 +0330 Subject: [PATCH 082/273] D1APP-16 dismiss button synced to design --- lib/models/view/action_sheet_data.dart | 2 ++ lib/pages/home/radar/radar.dart | 1 + lib/utils/action_sheet.dart | 1 + 3 files changed, 4 insertions(+) diff --git a/lib/models/view/action_sheet_data.dart b/lib/models/view/action_sheet_data.dart index e7faf8a..59992e8 100644 --- a/lib/models/view/action_sheet_data.dart +++ b/lib/models/view/action_sheet_data.dart @@ -10,6 +10,7 @@ class ActionSheetData { final IconData? titleIcon; final Color? titleColor; final bool hasDismissButton; + final bool smallDismissButton; ActionSheetData({ required this.content, @@ -21,5 +22,6 @@ class ActionSheetData { this.titleIcon, this.dismissTitle, this.onDismissed, + this.smallDismissButton = false, }); } diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index 29dbccf..296a721 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -169,6 +169,7 @@ class _RadarState extends State { await ActionSheetUtils.showBottomSheet( data: ActionSheetData( title: 'فیلتر جستجو', + smallDismissButton: true, titleIcon: DidvanIcons.filter_regular, dismissTitle: 'حذف فیلتر', confrimTitle: 'نمایش نتایج', diff --git a/lib/utils/action_sheet.dart b/lib/utils/action_sheet.dart index 8eaece4..cca7c31 100644 --- a/lib/utils/action_sheet.dart +++ b/lib/utils/action_sheet.dart @@ -119,6 +119,7 @@ class ActionSheetUtils { ), if (data.hasDismissButton) const SizedBox(width: 20), Expanded( + flex: data.smallDismissButton ? 2 : 1, child: DidvanButton( style: ButtonStyleMode.primary, onPressed: () { From b80ab0718ed7267714c64a3d2fae2d1c05c0a325 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Fri, 7 Jan 2022 12:47:54 +0330 Subject: [PATCH 083/273] D1APP-1 new colors applied --- lib/config/theme_data.dart | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/config/theme_data.dart b/lib/config/theme_data.dart index c326176..44e5fe5 100644 --- a/lib/config/theme_data.dart +++ b/lib/config/theme_data.dart @@ -181,13 +181,13 @@ extension DidvanColorScheme on ColorScheme { Color get white => const Color(0xFFFFFFFF); Color get focused => brightness == Brightness.dark - ? const Color(0xFF323C47) + ? const Color(0xFF20272E) : const Color(0xFFE6F3FA); Color get navigation => brightness == Brightness.dark ? const Color(0xFF181B1F) : const Color(0xFF012348); Color get focusedBorder => brightness == Brightness.dark - ? const Color(0xFFC8E0F4) + ? const Color(0xFF9FB2C2) : const Color(0xFF195D80); Color get title => brightness == Brightness.dark ? const Color(0xFFD6D6D6) From e75d7500078a7d7e79e7e21ac7f2d2e23559c0a6 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Fri, 7 Jan 2022 12:48:11 +0330 Subject: [PATCH 084/273] textfield focused border changed --- lib/widgets/didvan/text_field.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/widgets/didvan/text_field.dart b/lib/widgets/didvan/text_field.dart index 7ec263f..23ebc68 100644 --- a/lib/widgets/didvan/text_field.dart +++ b/lib/widgets/didvan/text_field.dart @@ -122,7 +122,7 @@ class _DidvanTextFieldState extends State { Color _borderColor() { if (_focusNode.hasFocus) { - return Theme.of(context).colorScheme.primary; + return Theme.of(context).colorScheme.focusedBorder; } else if (_error != null) { return Theme.of(context).colorScheme.error; } From 6928cb697e8a2985dfbd6b22ec9a3d738d0c21bf Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Fri, 7 Jan 2022 13:12:46 +0330 Subject: [PATCH 085/273] D1APP-38 radar search bug fixed --- lib/pages/home/radar/radar.dart | 11 ++++++----- lib/pages/home/radar/radar_state.dart | 15 +++++++-------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index 296a721..f2b52c4 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -125,14 +125,15 @@ class _RadarState extends State { } void _onChanged(String value) { - context.read().resetFilters(); + final state = context.read(); + state.resetFilters(shoudUpdate: false); if (value.length < 4 && value.isNotEmpty) return; _timer?.cancel(); _timer = Timer(const Duration(seconds: 2), () { - context.read().getRadarOverviews( - page: 1, - search: value, - ); + state.getRadarOverviews( + page: 1, + search: value, + ); }); } diff --git a/lib/pages/home/radar/radar_state.dart b/lib/pages/home/radar/radar_state.dart index 3807720..0907298 100644 --- a/lib/pages/home/radar/radar_state.dart +++ b/lib/pages/home/radar/radar_state.dart @@ -8,18 +8,20 @@ import 'package:didvan/services/network/request_helper.dart'; class RadarState extends CoreProvier { bool isFiltering = false; - String? _lastSearch; + String? lastSearch; String? startDate; String? endDate; final List selectedCats = []; final List radars = []; - void resetFilters() { + void resetFilters({bool shoudUpdate = true}) { startDate = null; endDate = null; selectedCats.clear(); - getRadarOverviews(page: 1); + if (shoudUpdate) { + getRadarOverviews(page: 1); + } } Future getRadarOverviews({ @@ -28,17 +30,14 @@ class RadarState extends CoreProvier { bool filter = false, }) async { if (search != null && search.isNotEmpty) { - if (_lastSearch == search && !filter) { + if (lastSearch == search && !filter) { return; } isFiltering = true; - _lastSearch = search; + lastSearch = search; } else { isFiltering = false; } - if (filter) { - isFiltering = true; - } appState = AppState.busy; final RequestService service = RequestService( RequestHelper.getRadarOverviews( From 4cab5a4c8c5fc24d89b3e30a34579702ad76a33c Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Fri, 7 Jan 2022 13:56:55 +0330 Subject: [PATCH 086/273] didvan scaffold now supprts real slivers! --- lib/pages/home/profile/edit_profile/edit_profile.dart | 2 +- lib/pages/home/profile/settings/settings.dart | 2 +- lib/widgets/didvan/scaffold.dart | 9 ++++++--- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/lib/pages/home/profile/edit_profile/edit_profile.dart b/lib/pages/home/profile/edit_profile/edit_profile.dart index 3e7abdb..39fa265 100644 --- a/lib/pages/home/profile/edit_profile/edit_profile.dart +++ b/lib/pages/home/profile/edit_profile/edit_profile.dart @@ -15,7 +15,7 @@ class EditProfile extends StatelessWidget { Widget build(BuildContext context) { return DidvanScaffold( appBarData: AppBarData(title: 'ویرایش پروفایل'), - slivers: [ + children: [ const SizedBox(height: 16), const ProfilePhoto(), const SizedBox(height: 16), diff --git a/lib/pages/home/profile/settings/settings.dart b/lib/pages/home/profile/settings/settings.dart index 7c30e8e..fa5274a 100644 --- a/lib/pages/home/profile/settings/settings.dart +++ b/lib/pages/home/profile/settings/settings.dart @@ -30,7 +30,7 @@ class Settings extends StatelessWidget { state: context.read(), builder: (context, state) => DidvanScaffold( appBarData: AppBarData(hasBack: true, title: 'تنظیمات'), - slivers: [ + children: [ DidvanCard( child: MenuItem( title: 'زمان دریافت اعلان', diff --git a/lib/widgets/didvan/scaffold.dart b/lib/widgets/didvan/scaffold.dart index 77853d6..ccafa58 100644 --- a/lib/widgets/didvan/scaffold.dart +++ b/lib/widgets/didvan/scaffold.dart @@ -4,6 +4,7 @@ import 'package:flutter/material.dart'; class DidvanScaffold extends StatelessWidget { final List? slivers; + final List? children; final AppBarData appBarData; final bool hasPadding; const DidvanScaffold({ @@ -11,6 +12,7 @@ class DidvanScaffold extends StatelessWidget { this.slivers, required this.appBarData, this.hasPadding = true, + this.children, }) : super(key: key); @override @@ -31,16 +33,17 @@ class DidvanScaffold extends StatelessWidget { const SliverToBoxAdapter( child: SizedBox(height: 16), ), - if (slivers != null) + if (children != null) SliverPadding( padding: const EdgeInsets.symmetric(horizontal: 16), sliver: SliverList( delegate: SliverChildBuilderDelegate( - (context, index) => slivers![index], - childCount: slivers!.length, + (context, index) => children![index], + childCount: children!.length, ), ), ), + if (slivers != null) ...slivers!, ], ), ), From 86dc17393238ff51a4d95344f572c04174658608 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 8 Jan 2022 12:35:49 +0330 Subject: [PATCH 087/273] D1APP-48 new models added --- lib/models/chat_room/chat_room.dart | 35 ++++++++++++++ lib/models/chat_room/last_message.dart | 27 +++++++++++ lib/models/message_data/message_data.dart | 43 +++++++++++++++++ lib/models/message_data/radar_attachment.dart | 36 +++++++++++++++ lib/models/user.dart | 46 +++++++++++++++++++ 5 files changed, 187 insertions(+) create mode 100644 lib/models/chat_room/chat_room.dart create mode 100644 lib/models/chat_room/last_message.dart create mode 100644 lib/models/message_data/message_data.dart create mode 100644 lib/models/message_data/radar_attachment.dart create mode 100644 lib/models/user.dart diff --git a/lib/models/chat_room/chat_room.dart b/lib/models/chat_room/chat_room.dart new file mode 100644 index 0000000..851e977 --- /dev/null +++ b/lib/models/chat_room/chat_room.dart @@ -0,0 +1,35 @@ +import 'last_message.dart'; + +class ChatRoom { + final int id; + final String type; + final String updatedAt; + final int unread; + final LastMessage lastMessage; + + const ChatRoom({ + required this.id, + required this.type, + required this.updatedAt, + required this.unread, + required this.lastMessage, + }); + + factory ChatRoom.fromJson(Map json) => ChatRoom( + id: json['id'], + type: json['type'] == 'ادمین' + ? 'پشتیبانی اپلیکیشن' + : 'سردبیر رادار' + json['type'], + updatedAt: json['updatedAt'], + unread: json['unread'], + lastMessage: LastMessage.fromJson(json['lastMessage']), + ); + + Map toJson() => { + 'id': id, + 'type': type, + 'updatedAt': updatedAt, + 'unread': unread, + 'lastMessage': lastMessage.toJson(), + }; +} diff --git a/lib/models/chat_room/last_message.dart b/lib/models/chat_room/last_message.dart new file mode 100644 index 0000000..23c9f3f --- /dev/null +++ b/lib/models/chat_room/last_message.dart @@ -0,0 +1,27 @@ +class LastMessage { + final String? text; + final String? audio; + final bool writedByAdmin; + final bool readed; + + const LastMessage({ + this.text, + this.audio, + required this.writedByAdmin, + required this.readed, + }); + + factory LastMessage.fromJson(Map json) => LastMessage( + text: json['text'], + audio: json['audio'], + writedByAdmin: json['writedByAdmin'], + readed: json['readed'], + ); + + Map toJson() => { + 'text': text, + 'audio': audio, + 'writedByAdmin': writedByAdmin, + 'readed': readed, + }; +} diff --git a/lib/models/message_data/message_data.dart b/lib/models/message_data/message_data.dart new file mode 100644 index 0000000..8cb4b45 --- /dev/null +++ b/lib/models/message_data/message_data.dart @@ -0,0 +1,43 @@ +import 'radar_attachment.dart'; + +class MessageData { + final int id; + final String? text; + final String? audio; + final bool writedByAdmin; + final bool readed; + final String createdAt; + final RadarAttachment? radar; + + const MessageData({ + required this.id, + required this.writedByAdmin, + required this.readed, + required this.createdAt, + required this.text, + required this.audio, + required this.radar, + }); + + factory MessageData.fromJson(Map json) => MessageData( + id: json['id'], + text: json['text'], + audio: json['audio'], + writedByAdmin: json['writedByAdmin'], + readed: json['readed'], + createdAt: json['createdAt'], + radar: json['radar'] == null + ? null + : RadarAttachment.fromJson(json['radar'] as Map), + ); + + Map toJson() => { + 'id': id, + 'text': text, + 'audio': audio, + 'writedByAdmin': writedByAdmin, + 'readed': readed, + 'createdAt': createdAt, + 'radar': radar?.toJson(), + }; +} diff --git a/lib/models/message_data/radar_attachment.dart b/lib/models/message_data/radar_attachment.dart new file mode 100644 index 0000000..13dbe76 --- /dev/null +++ b/lib/models/message_data/radar_attachment.dart @@ -0,0 +1,36 @@ +class RadarAttachment { + final int id; + final String title; + final String description; + final int timeToRead; + final String image; + final bool forManagers; + + const RadarAttachment({ + required this.id, + required this.title, + required this.description, + required this.timeToRead, + required this.image, + required this.forManagers, + }); + + factory RadarAttachment.fromJson(Map json) => + RadarAttachment( + id: json['id'], + title: json['title'], + description: json['description'], + timeToRead: json['timeToRead'], + image: json['image'], + forManagers: json['forManagers'], + ); + + Map toJson() => { + 'id': id, + 'title': title, + 'description': description, + 'timeToRead': timeToRead, + 'image': image, + 'forManagers': forManagers, + }; +} diff --git a/lib/models/user.dart b/lib/models/user.dart new file mode 100644 index 0000000..a652cb8 --- /dev/null +++ b/lib/models/user.dart @@ -0,0 +1,46 @@ +class User { + final int id; + final String phoneNumber; + final String fullName; + final String? username; + final String? photo; + + const User({ + required this.id, + required this.username, + required this.phoneNumber, + required this.photo, + required this.fullName, + }); + + factory User.fromJson(Map json) => User( + id: json['id'], + username: json['username'], + phoneNumber: json['phoneNumber'], + photo: json['photo'], + fullName: json['fullName']); + + Map toJson() => { + 'id': id, + 'username': username, + 'phoneNumber': phoneNumber, + 'photo': photo, + 'fullName': fullName, + }; + + User copyWith({ + int? id, + String? username, + String? phoneNumber, + String? photo, + String? fullName, + }) { + return User( + id: id ?? this.id, + username: username ?? this.username, + phoneNumber: phoneNumber ?? this.phoneNumber, + photo: photo ?? this.photo, + fullName: fullName ?? this.fullName, + ); + } +} From ff515fb0378c53bdc991b86f934c12abc5da1085 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 8 Jan 2022 13:04:29 +0330 Subject: [PATCH 088/273] D1APP-16 alert system updated --- lib/utils/action_sheet.dart | 49 ++++++++++++++++++++++++++++++++++--- 1 file changed, 45 insertions(+), 4 deletions(-) diff --git a/lib/utils/action_sheet.dart b/lib/utils/action_sheet.dart index cca7c31..5e37f8e 100644 --- a/lib/utils/action_sheet.dart +++ b/lib/utils/action_sheet.dart @@ -1,6 +1,9 @@ +import 'dart:async'; + import 'package:another_flushbar/flushbar.dart'; import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/constants/assets.dart'; import 'package:didvan/models/enums.dart'; import 'package:didvan/models/view/action_sheet_data.dart'; @@ -42,13 +45,51 @@ class ActionSheetUtils { } static Future showAlert(AlertData alertData) async { + bool isInit = true; + Color backgroundColor; + Color foregroundColor; + switch (alertData.aLertType) { + case ALertType.info: + backgroundColor = Theme.of(context).colorScheme.focused; + foregroundColor = Theme.of(context).colorScheme.focusedBorder; + break; + case ALertType.success: + backgroundColor = Theme.of(context).colorScheme.successBack; + foregroundColor = Theme.of(context).colorScheme.success; + break; + case ALertType.error: + backgroundColor = Theme.of(context).colorScheme.errorBack; + foregroundColor = Theme.of(context).colorScheme.error; + break; + } await Flushbar( margin: const EdgeInsets.symmetric(horizontal: 16), - message: alertData.message, - backgroundColor: Theme.of(context).colorScheme.focused, + borderColor: foregroundColor, + backgroundColor: backgroundColor, borderRadius: DesignConfig.mediumBorderRadius, - messageColor: Theme.of(context).colorScheme.text, - flushbarPosition: FlushbarPosition.TOP, + icon: const Icon(DidvanIcons.info_circle_solid), + shouldIconPulse: true, + flushbarPosition: FlushbarPosition.BOTTOM, + messageText: StatefulBuilder(builder: (context, setState) { + if (isInit) { + Future.delayed(Duration.zero, () { + setState(() {}); + isInit = false; + }); + } + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + DidvanText(alertData.message, color: foregroundColor), + AnimatedContainer( + duration: const Duration(seconds: 2), + width: isInit ? MediaQuery.of(context).size.width - 32 : 0, + height: 2, + color: foregroundColor, + ), + ], + ); + }), duration: const Duration(seconds: 2), boxShadows: [ BoxShadow(color: Theme.of(context).colorScheme.cardBorder), From a9c6a220040b47cdfeaeb40b29e45ded549eb0d4 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 8 Jan 2022 13:15:25 +0330 Subject: [PATCH 089/273] D1APP-18 min sdk number increased for compatiblity --- android/app/build.gradle | 2 +- pubspec.lock | 7 +++++++ pubspec.yaml | 1 + 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/android/app/build.gradle b/android/app/build.gradle index a74c195..293ad3a 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -45,7 +45,7 @@ android { defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "com.didvan.didvanapp" - minSdkVersion 18 + minSdkVersion 21 targetSdkVersion 30 versionCode flutterVersionCode.toInteger() versionName flutterVersionName diff --git a/pubspec.lock b/pubspec.lock index e678844..0aa30c6 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -252,6 +252,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "4.0.0" + image_cropper: + dependency: "direct main" + description: + name: image_cropper + url: "https://pub.dartlang.org" + source: hosted + version: "1.4.1" image_picker: dependency: "direct main" description: diff --git a/pubspec.yaml b/pubspec.yaml index e588d03..7a1a0c4 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -60,6 +60,7 @@ dependencies: another_flushbar: ^1.10.28 persian_datetime_picker: ^2.4.0 persian_number_utility: ^1.1.1 + image_cropper: ^1.4.1 dev_dependencies: flutter_test: From 6e8956eb8bca739505b0652a1536070730857d14 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 8 Jan 2022 13:44:01 +0330 Subject: [PATCH 090/273] D1APP-1 new colors applied --- lib/config/theme_data.dart | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/config/theme_data.dart b/lib/config/theme_data.dart index 44e5fe5..8315ad1 100644 --- a/lib/config/theme_data.dart +++ b/lib/config/theme_data.dart @@ -230,13 +230,13 @@ extension DidvanColorScheme on ColorScheme { : const Color(0xFF292929); // Error and success colors - Color get errorLight => brightness == Brightness.dark - ? const Color(0xFF2B2325) + Color get errorBack => brightness == Brightness.dark + ? const Color(0xFF2C332B) : const Color(0xFFFFF8F8); - Color get successLight => brightness == Brightness.dark - ? const Color(0xFFBBD6B4) + Color get successBack => brightness == Brightness.dark + ? const Color(0xFF2B2325) : const Color(0xFFF5FFFC); Color get success => brightness == Brightness.dark - ? const Color(0xFF32A64C) + ? const Color(0xFF2FC250) : const Color(0xFF2BB24A); } From eccde6f68a49de9ad74b35f36d6aeb8eeebd0f51 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 8 Jan 2022 13:47:07 +0330 Subject: [PATCH 091/273] D1APP-16 alert type view model added --- lib/models/view/alert_data.dart | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/models/view/alert_data.dart b/lib/models/view/alert_data.dart index 88d5571..1d4edc4 100644 --- a/lib/models/view/alert_data.dart +++ b/lib/models/view/alert_data.dart @@ -1,5 +1,8 @@ +import 'package:didvan/models/enums.dart'; + class AlertData { final String message; + final ALertType aLertType; - AlertData({required this.message}); + AlertData({required this.message, this.aLertType = ALertType.error}); } From fa2046f12b9cd55e6e7215f9757a77da4b980315 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 8 Jan 2022 13:48:32 +0330 Subject: [PATCH 092/273] D1APP-52 direct list (chat rooms) (dynamic) --- .../home/profile/direct_list/direct_list.dart | 146 ++++++++++-------- .../direct_list/direct_list_state.dart | 31 +++- 2 files changed, 112 insertions(+), 65 deletions(-) diff --git a/lib/pages/home/profile/direct_list/direct_list.dart b/lib/pages/home/profile/direct_list/direct_list.dart index 15c7a90..ab583ea 100644 --- a/lib/pages/home/profile/direct_list/direct_list.dart +++ b/lib/pages/home/profile/direct_list/direct_list.dart @@ -1,84 +1,102 @@ import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/models/chat_room/chat_room.dart'; import 'package:didvan/models/view/app_bar_data.dart'; +import 'package:didvan/pages/home/profile/direct_list/direct_list_state.dart'; +import 'package:didvan/pages/home/profile/direct_list/widgets/chat_room_item.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/widgets/didvan/badge.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/scaffold.dart'; import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/shimmer_placeholder.dart'; +import 'package:didvan/widgets/sliver_state_handler.dart'; import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; -class DirectList extends StatelessWidget { +class DirectList extends StatefulWidget { const DirectList({Key? key}) : super(key: key); @override - Widget build(BuildContext context) { - return DidvanScaffold( - appBarData: AppBarData( - hasBack: true, - title: 'پیام‌ها', - trailing: const DidvanBadge( - text: '12', - ), - ), - slivers: [for (var i = 0; i < 10; i++) _itemBuilder(context)], - ); + State createState() => _DirectListState(); +} + +class _DirectListState extends State { + @override + void initState() { + Future.delayed(Duration.zero, () { + context.read().getDirectsList(); + }); + super.initState(); } - Widget _itemBuilder(BuildContext context) { - return GestureDetector( - onTap: () => Navigator.of(context).pushNamed(Routes.direct), - child: Container( - color: Colors.transparent, - child: Column( - children: [ - Row( - children: [ - const Icon( - DidvanIcons.avatar_light, - size: 32, - ), - const SizedBox(width: 12), - Expanded( - child: DidvanText( - 'سردبیر رادار سیاسی', - style: Theme.of(context).textTheme.bodyText1, - ), - ), - const DidvanBadge(text: '2'), - ], - ), - Row( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - const SizedBox(width: 40), - const Icon( - DidvanIcons.check_double_light, - size: 16, - ), - const SizedBox(width: 4), - Expanded( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - const DidvanText( - 'فورت فورت،تموم شد؟ خیلی تاثیرگذار بود.', - maxLines: 1, - ), - DidvanText( - '15 دقیقه پیش', - style: Theme.of(context).textTheme.caption, - color: Theme.of(context).colorScheme.caption, - ) - ], - ), - ), - ], - ), - const DidvanDivider(), - ], + @override + Widget build(BuildContext context) { + return Consumer( + builder: (context, state, child) => DidvanScaffold( + appBarData: AppBarData( + hasBack: true, + title: 'پیام‌ها', + trailing: DidvanBadge( + text: state.unreadCount.toString(), + ), ), + slivers: [ + SliverStateHandler( + itemPadding: const EdgeInsets.symmetric(horizontal: 16), + state: state, + placeholder: const _ChatRoomPlaceholder(), + builder: (context, state, index) => ChatRoomItem( + chatRoom: state.chatRooms[index], + ), + childCount: state.chatRooms.length, + ), + ], ), ); } } + +class _ChatRoomPlaceholder extends StatelessWidget { + const _ChatRoomPlaceholder({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Column( + children: [ + Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const ShimmerPlaceholder( + height: 24, + width: 24, + ), + const SizedBox(width: 12), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: const [ + ShimmerPlaceholder( + height: 24, + width: 100, + ), + SizedBox(height: 12), + ShimmerPlaceholder( + height: 16, + width: 300, + ), + SizedBox(height: 12), + ShimmerPlaceholder( + height: 12, + width: 80, + ), + ], + ), + ), + ], + ), + const DidvanDivider(), + ], + ); + } +} diff --git a/lib/pages/home/profile/direct_list/direct_list_state.dart b/lib/pages/home/profile/direct_list/direct_list_state.dart index 913a161..728305a 100644 --- a/lib/pages/home/profile/direct_list/direct_list_state.dart +++ b/lib/pages/home/profile/direct_list/direct_list_state.dart @@ -1,3 +1,32 @@ +import 'package:didvan/models/chat_room/chat_room.dart'; +import 'package:didvan/models/enums.dart'; import 'package:didvan/providers/core_provider.dart'; +import 'package:didvan/services/network/request.dart'; +import 'package:didvan/services/network/request_helper.dart'; -class DirectListState extends CoreProvier {} +class DirectListState extends CoreProvier { + final List chatRooms = []; + int _unreadCount = 0; + int get unreadCount => _unreadCount; + + set unreadCount(int value) { + _unreadCount = value; + notifyListeners(); + } + + Future getDirectsList() async { + appState = AppState.busy; + final RequestService service = RequestService(RequestHelper.directs); + await service.httpGet(); + if (service.isSuccess) { + _unreadCount = service.result['unread'] ?? 0; + final List _chatRooms = service.result['chatRooms'] ?? []; + for (var i = 0; i < _chatRooms.length; i++) { + chatRooms.add(ChatRoom.fromJson(_chatRooms[i])); + } + appState = AppState.idle; + return; + } + appState = AppState.failed; + } +} From a96eabd30ffd3dcdc39d1b06be2663b4757827d5 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 8 Jan 2022 14:13:24 +0330 Subject: [PATCH 093/273] textfield new color name applied --- lib/widgets/didvan/text_field.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/widgets/didvan/text_field.dart b/lib/widgets/didvan/text_field.dart index 23ebc68..f4e4e48 100644 --- a/lib/widgets/didvan/text_field.dart +++ b/lib/widgets/didvan/text_field.dart @@ -146,7 +146,7 @@ class _DidvanTextFieldState extends State { return Theme.of(context).colorScheme.focused; } if (_error != null) { - return Theme.of(context).colorScheme.errorLight; + return Theme.of(context).colorScheme.errorBack; } return Theme.of(context).colorScheme.surface; } From de46fe36f4e4870343378d809600609533d8c811 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 8 Jan 2022 14:15:36 +0330 Subject: [PATCH 094/273] D1APP-48 model synced with server data --- lib/models/chat_room/chat_room.dart | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/lib/models/chat_room/chat_room.dart b/lib/models/chat_room/chat_room.dart index 851e977..a741cc7 100644 --- a/lib/models/chat_room/chat_room.dart +++ b/lib/models/chat_room/chat_room.dart @@ -17,9 +17,7 @@ class ChatRoom { factory ChatRoom.fromJson(Map json) => ChatRoom( id: json['id'], - type: json['type'] == 'ادمین' - ? 'پشتیبانی اپلیکیشن' - : 'سردبیر رادار' + json['type'], + type: json['type'], updatedAt: json['updatedAt'], unread: json['unread'], lastMessage: LastMessage.fromJson(json['lastMessage']), From 2486aa94a93aa3bee45564c26dd7f14250ddef4e Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 8 Jan 2022 14:16:04 +0330 Subject: [PATCH 095/273] D1APP-38 code cleaning --- lib/pages/home/radar/radar.dart | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index f2b52c4..3f89f29 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -4,7 +4,6 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/enums.dart'; -import 'package:didvan/models/radar_category.dart'; import 'package:didvan/models/view/action_sheet_data.dart'; import 'package:didvan/pages/home/radar/radar_state.dart'; import 'package:didvan/pages/home/radar/widgets/categories_gird.dart'; From 11e00d3f9814663598982345cdc18b2445b697a5 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 8 Jan 2022 14:17:40 +0330 Subject: [PATCH 096/273] D1APP-22 new apis + type correction --- lib/services/network/request.dart | 4 ++-- lib/services/network/request_helper.dart | 12 ++++++++++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/lib/services/network/request.dart b/lib/services/network/request.dart index dc23f9b..346dcb2 100644 --- a/lib/services/network/request.dart +++ b/lib/services/network/request.dart @@ -8,8 +8,8 @@ class RequestService { static set token(String value) => _token = value; - Map get result => _body['result'] ?? const {}; - Map get errors => _body['errors'] ?? const {}; + Map get result => _body['result'] ?? const {}; + Map get errors => _body['errors'] ?? const {}; String errorMessage = 'خطا! لطفا اتصال اینترنت خود را بررسی و مجددا تلاش نمایید.'; diff --git a/lib/services/network/request_helper.dart b/lib/services/network/request_helper.dart index c0d37fc..a14df9c 100644 --- a/lib/services/network/request_helper.dart +++ b/lib/services/network/request_helper.dart @@ -1,9 +1,17 @@ class RequestHelper { static const String _baseUrl = 'https://didvan-greatsam.fandogh.cloud'; + static const String _baseUserUrl = _baseUrl + '/user'; - static const String confirmUsername = _baseUrl + '/user/confirmUsername'; - static const String login = _baseUrl + '/user/login'; + static const String confirmUsername = _baseUserUrl + '/confirmUsername'; + static const String login = _baseUserUrl + '/login'; + static const String directs = _baseUserUrl + '/direct'; + static const String userInfo = _baseUserUrl + '/info'; + static const String updateUserProfile = _baseUserUrl + '/profile/photo'; + static const String updateUsername = _baseUserUrl + '/setUsername'; + static const String radarCategories = _baseUrl + '/category'; + + static String direct(int id) => _baseUserUrl + '/direct/$id'; static String getRadarOverviews({ required int page, List categories = const [], From 009a98097b9413fa74b81edf8e14060ef8cb6f6e Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 8 Jan 2022 21:47:13 +0330 Subject: [PATCH 097/273] D1APP-18 internet permission added --- android/app/src/main/AndroidManifest.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index 799c3f3..aadf776 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -2,6 +2,7 @@ package="com.didvan.didvanapp"> + From 43600a42e4670a8207b59f014c2f0ffb3b51adfa Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 8 Jan 2022 21:48:42 +0330 Subject: [PATCH 098/273] D1APP-1 theme syncing --- lib/config/theme_data.dart | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/config/theme_data.dart b/lib/config/theme_data.dart index 8315ad1..6979e2b 100644 --- a/lib/config/theme_data.dart +++ b/lib/config/theme_data.dart @@ -231,10 +231,10 @@ extension DidvanColorScheme on ColorScheme { // Error and success colors Color get errorBack => brightness == Brightness.dark - ? const Color(0xFF2C332B) + ? const Color(0xFF2B2325) : const Color(0xFFFFF8F8); Color get successBack => brightness == Brightness.dark - ? const Color(0xFF2B2325) + ? const Color(0xFF2C332B) : const Color(0xFFF5FFFC); Color get success => brightness == Brightness.dark ? const Color(0xFF2FC250) From e6310cdd5c818b77a7fbe373b74a5c97dbaa2bf2 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 9 Jan 2022 19:06:26 +0330 Subject: [PATCH 099/273] D1APP-17 server data provider added --- lib/main.dart | 4 ++++ lib/providers/server_data_provider.dart | 22 ++++++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 lib/providers/server_data_provider.dart diff --git a/lib/main.dart b/lib/main.dart index 07d754d..c408635 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,4 +1,5 @@ import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/providers/server_data_provider.dart'; import 'package:didvan/providers/theme_provider.dart'; import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/routes/route_generator.dart'; @@ -22,6 +23,9 @@ class Didvan extends StatelessWidget { ChangeNotifierProvider( create: (context) => UserProvider(), ), + Provider( + create: (context) => ServerDataProvider(), + ), ChangeNotifierProvider( create: (context) => ThemeProvider(), ), diff --git a/lib/providers/server_data_provider.dart b/lib/providers/server_data_provider.dart new file mode 100644 index 0000000..53eb006 --- /dev/null +++ b/lib/providers/server_data_provider.dart @@ -0,0 +1,22 @@ +import 'package:didvan/providers/core_provider.dart'; +import 'package:didvan/services/network/request.dart'; +import 'package:didvan/services/network/request_helper.dart'; + +class ServerDataProvider extends CoreProvier { + final List directTypes = []; + + Future getData() async { + await _getDirectTypes(); + } + + Future _getDirectTypes() async { + final service = RequestService(RequestHelper.directTypes); + await service.httpGet(); + if (service.isSuccess) { + final types = service.result['types']; + for (var i = 0; i < types.length; i++) { + directTypes.add(MapEntry(types[i]['id'], types[i]['label'])); + } + } + } +} From cde669b84622d1ddd4a448160a79f7f610a0023b Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 9 Jan 2022 19:10:44 +0330 Subject: [PATCH 100/273] sync components with latest design edits --- lib/models/enums.dart | 1 + lib/widgets/didvan/badge.dart | 4 +++- lib/widgets/didvan/button.dart | 30 +++++++++++++++++++++++------- lib/widgets/didvan/card.dart | 2 +- lib/widgets/didvan/text_field.dart | 7 ++++--- 5 files changed, 32 insertions(+), 12 deletions(-) diff --git a/lib/models/enums.dart b/lib/models/enums.dart index 1a7fd8d..a0f16db 100644 --- a/lib/models/enums.dart +++ b/lib/models/enums.dart @@ -7,6 +7,7 @@ enum AppState { enum ButtonStyleMode { primary, + secondary, flat, } diff --git a/lib/widgets/didvan/badge.dart b/lib/widgets/didvan/badge.dart index 855b36f..5223d0a 100644 --- a/lib/widgets/didvan/badge.dart +++ b/lib/widgets/didvan/badge.dart @@ -14,16 +14,18 @@ class DidvanBadge extends StatelessWidget { return Container( height: 24, width: 24, + padding: const EdgeInsets.only(top: 2), + alignment: Alignment.center, decoration: BoxDecoration( color: Theme.of(context).colorScheme.secondary, shape: BoxShape.circle, ), - alignment: Alignment.center, child: FittedBox( fit: BoxFit.scaleDown, child: DidvanText( text, isEnglishFont: true, + textAlign: TextAlign.center, style: Theme.of(context).textTheme.overline, color: Theme.of(context).colorScheme.white, ), diff --git a/lib/widgets/didvan/button.dart b/lib/widgets/didvan/button.dart index 79eaf90..d85f01e 100644 --- a/lib/widgets/didvan/button.dart +++ b/lib/widgets/didvan/button.dart @@ -17,30 +17,46 @@ class DidvanButton extends StatelessWidget { @override Widget build(BuildContext context) { + Color foregroundColor = Colors.black; + Color backgroundColor = Colors.black; + switch (style) { + case ButtonStyleMode.primary: + backgroundColor = Theme.of(context).colorScheme.primary; + foregroundColor = Theme.of(context).colorScheme.white; + break; + case ButtonStyleMode.secondary: + backgroundColor = Theme.of(context).colorScheme.secondCTA; + foregroundColor = Theme.of(context).colorScheme.text; + break; + case ButtonStyleMode.flat: + backgroundColor = Theme.of(context).colorScheme.surface; + foregroundColor = Theme.of(context).colorScheme.white; + break; + default: + } + return SizedBox( + height: 48, width: double.infinity, child: MaterialButton( shape: const RoundedRectangleBorder( borderRadius: DesignConfig.lowBorderRadius, ), - height: 48, - color: style == ButtonStyleMode.primary - ? Theme.of(context).colorScheme.primary - : Theme.of(context).colorScheme.secondCTA, + color: backgroundColor, onPressed: () { FocusScope.of(context).unfocus(); onPressed?.call(); }, - child: _childBuilder(), + child: _childBuilder(foregroundColor), ), ); } - Widget? _childBuilder() { + Widget? _childBuilder(Color color) { if (title != null) { return DidvanText( title!, - color: Colors.white, + color: color, ); } } diff --git a/lib/widgets/didvan/card.dart b/lib/widgets/didvan/card.dart index e631c97..5be4aa4 100644 --- a/lib/widgets/didvan/card.dart +++ b/lib/widgets/didvan/card.dart @@ -24,7 +24,7 @@ class DidvanCard extends StatelessWidget { padding: padding, margin: margin, decoration: BoxDecoration( - borderRadius: DesignConfig.lowBorderRadius, + borderRadius: DesignConfig.mediumBorderRadius, color: Theme.of(context).colorScheme.surface, border: enableBorder ? DesignConfig.cardBorder : null, ), diff --git a/lib/widgets/didvan/text_field.dart b/lib/widgets/didvan/text_field.dart index f4e4e48..84f9087 100644 --- a/lib/widgets/didvan/text_field.dart +++ b/lib/widgets/didvan/text_field.dart @@ -4,6 +4,7 @@ import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/widgets/animated_visibility.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; +import 'package:persian_number_utility/persian_number_utility.dart'; class DidvanTextField extends StatefulWidget { final void Function(String value)? onChanged; @@ -66,6 +67,7 @@ class _DidvanTextFieldState extends State { ), if (widget.title != null) const SizedBox(height: 8), Container( + height: 48, padding: const EdgeInsets.symmetric(horizontal: 12).copyWith( left: widget.obsecureText ? 0 : 12, ), @@ -162,9 +164,7 @@ class _DidvanTextFieldState extends State { }); }, child: Icon( - _hideContent - ? DidvanIcons.eye_regular - : DidvanIcons.eye_slash_regular, + _hideContent ? DidvanIcons.eye_solid : DidvanIcons.eye_slash_solid, ), ), ); @@ -172,6 +172,7 @@ class _DidvanTextFieldState extends State { } void _onChanged(String value) { + value = value.toEnglishDigit(); if (widget.onChanged != null) { widget.onChanged!(value); } From be7939ad7f7d1e326bae9b7a169bdf5f9ba7dcf9 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 9 Jan 2022 19:11:54 +0330 Subject: [PATCH 101/273] D1APP-17 user info api added --- lib/pages/splash/splash.dart | 11 ++++++-- lib/pages/splash/splash_state.dart | 3 --- lib/providers/user_provider.dart | 42 ++++++++++++++++++++++++++++++ 3 files changed, 51 insertions(+), 5 deletions(-) delete mode 100644 lib/pages/splash/splash_state.dart diff --git a/lib/pages/splash/splash.dart b/lib/pages/splash/splash.dart index 8fe2b63..2e0dddb 100644 --- a/lib/pages/splash/splash.dart +++ b/lib/pages/splash/splash.dart @@ -1,5 +1,8 @@ +import 'dart:developer'; + import 'package:didvan/config/design_config.dart'; import 'package:didvan/main.dart'; +import 'package:didvan/providers/server_data_provider.dart'; import 'package:didvan/providers/theme_provider.dart'; import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/routes/routes.dart'; @@ -38,13 +41,17 @@ class _SplashState extends State { _isGettingThemeData = false; }), ); - final String? token = await context.read().setAndGetToken(); + final userProvider = context.read(); + final String? token = await userProvider.setAndGetToken(); if (token != null) { + log(token); RequestService.token = token; + await userProvider.getUserInfo(); + await context.read().getData(); } - await Future.delayed(const Duration(seconds: 2)); Navigator.of(context).pushReplacementNamed( token == null ? Routes.authenticaion : Routes.home, + arguments: token == null ? false : null, ); } diff --git a/lib/pages/splash/splash_state.dart b/lib/pages/splash/splash_state.dart deleted file mode 100644 index 4dfdbbe..0000000 --- a/lib/pages/splash/splash_state.dart +++ /dev/null @@ -1,3 +0,0 @@ -import 'package:didvan/providers/core_provider.dart'; - -class SplashState extends CoreProvier {} diff --git a/lib/providers/user_provider.dart b/lib/providers/user_provider.dart index 35eeb73..d17517a 100644 --- a/lib/providers/user_provider.dart +++ b/lib/providers/user_provider.dart @@ -1,7 +1,14 @@ +import 'dart:io'; + +import 'package:didvan/models/enums.dart'; +import 'package:didvan/models/user.dart'; import 'package:didvan/providers/core_provider.dart'; +import 'package:didvan/services/network/request.dart'; +import 'package:didvan/services/network/request_helper.dart'; import 'package:hive/hive.dart'; class UserProvider extends CoreProvier { + late User user; Future setAndGetToken({String? token}) async { final box = await Hive.openBox('autherization'); if (token != null) { @@ -10,4 +17,39 @@ class UserProvider extends CoreProvier { return box.toMap()['token']; } } + + Future getUserInfo() async { + final RequestService service = RequestService(RequestHelper.userInfo); + await service.httpGet(); + if (service.isSuccess) { + user = User.fromJson(service.result['user']); + return; + } + throw 'Getting user from API failed!'; + } + + Future setProfilePhoto(File file) async { + appState = AppState.isolatedBusy; + final RequestService service = + RequestService(RequestHelper.updateUserProfile); + await service.multipart(file); + if (service.isSuccess) { + appState = AppState.idle; + return true; + } + appState = AppState.failed; + return false; + } + + Future setUsername(String username) async { + appState = AppState.isolatedBusy; + final RequestService service = RequestService( + RequestHelper.updateUsername, + body: {'username': username}, + ); + await service.put(); + if (service.isSuccess) { + // appState = app + } + } } From 0e7682c18f6b8cdc6fc60b876fc4773cd34bccf7 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 11 Jan 2022 15:43:06 +0330 Subject: [PATCH 102/273] component updates --- lib/widgets/date_picker_button.dart | 4 +- lib/widgets/didvan/button.dart | 5 +- lib/widgets/didvan/switch.dart | 54 ++++++++++++++ lib/widgets/search_field.dart | 105 ++++++++++++++++++++++++++++ lib/widgets/skeletun_image.dart | 2 + 5 files changed, 168 insertions(+), 2 deletions(-) create mode 100644 lib/widgets/didvan/switch.dart create mode 100644 lib/widgets/search_field.dart diff --git a/lib/widgets/date_picker_button.dart b/lib/widgets/date_picker_button.dart index 5a7366f..a2ac7f7 100644 --- a/lib/widgets/date_picker_button.dart +++ b/lib/widgets/date_picker_button.dart @@ -52,7 +52,9 @@ class _DatePickerButtonState extends State { child: Container( padding: const EdgeInsets.all(12), decoration: BoxDecoration( - color: Theme.of(context).colorScheme.splash, + color: DesignConfig.brightness == Brightness.dark + ? Theme.of(context).colorScheme.splash + : Theme.of(context).colorScheme.surface, borderRadius: DesignConfig.lowBorderRadius, border: Border.all(color: Theme.of(context).colorScheme.border), ), diff --git a/lib/widgets/didvan/button.dart b/lib/widgets/didvan/button.dart index d85f01e..bed38e0 100644 --- a/lib/widgets/didvan/button.dart +++ b/lib/widgets/didvan/button.dart @@ -39,8 +39,11 @@ class DidvanButton extends StatelessWidget { height: 48, width: double.infinity, child: MaterialButton( - shape: const RoundedRectangleBorder( + shape: RoundedRectangleBorder( borderRadius: DesignConfig.lowBorderRadius, + side: style == ButtonStyleMode.flat + ? BorderSide(color: foregroundColor) + : BorderSide.none, ), color: backgroundColor, onPressed: () { diff --git a/lib/widgets/didvan/switch.dart b/lib/widgets/didvan/switch.dart new file mode 100644 index 0000000..d122ef4 --- /dev/null +++ b/lib/widgets/didvan/switch.dart @@ -0,0 +1,54 @@ +import 'package:didvan/pages/home/profile/widgets/menu_item.dart'; +import 'package:flutter/cupertino.dart'; +import 'package:flutter/material.dart'; + +class DidvanSwitch extends StatefulWidget { + final bool value; + final String title; + final IconData? icon; + final void Function(bool value) onChanged; + const DidvanSwitch({ + Key? key, + required this.value, + required this.title, + this.icon, + required this.onChanged, + }) : super(key: key); + + @override + _DidvanSwitchState createState() => _DidvanSwitchState(); +} + +class _DidvanSwitchState extends State { + bool _value = false; + + @override + void initState() { + _value = widget.value; + super.initState(); + } + + @override + Widget build(BuildContext context) { + return MenuItem( + title: widget.title, + onTap: () { + setState( + () => _value = !_value, + ); + widget.onChanged(_value); + }, + icon: widget.icon, + trailing: CupertinoSwitch( + activeColor: Theme.of(context).colorScheme.primary, + value: _value, + onChanged: (value) { + setState(() { + _value = value; + }); + widget.onChanged(value); + }, + ), + ); + } +} diff --git a/lib/widgets/search_field.dart b/lib/widgets/search_field.dart new file mode 100644 index 0000000..006bc3c --- /dev/null +++ b/lib/widgets/search_field.dart @@ -0,0 +1,105 @@ +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/widgets/didvan/icon_button.dart'; +import 'package:flutter/material.dart'; + +class SearchField extends StatefulWidget { + final String title; + final void Function(String value) onChanged; + final VoidCallback? onFilterButtonPressed; + + const SearchField({ + Key? key, + required this.title, + required this.onChanged, + this.onFilterButtonPressed, + }) : super(key: key); + + @override + State createState() => _SearchFieldState(); +} + +class _SearchFieldState extends State { + final FocusNode _focusNode = FocusNode(); + + @override + void initState() { + _focusNode.addListener(() { + setState(() {}); + }); + super.initState(); + } + + @override + Widget build(BuildContext context) { + return SizedBox( + height: 40, + child: Row( + children: [ + Expanded( + child: Container( + decoration: BoxDecoration( + color: _fillColor(), + ), + child: TextField( + focusNode: _focusNode, + style: Theme.of(context).textTheme.bodyText1, + textAlignVertical: TextAlignVertical.center, + onChanged: widget.onChanged, + keyboardType: TextInputType.text, + textInputAction: TextInputAction.search, + decoration: InputDecoration( + focusedBorder: OutlineInputBorder( + borderRadius: const BorderRadius.all( + Radius.circular(4), + ), + borderSide: BorderSide( + color: Theme.of(context).colorScheme.primary, + ), + ), + prefixIcon: Icon( + DidvanIcons.search_regular, + color: Theme.of(context).colorScheme.text, + ), + prefixIconColor: Theme.of(context).colorScheme.inputText, + enabledBorder: OutlineInputBorder( + borderRadius: const BorderRadius.all( + Radius.circular(4), + ), + borderSide: BorderSide( + color: Theme.of(context).colorScheme.border, + ), + ), + fillColor: Colors.red, + contentPadding: const EdgeInsets.only( + left: 12, + right: 12, + ), + border: InputBorder.none, + hintText: 'جستجو مطلب در ${widget.title}', + hintStyle: TextStyle( + color: Theme.of(context).colorScheme.disabledText), + ), + ), + ), + ), + if (widget.onFilterButtonPressed != null) const SizedBox(width: 8), + if (widget.onFilterButtonPressed != null) + DidvanIconButton( + onPressed: widget.onFilterButtonPressed!, + icon: DidvanIcons.filter_regular, + size: 32, + gestureSize: 32, + ), + ], + ), + ); + } + + Color _fillColor() { + if (_focusNode.hasFocus) { + return Theme.of(context).colorScheme.surface; + } + return Theme.of(context).colorScheme.surface; + } +} diff --git a/lib/widgets/skeletun_image.dart b/lib/widgets/skeletun_image.dart index ce77323..6699973 100644 --- a/lib/widgets/skeletun_image.dart +++ b/lib/widgets/skeletun_image.dart @@ -1,6 +1,7 @@ import 'package:cached_network_image/cached_network_image.dart'; import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/services/network/request.dart'; import 'package:flutter/material.dart'; import 'package:skeleton_text/skeleton_text.dart'; @@ -20,6 +21,7 @@ class SkeletonImage extends StatelessWidget { @override Widget build(BuildContext context) { return CachedNetworkImage( + httpHeaders: {'Authorization': 'Bearer ${RequestService.token}'}, width: width, height: height, imageUrl: imageUrl, From 330e685fa5556e40cf0baa1c0596e5f4ca223fdd Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 11 Jan 2022 15:46:59 +0330 Subject: [PATCH 103/273] D1AP-18 support for image cropper package --- android/app/src/main/AndroidManifest.xml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index aadf776..a90ba20 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -6,6 +6,10 @@ + Date: Tue, 11 Jan 2022 15:48:14 +0330 Subject: [PATCH 104/273] D1APP-17 server data provider bug fixed --- lib/main.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/main.dart b/lib/main.dart index c408635..bc5c894 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -23,7 +23,7 @@ class Didvan extends StatelessWidget { ChangeNotifierProvider( create: (context) => UserProvider(), ), - Provider( + ChangeNotifierProvider( create: (context) => ServerDataProvider(), ), ChangeNotifierProvider( From c5daae34d54f6b3ce0941377968906fb91eb730f Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 11 Jan 2022 15:54:12 +0330 Subject: [PATCH 105/273] D1APP-48 new models + model edits --- lib/models/{radar_overview => }/category.dart | 0 lib/models/comment/comment.dart | 51 ++++++++++++ lib/models/comment/feedback.dart | 16 ++++ lib/models/comment/reply.dart | 42 ++++++++++ lib/models/comment/user.dart | 19 +++++ lib/models/news_overview.dart | 39 ++++++++++ lib/models/radar_details_data/content.dart | 31 ++++++++ .../radar_details_data.dart | 78 +++++++++++++++++++ lib/models/radar_details_data/tag.dart | 16 ++++ lib/models/radar_overview/radar_overview.dart | 2 +- lib/models/user.dart | 19 +++-- lib/models/{ => view}/radar_category.dart | 0 12 files changed, 307 insertions(+), 6 deletions(-) rename lib/models/{radar_overview => }/category.dart (100%) create mode 100644 lib/models/comment/comment.dart create mode 100644 lib/models/comment/feedback.dart create mode 100644 lib/models/comment/reply.dart create mode 100644 lib/models/comment/user.dart create mode 100644 lib/models/news_overview.dart create mode 100644 lib/models/radar_details_data/content.dart create mode 100644 lib/models/radar_details_data/radar_details_data.dart create mode 100644 lib/models/radar_details_data/tag.dart rename lib/models/{ => view}/radar_category.dart (100%) diff --git a/lib/models/radar_overview/category.dart b/lib/models/category.dart similarity index 100% rename from lib/models/radar_overview/category.dart rename to lib/models/category.dart diff --git a/lib/models/comment/comment.dart b/lib/models/comment/comment.dart new file mode 100644 index 0000000..51cdaf7 --- /dev/null +++ b/lib/models/comment/comment.dart @@ -0,0 +1,51 @@ +import 'feedback.dart'; +import 'reply.dart'; +import 'user.dart'; + +class Comment { + final int id; + final String text; + final String createdAt; + final bool liked; + final bool disliked; + final Feedback feedback; + final User user; + final List replies; + + Comment({ + required this.id, + required this.text, + required this.createdAt, + required this.liked, + required this.disliked, + required this.feedback, + required this.user, + required this.replies, + }); + + factory Comment.fromJson(Map json) => Comment( + id: json['id'], + text: json['text'], + createdAt: json['createdAt'], + liked: json['liked'], + disliked: json['disliked'], + feedback: Feedback.fromJson(json['feedback']), + user: User.fromJson(json['user']), + replies: List.from( + json['replies'].map( + (reply) => Reply.fromJson(reply), + ), + ), + ); + + Map toJson() => { + 'id': id, + 'text': text, + 'createdAt': createdAt, + 'liked': liked, + 'disliked': disliked, + 'feedback': feedback.toJson(), + 'user': user.toJson(), + 'replies': replies.map((e) => e.toJson()).toList(), + }; +} diff --git a/lib/models/comment/feedback.dart b/lib/models/comment/feedback.dart new file mode 100644 index 0000000..57e756b --- /dev/null +++ b/lib/models/comment/feedback.dart @@ -0,0 +1,16 @@ +class Feedback { + final int like; + final int dislike; + + const Feedback({required this.like, required this.dislike}); + + factory Feedback.fromJson(Map json) => Feedback( + like: json['like'], + dislike: json['dislike'], + ); + + Map toJson() => { + 'like': like, + 'dislike': dislike, + }; +} diff --git a/lib/models/comment/reply.dart b/lib/models/comment/reply.dart new file mode 100644 index 0000000..3ba0185 --- /dev/null +++ b/lib/models/comment/reply.dart @@ -0,0 +1,42 @@ +import 'feedback.dart'; +import 'user.dart'; + +class Reply { + final int id; + final String text; + final String createdAt; + final bool liked; + final bool disliked; + final Feedback feedback; + final User user; + + const Reply({ + required this.id, + required this.text, + required this.createdAt, + required this.liked, + required this.disliked, + required this.feedback, + required this.user, + }); + + factory Reply.fromJson(Map json) => Reply( + id: json['id'], + text: json['text'], + createdAt: json['createdAt'], + liked: json['liked'], + disliked: json['disliked'], + feedback: Feedback.fromJson(json['feedback']), + user: User.fromJson(json['user']), + ); + + Map toJson() => { + 'id': id, + 'text': text, + 'createdAt': createdAt, + 'liked': liked, + 'disliked': disliked, + 'feedback': feedback.toJson(), + 'user': user.toJson(), + }; +} diff --git a/lib/models/comment/user.dart b/lib/models/comment/user.dart new file mode 100644 index 0000000..10ebbf3 --- /dev/null +++ b/lib/models/comment/user.dart @@ -0,0 +1,19 @@ +class User { + final int id; + final String fullName; + final String? photo; + + const User({required this.id, required this.fullName, required this.photo}); + + factory User.fromJson(Map json) => User( + id: json['id'], + fullName: json['fullName'], + photo: json['photo'], + ); + + Map toJson() => { + 'id': id, + 'fullName': fullName, + 'photo': photo, + }; +} diff --git a/lib/models/news_overview.dart b/lib/models/news_overview.dart new file mode 100644 index 0000000..fe1c60d --- /dev/null +++ b/lib/models/news_overview.dart @@ -0,0 +1,39 @@ +class NewsOverview { + final int id; + final String title; + final String reference; + final String description; + final String image; + final String createdAt; + final bool marked; + + const NewsOverview({ + required this.id, + required this.title, + required this.reference, + required this.description, + required this.image, + required this.createdAt, + required this.marked, + }); + + factory NewsOverview.fromJson(Map json) => NewsOverview( + id: json['id'], + title: json['title'], + reference: json['reference'], + description: json['description'], + image: json['image'], + createdAt: json['createdAt'], + marked: json['marked'], + ); + + Map toJson() => { + 'id': id, + 'title': title, + 'reference': reference, + 'description': description, + 'image': image, + 'createdAt': createdAt, + 'marked': marked, + }; +} diff --git a/lib/models/radar_details_data/content.dart b/lib/models/radar_details_data/content.dart new file mode 100644 index 0000000..aa431e1 --- /dev/null +++ b/lib/models/radar_details_data/content.dart @@ -0,0 +1,31 @@ +class Content { + final int order; + final String? text; + final String? audio; + final String? video; + final String? image; + + const Content({ + required this.order, + required this.text, + required this.audio, + required this.video, + required this.image, + }); + + factory Content.fromJson(Map json) => Content( + order: json['order'], + text: json['text'], + audio: json['audio'], + video: json['video'], + image: json['image'], + ); + + Map toJson() => { + 'order': order, + 'text': text, + 'audio': audio, + 'video': video, + 'image': image, + }; +} diff --git a/lib/models/radar_details_data/radar_details_data.dart b/lib/models/radar_details_data/radar_details_data.dart new file mode 100644 index 0000000..763029b --- /dev/null +++ b/lib/models/radar_details_data/radar_details_data.dart @@ -0,0 +1,78 @@ +import 'package:didvan/models/category.dart'; + +import 'content.dart'; +import 'tag.dart'; + +class RadarDetailsData { + final int id; + final String title; + final String image; + final String description; + final int timeToRead; + final String createdAt; + final String? podcast; + final bool forManagers; + final bool marked; + final int comments; + final List tags; + final List contents; + final List categories; + + const RadarDetailsData({ + required this.id, + required this.title, + required this.image, + required this.description, + required this.timeToRead, + required this.createdAt, + required this.podcast, + required this.forManagers, + required this.marked, + required this.comments, + required this.tags, + required this.contents, + required this.categories, + }); + + factory RadarDetailsData.fromJson(Map json) { + return RadarDetailsData( + id: json['id'], + title: json['title'], + image: json['image'], + description: json['description'], + timeToRead: json['timeToRead'], + createdAt: json['createdAt'], + podcast: json['podcast'], + forManagers: json['forManagers'], + marked: json['marked'], + comments: json['comments'], + tags: List.from(json['tags'].map((tag) => Tag.fromJson(tag))), + contents: List.from( + json['contents'].map( + (content) => Content.fromJson(content), + ), + ), + categories: List.from( + json['categories'].map( + (cat) => Category.fromJson(cat), + ), + ), + ); + } + + Map toJson() => { + 'id': id, + 'title': title, + 'image': image, + 'description': description, + 'timeToRead': timeToRead, + 'createdAt': createdAt, + 'podcast': podcast, + 'forManagers': forManagers, + 'marked': marked, + 'comments': comments, + 'tags': tags.map((e) => e.toJson()).toList(), + 'contents': contents.map((e) => e.toJson()).toList(), + 'categories': categories.map((e) => e.toJson()).toList(), + }; +} diff --git a/lib/models/radar_details_data/tag.dart b/lib/models/radar_details_data/tag.dart new file mode 100644 index 0000000..34e690a --- /dev/null +++ b/lib/models/radar_details_data/tag.dart @@ -0,0 +1,16 @@ +class Tag { + final int id; + final String label; + + const Tag({required this.id, required this.label}); + + factory Tag.fromJson(Map json) => Tag( + id: json['id'], + label: json['label'], + ); + + Map toJson() => { + 'id': id, + 'label': label, + }; +} diff --git a/lib/models/radar_overview/radar_overview.dart b/lib/models/radar_overview/radar_overview.dart index 4b9aa81..2a45483 100644 --- a/lib/models/radar_overview/radar_overview.dart +++ b/lib/models/radar_overview/radar_overview.dart @@ -1,4 +1,4 @@ -import 'category.dart'; +import '../category.dart'; class RadarOverview { final int id; diff --git a/lib/models/user.dart b/lib/models/user.dart index a652cb8..6b5aec3 100644 --- a/lib/models/user.dart +++ b/lib/models/user.dart @@ -1,9 +1,12 @@ +import 'package:didvan/services/network/request_helper.dart'; + class User { final int id; final String phoneNumber; final String fullName; final String? username; final String? photo; + final String? email; const User({ required this.id, @@ -11,14 +14,17 @@ class User { required this.phoneNumber, required this.photo, required this.fullName, + required this.email, }); factory User.fromJson(Map json) => User( - id: json['id'], - username: json['username'], - phoneNumber: json['phoneNumber'], - photo: json['photo'], - fullName: json['fullName']); + id: json['id'], + username: json['username'], + phoneNumber: json['phoneNumber'], + photo: RequestHelper.baseUrl + json['photo'], + fullName: json['fullName'], + email: json['email'], + ); Map toJson() => { 'id': id, @@ -26,6 +32,7 @@ class User { 'phoneNumber': phoneNumber, 'photo': photo, 'fullName': fullName, + 'email': email, }; User copyWith({ @@ -34,6 +41,7 @@ class User { String? phoneNumber, String? photo, String? fullName, + String? email, }) { return User( id: id ?? this.id, @@ -41,6 +49,7 @@ class User { phoneNumber: phoneNumber ?? this.phoneNumber, photo: photo ?? this.photo, fullName: fullName ?? this.fullName, + email: email ?? this.email, ); } } diff --git a/lib/models/radar_category.dart b/lib/models/view/radar_category.dart similarity index 100% rename from lib/models/radar_category.dart rename to lib/models/view/radar_category.dart From b7a60b0bb7a374b075f2bbfc7f8c019695efcffd Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 11 Jan 2022 15:55:18 +0330 Subject: [PATCH 106/273] D1APP-16 flushbar edits --- lib/utils/action_sheet.dart | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/utils/action_sheet.dart b/lib/utils/action_sheet.dart index 5e37f8e..da68092 100644 --- a/lib/utils/action_sheet.dart +++ b/lib/utils/action_sheet.dart @@ -63,12 +63,17 @@ class ActionSheetUtils { break; } await Flushbar( - margin: const EdgeInsets.symmetric(horizontal: 16), + margin: const EdgeInsets.only(left: 16, right: 16, bottom: 16), borderColor: foregroundColor, backgroundColor: backgroundColor, borderRadius: DesignConfig.mediumBorderRadius, - icon: const Icon(DidvanIcons.info_circle_solid), + padding: const EdgeInsets.symmetric(vertical: 16), + icon: Icon( + DidvanIcons.info_circle_solid, + color: foregroundColor, + ), shouldIconPulse: true, + dismissDirection: FlushbarDismissDirection.HORIZONTAL, flushbarPosition: FlushbarPosition.BOTTOM, messageText: StatefulBuilder(builder: (context, setState) { if (isInit) { From 45649ca352c8ca653cebed23ee5ccb950723f217 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 11 Jan 2022 15:56:35 +0330 Subject: [PATCH 107/273] structuring --- .../profile/edit_profile/widgets/switch.dart | 54 ------------ .../home/radar/widgets/search_field.dart | 83 ------------------- 2 files changed, 137 deletions(-) delete mode 100644 lib/pages/home/profile/edit_profile/widgets/switch.dart delete mode 100644 lib/pages/home/radar/widgets/search_field.dart diff --git a/lib/pages/home/profile/edit_profile/widgets/switch.dart b/lib/pages/home/profile/edit_profile/widgets/switch.dart deleted file mode 100644 index d122ef4..0000000 --- a/lib/pages/home/profile/edit_profile/widgets/switch.dart +++ /dev/null @@ -1,54 +0,0 @@ -import 'package:didvan/pages/home/profile/widgets/menu_item.dart'; -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; - -class DidvanSwitch extends StatefulWidget { - final bool value; - final String title; - final IconData? icon; - final void Function(bool value) onChanged; - const DidvanSwitch({ - Key? key, - required this.value, - required this.title, - this.icon, - required this.onChanged, - }) : super(key: key); - - @override - _DidvanSwitchState createState() => _DidvanSwitchState(); -} - -class _DidvanSwitchState extends State { - bool _value = false; - - @override - void initState() { - _value = widget.value; - super.initState(); - } - - @override - Widget build(BuildContext context) { - return MenuItem( - title: widget.title, - onTap: () { - setState( - () => _value = !_value, - ); - widget.onChanged(_value); - }, - icon: widget.icon, - trailing: CupertinoSwitch( - activeColor: Theme.of(context).colorScheme.primary, - value: _value, - onChanged: (value) { - setState(() { - _value = value; - }); - widget.onChanged(value); - }, - ), - ); - } -} diff --git a/lib/pages/home/radar/widgets/search_field.dart b/lib/pages/home/radar/widgets/search_field.dart deleted file mode 100644 index 719a3f2..0000000 --- a/lib/pages/home/radar/widgets/search_field.dart +++ /dev/null @@ -1,83 +0,0 @@ -import 'package:didvan/config/theme_data.dart'; -import 'package:didvan/constants/app_icons.dart'; -import 'package:flutter/material.dart'; - -class SearchField extends StatefulWidget { - final String title; - final void Function(String value) onChanged; - - const SearchField({Key? key, required this.title, required this.onChanged}) - : super(key: key); - - @override - State createState() => _SearchFieldState(); -} - -class _SearchFieldState extends State { - final FocusNode _focusNode = FocusNode(); - - @override - void initState() { - _focusNode.addListener(() { - setState(() {}); - }); - super.initState(); - } - - @override - Widget build(BuildContext context) { - return Container( - height: 40, - decoration: BoxDecoration( - color: _fillColor(), - ), - child: TextField( - focusNode: _focusNode, - style: Theme.of(context).textTheme.bodyText1, - textAlignVertical: TextAlignVertical.center, - onChanged: widget.onChanged, - keyboardType: TextInputType.text, - textInputAction: TextInputAction.search, - decoration: InputDecoration( - focusedBorder: OutlineInputBorder( - borderRadius: const BorderRadius.all( - Radius.circular(4), - ), - borderSide: BorderSide( - color: Theme.of(context).colorScheme.primary, - ), - ), - prefixIcon: Icon( - DidvanIcons.search_regular, - color: Theme.of(context).colorScheme.text, - ), - prefixIconColor: Theme.of(context).colorScheme.inputText, - enabledBorder: OutlineInputBorder( - borderRadius: const BorderRadius.all( - Radius.circular(4), - ), - borderSide: BorderSide( - color: Theme.of(context).colorScheme.border, - ), - ), - fillColor: Colors.red, - contentPadding: const EdgeInsets.only( - left: 12, - right: 12, - ), - border: InputBorder.none, - hintText: 'جستجو مطلب در ${widget.title}', - hintStyle: - TextStyle(color: Theme.of(context).colorScheme.disabledText), - ), - ), - ); - } - - Color _fillColor() { - if (_focusNode.hasFocus) { - return Theme.of(context).colorScheme.surface; - } - return Theme.of(context).colorScheme.surface; - } -} From aa01c941a7ae52b20de9dee712b4ac961227443e Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 11 Jan 2022 15:57:41 +0330 Subject: [PATCH 108/273] D1APP-39 news (dynamic) (beta) --- lib/pages/home/news/news.dart | 179 ++++++++++++++++++--- lib/pages/home/news/news_state.dart | 59 ++++++- lib/pages/home/news/widgets/news_item.dart | 102 +++++++----- 3 files changed, 269 insertions(+), 71 deletions(-) diff --git a/lib/pages/home/news/news.dart b/lib/pages/home/news/news.dart index 337c4a6..32f5375 100644 --- a/lib/pages/home/news/news.dart +++ b/lib/pages/home/news/news.dart @@ -1,14 +1,42 @@ -import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/pages/home/news/widgets/news_item.dart'; -import 'package:didvan/pages/home/radar/widgets/search_field.dart'; -import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; -import 'package:flutter/material.dart'; +import 'dart:async'; -class News extends StatelessWidget { +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/models/view/action_sheet_data.dart'; +import 'package:didvan/pages/home/news/news_state.dart'; +import 'package:didvan/pages/home/news/widgets/news_item.dart'; +import 'package:didvan/utils/action_sheet.dart'; +import 'package:didvan/widgets/date_picker_button.dart'; +import 'package:didvan/widgets/item_title.dart'; +import 'package:didvan/widgets/search_field.dart'; +import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; +import 'package:didvan/widgets/didvan/card.dart'; +import 'package:didvan/widgets/didvan/divider.dart'; +import 'package:didvan/widgets/shimmer_placeholder.dart'; +import 'package:didvan/widgets/sliver_state_handler.dart'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; + +class News extends StatefulWidget { const News({Key? key}) : super(key: key); + @override + State createState() => _NewsState(); +} + +class _NewsState extends State { + Timer? _timer; + + @override + void initState() { + Future.delayed(Duration.zero, () { + context.read().getNews(page: 1); + }); + super.initState(); + } + @override Widget build(BuildContext context) { + final state = context.watch(); return Scaffold( body: CustomScrollView( slivers: [ @@ -16,34 +44,133 @@ class News extends StatelessWidget { SliverPadding( padding: const EdgeInsets.only(left: 16, right: 16, bottom: 16), sliver: SliverToBoxAdapter( - child: Row( + child: SearchField( + title: 'اخبار', + onChanged: _onChanged, + onFilterButtonPressed: _showFilterBottomSheet, + ), + ), + ), + SliverStateHandler( + state: state, + builder: (context, state, index) => NewsItem( + news: state.news[index], + ), + childCount: state.news.length, + itemPadding: const EdgeInsets.only(left: 16, right: 16, bottom: 16), + placeholder: const _NewsItemPlaceholder(), + ), + ], + ), + ); + } + + void _onChanged(String value) { + final state = context.read(); + if (value.length < 4 && value.isNotEmpty || state.lastSearch == value) { + return; + } + _timer?.cancel(); + _timer = Timer(const Duration(seconds: 1), () { + state.search = value; + state.getNews(page: 1); + }); + } + + Future _showFilterBottomSheet() async { + final state = context.read(); + await ActionSheetUtils.showBottomSheet( + data: ActionSheetData( + title: 'فیلتر جستجو', + smallDismissButton: true, + titleIcon: DidvanIcons.filter_regular, + dismissTitle: 'حذف فیلتر', + confrimTitle: 'نمایش نتایج', + onDismissed: state.resetFilters, + onConfirmed: () => state.getNews(page: 1), + content: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + ItemTitle( + title: 'تاریخ خبر', + style: Theme.of(context).textTheme.bodyText2, + icon: DidvanIcons.calendar_range_regular, + ), + const SizedBox(height: 8), + StatefulBuilder( + builder: (context, setState) => Row( children: [ - Expanded( - child: SearchField( - title: 'اخبار', - onChanged: (value) {}, - ), + DatePickerButton( + initialValue: state.startDate, + emptyText: 'از تاریخ', + onPicked: (date) { + setState(() => state.startDate = date); + }, + lastDate: state.endDate, ), const SizedBox(width: 8), - GestureDetector( - onTap: () {}, - child: const Icon( - DidvanIcons.filter_regular, - size: 32, - ), + DatePickerButton( + initialValue: state.endDate, + emptyText: 'تا تاریخ', + onPicked: (date) => setState(() => state.endDate = date), + firstDate: state.startDate, ), ], ), ), - ), - SliverPadding( - padding: const EdgeInsets.symmetric(horizontal: 16), - sliver: SliverList( - delegate: SliverChildBuilderDelegate( - (context, index) => const NewsItem(), - childCount: 10, + ], + ), + ), + ); + } +} + +class _NewsItemPlaceholder extends StatelessWidget { + const _NewsItemPlaceholder({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return DidvanCard( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const ShimmerPlaceholder(height: 64, width: 64), + const SizedBox(width: 8), + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: const [ + ShimmerPlaceholder(height: 18, width: 200), + SizedBox(height: 8), + ShimmerPlaceholder(height: 18, width: 100), + ], ), - ), + ], + ), + const SizedBox(height: 12), + const ShimmerPlaceholder( + height: 16, + width: double.infinity, + ), + const SizedBox(height: 8), + const ShimmerPlaceholder( + height: 16, + width: double.infinity, + ), + const SizedBox(height: 8), + const ShimmerPlaceholder( + height: 16, + width: 100, + ), + const DidvanDivider(verticalPadding: 8), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: const [ + ShimmerPlaceholder(height: 12, width: 150), + ShimmerPlaceholder(height: 24, width: 24), + ], ), ], ), diff --git a/lib/pages/home/news/news_state.dart b/lib/pages/home/news/news_state.dart index 6717c21..ab22631 100644 --- a/lib/pages/home/news/news_state.dart +++ b/lib/pages/home/news/news_state.dart @@ -1,3 +1,60 @@ +import 'package:didvan/models/enums.dart'; +import 'package:didvan/models/news_overview.dart'; import 'package:didvan/providers/core_provider.dart'; +import 'package:didvan/services/network/request.dart'; +import 'package:didvan/services/network/request_helper.dart'; -class NewsState extends CoreProvier {} +class NewsState extends CoreProvier { + bool isFiltering = false; + String? search; + String? lastSearch; + String? startDate; + String? endDate; + + final List news = []; + + void resetFilters() { + startDate = null; + endDate = null; + getNews(page: 1); + } + + Future getNews({ + required int page, + }) async { + if (search != '' && search != null || filterApplied) { + lastSearch = search; + isFiltering = true; + news.clear(); + } else { + isFiltering = false; + } + lastSearch = search; + appState = AppState.busy; + final service = RequestService( + RequestHelper.newsOverviews( + page: 1, + startDate: startDate?.split(' ').first, + endDate: endDate?.split(' ').first, + search: search, + ), + ); + await service.httpGet(); + if (service.isSuccess) { + final newsList = service.result['news']; + for (var i = 0; i < newsList.length; i++) { + news.add(NewsOverview.fromJson(newsList[i])); + } + appState = AppState.idle; + return; + } + appState = AppState.failed; + } + + Future markNews(int id) async { + final service = RequestService(RequestHelper.markNews(id)); + await service.post(); + } + + bool get filterApplied => startDate != null || endDate != null; +} diff --git a/lib/pages/home/news/widgets/news_item.dart b/lib/pages/home/news/widgets/news_item.dart index 4f722b1..87b8fd6 100644 --- a/lib/pages/home/news/widgets/news_item.dart +++ b/lib/pages/home/news/widgets/news_item.dart @@ -1,62 +1,76 @@ import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/models/news_overview.dart'; +import 'package:didvan/pages/home/news/news_state.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; +import 'package:didvan/widgets/didvan/icon_button.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/skeletun_image.dart'; import 'package:flutter/material.dart'; +import 'package:persian_number_utility/persian_number_utility.dart'; +import 'package:provider/provider.dart'; class NewsItem extends StatelessWidget { - const NewsItem({Key? key}) : super(key: key); + final NewsOverview news; + const NewsItem({Key? key, required this.news}) : super(key: key); @override Widget build(BuildContext context) { - return Padding( - padding: const EdgeInsets.only(bottom: 16), - child: DidvanCard( - onTap: () => Navigator.of(context).pushNamed(Routes.newsDetails), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Row( - children: [ - const SkeletonImage( - imageUrl: 'https://wallpapercave.com/wp/wp9373116.jpg', - width: 64, + final state = context.read(); + return DidvanCard( + onTap: () => Navigator.of(context).pushNamed( + Routes.radarDetails, + arguments: { + 'state': state, + 'id': news.id, + }, + ), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + children: [ + SkeletonImage( + imageUrl: news.image, + width: 64, + height: 64, + ), + const SizedBox(width: 8), + Expanded( + child: SizedBox( height: 64, - ), - const SizedBox(width: 8), - Expanded( - child: SizedBox( - height: 64, - child: DidvanText( - 'بلاتکلیفی بازار فولاد به دلیل کاهش تقاضای جهانی', - style: Theme.of(context).textTheme.bodyText1, - ), + child: DidvanText( + news.title, + style: Theme.of(context).textTheme.bodyText1, ), ), - ], - ), - const SizedBox(height: 8), - const DidvanText( - 'صنعت فولاد جوادی مجد سلیمی است پس باید به آن توجه زیادی شود تا بازار به انفجار نرسد. پس جواد مهربانگو باشیم.', - maxLines: 3, - ), - const DidvanDivider(verticalPadding: 8), - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - DidvanText( - 'پایگاه خبری فولاد ایران / 2 ساعت پیش', - style: Theme.of(context).textTheme.overline, - ), - const Icon( - DidvanIcons.bookmark_regular, - ), - ], - ), - ], - ), + ), + ], + ), + const SizedBox(height: 8), + DidvanText( + news.description, + maxLines: 3, + ), + const DidvanDivider(verticalPadding: 8), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + DidvanText( + '${news.reference} | ${DateTime.parse(news.createdAt).toPersianDateStr()}', + style: Theme.of(context).textTheme.overline, + ), + DidvanIconButton( + icon: news.marked + ? DidvanIcons.bookmark_solid + : DidvanIcons.bookmark_regular, + gestureSize: 32, + onPressed: () => state.markNews(news.id), + ), + ], + ), + ], ), ); } From 76ee41c3f8f82e960b2cbe929417184ffd682f85 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 11 Jan 2022 16:17:01 +0330 Subject: [PATCH 109/273] bug fix --- lib/widgets/skeletun_image.dart | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/widgets/skeletun_image.dart b/lib/widgets/skeletun_image.dart index 6699973..c5dd3eb 100644 --- a/lib/widgets/skeletun_image.dart +++ b/lib/widgets/skeletun_image.dart @@ -40,6 +40,7 @@ class SkeletonImage extends StatelessWidget { child: Container( decoration: BoxDecoration( color: Theme.of(context).colorScheme.disabledBackground, + borderRadius: borderRadius, ), height: height, width: width, From b3605b008c0648937154701423897ebc91a9fba3 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 11 Jan 2022 18:46:48 +0330 Subject: [PATCH 110/273] D1APP-42 edit profile (dynamic) --- .../profile/edit_profile/edit_profile.dart | 190 ++++++++++++++---- lib/providers/user_provider.dart | 52 ++++- 2 files changed, 198 insertions(+), 44 deletions(-) diff --git a/lib/pages/home/profile/edit_profile/edit_profile.dart b/lib/pages/home/profile/edit_profile/edit_profile.dart index 39fa265..d6ad9ee 100644 --- a/lib/pages/home/profile/edit_profile/edit_profile.dart +++ b/lib/pages/home/profile/edit_profile/edit_profile.dart @@ -1,59 +1,169 @@ +import 'dart:async'; + import 'package:didvan/models/view/app_bar_data.dart'; import 'package:didvan/pages/home/profile/edit_profile/widgets/profile_photo.dart'; -import 'package:didvan/pages/home/profile/edit_profile/widgets/switch.dart'; import 'package:didvan/pages/home/profile/widgets/menu_item.dart'; +import 'package:didvan/providers/user_provider.dart'; +import 'package:didvan/routes/routes.dart'; +import 'package:didvan/widgets/didvan/button.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/scaffold.dart'; import 'package:didvan/widgets/didvan/text_field.dart'; import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; -class EditProfile extends StatelessWidget { +class EditProfile extends StatefulWidget { const EditProfile({Key? key}) : super(key: key); + @override + State createState() => _EditProfileState(); +} + +class _EditProfileState extends State { + Timer? _timer; + + late String fullName; + String? username; + String? email; + + final _formKey = GlobalKey(); + + @override + void initState() { + final user = context.read().user; + fullName = user.fullName; + username = user.username; + email = user.email; + super.initState(); + } + @override Widget build(BuildContext context) { - return DidvanScaffold( - appBarData: AppBarData(title: 'ویرایش پروفایل'), - children: [ - const SizedBox(height: 16), - const ProfilePhoto(), - const SizedBox(height: 16), - DidvanCard( - child: Column( - children: [ - DidvanTextField( - title: 'نام کاربری', - hintText: 'انتخاب نام کاربری (اختیاری)', - onChanged: (value) {}, + return Consumer( + builder: (context, state, child) => Material( + child: Stack( + children: [ + Form( + key: _formKey, + child: DidvanScaffold( + padding: const EdgeInsets.only(left: 16, right: 16, bottom: 92), + appBarData: AppBarData(title: 'ویرایش پروفایل'), + children: [ + const ProfilePhoto(), + const SizedBox(height: 16), + DidvanCard( + child: Column( + children: [ + DidvanTextField( + title: 'نام و نام‌ خانوادگی', + hintText: 'نام و نام خانوادگی', + initialValue: state.user.fullName, + onChanged: (value) { + _setButtonState(); + fullName = value; + }, + ), + const SizedBox(height: 16), + DidvanTextField( + title: 'موبایل', + enabled: false, + hintText: state.user.phoneNumber, + ), + const SizedBox(height: 16), + DidvanTextField( + title: 'نام کاربری', + hintText: 'انتخاب نام کاربری (اختیاری)', + onChanged: _onUsernameChanged, + initialValue: state.user.username, + validator: (value) async { + final result = await state.checkUsername(value); + if (result == false) { + return 'نام کاربری در دسترس نمی‌باشد'; + } + }, + ), + const SizedBox(height: 16), + DidvanTextField( + title: 'ایمیل', + hintText: 'مثال: example@email.com', + onChanged: (value) { + _setButtonState(); + email = value; + }, + initialValue: state.user.email, + validator: (value) async { + bool emailValid = RegExp( + r"^[a-zA-Z0-9.a-zA-Z0-9.!#$%&'*+-/=?^_`{|}~]+@[a-zA-Z0-9]+\.[a-zA-Z]+") + .hasMatch(value); + if (!emailValid) { + return 'ایمیل وارد شده معتبر نمی‌باشد'; + } + }, + ), + // const SizedBox(height: 16), + // DidvanSwitch( + // value: true, + // title: 'ورود با اثر انگشت', + // onChanged: (value) => {}, + // ), + const DidvanDivider(), + MenuItem( + title: 'تغییر رمز عبور', + onTap: () => Navigator.of(context).pushNamed( + Routes.authenticaion, + arguments: true, + ), + ), + ], + ), + ), + ], ), - const SizedBox(height: 16), - DidvanTextField( - title: 'ایمیل', - hintText: 'مثال: example@email.com', - onChanged: (value) {}, + ), + Positioned( + left: 20, + right: 20, + bottom: 20, + child: DidvanButton( + key: UniqueKey(), + title: 'ذخیره تغییرات', + onPressed: () { + if (_formKey.currentState!.validate()) { + state.editProfile(fullName, username, email); + } + }, + enabled: _buttonEnabled, ), - const SizedBox(height: 16), - const DidvanTextField( - title: 'موبایل', - enabled: false, - hintText: '09123456789', - ), - const SizedBox(height: 16), - DidvanSwitch( - value: true, - title: 'ورود با اثر انگشت', - onChanged: (value) => {}, - ), - const DidvanDivider(), - MenuItem( - title: 'تغییر رمز عبور', - onTap: () {}, - ), - ], - ), + ), + ], ), - ], + ), ); } + + void _setButtonState() { + if (!_buttonEnabled) { + setState(() {}); + } + } + + bool get _buttonEnabled { + final user = context.read().user; + return !(user.email == email && + user.fullName == fullName && + user.username == username); + } + + void _onUsernameChanged(String value) { + _setButtonState(); + username = value; + _timer?.cancel(); + if (value.length < 5) { + return; + } + _timer = Timer(const Duration(seconds: 1), () { + _formKey.currentState!.validate(); + }); + } } diff --git a/lib/providers/user_provider.dart b/lib/providers/user_provider.dart index d17517a..492a21f 100644 --- a/lib/providers/user_provider.dart +++ b/lib/providers/user_provider.dart @@ -2,9 +2,11 @@ import 'dart:io'; import 'package:didvan/models/enums.dart'; import 'package:didvan/models/user.dart'; +import 'package:didvan/models/view/alert_data.dart'; import 'package:didvan/providers/core_provider.dart'; import 'package:didvan/services/network/request.dart'; import 'package:didvan/services/network/request_helper.dart'; +import 'package:didvan/utils/action_sheet.dart'; import 'package:hive/hive.dart'; class UserProvider extends CoreProvier { @@ -34,6 +36,8 @@ class UserProvider extends CoreProvier { RequestService(RequestHelper.updateUserProfile); await service.multipart(file); if (service.isSuccess) { + user = + user.copyWith(photo: RequestHelper.baseUrl + service.result['photo']); appState = AppState.idle; return true; } @@ -41,15 +45,55 @@ class UserProvider extends CoreProvier { return false; } - Future setUsername(String username) async { - appState = AppState.isolatedBusy; + Future checkUsername(String username) async { + if (user.username == username) return true; final RequestService service = RequestService( - RequestHelper.updateUsername, + RequestHelper.checkUsername, body: {'username': username}, ); + await service.post(); + if (service.isSuccess) { + return service.result['available']; + } + return null; + } + + Future editProfile( + String fullName, + String? username, + String? email, + ) async { + appState = AppState.isolatedBusy; + final service = RequestService( + RequestHelper.updateProfile, + body: { + 'fullName': fullName, + 'email': email, + 'username': username, + }, + ); await service.put(); if (service.isSuccess) { - // appState = app + user = user.copyWith( + fullName: fullName, + email: email, + username: username, + ); + appState = AppState.idle; + ActionSheetUtils.pop(); + ActionSheetUtils.showAlert( + AlertData( + message: 'پروفایل با موفقیت ویرایش شد', + aLertType: ALertType.success, + ), + ); + return; } + appState = AppState.idle; + ActionSheetUtils.showAlert( + AlertData( + message: service.errorMessage, + ), + ); } } From 026c3a9f59a53a55900ca34854237877122f3161 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 11 Jan 2022 18:47:38 +0330 Subject: [PATCH 111/273] D1APP-43 --- lib/pages/authentication/authentication.dart | 29 +++++++-- .../authentication/authentication_state.dart | 9 ++- .../authentication/screens/password.dart | 9 +-- .../authentication/screens/username.dart | 13 ++-- .../widgets/authentication_app_bar.dart | 45 ++++++------- .../widgets/authentication_layout.dart | 65 ++++++++++++------- 6 files changed, 104 insertions(+), 66 deletions(-) diff --git a/lib/pages/authentication/authentication.dart b/lib/pages/authentication/authentication.dart index 6c98ca8..cd06164 100644 --- a/lib/pages/authentication/authentication.dart +++ b/lib/pages/authentication/authentication.dart @@ -8,19 +8,34 @@ import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; class Authentication extends StatefulWidget { - const Authentication({Key? key}) : super(key: key); + final bool isResetPassword; + const Authentication({Key? key, required this.isResetPassword}) + : super(key: key); @override State createState() => _AuthenticationState(); } class _AuthenticationState extends State { - final List _pages = const [ - UsernameInput(), - PasswordInput(), - Verification(), - ResetPassword(), - ]; + late final List _pages; + + @override + void initState() { + if (widget.isResetPassword) { + _pages = const [ + Verification(), + ResetPassword(), + ]; + } else { + _pages = const [ + UsernameInput(), + PasswordInput(), + Verification(), + ResetPassword(), + ]; + } + super.initState(); + } @override Widget build(BuildContext context) { diff --git a/lib/pages/authentication/authentication_state.dart b/lib/pages/authentication/authentication_state.dart index b6074ee..11e6eb2 100644 --- a/lib/pages/authentication/authentication_state.dart +++ b/lib/pages/authentication/authentication_state.dart @@ -1,6 +1,7 @@ import 'package:didvan/models/enums.dart'; import 'package:didvan/models/view/alert_data.dart'; import 'package:didvan/providers/core_provider.dart'; +import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/services/network/request.dart'; import 'package:didvan/services/network/request_helper.dart'; import 'package:didvan/utils/action_sheet.dart'; @@ -35,7 +36,7 @@ class AuthenticationState extends CoreProvier { } } - Future login() async { + Future login(UserProvider userProvider) async { appState = AppState.isolatedBusy; final RequestService service = RequestService( RequestHelper.login, @@ -44,8 +45,12 @@ class AuthenticationState extends CoreProvier { ); await service.post(); if (service.isSuccess && service.result['loggedIn']) { + final token = service.result['token']; appState = AppState.idle; - return service.result['token']; + await userProvider.setAndGetToken(token: token); + RequestService.token = token; + await userProvider.getUserInfo(); + return token; } else { appState = AppState.failed; ActionSheetUtils.showAlert(AlertData(message: service.errorMessage)); diff --git a/lib/pages/authentication/screens/password.dart b/lib/pages/authentication/screens/password.dart index bdd0953..ca8b5c0 100644 --- a/lib/pages/authentication/screens/password.dart +++ b/lib/pages/authentication/screens/password.dart @@ -2,7 +2,6 @@ import 'package:didvan/pages/authentication/authentication_state.dart'; import 'package:didvan/pages/authentication/widgets/authentication_layout.dart'; import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/routes/routes.dart'; -import 'package:didvan/services/network/request.dart'; import 'package:didvan/widgets/didvan/button.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/didvan/text_field.dart'; @@ -34,7 +33,7 @@ class _PasswordInputState extends State { title: 'کلمه عبور', hintText: 'کلمه عبور', obsecureText: true, - validator: (value) => value!.length < 8 + validator: (value) => value.length < 8 ? 'کلمه عبور نمی‌تواند از 8 کاراکتر کمتر باشد' : null, ), @@ -67,11 +66,9 @@ class _PasswordInputState extends State { return; } final state = context.read(); - final token = await state.login(); + final userProvider = context.read(); + final token = await state.login(userProvider); if (token != null) { - final userProvider = context.read(); - await userProvider.setAndGetToken(token: token); - RequestService.token = token; Navigator.of(context).pushReplacementNamed(Routes.home); } } diff --git a/lib/pages/authentication/screens/username.dart b/lib/pages/authentication/screens/username.dart index be3dd43..0e7b1f6 100644 --- a/lib/pages/authentication/screens/username.dart +++ b/lib/pages/authentication/screens/username.dart @@ -29,9 +29,14 @@ class _UsernameInputState extends State { title: 'نام کاربری یا شماره موبایل', hintText: 'نام کاربری یا شماره موبایل', textAlign: TextAlign.center, - validator: (value) => value!.length < 4 - ? 'نام کاربری نمی‌تواند از 4 کاراکتر کوچکتر باشد' - : null, + validator: (value) { + if (value.contains(' ')) { + return 'نام کاربری باید بدون فاصله باشد'; + } + if (value.length < 4) { + return 'نام کاربری نمی‌تواند از 4 کاراکتر کوچکتر باشد'; + } + }, onChanged: (value) { state.username = value; }, @@ -56,7 +61,7 @@ class _UsernameInputState extends State { text: TextSpan( style: Theme.of(context).textTheme.caption, children: [ - const TextSpan(text: 'با ثبت نام و ورود به دیدوان،'), + const TextSpan(text: 'با و ورود به دیدوان،'), TextSpan( text: ' شرایط ', style: Theme.of(context) diff --git a/lib/pages/authentication/widgets/authentication_app_bar.dart b/lib/pages/authentication/widgets/authentication_app_bar.dart index 7061c00..03489c2 100644 --- a/lib/pages/authentication/widgets/authentication_app_bar.dart +++ b/lib/pages/authentication/widgets/authentication_app_bar.dart @@ -1,5 +1,6 @@ import 'package:didvan/config/theme_data.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; +import 'package:didvan/widgets/didvan/icon_button.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; @@ -10,28 +11,28 @@ class AuthenticationAppBar extends StatelessWidget { @override Widget build(BuildContext context) { - return Padding( - padding: EdgeInsets.only(top: MediaQuery.of(context).padding.top + 12), - child: Row( - children: [ - GestureDetector( - onTap: () => context.read().currentPageIndex--, - child: Icon( - Icons.arrow_back, - color: Theme.of(context).colorScheme.title, - ), - ), - const SizedBox( - width: 20, - ), - if (title != null) - DidvanText( - title!, - style: Theme.of(context).textTheme.subtitle2, - color: Theme.of(context).colorScheme.title, - ) - ], - ), + final state = context.read(); + return Row( + children: [ + DidvanIconButton( + icon: Icons.arrow_back, + onPressed: () { + if (state.currentPageIndex == 0) { + Navigator.of(context).pop(); + return; + } + state.currentPageIndex--; + }), + const SizedBox( + width: 4, + ), + if (title != null) + DidvanText( + title!, + style: Theme.of(context).textTheme.subtitle2, + color: Theme.of(context).colorScheme.title, + ) + ], ); } } diff --git a/lib/pages/authentication/widgets/authentication_layout.dart b/lib/pages/authentication/widgets/authentication_layout.dart index f15e7fe..4d063d4 100644 --- a/lib/pages/authentication/widgets/authentication_layout.dart +++ b/lib/pages/authentication/widgets/authentication_layout.dart @@ -12,35 +12,50 @@ class AuthenticationLayout extends StatelessWidget { @override Widget build(BuildContext context) { - return SingleChildScrollView( - padding: const EdgeInsets.symmetric(horizontal: 20), - child: SizedBox( - height: MediaQuery.of(context).size.height, - child: Column( - children: [ - if (appBarTitle != null) - AuthenticationAppBar( + return CustomScrollView( + slivers: [ + if (appBarTitle != null) + SliverAppBar( + automaticallyImplyLeading: false, + pinned: true, + toolbarHeight: 56, + backgroundColor: Theme.of(context).colorScheme.background, + flexibleSpace: Padding( + padding: EdgeInsets.only( + left: 16, + right: 16, + top: MediaQuery.of(context).padding.top, + ), + child: AuthenticationAppBar( title: appBarTitle, ), - if (appBarTitle == null) - const SizedBox( - height: 66, - ), - const Padding( - padding: EdgeInsets.only( - top: 44, - left: 100, - right: 100, - bottom: 40, - ), - child: DidvanVerticalLogo( - height: 200, - ), ), - ...children, - ], + ), + SliverPadding( + padding: EdgeInsets.only( + top: appBarTitle == null ? 100 : 44, + left: 100, + right: 100, + bottom: 40, + ), + sliver: const SliverToBoxAdapter( + child: DidvanVerticalLogo( + height: 200, + ), + ), ), - ), + SliverPadding( + padding: const EdgeInsets.symmetric(horizontal: 20), + sliver: SliverFillRemaining( + hasScrollBody: false, + child: Column( + children: [ + for (var i = 0; i < children.length; i++) children[i], + ], + ), + ), + ), + ], ); } } From cb61fa2de78abf47866c1011d19133bfb3b984f2 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 11 Jan 2022 18:48:17 +0330 Subject: [PATCH 112/273] providers moved to top level --- lib/pages/home/home.dart | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/lib/pages/home/home.dart b/lib/pages/home/home.dart index cfb7f07..94fb048 100644 --- a/lib/pages/home/home.dart +++ b/lib/pages/home/home.dart @@ -3,7 +3,6 @@ import 'package:didvan/pages/home/home_state.dart'; import 'package:didvan/pages/home/news/news.dart'; import 'package:didvan/pages/home/profile/profile.dart'; import 'package:didvan/pages/home/radar/radar.dart'; -import 'package:didvan/pages/home/radar/radar_state.dart'; import 'package:didvan/pages/home/statistics/statistics.dart'; import 'package:didvan/pages/home/studio/studio.dart'; import 'package:didvan/pages/home/widgets/bnb.dart'; @@ -36,15 +35,12 @@ class _HomeState extends State with SingleTickerProviderStateMixin { body: TabBarView( physics: const NeverScrollableScrollPhysics(), controller: _tabController, - children: [ - const News(), - const Statictics(), - ChangeNotifierProvider( - create: (context) => RadarState(), - child: const Radar(), - ), - const Studio(), - const Profile(), + children: const [ + News(), + Statictics(), + Radar(), + Studio(), + Profile(), ], ), bottomNavigationBar: Consumer( From 543970e708f1de99956f5ba62b7dbd0628cadc58 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 11 Jan 2022 18:51:00 +0330 Subject: [PATCH 113/273] code cleaning + bug fixes --- lib/pages/home/direct/widgets/message_box.dart | 15 ++++----------- .../home/profile/direct_list/direct_list.dart | 13 +++++-------- lib/pages/home/radar/widgets/categories_list.dart | 2 +- 3 files changed, 10 insertions(+), 20 deletions(-) diff --git a/lib/pages/home/direct/widgets/message_box.dart b/lib/pages/home/direct/widgets/message_box.dart index 5aa2db5..aac3bae 100644 --- a/lib/pages/home/direct/widgets/message_box.dart +++ b/lib/pages/home/direct/widgets/message_box.dart @@ -77,17 +77,10 @@ class _Recording extends StatelessWidget { final state = context.read(); return Row( children: [ - GestureDetector( - onTap: () => state.stopRecording(true), - child: Container( - color: Colors.transparent, - height: double.infinity, - width: 52, - child: Icon( - DidvanIcons.send_solid, - color: Theme.of(context).colorScheme.focusedBorder, - ), - ), + DidvanIconButton( + icon: DidvanIcons.send_solid, + onPressed: () => state.stopRecording(true), + gestureSize: 52, ), Expanded( child: DidvanText( diff --git a/lib/pages/home/profile/direct_list/direct_list.dart b/lib/pages/home/profile/direct_list/direct_list.dart index ab583ea..68ef93c 100644 --- a/lib/pages/home/profile/direct_list/direct_list.dart +++ b/lib/pages/home/profile/direct_list/direct_list.dart @@ -1,14 +1,9 @@ -import 'package:didvan/config/theme_data.dart'; -import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/models/chat_room/chat_room.dart'; import 'package:didvan/models/view/app_bar_data.dart'; import 'package:didvan/pages/home/profile/direct_list/direct_list_state.dart'; import 'package:didvan/pages/home/profile/direct_list/widgets/chat_room_item.dart'; -import 'package:didvan/routes/routes.dart'; import 'package:didvan/widgets/didvan/badge.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/scaffold.dart'; -import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/shimmer_placeholder.dart'; import 'package:didvan/widgets/sliver_state_handler.dart'; import 'package:flutter/material.dart'; @@ -37,9 +32,11 @@ class _DirectListState extends State { appBarData: AppBarData( hasBack: true, title: 'پیام‌ها', - trailing: DidvanBadge( - text: state.unreadCount.toString(), - ), + trailing: state.unreadCount == 0 + ? null + : DidvanBadge( + text: state.unreadCount.toString(), + ), ), slivers: [ SliverStateHandler( diff --git a/lib/pages/home/radar/widgets/categories_list.dart b/lib/pages/home/radar/widgets/categories_list.dart index 2cd9e07..0db5e7d 100644 --- a/lib/pages/home/radar/widgets/categories_list.dart +++ b/lib/pages/home/radar/widgets/categories_list.dart @@ -1,6 +1,6 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; -import 'package:didvan/models/radar_category.dart'; +import 'package:didvan/models/view/radar_category.dart'; import 'package:didvan/pages/home/radar/radar_state.dart'; import 'package:didvan/widgets/animated_visibility.dart'; import 'package:didvan/widgets/didvan/text.dart'; From 6db9921dfe491c43ac9449a7a367a2e2e9fde37a Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 11 Jan 2022 18:51:39 +0330 Subject: [PATCH 114/273] component updates --- lib/widgets/didvan/button.dart | 20 ++++++++++++-------- lib/widgets/didvan/scaffold.dart | 6 +++--- lib/widgets/didvan/text_field.dart | 15 ++++++++++----- 3 files changed, 25 insertions(+), 16 deletions(-) diff --git a/lib/widgets/didvan/button.dart b/lib/widgets/didvan/button.dart index bed38e0..a3baeba 100644 --- a/lib/widgets/didvan/button.dart +++ b/lib/widgets/didvan/button.dart @@ -8,11 +8,13 @@ class DidvanButton extends StatelessWidget { final VoidCallback? onPressed; final String? title; final ButtonStyleMode style; + final bool enabled; const DidvanButton({ Key? key, this.onPressed, this.title, this.style = ButtonStyleMode.primary, + this.enabled = true, }) : super(key: key); @override @@ -34,7 +36,6 @@ class DidvanButton extends StatelessWidget { break; default: } - return SizedBox( height: 48, width: double.infinity, @@ -46,20 +47,23 @@ class DidvanButton extends StatelessWidget { : BorderSide.none, ), color: backgroundColor, - onPressed: () { - FocusScope.of(context).unfocus(); - onPressed?.call(); - }, - child: _childBuilder(foregroundColor), + disabledColor: Theme.of(context).colorScheme.disabledBackground, + onPressed: !enabled + ? null + : () { + FocusScope.of(context).unfocus(); + onPressed?.call(); + }, + child: _childBuilder(foregroundColor, context), ), ); } - Widget? _childBuilder(Color color) { + Widget? _childBuilder(Color color, context) { if (title != null) { return DidvanText( title!, - color: color, + color: enabled ? color : Theme.of(context).colorScheme.disabledText, ); } } diff --git a/lib/widgets/didvan/scaffold.dart b/lib/widgets/didvan/scaffold.dart index ccafa58..55f7d27 100644 --- a/lib/widgets/didvan/scaffold.dart +++ b/lib/widgets/didvan/scaffold.dart @@ -6,13 +6,13 @@ class DidvanScaffold extends StatelessWidget { final List? slivers; final List? children; final AppBarData appBarData; - final bool hasPadding; + final EdgeInsets padding; const DidvanScaffold({ Key? key, this.slivers, required this.appBarData, - this.hasPadding = true, this.children, + this.padding = const EdgeInsets.symmetric(horizontal: 16), }) : super(key: key); @override @@ -35,7 +35,7 @@ class DidvanScaffold extends StatelessWidget { ), if (children != null) SliverPadding( - padding: const EdgeInsets.symmetric(horizontal: 16), + padding: padding, sliver: SliverList( delegate: SliverChildBuilderDelegate( (context, index) => children![index], diff --git a/lib/widgets/didvan/text_field.dart b/lib/widgets/didvan/text_field.dart index 84f9087..cd13c85 100644 --- a/lib/widgets/didvan/text_field.dart +++ b/lib/widgets/didvan/text_field.dart @@ -15,7 +15,7 @@ class DidvanTextField extends StatefulWidget { final String? hintText; final dynamic initialValue; final bool obsecureText; - final String? Function(String? value)? validator; + final Function(String value)? validator; final TextInputType? textInputType; const DidvanTextField({ Key? key, @@ -84,7 +84,9 @@ class _DidvanTextFieldState extends State { focusNode: _focusNode, controller: _controller, onChanged: _onChanged, - validator: _validator, + validator: (value) { + _validator(value); + }, obscuringCharacter: '*', style: Theme.of(context).textTheme.bodyText1, decoration: InputDecoration( @@ -142,7 +144,7 @@ class _DidvanTextFieldState extends State { Color _fillColor() { if (!widget.enabled) { - return Theme.of(context).colorScheme.secondCTA; + return Theme.of(context).colorScheme.disabledBackground; } if (_focusNode.hasFocus) { return Theme.of(context).colorScheme.focused; @@ -172,15 +174,18 @@ class _DidvanTextFieldState extends State { } void _onChanged(String value) { + setState(() { + _error = null; + }); value = value.toEnglishDigit(); if (widget.onChanged != null) { widget.onChanged!(value); } } - String? _validator(String? value) { + Future _validator(String? value) async { if (widget.validator != null) { - final String? error = widget.validator!(value); + final String? error = await widget.validator!(value!); if (error != null) { setState(() { _error = error; From 900023e43c70cd91c8b2acc1f76a4ed1d1549e3c Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 11 Jan 2022 18:52:18 +0330 Subject: [PATCH 115/273] D1APP-22 request service edits --- lib/services/network/request.dart | 14 ++++---- lib/services/network/request_helper.dart | 42 ++++++++++++++++++++---- 2 files changed, 42 insertions(+), 14 deletions(-) diff --git a/lib/services/network/request.dart b/lib/services/network/request.dart index 346dcb2..63d5035 100644 --- a/lib/services/network/request.dart +++ b/lib/services/network/request.dart @@ -2,11 +2,10 @@ import 'dart:convert'; import 'dart:developer'; import 'dart:io'; import 'package:http/http.dart' as http; +import 'package:http_parser/http_parser.dart' as parser; class RequestService { - static late String _token; - - static set token(String value) => _token = value; + static late String token; Map get result => _body['result'] ?? const {}; Map get errors => _body['errors'] ?? const {}; @@ -32,7 +31,7 @@ class RequestService { }) { if (body != null) _requestBody = body; if (requestHeaders != null) _headers.addAll(requestHeaders); - if (useAutherization) _headers.addAll({'Authorization': 'Bearer $_token'}); + if (useAutherization) _headers.addAll({'Authorization': 'Bearer $token'}); if (body != null) _requestBody = body; } @@ -99,15 +98,16 @@ class RequestService { Future multipart(File file) async { try { - final request = http.MultipartRequest('POST', Uri.parse(url)); + final request = http.MultipartRequest('PUT', Uri.parse(url)); _headers.update('Content-Type', (_) => 'multipart/form-data'); request.headers.addAll(_headers); request.files.add( http.MultipartFile( - 'file', + 'photo', file.readAsBytes().asStream(), file.lengthSync(), - filename: 'desc', + filename: 'profile-photo', + contentType: parser.MediaType('image', 'jpg'), ), ); final streamedResponse = await request diff --git a/lib/services/network/request_helper.dart b/lib/services/network/request_helper.dart index a14df9c..8817b8b 100644 --- a/lib/services/network/request_helper.dart +++ b/lib/services/network/request_helper.dart @@ -1,18 +1,30 @@ class RequestHelper { - static const String _baseUrl = 'https://didvan-greatsam.fandogh.cloud'; - static const String _baseUserUrl = _baseUrl + '/user'; + static const String baseUrl = 'https://didvan-greatsam.fandogh.cloud'; + static const String _baseUserUrl = baseUrl + '/user'; + static const String _baseRadarUrl = baseUrl + '/radar'; + static const String _baseNewsUrl = baseUrl + '/news'; static const String confirmUsername = _baseUserUrl + '/confirmUsername'; static const String login = _baseUserUrl + '/login'; static const String directs = _baseUserUrl + '/direct'; static const String userInfo = _baseUserUrl + '/info'; static const String updateUserProfile = _baseUserUrl + '/profile/photo'; - static const String updateUsername = _baseUserUrl + '/setUsername'; + static const String checkUsername = _baseUserUrl + '/CheckUsername'; + static const String updateProfile = _baseUserUrl + '/profile/edit'; - static const String radarCategories = _baseUrl + '/category'; + static const String directTypes = baseUrl + '/direct/types'; + static const String addComment = baseUrl + '/comment/add'; + static String feedbackComment(int id) => baseUrl + '/comment/$id/feedback'; static String direct(int id) => _baseUserUrl + '/direct/$id'; - static String getRadarOverviews({ + + static String markRadar(int id) => _baseRadarUrl + '/mark/$id'; + static String radarDetails(int id) => _baseRadarUrl + '/$id'; + static String radarComments(int id) => _baseRadarUrl + '/$id/comments'; + static String markNews(int id) => _baseNewsUrl + '/mark/$id'; + static String newsDetails(int id) => _baseNewsUrl + '/$id'; + static String newsComments(int id) => _baseNewsUrl + '/$id/comments'; + static String radarOverviews({ required int page, List categories = const [], String? startDate, @@ -29,8 +41,24 @@ class RequestHelper { } } } - return _baseUrl + - '/radar' + + return _baseRadarUrl + + _urlConcatGenerator([ + MapEntry('page', page.toString()), + MapEntry('start', startDate), + MapEntry('end', endDate), + MapEntry('search', search), + MapEntry('categories', cats), + ]); + } + + static String newsOverviews({ + required int page, + String? startDate, + String? endDate, + String? search, + }) { + String? cats; + return _baseNewsUrl + _urlConcatGenerator([ MapEntry('page', page.toString()), MapEntry('start', startDate), From a103f0e574454a939905fd53217665bc5ffb51f2 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 11 Jan 2022 18:53:08 +0330 Subject: [PATCH 116/273] D1APP-22 image picker --- lib/services/media/media.dart | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 lib/services/media/media.dart diff --git a/lib/services/media/media.dart b/lib/services/media/media.dart new file mode 100644 index 0000000..b3f6f5d --- /dev/null +++ b/lib/services/media/media.dart @@ -0,0 +1,20 @@ +import 'dart:io'; + +import 'package:image_cropper/image_cropper.dart'; +import 'package:image_picker/image_picker.dart'; + +class MediaService { + static Future pickImage({required ImageSource source}) async { + final imagePicker = ImagePicker(); + final XFile? pickedFile = await imagePicker.pickImage(source: source); + if (pickedFile == null) { + return null; + } + final cropedFile = await ImageCropper.cropImage( + sourcePath: pickedFile.path, + aspectRatio: const CropAspectRatio(ratioX: 1, ratioY: 1), + compressQuality: 70, + ); + return cropedFile; + } +} From a366c0372f3e2940d9573a78c64f38fea1720136 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 11 Jan 2022 18:53:25 +0330 Subject: [PATCH 117/273] route system updated --- lib/routes/route_generator.dart | 63 +++++++++++++++++++++++++-------- lib/routes/routes.dart | 1 + 2 files changed, 50 insertions(+), 14 deletions(-) diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index 263f212..37c9124 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -1,11 +1,14 @@ import 'package:didvan/pages/authentication/authentication.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; +import 'package:didvan/pages/home/comments/comments.dart'; +import 'package:didvan/pages/home/comments/comments_state.dart'; import 'package:didvan/pages/home/direct/direct.dart'; import 'package:didvan/pages/home/direct/direct_state.dart'; import 'package:didvan/pages/home/home.dart'; import 'package:didvan/pages/home/home_state.dart'; import 'package:didvan/pages/home/news/news_details/news_details.dart'; import 'package:didvan/pages/home/news/news_details/news_details_state.dart'; +import 'package:didvan/pages/home/news/news_state.dart'; import 'package:didvan/pages/home/profile/direct_list/direct_list.dart'; import 'package:didvan/pages/home/profile/direct_list/direct_list_state.dart'; import 'package:didvan/pages/home/profile/edit_profile/edit_profile.dart'; @@ -13,8 +16,8 @@ import 'package:didvan/pages/home/profile/settings/settings.dart'; import 'package:didvan/pages/home/profile/settings/settings_state.dart'; import 'package:didvan/pages/home/radar/radar_details/radar_details.dart'; import 'package:didvan/pages/home/radar/radar_details/radar_details_state.dart'; +import 'package:didvan/pages/home/radar/radar_state.dart'; import 'package:didvan/pages/splash/splash.dart'; -import 'package:didvan/pages/splash/splash_state.dart'; import 'package:didvan/routes/routes.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; @@ -24,22 +27,29 @@ class RouteGenerator { switch (settings.name) { case Routes.splash: return _createRoute( - ChangeNotifierProvider( - create: (context) => SplashState(), - child: const Splash(), - ), + const Splash(), ); case Routes.authenticaion: return _createRoute( ChangeNotifierProvider( create: (context) => AuthenticationState(), - child: const Authentication(), + child: Authentication(isResetPassword: settings.arguments as bool), ), ); case Routes.home: return _createRoute( - ChangeNotifierProvider( - create: (context) => HomeState(), + MultiProvider( + providers: [ + ChangeNotifierProvider( + create: (context) => HomeState(), + ), + ChangeNotifierProvider( + create: (context) => RadarState(), + ), + ChangeNotifierProvider( + create: (context) => NewsState(), + ), + ], child: const Home(), ), ); @@ -56,15 +66,31 @@ class RouteGenerator { ); case Routes.radarDetails: return _createRoute( - ChangeNotifierProvider( - create: (context) => RadarDetailsState(), - child: const RadarDetails(), + MultiProvider( + providers: [ + ChangeNotifierProvider( + create: (context) => RadarDetailsState(), + ), + ChangeNotifierProvider.value( + value: (settings.arguments as Map)['state'], + ) + ], + child: RadarDetails( + id: (settings.arguments as Map)['id'], + ), ), ); case Routes.newsDetails: return _createRoute( - ChangeNotifierProvider( - create: (context) => NewsDetailsState(), + MultiProvider( + providers: [ + ChangeNotifierProvider( + create: (context) => NewsDetailsState(), + ), + ChangeNotifierProvider.value( + value: (settings.arguments as Map)['state'], + ) + ], child: const NewsDetails(), ), ); @@ -79,7 +105,16 @@ class RouteGenerator { return _createRoute( ChangeNotifierProvider( create: (context) => DirectState(), - child: const Direct(), + child: Direct(id: settings.arguments as int), + ), + ); + case Routes.comments: + return _createRoute( + ChangeNotifierProvider( + create: (context) => CommentsState(), + child: Comments( + pageData: settings.arguments as Map, + ), ), ); default: diff --git a/lib/routes/routes.dart b/lib/routes/routes.dart index ccfb5a7..46bbb21 100644 --- a/lib/routes/routes.dart +++ b/lib/routes/routes.dart @@ -9,4 +9,5 @@ class Routes { static const String newsDetails = '/news-details'; static const String directList = '/direct-list'; static const String direct = '/direct'; + static const String comments = '/comments'; } From 0d3077cc25cd809396badd2a7163ed7048592eee Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 11 Jan 2022 18:54:42 +0330 Subject: [PATCH 118/273] D1APP-61 basic ui and api call --- lib/pages/home/comments/comments.dart | 37 +++++++++++++++++++++ lib/pages/home/comments/comments_state.dart | 31 +++++++++++++++++ 2 files changed, 68 insertions(+) create mode 100644 lib/pages/home/comments/comments.dart create mode 100644 lib/pages/home/comments/comments_state.dart diff --git a/lib/pages/home/comments/comments.dart b/lib/pages/home/comments/comments.dart new file mode 100644 index 0000000..5846b44 --- /dev/null +++ b/lib/pages/home/comments/comments.dart @@ -0,0 +1,37 @@ +import 'package:didvan/models/view/app_bar_data.dart'; +import 'package:didvan/pages/home/comments/comments_state.dart'; +import 'package:didvan/widgets/didvan/scaffold.dart'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; + +class Comments extends StatefulWidget { + final Map pageData; + const Comments({ + Key? key, + required this.pageData, + }) : super(key: key); + + @override + _CommentsState createState() => _CommentsState(); +} + +class _CommentsState extends State { + @override + void initState() { + final state = context.read(); + state.id = widget.pageData['id']; + state.isRadar = widget.pageData['isRadar']; + Future.delayed( + Duration.zero, + () => state.getComments(), + ); + super.initState(); + } + + @override + Widget build(BuildContext context) { + return DidvanScaffold( + appBarData: AppBarData(), + ); + } +} diff --git a/lib/pages/home/comments/comments_state.dart b/lib/pages/home/comments/comments_state.dart new file mode 100644 index 0000000..5f48e8a --- /dev/null +++ b/lib/pages/home/comments/comments_state.dart @@ -0,0 +1,31 @@ +import 'package:didvan/models/comment/comment.dart'; +import 'package:didvan/models/enums.dart'; +import 'package:didvan/providers/core_provider.dart'; +import 'package:didvan/services/network/request.dart'; +import 'package:didvan/services/network/request_helper.dart'; + +class CommentsState extends CoreProvier { + final List comments = []; + + bool isRadar = true; + int id = 0; + + Future getComments() async { + appState = AppState.busy; + final service = RequestService( + isRadar + ? RequestHelper.radarComments(id) + : RequestHelper.newsComments(id), + ); + await service.httpGet(); + if (service.isSuccess) { + final messages = service.result['messages']; + for (var i = 0; i < messages.length; i++) { + comments.add(Comment.fromJson(messages[i])); + } + appState = AppState.idle; + return; + } + appState = AppState.failed; + } +} From 438cd37bb286be53f36455c47700d33c6b09661d Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 15 Jan 2022 15:52:03 +0330 Subject: [PATCH 119/273] package updates --- pubspec.lock | 84 ++++++++++++++++++++++++++++++---------------------- pubspec.yaml | 9 ++---- 2 files changed, 52 insertions(+), 41 deletions(-) diff --git a/pubspec.lock b/pubspec.lock index 0aa30c6..efe1f1a 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -1,13 +1,6 @@ # Generated by pub # See https://dart.dev/tools/pub/glossary#lockfile packages: - another_flushbar: - dependency: "direct main" - description: - name: another_flushbar - url: "https://pub.dartlang.org" - source: hosted - version: "1.10.28" async: dependency: transitive description: @@ -29,6 +22,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.1.0" + bot_toast: + dependency: "direct main" + description: + name: bot_toast + url: "https://pub.dartlang.org" + source: hosted + version: "4.0.1" cached_network_image: dependency: "direct main" description: @@ -179,6 +179,48 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.0.5" + flutter_secure_storage: + dependency: "direct main" + description: + name: flutter_secure_storage + url: "https://pub.dartlang.org" + source: hosted + version: "5.0.2" + flutter_secure_storage_linux: + dependency: transitive + description: + name: flutter_secure_storage_linux + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.0" + flutter_secure_storage_macos: + dependency: transitive + description: + name: flutter_secure_storage_macos + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.0" + flutter_secure_storage_platform_interface: + dependency: transitive + description: + name: flutter_secure_storage_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.0" + flutter_secure_storage_web: + dependency: transitive + description: + name: flutter_secure_storage_web + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.2" + flutter_secure_storage_windows: + dependency: transitive + description: + name: flutter_secure_storage_windows + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.2" flutter_spinkit: dependency: "direct main" description: @@ -217,20 +259,6 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.1.0" - hive: - dependency: "direct main" - description: - name: hive - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.5" - hive_flutter: - dependency: "direct main" - description: - name: hive_flutter - url: "https://pub.dartlang.org" - source: hosted - version: "1.1.0" html: dependency: transitive description: @@ -434,20 +462,6 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.11.1" - permission_handler: - dependency: "direct main" - description: - name: permission_handler - url: "https://pub.dartlang.org" - source: hosted - version: "8.3.0" - permission_handler_platform_interface: - dependency: transitive - description: - name: permission_handler_platform_interface - url: "https://pub.dartlang.org" - source: hosted - version: "3.7.0" persian_datetime_picker: dependency: "direct main" description: diff --git a/pubspec.yaml b/pubspec.yaml index 7a1a0c4..359f899 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,5 +1,5 @@ name: didvan -description: A new Flutter project. +description: چشم همیشه باز مدیران # The following line prevents the package from being accidentally published to # pub.dev using `flutter pub publish`. This is preferred for private packages. @@ -39,7 +39,6 @@ dependencies: provider: ^6.0.1 pin_code_fields: ^7.3.0 rive: ^0.7.33 - hive: ^2.0.5 image_picker: ^0.8.4+4 day_night_time_picker: ^1.0.3+1 path_provider: ^2.0.8 @@ -49,18 +48,16 @@ dependencies: skeleton_text: ^3.0.0 carousel_slider: ^4.0.0 flutter_vibrate: ^1.3.0 - hive_flutter: ^1.1.0 - # flutter_sound: ^8.4.2 - permission_handler: ^8.3.0 universal_html: ^2.0.8 record: ^3.0.2 just_audio: ^0.9.18 record_web: ^0.2.1 just_waveform: ^0.0.1 - another_flushbar: ^1.10.28 persian_datetime_picker: ^2.4.0 persian_number_utility: ^1.1.1 image_cropper: ^1.4.1 + bot_toast: ^4.0.1 + flutter_secure_storage: ^5.0.2 dev_dependencies: flutter_test: From dfa957f4fd8d3c15a3bab26eb427c6f7a36b539f Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 15 Jan 2022 15:53:08 +0330 Subject: [PATCH 120/273] D1APP-16 new package configurations --- lib/main.dart | 3 + lib/utils/action_sheet.dart | 116 ++++++++++++++++++++---------------- 2 files changed, 68 insertions(+), 51 deletions(-) diff --git a/lib/main.dart b/lib/main.dart index bc5c894..9c23e4d 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,3 +1,4 @@ +import 'package:bot_toast/bot_toast.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/providers/server_data_provider.dart'; import 'package:didvan/providers/theme_provider.dart'; @@ -41,6 +42,8 @@ class Didvan extends StatelessWidget { color: LightThemeConfig.themeData.primaryColor, themeMode: themeProvider.themeMode, onGenerateRoute: (settings) => RouteGenerator.generateRoute(settings), + builder: BotToastInit(), //1. call BotToastInit + navigatorObservers: [BotToastNavigatorObserver()], initialRoute: '/', localizationsDelegates: const [ GlobalCupertinoLocalizations.delegate, diff --git a/lib/utils/action_sheet.dart b/lib/utils/action_sheet.dart index da68092..212570b 100644 --- a/lib/utils/action_sheet.dart +++ b/lib/utils/action_sheet.dart @@ -1,9 +1,8 @@ import 'dart:async'; -import 'package:another_flushbar/flushbar.dart'; +import 'package:bot_toast/bot_toast.dart'; import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; -import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/constants/assets.dart'; import 'package:didvan/models/enums.dart'; import 'package:didvan/models/view/action_sheet_data.dart'; @@ -11,7 +10,6 @@ import 'package:didvan/models/view/alert_data.dart'; import 'package:didvan/widgets/didvan/button.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; import 'package:rive/rive.dart'; class ActionSheetUtils { @@ -33,17 +31,6 @@ class ActionSheetUtils { ); } - static AnnotatedRegion _customSystemOverlayStyle({required Widget child}) { - return AnnotatedRegion( - value: DesignConfig.systemUiOverlayStyle.copyWith( - systemNavigationBarColor: DesignConfig - .systemUiOverlayStyle.systemNavigationBarColor! - .withBlue(20), - ), - child: child, - ); - } - static Future showAlert(AlertData alertData) async { bool isInit = true; Color backgroundColor; @@ -62,44 +49,71 @@ class ActionSheetUtils { foregroundColor = Theme.of(context).colorScheme.error; break; } - await Flushbar( - margin: const EdgeInsets.only(left: 16, right: 16, bottom: 16), - borderColor: foregroundColor, + BotToast.showNotification( backgroundColor: backgroundColor, - borderRadius: DesignConfig.mediumBorderRadius, - padding: const EdgeInsets.symmetric(vertical: 16), - icon: Icon( - DidvanIcons.info_circle_solid, - color: foregroundColor, + title: (cancelFunc) => StatefulBuilder( + builder: (context, setState) { + if (isInit) { + Future.delayed(Duration.zero, () { + setState(() {}); + isInit = false; + }); + } + return Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + DidvanText(alertData.message, color: foregroundColor), + AnimatedContainer( + duration: const Duration(seconds: 2), + width: isInit ? MediaQuery.of(context).size.width - 32 : 0, + height: 2, + color: foregroundColor, + ), + ], + ); + }, ), - shouldIconPulse: true, - dismissDirection: FlushbarDismissDirection.HORIZONTAL, - flushbarPosition: FlushbarPosition.BOTTOM, - messageText: StatefulBuilder(builder: (context, setState) { - if (isInit) { - Future.delayed(Duration.zero, () { - setState(() {}); - isInit = false; - }); - } - return Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - DidvanText(alertData.message, color: foregroundColor), - AnimatedContainer( - duration: const Duration(seconds: 2), - width: isInit ? MediaQuery.of(context).size.width - 32 : 0, - height: 2, - color: foregroundColor, - ), - ], - ); - }), - duration: const Duration(seconds: 2), - boxShadows: [ - BoxShadow(color: Theme.of(context).colorScheme.cardBorder), - ], - ).show(context); + ); + // ignore: avoid_single_cascade_in_expression_statements + // Flushbar( + // margin: const EdgeInsets.only(left: 16, right: 16, bottom: 16), + // borderColor: foregroundColor, + // backgroundColor: backgroundColor, + // borderRadius: DesignConfig.mediumBorderRadius, + // padding: const EdgeInsets.symmetric(vertical: 16), + // icon: Icon( + // DidvanIcons.info_circle_solid, + // color: foregroundColor, + // ), + // shouldIconPulse: true, + // dismissDirection: FlushbarDismissDirection.HORIZONTAL, + // flushbarPosition: FlushbarPosition.BOTTOM, + // messageText: StatefulBuilder(builder: (context, setState) { + // if (isInit) { + // Future.delayed(Duration.zero, () { + // setState(() {}); + // isInit = false; + // }); + // } + // return Column( + // crossAxisAlignment: CrossAxisAlignment.start, + // children: [ + // DidvanText(alertData.message, color: foregroundColor), + // AnimatedContainer( + // duration: const Duration(seconds: 2), + // width: isInit ? MediaQuery.of(context).size.width - 32 : 0, + // height: 2, + // color: foregroundColor, + // ), + // ], + // ); + // }), + // duration: const Duration(seconds: 2), + // boxShadows: [ + // BoxShadow(color: Theme.of(context).colorScheme.cardBorder), + // ], + // )..show(context); } static Future showBottomSheet({required ActionSheetData data}) async { @@ -160,7 +174,7 @@ class ActionSheetUtils { data.onDismissed?.call(); }, title: data.dismissTitle ?? 'بازگشت', - style: ButtonStyleMode.flat, + style: ButtonStyleMode.secondary, ), ), if (data.hasDismissButton) const SizedBox(width: 20), From 2bc9bc6064f844c5c8a657998890743c2566ad9a Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 15 Jan 2022 15:53:52 +0330 Subject: [PATCH 121/273] D1APP-1 design updates --- lib/assets/icons/Dicon.ttf | Bin 50504 -> 52164 bytes lib/config/design_config.dart | 1 + lib/config/theme_data.dart | 4 +- lib/constants/app_icons.dart | 392 ++++++++++++++++++---------------- 4 files changed, 208 insertions(+), 189 deletions(-) diff --git a/lib/assets/icons/Dicon.ttf b/lib/assets/icons/Dicon.ttf index b1795c52bdae2634907384eb6b81f8d1344bc6f5..ac60bdfbbbfe2a870d4dcdb5a973e4aede411eb5 100644 GIT binary patch literal 52164 zcmeFad3+qzl|Op#t?sVg_o`mii(1_+$+mWN+mbEs@`CprF9L&Y@CIhFApsH$gkZ3N zge3$V5`qKSAju@ZgxH2Gkg#PTamZu{ko;x|g`GE(Aq;QS!Y*Ic-J z^B(={GjC?h*}+)AebKHDZTr$C(=TK!_It)2nQ`&f&0F%p7hl4?IA^tsaX}q$lyQ6< z&~)+cE3ckREi?Ylj46wDU3%f>Jx|=fs zbjFSr7!$AVx%7%FAN=a(ZZ!8UW5H(``mU^aZwEdN#@>5Rd6TZ3@$ZDZf~&ixukJf9 zH1$82kM3pcb!ATR^zZk6rMxL##<`mbx{80)(h2@)7LjLk)r%jzMxI;Wdszn?U}DbT zqE#%oYx9+turzaw`F`v%-?jas&1m0xlH)%5mg5R%u92&X!S7^FjP=8UFm}-T&4152 zIeH+NQ^D17{w>=!cMF?gFymJeAM2GB>|WevV}nNgKkz>|_#Ybh|4swoD)1+yC1Vo- z;9>Eu#b^8-TqTa1h~JPDxbEOD$a@@g-T2jekR1l(6s{5f)2G0_4z%cEDkOmi&-s|2 z1z3=USQxS=%3>_eG^VozOR^N?ONM1x1Iw{IE3hJKWF^+b%B;ewteLg2RyG0epTyc& zJ7iNQ>tfxkhxM`=tFy^$3hQJ2Y$}@usWqL=U^Ce)Hk-|1bJ-x9$L6yIY#}>`En1u5&X+%%*#+!EwuNnF+t@|yVz!;_ zU_03^wwqnTE@gYzW$bcx1-p{%W&7Aw>}vKQ_F;AnyOv$YKEgiAu4nt%4eUmC6Z;su znSGqy!Va)o*=_6~JH&2hcd$FzC)g+1UF>dl4`kY>*nRBN?0)tDJIp@A9%P?opJNZP z&$EZw5%vZ42z!)$k$s7MnSF(Ql|9BDXJ2DqXWw9d$G*wF#r_xjHv0~Hf_;}AWyheA zo@7t4@3HT*AFv;?r`a>?N9@P!S@s-zp1r_cWItg)Wj|v-XD_i|uwP=TNJjtv{hyx@ z;FX^^fW9PED%B~`w+*C04I4n+%&>td-mrmq$gqL5pJ4;IfEhNBt~6`_XE4JC;w{4l za0@eR0N*gf25=BFYydAY!v=5_Gi(5VF~bJZ@`erIIcC@Z?qh}x;6rBE0FGpa4d6{? z*Z?kNh7I6XX4nAEWrhvlVP@C>Zf1rJ;A>{s01jt{4d8WV*Z{6)h7I6K{ z3>zSem|+8?5;JUod}4+TkW|dD0WymjHb8nY!v@GPX4n9U#ta)E+n8Ykq#QGBfV^Xd z4Ul}yumLiV88$!~GQ$SQMP}Fl3CRo_AS;<+1EeN1Y+y5RYy%`IGi-oNWrhuquFS9j za+Vo3K;kmP2FPA!*Z?Wa3>zSinPCGYGc#;}jAn)nkk-tw0dkueHb8g*Ex`;Mpf8wV1M~(nY>>z6 zaSnhsVa5gvpjVi&(E?}~W^A$mx`r7;7C`GT<2(zXf0%K;1&n@gwm=?VfMb9>z7WR% zM&EC-02+%KTP=X@V#YQLpv9PRkp<9a%(&PBXf|eSw*Weh89OY1wqwRl3!wLyvC9Hz zKxXW=0J@MFmskL;$c#%ZfPQ4g9t)r;nQ@r~(3#A*+yZD%W?W$b^e8i~v;Z2F8G9{& zZe_+k3!r70ag_zox6HWO0%%@le8>XmU}k*S0%&7qTw?+BGBd8V02-PZ*I58v&5Vy& z0Iki8k6Hlz&5Y|UfF@_gehZ+}nQ?;!jK06o0_b^W+++bXJ~KXM0dzkzZngkc05d*r z0qg;0++qPN17;ks05$?MZnXf`0yA#20Cod24q5;Uf*FS_fGxp{+bw`q!HhdBfPKM? zJ1u~v!HiE>0GopupR@qh2Q%)n0Cos7?zR9H2{Z1o0JaG;?zI3`3Nt=s0qhlK+-CuK zW5%Z~fDOZp`z?Sq!;A+kfL+6k!xq58Va8`HfUU!f2Q7fr!;H^b0Q-j-pR)j#5HlXK z05%abK5qe|?;o}Rb`mp=SOANO8DFpfwi7cRu>e*SGaj`7_7pR|XaOuMW_-y4*jUW? zvIVfVnDG@0V0SU&s}{flW5#0^z!qc1;}*awW5(AkfPKb{uUi01jTzst05%&l{>}ne zZ_N0n1+e3o@huBr(J|wHSpeIP8Q-=5Rvt6HV*%_vW;|g5EI(#^*8GmcvT3y~R5S^!&-8BbY2aSY>o7QlXF#`i6NCCQ8*SOA-n89%gu(f3bV06UWz z&sYG9lNmp<0JbMHery4(P-Z-90qjv`JZAwcQ)WDG0c=!eykG&WRc5?s0qj<0{KNuS zu*~?W1+ZnA@iPlx)iUGf7Qnt`#!D8!(q+akEP&0+j9*#+>z5fPEPx#hAI1W*i1F_* z@8eJLSNUH>T1*zJ#6EGa__laO{8dRRla&jUgUYuZ1CA%0ZfA#co%3erQ_i?rVxSeYoklva5W4`Dmr7a(Bh7uBiTV^ZCt3 zTdr@dwB9=5;6yg@{)ul*S~ThLNw2rX+vc=g+4kkOSK1e~|FEO0d|R84>V7AO+P$i;*4u&e1E26=8T!w&U|X-+q0TyEt}mpr)SPnb1QSN zpZk-+b%UQDJUQ=?`5p5QFK{flWWlQoXDqyP;S1;NIp?iKI~M(9apU4$i;ph}F1dKg zQ%lUH9ZP?_Y|gU#mbWhd>I(0QD_8t-WkE)qnDV-K7_SK&@|}g3lX(zZ0D6) zp6jZsth%a|+H_t^=+16E;hMl3tF`jz5ifS>4Lt5D6&owlcuy@+>@Ain?YxcSiYvrj zYNfY6!0Salq33yAN$6?`Usvk2-#DE^v6!|gqPWBpLz>s&^x)I|?tPmQTUTFjYqRMw5AU=0wgWHWt;~%_WggVvZ8m zG%=t|@>e|V?r5;1%^mZEo$a2O_JR^iCNv?mL_#y)Ol$30Dus{qQ2UUGy^}7L((gnS zCGk#MUGQvf;@c@MPQ_g!b~5gwxE%gTym?^Nmtnasgk`jbtO#DK6J{{PI3BuK?4kQgi~LTs|l9rt~R=O+`g1 zZYpHLv4|3x7m7zYj|@-pcn70GL}KB2ahK=zp@O0m=;P--ZarT3KlzESTA|FF8;0M_ z>M@RIzAU_db&DQ;l{s5DhTrA&f+wLATp4##@EhrAyyXR-N7dv0cE86LjR$(1?S3uh zRlV(@RN@ACL$UB9-jIvN$~p6&cr`cJ&=S|PgIPVwBR-$`?*|8Yr&2gn@bK)R0-?=C zAHdy1ptwe0ZVK$+rNA4=MGbN-RwRT-VoAhGTvDNpwDKrIb3Ak!&yo^>?`kau64Qtd ztGzXGFLyf=4p+&%uIx%?8#ybdQ?Bv~GX^Y0MASl(xMCE8BC>T9ufyq40q$Z)4 zaXq>5cmA~Zclw0vkDf~>!53Z#X8Ukl z4xS1G!cF1lo)4F^BlvzmY_f4yZR68<6)XuEC+<8Ej-u;7`cW{1?)&(hQ=y<5b^rF2 zXxJZo6E7Wk{wwHv2q*H@phs$gSoNh7Zuf~~N{b&m=Jln-!rytazTasY&4EAVi;q74 z48{r)zv))~5cL1(NB*EY;-*P)W6CAnfp-2vc!*)zrHr?lF@NVt z2YwfeQMc2HIM4jj=L6|z@h6{*Yw3|^10pm+J0LwdiE<1s@p^oOY=Y=*AoHw6HaHBN z3^tF@o+fUk7zrn`jX*n8BdV){nJCv1PF+z6?>w$6zeT5mps8?}ix9tDbv-+LDlWJt zv}Yxio%H)phDZ986o)C+k|C;yft+N^KyokIu2%l#9bd-(j;5uPN0nUI<3EZq@!PrZ zdrdQ))U>C~U|#X~g8Z$gF=r!f2GAy*$bQB#Qfh3>coi0G4&0xvHr#J?= zFbCqPRGk0tfk388M0hG#m6751UQ>387ZEGUBVI9^d}%00`q2|Po`8z1)!RT%N@Eqr z-MHkU^HPulM+2fR?}GZlIaFza#3ay$?;!ecOxJ>(zrADS%AQUkI(r`7zWvLcU7T-O zy>iFJD_o1F3{6?&T5(}eeE)1XN6ze{@apS`I=kl8QuiZ0*C=|Q88Vg+H8@qDx z80RrP3o$N4MZ74wI@YY(zGLOu%|cv==C*&Svuk*EUu_}h^C$Oh99YWvvS~xNufJ!l z5ECcdvwqGs{KH~KcUNOxh-jLkwt8&`=( zNGho=Wn44?DIA&;!*&rOpe%`)MoY^Xv8bf}hiyj6_QvrD!-cE_${vjtw^N zXl^QMOK-?_wolnn-`p@qQP!@y@y1na6-89h0@^`qz2_W@hPsQz?ogDUKQ3CoMr)z*-%wXN85{n|B(vS#h|mr=xXlm-eE2OD?(2?M|brhb6OtO3DXz$iapZrl1f z?{90HBE*!oy(?nX3Ee~86Ivq6$Dg*NqJQF~ej)nsggHrB+MdgDp3S#G2ivk?qPUXc znOt#U2Bz~Ob)iU-5}c*vPr9S-p#QnylNtvv>d*Ouk;q9upJSSC7le<3dmw-ULDP)b z?M)R|$@ZL>N+-B+Y?Gpc3$NtDcpO|v3KL8ik0-^2?|5@w;@QMerC3moCNlBS_I6X8 zl=PmIqOdz5g1ga0{F0JLX@@F+&^&AoXz4%@ta#X#s=Nz&0;2T(bgMu3X-Fw4SxLSN z%*`uG0Q?!Fh$$~(3L`HVxjgW~Gu-r>~;oz8<|2^p~ReSdGikJM9< zXgq>>rZ?8=5m2;JRU`B+O+0I^Z_vOydLnt^M7mY*nAULOgmChEyqIM$>hLYupwD;h zwZ3G7xH_xHhj(6cjhN?#p$d5qnxk>~aS|yzBO~^e5-{H|-=L=WBWPXRG<@!nBjQmo zset??oH*sPQ}JvAqQ9MxS@Y0Fskc&fsanzcMdB#}iY-EB5soZJpf>`ewb#ZJ@9wI> zGmtE*y5KA5^=_>sUT@>Dz|B7h*y!yoJzVrO^Ix@e3*O^OYvx2PO-4Qh^{=$FIq_gD zi-|lK4+gTag9pX#!35`tLF-fWR?P{`-9mIX^Ovi=!#^imo?q1ta~=&HNNa~Qe=z9B zuk`UlG%kw|X{CiUs3V7BYpU#6#L%SXSxrT_!~k$2*)RJFmXmdeeg4Cj7cG1 zqzQ}^p#UHjG;%en=yp%V?mzHs9T7pvS*m=MgsyOqR3F|mB(#xE@jnixTY`b(fnYTl znAe~|*xxClT1kq1$ZLN4UUI)=hxn5n@pRB1@92mVGUFX07H^n0uOSX|#v|!uo1~Lw z;Bziw(i_?Nh;&{F+;;bpazan!FVbrf&`c5XEi%BBIQXmB1^$u*Q-Srax-?z_Ym+l6 z*aT4>Xp9DG{Ii+)tu(VnVJh5o<@8G>}pH}HXG(VXRGlFup0lHM}ZehADBlGdLT5G_KJ{0CnN zyi0iXz+x)08HoFn)i63t@*^z@=&hA;6)2WhB+dz0Htx?tdQ4A%h(OMx4T+W`kiGdw z^NRAD0T^AufuP`g+cdJhrs2@s&<|qQPmm|mcLq8m0@&0A+{gQ^CUT0xg;F3S+)gps z@{wuR6HbzXXG}Xu&;N4XA;E`#MxDIBK@Hs(QXB41aP#MbZS7oanmccU;O&#nFa`#kdt7Iqr5*F?RcU+7TphNED+%l7g(0IZho_WIp<5KO@o2H zTnuzfP?QNBnBWH36BMW6kKjgg17F_Xzf_2&{r$_WK8QE?H{hd_dqs8$T*NLo+;BFk zMe(?KThZ&+j>6eKn)G{LJIb%(-%!%&)bT*zcrufIpdUV*STPRRq405kaWq;AAJr2D zzBixbo9VR)MCm4@>`?N}*B~z=ke6jUp1Bmf^9f``zJ%yL;^XyFqqISwTI!ZrqLzBQ zp>bRq>^)qCF6yZ$rAW7W`cAsBLibfmq@N)n_Q%n4*nJfT7XS8KhePv!iP z2~V`wQ?2V=^@K~q1)5GeN5HVsE-Jk>3a!?=^3VaUdI;VS!ZT8B#=*Tk(*-oB{O$+R zv>DMK?c#g(IqaSG_LJ?gEa|dzHrn2PYUC!eh1%Qs;b1IZ5xknuRk`aH7{Ir<5VdP) z;qKc55lKGa{9HVab6+)Zzy&XGGMqr?mq^EXT^z!FcrA3F?r{pmDc*#a5OcVkq-IZO zLJ`8{^|}P^dN!>cl*TvNY{w4rR5ofJh-EG77$kSqp|p04I)#su$4&-cZ#t)MVfM!3Ie*|Nv?v!2MR7TG z^G%qTI8jhr_^wwnJz0=5W)@j*WuG@33G8VZW&pnFcQp~c2U6&A-I^?{-cP#vb+W$%6DYSlhQSe57 zdtnS7XP}DUd}O0<0v^Zk$A24lV^McDD-sirW!K{S*mBGhHk&KUZ2S=I|Gz@)q*0Fg z%_yUp(0i8o1|oiM3_prl7J`Uy|69m)oW|{Ir+MPoSbjN^J5G*eEfSNKKl4wZU9yq3 z0^d*(@X<*1)2GW8Jvvl>jWQ8*O+`wlO45bQa(SOq#-B=>uEkZd7-e)dQK8$(9=5k+AMn7R=x3arq}5GvKjt_j}+jg{mWpL7jy=og#B% zF(>hc@sH@=(`X~C0&j%SuCp;TJF5BI;aIZ&{6b5!#7{$GL$Wx*;c6(x0%5M)xOK~o zit;i3Y9E)_Q5G)V2V5-auP;$u4re%c8Wo%76w@Jhtd;XZ!UIGsal1lV(B+?8j-~VE zW!r_=zHI5PpUqisVd2tc%Q6_W$mMy!rRZT9dw5NuF(;^^>WmQw!K*X?%rPIOhrczj zY0-GZ?NV3O2UlTOJp5mGf9>pigXRq=g+`9foB#5G{ggIB&Lofp(Pd)wI-TylH^)4m_?}J+Puoh&1cU)PQ*acF^%a$X^ZK&(|OjEJE?1 zc>p#^um$4b0lqenv1yEAzX9aDdeN2&TWZ9tvN&~|C@|T0cGwp>$0aWN>f&%D7#wnk z-N!?PgX2ar&t0_OTs|7v<>$^{!hi6kMTDdwxBFNm_kWKYvz$F?!aW;CqqiIGo;Ybt zpM$6r>^!T_ws?78r_tpRffD56;)e$bn?r%D_jo*>9>2%?A3GgreT={G`MESBLtgJO zMCSiEZg1BskL@1`s_uV`%tUGTS+RApn~7Y{?pn+;AxDy3NZ^bgPMvYwUkDEQ(}lo{ z2ZQ;bfBYz_`QkCZe^aoK^3VLN&lf1jK0px9MJ_!+m7BbxLb}Q+uJf7`mL9KFLbwEB ztn@}g=KiNch0qB#=HhpR%vm0!Y(yv@erqd{FaL*7$h`3fp>9r=H6sF7UTaI zkDIq1rF_*1ub1DEKF{ytoH8SCUP*V6jV z90v4+@0D4rTq*qg%5YOK6cE#pL^QvAf2f>A)TuehuaX&)li_MQ@ZxHU(M7}McqU+e z>2LrZ>9Ifnci?5R18+bMAS`0#ykzE$l6RCar7WQM`*8T_r^ETs4}K5|$wQI@KL}kW zKXZ|%e;7eT_=i74AUN{Fr|sCZcvCE-y4>k8a5vayBeBT^IA=rq%zX$R}gOAfs6hPAeYExY@eq67$ z12OQ2AvZ|5OC1JjE|6QYq)JXuj=?1kh9irY0BegDf%=v#CLAqZ9K3etiq#h)hty@~ zdW6{W=#F(u7Odl9?Ohu;+>JEP+J%rTA$l%1+5+&7CJ=P%>iiP2MXS4zhq`d}ik&+i z-7-9T(!{$h5wrI04IA%*gc&=IgvA^< z;j5A)rQD%;h*7mO_aW4jqSfv&j$^TT)V{|GWA6A?L{A!8>LG(!(Z!}UE?#Kv@rnvRC;DQKp_hUs?7AQHuloN!;Q6Ls`R z{QCph%5Nz|hM@gbh`pcmcn*8`Lpnc}j++RPWn;(Sv>Y)HAZSXVos&9eRtVKPvxBK3 z{y>%zB|o*p_xDvE67J7wM`H)gPLH^E( z;@c<4m7)_dYxf!5|539UBj;Fj$CbT^6Rv-Up1|F=js~@?oC@_Hm}kHv~(Crwjkh7jQAk5GXBXe=BU91qiSA}E9{UOawW z=8Qf&8s~p95HK&50drm7C=s2|ue4DPdP3O%nDyJ@ZRsWGXbs(H#9pVhlWA>yh8$2~7vbAyH7TsTKKJ5`(gmCI<-uwyUXK6cN`U*<~lJ z%P=CX*Ac(EtZ!62FB1!mm0EW#(Pf=fa3eZN6)NaCWf)~q9Bw5Gu7=Bao~mEu>v0dl zH0V|$u2wO7b^gqhsgr95u2x;Hu)6x<%l7QO=Bmve;l29cf|ctxUwSTA9lk{5vMbs< zdpa+Ia>u{?AuDVM&)a!)XA)G$9Q~5L(A{cO}&OpE+{=uPg zCFpaxo&KHSl0U5aR8*5Sd3|cwyCD>GahE%&IuytM4h5Zx!=Z-UPQ>V30k?2)hhKPA z#}6ECryKr+%i)OLLK#q(!zUE?g~IRfIk~EM`w%X2DlYC2;-hN7-*C=hcOn&c?^v+d z;aI-x27kf-nMF-W_l$F{;vQ!xqg~gdtEyMOaM}u|)8SG+H@l@zjVJXP<P^D0gA3lsVh&bCs+oKm4*Pvx8rUntsF%FW1?r-jqV(mR78r|^ZGic>>NzL3Ky zxT3gyJ```!sV9)(E)RO^@Cq+ioR|=Y;&*ts)9nvUj0N$gXe8bi@^r#Q4Rg0!2)Bpx z;56=V<93JB#Z@8jIR2|n2fp@1&_o#7ZI?5mI9<+=->Gn~hi+A49xWcox0iyV#f`g;H)VWKkfv7O#!taZb^J_ zn#l$n;4ifkYG8o()~Y>~QU!FbQPdPqf=vb08g(b8^NvpNBd%3si$Pv5q2n4lL?L+e zwv9KcoygF@Is_9A5T92|-PD>(bK$O9UF*eFbqdrHJ%!F-bZrnydF*xqX#W zcvPpNx<7QFK6zU6s#Ujsgd_eb2IgL|tG%bQ{j$p%G;rLe9p|m+>u&7!$K$?^LTx5U zR?84C>kFP~S~H=0U541Xm~B|vT3$G_BPD#kj>ouL1%)Y~E=BOE;2?$macUn47Eq)D zZo8fb!0q5Q5HoI2J&$sS!x{8DRm3^HQO9pxj*!5U{6R&KExG>9(Br1>FkAxR;M5Rb-`VJd@|M+E>O3^YNAxPlHR zWFaOQ!RwF$REs9ea1^r#lnUKL^dhC(v`qfS~vibypQIE{O!nSG0lMNWnudqa7qOWO2A%8cv0~LEJJOk_9>xDz%Lh zCqj(LcC0qhCu+xP6Z#eH3~*}GrCRM+ZGv&B9jnbcUPzDVFa*$`Wqnlmw-(J^v3BXq zrbv?WhR&fGlbiUundS2eEBYEI#=Kyq5~A+aV$l-lF+)*#1oN$m2p6jypcjW@4Q408K`CATPG^~!^?zWy>W9#JM*X%)IWX0OX-S)_y z!=Ui8H6T!Qmb%Q<8S)(}gbm)5I^E?IlsSg%ki(y=V90_V!RHdImDQtNKHZ8OxGQtI zl^B;pwpuyfFtbsP>|Vt!@hCqj<^&q1d~XEa^Yx%qWa6j@{&dEzDve*V)0cmEEnyFMNS5x6r z8dHPmP&67!4<<|P!aL{{_(1fe-K9(ve1hn#uBdl)X0l+1oRZeMTSoC_W zOb8i8G}soHq>OMstN|;{l}JC#HVl`&qmX#f)lVc9URTu};Pf2u!I){}*X=0c56 zX+;s)SUiSkl`uamNyXu~SZE|v!azar4CWG|Wr)UDRfco}!tbz&xOa%Mr9<&dM)+dk zNYblJ;*^}sZ5N|jc3fC$0kSOjzNw7D`7e&Cdf&3E4d-!-tAw0@V%#Ac(4UQ&IH#aQr5 zWxl$i6p7=cg3wUo2YFAv9L*~ENtkg6@T!U-VsJ7lWmgX<%Upcpyh@>|R-d)=4)@Ha zDp&fatrM9glY4pZ!Qns8>gotI7N^AdIWv|VD2G$!?!2B*10glp(&=(9e`7J#Mp3kC zuNqbNA;QmhYstBrM7XOVuN>Hs>Z#9JH*G4f)s}XzH~+w!TlcqhMBQ=D=kC%|z0>qS z(&vsRvJ=WFUu0?LeFP`zV6;zs;Vm^na& zI%%?U+YW8lTtY9gKJO* z1w%e*IMJX;P**~fO-zX)p%4+FCJKV#D9D|-AH(UU`nofop=9dFGpG#F6Ho8khl(lQ z>=N3%c_6G0nI?s+4&fiC;D!NIW$R4T%fJ9d5(ky~FEH_AhUr`c^WT6M`*0`HUa+#!;Oq} zlZ}pRH}N|NXM;n7V{tYFVn@tW+8#GyEo2-~xej>gi%~5^u4^|s-RP==jI7e3amdFi z5W;;Fu{#q@Agz(=q3cji$W!JUv26RHL#WabUqAu&SQ1Gga@tBGN*o+Z2D0wCb?@GH zsFL|q`f5}F9MV!J#|$M!)y+qSOmocep;qbQCcB1mANW`WZxm?PjWV%rtqyfWBn&~V zJ30NP@SH3&v&$%v#pz0*BJ*ujhUQV-SBwi0kHZ7G-h3_9-l3bn)#K?lv9K*2pYG9y zzZ3U)JiP2{@$$0gm>u+lRepkMTTkeh^M9*gL5Ufuw6?UgMo}~n=KmIrnvt;G$1BlC zsyj>3?j&VS2_=`T4~7kbc9B}r5e%qQ?fRLjOS!;&E;d&;p9?jX#hzHk9UWeaSW2t; z_px-kl1|s`K3puce17;;u|FKldHK7h#ftmu}iruW#D8=d$%1Cr|nIp0PvjXew~O4^e$Z!6GLF*)BP&-{zmi?7_Vs z8k{A>tT|VI=oWr#?2v!Ki=|Ek`n#L`ep=BqTat+Upn0M(!Ss9Ih*Z*zBcsZZ^+47D zmNbzTA{Pa-dG;_)DE)5`mT(*cR z(^{T{(r3gjroMjj&J8UKm)j(kX=!S2a5@KmdkbA%S!`VzW6RP*!-kGPx88EZ^}-@jaJtN5jK29qu?yE8&ZFe5Bf#M$GL1*??uDPO{BO zM8YP9M~bmxq_}R8WgOT667j7?#fWVHL%@!laElV~Et&g-TEd?4(tU#yG49>F58Qg$ zLq1>FA4w=wxoaNUN2Q4%*A7VA?aLN)4X)cxq}?+8KN~X3>&X?w(M0o^T)m1o0%3H^ zy6Ka%`{tjAf!?-sCFg7QyMtM6_}s9b;?<4Oq$Jjp_U9@YWB&#{>k-CLsm70#xA;PaB*=Apo^ zXWh-QX2Wiuba0$@?SjZF634_e64P>lR17uz4dBC`s!~+8#wHFQo)`bZEI~{{5DQ@Q^p3{2_12o4*T$zczm>R*ScyaUx`e#)7DzhePtf zET6_H99PV7WwZJ3ycFLXGXFi2D2Us0DY4A_?kif{x56L21>NovyxYzp?}XgQVWr{# zc97aiJN(chOE`I;eWbSr$ls?VoQoC})Zi3?z)_9if@y*10C9`-2xU|qNw;dn2`0kb zhzXMQfyh5bjH78#tt64ik0dTriNSD8tfIqEkqxwAaqINuWH-0CutPywZ}GHdvI@2` za73Nh0b#{76d)reK1tzk^a&monls{x2;SxoM@652QRq@No2nM zyjxcv>hj0K-rCA#L#2FNacSAi#_JuBqfsU5^eM`x_%ByY*|Q^|YL{GH%ErBdH>6v3 z?9ot#e8pw`%dSzh&mLA)uxiNl(4+ci=5AcKT64zE-EhtnEQ0@HQT(RgUhkGM<}N|k;`gnnuI6~ zg5)7RhHTpEf6C}nf{Mo-gh3MGyxAx2%9rvEUoMkc-8TgRb6$vOUhcTx^yLGz9f-7_ z=GRuN82Zfai=81Bm$#HxX9JA+AAD0s!L z0$x0+bn*6(AK5oGzt4W##H+MOE{z zTX)H)zm``V$&jw6V?~Ej5R<;Yq;(SCx&7XJ(V+!O`_`=C^9E93XbG$4fa=XO@Wy1U zi=>)^#t`Dc3eeoo%Qe*M_b5oc)Me!;ELLcLtPF^OFHk5Y_b#C2t6Z&GYgV^@k}+7p*12RaL+bx?xnlUAJGa{TD8N!x$)Ku zJPn@JUNN***LTkfb(>WrB0d)F{`H>JOmlbEv+eGHNHr`%wMKVKCVmg!nf1)N_iC!n zZ^05Bp19zaArGDpptOwSl)Xk-CqH5AxWI+hz(9aBFr)@Z7gFt)H85rEI=!B_`nC4x zO@YQtQ^?1!Y!6KTP~7~J5;Pxr%7+4AP zkyo+11fpvRXl*{&9=%0>1&JqG>e|rS+7Jo6n&9`NXGeKAb$I2`l{$Y9-PoqTDgq&B zU@SA}Yf)cG+=4D0EuxpWMXQr-AbrHcsP}1+@dbE@ym-2-<^xutVNo)z7*?%nxhjSI zz;;FSy6UV$#(^fvcOnL6Wl^Go<*{e4M8gWm!1A; z&gJKAesJr<2Nb+`3u%Uq5O=mck**SbHQdsoVRM(MO#;_ zY)A3^#`6cfQwO$PuwN0A8>^|0U^foiKG`Ndiwd7UnqN#(1xwHDUm(o{7DOQrNWY=) z5&j?jO|)C8!vv_{{%&Q-M~VtGQsdEr64%|u`zh3NN9`6L{(S_OTv1o?XhFnX5m)2= zG-G$xZo!%y^WEcoVrm?s95ZT;vNL{b5ZM@atM)pUWyAreE|8_C&&0N|An#`Of_7 z!{sAF*@NAU^4H)~6s{q~g;lZz<9FSq4y6OlDB1bTdKed`*m%YbCx znnkquc&0hECWe;ber;V7&nx(a*vav1M9Z6hI6g)n#t}hmr`=2?^%CYs$dxEr8L2*% zm!T0|iY@jMSinvxJd94We$mW~zn97TOWfDdJOQ?~(-KmyC*``-gCHs@og8oLlK0iS z(-JA!%Kte+XocZeeIJKUSZ6aoXnYu?#i|scK@ASr;;b=M;U7aNVqQOBbZ3;q z4i7}=S%@lWiRGF%z52lwlszZH@P_30!BZ9Px^2*of+ zxSTy>s@#7Cv96k3iP$T(EzCxWn}5)bBxG4MXVS~4zXdFt#wSKWLm0o;N6D7SRI}y* z>L)r&z21*w^ppJY*I<3^(i*mUS70w_nnFu2*qMv>|z3IG#SDw z@qHWC3_wNnggW37=t>M_UV2~#=SPk~1EoWW4ar~zD<&r*$-eLCfL?Ps> zU>BrVCG0EcHN+<=et#NA8X|18qZ-*I;4cdw8tno=Kfp-Lnq`XI;D;`PL0x<-CQ30W ze`K7M5L2b-u*hA34U-09deVOqi{(QzI975sU?rt5;lI_Fj3R=>J3H1bL$J~Or8^Z& zT7y4%MNC?mnYcY-@uKst?OO)5af!JBDU3VSISy|-Y?9ik1|y|9&bbsm4zDydK8t14AHZcBCfDh(Pn zEYJeecuC|gzk@5&&KThQJ8c3`N+ZVdt?pDHwILPAs3*mX%02HN3N)NtV96W5K4PIi zgJHzum0)0s#dlyn%C*PP=Z_=HGIr@A{J98>Y6Tet%aYO)6zDA>%p_e1n@36eT2ndz z9SMJpa_n%~sO*7mfs&TL=o_4Z65!F{XaWT)X+m)W4P8=256A#u4rYSUXfQLF3P-Vl z5BH6hI&4Ojz^5|2vvp#V8qGGK5=hZJs#o(=f{BnP9M%2an5HP&laZ9t1P2e^TNnjQ zZnw{kT9kl4x}tAUO!wnu}snuXb1wTn|i6Cez7krpN71)gu84x7+rERrjz5v_rnkn5EqaS4iAL!vbaY z4^=)$v;qHAc!|q|cnjgEHnDCarovZoBDxZ7vIlWvlN-&OjdGdeM@k6A4_Iilh}T>1 z(rX>vv4l4U?Hf~yes6mes8(TkdAu=)GxtJD;c1kUg_OAJN68&L<%ovLh}5Dfoi(qw zsDygwEL&8qIa|5F{|Wq?R1%m6f1x0NsHf194 z)?%@SQr_(?az`rRbmrjJC!E6ViU!<1&FRWIg)60$npLWPXzA##=DVEke3u$VIO|MY z&O(fk$QY$N_9|T+u~HH^AY@s>NihZbfhU9jkj00ictO=^4RLG8yk2hJ2Wh+zpe2mnt_Q2*Y8)(gRJ46i@g^&xFFI7r0 zltMJ>l{PFG_qrmTdeBi#H$)XI9t)1@#Sm5-mErC5L!K^0KJ)_Y#C;7o_Ac5*S!zoX zuQZ()8AJJ9O?L3DQ)fM-j!ssEH^A~Hs|On^T49(U#zJJ+WzFLx4dA;5d4raw%~{esD~&$H zdoI;d0Y8F1X|W#uW*}V2n9E1h%(;P31#PBzCxwORD(`@;M{SueSuM7te?!;lgm{+5 zY3)hqL&mj?8jo3s^KQgAA@`s(BxPFGzzCfqHzzSb)GbBaX<|Q%$mR27M2zx;P5#_F zhOFY*2^uy8q|z!PiPi~|C4p*3&m>f?ok5{j(bQM_Tbkb)Az7Qs`KmEQ!TYLHX-_NA zId-%#SMZkpW-vTjUUw#)@vbun>}B*XUv2Jh7T&Yy6gabDA+!!MfWOLN*&Gn=R=kv4 zV1>+nxBbz>&**Okl#Fse+E3Tcdwuwo?y4`C)4$2c|uk?Hm&Hhei!H(zuCG&o`}O_4Z)nh z97vm=G!?@}xHPVmOUqe=k{G@=&wNZ|||M-U0=p}&Gbx*6*ah`Xj)-ft0C z$UDZ0E^s7OSXjHD(QSl#P#)?98t6gmT;6h#+(@n^y$O*eeiu&C+9qO`tT}HJJP^6F zLYjXfp1}?BB#Wv#lu^+3U_)Ro{FmCADl3M6it0RBiIHkeAIik>J*t=R1%_bR7UJt- zH?#;A&~gO8Bwb*E7jTIM!E(DQs_DBS5PFZI8U!fx%;p6z226t|#cuB}pP|Bu;bHoG z<`+Ia!%tuf>~~L{wA+6c?Wg1#V5?pDK4hKH7C}^9NN71W$|IK+i9|D0-Zb@nFwdU`^;k z0pj?}C&$i(g)7-UncZ@^9U0U1D-8a2SPp{O2(5uUnl@f0YBK_65)j1O5w1? zlQ}6H0-hcq%<(@K%zt@;fB3tnarIkq1>^$=p^N|xikR^(4H3pkR03Lt0;e^Y;_-MY zT?rw&X&&e4aM=7qDw#%zeyYR~VwX{KVm#w{GhB_n8S{Ay=7d~wv`z{8BKbjCjj&Jp zQ0HdZBT`;N=BVVb%i5Ikh!mGstM9)ojT9_v!)^w!W%=7kGtg#K%{{aU+KBpbVB89=$xeZnZ_uAQnZ}4=sA~#QKY3{krRzL@NZ`HoN=Qiuc*7QN% zBin?to=x92qQ-zkyA})kM+K0Dr~TEZ$yk{+m=P;#bddEiMwc~sIUJWg_|f}EhtJ=Z zr68SD8$#RN+T;AcXun!sXzJ($W6Z$HQyIk=e&ej0?eX*HWjzSzC=lr?7Cvu}^oYPd zx}BvW=d-)IXMCPU1-WwM%zH;LaMoBgNIUZ1DZYe>u~jhoZ`p=wg`9PJIQSB!)|S<1 z>tHBtU;q$ggtI$< zy&y?$%i>XzVp6yu{O&?z#2OTq?b?I0esdSL>8o)N;XxkteCGtVV≦Z1hCfe+x7u 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 literal 50504 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 Theme.of(context).brightness; + static bool get isDark => brightness == Brightness.dark; static const Duration lowAnimationDuration = Duration(milliseconds: 300); static const Duration mediumAnimationDuration = Duration(milliseconds: 600); diff --git a/lib/config/theme_data.dart b/lib/config/theme_data.dart index 6979e2b..d605c2a 100644 --- a/lib/config/theme_data.dart +++ b/lib/config/theme_data.dart @@ -206,7 +206,7 @@ extension DidvanColorScheme on ColorScheme { : const Color(0xFFBBBBBB); Color get disabledText => brightness == Brightness.dark ? const Color(0xFF5C5C5C) - : const Color(0xFFE0E0E0); + : const Color(0xFFBBBBBB); Color get border => brightness == Brightness.dark ? const Color(0xFF5C5C5C) : const Color(0xFFE0E0E0); @@ -214,7 +214,7 @@ extension DidvanColorScheme on ColorScheme { ? const Color(0xFF5C5C5C) : const Color(0xFFEBEBEB); Color get disabledBackground => brightness == Brightness.dark - ? const Color(0xFF1F1F1F) + ? const Color(0xFF333333) : const Color(0xFFE0E0E0); Color get secondCTA => brightness == Brightness.dark ? const Color(0xFF474747) diff --git a/lib/constants/app_icons.dart b/lib/constants/app_icons.dart index 23f7b58..b1eb80a 100644 --- a/lib/constants/app_icons.dart +++ b/lib/constants/app_icons.dart @@ -1,5 +1,5 @@ /// Flutter icons DidvanIcons -/// Copyright (C) 2021 by original authors @ fluttericon.com, fontello.com +/// Copyright (C) 2022 by original authors @ fluttericon.com, fontello.com /// This font was generated by FlutterIcon.com, which is derived from Fontello. /// /// To use this font, place it in your fonts/ directory and include the @@ -23,107 +23,107 @@ class DidvanIcons { static const _kFontFam = 'Dicon'; static const String? _kFontPkg = null; - static const IconData aarrow_up_light = - IconData(0xe800, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData aarrow_up_solid = - IconData(0xe801, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData alert_light = - IconData(0xe802, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe800, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData alert_regular = - IconData(0xe803, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe801, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData alert_solid = - IconData(0xe804, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe802, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData angle_down_light = - IconData(0xe805, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe803, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData angle_down_regular = - IconData(0xe806, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe804, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData angle_down_solid = - IconData(0xe807, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe805, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData angle_left_light = - IconData(0xe808, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe806, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData angle_left_regular = - IconData(0xe809, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe807, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData angle_left_solid = - IconData(0xe80a, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe808, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData angle_right_light = - IconData(0xe80b, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe809, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData angle_right_regular = - IconData(0xe80c, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe80a, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData angle_right_solid = - IconData(0xe80d, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe80b, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData angle_up_light = - IconData(0xe80e, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe80c, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData angle_up_regular = - IconData(0xe80f, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe80d, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData angle_up_solid = - IconData(0xe810, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe80e, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData arrow_up_light = + IconData(0xe80f, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData arrow_up_regular = + IconData(0xe810, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData arrow_up_solid = IconData(0xe811, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData attachment_light = - IconData(0xe812, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData attachment_regular = - IconData(0xe813, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData attachment_solid = - IconData(0xe814, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData avatar_light = - IconData(0xe815, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe812, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData avatar_regular = - IconData(0xe816, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe813, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData avatar_solid = - IconData(0xe817, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe814, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData back_light = - IconData(0xe818, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe815, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData back_regular = - IconData(0xe819, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe816, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData back_solid = - IconData(0xe81a, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe817, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData bookmark_light = - IconData(0xe81b, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe818, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData bookmark_regular = - IconData(0xe81c, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe819, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData bookmark_solid = - IconData(0xe81d, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe81a, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData calendar_day_light = - IconData(0xe81e, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe81b, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData calendar_day_regular = - IconData(0xe81f, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe81c, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData calendar_day_solid = - IconData(0xe820, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe81d, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData calendar_range_light = - IconData(0xe821, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe81e, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData calendar_range_regular = - IconData(0xe822, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData calendar_range_solid = - IconData(0xe823, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe81f, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData camera_light = - IconData(0xe824, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe820, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData calendar_range_solid = + IconData(0xe821, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData camera_regular = - IconData(0xe825, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe822, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData camera_solid = - IconData(0xe826, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe823, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData caret_down_light = - IconData(0xe827, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe824, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData caret_down_regular = - IconData(0xe828, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe825, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData caret_down_solid = - IconData(0xe829, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe826, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData chart_light = - IconData(0xe82a, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe827, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData chart_regular = - IconData(0xe82b, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe828, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData chart_solid = + IconData(0xe829, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData chats_light = + IconData(0xe82a, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData chats_regular = + IconData(0xe82b, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData chats_solid = IconData(0xe82c, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData directs_light = - IconData(0xe82d, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData directs_regular = - IconData(0xe82e, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData directs_solid = - IconData(0xe82f, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData check_light = - IconData(0xe830, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe82d, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData check_regular = - IconData(0xe831, fontFamily: _kFontFam, fontPackage: _kFontPkg); + IconData(0xe82e, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData check_solid = + IconData(0xe82f, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData check_circle_light = + IconData(0xe830, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData check_circle_regular = + IconData(0xe831, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData check_circle_solid = IconData(0xe832, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData check_double_light = IconData(0xe833, fontFamily: _kFontFam, fontPackage: _kFontPkg); @@ -173,262 +173,280 @@ class DidvanIcons { IconData(0xe849, fontFamily: _kFontFam, fontPackage: _kFontPkg); static const IconData evaluation_solid = IconData(0xe84a, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData eye_light = + static const IconData exclamation_triangle_light = IconData(0xe84b, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData eye_regular = + static const IconData exclamation_triangle_regular = IconData(0xe84c, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData eye_solid = + static const IconData exclamation_triangle_solid = IconData(0xe84d, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData eye_slash_light = + static const IconData eye_light = IconData(0xe84e, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData eye_slash_regular = + static const IconData eye_regular = IconData(0xe84f, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData eye_slash_solid = + static const IconData eye_solid = IconData(0xe850, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData filter_light = + static const IconData eye_slash_light = IconData(0xe851, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData filter_regular = + static const IconData eye_slash_regular = IconData(0xe852, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData filter_solid = + static const IconData eye_slash_solid = IconData(0xe853, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData fingerprint_light = + static const IconData filter_light = IconData(0xe854, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData fingerprint_regular = + static const IconData filter_regular = IconData(0xe855, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData fingerprint_solid = + static const IconData filter_solid = IconData(0xe856, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData font_light = + static const IconData fingerprint_light = IconData(0xe857, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData font_regular = + static const IconData fingerprint_regular = IconData(0xe858, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData font_solid = + static const IconData fingerprint_solid = IconData(0xe859, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData google_light = + static const IconData font_light = IconData(0xe85a, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData google_regular = + static const IconData font_regular = IconData(0xe85b, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData google_solid = + static const IconData font_solid = IconData(0xe85c, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData hashtag_light = + static const IconData gallery_file_light = IconData(0xe85d, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData hashtag_regular = + static const IconData gallery_file_regular = IconData(0xe85e, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData hashtag_solid = + static const IconData gallery_file_solid = IconData(0xe85f, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData info_circle_light = + static const IconData google_light = IconData(0xe860, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData info_circle_regular = + static const IconData google_regular = IconData(0xe861, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData info_circle_solid = + static const IconData google_solid = IconData(0xe862, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData lightbulb_exclamation_light = + static const IconData hashtag_light = IconData(0xe863, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData lightbulb_exclamation_regular = + static const IconData hashtag_regular = IconData(0xe864, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData lightbulb_exclamation_solid = + static const IconData hashtag_solid = IconData(0xe865, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData like_light = + static const IconData info_circle_light = IconData(0xe866, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData like_regular = + static const IconData info_circle_regular = IconData(0xe867, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData like_solid = + static const IconData info_circle_solid = IconData(0xe868, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData loading_light = + static const IconData lightbulb_exclamation_light = IconData(0xe869, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData loading_regular = + static const IconData lightbulb_exclamation_regular = IconData(0xe86a, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData loading_solid = + static const IconData lightbulb_exclamation_solid = IconData(0xe86b, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData maximize_light = + static const IconData like_light = IconData(0xe86c, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData maximize_regular = + static const IconData like_regular = IconData(0xe86d, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData maximize_solid = + static const IconData like_solid = IconData(0xe86e, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData media_backward_light = + static const IconData loading_light = IconData(0xe86f, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData media_backward_regular = + static const IconData loading_regular = IconData(0xe870, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData media_backward_solid = + static const IconData loading_solid = IconData(0xe871, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData media_forward_light = + static const IconData maximize_light = IconData(0xe872, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData media_forward_regular = + static const IconData maximize_regular = IconData(0xe873, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData media_forward_solid = + static const IconData maximize_solid = IconData(0xe874, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData menu_light = + static const IconData media_backward_light = IconData(0xe875, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData menu_regular = + static const IconData media_backward_regular = IconData(0xe876, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData menu_solid = + static const IconData media_backward_solid = IconData(0xe877, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData message_light = + static const IconData media_forward_light = IconData(0xe878, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData message_regular = + static const IconData media_forward_regular = IconData(0xe879, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData message_solid = + static const IconData media_forward_solid = IconData(0xe87a, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData mic_light = + static const IconData menu_light = IconData(0xe87b, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData mic_regular = + static const IconData menu_regular = IconData(0xe87c, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData mic_solid = + static const IconData menu_solid = IconData(0xe87d, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData minimize_light = + static const IconData message_light = IconData(0xe87e, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData minimize_regular = + static const IconData message_regular = IconData(0xe87f, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData minimize_solid = + static const IconData message_solid = IconData(0xe880, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData news_light = + static const IconData mic_light = IconData(0xe881, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData news_regular = + static const IconData mic_regular = IconData(0xe882, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData news_solid = + static const IconData mic_solid = IconData(0xe883, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData notification_light = + static const IconData minimize_light = IconData(0xe884, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData notification_regular = + static const IconData minimize_regular = IconData(0xe885, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData notification_solid = + static const IconData minimize_solid = IconData(0xe886, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData pause_light = + static const IconData news_light = IconData(0xe887, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData pause_regular = + static const IconData news_regular = IconData(0xe888, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData pause_solid = + static const IconData news_solid = IconData(0xe889, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData pause_circle_light = + static const IconData notification_light = IconData(0xe88a, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData pause_circle_regular = + static const IconData notification_regular = IconData(0xe88b, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData pause_circle_solid = + static const IconData notification_solid = IconData(0xe88c, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData play_light = + static const IconData pause_light = IconData(0xe88d, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData play_regular = + static const IconData pause_regular = IconData(0xe88e, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData play_solid = + static const IconData pause_solid = IconData(0xe88f, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData play_circle_light = + static const IconData pause_circle_light = IconData(0xe890, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData play_circle_regular = + static const IconData pause_circle_regular = IconData(0xe891, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData play_circle_solid = + static const IconData pause_circle_solid = IconData(0xe892, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData podcast_light = + static const IconData play_light = IconData(0xe893, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData podcast_regular = + static const IconData play_regular = IconData(0xe894, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData podcast_solid = + static const IconData play_solid = IconData(0xe895, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData profile_light = + static const IconData play_circle_light = IconData(0xe896, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData profile_regular = + static const IconData play_circle_regular = IconData(0xe897, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData profile_solid = + static const IconData play_circle_solid = IconData(0xe898, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData radar_light = + static const IconData podcast_light = IconData(0xe899, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData radar_regular = + static const IconData podcast_regular = IconData(0xe89a, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData radar_solid = + static const IconData podcast_solid = IconData(0xe89b, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData refresh_light = + static const IconData profile_light = IconData(0xe89c, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData refresh_regular = + static const IconData profile_regular = IconData(0xe89d, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData refresh_solid = + static const IconData profile_solid = IconData(0xe89e, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData search_light = + static const IconData puzzle_light = IconData(0xe89f, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData search_regular = + static const IconData puzzle_regular = IconData(0xe8a0, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData search_solid = + static const IconData puzzle_solid = IconData(0xe8a1, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData send_light = + static const IconData radar_light = IconData(0xe8a2, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData send_regular = + static const IconData radar_regular = IconData(0xe8a3, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData send_solid = + static const IconData radar_solid = IconData(0xe8a4, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData setting_light = + static const IconData refresh_light = IconData(0xe8a5, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData setting_regular = + static const IconData refresh_regular = IconData(0xe8a6, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData setting_solid = + static const IconData refresh_solid = IconData(0xe8a7, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sign_out_light = + static const IconData search_light = IconData(0xe8a8, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sign_out_regular = + static const IconData search_regular = IconData(0xe8a9, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sign_out_solid = + static const IconData search_solid = IconData(0xe8aa, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sleep_enabled_light = + static const IconData send_light = IconData(0xe8ab, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sleep_enabled_regular = + static const IconData send_regular = IconData(0xe8ac, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sleep_enabled_solid = + static const IconData send_solid = IconData(0xe8ad, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sleep_timer_light = + static const IconData setting_light = IconData(0xe8ae, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sleep_timer_regular = + static const IconData setting_regular = IconData(0xe8af, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sleep_timer_solid = + static const IconData setting_solid = IconData(0xe8b0, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sort_light = + static const IconData sign_out_light = IconData(0xe8b1, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sort_regular = + static const IconData sign_out_regular = IconData(0xe8b2, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData sort_solid = + static const IconData sign_out_solid = IconData(0xe8b3, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData stop_circle_light = + static const IconData sleep_enabled_light = IconData(0xe8b4, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData stop_circle_regular = + static const IconData sleep_enabled_regular = IconData(0xe8b5, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData stop_circle_solid = + static const IconData sleep_enabled_solid = IconData(0xe8b6, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData support_light = + static const IconData sleep_timer_light = IconData(0xe8b7, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData support_regular = + static const IconData sleep_timer_regular = IconData(0xe8b8, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData support_solid = + static const IconData sleep_timer_solid = IconData(0xe8b9, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData theme_light = + static const IconData sort_light = IconData(0xe8ba, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData theme_regular = + static const IconData sort_regular = IconData(0xe8bb, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData theme_solid = + static const IconData sort_solid = IconData(0xe8bc, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData timer_light = + static const IconData stop_circle_light = IconData(0xe8bd, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData timer_regular = + static const IconData stop_circle_regular = IconData(0xe8be, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData timer_solid = + static const IconData stop_circle_solid = IconData(0xe8bf, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData trash_light = + static const IconData support_light = IconData(0xe8c0, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData trash_regular = + static const IconData support_regular = IconData(0xe8c1, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData trash_solid = + static const IconData support_solid = IconData(0xe8c2, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData user_edit_light = + static const IconData theme_light = IconData(0xe8c3, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData user_edit_regular = + static const IconData theme_regular = IconData(0xe8c4, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData user_edit_solid = + static const IconData theme_solid = IconData(0xe8c5, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData user_shield_light = + static const IconData timer_light = IconData(0xe8c6, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData user_shield_regular = + static const IconData timer_regular = IconData(0xe8c7, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData user_shield_solid = + static const IconData timer_solid = IconData(0xe8c8, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData video_light = + static const IconData trash_light = IconData(0xe8c9, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData video_regular = + static const IconData trash_regular = IconData(0xe8ca, fontFamily: _kFontFam, fontPackage: _kFontPkg); - static const IconData video_solid = + static const IconData trash_solid = IconData(0xe8cb, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData user_edit_light = + IconData(0xe8cc, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData user_edit_regular = + IconData(0xe8cd, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData user_edit_solid = + IconData(0xe8ce, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData user_shield_light = + IconData(0xe8cf, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData user_shield_regular = + IconData(0xe8d0, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData user_shield_solid = + IconData(0xe8d1, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData video_light = + IconData(0xe8d2, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData video_regular = + IconData(0xe8d3, fontFamily: _kFontFam, fontPackage: _kFontPkg); + static const IconData video_solid = + IconData(0xe8d4, fontFamily: _kFontFam, fontPackage: _kFontPkg); } From 7f1af1422cbea399d242adb35e16b6f3b446d069 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 15 Jan 2022 15:54:27 +0330 Subject: [PATCH 122/273] web version edits --- web/index.html | 2 +- web/manifest.json | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/web/index.html b/web/index.html index 0ae1390..cf9805a 100644 --- a/web/index.html +++ b/web/index.html @@ -29,7 +29,7 @@ - didvan + Didvan diff --git a/web/manifest.json b/web/manifest.json index dd7be18..450b2c2 100644 --- a/web/manifest.json +++ b/web/manifest.json @@ -1,11 +1,11 @@ { - "name": "didvan", - "short_name": "didvan", + "name": "Didvan", + "short_name": "Didvan", "start_url": ".", "display": "standalone", "background_color": "#0175C2", "theme_color": "#0175C2", - "description": "A new Flutter project.", + "description": "چشم همیشه باز مدیران", "orientation": "portrait-primary", "prefer_related_applications": false, "icons": [ From ca88dd1caf5a357b735d2c13e86c87e2e0940eaf Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 15 Jan 2022 15:55:35 +0330 Subject: [PATCH 123/273] D1APP-48 data model updates --- .../{radar_details_data => }/content.dart | 0 lib/models/news_details_data.dart | 54 +++++++++++++++++++ .../radar_details_data.dart | 4 -- .../{radar_overview => }/radar_overview.dart | 2 +- lib/models/settings_data.dart | 27 ---------- lib/models/{radar_details_data => }/tag.dart | 0 lib/models/user.dart | 4 +- 7 files changed, 56 insertions(+), 35 deletions(-) rename lib/models/{radar_details_data => }/content.dart (100%) create mode 100644 lib/models/news_details_data.dart rename lib/models/{radar_details_data => }/radar_details_data.dart (93%) rename lib/models/{radar_overview => }/radar_overview.dart (98%) delete mode 100644 lib/models/settings_data.dart rename lib/models/{radar_details_data => }/tag.dart (100%) diff --git a/lib/models/radar_details_data/content.dart b/lib/models/content.dart similarity index 100% rename from lib/models/radar_details_data/content.dart rename to lib/models/content.dart diff --git a/lib/models/news_details_data.dart b/lib/models/news_details_data.dart new file mode 100644 index 0000000..4190203 --- /dev/null +++ b/lib/models/news_details_data.dart @@ -0,0 +1,54 @@ +import 'package:didvan/models/content.dart'; +import 'package:didvan/models/tag.dart'; + +class NewsDetailsData { + final int id; + final String title; + final String reference; + final String image; + final String createdAt; + final bool marked; + final int comments; + final List tags; + final List contents; + + const NewsDetailsData({ + required this.id, + required this.title, + required this.reference, + required this.image, + required this.createdAt, + required this.marked, + required this.comments, + required this.tags, + required this.contents, + }); + + factory NewsDetailsData.fromJson(Map json) { + return NewsDetailsData( + id: json['id'], + title: json['title'], + reference: json['reference'], + image: json['image'], + createdAt: json['createdAt'], + marked: json['marked'], + comments: json['comments'], + tags: List.from(json['tags'].map((tag) => Tag.fromJson(tag))), + contents: List.from(json['contents'].map( + (content) => Content.fromJson(content), + )), + ); + } + + Map toJson() => { + 'id': id, + 'title': title, + 'reference': reference, + 'image': image, + 'createdAt': createdAt, + 'marked': marked, + 'comments': comments, + 'tags': tags.map((e) => e.toJson()).toList(), + 'contents': contents.map((e) => e.toJson()).toList(), + }; +} diff --git a/lib/models/radar_details_data/radar_details_data.dart b/lib/models/radar_details_data.dart similarity index 93% rename from lib/models/radar_details_data/radar_details_data.dart rename to lib/models/radar_details_data.dart index 763029b..8accdeb 100644 --- a/lib/models/radar_details_data/radar_details_data.dart +++ b/lib/models/radar_details_data.dart @@ -7,7 +7,6 @@ class RadarDetailsData { final int id; final String title; final String image; - final String description; final int timeToRead; final String createdAt; final String? podcast; @@ -22,7 +21,6 @@ class RadarDetailsData { required this.id, required this.title, required this.image, - required this.description, required this.timeToRead, required this.createdAt, required this.podcast, @@ -39,7 +37,6 @@ class RadarDetailsData { id: json['id'], title: json['title'], image: json['image'], - description: json['description'], timeToRead: json['timeToRead'], createdAt: json['createdAt'], podcast: json['podcast'], @@ -64,7 +61,6 @@ class RadarDetailsData { 'id': id, 'title': title, 'image': image, - 'description': description, 'timeToRead': timeToRead, 'createdAt': createdAt, 'podcast': podcast, diff --git a/lib/models/radar_overview/radar_overview.dart b/lib/models/radar_overview.dart similarity index 98% rename from lib/models/radar_overview/radar_overview.dart rename to lib/models/radar_overview.dart index 2a45483..4b9aa81 100644 --- a/lib/models/radar_overview/radar_overview.dart +++ b/lib/models/radar_overview.dart @@ -1,4 +1,4 @@ -import '../category.dart'; +import 'category.dart'; class RadarOverview { final int id; diff --git a/lib/models/settings_data.dart b/lib/models/settings_data.dart deleted file mode 100644 index e8404a9..0000000 --- a/lib/models/settings_data.dart +++ /dev/null @@ -1,27 +0,0 @@ -class SettingsData { - final String brightness; - final List notificationTimeRange; - final String fontFamily; - final double fontSizeScale; - - SettingsData( - this.brightness, - this.notificationTimeRange, - this.fontFamily, - this.fontSizeScale, - ); - - factory SettingsData.fromJson(Map json) => SettingsData( - json['brightness'], - json['notificationTimeRange'], - json['fontFamily'], - json['fontSizeScale'], - ); - - Map toJson() => { - 'brightness': brightness, - 'notificationTimeRange': notificationTimeRange, - 'fontFamily': fontFamily, - 'fontSizeScale': fontSizeScale, - }; -} diff --git a/lib/models/radar_details_data/tag.dart b/lib/models/tag.dart similarity index 100% rename from lib/models/radar_details_data/tag.dart rename to lib/models/tag.dart diff --git a/lib/models/user.dart b/lib/models/user.dart index 6b5aec3..01feaf8 100644 --- a/lib/models/user.dart +++ b/lib/models/user.dart @@ -1,5 +1,3 @@ -import 'package:didvan/services/network/request_helper.dart'; - class User { final int id; final String phoneNumber; @@ -21,7 +19,7 @@ class User { id: json['id'], username: json['username'], phoneNumber: json['phoneNumber'], - photo: RequestHelper.baseUrl + json['photo'], + photo: json['photo'], fullName: json['fullName'], email: json['email'], ); From 09eb21841a54e406c0da0a6c15078b2f2de8d94c Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 15 Jan 2022 15:57:21 +0330 Subject: [PATCH 124/273] component updates --- lib/widgets/audio_visualizer.dart | 2 +- lib/widgets/didvan/button.dart | 9 ++- lib/widgets/didvan/page_view.dart | 10 ++- lib/widgets/didvan/text_field.dart | 16 ++-- lib/widgets/floating_navigation_bar.dart | 98 +++++++++++++++++++----- lib/widgets/shimmer_placeholder.dart | 8 +- lib/widgets/skeletun_image.dart | 68 +++++++++++++--- lib/widgets/state_handler.dart | 14 ++-- 8 files changed, 172 insertions(+), 53 deletions(-) diff --git a/lib/widgets/audio_visualizer.dart b/lib/widgets/audio_visualizer.dart index f4fdc3d..94fc277 100644 --- a/lib/widgets/audio_visualizer.dart +++ b/lib/widgets/audio_visualizer.dart @@ -49,7 +49,7 @@ class _AudioVisualizerState extends State { Widget build(BuildContext context) { return Container( decoration: BoxDecoration( - color: Theme.of(context).brightness == Brightness.dark + color: DesignConfig.isDark ? Theme.of(context).colorScheme.black : Theme.of(context).colorScheme.background, borderRadius: DesignConfig.mediumBorderRadius, diff --git a/lib/widgets/didvan/button.dart b/lib/widgets/didvan/button.dart index a3baeba..7b3122b 100644 --- a/lib/widgets/didvan/button.dart +++ b/lib/widgets/didvan/button.dart @@ -31,8 +31,13 @@ class DidvanButton extends StatelessWidget { foregroundColor = Theme.of(context).colorScheme.text; break; case ButtonStyleMode.flat: - backgroundColor = Theme.of(context).colorScheme.surface; - foregroundColor = Theme.of(context).colorScheme.white; + if (DesignConfig.isDark) { + backgroundColor = Theme.of(context).colorScheme.surface; + foregroundColor = Theme.of(context).colorScheme.white; + } else { + backgroundColor = Theme.of(context).colorScheme.surface; + foregroundColor = Theme.of(context).colorScheme.primary; + } break; default: } diff --git a/lib/widgets/didvan/page_view.dart b/lib/widgets/didvan/page_view.dart index 6ecc97f..a1abbdc 100644 --- a/lib/widgets/didvan/page_view.dart +++ b/lib/widgets/didvan/page_view.dart @@ -4,13 +4,15 @@ import 'package:flutter/material.dart'; class DidvanPageView extends StatelessWidget { final List pages; - const DidvanPageView({Key? key, required this.pages}) : super(key: key); + final ScrollController? scrollController; + const DidvanPageView({Key? key, required this.pages, this.scrollController}) + : super(key: key); @override Widget build(BuildContext context) { final double deviceTopPadding = MediaQuery.of(context).padding.top; return CarouselSlider.builder( - itemCount: 5, + itemCount: pages.length, options: CarouselOptions( height: double.infinity, initialPage: 2, @@ -20,16 +22,18 @@ class DidvanPageView extends StatelessWidget { itemBuilder: (context, index, realIndex) => SizedBox( height: MediaQuery.of(context).size.height, child: SingleChildScrollView( + controller: scrollController, physics: const BouncingScrollPhysics(), padding: EdgeInsets.only( left: 4, right: 4, top: 16 + deviceTopPadding, + bottom: 92, ), child: DidvanCard( padding: EdgeInsets.zero, enableBorder: false, - child: pages[0], + child: pages[index], ), ), ), diff --git a/lib/widgets/didvan/text_field.dart b/lib/widgets/didvan/text_field.dart index cd13c85..9186744 100644 --- a/lib/widgets/didvan/text_field.dart +++ b/lib/widgets/didvan/text_field.dart @@ -8,6 +8,7 @@ import 'package:persian_number_utility/persian_number_utility.dart'; class DidvanTextField extends StatefulWidget { final void Function(String value)? onChanged; + final void Function(String value)? onSubmitted; final bool enabled; final bool autoFocus; final TextAlign textAlign; @@ -29,6 +30,7 @@ class DidvanTextField extends StatefulWidget { this.textAlign = TextAlign.right, this.obsecureText = false, this.autoFocus = false, + this.onSubmitted, }) : super(key: key); @override @@ -83,10 +85,9 @@ class _DidvanTextFieldState extends State { keyboardType: widget.textInputType, focusNode: _focusNode, controller: _controller, + onFieldSubmitted: widget.onSubmitted, onChanged: _onChanged, - validator: (value) { - _validator(value); - }, + validator: _validator, obscuringCharacter: '*', style: Theme.of(context).textTheme.bodyText1, decoration: InputDecoration( @@ -144,7 +145,9 @@ class _DidvanTextFieldState extends State { Color _fillColor() { if (!widget.enabled) { - return Theme.of(context).colorScheme.disabledBackground; + return DesignConfig.isDark + ? Theme.of(context).colorScheme.disabledBackground + : Theme.of(context).colorScheme.secondCTA; } if (_focusNode.hasFocus) { return Theme.of(context).colorScheme.focused; @@ -183,14 +186,13 @@ class _DidvanTextFieldState extends State { } } - Future _validator(String? value) async { + String? _validator(String? value) { if (widget.validator != null) { - final String? error = await widget.validator!(value!); + final String? error = widget.validator!(value!); if (error != null) { setState(() { _error = error; }); - return ''; } else { setState(() { _error = null; diff --git a/lib/widgets/floating_navigation_bar.dart b/lib/widgets/floating_navigation_bar.dart index 8f74f82..e5b348d 100644 --- a/lib/widgets/floating_navigation_bar.dart +++ b/lib/widgets/floating_navigation_bar.dart @@ -1,19 +1,60 @@ +import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/models/news_details_data.dart'; +import 'package:didvan/models/radar_details_data.dart'; +import 'package:didvan/widgets/didvan/icon_button.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; -class FloatingNavigationBar extends StatelessWidget { - final bool isRadar; - const FloatingNavigationBar({Key? key, required this.isRadar}) - : super(key: key); +class FloatingNavigationBar extends StatefulWidget { + final RadarDetailsData? radar; + final NewsDetailsData? news; + final ScrollController scrollController; + final VoidCallback bookmarkCallback; + const FloatingNavigationBar({ + Key? key, + this.radar, + this.news, + required this.scrollController, + required this.bookmarkCallback, + }) : super(key: key); + + @override + State createState() => _FloatingNavigationBarState(); +} + +class _FloatingNavigationBarState extends State { + bool _isMarked = false; + + bool get _isRadar => widget.radar != null; + bool _isScrolled = false; + + get _item => widget.radar ?? widget.news; + + @override + void initState() { + _isMarked = _item.marked; + widget.scrollController.addListener(() { + final position = widget.scrollController.position.pixels; + if (position > 300 && !_isScrolled) { + setState(() { + _isScrolled = true; + }); + } else if (position < 300 && _isScrolled) { + setState(() { + _isScrolled = false; + }); + } + }); + super.initState(); + } @override Widget build(BuildContext context) { - final Color foregroundColor = - Theme.of(context).brightness == Brightness.dark - ? Theme.of(context).colorScheme.focusedBorder - : Theme.of(context).colorScheme.focused; + final Color foregroundColor = DesignConfig.isDark + ? Theme.of(context).colorScheme.focusedBorder + : Theme.of(context).colorScheme.focused; return Container( margin: const EdgeInsets.only(left: 32, right: 32, bottom: 20), width: double.infinity, @@ -35,20 +76,35 @@ class FloatingNavigationBar extends StatelessWidget { child: Row( children: [ IconButton( - onPressed: () => Navigator.of(context).pop(), - icon: const Icon( - Icons.arrow_back, + onPressed: () { + if (_isScrolled) { + widget.scrollController.animateTo( + 0, + duration: DesignConfig.lowAnimationDuration, + curve: Curves.easeIn, + ); + return; + } + Navigator.of(context).pop(); + }, + icon: Icon( + _isScrolled ? Icons.arrow_upward : Icons.arrow_back, ), ), const Spacer(), - if (isRadar) - IconButton( - onPressed: () {}, - icon: const Icon( - DidvanIcons.bookmark_regular, - ), + if (_isRadar) + DidvanIconButton( + onPressed: () { + setState(() { + _isMarked = !_isMarked; + }); + widget.bookmarkCallback(); + }, + icon: _isMarked + ? DidvanIcons.bookmark_solid + : DidvanIcons.bookmark_regular, ), - if (isRadar) + if (_isRadar) IconButton( onPressed: () {}, icon: const Icon( @@ -66,19 +122,19 @@ class FloatingNavigationBar extends StatelessWidget { ), const SizedBox(width: 4), const Icon( - DidvanIcons.directs_regular, + DidvanIcons.chats_regular, ), ], ), ), - if (!isRadar) + if (!_isRadar) IconButton( onPressed: () {}, icon: const Icon( DidvanIcons.bookmark_regular, ), ), - if (isRadar) + if (_isRadar) IconButton( onPressed: () {}, icon: const Icon( diff --git a/lib/widgets/shimmer_placeholder.dart b/lib/widgets/shimmer_placeholder.dart index 502c094..fd39851 100644 --- a/lib/widgets/shimmer_placeholder.dart +++ b/lib/widgets/shimmer_placeholder.dart @@ -6,7 +6,7 @@ import 'package:skeleton_text/skeleton_text.dart'; class ShimmerPlaceholder extends StatelessWidget { final double? height; final double? width; - final BorderRadius borderRadius; + final BorderRadius? borderRadius; const ShimmerPlaceholder({ Key? key, @@ -18,14 +18,16 @@ class ShimmerPlaceholder extends StatelessWidget { @override Widget build(BuildContext context) { return SkeletonAnimation( - borderRadius: borderRadius, + borderRadius: borderRadius!, shimmerColor: Theme.of(context).colorScheme.secondCTA, gradientColor: Theme.of(context).colorScheme.cardBorder, child: Container( height: height, width: width, decoration: BoxDecoration( - color: Theme.of(context).colorScheme.disabledBackground, + color: DesignConfig.isDark + ? Theme.of(context).colorScheme.focused + : Theme.of(context).colorScheme.disabledBackground, borderRadius: borderRadius, ), ), diff --git a/lib/widgets/skeletun_image.dart b/lib/widgets/skeletun_image.dart index c5dd3eb..c1fe353 100644 --- a/lib/widgets/skeletun_image.dart +++ b/lib/widgets/skeletun_image.dart @@ -1,11 +1,17 @@ +import 'dart:typed_data'; + +import 'package:didvan/widgets/shimmer_placeholder.dart'; +import 'package:http/http.dart' as http; import 'package:cached_network_image/cached_network_image.dart'; import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/services/network/request.dart'; +import 'package:didvan/services/network/request_helper.dart'; +import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:skeleton_text/skeleton_text.dart'; -class SkeletonImage extends StatelessWidget { +class SkeletonImage extends StatefulWidget { final String imageUrl; final double width; final double height; @@ -15,19 +21,61 @@ class SkeletonImage extends StatelessWidget { required this.imageUrl, required this.width, required this.height, - this.borderRadius, + this.borderRadius = DesignConfig.lowBorderRadius, }) : super(key: key); + @override + State createState() => _SkeletonImageState(); +} + +class _SkeletonImageState extends State { + Uint8List? _bytes; + + @override + void initState() { + if (kIsWeb) _getImage(); + super.initState(); + } + + Future _getImage() async { + _bytes = (await http.get( + Uri.parse(RequestHelper.baseUrl + widget.imageUrl), + headers: {'Authorization': 'Bearer ${RequestService.token}'}, + )) + .bodyBytes; + if (mounted) { + setState(() {}); + } + } + @override Widget build(BuildContext context) { + if (kIsWeb) { + if (_bytes == null || _bytes!.isEmpty) { + return ShimmerPlaceholder( + width: widget.width, + height: widget.height, + borderRadius: widget.borderRadius, + ); + } + return ClipRRect( + borderRadius: widget.borderRadius, + child: Image.memory( + _bytes!, + width: widget.width, + height: widget.height, + fit: BoxFit.cover, + ), + ); + } return CachedNetworkImage( httpHeaders: {'Authorization': 'Bearer ${RequestService.token}'}, - width: width, - height: height, - imageUrl: imageUrl, + width: widget.width, + height: widget.height, + imageUrl: RequestHelper.baseUrl + widget.imageUrl, imageBuilder: (context, imageProvider) => Container( decoration: BoxDecoration( - borderRadius: borderRadius ?? DesignConfig.lowBorderRadius, + borderRadius: widget.borderRadius ?? DesignConfig.lowBorderRadius, image: DecorationImage( image: imageProvider, fit: BoxFit.cover, @@ -36,14 +84,14 @@ class SkeletonImage extends StatelessWidget { ), progressIndicatorBuilder: (context, url, progress) => SkeletonAnimation( shimmerColor: Theme.of(context).colorScheme.border, - borderRadius: borderRadius ?? DesignConfig.lowBorderRadius, + borderRadius: widget.borderRadius ?? DesignConfig.lowBorderRadius, child: Container( decoration: BoxDecoration( color: Theme.of(context).colorScheme.disabledBackground, - borderRadius: borderRadius, + borderRadius: widget.borderRadius, ), - height: height, - width: width, + height: widget.height, + width: widget.width, ), ), ); diff --git a/lib/widgets/state_handler.dart b/lib/widgets/state_handler.dart index 0fc9a6f..16ad8ea 100644 --- a/lib/widgets/state_handler.dart +++ b/lib/widgets/state_handler.dart @@ -1,26 +1,25 @@ import 'package:didvan/models/enums.dart'; import 'package:didvan/providers/core_provider.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_spinkit/flutter_spinkit.dart'; class StateHandler extends StatelessWidget { final T state; final Widget Function(BuildContext context, T state) builder; final VoidCallback? onRefresh; - final bool enableCustomLoadingIndicator; - final Color? customLoadingIndicatorColor; final bool enableEmptyState; + final Widget? placeholder; final Widget? emptyState; final double topPadding; const StateHandler({ Key? key, required this.builder, this.emptyState, - this.enableCustomLoadingIndicator = false, this.enableEmptyState = false, this.onRefresh, this.topPadding = 0, - this.customLoadingIndicatorColor, required this.state, + this.placeholder, }) : super(key: key); @override @@ -38,9 +37,12 @@ class StateHandler extends StatelessWidget { case AppState.idle: return builder(context, state); case AppState.busy: - return const CircularProgressIndicator(); + return placeholder ?? + SpinKitSpinningLines( + color: Theme.of(context).colorScheme.primary, + ); case AppState.failed: - return enableCustomLoadingIndicator ? emptyState! : Container(); + return Container(); default: return Container(); } From f692eb77fb410ef05dacb68148e65756e588a051 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 15 Jan 2022 15:58:12 +0330 Subject: [PATCH 125/273] D1APP-43 submit action added --- lib/pages/authentication/screens/password.dart | 5 +++-- lib/pages/authentication/screens/username.dart | 1 + 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/pages/authentication/screens/password.dart b/lib/pages/authentication/screens/password.dart index ca8b5c0..daada7e 100644 --- a/lib/pages/authentication/screens/password.dart +++ b/lib/pages/authentication/screens/password.dart @@ -29,6 +29,7 @@ class _PasswordInputState extends State { key: _formKey, child: DidvanTextField( onChanged: (value) => state.password = value, + onSubmitted: (value) => _onLogin(context), autoFocus: true, title: 'کلمه عبور', hintText: 'کلمه عبور', @@ -51,7 +52,7 @@ class _PasswordInputState extends State { ), const Spacer(), DidvanButton( - onPressed: () => _onPressed(context), + onPressed: () => _onLogin(context), title: 'ورود', ), const SizedBox( @@ -61,7 +62,7 @@ class _PasswordInputState extends State { ); } - Future _onPressed(BuildContext context) async { + Future _onLogin(BuildContext context) async { if (!_formKey.currentState!.validate()) { return; } diff --git a/lib/pages/authentication/screens/username.dart b/lib/pages/authentication/screens/username.dart index 0e7b1f6..fb0bf7d 100644 --- a/lib/pages/authentication/screens/username.dart +++ b/lib/pages/authentication/screens/username.dart @@ -29,6 +29,7 @@ class _UsernameInputState extends State { title: 'نام کاربری یا شماره موبایل', hintText: 'نام کاربری یا شماره موبایل', textAlign: TextAlign.center, + onSubmitted: (value) => state.confirmUsername(), validator: (value) { if (value.contains(' ')) { return 'نام کاربری باید بدون فاصله باشد'; From 33d99717476f598941e60c2b3d0f2741ba8a90ed Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 15 Jan 2022 15:58:56 +0330 Subject: [PATCH 126/273] D1APP-43 bug fix --- lib/pages/authentication/authentication_state.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/pages/authentication/authentication_state.dart b/lib/pages/authentication/authentication_state.dart index 11e6eb2..7894f4e 100644 --- a/lib/pages/authentication/authentication_state.dart +++ b/lib/pages/authentication/authentication_state.dart @@ -47,7 +47,7 @@ class AuthenticationState extends CoreProvier { if (service.isSuccess && service.result['loggedIn']) { final token = service.result['token']; appState = AppState.idle; - await userProvider.setAndGetToken(token: token); + await userProvider.setAndGetToken(newToken: token); RequestService.token = token; await userProvider.getUserInfo(); return token; From 58f02ba483d0c10583b27bcba6a0e52485c162f5 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 15 Jan 2022 16:00:26 +0330 Subject: [PATCH 127/273] D1APP-22 service updates (new storage package) --- lib/services/app_initalizer.dart | 45 ++++++++++++++---------- lib/services/media/media.dart | 4 +++ lib/services/network/request_helper.dart | 6 ++-- lib/services/storage/storage.dart | 38 +++++--------------- 4 files changed, 42 insertions(+), 51 deletions(-) diff --git a/lib/services/app_initalizer.dart b/lib/services/app_initalizer.dart index 0b948e5..74c1e6c 100644 --- a/lib/services/app_initalizer.dart +++ b/lib/services/app_initalizer.dart @@ -1,34 +1,41 @@ -import 'package:didvan/models/settings_data.dart'; import 'package:didvan/services/storage/storage.dart'; +import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; -import 'package:hive_flutter/hive_flutter.dart'; import 'package:path_provider/path_provider.dart'; class AppInitializer { static Future setupServices() async { - StorageService.appDocsDir = (await getApplicationDocumentsDirectory()).path; - StorageService.appTempsDir = (await getTemporaryDirectory()).path; - await Hive.initFlutter(); + if (!kIsWeb) { + StorageService.appDocsDir = + (await getApplicationDocumentsDirectory()).path; + StorageService.appTempsDir = (await getTemporaryDirectory()).path; + } } static Future initilizeSettings() async { - final bool settingsBoxExists = await StorageService.boxExists( - boxName: 'settings', - ); - if (settingsBoxExists) { - final String brightness = - await StorageService.getValue(key: 'brightness', boxName: 'settings'); + final brightness = await StorageService.getValue(key: 'brightness'); + if (brightness != null) { return brightness == 'dark' ? ThemeMode.dark : ThemeMode.light; } else { - final SettingsData settingsData = SettingsData( - 'light', - ['00:00', '23:59'], - 'Dana-FA', - 1, + await StorageService.setValue( + key: 'notificationTimeRangeStart', + value: '00:00', ); - await StorageService.setBoxData( - data: settingsData.toJson(), - boxName: 'settings', + await StorageService.setValue( + key: 'notificationTimeRangeEnd', + value: '23:59', + ); + await StorageService.setValue( + key: 'fontFamily', + value: 'Dana-FA', + ); + await StorageService.setValue( + key: 'fontSizeScale', + value: '1', + ); + await StorageService.setValue( + key: 'brightness', + value: 'light', ); return ThemeMode.light; } diff --git a/lib/services/media/media.dart b/lib/services/media/media.dart index b3f6f5d..d8c77f6 100644 --- a/lib/services/media/media.dart +++ b/lib/services/media/media.dart @@ -1,5 +1,6 @@ import 'dart:io'; +import 'package:flutter/foundation.dart'; import 'package:image_cropper/image_cropper.dart'; import 'package:image_picker/image_picker.dart'; @@ -10,6 +11,9 @@ class MediaService { if (pickedFile == null) { return null; } + if (kIsWeb) { + return File(pickedFile.path); + } final cropedFile = await ImageCropper.cropImage( sourcePath: pickedFile.path, aspectRatio: const CropAspectRatio(ratioX: 1, ratioY: 1), diff --git a/lib/services/network/request_helper.dart b/lib/services/network/request_helper.dart index 8817b8b..fe10939 100644 --- a/lib/services/network/request_helper.dart +++ b/lib/services/network/request_helper.dart @@ -1,5 +1,5 @@ class RequestHelper { - static const String baseUrl = 'https://didvan-greatsam.fandogh.cloud'; + static const String baseUrl = 'https://api.didvan.app'; static const String _baseUserUrl = baseUrl + '/user'; static const String _baseRadarUrl = baseUrl + '/radar'; static const String _baseNewsUrl = baseUrl + '/news'; @@ -18,10 +18,10 @@ class RequestHelper { static String direct(int id) => _baseUserUrl + '/direct/$id'; - static String markRadar(int id) => _baseRadarUrl + '/mark/$id'; + static String markRadar(int id) => _baseRadarUrl + '$id/mark'; static String radarDetails(int id) => _baseRadarUrl + '/$id'; static String radarComments(int id) => _baseRadarUrl + '/$id/comments'; - static String markNews(int id) => _baseNewsUrl + '/mark/$id'; + static String markNews(int id) => _baseNewsUrl + '$id/mark'; static String newsDetails(int id) => _baseNewsUrl + '/$id'; static String newsComments(int id) => _baseNewsUrl + '/$id/comments'; static String radarOverviews({ diff --git a/lib/services/storage/storage.dart b/lib/services/storage/storage.dart index eaca3a5..7c398e6 100644 --- a/lib/services/storage/storage.dart +++ b/lib/services/storage/storage.dart @@ -1,43 +1,23 @@ -import 'package:hive/hive.dart'; +import 'package:flutter_secure_storage/flutter_secure_storage.dart'; class StorageService { static late String appDocsDir; static late String appTempsDir; + static const FlutterSecureStorage _storage = FlutterSecureStorage(); static Future setValue({ required String key, required dynamic value, - required String boxName, }) async { - final Box box = await Hive.openBox(boxName); - await box.put(key, value); - await box.close(); + await _storage.write(key: key, value: value); } - static Future getValue({required String key, required String boxName}) async { - final Box box = await Hive.openBox(boxName); - final value = await box.get(key); - await box.close(); - return value; - } - - static Future setBoxData({ - required Map data, - required String boxName, - }) async { - final Box box = await Hive.openBox(boxName); - await box.putAll(data); - await box.close(); - } - - static Future getBoxData({required String boxName}) async { - final Box box = await Hive.openBox(boxName); - await box.close(); - return box.toMap(); - } - - static Future boxExists({required String boxName}) async { - final bool result = await Hive.boxExists(boxName); + static Future getValue({required String key}) async { + final result = await _storage.read(key: key); return result; } + + static Future delete({required String key}) async { + _storage.delete(key: key); + } } From 10471356876103a67fde5d0f68e5a81a2087dc13 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 15 Jan 2022 16:00:56 +0330 Subject: [PATCH 128/273] bnb color correction --- lib/pages/home/widgets/bnb.dart | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/lib/pages/home/widgets/bnb.dart b/lib/pages/home/widgets/bnb.dart index 036c46c..1e47824 100644 --- a/lib/pages/home/widgets/bnb.dart +++ b/lib/pages/home/widgets/bnb.dart @@ -111,11 +111,9 @@ class _NavBarItem extends StatelessWidget { child: Icon( isSelected ? selectedIcon : unselectedIcon, size: 32, - color: isSelected - ? Theme.of(context).brightness == Brightness.dark - ? Theme.of(context).colorScheme.text - : Theme.of(context).colorScheme.title - : null, + color: DesignConfig.isDark + ? Theme.of(context).colorScheme.text + : Theme.of(context).colorScheme.title, ), ), DidvanText( From e4e1cfafb459729c1bbe96903a927047b57dee5e Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 15 Jan 2022 16:12:00 +0330 Subject: [PATCH 129/273] image bug fix + new package configuration --- lib/providers/user_provider.dart | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/lib/providers/user_provider.dart b/lib/providers/user_provider.dart index 492a21f..d2d503d 100644 --- a/lib/providers/user_provider.dart +++ b/lib/providers/user_provider.dart @@ -6,18 +6,17 @@ import 'package:didvan/models/view/alert_data.dart'; import 'package:didvan/providers/core_provider.dart'; import 'package:didvan/services/network/request.dart'; import 'package:didvan/services/network/request_helper.dart'; +import 'package:didvan/services/storage/storage.dart'; import 'package:didvan/utils/action_sheet.dart'; -import 'package:hive/hive.dart'; class UserProvider extends CoreProvier { late User user; - Future setAndGetToken({String? token}) async { - final box = await Hive.openBox('autherization'); - if (token != null) { - await box.put('token', token); - } else { - return box.toMap()['token']; + Future setAndGetToken({String? newToken}) async { + if (newToken == null) { + final token = await StorageService.getValue(key: 'token'); + return token; } + await StorageService.setValue(key: 'token', value: newToken); } Future getUserInfo() async { @@ -36,8 +35,7 @@ class UserProvider extends CoreProvier { RequestService(RequestHelper.updateUserProfile); await service.multipart(file); if (service.isSuccess) { - user = - user.copyWith(photo: RequestHelper.baseUrl + service.result['photo']); + user = user.copyWith(photo: service.result['photo']); appState = AppState.idle; return true; } From 59b3ddc95722ac2b9f91e72dd03dad8bd645c228 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 15 Jan 2022 16:37:38 +0330 Subject: [PATCH 130/273] code cleaning --- lib/pages/home/profile/settings/settings.dart | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/lib/pages/home/profile/settings/settings.dart b/lib/pages/home/profile/settings/settings.dart index fa5274a..3d14012 100644 --- a/lib/pages/home/profile/settings/settings.dart +++ b/lib/pages/home/profile/settings/settings.dart @@ -163,10 +163,9 @@ class Settings extends StatelessWidget { return GestureDetector( onTap: () { state.brightness = brightness; - if (isDarkTheme && Theme.of(context).brightness == Brightness.dark) { + if (isDarkTheme && DesignConfig.isDark) { return; - } else if (!isDarkTheme && - Theme.of(context).brightness == Brightness.light) { + } else if (!isDarkTheme && !DesignConfig.isDark) { return; } else { if (isDarkTheme) { From 530965bff13cdbd5f0631ae01e67c924fccfa6f7 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 15 Jan 2022 16:37:50 +0330 Subject: [PATCH 131/273] filter badge added --- lib/widgets/search_field.dart | 32 ++++++++++++++++++++++++++------ 1 file changed, 26 insertions(+), 6 deletions(-) diff --git a/lib/widgets/search_field.dart b/lib/widgets/search_field.dart index 006bc3c..20c0436 100644 --- a/lib/widgets/search_field.dart +++ b/lib/widgets/search_field.dart @@ -5,6 +5,7 @@ import 'package:flutter/material.dart'; class SearchField extends StatefulWidget { final String title; + final bool? isFiltered; final void Function(String value) onChanged; final VoidCallback? onFilterButtonPressed; @@ -13,6 +14,7 @@ class SearchField extends StatefulWidget { required this.title, required this.onChanged, this.onFilterButtonPressed, + this.isFiltered, }) : super(key: key); @override @@ -78,18 +80,36 @@ class _SearchFieldState extends State { border: InputBorder.none, hintText: 'جستجو مطلب در ${widget.title}', hintStyle: TextStyle( - color: Theme.of(context).colorScheme.disabledText), + color: Theme.of(context).colorScheme.disabledText, + ), ), ), ), ), if (widget.onFilterButtonPressed != null) const SizedBox(width: 8), if (widget.onFilterButtonPressed != null) - DidvanIconButton( - onPressed: widget.onFilterButtonPressed!, - icon: DidvanIcons.filter_regular, - size: 32, - gestureSize: 32, + Stack( + children: [ + DidvanIconButton( + onPressed: widget.onFilterButtonPressed!, + icon: widget.isFiltered! + ? DidvanIcons.filter_solid + : DidvanIcons.filter_regular, + size: 32, + gestureSize: 32, + ), + if (widget.isFiltered!) + Positioned( + child: Container( + width: 10, + height: 10, + decoration: BoxDecoration( + shape: BoxShape.circle, + color: Theme.of(context).colorScheme.secondary, + ), + ), + ), + ], ), ], ), From 6ff4a2c9e5efefbaff3787ff5a32c35c9a4a2f3e Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Mon, 17 Jan 2022 15:51:07 +0330 Subject: [PATCH 132/273] deploy config files --- .fandogh/config.yml | 1 + .fandogh/fandogh.yaml | 13 +++++++++++++ 2 files changed, 14 insertions(+) create mode 100644 .fandogh/config.yml create mode 100644 .fandogh/fandogh.yaml diff --git a/.fandogh/config.yml b/.fandogh/config.yml new file mode 100644 index 0000000..5231c24 --- /dev/null +++ b/.fandogh/config.yml @@ -0,0 +1 @@ +image.name: app-test diff --git a/.fandogh/fandogh.yaml b/.fandogh/fandogh.yaml new file mode 100644 index 0000000..05b34a4 --- /dev/null +++ b/.fandogh/fandogh.yaml @@ -0,0 +1,13 @@ +kind: ExternalService +name: app-test +spec: + allow_http: false + disable_default_domains: true + image: app-test:0.0.4 + image_pull_policy: IfNotPresent + path: / + replicas: 1 + resources: + memory: 50Mi + domains: + - name: dev.didvan.app \ No newline at end of file From b51f0b3d93781dd7d385d35675eaaea110586c54 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 18 Jan 2022 18:05:20 +0330 Subject: [PATCH 133/273] D1APP-1 animation durations changed --- lib/config/design_config.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/config/design_config.dart b/lib/config/design_config.dart index a646ea7..5f60b56 100644 --- a/lib/config/design_config.dart +++ b/lib/config/design_config.dart @@ -33,7 +33,7 @@ class DesignConfig { static bool get isDark => brightness == Brightness.dark; static const Duration lowAnimationDuration = Duration(milliseconds: 300); - static const Duration mediumAnimationDuration = Duration(milliseconds: 600); + static const Duration mediumAnimationDuration = Duration(milliseconds: 350); static SystemUiOverlayStyle get systemUiOverlayStyle { return SystemUiOverlayStyle( From 58fd0680fec6dd194c58e0d2c667f698c9648df1 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 18 Jan 2022 18:10:28 +0330 Subject: [PATCH 134/273] D1APP-48 data model edits --- lib/models/news_overview.dart | 4 ++-- lib/models/radar_overview.dart | 8 ++++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/lib/models/news_overview.dart b/lib/models/news_overview.dart index fe1c60d..b6d89e9 100644 --- a/lib/models/news_overview.dart +++ b/lib/models/news_overview.dart @@ -5,9 +5,9 @@ class NewsOverview { final String description; final String image; final String createdAt; - final bool marked; + bool marked; - const NewsOverview({ + NewsOverview({ required this.id, required this.title, required this.reference, diff --git a/lib/models/radar_overview.dart b/lib/models/radar_overview.dart index 4b9aa81..16e5c12 100644 --- a/lib/models/radar_overview.dart +++ b/lib/models/radar_overview.dart @@ -8,10 +8,11 @@ class RadarOverview { final int timeToRead; final String createdAt; final bool forManagers; - final bool marked; + bool marked; final List categories; + final int comments; - const RadarOverview({ + RadarOverview({ required this.id, required this.image, required this.title, @@ -21,6 +22,7 @@ class RadarOverview { required this.forManagers, required this.marked, required this.categories, + required this.comments, }); factory RadarOverview.fromJson(Map json) => RadarOverview( @@ -32,6 +34,7 @@ class RadarOverview { createdAt: json['createdAt'], forManagers: json['forManagers'], marked: json['marked'], + comments: json['comments'], categories: List.from( json['categories'].map( (category) => Category.fromJson(category), @@ -48,6 +51,7 @@ class RadarOverview { 'createdAt': createdAt, 'forManagers': forManagers, 'marked': marked, + 'comment': comments, 'categories': categories.map((e) => e.toJson()).toList(), }; } From a6607fd5af91e4320d59a2d28f76d799211e1136 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 18 Jan 2022 18:13:48 +0330 Subject: [PATCH 135/273] D1APP-16 no button bottom sheet --- lib/models/view/action_sheet_data.dart | 2 + lib/utils/action_sheet.dart | 86 +++++++------------------- 2 files changed, 24 insertions(+), 64 deletions(-) diff --git a/lib/models/view/action_sheet_data.dart b/lib/models/view/action_sheet_data.dart index 59992e8..3659dd8 100644 --- a/lib/models/view/action_sheet_data.dart +++ b/lib/models/view/action_sheet_data.dart @@ -10,6 +10,7 @@ class ActionSheetData { final IconData? titleIcon; final Color? titleColor; final bool hasDismissButton; + final bool withoutButtonMode; final bool smallDismissButton; ActionSheetData({ @@ -23,5 +24,6 @@ class ActionSheetData { this.dismissTitle, this.onDismissed, this.smallDismissButton = false, + this.withoutButtonMode = false, }); } diff --git a/lib/utils/action_sheet.dart b/lib/utils/action_sheet.dart index 212570b..18b4930 100644 --- a/lib/utils/action_sheet.dart +++ b/lib/utils/action_sheet.dart @@ -18,15 +18,11 @@ class ActionSheetUtils { static Future showLogoLoadingIndicator() async { await showDialog( context: context, - builder: (context) => - // _customSystemOverlayStyle( - // child: - Padding( + builder: (context) => Padding( padding: EdgeInsets.symmetric( horizontal: MediaQuery.of(context).size.width / 3, ), child: RiveAnimation.asset(Assets.logoLoadingAnimation), - // ), ), ); } @@ -75,45 +71,6 @@ class ActionSheetUtils { }, ), ); - // ignore: avoid_single_cascade_in_expression_statements - // Flushbar( - // margin: const EdgeInsets.only(left: 16, right: 16, bottom: 16), - // borderColor: foregroundColor, - // backgroundColor: backgroundColor, - // borderRadius: DesignConfig.mediumBorderRadius, - // padding: const EdgeInsets.symmetric(vertical: 16), - // icon: Icon( - // DidvanIcons.info_circle_solid, - // color: foregroundColor, - // ), - // shouldIconPulse: true, - // dismissDirection: FlushbarDismissDirection.HORIZONTAL, - // flushbarPosition: FlushbarPosition.BOTTOM, - // messageText: StatefulBuilder(builder: (context, setState) { - // if (isInit) { - // Future.delayed(Duration.zero, () { - // setState(() {}); - // isInit = false; - // }); - // } - // return Column( - // crossAxisAlignment: CrossAxisAlignment.start, - // children: [ - // DidvanText(alertData.message, color: foregroundColor), - // AnimatedContainer( - // duration: const Duration(seconds: 2), - // width: isInit ? MediaQuery.of(context).size.width - 32 : 0, - // height: 2, - // color: foregroundColor, - // ), - // ], - // ); - // }), - // duration: const Duration(seconds: 2), - // boxShadows: [ - // BoxShadow(color: Theme.of(context).colorScheme.cardBorder), - // ], - // )..show(context); } static Future showBottomSheet({required ActionSheetData data}) async { @@ -164,33 +121,34 @@ class ActionSheetUtils { const SizedBox(height: 28), data.content, const SizedBox(height: 28), - Row( - children: [ - if (data.hasDismissButton) + if (!data.withoutButtonMode) + Row( + children: [ + if (data.hasDismissButton) + Expanded( + child: DidvanButton( + onPressed: () { + Navigator.of(context).pop(); + data.onDismissed?.call(); + }, + title: data.dismissTitle ?? 'بازگشت', + style: ButtonStyleMode.secondary, + ), + ), + if (data.hasDismissButton) const SizedBox(width: 20), Expanded( + flex: data.smallDismissButton ? 2 : 1, child: DidvanButton( + style: ButtonStyleMode.primary, onPressed: () { Navigator.of(context).pop(); - data.onDismissed?.call(); + data.onConfirmed?.call(); }, - title: data.dismissTitle ?? 'بازگشت', - style: ButtonStyleMode.secondary, + title: data.confrimTitle ?? 'تایید', ), ), - if (data.hasDismissButton) const SizedBox(width: 20), - Expanded( - flex: data.smallDismissButton ? 2 : 1, - child: DidvanButton( - style: ButtonStyleMode.primary, - onPressed: () { - Navigator.of(context).pop(); - data.onConfirmed?.call(); - }, - title: data.confrimTitle ?? 'تایید', - ), - ), - ], - ), + ], + ), ], ), ), From 61aea521611b986c33dcc259e7ca338e5e45fe6c Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 18 Jan 2022 18:16:25 +0330 Subject: [PATCH 136/273] component updates --- .../authentication/screens/username.dart | 1 + .../widgets/authentication_app_bar.dart | 3 +- lib/widgets/bookmark_button.dart | 42 ++++++ lib/widgets/didvan/app_bar.dart | 3 +- lib/widgets/didvan/page_view.dart | 14 +- lib/widgets/didvan/text_field.dart | 23 ++- lib/widgets/floating_navigation_bar.dart | 114 +++++++++------ lib/widgets/search_field.dart | 8 +- lib/widgets/skeleton_image.dart | 135 ++++++++++++++++++ lib/widgets/skeletun_image.dart | 99 ------------- 10 files changed, 290 insertions(+), 152 deletions(-) create mode 100644 lib/widgets/bookmark_button.dart create mode 100644 lib/widgets/skeleton_image.dart delete mode 100644 lib/widgets/skeletun_image.dart diff --git a/lib/pages/authentication/screens/username.dart b/lib/pages/authentication/screens/username.dart index fb0bf7d..395db9d 100644 --- a/lib/pages/authentication/screens/username.dart +++ b/lib/pages/authentication/screens/username.dart @@ -29,6 +29,7 @@ class _UsernameInputState extends State { title: 'نام کاربری یا شماره موبایل', hintText: 'نام کاربری یا شماره موبایل', textAlign: TextAlign.center, + acceptSpace: false, onSubmitted: (value) => state.confirmUsername(), validator: (value) { if (value.contains(' ')) { diff --git a/lib/pages/authentication/widgets/authentication_app_bar.dart b/lib/pages/authentication/widgets/authentication_app_bar.dart index 03489c2..e9cb490 100644 --- a/lib/pages/authentication/widgets/authentication_app_bar.dart +++ b/lib/pages/authentication/widgets/authentication_app_bar.dart @@ -1,4 +1,5 @@ import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/pages/authentication/authentication_state.dart'; import 'package:didvan/widgets/didvan/icon_button.dart'; import 'package:didvan/widgets/didvan/text.dart'; @@ -15,7 +16,7 @@ class AuthenticationAppBar extends StatelessWidget { return Row( children: [ DidvanIconButton( - icon: Icons.arrow_back, + icon: DidvanIcons.back_regular, onPressed: () { if (state.currentPageIndex == 0) { Navigator.of(context).pop(); diff --git a/lib/widgets/bookmark_button.dart b/lib/widgets/bookmark_button.dart new file mode 100644 index 0000000..6fae1b9 --- /dev/null +++ b/lib/widgets/bookmark_button.dart @@ -0,0 +1,42 @@ +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/widgets/didvan/icon_button.dart'; +import 'package:flutter/material.dart'; + +class BookmarkButton extends StatefulWidget { + final bool value; + final VoidCallback onMark; + final VoidCallback onUnmark; + const BookmarkButton( + {Key? key, + required this.value, + required this.onMark, + required this.onUnmark}) + : super(key: key); + + @override + State createState() => _BookmarkButtonState(); +} + +class _BookmarkButtonState extends State { + bool _value = false; + + @override + void initState() { + _value = widget.value; + super.initState(); + } + + @override + Widget build(BuildContext context) { + return DidvanIconButton( + gestureSize: 24, + icon: _value ? DidvanIcons.bookmark_solid : DidvanIcons.bookmark_regular, + onPressed: () { + setState(() { + _value = !_value; + }); + _value ? widget.onMark() : widget.onUnmark(); + }, + ); + } +} diff --git a/lib/widgets/didvan/app_bar.dart b/lib/widgets/didvan/app_bar.dart index d4ca0df..be5fc38 100644 --- a/lib/widgets/didvan/app_bar.dart +++ b/lib/widgets/didvan/app_bar.dart @@ -1,4 +1,5 @@ import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/view/app_bar_data.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; @@ -16,7 +17,7 @@ class DidvanAppBar extends StatelessWidget { IconButton( onPressed: () => Navigator.of(context).pop(), color: Theme.of(context).colorScheme.title, - icon: const Icon(Icons.arrow_back), + icon: const Icon(DidvanIcons.back_regular), ), const SizedBox(width: 16), Expanded( diff --git a/lib/widgets/didvan/page_view.dart b/lib/widgets/didvan/page_view.dart index a1abbdc..c455540 100644 --- a/lib/widgets/didvan/page_view.dart +++ b/lib/widgets/didvan/page_view.dart @@ -5,8 +5,15 @@ import 'package:flutter/material.dart'; class DidvanPageView extends StatelessWidget { final List pages; final ScrollController? scrollController; - const DidvanPageView({Key? key, required this.pages, this.scrollController}) - : super(key: key); + final int initialPage; + final void Function(int index) onPageChanged; + const DidvanPageView({ + Key? key, + required this.pages, + this.scrollController, + required this.onPageChanged, + this.initialPage = 2, + }) : super(key: key); @override Widget build(BuildContext context) { @@ -14,6 +21,7 @@ class DidvanPageView extends StatelessWidget { return CarouselSlider.builder( itemCount: pages.length, options: CarouselOptions( + onPageChanged: (index, reason) => onPageChanged(index), height: double.infinity, initialPage: 2, viewportFraction: 0.94, @@ -22,7 +30,7 @@ class DidvanPageView extends StatelessWidget { itemBuilder: (context, index, realIndex) => SizedBox( height: MediaQuery.of(context).size.height, child: SingleChildScrollView( - controller: scrollController, + controller: index == 2 ? scrollController : null, physics: const BouncingScrollPhysics(), padding: EdgeInsets.only( left: 4, diff --git a/lib/widgets/didvan/text_field.dart b/lib/widgets/didvan/text_field.dart index 9186744..608c40b 100644 --- a/lib/widgets/didvan/text_field.dart +++ b/lib/widgets/didvan/text_field.dart @@ -4,6 +4,7 @@ import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/widgets/animated_visibility.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; import 'package:persian_number_utility/persian_number_utility.dart'; class DidvanTextField extends StatefulWidget { @@ -16,6 +17,7 @@ class DidvanTextField extends StatefulWidget { final String? hintText; final dynamic initialValue; final bool obsecureText; + final bool acceptSpace; final Function(String value)? validator; final TextInputType? textInputType; const DidvanTextField({ @@ -31,6 +33,7 @@ class DidvanTextField extends StatefulWidget { this.obsecureText = false, this.autoFocus = false, this.onSubmitted, + this.acceptSpace = true, }) : super(key: key); @override @@ -79,6 +82,10 @@ class _DidvanTextFieldState extends State { border: Border.all(color: _borderColor()), ), child: TextFormField( + inputFormatters: [ + if (!widget.acceptSpace) + FilteringTextInputFormatter.allow(RegExp("[0-9a-zA-Z]")), + ], autofocus: widget.autoFocus, obscureText: _hideContent, textAlign: widget.textAlign, @@ -89,7 +96,10 @@ class _DidvanTextFieldState extends State { onChanged: _onChanged, validator: _validator, obscuringCharacter: '*', - style: Theme.of(context).textTheme.bodyText1, + style: Theme.of(context) + .textTheme + .bodyText2! + .copyWith(fontFamily: 'Dana'), decoration: InputDecoration( suffixIcon: _suffixBuilder(), enabled: widget.enabled, @@ -181,9 +191,7 @@ class _DidvanTextFieldState extends State { _error = null; }); value = value.toEnglishDigit(); - if (widget.onChanged != null) { - widget.onChanged!(value); - } + widget.onChanged?.call(value); } String? _validator(String? value) { @@ -193,6 +201,7 @@ class _DidvanTextFieldState extends State { setState(() { _error = error; }); + return ''; } else { setState(() { _error = null; @@ -200,4 +209,10 @@ class _DidvanTextFieldState extends State { } } } + + @override + void dispose() { + _controller.dispose(); + super.dispose(); + } } diff --git a/lib/widgets/floating_navigation_bar.dart b/lib/widgets/floating_navigation_bar.dart index e5b348d..4d8e7d4 100644 --- a/lib/widgets/floating_navigation_bar.dart +++ b/lib/widgets/floating_navigation_bar.dart @@ -3,6 +3,12 @@ import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/news_details_data.dart'; import 'package:didvan/models/radar_details_data.dart'; +import 'package:didvan/models/view/action_sheet_data.dart'; +import 'package:didvan/pages/home/profile/widgets/menu_item.dart'; +import 'package:didvan/routes/routes.dart'; +import 'package:didvan/utils/action_sheet.dart'; +import 'package:didvan/widgets/bookmark_button.dart'; +import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/icon_button.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; @@ -11,13 +17,15 @@ class FloatingNavigationBar extends StatefulWidget { final RadarDetailsData? radar; final NewsDetailsData? news; final ScrollController scrollController; - final VoidCallback bookmarkCallback; + final VoidCallback onMark; + final VoidCallback onUnmark; const FloatingNavigationBar({ Key? key, this.radar, this.news, required this.scrollController, - required this.bookmarkCallback, + required this.onMark, + required this.onUnmark, }) : super(key: key); @override @@ -25,8 +33,6 @@ class FloatingNavigationBar extends StatefulWidget { } class _FloatingNavigationBarState extends State { - bool _isMarked = false; - bool get _isRadar => widget.radar != null; bool _isScrolled = false; @@ -34,7 +40,6 @@ class _FloatingNavigationBarState extends State { @override void initState() { - _isMarked = _item.marked; widget.scrollController.addListener(() { final position = widget.scrollController.position.pixels; if (position > 300 && !_isScrolled) { @@ -57,9 +62,9 @@ class _FloatingNavigationBarState extends State { : Theme.of(context).colorScheme.focused; return Container( margin: const EdgeInsets.only(left: 32, right: 32, bottom: 20), + padding: const EdgeInsets.symmetric(horizontal: 12), width: double.infinity, height: 48, - padding: const EdgeInsets.symmetric(horizontal: 12), decoration: BoxDecoration( color: Theme.of(context).colorScheme.navigation, borderRadius: BorderRadius.circular(24), @@ -75,7 +80,7 @@ class _FloatingNavigationBarState extends State { ), child: Row( children: [ - IconButton( + DidvanIconButton( onPressed: () { if (_isScrolled) { widget.scrollController.animateTo( @@ -87,63 +92,86 @@ class _FloatingNavigationBarState extends State { } Navigator.of(context).pop(); }, - icon: Icon( - _isScrolled ? Icons.arrow_upward : Icons.arrow_back, - ), + icon: _isScrolled + ? DidvanIcons.arrow_up_regular + : DidvanIcons.back_regular, ), const Spacer(), if (_isRadar) - DidvanIconButton( - onPressed: () { - setState(() { - _isMarked = !_isMarked; - }); - widget.bookmarkCallback(); - }, - icon: _isMarked - ? DidvanIcons.bookmark_solid - : DidvanIcons.bookmark_regular, - ), - if (_isRadar) - IconButton( - onPressed: () {}, - icon: const Icon( - DidvanIcons.evaluation_regular, - ), + BookmarkButton( + value: _item.marked, + onMark: widget.onMark, + onUnmark: widget.onUnmark, ), + // if (_isRadar) + // IconButton( + // onPressed: () {}, + // icon: const Icon( + // DidvanIcons.evaluation_regular, + // ), + // ), SizedBox( width: 48, child: Row( mainAxisAlignment: MainAxisAlignment.center, children: [ - DidvanText( - '2', - color: foregroundColor, - ), + if (_item.comments != 0) + DidvanText( + _item.comments.toString(), + color: foregroundColor, + ), const SizedBox(width: 4), - const Icon( - DidvanIcons.chats_regular, + DidvanIconButton( + gestureSize: 32, + onPressed: () => Navigator.of(context).pushNamed( + Routes.comments, + arguments: {'id': _item.id, 'isRadar': _isRadar}, + ), + icon: DidvanIcons.chats_regular, ), ], ), ), + if (!_isRadar) const SizedBox(width: 12), if (!_isRadar) - IconButton( - onPressed: () {}, - icon: const Icon( - DidvanIcons.bookmark_regular, - ), + BookmarkButton( + value: _item.marked, + onMark: widget.onMark, + onUnmark: widget.onUnmark, ), if (_isRadar) - IconButton( - onPressed: () {}, - icon: const Icon( - Icons.more_horiz, - ), + DidvanIconButton( + gestureSize: 32, + onPressed: _showMoreOptions, + icon: DidvanIcons.menu_regular, ), ], ), ), ); } + + void _showMoreOptions() { + ActionSheetUtils.showBottomSheet( + data: ActionSheetData( + content: Column( + children: [ + MenuItem( + title: 'ارتباط با سردبیر', + onTap: () {}, + icon: DidvanIcons.profile_regular, + ), + const DidvanDivider(), + MenuItem( + title: 'گزارش اشکال', + onTap: () {}, + icon: DidvanIcons.description_regular, + ), + ], + ), + title: 'موارد بیشتر', + withoutButtonMode: true, + ), + ); + } } diff --git a/lib/widgets/search_field.dart b/lib/widgets/search_field.dart index 20c0436..9c8fd38 100644 --- a/lib/widgets/search_field.dart +++ b/lib/widgets/search_field.dart @@ -43,7 +43,7 @@ class _SearchFieldState extends State { decoration: BoxDecoration( color: _fillColor(), ), - child: TextField( + child: TextFormField( focusNode: _focusNode, style: Theme.of(context).textTheme.bodyText1, textAlignVertical: TextAlignVertical.center, @@ -122,4 +122,10 @@ class _SearchFieldState extends State { } return Theme.of(context).colorScheme.surface; } + + @override + void dispose() { + _focusNode.dispose(); + super.dispose(); + } } diff --git a/lib/widgets/skeleton_image.dart b/lib/widgets/skeleton_image.dart new file mode 100644 index 0000000..eda8f80 --- /dev/null +++ b/lib/widgets/skeleton_image.dart @@ -0,0 +1,135 @@ +import 'dart:convert'; +import 'dart:typed_data'; + +import 'package:didvan/services/storage/storage.dart'; +import 'package:didvan/widgets/shimmer_placeholder.dart'; +import 'package:http/http.dart' as http; +import 'package:cached_network_image/cached_network_image.dart'; +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/services/network/request.dart'; +import 'package:didvan/services/network/request_helper.dart'; +import 'package:flutter/foundation.dart'; +import 'package:flutter/material.dart'; +import 'package:skeleton_text/skeleton_text.dart'; + +class SkeletonImage extends StatefulWidget { + final String imageUrl; + final double width; + final double height; + final BorderRadius? borderRadius; + final double? aspectRatio; + const SkeletonImage({ + Key? key, + required this.imageUrl, + this.width = 300, + this.height = 140, + this.borderRadius = DesignConfig.lowBorderRadius, + this.aspectRatio, + }) : super(key: key); + + @override + State createState() => _SkeletonImageState(); +} + +class _SkeletonImageState extends State { + Uint8List? _bytes; + + @override + void initState() { + if (kIsWeb) _getImage(); + super.initState(); + } + + Future _getImage() async { + final url = RequestHelper.baseUrl + widget.imageUrl; + final storage = StorageService.webStorage; + String? imageCache = storage['image-cache']; + final Map data = imageCache == null ? {} : jsonDecode(imageCache); + if (data.containsKey(url)) { + _bytes = Uint8List.fromList( + List.from(data[url]), + ); + } else { + _bytes = (await http.get( + Uri.parse(url), + headers: {'Authorization': 'Bearer ${RequestService.token}'}, + )) + .bodyBytes; + addImageToStorage(); + } + if (mounted) { + setState(() {}); + } + } + + void addImageToStorage() { + final storage = StorageService.webStorage; + String? imageCache = storage['image-cache']; + final Map data = imageCache == null ? {} : Map.from(jsonDecode(imageCache)); + data.addAll({RequestHelper.baseUrl + widget.imageUrl: _bytes}); + StorageService.webStorage.addAll({'image-cache': jsonEncode(data)}); + } + + @override + Widget build(BuildContext context) { + return _aspectRatioGenerator( + child: Builder(builder: (context) { + if (kIsWeb) { + return Builder( + builder: (context) { + if (_bytes == null || _bytes!.isEmpty) { + return ShimmerPlaceholder( + borderRadius: widget.borderRadius, + ); + } + return ClipRRect( + borderRadius: widget.borderRadius, + child: Image.memory( + _bytes!, + width: widget.width, + height: widget.height, + fit: BoxFit.cover, + ), + ); + }, + ); + } + return CachedNetworkImage( + httpHeaders: {'Authorization': 'Bearer ${RequestService.token}'}, + width: widget.width, + height: widget.height, + imageUrl: RequestHelper.baseUrl + widget.imageUrl, + imageBuilder: (context, imageProvider) => Container( + decoration: BoxDecoration( + borderRadius: widget.borderRadius ?? DesignConfig.lowBorderRadius, + image: DecorationImage( + image: imageProvider, + fit: BoxFit.cover, + ), + ), + ), + progressIndicatorBuilder: (context, url, progress) => + SkeletonAnimation( + shimmerColor: Theme.of(context).colorScheme.border, + borderRadius: widget.borderRadius ?? DesignConfig.lowBorderRadius, + child: Container( + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.disabledBackground, + borderRadius: widget.borderRadius, + ), + ), + ), + ); + }), + ); + } + + Widget _aspectRatioGenerator({required Widget child}) => + widget.aspectRatio == null + ? SizedBox(child: child) + : AspectRatio( + aspectRatio: widget.aspectRatio!, + child: child, + ); +} diff --git a/lib/widgets/skeletun_image.dart b/lib/widgets/skeletun_image.dart deleted file mode 100644 index c1fe353..0000000 --- a/lib/widgets/skeletun_image.dart +++ /dev/null @@ -1,99 +0,0 @@ -import 'dart:typed_data'; - -import 'package:didvan/widgets/shimmer_placeholder.dart'; -import 'package:http/http.dart' as http; -import 'package:cached_network_image/cached_network_image.dart'; -import 'package:didvan/config/design_config.dart'; -import 'package:didvan/config/theme_data.dart'; -import 'package:didvan/services/network/request.dart'; -import 'package:didvan/services/network/request_helper.dart'; -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:skeleton_text/skeleton_text.dart'; - -class SkeletonImage extends StatefulWidget { - final String imageUrl; - final double width; - final double height; - final BorderRadius? borderRadius; - const SkeletonImage({ - Key? key, - required this.imageUrl, - required this.width, - required this.height, - this.borderRadius = DesignConfig.lowBorderRadius, - }) : super(key: key); - - @override - State createState() => _SkeletonImageState(); -} - -class _SkeletonImageState extends State { - Uint8List? _bytes; - - @override - void initState() { - if (kIsWeb) _getImage(); - super.initState(); - } - - Future _getImage() async { - _bytes = (await http.get( - Uri.parse(RequestHelper.baseUrl + widget.imageUrl), - headers: {'Authorization': 'Bearer ${RequestService.token}'}, - )) - .bodyBytes; - if (mounted) { - setState(() {}); - } - } - - @override - Widget build(BuildContext context) { - if (kIsWeb) { - if (_bytes == null || _bytes!.isEmpty) { - return ShimmerPlaceholder( - width: widget.width, - height: widget.height, - borderRadius: widget.borderRadius, - ); - } - return ClipRRect( - borderRadius: widget.borderRadius, - child: Image.memory( - _bytes!, - width: widget.width, - height: widget.height, - fit: BoxFit.cover, - ), - ); - } - return CachedNetworkImage( - httpHeaders: {'Authorization': 'Bearer ${RequestService.token}'}, - width: widget.width, - height: widget.height, - imageUrl: RequestHelper.baseUrl + widget.imageUrl, - imageBuilder: (context, imageProvider) => Container( - decoration: BoxDecoration( - borderRadius: widget.borderRadius ?? DesignConfig.lowBorderRadius, - image: DecorationImage( - image: imageProvider, - fit: BoxFit.cover, - ), - ), - ), - progressIndicatorBuilder: (context, url, progress) => SkeletonAnimation( - shimmerColor: Theme.of(context).colorScheme.border, - borderRadius: widget.borderRadius ?? DesignConfig.lowBorderRadius, - child: Container( - decoration: BoxDecoration( - color: Theme.of(context).colorScheme.disabledBackground, - borderRadius: widget.borderRadius, - ), - height: widget.height, - width: widget.width, - ), - ), - ); - } -} From b044c342315488a0f938872e4c7a305413548131 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 18 Jan 2022 18:17:23 +0330 Subject: [PATCH 137/273] D1APP-22 service updates --- lib/services/network/request.dart | 11 +++++++---- lib/services/network/request_helper.dart | 4 ++-- lib/services/storage/storage.dart | 3 +++ 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/lib/services/network/request.dart b/lib/services/network/request.dart index 63d5035..13dd08c 100644 --- a/lib/services/network/request.dart +++ b/lib/services/network/request.dart @@ -35,6 +35,9 @@ class RequestService { if (body != null) _requestBody = body; } + String? get _generateBody => + _requestBody == null ? null : jsonEncode(_requestBody); + Future httpGet() async { try { final response = await http @@ -59,7 +62,7 @@ class RequestService { final response = await http .post( Uri.parse(url), - body: json.encode(_requestBody), + body: _generateBody, headers: _headers, ) .timeout( @@ -81,7 +84,7 @@ class RequestService { final response = await http .delete( Uri.parse(url), - body: json.encode(_requestBody), + body: _generateBody, headers: _headers, ) .timeout( @@ -130,7 +133,7 @@ class RequestService { final response = await http .put( Uri.parse(url), - body: json.encode(_requestBody), + body: _generateBody, headers: _headers, ) .timeout( @@ -151,7 +154,7 @@ class RequestService { _body = json.decode(response.body); } } - errorMessage = _errorMessageGenerator(response); + if (!isSuccess) errorMessage = _errorMessageGenerator(response); } bool _handleError(http.Response? response) { diff --git a/lib/services/network/request_helper.dart b/lib/services/network/request_helper.dart index fe10939..1764ee7 100644 --- a/lib/services/network/request_helper.dart +++ b/lib/services/network/request_helper.dart @@ -18,10 +18,10 @@ class RequestHelper { static String direct(int id) => _baseUserUrl + '/direct/$id'; - static String markRadar(int id) => _baseRadarUrl + '$id/mark'; + static String markRadar(int id) => _baseRadarUrl + '/$id/mark'; static String radarDetails(int id) => _baseRadarUrl + '/$id'; static String radarComments(int id) => _baseRadarUrl + '/$id/comments'; - static String markNews(int id) => _baseNewsUrl + '$id/mark'; + static String markNews(int id) => _baseNewsUrl + '/$id/mark'; static String newsDetails(int id) => _baseNewsUrl + '/$id'; static String newsComments(int id) => _baseNewsUrl + '/$id/comments'; static String radarOverviews({ diff --git a/lib/services/storage/storage.dart b/lib/services/storage/storage.dart index 7c398e6..a7d7684 100644 --- a/lib/services/storage/storage.dart +++ b/lib/services/storage/storage.dart @@ -1,4 +1,5 @@ import 'package:flutter_secure_storage/flutter_secure_storage.dart'; +import 'package:universal_html/html.dart'; class StorageService { static late String appDocsDir; @@ -20,4 +21,6 @@ class StorageService { static Future delete({required String key}) async { _storage.delete(key: key); } + + static Storage get webStorage => window.localStorage; } From dee143973a4e1c05f115d7d104ff51a9b01fe9cb Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Thu, 20 Jan 2022 18:08:05 +0330 Subject: [PATCH 138/273] home page initial index changed --- lib/pages/home/home_state.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/pages/home/home_state.dart b/lib/pages/home/home_state.dart index 4d20216..ed4ea99 100644 --- a/lib/pages/home/home_state.dart +++ b/lib/pages/home/home_state.dart @@ -1,7 +1,7 @@ import 'package:didvan/providers/core_provider.dart'; class HomeState extends CoreProvier { - int _currentPageIndex = 0; + int _currentPageIndex = 2; set currentPageIndex(int value) { _currentPageIndex = value; From 006c7982ddd57df00d1d8995f3fc18c8dc01039e Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Thu, 20 Jan 2022 18:09:15 +0330 Subject: [PATCH 139/273] component updates --- lib/widgets/bookmark_button.dart | 6 ++ lib/widgets/didvan/app_bar.dart | 1 + lib/widgets/didvan/page_view.dart | 110 +++++++++++++++++------ lib/widgets/didvan/switch.dart | 2 +- lib/widgets/floating_navigation_bar.dart | 69 ++++++++------ 5 files changed, 129 insertions(+), 59 deletions(-) diff --git a/lib/widgets/bookmark_button.dart b/lib/widgets/bookmark_button.dart index 6fae1b9..6ef9ca0 100644 --- a/lib/widgets/bookmark_button.dart +++ b/lib/widgets/bookmark_button.dart @@ -20,6 +20,12 @@ class BookmarkButton extends StatefulWidget { class _BookmarkButtonState extends State { bool _value = false; + @override + void didUpdateWidget(covariant BookmarkButton oldWidget) { + _value = widget.value; + super.didUpdateWidget(oldWidget); + } + @override void initState() { _value = widget.value; diff --git a/lib/widgets/didvan/app_bar.dart b/lib/widgets/didvan/app_bar.dart index be5fc38..569668e 100644 --- a/lib/widgets/didvan/app_bar.dart +++ b/lib/widgets/didvan/app_bar.dart @@ -24,6 +24,7 @@ class DidvanAppBar extends StatelessWidget { child: Align( alignment: Alignment.centerRight, child: Column( + crossAxisAlignment: CrossAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.center, children: [ if (appBarData.title != null) diff --git a/lib/widgets/didvan/page_view.dart b/lib/widgets/didvan/page_view.dart index c455540..f16d70b 100644 --- a/lib/widgets/didvan/page_view.dart +++ b/lib/widgets/didvan/page_view.dart @@ -1,47 +1,99 @@ import 'package:carousel_slider/carousel_slider.dart'; import 'package:didvan/widgets/didvan/card.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/skeleton_image.dart'; import 'package:flutter/material.dart'; -class DidvanPageView extends StatelessWidget { - final List pages; +class DidvanPageView extends StatefulWidget { + final List items; + final int initialIndex; final ScrollController? scrollController; - final int initialPage; final void Function(int index) onPageChanged; const DidvanPageView({ Key? key, - required this.pages, + required this.initialIndex, + required this.items, this.scrollController, required this.onPageChanged, - this.initialPage = 2, }) : super(key: key); + @override + State createState() => _DidvanPageViewState(); +} + +class _DidvanPageViewState extends State { @override Widget build(BuildContext context) { final double deviceTopPadding = MediaQuery.of(context).padding.top; - return CarouselSlider.builder( - itemCount: pages.length, - options: CarouselOptions( - onPageChanged: (index, reason) => onPageChanged(index), - height: double.infinity, - initialPage: 2, - viewportFraction: 0.94, - enableInfiniteScroll: false, - ), - itemBuilder: (context, index, realIndex) => SizedBox( - height: MediaQuery.of(context).size.height, - child: SingleChildScrollView( - controller: index == 2 ? scrollController : null, - physics: const BouncingScrollPhysics(), - padding: EdgeInsets.only( - left: 4, - right: 4, - top: 16 + deviceTopPadding, - bottom: 92, - ), - child: DidvanCard( - padding: EdgeInsets.zero, - enableBorder: false, - child: pages[index], + return Directionality( + textDirection: TextDirection.ltr, + child: CarouselSlider.builder( + itemCount: widget.items.length, + options: CarouselOptions( + onPageChanged: (index, reason) => widget.onPageChanged(index), + height: double.infinity, + initialPage: widget.initialIndex, + viewportFraction: 0.94, + enableInfiniteScroll: false, + ), + itemBuilder: (context, index, realIndex) => SizedBox( + height: MediaQuery.of(context).size.height, + child: SingleChildScrollView( + controller: index == 1 ? widget.scrollController : null, + physics: const BouncingScrollPhysics(), + padding: EdgeInsets.only( + left: 4, + right: 4, + top: 16 + deviceTopPadding, + bottom: 92, + ), + child: DidvanCard( + padding: EdgeInsets.zero, + enableBorder: false, + child: Builder( + builder: (context) { + final item = widget.items[index]; + if (item == null) { + return const SizedBox(); + } + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + SkeletonImage( + imageUrl: item.image, + aspectRatio: 16 / 9, + ), + const SizedBox(height: 20), + for (var i = 0; i < item.contents.length; i++) + Padding( + padding: const EdgeInsets.symmetric( + horizontal: 16, + vertical: 4, + ), + child: Builder( + builder: (context) { + final content = item.contents[i]; + if (content.text != null) { + return DidvanText( + item.contents[i].text!, + ); + } + if (content.image != null) { + return SkeletonImage( + imageUrl: content.image!, + aspectRatio: 16 / 9, + ); + } + return const SizedBox(); + }, + ), + ), + const SizedBox(height: 20), + ], + ); + }, + ), + ), ), ), ), diff --git a/lib/widgets/didvan/switch.dart b/lib/widgets/didvan/switch.dart index d122ef4..ac353ed 100644 --- a/lib/widgets/didvan/switch.dart +++ b/lib/widgets/didvan/switch.dart @@ -1,4 +1,4 @@ -import 'package:didvan/pages/home/profile/widgets/menu_item.dart'; +import 'package:didvan/pages/home/settings/widgets/menu_item.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; diff --git a/lib/widgets/floating_navigation_bar.dart b/lib/widgets/floating_navigation_bar.dart index 4d8e7d4..9325abb 100644 --- a/lib/widgets/floating_navigation_bar.dart +++ b/lib/widgets/floating_navigation_bar.dart @@ -4,7 +4,7 @@ import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/news_details_data.dart'; import 'package:didvan/models/radar_details_data.dart'; import 'package:didvan/models/view/action_sheet_data.dart'; -import 'package:didvan/pages/home/profile/widgets/menu_item.dart'; +import 'package:didvan/pages/home/settings/widgets/menu_item.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/utils/action_sheet.dart'; import 'package:didvan/widgets/bookmark_button.dart'; @@ -38,15 +38,25 @@ class _FloatingNavigationBarState extends State { get _item => widget.radar ?? widget.news; + @override + void didUpdateWidget(covariant FloatingNavigationBar oldWidget) { + if (widget.radar != null && oldWidget.radar!.id != widget.radar!.id || + widget.news != null && oldWidget.news!.id != widget.news!.id) { + _isScrolled = false; + } + super.didUpdateWidget(oldWidget); + } + @override void initState() { widget.scrollController.addListener(() { final position = widget.scrollController.position.pixels; - if (position > 300 && !_isScrolled) { + final offset = MediaQuery.of(context).size.width / 16 * 9 + 40; + if (position > offset && !_isScrolled) { setState(() { _isScrolled = true; }); - } else if (position < 300 && _isScrolled) { + } else if (position < offset && _isScrolled) { setState(() { _isScrolled = false; }); @@ -68,9 +78,11 @@ class _FloatingNavigationBarState extends State { decoration: BoxDecoration( color: Theme.of(context).colorScheme.navigation, borderRadius: BorderRadius.circular(24), - border: Border.all( - color: Theme.of(context).colorScheme.cardBorder, - ), + border: DesignConfig.isDark + ? Border.all( + color: Theme.of(context).colorScheme.cardBorder, + ) + : null, ), child: Theme( data: Theme.of(context).copyWith( @@ -80,21 +92,23 @@ class _FloatingNavigationBarState extends State { ), child: Row( children: [ - DidvanIconButton( - onPressed: () { - if (_isScrolled) { - widget.scrollController.animateTo( - 0, - duration: DesignConfig.lowAnimationDuration, - curve: Curves.easeIn, - ); - return; - } - Navigator.of(context).pop(); - }, - icon: _isScrolled - ? DidvanIcons.arrow_up_regular - : DidvanIcons.back_regular, + AnimatedRotation( + duration: DesignConfig.lowAnimationDuration, + turns: _isScrolled ? -0.25 : 0, + child: DidvanIconButton( + onPressed: () { + if (_isScrolled) { + widget.scrollController.animateTo( + 0, + duration: DesignConfig.lowAnimationDuration, + curve: Curves.easeIn, + ); + return; + } + Navigator.of(context).pop(); + }, + icon: DidvanIcons.back_regular, + ), ), const Spacer(), if (_isRadar) @@ -103,13 +117,6 @@ class _FloatingNavigationBarState extends State { onMark: widget.onMark, onUnmark: widget.onUnmark, ), - // if (_isRadar) - // IconButton( - // onPressed: () {}, - // icon: const Icon( - // DidvanIcons.evaluation_regular, - // ), - // ), SizedBox( width: 48, child: Row( @@ -125,7 +132,11 @@ class _FloatingNavigationBarState extends State { gestureSize: 32, onPressed: () => Navigator.of(context).pushNamed( Routes.comments, - arguments: {'id': _item.id, 'isRadar': _isRadar}, + arguments: { + 'id': _item.id, + 'isRadar': _isRadar, + 'title': _item.title + }, ), icon: DidvanIcons.chats_regular, ), From 0df576e61726c111f9f6fd1a2e88adb17926637f Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Thu, 20 Jan 2022 18:12:52 +0330 Subject: [PATCH 140/273] bnb last item changed --- .../edit_profile/widgets/profile_photo.dart | 40 ---- .../direct_list/direct_list.dart | 4 +- .../direct_list/direct_list_state.dart | 0 .../direct_list/widgets/chat_room_item.dart | 74 +++++++ .../general_settings}/settings.dart | 20 +- .../general_settings}/settings_state.dart | 33 +-- .../profile}/edit_profile.dart | 12 +- .../profile/widgets/profile_photo.dart | 128 ++++++++++++ .../profile.dart => settings/settings.dart} | 23 ++- .../home/settings/settings/settings.dart | 190 ++++++++++++++++++ .../widgets/menu_item.dart | 0 lib/pages/home/widgets/bnb.dart | 6 +- lib/routes/route_generator.dart | 26 +-- lib/routes/routes.dart | 2 +- 14 files changed, 459 insertions(+), 99 deletions(-) delete mode 100644 lib/pages/home/profile/edit_profile/widgets/profile_photo.dart rename lib/pages/home/{profile => settings}/direct_list/direct_list.dart (94%) rename lib/pages/home/{profile => settings}/direct_list/direct_list_state.dart (100%) create mode 100644 lib/pages/home/settings/direct_list/widgets/chat_room_item.dart rename lib/pages/home/{profile/settings => settings/general_settings}/settings.dart (90%) rename lib/pages/home/{profile/settings => settings/general_settings}/settings_state.dart (62%) rename lib/pages/home/{profile/edit_profile => settings/profile}/edit_profile.dart (94%) create mode 100644 lib/pages/home/settings/profile/widgets/profile_photo.dart rename lib/pages/home/{profile/profile.dart => settings/settings.dart} (84%) create mode 100644 lib/pages/home/settings/settings/settings.dart rename lib/pages/home/{profile => settings}/widgets/menu_item.dart (100%) diff --git a/lib/pages/home/profile/edit_profile/widgets/profile_photo.dart b/lib/pages/home/profile/edit_profile/widgets/profile_photo.dart deleted file mode 100644 index 5ef63a5..0000000 --- a/lib/pages/home/profile/edit_profile/widgets/profile_photo.dart +++ /dev/null @@ -1,40 +0,0 @@ -import 'package:didvan/config/theme_data.dart'; -import 'package:didvan/constants/app_icons.dart'; -import 'package:flutter/material.dart'; - -class ProfilePhoto extends StatelessWidget { - const ProfilePhoto({Key? key}) : super(key: key); - - @override - Widget build(BuildContext context) { - return GestureDetector( - onTap: () {}, - child: Center( - child: Stack( - children: [ - Container( - height: 96, - width: 96, - decoration: BoxDecoration( - shape: BoxShape.circle, - color: Theme.of(context).colorScheme.focused, - ), - child: Icon( - DidvanIcons.profile_solid, - size: 60, - color: Theme.of(context).colorScheme.title, - ), - ), - const Positioned( - bottom: 4, - right: 4, - child: Icon( - DidvanIcons.camera_regular, - ), - ), - ], - ), - ), - ); - } -} diff --git a/lib/pages/home/profile/direct_list/direct_list.dart b/lib/pages/home/settings/direct_list/direct_list.dart similarity index 94% rename from lib/pages/home/profile/direct_list/direct_list.dart rename to lib/pages/home/settings/direct_list/direct_list.dart index 68ef93c..e1d1bc7 100644 --- a/lib/pages/home/profile/direct_list/direct_list.dart +++ b/lib/pages/home/settings/direct_list/direct_list.dart @@ -1,6 +1,6 @@ import 'package:didvan/models/view/app_bar_data.dart'; -import 'package:didvan/pages/home/profile/direct_list/direct_list_state.dart'; -import 'package:didvan/pages/home/profile/direct_list/widgets/chat_room_item.dart'; +import 'package:didvan/pages/home/settings/direct_list/direct_list_state.dart'; +import 'package:didvan/pages/home/settings/direct_list/widgets/chat_room_item.dart'; import 'package:didvan/widgets/didvan/badge.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/scaffold.dart'; diff --git a/lib/pages/home/profile/direct_list/direct_list_state.dart b/lib/pages/home/settings/direct_list/direct_list_state.dart similarity index 100% rename from lib/pages/home/profile/direct_list/direct_list_state.dart rename to lib/pages/home/settings/direct_list/direct_list_state.dart diff --git a/lib/pages/home/settings/direct_list/widgets/chat_room_item.dart b/lib/pages/home/settings/direct_list/widgets/chat_room_item.dart new file mode 100644 index 0000000..16f3215 --- /dev/null +++ b/lib/pages/home/settings/direct_list/widgets/chat_room_item.dart @@ -0,0 +1,74 @@ +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/models/chat_room/chat_room.dart'; +import 'package:didvan/routes/routes.dart'; +import 'package:didvan/widgets/didvan/badge.dart'; +import 'package:didvan/widgets/didvan/divider.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; + +class ChatRoomItem extends StatelessWidget { + final ChatRoom chatRoom; + const ChatRoomItem({Key? key, required this.chatRoom}) : super(key: key); + + @override + Widget build(BuildContext context) { + return GestureDetector( + onTap: () => Navigator.of(context).pushNamed( + Routes.direct, + arguments: chatRoom.id, + ), + child: Container( + color: Colors.transparent, + child: Column( + children: [ + Row( + children: [ + const Icon( + DidvanIcons.avatar_light, + size: 32, + ), + const SizedBox(width: 12), + Expanded( + child: DidvanText( + chatRoom.type, + style: Theme.of(context).textTheme.bodyText1, + ), + ), + DidvanBadge(text: chatRoom.unread.toString()), + ], + ), + Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const SizedBox(width: 40), + const Icon( + DidvanIcons.check_double_light, + size: 16, + ), + const SizedBox(width: 4), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + DidvanText( + chatRoom.lastMessage.text ?? '', + maxLines: 1, + ), + DidvanText( + chatRoom.updatedAt, + style: Theme.of(context).textTheme.caption, + color: Theme.of(context).colorScheme.caption, + ) + ], + ), + ), + ], + ), + const DidvanDivider(), + ], + ), + ), + ); + } +} diff --git a/lib/pages/home/profile/settings/settings.dart b/lib/pages/home/settings/general_settings/settings.dart similarity index 90% rename from lib/pages/home/profile/settings/settings.dart rename to lib/pages/home/settings/general_settings/settings.dart index 3d14012..915241d 100644 --- a/lib/pages/home/profile/settings/settings.dart +++ b/lib/pages/home/settings/general_settings/settings.dart @@ -6,8 +6,8 @@ import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/constants/assets.dart'; import 'package:didvan/models/view/action_sheet_data.dart'; import 'package:didvan/models/view/app_bar_data.dart'; -import 'package:didvan/pages/home/profile/settings/settings_state.dart'; -import 'package:didvan/pages/home/profile/widgets/menu_item.dart'; +import 'package:didvan/pages/home/settings/general_settings/settings_state.dart'; +import 'package:didvan/pages/home/settings/widgets/menu_item.dart'; import 'package:didvan/providers/theme_provider.dart'; import 'package:didvan/utils/action_sheet.dart'; import 'package:didvan/widgets/didvan/card.dart'; @@ -20,14 +20,14 @@ import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; import 'package:provider/provider.dart'; -class Settings extends StatelessWidget { - const Settings({Key? key}) : super(key: key); +class GeneralSettings extends StatelessWidget { + const GeneralSettings({Key? key}) : super(key: key); @override Widget build(BuildContext context) { - return Consumer( - builder: (context, state, child) => StateHandler( - state: context.read(), + return Consumer( + builder: (context, state, child) => StateHandler( + state: context.read(), builder: (context, state) => DidvanScaffold( appBarData: AppBarData(hasBack: true, title: 'تنظیمات'), children: [ @@ -100,7 +100,7 @@ class Settings extends StatelessWidget { } Widget _timeFieldBuilder(BuildContext context, int index) { - final SettingsState state = context.read(); + final GeneralSettingsState state = context.read(); return ChangeNotifierProvider.value( value: state, child: StatefulBuilder( @@ -127,7 +127,7 @@ class Settings extends StatelessWidget { } Future _openTimePicker(BuildContext context, int index) async { - final SettingsState state = context.read(); + final GeneralSettingsState state = context.read(); await Navigator.of(context).push( showPicker( okText: 'تایید', @@ -158,7 +158,7 @@ class Settings extends StatelessWidget { } Widget _themeItem( - BuildContext context, SettingsState state, String brightness) { + BuildContext context, GeneralSettingsState state, String brightness) { final bool isDarkTheme = brightness == 'dark'; return GestureDetector( onTap: () { diff --git a/lib/pages/home/profile/settings/settings_state.dart b/lib/pages/home/settings/general_settings/settings_state.dart similarity index 62% rename from lib/pages/home/profile/settings/settings_state.dart rename to lib/pages/home/settings/general_settings/settings_state.dart index 617c835..19d5d5b 100644 --- a/lib/pages/home/profile/settings/settings_state.dart +++ b/lib/pages/home/settings/general_settings/settings_state.dart @@ -2,12 +2,12 @@ import 'package:didvan/models/enums.dart'; import 'package:didvan/providers/core_provider.dart'; import 'package:didvan/services/storage/storage.dart'; -class SettingsState extends CoreProvier { - SettingsState() { +class GeneralSettingsState extends CoreProvier { + GeneralSettingsState() { getSettingsFromStorage(); } - List _notificationTimeRange = []; + List _notificationTimeRange = ['00:00', '23:59']; String _fontFamily = 'Dana-FA'; double _fontSizeScale = 1; String _brightness = 'light'; @@ -15,9 +15,12 @@ class SettingsState extends CoreProvier { set notificationTimeRange(List value) { _notificationTimeRange = value; StorageService.setValue( - key: 'notificationTimeRange', - value: value, - boxName: 'settings', + key: 'notificationTimeRangeStart', + value: value[0], + ); + StorageService.setValue( + key: 'notificationTimeRangeStart', + value: value[1], ); } @@ -28,7 +31,6 @@ class SettingsState extends CoreProvier { StorageService.setValue( key: 'fontFamily', value: value, - boxName: 'settings', ); notifyListeners(); } @@ -40,7 +42,6 @@ class SettingsState extends CoreProvier { StorageService.setValue( key: 'fontSizeScale', value: value, - boxName: 'settings', ); notifyListeners(); } @@ -52,7 +53,6 @@ class SettingsState extends CoreProvier { StorageService.setValue( key: 'brightness', value: value, - boxName: 'settings', ); notifyListeners(); } @@ -61,13 +61,14 @@ class SettingsState extends CoreProvier { Future getSettingsFromStorage() async { appState = AppState.busy; - final Map settingsData = await StorageService.getBoxData( - boxName: 'settings', - ); - _notificationTimeRange = settingsData['notificationTimeRange']; - _fontFamily = settingsData['fontFamily']; - _fontSizeScale = settingsData['fontSizeScale']; - _brightness = settingsData['brightness']; + _notificationTimeRange[0] = + await StorageService.getValue(key: 'notificationTimeRangeStart'); + _notificationTimeRange[1] = + await StorageService.getValue(key: 'notificationTimeRangeEnd'); + _fontFamily = await StorageService.getValue(key: 'fontFamily'); + _brightness = await StorageService.getValue(key: 'brightness'); + final scale = await StorageService.getValue(key: 'fontSizeScale'); + _fontSizeScale = double.parse(scale); appState = AppState.idle; } } diff --git a/lib/pages/home/profile/edit_profile/edit_profile.dart b/lib/pages/home/settings/profile/edit_profile.dart similarity index 94% rename from lib/pages/home/profile/edit_profile/edit_profile.dart rename to lib/pages/home/settings/profile/edit_profile.dart index d6ad9ee..fe7ec8f 100644 --- a/lib/pages/home/profile/edit_profile/edit_profile.dart +++ b/lib/pages/home/settings/profile/edit_profile.dart @@ -1,8 +1,8 @@ import 'dart:async'; import 'package:didvan/models/view/app_bar_data.dart'; -import 'package:didvan/pages/home/profile/edit_profile/widgets/profile_photo.dart'; -import 'package:didvan/pages/home/profile/widgets/menu_item.dart'; +import 'package:didvan/pages/home/settings/profile/widgets/profile_photo.dart'; +import 'package:didvan/pages/home/settings/widgets/menu_item.dart'; import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/widgets/didvan/button.dart'; @@ -13,14 +13,14 @@ import 'package:didvan/widgets/didvan/text_field.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; -class EditProfile extends StatefulWidget { - const EditProfile({Key? key}) : super(key: key); +class Profile extends StatefulWidget { + const Profile({Key? key}) : super(key: key); @override - State createState() => _EditProfileState(); + State createState() => _ProfileState(); } -class _EditProfileState extends State { +class _ProfileState extends State { Timer? _timer; late String fullName; diff --git a/lib/pages/home/settings/profile/widgets/profile_photo.dart b/lib/pages/home/settings/profile/widgets/profile_photo.dart new file mode 100644 index 0000000..87940d9 --- /dev/null +++ b/lib/pages/home/settings/profile/widgets/profile_photo.dart @@ -0,0 +1,128 @@ +import 'dart:io'; + +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/models/enums.dart'; +import 'package:didvan/models/view/alert_data.dart'; +import 'package:didvan/pages/home/settings/widgets/menu_item.dart'; +import 'package:didvan/providers/user_provider.dart'; +import 'package:didvan/services/media/media.dart'; +import 'package:didvan/utils/action_sheet.dart'; +import 'package:didvan/widgets/didvan/card.dart'; +import 'package:didvan/widgets/didvan/divider.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/skeleton_image.dart'; +import 'package:flutter/material.dart'; +import 'package:image_picker/image_picker.dart'; +import 'package:provider/provider.dart'; + +class ProfilePhoto extends StatefulWidget { + const ProfilePhoto({Key? key}) : super(key: key); + + @override + State createState() => _ProfilePhotoState(); +} + +class _ProfilePhotoState extends State { + File? profileImage; + + @override + Widget build(BuildContext context) { + final userProvider = context.watch(); + return GestureDetector( + onTap: () => _openImagePickerSheet(), + child: Center( + child: Stack( + children: [ + if (userProvider.user.photo == null) + Container( + height: 96, + width: 96, + decoration: BoxDecoration( + shape: BoxShape.circle, + color: Theme.of(context).colorScheme.focused, + ), + child: Icon( + DidvanIcons.profile_solid, + size: 60, + color: Theme.of(context).colorScheme.title, + ), + ), + if (userProvider.user.photo != null) + SkeletonImage( + imageUrl: userProvider.user.photo!, + width: 96, + height: 96, + borderRadius: BorderRadius.circular(200), + ), + Positioned( + bottom: 0, + right: 0, + child: Container( + padding: const EdgeInsets.all(4), + decoration: BoxDecoration( + border: Border.all( + color: Theme.of(context).colorScheme.cardBorder, + ), + color: Theme.of(context).colorScheme.surface, + borderRadius: BorderRadius.circular(100), + ), + child: const Icon( + DidvanIcons.camera_regular, + ), + ), + ), + ], + ), + ), + ); + } + + Future _openImagePickerSheet() async { + FocusScope.of(context).unfocus(); + await showModalBottomSheet( + context: context, + isScrollControlled: true, + backgroundColor: Colors.transparent, + builder: (context) => DidvanCard( + enableBorder: false, + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const DidvanText('بارگذاری تصویر از:'), + const SizedBox(height: 16), + MenuItem( + title: 'دوربین', + onTap: () => _setProfilePhoto(ImageSource.camera), + icon: DidvanIcons.camera_regular, + ), + const DidvanDivider(), + MenuItem( + title: 'گالری', + onTap: () => _setProfilePhoto(ImageSource.gallery), + icon: DidvanIcons.gallery_file_regular, + ), + ], + ), + ), + ); + } + + Future _setProfilePhoto(ImageSource source) async { + ActionSheetUtils.pop(); + final pickedFile = await MediaService.pickImage(source: source); + if (pickedFile != null) { + final state = context.read(); + final result = await state.setProfilePhoto(pickedFile); + ActionSheetUtils.showAlert( + AlertData( + message: result + ? 'تصویر پروفایل بارگذاری شد.' + : 'بارگذاری تصویر موفقیت آمیز نبود.', + aLertType: result ? ALertType.success : ALertType.error, + ), + ); + } + } +} diff --git a/lib/pages/home/profile/profile.dart b/lib/pages/home/settings/settings.dart similarity index 84% rename from lib/pages/home/profile/profile.dart rename to lib/pages/home/settings/settings.dart index 54f16aa..f7de013 100644 --- a/lib/pages/home/profile/profile.dart +++ b/lib/pages/home/settings/settings.dart @@ -1,18 +1,19 @@ import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/pages/home/profile/widgets/menu_item.dart'; +import 'package:didvan/pages/home/settings/widgets/menu_item.dart'; import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; import 'package:didvan/providers/theme_provider.dart'; +import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/routes/routes.dart'; +import 'package:didvan/services/storage/storage.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/item_title.dart'; import 'package:flutter/material.dart'; -import 'package:hive/hive.dart'; import 'package:provider/provider.dart'; -class Profile extends StatelessWidget { - const Profile({Key? key}) : super(key: key); +class Settings extends StatelessWidget { + const Settings({Key? key}) : super(key: key); @override Widget build(BuildContext context) { @@ -41,14 +42,15 @@ class Profile extends StatelessWidget { MenuItem( title: 'ویرایش پروفایل', icon: DidvanIcons.user_edit_regular, - onTap: () => - Navigator.of(context).pushNamed(Routes.editProfile), + suffix: context.read().user.fullName, + onTap: () => Navigator.of(context).pushNamed(Routes.profile), ), const DidvanDivider(), MenuItem( title: 'تنظیمات', icon: DidvanIcons.setting_regular, - onTap: () => Navigator.of(context).pushNamed(Routes.settings), + onTap: () => + Navigator.of(context).pushNamed(Routes.generalSettings), ), const DidvanDivider(), MenuItem( @@ -62,8 +64,11 @@ class Profile extends StatelessWidget { icon: DidvanIcons.sign_out_regular, color: Theme.of(context).colorScheme.secondary, onTap: () async { - await Hive.deleteBoxFromDisk('autherization'); - Navigator.of(context).pushReplacementNamed(Routes.splash); + StorageService.delete(key: 'token'); + Navigator.of(context).pushNamedAndRemoveUntil( + Routes.splash, + (_) => false, + ); }, ), ], diff --git a/lib/pages/home/settings/settings/settings.dart b/lib/pages/home/settings/settings/settings.dart new file mode 100644 index 0000000..915241d --- /dev/null +++ b/lib/pages/home/settings/settings/settings.dart @@ -0,0 +1,190 @@ +import 'package:day_night_time_picker/lib/constants.dart'; +import 'package:day_night_time_picker/lib/daynight_timepicker.dart'; +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/constants/assets.dart'; +import 'package:didvan/models/view/action_sheet_data.dart'; +import 'package:didvan/models/view/app_bar_data.dart'; +import 'package:didvan/pages/home/settings/general_settings/settings_state.dart'; +import 'package:didvan/pages/home/settings/widgets/menu_item.dart'; +import 'package:didvan/providers/theme_provider.dart'; +import 'package:didvan/utils/action_sheet.dart'; +import 'package:didvan/widgets/didvan/card.dart'; +import 'package:didvan/widgets/didvan/divider.dart'; +import 'package:didvan/widgets/didvan/scaffold.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/item_title.dart'; +import 'package:didvan/widgets/state_handler.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_svg/flutter_svg.dart'; +import 'package:provider/provider.dart'; + +class GeneralSettings extends StatelessWidget { + const GeneralSettings({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Consumer( + builder: (context, state, child) => StateHandler( + state: context.read(), + builder: (context, state) => DidvanScaffold( + appBarData: AppBarData(hasBack: true, title: 'تنظیمات'), + children: [ + DidvanCard( + child: MenuItem( + title: 'زمان دریافت اعلان', + onTap: () => _pickTimeRange(context), + icon: DidvanIcons.notification_regular, + suffix: state.notificationTimeRange[0], + ), + ), + const ItemTitle( + title: 'انتخاب قلم', + icon: DidvanIcons.font_solid, + ), + DidvanCard( + child: Column( + children: [ + MenuItem( + suffix: 'نیاز به پیاده‌سازی', + title: 'فونت برنامه', + onTap: () {}, + ), + const DidvanDivider(), + MenuItem( + suffix: 'نیاز به پیاده‌سازی', + title: 'اندازه متن', + onTap: () {}, + ), + ], + ), + ), + const ItemTitle( + title: 'ظاهر برنامه', + icon: DidvanIcons.theme_solid, + ), + DidvanCard( + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceAround, + children: [ + _themeItem(context, state, 'light'), + _themeItem(context, state, 'dark'), + ], + ), + ), + ], + ), + ), + ); + } + + Future _pickTimeRange(BuildContext context) async { + ActionSheetUtils.showBottomSheet( + data: ActionSheetData( + content: Row( + children: [ + const SizedBox(width: 8), + Expanded(child: _timeFieldBuilder(context, 0)), + const SizedBox(width: 8), + const DidvanText('-'), + const SizedBox(width: 8), + Expanded(child: _timeFieldBuilder(context, 1)), + const SizedBox(width: 8), + ], + ), + title: 'زمان دریافت اعلان', + titleIcon: DidvanIcons.notification_regular, + ), + ); + } + + Widget _timeFieldBuilder(BuildContext context, int index) { + final GeneralSettingsState state = context.read(); + return ChangeNotifierProvider.value( + value: state, + child: StatefulBuilder( + builder: (context, setState) => GestureDetector( + onTap: () async { + await _openTimePicker(context, index); + setState(() {}); + }, + child: Container( + alignment: Alignment.center, + padding: const EdgeInsets.all(24), + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.splash, + borderRadius: DesignConfig.mediumBorderRadius, + border: Border.all( + color: Theme.of(context).colorScheme.border, + ), + ), + child: DidvanText(state.notificationTimeRange[index]), + ), + ), + ), + ); + } + + Future _openTimePicker(BuildContext context, int index) async { + final GeneralSettingsState state = context.read(); + await Navigator.of(context).push( + showPicker( + okText: 'تایید', + cancelText: 'بازگشت', + accentColor: Theme.of(context).colorScheme.primary, + okStyle: Theme.of(context).textTheme.bodyText2!, + cancelStyle: Theme.of(context).textTheme.bodyText2!, + unselectedColor: Theme.of(context).colorScheme.text, + blurredBackground: true, + hourLabel: 'ساعت', + minuteLabel: 'دقیقه', + is24HrFormat: true, + iosStylePicker: true, + minuteInterval: MinuteInterval.FIFTEEN, + context: context, + value: const TimeOfDay(hour: 0, minute: 0), + themeData: Theme.of(context), + onChange: (time) { + state.notificationTimeRange = state.notificationTimeRange + ..replaceRange( + index, + index + 1, + ['${time.hour}:${time.minute}'], + ); + }, + ), + ); + } + + Widget _themeItem( + BuildContext context, GeneralSettingsState state, String brightness) { + final bool isDarkTheme = brightness == 'dark'; + return GestureDetector( + onTap: () { + state.brightness = brightness; + if (isDarkTheme && DesignConfig.isDark) { + return; + } else if (!isDarkTheme && !DesignConfig.isDark) { + return; + } else { + if (isDarkTheme) { + context.read().themeMode = ThemeMode.dark; + } else { + context.read().themeMode = ThemeMode.light; + } + DesignConfig.updateSystemUiOverlayStyle(); + } + }, + child: Column( + children: [ + SvgPicture.asset(isDarkTheme ? Assets.darkTheme : Assets.lightTheme), + const SizedBox(height: 8), + DidvanText( + isDarkTheme ? 'تیره' : 'روشن', + ), + ], + ), + ); + } +} diff --git a/lib/pages/home/profile/widgets/menu_item.dart b/lib/pages/home/settings/widgets/menu_item.dart similarity index 100% rename from lib/pages/home/profile/widgets/menu_item.dart rename to lib/pages/home/settings/widgets/menu_item.dart diff --git a/lib/pages/home/widgets/bnb.dart b/lib/pages/home/widgets/bnb.dart index 1e47824..01e2927 100644 --- a/lib/pages/home/widgets/bnb.dart +++ b/lib/pages/home/widgets/bnb.dart @@ -54,9 +54,9 @@ class DidvanBNB extends StatelessWidget { ), _NavBarItem( isSelected: currentTabIndex == 4, - title: 'پروفایل', - selectedIcon: DidvanIcons.profile_solid, - unselectedIcon: DidvanIcons.profile_light, + title: 'تنظیمات', + selectedIcon: DidvanIcons.setting_solid, + unselectedIcon: DidvanIcons.setting_light, onTap: () => onTabChanged(4), ), ], diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index 37c9124..be91c0e 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -9,14 +9,14 @@ import 'package:didvan/pages/home/home_state.dart'; import 'package:didvan/pages/home/news/news_details/news_details.dart'; import 'package:didvan/pages/home/news/news_details/news_details_state.dart'; import 'package:didvan/pages/home/news/news_state.dart'; -import 'package:didvan/pages/home/profile/direct_list/direct_list.dart'; -import 'package:didvan/pages/home/profile/direct_list/direct_list_state.dart'; -import 'package:didvan/pages/home/profile/edit_profile/edit_profile.dart'; -import 'package:didvan/pages/home/profile/settings/settings.dart'; -import 'package:didvan/pages/home/profile/settings/settings_state.dart'; import 'package:didvan/pages/home/radar/radar_details/radar_details.dart'; import 'package:didvan/pages/home/radar/radar_details/radar_details_state.dart'; import 'package:didvan/pages/home/radar/radar_state.dart'; +import 'package:didvan/pages/home/settings/direct_list/direct_list.dart'; +import 'package:didvan/pages/home/settings/direct_list/direct_list_state.dart'; +import 'package:didvan/pages/home/settings/general_settings/settings.dart'; +import 'package:didvan/pages/home/settings/general_settings/settings_state.dart'; +import 'package:didvan/pages/home/settings/profile/edit_profile.dart'; import 'package:didvan/pages/splash/splash.dart'; import 'package:didvan/routes/routes.dart'; import 'package:flutter/material.dart'; @@ -53,15 +53,15 @@ class RouteGenerator { child: const Home(), ), ); - case Routes.editProfile: + case Routes.profile: return _createRoute( - const EditProfile(), + const Profile(), ); - case Routes.settings: + case Routes.generalSettings: return _createRoute( - ChangeNotifierProvider( - create: (context) => SettingsState(), - child: const Settings(), + ChangeNotifierProvider( + create: (context) => GeneralSettingsState(), + child: const GeneralSettings(), ), ); case Routes.radarDetails: @@ -91,7 +91,9 @@ class RouteGenerator { value: (settings.arguments as Map)['state'], ) ], - child: const NewsDetails(), + child: NewsDetails( + id: (settings.arguments as Map)['id'], + ), ), ); case Routes.directList: diff --git a/lib/routes/routes.dart b/lib/routes/routes.dart index 46bbb21..959d5a7 100644 --- a/lib/routes/routes.dart +++ b/lib/routes/routes.dart @@ -3,8 +3,8 @@ class Routes { static const String home = '/home'; static const String authenticaion = '/authentication'; static const String profile = '/profile'; - static const String editProfile = '/edit-profile'; static const String settings = '/settings'; + static const String generalSettings = '/general-settings'; static const String radarDetails = '/radar-details'; static const String newsDetails = '/news-details'; static const String directList = '/direct-list'; From 08a2de5751364a4b16f57eb4787566b0e2f10e43 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Thu, 20 Jan 2022 18:16:04 +0330 Subject: [PATCH 141/273] bug fixes | code cleaning --- lib/pages/home/home.dart | 7 +-- lib/pages/home/news/news.dart | 2 +- lib/pages/home/news/widgets/news_item.dart | 17 +++---- lib/pages/splash/splash.dart | 59 +++++++++++++--------- 4 files changed, 46 insertions(+), 39 deletions(-) diff --git a/lib/pages/home/home.dart b/lib/pages/home/home.dart index 94fb048..880e84a 100644 --- a/lib/pages/home/home.dart +++ b/lib/pages/home/home.dart @@ -1,8 +1,8 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/pages/home/home_state.dart'; import 'package:didvan/pages/home/news/news.dart'; -import 'package:didvan/pages/home/profile/profile.dart'; import 'package:didvan/pages/home/radar/radar.dart'; +import 'package:didvan/pages/home/settings/settings.dart'; import 'package:didvan/pages/home/statistics/statistics.dart'; import 'package:didvan/pages/home/studio/studio.dart'; import 'package:didvan/pages/home/widgets/bnb.dart'; @@ -22,7 +22,7 @@ class _HomeState extends State with SingleTickerProviderStateMixin { @override void initState() { DesignConfig.updateSystemUiOverlayStyle(); - _tabController = TabController(length: 5, vsync: this); + _tabController = TabController(length: 5, vsync: this, initialIndex: 2); _tabController.addListener(() { context.read().currentPageIndex = _tabController.index; }); @@ -40,7 +40,7 @@ class _HomeState extends State with SingleTickerProviderStateMixin { Statictics(), Radar(), Studio(), - Profile(), + Settings(), ], ), bottomNavigationBar: Consumer( @@ -48,6 +48,7 @@ class _HomeState extends State with SingleTickerProviderStateMixin { currentTabIndex: state.currentPageIndex, onTabChanged: (index) { state.currentPageIndex = index; + FocusScope.of(context).unfocus(); _tabController.animateTo(index); }, ), diff --git a/lib/pages/home/news/news.dart b/lib/pages/home/news/news.dart index 32f5375..0e0181d 100644 --- a/lib/pages/home/news/news.dart +++ b/lib/pages/home/news/news.dart @@ -25,7 +25,6 @@ class News extends StatefulWidget { class _NewsState extends State { Timer? _timer; - @override void initState() { Future.delayed(Duration.zero, () { @@ -48,6 +47,7 @@ class _NewsState extends State { title: 'اخبار', onChanged: _onChanged, onFilterButtonPressed: _showFilterBottomSheet, + isFiltered: state.isFiltering, ), ), ), diff --git a/lib/pages/home/news/widgets/news_item.dart b/lib/pages/home/news/widgets/news_item.dart index 87b8fd6..7b479bf 100644 --- a/lib/pages/home/news/widgets/news_item.dart +++ b/lib/pages/home/news/widgets/news_item.dart @@ -1,12 +1,11 @@ -import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/news_overview.dart'; import 'package:didvan/pages/home/news/news_state.dart'; import 'package:didvan/routes/routes.dart'; +import 'package:didvan/widgets/bookmark_button.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; -import 'package:didvan/widgets/didvan/icon_button.dart'; import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/skeletun_image.dart'; +import 'package:didvan/widgets/skeleton_image.dart'; import 'package:flutter/material.dart'; import 'package:persian_number_utility/persian_number_utility.dart'; import 'package:provider/provider.dart'; @@ -20,7 +19,7 @@ class NewsItem extends StatelessWidget { final state = context.read(); return DidvanCard( onTap: () => Navigator.of(context).pushNamed( - Routes.radarDetails, + Routes.newsDetails, arguments: { 'state': state, 'id': news.id, @@ -61,12 +60,10 @@ class NewsItem extends StatelessWidget { '${news.reference} | ${DateTime.parse(news.createdAt).toPersianDateStr()}', style: Theme.of(context).textTheme.overline, ), - DidvanIconButton( - icon: news.marked - ? DidvanIcons.bookmark_solid - : DidvanIcons.bookmark_regular, - gestureSize: 32, - onPressed: () => state.markNews(news.id), + BookmarkButton( + value: news.marked, + onMark: () => state.markNews(news.id), + onUnmark: () => state.unMarkNews(news.id), ), ], ), diff --git a/lib/pages/splash/splash.dart b/lib/pages/splash/splash.dart index 2e0dddb..3ea027d 100644 --- a/lib/pages/splash/splash.dart +++ b/lib/pages/splash/splash.dart @@ -8,11 +8,14 @@ import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/services/app_initalizer.dart'; import 'package:didvan/services/network/request.dart'; +import 'package:didvan/services/storage/storage.dart'; import 'package:didvan/utils/action_sheet.dart'; import 'package:didvan/widgets/logos/didvan_horizontal_logo.dart'; +import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:provider/provider.dart'; +import 'package:universal_html/html.dart' as html; class Splash extends StatefulWidget { const Splash({Key? key}) : super(key: key); @@ -30,31 +33,6 @@ class _SplashState extends State { super.initState(); } - Future _initialize() async { - ActionSheetUtils.context = navigatorKey.currentContext!; - await AppInitializer.setupServices(); - final ThemeMode themeMode = await AppInitializer.initilizeSettings(); - context.read().themeMode = themeMode; - await Future.delayed( - const Duration(milliseconds: 200), - () => setState(() { - _isGettingThemeData = false; - }), - ); - final userProvider = context.read(); - final String? token = await userProvider.setAndGetToken(); - if (token != null) { - log(token); - RequestService.token = token; - await userProvider.getUserInfo(); - await context.read().getData(); - } - Navigator.of(context).pushReplacementNamed( - token == null ? Routes.authenticaion : Routes.home, - arguments: token == null ? false : null, - ); - } - @override Widget build(BuildContext context) { if (_isGettingThemeData) { @@ -78,4 +56,35 @@ class _SplashState extends State { ), ); } + + Future _initialize() async { + ActionSheetUtils.context = navigatorKey.currentContext!; + if (kIsWeb) { + html.window.onBeforeUnload.listen((event) { + StorageService.webStorage + .removeWhere((key, value) => key == 'image-cache'); + }); + } + await AppInitializer.setupServices(); + final ThemeMode themeMode = await AppInitializer.initilizeSettings(); + context.read().themeMode = themeMode; + await Future.delayed( + const Duration(milliseconds: 200), + () => setState(() { + _isGettingThemeData = false; + }), + ); + final userProvider = context.read(); + final String? token = await userProvider.setAndGetToken(); + if (token != null) { + log(token); + RequestService.token = token; + await userProvider.getUserInfo(); + await context.read().getData(); + } + Navigator.of(context).pushReplacementNamed( + token == null ? Routes.authenticaion : Routes.home, + arguments: token == null ? false : null, + ); + } } From 0958f98894a5f5aa3f5177302701659945952c43 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Thu, 20 Jan 2022 18:22:10 +0330 Subject: [PATCH 142/273] D1APP-48 deta model edits --- lib/models/news_details_data.dart | 4 ++++ lib/models/radar_details_data.dart | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/lib/models/news_details_data.dart b/lib/models/news_details_data.dart index 4190203..c5ead9e 100644 --- a/lib/models/news_details_data.dart +++ b/lib/models/news_details_data.dart @@ -9,6 +9,7 @@ class NewsDetailsData { final String createdAt; final bool marked; final int comments; + final int order; final List tags; final List contents; @@ -22,6 +23,7 @@ class NewsDetailsData { required this.comments, required this.tags, required this.contents, + required this.order, }); factory NewsDetailsData.fromJson(Map json) { @@ -33,6 +35,7 @@ class NewsDetailsData { createdAt: json['createdAt'], marked: json['marked'], comments: json['comments'], + order: json['order'], tags: List.from(json['tags'].map((tag) => Tag.fromJson(tag))), contents: List.from(json['contents'].map( (content) => Content.fromJson(content), @@ -43,6 +46,7 @@ class NewsDetailsData { Map toJson() => { 'id': id, 'title': title, + 'order': order, 'reference': reference, 'image': image, 'createdAt': createdAt, diff --git a/lib/models/radar_details_data.dart b/lib/models/radar_details_data.dart index 8accdeb..fb2aecd 100644 --- a/lib/models/radar_details_data.dart +++ b/lib/models/radar_details_data.dart @@ -16,6 +16,7 @@ class RadarDetailsData { final List tags; final List contents; final List categories; + final int order; const RadarDetailsData({ required this.id, @@ -30,6 +31,7 @@ class RadarDetailsData { required this.tags, required this.contents, required this.categories, + required this.order, }); factory RadarDetailsData.fromJson(Map json) { @@ -42,6 +44,7 @@ class RadarDetailsData { podcast: json['podcast'], forManagers: json['forManagers'], marked: json['marked'], + order: json['order'], comments: json['comments'], tags: List.from(json['tags'].map((tag) => Tag.fromJson(tag))), contents: List.from( @@ -66,6 +69,7 @@ class RadarDetailsData { 'podcast': podcast, 'forManagers': forManagers, 'marked': marked, + 'order': order, 'comments': comments, 'tags': tags.map((e) => e.toJson()).toList(), 'contents': contents.map((e) => e.toJson()).toList(), From 01fcaec2883d263f8baa8275578a74d22d420cb1 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Thu, 20 Jan 2022 18:25:45 +0330 Subject: [PATCH 143/273] D1APP-38 radar completed --- lib/pages/home/radar/radar.dart | 147 ++++++++++------- lib/pages/home/radar/radar_state.dart | 156 ++++++++++++------ .../home/radar/widgets/categories_gird.dart | 20 +-- .../home/radar/widgets/categories_list.dart | 130 ++++++++++----- .../home/radar/widgets/category_item.dart | 89 +++++----- lib/pages/home/radar/widgets/radar_item.dart | 111 ++++++++----- 6 files changed, 413 insertions(+), 240 deletions(-) diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index 3f89f29..a081bc3 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -1,4 +1,5 @@ import 'dart:async'; +import 'dart:math'; import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; @@ -9,7 +10,8 @@ import 'package:didvan/pages/home/radar/radar_state.dart'; import 'package:didvan/pages/home/radar/widgets/categories_gird.dart'; import 'package:didvan/pages/home/radar/widgets/categories_list.dart'; import 'package:didvan/pages/home/radar/widgets/radar_item.dart'; -import 'package:didvan/pages/home/radar/widgets/search_field.dart'; +import 'package:didvan/widgets/animated_visibility.dart'; +import 'package:didvan/widgets/search_field.dart'; import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; import 'package:didvan/utils/action_sheet.dart'; import 'package:didvan/widgets/date_picker_button.dart'; @@ -32,20 +34,25 @@ class Radar extends StatefulWidget { class _RadarState extends State { final ScrollController _scrollController = ScrollController(); + // final ScrollController _categoriesScrollController = ScrollController(); - bool _isColapsed = false; bool _isAnimating = false; Timer? _timer; @override void initState() { - _scrollController.addListener(() async { + _scrollController.addListener(() { _handleAnimations(); }); - Future.delayed(Duration.zero, () { - context.read().getRadarOverviews(page: 1); + final state = context.read(); + state.addListener(() { + if (state.shouldColapse && mounted) { + _handleAnimations(true); + state.shouldColapse = false; + } }); + state.init(); super.initState(); } @@ -53,26 +60,6 @@ class _RadarState extends State { Widget build(BuildContext context) { return Scaffold( body: Consumer( - child: SliverPadding( - padding: const EdgeInsets.only(left: 16, right: 16, bottom: 16), - sliver: SliverToBoxAdapter( - child: Row( - children: [ - Expanded( - child: SearchField(title: 'رادار', onChanged: _onChanged), - ), - const SizedBox(width: 8), - GestureDetector( - onTap: _showFilterBottomSheet, - child: const Icon( - DidvanIcons.filter_regular, - size: 32, - ), - ), - ], - ), - ), - ), builder: (context, state, child) => Stack( children: [ CustomScrollView( @@ -83,22 +70,44 @@ class _RadarState extends State { controller: _scrollController, slivers: [ const SliverToBoxAdapter(child: LogoAppBar()), - child!, - if (!state.isFiltering) - const SliverToBoxAdapter( - child: SizedBox(height: 284), + SliverPadding( + padding: const EdgeInsets.only( + left: 16, + right: 16, + bottom: 16, ), - if (state.radars.isNotEmpty && !state.isFiltering) - SliverPadding( - padding: const EdgeInsets.only(right: 16, bottom: 20), - sliver: SliverToBoxAdapter( - child: DidvanText( - 'آخرین رصد', - style: Theme.of(context).textTheme.subtitle1, - color: Theme.of(context).colorScheme.title, + sliver: SliverToBoxAdapter( + child: SearchField( + isFiltered: state.filtering, + title: 'رادار', + onChanged: _onChanged, + onFilterButtonPressed: _showFilterBottomSheet, + ), + ), + ), + if (!state.filtering && !state.searching) + const SliverToBoxAdapter( + child: SizedBox(height: 276), + ), + SliverPadding( + padding: const EdgeInsets.only(right: 16, bottom: 20), + sliver: SliverToBoxAdapter( + child: Align( + alignment: Alignment.centerRight, + child: AnimatedVisibility( + isVisible: !state.isColapsed && + !state.searching && + !state.filtering, + duration: DesignConfig.lowAnimationDuration, + child: DidvanText( + 'آخرین رصد', + style: Theme.of(context).textTheme.subtitle1, + color: Theme.of(context).colorScheme.title, + ), ), ), ), + ), SliverStateHandler( state: state, itemPadding: const EdgeInsets.only( @@ -112,11 +121,23 @@ class _RadarState extends State { ), childCount: state.radars.length, ), + if (state.radars.length == 1) + const SliverToBoxAdapter( + child: SizedBox(height: 320), + ), ], ), - CategoriesRow1(isColapsed: _isColapsed || state.isFiltering), - CategoriesRow2(isColapsed: _isColapsed || state.isFiltering), - if (!state.isFiltering) CategoriesList(isColapsed: _isColapsed), + CategoriesRow1( + isColapsed: + state.isColapsed || state.searching || state.filtering, + ), + CategoriesRow2( + isColapsed: + state.isColapsed || state.searching || state.filtering, + ), + CategoriesList( + isColapsed: state.isColapsed && !state.searching, + ), ], ), ), @@ -125,39 +146,41 @@ class _RadarState extends State { void _onChanged(String value) { final state = context.read(); - state.resetFilters(shoudUpdate: false); - if (value.length < 4 && value.isNotEmpty) return; + if (value.length < 4 && value.isNotEmpty || state.lastSearch == value) { + return; + } _timer?.cancel(); - _timer = Timer(const Duration(seconds: 2), () { - state.getRadarOverviews( - page: 1, - search: value, - ); + _timer = Timer(const Duration(seconds: 1), () { + state.search = value; + state.getRadarOverviews(page: 1); }); } - void _handleAnimations() async { - if (_isAnimating) return; - final double position = _scrollController.position.pixels; - if (position > 5 && !_isColapsed) { - _isColapsed = true; + void _handleAnimations([bool forceAnimate = false]) async { + final state = context.read(); + if (_isAnimating || state.filtering || state.searching) return; + final double position = _scrollController.offset; + if (position > 5 && !state.isColapsed || forceAnimate) { + state.isScrolled = true; _isAnimating = true; setState(() {}); await _scrollController.animateTo( 380, duration: DesignConfig.mediumAnimationDuration, - curve: Curves.ease, + curve: Curves.easeIn, ); _isAnimating = false; setState(() {}); - } else if (position < 380 && _isColapsed) { - _isColapsed = false; + } else if (position < + min(_scrollController.position.maxScrollExtent, 380) && + state.isColapsed) { + state.isScrolled = false; _isAnimating = true; setState(() {}); await _scrollController.animateTo( 0, duration: DesignConfig.mediumAnimationDuration, - curve: Curves.ease, + curve: Curves.easeIn, ); _isAnimating = false; setState(() {}); @@ -173,8 +196,8 @@ class _RadarState extends State { titleIcon: DidvanIcons.filter_regular, dismissTitle: 'حذف فیلتر', confrimTitle: 'نمایش نتایج', - onDismissed: state.resetFilters, - onConfirmed: () => state.getRadarOverviews(page: 1, filter: true), + onDismissed: () => state.resetFilters(false), + onConfirmed: () => state.getRadarOverviews(page: 1), content: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ @@ -234,6 +257,12 @@ class _RadarState extends State { ), ); } + + @override + void dispose() { + _scrollController.dispose(); + super.dispose(); + } } class _RadarItemPlaceholder extends StatelessWidget { @@ -252,7 +281,7 @@ class _RadarItemPlaceholder extends StatelessWidget { height: 16, ), const SizedBox(height: 8), - const ShimmerPlaceholder(height: 140), + const AspectRatio(aspectRatio: 16 / 9, child: ShimmerPlaceholder()), const SizedBox(height: 8), Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, diff --git a/lib/pages/home/radar/radar_state.dart b/lib/pages/home/radar/radar_state.dart index 0907298..81f4cf4 100644 --- a/lib/pages/home/radar/radar_state.dart +++ b/lib/pages/home/radar/radar_state.dart @@ -1,50 +1,58 @@ +import 'package:collection/collection.dart'; import 'package:didvan/constants/assets.dart'; import 'package:didvan/models/enums.dart'; -import 'package:didvan/models/radar_category.dart'; -import 'package:didvan/models/radar_overview/radar_overview.dart'; +import 'package:didvan/models/view/radar_category.dart'; +import 'package:didvan/models/radar_overview.dart'; import 'package:didvan/providers/core_provider.dart'; import 'package:didvan/services/network/request.dart'; import 'package:didvan/services/network/request_helper.dart'; class RadarState extends CoreProvier { - bool isFiltering = false; - String? lastSearch; + String search = ''; + String lastSearch = ''; String? startDate; String? endDate; + bool isScrolled = false; + bool shouldColapse = false; + final List _markQueue = []; final List selectedCats = []; - + List categories = []; final List radars = []; - void resetFilters({bool shoudUpdate = true}) { + bool get filtering => + selectedCats.length > 1 || startDate != null || endDate != null; + + bool get searching => search.isNotEmpty; + + bool get isColapsed => + (selectedCats.length == 1 && !filtering && isScrolled) || isScrolled; + + bool get isCategorySelected => selectedCats.length == 1 && !filtering; + + void resetFilters(bool isInit) { startDate = null; endDate = null; selectedCats.clear(); - if (shoudUpdate) { - getRadarOverviews(page: 1); + search = ''; + lastSearch = ''; + isScrolled = false; + if (!isInit) { + notifyListeners(); } } Future getRadarOverviews({ required int page, - String? search, - bool filter = false, }) async { - if (search != null && search.isNotEmpty) { - if (lastSearch == search && !filter) { - return; - } - isFiltering = true; - lastSearch = search; - } else { - isFiltering = false; - } + radars.clear(); + lastSearch = search; appState = AppState.busy; final RequestService service = RequestService( - RequestHelper.getRadarOverviews( + RequestHelper.radarOverviews( page: page, startDate: startDate?.split(' ').first, endDate: endDate?.split(' ').first, - search: search, + search: search == '' ? null : search, categories: selectedCats.map((e) => e.id).toList(), ), ); @@ -53,42 +61,84 @@ class RadarState extends CoreProvier { for (var i = 0; i < service.result['radars'].length; i++) { radars.add(RadarOverview.fromJson(service.result['radars'][i])); } + if (searching || filtering || isColapsed || isCategorySelected) { + shouldColapse = true; + } appState = AppState.idle; return; } + appState = AppState.failed; } - final List categories = [ - RadarCategory( - id: 1, - title: 'اقتصادی', - asset: Assets.economicCategoryIcon, - ), - RadarCategory( - id: 2, - title: 'سیاسی', - asset: Assets.politicalCategoryIcon, - ), - RadarCategory( - id: 3, - title: 'فناوری', - asset: Assets.techCategoryIcon, - ), - RadarCategory( - id: 4, - title: 'کسب و کار', - asset: Assets.businessCategoryIcon, - ), - RadarCategory( - id: 5, - title: 'زیست محیطی', - asset: Assets.enviromentalCategoryIcon, - ), - RadarCategory( - id: 6, - title: 'اجتماعی', - asset: Assets.socialCategoryIcon, - ), - ]; + Future markRadar(int id) async { + radars.firstWhere((element) => element.id == id).marked = true; + notifyListeners(); + _markQueue.add(MapEntry(id, true)); + Future.delayed(const Duration(milliseconds: 500), () async { + final MapEntry? lastChange = + _markQueue.lastWhereOrNull((item) => item.key == id); + if (lastChange == null) return; + if (lastChange.value) { + final service = RequestService(RequestHelper.markRadar(id)); + await service.post(); + _markQueue.removeWhere((element) => element.key == id); + } + }); + } + + Future unMarkRadar(int id) async { + radars.firstWhere((element) => element.id == id).marked = false; + notifyListeners(); + _markQueue.add(MapEntry(id, false)); + Future.delayed(const Duration(milliseconds: 500), () async { + final MapEntry? lastChange = + _markQueue.lastWhereOrNull((item) => item.key == id); + if (lastChange == null) return; + if (!lastChange.value) { + final service = RequestService(RequestHelper.markRadar(id)); + await service.delete(); + _markQueue.removeWhere((element) => element.key == id); + } + }); + } + + void init() { + resetFilters(true); + Future.delayed(Duration.zero, () { + getRadarOverviews(page: 1); + }); + categories = [ + RadarCategory( + id: 1, + title: 'اقتصادی', + asset: Assets.economicCategoryIcon, + ), + RadarCategory( + id: 2, + title: 'سیاسی', + asset: Assets.politicalCategoryIcon, + ), + RadarCategory( + id: 3, + title: 'فناوری', + asset: Assets.techCategoryIcon, + ), + RadarCategory( + id: 4, + title: 'کسب و کار', + asset: Assets.businessCategoryIcon, + ), + RadarCategory( + id: 5, + title: 'زیست محیطی', + asset: Assets.enviromentalCategoryIcon, + ), + RadarCategory( + id: 6, + title: 'اجتماعی', + asset: Assets.socialCategoryIcon, + ), + ]; + } } diff --git a/lib/pages/home/radar/widgets/categories_gird.dart b/lib/pages/home/radar/widgets/categories_gird.dart index cb51cd4..44d217e 100644 --- a/lib/pages/home/radar/widgets/categories_gird.dart +++ b/lib/pages/home/radar/widgets/categories_gird.dart @@ -12,10 +12,11 @@ class CategoriesRow1 extends StatelessWidget { Widget build(BuildContext context) { final MediaQueryData d = MediaQuery.of(context); return AnimatedPositioned( + curve: Curves.easeIn, duration: DesignConfig.mediumAnimationDuration, - top: isColapsed ? 12 : 176 + d.padding.top, - left: isColapsed ? -d.size.width : 0, - right: isColapsed ? d.size.width : 0, + top: isColapsed ? -60 : 300 + d.padding.top, + left: isColapsed ? -80 : 0, + right: isColapsed ? 124 : 0, child: Row( children: context .read() @@ -26,8 +27,7 @@ class CategoriesRow1 extends StatelessWidget { child: Padding( padding: const EdgeInsets.symmetric(horizontal: 6), child: CategoryItem( - title: category.title, - asset: category.asset, + category: category, isColapsed: isColapsed, ), ), @@ -51,10 +51,11 @@ class CategoriesRow2 extends StatelessWidget { Widget build(BuildContext context) { final MediaQueryData d = MediaQuery.of(context); return AnimatedPositioned( + curve: Curves.easeIn, duration: DesignConfig.mediumAnimationDuration, - top: isColapsed ? -60 : 300 + d.padding.top, - left: isColapsed ? -80 : 0, - right: isColapsed ? 124 : 0, + top: isColapsed ? 12 : 176 + d.padding.top, + left: isColapsed ? -d.size.width : 0, + right: isColapsed ? d.size.width : 0, child: Row( children: context .read() @@ -63,8 +64,7 @@ class CategoriesRow2 extends StatelessWidget { .map( (category) => Expanded( child: CategoryItem( - title: category.title, - asset: category.asset, + category: category, isColapsed: isColapsed, ), ), diff --git a/lib/pages/home/radar/widgets/categories_list.dart b/lib/pages/home/radar/widgets/categories_list.dart index 0db5e7d..8bdf7c0 100644 --- a/lib/pages/home/radar/widgets/categories_list.dart +++ b/lib/pages/home/radar/widgets/categories_list.dart @@ -7,25 +7,52 @@ import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; -class CategoriesList extends StatelessWidget { +class CategoriesList extends StatefulWidget { final bool isColapsed; - const CategoriesList({Key? key, required this.isColapsed}) : super(key: key); + const CategoriesList({ + Key? key, + required this.isColapsed, + }) : super(key: key); + + @override + State createState() => _CategoriesListState(); +} + +class _CategoriesListState extends State { + final _scrollController = ScrollController(); + + int _lastSelectedCategoryId = 0; + + @override + void didUpdateWidget(covariant CategoriesList oldWidget) { + final RadarState state = context.read(); + if (state.selectedCats.isNotEmpty && + _lastSelectedCategoryId != state.selectedCats.first.id) { + _lastSelectedCategoryId = state.selectedCats.first.id; + _scrollController.animateTo( + state.selectedCats.first.id * 100, + duration: DesignConfig.lowAnimationDuration, + curve: Curves.easeIn, + ); + } + super.didUpdateWidget(oldWidget); + } @override Widget build(BuildContext context) { final MediaQueryData d = MediaQuery.of(context); final RadarState state = context.read(); - final List categories = []; - categories.addAll(state.categories.sublist(3, 6)); - categories.addAll(state.categories.sublist(0, 3)); return Positioned( top: 0, left: 0, right: 0, child: AnimatedCrossFade( - crossFadeState: - isColapsed ? CrossFadeState.showSecond : CrossFadeState.showFirst, + crossFadeState: widget.isColapsed + ? CrossFadeState.showSecond + : CrossFadeState.showFirst, duration: DesignConfig.mediumAnimationDuration, + reverseDuration: DesignConfig.lowAnimationDuration, + sizeCurve: Curves.easeIn, firstChild: const SizedBox(), secondChild: Container( height: 60 + d.padding.top, @@ -33,27 +60,28 @@ class CategoriesList extends StatelessWidget { color: Theme.of(context).colorScheme.surface, boxShadow: DesignConfig.defaultShadow, ), - child: SingleChildScrollView( - physics: const BouncingScrollPhysics(), - scrollDirection: Axis.horizontal, - padding: EdgeInsets.only( - top: d.padding.top + 12, - bottom: 12, - right: 12, - ), - child: Row( - children: [ - AnimatedVisibility( - isVisible: isColapsed, - duration: DesignConfig.mediumAnimationDuration, - child: _itemBuilder( + child: AnimatedVisibility( + isVisible: widget.isColapsed, + duration: DesignConfig.mediumAnimationDuration, + child: SingleChildScrollView( + controller: _scrollController, + // physics: const BouncingScrollPhysics(), + scrollDirection: Axis.horizontal, + padding: EdgeInsets.only( + top: d.padding.top + 12, + bottom: 12, + right: 12, + ), + child: Row( + children: [ + _itemBuilder( RadarCategory(title: 'همه', asset: '', id: 0), context, ), - ), - for (var category in categories) - _itemBuilder(category, context), - ], + for (var i = 0; i < state.categories.length; i++) + _itemBuilder(state.categories[i], context), + ], + ), ), ), ), @@ -62,24 +90,44 @@ class CategoriesList extends StatelessWidget { } Widget _itemBuilder(RadarCategory category, BuildContext context) { - return Container( - margin: const EdgeInsets.only(left: 12), - width: 100, - padding: const EdgeInsets.all(4), - alignment: Alignment.center, - child: FittedBox( - fit: BoxFit.scaleDown, - child: DidvanText( - category.title, - fontWeight: FontWeight.w600, - color: Theme.of(context).colorScheme.focusedBorder, + final state = context.read(); + return GestureDetector( + onTap: () async { + if (state.selectedCats.isNotEmpty && + state.selectedCats.first.id == category.id) return; + state.selectedCats.clear(); + if (category.id != 0) state.selectedCats.add(category); + await _scrollController.animateTo( + category.id * 100, + duration: DesignConfig.lowAnimationDuration, + curve: Curves.easeIn, + ); + state.getRadarOverviews(page: 1); + }, + child: Container( + margin: const EdgeInsets.only(left: 12), + width: 100, + padding: const EdgeInsets.all(4), + alignment: Alignment.center, + child: FittedBox( + fit: BoxFit.scaleDown, + child: DidvanText( + category.title, + fontWeight: FontWeight.w600, + color: Theme.of(context).colorScheme.focusedBorder, + ), ), - ), - decoration: BoxDecoration( - border: Border.all( - color: Theme.of(context).colorScheme.focusedBorder, + decoration: BoxDecoration( + color: state.selectedCats.length == 1 && + state.selectedCats.contains(category) || + category.id == 0 && state.selectedCats.isEmpty + ? Theme.of(context).colorScheme.focused + : null, + border: Border.all( + color: Theme.of(context).colorScheme.focusedBorder, + ), + borderRadius: DesignConfig.lowBorderRadius, ), - borderRadius: DesignConfig.lowBorderRadius, ), ); } diff --git a/lib/pages/home/radar/widgets/category_item.dart b/lib/pages/home/radar/widgets/category_item.dart index 9eebcea..7ec8494 100644 --- a/lib/pages/home/radar/widgets/category_item.dart +++ b/lib/pages/home/radar/widgets/category_item.dart @@ -1,63 +1,74 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/models/view/radar_category.dart'; +import 'package:didvan/pages/home/radar/radar_state.dart'; import 'package:didvan/widgets/animated_visibility.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; +import 'package:provider/provider.dart'; class CategoryItem extends StatelessWidget { - final String title; - final String asset; + final RadarCategory category; final bool isColapsed; const CategoryItem({ Key? key, - required this.title, - required this.asset, required this.isColapsed, + required this.category, }) : super(key: key); @override Widget build(BuildContext context) { final Size ds = MediaQuery.of(context).size; return Center( - child: AnimatedContainer( - duration: DesignConfig.mediumAnimationDuration, - padding: isColapsed ? const EdgeInsets.all(4) : EdgeInsets.zero, - width: isColapsed ? 100 : ds.width / 3, - alignment: Alignment.center, - decoration: BoxDecoration( - borderRadius: DesignConfig.lowBorderRadius, - border: isColapsed - ? Border.all(color: Theme.of(context).colorScheme.focusedBorder) - : null, - ), - child: Column( - children: [ - AnimatedVisibility( - duration: DesignConfig.mediumAnimationDuration, - isVisible: !isColapsed, - child: Container( - width: ds.width / 5, - height: ds.width / 5, - decoration: BoxDecoration( - color: Theme.of(context).colorScheme.surface, - boxShadow: DesignConfig.defaultShadow, - borderRadius: DesignConfig.mediumBorderRadius, + child: GestureDetector( + onTap: () { + final state = context.read(); + state.selectedCats.clear(); + if (category.id != 0) { + state.selectedCats.add(category); + } + state.getRadarOverviews(page: 1); + }, + child: AnimatedContainer( + duration: DesignConfig.mediumAnimationDuration, + padding: isColapsed ? const EdgeInsets.all(4) : EdgeInsets.zero, + width: isColapsed ? 100 : ds.width / 3, + alignment: Alignment.center, + decoration: BoxDecoration( + borderRadius: DesignConfig.lowBorderRadius, + border: isColapsed + ? Border.all(color: Theme.of(context).colorScheme.focusedBorder) + : null, + ), + child: Column( + children: [ + AnimatedVisibility( + duration: DesignConfig.mediumAnimationDuration, + isVisible: !isColapsed, + child: Container( + width: ds.width / 5, + height: ds.width / 5, + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.surface, + boxShadow: DesignConfig.defaultShadow, + borderRadius: DesignConfig.mediumBorderRadius, + ), + padding: const EdgeInsets.all(8), + child: SvgPicture.asset(category.asset), ), - padding: const EdgeInsets.all(8), - child: SvgPicture.asset(asset), ), - ), - const SizedBox( - height: 8, - ), - DidvanText( - title, - style: Theme.of(context).textTheme.subtitle2, - color: Theme.of(context).colorScheme.title, - ), - ], + const SizedBox( + height: 8, + ), + DidvanText( + category.title, + style: Theme.of(context).textTheme.subtitle2, + color: Theme.of(context).colorScheme.title, + ), + ], + ), ), ), ); diff --git a/lib/pages/home/radar/widgets/radar_item.dart b/lib/pages/home/radar/widgets/radar_item.dart index c8751f8..ffa6a1e 100644 --- a/lib/pages/home/radar/widgets/radar_item.dart +++ b/lib/pages/home/radar/widgets/radar_item.dart @@ -1,83 +1,118 @@ -import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/models/radar_overview/radar_overview.dart'; +import 'package:didvan/models/radar_overview.dart'; +import 'package:didvan/pages/home/radar/radar_state.dart'; import 'package:didvan/routes/routes.dart'; +import 'package:didvan/widgets/bookmark_button.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; +import 'package:didvan/widgets/didvan/icon_button.dart'; import 'package:didvan/widgets/didvan/text.dart'; -import 'package:didvan/widgets/skeletun_image.dart'; +import 'package:didvan/widgets/skeleton_image.dart'; import 'package:flutter/material.dart'; +import 'package:persian_number_utility/persian_number_utility.dart'; +import 'package:provider/provider.dart'; class RadarItem extends StatelessWidget { - final RadarOverview? radar; + final RadarOverview radar; const RadarItem({Key? key, required this.radar}) : super(key: key); @override Widget build(BuildContext context) { + final state = context.read(); return DidvanCard( - onTap: () => Navigator.of(context).pushNamed(Routes.radarDetails), + onTap: () => Navigator.of(context).pushNamed( + Routes.radarDetails, + arguments: { + 'state': state, + 'id': radar.id, + }, + ), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - Container( - padding: const EdgeInsets.all(4), - decoration: BoxDecoration( - color: Theme.of(context).colorScheme.secondary, - borderRadius: DesignConfig.highBorderRadius, - ), - child: DidvanText( - 'برای مدیران', - style: Theme.of(context).textTheme.overline, - color: Theme.of(context).colorScheme.white, - ), - ), const SizedBox(height: 8), - const DidvanText( - 'نقش مهم فولاد در اقتصاد جهانی', + DidvanText( + radar.title, fontWeight: FontWeight.w600, ), const SizedBox(height: 8), - const SkeletonImage( - imageUrl: 'https://wallpapercave.com/wp/wp9373116.jpg', - width: double.infinity, - height: 140, + Stack( + children: [ + SkeletonImage( + imageUrl: radar.image, + aspectRatio: 16 / 9, + ), + if (radar.forManagers) + Positioned( + top: 0, + right: 0, + child: Container( + padding: const EdgeInsets.all(4), + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.secondary, + borderRadius: const BorderRadius.only( + bottomLeft: Radius.circular(8), + topRight: Radius.circular(8), + ), + ), + child: DidvanText( + 'برای مدیران', + style: Theme.of(context).textTheme.overline, + color: Theme.of(context).colorScheme.white, + ), + ), + ), + ], ), const SizedBox(height: 8), Row( children: [ DidvanText( - 'رادار کسب و کار', + radar.categories.first.label, style: Theme.of(context).textTheme.overline, color: Theme.of(context).colorScheme.caption, ), const Spacer(), DidvanText( - 'هفته پیش | خواندن 5 دقیقه', + '${DateTime.parse(radar.createdAt).toPersianDateStr()} | خواندن ${radar.timeToRead} دقیقه', style: Theme.of(context).textTheme.overline, color: Theme.of(context).colorScheme.caption, ), ], ), const SizedBox(height: 8), - const DidvanText( - 'صنعت فولاد جوادی مجد سلیمی است پس باید به آن توجه زیادی شود تا بازار به انفجار نرسد. پس جواد مهربانگو باشیم...', + DidvanText( + radar.description, maxLines: 3, ), const DidvanDivider(), Row( - children: const [ - Icon( - DidvanIcons.bookmark_regular, + children: [ + BookmarkButton( + value: radar.marked, + onMark: () => state.markRadar(radar.id), + onUnmark: () => state.unMarkRadar(radar.id), ), - Spacer(), - DidvanText('2'), - SizedBox(width: 4), - Icon(DidvanIcons.directs_regular), - SizedBox(width: 16), - DidvanText('10'), - SizedBox(width: 4), - Icon(DidvanIcons.evaluation_regular), + const Spacer(), + if (radar.comments != 0) DidvanText(radar.comments.toString()), + const SizedBox(width: 4), + DidvanIconButton( + icon: DidvanIcons.chats_regular, + gestureSize: 24, + onPressed: () => Navigator.of(context).pushNamed( + Routes.comments, + arguments: { + 'isRadar': true, + 'title': radar.title, + 'id': radar.id, + }, + ), + ), + const SizedBox(width: 16), + // const DidvanText('10'), + // const SizedBox(width: 4), + // const Icon(DidvanIcons.evaluation_regular), ], ), ], From e642d58e4674890df3e1edda869c222c4d51590d Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Thu, 20 Jan 2022 18:26:05 +0330 Subject: [PATCH 144/273] D1APP-39 news completed --- lib/pages/home/news/news_state.dart | 43 ++++++++++++++++++++++++----- 1 file changed, 36 insertions(+), 7 deletions(-) diff --git a/lib/pages/home/news/news_state.dart b/lib/pages/home/news/news_state.dart index ab22631..12fe709 100644 --- a/lib/pages/home/news/news_state.dart +++ b/lib/pages/home/news/news_state.dart @@ -1,3 +1,4 @@ +import 'package:collection/collection.dart'; import 'package:didvan/models/enums.dart'; import 'package:didvan/models/news_overview.dart'; import 'package:didvan/providers/core_provider.dart'; @@ -6,11 +7,12 @@ import 'package:didvan/services/network/request_helper.dart'; class NewsState extends CoreProvier { bool isFiltering = false; - String? search; - String? lastSearch; + String search = ''; + String lastSearch = ''; String? startDate; String? endDate; + final List _markQueue = []; final List news = []; void resetFilters() { @@ -22,21 +24,21 @@ class NewsState extends CoreProvier { Future getNews({ required int page, }) async { - if (search != '' && search != null || filterApplied) { + if (search != '' || filterApplied) { lastSearch = search; isFiltering = true; - news.clear(); } else { isFiltering = false; } lastSearch = search; appState = AppState.busy; + news.clear(); final service = RequestService( RequestHelper.newsOverviews( page: 1, startDate: startDate?.split(' ').first, endDate: endDate?.split(' ').first, - search: search, + search: search == '' ? null : search, ), ); await service.httpGet(); @@ -52,8 +54,35 @@ class NewsState extends CoreProvier { } Future markNews(int id) async { - final service = RequestService(RequestHelper.markNews(id)); - await service.post(); + news.firstWhere((element) => element.id == id).marked = true; + notifyListeners(); + _markQueue.add(MapEntry(id, true)); + Future.delayed(const Duration(milliseconds: 500), () async { + final MapEntry? lastChange = + _markQueue.lastWhereOrNull((item) => item.key == id); + if (lastChange == null) return; + if (lastChange.value) { + final service = RequestService(RequestHelper.markNews(id)); + await service.post(); + _markQueue.removeWhere((element) => element.key == id); + } + }); + } + + Future unMarkNews(int id) async { + news.firstWhere((element) => element.id == id).marked = false; + notifyListeners(); + _markQueue.add(MapEntry(id, false)); + Future.delayed(const Duration(milliseconds: 500), () async { + final MapEntry? lastChange = + _markQueue.lastWhereOrNull((item) => item.key == id); + if (lastChange == null) return; + if (!lastChange.value) { + final service = RequestService(RequestHelper.markNews(id)); + await service.delete(); + _markQueue.removeWhere((element) => element.key == id); + } + }); } bool get filterApplied => startDate != null || endDate != null; From 17287f4b5f17615a4b3e86e38cd705e545739ae8 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Mon, 24 Jan 2022 02:23:32 +0330 Subject: [PATCH 145/273] D1APP-47 empty states configuration --- .../images/empty_states/bookmark-dark.svg | 83 ++++++++++++++++ .../images/empty_states/bookmark-light.svg | 83 ++++++++++++++++ lib/assets/images/empty_states/chart-dark.svg | 53 ++++++++++ .../images/empty_states/chart-light.svg | 54 +++++++++++ lib/assets/images/empty_states/chat-dark.svg | 53 ++++++++++ lib/assets/images/empty_states/chat-light.svg | 54 +++++++++++ .../images/empty_states/connection-dark.svg | 87 +++++++++++++++++ .../images/empty_states/connection-light.svg | 97 +++++++++++++++++++ .../images/empty_states/result-dark.svg | 57 +++++++++++ .../images/empty_states/result-light.svg | 57 +++++++++++ .../images/empty_states/studio-dark.svg | 48 +++++++++ .../images/empty_states/studio-light.svg | 55 +++++++++++ lib/constants/assets.dart | 14 +++ lib/pages/home/news/news.dart | 42 ++++---- lib/pages/home/radar/radar.dart | 87 +++++++++-------- lib/pages/home/radar/radar_state.dart | 19 ++-- .../settings/general_settings/settings.dart | 3 +- lib/pages/home/statistics/statistics.dart | 18 +++- lib/pages/home/studio/studio.dart | 18 +++- lib/widgets/search_field.dart | 14 +-- .../state_handlers/empty_connection.dart | 18 ++++ lib/widgets/state_handlers/empty_result.dart | 18 ++++ lib/widgets/state_handlers/empty_state.dart | 54 +++++++++++ .../sliver_state_handler.dart | 24 +++-- .../{ => state_handlers}/state_handler.dart | 9 +- pubspec.lock | 14 +++ pubspec.yaml | 13 +++ 27 files changed, 1063 insertions(+), 83 deletions(-) create mode 100644 lib/assets/images/empty_states/bookmark-dark.svg create mode 100644 lib/assets/images/empty_states/bookmark-light.svg create mode 100644 lib/assets/images/empty_states/chart-dark.svg create mode 100644 lib/assets/images/empty_states/chart-light.svg create mode 100644 lib/assets/images/empty_states/chat-dark.svg create mode 100644 lib/assets/images/empty_states/chat-light.svg create mode 100644 lib/assets/images/empty_states/connection-dark.svg create mode 100644 lib/assets/images/empty_states/connection-light.svg create mode 100644 lib/assets/images/empty_states/result-dark.svg create mode 100644 lib/assets/images/empty_states/result-light.svg create mode 100644 lib/assets/images/empty_states/studio-dark.svg create mode 100644 lib/assets/images/empty_states/studio-light.svg create mode 100644 lib/widgets/state_handlers/empty_connection.dart create mode 100644 lib/widgets/state_handlers/empty_result.dart create mode 100644 lib/widgets/state_handlers/empty_state.dart rename lib/widgets/{ => state_handlers}/sliver_state_handler.dart (68%) rename lib/widgets/{ => state_handlers}/state_handler.dart (88%) diff --git a/lib/assets/images/empty_states/bookmark-dark.svg b/lib/assets/images/empty_states/bookmark-dark.svg new file mode 100644 index 0000000..effdb45 --- /dev/null +++ b/lib/assets/images/empty_states/bookmark-dark.svg @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/empty_states/bookmark-light.svg b/lib/assets/images/empty_states/bookmark-light.svg new file mode 100644 index 0000000..8bb6d38 --- /dev/null +++ b/lib/assets/images/empty_states/bookmark-light.svg @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/empty_states/chart-dark.svg b/lib/assets/images/empty_states/chart-dark.svg new file mode 100644 index 0000000..87e4b6c --- /dev/null +++ b/lib/assets/images/empty_states/chart-dark.svg @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/empty_states/chart-light.svg b/lib/assets/images/empty_states/chart-light.svg new file mode 100644 index 0000000..e7287c0 --- /dev/null +++ b/lib/assets/images/empty_states/chart-light.svg @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/empty_states/chat-dark.svg b/lib/assets/images/empty_states/chat-dark.svg new file mode 100644 index 0000000..0e79e3f --- /dev/null +++ b/lib/assets/images/empty_states/chat-dark.svg @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/empty_states/chat-light.svg b/lib/assets/images/empty_states/chat-light.svg new file mode 100644 index 0000000..164cb68 --- /dev/null +++ b/lib/assets/images/empty_states/chat-light.svg @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/empty_states/connection-dark.svg b/lib/assets/images/empty_states/connection-dark.svg new file mode 100644 index 0000000..87ad7a7 --- /dev/null +++ b/lib/assets/images/empty_states/connection-dark.svg @@ -0,0 +1,87 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/empty_states/connection-light.svg b/lib/assets/images/empty_states/connection-light.svg new file mode 100644 index 0000000..f0a62b5 --- /dev/null +++ b/lib/assets/images/empty_states/connection-light.svg @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/empty_states/result-dark.svg b/lib/assets/images/empty_states/result-dark.svg new file mode 100644 index 0000000..1a8515d --- /dev/null +++ b/lib/assets/images/empty_states/result-dark.svg @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/empty_states/result-light.svg b/lib/assets/images/empty_states/result-light.svg new file mode 100644 index 0000000..f56538b --- /dev/null +++ b/lib/assets/images/empty_states/result-light.svg @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/empty_states/studio-dark.svg b/lib/assets/images/empty_states/studio-dark.svg new file mode 100644 index 0000000..392039b --- /dev/null +++ b/lib/assets/images/empty_states/studio-dark.svg @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/assets/images/empty_states/studio-light.svg b/lib/assets/images/empty_states/studio-light.svg new file mode 100644 index 0000000..5808670 --- /dev/null +++ b/lib/assets/images/empty_states/studio-light.svg @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/constants/assets.dart b/lib/constants/assets.dart index ec1bea0..a331516 100644 --- a/lib/constants/assets.dart +++ b/lib/constants/assets.dart @@ -5,6 +5,7 @@ class Assets { static const String _basePath = 'lib/assets'; static const String _baseImagesPath = _basePath + '/images'; static const String _baseThemesPath = _basePath + '/images/themes'; + static const String _baseEmptyStatesPath = _basePath + '/images/empty_states'; static const String _baseAnimationsPath = _basePath + '/animations'; static const String _baseRecordsPath = _basePath + '/images/records'; @@ -29,6 +30,19 @@ class Assets { static String get techCategoryIcon => _baseImagesPath + '/categories/tech-$_themeSuffix.svg'; + static String get emptyBookmark => + _baseEmptyStatesPath + '/bookmark-$_themeSuffix.svg'; + static String get emptyChart => + _baseEmptyStatesPath + '/chart-$_themeSuffix.svg'; + static String get emptyChat => + _baseEmptyStatesPath + '/chat-$_themeSuffix.svg'; + static String get emptyConnection => + _baseEmptyStatesPath + '/connection-$_themeSuffix.svg'; + static String get emptyResult => + _baseEmptyStatesPath + '/result-$_themeSuffix.svg'; + static String get emptyStudio => + _baseEmptyStatesPath + '/studio-$_themeSuffix.svg'; + static const String lightTheme = _baseThemesPath + '/theme-light.svg'; static const String darkTheme = _baseThemesPath + '/theme-dark.svg'; diff --git a/lib/pages/home/news/news.dart b/lib/pages/home/news/news.dart index 0e0181d..a054cc0 100644 --- a/lib/pages/home/news/news.dart +++ b/lib/pages/home/news/news.dart @@ -1,6 +1,7 @@ import 'dart:async'; import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/models/enums.dart'; import 'package:didvan/models/view/action_sheet_data.dart'; import 'package:didvan/pages/home/news/news_state.dart'; import 'package:didvan/pages/home/news/widgets/news_item.dart'; @@ -12,7 +13,8 @@ import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/shimmer_placeholder.dart'; -import 'package:didvan/widgets/sliver_state_handler.dart'; +import 'package:didvan/widgets/state_handlers/empty_result.dart'; +import 'package:didvan/widgets/state_handlers/sliver_state_handler.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; @@ -25,25 +27,25 @@ class News extends StatefulWidget { class _NewsState extends State { Timer? _timer; + final _focusNode = FocusNode(); @override void initState() { - Future.delayed(Duration.zero, () { - context.read().getNews(page: 1); - }); + context.read().init(); super.initState(); } @override Widget build(BuildContext context) { final state = context.watch(); - return Scaffold( - body: CustomScrollView( - slivers: [ - const SliverToBoxAdapter(child: LogoAppBar()), + return CustomScrollView( + slivers: [ + const SliverToBoxAdapter(child: LogoAppBar()), + if (state.appState != AppState.failed) SliverPadding( padding: const EdgeInsets.only(left: 16, right: 16, bottom: 16), sliver: SliverToBoxAdapter( child: SearchField( + focusNode: _focusNode, title: 'اخبار', onChanged: _onChanged, onFilterButtonPressed: _showFilterBottomSheet, @@ -51,17 +53,21 @@ class _NewsState extends State { ), ), ), - SliverStateHandler( - state: state, - builder: (context, state, index) => NewsItem( - news: state.news[index], - ), - childCount: state.news.length, - itemPadding: const EdgeInsets.only(left: 16, right: 16, bottom: 16), - placeholder: const _NewsItemPlaceholder(), + SliverStateHandler( + onRetry: () => state.getNews(page: state.page), + state: state, + builder: (context, state, index) => NewsItem( + news: state.news[index], ), - ], - ), + enableEmptyState: state.news.isEmpty, + emptyState: EmptyResult( + onNewSearch: () => _focusNode.requestFocus(), + ), + childCount: state.news.length, + itemPadding: const EdgeInsets.only(left: 16, right: 16, bottom: 16), + placeholder: const _NewsItemPlaceholder(), + ), + ], ); } diff --git a/lib/pages/home/radar/radar.dart b/lib/pages/home/radar/radar.dart index a081bc3..3421a68 100644 --- a/lib/pages/home/radar/radar.dart +++ b/lib/pages/home/radar/radar.dart @@ -21,7 +21,8 @@ import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/item_title.dart'; import 'package:didvan/widgets/shimmer_placeholder.dart'; -import 'package:didvan/widgets/sliver_state_handler.dart'; +import 'package:didvan/widgets/state_handlers/empty_result.dart'; +import 'package:didvan/widgets/state_handlers/sliver_state_handler.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; @@ -34,7 +35,7 @@ class Radar extends StatefulWidget { class _RadarState extends State { final ScrollController _scrollController = ScrollController(); - // final ScrollController _categoriesScrollController = ScrollController(); + final _focusNode = FocusNode(); bool _isAnimating = false; @@ -58,18 +59,18 @@ class _RadarState extends State { @override Widget build(BuildContext context) { - return Scaffold( - body: Consumer( - builder: (context, state, child) => Stack( - children: [ - CustomScrollView( - physics: _isAnimating || - (state.appState == AppState.busy && state.radars.isEmpty) - ? const NeverScrollableScrollPhysics() - : const ScrollPhysics(), - controller: _scrollController, - slivers: [ - const SliverToBoxAdapter(child: LogoAppBar()), + return Consumer( + builder: (context, state, child) => Stack( + children: [ + CustomScrollView( + physics: _isAnimating || + (state.appState == AppState.busy && state.radars.isEmpty) + ? const NeverScrollableScrollPhysics() + : const ScrollPhysics(), + controller: _scrollController, + slivers: [ + const SliverToBoxAdapter(child: LogoAppBar()), + if (state.appState != AppState.failed) SliverPadding( padding: const EdgeInsets.only( left: 16, @@ -78,6 +79,7 @@ class _RadarState extends State { ), sliver: SliverToBoxAdapter( child: SearchField( + focusNode: _focusNode, isFiltered: state.filtering, title: 'رادار', onChanged: _onChanged, @@ -85,10 +87,13 @@ class _RadarState extends State { ), ), ), - if (!state.filtering && !state.searching) - const SliverToBoxAdapter( - child: SizedBox(height: 276), - ), + if (!state.filtering && + !state.searching && + state.appState != AppState.failed) + const SliverToBoxAdapter( + child: SizedBox(height: 276), + ), + if (state.appState != AppState.failed) SliverPadding( padding: const EdgeInsets.only(right: 16, bottom: 20), sliver: SliverToBoxAdapter( @@ -108,38 +113,44 @@ class _RadarState extends State { ), ), ), - SliverStateHandler( - state: state, - itemPadding: const EdgeInsets.only( - bottom: 20, - left: 16, - right: 16, - ), - placeholder: const _RadarItemPlaceholder(), - builder: (context, state, index) => RadarItem( - radar: state.radars[index], - ), - childCount: state.radars.length, + SliverStateHandler( + onRetry: () => state.getRadarOverviews(page: state.page), + state: state, + itemPadding: const EdgeInsets.only( + bottom: 20, + left: 16, + right: 16, ), - if (state.radars.length == 1) - const SliverToBoxAdapter( - child: SizedBox(height: 320), - ), - ], - ), + enableEmptyState: state.radars.isEmpty, + emptyState: + EmptyResult(onNewSearch: () => _focusNode.requestFocus()), + placeholder: const _RadarItemPlaceholder(), + builder: (context, state, index) => RadarItem( + radar: state.radars[index], + ), + childCount: state.radars.length, + ), + if (state.radars.length == 1) + const SliverToBoxAdapter( + child: SizedBox(height: 320), + ), + ], + ), + if (state.appState != AppState.failed) CategoriesRow1( isColapsed: state.isColapsed || state.searching || state.filtering, ), + if (state.appState != AppState.failed) CategoriesRow2( isColapsed: state.isColapsed || state.searching || state.filtering, ), + if (state.appState != AppState.failed) CategoriesList( isColapsed: state.isColapsed && !state.searching, ), - ], - ), + ], ), ); } diff --git a/lib/pages/home/radar/radar_state.dart b/lib/pages/home/radar/radar_state.dart index 81f4cf4..f6dcd6f 100644 --- a/lib/pages/home/radar/radar_state.dart +++ b/lib/pages/home/radar/radar_state.dart @@ -1,6 +1,7 @@ import 'package:collection/collection.dart'; import 'package:didvan/constants/assets.dart'; import 'package:didvan/models/enums.dart'; +import 'package:didvan/models/requests/radar.dart'; import 'package:didvan/models/view/radar_category.dart'; import 'package:didvan/models/radar_overview.dart'; import 'package:didvan/providers/core_provider.dart'; @@ -12,6 +13,7 @@ class RadarState extends CoreProvier { String lastSearch = ''; String? startDate; String? endDate; + int page = 1; bool isScrolled = false; bool shouldColapse = false; final List _markQueue = []; @@ -44,16 +46,21 @@ class RadarState extends CoreProvier { Future getRadarOverviews({ required int page, }) async { - radars.clear(); + if (this.page == page) { + radars.clear(); + } + this.page = page; lastSearch = search; appState = AppState.busy; final RequestService service = RequestService( RequestHelper.radarOverviews( - page: page, - startDate: startDate?.split(' ').first, - endDate: endDate?.split(' ').first, - search: search == '' ? null : search, - categories: selectedCats.map((e) => e.id).toList(), + args: RadarRequestArgs( + page: page, + startDate: startDate?.split(' ').first, + endDate: endDate?.split(' ').first, + search: search == '' ? null : search, + categories: selectedCats.map((e) => e.id).toList(), + ), ), ); await service.httpGet(); diff --git a/lib/pages/home/settings/general_settings/settings.dart b/lib/pages/home/settings/general_settings/settings.dart index 915241d..18680a3 100644 --- a/lib/pages/home/settings/general_settings/settings.dart +++ b/lib/pages/home/settings/general_settings/settings.dart @@ -15,7 +15,7 @@ import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/scaffold.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/item_title.dart'; -import 'package:didvan/widgets/state_handler.dart'; +import 'package:didvan/widgets/state_handlers/state_handler.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; import 'package:provider/provider.dart'; @@ -27,6 +27,7 @@ class GeneralSettings extends StatelessWidget { Widget build(BuildContext context) { return Consumer( builder: (context, state, child) => StateHandler( + onRetry: () {}, state: context.read(), builder: (context, state) => DidvanScaffold( appBarData: AppBarData(hasBack: true, title: 'تنظیمات'), diff --git a/lib/pages/home/statistics/statistics.dart b/lib/pages/home/statistics/statistics.dart index 9544791..e727b5a 100644 --- a/lib/pages/home/statistics/statistics.dart +++ b/lib/pages/home/statistics/statistics.dart @@ -1,3 +1,7 @@ +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/assets.dart'; +import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; +import 'package:didvan/widgets/state_handlers/empty_state.dart'; import 'package:flutter/material.dart'; class Statictics extends StatelessWidget { @@ -5,6 +9,18 @@ class Statictics extends StatelessWidget { @override Widget build(BuildContext context) { - return Container(); + return Column( + children: [ + const LogoAppBar(), + Expanded( + child: EmptyState( + asset: Assets.emptyChart, + title: 'قیمت‌ها و شاخص‌های اقتصادی', + subtitle: 'به زودی...', + titleColor: Theme.of(context).colorScheme.title, + ), + ), + ], + ); } } diff --git a/lib/pages/home/studio/studio.dart b/lib/pages/home/studio/studio.dart index 3b4a32e..dd7eed3 100644 --- a/lib/pages/home/studio/studio.dart +++ b/lib/pages/home/studio/studio.dart @@ -1,3 +1,7 @@ +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/assets.dart'; +import 'package:didvan/pages/home/widgets/logo_app_bar.dart'; +import 'package:didvan/widgets/state_handlers/empty_state.dart'; import 'package:flutter/material.dart'; class Studio extends StatelessWidget { @@ -5,6 +9,18 @@ class Studio extends StatelessWidget { @override Widget build(BuildContext context) { - return Container(); + return Column( + children: [ + const LogoAppBar(), + Expanded( + child: EmptyState( + asset: Assets.emptyStudio, + title: 'استودیو آینده', + subtitle: 'به زودی...', + titleColor: Theme.of(context).colorScheme.title, + ), + ), + ], + ); } } diff --git a/lib/widgets/search_field.dart b/lib/widgets/search_field.dart index 9c8fd38..da923b3 100644 --- a/lib/widgets/search_field.dart +++ b/lib/widgets/search_field.dart @@ -5,6 +5,7 @@ import 'package:flutter/material.dart'; class SearchField extends StatefulWidget { final String title; + final FocusNode focusNode; final bool? isFiltered; final void Function(String value) onChanged; final VoidCallback? onFilterButtonPressed; @@ -13,6 +14,7 @@ class SearchField extends StatefulWidget { Key? key, required this.title, required this.onChanged, + required this.focusNode, this.onFilterButtonPressed, this.isFiltered, }) : super(key: key); @@ -22,11 +24,9 @@ class SearchField extends StatefulWidget { } class _SearchFieldState extends State { - final FocusNode _focusNode = FocusNode(); - @override void initState() { - _focusNode.addListener(() { + widget.focusNode.addListener(() { setState(() {}); }); super.initState(); @@ -44,8 +44,8 @@ class _SearchFieldState extends State { color: _fillColor(), ), child: TextFormField( - focusNode: _focusNode, - style: Theme.of(context).textTheme.bodyText1, + focusNode: widget.focusNode, + style: Theme.of(context).textTheme.bodyText2, textAlignVertical: TextAlignVertical.center, onChanged: widget.onChanged, keyboardType: TextInputType.text, @@ -117,7 +117,7 @@ class _SearchFieldState extends State { } Color _fillColor() { - if (_focusNode.hasFocus) { + if (widget.focusNode.hasFocus) { return Theme.of(context).colorScheme.surface; } return Theme.of(context).colorScheme.surface; @@ -125,7 +125,7 @@ class _SearchFieldState extends State { @override void dispose() { - _focusNode.dispose(); + widget.focusNode.dispose(); super.dispose(); } } diff --git a/lib/widgets/state_handlers/empty_connection.dart b/lib/widgets/state_handlers/empty_connection.dart new file mode 100644 index 0000000..53e87a6 --- /dev/null +++ b/lib/widgets/state_handlers/empty_connection.dart @@ -0,0 +1,18 @@ +import 'package:didvan/constants/assets.dart'; +import 'package:didvan/widgets/state_handlers/empty_state.dart'; +import 'package:flutter/material.dart'; + +class EmptyConnection extends StatelessWidget { + final VoidCallback onRetry; + const EmptyConnection({Key? key, required this.onRetry}) : super(key: key); + + @override + Widget build(BuildContext context) { + return EmptyState( + asset: Assets.emptyConnection, + title: 'ارتباط با اینترنت قطع شد...', + action: onRetry, + buttonTitle: 'تلاش دوباره', + ); + } +} diff --git a/lib/widgets/state_handlers/empty_result.dart b/lib/widgets/state_handlers/empty_result.dart new file mode 100644 index 0000000..bbb5fbb --- /dev/null +++ b/lib/widgets/state_handlers/empty_result.dart @@ -0,0 +1,18 @@ +import 'package:didvan/constants/assets.dart'; +import 'package:didvan/widgets/state_handlers/empty_state.dart'; +import 'package:flutter/material.dart'; + +class EmptyResult extends StatelessWidget { + final VoidCallback onNewSearch; + const EmptyResult({Key? key, required this.onNewSearch}) : super(key: key); + + @override + Widget build(BuildContext context) { + return EmptyState( + asset: Assets.emptyResult, + title: 'نتیجه‌ای پیدا نشد', + buttonTitle: 'تغییر جستجو', + action: onNewSearch, + ); + } +} diff --git a/lib/widgets/state_handlers/empty_state.dart b/lib/widgets/state_handlers/empty_state.dart new file mode 100644 index 0000000..6d4a883 --- /dev/null +++ b/lib/widgets/state_handlers/empty_state.dart @@ -0,0 +1,54 @@ +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/widgets/didvan/button.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_svg/flutter_svg.dart'; + +class EmptyState extends StatelessWidget { + final String asset; + final String title; + final String? subtitle; + final String? buttonTitle; + final VoidCallback? action; + final Color? titleColor; + + const EmptyState({ + Key? key, + required this.asset, + required this.title, + this.action, + this.buttonTitle, + this.subtitle, + this.titleColor, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + SizedBox(height: 210, child: SvgPicture.asset(asset)), + const SizedBox(height: 16), + DidvanText( + title, + style: Theme.of(context).textTheme.headline3, + color: titleColor ?? Theme.of(context).colorScheme.caption, + ), + if (subtitle != null) const SizedBox(height: 8), + if (subtitle != null) + DidvanText( + subtitle!, + color: Theme.of(context).colorScheme.caption, + ), + if (action != null) const SizedBox(height: 16), + if (action != null) + DidvanButton( + height: 40, + onPressed: action, + title: buttonTitle, + width: 112, + ), + ], + ); + } +} diff --git a/lib/widgets/sliver_state_handler.dart b/lib/widgets/state_handlers/sliver_state_handler.dart similarity index 68% rename from lib/widgets/sliver_state_handler.dart rename to lib/widgets/state_handlers/sliver_state_handler.dart index 1244695..dde4ee4 100644 --- a/lib/widgets/sliver_state_handler.dart +++ b/lib/widgets/state_handlers/sliver_state_handler.dart @@ -1,13 +1,13 @@ import 'package:didvan/models/enums.dart'; import 'package:didvan/providers/core_provider.dart'; -import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/state_handlers/empty_connection.dart'; import 'package:flutter/material.dart'; class SliverStateHandler extends SliverList { final T state; final Widget Function(BuildContext context, T state, int index) builder; final int childCount; - final VoidCallback? onRefresh; + final VoidCallback onRetry; final bool enableEmptyState; final Widget? emptyState; final Widget? placeholder; @@ -17,20 +17,28 @@ class SliverStateHandler extends SliverList { required this.state, required this.builder, required this.childCount, + required this.onRetry, this.itemPadding, this.placeholder, this.emptyState, this.enableEmptyState = false, - this.onRefresh, }) : super( key: key, delegate: SliverChildBuilderDelegate( (context, index) { if (state.appState == AppState.failed) { - return const DidvanText('مشکل اتصال'); + return SizedBox( + height: MediaQuery.of(context).size.height - 240, + child: EmptyConnection( + onRetry: onRetry, + ), + ); } - if (enableEmptyState) { - return emptyState; + if (enableEmptyState && state.appState == AppState.idle) { + return SizedBox( + height: MediaQuery.of(context).size.height - 240, + child: emptyState, + ); } if (state.appState == AppState.busy) { return Padding( @@ -44,7 +52,9 @@ class SliverStateHandler extends SliverList { ); }, childCount: state.appState == AppState.idle - ? childCount + ? enableEmptyState + ? 1 + : childCount : state.appState == AppState.busy ? 3 : 1, diff --git a/lib/widgets/state_handler.dart b/lib/widgets/state_handlers/state_handler.dart similarity index 88% rename from lib/widgets/state_handler.dart rename to lib/widgets/state_handlers/state_handler.dart index 16ad8ea..bb26748 100644 --- a/lib/widgets/state_handler.dart +++ b/lib/widgets/state_handlers/state_handler.dart @@ -1,12 +1,13 @@ import 'package:didvan/models/enums.dart'; import 'package:didvan/providers/core_provider.dart'; +import 'package:didvan/widgets/state_handlers/empty_connection.dart'; import 'package:flutter/material.dart'; import 'package:flutter_spinkit/flutter_spinkit.dart'; class StateHandler extends StatelessWidget { final T state; final Widget Function(BuildContext context, T state) builder; - final VoidCallback? onRefresh; + final VoidCallback onRetry; final bool enableEmptyState; final Widget? placeholder; final Widget? emptyState; @@ -14,11 +15,11 @@ class StateHandler extends StatelessWidget { const StateHandler({ Key? key, required this.builder, + required this.onRetry, + required this.state, this.emptyState, this.enableEmptyState = false, - this.onRefresh, this.topPadding = 0, - required this.state, this.placeholder, }) : super(key: key); @@ -42,7 +43,7 @@ class StateHandler extends StatelessWidget { color: Theme.of(context).colorScheme.primary, ); case AppState.failed: - return Container(); + return EmptyConnection(onRetry: onRetry); default: return Container(); } diff --git a/pubspec.lock b/pubspec.lock index efe1f1a..01f99dd 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -160,6 +160,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "3.3.0" + flutter_html: + dependency: "direct main" + description: + name: flutter_html + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.0-alpha.2" flutter_lints: dependency: "direct dev" description: @@ -378,6 +385,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.0.0" + numerus: + dependency: transitive + description: + name: numerus + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.1" octo_image: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 359f899..481f45b 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -58,6 +58,7 @@ dependencies: image_cropper: ^1.4.1 bot_toast: ^4.0.1 flutter_secure_storage: ^5.0.2 + flutter_html: ^3.0.0-alpha.2 dev_dependencies: flutter_test: @@ -103,6 +104,18 @@ flutter: - lib/assets/images/themes/theme-dark.svg - lib/assets/images/records/record-dark.svg - lib/assets/images/records/record-light.svg + - lib/assets/images/empty_states/bookmark-light.svg + - lib/assets/images/empty_states/chart-light.svg + - lib/assets/images/empty_states/chat-light.svg + - lib/assets/images/empty_states/connection-light.svg + - lib/assets/images/empty_states/result-light.svg + - lib/assets/images/empty_states/studio-light.svg + - lib/assets/images/empty_states/bookmark-dark.svg + - lib/assets/images/empty_states/chart-dark.svg + - lib/assets/images/empty_states/chat-dark.svg + - lib/assets/images/empty_states/connection-dark.svg + - lib/assets/images/empty_states/result-dark.svg + - lib/assets/images/empty_states/studio-dark.svg - lib/assets/animations/indicator-light.riv - lib/assets/animations/indicator-dark.riv From d29f6fa60e3d23ea5ae7cba85a82c81263f1f8c2 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Mon, 24 Jan 2022 02:26:43 +0330 Subject: [PATCH 146/273] component updates --- lib/widgets/bookmark_button.dart | 16 ++- lib/widgets/didvan/button.dart | 8 +- lib/widgets/didvan/chip.dart | 35 +++++ lib/widgets/didvan/page_view.dart | 176 ++++++++++++++++------- lib/widgets/didvan/scaffold.dart | 13 +- lib/widgets/didvan/text.dart | 3 + lib/widgets/floating_navigation_bar.dart | 38 ++++- lib/widgets/ink_wrapper.dart | 3 +- lib/widgets/skeleton_image.dart | 13 +- lib/widgets/tag_item.dart | 44 ++++++ 10 files changed, 268 insertions(+), 81 deletions(-) create mode 100644 lib/widgets/didvan/chip.dart create mode 100644 lib/widgets/tag_item.dart diff --git a/lib/widgets/bookmark_button.dart b/lib/widgets/bookmark_button.dart index 6ef9ca0..c7a72cd 100644 --- a/lib/widgets/bookmark_button.dart +++ b/lib/widgets/bookmark_button.dart @@ -6,12 +6,14 @@ class BookmarkButton extends StatefulWidget { final bool value; final VoidCallback onMark; final VoidCallback onUnmark; - const BookmarkButton( - {Key? key, - required this.value, - required this.onMark, - required this.onUnmark}) - : super(key: key); + final bool bigGestureSize; + const BookmarkButton({ + Key? key, + required this.value, + required this.onMark, + required this.onUnmark, + this.bigGestureSize = false, + }) : super(key: key); @override State createState() => _BookmarkButtonState(); @@ -35,7 +37,7 @@ class _BookmarkButtonState extends State { @override Widget build(BuildContext context) { return DidvanIconButton( - gestureSize: 24, + gestureSize: widget.bigGestureSize ? 32 : 24, icon: _value ? DidvanIcons.bookmark_solid : DidvanIcons.bookmark_regular, onPressed: () { setState(() { diff --git a/lib/widgets/didvan/button.dart b/lib/widgets/didvan/button.dart index 7b3122b..9160709 100644 --- a/lib/widgets/didvan/button.dart +++ b/lib/widgets/didvan/button.dart @@ -7,14 +7,18 @@ import 'package:flutter/material.dart'; class DidvanButton extends StatelessWidget { final VoidCallback? onPressed; final String? title; + final double? width; final ButtonStyleMode style; final bool enabled; + final double? height; const DidvanButton({ Key? key, this.onPressed, this.title, this.style = ButtonStyleMode.primary, this.enabled = true, + this.width, + this.height = 48, }) : super(key: key); @override @@ -42,8 +46,8 @@ class DidvanButton extends StatelessWidget { default: } return SizedBox( - height: 48, - width: double.infinity, + height: height, + width: width ?? double.infinity, child: MaterialButton( shape: RoundedRectangleBorder( borderRadius: DesignConfig.lowBorderRadius, diff --git a/lib/widgets/didvan/chip.dart b/lib/widgets/didvan/chip.dart new file mode 100644 index 0000000..358bcef --- /dev/null +++ b/lib/widgets/didvan/chip.dart @@ -0,0 +1,35 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/ink_wrapper.dart'; +import 'package:flutter/material.dart'; + +class DidvanChip extends StatelessWidget { + final String label; + final VoidCallback? onTap; + const DidvanChip({ + Key? key, + required this.label, + this.onTap, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return InkWrapper( + borderRadius: DesignConfig.highBorderRadius, + onPressed: onTap, + child: Container( + padding: const EdgeInsets.symmetric(vertical: 2, horizontal: 8), + decoration: BoxDecoration( + borderRadius: DesignConfig.highBorderRadius, + color: Theme.of(context).colorScheme.primary, + ), + child: DidvanText( + label, + style: Theme.of(context).textTheme.caption, + color: Theme.of(context).colorScheme.white, + ), + ), + ); + } +} diff --git a/lib/widgets/didvan/page_view.dart b/lib/widgets/didvan/page_view.dart index f16d70b..f4cbfa5 100644 --- a/lib/widgets/didvan/page_view.dart +++ b/lib/widgets/didvan/page_view.dart @@ -1,13 +1,19 @@ import 'package:carousel_slider/carousel_slider.dart'; +import 'package:didvan/utils/date_time.dart'; import 'package:didvan/widgets/didvan/card.dart'; +import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/skeleton_image.dart'; +import 'package:didvan/widgets/tag_item.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_html/flutter_html.dart'; class DidvanPageView extends StatefulWidget { final List items; final int initialIndex; + final bool isRadar; final ScrollController? scrollController; + final void Function(int index) onPageChanged; const DidvanPageView({ Key? key, @@ -15,6 +21,7 @@ class DidvanPageView extends StatefulWidget { required this.items, this.scrollController, required this.onPageChanged, + required this.isRadar, }) : super(key: key); @override @@ -36,62 +43,76 @@ class _DidvanPageViewState extends State { viewportFraction: 0.94, enableInfiniteScroll: false, ), - itemBuilder: (context, index, realIndex) => SizedBox( - height: MediaQuery.of(context).size.height, - child: SingleChildScrollView( - controller: index == 1 ? widget.scrollController : null, - physics: const BouncingScrollPhysics(), - padding: EdgeInsets.only( - left: 4, - right: 4, - top: 16 + deviceTopPadding, - bottom: 92, - ), - child: DidvanCard( - padding: EdgeInsets.zero, - enableBorder: false, - child: Builder( - builder: (context) { - final item = widget.items[index]; - if (item == null) { - return const SizedBox(); - } - return Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - SkeletonImage( - imageUrl: item.image, - aspectRatio: 16 / 9, - ), - const SizedBox(height: 20), - for (var i = 0; i < item.contents.length; i++) + itemBuilder: (context, index, realIndex) => Directionality( + textDirection: TextDirection.rtl, + child: SizedBox( + height: MediaQuery.of(context).size.height, + child: SingleChildScrollView( + controller: index == 1 ? widget.scrollController : null, + physics: const BouncingScrollPhysics(), + padding: EdgeInsets.only( + left: 4, + right: 4, + top: 16 + deviceTopPadding, + bottom: 92, + ), + child: DidvanCard( + padding: EdgeInsets.zero, + enableBorder: false, + child: Builder( + builder: (context) { + final item = widget.items[index]; + if (item == null) { + return const SizedBox(); + } + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + SkeletonImage( + imageUrl: item.image, + aspectRatio: 16 / 9, + ), + const SizedBox(height: 20), Padding( - padding: const EdgeInsets.symmetric( - horizontal: 16, - vertical: 4, - ), - child: Builder( - builder: (context) { - final content = item.contents[i]; - if (content.text != null) { - return DidvanText( - item.contents[i].text!, - ); - } - if (content.image != null) { - return SkeletonImage( - imageUrl: content.image!, - aspectRatio: 16 / 9, - ); - } - return const SizedBox(); - }, + padding: const EdgeInsets.symmetric(horizontal: 16), + child: DidvanText( + item.title, + style: Theme.of(context).textTheme.subtitle1, ), ), - const SizedBox(height: 20), - ], - ); - }, + const SizedBox(height: 8), + Padding( + padding: const EdgeInsets.symmetric(horizontal: 16), + child: _subtitle(item), + ), + for (var i = 0; i < item.contents.length; i++) + Padding( + padding: const EdgeInsets.symmetric( + horizontal: 16, + vertical: 4, + ), + child: _contentBuilder(item, i), + ), + if (item.tags.isNotEmpty) const SizedBox(height: 20), + Padding( + padding: const EdgeInsets.symmetric(horizontal: 16), + child: Wrap( + spacing: 8, + runSpacing: 8, + children: [ + for (var i = 0; i < item.tags.length; i++) + TagItem(label: item.tags[i].label), + ], + ), + ), + const Padding( + padding: EdgeInsets.symmetric(horizontal: 16), + child: DidvanDivider(), + ), + ], + ); + }, + ), ), ), ), @@ -99,4 +120,53 @@ class _DidvanPageViewState extends State { ), ); } + + Widget _contentBuilder(dynamic item, int index) { + final content = item.contents[index]; + if (content.text != null) { + return Html(data: item.contents[index].text!); + } + if (content.image != null) { + return SkeletonImage( + imageUrl: content.image!, + aspectRatio: 16 / 9, + ); + } + return const SizedBox(); + } + + Widget _subtitle(dynamic item) { + if (widget.isRadar) { + return Wrap( + crossAxisAlignment: WrapCrossAlignment.center, + children: [ + DidvanText( + 'رادار ', + style: Theme.of(context).textTheme.caption, + ), + for (var i = 0; i < item.categories.length; i++) + DidvanText( + item.categories[i].label + + ' - ' + + DateTimeUtils.momentGenerator(item.createdAt) + + '${i != item.categories.length - 1 ? '،' : ''} ', + style: Theme.of(context).textTheme.caption, + ), + ], + ); + } else { + return Row( + children: [ + DidvanText( + item.reference, + style: Theme.of(context).textTheme.caption, + ), + DidvanText( + ' - ' + DateTimeUtils.momentGenerator(item.createdAt), + style: Theme.of(context).textTheme.caption, + ), + ], + ); + } + } } diff --git a/lib/widgets/didvan/scaffold.dart b/lib/widgets/didvan/scaffold.dart index 55f7d27..6e00a7a 100644 --- a/lib/widgets/didvan/scaffold.dart +++ b/lib/widgets/didvan/scaffold.dart @@ -7,25 +7,29 @@ class DidvanScaffold extends StatelessWidget { final List? children; final AppBarData appBarData; final EdgeInsets padding; + final Color? backgroundColor; const DidvanScaffold({ Key? key, this.slivers, required this.appBarData, this.children, this.padding = const EdgeInsets.symmetric(horizontal: 16), + this.backgroundColor, }) : super(key: key); @override Widget build(BuildContext context) { final double statusBarHeight = MediaQuery.of(context).padding.top; return Scaffold( + backgroundColor: backgroundColor, body: Padding( padding: EdgeInsets.only(top: statusBarHeight), child: CustomScrollView( slivers: [ SliverAppBar( toolbarHeight: kToolbarHeight, - backgroundColor: Theme.of(context).backgroundColor, + backgroundColor: + backgroundColor ?? Theme.of(context).colorScheme.background, automaticallyImplyLeading: false, pinned: true, flexibleSpace: DidvanAppBar(appBarData: appBarData), @@ -43,7 +47,12 @@ class DidvanScaffold extends StatelessWidget { ), ), ), - if (slivers != null) ...slivers!, + if (slivers != null) + for (var i = 0; i < slivers!.length; i++) + SliverPadding( + padding: padding, + sliver: slivers![i], + ), ], ), ), diff --git a/lib/widgets/didvan/text.dart b/lib/widgets/didvan/text.dart index 286b1b7..13dc23d 100644 --- a/lib/widgets/didvan/text.dart +++ b/lib/widgets/didvan/text.dart @@ -9,6 +9,7 @@ class DidvanText extends StatelessWidget { final TextAlign textAlign; final int? maxLines; final bool isEnglishFont; + final TextOverflow? overflow; const DidvanText( this.text, { @@ -20,6 +21,7 @@ class DidvanText extends StatelessWidget { this.textAlign = TextAlign.right, this.maxLines, this.isEnglishFont = false, + this.overflow, }) : super(key: key); @override @@ -31,6 +33,7 @@ class DidvanText extends StatelessWidget { fontWeight: fontWeight, fontSize: fontSize, )).copyWith(fontFamily: isEnglishFont ? 'Dana' : null), + overflow: overflow, textAlign: textAlign, maxLines: maxLines, ); diff --git a/lib/widgets/floating_navigation_bar.dart b/lib/widgets/floating_navigation_bar.dart index 9325abb..9a9bf97 100644 --- a/lib/widgets/floating_navigation_bar.dart +++ b/lib/widgets/floating_navigation_bar.dart @@ -8,9 +8,11 @@ import 'package:didvan/pages/home/settings/widgets/menu_item.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/utils/action_sheet.dart'; import 'package:didvan/widgets/bookmark_button.dart'; +import 'package:didvan/widgets/didvan/chip.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/icon_button.dart'; import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/item_title.dart'; import 'package:flutter/material.dart'; class FloatingNavigationBar extends StatefulWidget { @@ -116,6 +118,7 @@ class _FloatingNavigationBarState extends State { value: _item.marked, onMark: widget.onMark, onUnmark: widget.onUnmark, + bigGestureSize: true, ), SizedBox( width: 48, @@ -127,7 +130,6 @@ class _FloatingNavigationBarState extends State { _item.comments.toString(), color: foregroundColor, ), - const SizedBox(width: 4), DidvanIconButton( gestureSize: 32, onPressed: () => Navigator.of(context).pushNamed( @@ -149,6 +151,7 @@ class _FloatingNavigationBarState extends State { value: _item.marked, onMark: widget.onMark, onUnmark: widget.onUnmark, + bigGestureSize: true, ), if (_isRadar) DidvanIconButton( @@ -166,16 +169,43 @@ class _FloatingNavigationBarState extends State { ActionSheetUtils.showBottomSheet( data: ActionSheetData( content: Column( + crossAxisAlignment: CrossAxisAlignment.start, children: [ - MenuItem( + const ItemTitle( title: 'ارتباط با سردبیر', - onTap: () {}, icon: DidvanIcons.profile_regular, ), + const SizedBox(height: 16), + for (var i = 0; i < _item.categories.length; i++) ...[ + Padding( + padding: const EdgeInsets.only(right: 20), + child: MenuItem( + titleWidget: DidvanChip(label: _item.categories[i].label), + onTap: () { + Navigator.of(context).pop(); + Navigator.of(context).pushNamed( + Routes.direct, + arguments: _item.categories[i].id, + ); + }, + ), + ), + if (i != _item.categories.length - 1) + const Padding( + padding: EdgeInsets.only(right: 20), + child: DidvanDivider(verticalPadding: 8), + ), + ], const DidvanDivider(), MenuItem( title: 'گزارش اشکال', - onTap: () {}, + onTap: () { + Navigator.of(context).pop(); + Navigator.of(context).pushNamed( + Routes.direct, + arguments: 0, + ); + }, icon: DidvanIcons.description_regular, ), ], diff --git a/lib/widgets/ink_wrapper.dart b/lib/widgets/ink_wrapper.dart index 547709d..f63a044 100644 --- a/lib/widgets/ink_wrapper.dart +++ b/lib/widgets/ink_wrapper.dart @@ -1,3 +1,4 @@ +import 'package:didvan/config/design_config.dart'; import 'package:flutter/material.dart'; class InkWrapper extends StatelessWidget { @@ -13,7 +14,7 @@ class InkWrapper extends StatelessWidget { this.highlightColor, required this.child, this.onPressed, - this.borderRadius, + this.borderRadius = DesignConfig.lowBorderRadius, }) : super(key: key); @override diff --git a/lib/widgets/skeleton_image.dart b/lib/widgets/skeleton_image.dart index eda8f80..c65477b 100644 --- a/lib/widgets/skeleton_image.dart +++ b/lib/widgets/skeleton_image.dart @@ -6,12 +6,10 @@ import 'package:didvan/widgets/shimmer_placeholder.dart'; import 'package:http/http.dart' as http; import 'package:cached_network_image/cached_network_image.dart'; import 'package:didvan/config/design_config.dart'; -import 'package:didvan/config/theme_data.dart'; import 'package:didvan/services/network/request.dart'; import 'package:didvan/services/network/request_helper.dart'; import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; -import 'package:skeleton_text/skeleton_text.dart'; class SkeletonImage extends StatefulWidget { final String imageUrl; @@ -110,16 +108,7 @@ class _SkeletonImageState extends State { ), ), progressIndicatorBuilder: (context, url, progress) => - SkeletonAnimation( - shimmerColor: Theme.of(context).colorScheme.border, - borderRadius: widget.borderRadius ?? DesignConfig.lowBorderRadius, - child: Container( - decoration: BoxDecoration( - color: Theme.of(context).colorScheme.disabledBackground, - borderRadius: widget.borderRadius, - ), - ), - ), + const ShimmerPlaceholder(), ); }), ); diff --git a/lib/widgets/tag_item.dart b/lib/widgets/tag_item.dart new file mode 100644 index 0000000..24d9fa3 --- /dev/null +++ b/lib/widgets/tag_item.dart @@ -0,0 +1,44 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; + +class TagItem extends StatelessWidget { + final String label; + + const TagItem({ + Key? key, + required this.label, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return Container( + padding: const EdgeInsets.symmetric( + vertical: 4, + horizontal: 8, + ), + decoration: BoxDecoration( + borderRadius: DesignConfig.lowBorderRadius, + border: Border.all( + color: Theme.of(context).colorScheme.focusedBorder, + ), + ), + child: Row( + mainAxisSize: MainAxisSize.min, + children: [ + Icon( + DidvanIcons.hashtag_regular, + color: Theme.of(context).colorScheme.focusedBorder, + ), + DidvanText( + label, + color: Theme.of(context).colorScheme.focusedBorder, + style: Theme.of(context).textTheme.bodyText1, + ), + ], + ), + ); + } +} From 2e1365d03bc06466df5e6c38c78bd83a40ac2840 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Mon, 24 Jan 2022 03:07:28 +0330 Subject: [PATCH 147/273] D1APP-64 statusbar color --- lib/config/design_config.dart | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/lib/config/design_config.dart b/lib/config/design_config.dart index 5f60b56..012a7f0 100644 --- a/lib/config/design_config.dart +++ b/lib/config/design_config.dart @@ -35,17 +35,16 @@ class DesignConfig { static const Duration lowAnimationDuration = Duration(milliseconds: 300); static const Duration mediumAnimationDuration = Duration(milliseconds: 350); - static SystemUiOverlayStyle get systemUiOverlayStyle { - return SystemUiOverlayStyle( - statusBarIconBrightness: - brightness == Brightness.dark ? Brightness.light : Brightness.dark, - statusBarColor: Colors.transparent, - systemNavigationBarColor: Theme.of(context).colorScheme.surface, - systemNavigationBarDividerColor: Colors.transparent, - systemNavigationBarIconBrightness: - brightness == Brightness.dark ? Brightness.light : Brightness.dark, - ); - } + static SystemUiOverlayStyle get systemUiOverlayStyle => SystemUiOverlayStyle( + statusBarIconBrightness: + brightness == Brightness.dark ? Brightness.light : Brightness.dark, + statusBarColor: + Theme.of(context).colorScheme.background.withOpacity(0.5), + systemNavigationBarColor: Theme.of(context).colorScheme.surface, + systemNavigationBarDividerColor: Colors.transparent, + systemNavigationBarIconBrightness: + brightness == Brightness.dark ? Brightness.light : Brightness.dark, + ); static void updateSystemUiOverlayStyle() { Future.delayed( From 33dabd7ab507df27118e24455d2dd7d206c078d1 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Mon, 24 Jan 2022 16:01:56 +0330 Subject: [PATCH 148/273] D1APP-48 model updates --- lib/models/comment/comment.dart | 14 ++++---- lib/models/comment/feedback.dart | 6 ++-- lib/models/comment/reply.dart | 12 ++++--- lib/models/comment/user.dart | 7 ++-- lib/models/item_overview.dart | 57 ++++++++++++++++++++++++++++++++ lib/models/requests/news.dart | 13 ++++++++ lib/models/requests/radar.dart | 15 +++++++++ 7 files changed, 107 insertions(+), 17 deletions(-) create mode 100644 lib/models/item_overview.dart create mode 100644 lib/models/requests/news.dart create mode 100644 lib/models/requests/radar.dart diff --git a/lib/models/comment/comment.dart b/lib/models/comment/comment.dart index 51cdaf7..4a53a4a 100644 --- a/lib/models/comment/comment.dart +++ b/lib/models/comment/comment.dart @@ -2,17 +2,17 @@ import 'feedback.dart'; import 'reply.dart'; import 'user.dart'; -class Comment { +class CommentData { final int id; final String text; final String createdAt; final bool liked; final bool disliked; - final Feedback feedback; - final User user; + FeedbackData feedback; + final UserOverview user; final List replies; - Comment({ + CommentData({ required this.id, required this.text, required this.createdAt, @@ -23,14 +23,14 @@ class Comment { required this.replies, }); - factory Comment.fromJson(Map json) => Comment( + factory CommentData.fromJson(Map json) => CommentData( id: json['id'], text: json['text'], createdAt: json['createdAt'], liked: json['liked'], disliked: json['disliked'], - feedback: Feedback.fromJson(json['feedback']), - user: User.fromJson(json['user']), + feedback: FeedbackData.fromJson(json['feedback']), + user: UserOverview.fromJson(json['user']), replies: List.from( json['replies'].map( (reply) => Reply.fromJson(reply), diff --git a/lib/models/comment/feedback.dart b/lib/models/comment/feedback.dart index 57e756b..d51d67f 100644 --- a/lib/models/comment/feedback.dart +++ b/lib/models/comment/feedback.dart @@ -1,10 +1,10 @@ -class Feedback { +class FeedbackData { final int like; final int dislike; - const Feedback({required this.like, required this.dislike}); + const FeedbackData({required this.like, required this.dislike}); - factory Feedback.fromJson(Map json) => Feedback( + factory FeedbackData.fromJson(Map json) => FeedbackData( like: json['like'], dislike: json['dislike'], ); diff --git a/lib/models/comment/reply.dart b/lib/models/comment/reply.dart index 3ba0185..02ce66e 100644 --- a/lib/models/comment/reply.dart +++ b/lib/models/comment/reply.dart @@ -7,8 +7,9 @@ class Reply { final String createdAt; final bool liked; final bool disliked; - final Feedback feedback; - final User user; + final FeedbackData feedback; + final UserOverview user; + final UserOverview toUser; const Reply({ required this.id, @@ -18,6 +19,7 @@ class Reply { required this.disliked, required this.feedback, required this.user, + required this.toUser, }); factory Reply.fromJson(Map json) => Reply( @@ -26,8 +28,9 @@ class Reply { createdAt: json['createdAt'], liked: json['liked'], disliked: json['disliked'], - feedback: Feedback.fromJson(json['feedback']), - user: User.fromJson(json['user']), + feedback: FeedbackData.fromJson(json['feedback']), + user: UserOverview.fromJson(json['user']), + toUser: UserOverview.fromJson(json['toUser']), ); Map toJson() => { @@ -38,5 +41,6 @@ class Reply { 'disliked': disliked, 'feedback': feedback.toJson(), 'user': user.toJson(), + 'toUser': toUser.toJson(), }; } diff --git a/lib/models/comment/user.dart b/lib/models/comment/user.dart index 10ebbf3..3483134 100644 --- a/lib/models/comment/user.dart +++ b/lib/models/comment/user.dart @@ -1,11 +1,12 @@ -class User { +class UserOverview { final int id; final String fullName; final String? photo; - const User({required this.id, required this.fullName, required this.photo}); + const UserOverview( + {required this.id, required this.fullName, required this.photo}); - factory User.fromJson(Map json) => User( + factory UserOverview.fromJson(Map json) => UserOverview( id: json['id'], fullName: json['fullName'], photo: json['photo'], diff --git a/lib/models/item_overview.dart b/lib/models/item_overview.dart new file mode 100644 index 0000000..50ddec4 --- /dev/null +++ b/lib/models/item_overview.dart @@ -0,0 +1,57 @@ +import 'package:didvan/models/category.dart'; + +class ItemOverview { + final int id; + final String title; + final String image; + final String description; + final int timeToRead; + final String reference; + final bool forManagers; + final String createdAt; + final String type; + final List categories; + + const ItemOverview({ + required this.id, + required this.title, + required this.image, + required this.description, + required this.timeToRead, + required this.reference, + required this.forManagers, + required this.createdAt, + required this.type, + required this.categories, + }); + + factory ItemOverview.fromJson(Map json) => ItemOverview( + id: json['id'], + title: json['title'], + image: json['image'], + description: json['description'], + timeToRead: json['timeToRead'], + reference: json['reference'], + forManagers: json['forManagers'], + createdAt: json['createdAt'], + type: json['type'], + categories: List.from( + json['categories'].map( + (cat) => Category.fromJson(cat), + ), + ), + ); + + Map toJson() => { + 'id': id, + 'title': title, + 'image': image, + 'description': description, + 'timeToRead': timeToRead, + 'reference': reference, + 'forManagers': forManagers, + 'createdAt': createdAt, + 'type': type, + 'categories': categories.map((e) => e.toJson()).toList(), + }; +} diff --git a/lib/models/requests/news.dart b/lib/models/requests/news.dart new file mode 100644 index 0000000..1e17e56 --- /dev/null +++ b/lib/models/requests/news.dart @@ -0,0 +1,13 @@ +class NewsRequestArgs { + final int page; + final String? startDate; + final String? endDate; + final String? search; + + const NewsRequestArgs({ + required this.page, + this.startDate, + this.endDate, + this.search, + }); +} diff --git a/lib/models/requests/radar.dart b/lib/models/requests/radar.dart new file mode 100644 index 0000000..9a28fae --- /dev/null +++ b/lib/models/requests/radar.dart @@ -0,0 +1,15 @@ +class RadarRequestArgs { + final int page; + final List categories; + final String? startDate; + final String? endDate; + final String? search; + + const RadarRequestArgs({ + required this.page, + this.categories = const [], + this.startDate, + this.endDate, + this.search, + }); +} From 4f4a709562eae5c8a0b2fbae0dd74fd3046123fd Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Mon, 24 Jan 2022 22:06:04 +0330 Subject: [PATCH 149/273] D1APP-61 comments --- lib/pages/home/comments/comments.dart | 213 +++++++++++++- lib/pages/home/comments/comments_state.dart | 107 ++++++- .../home/comments/widgets/comment_item.dart | 262 ++++++++++++++++++ 3 files changed, 573 insertions(+), 9 deletions(-) create mode 100644 lib/pages/home/comments/widgets/comment_item.dart diff --git a/lib/pages/home/comments/comments.dart b/lib/pages/home/comments/comments.dart index 5846b44..9aafbac 100644 --- a/lib/pages/home/comments/comments.dart +++ b/lib/pages/home/comments/comments.dart @@ -1,6 +1,15 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/view/app_bar_data.dart'; import 'package:didvan/pages/home/comments/comments_state.dart'; +import 'package:didvan/pages/home/comments/widgets/comment_item.dart'; +import 'package:didvan/widgets/animated_visibility.dart'; +import 'package:didvan/widgets/didvan/icon_button.dart'; import 'package:didvan/widgets/didvan/scaffold.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/shimmer_placeholder.dart'; +import 'package:didvan/widgets/state_handlers/sliver_state_handler.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; @@ -19,8 +28,9 @@ class _CommentsState extends State { @override void initState() { final state = context.read(); - state.id = widget.pageData['id']; + state.itemId = widget.pageData['id']; state.isRadar = widget.pageData['isRadar']; + state.onCommentAdded = widget.pageData['onCommentAdded']; Future.delayed( Duration.zero, () => state.getComments(), @@ -30,8 +40,205 @@ class _CommentsState extends State { @override Widget build(BuildContext context) { - return DidvanScaffold( - appBarData: AppBarData(), + return Material( + child: Stack( + children: [ + DidvanScaffold( + backgroundColor: Theme.of(context).colorScheme.surface, + appBarData: AppBarData( + hasBack: true, + title: 'نظرات', + subtitle: widget.pageData['title'], + ), + padding: const EdgeInsets.only(left: 16, right: 16, bottom: 92), + slivers: [ + Consumer( + builder: (context, state, child) => + SliverStateHandler( + onRetry: state.getComments, + state: state, + itemPadding: const EdgeInsets.symmetric(vertical: 16), + childCount: state.comments.length, + placeholder: const _CommentPlaceholder(), + builder: (context, state, index) => Comment( + comment: state.comments[index], + ), + ), + ), + ], + ), + Positioned( + bottom: MediaQuery.of(context).viewInsets.bottom, + left: 0, + right: 0, + child: const _MessageBox(), + ), + ], + ), + ); + } +} + +class _MessageBox extends StatefulWidget { + const _MessageBox({Key? key}) : super(key: key); + + @override + State<_MessageBox> createState() => _MessageBoxState(); +} + +class _MessageBoxState extends State<_MessageBox> { + final _controller = TextEditingController(); + + @override + Widget build(BuildContext context) { + final state = context.watch(); + return Column( + children: [ + AnimatedVisibility( + duration: DesignConfig.lowAnimationDuration, + isVisible: state.replyingTo != null, + child: Container( + padding: const EdgeInsets.all(8), + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.surface, + border: Border( + top: BorderSide( + color: Theme.of(context).colorScheme.border, + ), + ), + ), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + if (state.replyingTo != null) + DidvanText( + 'پاسخ به ${state.replyingTo!.fullName}:', + color: Theme.of(context).colorScheme.caption, + style: Theme.of(context).textTheme.caption, + ), + const Spacer(), + DidvanIconButton( + gestureSize: 24, + color: Theme.of(context).colorScheme.caption, + icon: DidvanIcons.close_regular, + onPressed: () { + state.commentId = null; + state.replyingTo = null; + state.update(); + }, + ), + ], + ), + ), + ), + Container( + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.surface, + border: Border( + top: BorderSide( + color: Theme.of(context).colorScheme.border, + ), + ), + ), + child: Row( + children: [ + DidvanIconButton( + onPressed: () => _onSend(state), + icon: DidvanIcons.send_solid, + size: 24, + color: Theme.of(context).colorScheme.focusedBorder, + ), + Expanded( + child: TextField( + controller: _controller, + textInputAction: TextInputAction.send, + style: Theme.of(context).textTheme.bodyText2, + onEditingComplete: () {}, + onSubmitted: (value) => _onSend(state), + decoration: InputDecoration( + border: InputBorder.none, + hintText: 'پیام خود را ارسال کنید', + hintStyle: Theme.of(context).textTheme.caption!.copyWith( + color: Theme.of(context).colorScheme.disabledText), + ), + onChanged: (value) => state.text = value, + ), + ), + ], + ), + ), + ], + ); + } + + void _onSend(CommentsState state) { + if (state.text.replaceAll(' ', '').isNotEmpty) { + state.addComment(); + _controller.text = ''; + } + } +} + +class _CommentPlaceholder extends StatelessWidget { + const _CommentPlaceholder({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const ShimmerPlaceholder( + height: 24, + width: 24, + borderRadius: DesignConfig.highBorderRadius, + ), + const SizedBox(width: 16), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: const [ + ShimmerPlaceholder( + height: 20, + width: 100, + ), + ShimmerPlaceholder( + height: 14, + width: 100, + ), + ], + ), + const SizedBox(height: 12), + const ShimmerPlaceholder( + height: 16, + width: double.infinity, + ), + const SizedBox(height: 8), + const ShimmerPlaceholder( + height: 16, + width: 200, + ), + const SizedBox(height: 8), + Row( + mainAxisAlignment: MainAxisAlignment.end, + children: const [ + ShimmerPlaceholder( + height: 24, + width: 48, + ), + SizedBox(width: 8), + ShimmerPlaceholder( + height: 24, + width: 48, + ), + ], + ), + ], + ), + ), + ], ); } } diff --git a/lib/pages/home/comments/comments_state.dart b/lib/pages/home/comments/comments_state.dart index 5f48e8a..d079c57 100644 --- a/lib/pages/home/comments/comments_state.dart +++ b/lib/pages/home/comments/comments_state.dart @@ -1,31 +1,126 @@ +import 'dart:math'; + +import 'package:didvan/config/design_config.dart'; import 'package:didvan/models/comment/comment.dart'; +import 'package:didvan/models/comment/feedback.dart'; +import 'package:didvan/models/comment/reply.dart'; +import 'package:didvan/models/comment/user.dart'; import 'package:didvan/models/enums.dart'; import 'package:didvan/providers/core_provider.dart'; +import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/services/network/request.dart'; import 'package:didvan/services/network/request_helper.dart'; +import 'package:flutter/cupertino.dart'; +import 'package:provider/provider.dart'; class CommentsState extends CoreProvier { - final List comments = []; + String text = ''; + int? commentId; + UserOverview? replyingTo; + late VoidCallback onCommentAdded; + + final List comments = []; + final Map> _feedbackQueue = {}; bool isRadar = true; - int id = 0; + int itemId = 0; Future getComments() async { appState = AppState.busy; final service = RequestService( isRadar - ? RequestHelper.radarComments(id) - : RequestHelper.newsComments(id), + ? RequestHelper.radarComments(itemId) + : RequestHelper.newsComments(itemId), ); await service.httpGet(); if (service.isSuccess) { - final messages = service.result['messages']; + final messages = service.result['comments']; for (var i = 0; i < messages.length; i++) { - comments.add(Comment.fromJson(messages[i])); + comments.add(CommentData.fromJson(messages[i])); } appState = AppState.idle; return; } appState = AppState.failed; } + + Future feedback(int id, bool like, bool dislike) async { + _feedbackQueue.addAll({id: MapEntry(like, dislike)}); + Future.delayed(const Duration(milliseconds: 500), () async { + if (!_feedbackQueue.containsKey(id)) return; + final service = RequestService( + isRadar + ? RequestHelper.feedbackRadarComment(itemId, id) + : RequestHelper.feedbackNewsComment(itemId, id), + body: { + 'like': _feedbackQueue[id]!.key, + 'dislike': _feedbackQueue[id]!.value, + }); + await service.put(); + _feedbackQueue.remove(id); + }); + } + + Future addComment() async { + final user = DesignConfig.context.read().user; + if (replyingTo != null) { + final coment = comments.firstWhere((comment) => comment.id == commentId); + coment.replies.add( + Reply( + id: Random().nextInt(1000), + text: text, + createdAt: DateTime.now().toString(), + liked: false, + disliked: false, + feedback: const FeedbackData(like: 0, dislike: 0), + toUser: replyingTo!, + user: UserOverview( + id: user.id, + fullName: user.fullName, + photo: user.photo, + ), + ), + ); + } else { + comments.insert( + 0, + CommentData( + id: Random().nextInt(1000), + text: text, + createdAt: DateTime.now().toString(), + liked: false, + disliked: false, + feedback: const FeedbackData(like: 0, dislike: 0), + user: UserOverview( + id: user.id, + fullName: user.fullName, + photo: user.photo, + ), + replies: [], + ), + ); + } + + onCommentAdded(); + + final body = {}; + + if (commentId != null) { + body.addAll({'commentId': commentId}); + } + if (replyingTo != null) { + body.addAll({'replyUserId': replyingTo!.id}); + } + body.addAll({'text': text}); + final service = RequestService( + isRadar + ? RequestHelper.addRadarComment(itemId) + : RequestHelper.addNewsComment(itemId), + body: body); + commentId = null; + replyingTo = null; + update(); + await service.post(); + update(); + } } diff --git a/lib/pages/home/comments/widgets/comment_item.dart b/lib/pages/home/comments/widgets/comment_item.dart new file mode 100644 index 0000000..96e0a33 --- /dev/null +++ b/lib/pages/home/comments/widgets/comment_item.dart @@ -0,0 +1,262 @@ +import 'package:didvan/config/design_config.dart'; +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/models/comment/comment.dart'; +import 'package:didvan/pages/home/comments/comments_state.dart'; +import 'package:didvan/utils/date_time.dart'; +import 'package:didvan/widgets/animated_visibility.dart'; +import 'package:didvan/widgets/didvan/icon_button.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/ink_wrapper.dart'; +import 'package:didvan/widgets/skeleton_image.dart'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; + +class Comment extends StatefulWidget { + final CommentData comment; + const Comment({ + Key? key, + required this.comment, + }) : super(key: key); + + @override + State createState() => CommentState(); +} + +class CommentState extends State { + late final CommentsState state; + + bool _showSubComments = false; + + CommentData get _comment => widget.comment; + + @override + void initState() { + state = context.read(); + super.initState(); + } + + @override + Widget build(BuildContext context) { + return Column( + children: [ + _commentBuilder(comment: _comment), + if (_comment.replies.isNotEmpty) const SizedBox(height: 16), + for (var i = 0; i < _comment.replies.length; i++) + AnimatedVisibility( + duration: DesignConfig.lowAnimationDuration, + isVisible: _showSubComments, + child: _commentBuilder( + isSubComment: true, + comment: _comment.replies[i], + ), + ), + ], + ); + } + + Widget _commentBuilder({required comment, bool isSubComment = false}) => + Container( + decoration: BoxDecoration( + border: Border( + right: isSubComment + ? BorderSide(color: Theme.of(context).colorScheme.caption) + : BorderSide.none, + ), + ), + child: Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + if (isSubComment) const SizedBox(width: 12), + if (comment.user.photo == null) + const Icon(DidvanIcons.avatar_light), + if (comment.user.photo != null) + SkeletonImage( + imageUrl: comment.user.photo, + height: 24, + width: 24, + borderRadius: DesignConfig.highBorderRadius, + ), + const SizedBox(width: 12), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + DidvanText( + comment.user.fullName, + style: Theme.of(context).textTheme.bodyText1, + ), + DidvanText( + DateTimeUtils.momentGenerator(comment.createdAt), + style: Theme.of(context).textTheme.caption, + color: Theme.of(context).colorScheme.caption, + ), + ], + ), + const SizedBox(height: 8), + if (isSubComment) + DidvanText( + 'پاسخ به ${comment.toUser.fullName}', + style: Theme.of(context).textTheme.caption, + color: Theme.of(context).colorScheme.caption, + ), + const SizedBox(height: 8), + DidvanText(comment.text), + const SizedBox(height: 8), + Row( + children: [ + InkWrapper( + onPressed: () { + state.commentId = _comment.id; + state.replyingTo = comment.user; + state.update(); + }, + child: DidvanText( + 'پاسخ', + style: Theme.of(context).textTheme.bodyText1, + color: Theme.of(context).colorScheme.primary, + ), + ), + if (!isSubComment) const SizedBox(width: 20), + if (!isSubComment && comment.replies.isNotEmpty) + InkWrapper( + onPressed: () => setState( + () => _showSubComments = !_showSubComments, + ), + child: Row( + children: [ + DidvanText( + 'پاسخ‌ها(${comment.replies.length})', + style: Theme.of(context).textTheme.bodyText1, + color: Theme.of(context).colorScheme.primary, + ), + AnimatedRotation( + duration: DesignConfig.lowAnimationDuration, + turns: _showSubComments ? 0.5 : 0, + child: Icon( + DidvanIcons.angle_down_regular, + color: Theme.of(context).colorScheme.primary, + ), + ), + ], + ), + ), + const Spacer(), + _FeedbackButtons( + likeCount: comment.feedback.like, + dislikeCount: comment.feedback.dislike, + likeValue: comment.liked, + dislikeValue: comment.disliked, + onFeedback: (like, dislike) => + state.feedback(comment.id, like, dislike), + ), + ], + ), + ], + ), + ), + ], + ), + ); +} + +class _FeedbackButtons extends StatefulWidget { + final int likeCount; + final int dislikeCount; + final bool likeValue; + final bool dislikeValue; + final void Function(bool like, bool dislike) onFeedback; + const _FeedbackButtons({ + Key? key, + required this.onFeedback, + required this.likeCount, + required this.dislikeCount, + required this.likeValue, + required this.dislikeValue, + }) : super(key: key); + + @override + State<_FeedbackButtons> createState() => _FeedbackButtonsState(); +} + +class _FeedbackButtonsState extends State<_FeedbackButtons> { + late bool _likeValue; + late bool _dislikeValue; + late int _likeCount; + late int _dislikeCount; + + @override + void initState() { + _likeValue = widget.likeValue; + _dislikeValue = widget.dislikeValue; + _likeCount = widget.likeCount; + _dislikeCount = widget.dislikeCount; + super.initState(); + } + + @override + Widget build(BuildContext context) { + return Row( + children: [ + DidvanText( + _likeCount.toString(), + style: Theme.of(context).textTheme.caption, + color: Theme.of(context).colorScheme.caption, + ), + const SizedBox(width: 4), + DidvanIconButton( + icon: _likeValue ? DidvanIcons.like_solid : DidvanIcons.like_regular, + color: _likeValue ? Theme.of(context).colorScheme.primary : null, + gestureSize: 24, + onPressed: () { + setState(() { + if (_likeValue) { + _likeCount--; + } else { + _likeCount++; + if (_dislikeValue) { + _dislikeValue = false; + _dislikeCount--; + } + } + _likeValue = !_likeValue; + }); + widget.onFeedback(_likeValue, _dislikeValue); + }, + ), + const SizedBox(width: 16), + DidvanText( + _dislikeCount.toString(), + style: Theme.of(context).textTheme.caption, + color: Theme.of(context).colorScheme.caption, + ), + const SizedBox(width: 4), + DidvanIconButton( + icon: _dislikeValue + ? DidvanIcons.dislike_solid + : DidvanIcons.dislike_regular, + color: _dislikeValue ? Theme.of(context).colorScheme.secondary : null, + gestureSize: 24, + onPressed: () { + setState(() { + if (_dislikeValue) { + _dislikeCount--; + } else { + _dislikeCount++; + if (_likeValue) { + _likeValue = false; + _likeCount--; + } + } + _dislikeValue = !_dislikeValue; + }); + widget.onFeedback(_likeValue, _dislikeValue); + }, + ), + ], + ); + } +} From bd8e9b08bb6af70680be633239d3da2fc81051dd Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 26 Jan 2022 00:14:47 +0330 Subject: [PATCH 150/273] crop package added --- pubspec.lock | 21 ++++++++++++++------- pubspec.yaml | 3 ++- 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/pubspec.lock b/pubspec.lock index 01f99dd..31400be 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -85,6 +85,20 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.15.0" + collision: + dependency: transitive + description: + name: collision + url: "https://pub.dartlang.org" + source: hosted + version: "0.0.3" + crop: + dependency: "direct main" + description: + name: crop + url: "https://pub.dartlang.org" + source: hosted + version: "0.5.2" cross_file: dependency: transitive description: @@ -287,13 +301,6 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "4.0.0" - image_cropper: - dependency: "direct main" - description: - name: image_cropper - url: "https://pub.dartlang.org" - source: hosted - version: "1.4.1" image_picker: dependency: "direct main" description: diff --git a/pubspec.yaml b/pubspec.yaml index 481f45b..2742944 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -55,10 +55,11 @@ dependencies: just_waveform: ^0.0.1 persian_datetime_picker: ^2.4.0 persian_number_utility: ^1.1.1 - image_cropper: ^1.4.1 bot_toast: ^4.0.1 flutter_secure_storage: ^5.0.2 flutter_html: ^3.0.0-alpha.2 + crop: ^0.5.2 + dev_dependencies: flutter_test: From 97d36abfddeb7c977ffff1c350874f7448cc37f0 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 26 Jan 2022 00:15:12 +0330 Subject: [PATCH 151/273] model updates --- lib/models/comment/comment.dart | 2 +- lib/models/item_overview.dart | 29 +++++++++++++++++------------ lib/models/news_details_data.dart | 4 ++-- lib/models/radar_details_data.dart | 4 ++-- lib/models/radar_overview.dart | 2 +- lib/models/requests/radar.dart | 2 ++ 6 files changed, 25 insertions(+), 18 deletions(-) diff --git a/lib/models/comment/comment.dart b/lib/models/comment/comment.dart index 4a53a4a..b4f43ea 100644 --- a/lib/models/comment/comment.dart +++ b/lib/models/comment/comment.dart @@ -3,7 +3,7 @@ import 'reply.dart'; import 'user.dart'; class CommentData { - final int id; + int id; final String text; final String createdAt; final bool liked; diff --git a/lib/models/item_overview.dart b/lib/models/item_overview.dart index 50ddec4..3832850 100644 --- a/lib/models/item_overview.dart +++ b/lib/models/item_overview.dart @@ -5,14 +5,15 @@ class ItemOverview { final String title; final String image; final String description; - final int timeToRead; - final String reference; - final bool forManagers; + final int? timeToRead; + final String? reference; + final bool? forManagers; final String createdAt; - final String type; - final List categories; + final String? type; + final List? categories; + int? comments; - const ItemOverview({ + ItemOverview({ required this.id, required this.title, required this.image, @@ -23,6 +24,7 @@ class ItemOverview { required this.createdAt, required this.type, required this.categories, + required this.comments, }); factory ItemOverview.fromJson(Map json) => ItemOverview( @@ -35,11 +37,14 @@ class ItemOverview { forManagers: json['forManagers'], createdAt: json['createdAt'], type: json['type'], - categories: List.from( - json['categories'].map( - (cat) => Category.fromJson(cat), - ), - ), + comments: json['comments'], + categories: json['categories'] == null + ? null + : List.from( + json['categories'].map( + (cat) => Category.fromJson(cat), + ), + ), ); Map toJson() => { @@ -52,6 +57,6 @@ class ItemOverview { 'forManagers': forManagers, 'createdAt': createdAt, 'type': type, - 'categories': categories.map((e) => e.toJson()).toList(), + 'categories': categories?.map((e) => e.toJson()).toList(), }; } diff --git a/lib/models/news_details_data.dart b/lib/models/news_details_data.dart index c5ead9e..1b603bd 100644 --- a/lib/models/news_details_data.dart +++ b/lib/models/news_details_data.dart @@ -8,12 +8,12 @@ class NewsDetailsData { final String image; final String createdAt; final bool marked; - final int comments; + int comments; final int order; final List tags; final List contents; - const NewsDetailsData({ + NewsDetailsData({ required this.id, required this.title, required this.reference, diff --git a/lib/models/radar_details_data.dart b/lib/models/radar_details_data.dart index fb2aecd..fb493e3 100644 --- a/lib/models/radar_details_data.dart +++ b/lib/models/radar_details_data.dart @@ -12,13 +12,13 @@ class RadarDetailsData { final String? podcast; final bool forManagers; final bool marked; - final int comments; + int comments; final List tags; final List contents; final List categories; final int order; - const RadarDetailsData({ + RadarDetailsData({ required this.id, required this.title, required this.image, diff --git a/lib/models/radar_overview.dart b/lib/models/radar_overview.dart index 16e5c12..a601084 100644 --- a/lib/models/radar_overview.dart +++ b/lib/models/radar_overview.dart @@ -10,7 +10,7 @@ class RadarOverview { final bool forManagers; bool marked; final List categories; - final int comments; + int comments; RadarOverview({ required this.id, diff --git a/lib/models/requests/radar.dart b/lib/models/requests/radar.dart index 9a28fae..12e7e24 100644 --- a/lib/models/requests/radar.dart +++ b/lib/models/requests/radar.dart @@ -4,6 +4,7 @@ class RadarRequestArgs { final String? startDate; final String? endDate; final String? search; + final bool? isSingleItem; const RadarRequestArgs({ required this.page, @@ -11,5 +12,6 @@ class RadarRequestArgs { this.startDate, this.endDate, this.search, + this.isSingleItem, }); } From 9884ae72f643f7d2eb6aba9409eea4c543d4f83f Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 26 Jan 2022 00:16:19 +0330 Subject: [PATCH 152/273] image cropper package remove configs --- android/app/src/main/AndroidManifest.xml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index a90ba20..aadf776 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -6,10 +6,6 @@ - Date: Wed, 26 Jan 2022 00:16:55 +0330 Subject: [PATCH 153/273] comments bug fixed --- lib/pages/home/comments/comments.dart | 11 ++++++++--- lib/pages/home/comments/comments_state.dart | 16 ++++++++++------ .../home/comments/widgets/comment_item.dart | 3 +++ 3 files changed, 21 insertions(+), 9 deletions(-) diff --git a/lib/pages/home/comments/comments.dart b/lib/pages/home/comments/comments.dart index 9aafbac..25389f7 100644 --- a/lib/pages/home/comments/comments.dart +++ b/lib/pages/home/comments/comments.dart @@ -25,6 +25,7 @@ class Comments extends StatefulWidget { } class _CommentsState extends State { + final _focusNode = FocusNode(); @override void initState() { final state = context.read(); @@ -61,6 +62,7 @@ class _CommentsState extends State { childCount: state.comments.length, placeholder: const _CommentPlaceholder(), builder: (context, state, index) => Comment( + focusNode: _focusNode, comment: state.comments[index], ), ), @@ -68,10 +70,10 @@ class _CommentsState extends State { ], ), Positioned( - bottom: MediaQuery.of(context).viewInsets.bottom, left: 0, right: 0, - child: const _MessageBox(), + bottom: MediaQuery.of(context).viewInsets.bottom, + child: _MessageBox(focusNode: _focusNode), ), ], ), @@ -80,7 +82,8 @@ class _CommentsState extends State { } class _MessageBox extends StatefulWidget { - const _MessageBox({Key? key}) : super(key: key); + final FocusNode focusNode; + const _MessageBox({Key? key, required this.focusNode}) : super(key: key); @override State<_MessageBox> createState() => _MessageBoxState(); @@ -150,7 +153,9 @@ class _MessageBoxState extends State<_MessageBox> { ), Expanded( child: TextField( + focusNode: widget.focusNode, controller: _controller, + keyboardType: TextInputType.multiline, textInputAction: TextInputAction.send, style: Theme.of(context).textTheme.bodyText2, onEditingComplete: () {}, diff --git a/lib/pages/home/comments/comments_state.dart b/lib/pages/home/comments/comments_state.dart index d079c57..48a7eba 100644 --- a/lib/pages/home/comments/comments_state.dart +++ b/lib/pages/home/comments/comments_state.dart @@ -1,5 +1,3 @@ -import 'dart:math'; - import 'package:didvan/config/design_config.dart'; import 'package:didvan/models/comment/comment.dart'; import 'package:didvan/models/comment/feedback.dart'; @@ -64,10 +62,10 @@ class CommentsState extends CoreProvier { Future addComment() async { final user = DesignConfig.context.read().user; if (replyingTo != null) { - final coment = comments.firstWhere((comment) => comment.id == commentId); - coment.replies.add( + final comment = comments.firstWhere((comment) => comment.id == commentId); + comment.replies.add( Reply( - id: Random().nextInt(1000), + id: 0, text: text, createdAt: DateTime.now().toString(), liked: false, @@ -85,7 +83,7 @@ class CommentsState extends CoreProvier { comments.insert( 0, CommentData( - id: Random().nextInt(1000), + id: 0, text: text, createdAt: DateTime.now().toString(), liked: false, @@ -121,6 +119,12 @@ class CommentsState extends CoreProvier { replyingTo = null; update(); await service.post(); + if (service.isSuccess) { + if (replyingTo != null) { + comments.firstWhere((comment) => comment.id == commentId).id = + service.result['comment']['id']; + } + } update(); } } diff --git a/lib/pages/home/comments/widgets/comment_item.dart b/lib/pages/home/comments/widgets/comment_item.dart index 96e0a33..07a92af 100644 --- a/lib/pages/home/comments/widgets/comment_item.dart +++ b/lib/pages/home/comments/widgets/comment_item.dart @@ -13,9 +13,11 @@ import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; class Comment extends StatefulWidget { + final FocusNode focusNode; final CommentData comment; const Comment({ Key? key, + required this.focusNode, required this.comment, }) : super(key: key); @@ -113,6 +115,7 @@ class CommentState extends State { state.commentId = _comment.id; state.replyingTo = comment.user; state.update(); + widget.focusNode.requestFocus(); }, child: DidvanText( 'پاسخ', From 74b09266129b1df02f2b344c0dec45ac4460c188 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 26 Jan 2022 00:17:30 +0330 Subject: [PATCH 154/273] direct page basics --- lib/pages/home/direct/direct.dart | 20 ++++++++++++++++++-- lib/pages/home/direct/direct_state.dart | 8 ++++++++ 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/lib/pages/home/direct/direct.dart b/lib/pages/home/direct/direct.dart index e6a4019..095f8d7 100644 --- a/lib/pages/home/direct/direct.dart +++ b/lib/pages/home/direct/direct.dart @@ -1,10 +1,26 @@ +import 'package:didvan/pages/home/direct/direct_state.dart'; import 'package:didvan/pages/home/direct/widgets/message_box.dart'; import 'package:didvan/models/view/app_bar_data.dart'; import 'package:didvan/widgets/didvan/scaffold.dart'; import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; -class Direct extends StatelessWidget { - const Direct({Key? key}) : super(key: key); +class Direct extends StatefulWidget { + final int id; + const Direct({Key? key, required this.id}) : super(key: key); + + @override + State createState() => _DirectState(); +} + +class _DirectState extends State { + @override + void initState() { + Future.delayed(Duration.zero, () { + context.read().getMessages(widget.id); + }); + super.initState(); + } @override Widget build(BuildContext context) { diff --git a/lib/pages/home/direct/direct_state.dart b/lib/pages/home/direct/direct_state.dart index 2758c21..18b9b86 100644 --- a/lib/pages/home/direct/direct_state.dart +++ b/lib/pages/home/direct/direct_state.dart @@ -1,6 +1,8 @@ import 'dart:io'; import 'package:didvan/providers/core_provider.dart'; +import 'package:didvan/services/network/request.dart'; +import 'package:didvan/services/network/request_helper.dart'; import 'package:flutter/foundation.dart'; import 'package:flutter_vibrate/flutter_vibrate.dart'; import 'package:record/record.dart'; @@ -12,6 +14,12 @@ class DirectState extends CoreProvier { bool isRecording = false; + Future getMessages(int id) async { + final RequestService service = RequestService(RequestHelper.direct(id)); + await service.httpGet(); + if (service.isSuccess) {} + } + void deleteRecordedFile() { recordedFile!.delete(); recordedFile = null; From 99141f2050fb43c2da8e48fa51f434bb32728f53 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 26 Jan 2022 00:18:30 +0330 Subject: [PATCH 155/273] news and news details --- .../home/news/news_details/news_details.dart | 116 +++++++++--------- .../news/news_details/news_details_state.dart | 74 ++++++++++- lib/pages/home/news/news_state.dart | 39 ++++-- lib/pages/home/news/widgets/news_item.dart | 27 +++- 4 files changed, 174 insertions(+), 82 deletions(-) diff --git a/lib/pages/home/news/news_details/news_details.dart b/lib/pages/home/news/news_details/news_details.dart index dc39cf2..c1b756a 100644 --- a/lib/pages/home/news/news_details/news_details.dart +++ b/lib/pages/home/news/news_details/news_details.dart @@ -1,76 +1,70 @@ +import 'package:didvan/pages/home/news/news_details/news_details_state.dart'; import 'package:didvan/widgets/didvan/page_view.dart'; -import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/floating_navigation_bar.dart'; -import 'package:didvan/widgets/skeletun_image.dart'; +import 'package:didvan/widgets/state_handlers/state_handler.dart'; import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; -class NewsDetails extends StatelessWidget { - const NewsDetails({Key? key}) : super(key: key); +class NewsDetails extends StatefulWidget { + final Map pageData; + const NewsDetails({Key? key, required this.pageData}) : super(key: key); + + @override + State createState() => _NewsDetailsState(); +} + +class _NewsDetailsState extends State { + final ScrollController _scrollController = ScrollController(); + + @override + void initState() { + final state = context.read(); + state.args = widget.pageData['args']; + Future.delayed(Duration.zero, () { + state.getNewsDetails(widget.pageData['id']); + }); + super.initState(); + } @override Widget build(BuildContext context) { return Scaffold( - body: Stack( - children: [ - DidvanPageView( - pages: [ - Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - const SkeletonImage( - imageUrl: 'https://wallpapercave.com/wp/wp9373116.jpg', - width: double.infinity, - height: 200, + body: Consumer( + builder: (context, state, child) => StateHandler( + onRetry: () => state.getNewsDetails(state.currentNews.id), + state: state, + builder: (context, state) => Stack( + children: [ + if (state.news.isNotEmpty) + DidvanPageView( + isRadar: false, + initialIndex: state.initialIndex, + onPageChanged: _onPageChnaged, + scrollController: _scrollController, + items: state.news, + ), + if (state.news.isNotEmpty) + Positioned( + bottom: 0, + left: 0, + right: 0, + child: FloatingNavigationBar( + news: state.currentNews, + scrollController: _scrollController, ), - const SizedBox(height: 20), - for (var i = 0; i < 10; i++) - Padding( - padding: const EdgeInsets.symmetric(horizontal: 16), - child: Builder( - builder: (context) { - switch (i) { - case 0: - return Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - DidvanText( - 'تحلیل شکاف فناوری صنعت فولاد ایران', - style: - Theme.of(context).textTheme.bodyText1, - ), - const SizedBox(height: 8), - const DidvanText( - 'پایگاه خبری معدن نیوز - 2 ساعت پیش', - ), - const SizedBox(height: 8), - ], - ); - default: - return const Padding( - padding: EdgeInsets.only(bottom: 8), - child: DidvanText( - 'این سایت امروز (شنبه) تیم منتخب قاره آسیا در سال ۲۰۲۱ میلادی را معرفی کرد که از ایران، سردار آزمون و محمد حسین کنعانی‌زادگان در ترکیب اصلی و مهدی طارمی و سیدمجید حسینی در جمع بازیکنان ذخیره دیده می‌شوند.', - ), - ); - } - }, - ), - ), - const SizedBox(height: 20), - ], - ), + ), ], ), - const Positioned( - left: 0, - right: 0, - bottom: 0, - child: FloatingNavigationBar( - isRadar: false, - ), - ), - ], + ), ), ); } + + void _onPageChnaged(int index) { + final state = context.read(); + state.getNewsDetails( + state.news[index]!.id, + isForward: state.currentIndex < index, + ); + } } diff --git a/lib/pages/home/news/news_details/news_details_state.dart b/lib/pages/home/news/news_details/news_details_state.dart index 116b980..72173a7 100644 --- a/lib/pages/home/news/news_details/news_details_state.dart +++ b/lib/pages/home/news/news_details/news_details_state.dart @@ -1,3 +1,73 @@ -import 'package:didvan/providers/core_provider.dart'; +import 'dart:math'; -class NewsDetailsState extends CoreProvier {} +import 'package:didvan/models/enums.dart'; +import 'package:didvan/models/news_details_data.dart'; +import 'package:didvan/models/requests/news.dart'; +import 'package:didvan/providers/core_provider.dart'; +import 'package:didvan/services/network/request.dart'; +import 'package:didvan/services/network/request_helper.dart'; + +class NewsDetailsState extends CoreProvier { + final List news = []; + late final int initialIndex; + late final NewsRequestArgs args; + + int _currentIndex = 0; + int get currentIndex => _currentIndex; + + NewsDetailsData get currentNews => news[_currentIndex]!; + + Future getNewsDetails(int id, {bool? isForward}) async { + if (isForward == null) { + appState = AppState.busy; + } + final service = RequestService(RequestHelper.newsDetails(id, args)); + await service.httpGet(); + if (service.isSuccess) { + final result = service.result; + NewsDetailsData? prevNews; + if (result['prevNews'].isNotEmpty) { + prevNews = NewsDetailsData.fromJson(result['prevNews']); + } + final newsItem = NewsDetailsData.fromJson(result['news']); + NewsDetailsData? nextNews; + if (result['nextNews'].isNotEmpty) { + nextNews = NewsDetailsData.fromJson(result['nextNews']); + } + if (isForward == null) { + news.addAll(List.generate(max(newsItem.order - 2, 0), (index) => null)); + if (prevNews != null) { + news.add(prevNews); + } + news.add(newsItem); + if (nextNews != null) { + news.add(nextNews); + } + _currentIndex = initialIndex = newsItem.order - 1; + } else if (isForward) { + if (!exists(nextNews) && nextNews != null) { + news.add(nextNews); + } + _currentIndex++; + } else if (!isForward) { + if (!exists(prevNews) && prevNews != null) { + news[_currentIndex - 2] = prevNews; + } + _currentIndex--; + } + appState = AppState.idle; + return; + } + if (isForward == null) { + appState = AppState.failed; + } + } + + bool exists(NewsDetailsData? newsItem) => + news.any((n) => newsItem != null && n != null && n.id == newsItem.id); + + void onCommentAdded(int id) { + news.firstWhere((item) => item!.id == id)!.comments++; + notifyListeners(); + } +} diff --git a/lib/pages/home/news/news_state.dart b/lib/pages/home/news/news_state.dart index 12fe709..2851146 100644 --- a/lib/pages/home/news/news_state.dart +++ b/lib/pages/home/news/news_state.dart @@ -1,20 +1,31 @@ import 'package:collection/collection.dart'; import 'package:didvan/models/enums.dart'; import 'package:didvan/models/news_overview.dart'; +import 'package:didvan/models/requests/news.dart'; import 'package:didvan/providers/core_provider.dart'; import 'package:didvan/services/network/request.dart'; import 'package:didvan/services/network/request_helper.dart'; class NewsState extends CoreProvier { - bool isFiltering = false; String search = ''; String lastSearch = ''; String? startDate; String? endDate; + int page = 1; final List _markQueue = []; final List news = []; + void init() { + search = ''; + lastSearch = ''; + startDate = null; + endDate = null; + Future.delayed(Duration.zero, () { + getNews(page: 1); + }); + } + void resetFilters() { startDate = null; endDate = null; @@ -24,21 +35,23 @@ class NewsState extends CoreProvier { Future getNews({ required int page, }) async { - if (search != '' || filterApplied) { + if (this.page == page) { + news.clear(); + } + this.page = page; + if (search != '') { lastSearch = search; - isFiltering = true; - } else { - isFiltering = false; } lastSearch = search; appState = AppState.busy; - news.clear(); final service = RequestService( RequestHelper.newsOverviews( - page: 1, - startDate: startDate?.split(' ').first, - endDate: endDate?.split(' ').first, - search: search == '' ? null : search, + args: NewsRequestArgs( + page: 1, + startDate: startDate?.split(' ').first, + endDate: endDate?.split(' ').first, + search: search == '' ? null : search, + ), ), ); await service.httpGet(); @@ -53,7 +66,7 @@ class NewsState extends CoreProvier { appState = AppState.failed; } - Future markNews(int id) async { + Future mark(int id) async { news.firstWhere((element) => element.id == id).marked = true; notifyListeners(); _markQueue.add(MapEntry(id, true)); @@ -69,7 +82,7 @@ class NewsState extends CoreProvier { }); } - Future unMarkNews(int id) async { + Future unMark(int id) async { news.firstWhere((element) => element.id == id).marked = false; notifyListeners(); _markQueue.add(MapEntry(id, false)); @@ -85,5 +98,5 @@ class NewsState extends CoreProvier { }); } - bool get filterApplied => startDate != null || endDate != null; + bool get isFiltering => startDate != null || endDate != null; } diff --git a/lib/pages/home/news/widgets/news_item.dart b/lib/pages/home/news/widgets/news_item.dart index 7b479bf..993e875 100644 --- a/lib/pages/home/news/widgets/news_item.dart +++ b/lib/pages/home/news/widgets/news_item.dart @@ -1,13 +1,14 @@ import 'package:didvan/models/news_overview.dart'; +import 'package:didvan/models/requests/news.dart'; import 'package:didvan/pages/home/news/news_state.dart'; import 'package:didvan/routes/routes.dart'; +import 'package:didvan/utils/date_time.dart'; import 'package:didvan/widgets/bookmark_button.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/skeleton_image.dart'; import 'package:flutter/material.dart'; -import 'package:persian_number_utility/persian_number_utility.dart'; import 'package:provider/provider.dart'; class NewsItem extends StatelessWidget { @@ -23,6 +24,12 @@ class NewsItem extends StatelessWidget { arguments: { 'state': state, 'id': news.id, + 'args': NewsRequestArgs( + page: state.page, + endDate: state.endDate, + search: state.search, + startDate: state.startDate, + ) }, ), child: Column( @@ -56,14 +63,22 @@ class NewsItem extends StatelessWidget { Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ - DidvanText( - '${news.reference} | ${DateTime.parse(news.createdAt).toPersianDateStr()}', - style: Theme.of(context).textTheme.overline, + Row( + children: [ + DidvanText( + news.reference, + style: Theme.of(context).textTheme.caption, + ), + DidvanText( + ' - ' + DateTimeUtils.momentGenerator(news.createdAt), + style: Theme.of(context).textTheme.caption, + ), + ], ), BookmarkButton( value: news.marked, - onMark: () => state.markNews(news.id), - onUnmark: () => state.unMarkNews(news.id), + onMark: () => state.mark(news.id), + onUnmark: () => state.unMark(news.id), ), ], ), From 67eea3d5750bd0d3fec53fe00cbdd919af8db86d Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 26 Jan 2022 00:18:48 +0330 Subject: [PATCH 156/273] radar and radar details --- .../radar/radar_details/radar_details.dart | 117 +++++++++--------- .../radar_details/radar_details_state.dart | 82 +++++++++++- lib/pages/home/radar/radar_state.dart | 9 +- lib/pages/home/radar/widgets/radar_item.dart | 17 ++- 4 files changed, 156 insertions(+), 69 deletions(-) diff --git a/lib/pages/home/radar/radar_details/radar_details.dart b/lib/pages/home/radar/radar_details/radar_details.dart index bcdfcae..e2896b1 100644 --- a/lib/pages/home/radar/radar_details/radar_details.dart +++ b/lib/pages/home/radar/radar_details/radar_details.dart @@ -1,76 +1,71 @@ +import 'package:didvan/models/requests/radar.dart'; +import 'package:didvan/pages/home/radar/radar_details/radar_details_state.dart'; import 'package:didvan/widgets/didvan/page_view.dart'; -import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/floating_navigation_bar.dart'; -import 'package:didvan/widgets/skeletun_image.dart'; +import 'package:didvan/widgets/state_handlers/state_handler.dart'; import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; -class RadarDetails extends StatelessWidget { - const RadarDetails({Key? key}) : super(key: key); +class RadarDetails extends StatefulWidget { + final Map pageData; + const RadarDetails({Key? key, required this.pageData}) : super(key: key); + + @override + State createState() => _RadarDetailsState(); +} + +class _RadarDetailsState extends State { + final ScrollController _scrollController = ScrollController(); + + @override + void initState() { + final state = context.read(); + state.args = widget.pageData['args'] ?? const RadarRequestArgs(page: 0); + Future.delayed(Duration.zero, () { + state.getRadarDetails(widget.pageData['id']); + }); + super.initState(); + } @override Widget build(BuildContext context) { return Scaffold( - body: Stack( - children: [ - DidvanPageView( - pages: [ - Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - const SkeletonImage( - imageUrl: 'https://wallpapercave.com/wp/wp9373116.jpg', - width: double.infinity, - height: 200, + body: Consumer( + builder: (context, state, child) => StateHandler( + onRetry: () => state.getRadarDetails(state.currentRadar.id), + state: state, + builder: (context, state) => Stack( + children: [ + if (state.radars.isNotEmpty) + DidvanPageView( + isRadar: true, + initialIndex: state.initialIndex, + onPageChanged: _onPageChanged, + scrollController: _scrollController, + items: state.radars, + ), + if (state.radars.isNotEmpty) + Positioned( + bottom: 0, + left: 0, + right: 0, + child: FloatingNavigationBar( + radar: state.currentRadar, + scrollController: _scrollController, ), - const SizedBox(height: 20), - for (var i = 0; i < 10; i++) - Padding( - padding: const EdgeInsets.symmetric(horizontal: 16), - child: Builder( - builder: (context) { - switch (i) { - case 0: - return Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - DidvanText( - 'تحلیل شکاف فناوری صنعت فولاد ایران', - style: - Theme.of(context).textTheme.bodyText1, - ), - const SizedBox(height: 8), - const DidvanText( - 'پایگاه خبری معدن نیوز - 2 ساعت پیش', - ), - const SizedBox(height: 8), - ], - ); - default: - return const Padding( - padding: EdgeInsets.only(bottom: 8), - child: DidvanText( - 'این سایت امروز (شنبه) تیم منتخب قاره آسیا در سال ۲۰۲۱ میلادی را معرفی کرد که از ایران، سردار آزمون و محمد حسین کنعانی‌زادگان در ترکیب اصلی و مهدی طارمی و سیدمجید حسینی در جمع بازیکنان ذخیره دیده می‌شوند.', - ), - ); - } - }, - ), - ), - const SizedBox(height: 20), - ], - ), + ), ], ), - const Positioned( - bottom: 0, - left: 0, - right: 0, - child: FloatingNavigationBar( - isRadar: true, - ), - ), - ], + ), ), ); } + + void _onPageChanged(int index) { + final state = context.read(); + state.getRadarDetails( + state.radars[index]!.id, + isForward: state.currentIndex < index, + ); + } } diff --git a/lib/pages/home/radar/radar_details/radar_details_state.dart b/lib/pages/home/radar/radar_details/radar_details_state.dart index c4e2fc5..9ecbf05 100644 --- a/lib/pages/home/radar/radar_details/radar_details_state.dart +++ b/lib/pages/home/radar/radar_details/radar_details_state.dart @@ -1,3 +1,81 @@ -import 'package:didvan/providers/core_provider.dart'; +import 'dart:math'; -class RadarDetailsState extends CoreProvier {} +import 'package:didvan/models/enums.dart'; +import 'package:didvan/models/radar_details_data.dart'; +import 'package:didvan/models/requests/radar.dart'; +import 'package:didvan/providers/core_provider.dart'; +import 'package:didvan/services/network/request.dart'; +import 'package:didvan/services/network/request_helper.dart'; + +class RadarDetailsState extends CoreProvier { + final List radars = []; + late final int initialIndex; + late final RadarRequestArgs args; + + int _currentIndex = 0; + int get currentIndex => _currentIndex; + + RadarDetailsData get currentRadar => radars[_currentIndex]!; + + Future getRadarDetails(int id, {bool? isForward}) async { + if (isForward == null) { + appState = AppState.busy; + } + final service = RequestService(RequestHelper.radarDetails(id, args)); + await service.httpGet(); + if (service.isSuccess) { + final result = service.result; + RadarDetailsData? prevRadar; + final radar = RadarDetailsData.fromJson(result['radar']); + if (args.page == 0) { + radars.add(radar); + initialIndex = 0; + appState = AppState.idle; + return; + } + + if (result['prevRadar'].isNotEmpty) { + prevRadar = RadarDetailsData.fromJson(result['prevRadar']); + } + + RadarDetailsData? nextRadar; + if (result['nextRadar'].isNotEmpty) { + nextRadar = RadarDetailsData.fromJson(result['nextRadar']); + } + if (isForward == null) { + radars.addAll(List.generate(max(radar.order - 2, 0), (index) => null)); + if (prevRadar != null) { + radars.add(prevRadar); + } + radars.add(radar); + if (nextRadar != null) { + radars.add(nextRadar); + } + _currentIndex = initialIndex = radar.order - 1; + } else if (isForward) { + if (!exists(nextRadar) && nextRadar != null) { + radars.add(nextRadar); + } + _currentIndex++; + } else if (!isForward) { + if (!exists(prevRadar) && prevRadar != null) { + radars[_currentIndex - 2] = prevRadar; + } + _currentIndex--; + } + appState = AppState.idle; + return; + } + if (isForward == null) { + appState = AppState.failed; + } + } + + bool exists(RadarDetailsData? radar) => + radars.any((r) => radar != null && r != null && r.id == radar.id); + + void onCommentAdded(int id) { + radars.firstWhere((radar) => radar!.id == id)!.comments++; + notifyListeners(); + } +} diff --git a/lib/pages/home/radar/radar_state.dart b/lib/pages/home/radar/radar_state.dart index f6dcd6f..822d5b9 100644 --- a/lib/pages/home/radar/radar_state.dart +++ b/lib/pages/home/radar/radar_state.dart @@ -78,7 +78,7 @@ class RadarState extends CoreProvier { appState = AppState.failed; } - Future markRadar(int id) async { + Future mark(int id) async { radars.firstWhere((element) => element.id == id).marked = true; notifyListeners(); _markQueue.add(MapEntry(id, true)); @@ -94,7 +94,7 @@ class RadarState extends CoreProvier { }); } - Future unMarkRadar(int id) async { + Future unMark(int id) async { radars.firstWhere((element) => element.id == id).marked = false; notifyListeners(); _markQueue.add(MapEntry(id, false)); @@ -110,6 +110,11 @@ class RadarState extends CoreProvier { }); } + void onCommentAdded(int id) { + radars.firstWhere((radar) => radar.id == id).comments++; + notifyListeners(); + } + void init() { resetFilters(true); Future.delayed(Duration.zero, () { diff --git a/lib/pages/home/radar/widgets/radar_item.dart b/lib/pages/home/radar/widgets/radar_item.dart index ffa6a1e..6af1f4a 100644 --- a/lib/pages/home/radar/widgets/radar_item.dart +++ b/lib/pages/home/radar/widgets/radar_item.dart @@ -1,8 +1,10 @@ import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; import 'package:didvan/models/radar_overview.dart'; +import 'package:didvan/models/requests/radar.dart'; import 'package:didvan/pages/home/radar/radar_state.dart'; import 'package:didvan/routes/routes.dart'; +import 'package:didvan/utils/date_time.dart'; import 'package:didvan/widgets/bookmark_button.dart'; import 'package:didvan/widgets/didvan/card.dart'; import 'package:didvan/widgets/didvan/divider.dart'; @@ -10,7 +12,6 @@ import 'package:didvan/widgets/didvan/icon_button.dart'; import 'package:didvan/widgets/didvan/text.dart'; import 'package:didvan/widgets/skeleton_image.dart'; import 'package:flutter/material.dart'; -import 'package:persian_number_utility/persian_number_utility.dart'; import 'package:provider/provider.dart'; class RadarItem extends StatelessWidget { @@ -26,6 +27,13 @@ class RadarItem extends StatelessWidget { arguments: { 'state': state, 'id': radar.id, + 'args': RadarRequestArgs( + page: state.page, + categories: state.selectedCats.map((e) => e.id).toList(), + endDate: state.endDate, + search: state.search, + startDate: state.startDate, + ) }, ), child: Column( @@ -75,7 +83,7 @@ class RadarItem extends StatelessWidget { ), const Spacer(), DidvanText( - '${DateTime.parse(radar.createdAt).toPersianDateStr()} | خواندن ${radar.timeToRead} دقیقه', + '${DateTimeUtils.momentGenerator(radar.createdAt)} | خواندن ${radar.timeToRead} دقیقه', style: Theme.of(context).textTheme.overline, color: Theme.of(context).colorScheme.caption, ), @@ -91,8 +99,8 @@ class RadarItem extends StatelessWidget { children: [ BookmarkButton( value: radar.marked, - onMark: () => state.markRadar(radar.id), - onUnmark: () => state.unMarkRadar(radar.id), + onMark: () => state.mark(radar.id), + onUnmark: () => state.unMark(radar.id), ), const Spacer(), if (radar.comments != 0) DidvanText(radar.comments.toString()), @@ -106,6 +114,7 @@ class RadarItem extends StatelessWidget { 'isRadar': true, 'title': radar.title, 'id': radar.id, + 'onCommentAdded': () => state.onCommentAdded(radar.id) }, ), ), From 17f43c3691aa5e3706f8e9aab5f7a8c01562dcfa Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 26 Jan 2022 00:20:33 +0330 Subject: [PATCH 157/273] navigate to bookmark added to settings page --- lib/pages/home/settings/settings.dart | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/pages/home/settings/settings.dart b/lib/pages/home/settings/settings.dart index f7de013..7df07b9 100644 --- a/lib/pages/home/settings/settings.dart +++ b/lib/pages/home/settings/settings.dart @@ -56,7 +56,8 @@ class Settings extends StatelessWidget { MenuItem( title: 'نشان شده‌ها', icon: DidvanIcons.bookmark_regular, - onTap: () => {}, + onTap: () => + Navigator.of(context).pushNamed(Routes.bookmarks), ), const DidvanDivider(), MenuItem( From 0ef35cee2a8c032825d73f28797311d101ad0c73 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 29 Jan 2022 13:55:03 +0330 Subject: [PATCH 158/273] component updates --- lib/widgets/bookmark_button.dart | 8 +- lib/widgets/didvan/app_bar.dart | 2 + lib/widgets/didvan/page_view.dart | 19 +- lib/widgets/didvan/switch.dart | 2 +- lib/widgets/didvan/text_field.dart | 35 +-- lib/widgets/floating_navigation_bar.dart | 96 ++++----- lib/widgets/image_cropper.dart | 201 ++++++++++++++++++ lib/widgets/multitype_item.dart | 75 +++++++ lib/widgets/skeleton_image.dart | 109 ++++++---- lib/widgets/state_handlers/empty_list.dart | 15 ++ .../state_handlers/sliver_state_handler.dart | 18 +- 11 files changed, 448 insertions(+), 132 deletions(-) create mode 100644 lib/widgets/image_cropper.dart create mode 100644 lib/widgets/multitype_item.dart create mode 100644 lib/widgets/state_handlers/empty_list.dart diff --git a/lib/widgets/bookmark_button.dart b/lib/widgets/bookmark_button.dart index c7a72cd..b1b0716 100644 --- a/lib/widgets/bookmark_button.dart +++ b/lib/widgets/bookmark_button.dart @@ -4,15 +4,13 @@ import 'package:flutter/material.dart'; class BookmarkButton extends StatefulWidget { final bool value; - final VoidCallback onMark; - final VoidCallback onUnmark; + final void Function(bool value) onMarkChanged; final bool bigGestureSize; const BookmarkButton({ Key? key, required this.value, - required this.onMark, - required this.onUnmark, this.bigGestureSize = false, + required this.onMarkChanged, }) : super(key: key); @override @@ -43,7 +41,7 @@ class _BookmarkButtonState extends State { setState(() { _value = !_value; }); - _value ? widget.onMark() : widget.onUnmark(); + widget.onMarkChanged(_value); }, ); } diff --git a/lib/widgets/didvan/app_bar.dart b/lib/widgets/didvan/app_bar.dart index 569668e..764e588 100644 --- a/lib/widgets/didvan/app_bar.dart +++ b/lib/widgets/didvan/app_bar.dart @@ -36,6 +36,8 @@ class DidvanAppBar extends StatelessWidget { if (appBarData.subtitle != null) DidvanText( appBarData.subtitle!, + maxLines: 1, + overflow: TextOverflow.clip, style: Theme.of(context).textTheme.overline, color: Theme.of(context).colorScheme.caption, ), diff --git a/lib/widgets/didvan/page_view.dart b/lib/widgets/didvan/page_view.dart index f4cbfa5..ef66441 100644 --- a/lib/widgets/didvan/page_view.dart +++ b/lib/widgets/didvan/page_view.dart @@ -124,7 +124,18 @@ class _DidvanPageViewState extends State { Widget _contentBuilder(dynamic item, int index) { final content = item.contents[index]; if (content.text != null) { - return Html(data: item.contents[index].text!); + return Html( + data: content.text, + style: { + '*': Style( + direction: TextDirection.rtl, + lineHeight: LineHeight.percent(135), + // textAlign: TextAlign.justify, + margin: EdgeInsets.zero, + padding: EdgeInsets.zero, + ), + }, + ); } if (content.image != null) { return SkeletonImage( @@ -147,11 +158,13 @@ class _DidvanPageViewState extends State { for (var i = 0; i < item.categories.length; i++) DidvanText( item.categories[i].label + - ' - ' + - DateTimeUtils.momentGenerator(item.createdAt) + '${i != item.categories.length - 1 ? '،' : ''} ', style: Theme.of(context).textTheme.caption, ), + DidvanText( + ' - ' + DateTimeUtils.momentGenerator(item.createdAt), + style: Theme.of(context).textTheme.caption, + ), ], ); } else { diff --git a/lib/widgets/didvan/switch.dart b/lib/widgets/didvan/switch.dart index ac353ed..6b6841d 100644 --- a/lib/widgets/didvan/switch.dart +++ b/lib/widgets/didvan/switch.dart @@ -1,4 +1,4 @@ -import 'package:didvan/pages/home/settings/widgets/menu_item.dart'; +import 'package:didvan/pages/home/widgets/menu_item.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; diff --git a/lib/widgets/didvan/text_field.dart b/lib/widgets/didvan/text_field.dart index 608c40b..e8fbeb4 100644 --- a/lib/widgets/didvan/text_field.dart +++ b/lib/widgets/didvan/text_field.dart @@ -105,7 +105,7 @@ class _DidvanTextFieldState extends State { enabled: widget.enabled, border: InputBorder.none, hintText: widget.hintText, - errorStyle: const TextStyle(height: 0), + errorStyle: const TextStyle(height: 0.01), hintStyle: Theme.of(context) .textTheme .bodyText2! @@ -115,22 +115,23 @@ class _DidvanTextFieldState extends State { ), const SizedBox(height: 8), AnimatedVisibility( - isVisible: _error != null, - duration: DesignConfig.lowAnimationDuration, - child: Row( - children: [ - Icon( - DidvanIcons.lightbulb_exclamation_regular, - color: Theme.of(context).colorScheme.error, - size: 14, - ), - DidvanText( - _error ?? '', - style: Theme.of(context).textTheme.caption, - color: Theme.of(context).colorScheme.error, - ), - ], - )) + isVisible: _error != null, + duration: DesignConfig.lowAnimationDuration, + child: Row( + children: [ + Icon( + DidvanIcons.lightbulb_exclamation_regular, + color: Theme.of(context).colorScheme.error, + size: 14, + ), + DidvanText( + _error ?? '', + style: Theme.of(context).textTheme.caption, + color: Theme.of(context).colorScheme.error, + ), + ], + ), + ) ], ); } diff --git a/lib/widgets/floating_navigation_bar.dart b/lib/widgets/floating_navigation_bar.dart index 9a9bf97..1d61ab9 100644 --- a/lib/widgets/floating_navigation_bar.dart +++ b/lib/widgets/floating_navigation_bar.dart @@ -1,10 +1,9 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/models/news_details_data.dart'; -import 'package:didvan/models/radar_details_data.dart'; +import 'package:didvan/models/category.dart'; import 'package:didvan/models/view/action_sheet_data.dart'; -import 'package:didvan/pages/home/settings/widgets/menu_item.dart'; +import 'package:didvan/pages/home/widgets/menu_item.dart'; import 'package:didvan/routes/routes.dart'; import 'package:didvan/utils/action_sheet.dart'; import 'package:didvan/widgets/bookmark_button.dart'; @@ -16,18 +15,27 @@ import 'package:didvan/widgets/item_title.dart'; import 'package:flutter/material.dart'; class FloatingNavigationBar extends StatefulWidget { - final RadarDetailsData? radar; - final NewsDetailsData? news; final ScrollController scrollController; - final VoidCallback onMark; - final VoidCallback onUnmark; + final void Function(int count) onCommentsChanged; + final bool isRadar; + final bool marked; + final int comments; + final int id; + final String title; + final List? categories; + final void Function(bool value) onMarkChanged; + const FloatingNavigationBar({ Key? key, - this.radar, - this.news, required this.scrollController, - required this.onMark, - required this.onUnmark, + required this.onCommentsChanged, + required this.onMarkChanged, + required this.isRadar, + required this.marked, + required this.comments, + required this.id, + required this.title, + this.categories, }) : super(key: key); @override @@ -35,35 +43,13 @@ class FloatingNavigationBar extends StatefulWidget { } class _FloatingNavigationBarState extends State { - bool get _isRadar => widget.radar != null; bool _isScrolled = false; - - get _item => widget.radar ?? widget.news; - - @override - void didUpdateWidget(covariant FloatingNavigationBar oldWidget) { - if (widget.radar != null && oldWidget.radar!.id != widget.radar!.id || - widget.news != null && oldWidget.news!.id != widget.news!.id) { - _isScrolled = false; - } - super.didUpdateWidget(oldWidget); - } + int _comments = 0; @override void initState() { - widget.scrollController.addListener(() { - final position = widget.scrollController.position.pixels; - final offset = MediaQuery.of(context).size.width / 16 * 9 + 40; - if (position > offset && !_isScrolled) { - setState(() { - _isScrolled = true; - }); - } else if (position < offset && _isScrolled) { - setState(() { - _isScrolled = false; - }); - } - }); + _isScrolled = false; + _comments = widget.comments; super.initState(); } @@ -113,11 +99,10 @@ class _FloatingNavigationBarState extends State { ), ), const Spacer(), - if (_isRadar) + if (widget.isRadar) BookmarkButton( - value: _item.marked, - onMark: widget.onMark, - onUnmark: widget.onUnmark, + value: widget.marked, + onMarkChanged: widget.onMarkChanged, bigGestureSize: true, ), SizedBox( @@ -125,9 +110,9 @@ class _FloatingNavigationBarState extends State { child: Row( mainAxisAlignment: MainAxisAlignment.center, children: [ - if (_item.comments != 0) + if (_comments != 0) DidvanText( - _item.comments.toString(), + _comments.toString(), color: foregroundColor, ), DidvanIconButton( @@ -135,9 +120,10 @@ class _FloatingNavigationBarState extends State { onPressed: () => Navigator.of(context).pushNamed( Routes.comments, arguments: { - 'id': _item.id, - 'isRadar': _isRadar, - 'title': _item.title + 'id': widget.id, + 'isRadar': widget.isRadar, + 'title': widget.title, + 'onCommentsChanged': widget.onCommentsChanged, }, ), icon: DidvanIcons.chats_regular, @@ -145,15 +131,14 @@ class _FloatingNavigationBarState extends State { ], ), ), - if (!_isRadar) const SizedBox(width: 12), - if (!_isRadar) + if (!widget.isRadar) const SizedBox(width: 12), + if (!widget.isRadar) BookmarkButton( - value: _item.marked, - onMark: widget.onMark, - onUnmark: widget.onUnmark, + value: widget.marked, + onMarkChanged: widget.onMarkChanged, bigGestureSize: true, ), - if (_isRadar) + if (widget.isRadar) DidvanIconButton( gestureSize: 32, onPressed: _showMoreOptions, @@ -166,6 +151,7 @@ class _FloatingNavigationBarState extends State { } void _showMoreOptions() { + final categories = widget.categories!; ActionSheetUtils.showBottomSheet( data: ActionSheetData( content: Column( @@ -176,21 +162,21 @@ class _FloatingNavigationBarState extends State { icon: DidvanIcons.profile_regular, ), const SizedBox(height: 16), - for (var i = 0; i < _item.categories.length; i++) ...[ + for (var i = 0; i < categories.length; i++) ...[ Padding( padding: const EdgeInsets.only(right: 20), child: MenuItem( - titleWidget: DidvanChip(label: _item.categories[i].label), + titleWidget: DidvanChip(label: categories[i].label), onTap: () { Navigator.of(context).pop(); Navigator.of(context).pushNamed( Routes.direct, - arguments: _item.categories[i].id, + arguments: categories[i].id, ); }, ), ), - if (i != _item.categories.length - 1) + if (i != categories.length - 1) const Padding( padding: EdgeInsets.only(right: 20), child: DidvanDivider(verticalPadding: 8), diff --git a/lib/widgets/image_cropper.dart b/lib/widgets/image_cropper.dart new file mode 100644 index 0000000..fd67e93 --- /dev/null +++ b/lib/widgets/image_cropper.dart @@ -0,0 +1,201 @@ +import 'package:crop/crop.dart'; +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:flutter/material.dart'; + +class ImageCropper extends StatefulWidget { + final Map data; + + const ImageCropper({Key? key, required this.data}) : super(key: key); + + @override + State createState() => _ImageCropperState(); +} + +class _ImageCropperState extends State { + double _rotation = 0; + BoxShape shape = BoxShape.rectangle; + + final _controller = CropController(); + + get _bytes => widget.data['bytes']; + get _onCropped => widget.data['onCropped']; + + @override + Widget build(BuildContext context) { + final theme = Theme.of(context); + return Scaffold( + appBar: AppBar( + title: const Text('برش عکس'), + centerTitle: true, + actions: [ + IconButton( + onPressed: _cropImage, + tooltip: 'Crop', + icon: const Icon(Icons.crop), + ) + ], + ), + body: Column( + children: [ + Expanded( + child: Container( + color: Colors.black, + padding: const EdgeInsets.all(8), + child: Crop( + onChanged: (decomposition) { + if (_rotation != decomposition.rotation) { + setState(() { + _rotation = ((decomposition.rotation + 180) % 360) - 180; + }); + } + }, + controller: _controller, + shape: shape, + child: Image.memory( + _bytes, + fit: BoxFit.cover, + ), + helper: shape == BoxShape.rectangle + ? Container( + decoration: BoxDecoration( + border: Border.all(color: Colors.white, width: 2), + ), + ) + : null, + ), + ), + ), + Row( + children: [ + IconButton( + icon: const Icon(Icons.redo), + tooltip: 'برگرداندن', + onPressed: () { + _controller.rotation = 0; + _controller.scale = 1; + _controller.offset = Offset.zero; + setState(() { + _rotation = 0; + }); + }, + ), + Expanded( + child: SliderTheme( + data: theme.sliderTheme.copyWith( + trackShape: const RectangularSliderTrackShape(), + ), + child: Slider( + thumbColor: Theme.of(context).colorScheme.title, + divisions: 360, + value: _rotation, + min: -180, + max: 180, + label: '$_rotation°', + onChanged: (n) { + setState(() { + _rotation = n.roundToDouble(); + _controller.rotation = _rotation; + }); + }, + ), + ), + ), + // PopupMenuButton( + // icon: const Icon(Icons.crop_free), + // itemBuilder: (context) => [ + // const PopupMenuItem( + // child: Text("Box"), + // value: BoxShape.rectangle, + // ), + // const PopupMenuItem( + // child: Text("Oval"), + // value: BoxShape.circle, + // ), + // ], + // tooltip: 'Crop Shape', + // onSelected: (x) { + // setState(() { + // shape = x; + // }); + // }, + // ), + // PopupMenuButton( + // icon: const Icon(Icons.aspect_ratio), + // itemBuilder: (context) => [ + // const PopupMenuItem( + // child: Text("Original"), + // value: 1000 / 667.0, + // ), + // const PopupMenuDivider(), + // const PopupMenuItem( + // child: Text("16:9"), + // value: 16.0 / 9.0, + // ), + // const PopupMenuItem( + // child: Text("4:3"), + // value: 4.0 / 3.0, + // ), + // const PopupMenuItem( + // child: Text("1:1"), + // value: 1, + // ), + // const PopupMenuItem( + // child: Text("3:4"), + // value: 3.0 / 4.0, + // ), + // const PopupMenuItem( + // child: Text("9:16"), + // value: 9.0 / 16.0, + // ), + // ], + // tooltip: 'Aspect Ratio', + // onSelected: (x) { + // _controller.aspectRatio = x; + // setState(() {}); + // }, + // ), + ], + ), + ], + ), + ); + } + + void _cropImage() async { + final pixelRatio = MediaQuery.of(context).devicePixelRatio; + final cropped = await _controller.crop(pixelRatio: pixelRatio); + + Navigator.of(context).push( + MaterialPageRoute( + builder: (context) => Scaffold( + appBar: AppBar( + title: const Text('تایید برش'), + centerTitle: true, + actions: [ + Builder( + builder: (context) => IconButton( + icon: const Icon( + DidvanIcons.check_circle_solid, + size: 32, + ), + onPressed: () { + Navigator.of(context).pop(); + Navigator.of(context).pop(); + _onCropped(); + }, + ), + ), + ], + ), + body: Center( + child: RawImage( + image: cropped, + ), + ), + ), + fullscreenDialog: true, + ), + ); + } +} diff --git a/lib/widgets/multitype_item.dart b/lib/widgets/multitype_item.dart new file mode 100644 index 0000000..4bdab92 --- /dev/null +++ b/lib/widgets/multitype_item.dart @@ -0,0 +1,75 @@ +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/models/item_overview.dart'; +import 'package:didvan/widgets/didvan/card.dart'; +import 'package:didvan/widgets/didvan/text.dart'; +import 'package:didvan/widgets/skeleton_image.dart'; +import 'package:flutter/material.dart'; +import 'package:persian_number_utility/persian_number_utility.dart'; + +class MultitypeItem extends StatelessWidget { + final ItemOverview item; + const MultitypeItem({Key? key, required this.item}) : super(key: key); + + @override + Widget build(BuildContext context) { + return DidvanCard( + child: Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Stack( + children: [ + SkeletonImage(imageUrl: item.image, height: 80, width: 80), + Container( + padding: const EdgeInsets.symmetric(vertical: 4, horizontal: 8), + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.secondary, + borderRadius: const BorderRadius.horizontal( + left: Radius.circular(10), + ), + ), + child: Icon( + item.type == 'radar' + ? DidvanIcons.radar_light + : DidvanIcons.news_light, + color: Theme.of(context).colorScheme.white, + size: 18, + ), + ), + ], + ), + const SizedBox(width: 8), + Expanded( + child: SizedBox( + height: 80, + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + DidvanText( + item.title, + style: Theme.of(context).textTheme.bodyText1, + ), + Row( + children: [ + const Icon( + DidvanIcons.calendar_day_light, + size: 18, + ), + const SizedBox(width: 4), + DidvanText( + DateTime.parse(item.createdAt).toPersianDateStr(), + style: Theme.of(context).textTheme.overline, + ), + // DidvanText('text'), + ], + ), + ], + ), + ), + ), + ], + ), + ); + } +} diff --git a/lib/widgets/skeleton_image.dart b/lib/widgets/skeleton_image.dart index c65477b..aecc541 100644 --- a/lib/widgets/skeleton_image.dart +++ b/lib/widgets/skeleton_image.dart @@ -1,7 +1,5 @@ -import 'dart:convert'; import 'dart:typed_data'; -import 'package:didvan/services/storage/storage.dart'; import 'package:didvan/widgets/shimmer_placeholder.dart'; import 'package:http/http.dart' as http; import 'package:cached_network_image/cached_network_image.dart'; @@ -31,8 +29,8 @@ class SkeletonImage extends StatefulWidget { } class _SkeletonImageState extends State { - Uint8List? _bytes; - + late Uint8List _bytes; + bool _isLoading = true; @override void initState() { if (kIsWeb) _getImage(); @@ -41,57 +39,76 @@ class _SkeletonImageState extends State { Future _getImage() async { final url = RequestHelper.baseUrl + widget.imageUrl; - final storage = StorageService.webStorage; - String? imageCache = storage['image-cache']; - final Map data = imageCache == null ? {} : jsonDecode(imageCache); - if (data.containsKey(url)) { - _bytes = Uint8List.fromList( - List.from(data[url]), - ); - } else { - _bytes = (await http.get( - Uri.parse(url), - headers: {'Authorization': 'Bearer ${RequestService.token}'}, - )) - .bodyBytes; - addImageToStorage(); - } + + // final storage = StorageService.webStorage; + // String? imageCache = storage['image-cache']; + // final Map data = imageCache == null ? {} : jsonDecode(imageCache); + // if (data.containsKey(url)) { + // _bytes = Uint8List.fromList( + // List.from(data[url]), + // ); + // } else { + _bytes = (await http.get( + Uri.parse(url), + headers: {'Authorization': 'Bearer ${RequestService.token}'}, + )) + .bodyBytes; + // addImageToStorage(); + // } if (mounted) { - setState(() {}); + setState(() { + _isLoading = false; + }); } } - void addImageToStorage() { - final storage = StorageService.webStorage; - String? imageCache = storage['image-cache']; - final Map data = imageCache == null ? {} : Map.from(jsonDecode(imageCache)); - data.addAll({RequestHelper.baseUrl + widget.imageUrl: _bytes}); - StorageService.webStorage.addAll({'image-cache': jsonEncode(data)}); - } + // void addImageToStorage() { + // final storage = StorageService.webStorage; + // String? imageCache = storage['image-cache']; + // final Map data = imageCache == null ? {} : Map.from(jsonDecode(imageCache)); + // data.addAll({RequestHelper.baseUrl + widget.imageUrl: _bytes}); + // StorageService.webStorage.addAll({'image-cache': jsonEncode(data)}); + // } @override Widget build(BuildContext context) { return _aspectRatioGenerator( child: Builder(builder: (context) { if (kIsWeb) { - return Builder( - builder: (context) { - if (_bytes == null || _bytes!.isEmpty) { - return ShimmerPlaceholder( - borderRadius: widget.borderRadius, - ); - } - return ClipRRect( - borderRadius: widget.borderRadius, - child: Image.memory( - _bytes!, - width: widget.width, - height: widget.height, - fit: BoxFit.cover, - ), - ); - }, + if (_isLoading) { + return ShimmerPlaceholder( + borderRadius: widget.borderRadius, + width: widget.aspectRatio == null ? widget.width : null, + height: widget.aspectRatio == null ? widget.height : null, + ); + } + return ClipRRect( + borderRadius: widget.borderRadius, + child: Image.memory( + _bytes, + fit: BoxFit.cover, + width: widget.width, + height: widget.height, + ), ); + // Builder( + // builder: (context) { + // if (_bytes == null || _bytes!.isEmpty) { + // return ShimmerPlaceholder( + // borderRadius: widget.borderRadius, + // ); + // } + // return ClipRRect( + // borderRadius: widget.borderRadius, + // child: Image.memory( + // _bytes!, + // width: widget.width, + // height: widget.height, + // fit: BoxFit.cover, + // ), + // ); + // }, + // ); } return CachedNetworkImage( httpHeaders: {'Authorization': 'Bearer ${RequestService.token}'}, @@ -108,7 +125,9 @@ class _SkeletonImageState extends State { ), ), progressIndicatorBuilder: (context, url, progress) => - const ShimmerPlaceholder(), + ShimmerPlaceholder( + borderRadius: widget.borderRadius, + ), ); }), ); diff --git a/lib/widgets/state_handlers/empty_list.dart b/lib/widgets/state_handlers/empty_list.dart new file mode 100644 index 0000000..da00ac7 --- /dev/null +++ b/lib/widgets/state_handlers/empty_list.dart @@ -0,0 +1,15 @@ +import 'package:didvan/constants/assets.dart'; +import 'package:didvan/widgets/state_handlers/empty_state.dart'; +import 'package:flutter/material.dart'; + +class EmptyList extends StatelessWidget { + const EmptyList({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return EmptyState( + asset: Assets.emptyBookmark, + title: 'لیست خالی است', + ); + } +} diff --git a/lib/widgets/state_handlers/sliver_state_handler.dart b/lib/widgets/state_handlers/sliver_state_handler.dart index dde4ee4..e160f70 100644 --- a/lib/widgets/state_handlers/sliver_state_handler.dart +++ b/lib/widgets/state_handlers/sliver_state_handler.dart @@ -12,6 +12,7 @@ class SliverStateHandler extends SliverList { final Widget? emptyState; final Widget? placeholder; final EdgeInsets? itemPadding; + final bool centerEmptyState; SliverStateHandler({ Key? key, required this.state, @@ -22,21 +23,26 @@ class SliverStateHandler extends SliverList { this.placeholder, this.emptyState, this.enableEmptyState = false, + this.centerEmptyState = true, }) : super( key: key, delegate: SliverChildBuilderDelegate( (context, index) { if (state.appState == AppState.failed) { - return SizedBox( - height: MediaQuery.of(context).size.height - 240, - child: EmptyConnection( - onRetry: onRetry, + return Padding( + padding: EdgeInsets.only( + top: centerEmptyState ? 120 : 20, + bottom: 20, ), + child: EmptyConnection(onRetry: onRetry), ); } if (enableEmptyState && state.appState == AppState.idle) { - return SizedBox( - height: MediaQuery.of(context).size.height - 240, + return Padding( + padding: EdgeInsets.only( + top: centerEmptyState ? 120 : 20, + bottom: 20, + ), child: emptyState, ); } From 2a28f96a3be28eb3b82f50db76d5b897a0751d79 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 29 Jan 2022 13:55:32 +0330 Subject: [PATCH 159/273] url launcher package added --- pubspec.lock | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++ pubspec.yaml | 1 + 2 files changed, 57 insertions(+) diff --git a/pubspec.lock b/pubspec.lock index 31400be..c9f9dab 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -670,6 +670,62 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.0.4" + url_launcher: + dependency: "direct main" + description: + name: url_launcher + url: "https://pub.dartlang.org" + source: hosted + version: "6.0.18" + url_launcher_android: + dependency: transitive + description: + name: url_launcher_android + url: "https://pub.dartlang.org" + source: hosted + version: "6.0.14" + url_launcher_ios: + dependency: transitive + description: + name: url_launcher_ios + url: "https://pub.dartlang.org" + source: hosted + version: "6.0.14" + url_launcher_linux: + dependency: transitive + description: + name: url_launcher_linux + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.3" + url_launcher_macos: + dependency: transitive + description: + name: url_launcher_macos + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.3" + url_launcher_platform_interface: + dependency: transitive + description: + name: url_launcher_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.4" + url_launcher_web: + dependency: transitive + description: + name: url_launcher_web + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.6" + url_launcher_windows: + dependency: transitive + description: + name: url_launcher_windows + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.2" uuid: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 2742944..5836571 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -59,6 +59,7 @@ dependencies: flutter_secure_storage: ^5.0.2 flutter_html: ^3.0.0-alpha.2 crop: ^0.5.2 + url_launcher: ^6.0.18 dev_dependencies: From 1a04e7aaa7e7ad12987fe38f388d9c16111d701d Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 29 Jan 2022 13:55:47 +0330 Subject: [PATCH 160/273] model updates --- lib/models/comment/reply.dart | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/models/comment/reply.dart b/lib/models/comment/reply.dart index 02ce66e..e2fb35d 100644 --- a/lib/models/comment/reply.dart +++ b/lib/models/comment/reply.dart @@ -2,7 +2,7 @@ import 'feedback.dart'; import 'user.dart'; class Reply { - final int id; + int id; final String text; final String createdAt; final bool liked; @@ -11,7 +11,7 @@ class Reply { final UserOverview user; final UserOverview toUser; - const Reply({ + Reply({ required this.id, required this.text, required this.createdAt, From edd1f2307941dae7b06fbbfe6f19274d3688e3d9 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 29 Jan 2022 13:56:30 +0330 Subject: [PATCH 161/273] index page loading gif added --- web/index.html | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/web/index.html b/web/index.html index cf9805a..96d3c9c 100644 --- a/web/index.html +++ b/web/index.html @@ -31,8 +31,23 @@ Didvan + - + +

)51FG8DrW7%Hbnszc4fPJ<+rWuX22e!j^L8Hhr$F zaMtrNxk5pX)a{=H9oY+M#p#oP!ZyC9FU~E3JzpvUmKK)nOrE4&jABWb>^?tJANBZ6 z)+!-4GIEEQv=-<-sx?_x+Gp?Rlll2i=m57+pZ;86?6HYKX&i=J4WK}5nTS(j|QtSkR7DGXyt${cfqIkjY&qm$iu`5g#S194-FC( z5wSY&6&RQ4<`&dyt<9yct1?`ZTp$2xa0>Rx@jV03o4 zB=EBhHZ&jOALjmf?rAaD$}NcmRbv8ZI`?qlVPf~?(!%C0{$Xl464y&VEMweCO&ysq z4yxI@`{y5HGF8d@Bp$@VG--hXau^*-lTO$G1tD)2PjCwt(Mxb5mUl{Qa-t!u-U)GPx0#YD{AEDjVwrgIS8?9Q8Plcm(nq{MTeaDi z9!A<4++=U~)|0$%!(RS&B96oQcY?jq-HnM=x$)(_nm40$-zS`AjiiyEmInGLbYmGm zB2_caA?!8}2{GG}{y1^E}~gP_dxpsITL@T9>KhIKn5;A%(kykxFL86B`xY~zTZX(>z1tdF^~ zY?$&<2e>1sSNtoP9Pr`%f=!1k%;romqiuS||3L_5kcw4F1t4&8W_hN~C(*IJwwyUQ zXIEr`N5_J|fg?rt=w{=fBf-oWLp$mhD6PAFkj7Fxsx^dbs0GAH?K6ecgoN+zXnLV= z;3C`UnsdWI)2FO~r`^iG>J+&d{}gVavR1k90z7RKrbHR`Q-cD7ei?r=ea!Jkzq2pc z1hU0@a~@{*|6bza>?kz}Y@@p4WJcOwIrcUd$9wihZYpahMiuV0`pniwRLTjJ{MME^ zn@m;zbvYcv-FLb7aa2yFEIsFU;Gm<;z{_59rVCY_7oF2`JPQdVKz15NE@=ON=7Yl9 zg;9otHlLH9b3$F{nflEd=4nOOyT#-0)KHadh5)YI7t~wN#YD}cF`1f+xOn%cn|)o| z^M4-E2re84U~IFuoi<#Y^;~RHh^C#|i+JjXs|9r08j?02-=!}bXVY;B414bM*xf@* zXhfq@M)ex&jVKI0zsQ}7g5bx%ztI7pAPmB!y5ScI%4T13FZCZ3`5KEnn#~Y=*73gR zZ-^pQ-Y+|BeCl*QjRVW2&$89qTd-)*7fN9gR4>70jxB{S32gA@VA1f32X?dz{dTeJ zf+HLEgL=1-G4pqIwh@l)&Y2^jLH%a-R(az=LPBx%L#cxsKVo~d?qDD%oEKAW_Tst- zTNbv_JK(PuZ*6}+bx}yno;%2cqB0;lBlcz>D@SEbtJua-q1k}jf4L(pWpNot81sM` z6)K_EmwMP~bn>~-)4=^z-gogy940YOoJ{fj3D!8hrpBg`%`nNl85pP!adgI@B0~VR57f3_^HUy9n{{=BJMT00osvk(sQU_^l}Z^|bNJ@Uh_EZl zF{^-rI_2b=%4?VIHH9t9t};GKF+F#_v##BI!OaQm3H6`oVsC-0mhq-KQHn4)TqP8J zCVuBjZ2w6@$J4dVwSOroG^B$AK!V8&ZUZjYu?B#*6Dg(vVMh5F_;Y=<8TJmGXb&jZ}cXa6`&Gti9Dl&xil?&>Q(l z8*pg%u=dQAL_Jy1Vjk|0ek!hNn|C0Z+jc?+KW3HnO^jPj{$i0en%O6ZA%Vp~>c_{yA#Ij~b&ilgPz-8&o zH8&1R#(5zT!mfKTu^RVI{E?clcJRaOJe~I!Ja4uF6>3=es{aaY{EIEOLb9Rwd2{DF zfTPpnV23y7nWm!8T}Jb!*=m8e4@HO?5sW&)uS`E|>xR6vPg_4u&&|JH9Y+*jpSsKy z<+fho7VLo;3?n8Q@Yx-$T(1p`1C9B9ho+J;0d)Kg8~Vm5LM!<@z?b(v9E-rsYmn3= zoA8|9KMs>AB-^&xH~E4b1S3saGnbG?sO(sE14FANXu?nByNIdv2aePc`~!ES4q<(|Ih`6-85@@4pV zyuK^;r8M`5`n+?$G;)2{7ZdT!c`{eZI|J^dO?YDWijX`b){#xziCF16Cik%|_FKtd zM04+j&0rgLZ<}&bHNd^%`k-!nU!9 z`&>p#g-b~*t-*enP3vC70W!~Cg5C+kNkK5kLFJ$N3wcr3;mU{L2@)eaD=rkhsZB^| z^8r&Rr(nsT=bKkkUZQAX@W@kxSP)(^zCd#(#mWbL$ zTsKWWY4eFLLoO-vOjH5Obu!QX8&!lkmO+DOAw3U~we}he*Inci13f0;GQKHaonmlg zOBvHL|D!D8I?&(tEb_nHz!hps0vPIq0*oV7v1Oih zzFNm{B2hN0Zl!j_%ZLG4*O;KAk^4uPmTg+-vz3JPZXwygQz+_x(>Y`u!B$U$vVaWs zy7l>!0(3GSeBq6sF~khN_>01d^)+UzVTw2d5PpNA$7hGaFhGT<=mQi5U?@unN%@U| z4_VTmX^LjQ3c8;>2DWP@WWT9Sd~-UlID<*IE)`u$B*8o0tR$+>xZT?g)CAs^V!j13 zezS)FQg}V8(7~QP3E(f_SVHLYeLC42_m_3_&o@M4*nnm4zfc`Q{?EaREnk~{1SUSn zmvjXCLVzAi7@$K`rJOg%`*D12fmrL+@U=H0IPU6%0a3u#iXB^^2DZJ@oj+F$7Ym55 zy>SV$0?*GT2o3Qvv=x?*JHHkOA>MxBPu(M)Ys2QN5>!afr z-_U>OqDx4MGE8~+MT#9486$~k3_AMX3&2BDmXPeCow9cR_b$1qzwSGHni~u-kj@ul znE5+vddk)%=Y44x3r~R8ZAv{rHebKwg-Q~vBfsT|=ol!76li`T)%}j-2sWJb-jnO+ zlhYNpx~1RG(oe)=(&NovIzqIu?tVn_br0!z>5tGnIsP$AedpauH!WimVdbZ%@fMtN z@k>!Qy+M0_3Voiq-=5*^uJ^Q8c*1(x#p0K8w&bh!r@K}^wAVcFaJv>?k9?xH-sW@O z5seo9qy6Xc?791M5l~+DORhOe{Gx<#&fwq)x1?X(U+-skPK_^YYkU2J04OR(PQW9S zg%*&xqC5zO0a%Au`;>MlJdfAUWlv^<5Aca!_+@ePFZ`CeO4he6TeN~N4#z1Y0gO7# z5%8r)X_aU+7>=)BlsBxkcd@O74YuW@13W_H&JQ@uoBUFq*9!8Y@NZ!A!M-5s%Y3`s zsx?AF%6>{kDTFC%6)iIUkIhImO$OTJ*#SxwQ|1_|NiL6tVlYZ1C54%yt3Z9&vL0$kUQBk_KL?bK%a}3_c=eWXj5@qucEk|&lYz`ZmqE9@7#mA z^rL%82a2B)IC36x%UxFkkL2tZQkr^7Ty{(FohvGq(=wMN)v)dHG3>ya?fp_PM|rQa zTz~DZr{&21K&q-0H5k8B2hHyFC)Ap4Az0>|5`yuHQV)@@OgHUc^ai21jR`S|lvy9d z^8jp@!%+hQ0Vf11i~L|U`Jh?ngq;ePkrfC0?#cV0y;Vwd9;MuM; zcb1kt(YLlpF&9$0;(0ghhh*{r1NKy%EI<<;O-I0PqyvQn{rEt;_Lk|{gt2)Z7Xi(U z=Bz0yq)r9^H}F`!YFnnmNqb!KdLEQ`U}@MD^o0lYW?0tZ|E#=GhM;9%@i<#Mem$tA zp$@Wo*nns`gY34^&F5FC?teZA@K{sS{rnoo+*f3CI=^o3g8s0-G}9%8QvvvV!)(Um zOD2|>;_s1#>MK~63??QqHuH^>dVGysF}1v|V=yRf|_wBiNljc<-l{T0JY5Hjxu_`eed?`iJ_ z%kKuB(_OlroqwYSe(@V@c;*0B5I`GTnwFwumZ`Y{!Bn3+V*BvciV2LzXesx^$~k<_ zT)ciBVypLjfDq3UOK}M6K_+Z^Mbf0<%E2t5Y*2Jpu}J8Vto6{YeO&g90S$8Z>~! z0u7yf43hLBxLu;tOrwLguQQYNKC|%uRGkuFZ>o?N5X^U;KJ`FuEm$?}onlpIbg) zz8h7*X?*K+= zlXrsUCy{T_2!~r4^!NtqD1|hjYC3?3Q@Jj#n+*MHc%Oqg#AnBe!acFC+vfGBXnXCp z*q)_G6#XhmLSDilVkEU8$q$#+sOa)E@EP&Yc|MvNDX61+_`i!&{H?!0P0ot(|@3YezW+QZk z?W|c+EVq>eOJ0$vDuoS4?^INbj;DVfl4i5ayT(=~7!kVeFH(w{%&I|A&$1sDQ&;Xe zLQpySOduWpeJ+q8Nc5&ASWTfB!dm2uoY-V|rAU zICDSE(3I3VhF6k6PkVB^DzAnA+G=SwJVM<19UUm^K0G3*ibD9Q)#)bWRy|v3EaeKi z?+k01ZEHpUHKPg|5_y|2gf9M}yCyl`*vgLQzRLxVVMVtX>D>xWM61ENF9dm~dzHgn z5ql^0UieBG@Bd@#JENN1nzrwRgpSg?bU{J76cI>7s-P56K)R@iQU&RdP?RnxA|O%} zklv*C&_P6cuYySLEfA7?x1Q%&-*e7+f3fbh_>sM5_RKZc%)a)l;>kowe0;?x^Q$<8 zN8+6)4&z8M-U7>4Xn}pn&5A50@@sdjzyUtP3Wr!_9xwjW<}b%yWMqdXdw+4LAUR_O z+a(9e&ekZU0Db1B>4XV(1_19KpT(m^rV{R#4jBJnmAe+2Z6-W0-^{6W*muPn-zKzT z#T?Z~ac*-&9wiA-K|2@QVppo!{O zin_Xrr##&R)J{6fa?faLmTju%@*D-gK}F6MU_Oz|WnS|vh_KcozHI4#B!&U!pCgE*6i6g6i2 zLHHrjNcu(PoqGC*UY`|8ebJsemWKOeL^)!ix@;hlv-4~rVKe;0)aQbZbXbcUvvBX_DhXY)43Z@ zFDo4{2jPT(FQF=dXeJ26%HkWrsxuZK>=TyuQT{lVlhN5m4NG5_*Wn%`i2!SlOwPcQ zFY8tkoC9fy1m*V$Nxaa&uA>AX`)CCHSLTk3ndKwi#DOH>0Ld?Rrxb(w|A9eL`&f4 zAG-dNdv`^hfyvdHgGpVEmgU8<=|ZgGBuY)==j)e+aQ2L8QkF0jF@+>gWdL<5}Hnh9&_>vC1@)4rDAtzfydONyi}G_=^)_ zBgjAX`m1BPV#81O3RJYI_Vzo2vQ`p>xIV?F`UK8+uGk4exlqeyPdJ<{0`8qFGWt2& zaC%ecArJ|wPD5~n{vJ6fAnv>Oojn>jwIm)j8pF3&mS**K4%wq5ww(PzW}OJtcxrMX zJ{ZUzP1MW&)*C?&ECAh^;H4h`4hnxA0*6MffAX0;Ukpu0xBc~159h3h1=tZ4CA`$2 zLTgUALCX6j{C8m{}qwr#4Wl zhc9aK=%Jc^j94B(LNu+lO(7+)4}a|}3~6~c*YLA?sk*JMs7ncP>h{?|?Ox?;MF^sR z67d`VekY0TnG}E(4Y0n-Hn>F&)OD|(FynXdy(=jEWGc8NJ6V==(-yJR=pa5|&MVt6 z+qmd<`S7RJX2rOrB{243Y=$hq{)v4!_5e0}(yNZdvimO03wEEZ!=)T3?Id0B_n{a; z-tDr$TD`ZAC;;t+)R&`WK@OickKaQ5vPKhD4zlup`d7NJlM<@_1cz6c9W@?7V64y) zh9P}^_iiGv?BqlRLC+GkV1OY|^|pKHecoVDmTt)u@i>e7V|29;*?wCUNYTQY7( zR>()Yk^+y-sBa1XJRo#FY+$^og2N6;~)nD!V?-JscetGYcSh$=JBY6~fCHVCk68>z)(G@7R|D|wm z;L{)Ut>hT@BySE5vr`*J9(Cw_mA+TMHw4?3Yxvl)LF;Vl)tkBq{}c<)6G`u##E#|6 zEbh##RC(RAA1suOp%_J2Cxje^Zh*H_ogRaM97V*Xt`JW_a%mN#^je7bI_xKoS*Jy36rB2&*xqebLIkeA)bt748YN`P?ucq z9}n>3lOVYmgF7?cEOvWt%lO06Ye-IKpuPXK8Fn3$_92=_M&wOFxYnm5S*E)P(~X{@ z)V-gEYRWG@^o1;@4n=*VTFT~hLqs>WoXKd)pM28oRnlnM>g)9VY6-9 zvC{MU%{qX6Wlm-Fwdr!23MiV^3JzQ*Zm;CQ(+n^4IbY83uhbp7uF0eS@!sd-wkzKI zO{G&is1 zyNopy_HCAA-+y?kR23hrw}iuK?iKtA6yP*@5J|(0|IPwrk*}A~e#7(5M|ZMi1KOzJ=Mo_FZ!(2kccjp^v}U>o(S?qCA%vPBtu+KOQ0QFB__T zlPgB$vLi}Rxra;Ro%xP2k}zMNW?qTUK=BS)oD?`@m@6ix_uM+*YXNiI6IQq}eNnoX zsPWHYVoDR)v7~rK&UhZPf$%hIoJbtIZo4uxpeVypE(x`gXLq?% zr$GhmQoOwMqxTjBbJg$pig5i=Km25n%(CzI1OOFS5^R`yJod}Gsnp3_JRr}F=1aT8 z1>R>6lm_PcTle%%r6u58prqn_#fqC+xLt9^?a6DTK}h=;_f<1IJ4 zu{EuoUb{p7#I%kU;KmJrI;V2_W3ziw5L6>dAzA59!K3B9rXemxu?@QAZwYbzQj_!> z)ru9SdX0OG&4G39GY>Y_kid-GIH$e ziIbU_*`yuELhWgF>GZTQ84Ub5NsuxYxv49=P!9N=Acj(5<8s4$~p?*)#%kAW`A+`e9YYnd$8d z$QTN=!E5dbdYkxpKAfX>9PO6fZtz?0g6xnUiFG_ zeP`C(JYD$>vG&{VJaUfBtX^Kuw@&0=(FmHBg{^(rW0x7>08cRg~cSM+wlJqlAPR_X)*vyAXJ@!J4jI&nHtg#%6);39$l zoxlSUFYpTP%0vOv$w{rq{_*JVAsX|Hv&y*l4X1}v1ylEU=feOv`<*<)muB3D{&h2& zSNE@O0DEefTHq|nFaCGkmvEqp8xLmJH&!_6vkpuGiYz6$lr5phOIBTqFaNte{__Ru zIeu`EqrX~1fJ8#b(LFa;r%W<8zfvB^%G$xU8odenqt9F%qnzs0KOz^Og}rQ{(>;Sc z7sXyxQl=@ch?B3!M~p6S5m#xv*UFdd>|Decah`|=Th{BA`l7gxXJ)K>*L48rCqzwy zQ)zKf;&WwWRl&T*H}(#&h1!*=-|LUx-vMRN3!YYnR!l0=$2_@{JM`2n1AH(}B8+eu z3PhWdSzdbx4!CE1o#F)huHe5o0O$A2G(FQ80HLGOWz#=Y=I>PW|BZ(E$e$+VFSdMz z#7YxPNVSCIxI6lQy`v-q!@>v_$#WHN$g3!I5nmrDrfwUF_3whh0*l8&D;uee>W#;F z-2F*K${JDL3dfCu8MO#-PZTdARaiiDx=%7a`|sny8Nd*Y zHf-l?5ApVwnA1n;0QrUbP7YBTkXN6aPqkoZO)S;r<)fTFZoQJbAIZSbJeq=fwI*qLSAnWaW+Kaf>c(Nk0KkC$=Qq;IDAhI`pEA8NzmlpU?(E9~y zpA;pA$%fXspd>PGWogWsS6@T$9VoX5zUFf|V03+oP_jgUe zN_<&eQo?L3+IThk6+#Ngjo4EGF0*sec7BU^bys5GzV6k*)Sv(3Gymg3tWf>O+=@ib z<*eJwdUNSm?y}k;C#TZ&#>#57pbdux%O{3!rW7hF@}25#tDv(XBpi1U8azT)8zs#1E3~ue{K{Y-Y~#Io%}dS$%sxX-c$nP@)*<#RLA< z3gMlMk1uC`NrNFvd1Zm0KMeZQ^wyWEZQxp%ukA?iL7+xV3njo!iTUS)Ns zy3^fi)XSpcTGw8z;Dt?neh4eqyD-{%)ssY{PX>&Tfm2^-p@|Oe>=;6 z*@Y||yeEJhIoEuOBVl(}FvA{=$Y$)#&V076)J?x;$^OfjZvV?M;tC9qf+C@BzZyOr zS>Df4^PUG$=2UESA6Q_j7bzbJ)Nc>*?{6PV8}_>dRXF(3l9Sy8#v)3gX+@Oi@C(5D zm-1;4v*BL)V>5?LrbfNbzaA~X=Nsf^T3UO8;S3!M7^<1r66*?K;X88 z&b<)g&g|e)(8!8kGFj!ewCZ9xLXS~Cs@Ay!z@S!_=jR&xomJzgA$@B!%X>~@{U|@| zdHgY6e0f2CNN3;T*k-A&S5m&EgWYG*pV}F{n`dzft!;CkR7vjVA;^Iw-6jRO4pVc2Kr2ypwpq zOZ%4GO>5CLET~IC@vmgVLDABkH}#Iul*wn9`X3kFvD+NtQ`&27*-wuLW1FRKxP|vG z7w^^AWXquJ%M+P3v*nI>2=wp{sP39F#sonJo>Prlua@_n*K4(QL zC?apdt0R?gDEr@v|9=9)pK~Pf5*RI@AL%#{d_P$)b|4GdtVU(}YTnTF)F*wG@}i;o z4<}At_`vxBN}2Y!8tY zcFwg9n&)?bZ#5l;kU1>-@+ z!vGFJ>ml{wI`yGW$Z(V?*Tt|nN*pn7&(+YxEbYnDSK$Zm8Gzf61Nh%#^nbn{X&{pZ zVh$FBcQgD7r@ZpwF8tY4VD6S8lrpx}&opef{N~9IP>pqa= zoZ%SisuR9{9G$<65=%FC&+v(LY2sNQKQO(}1EJLDgPW_BlLkkdNB~KP3HQDLq`jRr z1Yt0!w3(dMc+#c4f7Iw5L|7FP|MMh}ZyqnR_k&%#jYt=?3VG-SYuTel`NbyrBCIg?& z%M^ZIcvlr23Ott0))TX7X--g?(dz}aqs#u!V{#dGsm790OaIGYC}j&>bVbM!s&7RP z<&#uPs4uw5ZeMQKxACdF=gyUO{130}>#^}1CHKx9Tn=|P28uw-}n>b zbytFV8$ZW^xC`TGwa9T0#0y~jd8pFvrr#*l8h+u`1p${4S`zg2jV6G;NB*dUL+2{% zsmmYY;~zd1fMW?r0JpseY!RK3)^pKJ{H`)V5;{T)xBwxY=8DogO}Fk@6uP&!;^u$% ztnme9x&v#L<^8G`v-j@(NsxqJwnYPo(^VmR2>J+7xL0eOLa9i@QzV%BFl0Rf2vs7F znR4<_a9jAU;D?`ncru7f9Yme3@Sp5ySPn#WkJ?oY3kD8dqX2YBSkJtytprplfuB%D z8M3s%ivYRCW7#WYz%jsC1GJ8PZn7bJ)YKa9@{a=L&!XgWeoqq_kN1;sp8<*VXFsC* zQTV8vpu~g{BavODsO0(7kr5O#v2;CIP|x5F#_Dp$ZfLea-oQBctVo?|DL^EcngyB1T{(lv@}7 zSz?j?tl(>Yr?b3O5kZF~T{%JDdhZ25$%M?j@sJVULwe^ujj&wOH43yH#8~VBG=b78 z`b}8k$nbv~Pk*nv3dOO-V3(+tI z0>Ve)V~vPU63nzOyedb*M6&k#g!DDye~?r_e4p?5+^a5CSGokgvzcQsuOF&;OV#@O zE_@O4=o1NRKb^;cm)~6ah4?FH0Z`|Gm1-=F&z=l^j*47MJ%KL<#>Ul~J}^4*uPPEW z(j11aPw`5j%rzj5)(8rupacjWn^PZWCP*hC^1c=wBwzMto1roh-+!Kvc;bEhgg>&1 z#b*y?_m6{*?CgVhV4Wda0`EJ6mp$H1$m?KE?$aEpPtE< z4|r>C9j?X%`2@?>tL~pGK@YdV14RKgi1jUg2IiA9g+Rh0cKhK!PSBr5h!?qP)PkPw zA#NSd0=0VK&5?B3-Xo)(+J@Lp0Z{dCJ;xa?yPe-JGWgs+z^SyeO|m~w8a7A2PDa}7eh)JfN!3R#wtybRF2oo(HBWvMR|c=zp^7s&@uL7AA+Z2 zsB5nc#Q&L${$~{z* z>n#k} zW1s$+O9n)0pO|xu^PbUKJ#0|BLkp0@^Y64((s|(TjQj{k=V;>oFStB4ORjpu<=u{J zqSF1vlj2Emv@kgmKRNYt2i0;bzJ(YF_DBhkY}$lg_XB!P=#azFreQ_gE9aK2Tz2kq* zn9}_w5S#Dz_1lw1}5ErXL zF0WrZY`m$&h`)zDx_Yi5b$EIC`T|1XFj{-B${1|g1b9z#(a2TElc87dcrTai?RU#r zWT3EXsROfh$CSTk-*WGW7z*Eie=c}$^*Chu+{b|MV}IdMB?f@ArNi#jN}%27BRDzq z^+eDQ1qv7ME}jQz!qk55S^NiO!Y-e~RMmC3{pH`|0=cYC#imdUrTf}X4zf=sKxXbw z$hImtdzeMy%!OqA0mybpLpCdW3!I|=kIY)D&a-%IyQ8FAaJ|zKHzNg%K ztL1T`Kt87NG13l@^>P}WjPq)4AP4+K6WdwT&sp*Jr1xzeE{`P3+=ZMj)u#3}5`SFx zUP>2VK3wEbB}Zi64ZRnIX89#oY_`j+HCF z5%ku~al)U%b88kKS!hwyj5Mg$dGRP&xLnvr#0o;*@KWN6%RoT7PZ!s(dVz3Q!}4Q{ zLAn?vy87K16+%>8fn&XTR$P1)W!>#vgj0_U|bkZuNkD zYB>w9cPXe{Yl@C&F(p5))is|&pi|`=#Qz3hNL!T^-(;mZ>NxXpwh?y`-;HX}Xe4%L zx$R7HKX!14jXAaq?)Yf-&KV9iq!TqqccnLOmBN;dk%mWV!J>wFhK_--$0aoAJs_8! zGSuZv&I+(|Z7vazZrc2xvKm92o$->WeErbm1PBYxI-2QvYgqWy`%zXUzdOI6I|1A7 zxPNPO-!SfL=bJYd!e_2xVY1)-w$9V@TnyZ06c^SL2vFtQd8k5nROi}z2YLfZaRGAP zd4s$v1+~T#uQF3nE%!u*0-MJak*~W?`AA4YcF03;JQWIk5md#*G()yf=?Ib61*}SX z&oVOsRntxV6#fJo3b4&gz|5k&0<*;L7FX9t4;q-Ll3Z+l2;-R~%XUl{4?9N&-Mu*h z2d)TF!}ot=zL7ekw+mc=W(>Ad%&7vdpB+92l+$Jd+scLF(;@VF|5;2L>@E8D$J`!& z-q?gVu|;iCPuq8b4jJ0+THuAF2KW2DkwlN zMJe%GmJgj;dJ7PN2J>?@&(KU}^so4=x&LL7|E}UM``jdF?XFJz+`*TUM-&uL&c3T} zJKHEga2;+8_Rb0PE(li;#eb`dWq!uI*z@A?UIMtwv>Pz=Gq#c^Xw|P8qt1wi2I+`K z!l2(NC{^j=;ZM&WRNrYUEp^xn1K#7`Ye5x}rAYiZ1pxcO3FusOBkLx4=tOKkRDL&F zvF&LGZ&daRv*d1Uja?Eko}E$y``>VMhPW2KVXL3ks-3IzYhCg)tYCk-pD;4xWmY;e z_{9TyE;w3I4gEof!iq}elB2iid!a##%J*c>HybeC3IAGUfE?}Ptz(b2M!zuF;hjA4 zuMdZAQMK<{Ug(^qsoixlz&k+wGiENgd6haI%uAMR7zHZKm$N4zPP5ZZQ$yr62}VMq`!t<_h=ujmT_>|0>*X0Ah3c&y2$I!tcoxp6Dg^z&d_!L0 z;@t2Av%k*?JqooABOb5ari0w@36Z)^m&3?9p#kB^meaFY4w!agofusq^U#VIQA7Hu zEB=VUTf)%3Gr`c$xB1RgRfntFNC=7RxR&90k{ik$v;O0Qf2{W(Q>M}d9HtOE$s5(d zdk;*6XIkq7KA;#Y{!XvxZhv;7h41a;q!{ z9|}pbD8N3hU6pC zY=9#~nLU3F_EKB7UUc5;ohmS=RVr6_C^T@fgs6QLXki{;qo9175A?>yGI1f@RMT#I zgJF7~ahder?x(9h_rcwx($fk(@G3XqKzA-9AXRn@UV--5;YJ$jO*9PaU-V%HcHP46{*9}zoqD_l?m^YCIT+nnv)Uu-#;`^pnF zE@}6!-^gE<^5+Ox(Q<{ z==*G;GH5eqhFE?qLF6-Gw)x1i=f~zcOg#kGKO2j%*<&Gtj6toESI(ivzRUR*i30tV z54TiWUWsl`z|gTO6x!WSJ-4xNf3LD&jox=V_q}NHl6>T^{4hl4!X(=jxl7)f#M#n` z2L_V(joaFDbkH(yzcJPFvik2Vz$8WwBR}78?ri5>;HCJ3FH)jtK4AHt^RvhgmLh<> zm%2F+pA7M{_?^4{=9Sw!6l3$2H#A6BtK)o3TVz@fE!FgL)6^#$jfoDusKhX0K>n$A zS!&oxR%P9lUGbAJQ2Cu}*}G`;33%;D{0<=g(#=T@d=q%Sk+{M|*lkhr^{{1@j%|5! zl6vFhk$7Q4Mi7A{68|)W*aQb!CP>eZd5FIg8Jn7k*GETN=Fj~YG{P>7Yb*McgqIii zU8ZywMmB3GZUjN0R9F!Tz(J_3NhT4f2x-~Nr@~MI^Dxbpg$ICm|2LTP>$C4Ews#uq zPG0@nIrHd44^Klxh@8r{4n!tq;(6)SBICE1#xz6q^t;kj<4()RathFn{lpKoRUOo5 zdG_ZE!gE1g_UsG%B-q2vd~$$zf;YlGX^Oz8g)XLmY%=USN~@fsYc zG!w_uy2BA%5$Sh}7O)xUf@zZce5Zw-y;1B+w3?!4mB1&YHP}vLrPBrMxGC5MJ4(pi z%TykGQ_j(-=A?!O*+-6x z|1cV8K@1r$54^Et)pdAwWZC^-M!l}Dl-jzb7cv-gNN1ZU5Sj`x3Ts%vnL{^k~%6qmL!xUBh6$*xl`vMLbLrQ z$d1}78g`nbWDgoRkoA(aq)mX2^Z;<-AUDn#ayGbde`}jHqI(V7vDLdBO{Tl;?80_6 z$>)NE??*b4Q+eM*5_t$uyFandU8qSx2#j%}m5{VqSoWs%PbwH_kml)`ZykG40GulTy! zlDabRC$Mw3BQ1?w%el?s3$+b_JrZTJu37JAhy)UzZ&RhI0&YMnMZ^;=lHq$ana|)N z99OZ&Kj;a2@j}>xF4z3Jnbu7L9p!qL6?xzT@u7#W?ngS`Z+Eoz7Eq{C+XFu35bkz` z>A$rSL^g-S-+GTkDnO)6T*w3rw4A+xVeVIM67%ZmSIjXRmT>f$TQ40y{cFLV;M+bB zmoMIq!ftkpq(;LVUnPAACO^9q5EF#zRVPs*BYc@M=EZ%Fg-@O^GRAH}w3^wuBs8NcUcbXplnQODz#lF99Zt%!q|0Xv>zPJ5t2<# zCoLOVh$m~QssL!jCpo;;p*`Mrnaj1B70xs~hM+G-_FDx#%M4!}P4YaMm*EmCm^-rV z_AJ9vir)cGFL{~85JeS6$%d6RB=M;bm@sdLwK!F0LNV`BD@_?SA0?^!X+O(%g zyNpnyb0Vm44?^!GseC#pKbnk`T(X_e9M{aud5v(vxFp(;Y?Rmjvf;Kbo*l8{~(-mh3_&YM6a7^Mncf3i?rqp2& z{yr~fx#}^y6U7uPO#zoLX~fHE>bD zzzv$w#>6v!JzNECn+4nMi~@LY&v2m?Yzd;@ZYD!dqT~KmD5Ob4m-3rAg!~28dzsgJ z9uR8sSEc)U83~uL-Sqn!EJ*YA(_t_I4IMhM80+rg3$!Y2KZ%oS8-8f}FXX%!@ zai_ZU)Q5AAjDfY&&*dOBV0YzmJE_m_;%E|tJb1jo*FSVvh|q8>avUCsy<>NVOvvP_vn`1=RXrqs25ZI^xZib_f? zEt9OV=Vo6C(05DrJ;hug(*6Y_G(B&CfadYeEi7(Ct1S&YfTOz^aH3sA_c~$ zSx2bYm9J$xR8J|qjLgkfujb>wd~%MIKJ*f8NFKhGCtA8O>basQmUGKC9~-5P_AYRQ z5{w$@MYy@UkT zwownzQuT0OpQr573)fk>meo9zLmo&4@Q~9+k29fGIOPT@9a8|FGvHeUoK$1%l%CJ- zy$wX!d7VRD64TbkZ0TCeAAePNb#x|be!dNDNa-(pahsJ=^IFq~D$NU)LbEI-QN|I0 z-SFa~SgKcIz~qtcTBAHvl~%%ojiIvxA4~^RB!%Cw4d;AS{rIu8BugGuc4(`ineW^8 z9DQAEL;s4X*bn5Yt0@s@L?-$iDE)8 zV~+|V=GF1jgc@<`437YmLmR>fx8U;fNamZ5gfto&NE5A_;R{w7)^7H+mA|sKr}19C z#9_sT_sJNf6U%NjwLyb;A*73hrP<+D!R6B zVx7mjJ8(_phgLd1D4pD79rsxVU5KtKBbN}62=ff&C+WGQas0NTLsf-uJ$=LFg%c+( zjStgtdTZI|pKxhg3?|0Lxz`y}CCh(NyG-x5z?Cxh-}ap1b}l31NB!kwRCDPTN*>L0Nsm!;+H-Krb&0IY)nz z#6Pak0nUk^FN?O`FTP-Amx)ZrvEynrf7J;Zyl}dw7cR*JpLf*1pDy`IL{S zOW1MJZHhI*b_>b?!o%KfS(KztS$0o?0W(br5;@{U3-KD-*rHjMosQCnim38{>1037 zWM;Kv3Y<)K**2GrHpcW8`5Z@ODqE5$E%WXhS-TFnIu!a)0oa51TEc)tfw>6?mOYn2 zQtk?JCfkciJ-X5%GHtxG{H&Yv4|jQ*k|3oO!G8k$smIXQ?Tc~~??f|PbEjOhJ|!E` zgxE~n#1Dd#q_MaS@<#8tJi;9lR^~i}8dv~kC(c_snpKr=arre?+$&kR;iTEeEkvP- zlRdgF38BGiaaV7OMMhH3jZDEdXH$L?S;Z1Ef(rz7GTa<4Z2N`_)qvR1W;+$ozeOv4 zk(sF2#0WfSzyGtM-XnBzSX9w(hdr9v^2bqDx91luW%tv`3!LYY=mOl%WW;XY23hEK zeJk%vI(Ww*tithbiibD)!QyqlcsYe!>Sx{Xbnh4K@>pybV0g85h6z{S_%zh6C4gO_lI#{sJ*Q$#j)B z>?YNN17*%ZA({KqQ_&Q}_2YO|)a0Hx{`k&J;;xg$EGJ@#**bHlkz!t_w{fMPr5hzm zYYkzfXO-wQ{i=boWKq|6DS?oF>ErQerze?hDme)=X2pFnew5l%hITLiz#;SagfM$x zR)x8#*Ytz4IY2=UQv5JcL6nR#2sEaI8i$l<3CaK$1kiz-FN6P!hsOLmcw$fZuXGpX0*Q!42|?AkhHQtUpek|UzCuQLQlFb zR8>ku;izs`)k?eonVCrH{W2!PWg6HQJsl$)sK`-eX;TRgOMLYN$`L$RY@bWpG2)!G$$_xmH>dSn?b9J46eEVzUS8G`CyM8t& zpM$lvf7cF6v=WJr4Rn(IMivvggzKgS&4Q!K6hjJzKMO9%d%PNT?IPTSV924D_D$Y~ zEZ~JJW){{w(}B4s8JY!*T-HN$v<1obYY?Hnu;JNnPIBpl`z}8RwcHNet(~j5OJmc) ztqAkkyIm!t^fEDwE|TVeH*x>^nSlYZ9mw+>%fzQyP-KWDzlAZZBh~*CTgIG4L%AzD zKF`#%Y@aeZ{_eJ?3tU^=Xy=I^M@UEqvgE-n&g-n6OHb;S5*uF0JFvQ6o~;c9UcU|y zy-3`=kv=y!?h;TIJf?@VNc#-udGrDJM!9`~I>E+`fmDDW`6`~})fGoqYtz@5yQlY? z>8PSOUR(Q*CjA=)O;c3OH=ArYe4J{qF*U8`^0)1YHrWkJ^Ys3<~Kcoj{>aP zaba<@4wJN6$)YE)1p^Oi`rB118^&<08dlQW72J5Ar zwtA_Ir&A;Q$F&_7X~!5nVq3YTn}g^W?W0lMJ{rvjVw&S%JI54J^70MS38~&Av{m)} zphcVQFLt1Fbl)IOzp$H1Nu`CL^9bqJ{g%Ieetmz$^ue=a*My|N-ilACGhwJDv)zbZwYq8S&$8grq^sD4F749=@F02abM_jI6j%F%s+0(*DKoLsF<|Gj z{bml6ecx`$>ozEnuH3fffJUnYLc!&lLqXC=75kVH7@?r0;V27K$phw8;KR^u{qK1V zVSo1z>;MHg#BLH*nRmoO0T>J=-8uQiim)k=<3*_hF{-G_+^qrJqRi*9_@un?ncI@* zm{&(AFkjykER}ehGn?E_1j9>>6|U#O0p@ZtgQ~BLB<`VnThJz+>@&X|DAfjf_~G zrD*#lPN2sPMM=R3$X7(40fd;Hf5>`kR@7e^SP+k>d42PJJ>jloaX~-W04d{PC967B z$*PK^{JHw2D^fcvc6sBwjdM2lZJQvlHtLwJ)|z^MuHze)wjHE>2jiTq+xonIu{bv+ zDiQNV(#N022jMT9`c^=ZdkRu*RV6;HF`8u+uv8IV%Vj~sq=c&N<$~(o1 zn(BzC0wvCKoUW1RjkRrb##!;j7TYFKs{LOu_R4_r1UK(n-|uADBh^`-^*hE%R`^rW z4dAxI@qOSx7m-n<3Kh@CR>S&XaW?miH7WWwFL;M|`qsZPhchIAnG9Vzul-`=1iCbF zh6**B#hp`B#d;&Yf@550^8L1lEzW6r&+x!>+GS2#rx6=mD~)cBr7%i4kY+vo%uJ!ux5ukmjFscaC= zBP;RnN_t>szvzW4psGUB(!;+ep4mG~dctPfD6(GAJRFI2s-83Ts&WZD>5c!p@BeOZ zDlx>!+>)b6^P7DQ*HdOn26#{!>ZP^t(dFi+KHAqxA3qsE$Cp79-h^4Nx>H-K0#;4j z#j-YIsSJRDmK)9f-1l$t4ULsNM_2b4eis2&PIAx284a|EQ&uM<3d4^|>usmF?|Y1@ z1EKz&hbDSW)^_XX>zJv?edI?f4vVYmUWP;zZ9leygGf;;3G?f_a_$Sh)nS08p_gwAesCA`-y+(@i zE^`|%7MjKMNrc$P_4Q+0+;b!4h_L=^D+k0qxyqfEQL1?WWL(q)lkL5zT*4*~-Aodg zLz)h1&96c*QRMk>2GW`ik`ZE2;9#>e%$`zj7ONlN1|G9H=PlX}jjRiXxfN$s zPpG~nmW~7WyW?B^d|X1F#I0~w4~V{}qcv}nGt%vj)bY?S54MnhdJ|XIGx8{YD+(9#2pe);8Ks+K(qEL^MZF1= zh>mhb00clyLh`FyA2?cw74C^N82x}X&%^t7{0j>mto>}rOno%uMH#OgUHhdQuKHFp zR0RD4JtZ!5X4{3$R$p#G*=YHBMR|U}_%+W|l{w5=w@!NQbn zCFJfu_?5XJ+A4cE!k3`M}{G*t`M8Z zx!5dvLgmY1&u}45L|$GY&Ka{L!tn-Zw=$g`bK!gFb2HV&z3@_1zLTsYO45Y84Ri@m~*{GxwSUvs2%o~3xAFYW73 zjebGht--GDV+N-Yv6%JL*H13xcD&g}DrK;vM zr`di+BW_U;AyMq(92u)Z$Mij|Oa%YDB)nJ@%@S)~>QtHMyDmL5qr6=*YdNd?@2GY$ zAVLKy?q{vR5xg)`{rmyl9q(O}^}UU!koomJ+ov91Be5LZ=P=DftefAG=unlmLXuY{ zBS9P^!2b@FL&5PVF10q+baJ`r)tPE#nDfJP8I%B#dC_4Ty_e~~gll?RL7aJ~C`z^dwk^{iWdz zU7%Uqb65V}LK|5isd!Q{UyRpl!Ia?FH^O2qxGXiC6rs=z1@nfb{3)Vz=Tsq6%H?+W$dFUg77 zh?3X-)Mt-ud>;U@HbDuTY?x&$1Szgoa%?onEmvkGb!*{?_G|732DMsTkI$wMe^Srx z0)_Pek5Jc#i`Sg{!#--KF%Rh%jOY~_{*_z;lkxod_Vx>lYczvg+rD=`li541Lxte3 z*CaW3lA%%;u_hEoeCKH5$-c|a3L z3S}n5<+?!RldcJe*&Cf{A@NIK-RPLYlK-+*mz4RAZoC#ra}+k+C=ws{7Bw?#I8<79 zN?Hj9YW z`v-GvblL){c#2iXYCv80mDwUqiFTGDk!R-rudOTphq~>;U&Gi&j4UNYwy`T7)FWF` zv{=h7TSgvxWH6YaP$a|@!U);QAp1HaSt2o}?97y&5EC+nWO%=y_ougd??2%_=X1_= zo$I>Ky?=~6|3~?Wg5R((onLQk5S}2Tzh%BAV-Kat7MMxrm`Oh#bT4dz6?e0HZut-m zZ|@-$5?_BcoET4y)}cVo*!^sAA3S|ZZ*29V;}UW4J|+i()ysG%LfShZy0&0N^KKXl ziF=|K(a@OiSmlZ43EJk4P9usxI4a_PF-7LVpos8u?JLSxL*Rv9R}}d8>Z_Db_#Qlw z!^WKBlfT~{nVk~SX#8a;Ml*~*Gv4V*W~e3%jQBib&O$qe%-ujZ1KSl69Fc(F?Rl7>yi&9qCU(vV%9B0BqYyU!@VD%K#;Yv92;;4Y=8VyIJuJC`6O1kHW`V7{XU)BuvAMMs{pCB(%|b6UKEmASh625*;DpzSZ;4MaYl*)+x!C9& zkDW3y7uzwBE5_FAdC=e;bx9_8+MJ_wS5Vo9Zk;t$e`)&b2;=>PWmpS}#$pK-qHTUh zCxbGyM_--$@{{6X0)<<%TpADPO|`AYqK4PY7(b>195+Uc^BEs~DE;1)(Q3SfLWcPd zvu6+cuaAx{7`~^w1pMiAzVtkWxgCEqE-v<(=QP zSk@v4!M2D7p!6}VnHn)i7Y^<7+dOsY0yT4{z=IHw6Z+Q5eZx96BvL#bogg6jsjY2D zqO)WtAIWrett)~0R=Fe|Qf5j~AUWkh4f=Sac%+TZ2d@Ro1Ua&iSb>BKw!72xw`P1k zM{kI-zBgYc{Iz4ekus%&+!*Z0-OT*G2d&LBzh9tch$9VLQwyX57%bS!(tA7 zTaXx4|D3jIJ<4@cjKSEv+e0Ll!D4138DUy9jidrXJA)}8z_?IL9iIgO1QBCT(4Hkq zVkPXl)%%ZN;?$}G6Y2Zscmc9N4DP5vqIC_e+RpDF+`2gGH8%MidykEnvtH7u0{FC7 z-Xm_=89g!KVTToD4`=dQKjSt+02)!TDQAHikGP@I!_F&hMMTH#r02V(FCVAf?Bs?k z?dAi8ANJ8dxvWqnzvgP71lyR%m^Hn(>Y~2L0ktNgo`ghN3*Ep(m!$G){3W9+b0pF5=ng+k*{d|^*uYkL|dxvQMT^@45 z%7DQ%Uj)icw6?T)zQ!WqMy&Bg39#9|GjS0_eKu?7`+8|MsrO}dWn;G z_#Zqlj>A^5<1UEcl5>t&Rlc{X_+V89MeYEr#_qA-L4)4B{&B-0Grn<4ugv2^?R>Ut zw)(}%z4dRkHZ)BGns*L4yFL9i8d;_T98|}?oyR_4Z$Kq+T zw}UVXUKJ%8ELNa+DZ_`N^f^>4Y(eYr%5qP?dyvES7V|TC8u!>bR^N3JX20V&_~D;h zJZKafhJNO?cP0=xaIcdL0W80p@&lnUD5ShcMr@c(`WY(gI@&01%kxwooHSze1tL)( zd_4-l>#5%SV>wi0&hoG^wt`iVl)Z2aXCZ?J zLH=bB=gZ_9aup!*6OcMKti01=^b9>tBL%apZE$7(`-~*Fd>3hDiuRVjVk8+SFrCEwI1(67Qg$sGtnybJEiWFgQ)wf<}MERIjq!eTRwwZmZe|XvB{#04&(Mp zRxf4@Lkhr!Ls%CbS*QVQhY)S&zsI++Jf9q^Yrh$~_|7}s0^xlN?*$0)2=Js)rnZ|R zFQIp-RA?!LB<|3-HP_S(ebFcvqbB(`bldJcq6`Gwy?g6C57JUjs*8Gu(R|-<1AS%k zg1{m#xDi6^!x0lu`5ZR|%BN3=8h0oGRvd70p-To2G?heP4hFMPl1#X;=Q!Gl8fo9m ze~nkPFNe!_4Cu{fDTY)A~(>Ynms`s z&pa;`z|#4M|748NeT);$&3!gZ%=uI;x^JNfQ3hN{74lL>ygtsS+d|^Og$2&HDz#>i zDxym-2i)Ad0$273P^`*c^a~dx60m1ZLg4+C#Osg=C63cab#aBgr{n&)+^A+hsSeL( z0&|N%x<(=|V1Md-Yt^qvyZIhR5d>QguVXn}NN#3qltsHm{b;e#P+^2WGx#W3V8cSDDtudE{jpM!V*uFZLU zL7|k@L#S-Ci+a;`m*{IoN*GMR`z_9F91d=Gv=hXaeQs~Mj1-7) zyQD{*+#612zx-5MJw8s|Dz1sHF7*X+G6}0jdJ>mYdU&BbkhAm}W0l+0jqrO3 zYmldXhrWVd615x~!|YjZSYJIEv1Lnukn}X~6QmF9L;H@zwm6>_F*fSm*2WVf>*uJ5z5NjM%Svr;n`8hy=B5^B J31{5n{{w)Sl^Os5 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/114.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/114.png new file mode 100644 index 0000000000000000000000000000000000000000..0a984f285370400b302eead44b14b8eb6d96dbe9 GIT binary patch literal 18848 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 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/120.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/120.png new file mode 100644 index 0000000000000000000000000000000000000000..54ff8536765ed00a38a764dee027ddc0ac7ae014 GIT binary patch literal 20247 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 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/144.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/144.png new file mode 100644 index 0000000000000000000000000000000000000000..f00cef972276d9fda948485a486ca0d1bd7ca762 GIT binary patch literal 25730 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 FV1oNL;@1^@s67{VYS00001b5ch_0Itp) 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

TcJwf@4>18uZE9q5 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 JUx$6D{{gUzl*Rx6 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/55.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/55.png new file mode 100644 index 0000000000000000000000000000000000000000..d38ad5dbff3ee0a4c961140fbf7af43a2001b664 GIT binary patch literal 6847 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 bOQ`<`<3#&DE8S)T00000NkvXXu0mjfPK+%o literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/58.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/58.png new file mode 100644 index 0000000000000000000000000000000000000000..e1fc0c970c1c4f07883c67b569abff131de94422 GIT binary patch literal 7383 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 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/72.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/72.png new file mode 100644 index 0000000000000000000000000000000000000000..7ff37bc08c25733ccc51facc94bfe79ee6fc78b2 GIT binary patch literal 9902 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 XgRE)2M#TfJ00000NkvXXu0mjfksQnc literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/80.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/80.png new file mode 100644 index 0000000000000000000000000000000000000000..6702119fc9217ac0d0a4c1202fab4a0794318248 GIT binary patch literal 11565 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 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json index d36b1fa..e138c0b 100644 --- a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json +++ b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -1,122 +1 @@ -{ - "images" : [ - { - "size" : "20x20", - "idiom" : "iphone", - "filename" : "Icon-App-20x20@2x.png", - "scale" : "2x" - }, - { - "size" : "20x20", - "idiom" : "iphone", - "filename" : "Icon-App-20x20@3x.png", - "scale" : "3x" - }, - { - "size" : "29x29", - "idiom" : "iphone", - "filename" : "Icon-App-29x29@1x.png", - "scale" : "1x" - }, - { - "size" : "29x29", - "idiom" : "iphone", - "filename" : "Icon-App-29x29@2x.png", - "scale" : "2x" - }, - { - "size" : "29x29", - "idiom" : "iphone", - "filename" : "Icon-App-29x29@3x.png", - "scale" : "3x" - }, - { - "size" : "40x40", - "idiom" : "iphone", - "filename" : "Icon-App-40x40@2x.png", - "scale" : "2x" - }, - { - "size" : "40x40", - "idiom" : "iphone", - "filename" : "Icon-App-40x40@3x.png", - "scale" : "3x" - }, - { - "size" : "60x60", - "idiom" : "iphone", - "filename" : "Icon-App-60x60@2x.png", - "scale" : "2x" - }, - { - "size" : "60x60", - "idiom" : "iphone", - "filename" : "Icon-App-60x60@3x.png", - "scale" : "3x" - }, - { - "size" : "20x20", - "idiom" : "ipad", - "filename" : "Icon-App-20x20@1x.png", - "scale" : "1x" - }, - { - "size" : "20x20", - "idiom" : "ipad", - "filename" : "Icon-App-20x20@2x.png", - "scale" : "2x" - }, - { - "size" : "29x29", - "idiom" : "ipad", - "filename" : "Icon-App-29x29@1x.png", - "scale" : "1x" - }, - { - "size" : "29x29", - "idiom" : "ipad", - "filename" : "Icon-App-29x29@2x.png", - "scale" : "2x" - }, - { - "size" : "40x40", - "idiom" : "ipad", - "filename" : "Icon-App-40x40@1x.png", - "scale" : "1x" - }, - { - "size" : "40x40", - "idiom" : "ipad", - "filename" : "Icon-App-40x40@2x.png", - "scale" : "2x" - }, - { - "size" : "76x76", - "idiom" : "ipad", - "filename" : "Icon-App-76x76@1x.png", - "scale" : "1x" - }, - { - "size" : "76x76", - "idiom" : "ipad", - "filename" : "Icon-App-76x76@2x.png", - "scale" : "2x" - }, - { - "size" : "83.5x83.5", - "idiom" : "ipad", - "filename" : "Icon-App-83.5x83.5@2x.png", - "scale" : "2x" - }, - { - "size" : "1024x1024", - "idiom" : "ios-marketing", - "filename" : "Icon-App-1024x1024@1x.png", - "scale" : "1x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} +{"images":[{"size":"60x60","expected-size":"180","filename":"180.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"3x"},{"size":"40x40","expected-size":"80","filename":"80.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"2x"},{"size":"40x40","expected-size":"120","filename":"120.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"3x"},{"size":"60x60","expected-size":"120","filename":"120.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"2x"},{"size":"57x57","expected-size":"57","filename":"57.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"1x"},{"size":"29x29","expected-size":"58","filename":"58.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"2x"},{"size":"29x29","expected-size":"29","filename":"29.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"1x"},{"size":"29x29","expected-size":"87","filename":"87.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"3x"},{"size":"57x57","expected-size":"114","filename":"114.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"2x"},{"size":"20x20","expected-size":"40","filename":"40.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"2x"},{"size":"20x20","expected-size":"60","filename":"60.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"3x"},{"size":"1024x1024","filename":"1024.png","expected-size":"1024","idiom":"ios-marketing","folder":"Assets.xcassets/AppIcon.appiconset/","scale":"1x"},{"size":"40x40","expected-size":"80","filename":"80.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"72x72","expected-size":"72","filename":"72.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"76x76","expected-size":"152","filename":"152.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"50x50","expected-size":"100","filename":"100.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"29x29","expected-size":"58","filename":"58.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"76x76","expected-size":"76","filename":"76.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"29x29","expected-size":"29","filename":"29.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"50x50","expected-size":"50","filename":"50.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"72x72","expected-size":"144","filename":"144.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"40x40","expected-size":"40","filename":"40.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"83.5x83.5","expected-size":"167","filename":"167.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"20x20","expected-size":"20","filename":"20.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"20x20","expected-size":"40","filename":"40.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"idiom":"watch","filename":"172.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"38mm","scale":"2x","size":"86x86","expected-size":"172","role":"quickLook"},{"idiom":"watch","filename":"80.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"38mm","scale":"2x","size":"40x40","expected-size":"80","role":"appLauncher"},{"idiom":"watch","filename":"88.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"40mm","scale":"2x","size":"44x44","expected-size":"88","role":"appLauncher"},{"idiom":"watch","filename":"100.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"44mm","scale":"2x","size":"50x50","expected-size":"100","role":"appLauncher"},{"idiom":"watch","filename":"196.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"42mm","scale":"2x","size":"98x98","expected-size":"196","role":"quickLook"},{"idiom":"watch","filename":"216.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"44mm","scale":"2x","size":"108x108","expected-size":"216","role":"quickLook"},{"idiom":"watch","filename":"48.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"38mm","scale":"2x","size":"24x24","expected-size":"48","role":"notificationCenter"},{"idiom":"watch","filename":"55.png","folder":"Assets.xcassets/AppIcon.appiconset/","subtype":"42mm","scale":"2x","size":"27.5x27.5","expected-size":"55","role":"notificationCenter"},{"size":"29x29","expected-size":"87","filename":"87.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"watch","role":"companionSettings","scale":"3x"},{"size":"29x29","expected-size":"58","filename":"58.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"watch","role":"companionSettings","scale":"2x"},{"size":"1024x1024","expected-size":"1024","filename":"1024.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"watch-marketing","scale":"1x"},{"size":"128x128","expected-size":"128","filename":"128.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"1x"},{"size":"256x256","expected-size":"256","filename":"256.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"1x"},{"size":"128x128","expected-size":"256","filename":"256.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"2x"},{"size":"256x256","expected-size":"512","filename":"512.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"2x"},{"size":"32x32","expected-size":"32","filename":"32.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"1x"},{"size":"512x512","expected-size":"512","filename":"512.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"1x"},{"size":"16x16","expected-size":"16","filename":"16.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"1x"},{"size":"16x16","expected-size":"32","filename":"32.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"2x"},{"size":"32x32","expected-size":"64","filename":"64.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"2x"},{"size":"512x512","expected-size":"1024","filename":"1024.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"2x"}]} \ No newline at end of file diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png deleted file mode 100644 index dc9ada4725e9b0ddb1deab583e5b5102493aa332..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10932 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 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png deleted file mode 100644 index f091b6b0bca859a3f474b03065bef75ba58a9e4c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1588 zcmV-42Fv-0P)C1SqPt}wig>|5Crh^=oyX$BK<}M8eLU3e2hGT;=G|!_SP)7zNI6fqUMB=)y zRAZ>eDe#*r`yDAVgB_R*LB*MAc)8(b{g{9McCXW!lq7r(btRoB9!8B-#AI6JMb~YFBEvdsV)`mEQO^&#eRKx@b&x- z5lZm*!WfD8oCLzfHGz#u7sT0^VLMI1MqGxF^v+`4YYnVYgk*=kU?HsSz{v({E3lb9 z>+xILjBN)t6`=g~IBOelGQ(O990@BfXf(DRI5I$qN$0Gkz-FSc$3a+2fX$AedL4u{ z4V+5Ong(9LiGcIKW?_352sR;LtDPmPJXI{YtT=O8=76o9;*n%_m|xo!i>7$IrZ-{l z-x3`7M}qzHsPV@$v#>H-TpjDh2UE$9g6sysUREDy_R(a)>=eHw-WAyfIN z*qb!_hW>G)Tu8nSw9yn#3wFMiLcfc4pY0ek1}8(NqkBR@t4{~oC>ryc-h_ByH(Cg5 z>ao-}771+xE3um9lWAY1FeQFxowa1(!J(;Jg*wrg!=6FdRX+t_<%z&d&?|Bn){>zm zZQj(aA_HeBY&OC^jj*)N`8fa^ePOU72VpInJoI1?`ty#lvlNzs(&MZX+R%2xS~5Kh zX*|AU4QE#~SgPzOXe9>tRj>hjU@c1k5Y_mW*Jp3fI;)1&g3j|zDgC+}2Q_v%YfDax z!?umcN^n}KYQ|a$Lr+51Nf9dkkYFSjZZjkma$0KOj+;aQ&721~t7QUKx61J3(P4P1 zstI~7-wOACnWP4=8oGOwz%vNDqD8w&Q`qcNGGrbbf&0s9L0De{4{mRS?o0MU+nR_! zrvshUau0G^DeMhM_v{5BuLjb#Hh@r23lDAk8oF(C+P0rsBpv85EP>4CVMx#04MOfG z;P%vktHcXwTj~+IE(~px)3*MY77e}p#|c>TD?sMatC0Tu4iKKJ0(X8jxQY*gYtxsC z(zYC$g|@+I+kY;dg_dE>scBf&bP1Nc@Hz<3R)V`=AGkc;8CXqdi=B4l2k|g;2%#m& z*jfX^%b!A8#bI!j9-0Fi0bOXl(-c^AB9|nQaE`*)Hw+o&jS9@7&Gov#HbD~#d{twV zXd^Tr^mWLfFh$@Dr$e;PBEz4(-2q1FF0}c;~B5sA}+Q>TOoP+t>wf)V9Iy=5ruQa;z)y zI9C9*oUga6=hxw6QasLPnee@3^Rr*M{CdaL5=R41nLs(AHk_=Y+A9$2&H(B7!_pURs&8aNw7?`&Z&xY_Ye z)~D5Bog^td-^QbUtkTirdyK^mTHAOuptDflut!#^lnKqU md>ggs(5nOWAqO?umG&QVYK#ibz}*4>0000U6E9hRK9^#O7(mu>ETqrXGsduA8$)?`v2seloOCza43C{NQ$$gAOH**MCn0Q?+L7dl7qnbRdqZ8LSVp1ItDxhxD?t@5_yHg6A8yI zC*%Wgg22K|8E#!~cTNYR~@Y9KepMPrrB8cABapAFa=`H+UGhkXUZV1GnwR1*lPyZ;*K(i~2gp|@bzp8}og7e*#% zEnr|^CWdVV!-4*Y_7rFvlww2Ze+>j*!Z!pQ?2l->4q#nqRu9`ELo6RMS5=br47g_X zRw}P9a7RRYQ%2Vsd0Me{_(EggTnuN6j=-?uFS6j^u69elMypu?t>op*wBx<=Wx8?( ztpe^(fwM6jJX7M-l*k3kEpWOl_Vk3@(_w4oc}4YF4|Rt=2V^XU?#Yz`8(e?aZ@#li0n*=g^qOcVpd-Wbok=@b#Yw zqn8u9a)z>l(1kEaPYZ6hwubN6i<8QHgsu0oE) ziJ(p;Wxm>sf!K+cw>R-(^Y2_bahB+&KI9y^);#0qt}t-$C|Bo71lHi{_+lg#f%RFy z0um=e3$K3i6K{U_4K!EX?F&rExl^W|G8Z8;`5z-k}OGNZ0#WVb$WCpQu-_YsiqKP?BB# vzVHS-CTUF4Ozn5G+mq_~Qqto~ahA+K`|lyv3(-e}00000NkvXXu0mjfd`9t{ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png deleted file mode 100644 index d0ef06e7edb86cdfe0d15b4b0d98334a86163658..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1716 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 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png deleted file mode 100644 index c8f9ed8f5cee1c98386d13b17e89f719e83555b2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1895 zcmV-t2blPYP)FQtfgmafE#=YDCq`qUBt#QpG%*H6QHY765~R=q zZ6iudfM}q!Pz#~9JgOi8QJ|DSu?1-*(kSi1K4#~5?#|rh?sS)(-JQqX*}ciXJ56_H zdw=^s_srbAdqxlvGyrgGet#6T7_|j;95sL%MtM;q86vOxKM$f#puR)Bjv9Zvz9-di zXOTSsZkM83)E9PYBXC<$6(|>lNLVBb&&6y{NByFCp%6+^ALR@NCTse_wqvNmSWI-m z!$%KlHFH2omF!>#%1l3LTZg(s7eof$7*xB)ZQ0h?ejh?Ta9fDv59+u#MokW+1t8Zb zgHv%K(u9G^Lv`lh#f3<6!JVTL3(dCpxHbnbA;kKqQyd1~^Xe0VIaYBSWm6nsr;dFj z4;G-RyL?cYgsN1{L4ZFFNa;8)Rv0fM0C(~Tkit94 zz#~A)59?QjD&pAPSEQ)p8gP|DS{ng)j=2ux)_EzzJ773GmQ_Cic%3JJhC0t2cx>|v zJcVusIB!%F90{+}8hG3QU4KNeKmK%T>mN57NnCZ^56=0?&3@!j>a>B43pi{!u z7JyDj7`6d)qVp^R=%j>UIY6f+3`+qzIc!Y_=+uN^3BYV|o+$vGo-j-Wm<10%A=(Yk^beI{t%ld@yhKjq0iNjqN4XMGgQtbKubPM$JWBz}YA65k%dm*awtC^+f;a-x4+ddbH^7iDWGg&N0n#MW{kA|=8iMUiFYvMoDY@sPC#t$55gn6ykUTPAr`a@!(;np824>2xJthS z*ZdmT`g5-`BuJs`0LVhz+D9NNa3<=6m;cQLaF?tCv8)zcRSh66*Z|vXhG@$I%U~2l z?`Q zykI#*+rQ=z6Jm=Bui-SfpDYLA=|vzGE(dYm=OC8XM&MDo7ux4UF1~0J1+i%aCUpRe zt3L_uNyQ*cE(38Uy03H%I*)*Bh=Lb^Xj3?I^Hnbeq72(EOK^Y93CNp*uAA{5Lc=ky zx=~RKa4{iTm{_>_vSCm?$Ej=i6@=m%@VvAITnigVg{&@!7CDgs908761meDK5azA} z4?=NOH|PdvabgJ&fW2{Mo$Q0CcD8Qc84%{JPYt5EiG{MdLIAeX%T=D7NIP4%Hw}p9 zg)==!2Lbp#j{u_}hMiao9=!VSyx0gHbeCS`;q&vzeq|fs`y&^X-lso(Ls@-706qmA z7u*T5PMo_w3{se1t2`zWeO^hOvTsohG_;>J0wVqVe+n)AbQCx)yh9;w+J6?NF5Lmo zecS@ieAKL8%bVd@+-KT{yI|S}O>pYckUFs;ry9Ow$CD@ztz5K-*D$^{i(_1llhSh^ zEkL$}tsQt5>QA^;QgjgIfBDmcOgi5YDyu?t6vSnbp=1+@6D& z5MJ}B8q;bRlVoxasyhcUF1+)o`&3r0colr}QJ3hcSdLu;9;td>kf@Tcn<@9sIx&=m z;AD;SCh95=&p;$r{Xz3iWCO^MX83AGJ(yH&eTXgv|0=34#-&WAmw{)U7OU9!Wz^!7 zZ%jZFi@JR;>Mhi7S>V7wQ176|FdW2m?&`qa(ScO^CFPR80HucLHOTy%5s*HR0^8)i h0WYBP*#0Ks^FNSabJA*5${_#%002ovPDHLkV1oKhTl@e3 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png deleted file mode 100644 index a6d6b8609df07bf62e5100a53a01510388bd2b22..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2665 zcmV-v3YPVWP)oFh3q0MFesq&64WThn3$;G69TfjsAv=f2G9}p zgSx99+!YV6qME!>9MD13x)k(+XE7W?_O4LoLb5ND8 zaV{9+P@>42xDfRiYBMSgD$0!vssptcb;&?u9u(LLBKmkZ>RMD=kvD3h`sk6!QYtBa ztlZI#nu$8lJ^q2Z79UTgZe>BU73(Aospiq+?SdMt8lDZ;*?@tyWVZVS_Q7S&*tJaiRlJ z+aSMOmbg3@h5}v;A*c8SbqM3icg-`Cnwl;7Ts%A1RkNIp+Txl-Ckkvg4oxrqGA5ewEgYqwtECD<_3Egu)xGllKt&J8g&+=ac@Jq4-?w6M3b*>w5 z69N3O%=I^6&UL5gZ!}trC7bUj*12xLdkNs~Bz4QdJJ*UDZox2UGR}SNg@lmOvhCc~ z*f_UeXv(=#I#*7>VZx2ObEN~UoGUTl=-@)E;YtCRZ>SVp$p9yG5hEFZ!`wI!spd)n zSk+vK0Vin7FL{7f&6OB%f;SH22dtbcF<|9fi2Fp%q4kxL!b1#l^)8dUwJ zwEf{(wJj@8iYDVnKB`eSU+;ml-t2`@%_)0jDM`+a46xhDbBj2+&Ih>1A>6aky#(-SYyE{R3f#y57wfLs z6w1p~$bp;6!9DX$M+J~S@D6vJAaElETnsX4h9a5tvPhC3L@qB~bOzkL@^z0k_hS{T4PF*TDrgdXp+dzsE? z>V|VR035Pl9n5&-RePFdS{7KAr2vPOqR9=M$vXA1Yy5>w;EsF`;OK{2pkn-kpp9Pw z)r;5JfJKKaT$4qCb{TaXHjb$QA{y0EYy*+b1XI;6Ah- zw13P)xT`>~eFoJC!>{2XL(a_#upp3gaR1#5+L(Jmzp4TBnx{~WHedpJ1ch8JFk~Sw z>F+gN+i+VD?gMXwcIhn8rz`>e>J^TI3E-MW>f}6R-pL}>WMOa0k#jN+`RyUVUC;#D zg|~oS^$6%wpF{^Qr+}X>0PKcr3Fc&>Z>uv@C);pwDs@2bZWhYP!rvGx?_|q{d`t<*XEb#=aOb=N+L@CVBGqImZf&+a zCQEa3$~@#kC);pasdG=f6tuIi0PO-y&tvX%>Mv=oY3U$nD zJ#gMegnQ46pq+3r=;zmgcG+zRc9D~c>z+jo9&D+`E6$LmyFqlmCYw;-Zooma{sR@~ z)_^|YL1&&@|GXo*pivH7k!msl+$Sew3%XJnxajt0K%3M6Bd&YFNy9}tWG^aovK2eX z1aL1%7;KRDrA@eG-Wr6w+;*H_VD~qLiVI`{_;>o)k`{8xa3EJT1O_>#iy_?va0eR? zDV=N%;Zjb%Z2s$@O>w@iqt!I}tLjGk!=p`D23I}N4Be@$(|iSA zf3Ih7b<{zqpDB4WF_5X1(peKe+rASze%u8eKLn#KKXt;UZ+Adf$_TO+vTqshLLJ5c z52HucO=lrNVae5XWOLm!V@n-ObU11!b+DN<$RuU+YsrBq*lYT;?AwJpmNKniF0Q1< zJCo>Q$=v$@&y=sj6{r!Y&y&`0$-I}S!H_~pI&2H8Z1C|BX4VgZ^-! zje3-;x0PBD!M`v*J_)rL^+$<1VJhH*2Fi~aA7s&@_rUHYJ9zD=M%4AFQ`}k8OC$9s XsPq=LnkwKG00000NkvXXu0mjfhAk5^ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png deleted file mode 100644 index a6d6b8609df07bf62e5100a53a01510388bd2b22..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2665 zcmV-v3YPVWP)oFh3q0MFesq&64WThn3$;G69TfjsAv=f2G9}p zgSx99+!YV6qME!>9MD13x)k(+XE7W?_O4LoLb5ND8 zaV{9+P@>42xDfRiYBMSgD$0!vssptcb;&?u9u(LLBKmkZ>RMD=kvD3h`sk6!QYtBa ztlZI#nu$8lJ^q2Z79UTgZe>BU73(Aospiq+?SdMt8lDZ;*?@tyWVZVS_Q7S&*tJaiRlJ z+aSMOmbg3@h5}v;A*c8SbqM3icg-`Cnwl;7Ts%A1RkNIp+Txl-Ckkvg4oxrqGA5ewEgYqwtECD<_3Egu)xGllKt&J8g&+=ac@Jq4-?w6M3b*>w5 z69N3O%=I^6&UL5gZ!}trC7bUj*12xLdkNs~Bz4QdJJ*UDZox2UGR}SNg@lmOvhCc~ z*f_UeXv(=#I#*7>VZx2ObEN~UoGUTl=-@)E;YtCRZ>SVp$p9yG5hEFZ!`wI!spd)n zSk+vK0Vin7FL{7f&6OB%f;SH22dtbcF<|9fi2Fp%q4kxL!b1#l^)8dUwJ zwEf{(wJj@8iYDVnKB`eSU+;ml-t2`@%_)0jDM`+a46xhDbBj2+&Ih>1A>6aky#(-SYyE{R3f#y57wfLs z6w1p~$bp;6!9DX$M+J~S@D6vJAaElETnsX4h9a5tvPhC3L@qB~bOzkL@^z0k_hS{T4PF*TDrgdXp+dzsE? z>V|VR035Pl9n5&-RePFdS{7KAr2vPOqR9=M$vXA1Yy5>w;EsF`;OK{2pkn-kpp9Pw z)r;5JfJKKaT$4qCb{TaXHjb$QA{y0EYy*+b1XI;6Ah- zw13P)xT`>~eFoJC!>{2XL(a_#upp3gaR1#5+L(Jmzp4TBnx{~WHedpJ1ch8JFk~Sw z>F+gN+i+VD?gMXwcIhn8rz`>e>J^TI3E-MW>f}6R-pL}>WMOa0k#jN+`RyUVUC;#D zg|~oS^$6%wpF{^Qr+}X>0PKcr3Fc&>Z>uv@C);pwDs@2bZWhYP!rvGx?_|q{d`t<*XEb#=aOb=N+L@CVBGqImZf&+a zCQEa3$~@#kC);pasdG=f6tuIi0PO-y&tvX%>Mv=oY3U$nD zJ#gMegnQ46pq+3r=;zmgcG+zRc9D~c>z+jo9&D+`E6$LmyFqlmCYw;-Zooma{sR@~ z)_^|YL1&&@|GXo*pivH7k!msl+$Sew3%XJnxajt0K%3M6Bd&YFNy9}tWG^aovK2eX z1aL1%7;KRDrA@eG-Wr6w+;*H_VD~qLiVI`{_;>o)k`{8xa3EJT1O_>#iy_?va0eR? zDV=N%;Zjb%Z2s$@O>w@iqt!I}tLjGk!=p`D23I}N4Be@$(|iSA zf3Ih7b<{zqpDB4WF_5X1(peKe+rASze%u8eKLn#KKXt;UZ+Adf$_TO+vTqshLLJ5c z52HucO=lrNVae5XWOLm!V@n-ObU11!b+DN<$RuU+YsrBq*lYT;?AwJpmNKniF0Q1< zJCo>Q$=v$@&y=sj6{r!Y&y&`0$-I}S!H_~pI&2H8Z1C|BX4VgZ^-! zje3-;x0PBD!M`v*J_)rL^+$<1VJhH*2Fi~aA7s&@_rUHYJ9zD=M%4AFQ`}k8OC$9s XsPq=LnkwKG00000NkvXXu0mjfhAk5^ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png deleted file mode 100644 index 75b2d164a5a98e212cca15ea7bf2ab5de5108680..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3831 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 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png deleted file mode 100644 index c4df70d39da7941ef3f6dcb7f06a192d8dcb308d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1888 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 iW8 Date: Wed, 2 Mar 2022 13:52:49 +0330 Subject: [PATCH 245/273] D1APP-104 hashtags beta --- lib/routes/route_generator.dart | 11 +++++ lib/routes/routes.dart | 1 + lib/services/network/request_helper.dart | 2 +- lib/views/home/hashtag/hashtag.dart | 39 ++++++++++++++++ lib/views/home/hashtag/hashtag_state.dart | 18 +++++++- lib/views/home/widgets/tag_item.dart | 54 +++++++++++++---------- lib/views/widgets/didvan/page_view.dart | 2 +- 7 files changed, 100 insertions(+), 27 deletions(-) diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index dfb10c8..9bf6300 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -1,9 +1,12 @@ +import 'package:didvan/models/tag.dart'; import 'package:didvan/views/authentication/authentication.dart'; import 'package:didvan/views/authentication/authentication_state.dart'; import 'package:didvan/views/home/comments/comments.dart'; import 'package:didvan/views/home/comments/comments_state.dart'; import 'package:didvan/views/home/direct/direct.dart'; import 'package:didvan/views/home/direct/direct_state.dart'; +import 'package:didvan/views/home/hashtag/hashtag.dart'; +import 'package:didvan/views/home/hashtag/hashtag_state.dart'; import 'package:didvan/views/home/home.dart'; import 'package:didvan/views/home/home_state.dart'; import 'package:didvan/views/home/news/news_details/news_details.dart'; @@ -121,6 +124,14 @@ class RouteGenerator { child: const Bookmarks(), ), ); + case Routes.hashtag: + return _createRoute( + ChangeNotifierProvider( + create: (context) => HashtagState(), + child: Hashtag(tag: settings.arguments as Tag), + ), + ); + case Routes.filteredBookmarks: return _createRoute( ChangeNotifierProvider( diff --git a/lib/routes/routes.dart b/lib/routes/routes.dart index 5bc9c90..7cbab35 100644 --- a/lib/routes/routes.dart +++ b/lib/routes/routes.dart @@ -14,4 +14,5 @@ class Routes { static const String bookmarks = '/bookmarks'; static const String filteredBookmarks = '/filtered-bookmarks'; static const String imageCropper = '/image-cropper'; + static const String hashtag = '/hashtag'; } diff --git a/lib/services/network/request_helper.dart b/lib/services/network/request_helper.dart index 7e1902e..1eb9a6f 100644 --- a/lib/services/network/request_helper.dart +++ b/lib/services/network/request_helper.dart @@ -2,7 +2,7 @@ import 'package:didvan/models/requests/news.dart'; import 'package:didvan/models/requests/radar.dart'; class RequestHelper { - static const String baseUrl = 'https://test.api.didvan.app'; + static const String baseUrl = 'https://api.didvan.app'; static const String _baseUserUrl = baseUrl + '/user'; static const String _baseRadarUrl = baseUrl + '/radar'; static const String _baseNewsUrl = baseUrl + '/news'; diff --git a/lib/views/home/hashtag/hashtag.dart b/lib/views/home/hashtag/hashtag.dart index 91f42af..eb95e99 100644 --- a/lib/views/home/hashtag/hashtag.dart +++ b/lib/views/home/hashtag/hashtag.dart @@ -1,7 +1,12 @@ import 'package:didvan/models/tag.dart'; import 'package:didvan/models/view/app_bar_data.dart'; +import 'package:didvan/views/home/hashtag/hashtag_state.dart'; +import 'package:didvan/views/home/widgets/news_overview.dart'; +import 'package:didvan/views/home/widgets/radar_overview.dart'; import 'package:didvan/views/widgets/didvan/scaffold.dart'; +import 'package:didvan/views/widgets/state_handlers/sliver_state_handler.dart'; import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; class Hashtag extends StatefulWidget { final Tag tag; @@ -12,10 +17,44 @@ class Hashtag extends StatefulWidget { } class _HashtagState extends State { + @override + void initState() { + final state = context.read(); + state.id = widget.tag.id; + Future.delayed(Duration.zero, () => state.getTagItems(page: 1)); + super.initState(); + } + @override Widget build(BuildContext context) { return DidvanScaffold( appBarData: AppBarData(title: widget.tag.label, hasBack: true), + slivers: [ + Consumer( + builder: (context, state, child) => SliverStateHandler( + state: state, + builder: (context, state, index) { + final item = state.items[index]; + final type = item.type; + if (type == 'radar') { + return RadarOverview( + radar: item, + onCommentsChanged: (id, count) => item.comments = count, + onMarkChanged: (id, value) => item.marked = value, + ); + } else if (type == 'news') { + return NewsOverview( + news: item, + onMarkChanged: (id, value) => item.marked = value, + ); + } + return Container(); + }, + childCount: state.items.length, + onRetry: () {}, + ), + ) + ], ); } } diff --git a/lib/views/home/hashtag/hashtag_state.dart b/lib/views/home/hashtag/hashtag_state.dart index 6369e13..3dcb2f3 100644 --- a/lib/views/home/hashtag/hashtag_state.dart +++ b/lib/views/home/hashtag/hashtag_state.dart @@ -1,20 +1,34 @@ import 'package:didvan/models/enums.dart'; +import 'package:didvan/models/overview_data.dart'; import 'package:didvan/providers/core_provider.dart'; import 'package:didvan/services/network/request.dart'; import 'package:didvan/services/network/request_helper.dart'; class HashtagState extends CoreProvier { + final List items = []; + late final int id; int page = 1; Future getTagItems({required int page}) async { - appState = AppState.busy; + this.page = page; + if (this.page == 1) { + appState = AppState.busy; + } final service = RequestService(RequestHelper.tag( ids: [id], limit: 15, page: page, )); await service.httpGet(); - if (service.isSuccess) {} + if (service.isSuccess) { + final contents = service.result['contents']; + for (var i = 0; i < contents.length; i++) { + items.add(OverviewData.fromJson(contents[i])); + } + appState = AppState.idle; + return; + } + appState = AppState.failed; } } diff --git a/lib/views/home/widgets/tag_item.dart b/lib/views/home/widgets/tag_item.dart index a447dc8..1265361 100644 --- a/lib/views/home/widgets/tag_item.dart +++ b/lib/views/home/widgets/tag_item.dart @@ -1,43 +1,51 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/models/tag.dart'; +import 'package:didvan/routes/routes.dart'; import 'package:didvan/views/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/ink_wrapper.dart'; import 'package:flutter/material.dart'; class TagItem extends StatelessWidget { - final String label; + final Tag tag; const TagItem({ Key? key, - required this.label, + required this.tag, }) : super(key: key); @override Widget build(BuildContext context) { - return Container( - padding: const EdgeInsets.symmetric( - vertical: 4, - horizontal: 8, - ), - decoration: BoxDecoration( - borderRadius: DesignConfig.lowBorderRadius, - border: Border.all( - color: Theme.of(context).colorScheme.focusedBorder, + return InkWrapper( + borderRadius: DesignConfig.lowBorderRadius, + onPressed: () => + Navigator.of(context).pushNamed(Routes.hashtag, arguments: tag), + child: Container( + padding: const EdgeInsets.symmetric( + vertical: 4, + horizontal: 8, ), - ), - child: Row( - mainAxisSize: MainAxisSize.min, - children: [ - Icon( - DidvanIcons.hashtag_regular, + decoration: BoxDecoration( + borderRadius: DesignConfig.lowBorderRadius, + border: Border.all( color: Theme.of(context).colorScheme.focusedBorder, ), - DidvanText( - label, - color: Theme.of(context).colorScheme.focusedBorder, - style: Theme.of(context).textTheme.bodyText1, - ), - ], + ), + child: Row( + mainAxisSize: MainAxisSize.min, + children: [ + Icon( + DidvanIcons.hashtag_regular, + color: Theme.of(context).colorScheme.focusedBorder, + ), + DidvanText( + tag.label, + color: Theme.of(context).colorScheme.focusedBorder, + style: Theme.of(context).textTheme.bodyText1, + ), + ], + ), ), ); } diff --git a/lib/views/widgets/didvan/page_view.dart b/lib/views/widgets/didvan/page_view.dart index 2247d50..e42744c 100644 --- a/lib/views/widgets/didvan/page_view.dart +++ b/lib/views/widgets/didvan/page_view.dart @@ -119,7 +119,7 @@ class _DidvanPageViewState extends State { runSpacing: 8, children: [ for (var i = 0; i < item.tags.length; i++) - TagItem(label: item.tags[i].label), + TagItem(tag: item.tags[i]), ], ), ), From 085f5d7d6846ba132d7897faa770bc397ef828e0 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Fri, 4 Mar 2022 11:52:41 +0330 Subject: [PATCH 246/273] D1APP-108 interactive viewer back button style --- lib/views/widgets/didvan/page_view.dart | 29 ++++++++++++------------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/lib/views/widgets/didvan/page_view.dart b/lib/views/widgets/didvan/page_view.dart index e42744c..7faf24f 100644 --- a/lib/views/widgets/didvan/page_view.dart +++ b/lib/views/widgets/didvan/page_view.dart @@ -8,7 +8,6 @@ import 'package:didvan/views/home/widgets/tag_item.dart'; import 'package:didvan/views/widgets/animated_visibility.dart'; import 'package:didvan/views/widgets/didvan/card.dart'; import 'package:didvan/views/widgets/didvan/divider.dart'; -import 'package:didvan/views/widgets/didvan/icon_button.dart'; import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:didvan/views/widgets/ink_wrapper.dart'; import 'package:didvan/views/widgets/item_title.dart'; @@ -194,7 +193,6 @@ class _DidvanPageViewState extends State { 'span': Style( textAlign: TextAlign.center, fontSize: FontSize.small, - alignment: Alignment.center, ), }, ); @@ -219,11 +217,7 @@ class _DidvanPageViewState extends State { ), Positioned( right: 16, - child: DidvanIconButton( - backgroundColor: Theme.of(context).colorScheme.primary, - icon: DidvanIcons.back_regular, - onPressed: Navigator.of(context).pop, - ), + child: _BackButton(), ), ], ), @@ -277,9 +271,8 @@ class _DidvanPageViewState extends State { } class _BackButton extends StatefulWidget { - final ScrollController scrollController; - const _BackButton({Key? key, required this.scrollController}) - : super(key: key); + final ScrollController? scrollController; + const _BackButton({Key? key, this.scrollController}) : super(key: key); @override __BackButtonState createState() => __BackButtonState(); @@ -290,20 +283,26 @@ class __BackButtonState extends State<_BackButton> { @override void didUpdateWidget(covariant _BackButton oldWidget) { - _isVisible = false; - _handleScroll(); + if (widget.scrollController != null) { + _isVisible = false; + _handleScroll(); + } super.didUpdateWidget(oldWidget); } @override void initState() { - _handleScroll(); + if (widget.scrollController != null) { + _handleScroll(); + } else { + _isVisible = true; + } super.initState(); } void _handleScroll() { - widget.scrollController.addListener(() { - final position = widget.scrollController.position.pixels; + widget.scrollController!.addListener(() { + final position = widget.scrollController!.position.pixels; final size = MediaQuery.of(context).size.height * 0.3; if (position > size && _isVisible == false) { setState(() { From 09b987e6a654ae478b9649cd212138d6ac8006f0 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Fri, 4 Mar 2022 16:09:54 +0330 Subject: [PATCH 247/273] code cleaning --- lib/views/home/radar/radar_details/radar_details_state.dart | 1 - lib/views/widgets/didvan/page_view.dart | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/views/home/radar/radar_details/radar_details_state.dart b/lib/views/home/radar/radar_details/radar_details_state.dart index 1e6c4e8..2095cec 100644 --- a/lib/views/home/radar/radar_details/radar_details_state.dart +++ b/lib/views/home/radar/radar_details/radar_details_state.dart @@ -8,7 +8,6 @@ import 'package:didvan/models/requests/radar.dart'; import 'package:didvan/providers/core_provider.dart'; import 'package:didvan/services/network/request.dart'; import 'package:didvan/services/network/request_helper.dart'; -import 'package:flutter/material.dart'; class RadarDetailsState extends CoreProvier { final List radars = []; diff --git a/lib/views/widgets/didvan/page_view.dart b/lib/views/widgets/didvan/page_view.dart index 7faf24f..a4b6a62 100644 --- a/lib/views/widgets/didvan/page_view.dart +++ b/lib/views/widgets/didvan/page_view.dart @@ -215,7 +215,7 @@ class _DidvanPageViewState extends State { ), ), ), - Positioned( + const Positioned( right: 16, child: _BackButton(), ), From 405326aca6833d1d20677b08b2d36543f59c17d4 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Fri, 4 Mar 2022 16:42:08 +0330 Subject: [PATCH 248/273] D1APP-104 hashtags (beta) (needs backend bug fix) --- lib/services/network/request_helper.dart | 2 +- lib/views/home/hashtag/hashtag.dart | 11 +++++++++-- lib/views/home/hashtag/hashtag_state.dart | 2 ++ 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/lib/services/network/request_helper.dart b/lib/services/network/request_helper.dart index 1eb9a6f..886bd47 100644 --- a/lib/services/network/request_helper.dart +++ b/lib/services/network/request_helper.dart @@ -34,7 +34,7 @@ class RequestHelper { _urlConcatGenerator([ MapEntry('limit', limit?.toString() ?? '3'), MapEntry('type', type), - MapEntry('id', itemId.toString()), + MapEntry('id', itemId?.toString()), MapEntry('tags', _urlListConcatGenerator(ids)) ]); diff --git a/lib/views/home/hashtag/hashtag.dart b/lib/views/home/hashtag/hashtag.dart index eb95e99..2e94ce0 100644 --- a/lib/views/home/hashtag/hashtag.dart +++ b/lib/views/home/hashtag/hashtag.dart @@ -28,12 +28,19 @@ class _HashtagState extends State { @override Widget build(BuildContext context) { return DidvanScaffold( - appBarData: AppBarData(title: widget.tag.label, hasBack: true), + appBarData: AppBarData(title: '#' + widget.tag.label, hasBack: true), slivers: [ Consumer( builder: (context, state, child) => SliverStateHandler( + itemPadding: const EdgeInsets.only(bottom: 8), state: state, + placeholder: RadarOverview.placeholder, builder: (context, state, index) { + index++; + if (index % 15 == 0 && index / 15 >= state.page) { + state.getTagItems(page: index ~/ 15 + 1); + } + index--; final item = state.items[index]; final type = item.type; if (type == 'radar') { @@ -51,7 +58,7 @@ class _HashtagState extends State { return Container(); }, childCount: state.items.length, - onRetry: () {}, + onRetry: () => state.getTagItems(page: 1), ), ) ], diff --git a/lib/views/home/hashtag/hashtag_state.dart b/lib/views/home/hashtag/hashtag_state.dart index 3dcb2f3..a94cdbe 100644 --- a/lib/views/home/hashtag/hashtag_state.dart +++ b/lib/views/home/hashtag/hashtag_state.dart @@ -17,6 +17,8 @@ class HashtagState extends CoreProvier { } final service = RequestService(RequestHelper.tag( ids: [id], + itemId: 1, + type: 'radar', limit: 15, page: page, )); From c2e7e038e4e556f7783c047b96a34106b8dd21be Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Mar 2022 13:12:28 +0330 Subject: [PATCH 249/273] D1APP-99 sort bottom sheet --- lib/providers/server_data_provider.dart | 2 +- lib/routes/route_generator.dart | 4 ++ lib/views/home/studio/studio.dart | 73 +++++++++++++++++++++ lib/views/home/studio/studio_state.dart | 2 + lib/views/widgets/didvan/radial_button.dart | 54 +++++++++++++++ 5 files changed, 134 insertions(+), 1 deletion(-) create mode 100644 lib/views/widgets/didvan/radial_button.dart diff --git a/lib/providers/server_data_provider.dart b/lib/providers/server_data_provider.dart index e9b02a5..3b76c8f 100644 --- a/lib/providers/server_data_provider.dart +++ b/lib/providers/server_data_provider.dart @@ -21,7 +21,7 @@ class ServerDataProvider { directTypes.add(MapEntry(types[i]['id'], types[i]['label'])); } } else { - throw 'Fetchin direct types failed!'; + throw 'Fetching direct types failed!'; } } } diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index 9bf6300..d17d78c 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -25,6 +25,7 @@ import 'package:didvan/views/home/settings/direct_list/direct_list_state.dart'; import 'package:didvan/views/home/settings/general_settings/settings.dart'; import 'package:didvan/views/home/settings/general_settings/settings_state.dart'; import 'package:didvan/views/home/settings/profile/profile.dart'; +import 'package:didvan/views/home/studio/studio_state.dart'; import 'package:didvan/views/splash/splash.dart'; import 'package:didvan/routes/routes.dart'; import 'package:flutter/material.dart'; @@ -57,6 +58,9 @@ class RouteGenerator { ChangeNotifierProvider( create: (context) => NewsState(), ), + ChangeNotifierProvider( + create: (context) => StudioState(), + ), ], child: const Home(), ), diff --git a/lib/views/home/studio/studio.dart b/lib/views/home/studio/studio.dart index a6f675a..08c8e37 100644 --- a/lib/views/home/studio/studio.dart +++ b/lib/views/home/studio/studio.dart @@ -1,10 +1,17 @@ import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/models/view/action_sheet_data.dart'; +import 'package:didvan/utils/action_sheet.dart'; +import 'package:didvan/views/home/studio/studio_state.dart'; import 'package:didvan/views/home/studio/widgets/slider.dart'; import 'package:didvan/views/home/studio/widgets/tab_bar.dart'; import 'package:didvan/views/home/widgets/logo_app_bar.dart'; import 'package:didvan/views/home/widgets/search_field.dart'; +import 'package:didvan/views/widgets/didvan/divider.dart'; import 'package:didvan/views/widgets/didvan/icon_button.dart'; +import 'package:didvan/views/widgets/didvan/radial_button.dart'; +import 'package:didvan/views/widgets/item_title.dart'; import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; class Studio extends StatefulWidget { const Studio({Key? key}) : super(key: key); @@ -51,7 +58,73 @@ class _StudioState extends State { const SliverToBoxAdapter( child: StudioSlider(), ), + const SliverPadding( + padding: EdgeInsets.symmetric(horizontal: 16), + sliver: SliverToBoxAdapter( + child: DidvanDivider( + verticalPadding: 0, + ), + ), + ), + SliverPadding( + padding: const EdgeInsets.symmetric(horizontal: 16), + sliver: SliverToBoxAdapter( + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + const ItemTitle(title: 'تازه‌ترین‌ها'), + DidvanIconButton( + gestureSize: 36, + icon: DidvanIcons.sort_regular, + onPressed: _showSortDialog, + ), + ], + ), + ), + ), ], ); } + + void _showSortDialog() { + final state = context.read(); + ActionSheetUtils.showBottomSheet( + data: ActionSheetData( + content: StatefulBuilder( + builder: (context, setState) => Column( + children: [ + DidvanRadialButton( + title: 'جدیدترین‌ها', + onSelected: () => setState( + () => state.selectedSortTypeIndex = 0, + ), + value: state.selectedSortTypeIndex == 0, + ), + const SizedBox(height: 24), + DidvanRadialButton( + title: 'پربازدیدترین‌ها', + onSelected: () => setState( + () => state.selectedSortTypeIndex = 1, + ), + value: state.selectedSortTypeIndex == 1, + ), + const SizedBox(height: 24), + DidvanRadialButton( + title: 'پربحث‌ترین‌ها', + onSelected: () => setState( + () => state.selectedSortTypeIndex = 2, + ), + value: state.selectedSortTypeIndex == 2, + ), + ], + ), + ), + title: 'مرتب‌‌سازی', + titleIcon: DidvanIcons.sort_regular, + hasDismissButton: false, + confrimTitle: 'مرتب سازی', + onConfirmed: () {}, + ), + ); + } } diff --git a/lib/views/home/studio/studio_state.dart b/lib/views/home/studio/studio_state.dart index ffa0282..28ebd1e 100644 --- a/lib/views/home/studio/studio_state.dart +++ b/lib/views/home/studio/studio_state.dart @@ -1,5 +1,7 @@ import 'package:didvan/providers/core_provider.dart'; class StudioState extends CoreProvier { + int selectedSortTypeIndex = 0; + bool videosSelected = true; } diff --git a/lib/views/widgets/didvan/radial_button.dart b/lib/views/widgets/didvan/radial_button.dart new file mode 100644 index 0000000..778b39d --- /dev/null +++ b/lib/views/widgets/didvan/radial_button.dart @@ -0,0 +1,54 @@ +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; +import 'package:flutter/material.dart'; + +class DidvanRadialButton extends StatelessWidget { + final String title; + final VoidCallback onSelected; + final bool value; + const DidvanRadialButton({ + Key? key, + required this.title, + required this.onSelected, + required this.value, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return GestureDetector( + onTap: value ? null : onSelected, + child: Container( + color: Colors.transparent, + child: Row( + children: [ + Container( + padding: const EdgeInsets.all(4), + height: 24, + width: 24, + decoration: BoxDecoration( + shape: BoxShape.circle, + border: Border.all( + color: value + ? Theme.of(context).colorScheme.secondary + : Theme.of(context).colorScheme.text, + ), + ), + child: Container( + width: double.infinity, + height: double.infinity, + decoration: BoxDecoration( + color: value + ? Theme.of(context).colorScheme.secondary + : Colors.transparent, + shape: BoxShape.circle, + ), + ), + ), + const SizedBox(width: 8), + DidvanText(title), + ], + ), + ), + ); + } +} From e3d84dde4f5d551b89c3e958dd4e0370fd1d7ef4 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Mar 2022 13:21:44 +0330 Subject: [PATCH 250/273] D1APP-104 url bug fixed --- lib/services/network/request_helper.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/services/network/request_helper.dart b/lib/services/network/request_helper.dart index 886bd47..58005be 100644 --- a/lib/services/network/request_helper.dart +++ b/lib/services/network/request_helper.dart @@ -34,7 +34,7 @@ class RequestHelper { _urlConcatGenerator([ MapEntry('limit', limit?.toString() ?? '3'), MapEntry('type', type), - MapEntry('id', itemId?.toString()), + MapEntry('id', itemId?.toString() ?? '1'), MapEntry('tags', _urlListConcatGenerator(ids)) ]); From ef5fd0524b91b2065933a51b59890dce3dfff64c Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sat, 5 Mar 2022 13:57:56 +0330 Subject: [PATCH 251/273] D1APP-63 back to firebase! --- android/app/build.gradle | 1 + android/app/google-services.json | 39 ++++++++++++++++++++++++++++ android/build.gradle | 1 + lib/services/app_initalizer.dart | 28 ++++++++++++++++++++ pubspec.lock | 44 +++++++++++++++++++++++++++++++- pubspec.yaml | 2 ++ 6 files changed, 114 insertions(+), 1 deletion(-) create mode 100644 android/app/google-services.json diff --git a/android/app/build.gradle b/android/app/build.gradle index 293ad3a..efe0f78 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -65,5 +65,6 @@ flutter { } dependencies { + implementation platform('com.google.firebase:firebase-bom:29.1.0') implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" } diff --git a/android/app/google-services.json b/android/app/google-services.json new file mode 100644 index 0000000..5cb370e --- /dev/null +++ b/android/app/google-services.json @@ -0,0 +1,39 @@ +{ + "project_info": { + "project_number": "935017686266", + "project_id": "didvan-9b7da", + "storage_bucket": "didvan-9b7da.appspot.com" + }, + "client": [ + { + "client_info": { + "mobilesdk_app_id": "1:935017686266:android:f9cbc9aba8e3d65ed2d543", + "android_client_info": { + "package_name": "com.didvan.didvanapp" + } + }, + "oauth_client": [ + { + "client_id": "935017686266-lebnol7rb05oi9h0mripb41c892d2gij.apps.googleusercontent.com", + "client_type": 3 + } + ], + "api_key": [ + { + "current_key": "AIzaSyBp-UHjWeM0H0UHtX5yguFKG-riMzvvCzw" + } + ], + "services": { + "appinvite_service": { + "other_platform_oauth_client": [ + { + "client_id": "935017686266-lebnol7rb05oi9h0mripb41c892d2gij.apps.googleusercontent.com", + "client_type": 3 + } + ] + } + } + } + ], + "configuration_version": "1" +} \ No newline at end of file diff --git a/android/build.gradle b/android/build.gradle index 09fbd64..125594d 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -7,6 +7,7 @@ buildscript { dependencies { classpath 'com.android.tools.build:gradle:4.1.0' + classpath 'com.google.gms:google-services:4.3.10' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } diff --git a/lib/services/app_initalizer.dart b/lib/services/app_initalizer.dart index 236fc19..7c21a4c 100644 --- a/lib/services/app_initalizer.dart +++ b/lib/services/app_initalizer.dart @@ -1,5 +1,7 @@ import 'package:didvan/services/media/media.dart'; import 'package:didvan/services/storage/storage.dart'; +import 'package:firebase_core/firebase_core.dart'; +import 'package:firebase_messaging/firebase_messaging.dart'; import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:path_provider/path_provider.dart'; @@ -10,6 +12,7 @@ class AppInitializer { StorageService.appDocsDir = (await getApplicationDocumentsDirectory()).path; StorageService.appTempsDir = (await getTemporaryDirectory()).path; + await _initializeFirebase(); MediaService.init(); } } @@ -42,4 +45,29 @@ class AppInitializer { return ThemeMode.light; } } + + static Future _initializeFirebase() async { + try { + await Firebase.initializeApp( + options: const FirebaseOptions( + apiKey: 'AIzaSyBp-UHjWeM0H0UHtX5yguFKG-riMzvvCzw', + appId: '1:935017686266:android:f9cbc9aba8e3d65ed2d543', + messagingSenderId: '935017686266', + projectId: 'didvan-9b7da', + ), + ); + } catch (e) { + Firebase.app(); + } + final FirebaseMessaging fcm = FirebaseMessaging.instance; + await fcm.requestPermission( + alert: true, + announcement: false, + badge: true, + carPlay: false, + criticalAlert: false, + provisional: false, + sound: true, + ); + } } diff --git a/pubspec.lock b/pubspec.lock index 6942b4d..1ae7618 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -148,6 +148,48 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "6.1.2" + firebase_core: + dependency: "direct main" + description: + name: firebase_core + url: "https://pub.dartlang.org" + source: hosted + version: "1.13.1" + firebase_core_platform_interface: + dependency: transitive + description: + name: firebase_core_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "4.2.5" + firebase_core_web: + dependency: transitive + description: + name: firebase_core_web + url: "https://pub.dartlang.org" + source: hosted + version: "1.6.1" + firebase_messaging: + dependency: "direct main" + description: + name: firebase_messaging + url: "https://pub.dartlang.org" + source: hosted + version: "11.2.8" + firebase_messaging_platform_interface: + dependency: transitive + description: + name: firebase_messaging_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "3.2.1" + firebase_messaging_web: + dependency: transitive + description: + name: firebase_messaging_web + url: "https://pub.dartlang.org" + source: hosted + version: "2.2.9" flutter: dependency: "direct main" description: flutter @@ -762,5 +804,5 @@ packages: source: hosted version: "5.3.1" sdks: - dart: ">=2.15.0 <3.0.0" + dart: ">=2.16.0 <3.0.0" flutter: ">=2.5.0" diff --git a/pubspec.yaml b/pubspec.yaml index 119a748..f732c01 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -60,6 +60,8 @@ dependencies: url_launcher: ^6.0.18 audio_video_progress_bar: ^0.10.0 image_cropper: ^1.5.0 + firebase_messaging: ^11.2.8 + firebase_core: ^1.13.1 dev_dependencies: From ce804000de1509ace9f17777083a2824fad1395f Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 6 Mar 2022 12:50:22 +0330 Subject: [PATCH 252/273] firebase ios configuration --- ios/Podfile | 2 +- ios/Podfile.lock | 90 +++++++++++++++++++++++++++- ios/Runner.xcodeproj/project.pbxproj | 4 ++ ios/Runner/AppDelegate.swift | 21 ++++++- ios/Runner/GoogleService-Info.plist | 34 +++++++++++ ios/Runner/Info.plist | 12 ++-- 6 files changed, 154 insertions(+), 9 deletions(-) create mode 100644 ios/Runner/GoogleService-Info.plist diff --git a/ios/Podfile b/ios/Podfile index 252d9ec..9411102 100644 --- a/ios/Podfile +++ b/ios/Podfile @@ -1,5 +1,5 @@ # Uncomment this line to define a global platform for your project -platform :ios, '9.0' +platform :ios, '10.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 402e2e1..55fa4cf 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -1,6 +1,41 @@ PODS: - audio_session (0.0.1): - Flutter + - Firebase/CoreOnly (8.11.0): + - FirebaseCore (= 8.11.0) + - Firebase/Messaging (8.11.0): + - Firebase/CoreOnly + - FirebaseMessaging (~> 8.11.0) + - firebase_core (1.13.1): + - Firebase/CoreOnly (= 8.11.0) + - Flutter + - firebase_messaging (11.2.8): + - Firebase/Messaging (= 8.11.0) + - firebase_core + - Flutter + - FirebaseCore (8.11.0): + - FirebaseCoreDiagnostics (~> 8.0) + - GoogleUtilities/Environment (~> 7.7) + - GoogleUtilities/Logger (~> 7.7) + - FirebaseCoreDiagnostics (8.12.0): + - GoogleDataTransport (~> 9.1) + - GoogleUtilities/Environment (~> 7.7) + - GoogleUtilities/Logger (~> 7.7) + - nanopb (~> 2.30908.0) + - FirebaseInstallations (8.12.0): + - FirebaseCore (~> 8.0) + - GoogleUtilities/Environment (~> 7.7) + - GoogleUtilities/UserDefaults (~> 7.7) + - PromisesObjC (< 3.0, >= 1.2) + - FirebaseMessaging (8.11.0): + - FirebaseCore (~> 8.0) + - FirebaseInstallations (~> 8.0) + - GoogleDataTransport (~> 9.1) + - GoogleUtilities/AppDelegateSwizzler (~> 7.7) + - GoogleUtilities/Environment (~> 7.7) + - GoogleUtilities/Reachability (~> 7.7) + - GoogleUtilities/UserDefaults (~> 7.7) + - nanopb (~> 2.30908.0) - Flutter (1.0.0) - flutter_secure_storage (3.3.1): - Flutter @@ -9,6 +44,27 @@ PODS: - FMDB (2.7.5): - FMDB/standard (= 2.7.5) - FMDB/standard (2.7.5) + - GoogleDataTransport (9.1.2): + - GoogleUtilities/Environment (~> 7.2) + - nanopb (~> 2.30908.0) + - PromisesObjC (< 3.0, >= 1.2) + - GoogleUtilities/AppDelegateSwizzler (7.7.0): + - GoogleUtilities/Environment + - GoogleUtilities/Logger + - GoogleUtilities/Network + - GoogleUtilities/Environment (7.7.0): + - PromisesObjC (< 3.0, >= 1.2) + - GoogleUtilities/Logger (7.7.0): + - GoogleUtilities/Environment + - GoogleUtilities/Network (7.7.0): + - GoogleUtilities/Logger + - "GoogleUtilities/NSData+zlib" + - GoogleUtilities/Reachability + - "GoogleUtilities/NSData+zlib (7.7.0)" + - GoogleUtilities/Reachability (7.7.0): + - GoogleUtilities/Logger + - GoogleUtilities/UserDefaults (7.7.0): + - GoogleUtilities/Logger - image_cropper (0.0.4): - Flutter - TOCropViewController (~> 2.6.1) @@ -16,8 +72,14 @@ PODS: - Flutter - just_audio (0.0.1): - Flutter + - nanopb (2.30908.0): + - nanopb/decode (= 2.30908.0) + - nanopb/encode (= 2.30908.0) + - nanopb/decode (2.30908.0) + - nanopb/encode (2.30908.0) - path_provider_ios (0.0.1): - Flutter + - PromisesObjC (2.0.0) - record (0.0.1): - Flutter - sqflite (0.0.2): @@ -29,6 +91,8 @@ PODS: DEPENDENCIES: - audio_session (from `.symlinks/plugins/audio_session/ios`) + - firebase_core (from `.symlinks/plugins/firebase_core/ios`) + - firebase_messaging (from `.symlinks/plugins/firebase_messaging/ios`) - Flutter (from `Flutter`) - flutter_secure_storage (from `.symlinks/plugins/flutter_secure_storage/ios`) - flutter_vibrate (from `.symlinks/plugins/flutter_vibrate/ios`) @@ -42,12 +106,25 @@ DEPENDENCIES: SPEC REPOS: trunk: + - Firebase + - FirebaseCore + - FirebaseCoreDiagnostics + - FirebaseInstallations + - FirebaseMessaging - FMDB + - GoogleDataTransport + - GoogleUtilities + - nanopb + - PromisesObjC - TOCropViewController EXTERNAL SOURCES: audio_session: :path: ".symlinks/plugins/audio_session/ios" + firebase_core: + :path: ".symlinks/plugins/firebase_core/ios" + firebase_messaging: + :path: ".symlinks/plugins/firebase_messaging/ios" Flutter: :path: Flutter flutter_secure_storage: @@ -71,19 +148,30 @@ EXTERNAL SOURCES: SPEC CHECKSUMS: audio_session: 4f3e461722055d21515cf3261b64c973c062f345 + Firebase: 44dd9724c84df18b486639e874f31436eaa9a20c + firebase_core: 08f6a85f62060111de5e98d6a214810d11365de9 + firebase_messaging: 36238f3d0b933af8c919aef608408aae06ba22e8 + FirebaseCore: 2f4f85b453cc8fea4bb2b37e370007d2bcafe3f0 + FirebaseCoreDiagnostics: 3b40dfadef5b90433a60ae01f01e90fe87aa76aa + FirebaseInstallations: 25764cf322e77f99449395870a65b2bef88e1545 + FirebaseMessaging: 02e248e8997f71fa8cc9d78e9d49ec1a701ba14a Flutter: 50d75fe2f02b26cc09d224853bb45737f8b3214a flutter_secure_storage: 7953c38a04c3fdbb00571bcd87d8e3b5ceb9daec flutter_vibrate: 9f4c2ab57008965f78969472367c329dd77eb801 FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a + GoogleDataTransport: 629c20a4d363167143f30ea78320d5a7eb8bd940 + GoogleUtilities: e0913149f6b0625b553d70dae12b49fc62914fd1 image_cropper: 60c2789d1f1a78c873235d4319ca0c34a69f2d98 image_picker: 9aa50e1d8cdacdbed739e925b7eea16d014367e6 just_audio: baa7252489dbcf47a4c7cc9ca663e9661c99aafa + nanopb: a0ba3315591a9ae0a16a309ee504766e90db0c96 path_provider_ios: 7d7ce634493af4477d156294792024ec3485acd5 + PromisesObjC: 68159ce6952d93e17b2dfe273b8c40907db5ba58 record: 7ee2393532f8553bbb09fa19e95478323b7c0a99 sqflite: 6d358c025f5b867b29ed92fc697fd34924e11904 TOCropViewController: edfd4f25713d56905ad1e0b9f5be3fbe0f59c863 url_launcher_ios: 02f1989d4e14e998335b02b67a7590fa34f971af -PODFILE CHECKSUM: a75497545d4391e2d394c3668e20cfb1c2bbd4aa +PODFILE CHECKSUM: fe0e1ee7f3d1f7d00b11b474b62dd62134535aea COCOAPODS: 1.11.2 diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index afb27d5..f2eb3d9 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -13,6 +13,7 @@ 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; + D194CE3E27D4A4740049AFC7 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = D194CE3D27D4A4740049AFC7 /* GoogleService-Info.plist */; }; E870A5F479A60D6704DD5DF2 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 75DBECA488F412614712FB74 /* Pods_Runner.framework */; }; /* End PBXBuildFile section */ @@ -47,6 +48,7 @@ 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 98ACB01D5FA5A78DB2686183 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; C97DED20C4A171F16FB949CD /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; + D194CE3D27D4A4740049AFC7 /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -112,6 +114,7 @@ 97C146F01CF9000F007C117D /* Runner */ = { isa = PBXGroup; children = ( + D194CE3D27D4A4740049AFC7 /* GoogleService-Info.plist */, 97C146FA1CF9000F007C117D /* Main.storyboard */, 97C146FD1CF9000F007C117D /* Assets.xcassets */, 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, @@ -189,6 +192,7 @@ files = ( 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, + D194CE3E27D4A4740049AFC7 /* GoogleService-Info.plist in Resources */, 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, ); diff --git a/ios/Runner/AppDelegate.swift b/ios/Runner/AppDelegate.swift index 70693e4..507864d 100644 --- a/ios/Runner/AppDelegate.swift +++ b/ios/Runner/AppDelegate.swift @@ -1,13 +1,30 @@ import UIKit import Flutter +import Firebase + @UIApplicationMain -@objc class AppDelegate: FlutterAppDelegate { +@objc class AppDelegate: FlutterAppDelegate, MessagingDelegate { override func application( _ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? ) -> Bool { + FirebaseApp.configure() + Messaging.messaging().delegate = self GeneratedPluginRegistrant.register(with: self) + if #available(iOS 10.0, *) { + // For iOS 10 display notification (sent via APNS) + UNUserNotificationCenter.current().delegate = self + let authOptions: UNAuthorizationOptions = [.alert, .badge, .sound] + UNUserNotificationCenter.current().requestAuthorization( + options: authOptions, + completionHandler: {_, _ in }) + } else { + let settings: UIUserNotificationSettings = + UIUserNotificationSettings(types: [.alert, .badge, .sound], categories: nil) + application.registerUserNotificationSettings(settings) + } + application.registerForRemoteNotifications() return super.application(application, didFinishLaunchingWithOptions: launchOptions) } -} +} \ No newline at end of file diff --git a/ios/Runner/GoogleService-Info.plist b/ios/Runner/GoogleService-Info.plist new file mode 100644 index 0000000..4bc4228 --- /dev/null +++ b/ios/Runner/GoogleService-Info.plist @@ -0,0 +1,34 @@ + + + + + CLIENT_ID + 935017686266-54hu01v9cc5pqpgofo1gk2n3hegj4r2m.apps.googleusercontent.com + REVERSED_CLIENT_ID + com.googleusercontent.apps.935017686266-54hu01v9cc5pqpgofo1gk2n3hegj4r2m + API_KEY + AIzaSyCMa-zg_uVhOfTnea5Klz6aPZlgHwVGj7U + GCM_SENDER_ID + 935017686266 + PLIST_VERSION + 1 + BUNDLE_ID + com.didvan.didvanapp + PROJECT_ID + didvan-9b7da + STORAGE_BUCKET + didvan-9b7da.appspot.com + IS_ADS_ENABLED + + IS_ANALYTICS_ENABLED + + IS_APPINVITE_ENABLED + + IS_GCM_ENABLED + + IS_SIGNIN_ENABLED + + GOOGLE_APP_ID + 1:935017686266:ios:de47638bd662463fd2d543 + + \ No newline at end of file diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist index 4d67f3b..17f2a3a 100644 --- a/ios/Runner/Info.plist +++ b/ios/Runner/Info.plist @@ -26,12 +26,14 @@ LaunchScreen UIMainStoryboardFile Main + FirebaseAppDelegateProxyEnabled + NSMicrophoneUsageDescription -We need to access to the microphone to record audio file -NSPhotoLibraryUsageDescription -We need to access to the user gallery to add user profile photo -NSCameraUsageDescription -We need to access to the user gallery to add user profile photo + We need to access to the microphone to record audio file + NSPhotoLibraryUsageDescription + We need to access to the user gallery to add user profile photo + NSCameraUsageDescription + We need to access to the user gallery to add user profile photo UISupportedInterfaceOrientations UIInterfaceOrientationPortrait From cd3d2d59b3247c9239bc36db11dafcb352de7c8f Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 6 Mar 2022 12:53:59 +0330 Subject: [PATCH 253/273] bug fixes + terms of use --- .../authentication/screens/username.dart | 9 +++++++-- lib/views/home/widgets/bnb.dart | 9 ++++++++- lib/views/widgets/didvan/page_view.dart | 6 +++--- lib/views/widgets/skeleton_image.dart | 20 +++++++++---------- 4 files changed, 27 insertions(+), 17 deletions(-) diff --git a/lib/views/authentication/screens/username.dart b/lib/views/authentication/screens/username.dart index fcec2fd..e17f598 100644 --- a/lib/views/authentication/screens/username.dart +++ b/lib/views/authentication/screens/username.dart @@ -5,6 +5,7 @@ import 'package:didvan/views/widgets/didvan/text_field.dart'; import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; +import 'package:url_launcher/url_launcher.dart'; class UsernameInput extends StatefulWidget { const UsernameInput({ @@ -70,7 +71,7 @@ class _UsernameInputState extends State { .textTheme .caption! .copyWith(color: Theme.of(context).colorScheme.primary), - recognizer: TapGestureRecognizer()..onTap = () {}, + recognizer: TapGestureRecognizer()..onTap = _openTermsOfUse, ), const TextSpan(text: 'و\n'), TextSpan( @@ -79,7 +80,7 @@ class _UsernameInputState extends State { .textTheme .caption! .copyWith(color: Theme.of(context).colorScheme.primary), - recognizer: TapGestureRecognizer()..onTap = () {}, + recognizer: TapGestureRecognizer()..onTap = _openTermsOfUse, ), const TextSpan(text: 'را می‌پذیرم'), ], @@ -92,4 +93,8 @@ class _UsernameInputState extends State { ], ); } + + void _openTermsOfUse() { + launch('https://didvan.app/termsOfUse.html'); + } } diff --git a/lib/views/home/widgets/bnb.dart b/lib/views/home/widgets/bnb.dart index 42d8ad9..05c499a 100644 --- a/lib/views/home/widgets/bnb.dart +++ b/lib/views/home/widgets/bnb.dart @@ -19,7 +19,14 @@ class DidvanBNB extends StatelessWidget { decoration: BoxDecoration( color: Theme.of(context).colorScheme.surface, borderRadius: const BorderRadius.vertical(top: Radius.circular(16)), - boxShadow: DesignConfig.defaultShadow, + boxShadow: [ + BoxShadow( + offset: const Offset(0, -18), + color: const Color(0XFF1B3C59).withOpacity(0.25), + blurRadius: 40, + spreadRadius: -15, + ), + ], ), padding: const EdgeInsets.symmetric(horizontal: 12), child: Row( diff --git a/lib/views/widgets/didvan/page_view.dart b/lib/views/widgets/didvan/page_view.dart index a4b6a62..aba3078 100644 --- a/lib/views/widgets/didvan/page_view.dart +++ b/lib/views/widgets/didvan/page_view.dart @@ -209,14 +209,14 @@ class _DidvanPageViewState extends State { child: Center( child: SkeletonImage( width: MediaQuery.of(context).size.width, - height: 200, imageUrl: content.image, ), ), ), ), const Positioned( - right: 16, + right: 24, + top: 24, child: _BackButton(), ), ], @@ -225,7 +225,7 @@ class _DidvanPageViewState extends State { }, child: SkeletonImage( imageUrl: content.image!, - aspectRatio: 16 / 9, + width: double.infinity, ), ); } diff --git a/lib/views/widgets/skeleton_image.dart b/lib/views/widgets/skeleton_image.dart index bf7db1c..c59f431 100644 --- a/lib/views/widgets/skeleton_image.dart +++ b/lib/views/widgets/skeleton_image.dart @@ -8,17 +8,17 @@ import 'package:cached_network_image_platform_interface/cached_network_image_pla class SkeletonImage extends StatelessWidget { final String imageUrl; - final double width; - final double height; + final double? width; + final double? height; final BorderRadius? borderRadius; final double? aspectRatio; const SkeletonImage({ Key? key, required this.imageUrl, - this.width = 300, - this.height = 140, this.borderRadius = DesignConfig.lowBorderRadius, this.aspectRatio, + this.width, + this.height, }) : super(key: key); @override @@ -30,13 +30,11 @@ class SkeletonImage extends StatelessWidget { width: width, height: height, imageUrl: RequestHelper.baseUrl + imageUrl, - imageBuilder: (context, imageProvider) => Container( - decoration: BoxDecoration( - borderRadius: borderRadius ?? DesignConfig.lowBorderRadius, - image: DecorationImage( - image: imageProvider, - fit: BoxFit.cover, - ), + imageBuilder: (context, imageProvider) => ClipRRect( + borderRadius: borderRadius ?? DesignConfig.lowBorderRadius, + child: Image( + image: imageProvider, + fit: BoxFit.cover, ), ), progressIndicatorBuilder: (context, url, progress) => From 3091c5d91522ac659da59ad13d55f4755cc0af38 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 6 Mar 2022 14:59:12 +0330 Subject: [PATCH 254/273] D1APP-99 preparing... --- lib/services/media/media.dart | 7 + lib/views/home/direct/direct.dart | 109 +++++++------- .../podcast_details/podcast_details.dart | 17 +++ .../studio/video_details/video_details.dart | 0 lib/views/home/studio/widgets/tab_bar.dart | 22 ++- lib/views/home/widgets/bnb.dart | 138 ++++++++++++------ lib/views/home/widgets/podcast_overview.dart | 138 ++++++++++++++++++ 7 files changed, 325 insertions(+), 106 deletions(-) create mode 100644 lib/views/home/studio/podcast_details/podcast_details.dart create mode 100644 lib/views/home/studio/video_details/video_details.dart create mode 100644 lib/views/home/widgets/podcast_overview.dart diff --git a/lib/services/media/media.dart b/lib/services/media/media.dart index 7e173cf..fb0fe74 100644 --- a/lib/services/media/media.dart +++ b/lib/services/media/media.dart @@ -7,6 +7,8 @@ import 'package:just_audio/just_audio.dart'; class MediaService { static final AudioPlayer audioPlayer = AudioPlayer(); static String? audioPlayerTag; + static String? audioPlayerTitle; + static String? audioPlayerCover; static void init() { audioPlayer.positionStream.listen((event) { @@ -54,6 +56,11 @@ class MediaService { } } + static Future resetAudioPlayer() async { + audioPlayerTag = null; + MediaService.audioPlayer.stop(); + } + static Future pickImage({required ImageSource source}) async { final imagePicker = ImagePicker(); final XFile? pickedFile = await imagePicker.pickImage(source: source); diff --git a/lib/views/home/direct/direct.dart b/lib/views/home/direct/direct.dart index e3cf43e..2af96ec 100644 --- a/lib/views/home/direct/direct.dart +++ b/lib/views/home/direct/direct.dart @@ -1,6 +1,7 @@ import 'package:didvan/models/enums.dart'; import 'package:didvan/models/view/app_bar_data.dart'; import 'package:didvan/providers/server_data_provider.dart'; +import 'package:didvan/services/media/media.dart'; import 'package:didvan/views/home/direct/direct_state.dart'; import 'package:didvan/views/home/direct/widgets/message.dart'; import 'package:didvan/views/home/direct/widgets/message_box.dart'; @@ -35,59 +36,65 @@ class _DirectState extends State { Widget build(BuildContext context) { final state = context.watch(); final d = MediaQuery.of(context); - return Material( - child: Stack( - children: [ - Positioned( - top: 0, - bottom: 56, - left: 0, - right: 0, - child: DidvanScaffold( - reverse: true, - backgroundColor: Theme.of(context).colorScheme.surface, - appBarData: AppBarData( - hasBack: true, - subtitle: 'ارتباط با سردبیر', - title: widget.pageData['type'] ?? 'پشتیبانی اپلیکیشن', + return WillPopScope( + onWillPop: () async { + MediaService.resetAudioPlayer(); + return true; + }, + child: Material( + child: Stack( + children: [ + Positioned( + top: 0, + bottom: 56, + left: 0, + right: 0, + child: DidvanScaffold( + reverse: true, + backgroundColor: Theme.of(context).colorScheme.surface, + appBarData: AppBarData( + hasBack: true, + subtitle: 'ارتباط با سردبیر', + title: widget.pageData['type'] ?? 'پشتیبانی اپلیکیشن', + ), + slivers: [ + if (state.appState != AppState.busy) + SliverPadding( + padding: state.replyRadar == null + ? EdgeInsets.zero + : const EdgeInsets.only(bottom: 68), + sliver: SliverStateHandler( + itemPadding: const EdgeInsets.only(bottom: 12), + state: state, + builder: (context, state, index) => Message( + message: state.messages[index], + ), + childCount: state.messages.length, + onRetry: state.getMessages, + ), + ), + ], + children: [ + if (state.appState == AppState.busy) + SizedBox( + height: d.size.height - kToolbarHeight - d.padding.top, + child: Center( + child: SpinKitSpinningLines( + color: Theme.of(context).colorScheme.primary, + ), + ), + ), + ], ), - slivers: [ - if (state.appState != AppState.busy) - SliverPadding( - padding: state.replyRadar == null - ? EdgeInsets.zero - : const EdgeInsets.only(bottom: 68), - sliver: SliverStateHandler( - itemPadding: const EdgeInsets.only(bottom: 12), - state: state, - builder: (context, state, index) => Message( - message: state.messages[index], - ), - childCount: state.messages.length, - onRetry: state.getMessages, - ), - ), - ], - children: [ - if (state.appState == AppState.busy) - SizedBox( - height: d.size.height - kToolbarHeight - d.padding.top, - child: Center( - child: SpinKitSpinningLines( - color: Theme.of(context).colorScheme.primary, - ), - ), - ), - ], ), - ), - Positioned( - bottom: d.viewInsets.bottom, - right: 0, - left: 0, - child: const MessageBox(), - ), - ], + Positioned( + bottom: d.viewInsets.bottom, + right: 0, + left: 0, + child: const MessageBox(), + ), + ], + ), ), ); } diff --git a/lib/views/home/studio/podcast_details/podcast_details.dart b/lib/views/home/studio/podcast_details/podcast_details.dart new file mode 100644 index 0000000..140d8d0 --- /dev/null +++ b/lib/views/home/studio/podcast_details/podcast_details.dart @@ -0,0 +1,17 @@ +import 'package:flutter/material.dart'; + +class PodcastDetails extends StatelessWidget { + const PodcastDetails({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Material( + child: Container( + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.surface, + borderRadius: const BorderRadius.vertical(top: Radius.circular(8)), + ), + ), + ); + } +} diff --git a/lib/views/home/studio/video_details/video_details.dart b/lib/views/home/studio/video_details/video_details.dart new file mode 100644 index 0000000..e69de29 diff --git a/lib/views/home/studio/widgets/tab_bar.dart b/lib/views/home/studio/widgets/tab_bar.dart index c5caacb..7e11744 100644 --- a/lib/views/home/studio/widgets/tab_bar.dart +++ b/lib/views/home/studio/widgets/tab_bar.dart @@ -1,8 +1,10 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/views/home/studio/studio_state.dart'; import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; class StudioTabBar extends StatelessWidget { const StudioTabBar({ @@ -11,11 +13,16 @@ class StudioTabBar extends StatelessWidget { @override Widget build(BuildContext context) { + final state = context.watch(); return Container( margin: const EdgeInsets.symmetric(horizontal: 16), padding: const EdgeInsets.all(4), decoration: BoxDecoration( - border: Border.all(color: Theme.of(context).colorScheme.border), + border: Border.all( + color: state.videosSelected + ? Theme.of(context).colorScheme.secondary + : Theme.of(context).primaryColor, + ), borderRadius: DesignConfig.lowBorderRadius, ), child: Row( @@ -26,7 +33,7 @@ class StudioTabBar extends StatelessWidget { selectedColor: Theme.of(context).colorScheme.secondary, title: 'ویدئو', onTap: () {}, - isSelected: true, + isSelected: state.videosSelected, ), ), Container( @@ -40,7 +47,7 @@ class StudioTabBar extends StatelessWidget { selectedColor: Theme.of(context).colorScheme.focusedBorder, title: 'پادکست', onTap: () {}, - isSelected: true, + isSelected: !state.videosSelected, ), ), ], @@ -64,7 +71,8 @@ class _StudioTypeButton extends StatelessWidget { required this.isSelected, }) : super(key: key); - Color? get _color => isSelected ? selectedColor : null; + Color? _color(context) => + isSelected ? selectedColor : Theme.of(context).colorScheme.hint; @override Widget build(BuildContext context) { @@ -77,20 +85,20 @@ class _StudioTypeButton extends StatelessWidget { Icon( icon, size: 32, - color: _color, + color: _color(context), ), if (!isSelected) const SizedBox(height: 18), if (isSelected) Container( width: 88, height: 1, - color: _color, + color: _color(context), ), if (isSelected) DidvanText( title, style: Theme.of(context).textTheme.overline, - color: _color, + color: _color(context), ) ], ), diff --git a/lib/views/home/widgets/bnb.dart b/lib/views/home/widgets/bnb.dart index 42d8ad9..4c78de0 100644 --- a/lib/views/home/widgets/bnb.dart +++ b/lib/views/home/widgets/bnb.dart @@ -1,7 +1,10 @@ import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/services/media/media.dart'; +import 'package:didvan/views/widgets/didvan/icon_button.dart'; import 'package:didvan/views/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/skeleton_image.dart'; import 'package:flutter/material.dart'; class DidvanBNB extends StatelessWidget { @@ -14,54 +17,93 @@ class DidvanBNB extends StatelessWidget { @override Widget build(BuildContext context) { - return Container( - height: 72, - decoration: BoxDecoration( - color: Theme.of(context).colorScheme.surface, - borderRadius: const BorderRadius.vertical(top: Radius.circular(16)), - boxShadow: DesignConfig.defaultShadow, - ), - padding: const EdgeInsets.symmetric(horizontal: 12), - child: Row( - children: [ - _NavBarItem( - isSelected: currentTabIndex == 0, - title: 'اخبار', - selectedIcon: DidvanIcons.news_solid, - unselectedIcon: DidvanIcons.news_light, - onTap: () => onTabChanged(0), - ), - _NavBarItem( - isSelected: currentTabIndex == 1, - title: 'آمار', - selectedIcon: DidvanIcons.chart_solid, - unselectedIcon: DidvanIcons.chart_light, - onTap: () => onTabChanged(1), - ), - _NavBarItem( - isSelected: currentTabIndex == 2, - title: 'رادار', - selectedIcon: DidvanIcons.radar_solid, - unselectedIcon: DidvanIcons.radar_light, - onTap: () => onTabChanged(2), - ), - _NavBarItem( - isSelected: currentTabIndex == 3, - title: 'استودیو', - selectedIcon: DidvanIcons.play_circle_solid, - unselectedIcon: DidvanIcons.play_circle_light, - onTap: () => onTabChanged(3), - ), - _NavBarItem( - isSelected: currentTabIndex == 4, - title: 'تنظیمات', - selectedIcon: DidvanIcons.setting_solid, - unselectedIcon: DidvanIcons.setting_light, - onTap: () => onTabChanged(4), - ), - ], - ), - ); + return StreamBuilder( + stream: MediaService.audioPlayer.playingStream, + builder: (context, snapshot) { + return Stack( + children: [ + AnimatedContainer( + duration: DesignConfig.lowAnimationDuration, + height: snapshot.data == true ? 120 : 72, + decoration: BoxDecoration( + color: DesignConfig.isDark + ? Theme.of(context).colorScheme.focused + : Theme.of(context).colorScheme.navigation, + borderRadius: const BorderRadius.vertical( + top: Radius.circular(16), + ), + ), + child: Row( + children: [ + const DidvanIconButton( + icon: DidvanIcons.close_regular, + gestureSize: 24, + onPressed: MediaService.resetAudioPlayer, + ), + const SizedBox(width: 16), + if (MediaService.audioPlayerCover != null) + SkeletonImage(imageUrl: MediaService.audioPlayerCover!), + const SizedBox(width: 16), + ], + ), + ), + Positioned( + bottom: 0, + left: 0, + right: 0, + child: Container( + height: 72, + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.surface, + borderRadius: + const BorderRadius.vertical(top: Radius.circular(16)), + boxShadow: DesignConfig.defaultShadow, + ), + padding: const EdgeInsets.symmetric(horizontal: 12), + child: Row( + children: [ + _NavBarItem( + isSelected: currentTabIndex == 0, + title: 'اخبار', + selectedIcon: DidvanIcons.news_solid, + unselectedIcon: DidvanIcons.news_light, + onTap: () => onTabChanged(0), + ), + _NavBarItem( + isSelected: currentTabIndex == 1, + title: 'آمار', + selectedIcon: DidvanIcons.chart_solid, + unselectedIcon: DidvanIcons.chart_light, + onTap: () => onTabChanged(1), + ), + _NavBarItem( + isSelected: currentTabIndex == 2, + title: 'رادار', + selectedIcon: DidvanIcons.radar_solid, + unselectedIcon: DidvanIcons.radar_light, + onTap: () => onTabChanged(2), + ), + _NavBarItem( + isSelected: currentTabIndex == 3, + title: 'استودیو', + selectedIcon: DidvanIcons.play_circle_solid, + unselectedIcon: DidvanIcons.play_circle_light, + onTap: () => onTabChanged(3), + ), + _NavBarItem( + isSelected: currentTabIndex == 4, + title: 'تنظیمات', + selectedIcon: DidvanIcons.setting_solid, + unselectedIcon: DidvanIcons.setting_light, + onTap: () => onTabChanged(4), + ), + ], + ), + ), + ), + ], + ); + }); } } diff --git a/lib/views/home/widgets/podcast_overview.dart b/lib/views/home/widgets/podcast_overview.dart new file mode 100644 index 0000000..fa626fb --- /dev/null +++ b/lib/views/home/widgets/podcast_overview.dart @@ -0,0 +1,138 @@ +import 'package:didvan/models/overview_data.dart'; +import 'package:didvan/models/requests/news.dart'; +import 'package:didvan/routes/routes.dart'; +import 'package:didvan/utils/date_time.dart'; +import 'package:didvan/views/home/widgets/bookmark_button.dart'; +import 'package:didvan/views/widgets/didvan/card.dart'; +import 'package:didvan/views/widgets/didvan/divider.dart'; +import 'package:didvan/views/widgets/didvan/text.dart'; +import 'package:didvan/views/widgets/shimmer_placeholder.dart'; +import 'package:didvan/views/widgets/skeleton_image.dart'; +import 'package:flutter/material.dart'; + +class PodcastOverview extends StatelessWidget { + final OverviewData news; + final NewsRequestArgs? newsRequestArgs; + final void Function(int id, bool value) onMarkChanged; + final bool hasUnmarkConfirmation; + const PodcastOverview({ + Key? key, + required this.news, + required this.onMarkChanged, + this.newsRequestArgs, + this.hasUnmarkConfirmation = false, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return DidvanCard( + onTap: () => Navigator.of(context).pushNamed( + Routes.newsDetails, + arguments: { + 'onMarkChanged': onMarkChanged, + 'id': news.id, + 'args': newsRequestArgs, + 'hasUnmarkConfirmation': hasUnmarkConfirmation, + }, + ), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + children: [ + SkeletonImage( + imageUrl: news.image, + width: 64, + height: 64, + ), + const SizedBox(width: 8), + Expanded( + child: SizedBox( + height: 64, + child: DidvanText( + news.title, + style: Theme.of(context).textTheme.bodyText1, + ), + ), + ), + ], + ), + const SizedBox(height: 8), + DidvanText( + news.description, + maxLines: 3, + ), + const DidvanDivider(verticalPadding: 8), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Row( + children: [ + DidvanText( + news.reference!, + style: Theme.of(context).textTheme.caption, + ), + DidvanText( + ' - ' + DateTimeUtils.momentGenerator(news.createdAt), + style: Theme.of(context).textTheme.caption, + ), + ], + ), + BookmarkButton( + value: news.marked, + onMarkChanged: (value) => onMarkChanged(news.id, value), + askForConfirmation: hasUnmarkConfirmation, + ), + ], + ), + ], + ), + ); + } + + static Widget get placeholder => DidvanCard( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const ShimmerPlaceholder(height: 64, width: 64), + const SizedBox(width: 8), + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: const [ + ShimmerPlaceholder(height: 18, width: 200), + SizedBox(height: 8), + ShimmerPlaceholder(height: 18, width: 100), + ], + ), + ], + ), + const SizedBox(height: 12), + const ShimmerPlaceholder( + height: 16, + width: double.infinity, + ), + const SizedBox(height: 8), + const ShimmerPlaceholder( + height: 16, + width: double.infinity, + ), + const SizedBox(height: 8), + const ShimmerPlaceholder( + height: 16, + width: 100, + ), + const DidvanDivider(verticalPadding: 8), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: const [ + ShimmerPlaceholder(height: 12, width: 150), + ShimmerPlaceholder(height: 24, width: 24), + ], + ), + ], + ), + ); +} From be6cc21b2aa0acd987c7d7938865123cdbbad68b Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 6 Mar 2022 15:20:09 +0330 Subject: [PATCH 255/273] chat initial message bug fixed + attachment --- lib/views/home/direct/direct_state.dart | 8 ++++++-- lib/views/home/direct/widgets/message.dart | 1 + 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/views/home/direct/direct_state.dart b/lib/views/home/direct/direct_state.dart index 86cf3a9..d3ec623 100644 --- a/lib/views/home/direct/direct_state.dart +++ b/lib/views/home/direct/direct_state.dart @@ -76,7 +76,12 @@ class DirectState extends CoreProvier { } void _addToDailyGrouped() { - final createdAt = messages.last.createdAt.split('T').first; + String createdAt; + if (messages.last.createdAt.contains('T')) { + createdAt = messages.last.createdAt.split('T').first; + } else { + createdAt = messages.last.createdAt.split(' ').first; + } if (!dailyMessages.containsKey(createdAt)) { dailyMessages.addAll({ createdAt: [messages.last.id] @@ -88,7 +93,6 @@ class DirectState extends CoreProvier { Future sendMessage() async { if ((text == null || text!.isEmpty) && recordedFile == null) return; - replyRadar = null; messages.insert( 0, MessageData( diff --git a/lib/views/home/direct/widgets/message.dart b/lib/views/home/direct/widgets/message.dart index 818b2ff..49ab63d 100644 --- a/lib/views/home/direct/widgets/message.dart +++ b/lib/views/home/direct/widgets/message.dart @@ -58,6 +58,7 @@ class Message extends StatelessWidget { _MessageContainer( writedByAdmin: message.writedByAdmin, child: Column( + crossAxisAlignment: CrossAxisAlignment.start, children: [ if (message.text != null) DidvanText(message.text!), if (message.audio != null || message.audioFile != null) From 3c8a9fea22be054c1a7da7d8b2700356187a2743 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 6 Mar 2022 16:19:17 +0330 Subject: [PATCH 256/273] PWA max width addde --- lib/routes/route_generator.dart | 22 ++++++++++----- .../home/radar/widgets/category_item.dart | 27 ++++++++++++++++--- 2 files changed, 39 insertions(+), 10 deletions(-) diff --git a/lib/routes/route_generator.dart b/lib/routes/route_generator.dart index d17d78c..205d9b7 100644 --- a/lib/routes/route_generator.dart +++ b/lib/routes/route_generator.dart @@ -28,6 +28,7 @@ import 'package:didvan/views/home/settings/profile/profile.dart'; import 'package:didvan/views/home/studio/studio_state.dart'; import 'package:didvan/views/splash/splash.dart'; import 'package:didvan/routes/routes.dart'; +import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; @@ -165,13 +166,20 @@ class RouteGenerator { static Route _createRoute(page) { return MaterialPageRoute( - builder: (context) => Container( - color: Theme.of(context).colorScheme.surface, - child: SafeArea( - child: page, - top: false, - ), - ), + builder: (context) { + final shortestSide = MediaQuery.of(context).size.shortestSide; + final bool useMobileLayout = shortestSide < 600; + if (kIsWeb && !useMobileLayout) { + return Center(child: AspectRatio(aspectRatio: 9 / 16, child: page)); + } + return Container( + color: Theme.of(context).colorScheme.surface, + child: SafeArea( + child: page, + top: false, + ), + ); + }, ); } } diff --git a/lib/views/home/radar/widgets/category_item.dart b/lib/views/home/radar/widgets/category_item.dart index f8176a5..faee630 100644 --- a/lib/views/home/radar/widgets/category_item.dart +++ b/lib/views/home/radar/widgets/category_item.dart @@ -4,6 +4,7 @@ import 'package:didvan/models/view/radar_category.dart'; import 'package:didvan/views/home/radar/radar_state.dart'; import 'package:didvan/views/widgets/animated_visibility.dart'; import 'package:didvan/views/widgets/didvan/text.dart'; +import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; import 'package:provider/provider.dart'; @@ -18,6 +19,22 @@ class CategoryItem extends StatelessWidget { required this.category, }) : super(key: key); + double _width(context) { + final Size ds = MediaQuery.of(context).size; + if (kIsWeb) { + if (!_useWebMobileLayout(context)) { + return ds.height / 16 * 9 / 3; + } + } + return ds.width / 3; + } + + bool _useWebMobileLayout(context) { + final shortestSide = MediaQuery.of(context).size.shortestSide; + final bool useMobileLayout = shortestSide < 600; + return kIsWeb && useMobileLayout; + } + @override Widget build(BuildContext context) { final Size ds = MediaQuery.of(context).size; @@ -34,7 +51,7 @@ class CategoryItem extends StatelessWidget { child: AnimatedContainer( duration: DesignConfig.mediumAnimationDuration, padding: isColapsed ? const EdgeInsets.all(4) : EdgeInsets.zero, - width: isColapsed ? 100 : ds.width / 3, + width: isColapsed ? 100 : _width(context), alignment: Alignment.center, decoration: BoxDecoration( borderRadius: DesignConfig.lowBorderRadius, @@ -48,8 +65,12 @@ class CategoryItem extends StatelessWidget { duration: DesignConfig.mediumAnimationDuration, isVisible: !isColapsed, child: Container( - width: ds.width / 5, - height: ds.width / 5, + width: !_useWebMobileLayout(context) + ? _width(context) / 2 + : ds.width / 5, + height: !_useWebMobileLayout(context) + ? _width(context) / 2 + : ds.width / 5, decoration: BoxDecoration( color: Theme.of(context).colorScheme.surface, boxShadow: DesignConfig.defaultShadow, From 0d889c7a20745ddc56f72eb535c23bce1dde1b13 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 6 Mar 2022 18:15:39 +0330 Subject: [PATCH 257/273] new content types applied --- lib/models/content.dart | 8 ++++++++ lib/views/widgets/didvan/page_view.dart | 14 +++++++++----- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/lib/models/content.dart b/lib/models/content.dart index aa431e1..3ec25fe 100644 --- a/lib/models/content.dart +++ b/lib/models/content.dart @@ -4,6 +4,8 @@ class Content { final String? audio; final String? video; final String? image; + final String? largeImage; + final String? caption; const Content({ required this.order, @@ -11,6 +13,8 @@ class Content { required this.audio, required this.video, required this.image, + required this.largeImage, + required this.caption, }); factory Content.fromJson(Map json) => Content( @@ -19,6 +23,8 @@ class Content { audio: json['audio'], video: json['video'], image: json['image'], + largeImage: json['largeImage'], + caption: json['caption'], ); Map toJson() => { @@ -27,5 +33,7 @@ class Content { 'audio': audio, 'video': video, 'image': image, + 'largeImage': largeImage, + 'caption': caption, }; } diff --git a/lib/views/widgets/didvan/page_view.dart b/lib/views/widgets/didvan/page_view.dart index aba3078..799c62e 100644 --- a/lib/views/widgets/didvan/page_view.dart +++ b/lib/views/widgets/didvan/page_view.dart @@ -190,13 +190,17 @@ class _DidvanPageViewState extends State { margin: EdgeInsets.zero, padding: EdgeInsets.zero, ), - 'span': Style( - textAlign: TextAlign.center, - fontSize: FontSize.small, - ), }, ); } + if (content.caption != null) { + return Center( + child: DidvanText( + content.caption, + style: Theme.of(context).textTheme.caption, + ), + ); + } if (content.image != null) { return GestureDetector( onTap: () { @@ -209,7 +213,7 @@ class _DidvanPageViewState extends State { child: Center( child: SkeletonImage( width: MediaQuery.of(context).size.width, - imageUrl: content.image, + imageUrl: content.largeImage ?? content.image, ), ), ), From ce0b7f47a2411697639aa55a086c112a4430a8fd Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Sun, 6 Mar 2022 18:44:29 +0330 Subject: [PATCH 258/273] ios radars page scroll physics bug fixed --- lib/views/home/radar/radar.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/views/home/radar/radar.dart b/lib/views/home/radar/radar.dart index 0c97ddb..0a2adb1 100644 --- a/lib/views/home/radar/radar.dart +++ b/lib/views/home/radar/radar.dart @@ -65,7 +65,7 @@ class _RadarState extends State { CustomScrollView( physics: _isAnimating ? const NeverScrollableScrollPhysics() - : const ScrollPhysics(), + : const ClampingScrollPhysics(), controller: _scrollController, slivers: [ const SliverToBoxAdapter(child: LogoAppBar()), From deeca67ba656699ee7d74faa2007f39d635b00d9 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Mon, 7 Mar 2022 12:41:08 +0330 Subject: [PATCH 259/273] code cleaning --- lib/views/home/widgets/bnb.dart | 55 --------------------------------- 1 file changed, 55 deletions(-) diff --git a/lib/views/home/widgets/bnb.dart b/lib/views/home/widgets/bnb.dart index d956c3c..4c78de0 100644 --- a/lib/views/home/widgets/bnb.dart +++ b/lib/views/home/widgets/bnb.dart @@ -104,61 +104,6 @@ class DidvanBNB extends StatelessWidget { ], ); }); - return Container( - height: 72, - decoration: BoxDecoration( - color: Theme.of(context).colorScheme.surface, - borderRadius: const BorderRadius.vertical(top: Radius.circular(16)), - boxShadow: [ - BoxShadow( - offset: const Offset(0, -18), - color: const Color(0XFF1B3C59).withOpacity(0.25), - blurRadius: 40, - spreadRadius: -15, - ), - ], - ), - padding: const EdgeInsets.symmetric(horizontal: 12), - child: Row( - children: [ - _NavBarItem( - isSelected: currentTabIndex == 0, - title: 'اخبار', - selectedIcon: DidvanIcons.news_solid, - unselectedIcon: DidvanIcons.news_light, - onTap: () => onTabChanged(0), - ), - _NavBarItem( - isSelected: currentTabIndex == 1, - title: 'آمار', - selectedIcon: DidvanIcons.chart_solid, - unselectedIcon: DidvanIcons.chart_light, - onTap: () => onTabChanged(1), - ), - _NavBarItem( - isSelected: currentTabIndex == 2, - title: 'رادار', - selectedIcon: DidvanIcons.radar_solid, - unselectedIcon: DidvanIcons.radar_light, - onTap: () => onTabChanged(2), - ), - _NavBarItem( - isSelected: currentTabIndex == 3, - title: 'استودیو', - selectedIcon: DidvanIcons.play_circle_solid, - unselectedIcon: DidvanIcons.play_circle_light, - onTap: () => onTabChanged(3), - ), - _NavBarItem( - isSelected: currentTabIndex == 4, - title: 'تنظیمات', - selectedIcon: DidvanIcons.setting_solid, - unselectedIcon: DidvanIcons.setting_light, - onTap: () => onTabChanged(4), - ), - ], - ), - ); } } From 47899c7afd76d0a083adf981ac038a92028c6842 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Mon, 7 Mar 2022 13:01:01 +0330 Subject: [PATCH 260/273] message exception fixed --- lib/views/home/direct/direct_state.dart | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/lib/views/home/direct/direct_state.dart b/lib/views/home/direct/direct_state.dart index d3ec623..0e66965 100644 --- a/lib/views/home/direct/direct_state.dart +++ b/lib/views/home/direct/direct_state.dart @@ -1,3 +1,4 @@ +import 'dart:developer'; import 'dart:io'; import 'package:didvan/models/enums.dart'; @@ -31,7 +32,7 @@ class DirectState extends CoreProvier { final messageDatas = service.result['messages']; for (var i = 0; i < messageDatas.length; i++) { messages.add(MessageData.fromJson(messageDatas[i])); - _addToDailyGrouped(); + _addToDailyGrouped(messages.last); } appState = AppState.idle; return; @@ -75,13 +76,8 @@ class DirectState extends CoreProvier { } } - void _addToDailyGrouped() { - String createdAt; - if (messages.last.createdAt.contains('T')) { - createdAt = messages.last.createdAt.split('T').first; - } else { - createdAt = messages.last.createdAt.split(' ').first; - } + void _addToDailyGrouped(MessageData message) { + String createdAt = message.createdAt.replaceAll('T', ' ').split(' ').first; if (!dailyMessages.containsKey(createdAt)) { dailyMessages.addAll({ createdAt: [messages.last.id] @@ -108,7 +104,7 @@ class DirectState extends CoreProvier { audioDuration: audioDuration, ), ); - _addToDailyGrouped(); + _addToDailyGrouped(messages.first); final body = {}; if (text != null) { body.addAll({'text': text}); @@ -119,6 +115,7 @@ class DirectState extends CoreProvier { final uploadFile = recordedFile; text = null; recordedFile = null; + replyRadar = null; notifyListeners(); final service = RequestService(RequestHelper.sendDirectMessage(typeId), body: body); From 24120c7f3d73604d8c97b8b2f385beba507ef71b Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Mon, 7 Mar 2022 13:12:27 +0330 Subject: [PATCH 261/273] new test release (studio reverted to empty state) --- lib/views/home/direct/direct_state.dart | 1 - lib/views/home/studio/studio.dart | 130 +++--------------------- 2 files changed, 13 insertions(+), 118 deletions(-) diff --git a/lib/views/home/direct/direct_state.dart b/lib/views/home/direct/direct_state.dart index 0e66965..a4a14aa 100644 --- a/lib/views/home/direct/direct_state.dart +++ b/lib/views/home/direct/direct_state.dart @@ -1,4 +1,3 @@ -import 'dart:developer'; import 'dart:io'; import 'package:didvan/models/enums.dart'; diff --git a/lib/views/home/studio/studio.dart b/lib/views/home/studio/studio.dart index 08c8e37..5f5f4ca 100644 --- a/lib/views/home/studio/studio.dart +++ b/lib/views/home/studio/studio.dart @@ -1,130 +1,26 @@ -import 'package:didvan/constants/app_icons.dart'; -import 'package:didvan/models/view/action_sheet_data.dart'; -import 'package:didvan/utils/action_sheet.dart'; -import 'package:didvan/views/home/studio/studio_state.dart'; -import 'package:didvan/views/home/studio/widgets/slider.dart'; -import 'package:didvan/views/home/studio/widgets/tab_bar.dart'; +import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/constants/assets.dart'; import 'package:didvan/views/home/widgets/logo_app_bar.dart'; -import 'package:didvan/views/home/widgets/search_field.dart'; -import 'package:didvan/views/widgets/didvan/divider.dart'; -import 'package:didvan/views/widgets/didvan/icon_button.dart'; -import 'package:didvan/views/widgets/didvan/radial_button.dart'; -import 'package:didvan/views/widgets/item_title.dart'; +import 'package:didvan/views/widgets/state_handlers/empty_state.dart'; import 'package:flutter/material.dart'; -import 'package:provider/provider.dart'; -class Studio extends StatefulWidget { +class Studio extends StatelessWidget { const Studio({Key? key}) : super(key: key); - @override - State createState() => _StudioState(); -} - -class _StudioState extends State { - final FocusNode _focusNode = FocusNode(); - @override Widget build(BuildContext context) { - return CustomScrollView( - slivers: [ - SliverToBoxAdapter( - child: Row( - children: [ - const Expanded(child: LogoAppBar(type: 'studio')), - Padding( - padding: - EdgeInsets.only(top: MediaQuery.of(context).padding.top), - child: DidvanIconButton( - icon: DidvanIcons.bookmark_regular, - onPressed: () {}, - ), - ), - ], - ), - ), - const SliverToBoxAdapter( - child: StudioTabBar(), - ), - SliverToBoxAdapter( - child: Padding( - padding: const EdgeInsets.all(16.0), - child: SearchField( - title: 'جستجو در استودیو', - onChanged: (value) {}, - focusNode: _focusNode, - ), - ), - ), - const SliverToBoxAdapter( - child: StudioSlider(), - ), - const SliverPadding( - padding: EdgeInsets.symmetric(horizontal: 16), - sliver: SliverToBoxAdapter( - child: DidvanDivider( - verticalPadding: 0, - ), - ), - ), - SliverPadding( - padding: const EdgeInsets.symmetric(horizontal: 16), - sliver: SliverToBoxAdapter( - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - const ItemTitle(title: 'تازه‌ترین‌ها'), - DidvanIconButton( - gestureSize: 36, - icon: DidvanIcons.sort_regular, - onPressed: _showSortDialog, - ), - ], - ), + return Column( + children: [ + const LogoAppBar(), + Expanded( + child: EmptyState( + asset: Assets.emptyStudio, + title: 'استودیو آینده', + subtitle: 'به زودی...', + titleColor: Theme.of(context).colorScheme.title, ), ), ], ); } - - void _showSortDialog() { - final state = context.read(); - ActionSheetUtils.showBottomSheet( - data: ActionSheetData( - content: StatefulBuilder( - builder: (context, setState) => Column( - children: [ - DidvanRadialButton( - title: 'جدیدترین‌ها', - onSelected: () => setState( - () => state.selectedSortTypeIndex = 0, - ), - value: state.selectedSortTypeIndex == 0, - ), - const SizedBox(height: 24), - DidvanRadialButton( - title: 'پربازدیدترین‌ها', - onSelected: () => setState( - () => state.selectedSortTypeIndex = 1, - ), - value: state.selectedSortTypeIndex == 1, - ), - const SizedBox(height: 24), - DidvanRadialButton( - title: 'پربحث‌ترین‌ها', - onSelected: () => setState( - () => state.selectedSortTypeIndex = 2, - ), - value: state.selectedSortTypeIndex == 2, - ), - ], - ), - ), - title: 'مرتب‌‌سازی', - titleIcon: DidvanIcons.sort_regular, - hasDismissButton: false, - confrimTitle: 'مرتب سازی', - onConfirmed: () {}, - ), - ); - } } From d47a556762fc45de238d6a3e342ea49667278580 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Mon, 7 Mar 2022 13:57:42 +0330 Subject: [PATCH 262/273] voice message sending bug fixed --- lib/views/home/direct/widgets/message_box.dart | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/lib/views/home/direct/widgets/message_box.dart b/lib/views/home/direct/widgets/message_box.dart index 090f409..897cff5 100644 --- a/lib/views/home/direct/widgets/message_box.dart +++ b/lib/views/home/direct/widgets/message_box.dart @@ -102,7 +102,7 @@ class _TypingState extends State<_Typing> { @override Widget build(BuildContext context) { - final state = context.read(); + final state = context.watch(); return Row( children: [ Expanded( @@ -115,7 +115,6 @@ class _TypingState extends State<_Typing> { ), child: state.text != null && state.text!.isNotEmpty ? DidvanIconButton( - key: const ValueKey(1), icon: DidvanIcons.send_solid, onPressed: () { _formKey.currentState!.reset(); @@ -125,7 +124,6 @@ class _TypingState extends State<_Typing> { color: Theme.of(context).colorScheme.focusedBorder, ) : DidvanIconButton( - key: const ValueKey(2), icon: DidvanIcons.mic_solid, onPressed: state.startRecording, size: 32, From 654c8c5a5452b0942a6af4178017605b9b4fe91a Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Mon, 7 Mar 2022 16:01:36 +0330 Subject: [PATCH 263/273] version updated --- pubspec.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pubspec.yaml b/pubspec.yaml index f732c01..ee9c773 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -15,7 +15,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev # In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion. # Read more about iOS versioning at # https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html -version: 1.0.0+1 +version: 1.0.5+5 environment: sdk: ">=2.12.0 <3.0.0" From c1f7aeab8617a7d890cc9daec7469cdbb95c3cc6 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Mon, 7 Mar 2022 16:06:57 +0330 Subject: [PATCH 264/273] readded studio codes --- lib/views/home/studio/studio.dart | 130 +++++++++++++++++++++++++++--- 1 file changed, 117 insertions(+), 13 deletions(-) diff --git a/lib/views/home/studio/studio.dart b/lib/views/home/studio/studio.dart index 5f5f4ca..08c8e37 100644 --- a/lib/views/home/studio/studio.dart +++ b/lib/views/home/studio/studio.dart @@ -1,26 +1,130 @@ -import 'package:didvan/config/theme_data.dart'; -import 'package:didvan/constants/assets.dart'; +import 'package:didvan/constants/app_icons.dart'; +import 'package:didvan/models/view/action_sheet_data.dart'; +import 'package:didvan/utils/action_sheet.dart'; +import 'package:didvan/views/home/studio/studio_state.dart'; +import 'package:didvan/views/home/studio/widgets/slider.dart'; +import 'package:didvan/views/home/studio/widgets/tab_bar.dart'; import 'package:didvan/views/home/widgets/logo_app_bar.dart'; -import 'package:didvan/views/widgets/state_handlers/empty_state.dart'; +import 'package:didvan/views/home/widgets/search_field.dart'; +import 'package:didvan/views/widgets/didvan/divider.dart'; +import 'package:didvan/views/widgets/didvan/icon_button.dart'; +import 'package:didvan/views/widgets/didvan/radial_button.dart'; +import 'package:didvan/views/widgets/item_title.dart'; import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; -class Studio extends StatelessWidget { +class Studio extends StatefulWidget { const Studio({Key? key}) : super(key: key); + @override + State createState() => _StudioState(); +} + +class _StudioState extends State { + final FocusNode _focusNode = FocusNode(); + @override Widget build(BuildContext context) { - return Column( - children: [ - const LogoAppBar(), - Expanded( - child: EmptyState( - asset: Assets.emptyStudio, - title: 'استودیو آینده', - subtitle: 'به زودی...', - titleColor: Theme.of(context).colorScheme.title, + return CustomScrollView( + slivers: [ + SliverToBoxAdapter( + child: Row( + children: [ + const Expanded(child: LogoAppBar(type: 'studio')), + Padding( + padding: + EdgeInsets.only(top: MediaQuery.of(context).padding.top), + child: DidvanIconButton( + icon: DidvanIcons.bookmark_regular, + onPressed: () {}, + ), + ), + ], + ), + ), + const SliverToBoxAdapter( + child: StudioTabBar(), + ), + SliverToBoxAdapter( + child: Padding( + padding: const EdgeInsets.all(16.0), + child: SearchField( + title: 'جستجو در استودیو', + onChanged: (value) {}, + focusNode: _focusNode, + ), + ), + ), + const SliverToBoxAdapter( + child: StudioSlider(), + ), + const SliverPadding( + padding: EdgeInsets.symmetric(horizontal: 16), + sliver: SliverToBoxAdapter( + child: DidvanDivider( + verticalPadding: 0, + ), + ), + ), + SliverPadding( + padding: const EdgeInsets.symmetric(horizontal: 16), + sliver: SliverToBoxAdapter( + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + const ItemTitle(title: 'تازه‌ترین‌ها'), + DidvanIconButton( + gestureSize: 36, + icon: DidvanIcons.sort_regular, + onPressed: _showSortDialog, + ), + ], + ), ), ), ], ); } + + void _showSortDialog() { + final state = context.read(); + ActionSheetUtils.showBottomSheet( + data: ActionSheetData( + content: StatefulBuilder( + builder: (context, setState) => Column( + children: [ + DidvanRadialButton( + title: 'جدیدترین‌ها', + onSelected: () => setState( + () => state.selectedSortTypeIndex = 0, + ), + value: state.selectedSortTypeIndex == 0, + ), + const SizedBox(height: 24), + DidvanRadialButton( + title: 'پربازدیدترین‌ها', + onSelected: () => setState( + () => state.selectedSortTypeIndex = 1, + ), + value: state.selectedSortTypeIndex == 1, + ), + const SizedBox(height: 24), + DidvanRadialButton( + title: 'پربحث‌ترین‌ها', + onSelected: () => setState( + () => state.selectedSortTypeIndex = 2, + ), + value: state.selectedSortTypeIndex == 2, + ), + ], + ), + ), + title: 'مرتب‌‌سازی', + titleIcon: DidvanIcons.sort_regular, + hasDismissButton: false, + confrimTitle: 'مرتب سازی', + onConfirmed: () {}, + ), + ); + } } From 5363f327e001c1c9ac55fc1ae55dfba22766c5de Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Mon, 7 Mar 2022 16:58:16 +0330 Subject: [PATCH 265/273] news & radars pagination bug fixed --- lib/views/home/news/news.dart | 2 +- lib/views/home/radar/radar.dart | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/views/home/news/news.dart b/lib/views/home/news/news.dart index df3950e..2911204 100644 --- a/lib/views/home/news/news.dart +++ b/lib/views/home/news/news.dart @@ -56,7 +56,7 @@ class _NewsState extends State { state: state, builder: (context, state, index) { index += 2; - if (index % 15 == 0 && index / 15 >= state.page) { + if (index % 15 == 0 && state.lastPage != state.page) { state.getNews(page: index ~/ 15 + 1); } index -= 2; diff --git a/lib/views/home/radar/radar.dart b/lib/views/home/radar/radar.dart index 0a2adb1..1a241b0 100644 --- a/lib/views/home/radar/radar.dart +++ b/lib/views/home/radar/radar.dart @@ -129,7 +129,7 @@ class _RadarState extends State { placeholder: RadarOverview.placeholder, builder: (context, state, index) { index += 2; - if (index % 15 == 0 && index / 15 >= state.page) { + if (index % 15 == 0 && state.lastPage != state.page) { state.getRadars(page: index ~/ 15 + 1); } index -= 2; From 7abc378a14c587b595d5b5a0ace708c3e1a1b5df Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Tue, 8 Mar 2022 22:09:46 +0330 Subject: [PATCH 266/273] D1APP-110 font size and style customizations added --- .gitignore | 2 - .../fonts/IRANSansMobile-FaNum-Black.ttf | Bin 0 -> 98612 bytes .../fonts/IRANSansMobile-FaNum-Bold.ttf | Bin 0 -> 101016 bytes .../fonts/IRANSansMobile-FaNum-Light.ttf | Bin 0 -> 104184 bytes .../fonts/IRANSansMobile-FaNum-Medium.ttf | Bin 0 -> 93004 bytes .../fonts/IRANSansMobile-FaNum-UltraLight.ttf | Bin 0 -> 102864 bytes lib/assets/fonts/IRANSansMobile-FaNum.ttf | Bin 0 -> 101748 bytes lib/assets/fonts/IRANSansMobile.ttf | Bin 0 -> 101424 bytes lib/config/design_config.dart | 15 +- lib/config/theme_data.dart | 190 +++++++----------- lib/main.dart | 10 +- lib/models/settings_data.dart | 13 ++ lib/providers/theme_provider.dart | 16 ++ lib/services/app_initalizer.dart | 20 +- lib/services/network/request_helper.dart | 26 +++ lib/services/storage/storage.dart | 2 +- lib/utils/date_time.dart | 2 +- lib/views/home/comments/comments_state.dart | 2 +- .../settings/general_settings/settings.dart | 106 +++++++++- lib/views/splash/splash.dart | 7 +- lib/views/widgets/didvan/radial_button.dart | 9 +- lib/views/widgets/didvan/text.dart | 3 +- lib/views/widgets/didvan/text_field.dart | 2 +- pubspec.yaml | 13 +- 24 files changed, 299 insertions(+), 139 deletions(-) create mode 100644 lib/assets/fonts/IRANSansMobile-FaNum-Black.ttf create mode 100644 lib/assets/fonts/IRANSansMobile-FaNum-Bold.ttf create mode 100644 lib/assets/fonts/IRANSansMobile-FaNum-Light.ttf create mode 100644 lib/assets/fonts/IRANSansMobile-FaNum-Medium.ttf create mode 100644 lib/assets/fonts/IRANSansMobile-FaNum-UltraLight.ttf create mode 100644 lib/assets/fonts/IRANSansMobile-FaNum.ttf create mode 100644 lib/assets/fonts/IRANSansMobile.ttf create mode 100644 lib/models/settings_data.dart diff --git a/.gitignore b/.gitignore index b4dd55c..0fa6b67 100644 --- a/.gitignore +++ b/.gitignore @@ -44,5 +44,3 @@ app.*.map.json /android/app/debug /android/app/profile /android/app/release - -.fandogh/ diff --git a/lib/assets/fonts/IRANSansMobile-FaNum-Black.ttf b/lib/assets/fonts/IRANSansMobile-FaNum-Black.ttf new file mode 100644 index 0000000000000000000000000000000000000000..411ef9e5e1c732ab87fde01d71377e07e830a990 GIT binary patch literal 98612 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 bcfv@b`0JHEiaS#oM?R8FP6F?1#B2W#&#xib literal 0 HcmV?d00001 diff --git a/lib/assets/fonts/IRANSansMobile-FaNum-Bold.ttf b/lib/assets/fonts/IRANSansMobile-FaNum-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..09fab2bc796bc9c55af44cd3dcfb904b6525e190 GIT binary patch literal 101016 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 z

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 QOCrr;=9z5dxXq-?Zyh+xWdHyG literal 0 HcmV?d00001 diff --git a/lib/assets/fonts/IRANSansMobile-FaNum-Light.ttf b/lib/assets/fonts/IRANSansMobile-FaNum-Light.ttf new file mode 100644 index 0000000000000000000000000000000000000000..ecdac1dc7ef431d5a30de8632e802428ca3d97d0 GIT binary patch literal 104184 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 M$YclCy-&RR2f0Ri>i_@% literal 0 HcmV?d00001 diff --git a/lib/assets/fonts/IRANSansMobile-FaNum-Medium.ttf b/lib/assets/fonts/IRANSansMobile-FaNum-Medium.ttf new file mode 100644 index 0000000000000000000000000000000000000000..3dc55d07f79a33b314676b92ab16d4f57e5be845 GIT binary patch literal 93004 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 literal 0 HcmV?d00001 diff --git a/lib/assets/fonts/IRANSansMobile-FaNum.ttf b/lib/assets/fonts/IRANSansMobile-FaNum.ttf new file mode 100644 index 0000000000000000000000000000000000000000..c60002ac00cb904689001b40bfe7f4f382565353 GIT binary patch literal 101748 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 literal 0 HcmV?d00001 diff --git a/lib/assets/fonts/IRANSansMobile.ttf b/lib/assets/fonts/IRANSansMobile.ttf new file mode 100644 index 0000000000000000000000000000000000000000..3c9b75689e5cd424b47146454460169766e85957 GIT binary patch literal 101424 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¡wnz)ch( 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 z

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 TG;VigoQAY#Qck*0iFf}176D;J literal 0 HcmV?d00001 diff --git a/lib/config/design_config.dart b/lib/config/design_config.dart index 012a7f0..13cf836 100644 --- a/lib/config/design_config.dart +++ b/lib/config/design_config.dart @@ -1,10 +1,12 @@ import 'package:didvan/config/theme_data.dart'; import 'package:didvan/main.dart'; +import 'package:didvan/providers/theme_provider.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; +import 'package:provider/provider.dart'; class DesignConfig { - static BuildContext get context => navigatorKey.currentContext!; + static BuildContext? get context => navigatorKey.currentContext; static const BorderRadius lowBorderRadius = BorderRadius.all( Radius.circular(8), @@ -17,7 +19,7 @@ class DesignConfig { ); static Border get cardBorder => Border.all( - color: Theme.of(context).colorScheme.cardBorder, + color: Theme.of(context!).colorScheme.cardBorder, width: 0.5, ); @@ -29,7 +31,10 @@ class DesignConfig { ) ]; - static Brightness get brightness => Theme.of(context).brightness; + static String get fontFamily => context!.read().fontFamily; + static double get fontScale => context!.read().fontScale; + + static Brightness get brightness => Theme.of(context!).brightness; static bool get isDark => brightness == Brightness.dark; static const Duration lowAnimationDuration = Duration(milliseconds: 300); @@ -39,8 +44,8 @@ class DesignConfig { statusBarIconBrightness: brightness == Brightness.dark ? Brightness.light : Brightness.dark, statusBarColor: - Theme.of(context).colorScheme.background.withOpacity(0.5), - systemNavigationBarColor: Theme.of(context).colorScheme.surface, + Theme.of(context!).colorScheme.background.withOpacity(0.5), + systemNavigationBarColor: Theme.of(context!).colorScheme.surface, systemNavigationBarDividerColor: Colors.transparent, systemNavigationBarIconBrightness: brightness == Brightness.dark ? Brightness.light : Brightness.dark, diff --git a/lib/config/theme_data.dart b/lib/config/theme_data.dart index c2c4516..b1e6db7 100644 --- a/lib/config/theme_data.dart +++ b/lib/config/theme_data.dart @@ -1,3 +1,4 @@ +import 'package:didvan/config/design_config.dart'; import 'package:flutter/material.dart'; class LightThemeConfig { @@ -6,33 +7,22 @@ class LightThemeConfig { static const Color _black = Color(0xFF292929); static const Color _background = Color(0xFFF8F8FA); - static final ThemeData themeData = ThemeData( - backgroundColor: _background, - scaffoldBackgroundColor: _background, - colorScheme: _colorScheme, - fontFamily: 'Dana-FA', - textTheme: _textTheme, - cardColor: _colorScheme.surface, - checkboxTheme: CheckboxThemeData( - fillColor: MaterialStateProperty.all(_colorScheme.primary), - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(4), - ), - ), - iconTheme: IconThemeData( - color: _colorScheme.text, - ), - ); - - static final TextTheme _textTheme = const TextTheme( - bodyText1: _body1Text, - bodyText2: _body2Text, - caption: _captionText, - subtitle2: _subtitle2Text, - subtitle1: _subtitle1Text, - headline3: _headline3Text, - overline: _overlineText, - ).apply(bodyColor: _black, displayColor: _black); + static ThemeData get themeData => ThemeData( + backgroundColor: _background, + scaffoldBackgroundColor: _background, + colorScheme: _colorScheme, + textTheme: _TextThemeData.data, + cardColor: _colorScheme.surface, + checkboxTheme: CheckboxThemeData( + fillColor: MaterialStateProperty.all(_colorScheme.primary), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(4), + ), + ), + iconTheme: IconThemeData( + color: _colorScheme.text, + ), + ); static const ColorScheme _colorScheme = ColorScheme( primary: _primary, @@ -49,35 +39,6 @@ class LightThemeConfig { onError: _white, brightness: Brightness.light, ); - - static const TextStyle _headline3Text = TextStyle( - fontSize: 20, - fontWeight: FontWeight.w600, - ); - static const TextStyle _subtitle1Text = TextStyle( - fontSize: 17, - fontWeight: FontWeight.w700, - ); - static const TextStyle _subtitle2Text = TextStyle( - fontSize: 15, - fontWeight: FontWeight.w700, - ); - static const TextStyle _body1Text = TextStyle( - fontSize: 15, - fontWeight: FontWeight.w700, - ); - static const TextStyle _body2Text = TextStyle( - fontSize: 15, - fontWeight: FontWeight.w400, - ); - static const TextStyle _captionText = TextStyle( - fontSize: 13, - fontWeight: FontWeight.w400, - ); - static const TextStyle _overlineText = TextStyle( - fontSize: 12, - fontWeight: FontWeight.w300, - ); } class DarkThemeConfig { @@ -85,34 +46,23 @@ class DarkThemeConfig { static const Color _white = Color(0xFFFFFFFF); static const Color _background = Color(0xFF202224); - static final ThemeData themeData = ThemeData( - backgroundColor: _background, - scaffoldBackgroundColor: _background, - colorScheme: _colorScheme, - fontFamily: 'Dana-FA', - textTheme: _textTheme, - iconTheme: IconThemeData( - color: _colorScheme.text, - ), - checkboxTheme: CheckboxThemeData( - materialTapTargetSize: MaterialTapTargetSize.shrinkWrap, - fillColor: MaterialStateProperty.all(_colorScheme.primary), - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(4), - ), - ), - cardColor: _colorScheme.surface, - ); - - static final TextTheme _textTheme = const TextTheme( - bodyText1: _body1Text, - bodyText2: _body2Text, - caption: _captionText, - subtitle2: _subtitle2Text, - subtitle1: _subtitle1Text, - headline3: _headline3Text, - overline: _overlineText, - ).apply(bodyColor: text, displayColor: text); + static ThemeData get themeData => ThemeData( + backgroundColor: _background, + scaffoldBackgroundColor: _background, + colorScheme: _colorScheme, + textTheme: _TextThemeData.data, + iconTheme: IconThemeData( + color: _colorScheme.text, + ), + checkboxTheme: CheckboxThemeData( + materialTapTargetSize: MaterialTapTargetSize.shrinkWrap, + fillColor: MaterialStateProperty.all(_colorScheme.primary), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(4), + ), + ), + cardColor: _colorScheme.surface, + ); static const ColorScheme _colorScheme = ColorScheme( primary: _primary, @@ -130,35 +80,6 @@ class DarkThemeConfig { brightness: Brightness.dark, ); - static const TextStyle _headline3Text = TextStyle( - fontSize: 20, - fontWeight: FontWeight.w600, - ); - static const TextStyle _subtitle1Text = TextStyle( - fontSize: 17, - fontWeight: FontWeight.w700, - ); - static const TextStyle _subtitle2Text = TextStyle( - fontSize: 15, - fontWeight: FontWeight.w700, - ); - static const TextStyle _body1Text = TextStyle( - fontSize: 15, - fontWeight: FontWeight.w700, - ); - static const TextStyle _body2Text = TextStyle( - fontSize: 15, - fontWeight: FontWeight.w400, - ); - static const TextStyle _captionText = TextStyle( - fontSize: 13, - fontWeight: FontWeight.w400, - ); - static const TextStyle _overlineText = TextStyle( - fontSize: 12, - fontWeight: FontWeight.w300, - ); - // Grey colors static const Color white = Color(0xFFFFFFFF); static const Color title = Color(0xFFF5F5F5); @@ -173,6 +94,49 @@ class DarkThemeConfig { static const Color success = Color(0xFF32A64C); } +class _TextThemeData { + static TextTheme get data => DesignConfig.context == null + ? const TextTheme() + : TextTheme( + bodyText1: _body1Text, + bodyText2: _body2Text, + caption: _captionText, + subtitle2: _subtitle2Text, + subtitle1: _subtitle1Text, + headline3: _headline3Text, + overline: _overlineText, + ); + + static TextStyle get _headline3Text => TextStyle( + fontSize: 20 * DesignConfig.fontScale, + fontWeight: FontWeight.w600, + ); + static TextStyle get _subtitle1Text => TextStyle( + fontSize: 17 * DesignConfig.fontScale, + fontWeight: FontWeight.w700, + ); + static TextStyle get _subtitle2Text => TextStyle( + fontSize: 15 * DesignConfig.fontScale, + fontWeight: FontWeight.w700, + ); + static TextStyle get _body1Text => TextStyle( + fontSize: 15 * DesignConfig.fontScale, + fontWeight: FontWeight.w700, + ); + static TextStyle get _body2Text => TextStyle( + fontSize: 15 * DesignConfig.fontScale, + fontWeight: FontWeight.w400, + ); + static TextStyle get _captionText => TextStyle( + fontSize: 13 * DesignConfig.fontScale, + fontWeight: FontWeight.w400, + ); + static TextStyle get _overlineText => TextStyle( + fontSize: 12 * DesignConfig.fontScale, + fontWeight: FontWeight.w300, + ); +} + extension DidvanColorScheme on ColorScheme { // Secondary colors Color get secondaryDisabled => brightness == Brightness.dark diff --git a/lib/main.dart b/lib/main.dart index 01dbfff..3ed3728 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -33,8 +33,14 @@ class Didvan extends StatelessWidget { navigatorKey: navigatorKey, debugShowCheckedModeBanner: false, title: 'Didvan', - theme: LightThemeConfig.themeData, - darkTheme: DarkThemeConfig.themeData, + theme: LightThemeConfig.themeData.copyWith( + textTheme: LightThemeConfig.themeData.textTheme.apply( + fontFamily: themeProvider.fontFamily, + )), + darkTheme: DarkThemeConfig.themeData.copyWith( + textTheme: DarkThemeConfig.themeData.textTheme.apply( + fontFamily: themeProvider.fontFamily, + )), color: LightThemeConfig.themeData.primaryColor, themeMode: themeProvider.themeMode, onGenerateRoute: (settings) => RouteGenerator.generateRoute(settings), diff --git a/lib/models/settings_data.dart b/lib/models/settings_data.dart new file mode 100644 index 0000000..67e2f26 --- /dev/null +++ b/lib/models/settings_data.dart @@ -0,0 +1,13 @@ +import 'package:flutter/material.dart'; + +class SettingsData { + final String fontFamily; + final double fontScale; + final ThemeMode themeMode; + + SettingsData({ + required this.fontFamily, + required this.fontScale, + required this.themeMode, + }); +} diff --git a/lib/providers/theme_provider.dart b/lib/providers/theme_provider.dart index ab095b2..b994b5c 100644 --- a/lib/providers/theme_provider.dart +++ b/lib/providers/theme_provider.dart @@ -3,6 +3,8 @@ import 'package:flutter/material.dart'; class ThemeProvider extends CoreProvier { ThemeMode _themeMode = ThemeMode.system; + String _fontFamily = 'Dana-FA'; + double _fontScale = 1; set themeMode(ThemeMode value) { _themeMode = value; @@ -10,4 +12,18 @@ class ThemeProvider extends CoreProvier { } ThemeMode get themeMode => _themeMode; + + set fontFamily(String value) { + _fontFamily = value; + notifyListeners(); + } + + String get fontFamily => _fontFamily; + + set fontScale(double value) { + _fontScale = value; + notifyListeners(); + } + + double get fontScale => _fontScale; } diff --git a/lib/services/app_initalizer.dart b/lib/services/app_initalizer.dart index 7c21a4c..56d5f3f 100644 --- a/lib/services/app_initalizer.dart +++ b/lib/services/app_initalizer.dart @@ -1,3 +1,4 @@ +import 'package:didvan/models/settings_data.dart'; import 'package:didvan/services/media/media.dart'; import 'package:didvan/services/storage/storage.dart'; import 'package:firebase_core/firebase_core.dart'; @@ -17,10 +18,19 @@ class AppInitializer { } } - static Future initilizeSettings() async { + static Future initilizeSettings() async { final brightness = await StorageService.getValue(key: 'brightness'); if (brightness != null) { - return brightness == 'dark' ? ThemeMode.dark : ThemeMode.light; + final themeMode = brightness == 'dark' ? ThemeMode.dark : ThemeMode.light; + final fontFamily = await StorageService.getValue(key: 'fontFamily'); + final fontScale = double.parse( + await StorageService.getValue(key: 'fontSizeScale'), + ); + return SettingsData( + fontFamily: fontFamily, + fontScale: fontScale, + themeMode: themeMode, + ); } else { await StorageService.setValue( key: 'notificationTimeRangeStart', @@ -42,7 +52,11 @@ class AppInitializer { key: 'brightness', value: 'light', ); - return ThemeMode.light; + return SettingsData( + fontFamily: 'Dana-FA', + fontScale: 1, + themeMode: ThemeMode.light, + ); } } diff --git a/lib/services/network/request_helper.dart b/lib/services/network/request_helper.dart index 58005be..e0fe29f 100644 --- a/lib/services/network/request_helper.dart +++ b/lib/services/network/request_helper.dart @@ -1,11 +1,13 @@ import 'package:didvan/models/requests/news.dart'; import 'package:didvan/models/requests/radar.dart'; +import 'package:didvan/models/requests/studio.dart'; class RequestHelper { static const String baseUrl = 'https://api.didvan.app'; static const String _baseUserUrl = baseUrl + '/user'; static const String _baseRadarUrl = baseUrl + '/radar'; static const String _baseNewsUrl = baseUrl + '/news'; + static const String _baseStudioUrl = baseUrl + '/studio'; static const String _baseDirectUrl = _baseUserUrl + '/direct'; static const String confirmUsername = _baseUserUrl + '/confirmUsername'; @@ -86,6 +88,30 @@ class RequestHelper { MapEntry('search', args.search), ]); + static String markStudioItem(int id) => _baseStudioUrl + '/$id/mark'; + static String studioItemComments(int id) => _baseStudioUrl + '/$id/comments'; + static String addStudioItemComment(int id) => + _baseStudioUrl + '/$id/comments/add'; + static String feedbackStudioItemComment(int radarId, int id) => + _baseStudioUrl + '/$radarId/comments/$id/feedback'; + static String studioItemDetails(int id, StudioRequestArgs args) => + _baseStudioUrl + + '/$id' + + _urlConcatGenerator([ + MapEntry('page', args.page.toString()), + MapEntry('search', args.search), + MapEntry('order', args.order), + MapEntry('type', args.type), + ]); + static String studioItemOverviews({required StudioRequestArgs args}) => + _baseStudioUrl + + _urlConcatGenerator([ + MapEntry('page', args.page.toString()), + MapEntry('search', args.search), + MapEntry('order', args.order), + MapEntry('type', args.type), + ]); + static String _urlConcatGenerator(List> additions) { String result = ''; additions.removeWhere((element) => element.value == null); diff --git a/lib/services/storage/storage.dart b/lib/services/storage/storage.dart index a7d7684..012936c 100644 --- a/lib/services/storage/storage.dart +++ b/lib/services/storage/storage.dart @@ -10,7 +10,7 @@ class StorageService { required String key, required dynamic value, }) async { - await _storage.write(key: key, value: value); + await _storage.write(key: key, value: value.toString()); } static Future getValue({required String key}) async { diff --git a/lib/utils/date_time.dart b/lib/utils/date_time.dart index 202a9ec..41be0c6 100644 --- a/lib/utils/date_time.dart +++ b/lib/utils/date_time.dart @@ -43,7 +43,7 @@ class DateTimeUtils { ); final Jalali? result = await showPersianDatePicker( - context: DesignConfig.context, + context: DesignConfig.context!, initialDate: initialJalali, firstDate: firstDate, lastDate: lastDate, diff --git a/lib/views/home/comments/comments_state.dart b/lib/views/home/comments/comments_state.dart index f690887..ead8409 100644 --- a/lib/views/home/comments/comments_state.dart +++ b/lib/views/home/comments/comments_state.dart @@ -65,7 +65,7 @@ class CommentsState extends CoreProvier { } Future addComment() async { - final user = DesignConfig.context.read().user; + final user = DesignConfig.context!.read().user; if (replyingTo != null) { comments.firstWhere((comment) => comment.id == commentId).replies.add( Reply( diff --git a/lib/views/home/settings/general_settings/settings.dart b/lib/views/home/settings/general_settings/settings.dart index c3cc3eb..8347a60 100644 --- a/lib/views/home/settings/general_settings/settings.dart +++ b/lib/views/home/settings/general_settings/settings.dart @@ -12,6 +12,7 @@ import 'package:didvan/views/home/settings/general_settings/settings_state.dart' import 'package:didvan/views/home/widgets/menu_item.dart'; import 'package:didvan/views/widgets/didvan/card.dart'; import 'package:didvan/views/widgets/didvan/divider.dart'; +import 'package:didvan/views/widgets/didvan/radial_button.dart'; import 'package:didvan/views/widgets/didvan/scaffold.dart'; import 'package:didvan/views/widgets/didvan/text.dart'; import 'package:didvan/views/widgets/item_title.dart'; @@ -20,9 +21,21 @@ import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; import 'package:provider/provider.dart'; -class GeneralSettings extends StatelessWidget { +class GeneralSettings extends StatefulWidget { const GeneralSettings({Key? key}) : super(key: key); + @override + State createState() => _GeneralSettingsState(); +} + +class _GeneralSettingsState extends State { + String get _fontScaleSuffix { + final fontScale = DesignConfig.fontScale; + if (fontScale == 1) return 'متوسط'; + if (fontScale == 1.15) return 'بزرگ'; + return 'کوچک'; + } + @override Widget build(BuildContext context) { return Consumer( @@ -48,15 +61,17 @@ class GeneralSettings extends StatelessWidget { child: Column( children: [ MenuItem( - suffix: 'نیاز به پیاده‌سازی', + suffix: DesignConfig.fontFamily == 'Dana-FA' + ? 'دانا' + : 'ایران سنس', title: 'فونت برنامه', - onTap: () {}, + onTap: _showFontFamilyBottomSheet, ), const DidvanDivider(), MenuItem( - suffix: 'نیاز به پیاده‌سازی', + suffix: _fontScaleSuffix, title: 'اندازه متن', - onTap: () {}, + onTap: _showFontScaleBottomSheet, ), ], ), @@ -80,6 +95,87 @@ class GeneralSettings extends StatelessWidget { ); } + void _showFontFamilyBottomSheet() { + final themeProvider = context.read(); + final state = context.read(); + ActionSheetUtils.showBottomSheet( + data: ActionSheetData( + content: StatefulBuilder( + builder: (context, setState) => Column( + children: [ + DidvanRadialButton( + title: 'دانا', + fontFamily: 'Dana-FA', + onSelected: () { + state.fontFamily = 'Dana-FA'; + setState(() {}); + }, + value: state.fontFamily == 'Dana-FA', + ), + const SizedBox(height: 24), + DidvanRadialButton( + title: 'ایران سنس', + fontFamily: 'Iransans-FA', + onSelected: () { + state.fontFamily = 'Iransans-FA'; + setState(() {}); + }, + value: state.fontFamily == 'Iransans-FA', + ), + ], + ), + ), + title: 'انتخاب فونت برنامه', + titleIcon: DidvanIcons.font_regular, + onConfirmed: () => themeProvider.fontFamily = state.fontFamily, + ), + ); + } + + void _showFontScaleBottomSheet() { + final themeProvider = context.read(); + final state = context.read(); + ActionSheetUtils.showBottomSheet( + data: ActionSheetData( + content: StatefulBuilder( + builder: (context, setState) => Column( + children: [ + DidvanRadialButton( + title: 'بزرگ', + onSelected: () { + state.fontSizeScale = 1.15; + setState(() {}); + }, + value: state.fontSizeScale == 1.15, + ), + const SizedBox(height: 24), + DidvanRadialButton( + title: 'متوسط', + onSelected: () { + state.fontSizeScale = 1; + setState(() {}); + }, + value: state.fontSizeScale == 1, + ), + const SizedBox(height: 24), + DidvanRadialButton( + title: 'کوچک', + onSelected: () { + state.fontSizeScale = 0.85; + setState(() {}); + }, + value: state.fontSizeScale == 0.85, + ), + ], + ), + ), + title: 'انتخاب اندازه متن', + titleIcon: DidvanIcons.font_regular, + onConfirmed: () => themeProvider.fontScale = state.fontSizeScale, + ), + ); + } + Future _pickTimeRange(BuildContext context) async { ActionSheetUtils.showBottomSheet( data: ActionSheetData( diff --git a/lib/views/splash/splash.dart b/lib/views/splash/splash.dart index a66e8d1..c0d05cd 100644 --- a/lib/views/splash/splash.dart +++ b/lib/views/splash/splash.dart @@ -94,8 +94,11 @@ class _SplashState extends State { }); } await AppInitializer.setupServices(); - final ThemeMode themeMode = await AppInitializer.initilizeSettings(); - context.read().themeMode = themeMode; + final settingsData = await AppInitializer.initilizeSettings(); + final themeProvider = context.read(); + themeProvider.themeMode = settingsData.themeMode; + themeProvider.fontFamily = settingsData.fontFamily; + themeProvider.fontScale = settingsData.fontScale; await Future.delayed( const Duration(milliseconds: 200), () => setState(() { diff --git a/lib/views/widgets/didvan/radial_button.dart b/lib/views/widgets/didvan/radial_button.dart index 778b39d..4d05007 100644 --- a/lib/views/widgets/didvan/radial_button.dart +++ b/lib/views/widgets/didvan/radial_button.dart @@ -6,11 +6,13 @@ class DidvanRadialButton extends StatelessWidget { final String title; final VoidCallback onSelected; final bool value; + final String? fontFamily; const DidvanRadialButton({ Key? key, required this.title, required this.onSelected, required this.value, + this.fontFamily, }) : super(key: key); @override @@ -45,7 +47,12 @@ class DidvanRadialButton extends StatelessWidget { ), ), const SizedBox(width: 8), - DidvanText(title), + DidvanText( + title, + style: Theme.of(context).textTheme.bodyText2!.copyWith( + fontFamily: fontFamily, + ), + ), ], ), ), diff --git a/lib/views/widgets/didvan/text.dart b/lib/views/widgets/didvan/text.dart index 13dc23d..93158a4 100644 --- a/lib/views/widgets/didvan/text.dart +++ b/lib/views/widgets/didvan/text.dart @@ -1,3 +1,4 @@ +import 'package:didvan/config/design_config.dart'; import 'package:flutter/material.dart'; class DidvanText extends StatelessWidget { @@ -32,7 +33,7 @@ class DidvanText extends StatelessWidget { color: color, fontWeight: fontWeight, fontSize: fontSize, - )).copyWith(fontFamily: isEnglishFont ? 'Dana' : null), + )).copyWith(fontFamily: isEnglishFont ? DesignConfig.fontFamily : null), overflow: overflow, textAlign: textAlign, maxLines: maxLines, diff --git a/lib/views/widgets/didvan/text_field.dart b/lib/views/widgets/didvan/text_field.dart index bf01ab4..065b6d7 100644 --- a/lib/views/widgets/didvan/text_field.dart +++ b/lib/views/widgets/didvan/text_field.dart @@ -99,7 +99,7 @@ class _DidvanTextFieldState extends State { style: Theme.of(context) .textTheme .bodyText2! - .copyWith(fontFamily: 'Dana'), + .copyWith(fontFamily: DesignConfig.fontFamily.padRight(3)), decoration: InputDecoration( suffixIcon: _suffixBuilder(), enabled: widget.enabled, diff --git a/pubspec.yaml b/pubspec.yaml index ee9c773..8b76c42 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -151,10 +151,21 @@ flutter: - asset: lib/assets/fonts/Dana-FaNum-Regular.ttf - asset: lib/assets/fonts/Dana-FaNum-Thin.ttf - asset: lib/assets/fonts/Dana-FaNum-UltraBold.ttf + - family: Iransans-FA + fonts: + - asset: lib/assets/fonts/IRANSansMobile-FaNum-Black.ttf + - asset: lib/assets/fonts/IRANSansMobile-FaNum-Bold.ttf + - asset: lib/assets/fonts/IRANSansMobile-FaNum-Light.ttf + - asset: lib/assets/fonts/IRANSansMobile-FaNum-Medium.ttf + - asset: lib/assets/fonts/IRANSansMobile-FaNum-UltraLight.ttf + - asset: lib/assets/fonts/IRANSansMobile-FaNum.ttf - family: Dana fonts: - - asset: lib/assets/fonts/Dana.ttf + - asset: lib/assets/fonts/Dana.ttf + - family: Iransans + fonts: + - asset: lib/assets/fonts/IRANSansMobile.ttf - family: Dicon fonts: - asset: lib/assets/icons/Dicon.ttf From 63ec3d168ed817a8e805585beefe7aa8ad34967c Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 9 Mar 2022 12:12:47 +0330 Subject: [PATCH 267/273] bug fixes --- lib/views/home/radar/widgets/category_item.dart | 4 ++-- .../bookmarks/filtered_bookmark/filtered_bookmarks_state.dart | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/views/home/radar/widgets/category_item.dart b/lib/views/home/radar/widgets/category_item.dart index faee630..081b152 100644 --- a/lib/views/home/radar/widgets/category_item.dart +++ b/lib/views/home/radar/widgets/category_item.dart @@ -66,10 +66,10 @@ class CategoryItem extends StatelessWidget { isVisible: !isColapsed, child: Container( width: !_useWebMobileLayout(context) - ? _width(context) / 2 + ? _width(context) / 1.5 : ds.width / 5, height: !_useWebMobileLayout(context) - ? _width(context) / 2 + ? _width(context) / 1.5 : ds.width / 5, decoration: BoxDecoration( color: Theme.of(context).colorScheme.surface, diff --git a/lib/views/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart b/lib/views/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart index fffd1dc..697ee3a 100644 --- a/lib/views/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart +++ b/lib/views/home/settings/bookmarks/filtered_bookmark/filtered_bookmarks_state.dart @@ -20,7 +20,9 @@ class FilteredBookmarksState extends CoreProvier { lastSearch = search; } appState = AppState.busy; - final service = RequestService(RequestHelper.bookmarks(type: type)); + final service = RequestService( + RequestHelper.bookmarks(type: type == 'news' ? type : type + 's'), + ); await service.httpGet(); if (service.isSuccess) { From d7eff24d2993ceea46fe0f963f7aba99cbf5f641 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 9 Mar 2022 16:42:01 +0330 Subject: [PATCH 268/273] D1APP-112 Otp --- lib/services/network/request_helper.dart | 1 + .../authentication/authentication_state.dart | 27 ++- .../authentication/screens/verification.dart | 176 ++++++++++++------ 3 files changed, 146 insertions(+), 58 deletions(-) diff --git a/lib/services/network/request_helper.dart b/lib/services/network/request_helper.dart index e0fe29f..53a76ec 100644 --- a/lib/services/network/request_helper.dart +++ b/lib/services/network/request_helper.dart @@ -17,6 +17,7 @@ class RequestHelper { static const String updateProfilePhoto = _baseUserUrl + '/profile/photo'; static const String checkUsername = _baseUserUrl + '/CheckUsername'; static const String updateProfile = _baseUserUrl + '/profile/edit'; + static const String otp = _baseUserUrl + '/otp'; static String bookmarks({String? type}) => _baseUserUrl + '/marked/${type ?? ''}'; diff --git a/lib/views/authentication/authentication_state.dart b/lib/views/authentication/authentication_state.dart index 7efa3ba..3ad97b6 100644 --- a/lib/views/authentication/authentication_state.dart +++ b/lib/views/authentication/authentication_state.dart @@ -10,7 +10,6 @@ class AuthenticationState extends CoreProvier { int _currentPageIndex = 0; String username = ''; String password = ''; - String verificationCode = ''; set currentPageIndex(int value) { _currentPageIndex = value; @@ -57,4 +56,30 @@ class AuthenticationState extends CoreProvier { } return null; } + + Future sendOtpToken() async { + final service = RequestService(RequestHelper.otp + '?username=$username'); + await service.httpGet(); + } + + Future verifyOtpToken(String token) async { + appState = AppState.isolatedBusy; + + final service = RequestService(RequestHelper.otp, body: { + 'code': token, + 'username': username, + }); + await service.post(); + appState = AppState.idle; + if (service.isSuccess) { + currentPageIndex++; + return true; + } + ActionSheetUtils.showAlert(AlertData( + message: service.isSuccess + ? service.result['message'] + : 'کد وارد شده صحیح نمی‌باشد', + )); + return false; + } } diff --git a/lib/views/authentication/screens/verification.dart b/lib/views/authentication/screens/verification.dart index 80bfeef..1a359fe 100644 --- a/lib/views/authentication/screens/verification.dart +++ b/lib/views/authentication/screens/verification.dart @@ -1,5 +1,8 @@ +import 'dart:async'; + import 'package:didvan/config/design_config.dart'; import 'package:didvan/config/theme_data.dart'; +import 'package:didvan/providers/user_provider.dart'; import 'package:didvan/views/authentication/authentication_state.dart'; import 'package:didvan/views/authentication/widgets/authentication_layout.dart'; import 'package:didvan/views/widgets/didvan/button.dart'; @@ -8,69 +11,128 @@ import 'package:flutter/material.dart'; import 'package:pin_code_fields/pin_code_fields.dart'; import 'package:provider/provider.dart'; -class Verification extends StatelessWidget { +class Verification extends StatefulWidget { const Verification({Key? key}) : super(key: key); + @override + State createState() => _VerificationState(); +} + +class _VerificationState extends State { + Timer? _timer; + int _secondsRemaining = 119; + + bool _isResendButtonEnabled = false; + + @override + void initState() { + final state = context.read(); + if (state.username == '') { + final user = context.read().user; + state.username = user.phoneNumber; + } + Future.delayed( + Duration.zero, + state.sendOtpToken, + ); + _handleTimer(); + super.initState(); + } + @override Widget build(BuildContext context) { final AuthenticationState state = context.read(); - return AuthenticationLayout( - appBarTitle: 'تغییر رمز عبور', - children: [ - DidvanText( - 'کد 6 رقمی ارسال شده به موبایل', - style: Theme.of(context).textTheme.subtitle2, - fontWeight: FontWeight.normal, - ), - const SizedBox( - height: 8, - ), - DidvanText( - state.username, - style: Theme.of(context).textTheme.subtitle1, - ), - const SizedBox( - height: 8, - ), - DidvanText( - 'را وارد کنید:', - style: Theme.of(context).textTheme.subtitle2, - fontWeight: FontWeight.normal, - ), - const SizedBox( - height: 24, - ), - Directionality( - textDirection: TextDirection.ltr, - child: PinCodeTextField( - keyboardType: TextInputType.number, - animationType: AnimationType.scale, - pinTheme: PinTheme( - fieldHeight: 48, - fieldWidth: 48, - inactiveColor: Theme.of(context).colorScheme.border, - activeFillColor: Theme.of(context).colorScheme.primary, - activeColor: Theme.of(context).colorScheme.primary, - borderRadius: DesignConfig.lowBorderRadius, - borderWidth: 1, - shape: PinCodeFieldShape.box, - ), - appContext: context, - length: 6, - onChanged: (value) => state.verificationCode = value, + return WillPopScope( + onWillPop: () async { + _timer?.cancel(); + return true; + }, + child: AuthenticationLayout( + appBarTitle: 'تغییر رمز عبور', + children: [ + DidvanText( + 'کد 6 رقمی ارسال شده به موبایل', + style: Theme.of(context).textTheme.subtitle2, + fontWeight: FontWeight.normal, ), - ), - const Spacer(), - DidvanButton( - onPressed: () { - state.currentPageIndex++; - }, - title: 'ارسال مجدد کد', - ), - const SizedBox( - height: 48, - ), - ], + const SizedBox( + height: 8, + ), + DidvanText( + state.username, + style: Theme.of(context).textTheme.subtitle1, + ), + const SizedBox( + height: 8, + ), + DidvanText( + 'را وارد کنید:', + style: Theme.of(context).textTheme.subtitle2, + fontWeight: FontWeight.normal, + ), + const SizedBox( + height: 24, + ), + Directionality( + textDirection: TextDirection.ltr, + child: PinCodeTextField( + keyboardType: TextInputType.number, + animationType: AnimationType.scale, + cursorColor: Theme.of(context).colorScheme.text, + pinTheme: PinTheme( + fieldHeight: 48, + fieldWidth: 48, + selectedColor: Theme.of(context).colorScheme.primary, + inactiveColor: Theme.of(context).colorScheme.border, + activeFillColor: Theme.of(context).colorScheme.primary, + activeColor: Theme.of(context).colorScheme.primary, + borderRadius: DesignConfig.lowBorderRadius, + borderWidth: 1, + shape: PinCodeFieldShape.box, + ), + appContext: context, + length: 6, + onCompleted: (value) async { + final result = await state.verifyOtpToken(value); + if (result) { + _timer?.cancel(); + } + }, + onChanged: (value) {}, + ), + ), + const Spacer(), + DidvanButton( + enabled: _isResendButtonEnabled, + onPressed: () { + _handleTimer(); + state.sendOtpToken(); + }, + title: !_isResendButtonEnabled + ? '$_secondsRemaining ثانیه دیگر' + : 'ارسال مجدد کد', + ), + const SizedBox( + height: 48, + ), + ], + ), ); } + + Future _handleTimer() async { + _timer?.cancel(); + _isResendButtonEnabled = false; + _timer = Timer.periodic(const Duration(seconds: 1), (timer) { + setState(() { + _secondsRemaining -= 1; + if (_secondsRemaining == 0) { + _isResendButtonEnabled = true; + _secondsRemaining = 129; + _timer?.cancel(); + } + }); + }); + setState(() {}); + } } From 71a5bda8c9044dbcdfde41a25d22f3536df0282d Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 9 Mar 2022 18:05:08 +0330 Subject: [PATCH 269/273] D1APP-111 reset password --- lib/providers/user_provider.dart | 2 + lib/services/network/request_helper.dart | 1 + .../authentication/authentication_state.dart | 57 +++++++++--- .../screens/reset_password.dart | 90 +++++++++++++------ .../authentication/screens/verification.dart | 20 +++-- 5 files changed, 124 insertions(+), 46 deletions(-) diff --git a/lib/providers/user_provider.dart b/lib/providers/user_provider.dart index 219acd1..65aeacf 100644 --- a/lib/providers/user_provider.dart +++ b/lib/providers/user_provider.dart @@ -10,6 +10,7 @@ import 'package:didvan/utils/action_sheet.dart'; class UserProvider extends CoreProvier { late User user; + bool isAuthenticated = false; static final List _radarMarkQueue = []; static final List _newsMarkQueue = []; @@ -24,6 +25,7 @@ class UserProvider extends CoreProvier { } Future getUserInfo() async { + isAuthenticated = true; final RequestService service = RequestService(RequestHelper.userInfo); await service.httpGet(); if (service.isSuccess) { diff --git a/lib/services/network/request_helper.dart b/lib/services/network/request_helper.dart index 53a76ec..5e28117 100644 --- a/lib/services/network/request_helper.dart +++ b/lib/services/network/request_helper.dart @@ -11,6 +11,7 @@ class RequestHelper { static const String _baseDirectUrl = _baseUserUrl + '/direct'; static const String confirmUsername = _baseUserUrl + '/confirmUsername'; + static const String changePassword = _baseUserUrl + '/changePassword'; static const String login = _baseUserUrl + '/login'; static const String directs = _baseUserUrl + '/direct'; static const String userInfo = _baseUserUrl + '/info'; diff --git a/lib/views/authentication/authentication_state.dart b/lib/views/authentication/authentication_state.dart index 3ad97b6..ffda950 100644 --- a/lib/views/authentication/authentication_state.dart +++ b/lib/views/authentication/authentication_state.dart @@ -10,6 +10,7 @@ class AuthenticationState extends CoreProvier { int _currentPageIndex = 0; String username = ''; String password = ''; + String _verificationCode = ''; set currentPageIndex(int value) { _currentPageIndex = value; @@ -58,28 +59,62 @@ class AuthenticationState extends CoreProvier { } Future sendOtpToken() async { - final service = RequestService(RequestHelper.otp + '?username=$username'); + final service = RequestService( + RequestHelper.otp + '?username=$username', + useAutherization: false, + ); await service.httpGet(); } Future verifyOtpToken(String token) async { appState = AppState.isolatedBusy; - - final service = RequestService(RequestHelper.otp, body: { - 'code': token, - 'username': username, - }); + final service = RequestService( + RequestHelper.otp, + body: { + 'code': token, + 'username': username, + }, + useAutherization: false, + ); await service.post(); appState = AppState.idle; if (service.isSuccess) { + _verificationCode = token; currentPageIndex++; return true; } - ActionSheetUtils.showAlert(AlertData( - message: service.isSuccess - ? service.result['message'] - : 'کد وارد شده صحیح نمی‌باشد', - )); + ActionSheetUtils.showAlert( + AlertData( + message: service.isSuccess + ? service.result['message'] + : 'کد وارد شده صحیح نمی‌باشد', + ), + ); + return false; + } + + Future resetPassword(String password) async { + appState = AppState.isolatedBusy; + final service = RequestService( + RequestHelper.changePassword, + body: { + 'code': _verificationCode, + 'username': username, + 'password': password, + }, + useAutherization: false, + ); + await service.put(); + if (service.isSuccess) { + ActionSheetUtils.showAlert( + AlertData( + message: 'کلمه عبور با موفقیت تغییر کرد', + aLertType: ALertType.success, + ), + ); + return true; + } + ActionSheetUtils.showAlert(AlertData(message: service.errorMessage)); return false; } } diff --git a/lib/views/authentication/screens/reset_password.dart b/lib/views/authentication/screens/reset_password.dart index 212dd2d..9985a95 100644 --- a/lib/views/authentication/screens/reset_password.dart +++ b/lib/views/authentication/screens/reset_password.dart @@ -1,39 +1,75 @@ +import 'package:didvan/providers/user_provider.dart'; +import 'package:didvan/routes/routes.dart'; +import 'package:didvan/views/authentication/authentication_state.dart'; import 'package:didvan/views/authentication/widgets/authentication_layout.dart'; import 'package:didvan/views/widgets/didvan/button.dart'; import 'package:didvan/views/widgets/didvan/text_field.dart'; import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; -class ResetPassword extends StatelessWidget { +class ResetPassword extends StatefulWidget { const ResetPassword({Key? key}) : super(key: key); + @override + State createState() => _ResetPasswordState(); +} + +class _ResetPasswordState extends State { + String _password = ''; + String _passwordConfirmation = ''; + final _formKey = GlobalKey(); + @override Widget build(BuildContext context) { - return AuthenticationLayout( - children: [ - DidvanTextField( - title: 'کلمه عبور جدید', - onChanged: (value) {}, - hintText: 'کلمه عبور جدید', - obsecureText: true, - ), - const SizedBox( - height: 16, - ), - DidvanTextField( - title: 'کلمه عبور جدید', - onChanged: (value) {}, - hintText: 'کلمه عبور جدید', - obsecureText: true, - ), - const Spacer(), - DidvanButton( - onPressed: () {}, - title: 'تغییر رمز عبور', - ), - const SizedBox( - height: 48, - ), - ], + return Form( + key: _formKey, + child: AuthenticationLayout( + children: [ + DidvanTextField( + title: 'کلمه عبور جدید', + onChanged: (value) => _password = value, + validator: (value) => value.length < 8 + ? 'کلمه عبور نمی‌تواند کمتر از 8 کاراکتر داشته باشد' + : null, + hintText: 'کلمه عبور جدید', + obsecureText: true, + ), + const SizedBox( + height: 16, + ), + DidvanTextField( + title: 'تکرار کلمه عبور جدید', + onChanged: (value) => _passwordConfirmation = value, + validator: (value) => _passwordConfirmation != _password + ? 'تکرار کلمه عبور با کلمه عبور یکسان نیست' + : null, + hintText: 'تکرار کلمه عبور جدید', + obsecureText: true, + ), + const Spacer(), + DidvanButton( + onPressed: () async { + if (!_formKey.currentState!.validate()) return; + final result = await context + .read() + .resetPassword(_password); + if (result && context.read().isAuthenticated) { + Navigator.of(context).pop(); + Navigator.of(context).pop(); + return; + } + Navigator.of(context).pushNamed( + Routes.authenticaion, + arguments: false, + ); + }, + title: 'تغییر رمز عبور', + ), + const SizedBox( + height: 48, + ), + ], + ), ); } } diff --git a/lib/views/authentication/screens/verification.dart b/lib/views/authentication/screens/verification.dart index 1a359fe..e18e5c3 100644 --- a/lib/views/authentication/screens/verification.dart +++ b/lib/views/authentication/screens/verification.dart @@ -124,14 +124,18 @@ class _VerificationState extends State { _timer?.cancel(); _isResendButtonEnabled = false; _timer = Timer.periodic(const Duration(seconds: 1), (timer) { - setState(() { - _secondsRemaining -= 1; - if (_secondsRemaining == 0) { - _isResendButtonEnabled = true; - _secondsRemaining = 129; - _timer?.cancel(); - } - }); + try { + setState(() { + _secondsRemaining -= 1; + if (_secondsRemaining == 0) { + _isResendButtonEnabled = true; + _secondsRemaining = 129; + _timer?.cancel(); + } + }); + } catch (e) { + _timer?.cancel(); + } }); setState(() {}); } From 9d4ec78b230fe50ba23d5f53c13c3bd6e0b826af Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 9 Mar 2022 18:08:18 +0330 Subject: [PATCH 270/273] image captions now work with new api --- lib/views/widgets/didvan/page_view.dart | 71 +++++++++++++------------ 1 file changed, 38 insertions(+), 33 deletions(-) diff --git a/lib/views/widgets/didvan/page_view.dart b/lib/views/widgets/didvan/page_view.dart index 799c62e..f0a83d3 100644 --- a/lib/views/widgets/didvan/page_view.dart +++ b/lib/views/widgets/didvan/page_view.dart @@ -193,44 +193,49 @@ class _DidvanPageViewState extends State { }, ); } - if (content.caption != null) { - return Center( - child: DidvanText( - content.caption, - style: Theme.of(context).textTheme.caption, - ), - ); - } + if (content.image != null) { - return GestureDetector( - onTap: () { - showDialog( - context: context, - builder: (context) => Stack( - children: [ - Positioned.fill( - child: InteractiveViewer( - child: Center( - child: SkeletonImage( - width: MediaQuery.of(context).size.width, - imageUrl: content.largeImage ?? content.image, + return Column( + children: [ + GestureDetector( + onTap: () { + showDialog( + context: context, + builder: (context) => Stack( + children: [ + Positioned.fill( + child: InteractiveViewer( + child: Center( + child: SkeletonImage( + width: MediaQuery.of(context).size.width, + imageUrl: content.largeImage ?? content.image, + ), + ), ), ), - ), + const Positioned( + right: 24, + top: 24, + child: _BackButton(), + ), + ], ), - const Positioned( - right: 24, - top: 24, - child: _BackButton(), - ), - ], + ); + }, + child: SkeletonImage( + imageUrl: content.image!, + width: double.infinity, ), - ); - }, - child: SkeletonImage( - imageUrl: content.image!, - width: double.infinity, - ), + ), + if (content.caption != null) + Center( + child: DidvanText( + content.caption, + textAlign: TextAlign.center, + style: Theme.of(context).textTheme.caption, + ), + ), + ], ); } return const SizedBox(); From 35ed6184038534c21f44a59ba12c434e20178121 Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 9 Mar 2022 18:08:59 +0330 Subject: [PATCH 271/273] font family english digit support --- lib/views/widgets/didvan/text.dart | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/views/widgets/didvan/text.dart b/lib/views/widgets/didvan/text.dart index 93158a4..1ea5ec8 100644 --- a/lib/views/widgets/didvan/text.dart +++ b/lib/views/widgets/didvan/text.dart @@ -33,7 +33,10 @@ class DidvanText extends StatelessWidget { color: color, fontWeight: fontWeight, fontSize: fontSize, - )).copyWith(fontFamily: isEnglishFont ? DesignConfig.fontFamily : null), + )).copyWith( + fontFamily: isEnglishFont ? DesignConfig.fontFamily : null, + height: 1.7, + ), overflow: overflow, textAlign: textAlign, maxLines: maxLines, From d4aca1520a5305cfce2a0dad6690cc9d91751d8b Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 9 Mar 2022 18:15:29 +0330 Subject: [PATCH 272/273] string correction --- lib/views/authentication/screens/username.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/views/authentication/screens/username.dart b/lib/views/authentication/screens/username.dart index e17f598..e5a9187 100644 --- a/lib/views/authentication/screens/username.dart +++ b/lib/views/authentication/screens/username.dart @@ -37,7 +37,7 @@ class _UsernameInputState extends State { return 'نام کاربری باید بدون فاصله باشد'; } if (value.length < 4) { - return 'نام کاربری نمی‌تواند از 4 کاراکتر کوچکتر باشد'; + return 'نام کاربری نمی‌تواند از 4 کاراکتر کمتر باشد'; } }, onChanged: (value) { From 87cc2ffd611b5f181d8a00d307b1c333cabfb45e Mon Sep 17 00:00:00 2001 From: MohammadTaha Basiri Date: Wed, 9 Mar 2022 18:17:36 +0330 Subject: [PATCH 273/273] settings font size visualize --- .../home/settings/general_settings/settings.dart | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/lib/views/home/settings/general_settings/settings.dart b/lib/views/home/settings/general_settings/settings.dart index 8347a60..6dcfd2c 100644 --- a/lib/views/home/settings/general_settings/settings.dart +++ b/lib/views/home/settings/general_settings/settings.dart @@ -95,10 +95,11 @@ class _GeneralSettingsState extends State { ); } - void _showFontFamilyBottomSheet() { + Future _showFontFamilyBottomSheet() async { final themeProvider = context.read(); final state = context.read(); - ActionSheetUtils.showBottomSheet( + final family = state.fontFamily; + await ActionSheetUtils.showBottomSheet( data: ActionSheetData( content: StatefulBuilder( builder: (context, setState) => Column( @@ -127,21 +128,24 @@ class _GeneralSettingsState extends State { ), title: 'انتخاب فونت برنامه', titleIcon: DidvanIcons.font_regular, + onDismissed: () => state.fontFamily = family, onConfirmed: () => themeProvider.fontFamily = state.fontFamily, ), ); } - void _showFontScaleBottomSheet() { + Future _showFontScaleBottomSheet() async { final themeProvider = context.read(); final state = context.read(); - ActionSheetUtils.showBottomSheet( + final scale = state.fontSizeScale; + await ActionSheetUtils.showBottomSheet( data: ActionSheetData( content: StatefulBuilder( builder: (context, setState) => Column( children: [ DidvanRadialButton( title: 'بزرگ', + fontSize: 15 * 1.15, onSelected: () { state.fontSizeScale = 1.15; setState(() {}); @@ -160,6 +164,7 @@ class _GeneralSettingsState extends State { const SizedBox(height: 24), DidvanRadialButton( title: 'کوچک', + fontSize: 15 * 0.85, onSelected: () { state.fontSizeScale = 0.85; setState(() {}); @@ -171,6 +176,7 @@ class _GeneralSettingsState extends State { ), title: 'انتخاب اندازه متن', titleIcon: DidvanIcons.font_regular, + onDismissed: () => state.fontSizeScale = scale, onConfirmed: () => themeProvider.fontScale = state.fontSizeScale, ), );

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 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/167.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/167.png new file mode 100644 index 0000000000000000000000000000000000000000..2692e97d170dc43bab7de11d276cd347aed1c99c GIT binary patch literal 30939 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 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/180.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/180.png new file mode 100644 index 0000000000000000000000000000000000000000..0d0a59573ae5413184bd02590d0e4a5283994864 GIT binary patch literal 33838 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 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/256.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/256.png new file mode 100644 index 0000000000000000000000000000000000000000..090d00565bac0dc00be2a81ac184d6932eb8c787 GIT binary patch literal 52790 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 BA36X4 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/40.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/40.png new file mode 100644 index 0000000000000000000000000000000000000000..05c32e84ee7a65db031081a5e80a34a1e530d39c GIT binary patch literal 4373 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 Qh5!Hn07*qoM6N<$g0OS{+5i9m literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/50.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/50.png new file mode 100644 index 0000000000000000000000000000000000000000..d30c1cc608c9fe2d1b5333d707e5a99691e5521d GIT binary patch literal 5989 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 TIW77o00000NkvXXu0mjf0RZ4I literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/512.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/512.png new file mode 100644 index 0000000000000000000000000000000000000000..77f48a9bc90f418c368080fa997c7af2750ad6b8 GIT binary patch literal 169252 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