diff --git a/packages/file_selector/file_selector/CHANGELOG.md b/packages/file_selector/file_selector/CHANGELOG.md index 8a0f1de1efcb..f1e6a406ef3d 100644 --- a/packages/file_selector/file_selector/CHANGELOG.md +++ b/packages/file_selector/file_selector/CHANGELOG.md @@ -1,6 +1,6 @@ ## 0.9.2+2 -* Adds `getDirectoriesPaths` method. +* Adds `getDirectoryPaths` method. ## 0.9.2+1 diff --git a/packages/file_selector/file_selector/example/lib/get_multiple_directories_page.dart b/packages/file_selector/file_selector/example/lib/get_multiple_directories_page.dart index 68350d09685d..6a450ca1dfb2 100644 --- a/packages/file_selector/file_selector/example/lib/get_multiple_directories_page.dart +++ b/packages/file_selector/file_selector/example/lib/get_multiple_directories_page.dart @@ -5,7 +5,7 @@ import 'package:file_selector/file_selector.dart'; import 'package:flutter/material.dart'; -/// Screen that allows the user to select one or more directories using `getDirectoriesPaths`, +/// Screen that allows the user to select one or more directories using `getDirectoryPaths`, /// then displays the selected directories in a dialog. class GetMultipleDirectoriesPage extends StatelessWidget { /// Default Constructor @@ -13,7 +13,7 @@ class GetMultipleDirectoriesPage extends StatelessWidget { Future _getDirectoryPaths(BuildContext context) async { const String confirmButtonText = 'Choose'; - final List? directoryPaths = await getDirectoriesPaths( + final List? directoryPaths = await getDirectoryPaths( confirmButtonText: confirmButtonText, ); if (directoryPaths == null) { diff --git a/packages/file_selector/file_selector/lib/file_selector.dart b/packages/file_selector/file_selector/lib/file_selector.dart index ee11b12bb60e..e8b0751151d9 100644 --- a/packages/file_selector/file_selector/lib/file_selector.dart +++ b/packages/file_selector/file_selector/lib/file_selector.dart @@ -135,10 +135,10 @@ Future getDirectoryPath({ /// When not provided, the default OS label is used (for example, "Open"). /// /// Returns `null` if the user cancels the operation. -Future?> getDirectoriesPaths({ +Future?> getDirectoryPaths({ String? initialDirectory, String? confirmButtonText, }) async { - return FileSelectorPlatform.instance.getDirectoriesPaths( + return FileSelectorPlatform.instance.getDirectoryPaths( initialDirectory: initialDirectory, confirmButtonText: confirmButtonText); } diff --git a/packages/file_selector/file_selector/pubspec.yaml b/packages/file_selector/file_selector/pubspec.yaml index 8dc26940c84f..b0936f9f15b8 100644 --- a/packages/file_selector/file_selector/pubspec.yaml +++ b/packages/file_selector/file_selector/pubspec.yaml @@ -4,6 +4,8 @@ description: Flutter plugin for opening and saving files, or selecting repository: https://github.com/flutter/plugins/tree/main/packages/file_selector/file_selector issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+file_selector%22 version: 0.9.2+2 +# TODO(eugerossetto): This should be reverted once file_selector_platform_interface 2.3.0 is published. +publish_to: 'none' environment: sdk: ">=2.12.0 <3.0.0" diff --git a/packages/file_selector/file_selector/test/file_selector_test.dart b/packages/file_selector/file_selector/test/file_selector_test.dart index d71fb861a903..3e2d558c9f9c 100644 --- a/packages/file_selector/file_selector/test/file_selector_test.dart +++ b/packages/file_selector/file_selector/test/file_selector_test.dart @@ -259,7 +259,7 @@ void main() { }); }); - group('getDirectoriesPaths', () { + group('getDirectoryPaths', () { const List expectedDirectoryPaths = [ '/example/path', '/example/2/path' @@ -272,7 +272,7 @@ void main() { confirmButtonText: confirmButtonText) ..setPathsResponse(expectedDirectoryPaths); - final List? directoryPaths = await getDirectoriesPaths( + final List? directoryPaths = await getDirectoryPaths( initialDirectory: initialDirectory, confirmButtonText: confirmButtonText, ); @@ -283,7 +283,7 @@ void main() { test('works with no arguments', () async { fakePlatformImplementation.setPathsResponse(expectedDirectoryPaths); - final List? directoryPaths = await getDirectoriesPaths(); + final List? directoryPaths = await getDirectoryPaths(); expect(directoryPaths, expectedDirectoryPaths); }); @@ -293,7 +293,7 @@ void main() { ..setPathsResponse(expectedDirectoryPaths); final List? directoryPaths = - await getDirectoriesPaths(initialDirectory: initialDirectory); + await getDirectoryPaths(initialDirectory: initialDirectory); expect(directoryPaths, expectedDirectoryPaths); }); @@ -303,7 +303,7 @@ void main() { ..setPathsResponse(expectedDirectoryPaths); final List? directoryPaths = - await getDirectoriesPaths(confirmButtonText: confirmButtonText); + await getDirectoryPaths(confirmButtonText: confirmButtonText); expect(directoryPaths, expectedDirectoryPaths); }); }); @@ -398,7 +398,7 @@ class FakeFileSelector extends Fake } @override - Future?> getDirectoriesPaths({ + Future?> getDirectoryPaths({ String? initialDirectory, String? confirmButtonText, }) async { diff --git a/packages/file_selector/file_selector_platform_interface/CHANGELOG.md b/packages/file_selector/file_selector_platform_interface/CHANGELOG.md index 53655508934c..e0b08f086977 100644 --- a/packages/file_selector/file_selector_platform_interface/CHANGELOG.md +++ b/packages/file_selector/file_selector_platform_interface/CHANGELOG.md @@ -1,10 +1,10 @@ -## 2.3.0 +## 2.4.0 -* Replaces `macUTIs` with `uniformTypeIdentifiers`. `macUTIs` is available as an alias, but will be deprecated in a future release. +* Adds `getDirectoryPaths` method to the interface. -## 2.2.0+1 +## 2.3.0 -* Adds getDirectoriesPaths method to the interface. +* Replaces `macUTIs` with `uniformTypeIdentifiers`. `macUTIs` is available as an alias, but will be deprecated in a future release. ## 2.2.0 diff --git a/packages/file_selector/file_selector_platform_interface/lib/src/method_channel/method_channel_file_selector.dart b/packages/file_selector/file_selector_platform_interface/lib/src/method_channel/method_channel_file_selector.dart index 95f12e610871..51fd010386ea 100644 --- a/packages/file_selector/file_selector_platform_interface/lib/src/method_channel/method_channel_file_selector.dart +++ b/packages/file_selector/file_selector_platform_interface/lib/src/method_channel/method_channel_file_selector.dart @@ -96,10 +96,10 @@ class MethodChannelFileSelector extends FileSelectorPlatform { /// Gets a list of directories paths from a dialog @override - Future?> getDirectoriesPaths( + Future?> getDirectoryPaths( {String? initialDirectory, String? confirmButtonText}) async { return _channel.invokeListMethod( - 'getDirectoriesPaths', + 'getDirectoryPaths', { 'initialDirectory': initialDirectory, 'confirmButtonText': confirmButtonText, diff --git a/packages/file_selector/file_selector_platform_interface/lib/src/platform_interface/file_selector_interface.dart b/packages/file_selector/file_selector_platform_interface/lib/src/platform_interface/file_selector_interface.dart index 55bac70026b6..a277b62b0877 100644 --- a/packages/file_selector/file_selector_platform_interface/lib/src/platform_interface/file_selector_interface.dart +++ b/packages/file_selector/file_selector_platform_interface/lib/src/platform_interface/file_selector_interface.dart @@ -77,10 +77,10 @@ abstract class FileSelectorPlatform extends PlatformInterface { /// Open file dialog for loading directories and return multiple directories paths /// Returns `null` if user cancels the operation. - Future?> getDirectoriesPaths({ + Future?> getDirectoryPaths({ String? initialDirectory, String? confirmButtonText, }) { - throw UnimplementedError('getDirectoriesPaths() has not been implemented.'); + throw UnimplementedError('getDirectoryPaths() has not been implemented.'); } } diff --git a/packages/file_selector/file_selector_platform_interface/pubspec.yaml b/packages/file_selector/file_selector_platform_interface/pubspec.yaml index ac8727c09e36..4ab63acbf7e6 100644 --- a/packages/file_selector/file_selector_platform_interface/pubspec.yaml +++ b/packages/file_selector/file_selector_platform_interface/pubspec.yaml @@ -4,7 +4,7 @@ repository: https://github.com/flutter/plugins/tree/main/packages/file_selector/ issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+file_selector%22 # NOTE: We strongly prefer non-breaking changes, even at the expense of a # less-clean API. See https://flutter.dev/go/platform-interface-breaking-changes -version: 2.3.0 +version: 2.4.0 environment: sdk: ">=2.12.0 <3.0.0" diff --git a/packages/file_selector/file_selector_platform_interface/test/method_channel_file_selector_test.dart b/packages/file_selector/file_selector_platform_interface/test/method_channel_file_selector_test.dart index 98033b1817b7..40938fa9967f 100644 --- a/packages/file_selector/file_selector_platform_interface/test/method_channel_file_selector_test.dart +++ b/packages/file_selector/file_selector_platform_interface/test/method_channel_file_selector_test.dart @@ -247,15 +247,15 @@ void main() { ); }); }); - group('#getDirectoriesPaths', () { + group('#getDirectoryPaths', () { test('passes initialDirectory correctly', () async { - await plugin.getDirectoriesPaths( + await plugin.getDirectoryPaths( initialDirectory: '/example/directory'); expect( log, [ - isMethodCall('getDirectoriesPaths', arguments: { + isMethodCall('getDirectoryPaths', arguments: { 'initialDirectory': '/example/directory', 'confirmButtonText': null, 'multiple': true @@ -264,12 +264,12 @@ void main() { ); }); test('passes confirmButtonText correctly', () async { - await plugin.getDirectoriesPaths(confirmButtonText: 'Open File'); + await plugin.getDirectoryPaths(confirmButtonText: 'Open File'); expect( log, [ - isMethodCall('getDirectoriesPaths', arguments: { + isMethodCall('getDirectoryPaths', arguments: { 'initialDirectory': null, 'confirmButtonText': 'Open File', 'multiple': true