From 630d8e737749b44a8a434085ff055a89105f42e8 Mon Sep 17 00:00:00 2001 From: Hamza Bashir <42789638+Hamza-Shewa@users.noreply.github.com> Date: Fri, 3 Feb 2023 12:09:45 +0200 Subject: [PATCH 01/15] ability to build custom widget --- .gitignore | 1 - .../ios/Flutter/flutter_export_environment.sh | 11 +- example/pubspec.lock | 120 ++++++++++-------- lib/date_picker_widget.dart | 1 + lib/date_widget.dart | 41 ++++-- pubspec.lock | 117 ++++++++++------- pubspec.yaml | 4 +- 7 files changed, 174 insertions(+), 121 deletions(-) diff --git a/.gitignore b/.gitignore index 7eb5560..2daacaf 100644 --- a/.gitignore +++ b/.gitignore @@ -30,7 +30,6 @@ example/.vscode/ .pub-cache/ .pub/ build/ - # Android related **/android/**/gradle-wrapper.jar **/android/.gradle diff --git a/example/ios/Flutter/flutter_export_environment.sh b/example/ios/Flutter/flutter_export_environment.sh index 5db6e80..02d46e5 100755 --- a/example/ios/Flutter/flutter_export_environment.sh +++ b/example/ios/Flutter/flutter_export_environment.sh @@ -1,14 +1,13 @@ #!/bin/sh # This is a generated file; do not edit or check into version control. -export "FLUTTER_ROOT=/Users/vivek/development/flutter" -export "FLUTTER_APPLICATION_PATH=/Users/vivek/StudioProjects/DatePickerTimelineFlutter/example" -export "FLUTTER_TARGET=/Users/vivek/StudioProjects/DatePickerTimelineFlutter/example/lib/main.dart" +export "FLUTTER_ROOT=C:\flutter\flutter\flutter" +export "FLUTTER_APPLICATION_PATH=C:\Users\HamzaB\Downloads\work space\DatePickerTimelineFlutter\example" +export "COCOAPODS_PARALLEL_CODE_SIGN=true" +export "FLUTTER_TARGET=lib\main.dart" export "FLUTTER_BUILD_DIR=build" -export "SYMROOT=${SOURCE_ROOT}/../build/ios" export "FLUTTER_BUILD_NAME=1.0.0" export "FLUTTER_BUILD_NUMBER=1" -export "DART_DEFINES=flutter.inspector.structuredErrors%3Dtrue" export "DART_OBFUSCATION=false" export "TRACK_WIDGET_CREATION=true" export "TREE_SHAKE_ICONS=false" -export "PACKAGE_CONFIG=/Users/vivek/StudioProjects/DatePickerTimelineFlutter/example/.dart_tool/package_config.json" +export "PACKAGE_CONFIG=.dart_tool/package_config.json" diff --git a/example/pubspec.lock b/example/pubspec.lock index c36cbe3..767c321 100644 --- a/example/pubspec.lock +++ b/example/pubspec.lock @@ -5,49 +5,48 @@ packages: dependency: transitive description: name: async - url: "https://pub.dartlang.org" + sha256: bfe67ef28df125b7dddcea62755991f807aa39a2492a23e1550161692950bbe0 + url: "https://pub.dev" source: hosted - version: "2.5.0" + version: "2.10.0" boolean_selector: dependency: transitive description: name: boolean_selector - url: "https://pub.dartlang.org" + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.1" characters: dependency: transitive description: name: characters - url: "https://pub.dartlang.org" + sha256: e6a326c8af69605aec75ed6c187d06b349707a27fbff8222ca9cc2cff167975c + url: "https://pub.dev" source: hosted - version: "1.1.0" - charcode: - dependency: transitive - description: - name: charcode - url: "https://pub.dartlang.org" - source: hosted - version: "1.2.0" + version: "1.2.1" clock: dependency: transitive description: name: clock - url: "https://pub.dartlang.org" + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.1.1" collection: dependency: transitive description: name: collection - url: "https://pub.dartlang.org" + sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0 + url: "https://pub.dev" source: hosted - version: "1.15.0" + version: "1.17.0" cupertino_icons: dependency: "direct main" description: name: cupertino_icons - url: "https://pub.dartlang.org" + sha256: caac504f942f41dfadcf45229ce8c47065b93919a12739f20d6173a883c5ec73 + url: "https://pub.dev" source: hosted version: "1.0.2" date_picker_timeline: @@ -61,9 +60,10 @@ packages: dependency: transitive description: name: fake_async - url: "https://pub.dartlang.org" + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.3.1" flutter: dependency: "direct main" description: flutter @@ -78,30 +78,50 @@ packages: dependency: transitive description: name: intl - url: "https://pub.dartlang.org" + sha256: a3715e3bc90294e971cb7dc063fbf3cd9ee0ebf8604ffeafabd9e6f16abbdbe6 + url: "https://pub.dev" source: hosted - version: "0.17.0" + version: "0.18.0" + js: + dependency: transitive + description: + name: js + sha256: "5528c2f391ededb7775ec1daa69e65a2d61276f7552de2b5f7b8d34ee9fd4ab7" + url: "https://pub.dev" + source: hosted + version: "0.6.5" matcher: dependency: transitive description: name: matcher - url: "https://pub.dartlang.org" + sha256: "16db949ceee371e9b99d22f88fa3a73c4e59fd0afed0bd25fc336eb76c198b72" + url: "https://pub.dev" source: hosted - version: "0.12.10" + version: "0.12.13" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: d92141dc6fe1dad30722f9aa826c7fbc896d021d792f80678280601aff8cf724 + url: "https://pub.dev" + source: hosted + version: "0.2.0" meta: dependency: transitive description: name: meta - url: "https://pub.dartlang.org" + sha256: "6c268b42ed578a53088d834796959e4a1814b5e9e164f147f580a386e5decf42" + url: "https://pub.dev" source: hosted - version: "1.3.0" + version: "1.8.0" path: dependency: transitive description: name: path - url: "https://pub.dartlang.org" + sha256: db9d4f58c908a4ba5953fcee2ae317c94889433e5024c27ce74a37f94267945b + url: "https://pub.dev" source: hosted - version: "1.8.0" + version: "1.8.2" sky_engine: dependency: transitive description: flutter @@ -111,57 +131,57 @@ packages: dependency: transitive description: name: source_span - url: "https://pub.dartlang.org" + sha256: dd904f795d4b4f3b870833847c461801f6750a9fa8e61ea5ac53f9422b31f250 + url: "https://pub.dev" source: hosted - version: "1.8.0" + version: "1.9.1" stack_trace: dependency: transitive description: name: stack_trace - url: "https://pub.dartlang.org" + sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5 + url: "https://pub.dev" source: hosted - version: "1.10.0" + version: "1.11.0" stream_channel: dependency: transitive description: name: stream_channel - url: "https://pub.dartlang.org" + sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8" + url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.1" string_scanner: dependency: transitive description: name: string_scanner - url: "https://pub.dartlang.org" + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.2.0" term_glyph: dependency: transitive description: name: term_glyph - url: "https://pub.dartlang.org" + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.2.1" test_api: dependency: transitive description: name: test_api - url: "https://pub.dartlang.org" - source: hosted - version: "0.2.19" - typed_data: - dependency: transitive - description: - name: typed_data - url: "https://pub.dartlang.org" + sha256: ad540f65f92caa91bf21dfc8ffb8c589d6e4dc0c2267818b4cc2792857706206 + url: "https://pub.dev" source: hosted - version: "1.3.0" + version: "0.4.16" vector_math: dependency: transitive description: name: vector_math - url: "https://pub.dartlang.org" + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.4" sdks: - dart: ">=2.12.0 <3.0.0" + dart: ">=2.18.0 <3.0.0" diff --git a/lib/date_picker_widget.dart b/lib/date_picker_widget.dart index 14ca445..9050418 100644 --- a/lib/date_picker_widget.dart +++ b/lib/date_picker_widget.dart @@ -224,6 +224,7 @@ class _DatePickerState extends State { class DatePickerController { _DatePickerState? _datePickerState; + void setDatePickerState(_DatePickerState state) { _datePickerState = state; } diff --git a/lib/date_widget.dart b/lib/date_widget.dart index 1eb13f4..09cfe54 100644 --- a/lib/date_widget.dart +++ b/lib/date_widget.dart @@ -16,7 +16,8 @@ class DateWidget extends StatelessWidget { final Color selectionColor; final DateSelectionCallback? onDateSelected; final String? locale; - + final bool showMonth; + final Widget Function(DateTime date)? builder; DateWidget({ required this.date, required this.monthTextStyle, @@ -24,8 +25,10 @@ class DateWidget extends StatelessWidget { required this.dateTextStyle, required this.selectionColor, this.width, + this.showMonth = false, this.onDateSelected, this.locale, + this.builder, }); @override @@ -40,18 +43,30 @@ class DateWidget extends StatelessWidget { ), child: Padding( padding: EdgeInsets.all(8), - child: Column( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - crossAxisAlignment: CrossAxisAlignment.center, - children: [ - Text(new DateFormat("MMM", locale).format(date).toUpperCase(), // Month - style: monthTextStyle), - Text(date.day.toString(), // Date - style: dateTextStyle), - Text(new DateFormat("E", locale).format(date).toUpperCase(), // WeekDay - style: dayTextStyle) - ], - ), + child: builder as Widget? ?? + Column( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + if (showMonth) + Text( + new DateFormat("MMM", locale) + .format(date) + .toUpperCase(), // Month + style: monthTextStyle, + ), + Text( + new DateFormat("E", locale) + .format(date) + .toUpperCase(), // WeekDay + style: dayTextStyle, + ), + Text( + date.day.toString(), // Date + style: dateTextStyle, + ), + ], + ), ), ), onTap: () { diff --git a/pubspec.lock b/pubspec.lock index a38f32a..002a4da 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -5,51 +5,50 @@ packages: dependency: transitive description: name: async - url: "https://pub.dartlang.org" + sha256: bfe67ef28df125b7dddcea62755991f807aa39a2492a23e1550161692950bbe0 + url: "https://pub.dev" source: hosted - version: "2.5.0" + version: "2.10.0" boolean_selector: dependency: transitive description: name: boolean_selector - url: "https://pub.dartlang.org" + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.1" characters: dependency: transitive description: name: characters - url: "https://pub.dartlang.org" + sha256: e6a326c8af69605aec75ed6c187d06b349707a27fbff8222ca9cc2cff167975c + url: "https://pub.dev" source: hosted - version: "1.1.0" - charcode: - dependency: transitive - description: - name: charcode - url: "https://pub.dartlang.org" - source: hosted - version: "1.2.0" + version: "1.2.1" clock: dependency: transitive description: name: clock - url: "https://pub.dartlang.org" + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.1.1" collection: dependency: transitive description: name: collection - url: "https://pub.dartlang.org" + sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0 + url: "https://pub.dev" source: hosted - version: "1.15.0" + version: "1.17.0" fake_async: dependency: transitive description: name: fake_async - url: "https://pub.dartlang.org" + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.3.1" flutter: dependency: "direct main" description: flutter @@ -64,30 +63,50 @@ packages: dependency: "direct main" description: name: intl - url: "https://pub.dartlang.org" + sha256: a3715e3bc90294e971cb7dc063fbf3cd9ee0ebf8604ffeafabd9e6f16abbdbe6 + url: "https://pub.dev" source: hosted - version: "0.17.0" + version: "0.18.0" + js: + dependency: transitive + description: + name: js + sha256: "5528c2f391ededb7775ec1daa69e65a2d61276f7552de2b5f7b8d34ee9fd4ab7" + url: "https://pub.dev" + source: hosted + version: "0.6.5" matcher: dependency: transitive description: name: matcher - url: "https://pub.dartlang.org" + sha256: "16db949ceee371e9b99d22f88fa3a73c4e59fd0afed0bd25fc336eb76c198b72" + url: "https://pub.dev" source: hosted - version: "0.12.10" + version: "0.12.13" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: d92141dc6fe1dad30722f9aa826c7fbc896d021d792f80678280601aff8cf724 + url: "https://pub.dev" + source: hosted + version: "0.2.0" meta: dependency: transitive description: name: meta - url: "https://pub.dartlang.org" + sha256: "6c268b42ed578a53088d834796959e4a1814b5e9e164f147f580a386e5decf42" + url: "https://pub.dev" source: hosted - version: "1.3.0" + version: "1.8.0" path: dependency: transitive description: name: path - url: "https://pub.dartlang.org" + sha256: db9d4f58c908a4ba5953fcee2ae317c94889433e5024c27ce74a37f94267945b + url: "https://pub.dev" source: hosted - version: "1.8.0" + version: "1.8.2" sky_engine: dependency: transitive description: flutter @@ -97,57 +116,57 @@ packages: dependency: transitive description: name: source_span - url: "https://pub.dartlang.org" + sha256: dd904f795d4b4f3b870833847c461801f6750a9fa8e61ea5ac53f9422b31f250 + url: "https://pub.dev" source: hosted - version: "1.8.0" + version: "1.9.1" stack_trace: dependency: transitive description: name: stack_trace - url: "https://pub.dartlang.org" + sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5 + url: "https://pub.dev" source: hosted - version: "1.10.0" + version: "1.11.0" stream_channel: dependency: transitive description: name: stream_channel - url: "https://pub.dartlang.org" + sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8" + url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.1" string_scanner: dependency: transitive description: name: string_scanner - url: "https://pub.dartlang.org" + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.2.0" term_glyph: dependency: transitive description: name: term_glyph - url: "https://pub.dartlang.org" + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.2.1" test_api: dependency: transitive description: name: test_api - url: "https://pub.dartlang.org" - source: hosted - version: "0.2.19" - typed_data: - dependency: transitive - description: - name: typed_data - url: "https://pub.dartlang.org" + sha256: ad540f65f92caa91bf21dfc8ffb8c589d6e4dc0c2267818b4cc2792857706206 + url: "https://pub.dev" source: hosted - version: "1.3.0" + version: "0.4.16" vector_math: dependency: transitive description: name: vector_math - url: "https://pub.dartlang.org" + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.4" sdks: - dart: ">=2.12.0 <3.0.0" + dart: ">=2.18.0 <3.0.0" diff --git a/pubspec.yaml b/pubspec.yaml index 2a5f5a7..a53109a 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -4,12 +4,12 @@ version: 1.2.3 homepage: https://github.com/iamvivekkaushik/DatePickerTimelineFlutter environment: - sdk: '>=2.12.0 <3.0.0' + sdk: '>=2.17.0' dependencies: flutter: sdk: flutter - intl: ^0.17.0 + intl: ^0.18.0 dev_dependencies: flutter_test: From b3dfaa3be0fdf20710d4fee01153fc3ee16ab617 Mon Sep 17 00:00:00 2001 From: Hamza Bashir <42789638+Hamza-Shewa@users.noreply.github.com> Date: Fri, 3 Feb 2023 12:35:39 +0200 Subject: [PATCH 02/15] fixed and added jump to inital date --- lib/date_picker_widget.dart | 42 ++++++++++++++++++++++++++++--------- lib/date_widget.dart | 1 + 2 files changed, 33 insertions(+), 10 deletions(-) diff --git a/lib/date_picker_widget.dart b/lib/date_picker_widget.dart index 9050418..6729026 100644 --- a/lib/date_picker_widget.dart +++ b/lib/date_picker_widget.dart @@ -1,5 +1,3 @@ - - import 'package:date_picker_timeline/date_widget.dart'; import 'package:date_picker_timeline/extra/color.dart'; import 'package:date_picker_timeline/extra/style.dart'; @@ -40,7 +38,7 @@ class DatePicker extends StatefulWidget { final TextStyle dateTextStyle; /// Current Selected Date - final DateTime?/*?*/ initialSelectedDate; + final DateTime? /*?*/ initialSelectedDate; /// Contains the list of inactive dates. /// All the dates defined in this List will be deactivated @@ -60,12 +58,24 @@ class DatePicker extends StatefulWidget { /// Locale for the calendar default: en_us final String locale; + ///show noth field + final bool showMonth; + + /// Custom Widget Builder + final Widget Function(DateTime date)? builder; + + ///jump to initial date + final bool jumpToInitialDate; + DatePicker( this.startDate, { Key? key, this.width = 60, this.height = 80, this.controller, + this.builder, + this.showMonth = false, + this.jumpToInitialDate = true, this.monthTextStyle = defaultMonthTextStyle, this.dayTextStyle = defaultDayTextStyle, this.dateTextStyle = defaultDateTextStyle, @@ -112,9 +122,9 @@ class _DatePickerState extends State { } this.selectedDateStyle = - widget.dateTextStyle.copyWith(color: widget.selectedTextColor); + widget.dateTextStyle.copyWith(color: widget.selectedTextColor); this.selectedMonthStyle = - widget.monthTextStyle.copyWith(color: widget.selectedTextColor); + widget.monthTextStyle.copyWith(color: widget.selectedTextColor); this.selectedDayStyle = widget.dayTextStyle.copyWith(color: widget.selectedTextColor); @@ -124,10 +134,20 @@ class _DatePickerState extends State { widget.monthTextStyle.copyWith(color: widget.deactivatedColor); this.deactivatedDayStyle = widget.dayTextStyle.copyWith(color: widget.deactivatedColor); - + if (widget.initialSelectedDate != null && widget.controller != null) { + _controller.jumpTo(_calculateDateOffset(widget.initialSelectedDate!)); + } super.initState(); } + double _calculateDateOffset(DateTime date) { + final startDate = new DateTime(this.widget.startDate.year, + this.widget.startDate.month, this.widget.startDate.day); + + int offset = date.difference(startDate).inDays; + return (offset * this.widget.width) + (offset * 6); + } + @override Widget build(BuildContext context) { return Container( @@ -175,6 +195,8 @@ class _DatePickerState extends State { // Return the Date Widget return DateWidget( date: date, + showMonth: widget.showMonth, + builder: widget.builder, monthTextStyle: isDeactivated ? deactivatedMonthStyle : isSelected @@ -224,7 +246,6 @@ class _DatePickerState extends State { class DatePickerController { _DatePickerState? _datePickerState; - void setDatePickerState(_DatePickerState state) { _datePickerState = state; } @@ -267,14 +288,15 @@ class DatePickerController { void setDateAndAnimate(DateTime date, {duration = const Duration(milliseconds: 500), curve = Curves.linear}) { assert(_datePickerState != null, - 'DatePickerController is not attached to any DatePicker View.'); + 'DatePickerController is not attached to any DatePicker View.'); _datePickerState!._controller.animateTo(_calculateDateOffset(date), duration: duration, curve: curve); if (date.compareTo(_datePickerState!.widget.startDate) >= 0 && - date.compareTo(_datePickerState!.widget.startDate.add( - Duration(days: _datePickerState!.widget.daysCount))) <= 0) { + date.compareTo(_datePickerState!.widget.startDate + .add(Duration(days: _datePickerState!.widget.daysCount))) <= + 0) { // date is in the range _datePickerState!._currentDate = date; } diff --git a/lib/date_widget.dart b/lib/date_widget.dart index 09cfe54..7ec1a83 100644 --- a/lib/date_widget.dart +++ b/lib/date_widget.dart @@ -17,6 +17,7 @@ class DateWidget extends StatelessWidget { final DateSelectionCallback? onDateSelected; final String? locale; final bool showMonth; + final Widget Function(DateTime date)? builder; DateWidget({ required this.date, From 19a8aa00ff43eb8d8dfc48d3c75e3cc662eaecfa Mon Sep 17 00:00:00 2001 From: Hamza Bashir <42789638+Hamza-Shewa@users.noreply.github.com> Date: Fri, 3 Feb 2023 12:39:05 +0200 Subject: [PATCH 03/15] pubspec update --- pubspec.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pubspec.yaml b/pubspec.yaml index a53109a..8e6f2a8 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - intl: ^0.18.0 + intl: ^0.17.0 dev_dependencies: flutter_test: From deb870d4ca84c8a2270701045495774d9bb5a5a8 Mon Sep 17 00:00:00 2001 From: Hamza Bashir <42789638+Hamza-Shewa@users.noreply.github.com> Date: Fri, 3 Feb 2023 12:52:44 +0200 Subject: [PATCH 04/15] fixed inital date --- lib/date_picker_widget.dart | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/date_picker_widget.dart b/lib/date_picker_widget.dart index 6729026..79be64c 100644 --- a/lib/date_picker_widget.dart +++ b/lib/date_picker_widget.dart @@ -119,6 +119,11 @@ class _DatePickerState extends State { if (widget.controller != null) { widget.controller!.setDatePickerState(this); + if (widget.initialSelectedDate != null) { + _controller = ScrollController( + initialScrollOffset: + _calculateDateOffset(widget.initialSelectedDate!)); + } } this.selectedDateStyle = @@ -134,9 +139,7 @@ class _DatePickerState extends State { widget.monthTextStyle.copyWith(color: widget.deactivatedColor); this.deactivatedDayStyle = widget.dayTextStyle.copyWith(color: widget.deactivatedColor); - if (widget.initialSelectedDate != null && widget.controller != null) { - _controller.jumpTo(_calculateDateOffset(widget.initialSelectedDate!)); - } + super.initState(); } From f3f280254b9af1f57a12a95afbb2556053e0387c Mon Sep 17 00:00:00 2001 From: Hamza Bashir <42789638+Hamza-Shewa@users.noreply.github.com> Date: Fri, 3 Feb 2023 12:57:39 +0200 Subject: [PATCH 05/15] jum to initial date parameter --- lib/date_picker_widget.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/date_picker_widget.dart b/lib/date_picker_widget.dart index 79be64c..f74e9da 100644 --- a/lib/date_picker_widget.dart +++ b/lib/date_picker_widget.dart @@ -119,7 +119,7 @@ class _DatePickerState extends State { if (widget.controller != null) { widget.controller!.setDatePickerState(this); - if (widget.initialSelectedDate != null) { + if (widget.initialSelectedDate != null && widget.jumpToInitialDate) { _controller = ScrollController( initialScrollOffset: _calculateDateOffset(widget.initialSelectedDate!)); From d3e7f2a04d3e25e1c3c0f2efddadbf40c3d7caf9 Mon Sep 17 00:00:00 2001 From: Hamza Bashir <42789638+Hamza-Shewa@users.noreply.github.com> Date: Fri, 3 Feb 2023 14:23:48 +0200 Subject: [PATCH 06/15] fix style --- lib/date_picker_widget.dart | 12 ++++++------ lib/date_widget.dart | 32 +++++++++++++++++--------------- 2 files changed, 23 insertions(+), 21 deletions(-) diff --git a/lib/date_picker_widget.dart b/lib/date_picker_widget.dart index f74e9da..4fd4ac3 100644 --- a/lib/date_picker_widget.dart +++ b/lib/date_picker_widget.dart @@ -127,18 +127,18 @@ class _DatePickerState extends State { } this.selectedDateStyle = - widget.dateTextStyle.copyWith(color: widget.selectedTextColor); + widget.dateTextStyle.merge(TextStyle(color: widget.selectedTextColor)); this.selectedMonthStyle = - widget.monthTextStyle.copyWith(color: widget.selectedTextColor); + widget.monthTextStyle.merge(TextStyle(color: widget.selectedTextColor)); this.selectedDayStyle = - widget.dayTextStyle.copyWith(color: widget.selectedTextColor); + widget.dayTextStyle.merge(TextStyle(color: widget.selectedTextColor)); this.deactivatedDateStyle = - widget.dateTextStyle.copyWith(color: widget.deactivatedColor); + widget.dateTextStyle.merge(TextStyle(color: widget.deactivatedColor)); this.deactivatedMonthStyle = - widget.monthTextStyle.copyWith(color: widget.deactivatedColor); + widget.monthTextStyle.merge(TextStyle(color: widget.deactivatedColor)); this.deactivatedDayStyle = - widget.dayTextStyle.copyWith(color: widget.deactivatedColor); + widget.dayTextStyle.merge(TextStyle(color: widget.deactivatedColor)); super.initState(); } diff --git a/lib/date_widget.dart b/lib/date_widget.dart index 7ec1a83..ebf568c 100644 --- a/lib/date_widget.dart +++ b/lib/date_widget.dart @@ -12,13 +12,15 @@ import 'package:intl/intl.dart'; class DateWidget extends StatelessWidget { final double? width; final DateTime date; - final TextStyle? monthTextStyle, dayTextStyle, dateTextStyle; + final TextStyle monthTextStyle; + final TextStyle dayTextStyle; + final TextStyle dateTextStyle; final Color selectionColor; final DateSelectionCallback? onDateSelected; final String? locale; final bool showMonth; - final Widget Function(DateTime date)? builder; + DateWidget({ required this.date, required this.monthTextStyle, @@ -35,17 +37,17 @@ class DateWidget extends StatelessWidget { @override Widget build(BuildContext context) { return InkWell( - child: Container( - width: width, - margin: EdgeInsets.all(3.0), - decoration: BoxDecoration( - borderRadius: BorderRadius.all(Radius.circular(8.0)), - color: selectionColor, - ), - child: Padding( - padding: EdgeInsets.all(8), - child: builder as Widget? ?? - Column( + child: builder as Widget? ?? + Container( + width: width, + margin: EdgeInsets.all(3.0), + decoration: BoxDecoration( + borderRadius: BorderRadius.all(Radius.circular(8.0)), + color: selectionColor, + ), + child: Padding( + padding: EdgeInsets.all(8), + child: Column( mainAxisAlignment: MainAxisAlignment.spaceBetween, crossAxisAlignment: CrossAxisAlignment.center, children: [ @@ -68,8 +70,8 @@ class DateWidget extends StatelessWidget { ), ], ), - ), - ), + ), + ), onTap: () { // Check if onDateSelected is not null if (onDateSelected != null) { From 7fc46b2f7d44bc201c25a496588aa316ca00f308 Mon Sep 17 00:00:00 2001 From: Hamza Bashir <42789638+Hamza-Shewa@users.noreply.github.com> Date: Fri, 3 Feb 2023 15:08:08 +0200 Subject: [PATCH 07/15] disable old dates ability --- lib/date_picker_widget.dart | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/lib/date_picker_widget.dart b/lib/date_picker_widget.dart index 4fd4ac3..6d4cbf8 100644 --- a/lib/date_picker_widget.dart +++ b/lib/date_picker_widget.dart @@ -67,6 +67,9 @@ class DatePicker extends StatefulWidget { ///jump to initial date final bool jumpToInitialDate; + /// disable old dates + final bool disableOldDates; + DatePicker( this.startDate, { Key? key, @@ -76,6 +79,7 @@ class DatePicker extends StatefulWidget { this.builder, this.showMonth = false, this.jumpToInitialDate = true, + this.disableOldDates = false, this.monthTextStyle = defaultMonthTextStyle, this.dayTextStyle = defaultDayTextStyle, this.dateTextStyle = defaultDateTextStyle, @@ -191,6 +195,17 @@ class _DatePickerState extends State { } } + // check if this date old to disable it + if (widget.disableOldDates) { + if (date.isBefore( + DateTime.now().subtract( + Duration(days: 1), + ), + )) { + isDeactivated = true; + } + } + // Check if this date is the one that is currently selected bool isSelected = _currentDate != null ? _compareDate(date, _currentDate!) : false; From 7366bcf01e238febc5366732947ccc4a31cb7c5c Mon Sep 17 00:00:00 2001 From: Hamza Bashir <42789638+Hamza-Shewa@users.noreply.github.com> Date: Fri, 10 Feb 2023 18:04:07 +0200 Subject: [PATCH 08/15] update date widget --- lib/date_widget.dart | 77 +++++++++++++++++++++++++------------------- 1 file changed, 44 insertions(+), 33 deletions(-) diff --git a/lib/date_widget.dart b/lib/date_widget.dart index ebf568c..619a0b5 100644 --- a/lib/date_widget.dart +++ b/lib/date_widget.dart @@ -36,42 +36,53 @@ class DateWidget extends StatelessWidget { @override Widget build(BuildContext context) { + if (builder != null) { + InkWell( + child: builder!(date), + onTap: () { + // Check if onDateSelected is not null + if (onDateSelected != null) { + // Call the onDateSelected Function + onDateSelected!(this.date); + } + }, + ); + } return InkWell( - child: builder as Widget? ?? - Container( - width: width, - margin: EdgeInsets.all(3.0), - decoration: BoxDecoration( - borderRadius: BorderRadius.all(Radius.circular(8.0)), - color: selectionColor, - ), - child: Padding( - padding: EdgeInsets.all(8), - child: Column( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - crossAxisAlignment: CrossAxisAlignment.center, - children: [ - if (showMonth) - Text( - new DateFormat("MMM", locale) - .format(date) - .toUpperCase(), // Month - style: monthTextStyle, - ), - Text( - new DateFormat("E", locale) - .format(date) - .toUpperCase(), // WeekDay - style: dayTextStyle, - ), - Text( - date.day.toString(), // Date - style: dateTextStyle, - ), - ], + child: Container( + width: width, + margin: EdgeInsets.all(3.0), + decoration: BoxDecoration( + borderRadius: BorderRadius.all(Radius.circular(8.0)), + color: selectionColor, + ), + child: Padding( + padding: EdgeInsets.all(8), + child: Column( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + if (showMonth) + Text( + new DateFormat("MMM", locale) + .format(date) + .toUpperCase(), // Month + style: monthTextStyle, + ), + Text( + new DateFormat("E", locale) + .format(date) + .toUpperCase(), // WeekDay + style: dayTextStyle, ), - ), + Text( + date.day.toString(), // Date + style: dateTextStyle, + ), + ], ), + ), + ), onTap: () { // Check if onDateSelected is not null if (onDateSelected != null) { From 8ed9b15e06e1a93f1507a2e4fa27b0c62b776d45 Mon Sep 17 00:00:00 2001 From: Hamza Bashir <42789638+Hamza-Shewa@users.noreply.github.com> Date: Fri, 10 Feb 2023 18:14:25 +0200 Subject: [PATCH 09/15] fixed builder for date --- lib/date_picker_widget.dart | 12 +++--- lib/date_widget.dart | 81 +++++++++++++++++++------------------ 2 files changed, 47 insertions(+), 46 deletions(-) diff --git a/lib/date_picker_widget.dart b/lib/date_picker_widget.dart index 6d4cbf8..6d57339 100644 --- a/lib/date_picker_widget.dart +++ b/lib/date_picker_widget.dart @@ -131,18 +131,18 @@ class _DatePickerState extends State { } this.selectedDateStyle = - widget.dateTextStyle.merge(TextStyle(color: widget.selectedTextColor)); + widget.dateTextStyle.copyWith(color: widget.selectedTextColor); this.selectedMonthStyle = - widget.monthTextStyle.merge(TextStyle(color: widget.selectedTextColor)); + widget.monthTextStyle.copyWith(color: widget.selectedTextColor); this.selectedDayStyle = - widget.dayTextStyle.merge(TextStyle(color: widget.selectedTextColor)); + widget.dayTextStyle.copyWith(color: widget.selectedTextColor); this.deactivatedDateStyle = - widget.dateTextStyle.merge(TextStyle(color: widget.deactivatedColor)); + widget.dateTextStyle.copyWith(color: widget.deactivatedColor); this.deactivatedMonthStyle = - widget.monthTextStyle.merge(TextStyle(color: widget.deactivatedColor)); + widget.monthTextStyle.copyWith(color: widget.deactivatedColor); this.deactivatedDayStyle = - widget.dayTextStyle.merge(TextStyle(color: widget.deactivatedColor)); + widget.dayTextStyle.copyWith(color: widget.deactivatedColor); super.initState(); } diff --git a/lib/date_widget.dart b/lib/date_widget.dart index 619a0b5..fb4a8d7 100644 --- a/lib/date_widget.dart +++ b/lib/date_widget.dart @@ -37,7 +37,7 @@ class DateWidget extends StatelessWidget { @override Widget build(BuildContext context) { if (builder != null) { - InkWell( + return InkWell( child: builder!(date), onTap: () { // Check if onDateSelected is not null @@ -47,49 +47,50 @@ class DateWidget extends StatelessWidget { } }, ); - } - return InkWell( - child: Container( - width: width, - margin: EdgeInsets.all(3.0), - decoration: BoxDecoration( - borderRadius: BorderRadius.all(Radius.circular(8.0)), - color: selectionColor, - ), - child: Padding( - padding: EdgeInsets.all(8), - child: Column( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - crossAxisAlignment: CrossAxisAlignment.center, - children: [ - if (showMonth) + } else { + return InkWell( + child: Container( + width: width, + margin: EdgeInsets.all(3.0), + decoration: BoxDecoration( + borderRadius: BorderRadius.all(Radius.circular(8.0)), + color: selectionColor, + ), + child: Padding( + padding: EdgeInsets.all(8), + child: Column( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + if (showMonth) + Text( + new DateFormat("MMM", locale) + .format(date) + .toUpperCase(), // Month + style: monthTextStyle, + ), Text( - new DateFormat("MMM", locale) + new DateFormat("E", locale) .format(date) - .toUpperCase(), // Month - style: monthTextStyle, + .toUpperCase(), // WeekDay + style: dayTextStyle, ), - Text( - new DateFormat("E", locale) - .format(date) - .toUpperCase(), // WeekDay - style: dayTextStyle, - ), - Text( - date.day.toString(), // Date - style: dateTextStyle, - ), - ], + Text( + date.day.toString(), // Date + style: dateTextStyle, + ), + ], + ), ), ), - ), - onTap: () { - // Check if onDateSelected is not null - if (onDateSelected != null) { - // Call the onDateSelected Function - onDateSelected!(this.date); - } - }, - ); + onTap: () { + // Check if onDateSelected is not null + if (onDateSelected != null) { + // Call the onDateSelected Function + onDateSelected!(this.date); + } + }, + ); + } } } From f707bd12549bdab429306fbd45618c5c8fa6d790 Mon Sep 17 00:00:00 2001 From: Hamza Bashir <42789638+Hamza-Shewa@users.noreply.github.com> Date: Fri, 10 Feb 2023 18:27:16 +0200 Subject: [PATCH 10/15] adding deactivate --- lib/date_picker_widget.dart | 3 ++- lib/date_widget.dart | 6 ++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/date_picker_widget.dart b/lib/date_picker_widget.dart index 6d57339..377974c 100644 --- a/lib/date_picker_widget.dart +++ b/lib/date_picker_widget.dart @@ -62,7 +62,7 @@ class DatePicker extends StatefulWidget { final bool showMonth; /// Custom Widget Builder - final Widget Function(DateTime date)? builder; + final Widget Function(DateTime date,bool isDeactivated)? builder; ///jump to initial date final bool jumpToInitialDate; @@ -215,6 +215,7 @@ class _DatePickerState extends State { date: date, showMonth: widget.showMonth, builder: widget.builder, + isDeactivated: isDeactivated, monthTextStyle: isDeactivated ? deactivatedMonthStyle : isSelected diff --git a/lib/date_widget.dart b/lib/date_widget.dart index fb4a8d7..fbabb69 100644 --- a/lib/date_widget.dart +++ b/lib/date_widget.dart @@ -18,8 +18,9 @@ class DateWidget extends StatelessWidget { final Color selectionColor; final DateSelectionCallback? onDateSelected; final String? locale; + final bool isDeactivated; final bool showMonth; - final Widget Function(DateTime date)? builder; + final Widget Function(DateTime date, bool isDeactivated)? builder; DateWidget({ required this.date, @@ -27,6 +28,7 @@ class DateWidget extends StatelessWidget { required this.dayTextStyle, required this.dateTextStyle, required this.selectionColor, + required this.isDeactivated, this.width, this.showMonth = false, this.onDateSelected, @@ -38,7 +40,7 @@ class DateWidget extends StatelessWidget { Widget build(BuildContext context) { if (builder != null) { return InkWell( - child: builder!(date), + child: builder!(date, isDeactivated), onTap: () { // Check if onDateSelected is not null if (onDateSelected != null) { From cdacb21de275fd3dd2e94df81791a9a82d6f19c1 Mon Sep 17 00:00:00 2001 From: Hamza Bashir <42789638+Hamza-Shewa@users.noreply.github.com> Date: Thu, 11 May 2023 11:02:08 +0200 Subject: [PATCH 11/15] update intl version --- pubspec.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pubspec.yaml b/pubspec.yaml index 8e6f2a8..0f934d4 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - intl: ^0.17.0 + intl: ^0.18.1 dev_dependencies: flutter_test: From 384f812b2283f72f23e32e5e203ee5a7d028aa31 Mon Sep 17 00:00:00 2001 From: Hamza Bashir <42789638+Hamza-Shewa@users.noreply.github.com> Date: Thu, 11 May 2023 11:03:32 +0200 Subject: [PATCH 12/15] Update pubspec.yaml --- pubspec.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pubspec.yaml b/pubspec.yaml index 0f934d4..a53109a 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - intl: ^0.18.1 + intl: ^0.18.0 dev_dependencies: flutter_test: From a9c9b19db91904ae38528d510f14eb7cd5143469 Mon Sep 17 00:00:00 2001 From: Hamza Bashir <42789638+Hamza-Shewa@users.noreply.github.com> Date: Thu, 11 May 2023 11:06:55 +0200 Subject: [PATCH 13/15] Update pubspec.yaml --- pubspec.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pubspec.yaml b/pubspec.yaml index a53109a..8e6f2a8 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - intl: ^0.18.0 + intl: ^0.17.0 dev_dependencies: flutter_test: From 50f8d21d654c1ff9e00e4de4372d79b06fb8af22 Mon Sep 17 00:00:00 2001 From: hamza aboshhiwa <42789638+Hamza-Shewa@users.noreply.github.com> Date: Mon, 4 Nov 2024 13:49:01 +0200 Subject: [PATCH 14/15] fix deprication --- .../ios/Flutter/flutter_export_environment.sh | 4 +- example/pubspec.lock | 83 ++++++++++++------- pubspec.lock | 83 ++++++++++++------- pubspec.yaml | 6 +- test/date_picker_timeline_test.dart | 2 - 5 files changed, 112 insertions(+), 66 deletions(-) diff --git a/example/ios/Flutter/flutter_export_environment.sh b/example/ios/Flutter/flutter_export_environment.sh index 02d46e5..9569194 100755 --- a/example/ios/Flutter/flutter_export_environment.sh +++ b/example/ios/Flutter/flutter_export_environment.sh @@ -1,7 +1,7 @@ #!/bin/sh # This is a generated file; do not edit or check into version control. -export "FLUTTER_ROOT=C:\flutter\flutter\flutter" -export "FLUTTER_APPLICATION_PATH=C:\Users\HamzaB\Downloads\work space\DatePickerTimelineFlutter\example" +export "FLUTTER_ROOT=C:\development\flutter" +export "FLUTTER_APPLICATION_PATH=F:\work_space\DatePickerTimelineFlutter\example" export "COCOAPODS_PARALLEL_CODE_SIGN=true" export "FLUTTER_TARGET=lib\main.dart" export "FLUTTER_BUILD_DIR=build" diff --git a/example/pubspec.lock b/example/pubspec.lock index 767c321..2752ecd 100644 --- a/example/pubspec.lock +++ b/example/pubspec.lock @@ -5,10 +5,10 @@ packages: dependency: transitive description: name: async - sha256: bfe67ef28df125b7dddcea62755991f807aa39a2492a23e1550161692950bbe0 + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" url: "https://pub.dev" source: hosted - version: "2.10.0" + version: "2.11.0" boolean_selector: dependency: transitive description: @@ -21,10 +21,10 @@ packages: dependency: transitive description: name: characters - sha256: e6a326c8af69605aec75ed6c187d06b349707a27fbff8222ca9cc2cff167975c + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" url: "https://pub.dev" source: hosted - version: "1.2.1" + version: "1.3.0" clock: dependency: transitive description: @@ -37,10 +37,10 @@ packages: dependency: transitive description: name: collection - sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0 + sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a url: "https://pub.dev" source: hosted - version: "1.17.0" + version: "1.18.0" cupertino_icons: dependency: "direct main" description: @@ -78,50 +78,66 @@ packages: dependency: transitive description: name: intl - sha256: a3715e3bc90294e971cb7dc063fbf3cd9ee0ebf8604ffeafabd9e6f16abbdbe6 + sha256: d6f56758b7d3014a48af9701c085700aac781a92a87a62b1333b46d8879661cf + url: "https://pub.dev" + source: hosted + version: "0.19.0" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05" + url: "https://pub.dev" + source: hosted + version: "10.0.5" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806" url: "https://pub.dev" source: hosted - version: "0.18.0" - js: + version: "3.0.5" + leak_tracker_testing: dependency: transitive description: - name: js - sha256: "5528c2f391ededb7775ec1daa69e65a2d61276f7552de2b5f7b8d34ee9fd4ab7" + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" url: "https://pub.dev" source: hosted - version: "0.6.5" + version: "3.0.1" matcher: dependency: transitive description: name: matcher - sha256: "16db949ceee371e9b99d22f88fa3a73c4e59fd0afed0bd25fc336eb76c198b72" + sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb url: "https://pub.dev" source: hosted - version: "0.12.13" + version: "0.12.16+1" material_color_utilities: dependency: transitive description: name: material_color_utilities - sha256: d92141dc6fe1dad30722f9aa826c7fbc896d021d792f80678280601aff8cf724 + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec url: "https://pub.dev" source: hosted - version: "0.2.0" + version: "0.11.1" meta: dependency: transitive description: name: meta - sha256: "6c268b42ed578a53088d834796959e4a1814b5e9e164f147f580a386e5decf42" + sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 url: "https://pub.dev" source: hosted - version: "1.8.0" + version: "1.15.0" path: dependency: transitive description: name: path - sha256: db9d4f58c908a4ba5953fcee2ae317c94889433e5024c27ce74a37f94267945b + sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" url: "https://pub.dev" source: hosted - version: "1.8.2" + version: "1.9.0" sky_engine: dependency: transitive description: flutter @@ -131,26 +147,26 @@ packages: dependency: transitive description: name: source_span - sha256: dd904f795d4b4f3b870833847c461801f6750a9fa8e61ea5ac53f9422b31f250 + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" url: "https://pub.dev" source: hosted - version: "1.9.1" + version: "1.10.0" stack_trace: dependency: transitive description: name: stack_trace - sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5 + sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" url: "https://pub.dev" source: hosted - version: "1.11.0" + version: "1.11.1" stream_channel: dependency: transitive description: name: stream_channel - sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8" + sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.2" string_scanner: dependency: transitive description: @@ -171,10 +187,10 @@ packages: dependency: transitive description: name: test_api - sha256: ad540f65f92caa91bf21dfc8ffb8c589d6e4dc0c2267818b4cc2792857706206 + sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb" url: "https://pub.dev" source: hosted - version: "0.4.16" + version: "0.7.2" vector_math: dependency: transitive description: @@ -183,5 +199,14 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "5c5f338a667b4c644744b661f309fb8080bb94b18a7e91ef1dbd343bed00ed6d" + url: "https://pub.dev" + source: hosted + version: "14.2.5" sdks: - dart: ">=2.18.0 <3.0.0" + dart: ">=3.3.1 <4.0.0" + flutter: ">=3.18.0-18.0.pre.54" diff --git a/pubspec.lock b/pubspec.lock index 002a4da..73ed96a 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -5,10 +5,10 @@ packages: dependency: transitive description: name: async - sha256: bfe67ef28df125b7dddcea62755991f807aa39a2492a23e1550161692950bbe0 + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" url: "https://pub.dev" source: hosted - version: "2.10.0" + version: "2.11.0" boolean_selector: dependency: transitive description: @@ -21,10 +21,10 @@ packages: dependency: transitive description: name: characters - sha256: e6a326c8af69605aec75ed6c187d06b349707a27fbff8222ca9cc2cff167975c + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" url: "https://pub.dev" source: hosted - version: "1.2.1" + version: "1.3.0" clock: dependency: transitive description: @@ -37,10 +37,10 @@ packages: dependency: transitive description: name: collection - sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0 + sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a url: "https://pub.dev" source: hosted - version: "1.17.0" + version: "1.18.0" fake_async: dependency: transitive description: @@ -63,50 +63,66 @@ packages: dependency: "direct main" description: name: intl - sha256: a3715e3bc90294e971cb7dc063fbf3cd9ee0ebf8604ffeafabd9e6f16abbdbe6 + sha256: d6f56758b7d3014a48af9701c085700aac781a92a87a62b1333b46d8879661cf + url: "https://pub.dev" + source: hosted + version: "0.19.0" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05" + url: "https://pub.dev" + source: hosted + version: "10.0.5" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806" url: "https://pub.dev" source: hosted - version: "0.18.0" - js: + version: "3.0.5" + leak_tracker_testing: dependency: transitive description: - name: js - sha256: "5528c2f391ededb7775ec1daa69e65a2d61276f7552de2b5f7b8d34ee9fd4ab7" + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" url: "https://pub.dev" source: hosted - version: "0.6.5" + version: "3.0.1" matcher: dependency: transitive description: name: matcher - sha256: "16db949ceee371e9b99d22f88fa3a73c4e59fd0afed0bd25fc336eb76c198b72" + sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb url: "https://pub.dev" source: hosted - version: "0.12.13" + version: "0.12.16+1" material_color_utilities: dependency: transitive description: name: material_color_utilities - sha256: d92141dc6fe1dad30722f9aa826c7fbc896d021d792f80678280601aff8cf724 + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec url: "https://pub.dev" source: hosted - version: "0.2.0" + version: "0.11.1" meta: dependency: transitive description: name: meta - sha256: "6c268b42ed578a53088d834796959e4a1814b5e9e164f147f580a386e5decf42" + sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 url: "https://pub.dev" source: hosted - version: "1.8.0" + version: "1.15.0" path: dependency: transitive description: name: path - sha256: db9d4f58c908a4ba5953fcee2ae317c94889433e5024c27ce74a37f94267945b + sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" url: "https://pub.dev" source: hosted - version: "1.8.2" + version: "1.9.0" sky_engine: dependency: transitive description: flutter @@ -116,26 +132,26 @@ packages: dependency: transitive description: name: source_span - sha256: dd904f795d4b4f3b870833847c461801f6750a9fa8e61ea5ac53f9422b31f250 + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" url: "https://pub.dev" source: hosted - version: "1.9.1" + version: "1.10.0" stack_trace: dependency: transitive description: name: stack_trace - sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5 + sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" url: "https://pub.dev" source: hosted - version: "1.11.0" + version: "1.11.1" stream_channel: dependency: transitive description: name: stream_channel - sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8" + sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.2" string_scanner: dependency: transitive description: @@ -156,10 +172,10 @@ packages: dependency: transitive description: name: test_api - sha256: ad540f65f92caa91bf21dfc8ffb8c589d6e4dc0c2267818b4cc2792857706206 + sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb" url: "https://pub.dev" source: hosted - version: "0.4.16" + version: "0.7.2" vector_math: dependency: transitive description: @@ -168,5 +184,14 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "5c5f338a667b4c644744b661f309fb8080bb94b18a7e91ef1dbd343bed00ed6d" + url: "https://pub.dev" + source: hosted + version: "14.2.5" sdks: - dart: ">=2.18.0 <3.0.0" + dart: ">=3.3.1 <4.0.0" + flutter: ">=3.18.0-18.0.pre.54" diff --git a/pubspec.yaml b/pubspec.yaml index 8e6f2a8..7b7d4c4 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -4,12 +4,12 @@ version: 1.2.3 homepage: https://github.com/iamvivekkaushik/DatePickerTimelineFlutter environment: - sdk: '>=2.17.0' + sdk: '>=3.3.1' dependencies: flutter: sdk: flutter - intl: ^0.17.0 + intl: ^0.19.0 dev_dependencies: flutter_test: @@ -19,8 +19,6 @@ dev_dependencies: # following page: https://dart.dev/tools/pub/pubspec # The following section is specific to Flutter. -flutter: - # To add assets to your package, add an assets section, like this: # assets: # - images/a_dot_burr.jpeg diff --git a/test/date_picker_timeline_test.dart b/test/date_picker_timeline_test.dart index 4ebbffa..5f2fadb 100644 --- a/test/date_picker_timeline_test.dart +++ b/test/date_picker_timeline_test.dart @@ -1,6 +1,4 @@ -import 'package:flutter_test/flutter_test.dart'; -import 'package:date_picker_timeline/date_picker_timeline.dart'; void main() { } From 464eca3fb876a38a86cb82b4614c1a358c10e20a Mon Sep 17 00:00:00 2001 From: hamza aboshhiwa <42789638+Hamza-Shewa@users.noreply.github.com> Date: Mon, 9 Jun 2025 15:16:05 +0200 Subject: [PATCH 15/15] update intl --- .../Flutter/ephemeral/flutter_lldb_helper.py | 32 ++++++++ .../ios/Flutter/ephemeral/flutter_lldbinit | 5 ++ .../ios/Flutter/flutter_export_environment.sh | 2 +- example/pubspec.lock | 80 +++++++++---------- pubspec.lock | 80 +++++++++---------- pubspec.yaml | 2 +- 6 files changed, 119 insertions(+), 82 deletions(-) create mode 100644 example/ios/Flutter/ephemeral/flutter_lldb_helper.py create mode 100644 example/ios/Flutter/ephemeral/flutter_lldbinit diff --git a/example/ios/Flutter/ephemeral/flutter_lldb_helper.py b/example/ios/Flutter/ephemeral/flutter_lldb_helper.py new file mode 100644 index 0000000..a88caf9 --- /dev/null +++ b/example/ios/Flutter/ephemeral/flutter_lldb_helper.py @@ -0,0 +1,32 @@ +# +# Generated file, do not edit. +# + +import lldb + +def handle_new_rx_page(frame: lldb.SBFrame, bp_loc, extra_args, intern_dict): + """Intercept NOTIFY_DEBUGGER_ABOUT_RX_PAGES and touch the pages.""" + base = frame.register["x0"].GetValueAsAddress() + page_len = frame.register["x1"].GetValueAsUnsigned() + + # Note: NOTIFY_DEBUGGER_ABOUT_RX_PAGES will check contents of the + # first page to see if handled it correctly. This makes diagnosing + # misconfiguration (e.g. missing breakpoint) easier. + data = bytearray(page_len) + data[0:8] = b'IHELPED!' + + error = lldb.SBError() + frame.GetThread().GetProcess().WriteMemory(base, data, error) + if not error.Success(): + print(f'Failed to write into {base}[+{page_len}]', error) + return + +def __lldb_init_module(debugger: lldb.SBDebugger, _): + target = debugger.GetDummyTarget() + # Caveat: must use BreakpointCreateByRegEx here and not + # BreakpointCreateByName. For some reasons callback function does not + # get carried over from dummy target for the later. + bp = target.BreakpointCreateByRegex("^NOTIFY_DEBUGGER_ABOUT_RX_PAGES$") + bp.SetScriptCallbackFunction('{}.handle_new_rx_page'.format(__name__)) + bp.SetAutoContinue(True) + print("-- LLDB integration loaded --") diff --git a/example/ios/Flutter/ephemeral/flutter_lldbinit b/example/ios/Flutter/ephemeral/flutter_lldbinit new file mode 100644 index 0000000..e3ba6fb --- /dev/null +++ b/example/ios/Flutter/ephemeral/flutter_lldbinit @@ -0,0 +1,5 @@ +# +# Generated file, do not edit. +# + +command script import --relative-to-command-file flutter_lldb_helper.py diff --git a/example/ios/Flutter/flutter_export_environment.sh b/example/ios/Flutter/flutter_export_environment.sh index 9569194..58a0ef4 100755 --- a/example/ios/Flutter/flutter_export_environment.sh +++ b/example/ios/Flutter/flutter_export_environment.sh @@ -1,7 +1,7 @@ #!/bin/sh # This is a generated file; do not edit or check into version control. export "FLUTTER_ROOT=C:\development\flutter" -export "FLUTTER_APPLICATION_PATH=F:\work_space\DatePickerTimelineFlutter\example" +export "FLUTTER_APPLICATION_PATH=f:\work_space\DatePickerTimelineFlutter\example" export "COCOAPODS_PARALLEL_CODE_SIGN=true" export "FLUTTER_TARGET=lib\main.dart" export "FLUTTER_BUILD_DIR=build" diff --git a/example/pubspec.lock b/example/pubspec.lock index 2752ecd..b103fc3 100644 --- a/example/pubspec.lock +++ b/example/pubspec.lock @@ -5,42 +5,42 @@ packages: dependency: transitive description: name: async - sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb" url: "https://pub.dev" source: hosted - version: "2.11.0" + version: "2.13.0" boolean_selector: dependency: transitive description: name: boolean_selector - sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.2" characters: dependency: transitive description: name: characters - sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 url: "https://pub.dev" source: hosted - version: "1.3.0" + version: "1.4.0" clock: dependency: transitive description: name: clock - sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b url: "https://pub.dev" source: hosted - version: "1.1.1" + version: "1.1.2" collection: dependency: transitive description: name: collection - sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" url: "https://pub.dev" source: hosted - version: "1.18.0" + version: "1.19.1" cupertino_icons: dependency: "direct main" description: @@ -60,10 +60,10 @@ packages: dependency: transitive description: name: fake_async - sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" url: "https://pub.dev" source: hosted - version: "1.3.1" + version: "1.3.3" flutter: dependency: "direct main" description: flutter @@ -78,26 +78,26 @@ packages: dependency: transitive description: name: intl - sha256: d6f56758b7d3014a48af9701c085700aac781a92a87a62b1333b46d8879661cf + sha256: "3df61194eb431efc39c4ceba583b95633a403f46c9fd341e550ce0bfa50e9aa5" url: "https://pub.dev" source: hosted - version: "0.19.0" + version: "0.20.2" leak_tracker: dependency: transitive description: name: leak_tracker - sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05" + sha256: "6bb818ecbdffe216e81182c2f0714a2e62b593f4a4f13098713ff1685dfb6ab0" url: "https://pub.dev" source: hosted - version: "10.0.5" + version: "10.0.9" leak_tracker_flutter_testing: dependency: transitive description: name: leak_tracker_flutter_testing - sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806" + sha256: f8b613e7e6a13ec79cfdc0e97638fddb3ab848452eff057653abd3edba760573 url: "https://pub.dev" source: hosted - version: "3.0.5" + version: "3.0.9" leak_tracker_testing: dependency: transitive description: @@ -110,10 +110,10 @@ packages: dependency: transitive description: name: matcher - sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 url: "https://pub.dev" source: hosted - version: "0.12.16+1" + version: "0.12.17" material_color_utilities: dependency: transitive description: @@ -126,71 +126,71 @@ packages: dependency: transitive description: name: meta - sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c url: "https://pub.dev" source: hosted - version: "1.15.0" + version: "1.16.0" path: dependency: transitive description: name: path - sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" url: "https://pub.dev" source: hosted - version: "1.9.0" + version: "1.9.1" sky_engine: dependency: transitive description: flutter source: sdk - version: "0.0.99" + version: "0.0.0" source_span: dependency: transitive description: name: source_span - sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" url: "https://pub.dev" source: hosted - version: "1.10.0" + version: "1.10.1" stack_trace: dependency: transitive description: name: stack_trace - sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" url: "https://pub.dev" source: hosted - version: "1.11.1" + version: "1.12.1" stream_channel: dependency: transitive description: name: stream_channel - sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.4" string_scanner: dependency: transitive description: name: string_scanner - sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.4.1" term_glyph: dependency: transitive description: name: term_glyph - sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" url: "https://pub.dev" source: hosted - version: "1.2.1" + version: "1.2.2" test_api: dependency: transitive description: name: test_api - sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb" + sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd url: "https://pub.dev" source: hosted - version: "0.7.2" + version: "0.7.4" vector_math: dependency: transitive description: @@ -203,10 +203,10 @@ packages: dependency: transitive description: name: vm_service - sha256: "5c5f338a667b4c644744b661f309fb8080bb94b18a7e91ef1dbd343bed00ed6d" + sha256: ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02 url: "https://pub.dev" source: hosted - version: "14.2.5" + version: "15.0.0" sdks: - dart: ">=3.3.1 <4.0.0" + dart: ">=3.7.0-0 <4.0.0" flutter: ">=3.18.0-18.0.pre.54" diff --git a/pubspec.lock b/pubspec.lock index 73ed96a..c19dc95 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -5,50 +5,50 @@ packages: dependency: transitive description: name: async - sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb" url: "https://pub.dev" source: hosted - version: "2.11.0" + version: "2.13.0" boolean_selector: dependency: transitive description: name: boolean_selector - sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.2" characters: dependency: transitive description: name: characters - sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 url: "https://pub.dev" source: hosted - version: "1.3.0" + version: "1.4.0" clock: dependency: transitive description: name: clock - sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b url: "https://pub.dev" source: hosted - version: "1.1.1" + version: "1.1.2" collection: dependency: transitive description: name: collection - sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" url: "https://pub.dev" source: hosted - version: "1.18.0" + version: "1.19.1" fake_async: dependency: transitive description: name: fake_async - sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" url: "https://pub.dev" source: hosted - version: "1.3.1" + version: "1.3.3" flutter: dependency: "direct main" description: flutter @@ -63,26 +63,26 @@ packages: dependency: "direct main" description: name: intl - sha256: d6f56758b7d3014a48af9701c085700aac781a92a87a62b1333b46d8879661cf + sha256: "3df61194eb431efc39c4ceba583b95633a403f46c9fd341e550ce0bfa50e9aa5" url: "https://pub.dev" source: hosted - version: "0.19.0" + version: "0.20.2" leak_tracker: dependency: transitive description: name: leak_tracker - sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05" + sha256: "6bb818ecbdffe216e81182c2f0714a2e62b593f4a4f13098713ff1685dfb6ab0" url: "https://pub.dev" source: hosted - version: "10.0.5" + version: "10.0.9" leak_tracker_flutter_testing: dependency: transitive description: name: leak_tracker_flutter_testing - sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806" + sha256: f8b613e7e6a13ec79cfdc0e97638fddb3ab848452eff057653abd3edba760573 url: "https://pub.dev" source: hosted - version: "3.0.5" + version: "3.0.9" leak_tracker_testing: dependency: transitive description: @@ -95,10 +95,10 @@ packages: dependency: transitive description: name: matcher - sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 url: "https://pub.dev" source: hosted - version: "0.12.16+1" + version: "0.12.17" material_color_utilities: dependency: transitive description: @@ -111,71 +111,71 @@ packages: dependency: transitive description: name: meta - sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c url: "https://pub.dev" source: hosted - version: "1.15.0" + version: "1.16.0" path: dependency: transitive description: name: path - sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" url: "https://pub.dev" source: hosted - version: "1.9.0" + version: "1.9.1" sky_engine: dependency: transitive description: flutter source: sdk - version: "0.0.99" + version: "0.0.0" source_span: dependency: transitive description: name: source_span - sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" url: "https://pub.dev" source: hosted - version: "1.10.0" + version: "1.10.1" stack_trace: dependency: transitive description: name: stack_trace - sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" url: "https://pub.dev" source: hosted - version: "1.11.1" + version: "1.12.1" stream_channel: dependency: transitive description: name: stream_channel - sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.4" string_scanner: dependency: transitive description: name: string_scanner - sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.4.1" term_glyph: dependency: transitive description: name: term_glyph - sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" url: "https://pub.dev" source: hosted - version: "1.2.1" + version: "1.2.2" test_api: dependency: transitive description: name: test_api - sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb" + sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd url: "https://pub.dev" source: hosted - version: "0.7.2" + version: "0.7.4" vector_math: dependency: transitive description: @@ -188,10 +188,10 @@ packages: dependency: transitive description: name: vm_service - sha256: "5c5f338a667b4c644744b661f309fb8080bb94b18a7e91ef1dbd343bed00ed6d" + sha256: ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02 url: "https://pub.dev" source: hosted - version: "14.2.5" + version: "15.0.0" sdks: - dart: ">=3.3.1 <4.0.0" + dart: ">=3.7.0-0 <4.0.0" flutter: ">=3.18.0-18.0.pre.54" diff --git a/pubspec.yaml b/pubspec.yaml index 7b7d4c4..17ccd5f 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -9,7 +9,7 @@ environment: dependencies: flutter: sdk: flutter - intl: ^0.19.0 + intl: ^0.20.2 dev_dependencies: flutter_test: