From 4ebfbbc03bbd3fa0e3e65e1ae8bca53b82732bbb Mon Sep 17 00:00:00 2001 From: John Mizerek Date: Mon, 5 Jan 2026 01:55:13 -0800 Subject: [PATCH] Add app branding, splash screen, and fix modifier validation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit App Branding: - New Payfrit app icon (blue gradient with white P logo) - Custom splash screen with animated logo and tagline - Android adaptive icon with foreground/background layers - iOS app icons for all required sizes - Updated launch screen backgrounds with brand colors Splash Screen Experience: - Animated logo with fade-in effect - "Order. Pay. Go." tagline with staggered animations - Restaurant list display with search functionality - Beacon scanning integration from splash - Smooth transition to menu browse Modifier Validation Fix: - Fixed validation to check ALL modifier groups (not just selected items) - Ensures required selections are enforced for nested modifier groups - Modifier groups with children now always get validated - Prevents adding items without required selections Cart Improvements: - Better modifier display in cart items - Improved line item quantity handling - Enhanced order submission flow Beacon Scanning: - Improved beacon detection reliability - Better handling of multiple beacons - Enhanced error messaging 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- android/app/build.gradle.kts | 36 +- android/app/src/main/AndroidManifest.xml | 2 +- .../kotlin/com/payfrit/app/MainActivity.kt | 5 + .../drawable-hdpi/ic_launcher_foreground.png | Bin 0 -> 5228 bytes .../drawable-mdpi/ic_launcher_foreground.png | Bin 0 -> 3047 bytes .../res/drawable-v21/launch_background.xml | 9 +- .../drawable-xhdpi/ic_launcher_foreground.png | Bin 0 -> 7368 bytes .../ic_launcher_foreground.png | Bin 0 -> 13328 bytes .../ic_launcher_foreground.png | Bin 0 -> 19126 bytes .../main/res/drawable/launch_background.xml | 9 +- .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 544 -> 1957 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 442 -> 1219 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 721 -> 2715 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 1031 -> 4518 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 1443 -> 6482 bytes android/app/src/main/res/values/colors.xml | 4 + android/app/src/main/res/values/styles.xml | 8 +- generate_icon.html | 79 ++++ icon.jpg | Bin 0 -> 14336 bytes icon.png | Bin 0 -> 18474 bytes ios/Runner.xcodeproj/project.pbxproj | 4 +- .../Icon-App-1024x1024@1x.png | Bin 10932 -> 68740 bytes .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 295 -> 415 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 406 -> 935 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 450 -> 1459 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 282 -> 637 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 462 -> 1425 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 704 -> 2278 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 406 -> 935 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 586 -> 2007 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 862 -> 3296 bytes .../AppIcon.appiconset/Icon-App-50x50@1x.png | Bin 0 -> 1232 bytes .../AppIcon.appiconset/Icon-App-50x50@2x.png | Bin 0 -> 2723 bytes .../AppIcon.appiconset/Icon-App-57x57@1x.png | Bin 0 -> 1411 bytes .../AppIcon.appiconset/Icon-App-57x57@2x.png | Bin 0 -> 3168 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 862 -> 3296 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 1674 -> 5484 bytes .../AppIcon.appiconset/Icon-App-72x72@1x.png | Bin 0 -> 1790 bytes .../AppIcon.appiconset/Icon-App-72x72@2x.png | Bin 0 -> 4182 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 762 -> 1952 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 1226 -> 4476 bytes .../Icon-App-83.5x83.5@2x.png | Bin 1418 -> 4996 bytes lib/models/cart.dart | 43 +- lib/screens/beacon_scan_screen.dart | 97 ++++- lib/screens/cart_view_screen.dart | 53 ++- lib/screens/menu_browse_screen.dart | 166 ++++--- lib/screens/splash_screen.dart | 406 ++++++++++++++++-- pubspec.lock | 96 +++++ pubspec.yaml | 9 + 50 files changed, 887 insertions(+), 144 deletions(-) create mode 100644 android/app/src/main/kotlin/com/payfrit/app/MainActivity.kt create mode 100644 android/app/src/main/res/drawable-hdpi/ic_launcher_foreground.png create mode 100644 android/app/src/main/res/drawable-mdpi/ic_launcher_foreground.png create mode 100644 android/app/src/main/res/drawable-xhdpi/ic_launcher_foreground.png create mode 100644 android/app/src/main/res/drawable-xxhdpi/ic_launcher_foreground.png create mode 100644 android/app/src/main/res/drawable-xxxhdpi/ic_launcher_foreground.png create mode 100644 android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 android/app/src/main/res/values/colors.xml create mode 100644 generate_icon.html create mode 100644 icon.jpg create mode 100644 icon.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@2x.png diff --git a/android/app/build.gradle.kts b/android/app/build.gradle.kts index 4281bae..c503614 100644 --- a/android/app/build.gradle.kts +++ b/android/app/build.gradle.kts @@ -1,3 +1,6 @@ +import java.util.Properties +import java.io.FileInputStream + plugins { id("com.android.application") id("kotlin-android") @@ -5,8 +8,15 @@ plugins { id("dev.flutter.flutter-gradle-plugin") } +// Load key.properties +val keystorePropertiesFile = rootProject.file("key.properties") +val keystoreProperties = Properties() +if (keystorePropertiesFile.exists()) { + keystoreProperties.load(FileInputStream(keystorePropertiesFile)) +} + android { - namespace = "com.example.payfrit_app" + namespace = "com.payfrit.app" compileSdk = flutter.compileSdkVersion ndkVersion = flutter.ndkVersion @@ -20,23 +30,25 @@ android { } defaultConfig { - // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). - applicationId = "com.example.payfrit_app" - // You can update the following values to match your application needs. - // For more information, see: https://flutter.dev/to/review-gradle-config. + applicationId = "com.payfrit.app" minSdk = flutter.minSdkVersion targetSdk = flutter.targetSdkVersion - versionCode = flutter.versionCode - versionName = flutter.versionName + versionCode = 1 + versionName = "1.0.0" + } + + signingConfigs { + create("release") { + keyAlias = keystoreProperties["keyAlias"] as String? + keyPassword = keystoreProperties["keyPassword"] as String? + storeFile = keystoreProperties["storeFile"]?.let { file(it) } + storePassword = keystoreProperties["storePassword"] as String? + } } buildTypes { release { - // TODO: Add your own signing config for the release build. - // Signing with the debug keys for now, so `flutter run --release` works. - signingConfig = signingConfigs.getByName("debug") - - // Disable minification and shrinking to preserve beacon library + signingConfig = signingConfigs.getByName("release") isMinifyEnabled = false isShrinkResources = false proguardFiles( diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index c9ecef0..d0c77f5 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -19,7 +19,7 @@ z{g-_fP7)GkX+5n6&jJg!3#s6@pXXt&TdHi2Ni@u38u^O#0V*T+gUL!}%a9R`VrX)w z493!^l>w%#a&oJZ!ZP27>32Q|Q!r>~!Il8rkGx_o_>=vwcnPD%zexFa-bnlvG-H3?3v&CN4Ev?RQ2gFpRt|9O`B1TvE235wB zn@oHqWCB_mRJzC*rgR1>!M_QQ{!b({jL0Q{`1|2S75>-}US4N0E=|y#VPQ zBg&a?*V5A8lc@lOmjsZ7zx) zEH(BU~94;L4 za#7tQ>R>Da<<*t>axnW*vwU&e(u8aTr*0!nE4Gs%tJE0;E}$}oN`{JzE4%9+Z|XWh zTK$1~rXulgKrESRMrtEI=dy3t(w zIEw7z2cNWX-z|zFPHEBF*XhxmiuS&22^`c0gHc zE1TNoA+Y(yB^&mQ1O`V**ZabA^v_JreR0Y>9^ce#>(+>X?b)T(N)yJ}b{f`i-zMu2 z*RF0eRat7HTyqUD;YP-j|!&{I@q;No(4uO^2i)K(%fF_D1ZoSbg)miSo{LizDv z>RCIMP%Tz%(FJz1o0jUbeRuy+JZ1&Gia;>?;YN~1!exc-2%f*nXPr4+fsgj@zkK&w2sd22Kg}WMmAp4I z6XC^MAn)K@UVgeh4id9Id`d8nB~jqZch{*8=(o2hxh$8w+fi3mKEig`OD5wv!8MX6 zhmqx0a-1eC<=pe9rl8?M+J&D9=1th2H(1NZ@A&F5YQ%Y61`wNbzS`;r^2ok%!1vx5 zm2fxR3(3OWX-x?uNDL!xs9gmz?{-~>XSsNt9~iiWJfGFgcnpHg`A^y0j$yOk`{&Kx zxF-ElqA2R{qUBFvUxRjA5^U?ch?XdHV%U&PjVFae?q-X;*itc$Mo>_YE&Rj=oyn>U z=E;@79O*W4-_;YS*mtI}X%EnT@Zg3Qeu}=_*_jTQ7?f%GTS9%C#flBTeYS8WSv$>(eXJ!(V1-BGJ_jRmWsl!Lrh5>GSpQO9xy>cL>ALV}n}eK+ z7cTkEPK&ucDk&GAgtVHbD*Qc%^Nyw#m&iO~Fgyq@N_y_9D^p}U7v@=Zz$y7%4|y9M zlx-JbF`9lk_Uxc=7Kvk9R=(l@NIg+P8cn#;AT_LWO9R@f2c0)y{*+Fxu4S%cZySt6 zekOeJc$*P|&dA zZ|#j;R6=VAjqBRsX4Ni^;dr*mQz*^MmMnb2T|d(~cV5^g8xJ&6j$9wf#{!f;_fqou ziuJy+vrQ%vi64TzL;A9&JA*zoawcn9u>_xNMz08^noZj_3JaBrp%VX=*;%O=v@g(o zvC~04`{(Xl?2nITP)sWK#zdKpaM|3K^b*arNDJfAWlakD%DU>tMrJ)dy$7>$b1>5O zfX%2dV-M|&^*;)qq+pBc7Ji9fOS)P(w?f*QJt6(cx#P32?Oj9~BmcvJ6{_!{!*-ng zLwhTjz27Gbn9eYNB$T)m&s#O;vOC`;4_hQrJ>Mupu5JHn(ZQ~Z!x|D<-YdH%C9c}Z z^ls$ECOo+VAwV(VUrv6kN|`QKF_Jn~5A}ex>YWCe;P{{7!?K^#)6*l4w|^}W%oncyZ+>%@ep7iOll}{7LwrK~r5M1y!8CK%F=NN4E9Lu3uhG?EbXc zL&x*}B44~$=i5iUDf;^C;N=(LyEX?YxW(Mr%krzqnO1T%h;v z0pEK~e)G6njjK)5+zB5a(u6kLjU#Fxi^9((j}n4!!`z zNtowCx2~REf@KHAbbA=5X|;J|M%fN6wesTDt(ZM0^ZmIXWfgC)l%eIX^s4EGTU&X( z1qEDU2*04F%>*J5^J#1-&KTgg#ToaQ2k|kxX1q)1RioR429L>UvG+`ab4K_Wg}Su{ zGo?gr{}1n)I3fLKj-My0Eu_yjfddIIOvFv%K3*d5 z?@UNKt|E)WCdN8nt?G(dv^NfQ8e((fx-Y%53Qq~YW_F|`Ekq5ARJnyxi#`}z$Q+zZ z1m*x$3L=D=m_++=qR{KYufdiaq zqHH0o5$kCI2omkp?z*qW>)m-3JkI^&Ny1~KWlsK`jnO?+rkNlszkCrKg%mx?GRtYdp>V{BA)F5rdU?s7J~OU;C2kI$kZzw@y-hVe_@K z<*NT+v^yVovF-2nS6pQZV~9;hKwqj+z<}`6FvZ0cK?sP#aAVX)X>U-d=(~JjiDsPo zB)<&9*n8{y$mbJE=!|6*0xjQsi|R8Dko$(w)+BGHb`iHa{Z;#@Y^Pbv}*qRy`e3R z3B*4qnWvhD+e&ct1uHK!!h1f{c;A*cFw9l~ZFXwZ0mr+<&l4{Xm9Bg#T?~sNdq%?> zx<75^1m7;*2u$OV9rEJn`@36f4NMHv5`uO_ZTOZC9_vUufoyZEl zy_}AY-j3QglCNvEaGq;bzEHcMS-4u^ZP05b`qA~p#9dvUgL;aK4G(H>NOMB2hX9@H34P?P^+rX(Bl*BB1LPzxLPOExD`R-w znCkVMu_CIgnMS%|3<*OM&nog^Uyr7snA$kJSyEP+8c&vSrFN39W~SM7&+NCZkXN0@ zTcT`AUe?hcZgT^CaH-ti;+>Up+qmiqua3-g+>w>I8i^h*{8SC#cfdfzbMLM-86|n& z!&|l%?aVb+E!jP7*Q%@Ya>uE6d!s3P`aAe|IDfuUG>5#kxy@I7eEchFQAPf$8e0cd z4sCS@=DEmxnp|lvG!F_IWIEjO=YMKq65V2lR4y-nw_GKP>Mi*!7I+Psy?n^y^Vst_ zGS|SHm05l2u=tfG8B6EeU%*xt{(~J-V{>LifZfAnY!&pXBN1R1Xgxv1Vu?O(X)XKt@xQ-# zLEBRxA^g;SlV-i8Tv+k+Q)i1X3m2e%ur3v5CuE!HS(?l)DYhpd5^S(jo(z*~(;rcj zUZBKgMI7w%qI09`7Z&ZJ-$!N*oqUum)O4kQ2d%VAFrVSpAYA_@1&S?eJ~IHgk7qQ| zQ8Cd^iIs24zK%??$VycwJ%JK`W|zeBt76VoYylsvGE-$@)&9DOB1PJ*f)202-4iqv zb)$&648X!vHIb6{nSD_QLj7N2C`^vYd*NZmK#yUX z+NSH-nI;5z_W?D&@CD~?aKrQXW_g{4w2LA|&!MRr*v_!U4pFvEKiX?%W}=ncB%Z7F z)I9L1*wBd^)}#GpCw|bhW|m2ue`UP)qpty@C~8HA62g_$>LqQzbRA8^_cyd(#nhLPgMP}o++Z!3kQopqS*}CO# zr*ReKxGoKO6eI10MNq={8a7YC^=VZ0LgmQKwEe{rp%Jr_|8%EHtHlA0kzoUCmJTki zjn0#giBV$D z*4|a4LB(E8t;c)y{sYhFxj5%soSSoTF23<*CJ1ImUPc-k8fF81U5ktK_&)*ZFFeV` zdVq%JYK4I=%rYo@BkQUeCxW-@d=DAs7{*DCw%4@)3nB}$udu2UKDwHj=7Ztw*9HLa zpDl=O5QjAE(olNw&Zt~H(@+=S5U{FrvC09@aEopGy?&#L# z?#)3Fqffr4(#4rmYnxQ!`5Y>84w6qR1oDpgi(>{6n1ruA0k$gX06TfK?+k*Xed0ig zkQWZw!gNdj{pwz8h^YWgK@qKf$sZ(s09PZO;%s@c!Cqo0ol^(}m)W*2B_B(DUjSU; z6*9=Jv7*r`a)-SUvpnC^Tc_h7+`ic5D3z}3yvpv7>W_rd@{`0vcTuLh33(p z9TPkFQh!%RI7D`MbY%*~(MjkgvS(E{xXiCv zI|&6svx(~AmVRfti%Cl6@4gy9^;IWcIz4_A{QG$*Rpn4nspX7+C#ywE#-_1dg7e?T zS<{rJr`#X&KZ4lUF2QBD&_yOWByzd!dr}69|DQrYkB#I~{2#r>@aYMzS7CvivsqTwdDIOMsRQ_R3Wp?5@R5P6BGfgeIGwD0-i%P8paS zV6mk?E33*4FkH0dY)l8S1_Ak7M{2ddc-9RVSSW~=pREIQSsI=yjZICS3R5Fpot?bV zWBBJ|hKUhmo`Bh=&_Iu%P<5AY!BqyCDUOaWuL-v5iYMb_{B2^256Tz&@8eYzH2f`1 z8`kYpb6-K83<@dUt_+SC-Y;_brPNT9RZA2{o}S>ssL!3Z`dtEX#atKr`6|UEm#8c6 z(H%~(uMuZ2vlaLS!|F;6&Zv7U_=Mr-#p!+odIkp3J9j{EI9!j&A!+h+Dg5}3=QMQn zg-{6D*dsKMkI#+M<~43}z~2m4u0E?lo+U08R6wwg=(4)?E+a_^)+uLtz94mhqcfbddQ+r!KkQRAfEjwXpWi2Xu zv*&YDO-;>>rtw{I13NqZ3gzxEAqVb>Jdn70kKSZq9pgUYd`@Y}u(vkw*&K1~llok% zXRDZGl9j8D{mG`t$uSjQA49C}?9Wi;el1g#0!QdNItq_hgmb(W5e*raIgu3y1a3lQ zxQq-9af>w*xW|25`qha=G0`9nj+my*!DIx?G2N0R&LvnBpt? z?d?i#Oi~hSgWg``ZjWSH8ktP4Ziz}z^0GIEw63})8tJ!WL_^ASzRRuNz`OH8?GSn{ z^uECrd01O>`ypeM5WS6b`KRyN!Y(tgv~MN_Kq|F%s)JgK(pck|`Ql7+RAgsX&&dN> zbDkgFD|D%U4Uxc0k zAiBCHBw_Msb=P5z=#Q*&f{XI~OTs^?T5n^$yHU^z`y!xlG&|X2p4AW(sycAAnx8Zs z&C=1_b2r~y8@X++nbg(QwIqm&SkNmC&gE**bwcIeL77T_l&Z7#Wfj~w1KzxOGtNs; z$w8=7L-iFLZJF*lQ_J)Cx{4oAyrbjK!BTie9)|0mb_zGjBcQUZOeQf>fwomxn38)` z;tt~2tF~1Y`St79AM(1_QaulO(%4a+xHvnw8TRT_72T!7ob9gIGlWtNsEGA)`-93n=rx$q!yZ(bZQuuz1dEt;jn8cW)I zS}@@q^$w9_WcctMJYPS+OaDf*g~xsQnAfG&o>ZVWb@y@6+9La+&;B+Wm)OuP`Qupb zW@M7T3=kik(X z_RJpvDHRtSW(?Tl*_Y0PP`p0Xes%bnM&nos)fY;L%e?x<+_!Yv?SXIW83@>68k>sr zc+aOCX0QA3tJXq*oN4Nko`~t&g%8!vcF}MKC{JCc54}8~9Aqp}W9F9w*OG&db3BMG zqW>(}yYs2d6>g&|L74$$Acbu0isZqGEws$g!~#|_VE(+seixQc3<*uWWy=M4CyjiQ{JN^g2`u}iz4p<)4dx^T_+j9Z% OGzM@J-3o1o=>GsHQM#}I literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-v21/launch_background.xml b/android/app/src/main/res/drawable-v21/launch_background.xml index f74085f..5f7a7df 100644 --- a/android/app/src/main/res/drawable-v21/launch_background.xml +++ b/android/app/src/main/res/drawable-v21/launch_background.xml @@ -1,12 +1,5 @@ - - - - + diff --git a/android/app/src/main/res/drawable-xhdpi/ic_launcher_foreground.png b/android/app/src/main/res/drawable-xhdpi/ic_launcher_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..080561703ca3032c2745dac4f557ce13b3cb9c26 GIT binary patch literal 7368 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/drawable-xxhdpi/ic_launcher_foreground.png b/android/app/src/main/res/drawable-xxhdpi/ic_launcher_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..030fdbca223c89296c185762c6e45058f2ffd2f8 GIT binary patch literal 13328 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 TGqumajL6{W>gTe~DWM4fQ0 - - - - + diff --git a/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml new file mode 100644 index 0000000..5f349f7 --- /dev/null +++ b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml @@ -0,0 +1,5 @@ + + + + + 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 db77bb4b7b0906d62b1847e87f15cdcacf6a4f29..dc3d5e2877ffb326cca6165f41cf4a83d4e08280 100644 GIT binary patch literal 1957 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 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..1ec377a4fb5a958e26f8cfb48d00e2212ba6bf33 100644 GIT binary patch delta 1210 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 ObOLZ_TU51$N7TQ|jrlYH literal 721 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD3?#3*wSy!iOI#yLg7ec#$`gxH85~pclTsBt za}(23gHjVyDhp4h+5i=O3-AeX1=1l$e`s#|#^}+&7(N@w0CIr{$Oe+Uk^K-ZP~83C zcc@hG6rikF&NPT(23>y!y&wkt5C($~2D>~)O*cj@FGjOCM)M>_ixfudOh)?xMu#Fs z#}Y=@YDTwOM)x{K_j*Q;dPdJ?Mz0n|pLRx{4n|)f>SXlmV)XB04CrSJn#dS5nK2lM zrZ9#~WelCp7&e13Y$jvaEXHskn$2V!!DN-nWS__6T*l;H&Fopn?A6HZ-6WRLFP=R` zqG+CE#d4|IbyAI+rJJ`&x9*T`+a=p|0O(+s{UBcyZdkhj=yS1>AirP+0R;mf2uMgM zC}@~JfByORAh4SyRgi&!(cja>F(l*O+nd+@4m$|6K6KDn_&uvCpV23&>G9HJp{xgg zoq1^2_p9@|WEo z*X_Uko@K)qYYv~>43eQGMdbiGbo>E~Q& zrYBH{QP^@Sti!`2)uG{irBBq@y*$B zi#&(U-*=fp74j)RyIw49+0MRPMRU)+a2r*PJ$L5roHt2$UjExCTZSbq%V!HeS7J$N zdG@vOZB4v_lF7Plrx+hxo7(fCV&}fHq)$ 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..b5d59ada7cbe2e13bc398420e53b791b41e64c3e 100644 GIT binary patch literal 4518 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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..69270a9669f5aa8541330a8062330a490bedd6ba 100644 GIT binary patch literal 6482 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 diff --git a/android/app/src/main/res/values/colors.xml b/android/app/src/main/res/values/colors.xml new file mode 100644 index 0000000..beab31f --- /dev/null +++ b/android/app/src/main/res/values/colors.xml @@ -0,0 +1,4 @@ + + + #000000 + \ No newline at end of file diff --git a/android/app/src/main/res/values/styles.xml b/android/app/src/main/res/values/styles.xml index cb1ef88..6d2e15d 100644 --- a/android/app/src/main/res/values/styles.xml +++ b/android/app/src/main/res/values/styles.xml @@ -1,7 +1,7 @@ - - diff --git a/generate_icon.html b/generate_icon.html new file mode 100644 index 0000000..3adb9c4 --- /dev/null +++ b/generate_icon.html @@ -0,0 +1,79 @@ + + + + Payfrit Icon Generator + + + +
1024x1024 Icon Preview:
+ + + + + + diff --git a/icon.jpg b/icon.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d7c3edf953e3f914366cfcb7f4494d44f786b68e GIT binary patch literal 14336 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 z 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 uB%nGB0fDDWQiRKopQJ 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 delta 279 zcmV+y0qFjp1E&Iz8Gi!+006pI?LPnj0Blf9R7L;)|5U~J`u_j-{Qm)0oAmqtj@kOz z^8J|I`-|B6ht~R5kG+%I`zf~eztraM`u^bc{`dO)zUlmg)%x%C`E}6wSI77~z4s`y z^XT{f(eM4n?EUff`e@AgO~UxV*5*r_%Uhbj5N)LaQj!wdIe!-b004GLL_t&-)18pX z4udcZ1u-#g(~z+5JN*AY5?>Gw7hsN~k)CYt4dQDFxbs5*_&e@Hj)wtt(&JE<3Eq*D z;_gQLvqXoKv=I*gWqM9C(Tvu0>=?hTbOp9!6k6AF;>f6|S5%jGEE}TA9h)e`Yuiu8 d7)l?o1NFcJg%EAfM$P~L002ovPDHLkV1g5{ntlKP diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png index 797d452e458972bab9d994556c8305db4c827017..1b3f6ad1c224fe34a639106f02dcc00407994d65 100644 GIT binary patch delta 924 zcmV;N17rM_1E&X&8Gix*000A=FFF7K18zw~K~#90?bcmLQ&AiM@c%VIEU#fcn6aX( z;uH!$7nP(L^(Z86eQb{2Y(}jTEZjqosNuuHj6#+#%}`50Xwuh1$(B8AW!sEga}urP zrZlhS-Mwqw-P4EjvPnfftPi;7;qt%t{LlH_bM85Zn+SiYB!3F901L1H3-Is47_2SI zKv>+pz)OFaVWZ$xu<_hBE`fu1+6d5_Q%~rr`IxE3zE*G$*HL2}A1=dTcyrzY82YNm z5ysdVIu=Hd0~-K@80|U0FauRnv;`bx7(AFlEh-M)9Iur3d69X!os&6PiAIj zVq&DZ!{OMpaeve5HLC%DrfHYU#j-3x5W!#&$MKYul!%L9{Nr3K4Dj^XQ;)}kIFzwI zLnf6PhKJQ^b#rrbO-+r#VCcTqZ84jV)~jk2wH=o_wr<%nGBQFfQcREm0I5{keXX0w zB1n=fR=qTU3y}ezl)rv$Sx7(ec zpTG1_E|&wq!oouRvHIHv1D_lN%jNRQ%F42xWmm6WDc@C&<9PM{{WiNjH#gU8F?V!c zx^wUDsDH_%)9IG-wHGhW&(BXfCy$>v{$;`s9XwP}P(Tob^|{sIaIE;cD?WD&jN|y+ z+}xS7XL@^k_1ECW5qyu!lN_D!Sp{1pzv9YnWwGE-j0_@T2$H!kRQj6cZ2AkdH z^ZKf)s`gawVHoD;>nsM=>2yY;5dhNC(yFVgJAW^C&d$#E-|Sb`Dw{N#P$&cdp-&+` z-)gl+PxZvagjTD~$|Cyu`U;B*e-(B*oirU;>-+ZZ9UB{KYHC6VB_}8E*uG~c|o!1v+2ygWX>H85~% zV1HmKW*CNleQ}+>eB z?J{?+FLkYu+4_Uk`r_>LHF~flZm0oBf#vr8%vJ>#p~!KNvqGG3)|f1T_)ydeh8$vDceZ>oNbH^|*hJ*t?Yc*1`WB&W>VYVEzu) zq#7;;VjO)t*nbgf(!`OXJBr45rP>>AQr$6c7slJWvbpNW@KTwna6d?PP>hvXCcp=4 zF;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f_G=vUH||9 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 index 6ed2d933e1120817fe9182483a228007b18ab6ae..5c5aa9f9a39305d56d5131754cd2a2a8ec20fff6 100644 GIT binary patch delta 1452 zcmV;d1ylOM1G5W|8Gix*006a~P9*>U1$s$DK~#90?U-LoQ&$+k&$(E%W`dxQMFsXS z{-}v#%g|Yv+nhv)bChC`SSk>mC|jGEiJ{Q4gxZ0WO_FW!ptcbQZgpVHoG%)QRfbe{ zZ68`@Tk7A{Nl`@F*_Lw8)>gV(TAk>;KyrT%?Y-Z*=R3cC=YO2r+s**fkQtLL@GQ{M zR6$Eq1uab#v@})F(o{i9Qw1$e6|^)}On>Q@ImvT3#6bWNoIIltpohAl>#|G!^8jf$ zI}FZaK!CxiB#i)pMKZ{dKxu?|YK#y7o;U9+ART~EK?+(S0>opbiH9!GKZ-B{dc3C! z1O~z$jFr(#fPeIzcEg|ThRIQTB4HQ=q%sCbPqe%cLPW`&j1mE(1W51tY?nYFz%UFU zC&Y- zo$j0OzAY&!DHjUAZ)v%D?P_LbCOem7ykhwAm{K4R#3#fX3dSnmzaIcFZ~pwa z_&6NL9e)l-7>1=RUMv!c>^8fsUKSG*^J-$^OLOMjyLa#A&6@y#J=ce=sB z!N*qGvqBK6si{#Y6aaw6#>SmHcI4!+>twQY7Hi3pC0ea^*|KGYg@t?e>@l0o;wo`n zolGi~^0x45zpNqLqeaC}>X? z{7ob7k<>R{-&b4P-QDf)9u+lr;ev&}U2h$*x?C>LHu(1*2a=PM0RXoxw?hx_*?gfl zOn(SzKA)e%&WVnWTCw7-2SY<`ZEZ0zF&qv@tyb&xdbvVgR#wL0aFj|VK@eNFZN+h% z$K&aAx@w7poM(SS!~TW_@9cr}bk@a-7kx8%8NZAm3TK2f7z~5KApWB2359!F>DbuV znKNg)oUY@?+p8rKQ(xaFrKLzjpbK&3%23qR_MI7A#!A}@;vEqYk8m;D?_uh?;iVhEFw6wI~INsUW>A#q}dGk|A8@-IX!e3xA z=Sjiey^ve`%;r9`Ik*>&<9J}CtLxEDy>|V&TCFBGoj!f~siY%QVwowC6MudLdBH#g zU3dSw+j+|$36P$hHh*qj0zeSKG4V-xehvycHN%gUh6q9gJU;}y){lCju~cX*6#`VY zjzR*0QL<<7-2;wdXyQ+)FBAw-fM>wTkjmmT4Iu)esU!^nAZ#vjBtY7JW6*wMFsRp* zWBUK^FfXeDW?prxsTmZl0?nkr~%s`wi)OKwc(8IkV*0000GM-ShrilfUZt{^9lhT*&z4_x{-O{Rv#2V9EI}xb^~1iQe@7)8g(7UZ4B@ z|4zgB>+<*9=;^^)>d)H7pzGjuM>Jnezy3`@G2r z?{~a!Fj;`+8Gq^x2Jl;?IEV8)=fG217*|@)CCYgFze-x?IFODUIA>nWKpE+bn~n7; z-89sa>#DR>TSlqWk*!2hSN6D~Qb#VqbP~4Fk&m`@1$JGrXPIdeRE&b2Thd#{MtDK$ zpx*d3-Wx``>!oimf%|A-&-q*6KAH)e$3|6JV%HX{HY|nMnXd&JOovdH8X7P-c)ZC$Ou1u~0s}vUl zBLl;K1`x?WCgcB)zYiKtBFtr1=4V&p{!g(p|9}6B;@*c<#~7Fy@o0efgdl($0X28= z+(jb7B8*IoB_$FHm;e0}-yMN)F|#tj?y?ce9?iUX_=V)6~-R_VK=P zU85kG}3k&DXn|JBbrRL^l7JnA(DHSTZX7!q{U%!G9oQ!N% zcJ}`L`!&=xtZl46y#KIn{dxulhL@XGa7qr9K>ghA>wwUY$*e2PvuGO8Nxy z#=mcWQOy0g>j{$pE8+A>5d20Bhu7P%M=RN2h?Zxg=8l>R1^@<<@1~(~9&Z2u002ov JPDHLkV1mz!LW}?a delta 266 zcmV+l0rmd<1eyYn8Gi!+003c4mpuRg09{Z_R7L;)|5U~JDYo_jSDX9(|7FYh`2GLd z^Zv2r{H^2sT*&w!Y^SB+`<>qVZqE6)=lqo0`vF#&*75!I`TIh@_d&k*HoEtQyV-iD z%Xz2D9EQRbeYh5Nr~y=#0ZD;^+vz0$004MNL_t(2&&|%+4u6C&2tZM$Wf&dzefR%A z(^3-?6X>hnCz2Ba@RH&`m!pgy?n@#@AuLYB&}Q)FGY`?vcft0!vht0Z@M&ZeNCWXh75gzRTXR8EE3oN&6 Q00000NkvXXt^-0~f?j@w^8f$< 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 index fe730945a01f64a61e2235dbe3f45b08f7729182..79244205475b4db52137df177873ad2be9f6c793 100644 GIT binary patch delta 1418 zcmV;51$Fw)1Ca}m8Gix*003^;-G2Z81z1T$K~#90?U-#$Q&$*(-*Z8WWT3+;OQ_C| zMVrjIMB;Q-qyCwQE@E_{V%HMXfNa6wH%Ns93E)Zsh&VJraal5Ob5LME{8R9=wTfF5 zhLunOX)_C~Ev0SxanG!Gc5R_f$nL1geSV$$-h1Bj+}m^CbAN6_;jJQcx&L84nuN4C|G4^OV%>Hn;*1$HPvxBI>+6eM6`Prv`BbCHIW4C8?%uU)XTr`VS(9Erw15A8@3abq z;#|eKv&Cm)Vq&O>&1Tc-w9>k|o}L~6sI94e{P=NwLx265{4;)jJv}|SdASqoezImw z(%z)*-@C0=D~H2j&ttD$`|0j4b_2k+_;_J*G6K*%)riI7jt3p@FI>2X&%fVs|L4X= z_FQ(w`SUibE&c1S_y=W@9R4jfp{ znrcg>Qjt)|TgPktrIm_wcXv}~FMrq72?Spz@)J8dJ6|^$ys_Ku7V{WF zC?tf4ii(Qc8Yh>_uU)%VSXA`+_U%nF*@Isnl$4YlKY606s!AjhwaMjIu3YhSpFKM= zIy#za>-Bn)B)u0O7K_DZvoXNP$jAg^Bjmqc1k%MAOC%DL$+Tqg5-yk9+R`#=HfLmH zuzy&r%F0TGLXn@Jf8@xKCYcNX#JQ(Gi`$Ztvd?TDO*?oH<9|v@S$TO`c{!Dk!{O+3 zIsjO(V4=xq0s@7Fg%JoIh|A6UO(!-@}AJnDSpa5#zz3xB9@sDHk6N&Q6aousCw=FaUqRNG)MPz|HeD3M6E z#&6~EcxQ`?v$C@%bZZC@dCBYHC`0Tbtw?iLAMKczF0f(~XRX;PdzBblM-U{^WAGs9=3V zeM-u{xGixltu0f~1%O+(ZmkbfpE{ooXJ#W^`8B_+MRy`G5E<>K+ynMOxF zt}iCQ(WA#oOH1`bL+&5_#*LL9t$%p_T<vRXT+Ci<>J7Td|9*rx02BX1X{QK=Oo6UX~{P~jc zBl!*Qa5y|=wY|OF`_!|+!SQ!Hf$seHrD5DTfok6W55kBXa|~4d=85>|&VS<0iP#t& zEc-D47Xf(41%Y%iLQVpQV1$F?2@@ETDDd_?)J3oyGu`{lVA-Do`0Q|ebv2du;9I~X zK#+X?An@Bg_)Z2pIj+Yv5 ziGV;=={^- z?sLQGb)?A{hr$_!z8HbH7kH=vM0x-*R~t>;jsO4v^GQTOR7l6|(&r9>FcgO2dg?%> z;=sK?5%;?Pn^T7LL?Y$@5u?06NuIR*0?Yf$Hf5Afk+lM<^ch*jvO$sU*m9J?JI7eI zGFV6+q|w~e;JI~C4Vf^@d>Wvj=fl`^u9x9wd9R%3*Q+)t%S!MU_`id^@& zY{y7-r98lZX0?YrHlfmwb?#}^1b{8g&KzmkE(L>Z&p6kME1_Z%?`+u)^el0!1<0sd p?Eyu!OMLDifi)An*I;?S-wj=m4RYIt!kPd8002ovPDHLkV1nca^bG(2 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png index 321773cd857a8a0f0c9c7d3dc3f5ff4fb298dc10..d7505364d61a0e88ec7da623f8584c72f70b54ad 100644 GIT binary patch literal 2278 zcma);`9Bj51II^>A#GTN+$lsR3OO>q?&3RhTVaJzj@(BZo3lt_wpr$un+Lf==KK;$ zuFN@S?jz(FPtPClJg?`6&*$^Y=f}_M_5Qqqn;LL)3UUGf0B$2gUBsWX{*QpnfBdw_ zR2={SmKy15TLh)8r-I;+QQ@vIuY=!#QmW^4&AyxS0sYC}{H_aoENnSsrz;6^jU^aD zBr-`heTmY>jO0r=Gkn{akwyfsnhw8)LFzY1F}D~!h|Pm+%!qrP=D$4MG9NwXT^ncXX|wH8lY#Qc~B%sVTD7J+eL1um1)Dfy+O!P>1@Lzj~pe`3f)S?Gu#xNCiqD z@f3NJfXCw*QBfLDlZ@Hf*~YyPf-_IBgH}r^vX=Stxj5&Y`DtA}y>pLO!$jAh6VuMY z3+l49FF!_!<>u#~gX!o{sbeYNk1mO-Nk~vfM@L<%C~E%3Y0ziT6B^@PXgpVJ-90qg);4u{y}^G~ zQBm6)PprnMe40-0Q7al{BXJy~0) zJreBd=y>;*9)R{kb75&#;8+_A8`AdDc`*g|A;Svq{WaSgDZIg$ zy&}sHhR87365*3%$OO1|_$#?iFYdZ286wQ5i9Yf>1Dpwzw_G1DEGyfeNsNyiDn+uZ z2)?0%@(@3It8;e;ay0f>mp&`|uiQ2ezkMgQJ*i;XRjl1fF$IrztsbvanI6)0#fXSt zwg<0?@6ivPdx-)A{7qy1GhBVN`#dP`UHI!8d5$ z$lKf7$EQ-Ye;{3xb|tFI?n-F(znr#{x`A(qwWFk4PnP=LOA$oX{0xIQFc`biOFVIL zaqB|FjI-diY&}3CiS)~U$@g@X<`p8Cs^e3L zF2$5cCa+959@ngufU3g7Yl*dpJjuu{jj)qVTu4}ZS7JU-g+c)8GEY}Fp4J$+nKjr3 z0Q2!F`7OhB<)o#5XXWFq@zX`+)^A0sg0|@<@0IOJ5Q8bHsRF_m_Ygs-hQUWWIc{!l z_6z(8LYfj*9qRP#VRwpp;KrwVU#8jPMVGzhTdl3FUY~BY$g0_t5YUH*wzjq`-Tf5x z(1vdx-M$O9JX=$18l^XIRie8R_@ojBM%=B-?fS&S4yGmtc6P=a{+4CD%WqC3lW+9% z$a8XW$HfoDmb>mQ_Pzb!gJO#L$LQ_jT)6c0%PeqDqg7WXl`@9|4TFbGA=PVR6_roA zqL0|+jAAoxq4j@ewV8h~siv*JW#p#+k`(ZJsiT47@AuRSJJlG_vU^cDyplNEc1N&} z>xn}_qy2%!iSM@_t&;e!x{=Y*rsUf)X!H?#*wIWOX*)kwOvX<>jrFE(1Z13VM>IloXXzJSLXs))~Q=W*6i6wiwW{n|ZX(qeqn4 za3%nGW8y_QH+s7xg6$j_VPP?k7#0&Mj11`jvelZIa;K1+T6icXxO2Rt?hoZpgf= zBiym7uzmoNpg#1SRn+sJ9Y=XDFZ-z}jiscvyu29oQ4RSX|L%zDKLjYg++IiY6{@9E zYAN^a8NvwOke{RGk!LYO1 z;=2^1GAJ0O*T!crJ|FcZJV+HRkuad7NDI|mtIN9lHo$Fq`={JEhEoD?zLK-?OK3`# zWBpeu< UEpVj3pZ@|d(lga9({aT88}Z#=4gdfE delta 691 zcmV;k0!;np5x@nI8Gi!+002f7DP8~o0Jl&~R7L;)|5U~JDYo_jSDX9(|M~s@SH}2N z#rS{J`h3&+@cRDr`1>4br2|=<_Wb|z`~RBV`-<24{r>;E==`tb{CU#(0alua*7{P! z_>|iF0Z@&o;`@Zw`ed2Hv*!Fwin#$(m7w4Ij@kM+yZ0`*_J0?7s{u=e0YGxN=lnXn z_j;$xb)?A|hr(Z#!1DV3H@o+7qQ_N_ycmMI0acg)Gg|cf|J(EaqTu_A!rvTerUFQQ z05n|zFjFP9FmM0>0mMl}K~z}7?bK^if#bc3@hBPX@I$58-z}(ZZE!t-aOGpjNkbau@>yEzH(5Yj4kZ ziMH32XI!4~gVXNnjAvRx;Sdg^`>2DpUEwoMhTs_stABAHe$v|ToifVv60B@podBTcIqVcr1w`hG7HeY|fvLid#^Ok4NAXIXSt1 Zxpx7IC@PekH?;r&002ovPDHLkV1jv#Yli>; diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png index 797d452e458972bab9d994556c8305db4c827017..1b3f6ad1c224fe34a639106f02dcc00407994d65 100644 GIT binary patch delta 924 zcmV;N17rM_1E&X&8Gix*000A=FFF7K18zw~K~#90?bcmLQ&AiM@c%VIEU#fcn6aX( z;uH!$7nP(L^(Z86eQb{2Y(}jTEZjqosNuuHj6#+#%}`50Xwuh1$(B8AW!sEga}urP zrZlhS-Mwqw-P4EjvPnfftPi;7;qt%t{LlH_bM85Zn+SiYB!3F901L1H3-Is47_2SI zKv>+pz)OFaVWZ$xu<_hBE`fu1+6d5_Q%~rr`IxE3zE*G$*HL2}A1=dTcyrzY82YNm z5ysdVIu=Hd0~-K@80|U0FauRnv;`bx7(AFlEh-M)9Iur3d69X!os&6PiAIj zVq&DZ!{OMpaeve5HLC%DrfHYU#j-3x5W!#&$MKYul!%L9{Nr3K4Dj^XQ;)}kIFzwI zLnf6PhKJQ^b#rrbO-+r#VCcTqZ84jV)~jk2wH=o_wr<%nGBQFfQcREm0I5{keXX0w zB1n=fR=qTU3y}ezl)rv$Sx7(ec zpTG1_E|&wq!oouRvHIHv1D_lN%jNRQ%F42xWmm6WDc@C&<9PM{{WiNjH#gU8F?V!c zx^wUDsDH_%)9IG-wHGhW&(BXfCy$>v{$;`s9XwP}P(Tob^|{sIaIE;cD?WD&jN|y+ z+}xS7XL@^k_1ECW5qyu!lN_D!Sp{1pzv9YnWwGE-j0_@T2$H!kRQj6cZ2AkdH z^ZKf)s`gawVHoD;>nsM=>2yY;5dhNC(yFVgJAW^C&d$#E-|Sb`Dw{N#P$&cdp-&+` z-)gl+PxZvagjTD~$|Cyu`U;B*e-(B*oirU;>-+ZZ9UB{KYHC6VB_}8E*uG~c|o!1v+2ygWX>H85~% zV1HmKW*CNleQ}+>eB z?J{?+FLkYu+4_Uk`r_>LHF~flZm0oBf#vr8%vJ>#p~!KNvqGG3)|f1T_)ydeh8$vDceZ>oNbH^|*hJ*t?Yc*1`WB&W>VYVEzu) zq#7;;VjO)t*nbgf(!`OXJBr45rP>>AQr$6c7slJWvbpNW@KTwna6d?PP>hvXCcp=4 zF;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f_G=vUH||9 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 index 502f463a9bc882b461c96aadf492d1729e49e725..573c84d446422b1a8c7edc18f539fd615597be67 100644 GIT binary patch literal 2007 zcmai#`#%#58^&j58^w?`B<~|3r#Y;U=)`8dnZqNr*o+uyBx-uhVUEd4jM#`I+at3a z5|ON)kjR`$Lv2|ohgg&dd%b_b^TU0Af4F|S?$77C?ko>1T3Jb32><{nV_coRw&?Ny zfdaR-TujIs001e)I3M$lE154!^6(zn*(FGb+OO`c{XQBjEC<$A*gP+a{#z01Nl!5z zjm>=}Fx+`6S1y+@QO`^RjxxQ_l6;W-3;>r~#tcvXe&RD}Lw>z0Qk6mkOpfRW_(08i zo>7XsQgz1z0(Wzn2??V1pQUXJCBLt(jK?gr0)HK0h^P1PXEkBHm!*9FUH=N8szRF^ z0}14RnbsOI9d=$4$Cmw7)d7bKAqoW9+QxVRYcbv(y3LwId0vdtrHj^#t@+Hk*w?p;*Pm91`9&$MK`yTpR`BHq?}z zU2t;W@mKR?+p@NJD>38_3^$7V;b?Ad?v8TF1=%B!v7AQ+`ex&OeSLP35fKqxsaS;I zg9GK;u#T0us!Fe`GoL&^FOf*N(X;PrKH~B46IWfHWH&T$GCARPpr)u@IrN)cAXPfy zaulk05*d2qWTiC{`KY}7m}q{`x3DQnqynFtPbW}U6*`-f?jAX45xF$=Mo{V)Gxm+` zZNj_@t;87QJwozT)z!ZbF$ipqgM&kGMf3js-MX+tFvxB!21Bfn?2|8|Ix+L}f06Nf z0CDkGr>CZZ=wqW}KlSWxF_{X1%@wtR$Bj)7RSvsv%V}*5vDU)mVX@eSxj3}32EP5u z2Vn>Eo-yEJOiXatw1oPzOHkiO3U9>v#%G=t!^E7uQX#@NN`~{_M3TY3j zAAHLnC+f+8a#~ti62IWIeg5$M0=er`Jv%$Aw$#F(xnWDCQs0en1>LJ_k-@?4?l7}Y zvx&n2p7=iNwN>3m_4QuH8ZbSlbLJ)muK|6_+MRIUL|-P0_4=TVwe@|kDp!NiAH@Ol zvh$GS#ac_iut;R2o|Sf-$p7?D$dadyj!t%@W_o5i8im4d&RlYjiV8(#q^EcMO6sh@ zqRf>&@jiwd>oJT0Iq}ya4vj`zn;NJII?Eg49C6=(O+CxbYJy>E=6DiKwS@@W&NLaclQ;Vptp;kdc`gED4GlZ&uUL z`26XU9Q2UGq4p=N2yxN~ZzWHivFs*<)z8eFPZ$~<{Y$pFaq8QSv^#eKVq=kj-ZyWo z9ww4;2P-8L6Ij$81BLsIjR&4{;r=+E(I3~&T&^MsfJZ|@CSSgMS<^0Rx%g=vVP?)? zcVjBO6m(^N)dvnw&i}qxCdmA~Jml%&QLC|~Rk2&ZP*CV(2G@Ahb`zqa^3KHgz=rwpW1 z{3A%Zpp<>xZ|ut#gOSL zyqkhcdW7`nAo{-q0)e!P#JBU(IGat*TuC9>>xzi2rH&&kh!`E1Yz2lfg;mF84t>GsrFMt%v3L#3Uuc2gX zZ}<0B5uF0Vbu?tRr$Xb)7p2z=#zD1ZWo6ww27|GgsbW5Dyym?;IJMl{D|dvzaNO%t za_{N-`qOo4aQp>-?j{8jj=_XyMVH;`@85a2Vd4l(Ztij9eKm!QE(e<(C=hCRPW`-pFR5DF?O@2Qu@Bl6{U*qpLiDM(HRoa=mrQ{PLk9dNuat=VTe z?VF+>rcLLq_qu8#!Tq^Mwcfk+T6X&j_g<$Rm?NX~Em?cb!u;l0nna|nU8bswO<8H^ zcJ7H(5hXCumPB_7wda acrsuX0G5inup!-g*Z_j delta 572 zcmV-C0>k~+56T3P8Gi!+006nq0-pc?0H{z*R7L;)|5U~JDYo_jSDXF*|5nEMy6F5^ z$M}8I`uzU?*Yf=uXr;5|{0m;6_Wb|A>ik^D_|)+I$?g3CSDK^3+eX0mD!2CP`2NN0 z{dLg!a?km&%iyTt`yiax0acdp`~T(l{$a`ZF1YpsRg(cvjDG_-U$Er-fz#Bw>2W$eUI#iU z)Wdgs8Y3U+A$Gd&{+j)d)BmGKx+43U_!tik_YlN)>$7G!hkE!s;%oku3;IwG3U^2k zw?z+HM)jB{@zFhK8P#KMSytSthr+4!c(5c%+^UBn_j%}l|2+O?a>_7qq7W zmx(qtA2nV^tZlLpy_#$U%ZNx5;$`0L&dZ!@e7rFXPGAOup%q`|03hpdtXsPP0000< KMNUMnLSTYq#WiC9 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 index 0ec303439225b78712f49115768196d8d76f6790..1d7facbdc4db6c0bdf4a4f9c42dcbfb4b04eff5e 100644 GIT binary patch literal 3296 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 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..8364506351e68daeae16944e944e7d3ebef9ab1a GIT binary patch literal 1232 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 H%OUiCArDDM literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..997b916a75bb997c5958e8f449cd1a96973e4488 GIT binary patch literal 1411 zcmV-}1$_F6P)hD z6N)ZiW+2%g{E#0m7|aB8t`4X{Q!t`VtouWXrdMna%JtqnZq&9^CnP73+~==%@4frJ z&wKaY-S@;`_8^{afk_~^@`K>Y4}vQ{2(J7fxblPG$`67oKM1b;;N=>9U`61^?=Wck zbi6?f?9FV!H0Cb7Tw$;ThDjg-5Ws2DdkMxEV&o~}<%%$LA%MnuO@o~e5CZI_;pIAF zwz(uo1YI-06kv!&SR#gK6u7t=FIV%=x28$#jqq|MBm_Gj2wg6QcF~?q5JG|=TrL+) zv-MJ`6kt3`(+tD>7f38d2+=f+5E3D;<2mAVibNu@NW@)w-sOpuAbe^t08XdVziVAx z-G+@D0K1>@FhzBAcB)jWzP>&Hz_(kr)YR149d?;aMv~-ltu{Aze{pfqzT8{@KzMj~ zkI6JLJn~7*r@cKr@4gq|IpW;8bJcs*1qB7%@Bm;NN!HfZe!pjr)9JkO`<1x3H6fv) zR;zVvlfD%F=kepns7U{=+@U*k=%B;lSpE6xBzaPqzHHrB>t1Y+UAt5mf}o(FlpQ-t z_4*@6k8a-lje4*8+_`hNZr}c?xOje8m|QL=NfJOfOi>z*#vPSi8^{JPDk{3ycMl_DMRH?9LtS0nxZKF; zlGDC%G5g%w+S&jBUB<5X`1nO1EOIxFj*gx#DPiA52qnqoO-)S~f4k@tz}FRH92*-u zWV3y-c5OgFU~f+^03ba*9U)XyT%3@QpwZ;5TDi(_!_e8)sVgizcTr%gPliKU}<+B*~k` zo7|Ae3dO$MeH2C6?e^=}|5PL^>gz9fMzE1&NNDK9$O#)a3=9l3HZ(>=L_B%&WKyDj zTp@(j)zub@#a**=*G_=BIM*rA+0}JitJP|c7v$%w zcJH2|YfVi}kI6(i9PXN^sK~Qt&tCR81cOfp_wUb*j*bov4z}5B4ULWcj~-FOl)FQj zzDy#K_zctWS4Ux?&b_A#PM!=12$V{RkdTn(=H`bFAG&)QjYgeL_u%gb|KnOwQQ_0v zd*{vp%>kdvQoY_?uB@u8tg7^EJ*GW2ahTS&*4DOG_a#l!hmRcQ%K7>Eo;|OPF)@O# z>%8~pi{?qj&d>DcgscO^WcL8Z{_@xGogYbKL)e56`*nTI99}=YDc&e?Nk~Nl7*9;R zb8QSEfFcIs8L+Ml#0+9ynQOB-3j_>c{4eXxO=j&s_Y6mHvsSE002ovPDHLkV1m(fu5JJT literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..44c75ff636daa60755e35eb2058cb2f66229ba5d GIT binary patch literal 3168 zcmcIn`9Bkm8=o~Tg#E=h>&~8oVh}-P`RR17#~*>!w}8LnOvJ< zSdOtNN4bVleCGW6{PO(^zTY37=XpJ^=ZEKcy`SUtev&cfXvlH#;{X5vVtfs0d1!erGV}M?x;wN)c-L z?wzbUF9*`%4n0PHV%D8uqmJlR=ANvZvMHTfuk!qT`hI#cTWV1bH*Bml@4g4*Jgwo` zU`-t$G`FKVKPB+6t}}Ox1|vRA)okTmK4=PFLm?%PCbfqg@xR_^^H(6z?5jP#gQW4m z#{)P<1y#R1c3bJ>|2&{Z7eAr-$;&c{a{7ocmz6+jH`t(%5quKc1&HHLltgOn)ncWu zA%gfwk<9soH4^kOUmpnBWAaB5a$H8nSHvSg*3E9%_(KBV-`YfR+#QK-9Ww4vuCuES zbMLviF36;&oWKcXGk@DCTc$z7z}G_V6z?%cwD&(gyngkSwh*TLOk^-jaV(PEzWYO!PP+-yJYZ`Rig+HN4|H%t(>$5o7*OL7&n;1*W);`m*MzasxT4yrcUSXOxGTdiNOBy^cnP% zPNdh_8Q-yvr%yG149F(N=)}k_q+brn#N6@rCR9}^!{K(Vp4X#|S~qSF)crkw=~B_m zykFb$Kr^nQl4<>8j#eCizVc7eD%^;e;^>ujr0WnC(%!s95|;c7qoNJh4E z)X!woLf96qaee(;+_Nme=@+@V72YWDCF~^?UE+!ho=nyT-Xh^{4h_7j|1se0^%w%n zDlDw|vwY~ayvS#k%7+;vI2*=Oejt9pfY0pf>gwvYHm6`SupmlZPHuc|{vlLc1Ka1* z7ZrXXs5pC_=%eri=t?#rSJ$kg- zfqYI~-9iWjQu7&Awj~naaFc`=g7sA--z7Q$kHw9`9C3q7pbMg3zkhcU=(~8Op!!-f++YjOrTE4fMf=ZX486+G%B_i_p z;X~K7!d%3c9RU^$24iX#)DYR0{Wlb1B!dQZ!7jb&Fz-e0RswVOnZA{k)zzy#@BRr- z?M{KFh^lu+P^YI47QG6F5Zlpj zJ6o5n4&nN2U;8zI7<(k{t$VNVA)+ji3LROs0SbjsQ9bIHOu?okB`vU8O3)cg4U>Pg z4f`7J&VC=ruk^SSwle;3J2LLPZsZ3Wj2#u zoOvW5t?8Mj6*u_#GYZUBWgd(SUV%tyfGX9;ZdRU<*V|Te_3SLk(0!zyo|2MD__Z;Z znYkMeEa~Cf{!&8~c=?gUd{bH~uclUef2OL6JJ@s3qDRw2;es7e*a8-3_0rZUqT9%# zU?{;R?PqCTBn;}Z5$kvvK^YaTG5w*)&9vH(N z3H5TY&&_LYuv39JM{IF}ke`PcqZ&I8Cr~I<=G-RLQ6TcdiL)vyezs-plKf~NpXCWn zFH@6E;n+>QrhzpUd+l1%X2e|Iv$fVODGSx3n5S|Szfoth zMS8osTnsZaGqb)cFR!eu#Fk1Gw={TonCGaue(iVwF2*M(OS8v+azqO2D}N&HTsLo% z!v}EjgzBf&=F$D1-apG6$o|*O z%#dJ+lukHhrdzdjSEJ;8WbqevuX#-WYB z<>{wJI(L5o?Kz$8qf(>f5QvKxMFCEq!tYLQc9u-T*iBLEjW{D>&5wCM#qrnX(M6H7 zTP-(h+H#w&A~Y4o^wKunb%np8Yz}u zfvwCyBUM3G%OMF=qa$3pWJVSyQFd>x>E|r11aN;86ewSte-z4^6ML!fpw4fc|JKF& z*3NT_$S5P?_aX8#@6(?63W>&$QQv?ZqUXVKny8w^z6DV4f^_U-ok=a_1TeCQs^?4F zUmjy<`!A&dkoZ5R}%p}5ZOi?1D zcCNJQhFEp-LAwC}kJZ1mdAIMX((To&!1y{=hQ|X8U}E-4Sd)j~i(bhr&`Du4x=cgk z#1|kKD_9ExJuuro_#VCthy&Fh*k)(GsT4(CuF zth_dIu8<&JxUbY_dqoBx|I15E2Y5TR;p+k_sm%T*aVr1U{EffQm7C}fPbLsLot^&w fbosxOyfc;yd=Dj^t8N8);H84HBDU4I> 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 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 index e9f5fea27c705180eb716271f41b582e76dcbd90..e41c71e58a7b91ea0d6e68bbdb494ce058aa2fb6 100644 GIT binary patch literal 5484 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 delta 1668 zcmV-~27CGJDvAw|8Gi!+000UT_5c6?0S-`1R7L;)|5U~JDYo_jSDRJE`2GI>`u+b> z#Q0do`1}6<{Qdq#!1wR$2T#*AweE>Ub09v4>;QIg_I^_2LtK$20(D{zn_^HL*3Rj70 z%=tLH_b#{gK7W9-03t&#zyHMQ{FK}Jd(rva=I|w|=9#+Ihp*3ip1$;$>j3}&1vg1V zK~#9!?b~^C5-}JC@Pyrv-6dSEqJqT}#j9#dJ@GzT@B8}xU&J@bBI>f6w6en+CeI)3 z^kC*U?}X%OD8$Fd$H&LV$H&LV$H&LV#|K5~mLYf|Vt-;AMv#QX1a!Ta~6|O(zp+Uvg&Aa=+vBNz0Rs{AlWy-99x<(ohfpEcFpW=7o}_1 z>s&Ou*hMLxE-GxhC`Z*r>&|vj>R7LXbI`f|486`~uft__uGhI}_Fc5H63j7aDDIx{dZl^-u)&qKP!qC^RMF(PhHK^33eOuhHu{hoSl0 zKYv6olX!V%A;_nLc2Q<$rqPnk@(F#u5rszb!OdKo$uh%0J)j}CG3VDtWHIM%xMVXV zmTF#h81iB>r55Is`L$8KI@d+*%{=Nx+FXJ98L0PjFIu;rGnnfYn1R5Qnp<{Jq0M1v zX=X&F8g4GYHsMFm8dDG!y@wy0LzrDkP5n}RZ}&a^{lJ!qV}DSMg`_~iho-+ zYhFY`V=ZZN~BQ&RAHmG&4 z!(on%X00A@4(8Rri!ZBBU(}gmP=BAPwO^0~hnWE5<&o5gK6CEuqlcu2V{xeEaUGt9 zX7jznS5T?%9I4$fnuB2<)EHiTmPxeQU>*)T8~uk^)KEOM+F)+AI>Y`eP$PIFuu==9 zE-`OPbnDbc|0)^xP^m`+=GW8BO)yJ!f5Qc}G(Wj}SEB>1?)30sXn)??nxVBC z)wA(BsB`AW54N{|qmikJR*%x0c`{LGsSfa|NK61pYH(r-UQ4_JXd!Rsz)=kL{GMc5{h13 z8)fF5CzHEDM>+FqY)$pdM}M_8rrW{O4m<%Dt1&gzy8K(_+x-vIN$cs;K#LctaW&OA zAuk_42tYgpa$&Njilse`1^L+zfE<)2YpPh<)0mJ;*IFF|TA%1xX3fZ$kxPfoYE=Ci z)BrMgp=;8Y9L43*j@*RFlXvO-jQ`tkm#McyC%N^n#@P}`4hjO2}V z1RP0E%rxTfpJbnekUwBp-VB(r604xuJ$!t8e0+R-e0+R-e0+R-^7#e&>dm?Lo++vT O0000`I diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..970d5a5bbaf5b072ef2bc8de4b0657f32905732f GIT binary patch literal 1790 zcmVMtQgZ^#h3;w#xz(lrooCa4OWb4uwqO@PYlN}4u%2t zdeRvu2q8cur5mD)nMd&6b)N%30ES*|a^nX9QntuzqKb5bbTJA;N*n=D%;_^#Zz*w# z7S*3)IE5kR^cH}+2QU~-3P%4!& zS#Lu_!*{!PS5{O|Pm=yRAu)Kv29hLQmb*wK5)8x6o<76l@hU1S{QUj3O{E<^ymF=c z!Rwr{MQ1S4>Py^)*ULio?RgpC@KCb0*h{tGht+?Ce&!xh>=K|GaTS6A2F4U}0f_ z5DE+oOi4*W2pv0~UR3y-rKRP$bLTGPGBz>((AHLS(R}{=xpU^~i`Cw)rA0;R(RNK8oJa18SEf6YFft!;V7j=1#W$F(1o%BOR^rl!Wp$w^g~aeU#zg%>Yg zG%_*@4hl~Gc9(8$Ha0dGrh4hQIk|j3|LD=935f}+ekK*8iva*hl3iV00MOCVasK@I zxY#%=E3W2JNN5N`)ZXv+Y}>ZY+S=M>`Es#X{J81}w{CTHb)7fgJT^AAprF80;3@0r ziP;>Z+iZV-zouEecL|h|(q1YpEv>GuUb=LtiHQmA#_sO!r!NHqxqNWs2A?IStpNl< zEOB&12uUQZ>R~g@$HzyZP^2A6Td-h(kMCz;VPP7v2Y)|ENK8mOawIM;&fD7?!|~)@ z$@TZ@b({Ub#%A@Z)!K)Mi;D*a28QzBaLmli0AS*Ti4Kb$csw3L==vYmM@$dYOY-x} z)W~82fq?fBk01y$GqYKNqYJ*Zy#^3bzbK4%p02; z0pM7AxF#c8YkTeL)dL3((wdEojEsnk#Gbr6b93|N=Aos<%F3##u?cVt)bEre z$+Wbztn6(4+{VbrVn#+r)2B~I2=&QiWo2cFi3yj>%5V&i+7yN3cx`R1%Q6>)prftb z*wi#CDk^?wye8M^=&$bHz595oBqt{;l=N|*mzP&|xeT6^ChaIfm}<;tW@b7raddX( z_w-0TJv~cGO2%#VOtFlNjPT*r69Am~&Q@G20NA2N8xIZ&5+#X9l2p&hc1_luosaaJ zEf$M^JalNpC$_e>Zjaqg5JW+K{)!cDITv!4EOGqn&YhPmrl~wMHim`*p!&M{a-E^S z-fO+-?Aflau7!n#Lw~EO+vECjpj0Y@f`V?|te!Dr#>o>Woj&9Bb5md!B-f1pp)F)~)M06+gplMJO& zX>MMgZv3Z=3=a>%I!{kSL&N_5{_!P2BP%QGb6?-JYu0{~lyv6jv*T-oF1By)zRZk_ z_Kpr(Jij2{!NI<#w^t^U>BfJ#bjiWNUVWsX+J*JXWcK#<0NCx}TLGa^C=!Y8-@mV) z!KtiMC8Z^_ml7BlXlcm>K=Q%CtgNi^Yu9>*KQ}5eYRc3pZEbC16>EObtl8<%xYy8d zuc1LdPAU|YRaM%L6h-NN)S@YsBhspd7VMTvE2}Cszjt(Y*45R~Zn#r7N?oCg8P0r% zGmSIOx&NA=FbpY_eT`DxAYIJZ*Lv!zISAn}%F6x*K~R`NGC0a%4jK|-(gEC{0Yd5- zuFFWfdyG;`F~*ETQ3#E;yT<{kdRA5Ap1m@nF<8H{dl0C)3(-aN&OC}+`fIyXhd#_X z%u!97K?Ut#LhqESRwAW;8D%8@pMOfcEwExtgB4>MtQgZ^#h3;w#xz(lrooCa4OWb4 guwqPu6=NFz0K4nPb@EH!i2wiq07*qoM6N<$g54T!MgRZ+ literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..845665b9f98ca5ecc1e0b8d3fbaa854ba286643a GIT binary patch literal 4182 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 Y6u?!77(}DKE%O50(LOFuPyxyR0(|kjasU7T delta 749 zcmVg;Ps8|O$@u8^{Z_{KM!@$5TAfS6_e#O{MZfpz`2O`0$7~@NRr(1{THzH08y3x{{PYM{eL;T_A9^tcF_4Sxb`8l z_9V3RD6;a(-0A^Pjsi!1?)d#Ap4Tk3^CP0(07;VpJ7@tgQ}z4)*zx@&yZwC9`DV-b z0ZobH_5IB4{KxD3;p_6%|f=bdFhu+F!zMZ2UFj;GUKX7tI;hv3{q~!*pMj75WP_c}> z6)IWvg5_yyg<9Op()eD1hWC19M@?_9_MHec{Z8n3FMs~w_u?Av_yNBmRxVYrpi(M% zFMP21g+hmocQp3ay*Su=qM6He)*HaaTg$E^sym`(t%s3A)x!M+vfjXUBEpK6X9%iU zU!u9jj3(-$dM~sJ%Liy#?|+!6IY#MTau#O6vVj`yh_7%Ni!?!VS+MPTO(_fG+1<#p zqu;A#i+_(N%CmVnYvb>#nA{>Q%3E`Ds7<~jZMywn@h2t>G-LrYy7?Dj{aZqhQd6tzX%(Trn+ z)HNF}%-F{rr=m*0{=a;s#YDL00000NkvXXu0mjfxH_29 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png index 8953cba09064923c5daf2d37e7c3c836ccdd794b..7f89976aa527843531da31808aed2d79b9f47602 100644 GIT binary patch literal 4476 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 delta 1217 zcmV;y1U~!xBFYJn8Gi!+001u>&=UXv0SHh`R7L;)|5U~JDYo_jSDRDC`1<|-SjPDL z{{Q{{{{H{}09Kk-#rR9Y_viNgVafPO!S|ls`uzR=MZfp^{QU=8od8La1X`Tr_Wmff z_5e$ivgQ1@=KMy$_g9a+`TPAle6cOJ_Fc#L7qIpvwDkd1mw$fK`6IOUD75rX!}mad zv(fMTE4=(Nx%L54lL1hVF1YpqNrC`FddBPg#_Ietx%Lrkq5wX00X1L{S%Cm9QY*av z#_Rh5PKy9KYTWbvz3BX9%J>0Hi1+#X{rLA{m%$Kamk?i!03AC38#Yrxs)5QTeTVRiEmz~MKK1WAjCw(c-JK6eox;2O)?`?TG`AHia671e^vgmp!llK zp|=5sVHk#C7=~epA~VAf-~%aPC=%Qw01h8mnSZ|p?tc*y?iZ$PR7_ceEIapF3KB14K0Pog?7wtd+^xgUCa_GVmlD z<^nU>AU_Yn-JU?NFdu|wf^bTCNf-wSBYVZltDdvGBln-YrbeGvJ!|s{#`gjN@yAMb zM6cjFz0eFECCsc|_8hTa3*9-JQGehksdoVP^K4m?&wpA~+|b%{EP5D-+7h)6CE; z*{>BP=GRR3Ea}xyV*bqry{l^J=0#DaC4ej;1qs8_by?H6Tr@7hl>UKNZt)^B&yl;)&oqzLg zcfZxpE?3k%_iTOVywh%`XVN-E#COl+($9{v(pqSQcrz=)>G!!3HeNxbXGM@})1|9g zG4*@(OBaMvY0P0_TfMFPh fVHk#CZX3S=^^2mI>Ux-D00000NkvXXu0mjfcl(40 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png index 0467bf12aa4d28f374bb26596605a46dcbb3e7c8..fabcfc5cf3ff1af3900ade19ad7b9e1ca977d74e 100644 GIT binary patch literal 4996 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 delta 1410 zcmV-|1%3L2CyEP@8Gi!+002YCyxsr+0P|2xR7L;)|5U~JDYo_jSDRDB`2GI>{Qds= z{r_0T`1}6fwc-8!#-TGX}_?g)CZq4{k!uZ_g@DrQdoW0kI zu+W69&uN^)W`CK&06mMNcYMVF00dG=L_t(|+U?wHQxh>12H+Dm+1+fh+IF>G0SjJM zkQQre1x4|G*Z==(Ot&kCnUrL4I(rf(ucITwmuHf^hXiJTkdTm&kdTm&kdTm&kdP`e zsgWG0BcWCVkVZ&2dUwN`cgM8QJb`Z7Z~e<&Yj2(}>VI$fQI%^ugM`#6By?GeadWcu z0gy9!D`m!H>Bd!JW(@avE8`|5XX(0PN}!8K>`dkavs;rHL+wy96QGNT=S@#7%xtlm zIW!++@*2zm-Py#Zr`DzqsLm!b{iskFNULSqE9A>SqHem>o31A%XL>S_5?=;V_i_y+ z(xxXhnt#r-l1Y8_*h`r?8Tr|)(RAiO)4jQR`13X0mx07C&p@KBP_2s``KEhv^|*8c z$$_T(v6^1Ig=#R}sE{vjA?ErGDZGUsyoJuWdJMc7Nb1^KF)-u<7q zPy$=;)0>vuWuK2hQhswLf!9yg`88u&eBbR8uhod?Nw09AXH}-#qOLLxeT2%C;R)QQ$Za#qp~cM&YVmS4i-*Fpd!cC zBXc?(4wcg>sHmXGd^VdE<5QX{Kyz$;$sCPl(_*-P2Iw?p^C6J2ZC!+UppiK6&y3Kmbv&O!oYF34$0Z;QO!J zOY#!`qyGH<3Pd}Pt@q*A0V=3SVtWKRR8d8Z&@)3qLPA19LPA19LPEUCUoZo%k(yku QW&i*H07*qoM6N<$f{b;{;s5{u diff --git a/lib/models/cart.dart b/lib/models/cart.dart index 7361513..19eafa4 100644 --- a/lib/models/cart.dart +++ b/lib/models/cart.dart @@ -97,13 +97,48 @@ class Cart { } double get subtotal { - return lineItems - .where((item) => !item.isDeleted && item.parentOrderLineItemId == 0) - .fold(0.0, (sum, item) => sum + (item.price * item.quantity)); + // Sum all non-deleted line items (root items and modifiers) + // Root items have their base price, modifiers have their add-on prices + // Modifier prices are multiplied by the root item's quantity + double total = 0.0; + + // First, get all root items and their prices + final rootItems = lineItems.where((item) => !item.isDeleted && item.parentOrderLineItemId == 0); + for (final rootItem in rootItems) { + total += rootItem.price * rootItem.quantity; + + // Add all modifier prices for this root item (recursively) + total += _sumModifierPrices(rootItem.orderLineItemId, rootItem.quantity); + } + + return total; + } + + /// Recursively sum modifier prices for a parent line item + double _sumModifierPrices(int parentOrderLineItemId, int rootQuantity) { + double total = 0.0; + final children = lineItems.where( + (item) => !item.isDeleted && item.parentOrderLineItemId == parentOrderLineItemId + ); + + for (final child in children) { + // Modifier price is multiplied by root item quantity + total += child.price * rootQuantity; + // Recursively add grandchildren modifier prices + total += _sumModifierPrices(child.orderLineItemId, rootQuantity); + } + + return total; } // Only include delivery fee for delivery orders (orderTypeId == 3) - double get total => subtotal + (orderTypeId == 3 ? deliveryFee : 0); + // Sales tax rate (8.25% for California - can be made configurable per business later) + static const double taxRate = 0.0825; + + // Calculate sales tax on subtotal + double get tax => subtotal * taxRate; + + double get total => subtotal + tax + (orderTypeId == 3 ? deliveryFee : 0); int get itemCount { return lineItems diff --git a/lib/screens/beacon_scan_screen.dart b/lib/screens/beacon_scan_screen.dart index c4d8e00..385aaab 100644 --- a/lib/screens/beacon_scan_screen.dart +++ b/lib/screens/beacon_scan_screen.dart @@ -114,7 +114,7 @@ class _BeaconScanScreenState extends State with SingleTickerPr // Brief delay to let Bluetooth subsystem fully initialize // Without this, the first scan cycle may complete immediately with no results - await Future.delayed(const Duration(milliseconds: 500)); + await Future.delayed(const Duration(milliseconds: 1500)); // Create regions for all known UUIDs final regions = _uuidToBeaconId.keys.map((uuid) { @@ -131,10 +131,11 @@ class _BeaconScanScreenState extends State with SingleTickerPr return; } - // Perform 5 scans of 2 seconds each to increase chance of detecting all beacons - print('[BeaconScan] 🔄 Starting 5 scan cycles of 2 seconds each'); + // Perform up to 5 scans of 2 seconds each, but exit early if readings are consistent + print('[BeaconScan] 🔄 Starting scan cycles (max 5 x 2 seconds, early exit if stable)'); - for (int scanCycle = 1; scanCycle <= 5; scanCycle++) { + bool earlyExit = false; + for (int scanCycle = 1; scanCycle <= 3; scanCycle++) { // Update status message for each cycle if (mounted) { setState(() => _status = _scanMessages[scanCycle - 1]); @@ -165,16 +166,25 @@ class _BeaconScanScreenState extends State with SingleTickerPr }); // Wait 2 seconds for this scan cycle to collect beacon data - await Future.delayed(const Duration(seconds: 2)); + await Future.delayed(const Duration(milliseconds: 1500)); await subscription.cancel(); + // After 3 cycles, check if we can exit early + if (scanCycle >= 2 && _beaconRssiSamples.isNotEmpty) { + if (_canExitEarly()) { + print('[BeaconScan] ⚡ Early exit after $scanCycle cycles - readings are stable!'); + earlyExit = true; + break; + } + } + // Short pause between scan cycles - if (scanCycle < 5) { - await Future.delayed(const Duration(milliseconds: 200)); + if (scanCycle < 3) { + await Future.delayed(const Duration(milliseconds: 1500)); } } - print('[BeaconScan] âœ”ī¸ All scan cycles complete'); + print('[BeaconScan] âœ”ī¸ Scan complete${earlyExit ? ' (early exit)' : ''}'); if (!mounted) return; @@ -291,11 +301,65 @@ class _BeaconScanScreenState extends State with SingleTickerPr } } + /// Check if we can exit early based on stable readings + /// Returns true if all detected beacons have consistent RSSI across scans + bool _canExitEarly() { + if (_beaconRssiSamples.isEmpty) return false; + + // Need at least one beacon with 3+ readings + bool hasEnoughSamples = _beaconRssiSamples.values.any((samples) => samples.length >= 2); + if (!hasEnoughSamples) return false; + + // Check if there's a clear winner (one beacon significantly stronger than others) + // or if all beacons have low variance in their readings + for (final entry in _beaconRssiSamples.entries) { + final samples = entry.value; + if (samples.length < 3) continue; + + // Calculate variance + final avg = samples.reduce((a, b) => a + b) / samples.length; + final variance = samples.map((r) => (r - avg) * (r - avg)).reduce((a, b) => a + b) / samples.length; + + // If variance is high (readings fluctuating a lot), keep scanning + // Variance > 50 means RSSI is jumping around too much + if (variance > 50) { + print('[BeaconScan] âŗ Beacon ${_uuidToBeaconId[entry.key]} has high variance (${variance.toStringAsFixed(1)}), continuing scan'); + return false; + } + } + + // If we have multiple beacons, check if there's a clear strongest one + if (_beaconRssiSamples.length > 1) { + final avgRssis = {}; + for (final entry in _beaconRssiSamples.entries) { + final samples = entry.value; + if (samples.isNotEmpty) { + avgRssis[entry.key] = samples.reduce((a, b) => a + b) / samples.length; + } + } + + // Sort by RSSI descending + final sorted = avgRssis.entries.toList()..sort((a, b) => b.value.compareTo(a.value)); + + // If top two beacons are within 5 dB, keep scanning for more clarity + if (sorted.length >= 2) { + final diff = sorted[0].value - sorted[1].value; + if (diff < 5) { + print('[BeaconScan] âŗ Top 2 beacons are close (diff=${diff.toStringAsFixed(1)} dB), continuing scan'); + return false; + } + } + } + + print('[BeaconScan] ✓ Readings are stable, can exit early'); + return true; + } + BeaconScore? _findBestBeacon(Map scores) { if (scores.isEmpty) return null; // Filter beacons that meet minimum requirements - const minDetections = 3; // Must be seen at least 3 times + const minDetections = 2; // Must be seen at least 3 times const minRssi = -85; // Minimum average RSSI (beacons further than ~10m will be weaker) final qualified = scores.values.where((score) { @@ -386,6 +450,21 @@ class _BeaconScanScreenState extends State with SingleTickerPr child: const Text('Open Settings'), ), ], + + // Always show manual selection option during or after scan + if (_permissionsGranted) ...[ + const SizedBox(height: 32), + TextButton( + onPressed: _navigateToRestaurantSelect, + child: const Text( + 'Select Restaurant Manually', + style: TextStyle( + color: Colors.white70, + fontSize: 14, + ), + ), + ), + ], ], ), ), diff --git a/lib/screens/cart_view_screen.dart b/lib/screens/cart_view_screen.dart index 99580a5..d5caf0f 100644 --- a/lib/screens/cart_view_screen.dart +++ b/lib/screens/cart_view_screen.dart @@ -315,6 +315,9 @@ class _CartViewScreenState extends State { // Find ALL modifiers (recursively) and build breadcrumb paths for leaf items only final modifierPaths = _buildModifierPaths(rootItem.orderLineItemId); + // Calculate total price for this line item (root + all modifiers) + final lineItemTotal = _calculateLineItemTotal(rootItem); + print('[Cart] Found ${modifierPaths.length} modifier paths for this root item'); return Card( @@ -367,7 +370,7 @@ class _CartViewScreenState extends State { ), const Spacer(), Text( - "\$${rootItem.price.toStringAsFixed(2)}", + "\$${lineItemTotal.toStringAsFixed(2)}", style: const TextStyle( fontSize: 16, fontWeight: FontWeight.bold, @@ -381,7 +384,32 @@ class _CartViewScreenState extends State { ); } + /// Calculate the total price for a root item including all its modifiers + double _calculateLineItemTotal(OrderLineItem rootItem) { + double total = rootItem.price * rootItem.quantity; + total += _sumModifierPrices(rootItem.orderLineItemId, rootItem.quantity); + return total; + } + + /// Recursively sum modifier prices for a parent line item + double _sumModifierPrices(int parentOrderLineItemId, int rootQuantity) { + double total = 0.0; + final children = _cart!.lineItems.where( + (item) => !item.isDeleted && item.parentOrderLineItemId == parentOrderLineItemId + ); + + for (final child in children) { + // Modifier price is multiplied by root item quantity + total += child.price * rootQuantity; + // Recursively add grandchildren modifier prices + total += _sumModifierPrices(child.orderLineItemId, rootQuantity); + } + + return total; + } + /// Build breadcrumb paths for all leaf modifiers + /// Excludes default items - they don't need to be shown in the cart List _buildModifierPaths(int rootOrderLineItemId) { final paths = []; @@ -394,13 +422,19 @@ class _CartViewScreenState extends State { // Recursively collect leaf items with their paths void collectLeafPaths(OrderLineItem item, List currentPath) { + final menuItem = _menuItemsById[item.itemId]; + + // Skip default items - they don't need to be repeated in the cart + if (menuItem?.isCheckedByDefault == true) { + return; + } + final children = _cart!.lineItems .where((child) => child.parentOrderLineItemId == item.orderLineItemId && !child.isDeleted) .toList(); - final menuItem = _menuItemsById[item.itemId]; final itemName = menuItem?.name ?? "Item #${item.itemId}"; if (children.isEmpty) { @@ -486,6 +520,21 @@ class _CartViewScreenState extends State { ), ], ), + // Sales tax + const SizedBox(height: 8), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + const Text( + "Tax (8.25%)", + style: TextStyle(fontSize: 16), + ), + Text( + "\$${_cart!.tax.toStringAsFixed(2)}", + style: const TextStyle(fontSize: 16), + ), + ], + ), // Only show delivery fee for delivery orders (OrderTypeID = 3) if (_cart!.deliveryFee > 0 && _cart!.orderTypeId == 3) ...[ const SizedBox(height: 8), diff --git a/lib/screens/menu_browse_screen.dart b/lib/screens/menu_browse_screen.dart index 5324792..8648fb2 100644 --- a/lib/screens/menu_browse_screen.dart +++ b/lib/screens/menu_browse_screen.dart @@ -80,16 +80,40 @@ class _MenuBrowseScreenState extends State { _itemsByCategory.clear(); _itemsByParent.clear(); + print('[MenuBrowse] _organizeItems: ${_allItems.length} total items'); + + // First pass: identify category items (root items where itemId == categoryId) + // These are the category headers themselves, NOT menu items + final categoryItemIds = {}; + for (final item in _allItems) { + if (item.isRootItem && item.itemId == item.categoryId) { + categoryItemIds.add(item.itemId); + // Just register the category key (empty list for now) + _itemsByCategory.putIfAbsent(item.itemId, () => []); + print('[MenuBrowse] Category found: ${item.name} (ID=${item.itemId})'); + } + } + + print('[MenuBrowse] Found ${categoryItemIds.length} categories: $categoryItemIds'); + + // Second pass: organize menu items and modifiers for (final item in _allItems) { // Skip inactive items if (!item.isActive) continue; - if (item.isRootItem) { - _itemsByCategory.putIfAbsent(item.categoryId, () => []).add(item); + // Skip category header items (they're not menu items to display) + if (categoryItemIds.contains(item.itemId)) continue; + + // Check if parent is a category + if (categoryItemIds.contains(item.parentItemId)) { + // Direct child of a category = menu item (goes in _itemsByCategory) + _itemsByCategory.putIfAbsent(item.parentItemId, () => []).add(item); + print('[MenuBrowse] Menu item: ${item.name} -> category ${item.parentItemId}'); } else { - // Prevent an item from being its own child + // Child of a menu item = modifier (goes in _itemsByParent) if (item.itemId != item.parentItemId) { _itemsByParent.putIfAbsent(item.parentItemId, () => []).add(item); + print('[MenuBrowse] Modifier: ${item.name} -> parent ${item.parentItemId}'); } } } @@ -103,6 +127,11 @@ class _MenuBrowseScreenState extends State { for (final list in _itemsByParent.values) { list.sort((a, b) => a.sortOrder.compareTo(b.sortOrder)); } + + // Debug: print final counts + for (final entry in _itemsByCategory.entries) { + print('[MenuBrowse] Category ${entry.key}: ${entry.value.length} items'); + } } List _getUniqueCategoryIds() { @@ -386,6 +415,56 @@ class _MenuBrowseScreenState extends State { ); } + /// Builds category background - tries image first, falls back to styled text + Widget _buildCategoryBackground(int categoryId, String categoryName) { + return Image.network( + "$_imageBaseUrl/categories/$categoryId.png", + fit: BoxFit.cover, + semanticLabel: categoryName, + errorBuilder: (context, error, stackTrace) { + return Image.network( + "$_imageBaseUrl/categories/$categoryId.jpg", + fit: BoxFit.cover, + semanticLabel: categoryName, + errorBuilder: (context, error, stackTrace) { + // No image - show large styled category name + return Container( + decoration: BoxDecoration( + gradient: LinearGradient( + begin: Alignment.topLeft, + end: Alignment.bottomRight, + colors: [ + Theme.of(context).colorScheme.primary, + Theme.of(context).colorScheme.tertiary, + ], + ), + ), + alignment: Alignment.center, + padding: const EdgeInsets.symmetric(horizontal: 24), + child: Text( + categoryName, + textAlign: TextAlign.center, + style: const TextStyle( + fontSize: 28, + fontWeight: FontWeight.bold, + color: Colors.white, + letterSpacing: 1.2, + shadows: [ + Shadow( + offset: Offset(2, 2), + blurRadius: 4, + color: Colors.black54, + ), + ], + ), + ), + ); + }, + ); + }, + ); + } + Widget _buildCategoryHeader(int categoryId, String categoryName) { final isExpanded = _expandedCategoryId == categoryId; @@ -408,33 +487,8 @@ class _MenuBrowseScreenState extends State { child: Stack( fit: StackFit.expand, children: [ - // Category image background - Image.network( - "$_imageBaseUrl/categories/$categoryId.png", - fit: BoxFit.cover, - semanticLabel: categoryName, - errorBuilder: (context, error, stackTrace) { - return Image.network( - "$_imageBaseUrl/categories/$categoryId.jpg", - fit: BoxFit.cover, - semanticLabel: categoryName, - errorBuilder: (context, error, stackTrace) { - // No image - show category name as fallback - return Container( - color: Theme.of(context).colorScheme.primaryContainer, - alignment: Alignment.center, - child: Text( - categoryName, - style: Theme.of(context).textTheme.headlineSmall?.copyWith( - fontWeight: FontWeight.bold, - color: Theme.of(context).colorScheme.onPrimaryContainer, - ), - ), - ); - }, - ); - }, - ), + // Category image background or styled text fallback + _buildCategoryBackground(categoryId, categoryName), // Top edge gradient Positioned( top: 0, @@ -473,27 +527,6 @@ class _MenuBrowseScreenState extends State { ), ), ), - // Expand/collapse indicator - Positioned( - right: 16, - bottom: 12, - child: AnimatedRotation( - turns: isExpanded ? 0.5 : 0, - duration: const Duration(milliseconds: 300), - child: Container( - padding: const EdgeInsets.all(4), - decoration: BoxDecoration( - color: Colors.black.withAlpha(100), - shape: BoxShape.circle, - ), - child: const Icon( - Icons.keyboard_arrow_down, - color: Colors.white, - size: 24, - ), - ), - ), - ), ], ), ), @@ -836,18 +869,17 @@ class _ItemCustomizationSheetState extends State<_ItemCustomizationSheet> { _initializeDefaults(widget.item.itemId); } - /// Recursively initialize default selections + /// Recursively initialize default selections for the ENTIRE tree + /// This ensures defaults are pre-selected even for nested items void _initializeDefaults(int parentId) { final children = widget.itemsByParent[parentId] ?? []; - print('[Customization] _initializeDefaults for parentId=$parentId, found ${children.length} children'); for (final child in children) { - print('[Customization] Child ${child.name} (ID=${child.itemId}): isCheckedByDefault=${child.isCheckedByDefault}'); if (child.isCheckedByDefault) { _selectedItemIds.add(child.itemId); - _defaultItemIds.add(child.itemId); // Remember this was a default - print('[Customization] -> Added to defaults and selected'); - _initializeDefaults(child.itemId); + _defaultItemIds.add(child.itemId); } + // Always recurse into all children to find nested defaults + _initializeDefaults(child.itemId); } } @@ -891,10 +923,22 @@ class _ItemCustomizationSheetState extends State<_ItemCustomizationSheet> { return false; } - // Recursively validate selected children - for (final child in selectedChildren) { - if (!validateRecursive(child.itemId, child)) { - return false; + // Recursively validate ALL children that are modifier groups (have their own children) + // This ensures we check required selections in nested modifier groups + for (final child in children) { + final hasGrandchildren = widget.itemsByParent.containsKey(child.itemId) && + (widget.itemsByParent[child.itemId]?.isNotEmpty ?? false); + + if (hasGrandchildren) { + // This is a modifier group - always validate it + if (!validateRecursive(child.itemId, child)) { + return false; + } + } else if (_selectedItemIds.contains(child.itemId)) { + // This is a leaf option that's selected - validate its children (if any) + if (!validateRecursive(child.itemId, child)) { + return false; + } } } diff --git a/lib/screens/splash_screen.dart b/lib/screens/splash_screen.dart index 308c317..4b47ccd 100644 --- a/lib/screens/splash_screen.dart +++ b/lib/screens/splash_screen.dart @@ -1,11 +1,14 @@ import "dart:async"; +import "dart:math"; import "package:flutter/material.dart"; import "package:provider/provider.dart"; +import "package:dchs_flutter_beacon/dchs_flutter_beacon.dart"; import "../app/app_router.dart"; import "../app/app_state.dart"; import "../services/api.dart"; import "../services/auth_storage.dart"; +import "../services/beacon_permissions.dart"; class SplashScreen extends StatefulWidget { const SplashScreen({super.key}); @@ -14,60 +17,397 @@ class SplashScreen extends StatefulWidget { State createState() => _SplashScreenState(); } -class _SplashScreenState extends State { - Timer? _timer; +class _SplashScreenState extends State with TickerProviderStateMixin { + // Bouncing logo animation + late AnimationController _bounceController; + double _x = 100; + double _y = 100; + double _dx = 2.5; + double _dy = 2.0; + Color _logoColor = Colors.white; + final Random _random = Random(); + + // Rotating status text + Timer? _statusTimer; + int _statusIndex = 0; + static const List _statusPhrases = [ + "scanning...", + "listening...", + "searching...", + "locating...", + "analyzing...", + "connecting...", + ]; + + // Beacon scanning state + Map _uuidToBeaconId = {}; + final Map> _beaconRssiSamples = {}; + final Map _beaconDetectionCount = {}; + bool _scanComplete = false; + BeaconResult? _bestBeacon; + + static const List _colors = [ + Colors.white, + Colors.red, + Colors.green, + Colors.blue, + Colors.yellow, + Colors.purple, + Colors.cyan, + Colors.orange, + ]; @override void initState() { super.initState(); - print('[Splash] 🚀 SplashScreen initState called'); + print('[Splash] 🚀 Starting with bouncing logo + beacon scan'); - _timer = Timer(const Duration(milliseconds: 2400), () async { - print('[Splash] ⏰ Timer fired, starting navigation logic'); - if (!mounted) return; + // Start bouncing animation + _bounceController = AnimationController( + vsync: this, + duration: const Duration(milliseconds: 16), // ~60fps + )..addListener(_updatePosition)..repeat(); - // Check for saved authentication credentials - print('[Splash] 🔐 Checking for saved auth credentials...'); - final credentials = await AuthStorage.loadAuth(); - if (credentials != null) { - print('[Splash] ✅ Found saved credentials: UserID=${credentials.userId}'); - // Restore authentication state - Api.setAuthToken(credentials.token); - final appState = context.read(); - appState.setUserId(credentials.userId); - } else { - print('[Splash] â„šī¸ No saved credentials found'); + // Start rotating status text (randomized) + _statusTimer = Timer.periodic(const Duration(milliseconds: 1600), (_) { + if (mounted) { + setState(() { + int newIndex; + do { + newIndex = _random.nextInt(_statusPhrases.length); + } while (newIndex == _statusIndex && _statusPhrases.length > 1); + _statusIndex = newIndex; + }); + } + }); + + // Start the initialization flow + _initializeApp(); + } + + void _updatePosition() { + if (!mounted) return; + + final size = MediaQuery.of(context).size; + const logoWidth = 180.0; + const logoHeight = 60.0; + + setState(() { + _x += _dx; + _y += _dy; + + // Bounce off edges and change color + if (_x <= 0 || _x >= size.width - logoWidth) { + _dx = -_dx; + _changeColor(); + } + if (_y <= 0 || _y >= size.height - logoHeight) { + _dy = -_dy; + _changeColor(); } - if (!mounted) return; - - // Always go to beacon scan first - allows browsing without login - print('[Splash] 📡 Navigating to beacon scan screen'); - Navigator.of(context).pushReplacementNamed(AppRoutes.beaconScan); + // Keep in bounds + _x = _x.clamp(0, size.width - logoWidth); + _y = _y.clamp(0, size.height - logoHeight); }); } + void _changeColor() { + final newColor = _colors[_random.nextInt(_colors.length)]; + if (newColor != _logoColor) { + _logoColor = newColor; + } + } + + Future _initializeApp() async { + // Check for saved auth credentials + print('[Splash] 🔐 Checking for saved auth credentials...'); + final credentials = await AuthStorage.loadAuth(); + if (credentials != null && mounted) { + print('[Splash] ✅ Found saved credentials: UserID=${credentials.userId}'); + Api.setAuthToken(credentials.token); + final appState = context.read(); + appState.setUserId(credentials.userId); + } + + // Start beacon scanning in background + await _performBeaconScan(); + + // Navigate based on results + if (!mounted) return; + _navigateToNextScreen(); + } + + Future _performBeaconScan() async { + print('[Splash] 📡 Starting beacon scan...'); + + // Request permissions + final granted = await BeaconPermissions.requestPermissions(); + if (!granted) { + print('[Splash] ❌ Permissions denied'); + _scanComplete = true; + return; + } + + // Fetch beacon list from server + try { + _uuidToBeaconId = await Api.listAllBeacons(); + print('[Splash] Loaded ${_uuidToBeaconId.length} beacons from database'); + } catch (e) { + print('[Splash] Error loading beacons: $e'); + _scanComplete = true; + return; + } + + if (_uuidToBeaconId.isEmpty) { + print('[Splash] No beacons in database'); + _scanComplete = true; + return; + } + + // Initialize beacon scanning + try { + await flutterBeacon.initializeScanning; + await Future.delayed(const Duration(milliseconds: 500)); + + // Create regions for all known UUIDs + final regions = _uuidToBeaconId.keys.map((uuid) { + final formattedUUID = '${uuid.substring(0, 8)}-${uuid.substring(8, 12)}-${uuid.substring(12, 16)}-${uuid.substring(16, 20)}-${uuid.substring(20)}'; + return Region(identifier: uuid, proximityUUID: formattedUUID); + }).toList(); + + // Perform scan cycles + for (int scanCycle = 1; scanCycle <= 5; scanCycle++) { + print('[Splash] ----- Scan cycle $scanCycle/5 -----'); + + StreamSubscription? subscription; + subscription = flutterBeacon.ranging(regions).listen((result) { + for (var beacon in result.beacons) { + final uuid = beacon.proximityUUID.toUpperCase().replaceAll('-', ''); + final rssi = beacon.rssi; + + if (_uuidToBeaconId.containsKey(uuid)) { + _beaconRssiSamples.putIfAbsent(uuid, () => []).add(rssi); + _beaconDetectionCount[uuid] = (_beaconDetectionCount[uuid] ?? 0) + 1; + print('[Splash] ✅ Beacon ${_uuidToBeaconId[uuid]}, RSSI=$rssi'); + } + } + }); + + await Future.delayed(const Duration(seconds: 2)); + await subscription.cancel(); + + // Check for early exit after 3 cycles + if (scanCycle >= 3 && _beaconRssiSamples.isNotEmpty && _canExitEarly()) { + print('[Splash] ⚡ Early exit - stable readings'); + break; + } + + if (scanCycle < 5) { + await Future.delayed(const Duration(milliseconds: 200)); + } + } + + // Find best beacon + _bestBeacon = _findBestBeacon(); + print('[Splash] đŸŽ¯ Best beacon: ${_bestBeacon?.beaconId ?? "none"}'); + + } catch (e) { + print('[Splash] Scan error: $e'); + } + + _scanComplete = true; + } + + bool _canExitEarly() { + if (_beaconRssiSamples.isEmpty) return false; + + bool hasEnoughSamples = _beaconRssiSamples.values.any((s) => s.length >= 3); + if (!hasEnoughSamples) return false; + + for (final entry in _beaconRssiSamples.entries) { + final samples = entry.value; + if (samples.length < 3) continue; + + final avg = samples.reduce((a, b) => a + b) / samples.length; + final variance = samples.map((r) => (r - avg) * (r - avg)).reduce((a, b) => a + b) / samples.length; + + if (variance > 50) return false; + } + + if (_beaconRssiSamples.length > 1) { + final avgRssis = {}; + for (final entry in _beaconRssiSamples.entries) { + if (entry.value.isNotEmpty) { + avgRssis[entry.key] = entry.value.reduce((a, b) => a + b) / entry.value.length; + } + } + final sorted = avgRssis.entries.toList()..sort((a, b) => b.value.compareTo(a.value)); + if (sorted.length >= 2 && (sorted[0].value - sorted[1].value) < 5) { + return false; + } + } + + return true; + } + + BeaconResult? _findBestBeacon() { + if (_beaconRssiSamples.isEmpty) return null; + + String? bestUuid; + double bestAvgRssi = -999; + + for (final entry in _beaconRssiSamples.entries) { + final samples = entry.value; + final detections = _beaconDetectionCount[entry.key] ?? 0; + + if (detections < 3) continue; + + final avgRssi = samples.reduce((a, b) => a + b) / samples.length; + if (avgRssi > bestAvgRssi && avgRssi >= -85) { + bestAvgRssi = avgRssi; + bestUuid = entry.key; + } + } + + if (bestUuid != null) { + return BeaconResult( + uuid: bestUuid, + beaconId: _uuidToBeaconId[bestUuid]!, + avgRssi: bestAvgRssi, + ); + } + + // Fall back to strongest signal even if doesn't meet threshold + if (_beaconRssiSamples.isNotEmpty) { + for (final entry in _beaconRssiSamples.entries) { + final samples = entry.value; + if (samples.isEmpty) continue; + final avgRssi = samples.reduce((a, b) => a + b) / samples.length; + if (avgRssi > bestAvgRssi) { + bestAvgRssi = avgRssi; + bestUuid = entry.key; + } + } + if (bestUuid != null) { + return BeaconResult( + uuid: bestUuid, + beaconId: _uuidToBeaconId[bestUuid]!, + avgRssi: bestAvgRssi, + ); + } + } + + return null; + } + + Future _navigateToNextScreen() async { + if (!mounted) return; + + if (_bestBeacon != null) { + // Auto-select business from beacon + try { + final mapping = await Api.getBusinessFromBeacon(beaconId: _bestBeacon!.beaconId); + + if (!mounted) return; + + final appState = context.read(); + appState.setBusinessAndServicePoint( + mapping.businessId, + mapping.servicePointId, + businessName: mapping.businessName, + servicePointName: mapping.servicePointName, + ); + Api.setBusinessId(mapping.businessId); + + print('[Splash] 🎉 Auto-selected: ${mapping.businessName}'); + + Navigator.of(context).pushReplacementNamed( + AppRoutes.menuBrowse, + arguments: { + 'businessId': mapping.businessId, + 'servicePointId': mapping.servicePointId, + }, + ); + return; + } catch (e) { + print('[Splash] Error mapping beacon to business: $e'); + } + } + + // No beacon or error - go to restaurant select + print('[Splash] Going to restaurant select'); + Navigator.of(context).pushReplacementNamed(AppRoutes.restaurantSelect); + } + @override void dispose() { - _timer?.cancel(); + _bounceController.dispose(); + _statusTimer?.cancel(); super.dispose(); } @override Widget build(BuildContext context) { - return const Scaffold( + return Scaffold( backgroundColor: Colors.black, - body: Center( - child: Text( - "PAYFRIT", - style: TextStyle( - color: Colors.white, - fontSize: 38, - fontWeight: FontWeight.w800, - letterSpacing: 3, + body: Stack( + children: [ + // Centered static status text + Center( + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + const Text( + "site survey", + style: TextStyle( + color: Colors.white, + fontSize: 18, + fontWeight: FontWeight.w300, + letterSpacing: 1, + ), + ), + const SizedBox(height: 6), + Text( + _statusPhrases[_statusIndex], + style: const TextStyle( + color: Colors.white, + fontSize: 18, + fontWeight: FontWeight.w300, + letterSpacing: 1, + ), + ), + ], + ), ), - ), + // Bouncing logo + Positioned( + left: _x, + top: _y, + child: Text( + "PAYFRIT", + style: TextStyle( + color: _logoColor, + fontSize: 38, + fontWeight: FontWeight.w800, + letterSpacing: 3, + ), + ), + ), + ], ), ); } } + +class BeaconResult { + final String uuid; + final int beaconId; + final double avgRssi; + + const BeaconResult({ + required this.uuid, + required this.beaconId, + required this.avgRssi, + }); +} diff --git a/pubspec.lock b/pubspec.lock index 194a722..ee6eacc 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -1,6 +1,22 @@ # Generated by pub # See https://dart.dev/tools/pub/glossary#lockfile packages: + archive: + dependency: transitive + description: + name: archive + sha256: "2fde1607386ab523f7a36bb3e7edb43bd58e6edaf2ffb29d8a6d578b297fdbbd" + url: "https://pub.dev" + source: hosted + version: "4.0.7" + args: + dependency: transitive + description: + name: args + sha256: d0481093c50b1da8910eb0bb301626d4d8eb7284aa739614d2b394ee09e3ea04 + url: "https://pub.dev" + source: hosted + version: "2.7.0" async: dependency: transitive description: @@ -25,6 +41,22 @@ packages: url: "https://pub.dev" source: hosted version: "1.4.0" + checked_yaml: + dependency: transitive + description: + name: checked_yaml + sha256: "959525d3162f249993882720d52b7e0c833978df229be20702b33d48d91de70f" + url: "https://pub.dev" + source: hosted + version: "2.0.4" + cli_util: + dependency: transitive + description: + name: cli_util + sha256: ff6785f7e9e3c38ac98b2fb035701789de90154024a75b6cb926445e83197d1c + url: "https://pub.dev" + source: hosted + version: "0.4.2" clock: dependency: transitive description: @@ -41,6 +73,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.19.1" + crypto: + dependency: transitive + description: + name: crypto + sha256: c8ea0233063ba03258fbcf2ca4d6dadfefe14f02fab57702265467a19f27fadf + url: "https://pub.dev" + source: hosted + version: "3.0.7" dchs_flutter_beacon: dependency: "direct main" description: @@ -78,6 +118,14 @@ packages: description: flutter source: sdk version: "0.0.0" + flutter_launcher_icons: + dependency: "direct dev" + description: + name: flutter_launcher_icons + sha256: "526faf84284b86a4cb36d20a5e45147747b7563d921373d4ee0559c54fcdbcea" + url: "https://pub.dev" + source: hosted + version: "0.13.1" flutter_lints: dependency: "direct dev" description: @@ -112,6 +160,22 @@ packages: url: "https://pub.dev" source: hosted version: "4.1.2" + image: + dependency: transitive + description: + name: image + sha256: "492bd52f6c4fbb6ee41f781ff27765ce5f627910e1e0cbecfa3d9add5562604c" + url: "https://pub.dev" + source: hosted + version: "4.7.2" + json_annotation: + dependency: transitive + description: + name: json_annotation + sha256: "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1" + url: "https://pub.dev" + source: hosted + version: "4.9.0" leak_tracker: dependency: transitive description: @@ -256,6 +320,14 @@ packages: url: "https://pub.dev" source: hosted version: "0.2.1" + petitparser: + dependency: transitive + description: + name: petitparser + sha256: "1a97266a94f7350d30ae522c0af07890c70b8e62c71e8e3920d1db4d23c057d1" + url: "https://pub.dev" + source: hosted + version: "7.0.1" platform: dependency: transitive description: @@ -272,6 +344,14 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.8" + posix: + dependency: transitive + description: + name: posix + sha256: "6323a5b0fa688b6a010df4905a56b00181479e6d10534cecfecede2aa55add61" + url: "https://pub.dev" + source: hosted + version: "6.0.3" provider: dependency: "direct main" description: @@ -429,6 +509,22 @@ packages: url: "https://pub.dev" source: hosted version: "1.1.0" + xml: + dependency: transitive + description: + name: xml + sha256: "971043b3a0d3da28727e40ed3e0b5d18b742fa5a68665cca88e74b7876d5e025" + url: "https://pub.dev" + source: hosted + version: "6.6.1" + yaml: + dependency: transitive + description: + name: yaml + sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce + url: "https://pub.dev" + source: hosted + version: "3.1.3" sdks: dart: ">=3.9.0 <4.0.0" flutter: ">=3.35.0" diff --git a/pubspec.yaml b/pubspec.yaml index 717d754..bc91b28 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -20,6 +20,15 @@ dev_dependencies: flutter_test: sdk: flutter flutter_lints: ^4.0.0 + flutter_launcher_icons: ^0.13.1 + +flutter_launcher_icons: + android: true + ios: true + image_path: "icon.png" + adaptive_icon_background: "#000000" + adaptive_icon_foreground: "icon.png" + remove_alpha_ios: true flutter: uses-material-design: true