From 76da49480460592fd524264a729b9c915d60395b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Mon, 12 Feb 2024 19:28:10 +0100 Subject: [PATCH 01/22] chore: require full screen on ios --- ios/Runner/Info.plist | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist index a403f42..caa66d2 100644 --- a/ios/Runner/Info.plist +++ b/ios/Runner/Info.plist @@ -36,6 +36,8 @@ LaunchScreen UIMainStoryboardFile Main + UIRequiresFullScreen + UISupportedInterfaceOrientations UIInterfaceOrientationPortrait -- 2.45.2 From aeda571f3531fd2d06a509c50d93e90b19fd0dd6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Mon, 26 Feb 2024 21:58:18 +0100 Subject: [PATCH 02/22] chore: upgrade flutter --- .flutter | 2 +- pubspec.lock | 328 ++++++++++++++++++++++++++++++++++++++++++++------- 2 files changed, 285 insertions(+), 45 deletions(-) diff --git a/.flutter b/.flutter index b7e7d46..1751123 160000 --- a/.flutter +++ b/.flutter @@ -1 +1 @@ -Subproject commit b7e7d46a046ba8a22897a514bf2311a0f81ab198 +Subproject commit 1751123cde4ffad08ae27bdee4f8ddebd033fe76 diff --git a/pubspec.lock b/pubspec.lock index d5f3b26..9a68996 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -109,10 +109,10 @@ packages: dependency: transitive description: name: built_value - sha256: a3ec2e0f967bc47f69f95009bb93db936288d61d5343b9436e378b28a2f830c6 + sha256: fedde275e0a6b798c3296963c5cd224e3e1b55d0e478d5b7e65e6b540f363a0e url: "https://pub.dev" source: hosted - version: "8.9.0" + version: "8.9.1" characters: dependency: transitive description: @@ -129,6 +129,22 @@ packages: url: "https://pub.dev" source: hosted version: "2.0.3" + chunked_stream: + dependency: transitive + description: + name: chunked_stream + sha256: b2fde5f81d780f0c1699b8347cae2e413412ae947fc6e64727cc48c6bb54c95c + url: "https://pub.dev" + source: hosted + version: "1.4.2" + circular_buffer: + dependency: transitive + description: + name: circular_buffer + sha256: "2889afcfc97aa0d9a4930ae5fdf206aea7d0ac88a3649acec9130565cd8f45d8" + url: "https://pub.dev" + source: hosted + version: "0.11.0" cli_util: dependency: transitive description: @@ -161,6 +177,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.18.0" + completer_ex: + dependency: transitive + description: + name: completer_ex + sha256: "7bc3b65fb581c999891fdee0aaa3b5194b50329e0ccda28eb119ebedfec4b852" + url: "https://pub.dev" + source: hosted + version: "4.0.0" convert: dependency: transitive description: @@ -185,6 +209,14 @@ packages: url: "https://pub.dev" source: hosted version: "3.0.3" + csv: + dependency: transitive + description: + name: csv + sha256: "63ed2871dd6471193dffc52c0e6c76fb86269c00244d244297abbb355c84a86e" + url: "https://pub.dev" + source: hosted + version: "5.1.1" cupertino_icons: dependency: "direct main" description: @@ -201,6 +233,14 @@ packages: url: "https://pub.dev" source: hosted version: "2.0.20" + dart_console2: + dependency: transitive + description: + name: dart_console2 + sha256: "300833ffdd8c465d454cb5007c7f29d28ac8246af5abd922f8c490e1e87c894f" + url: "https://pub.dev" + source: hosted + version: "3.0.0" dart_style: dependency: transitive description: @@ -209,14 +249,38 @@ packages: url: "https://pub.dev" source: hosted version: "2.3.4" + dcli: + dependency: transitive + description: + name: dcli + sha256: "0319f6cf59f3af23aead1098c2d99ccbd5525e025a77f8d021eea90431263746" + url: "https://pub.dev" + source: hosted + version: "3.3.5" + dcli_core: + dependency: transitive + description: + name: dcli_core + sha256: "60782bcd669b88bfbde729c63dad891443a6e17d16f7c24fd5a8e2e3960f432a" + url: "https://pub.dev" + source: hosted + version: "3.3.5" + dcli_terminal: + dependency: transitive + description: + name: dcli_terminal + sha256: "4d68792b83da509206028b6c028353fbb5fb41cd75a694affd86e2f2016f6897" + url: "https://pub.dev" + source: hosted + version: "0.2.0" dio: dependency: "direct main" description: name: dio - sha256: "797e1e341c3dd2f69f2dad42564a6feff3bfb87187d05abb93b9609e6f1645c3" + sha256: "49af28382aefc53562459104f64d16b9dfd1e8ef68c862d5af436cc8356ce5a8" url: "https://pub.dev" source: hosted - version: "5.4.0" + version: "5.4.1" dots_indicator: dependency: transitive description: @@ -277,10 +341,10 @@ packages: dependency: "direct main" description: name: fl_chart - sha256: b5e2b0f13d93f8c532b5a2786bfb44580de1f50b927bf95813fa1af617e9caf8 + sha256: "00b74ae680df6b1135bdbea00a7d1fc072a9180b7c3f3702e4b19a9943f5ed7d" url: "https://pub.dev" source: hosted - version: "0.66.1" + version: "0.66.2" flex_color_picker: dependency: "direct main" description: @@ -319,10 +383,10 @@ packages: dependency: "direct main" description: name: flutter_iconpicker - sha256: ad21bb678fd315f5c4f4eab2c9489779f818a3cbb77e20a7460d685bc44ddaf4 + sha256: "84279d322f1542a97bf09b780a859eb766a0af64b7de1aae4b51377771916b88" url: "https://pub.dev" source: hosted - version: "3.3.3" + version: "3.4.4" flutter_keyboard_visibility: dependency: transitive description: @@ -450,11 +514,27 @@ packages: url: "https://pub.dev" source: hosted version: "3.2.0" + fsm2: + dependency: transitive + description: + name: fsm2 + sha256: "7cfc5503617e88f352f224e6715afb345bd23bd2a23e83d2b1ea977014f0111a" + url: "https://pub.dev" + source: hosted + version: "3.0.0" fuchsia_remote_debug_protocol: dependency: transitive description: flutter source: sdk version: "0.0.0" + functional_data: + dependency: transitive + description: + name: functional_data + sha256: aefdec4365452283b2a7cf420a3169654d51d3e9553069a22d76680d7a9d7c3d + url: "https://pub.dev" + source: hosted + version: "1.1.1" glob: dependency: transitive description: @@ -463,6 +543,14 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.2" + globbing: + dependency: transitive + description: + name: globbing + sha256: "4f89cfaf6fa74c9c1740a96259da06bd45411ede56744e28017cc534a12b6e2d" + url: "https://pub.dev" + source: hosted + version: "1.0.0" graphs: dependency: transitive description: @@ -499,10 +587,18 @@ packages: dependency: transitive description: name: image - sha256: "49a0d4b0c12402853d3f227fe7c315601b238d126aa4caa5dbb2dcf99421aa4a" + sha256: "4c68bfd5ae83e700b5204c1e74451e7bf3cf750e6843c6e158289cf56bda018e" url: "https://pub.dev" source: hosted - version: "4.1.6" + version: "4.1.7" + ini: + dependency: transitive + description: + name: ini + sha256: "12a76c53591ffdf86d1265be3f986888a6dfeb34a85957774bc65912d989a173" + url: "https://pub.dev" + source: hosted + version: "2.1.0" integration_test: dependency: "direct dev" description: flutter @@ -540,6 +636,14 @@ packages: url: "https://pub.dev" source: hosted version: "0.6.7" + json2yaml: + dependency: transitive + description: + name: json2yaml + sha256: da94630fbc56079426fdd167ae58373286f603371075b69bf46d848d63ba3e51 + url: "https://pub.dev" + source: hosted + version: "3.0.1" json_annotation: dependency: "direct main" description: @@ -560,26 +664,26 @@ packages: dependency: transitive description: name: leak_tracker - sha256: "78eb209deea09858f5269f5a5b02be4049535f568c07b275096836f01ea323fa" + sha256: cdd14e3836065a1f6302a236ec8b5f700695c803c57ae11a1c84df31e6bcf831 url: "https://pub.dev" source: hosted - version: "10.0.0" + version: "10.0.3" leak_tracker_flutter_testing: dependency: transitive description: name: leak_tracker_flutter_testing - sha256: b46c5e37c19120a8a01918cfaf293547f47269f7cb4b0058f21531c2465d6ef0 + sha256: "9b2ef90589911d665277464e0482b209d39882dffaaf4ef69a3561a3354b2ebc" url: "https://pub.dev" source: hosted - version: "2.0.1" + version: "3.0.2" leak_tracker_testing: dependency: transitive description: name: leak_tracker_testing - sha256: a597f72a664dbd293f3bfc51f9ba69816f84dcd403cdac7066cb3f6003f3ab47 + sha256: fd3cd66cb2bcd7b50dcd3b413af49d78051f809c8b3f6e047962765c15a0d23d url: "https://pub.dev" source: hosted - version: "2.0.1" + version: "3.0.0" lints: dependency: transitive description: @@ -588,6 +692,14 @@ packages: url: "https://pub.dev" source: hosted version: "3.0.0" + lists: + dependency: transitive + description: + name: lists + sha256: "4ca5c19ae4350de036a7e996cdd1ee39c93ac0a2b840f4915459b7d0a7d4ab27" + url: "https://pub.dev" + source: hosted + version: "1.0.1" logger: dependency: "direct main" description: @@ -756,6 +868,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.5.1" + posix: + dependency: transitive + description: + name: posix + sha256: a0117dc2167805aa9125b82eee515cc891819bac2f538c83646d355b16f58b9a + url: "https://pub.dev" + source: hosted + version: "6.0.1" process: dependency: transitive description: @@ -780,6 +900,22 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.4" + pubspec_lock: + dependency: transitive + description: + name: pubspec_lock + sha256: ed5fc1ecd0cdc0e14475a091afcb2c4cbb00e74cebff17635e9abbec18d76cc4 + url: "https://pub.dev" + source: hosted + version: "3.0.2" + pubspec_manager: + dependency: transitive + description: + name: pubspec_manager + sha256: bddf87f12c7507205d0a5741096164e88b65ebe6cbb285c5a8e798e87f3518d0 + url: "https://pub.dev" + source: hosted + version: "1.0.0-alpha.16" pubspec_parse: dependency: transitive description: @@ -788,6 +924,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.2.3" + scope: + dependency: transitive + description: + name: scope + sha256: "80cf1cb727791fdaaa4131817974a6084815ed59b9ab02ef352c3a1badea488b" + url: "https://pub.dev" + source: hosted + version: "4.1.0" settings_ui: dependency: "direct main" description: @@ -796,6 +940,14 @@ packages: url: "https://pub.dev" source: hosted version: "2.0.2" + settings_yaml: + dependency: transitive + description: + name: settings_yaml + sha256: c568c79a1a2e48235d7f6cb06a78b15867879cc1995796dd324b9bc125e6b077 + url: "https://pub.dev" + source: hosted + version: "8.0.1" shared_preferences: dependency: "direct main" description: @@ -840,10 +992,10 @@ packages: dependency: transitive description: name: shared_preferences_web - sha256: "7b15ffb9387ea3e237bb7a66b8a23d2147663d391cafc5c8f37b2e7b4bde5d21" + sha256: "9aee1089b36bd2aafe06582b7d7817fd317ef05fc30e6ba14bff247d0933042a" url: "https://pub.dev" source: hosted - version: "2.2.2" + version: "2.3.0" shared_preferences_windows: dependency: transitive description: @@ -884,6 +1036,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.0.4" + simple_logger: + dependency: transitive + description: + name: simple_logger + sha256: bd3f09099a890f5f66cd27a39e5422f4e27b5e7cf4c5a7331569e86d89846898 + url: "https://pub.dev" + source: hosted + version: "1.9.0+3" sky_engine: dependency: transitive description: flutter @@ -929,6 +1089,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.10.0" + sprintf: + dependency: transitive + description: + name: sprintf + sha256: "1fc9ffe69d4df602376b52949af107d8f5703b77cda567c4d7d86a0693120f23" + url: "https://pub.dev" + source: hosted + version: "7.0.0" stack_trace: dependency: transitive description: @@ -937,6 +1105,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.11.1" + stacktrace_impl: + dependency: transitive + description: + name: stacktrace_impl + sha256: a42791862f672151d7f5a12911bf607c5b6d600f15f4f2457ef4ec92bfcf561b + url: "https://pub.dev" + source: hosted + version: "2.3.0" stream_channel: dependency: transitive description: @@ -961,6 +1137,22 @@ packages: url: "https://pub.dev" source: hosted version: "1.2.0" + strings: + dependency: transitive + description: + name: strings + sha256: b33f40c4dd3e597bf6d9e7f4f4dc282dad0f19b07d9f320cb5c2183859cbccf5 + url: "https://pub.dev" + source: hosted + version: "3.1.1" + sum_types: + dependency: transitive + description: + name: sum_types + sha256: c0a0fad9a518d011987e1d9f27fc336194294e55dafdc3699363e52aa5776e09 + url: "https://pub.dev" + source: hosted + version: "0.3.5" sync_http: dependency: transitive description: @@ -969,6 +1161,22 @@ packages: url: "https://pub.dev" source: hosted version: "0.3.1" + synchronized: + dependency: transitive + description: + name: synchronized + sha256: "539ef412b170d65ecdafd780f924e5be3f60032a1128df156adad6c5b373d558" + url: "https://pub.dev" + source: hosted + version: "3.1.0+1" + system_info2: + dependency: transitive + description: + name: system_info2 + sha256: "65206bbef475217008b5827374767550a5420ce70a04d2d7e94d1d2253f3efc9" + url: "https://pub.dev" + source: hosted + version: "4.0.0" term_glyph: dependency: transitive description: @@ -981,26 +1189,26 @@ packages: dependency: "direct dev" description: name: test - sha256: a1f7595805820fcc05e5c52e3a231aedd0b72972cb333e8c738a8b1239448b6f + sha256: "7ee446762c2c50b3bd4ea96fe13ffac69919352bd3b4b17bac3f3465edc58073" url: "https://pub.dev" source: hosted - version: "1.24.9" + version: "1.25.2" test_api: dependency: transitive description: name: test_api - sha256: "5c2f730018264d276c20e4f1503fd1308dfbbae39ec8ee63c5236311ac06954b" + sha256: "9955ae474176f7ac8ee4e989dadfb411a58c30415bcfb648fa04b2b8a03afa7f" url: "https://pub.dev" source: hosted - version: "0.6.1" + version: "0.7.0" test_core: dependency: transitive description: name: test_core - sha256: a757b14fc47507060a162cc2530d9a4a2f92f5100a952c7443b5cad5ef5b106a + sha256: "2bc4b4ecddd75309300d8096f781c0e3280ca1ef85beda558d33fcbedc2eead4" url: "https://pub.dev" source: hosted - version: "0.5.9" + version: "0.6.0" timing: dependency: transitive description: @@ -1009,6 +1217,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.0.1" + tree_iterator: + dependency: transitive + description: + name: tree_iterator + sha256: bf3e797743cbf16366c40fb481a83cd7a2a30f36240a633de27e7ef1549b8b34 + url: "https://pub.dev" + source: hosted + version: "3.0.0" typed_data: dependency: transitive description: @@ -1017,30 +1233,38 @@ packages: url: "https://pub.dev" source: hosted version: "1.3.2" + unicode: + dependency: transitive + description: + name: unicode + sha256: "0f69e46593d65245774d4f17125c6084d2c20b4e473a983f6e21b7d7762218f1" + url: "https://pub.dev" + source: hosted + version: "0.3.1" url_launcher: dependency: "direct main" description: name: url_launcher - sha256: c512655380d241a337521703af62d2c122bf7b77a46ff7dd750092aa9433499c + sha256: "0ecc004c62fd3ed36a2ffcbe0dd9700aee63bd7532d0b642a488b1ec310f492e" url: "https://pub.dev" source: hosted - version: "6.2.4" + version: "6.2.5" url_launcher_android: dependency: transitive description: name: url_launcher_android - sha256: "507dc655b1d9cb5ebc756032eb785f114e415f91557b73bf60b7e201dfedeb2f" + sha256: d4ed0711849dd8e33eb2dd69c25db0d0d3fdc37e0a62e629fe32f57a22db2745 url: "https://pub.dev" source: hosted - version: "6.2.2" + version: "6.3.0" url_launcher_ios: dependency: transitive description: name: url_launcher_ios - sha256: "75bb6fe3f60070407704282a2d295630cab232991eb52542b18347a8a941df03" + sha256: "9149d493b075ed740901f3ee844a38a00b33116c7c5c10d7fb27df8987fb51d5" url: "https://pub.dev" source: hosted - version: "6.2.4" + version: "6.2.5" url_launcher_linux: dependency: transitive description: @@ -1061,18 +1285,18 @@ packages: dependency: transitive description: name: url_launcher_platform_interface - sha256: a932c3a8082e118f80a475ce692fde89dc20fddb24c57360b96bc56f7035de1f + sha256: "552f8a1e663569be95a8190206a38187b531910283c3e982193e4f2733f01029" url: "https://pub.dev" source: hosted - version: "2.3.1" + version: "2.3.2" url_launcher_web: dependency: transitive description: name: url_launcher_web - sha256: fff0932192afeedf63cdd50ecbb1bc825d31aed259f02bb8dba0f3b729a5e88b + sha256: "3692a459204a33e04bc94f5fb91158faf4f2c8903281ddd82915adecdb1a901d" url: "https://pub.dev" source: hosted - version: "2.2.3" + version: "2.3.0" url_launcher_windows: dependency: transitive description: @@ -1081,6 +1305,22 @@ packages: url: "https://pub.dev" source: hosted version: "3.1.1" + uuid: + dependency: transitive + description: + name: uuid + sha256: cd210a09f7c18cbe5a02511718e0334de6559871052c90a90c0cca46a4aa81c8 + url: "https://pub.dev" + source: hosted + version: "4.3.3" + validators2: + dependency: transitive + description: + name: validators2 + sha256: "5c63054b2f47b6a3f39e0d0e3f5d38829db4545250144a34c9e1585466de4814" + url: "https://pub.dev" + source: hosted + version: "5.0.0" vector_math: dependency: transitive description: @@ -1101,10 +1341,10 @@ packages: dependency: transitive description: name: vm_service - sha256: b3d56ff4341b8f182b96aceb2fa20e3dcb336b9f867bc0eafc0de10f1048e957 + sha256: a2662fb1f114f4296cf3f5a50786a2d888268d7776cf681aa17d660ffa23b246 url: "https://pub.dev" source: hosted - version: "13.0.0" + version: "14.0.0" watcher: dependency: transitive description: @@ -1117,18 +1357,18 @@ packages: dependency: transitive description: name: web - sha256: "4188706108906f002b3a293509234588823c8c979dc83304e229ff400c996b05" + sha256: "1d9158c616048c38f712a6646e317a3426da10e884447626167240d45209cbad" url: "https://pub.dev" source: hosted - version: "0.4.2" + version: "0.5.0" web_socket_channel: dependency: transitive description: name: web_socket_channel - sha256: "939ab60734a4f8fa95feacb55804fa278de28bdeef38e616dc08e44a84adea23" + sha256: "1d8e795e2a8b3730c41b8a98a2dff2e0fb57ae6f0764a1c46ec5915387d257b2" url: "https://pub.dev" source: hosted - version: "2.4.3" + version: "2.4.4" webdriver: dependency: transitive description: @@ -1157,10 +1397,10 @@ packages: dependency: transitive description: name: win32 - sha256: "464f5674532865248444b4c3daca12bd9bf2d7c47f759ce2617986e7229494a8" + sha256: "5a751eddf9db89b3e5f9d50c20ab8612296e4e8db69009788d6c8b060a84191c" url: "https://pub.dev" source: hosted - version: "5.2.0" + version: "4.1.4" xdg_directories: dependency: transitive description: @@ -1186,5 +1426,5 @@ packages: source: hosted version: "3.1.2" sdks: - dart: ">=3.3.0-279.1.beta <4.0.0" - flutter: ">=3.16.0" + dart: ">=3.3.0 <4.0.0" + flutter: ">=3.19.0" -- 2.45.2 From 4d7144267e0ea3c5ad9536805b2607347e5cfcc4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Mon, 26 Feb 2024 22:53:10 +0100 Subject: [PATCH 03/22] fix: downgrade iconpicker --- pubspec.lock | 244 +-------------------------------------------------- pubspec.yaml | 2 +- 2 files changed, 3 insertions(+), 243 deletions(-) diff --git a/pubspec.lock b/pubspec.lock index 9a68996..adbb95b 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -129,22 +129,6 @@ packages: url: "https://pub.dev" source: hosted version: "2.0.3" - chunked_stream: - dependency: transitive - description: - name: chunked_stream - sha256: b2fde5f81d780f0c1699b8347cae2e413412ae947fc6e64727cc48c6bb54c95c - url: "https://pub.dev" - source: hosted - version: "1.4.2" - circular_buffer: - dependency: transitive - description: - name: circular_buffer - sha256: "2889afcfc97aa0d9a4930ae5fdf206aea7d0ac88a3649acec9130565cd8f45d8" - url: "https://pub.dev" - source: hosted - version: "0.11.0" cli_util: dependency: transitive description: @@ -177,14 +161,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.18.0" - completer_ex: - dependency: transitive - description: - name: completer_ex - sha256: "7bc3b65fb581c999891fdee0aaa3b5194b50329e0ccda28eb119ebedfec4b852" - url: "https://pub.dev" - source: hosted - version: "4.0.0" convert: dependency: transitive description: @@ -209,14 +185,6 @@ packages: url: "https://pub.dev" source: hosted version: "3.0.3" - csv: - dependency: transitive - description: - name: csv - sha256: "63ed2871dd6471193dffc52c0e6c76fb86269c00244d244297abbb355c84a86e" - url: "https://pub.dev" - source: hosted - version: "5.1.1" cupertino_icons: dependency: "direct main" description: @@ -233,14 +201,6 @@ packages: url: "https://pub.dev" source: hosted version: "2.0.20" - dart_console2: - dependency: transitive - description: - name: dart_console2 - sha256: "300833ffdd8c465d454cb5007c7f29d28ac8246af5abd922f8c490e1e87c894f" - url: "https://pub.dev" - source: hosted - version: "3.0.0" dart_style: dependency: transitive description: @@ -249,30 +209,6 @@ packages: url: "https://pub.dev" source: hosted version: "2.3.4" - dcli: - dependency: transitive - description: - name: dcli - sha256: "0319f6cf59f3af23aead1098c2d99ccbd5525e025a77f8d021eea90431263746" - url: "https://pub.dev" - source: hosted - version: "3.3.5" - dcli_core: - dependency: transitive - description: - name: dcli_core - sha256: "60782bcd669b88bfbde729c63dad891443a6e17d16f7c24fd5a8e2e3960f432a" - url: "https://pub.dev" - source: hosted - version: "3.3.5" - dcli_terminal: - dependency: transitive - description: - name: dcli_terminal - sha256: "4d68792b83da509206028b6c028353fbb5fb41cd75a694affd86e2f2016f6897" - url: "https://pub.dev" - source: hosted - version: "0.2.0" dio: dependency: "direct main" description: @@ -383,10 +319,10 @@ packages: dependency: "direct main" description: name: flutter_iconpicker - sha256: "84279d322f1542a97bf09b780a859eb766a0af64b7de1aae4b51377771916b88" + sha256: ad21bb678fd315f5c4f4eab2c9489779f818a3cbb77e20a7460d685bc44ddaf4 url: "https://pub.dev" source: hosted - version: "3.4.4" + version: "3.3.3" flutter_keyboard_visibility: dependency: transitive description: @@ -514,27 +450,11 @@ packages: url: "https://pub.dev" source: hosted version: "3.2.0" - fsm2: - dependency: transitive - description: - name: fsm2 - sha256: "7cfc5503617e88f352f224e6715afb345bd23bd2a23e83d2b1ea977014f0111a" - url: "https://pub.dev" - source: hosted - version: "3.0.0" fuchsia_remote_debug_protocol: dependency: transitive description: flutter source: sdk version: "0.0.0" - functional_data: - dependency: transitive - description: - name: functional_data - sha256: aefdec4365452283b2a7cf420a3169654d51d3e9553069a22d76680d7a9d7c3d - url: "https://pub.dev" - source: hosted - version: "1.1.1" glob: dependency: transitive description: @@ -543,14 +463,6 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.2" - globbing: - dependency: transitive - description: - name: globbing - sha256: "4f89cfaf6fa74c9c1740a96259da06bd45411ede56744e28017cc534a12b6e2d" - url: "https://pub.dev" - source: hosted - version: "1.0.0" graphs: dependency: transitive description: @@ -591,14 +503,6 @@ packages: url: "https://pub.dev" source: hosted version: "4.1.7" - ini: - dependency: transitive - description: - name: ini - sha256: "12a76c53591ffdf86d1265be3f986888a6dfeb34a85957774bc65912d989a173" - url: "https://pub.dev" - source: hosted - version: "2.1.0" integration_test: dependency: "direct dev" description: flutter @@ -636,14 +540,6 @@ packages: url: "https://pub.dev" source: hosted version: "0.6.7" - json2yaml: - dependency: transitive - description: - name: json2yaml - sha256: da94630fbc56079426fdd167ae58373286f603371075b69bf46d848d63ba3e51 - url: "https://pub.dev" - source: hosted - version: "3.0.1" json_annotation: dependency: "direct main" description: @@ -692,14 +588,6 @@ packages: url: "https://pub.dev" source: hosted version: "3.0.0" - lists: - dependency: transitive - description: - name: lists - sha256: "4ca5c19ae4350de036a7e996cdd1ee39c93ac0a2b840f4915459b7d0a7d4ab27" - url: "https://pub.dev" - source: hosted - version: "1.0.1" logger: dependency: "direct main" description: @@ -868,14 +756,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.5.1" - posix: - dependency: transitive - description: - name: posix - sha256: a0117dc2167805aa9125b82eee515cc891819bac2f538c83646d355b16f58b9a - url: "https://pub.dev" - source: hosted - version: "6.0.1" process: dependency: transitive description: @@ -900,22 +780,6 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.4" - pubspec_lock: - dependency: transitive - description: - name: pubspec_lock - sha256: ed5fc1ecd0cdc0e14475a091afcb2c4cbb00e74cebff17635e9abbec18d76cc4 - url: "https://pub.dev" - source: hosted - version: "3.0.2" - pubspec_manager: - dependency: transitive - description: - name: pubspec_manager - sha256: bddf87f12c7507205d0a5741096164e88b65ebe6cbb285c5a8e798e87f3518d0 - url: "https://pub.dev" - source: hosted - version: "1.0.0-alpha.16" pubspec_parse: dependency: transitive description: @@ -924,14 +788,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.2.3" - scope: - dependency: transitive - description: - name: scope - sha256: "80cf1cb727791fdaaa4131817974a6084815ed59b9ab02ef352c3a1badea488b" - url: "https://pub.dev" - source: hosted - version: "4.1.0" settings_ui: dependency: "direct main" description: @@ -940,14 +796,6 @@ packages: url: "https://pub.dev" source: hosted version: "2.0.2" - settings_yaml: - dependency: transitive - description: - name: settings_yaml - sha256: c568c79a1a2e48235d7f6cb06a78b15867879cc1995796dd324b9bc125e6b077 - url: "https://pub.dev" - source: hosted - version: "8.0.1" shared_preferences: dependency: "direct main" description: @@ -1036,14 +884,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.0.4" - simple_logger: - dependency: transitive - description: - name: simple_logger - sha256: bd3f09099a890f5f66cd27a39e5422f4e27b5e7cf4c5a7331569e86d89846898 - url: "https://pub.dev" - source: hosted - version: "1.9.0+3" sky_engine: dependency: transitive description: flutter @@ -1089,14 +929,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.10.0" - sprintf: - dependency: transitive - description: - name: sprintf - sha256: "1fc9ffe69d4df602376b52949af107d8f5703b77cda567c4d7d86a0693120f23" - url: "https://pub.dev" - source: hosted - version: "7.0.0" stack_trace: dependency: transitive description: @@ -1105,14 +937,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.11.1" - stacktrace_impl: - dependency: transitive - description: - name: stacktrace_impl - sha256: a42791862f672151d7f5a12911bf607c5b6d600f15f4f2457ef4ec92bfcf561b - url: "https://pub.dev" - source: hosted - version: "2.3.0" stream_channel: dependency: transitive description: @@ -1137,22 +961,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.2.0" - strings: - dependency: transitive - description: - name: strings - sha256: b33f40c4dd3e597bf6d9e7f4f4dc282dad0f19b07d9f320cb5c2183859cbccf5 - url: "https://pub.dev" - source: hosted - version: "3.1.1" - sum_types: - dependency: transitive - description: - name: sum_types - sha256: c0a0fad9a518d011987e1d9f27fc336194294e55dafdc3699363e52aa5776e09 - url: "https://pub.dev" - source: hosted - version: "0.3.5" sync_http: dependency: transitive description: @@ -1161,22 +969,6 @@ packages: url: "https://pub.dev" source: hosted version: "0.3.1" - synchronized: - dependency: transitive - description: - name: synchronized - sha256: "539ef412b170d65ecdafd780f924e5be3f60032a1128df156adad6c5b373d558" - url: "https://pub.dev" - source: hosted - version: "3.1.0+1" - system_info2: - dependency: transitive - description: - name: system_info2 - sha256: "65206bbef475217008b5827374767550a5420ce70a04d2d7e94d1d2253f3efc9" - url: "https://pub.dev" - source: hosted - version: "4.0.0" term_glyph: dependency: transitive description: @@ -1217,14 +1009,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.0.1" - tree_iterator: - dependency: transitive - description: - name: tree_iterator - sha256: bf3e797743cbf16366c40fb481a83cd7a2a30f36240a633de27e7ef1549b8b34 - url: "https://pub.dev" - source: hosted - version: "3.0.0" typed_data: dependency: transitive description: @@ -1233,14 +1017,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.3.2" - unicode: - dependency: transitive - description: - name: unicode - sha256: "0f69e46593d65245774d4f17125c6084d2c20b4e473a983f6e21b7d7762218f1" - url: "https://pub.dev" - source: hosted - version: "0.3.1" url_launcher: dependency: "direct main" description: @@ -1305,22 +1081,6 @@ packages: url: "https://pub.dev" source: hosted version: "3.1.1" - uuid: - dependency: transitive - description: - name: uuid - sha256: cd210a09f7c18cbe5a02511718e0334de6559871052c90a90c0cca46a4aa81c8 - url: "https://pub.dev" - source: hosted - version: "4.3.3" - validators2: - dependency: transitive - description: - name: validators2 - sha256: "5c63054b2f47b6a3f39e0d0e3f5d38829db4545250144a34c9e1585466de4814" - url: "https://pub.dev" - source: hosted - version: "5.0.0" vector_math: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index b4873e0..a1d91b3 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -23,7 +23,7 @@ dependencies: flutter: sdk: flutter flutter_file_dialog: ^3.0.2 - flutter_iconpicker: ^3.2.4 + flutter_iconpicker: <3.4.0 flutter_localizations: sdk: flutter flutter_slidable: ^3.0.0 -- 2.45.2 From a6872408faaf705563b3fd79074c0aa660aed9f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Mon, 26 Feb 2024 22:53:38 +0100 Subject: [PATCH 04/22] fix: set kotlin version everywhere --- android/settings.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/android/settings.gradle b/android/settings.gradle index 1d6d19b..985a6e2 100644 --- a/android/settings.gradle +++ b/android/settings.gradle @@ -20,7 +20,7 @@ pluginManagement { plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" id "com.android.application" version "7.3.0" apply false - id "org.jetbrains.kotlin.android" version "1.7.10" apply false + id "org.jetbrains.kotlin.android" version "1.9.22" apply false } include ":app" -- 2.45.2 From e5e803057ae3ddd8f9c8f1c92b30b4437748f3a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Mon, 26 Feb 2024 22:53:51 +0100 Subject: [PATCH 05/22] fix: localization mistakes --- lib/l10n/app_cs.arb | 2 +- lib/l10n/app_en.arb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/l10n/app_cs.arb b/lib/l10n/app_cs.arb index 5b6a09c..83b55c2 100644 --- a/lib/l10n/app_cs.arb +++ b/lib/l10n/app_cs.arb @@ -7,7 +7,7 @@ "next": "Další", "back": "Zpět", "finish": "Dokončit", - "errorEmptyName": "Název peněženky nemůže být prázdný!", + "errorEmptyName": "Název nemůže být prázdný!", "welcome": "Vítejte!", "welcomeAboutPrasule": "Prašule je správce výdajů navržený pro lidi, kteří nechtějí vyplňovat každý malý detail.", "welcomeInstruction": "Na této obrazovce si nastavíte svoji 'peněženku', ve které budou zaznamenány vaše výdaje uspořádané do kategorií, které si nastavíte hned potom.", diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index 4281354..9d49ef4 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -7,7 +7,7 @@ "next": "Next", "back": "Back", "finish": "Finish", - "errorEmptyName": "Wallet name cannot be empty", + "errorEmptyName": "Name cannot be empty", "welcome": "Welcome!", "welcomeAboutPrasule": "Prašule is an expense tracker tool designed for people, who don't want to spend too much time filling in all the little details.", "welcomeInstruction": "On this screen you will set up your 'wallet', in which you will track your expenses categorized under categories, which you can later set in the settings menu.", -- 2.45.2 From 4a3f097b024c0ad66dcdb31d8c46dba4ee933eb8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Mon, 26 Feb 2024 22:58:01 +0100 Subject: [PATCH 06/22] fix: showing created entry after OCR --- lib/views/home.dart | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/views/home.dart b/lib/views/home.dart index 58c72fb..23c82e9 100644 --- a/lib/views/home.dart +++ b/lib/views/home.dart @@ -247,7 +247,9 @@ class _HomeViewState extends State { .then((value) async { wallets = await WalletManager.listWallets(); selectedWallet = await WalletManager.loadWallet( - selectedWallet!.name,); + selectedWallet!.name, + ); + setState(() {}); }); } else if (value == AppLocalizations.of(context).about) { showAbout(context); @@ -650,7 +652,7 @@ class _HomeViewState extends State { await showAdaptiveDialog( context: context, builder: (c) => StatefulBuilder( - builder: (ctx, setState) => AlertDialog.adaptive( + builder: (ctx, setDialogState) => AlertDialog.adaptive( actions: [ TextButton( onPressed: () async { @@ -764,7 +766,7 @@ class _HomeViewState extends State { 1 && !value)) return; selectedLanguages[index] = value; - setState(() {}); + setDialogState(() {}); }, ), const SizedBox( -- 2.45.2 From c7e40b12b7da9325adde3fd676b30611897e901b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Mon, 26 Feb 2024 22:59:08 +0100 Subject: [PATCH 07/22] fix: icons in iconpicker per platform --- lib/views/settings/edit_categories.dart | 8 ++++++++ lib/views/setup.dart | 18 ++++++++++++++---- 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/lib/views/settings/edit_categories.dart b/lib/views/settings/edit_categories.dart index 1de0cf8..d6cf5ad 100644 --- a/lib/views/settings/edit_categories.dart +++ b/lib/views/settings/edit_categories.dart @@ -1,4 +1,5 @@ import 'dart:async'; +import 'dart:io'; import 'package:dynamic_color/dynamic_color.dart'; import 'package:flex_color_picker/flex_color_picker.dart'; @@ -152,6 +153,13 @@ class _EditCategoriesViewState extends State { onTap: () async { final icon = await showIconPicker( context, + iconPackModes: [ + if (!Platform.isIOS && !Platform.isMacOS) + IconPack.material, + if (Platform.isIOS || Platform.isMacOS) + IconPack.cupertino, + ], + // adaptiveDialog: true, ); if (icon != null) { selectedWallet!.categories[i].icon = icon; diff --git a/lib/views/setup.dart b/lib/views/setup.dart index e97a659..f07a572 100644 --- a/lib/views/setup.dart +++ b/lib/views/setup.dart @@ -1,4 +1,5 @@ import 'dart:async'; +import 'dart:io'; import 'package:currency_picker/currency_picker.dart'; import 'package:dynamic_color/dynamic_color.dart'; @@ -153,10 +154,11 @@ class _SetupViewState extends State { return; } final wallet = Wallet( - name: name, - currency: _selectedCurrency, - categories: categories, - starterBalance: double.parse(_balanceController.text),); + name: name, + currency: _selectedCurrency, + categories: categories, + starterBalance: double.parse(_balanceController.text), + ); await WalletManager.saveWallet(wallet); if (widget.newWallet && context.mounted) { @@ -340,6 +342,14 @@ class _SetupViewState extends State { onTap: () async { final icon = await showIconPicker( context, + iconPackModes: [ + if (!Platform.isIOS && + !Platform.isMacOS) + IconPack.material, + if (Platform.isIOS || Platform.isMacOS) + IconPack.cupertino, + ], + // adaptiveDialog: true, ); if (icon != null) categories[i].icon = icon; final materialEnabled = -- 2.45.2 From af04accabfb0aa955e56e1b44eab7bfe5802efdc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Mon, 26 Feb 2024 23:26:02 +0100 Subject: [PATCH 08/22] fix: update state after creating recurring entry --- lib/views/recurring_view.dart | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/lib/views/recurring_view.dart b/lib/views/recurring_view.dart index cc2f4c1..faa6cde 100644 --- a/lib/views/recurring_view.dart +++ b/lib/views/recurring_view.dart @@ -125,14 +125,16 @@ class _RecurringEntriesViewState extends State { floatingActionButton: FloatingActionButton( child: const Icon(Icons.add), onPressed: () { - Navigator.of(context).push( - platformRoute( - (p0) => CreateRecurringEntryView( - w: selectedWallet!, - locale: locale, - ), - ), - ); + Navigator.of(context) + .push( + platformRoute( + (p0) => CreateRecurringEntryView( + w: selectedWallet!, + locale: locale, + ), + ), + ) + .then((value) => setState(() {})); }, ), body: Center( -- 2.45.2 From bd17e12e1b91c816031cac8b4d7df527c5f6355b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Mon, 26 Feb 2024 23:26:11 +0100 Subject: [PATCH 09/22] fix: show correct indicator on pie chart --- lib/util/graphs.dart | 32 ++++++++++++++++++++++++++++++-- 1 file changed, 30 insertions(+), 2 deletions(-) diff --git a/lib/util/graphs.dart b/lib/util/graphs.dart index 6ad292e..3abf042 100644 --- a/lib/util/graphs.dart +++ b/lib/util/graphs.dart @@ -428,11 +428,39 @@ class _CategoriesPieChartState extends State { (index) => Padding( padding: const EdgeInsets.all(8), child: Indicator( - size: touchedIndex == index ? 18 : 16, + size: (touchedIndex != -1 && + touchedIndex == + widget.categories + .where( + (element) => widget.entries + .where( + (w) => + w.category.id == + element + .id, // TODO: more elegant fix + ) + .isNotEmpty, + ) + .toList() + .indexOf(widget.categories[index])) + ? 18 + : 16, color: widget.categories[index].color, text: widget.categories[index].name, textStyle: TextStyle( - fontWeight: (touchedIndex == index) + fontWeight: (touchedIndex != -1 && + touchedIndex == + widget.categories + .where( + (element) => widget.entries + .where( + (w) => + w.category.id == element.id, + ) + .isNotEmpty, + ) + .toList() + .indexOf(widget.categories[index])) ? FontWeight.bold : FontWeight.normal, ), -- 2.45.2 From 15d2590a8ef5a631183b6d16fd12a61700be507a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Mon, 26 Feb 2024 23:30:31 +0100 Subject: [PATCH 10/22] docs: update changelog --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 00c4570..f1f88fa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +# 1.1.0 +- Fix indicators for Pie Chart +- Fix entries not showing up immediately after creation +- Fix localization errors # 1.0.0 - Change icon -- 2.45.2 From 7c8535b99df6539fb91b790d27cf94815e027a7d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Mon, 26 Feb 2024 23:30:45 +0100 Subject: [PATCH 11/22] chore: bump version --- pubspec.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pubspec.yaml b/pubspec.yaml index a1d91b3..8a2a40a 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,7 +1,7 @@ name: prasule description: Open-source private expense tracker -version: 1.0.0+6 +version: 1.1.0+7 environment: sdk: '>=3.1.0-262.2.beta <4.0.0' -- 2.45.2 From 85fefda4d8f70dd3c1856bfbf51bce3451a748ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Mon, 26 Feb 2024 23:33:43 +0100 Subject: [PATCH 12/22] chore: bump version in about dialog --- lib/util/utils.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/util/utils.dart b/lib/util/utils.dart index 45dfc37..5c84324 100644 --- a/lib/util/utils.dart +++ b/lib/util/utils.dart @@ -12,7 +12,7 @@ void showAbout(BuildContext context) { context: context, applicationLegalese: AppLocalizations.of(context).license, applicationName: "Prašule", - applicationVersion: "1.0.0", + applicationVersion: "1.1.0", applicationIcon: const CircleAvatar( backgroundImage: AssetImage("assets/icon/full_ico.png"), ), -- 2.45.2 From 638b6eef67cde00eedc1cb3cc1200cc556bdab11 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Thu, 7 Mar 2024 18:59:50 +0100 Subject: [PATCH 13/22] docs: add info to CONTRIBUTING --- CONTRIBUTING.md | 94 +++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 92 insertions(+), 2 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 18d512d..6cc5509 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,5 +1,95 @@ -# Localization +# Contributing to Prašule +Hello! I'm glad you want to contribute to Prašule. It is currently a one-man project, so I alwaýs appreciate more help. + +Below you can see all the different ways you can help the project. Make sure to read the sections carefully, if there's something you don't understand or feel like is missing, don't be afraid to create an issue or send me an e-mail. :) + +## Before contributing +Prašule is an open-source project, all code and assets are licensed under the GNU AGPL version 3 (see [LICENSE.md](https://git.mnau.xyz/hernik/prasule/src/commit/cff9f6c8c72156d7c9ee761d2e6c15b37218c166/LICENSE.md) for more details), unless otherwise stated. Localizations are published under [CC0 1.0](https://creativecommons.org/publicdomain/zero/1.0/deed.en). + +By contributing to this project you agree that you are the author of your contributions (or have the rights to publish them to this project) and that they will be published under the license of the contribution, depending if it's localization or code. + +## Localization [![Translation status](https://hosted.weblate.org/widget/prasule/287x66-grey.png)](https://hosted.weblate.org/engage/prasule/) -You can help with localization through Weblate, join the translation project on https://hosted.weblate.org/engage/prasule/ \ No newline at end of file +You can help with localization through Weblate, join the translation project on https://hosted.weblate.org/engage/prasule/ + +## Filing bug reports +Probably one of the easiest ways to help the project is to use the app and find bugs and other problems. Before submitting a issue, check the list of [open and closed issues](https://git.mnau.xyz/hernik/prasule/issues) so we don't have to deal with duplicates. + +If you ever find something, +file a new issue using the relevant template [here](https://git.mnau.xyz/hernik/prasule/issues/new/choose), make sure to fill up as much information as you can. + +Template preview: +```md +### Operating System + Version + + +### App version + + +### What was expected to happen + + +### What actually happened + + +### Relevant logs +``` +Paste your logs here + +Make sure it is a codebloc +``` + +### Steps to reproduce + + +- [] I have checked the [list of issues](https://git.mnau.xyz/hernik/prasule/issues) and I'm sure this is not a duplicate + +``` + +## Suggesting features +Features can be suggested using the same issue tracker, make sure to choose the feature request template when creating a [new issue](https://git.mnau.xyz/hernik/prasule/issues/new/choose). + +Template preview: +```md +- [] I have checked the [list of issues](https://git.mnau.xyz/hernik/prasule/issues) and I'm sure this is not a duplicate + + +### Is your feature request related to a bug or an issue? If yes, describe it or link it + + +### Describe your request, how you'd like it to be implemented etc. + +``` + +## Code contributions +Code contributions can either be bug fixes related to open issues or new features. First let's get you ready with a dev environment. + +### Running the app locally +To have everyone use the same Flutter version, this project uses [Flutter Wrapper](https://github.com/passsy/flutter_wrapper) for version management. The version is kept using git submodules, so when you're cloning the repo, make sure to add a `--recurse-submodules` flag to your clone command. + +Because the wrapper operates using a shell script, you'll have to use WSL on Windows or download the specific Flutter version. We use the `beta` update channel. After the project has cloned with the submodules, use `flutterw` (not `flutter`) for every Flutter command. + +Make sure to set up your device (debug mode or VM for Android, simulator or physical device for iOS) and run the development build using `./flutterw run`. The app should now install and run on your device. + +### Code conventions +This project uses the [very_good_analysis](https://pub.dev/packages/very_good_analysis) lint package (with minor edits seen in `analysis_options.yaml`). If you don't have an IDE that shows lints, you can check for lint errors using the `./flutterw analyze` command. Certain issues have automated fixes, but don't rely on them, they can make mistakes sometimes. + +Certain lint issues, like `lines_longer_than_80_chars`, can be ignored in certain scenarios, but try to have the code issue-free. + +### Submitting new code to the repo +First of all, fork the repo to your own profile and clone it (if you've already cloned it, change the remote URL: `git remote set-url origin https://git.mnau.xyz/YOUR_USERNAME/prasule.git` and pull any changes). + +The `main` branch contains only stable code ready for shipping, all development occurs on the `dev` branch, so create a new branch **from the `dev` branch**. There are no branch naming conventions, but if it's a new feature, it could be `feat-featurename`, for bug fixes `fix-issuename`. + +Check out your branch in your workspace and start coding. When you're done and want to commit your changes, make sure the commit message adheres the [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) specification. + +When all your changes are ready to be pushed to the main repo, submit a new [pull request](https://forgejo.org/docs/latest/user/pull-requests-and-git-flow/) **into the `dev` branch**. The PR will be reviewed by a maintainer, make sure to check back from time to time for any additional requests. + -- 2.45.2 From 3ff35fd42750c53db93057d3e001da0736309842 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Mon, 22 Apr 2024 15:06:18 +0200 Subject: [PATCH 14/22] fix: wrong text in wallet setup name field #40 --- .flutter | 2 +- lib/views/setup.dart | 108 +++++++++++++++------------------ pubspec.lock | 140 +++++++++++++++++++++---------------------- 3 files changed, 120 insertions(+), 130 deletions(-) diff --git a/.flutter b/.flutter index 1751123..312b9e8 160000 --- a/.flutter +++ b/.flutter @@ -1 +1 @@ -Subproject commit 1751123cde4ffad08ae27bdee4f8ddebd033fe76 +Subproject commit 312b9e81e93663b38f8e58d540be860fc75372b9 diff --git a/lib/views/setup.dart b/lib/views/setup.dart index f07a572..f260887 100644 --- a/lib/views/setup.dart +++ b/lib/views/setup.dart @@ -49,60 +49,57 @@ class _SetupViewState extends State { }, ); List categories = []; - String name = ""; + final _nameController = TextEditingController(); final _balanceController = TextEditingController(text: "0.0"); @override void didChangeDependencies() { super.didChangeDependencies(); - if (categories.isEmpty) { - name = AppLocalizations.of(context).setupNamePlaceholder; - categories = [ - WalletCategory( - name: AppLocalizations.of(context).noCategory, - id: 0, - icon: IconData( - Icons.payments.codePoint, - fontFamily: 'MaterialIcons', - ), - color: Theme.of(context).colorScheme.secondary, + if (categories.isNotEmpty) return; + _nameController.text = AppLocalizations.of(context).setupNamePlaceholder; + categories = [ + WalletCategory( + name: AppLocalizations.of(context).noCategory, + id: 0, + icon: IconData( + Icons.payments.codePoint, + fontFamily: 'MaterialIcons', ), - WalletCategory( - name: AppLocalizations.of(context).categoryHealth, - id: 1, - icon: IconData( - Icons.medical_information.codePoint, - fontFamily: 'MaterialIcons', - ), - color: Colors.red.shade700 - .harmonizeWith(Theme.of(context).colorScheme.primary), + color: Theme.of(context).colorScheme.secondary, + ), + WalletCategory( + name: AppLocalizations.of(context).categoryHealth, + id: 1, + icon: IconData( + Icons.medical_information.codePoint, + fontFamily: 'MaterialIcons', ), - WalletCategory( - name: AppLocalizations.of(context).categoryCar, - id: 2, - icon: - IconData(Icons.car_repair.codePoint, fontFamily: 'MaterialIcons'), - color: Colors.purple - .harmonizeWith(Theme.of(context).colorScheme.primary), - ), - WalletCategory( - name: AppLocalizations.of(context).categoryFood, - id: 3, - icon: - IconData(Icons.restaurant.codePoint, fontFamily: 'MaterialIcons'), - color: Colors.green.shade700 - .harmonizeWith(Theme.of(context).colorScheme.primary), - ), - WalletCategory( - name: AppLocalizations.of(context).categoryTravel, - id: 4, - icon: IconData(Icons.train.codePoint, fontFamily: 'MaterialIcons'), - color: Colors.orange.shade700 - .harmonizeWith(Theme.of(context).colorScheme.primary), - ), - ]; - setState(() {}); - } + color: Colors.red.shade700 + .harmonizeWith(Theme.of(context).colorScheme.primary), + ), + WalletCategory( + name: AppLocalizations.of(context).categoryCar, + id: 2, + icon: IconData(Icons.car_repair.codePoint, fontFamily: 'MaterialIcons'), + color: + Colors.purple.harmonizeWith(Theme.of(context).colorScheme.primary), + ), + WalletCategory( + name: AppLocalizations.of(context).categoryFood, + id: 3, + icon: IconData(Icons.restaurant.codePoint, fontFamily: 'MaterialIcons'), + color: Colors.green.shade700 + .harmonizeWith(Theme.of(context).colorScheme.primary), + ), + WalletCategory( + name: AppLocalizations.of(context).categoryTravel, + id: 4, + icon: IconData(Icons.train.codePoint, fontFamily: 'MaterialIcons'), + color: Colors.orange.shade700 + .harmonizeWith(Theme.of(context).colorScheme.primary), + ), + ]; + setState(() {}); } @override @@ -135,7 +132,7 @@ class _SetupViewState extends State { back: Text(AppLocalizations.of(context).back), done: Text(AppLocalizations.of(context).finish), onDone: () async { - if (name.isEmpty) { + if (_nameController.text.isEmpty) { unawaited( showMessage( AppLocalizations.of(context).errorEmptyName, @@ -144,7 +141,8 @@ class _SetupViewState extends State { ); return; } - if (await WalletManager.exists(name) && context.mounted) { + if (await WalletManager.exists(_nameController.text) && + context.mounted) { unawaited( showMessage( AppLocalizations.of(context).walletExists, @@ -154,7 +152,7 @@ class _SetupViewState extends State { return; } final wallet = Wallet( - name: name, + name: _nameController.text, currency: _selectedCurrency, categories: categories, starterBalance: double.parse(_balanceController.text), @@ -232,15 +230,7 @@ class _SetupViewState extends State { children: [ SizedBox( width: MediaQuery.of(context).size.width * 0.7, - child: PlatformField( - controller: TextEditingController( - text: - AppLocalizations.of(context).setupNamePlaceholder, - ), - onChanged: (t) { - name = t; - }, - ), + child: PlatformField(controller: _nameController), ), const SizedBox( height: 5, diff --git a/pubspec.lock b/pubspec.lock index adbb95b..2b009a3 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -29,10 +29,10 @@ packages: dependency: transitive description: name: args - sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596 + sha256: "7cf60b9f0cc88203c5a190b4cd62a99feea42759a7fa695010eb5de1c0b2252a" url: "https://pub.dev" source: hosted - version: "2.4.2" + version: "2.5.0" async: dependency: transitive description: @@ -85,10 +85,10 @@ packages: dependency: "direct dev" description: name: build_runner - sha256: "581bacf68f89ec8792f5e5a0b2c4decd1c948e97ce659dc783688c8a88fbec21" + sha256: "3ac61a79bfb6f6cc11f693591063a7f19a7af628dc52f141743edac5c16e8c22" url: "https://pub.dev" source: hosted - version: "2.4.8" + version: "2.4.9" build_runner_core: dependency: transitive description: @@ -109,10 +109,10 @@ packages: dependency: transitive description: name: built_value - sha256: fedde275e0a6b798c3296963c5cd224e3e1b55d0e478d5b7e65e6b540f363a0e + sha256: c7913a9737ee4007efedaffc968c049fd0f3d0e49109e778edc10de9426005cb url: "https://pub.dev" source: hosted - version: "8.9.1" + version: "8.9.2" characters: dependency: transitive description: @@ -189,34 +189,34 @@ packages: dependency: "direct main" description: name: cupertino_icons - sha256: d57953e10f9f8327ce64a508a355f0b1ec902193f66288e8cb5070e7c47eeb2d + sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6 url: "https://pub.dev" source: hosted - version: "1.0.6" + version: "1.0.8" currency_picker: dependency: "direct main" description: name: currency_picker - sha256: eb75deb7bc92e3f31e1b8ad4efacf71371e8e49d7a0eebd1c1a8e9fae58cc23d + sha256: c9ab5c0da8ae4dcc6421064dccde072b44f5b44914691b967ea4cf45a266a658 url: "https://pub.dev" source: hosted - version: "2.0.20" + version: "2.0.21" dart_style: dependency: transitive description: name: dart_style - sha256: "40ae61a5d43feea6d24bd22c0537a6629db858963b99b4bc1c3db80676f32368" + sha256: "99e066ce75c89d6b29903d788a7bb9369cf754f7b24bf70bf4b6d6d6b26853b9" url: "https://pub.dev" source: hosted - version: "2.3.4" + version: "2.3.6" dio: dependency: "direct main" description: name: dio - sha256: "49af28382aefc53562459104f64d16b9dfd1e8ef68c862d5af436cc8356ce5a8" + sha256: "11e40df547d418cc0c4900a9318b26304e665da6fa4755399a9ff9efd09034b5" url: "https://pub.dev" source: hosted - version: "5.4.1" + version: "5.4.3+1" dots_indicator: dependency: transitive description: @@ -229,10 +229,10 @@ packages: dependency: "direct main" description: name: dynamic_color - sha256: a866f1f8947bfdaf674d7928e769eac7230388a2e7a2542824fad4bb5b87be3b + sha256: eae98052fa6e2826bdac3dd2e921c6ce2903be15c6b7f8b6d8a5d49b5086298d url: "https://pub.dev" source: hosted - version: "1.6.9" + version: "1.7.0" equatable: dependency: transitive description: @@ -285,18 +285,18 @@ packages: dependency: "direct main" description: name: flex_color_picker - sha256: "0871edc170153cfc3de316d30625f40a85daecfa76ce541641f3cc0ec7757cbf" + sha256: "5c846437069fb7afdd7ade6bf37e628a71d2ab0787095ddcb1253bf9345d5f3a" url: "https://pub.dev" source: hosted - version: "3.3.1" + version: "3.4.1" flex_seed_scheme: dependency: transitive description: name: flex_seed_scheme - sha256: "29c12aba221eb8a368a119685371381f8035011d18de5ba277ad11d7dfb8657f" + sha256: "4cee2f1d07259f77e8b36f4ec5f35499d19e74e17c7dce5b819554914082bc01" url: "https://pub.dev" source: hosted - version: "1.4.0" + version: "1.5.0" flutter: dependency: "direct main" description: flutter @@ -327,10 +327,10 @@ packages: dependency: transitive description: name: flutter_keyboard_visibility - sha256: "4983655c26ab5b959252ee204c2fffa4afeb4413cd030455194ec0caa3b8e7cb" + sha256: "98664be7be0e3ffca00de50f7f6a287ab62c763fc8c762e0a21584584a3ff4f8" url: "https://pub.dev" source: hosted - version: "5.4.1" + version: "6.0.0" flutter_keyboard_visibility_linux: dependency: transitive description: @@ -383,10 +383,10 @@ packages: dependency: "direct dev" description: name: flutter_lints - sha256: e2a421b7e59244faef694ba7b30562e489c2b489866e505074eb005cd7060db7 + sha256: "9e8c3858111da373efc5aa341de011d9bd23e2c5c5e0c62bccf32438e192d7b1" url: "https://pub.dev" source: hosted - version: "3.0.1" + version: "3.0.2" flutter_localizations: dependency: "direct main" description: flutter @@ -396,10 +396,10 @@ packages: dependency: "direct main" description: name: flutter_slidable - sha256: "19ed4813003a6ff4e9c6bcce37e792a2a358919d7603b2b31ff200229191e44c" + sha256: "673403d2eeef1f9e8483bd6d8d92aae73b1d8bd71f382bc3930f699c731bc27c" url: "https://pub.dev" source: hosted - version: "3.0.1" + version: "3.1.0" flutter_speed_dial: dependency: "direct main" description: @@ -430,10 +430,10 @@ packages: dependency: "direct main" description: name: fluttertoast - sha256: dfdde255317af381bfc1c486ed968d5a43a2ded9c931e87cbecd88767d6a71c1 + sha256: "81b68579e23fcbcada2db3d50302813d2371664afe6165bc78148050ab94bf66" url: "https://pub.dev" source: hosted - version: "8.2.4" + version: "8.2.5" font_awesome_flutter: dependency: transitive description: @@ -446,10 +446,10 @@ packages: dependency: transitive description: name: frontend_server_client - sha256: "408e3ca148b31c20282ad6f37ebfa6f4bdc8fede5b74bc2f08d9d92b55db3612" + sha256: f64a0333a82f30b0cca061bc3d143813a486dc086b574bfb233b7c1372427694 url: "https://pub.dev" source: hosted - version: "3.2.0" + version: "4.0.0" fuchsia_remote_debug_protocol: dependency: transitive description: flutter @@ -512,18 +512,18 @@ packages: dependency: "direct main" description: name: intl - sha256: "3bc132a9dbce73a7e4a21a17d06e1878839ffbf975568bc875c60537824b0c4d" + sha256: d6f56758b7d3014a48af9701c085700aac781a92a87a62b1333b46d8879661cf url: "https://pub.dev" source: hosted - version: "0.18.1" + version: "0.19.0" introduction_screen: dependency: "direct main" description: name: introduction_screen - sha256: "72d25ceb71471773783f72783608e17585af93d4bc6474df577fcfe9e7842852" + sha256: "325f26e86fa3c3e86e6ab2bbc1fda860c9e6eae5ff29166fc2a3cab8f710d5b5" url: "https://pub.dev" source: hosted - version: "3.1.12" + version: "3.1.14" io: dependency: transitive description: @@ -560,26 +560,26 @@ packages: dependency: transitive description: name: leak_tracker - sha256: cdd14e3836065a1f6302a236ec8b5f700695c803c57ae11a1c84df31e6bcf831 + sha256: "7f0df31977cb2c0b88585095d168e689669a2cc9b97c309665e3386f3e9d341a" url: "https://pub.dev" source: hosted - version: "10.0.3" + version: "10.0.4" leak_tracker_flutter_testing: dependency: transitive description: name: leak_tracker_flutter_testing - sha256: "9b2ef90589911d665277464e0482b209d39882dffaaf4ef69a3561a3354b2ebc" + sha256: "06e98f569d004c1315b991ded39924b21af84cf14cc94791b8aea337d25b57f8" url: "https://pub.dev" source: hosted - version: "3.0.2" + version: "3.0.3" leak_tracker_testing: dependency: transitive description: name: leak_tracker_testing - sha256: fd3cd66cb2bcd7b50dcd3b413af49d78051f809c8b3f6e047962765c15a0d23d + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" url: "https://pub.dev" source: hosted - version: "3.0.0" + version: "3.0.1" lints: dependency: transitive description: @@ -592,10 +592,10 @@ packages: dependency: "direct main" description: name: logger - sha256: "6bbb9d6f7056729537a4309bda2e74e18e5d9f14302489cc1e93f33b3fe32cac" + sha256: "8c94b8c219e7e50194efc8771cd0e9f10807d8d3e219af473d89b06cc2ee4e04" url: "https://pub.dev" source: hosted - version: "2.0.2+1" + version: "2.2.0" logging: dependency: transitive description: @@ -624,10 +624,10 @@ packages: dependency: transitive description: name: meta - sha256: d584fa6707a52763a52446f02cc621b077888fb63b93bbcb1143a7be5a0c0c04 + sha256: "7687075e408b093f36e6bbf6c91878cc0d4cd10f409506f7bc996f68220b9136" url: "https://pub.dev" source: hosted - version: "1.11.0" + version: "1.12.0" mime: dependency: transitive description: @@ -672,18 +672,18 @@ packages: dependency: "direct main" description: name: path_provider - sha256: b27217933eeeba8ff24845c34003b003b2b22151de3c908d0e679e8fe1aa078b + sha256: c9e7d3a4cd1410877472158bee69963a4579f78b68c65a2b7d40d1a7a88bb161 url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.3" path_provider_android: dependency: transitive description: name: path_provider_android - sha256: "477184d672607c0a3bf68fbbf601805f92ef79c82b64b4d6eb318cbca4c48668" + sha256: a248d8146ee5983446bf03ed5ea8f6533129a12b11f12057ad1b4a67a2b3b41d url: "https://pub.dev" source: hosted - version: "2.2.2" + version: "2.2.4" path_provider_foundation: dependency: transitive description: @@ -744,10 +744,10 @@ packages: dependency: transitive description: name: pointycastle - sha256: "43ac87de6e10afabc85c445745a7b799e04de84cebaa4fd7bf55a5e1e9604d29" + sha256: "79fbafed02cfdbe85ef3fd06c7f4bc2cbcba0177e61b765264853d4253b21744" url: "https://pub.dev" source: hosted - version: "3.7.4" + version: "3.9.0" pool: dependency: transitive description: @@ -768,10 +768,10 @@ packages: dependency: transitive description: name: provider - sha256: "9a96a0a19b594dbc5bf0f1f27d2bc67d5f95957359b461cd9feb44ed6ae75096" + sha256: c8a055ee5ce3fd98d6fc872478b03823ffdb448699c6ebdbbc71d59b596fd48c url: "https://pub.dev" source: hosted - version: "6.1.1" + version: "6.1.2" pub_semver: dependency: transitive description: @@ -800,18 +800,18 @@ packages: dependency: "direct main" description: name: shared_preferences - sha256: "81429e4481e1ccfb51ede496e916348668fd0921627779233bd24cc3ff6abd02" + sha256: d3bbe5553a986e83980916ded2f0b435ef2e1893dfaa29d5a7a790d0eca12180 url: "https://pub.dev" source: hosted - version: "2.2.2" + version: "2.2.3" shared_preferences_android: dependency: transitive description: name: shared_preferences_android - sha256: "8568a389334b6e83415b6aae55378e158fbc2314e074983362d20c562780fb06" + sha256: "1ee8bf911094a1b592de7ab29add6f826a7331fb854273d55918693d5364a1f2" url: "https://pub.dev" source: hosted - version: "2.2.1" + version: "2.2.2" shared_preferences_foundation: dependency: transitive description: @@ -1021,18 +1021,18 @@ packages: dependency: "direct main" description: name: url_launcher - sha256: "0ecc004c62fd3ed36a2ffcbe0dd9700aee63bd7532d0b642a488b1ec310f492e" + sha256: "6ce1e04375be4eed30548f10a315826fd933c1e493206eab82eed01f438c8d2e" url: "https://pub.dev" source: hosted - version: "6.2.5" + version: "6.2.6" url_launcher_android: dependency: transitive description: name: url_launcher_android - sha256: d4ed0711849dd8e33eb2dd69c25db0d0d3fdc37e0a62e629fe32f57a22db2745 + sha256: "360a6ed2027f18b73c8d98e159dda67a61b7f2e0f6ec26e86c3ada33b0621775" url: "https://pub.dev" source: hosted - version: "6.3.0" + version: "6.3.1" url_launcher_ios: dependency: transitive description: @@ -1069,10 +1069,10 @@ packages: dependency: transitive description: name: url_launcher_web - sha256: "3692a459204a33e04bc94f5fb91158faf4f2c8903281ddd82915adecdb1a901d" + sha256: "8d9e750d8c9338601e709cd0885f95825086bd8b642547f26bda435aade95d8a" url: "https://pub.dev" source: hosted - version: "2.3.0" + version: "2.3.1" url_launcher_windows: dependency: transitive description: @@ -1101,10 +1101,10 @@ packages: dependency: transitive description: name: vm_service - sha256: a2662fb1f114f4296cf3f5a50786a2d888268d7776cf681aa17d660ffa23b246 + sha256: "3923c89304b715fb1eb6423f017651664a03bf5f4b29983627c4da791f74a4ec" url: "https://pub.dev" source: hosted - version: "14.0.0" + version: "14.2.1" watcher: dependency: transitive description: @@ -1117,18 +1117,18 @@ packages: dependency: transitive description: name: web - sha256: "1d9158c616048c38f712a6646e317a3426da10e884447626167240d45209cbad" + sha256: "97da13628db363c635202ad97068d47c5b8aa555808e7a9411963c533b449b27" url: "https://pub.dev" source: hosted - version: "0.5.0" + version: "0.5.1" web_socket_channel: dependency: transitive description: name: web_socket_channel - sha256: "1d8e795e2a8b3730c41b8a98a2dff2e0fb57ae6f0764a1c46ec5915387d257b2" + sha256: "58c6666b342a38816b2e7e50ed0f1e261959630becd4c879c4f26bfa14aa5a42" url: "https://pub.dev" source: hosted - version: "2.4.4" + version: "2.4.5" webdriver: dependency: transitive description: @@ -1157,10 +1157,10 @@ packages: dependency: transitive description: name: win32 - sha256: "5a751eddf9db89b3e5f9d50c20ab8612296e4e8db69009788d6c8b060a84191c" + sha256: "0a989dc7ca2bb51eac91e8fd00851297cfffd641aa7538b165c62637ca0eaa4a" url: "https://pub.dev" source: hosted - version: "4.1.4" + version: "5.4.0" xdg_directories: dependency: transitive description: -- 2.45.2 From 41d45e96fb056589def8674517845d94ef4ed85d Mon Sep 17 00:00:00 2001 From: Renovator Date: Mon, 22 Apr 2024 15:37:21 +0200 Subject: [PATCH 15/22] fix(deps): update dependency fl_chart to ^0.67.0 --- pubspec.lock | 12 ++++++------ pubspec.yaml | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/pubspec.lock b/pubspec.lock index 2b009a3..ca1cd18 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -277,10 +277,10 @@ packages: dependency: "direct main" description: name: fl_chart - sha256: "00b74ae680df6b1135bdbea00a7d1fc072a9180b7c3f3702e4b19a9943f5ed7d" + sha256: "2b7c1f5d867da9a054661641c8f499c55c47c39acccb97b3bc673f5fa9a39e74" url: "https://pub.dev" source: hosted - version: "0.66.2" + version: "0.67.0" flex_color_picker: dependency: "direct main" description: @@ -512,10 +512,10 @@ packages: dependency: "direct main" description: name: intl - sha256: d6f56758b7d3014a48af9701c085700aac781a92a87a62b1333b46d8879661cf + sha256: "3bc132a9dbce73a7e4a21a17d06e1878839ffbf975568bc875c60537824b0c4d" url: "https://pub.dev" source: hosted - version: "0.19.0" + version: "0.18.1" introduction_screen: dependency: "direct main" description: @@ -1101,10 +1101,10 @@ packages: dependency: transitive description: name: vm_service - sha256: "3923c89304b715fb1eb6423f017651664a03bf5f4b29983627c4da791f74a4ec" + sha256: a2662fb1f114f4296cf3f5a50786a2d888268d7776cf681aa17d660ffa23b246 url: "https://pub.dev" source: hosted - version: "14.2.1" + version: "14.0.0" watcher: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 8a2a40a..4878203 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -18,7 +18,7 @@ dependencies: currency_picker: ^2.0.16 dio: ^5.3.0 dynamic_color: ^1.6.6 - fl_chart: ^0.66.0 + fl_chart: ^0.67.0 flex_color_picker: ^3.3.0 flutter: sdk: flutter -- 2.45.2 From d832080a6d89cbbbe23eeadf9e1f80b46df8bd4e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Mon, 22 Apr 2024 15:53:38 +0200 Subject: [PATCH 16/22] fix: implement breaking change from fl_chart --- lib/util/graphs.dart | 3 ++- pubspec.lock | 8 ++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/lib/util/graphs.dart b/lib/util/graphs.dart index 3abf042..d125b36 100644 --- a/lib/util/graphs.dart +++ b/lib/util/graphs.dart @@ -71,7 +71,8 @@ class ExpensesLineChart extends StatelessWidget { LineChartData( lineTouchData: LineTouchData( touchTooltipData: LineTouchTooltipData( - tooltipBgColor: Theme.of(context).colorScheme.secondaryContainer, + getTooltipColor: (group) => + Theme.of(context).colorScheme.secondaryContainer, getTooltipItems: (spots) => List.generate( spots.length, (index) => LineTooltipItem( diff --git a/pubspec.lock b/pubspec.lock index ca1cd18..14ab21a 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -512,10 +512,10 @@ packages: dependency: "direct main" description: name: intl - sha256: "3bc132a9dbce73a7e4a21a17d06e1878839ffbf975568bc875c60537824b0c4d" + sha256: d6f56758b7d3014a48af9701c085700aac781a92a87a62b1333b46d8879661cf url: "https://pub.dev" source: hosted - version: "0.18.1" + version: "0.19.0" introduction_screen: dependency: "direct main" description: @@ -1101,10 +1101,10 @@ packages: dependency: transitive description: name: vm_service - sha256: a2662fb1f114f4296cf3f5a50786a2d888268d7776cf681aa17d660ffa23b246 + sha256: "3923c89304b715fb1eb6423f017651664a03bf5f4b29983627c4da791f74a4ec" url: "https://pub.dev" source: hosted - version: "14.0.0" + version: "14.2.1" watcher: dependency: transitive description: -- 2.45.2 From 58dd06f39f09ea6653453f9f941b5b8ddea748b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Mon, 22 Apr 2024 16:18:48 +0200 Subject: [PATCH 17/22] fix: use controllers for textfields Fixes #39 --- lib/views/create_entry.dart | 35 +++++++++++++------------- lib/views/create_recur_entry.dart | 42 +++++++++++++++---------------- 2 files changed, 37 insertions(+), 40 deletions(-) diff --git a/lib/views/create_entry.dart b/lib/views/create_entry.dart index 26593f2..937e5af 100644 --- a/lib/views/create_entry.dart +++ b/lib/views/create_entry.dart @@ -16,7 +16,8 @@ class CreateSingleEntryView extends StatefulWidget { /// Used when user wants to add new entry const CreateSingleEntryView({ required this.w, - required this.locale, super.key, + required this.locale, + super.key, this.editEntry, }); @@ -36,6 +37,9 @@ class CreateSingleEntryView extends StatefulWidget { class _CreateSingleEntryViewState extends State { late WalletSingleEntry newEntry; + final _entryNameController = TextEditingController(); + final _entryBalanceController = TextEditingController(); + final _entryDescriptionController = TextEditingController(); @override void initState() { super.initState(); @@ -50,6 +54,9 @@ class _CreateSingleEntryViewState extends State { category: widget.w.categories.first, ); } + _entryNameController.text = newEntry.data.name; + _entryBalanceController.text = newEntry.data.amount.toString(); + _entryDescriptionController.text = newEntry.data.description; setState(() {}); } @@ -71,10 +78,7 @@ class _CreateSingleEntryViewState extends State { width: MediaQuery.of(context).size.width * 0.8, child: PlatformField( labelText: AppLocalizations.of(context).name, - controller: TextEditingController(text: newEntry.data.name), - onChanged: (v) { - newEntry.data.name = v; - }, + controller: _entryNameController, ), ), const SizedBox( @@ -84,9 +88,7 @@ class _CreateSingleEntryViewState extends State { width: MediaQuery.of(context).size.width * 0.8, child: PlatformField( labelText: AppLocalizations.of(context).amount, - controller: TextEditingController( - text: newEntry.data.amount.toString(), - ), + controller: _entryBalanceController, keyboardType: const TextInputType.numberWithOptions(decimal: true), inputFormatters: [ @@ -94,9 +96,6 @@ class _CreateSingleEntryViewState extends State { RegExp(r'\d+[\.,]{0,1}\d{0,}'), ), ], - onChanged: (v) { - newEntry.data.amount = double.parse(v); - }, ), ), const SizedBox( @@ -183,12 +182,7 @@ class _CreateSingleEntryViewState extends State { child: PlatformField( keyboardType: TextInputType.multiline, maxLines: null, - controller: TextEditingController( - text: newEntry.data.description, - ), - onChanged: (v) { - newEntry.data.description = v; - }, + controller: _entryDescriptionController, ), ), const SizedBox( @@ -224,13 +218,18 @@ class _CreateSingleEntryViewState extends State { PlatformButton( text: AppLocalizations.of(context).save, onPressed: () { - if (newEntry.data.name.isEmpty) { + if (_entryNameController.text.isEmpty) { showMessage( AppLocalizations.of(context).errorEmptyName, context, ); return; } + newEntry.data.name = _entryNameController.text; + newEntry.data.amount = + double.parse(_entryBalanceController.text); + newEntry.data.description = + _entryDescriptionController.text; if (widget.editEntry != null) { Navigator.of(context).pop(newEntry); return; diff --git a/lib/views/create_recur_entry.dart b/lib/views/create_recur_entry.dart index be03897..5224277 100644 --- a/lib/views/create_recur_entry.dart +++ b/lib/views/create_recur_entry.dart @@ -7,7 +7,6 @@ import 'package:prasule/api/entry_data.dart'; import 'package:prasule/api/recurring_entry.dart'; import 'package:prasule/api/wallet.dart'; import 'package:prasule/api/wallet_manager.dart'; -import 'package:prasule/main.dart'; import 'package:prasule/pw/platformbutton.dart'; import 'package:prasule/pw/platformfield.dart'; import 'package:prasule/util/show_message.dart'; @@ -39,6 +38,10 @@ class CreateRecurringEntryView extends StatefulWidget { class _CreateRecurringEntryViewState extends State { late RecurringWalletEntry newEntry; + final _entryNameController = TextEditingController(); + final _entryBalanceController = TextEditingController(); + final _entryDescriptionController = TextEditingController(); + final _repeatAfterController = TextEditingController(); @override void initState() { super.initState(); @@ -55,6 +58,10 @@ class _CreateRecurringEntryViewState extends State { recurType: RecurType.month, ); } + _entryNameController.text = newEntry.data.name; + _entryBalanceController.text = newEntry.data.amount.toString(); + _entryDescriptionController.text = newEntry.data.description; + _repeatAfterController.text = newEntry.repeatAfter.toString(); setState(() {}); } @@ -76,10 +83,7 @@ class _CreateRecurringEntryViewState extends State { width: MediaQuery.of(context).size.width * 0.8, child: PlatformField( labelText: AppLocalizations.of(context).name, - controller: TextEditingController(text: newEntry.data.name), - onChanged: (v) { - newEntry.data.name = v; - }, + controller: _entryNameController, ), ), const SizedBox( @@ -89,9 +93,7 @@ class _CreateRecurringEntryViewState extends State { width: MediaQuery.of(context).size.width * 0.8, child: PlatformField( labelText: AppLocalizations.of(context).amount, - controller: TextEditingController( - text: newEntry.data.amount.toString(), - ), + controller: _entryBalanceController, keyboardType: const TextInputType.numberWithOptions(decimal: true), inputFormatters: [ @@ -99,10 +101,6 @@ class _CreateRecurringEntryViewState extends State { RegExp(r'\d+[\.,]{0,1}\d{0,}'), ), ], - onChanged: (v) { - logger.i(v); - newEntry.data.amount = double.parse(v); - }, ), ), const SizedBox( @@ -189,12 +187,7 @@ class _CreateRecurringEntryViewState extends State { child: PlatformField( keyboardType: TextInputType.multiline, maxLines: null, - controller: TextEditingController( - text: newEntry.data.description, - ), - onChanged: (v) { - newEntry.data.description = v; - }, + controller: _entryDescriptionController, ), ), const SizedBox( @@ -215,9 +208,7 @@ class _CreateRecurringEntryViewState extends State { SizedBox( width: 50, child: PlatformField( - controller: TextEditingController( - text: newEntry.repeatAfter.toString(), - ), + controller: _repeatAfterController, inputFormatters: [ FilteringTextInputFormatter.digitsOnly, FilteringTextInputFormatter.deny( @@ -313,13 +304,20 @@ class _CreateRecurringEntryViewState extends State { PlatformButton( text: AppLocalizations.of(context).save, onPressed: () { - if (newEntry.data.name.isEmpty) { + if (_entryNameController.text.isEmpty) { showMessage( AppLocalizations.of(context).errorEmptyName, context, ); return; } + newEntry.data.name = _entryNameController.text; + newEntry.data.amount = + double.parse(_entryBalanceController.text); + newEntry.repeatAfter = + int.parse(_repeatAfterController.text); + newEntry.data.description = + _entryDescriptionController.text; if (widget.editEntry != null) { Navigator.of(context).pop(newEntry); return; -- 2.45.2 From 5cbb9a12dc097601d8c8952de49d020872b1bb6a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Mon, 22 Apr 2024 16:25:59 +0200 Subject: [PATCH 18/22] fix: remove deprecated code --- lib/util/color_schemes.g.dart | 8 ++------ lib/views/create_entry.dart | 5 +++-- lib/views/home.dart | 6 +++--- lib/views/settings/graph_type.dart | 2 +- lib/views/settings/settings.dart | 2 +- 5 files changed, 10 insertions(+), 13 deletions(-) diff --git a/lib/util/color_schemes.g.dart b/lib/util/color_schemes.g.dart index 47200d1..05e9f27 100644 --- a/lib/util/color_schemes.g.dart +++ b/lib/util/color_schemes.g.dart @@ -20,11 +20,9 @@ const lightColorScheme = ColorScheme( errorContainer: Color(0xFFFFDAD6), onError: Color(0xFFFFFFFF), onErrorContainer: Color(0xFF410002), - background: Color(0xFFFBFDF8), - onBackground: Color(0xFF191C19), surface: Color(0xFFFBFDF8), onSurface: Color(0xFF191C19), - surfaceVariant: Color(0xFFDCE5DB), + surfaceContainerHighest: Color(0xFFDCE5DB), onSurfaceVariant: Color(0xFF414942), outline: Color(0xFF717971), onInverseSurface: Color(0xFFF0F1EC), @@ -54,11 +52,9 @@ const darkColorScheme = ColorScheme( errorContainer: Color(0xFF93000A), onError: Color(0xFF690005), onErrorContainer: Color(0xFFFFDAD6), - background: Color(0xFF191C19), - onBackground: Color(0xFFE1E3DE), surface: Color(0xFF191C19), onSurface: Color(0xFFE1E3DE), - surfaceVariant: Color(0xFF414942), + surfaceContainerHighest: Color(0xFF414942), onSurfaceVariant: Color(0xFFC0C9BF), outline: Color(0xFF8B938A), onInverseSurface: Color(0xFF191C19), diff --git a/lib/views/create_entry.dart b/lib/views/create_entry.dart index 937e5af..77d8492 100644 --- a/lib/views/create_entry.dart +++ b/lib/views/create_entry.dart @@ -29,6 +29,7 @@ class CreateSingleEntryView extends StatefulWidget { /// Is null unless we are editing an existing entry final WalletSingleEntry? editEntry; + /// Locale as set on user's system final String locale; @override @@ -191,10 +192,10 @@ class _CreateSingleEntryViewState extends State { Text(AppLocalizations.of(context).date), PlatformButton( style: ButtonStyle( - backgroundColor: MaterialStateProperty.all( + backgroundColor: WidgetStateProperty.all( Theme.of(context).colorScheme.primary, ), - foregroundColor: MaterialStateProperty.all( + foregroundColor: WidgetStateProperty.all( Theme.of(context).colorScheme.onPrimary, ), ), diff --git a/lib/views/home.dart b/lib/views/home.dart index 23c82e9..8d0b840 100644 --- a/lib/views/home.dart +++ b/lib/views/home.dart @@ -355,7 +355,7 @@ class _HomeViewState extends State { style: TextStyle( color: Theme.of(context) .colorScheme - .onBackground, + .onSurface, ), ), TextSpan( @@ -405,7 +405,7 @@ class _HomeViewState extends State { style: TextStyle( color: Theme.of(context) .colorScheme - .onBackground, + .onSurface, ), ), ], @@ -590,7 +590,7 @@ class _HomeViewState extends State { style: TextStyle( color: Theme.of(context) .colorScheme - .background + .surface .calculateTextColor(), ), ), diff --git a/lib/views/settings/graph_type.dart b/lib/views/settings/graph_type.dart index b946ba6..278d5b8 100644 --- a/lib/views/settings/graph_type.dart +++ b/lib/views/settings/graph_type.dart @@ -37,7 +37,7 @@ class _GraphTypeSettingsViewState extends State { body: SettingsList( applicationType: ApplicationType.both, darkTheme: SettingsThemeData( - settingsListBackground: Theme.of(context).colorScheme.background, + settingsListBackground: Theme.of(context).colorScheme.surface, titleTextColor: Theme.of(context).colorScheme.primary, ), sections: [ diff --git a/lib/views/settings/settings.dart b/lib/views/settings/settings.dart index 47ea3d1..0570525 100644 --- a/lib/views/settings/settings.dart +++ b/lib/views/settings/settings.dart @@ -42,7 +42,7 @@ class _SettingsViewState extends State { body: SettingsList( applicationType: ApplicationType.both, darkTheme: SettingsThemeData( - settingsListBackground: Theme.of(context).colorScheme.background, + settingsListBackground: Theme.of(context).colorScheme.surface, titleTextColor: Theme.of(context).colorScheme.primary, ), sections: [ -- 2.45.2 From 1faa5e2f78e029e67b34af31b4a8dbb52542e3c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Mon, 22 Apr 2024 16:36:20 +0200 Subject: [PATCH 19/22] fix: don't display 'Add new wallet' when returning from a screen --- lib/views/graph_view.dart | 12 +++++++----- lib/views/home.dart | 6 +++++- lib/views/recurring_view.dart | 7 +++++-- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/lib/views/graph_view.dart b/lib/views/graph_view.dart index 8531171..8f701b2 100644 --- a/lib/views/graph_view.dart +++ b/lib/views/graph_view.dart @@ -197,7 +197,9 @@ class _GraphViewState extends State { title: DropdownButton( value: (selectedWallet == null) ? -1 - : wallets.indexOf(selectedWallet!), + : wallets.indexOf( + wallets.where((w) => w.name == selectedWallet!.name).first, + ), items: [ ...wallets.map( (e) => DropdownMenuItem( @@ -333,7 +335,7 @@ class _GraphViewState extends State { ? Theme.of(context) .colorScheme .secondaryContainer - : Theme.of(context).colorScheme.background, + : Theme.of(context).colorScheme.surface, ), child: Padding( padding: const EdgeInsets.all(8), @@ -427,7 +429,7 @@ class _GraphViewState extends State { ? Theme.of(context) .colorScheme .secondaryContainer - : Theme.of(context).colorScheme.background, + : Theme.of(context).colorScheme.surface, ), width: MediaQuery.of(context).size.width * 0.95, height: MediaQuery.of(context).size.height * 0.4, @@ -557,7 +559,7 @@ class _GraphViewState extends State { ? Theme.of(context) .colorScheme .secondaryContainer - : Theme.of(context).colorScheme.background, + : Theme.of(context).colorScheme.surface, ), child: Padding( padding: const EdgeInsets.all(8), @@ -650,7 +652,7 @@ class _GraphViewState extends State { ? Theme.of(context) .colorScheme .secondaryContainer - : Theme.of(context).colorScheme.background, + : Theme.of(context).colorScheme.surface, ), width: MediaQuery.of(context).size.width * 0.95, height: MediaQuery.of(context).size.height * 0.4, diff --git a/lib/views/home.dart b/lib/views/home.dart index 8d0b840..64476ff 100644 --- a/lib/views/home.dart +++ b/lib/views/home.dart @@ -166,7 +166,11 @@ class _HomeViewState extends State { secondChild: DropdownButton( value: (selectedWallet == null) ? -1 - : wallets.indexOf(selectedWallet!), + : wallets.indexOf( + wallets + .where((w) => w.name == selectedWallet!.name) + .first, + ), items: [ ...wallets.map( (e) => DropdownMenuItem( diff --git a/lib/views/recurring_view.dart b/lib/views/recurring_view.dart index faa6cde..c5edbaa 100644 --- a/lib/views/recurring_view.dart +++ b/lib/views/recurring_view.dart @@ -63,8 +63,11 @@ class _RecurringEntriesViewState extends State { drawer: makeDrawer(context, 3), appBar: AppBar( title: DropdownButton( - value: - (selectedWallet == null) ? -1 : wallets.indexOf(selectedWallet!), + value: (selectedWallet == null) + ? -1 + : wallets.indexOf( + wallets.where((w) => w.name == selectedWallet!.name).first, + ), items: [ ...wallets.map( (e) => DropdownMenuItem( -- 2.45.2 From 8ff63c9492fe3448cedf2344b6e8ee4bac406242 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Mon, 22 Apr 2024 16:59:08 +0200 Subject: [PATCH 20/22] fix: set correct graph type when opening graph view fixes #41 --- lib/views/graph_view.dart | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/views/graph_view.dart b/lib/views/graph_view.dart index 8f701b2..4a25c4c 100644 --- a/lib/views/graph_view.dart +++ b/lib/views/graph_view.dart @@ -97,7 +97,8 @@ class _GraphViewState extends State { super.initState(); loadWallet(); SharedPreferences.getInstance().then((s) { - chartType = s.getInt("monthlygraph") ?? 2; + chartType = s.getInt("yearlygraph") ?? 1; + logger.d(chartType); setState(() {}); }); } -- 2.45.2 From 481716a3b2ee59dc97b6312df11c31d0acebdd44 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Mon, 22 Apr 2024 17:03:51 +0200 Subject: [PATCH 21/22] chore: bump version --- CHANGELOG.md | 7 +++++++ lib/util/utils.dart | 2 +- pubspec.yaml | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f1f88fa..92dce08 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +# 1.1.1 +- Removed deprecated code +- Updated dependencies +- Fix wrong graph type upon opening graph view +- Fix text fields behaving unexpectedly +- Fix new wallet name being rewritten to the default placeholder + # 1.1.0 - Fix indicators for Pie Chart - Fix entries not showing up immediately after creation diff --git a/lib/util/utils.dart b/lib/util/utils.dart index 5c84324..ef466ae 100644 --- a/lib/util/utils.dart +++ b/lib/util/utils.dart @@ -12,7 +12,7 @@ void showAbout(BuildContext context) { context: context, applicationLegalese: AppLocalizations.of(context).license, applicationName: "Prašule", - applicationVersion: "1.1.0", + applicationVersion: "1.1.1", applicationIcon: const CircleAvatar( backgroundImage: AssetImage("assets/icon/full_ico.png"), ), diff --git a/pubspec.yaml b/pubspec.yaml index 4878203..a108462 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,7 +1,7 @@ name: prasule description: Open-source private expense tracker -version: 1.1.0+7 +version: 1.1.1+8 environment: sdk: '>=3.1.0-262.2.beta <4.0.0' -- 2.45.2 From 80f2ae9f7f569ccf61ca3ea4eb8e1553997a99c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Mon, 22 Apr 2024 17:04:59 +0200 Subject: [PATCH 22/22] docs: add app bar fix to changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 92dce08..c4fdf39 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ - Updated dependencies - Fix wrong graph type upon opening graph view - Fix text fields behaving unexpectedly +- Fix `Add new wallet` showing in the app bar when returning from another view - Fix new wallet name being rewritten to the default placeholder # 1.1.0 -- 2.45.2