import { requireNativeViewManager } from 'expo-modules-core'; import React from 'react'; import { getSizeFromModifiers, mapToNativeModifiers, } from '../../utils/modifiers'; import { onBaseEvent } from '../../utils/onBaseEvent'; import { NativeShapeProps, ShapeCornerRadii, ShapeCornerRadius, ShapeProps, } from './types'; const NativeShape: React.ComponentType = requireNativeViewManager('Shape'); export function Rectangle({ style, ...modifiers }: ShapeProps) { return ( { onBaseEvent(e, modifiers); }} /> ); } export function RoundedRectangle(props: ShapeProps & ShapeCornerRadius) { const { style, cornerRadius, ...modifiers } = props; return ( { onBaseEvent(e, modifiers); }} /> ); } export function UnevenRoundedRectangle(props: ShapeProps & ShapeCornerRadii) { const { style, cornerRadii, ...modifiers } = props; return ( { onBaseEvent(e, modifiers); }} /> ); } export function Circle(props: ShapeProps) { const { style, ...modifiers } = props; return ( { onBaseEvent(e, modifiers); }} /> ); } export function Capsule(props: ShapeProps) { const { style, ...modifiers } = props; return ( { onBaseEvent(e, modifiers); }} /> ); } export function Ellipse(props: ShapeProps) { const { style, ...modifiers } = props; return ( { onBaseEvent(e, modifiers); }} /> ); }