1import { View, Button } from 'expo-dev-client-components';
2import * as React from 'react';
3
4type ButtonProps = React.ComponentProps<typeof Button.FadeOnPressContainer>;
5
6export type ListButtonProps = ButtonProps & {
7  children?: React.ReactNode;
8  onPress: () => void;
9  isFirst?: boolean;
10  isLast?: boolean;
11};
12
13export function ListButton({
14  children,
15  onPress,
16  isFirst,
17  isLast,
18  ...buttonProps
19}: ListButtonProps) {
20  return (
21    <Button.FadeOnPressContainer
22      bg="default"
23      onPress={onPress}
24      roundedBottom={isLast ? 'large' : 'none'}
25      roundedTop={isFirst ? 'large' : 'none'}
26      {...buttonProps}>
27      <View
28        bg="default"
29        roundedTop={isFirst ? 'large' : 'none'}
30        roundedBottom={isLast ? 'large' : 'none'}
31        py="small"
32        px="small">
33        {children}
34      </View>
35    </Button.FadeOnPressContainer>
36  );
37}
38