diff --git a/app/lib/methods/mediaPicker.ts b/app/lib/methods/mediaPicker.ts index 1a4b80259..a1f0ac132 100644 --- a/app/lib/methods/mediaPicker.ts +++ b/app/lib/methods/mediaPicker.ts @@ -70,7 +70,7 @@ const pickFromCamera = async ( } }; -export const pickMultipleImageAndVideoFromLibrary = async (): Promise => { +export const pickMultipleImageAndVideoFromLibrary = async (): Promise => { try { const result = await ImagePicker.launchImageLibraryAsync({ mediaTypes: ImagePicker.MediaTypeOptions.All, @@ -78,9 +78,14 @@ export const pickMultipleImageAndVideoFromLibrary = async (): Promise addAdditionalPropsToFile(file)); - const files = await Promise.all(selectedFiles); - return files; + if (result.selected) { + const selectedFiles = result.selected.map(file => addAdditionalPropsToFile(file)); + const files = await Promise.all(selectedFiles); + return files; + } + // @ts-ignore - The type for when returning only one file is wrong. + const selectedFile = await addAdditionalPropsToFile(result); + return [selectedFile]; } return null; } catch (error) { @@ -92,7 +97,9 @@ export const pickMultipleImageAndVideoFromLibrary = async (): Promise; export async function pickImageFromLibrary(base64?: false): Promise; -export async function pickImageFromLibrary(base64?: boolean): Promise { +export async function pickImageFromLibrary( + base64?: boolean +): Promise { try { const image = await ImagePicker.launchImageLibraryAsync({ mediaTypes: ImagePicker.MediaTypeOptions.Images,