feat(media-picker-service): add pickFileOfType method

This commit is contained in:
Kiril Tijsma 2024-12-04 08:36:17 +01:00
parent 8ee904746c
commit a865e651b1
5 changed files with 21 additions and 16 deletions

View file

@ -1,3 +1,7 @@
## 0.7.0
- Added 'pickFileOfType' to the MediaPickerService
## 0.6.6
- Upgraded 'logger' package to ^2.4.0

View file

@ -4,7 +4,6 @@
import 'dart:typed_data';
import 'package:file_picker/file_picker.dart';
import 'package:flutter_media_picker/flutter_media_picker.dart';
abstract class MediaPickerService {
@ -16,4 +15,7 @@ abstract class MediaPickerService {
/// Returns [FilePickerResult] based on given [File].
Future<FilePickerResult?> pickFile(List<String> fileExtensions);
/// Returns [FilePickerResult] with type [FileType] based on given [File].
Future<FilePickerResult?> pickFileOfType(FileType type);
}

View file

@ -2,7 +2,6 @@
//
// SPDX-License-Identifier: BSD-3-Clause
import 'package:file_picker/file_picker.dart';
import 'package:flutter/material.dart';
import 'package:mime/mime.dart';

View file

@ -4,7 +4,6 @@
import 'dart:typed_data';
import 'package:file_picker/file_picker.dart';
import 'package:flutter/material.dart';
import 'package:flutter_media_picker/flutter_media_picker.dart';
import 'package:image_picker/image_picker.dart';
@ -12,6 +11,7 @@ import 'package:flutter_media_picker/video_player/video_player_native.dart'
if (dart.library.html) 'package:flutter_media_picker/video_player/video_player_web.dart'
as vp;
import 'package:video_player/video_player.dart';
export 'package:file_picker/file_picker.dart';
class MediaPickerFileService implements MediaPickerService {
late VideoPlayerController controller;
@ -58,17 +58,17 @@ class MediaPickerFileService implements MediaPickerService {
}
@override
Future<FilePickerResult?> pickFile(List<String> extensions) async {
var file = await FilePicker.platform.pickFiles(
withData: true,
type: FileType.custom,
allowedExtensions: extensions,
);
Future<FilePickerResult?> pickFile(List<String> extensions) async =>
FilePicker.platform.pickFiles(
withData: true,
type: FileType.custom,
allowedExtensions: extensions,
);
if (file != null) {
return file;
}
return Future.value(null);
}
@override
Future<FilePickerResult?> pickFileOfType(FileType type) async =>
FilePicker.platform.pickFiles(
withData: true,
type: type,
);
}

View file

@ -1,6 +1,6 @@
name: flutter_media_picker
description: A new Flutter package project.
version: 0.6.6
version: 0.7.0
homepage: https://github.com/Iconica-Development/flutter_media_picker
publish_to: https://forgejo.internal.iconica.nl/api/packages/internal/pub