| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 | import 'package:appflowy/util/file_picker/file_picker_service.dart';import 'package:file_picker/file_picker.dart' as fp;class FilePicker implements FilePickerService {  @override  Future<String?> getDirectoryPath({String? title}) {    return fp.FilePicker.platform.getDirectoryPath();  }  @override  Future<FilePickerResult?> pickFiles({    String? dialogTitle,    String? initialDirectory,    fp.FileType type = fp.FileType.any,    List<String>? allowedExtensions,    Function(fp.FilePickerStatus p1)? onFileLoading,    bool allowCompression = true,    bool allowMultiple = false,    bool withData = false,    bool withReadStream = false,    bool lockParentWindow = false,  }) async {    final result = await fp.FilePicker.platform.pickFiles(      dialogTitle: dialogTitle,      initialDirectory: initialDirectory,      type: type,      allowedExtensions: allowedExtensions,      onFileLoading: onFileLoading,      allowCompression: allowCompression,      allowMultiple: allowMultiple,      withData: withData,      withReadStream: withReadStream,      lockParentWindow: lockParentWindow,    );    return FilePickerResult(result?.files ?? []);  }  @override  Future<String?> saveFile({    String? dialogTitle,    String? fileName,    String? initialDirectory,    fp.FileType type = fp.FileType.any,    List<String>? allowedExtensions,    bool lockParentWindow = false,  }) {    return fp.FilePicker.platform.saveFile(      dialogTitle: dialogTitle,      fileName: fileName,      initialDirectory: initialDirectory,      type: type,      allowedExtensions: allowedExtensions,      lockParentWindow: lockParentWindow,    );  }}
 |