From dde583c2fa9b990e1d30f7292f9cf28d9310e570 Mon Sep 17 00:00:00 2001
From: Noah Loomans <noahloomans@gmail.com>
Date: Sun, 28 Jan 2018 19:59:09 +0100
Subject: Move Schedule and Loading to seperate files

---
 src/client/react/components/container/View.js      | 21 ++-------------------
 .../react/components/presentational/Loading.js     |  5 +++++
 .../react/components/presentational/Schedule.js    | 22 ++++++++++++++++++++++
 3 files changed, 29 insertions(+), 19 deletions(-)
 create mode 100644 src/client/react/components/presentational/Loading.js
 create mode 100644 src/client/react/components/presentational/Schedule.js

(limited to 'src/client')

diff --git a/src/client/react/components/container/View.js b/src/client/react/components/container/View.js
index 7ac5d3e..4f16100 100644
--- a/src/client/react/components/container/View.js
+++ b/src/client/react/components/container/View.js
@@ -1,30 +1,13 @@
 import React from 'react';
 import PropTypes from 'prop-types';
-import createDOMPurify from 'dompurify';
 import { connect } from 'react-redux';
 import { withRouter } from 'react-router-dom';
 
 import { fetchSchedule } from '../../actions/view';
 import extractSchedule from '../../lib/extractSchedule';
 
-const Loading = () => <div>Loading...</div>;
-
-const Schedule = ({ htmlStr }) => {
-  const DOMPurify = createDOMPurify(window);
-
-  const cleanHTML = DOMPurify.sanitize(htmlStr, {
-    ADD_ATTR: ['rules'],
-  });
-
-  return (
-    // eslint-disable-next-line react/no-danger
-    <div dangerouslySetInnerHTML={{ __html: cleanHTML }} />
-  );
-};
-
-Schedule.propTypes = {
-  htmlStr: PropTypes.string.isRequired,
-};
+import Schedule from '../presentational/Schedule';
+import Loading from '../presentational/Loading';
 
 const View = ({
   schedules,
diff --git a/src/client/react/components/presentational/Loading.js b/src/client/react/components/presentational/Loading.js
new file mode 100644
index 0000000..84eaac7
--- /dev/null
+++ b/src/client/react/components/presentational/Loading.js
@@ -0,0 +1,5 @@
+import React from 'react';
+
+const Loading = () => <div>Loading...</div>;
+
+export default Loading;
diff --git a/src/client/react/components/presentational/Schedule.js b/src/client/react/components/presentational/Schedule.js
new file mode 100644
index 0000000..256c1b4
--- /dev/null
+++ b/src/client/react/components/presentational/Schedule.js
@@ -0,0 +1,22 @@
+import React from 'react';
+import PropTypes from 'prop-types';
+import createDOMPurify from 'dompurify';
+
+const Schedule = ({ htmlStr }) => {
+  const DOMPurify = createDOMPurify(window);
+
+  const cleanHTML = DOMPurify.sanitize(htmlStr, {
+    ADD_ATTR: ['rules'],
+  });
+
+  return (
+    // eslint-disable-next-line react/no-danger
+    <div dangerouslySetInnerHTML={{ __html: cleanHTML }} />
+  );
+};
+
+Schedule.propTypes = {
+  htmlStr: PropTypes.string.isRequired,
+};
+
+export default Schedule;
-- 
cgit v1.1