diff --git a/native/media/camera-modal.react.js b/native/media/camera-modal.react.js --- a/native/media/camera-modal.react.js +++ b/native/media/camera-modal.react.js @@ -55,7 +55,7 @@ import { colors } from '../themes/colors.js'; import { type DeviceCameraInfo } from '../types/camera.js'; import type { NativeMethods } from '../types/react-native.js'; -import { type ViewStyle, type AnimatedViewStyle } from '../types/styles.js'; +import { type ViewStyle } from '../types/styles.js'; import { clampV2 } from '../utils/animation-utils.js'; const maxZoom = 16; @@ -178,20 +178,10 @@ +overlayStyle: ViewStyle, +sendButtonProgress: Animated.Value, +sendButtonStyle: ViewStyle, + +containerStyle: ViewStyle, }; class CameraModal extends React.PureComponent { - get containerStyle(): AnimatedViewStyle { - const { overlayContext } = this.props; - if (!overlayContext) { - return styles.container; - } - return { - ...styles.container, - opacity: overlayContext.position, - }; - } - renderCamera = ({ camera, status, @@ -334,7 +324,7 @@ ? RNCamera.Constants.Type.front : RNCamera.Constants.Type.back; return ( - + {statusBar} ({ + opacity: overlayContext?.positionV2?.value, + }), + [overlayContext], + ); + + const containerStyle = React.useMemo(() => { + if (!overlayContext) { + return styles.container; + } + return [styles.container, containerAnimatedStyle]; + }, [containerAnimatedStyle, overlayContext]); + return ( ); });