summaryrefslogtreecommitdiff
path: root/client/common/gate.component.js
diff options
context:
space:
mode:
authoradamhrv <adam@ahprojects.com>2018-12-16 01:03:14 +0100
committeradamhrv <adam@ahprojects.com>2018-12-16 01:03:14 +0100
commit10f467b64e3be528ac246d5cf664d675aca3e7f3 (patch)
tree02face1862f185796c3ddd08a274940626e31ff9 /client/common/gate.component.js
parenta52dc6f8edc4e5d00e7c05e34c6c6fe6252ec2bd (diff)
parentf91c6d8e870bd3b2c69a130e4b1ed8f6be250b92 (diff)
Merge branch 'master' of github.com:adamhrv/megapixels_dev
Diffstat (limited to 'client/common/gate.component.js')
-rw-r--r--client/common/gate.component.js21
1 files changed, 21 insertions, 0 deletions
diff --git a/client/common/gate.component.js b/client/common/gate.component.js
new file mode 100644
index 00000000..9bf9287b
--- /dev/null
+++ b/client/common/gate.component.js
@@ -0,0 +1,21 @@
+import React from 'react'
+import { connect } from 'react-redux'
+
+function Gate(props) {
+ const { app, tag, View } = props
+ const data = app[tag]
+ if (!data) return null
+ if (data === 'loading') {
+ return <div className='tableObject loading'>{tag}{': Loading'}</div>
+ }
+ if (data.err) {
+ return <div className='tableObject error'>{tag}{' Error: '}{data.err}</div>
+ }
+ return <View data={data} {...props} />
+}
+
+const mapStateToProps = state => ({
+ app: state.metadata
+})
+
+export default connect(mapStateToProps)(Gate)