From bd23dc92bbb9d6e4157136e7b329a9ee68f2547d Mon Sep 17 00:00:00 2001
From: Kyle Doherty <kyle.l.doherty@gmail.com>
Date: Fri, 11 Sep 2015 11:54:57 -0700
Subject: [PATCH] code review - add some proptypes cause types are neat.

---
 .../app/home/components/AccordianItem.react.js | 13 +++++++++----
 .../app/home/components/Activity.react.js      | 18 +++++++++++-------
 .../app/home/components/ActivityItem.react.js  |  9 +++++++--
 .../app/home/components/ActivityStory.react.js |  6 +++++-
 .../app/home/components/HeaderTabs.react.js    |  4 ++++
 5 files changed, 36 insertions(+), 14 deletions(-)

diff --git a/resources/frontend_client/app/home/components/AccordianItem.react.js b/resources/frontend_client/app/home/components/AccordianItem.react.js
index 702306a2b63..9731b82b97d 100644
--- a/resources/frontend_client/app/home/components/AccordianItem.react.js
+++ b/resources/frontend_client/app/home/components/AccordianItem.react.js
@@ -4,7 +4,6 @@ import React, { Component, PropTypes } from "react";
 
 import Icon from "metabase/components/Icon.react";
 
-
 export default class AccordianItem extends Component {
 
     render() {
@@ -28,10 +27,16 @@ export default class AccordianItem extends Component {
                             {children}
                         </div>
                     </div>
-                :
-                    null
-                }
+                : null }
             </div>
         );
     }
 }
+
+AccordianItem.propTypes = {
+    onClickFn: PropTypes.func.isRequired,
+    itemId: PropTypes.number.isRequired,
+    isOpen: PropTypes.bool.isRequired,
+    title: PropTypes.string.isRequired,
+    children: PropTypes.element.isRequired
+}
diff --git a/resources/frontend_client/app/home/components/Activity.react.js b/resources/frontend_client/app/home/components/Activity.react.js
index 9626cfecd8d..f677cbd35a8 100644
--- a/resources/frontend_client/app/home/components/Activity.react.js
+++ b/resources/frontend_client/app/home/components/Activity.react.js
@@ -1,16 +1,16 @@
-"use strict";
+'use strict';
 
-import React, { Component, PropTypes } from "react";
-import _ from "underscore";
-import cx from "classnames";
+import React, { Component, PropTypes } from 'react';
+import _ from 'underscore';
+import cx from 'classnames';
 
-import LoadingAndErrorWrapper from "metabase/components/LoadingAndErrorWrapper.react";
+import LoadingAndErrorWrapper from 'metabase/components/LoadingAndErrorWrapper.react';
 import ActivityItem from './ActivityItem.react';
 import ActivityStory from './ActivityStory.react';
 
-import { fetchActivity } from "../actions";
+import { fetchActivity } from '../actions';
 
-import Urls from "metabase/lib/urls";
+import Urls from 'metabase/lib/urls';
 
 
 export default class Activity extends Component {
@@ -187,3 +187,7 @@ export default class Activity extends Component {
         );
     }
 }
+
+Activity.propTypes = {
+    user: PropTypes.object.isRequired,
+}
diff --git a/resources/frontend_client/app/home/components/ActivityItem.react.js b/resources/frontend_client/app/home/components/ActivityItem.react.js
index 9e5833d950c..94cd9d00186 100644
--- a/resources/frontend_client/app/home/components/ActivityItem.react.js
+++ b/resources/frontend_client/app/home/components/ActivityItem.react.js
@@ -1,6 +1,6 @@
 'use strict';
 
-import React, { Component } from 'react';
+import React, { Component, PropTypes } from 'react';
 import Icon from 'metabase/components/Icon.react';
 import IconBorder from 'metabase/components/IconBorder.react';
 import UserAvatar from 'metabase/components/UserAvatar.react';
@@ -26,7 +26,6 @@ export default class ActivityItem extends Component {
                         <span className="text-dark">{description.userName}</span>
 
                         &nbsp;{description.subject}&nbsp;
-
                         { description.subjectRefName && description.subjectRefLink ?
                             <a className="link text-dark" href={description.subjectRefLink}>{description.subjectRefName}</a>
                         : null }
@@ -43,3 +42,9 @@ export default class ActivityItem extends Component {
         )
     }
 }
+
+ActivityItem.propTypes = {
+    item: PropTypes.object.isRequired,
+    description: PropTypes.object.isRequired,
+    userColors: PropTypes.string
+}
diff --git a/resources/frontend_client/app/home/components/ActivityStory.react.js b/resources/frontend_client/app/home/components/ActivityStory.react.js
index dba204bba89..52f6a185947 100644
--- a/resources/frontend_client/app/home/components/ActivityStory.react.js
+++ b/resources/frontend_client/app/home/components/ActivityStory.react.js
@@ -1,6 +1,6 @@
 'use strict';
 
-import React, { Component } from 'react';
+import React, { Component, PropTypes } from 'react';
 
 export default class ActivityStory extends Component {
 
@@ -33,3 +33,7 @@ export default class ActivityStory extends Component {
         )
     }
 }
+
+ActivityStory.propTypes = {
+    story: PropTypes.object.isRequired
+}
diff --git a/resources/frontend_client/app/home/components/HeaderTabs.react.js b/resources/frontend_client/app/home/components/HeaderTabs.react.js
index ee3c2b90f8c..0a6c445847b 100644
--- a/resources/frontend_client/app/home/components/HeaderTabs.react.js
+++ b/resources/frontend_client/app/home/components/HeaderTabs.react.js
@@ -49,3 +49,7 @@ export default class HeaderTabs extends Component {
         );
     }
 }
+
+HeaderTabs.propTypes = {
+    selectedTab: PropTypes.string.isRequired
+}
-- 
GitLab