// @flow import * as React from 'react'; import {Avatar, Chip, List, withTheme} from 'react-native-paper'; import {View} from "react-native"; import type {category, club} from "../../../screens/Amicale/Clubs/ClubListScreen"; import type {CustomTheme} from "../../../managers/ThemeManager"; type Props = { onPress: () => void, categoryTranslator: (id: number) => category, item: club, height: number, theme: CustomTheme, } class ClubListItem extends React.Component { hasManagers: boolean; constructor(props) { super(props); this.hasManagers = props.item.responsibles.length > 0; } shouldComponentUpdate() { return false; } getCategoriesRender(categories: Array) { let final = []; for (let i = 0; i < categories.length; i++) { if (categories[i] !== null) { const category: category = this.props.categoryTranslator(categories[i]); final.push( {category.name} ); } } return {final}; } render() { const categoriesRender = this.getCategoriesRender.bind(this, this.props.item.category); const colors = this.props.theme.colors; return ( } right={(props) => } style={{ height: this.props.height, justifyContent: 'center', }} /> ); } } export default withTheme(ClubListItem);