(
restyleFunctions: (
| RestyleFunctionContainer<Props, Theme>
| RestyleFunctionContainer<Props, Theme>[]
)[],
BaseComponent: React.ComponentType<any> = View,
)
| 6 | import useRestyle from './hooks/useRestyle'; |
| 7 | |
| 8 | const createRestyleComponent = < |
| 9 | Props extends {[key: string]: any}, |
| 10 | Theme extends BaseTheme, |
| 11 | >( |
| 12 | restyleFunctions: ( |
| 13 | | RestyleFunctionContainer<Props, Theme> |
| 14 | | RestyleFunctionContainer<Props, Theme>[] |
| 15 | )[], |
| 16 | BaseComponent: React.ComponentType<any> = View, |
| 17 | ) => { |
| 18 | const composedRestyleFunction = composeRestyleFunctions(restyleFunctions); |
| 19 | |
| 20 | const RestyleComponent = React.forwardRef((props: Props, ref) => { |
| 21 | const passedProps = useRestyle(composedRestyleFunction, props); |
| 22 | return <BaseComponent ref={ref} {...passedProps} />; |
| 23 | }); |
| 24 | type RestyleComponentType = typeof RestyleComponent; |
| 25 | return RestyleComponent as RestyleComponentType & { |
| 26 | defaultProps?: Partial<React.ComponentProps<RestyleComponentType>>; |
| 27 | }; |
| 28 | }; |
| 29 | |
| 30 | export default createRestyleComponent; |
no test coverage detected
searching dependent graphs…