import { BottomSheetView, useBottomSheet } from '@gorhom/bottom-sheet';
import { useEffect } from 'react';
import type { BottomSheetContentContainerProps } from '../types/bottom-sheet';
/**
* Reusable BottomSheetContentContainer component
*
* This component handles the content container for bottom sheets used across
* BottomSheet, Popover, and Select components. It manages the expand/close
* behavior based on the provided state and applies consistent styling.
*
* @example
* ```tsx
*
* {children}
*
* ```
*/
export function BottomSheetContentContainer({
children,
contentContainerClassName,
contentContainerProps,
state,
}: BottomSheetContentContainerProps) {
const { expand, close } = useBottomSheet();
useEffect(() => {
if (state === 'open') {
expand();
} else if (state === 'close') {
setTimeout(() => {
close();
}, 100);
}
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [state]);
return (
{children}
);
}