summaryrefslogtreecommitdiffstats
path: root/components/ErrorMessage.js
diff options
context:
space:
mode:
Diffstat (limited to 'components/ErrorMessage.js')
-rw-r--r--components/ErrorMessage.js32
1 files changed, 32 insertions, 0 deletions
diff --git a/components/ErrorMessage.js b/components/ErrorMessage.js
new file mode 100644
index 0000000..12de51d
--- /dev/null
+++ b/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;