diff options
Diffstat (limited to 'src/view/com/util')
-rw-r--r-- | src/view/com/util/UserAvatar.tsx | 2 | ||||
-rw-r--r-- | src/view/com/util/UserBanner.tsx | 8 | ||||
-rw-r--r-- | src/view/com/util/images/ImageCropPicker.tsx | 6 | ||||
-rw-r--r-- | src/view/com/util/images/ImageCropPicker.web.tsx | 32 |
4 files changed, 41 insertions, 7 deletions
diff --git a/src/view/com/util/UserAvatar.tsx b/src/view/com/util/UserAvatar.tsx index c9c255f46..d91607b6c 100644 --- a/src/view/com/util/UserAvatar.tsx +++ b/src/view/com/util/UserAvatar.tsx @@ -7,7 +7,7 @@ import { openCropper, openPicker, Image as PickedImage, -} from 'react-native-image-crop-picker' +} from './images/ImageCropPicker' import {colors, gradients} from '../../lib/styles' export function UserAvatar({ diff --git a/src/view/com/util/UserBanner.tsx b/src/view/com/util/UserBanner.tsx index 5ce638351..fe606bc55 100644 --- a/src/view/com/util/UserBanner.tsx +++ b/src/view/com/util/UserBanner.tsx @@ -2,13 +2,9 @@ import React, {useCallback} from 'react' import {StyleSheet, View, TouchableOpacity, Alert, Image} from 'react-native' import Svg, {Rect, Defs, LinearGradient, Stop} from 'react-native-svg' import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' -import {Image as PickedImage} from 'react-native-image-crop-picker' +import {Image as PickedImage} from './images/ImageCropPicker' import {colors, gradients} from '../../lib/styles' -import { - openCamera, - openCropper, - openPicker, -} from 'react-native-image-crop-picker' +import {openCamera, openCropper, openPicker} from './images/ImageCropPicker' export function UserBanner({ banner, diff --git a/src/view/com/util/images/ImageCropPicker.tsx b/src/view/com/util/images/ImageCropPicker.tsx new file mode 100644 index 000000000..9cd4da9f5 --- /dev/null +++ b/src/view/com/util/images/ImageCropPicker.tsx @@ -0,0 +1,6 @@ +export { + openPicker, + openCamera, + openCropper, +} from 'react-native-image-crop-picker' +export type {Image} from 'react-native-image-crop-picker' diff --git a/src/view/com/util/images/ImageCropPicker.web.tsx b/src/view/com/util/images/ImageCropPicker.web.tsx new file mode 100644 index 000000000..a385e2e93 --- /dev/null +++ b/src/view/com/util/images/ImageCropPicker.web.tsx @@ -0,0 +1,32 @@ +import type { + Image, + Video, + ImageOrVideo, + Options, + PossibleArray, +} from 'react-native-image-crop-picker' + +export type {Image} from 'react-native-image-crop-picker' + +type MediaType<O> = O extends {mediaType: 'photo'} + ? Image + : O extends {mediaType: 'video'} + ? Video + : ImageOrVideo + +export async function openPicker<O extends Options>( + _options: O, +): Promise<PossibleArray<O, MediaType<O>>> { + // TODO + throw new Error('TODO') +} +export async function openCamera<O extends Options>( + _options: O, +): Promise<PossibleArray<O, MediaType<O>>> { + // TODO + throw new Error('TODO') +} +export async function openCropper(_options: Options): Promise<Image> { + // TODO + throw new Error('TODO') +} |