diff --git a/CHANGELOG.md b/CHANGELOG.md index 4bb252aef..a61163f38 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,17 @@ All notable changes to this project will be documented in this file. +## [8.4.3] - 2024. 10. 23 + +* Added rowWrapper & editCellWrapper for the state manager +* Manually detect doubleTaps on desktop platform to eliminate delay +* Several improvements +* Add PlutoGridRowSelectionCheckBehavior which enables automatically setting the CheckBox values of selected rows +* Add PlutoGridRowSelectionCheckBehavior +* Upgrade packages + + + ## [8.4.2] - 2024. 07. 15 * add rowWrapper diff --git a/README.md b/README.md index b17ca1a72..9fcfc8a33 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# PlutoGrid Plus for flutter - v8.4.2 +# PlutoGrid Plus for flutter - v8.4.3 PlutoGrid Plus is a maintained version of diff --git a/demo/pubspec.yaml b/demo/pubspec.yaml index 5c334d8cb..9d24b2f0e 100644 --- a/demo/pubspec.yaml +++ b/demo/pubspec.yaml @@ -18,19 +18,19 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev version: 1.0.0+1 environment: - sdk: ">=2.17.0 <4.0.0" + sdk: ^3.0.0 dependencies: flutter: sdk: flutter - pluto_grid_plus: 8.4.2 + pluto_grid_plus: 8.4.3 faker: ^2.1.0 url_launcher: ^6.2.1 font_awesome_flutter: ^10.6.0 rainbow_color: ^2.0.1 pluto_menu_bar: ^3.0.1 file_saver: ^0.2.10 - pluto_grid_plus_export: 1.0.4 + pluto_grid_plus_export: 1.0.5 # The following adds the Cupertino Icons font to your application. # Use with the CupertinoIcons class for iOS style icons. cupertino_icons: ^1.0.6 @@ -38,7 +38,7 @@ dependencies: dev_dependencies: flutter_test: sdk: flutter - flutter_lints: ^4.0.0 + flutter_lints: ^5.0.0 # For information on the generic Dart part of this file, see the # following page: https://dart.dev/tools/pub/pubspec diff --git a/example/pubspec.yaml b/example/pubspec.yaml index 5f8ee19d4..25eb25387 100644 --- a/example/pubspec.yaml +++ b/example/pubspec.yaml @@ -18,7 +18,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev version: 1.0.0+1 environment: - sdk: ">=2.17.0 <4.0.0" + sdk: ^3.0.0 # Dependencies specify other packages that your package needs in order to work. # To automatically upgrade your package dependencies to the latest versions @@ -46,7 +46,7 @@ dev_dependencies: # activated in the `analysis_options.yaml` file located at the root of your # package. See that file for information about deactivating specific lint # rules and activating additional ones. - flutter_lints: ^4.0.0 + flutter_lints: ^5.0.0 # For information on the generic Dart part of this file, see the # following page: https://dart.dev/tools/pub/pubspec diff --git a/lib/pluto_grid_plus.dart b/lib/pluto_grid_plus.dart index 813c20eaf..04ed11a9f 100644 --- a/lib/pluto_grid_plus.dart +++ b/lib/pluto_grid_plus.dart @@ -1,4 +1,4 @@ -library pluto_grid_plus; +library; export './src/helper/filter_helper.dart'; export './src/helper/filtered_list.dart'; diff --git a/lib/src/manager/pluto_change_notifier_filter.dart b/lib/src/manager/pluto_change_notifier_filter.dart index 53bf45528..51ae80324 100644 --- a/lib/src/manager/pluto_change_notifier_filter.dart +++ b/lib/src/manager/pluto_change_notifier_filter.dart @@ -160,29 +160,29 @@ class PlutoNotifierFilterResolverDefault @override Set resolve(PlutoGridStateManager stateManager, Type type) { switch (type) { - case PlutoGrid: + case const (PlutoGrid): return defaultGridFilter(stateManager); - case PlutoBodyColumns: - case PlutoBodyColumnsFooter: - case PlutoLeftFrozenColumns: - case PlutoLeftFrozenColumnsFooter: - case PlutoRightFrozenColumns: - case PlutoRightFrozenColumnsFooter: + case const (PlutoBodyColumns): + case const (PlutoBodyColumnsFooter): + case const (PlutoLeftFrozenColumns): + case const (PlutoLeftFrozenColumnsFooter): + case const (PlutoRightFrozenColumns): + case const (PlutoRightFrozenColumnsFooter): return defaultColumnsFilter(stateManager); - case PlutoBodyRows: - case PlutoLeftFrozenRows: - case PlutoRightFrozenRows: + case const (PlutoBodyRows): + case const (PlutoLeftFrozenRows): + case const (PlutoRightFrozenRows): return defaultRowsFilter(stateManager); - case PlutoNoRowsWidget: + case const (PlutoNoRowsWidget): return { ...defaultRowsFilter(stateManager), stateManager.setShowLoading.hashCode, }; - case PlutoAggregateColumnFooter: + case const (PlutoAggregateColumnFooter): return defaultAggregateColumnFooterFilter(stateManager); - case CheckboxSelectionWidget: + case const (CheckboxSelectionWidget): return defaultCheckboxFilter(stateManager); - case CheckboxAllSelectionWidget: + case const (CheckboxAllSelectionWidget): return defaultCheckboxAllFilter(stateManager); } diff --git a/lib/src/manager/pluto_grid_key_manager.dart b/lib/src/manager/pluto_grid_key_manager.dart index a10e28b3b..5d0dfb6ef 100644 --- a/lib/src/manager/pluto_grid_key_manager.dart +++ b/lib/src/manager/pluto_grid_key_manager.dart @@ -66,6 +66,7 @@ class PlutoGridKeyManager { final movingStream = _subject.stream.where((event) => event.needsThrottle).transform( ThrottleStreamTransformer( + // ignore: void_checks (e) => TimerStream(e, const Duration(milliseconds: 1)), ), ); diff --git a/packages/pluto_grid_plus_export/README.md b/packages/pluto_grid_plus_export/README.md index 28f2a705e..c3c7e6ee8 100644 --- a/packages/pluto_grid_plus_export/README.md +++ b/packages/pluto_grid_plus_export/README.md @@ -1,4 +1,4 @@ -## PlutoGridExport for PlutoGrid - v1.0.4 +## PlutoGridExport for PlutoGrid - v1.0.5 [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) diff --git a/packages/pluto_grid_plus_export/lib/pluto_grid_plus_export.dart b/packages/pluto_grid_plus_export/lib/pluto_grid_plus_export.dart index 80897c954..5e2066815 100644 --- a/packages/pluto_grid_plus_export/lib/pluto_grid_plus_export.dart +++ b/packages/pluto_grid_plus_export/lib/pluto_grid_plus_export.dart @@ -1,4 +1,4 @@ -library pluto_grid_plus_export; +library; export 'package:pdf/pdf.dart'; export 'package:pdf/widgets.dart'; diff --git a/packages/pluto_grid_plus_export/pubspec.yaml b/packages/pluto_grid_plus_export/pubspec.yaml index 24f1b7370..33ce7e43b 100644 --- a/packages/pluto_grid_plus_export/pubspec.yaml +++ b/packages/pluto_grid_plus_export/pubspec.yaml @@ -5,13 +5,12 @@ homepage: https://bosskmk.github.io repository: https://github.com/doonfrs/pluto_grid_plus/tree/master/packages/pluto_grid_plus_export environment: - sdk: ">=2.17.0 <4.0.0" - flutter: ">=2.5.0" + sdk: ^3.0.0 dependencies: flutter: sdk: flutter - pluto_grid_plus: ^8.4.2 + pluto_grid_plus: ^8.4.3 csv: ^6.0.0 pdf: ^3.10.7 printing: ^5.11.1 @@ -21,4 +20,4 @@ dev_dependencies: sdk: flutter mockito: ^5.4.3 build_runner: ^2.4.7 - flutter_lints: ^4.0.0 + flutter_lints: ^5.0.0 diff --git a/pubspec.yaml b/pubspec.yaml index ea1c09d25..852b8286d 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,12 +1,11 @@ name: pluto_grid_plus description: PlutoGrid plus is a maintained version of PlutoGrid, PlutoGrid is a dataGrid that can be controlled by the keyboard on desktop and web. Of course, it works well on Android and IOS. (DataGrid, DataTable, Data Grid, Data Table, Sticky) -version: 8.4.2 +version: 8.4.3 homepage: https://pluto.weblaze.dev repository: https://github.com/doonfrs/pluto_grid_plus environment: - sdk: ">=2.17.0 <4.0.0" - flutter: ">=2.5.0" + sdk: ^3.0.0 dependencies: flutter: @@ -22,4 +21,4 @@ dev_dependencies: sdk: flutter mockito: ^5.4.3 build_runner: ^2.4.7 - flutter_lints: ^4.0.0 + flutter_lints: ^5.0.0