updated libs, fixed transaction form

This commit is contained in:
2024-04-20 21:06:25 +02:00
parent 35930d188c
commit 6a9da33283
8 changed files with 70 additions and 68 deletions

View File

@@ -20,11 +20,17 @@ class JsonStorageClient {
} }
Future<File> _getJson(String filename) async { Future<File> _getJson(String filename) async {
final dir = await getApplicationDocumentsDirectory(); final rootDirectory = Platform.isAndroid ? await getExternalStorageDirectory() : await getApplicationDocumentsDirectory();
final file = File('${dir.path}/$filename');
if (!file.existsSync()) { final appDirectory = Directory('${rootDirectory!.path}/krezus');
file.createSync(); if (!appDirectory.existsSync()) {
appDirectory.createSync();
} }
return file;
final targetFile = File('${rootDirectory.path}/krezus/$filename');
if (!targetFile.existsSync()) {
targetFile.createSync();
}
return targetFile;
} }
} }

View File

@@ -75,7 +75,7 @@ class AccountBloc extends Bloc<AccountEvent, AccountState> {
} }
_onAccountImportCSV(AccountImportCSV event, Emitter<AccountState> emit) async { _onAccountImportCSV(AccountImportCSV event, Emitter<AccountState> emit) async {
int colorIndex = 0; // int colorIndex = 0;
FilePickerResult? result = await FilePicker.platform.pickFiles(); FilePickerResult? result = await FilePicker.platform.pickFiles();
final csvPath = result?.files.first.path; final csvPath = result?.files.first.path;
@@ -172,7 +172,7 @@ class AccountBloc extends Bloc<AccountEvent, AccountState> {
} }
_onAccountEditLabel(AccountEditLabel event, Emitter<AccountState> emit) { _onAccountEditLabel(AccountEditLabel event, Emitter<AccountState> emit) {
Account account = event.account; // Account account = event.account;
// TODO check for existance, rename every transaction // TODO check for existance, rename every transaction
} }

View File

@@ -167,11 +167,11 @@ class TransactionBloc extends Bloc<TransactionEvent, TransactionState> {
emit(state.copyWith( emit(state.copyWith(
currentTransaction: null, currentTransaction: null,
transactionDate: const TransactionDate.pure(), // transactionDate: const TransactionDate.pure(),
transactionCategory: const TransactionCategory.pure(), // transactionCategory: const TransactionCategory.pure(),
transactionDescription: const TransactionDescription.pure(), // transactionDescription: const TransactionDescription.pure(),
transactionAccount: const TransactionAccount.pure(), // transactionAccount: const TransactionAccount.pure(),
transactionValue: const TransactionValue.pure(), // transactionValue: const TransactionValue.pure(),
transactions: transactions, transactions: transactions,
transactionsLines: computeResult.list, transactionsLines: computeResult.list,
transactionsLinesFiltered: _applyCategoryFilter(computeResult.list), transactionsLinesFiltered: _applyCategoryFilter(computeResult.list),

View File

@@ -29,7 +29,7 @@ class GlobalTotalChart extends StatelessWidget {
lineTouchData: LineTouchData( lineTouchData: LineTouchData(
touchTooltipData: LineTouchTooltipData( touchTooltipData: LineTouchTooltipData(
maxContentWidth: 100, maxContentWidth: 100,
tooltipBgColor: Theme.of(context).colorScheme.primaryContainer, getTooltipColor: (LineBarSpot _) => Theme.of(context).colorScheme.primaryContainer,
getTooltipItems: (touchedSpots) { getTooltipItems: (touchedSpots) {
return touchedSpots.map((LineBarSpot touchedSpot) { return touchedSpots.map((LineBarSpot touchedSpot) {
final textStyle = TextStyle( final textStyle = TextStyle(

View File

@@ -94,7 +94,8 @@ class MonthlyCategoriesTotalChart extends StatelessWidget {
enabled: true, enabled: true,
handleBuiltInTouches: false, handleBuiltInTouches: false,
touchTooltipData: BarTouchTooltipData( touchTooltipData: BarTouchTooltipData(
tooltipBgColor: Colors.transparent, // tooltipBgColor: Colors.transparent,
getTooltipColor: (BarChartGroupData _) => Colors.transparent,
tooltipMargin: 0, tooltipMargin: 0,
getTooltipItem:(group, groupIndex, rod, rodIndex) { getTooltipItem:(group, groupIndex, rod, rodIndex) {
String value = NumberFormat("#00").format(rod.toY); String value = NumberFormat("#00").format(rod.toY);

View File

@@ -37,8 +37,11 @@ class _TransactionDateInput extends StatelessWidget {
builder: (context, state) => SizedBox( builder: (context, state) => SizedBox(
width: 500, width: 500,
child: TextFormField( child: TextFormField(
initialValue: DateFormat('dd-MM-yyyy', 'fr_FR').format(state.transactionDate.value ?? DateTime.now()),
keyboardType: TextInputType.datetime, keyboardType: TextInputType.datetime,
readOnly: true,
controller: TextEditingController(
text: DateFormat('dd-MM-yyyy', 'fr_FR').format(state.transactionDate.value ?? DateTime.now()),
),
onTap: () { onTap: () {
FocusScope.of(context).requestFocus(FocusNode()); FocusScope.of(context).requestFocus(FocusNode());
showDatePicker( showDatePicker(

View File

@@ -13,10 +13,10 @@ packages:
dependency: transitive dependency: transitive
description: description:
name: args name: args
sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596 sha256: "7cf60b9f0cc88203c5a190b4cd62a99feea42759a7fa695010eb5de1c0b2252a"
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "2.4.2" version: "2.5.0"
async: async:
dependency: transitive dependency: transitive
description: description:
@@ -29,10 +29,10 @@ packages:
dependency: transitive dependency: transitive
description: description:
name: bloc name: bloc
sha256: f53a110e3b48dcd78136c10daa5d51512443cea5e1348c9d80a320095fa2db9e sha256: "106842ad6569f0b60297619e9e0b1885c2fb9bf84812935490e6c5275777804e"
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "8.1.3" version: "8.1.4"
boolean_selector: boolean_selector:
dependency: transitive dependency: transitive
description: description:
@@ -89,6 +89,14 @@ packages:
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "3.1.1" version: "3.1.1"
cross_file:
dependency: transitive
description:
name: cross_file
sha256: fedaadfa3a6996f75211d835aaeb8fede285dae94262485698afd832371b9a5e
url: "https://pub.dev"
source: hosted
version: "0.3.3+8"
crypto: crypto:
dependency: transitive dependency: transitive
description: description:
@@ -101,26 +109,26 @@ packages:
dependency: "direct main" dependency: "direct main"
description: description:
name: csv name: csv
sha256: "63ed2871dd6471193dffc52c0e6c76fb86269c00244d244297abbb355c84a86e" sha256: c6aa2679b2a18cb57652920f674488d89712efaf4d3fdf2e537215b35fc19d6c
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "5.1.1" version: "6.0.0"
cupertino_icons: cupertino_icons:
dependency: "direct main" dependency: "direct main"
description: description:
name: cupertino_icons name: cupertino_icons
sha256: d57953e10f9f8327ce64a508a355f0b1ec902193f66288e8cb5070e7c47eeb2d sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "1.0.6" version: "1.0.8"
dynamic_color: dynamic_color:
dependency: "direct main" dependency: "direct main"
description: description:
name: dynamic_color name: dynamic_color
sha256: a866f1f8947bfdaf674d7928e769eac7230388a2e7a2542824fad4bb5b87be3b sha256: eae98052fa6e2826bdac3dd2e921c6ce2903be15c6b7f8b6d8a5d49b5086298d
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "1.6.9" version: "1.7.0"
equatable: equatable:
dependency: "direct main" dependency: "direct main"
description: description:
@@ -149,10 +157,10 @@ packages:
dependency: "direct main" dependency: "direct main"
description: description:
name: file_picker name: file_picker
sha256: "4e42aacde3b993c5947467ab640882c56947d9d27342a5b6f2895b23956954a6" sha256: d1d0ac3966b36dc3e66eeefb40280c17feb87fa2099c6e22e6a1fc959327bd03
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "6.1.1" version: "8.0.0+1"
fixnum: fixnum:
dependency: transitive dependency: transitive
description: description:
@@ -165,26 +173,26 @@ packages:
dependency: "direct main" dependency: "direct main"
description: description:
name: fl_chart name: fl_chart
sha256: "00b74ae680df6b1135bdbea00a7d1fc072a9180b7c3f3702e4b19a9943f5ed7d" sha256: "2b7c1f5d867da9a054661641c8f499c55c47c39acccb97b3bc673f5fa9a39e74"
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "0.66.2" version: "0.67.0"
flex_color_picker: flex_color_picker:
dependency: "direct main" dependency: "direct main"
description: description:
name: flex_color_picker name: flex_color_picker
sha256: "0871edc170153cfc3de316d30625f40a85daecfa76ce541641f3cc0ec7757cbf" sha256: "5c846437069fb7afdd7ade6bf37e628a71d2ab0787095ddcb1253bf9345d5f3a"
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "3.3.1" version: "3.4.1"
flex_seed_scheme: flex_seed_scheme:
dependency: transitive dependency: transitive
description: description:
name: flex_seed_scheme name: flex_seed_scheme
sha256: "29c12aba221eb8a368a119685371381f8035011d18de5ba277ad11d7dfb8657f" sha256: "4cee2f1d07259f77e8b36f4ec5f35499d19e74e17c7dce5b819554914082bc01"
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "1.4.0" version: "1.5.0"
flutter: flutter:
dependency: "direct main" dependency: "direct main"
description: flutter description: flutter
@@ -194,10 +202,10 @@ packages:
dependency: "direct main" dependency: "direct main"
description: description:
name: flutter_bloc name: flutter_bloc
sha256: "87325da1ac757fcc4813e6b34ed5dd61169973871fdf181d6c2109dd6935ece1" sha256: f0ecf6e6eb955193ca60af2d5ca39565a86b8a142452c5b24d96fb477428f4d2
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "8.1.4" version: "8.1.5"
flutter_keyboard_visibility: flutter_keyboard_visibility:
dependency: transitive dependency: transitive
description: description:
@@ -258,23 +266,18 @@ packages:
dependency: "direct dev" dependency: "direct dev"
description: description:
name: flutter_lints name: flutter_lints
sha256: e2a421b7e59244faef694ba7b30562e489c2b489866e505074eb005cd7060db7 sha256: "9e8c3858111da373efc5aa341de011d9bd23e2c5c5e0c62bccf32438e192d7b1"
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "3.0.1" version: "3.0.2"
flutter_localizations:
dependency: "direct main"
description: flutter
source: sdk
version: "0.0.0"
flutter_plugin_android_lifecycle: flutter_plugin_android_lifecycle:
dependency: transitive dependency: transitive
description: description:
name: flutter_plugin_android_lifecycle name: flutter_plugin_android_lifecycle
sha256: b068ffc46f82a55844acfa4fdbb61fad72fa2aef0905548419d97f0f95c456da sha256: "8cf40eebf5dec866a6d1956ad7b4f7016e6c0cc69847ab946833b7d43743809f"
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "2.0.17" version: "2.0.19"
flutter_test: flutter_test:
dependency: "direct dev" dependency: "direct dev"
description: flutter description: flutter
@@ -309,14 +312,6 @@ packages:
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "4.1.7" version: "4.1.7"
intl:
dependency: "direct main"
description:
name: intl
sha256: "3bc132a9dbce73a7e4a21a17d06e1878839ffbf975568bc875c60537824b0c4d"
url: "https://pub.dev"
source: hosted
version: "0.18.1"
js: js:
dependency: transitive dependency: transitive
description: description:
@@ -393,18 +388,18 @@ packages:
dependency: "direct main" dependency: "direct main"
description: description:
name: path_provider name: path_provider
sha256: b27217933eeeba8ff24845c34003b003b2b22151de3c908d0e679e8fe1aa078b sha256: c9e7d3a4cd1410877472158bee69963a4579f78b68c65a2b7d40d1a7a88bb161
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "2.1.2" version: "2.1.3"
path_provider_android: path_provider_android:
dependency: transitive dependency: transitive
description: description:
name: path_provider_android name: path_provider_android
sha256: "477184d672607c0a3bf68fbbf601805f92ef79c82b64b4d6eb318cbca4c48668" sha256: a248d8146ee5983446bf03ed5ea8f6533129a12b11f12057ad1b4a67a2b3b41d
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "2.2.2" version: "2.2.4"
path_provider_foundation: path_provider_foundation:
dependency: transitive dependency: transitive
description: description:
@@ -497,18 +492,18 @@ packages:
dependency: transitive dependency: transitive
description: description:
name: pointycastle name: pointycastle
sha256: "43ac87de6e10afabc85c445745a7b799e04de84cebaa4fd7bf55a5e1e9604d29" sha256: "79fbafed02cfdbe85ef3fd06c7f4bc2cbcba0177e61b765264853d4253b21744"
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "3.7.4" version: "3.9.0"
provider: provider:
dependency: transitive dependency: transitive
description: description:
name: provider name: provider
sha256: "9a96a0a19b594dbc5bf0f1f27d2bc67d5f95957359b461cd9feb44ed6ae75096" sha256: c8a055ee5ce3fd98d6fc872478b03823ffdb448699c6ebdbbc71d59b596fd48c
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "6.1.1" version: "6.1.2"
rxdart: rxdart:
dependency: "direct main" dependency: "direct main"
description: description:
@@ -590,10 +585,10 @@ packages:
dependency: "direct main" dependency: "direct main"
description: description:
name: uuid name: uuid
sha256: cd210a09f7c18cbe5a02511718e0334de6559871052c90a90c0cca46a4aa81c8 sha256: "814e9e88f21a176ae1359149021870e87f7cddaf633ab678a5d2b0bff7fd1ba8"
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "4.3.3" version: "4.4.0"
vector_math: vector_math:
dependency: transitive dependency: transitive
description: description:

View File

@@ -12,17 +12,14 @@ dependencies:
sdk: flutter sdk: flutter
cupertino_icons: ^1.0.2 cupertino_icons: ^1.0.2
fl_chart: ^0.66.2 fl_chart: ^0.67.0
logging: ^1.2.0 logging: ^1.2.0
flutter_bloc: ^8.1.4 flutter_bloc: ^8.1.4
path_provider: ^2.1.1 path_provider: ^2.1.1
equatable: ^2.0.5 equatable: ^2.0.5
rxdart: ^0.27.7 rxdart: ^0.27.7
file_picker: ^6.1.1 file_picker: ^8.0.0+1
csv: ^5.1.1 csv: ^6.0.0
flutter_localizations:
sdk: flutter
intl: any
formz: ^0.7.0 formz: ^0.7.0
uuid: ^4.3.2 uuid: ^4.3.2
flutter_typeahead: ^5.2.0 flutter_typeahead: ^5.2.0