From 00e67c76e4872dcb92c50ce44d3bb9ca60dfe564 Mon Sep 17 00:00:00 2001 From: CodeDoctorDE Date: Fri, 28 Jul 2023 15:12:08 +0200 Subject: [PATCH] Fix start of week --- SECURITY.md | 3 +- app/lib/pages/calendar/month.dart | 31 ++++++------- app/lib/pages/calendar/week.dart | 5 +- app/pubspec.lock | 4 +- app/pubspec.yaml | 2 +- docs/yarn.lock | 46 +++++++++---------- .../metadata/android/en-US/changelogs/5.txt | 4 +- 7 files changed, 45 insertions(+), 50 deletions(-) diff --git a/SECURITY.md b/SECURITY.md index 8caaabe5c6e..4f3525ad417 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -4,8 +4,7 @@ | Version | Supported | | | ------- | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | -| 2.0-dev | :warning: | [Docs](https://docs.flow.linwood.dev/docs/dev/intro) | -| 0.1.3 | :white_check_mark: | [Docs](https://docs.flow.linwood.dev/docs/dev/intro) [Release](https://github.com/LinwoodDev/Flow/releases/tag/v0.1.3) | +| 0.2.0 | :white_check_mark: | [Docs](https://docs.flow.linwood.dev/docs/dev/intro) [Release](https://github.com/LinwoodDev/Flow/releases/tag/v0.2.0) | ## Reporting a Vulnerability diff --git a/app/lib/pages/calendar/month.dart b/app/lib/pages/calendar/month.dart index 5a517c45133..1774df93a49 100644 --- a/app/lib/pages/calendar/month.dart +++ b/app/lib/pages/calendar/month.dart @@ -33,9 +33,9 @@ class CalendarMonthView extends StatefulWidget { class _CalendarMonthViewState extends State { late final FlowCubit _cubit; - int _month = 0, _year = 0; + int _month = 0, _year = 0, _startOfWeek = 0; late final DateTime _now; - late Future<(int, List>>)> + late Future>>> _appointments; @override @@ -45,6 +45,8 @@ class _CalendarMonthViewState extends State { _cubit = context.read(); _month = _now.month; _year = _now.year; + _startOfWeek = context.read().state.startOfWeek; + _appointments = _fetchCalendarItems(); } @@ -55,18 +57,14 @@ class _CalendarMonthViewState extends State { _now.hour, _now.minute, _now.second, - ).nextStartOfWeek.addDays(-7); + ).nextStartOfWeek.addDays(-7 + _startOfWeek); int _getDaysInView() => 6 * 7; - Future<(int, List>>)> + Future>>> _fetchCalendarItems() async { - final startOfWeek = context.read().state.startOfWeek; if (!mounted) { - return ( - startOfWeek, - >>[] - ); + return []; } var sources = _cubit.getCurrentServicesMap(); @@ -79,7 +77,7 @@ class _CalendarMonthViewState extends State { final appointments = >>[ for (int i = 0; i < days; i++) [] ]; - final date = _date.addDays(days); + final date = _date; for (final source in sources.entries) { for (int i = 0; i < days; i++) { final fetchedDay = await source.value.calendarItem?.getCalendarItems( @@ -98,7 +96,7 @@ class _CalendarMonthViewState extends State { .addAll(fetchedDay.map((e) => SourcedModel(source.key, e))); } } - return (startOfWeek, appointments); + return appointments; } void _addMonth(int add) { @@ -196,10 +194,7 @@ class _CalendarMonthViewState extends State { ]), Expanded( child: FutureBuilder< - ( - int, - List>> - )>( + List>>>( future: _appointments, builder: (context, snapshot) { if (snapshot.hasError) { @@ -208,7 +203,7 @@ class _CalendarMonthViewState extends State { if (!snapshot.hasData) { return const Center(child: CircularProgressIndicator()); } - final (startOfWeek, appointments) = snapshot.data!; + final appointments = snapshot.data!; return SingleChildScrollView( child: GridView.builder( shrinkWrap: true, @@ -222,7 +217,7 @@ class _CalendarMonthViewState extends State { if (index < 7) { return LayoutBuilder(builder: (context, constraints) { final current = _date.nextStartOfWeek - .addDays(index + startOfWeek); + .addDays(index + _startOfWeek); var text = DateFormat.EEEE(locale).format( current, ); @@ -248,7 +243,7 @@ class _CalendarMonthViewState extends State { } final current = index - 7; final day = _date.nextStartOfWeek - .addDays(current - 7 + startOfWeek); + .addDays(current - 7 + _startOfWeek); return InkWell( onTap: () async { await showDialog( diff --git a/app/lib/pages/calendar/week.dart b/app/lib/pages/calendar/week.dart index 0e49cc5de0e..3bee44856c1 100644 --- a/app/lib/pages/calendar/week.dart +++ b/app/lib/pages/calendar/week.dart @@ -41,11 +41,11 @@ class _CalendarWeekViewState extends State { void initState() { super.initState(); _cubit = context.read(); - _appointments = _fetchCalendarItems(); final now = DateTime.now(); _week = now.week; _year = now.year; _startOfWeek = context.read().state.startOfWeek; + _appointments = _fetchCalendarItems(); } DateTime get _date => DateTime(_year, 1, 1) @@ -212,8 +212,7 @@ class _CalendarWeekViewState extends State { mainAxisSize: MainAxisSize.min, children: events.asMap().entries.map((entry) { - final date = - _date.addDays(entry.key + _startOfWeek); + final date = _date.addDays(entry.key); return Column( children: [ // Weekday diff --git a/app/pubspec.lock b/app/pubspec.lock index 9d7a5b17f1e..790bf52108d 100644 --- a/app/pubspec.lock +++ b/app/pubspec.lock @@ -1032,10 +1032,10 @@ packages: dependency: "direct main" description: name: sqlite3 - sha256: f7511ddd6a2dda8ded9d849f8a925bb6020e0faa59db2443debc18d484e59401 + sha256: db65233e6b99e99b2548932f55a987961bc06d82a31a0665451fa0b4fff4c3fb url: "https://pub.dev" source: hosted - version: "2.0.0" + version: "2.1.0" sqlite3_flutter_libs: dependency: "direct main" description: diff --git a/app/pubspec.yaml b/app/pubspec.yaml index 00753c8c210..f1ecc0c83c2 100644 --- a/app/pubspec.yaml +++ b/app/pubspec.yaml @@ -61,7 +61,7 @@ dependencies: sqflite_common_ffi: ^2.3.0 sqflite_common_ffi_web: ^0.4.0 sqlite3_flutter_libs: ^0.5.15 - sqlite3: ^2.0.0 + sqlite3: ^2.1.0 dynamic_color: ^1.6.6 simple_icons: ^7.10.0 flutter_localized_locales: ^2.0.4 diff --git a/docs/yarn.lock b/docs/yarn.lock index 0ce9892d9b6..7def85631d0 100644 --- a/docs/yarn.lock +++ b/docs/yarn.lock @@ -3134,13 +3134,13 @@ __metadata: linkType: hard "@types/react@npm:*": - version: 18.2.16 - resolution: "@types/react@npm:18.2.16" + version: 18.2.17 + resolution: "@types/react@npm:18.2.17" dependencies: "@types/prop-types": "*" "@types/scheduler": "*" csstype: ^3.0.2 - checksum: 3d4fdc12509e0098e0dbb4bacdea53e8ccc6632e9df63d9f2711c77aa81ce3b2bb9c76d087f284034b25fd7245680167f4832bf6e4df960c5af2634b52adfd0c + checksum: 150516b31bd98b635e4a56bcf2af007330b35cccb6e35e902f46a47f0e81e30c46cdacc095e91051bdf2f33e4846e7e62fd51b67e064dc7d15c00e15dfa449d5 languageName: node linkType: hard @@ -4625,25 +4625,25 @@ __metadata: linkType: hard "core-js-compat@npm:^3.31.0": - version: 3.31.1 - resolution: "core-js-compat@npm:3.31.1" + version: 3.32.0 + resolution: "core-js-compat@npm:3.32.0" dependencies: browserslist: ^4.21.9 - checksum: 9a16d6992621f4e099169297381a28d5712cdef7df1fa85352a7c285a5885d5d7a117ec2eae9ad715ed88c7cc774787a22cdb8aceababf6775fbc8b0cbeccdb7 + checksum: e740b348dfd8dc25ac851ab625a1d5a63c012252bdd6d8ae92d1b2ebf46e6cf57ca6cbec4494cbacdd90d3f8ed822480c8a7106c990dbe9055ebdf5b79fbb92e languageName: node linkType: hard "core-js-pure@npm:^3.30.2": - version: 3.31.1 - resolution: "core-js-pure@npm:3.31.1" - checksum: 93c3dd28471755cb81ec4828f5617bd32a7c682295d88671534a6733a0d41dae9e28f8f8000ddd1f1e597a3bec4602db5f906a03c9ba1a360534f7ae2519db7c + version: 3.32.0 + resolution: "core-js-pure@npm:3.32.0" + checksum: 57b1ae97e6d468dfa34af3df75bba3fec3d01a04392f7c11f77a698f7157be199b647c599a06869fb403397a2e512dbbfc6eb3b8a690f857484125620f7d36e6 languageName: node linkType: hard "core-js@npm:^3.23.3": - version: 3.31.1 - resolution: "core-js@npm:3.31.1" - checksum: 14519213a63c55cf188bdd2f4dece54583feaf6b90e75d6c65e07f509cd487055bf64898aeda7c97c36029ac1ea2f2ed8e4b02281553f6a257e7143a32a14015 + version: 3.32.0 + resolution: "core-js@npm:3.32.0" + checksum: 52921395028550e4c9d21d47b9836439bb5b6b9eefc34d45a3948a68d81fdd093acc0fadf69f9cf632b82f01f95f22f484408a93dd9e940b19119ac204cd2925 languageName: node linkType: hard @@ -5245,9 +5245,9 @@ __metadata: linkType: hard "electron-to-chromium@npm:^1.4.431": - version: 1.4.471 - resolution: "electron-to-chromium@npm:1.4.471" - checksum: c62ac1f2e9e0395b3095899c7d07a723611a6ca9bc754935101f9f659d7fc3f564f4e47cacb5639abdc172265db041923679942c72055fc8d6522e1b57f755df + version: 1.4.475 + resolution: "electron-to-chromium@npm:1.4.475" + checksum: 3e7a538c486b351c13bcd05295535b2b5b0a2980dcf3504457fe47c6689d74a87fd62eab629227dcc86b66cfd732076667d6392f998b13995a8b54eff8073fb8 languageName: node linkType: hard @@ -7352,9 +7352,9 @@ __metadata: languageName: node linkType: hard -"jest-util@npm:^29.6.1": - version: 29.6.1 - resolution: "jest-util@npm:29.6.1" +"jest-util@npm:^29.6.2": + version: 29.6.2 + resolution: "jest-util@npm:29.6.2" dependencies: "@jest/types": ^29.6.1 "@types/node": "*" @@ -7362,7 +7362,7 @@ __metadata: ci-info: ^3.2.0 graceful-fs: ^4.2.9 picomatch: ^2.2.3 - checksum: fc553556c1350c443449cadaba5fb9d604628e8b5ceb6ceaf4e7e08975b24277d0a14bf2e0f956024e03c23e556fcb074659423422a06fbedf2ab52978697ac7 + checksum: 8aedc0c80083d0cabd6c6c4f04dea1cbcac609fd7bc3b1fc05a3999291bd6e63dd52b0c806f9378d5cae28eff5a6191709a4987861001293f8d03e53984adca4 languageName: node linkType: hard @@ -7389,14 +7389,14 @@ __metadata: linkType: hard "jest-worker@npm:^29.1.2": - version: 29.6.1 - resolution: "jest-worker@npm:29.6.1" + version: 29.6.2 + resolution: "jest-worker@npm:29.6.2" dependencies: "@types/node": "*" - jest-util: ^29.6.1 + jest-util: ^29.6.2 merge-stream: ^2.0.0 supports-color: ^8.0.0 - checksum: 0af309ea4db17c4c47e84a9246f907960a15577683c005fdeafc8f3c06bc455136f95a6f28fa2a3e924b767eb4dacd9b40915a7707305f88586f099af3ac27a8 + checksum: 11035564534bf181ead80b25be138c2d42372bd5626151a3e705200d47a74fd9da3ca79f8a7b15806cdc325ad73c3d21d23acceeed99d50941589ff02915ed38 languageName: node linkType: hard diff --git a/fastlane/metadata/android/en-US/changelogs/5.txt b/fastlane/metadata/android/en-US/changelogs/5.txt index bc3f5050244..3f0ac6de1f4 100644 --- a/fastlane/metadata/android/en-US/changelogs/5.txt +++ b/fastlane/metadata/android/en-US/changelogs/5.txt @@ -13,4 +13,6 @@ * Fix month view * Fix ical importer for start date time * Fix internet permission on android -* Upgrade to flutter 3.10 \ No newline at end of file +* Upgrade to flutter 3.10 + +View all changes in the blog: https://linwood.dev/flow/0.2 \ No newline at end of file