summaryrefslogtreecommitdiffstats
path: root/frontend/components/ErrorMessage.js
diff options
context:
space:
mode:
authorWes Bos <wesbos@gmail.com>2018-01-30 12:41:01 -0500
committerWes Bos <wesbos@gmail.com>2018-01-30 12:41:01 -0500
commitcd0b07b3adb36fb5ec098f9e511ab45d774fee7b (patch)
treea203e5010219ccea1acc6bbd2c0a4bcfa0a78615 /frontend/components/ErrorMessage.js
parent0a1648bf47490b312169c531aeb51ef4725e8d2e (diff)
Move to Prisma Backend
Diffstat (limited to 'frontend/components/ErrorMessage.js')
-rw-r--r--frontend/components/ErrorMessage.js32
1 files changed, 32 insertions, 0 deletions
diff --git a/frontend/components/ErrorMessage.js b/frontend/components/ErrorMessage.js
new file mode 100644
index 0000000..12de51d
--- /dev/null
+++ b/frontend/components/ErrorMessage.js
@@ -0,0 +1,32 @@
+import styled from 'styled-components';
+import React from 'react';
+
+import PropTypes from 'prop-types';
+
+const StyledError = styled.div`
+ background: pink;
+ border: 2px solid red;
+ padding: 20px;
+ display: flex;
+ p {
+ margin: 0;
+ flex: 1 0 auto;
+ }
+`;
+
+const DisplayError = props => {
+ if (!props.error || !props.error.message) return null;
+ return (
+ <StyledError>
+ <p>{props.error.message}</p>
+ <button onClick={props.onButtonClick}>&times;</button>
+ </StyledError>
+ );
+};
+
+DisplayError.propTypes = {
+ error: PropTypes.object.isRequired,
+ onButtonClick: PropTypes.func.isRequired,
+};
+
+export default DisplayError;