diff --git a/src/components/table.js b/src/components/table.js
index 9d593fe..1c1910d 100644
--- a/src/components/table.js
+++ b/src/components/table.js
@@ -85,10 +85,10 @@ class CustomTable extends Component {
var labelContent = data[labelKey];
if (child.props.labelModifier) {
- labelContent = child.props.labelModifier(labelContent);
+ labelContent = child.props.labelModifier(labelContent, data);
}
- cell.push( );
+ cell.push( );
}
if (child.props.dataIndex) {
diff --git a/src/containers/simulators.js b/src/containers/simulators.js
index 48c9b2b..c8e5140 100644
--- a/src/containers/simulators.js
+++ b/src/containers/simulators.js
@@ -165,27 +165,21 @@ class Simulators extends Component {
}
}
- labelSimulatorState = state => {
- if (state === 'unknown' || state === 'shutdown') {
- return
-
+ isSimulatorOutdated(simulator) {
+ const fiveMinutes = 5 * 60 * 1000;
- {state}
- ;
- }
-
- return
-
-
- {state}
- ;
+ return Date.now() - new Date(simulator.stateUpdatedAt) > fiveMinutes;
}
isSimulatorOnline(state) {
return state !== 'shutdown' && state !== 'unknown';
}
- stateLabelStyle = state => {
+ stateLabelStyle = (state, simulator) => {
+ if (this.isSimulatorOutdated(simulator)) {
+ return 'default';
+ }
+
if (this.isSimulatorOnline(state)) {
return 'success';
}
@@ -193,7 +187,11 @@ class Simulators extends Component {
return 'danger';
}
- stateLabelModifier = state => {
+ stateLabelModifier = (state, simulator) => {
+ if (this.isSimulatorOutdated(simulator)) {
+ return 'unknown';
+ }
+
if (this.isSimulatorOnline(state)) {
return 'online';
}