// @flow import * as React from 'react'; import {View} from 'react-native'; import {withTheme} from 'react-native-paper'; import type {Cell} from "./CellComponent"; import CellComponent from "./CellComponent"; export type Grid = Array>; type Props = { grid: Array>, backgroundColor: string, height: number, width: number, containerMaxHeight: number | string, containerMaxWidth: number | string, } class GridComponent extends React.Component { getRow(rowNumber: number) { let cells = this.props.grid[rowNumber].map(this.getCellRender); return ( {cells} ); } getCellRender = (item: Cell) => { return ; }; getGrid() { let rows = []; for (let i = 0; i < this.props.height; i++) { rows.push(this.getRow(i)); } return rows; } render() { return ( {this.getGrid()} ); } } export default withTheme(GridComponent);