import React, { PropTypes } from 'react'; import { Grid, Cell, Icon, Switch } from 'react-mdl'; import { Link } from 'react-router'; import percentLib from 'percent'; import Progress from './progress'; import { connect } from 'react-redux'; import EditFeatureToggle from './form-edit-container.jsx'; import { fetchFeatureToggles, toggleFeature } from '../../store/feature-actions'; import { fetchFeatureMetrics, fetchSeenApps } from '../../store/feature-metrics-actions'; class EditFeatureToggleWrapper extends React.Component { static propTypes () { return { featureToggleName: PropTypes.string.isRequired, features: PropTypes.array.isRequired, fetchFeatureToggles: PropTypes.array.isRequired, }; } componentWillMount () { if (this.props.features.length === 0) { this.props.fetchFeatureToggles(); } this.props.fetchSeenApps(); this.props.fetchFeatureMetrics(); setInterval(() => { this.props.fetchSeenApps(); this.props.fetchFeatureMetrics(); }, 5000); } render () { const { toggleFeature, features, featureToggleName, metrics = {}, } = this.props; const { lastHour = { yes: 0, no: 0, isFallback: true }, lastMinute = { yes: 0, no: 0, isFallback: true }, seenApps = [], } = metrics; const lastHourPercent = 1 * percentLib.calc(lastHour.yes, lastHour.yes + lastHour.no, 0); const lastMinutePercent = 1 * percentLib.calc(lastMinute.yes, lastMinute.yes + lastMinute.no, 0); const featureToggle = features.find(toggle => toggle.name === featureToggleName); if (!featureToggle) { if (features.length === 0 ) { return Loading; } return Could not find {this.props.featureToggleName}; } return (
Last minute: Yes {lastMinute.yes}, No: {lastMinute.no}
Last hour: Yes {lastHour.yes}, No: {lastHour.no}
add instances count?
add history