import React from 'react-native';
import GiftedListView from 'react-native-gifted-listview';
import GlobalStyles from '../../settings/styles';
import loaderHandler from 'react-native-busy-indicator/LoaderHandler';
import BuildItem from './BuildItem';
import BuildItemEnd from './BuildItemEnd';
import { getProjectRecentBuilds } from '../../api/CircleCI';
import _ from 'underscore';
const {
StyleSheet,
View
} = React;
const styles = StyleSheet.create({
listView: {
flex: 1,
flexDirection: 'column',
alignItems: 'stretch',
justifyContent: 'center',
flexWrap: 'wrap',
paddingHorizontal: 5
},
});
export default class BuildList extends React.Component {
constructor(props) {
super(props);
this._fetch = this._fetch.bind(this);
this.renderRow = this.renderRow.bind(this);
this.renderLimit = 20;
}
renderRow(build) {
if (build.build_time_millis < 1) {
return null;
}
const statusColour = GlobalStyles.get('CIRCLE_TEST_COLOURS').get(build.status.toUpperCase());
return ;
}
_fetch(page = 1, callback, options) {
const project = this.props.project;
getProjectRecentBuilds(project.username, project.reponame, this.renderLimit, this.renderLimit * (page - 1))
.then((recentBuilds) => {
recentBuilds = _.sortBy(recentBuilds, (b) => b.stop_time).reverse();
loaderHandler.hideLoader();
callback(recentBuilds, {
allLoaded: recentBuilds.length < this.renderLimit
});
});
}
render() {
return (
}/>
);
}
};