import React, {useEffect, useState} from 'react'; import { SafeAreaView, TouchableOpacity, View, KeyboardAvoidingView, Text, Keyboard, Platform, } from 'react-native'; import {COLOR_SCHEME, opacity, pv, br, SIZE, WEIGHT} from '../../common/common'; import {Search} from '../../components/SearchInput'; import {w, h, SideMenuEvent, getElevation, ToastEvent} from '../../utils/utils'; import {Header} from '../../components/header'; import {NotesList} from '../../components/NotesList'; import {db} from '../../../App'; import Icon from 'react-native-vector-icons/Feather'; import NavigationService from '../../services/NavigationService'; import * as Animatable from 'react-native-animatable'; import {useAppContext} from '../../provider/useAppContext'; import {DDS} from '../../../App'; export const AnimatedSafeAreaView = Animatable.createAnimatableComponent( SafeAreaView, ); export const Container = ({ children, bottomButtonOnPress, bottomButtonText, noBottomButton = false, }) => { // State const {colors} = useAppContext(); const [buttonHide, setButtonHide] = useState(false); useEffect(() => { Keyboard.addListener('keyboardDidShow', () => { setButtonHide(true); }); Keyboard.addListener('keyboardDidHide', () => { setTimeout(() => { setButtonHide(false); }, 100); }); return () => { Keyboard.removeListener('keyboardDidShow', () => { setButtonHide(true); }); Keyboard.removeListener('keyboardDidHide', () => { setTimeout(() => { setButtonHide(false); }, 100); }); }; }, []); // Render return ( {children} {buttonHide || noBottomButton ? null : ( {' ' + bottomButtonText} )} ); }; export default Container;