pickDocument method

Future<Either<BaseException, List<FileModel>>> pickDocument({
  1. required bool allowMultiple,
  2. List<String>? allowedExtensions,
})

Implementation

Future<Either<BaseException, List<FileModel>>> pickDocument({
  required bool allowMultiple,
  List<String>? allowedExtensions,
}) async {
  try {
    List<PlatformFile> results = [];

    if (allowMultiple) {
      final files = await FilePicker.pickFiles(
        type: .custom,
        allowedExtensions: allowedExtensions,
      );
      results.addAll(files);
    }

    if (!allowMultiple) {
      final file = await FilePicker.pickFile(
        type: .custom,
        allowedExtensions: allowedExtensions,
      );
      results.addAll([?file]);
    }

    return _resultHandle(results);
  } catch (e, s) {
    return _errorHandle(e, s);
  }
}