diff --git a/client/coral-admin/src/routes/Moderation/components/Comment.js b/client/coral-admin/src/routes/Moderation/components/Comment.js
index 57d1ea7fb..f72b0ef12 100644
--- a/client/coral-admin/src/routes/Moderation/components/Comment.js
+++ b/client/coral-admin/src/routes/Moderation/components/Comment.js
@@ -226,8 +226,12 @@ Comment.propTypes = {
title: PropTypes.string,
url: PropTypes.string,
id: PropTypes.string
- })
- })
+ }),
+ }),
+ data: PropTypes.object.isRequired,
+ root: PropTypes.object.isRequired,
+ actions: PropTypes.array.isRequired,
+ selected: PropTypes.bool,
};
export default Comment;
diff --git a/client/coral-admin/src/routes/Moderation/components/Moderation.js b/client/coral-admin/src/routes/Moderation/components/Moderation.js
index ceb46c298..66af6c587 100644
--- a/client/coral-admin/src/routes/Moderation/components/Moderation.js
+++ b/client/coral-admin/src/routes/Moderation/components/Moderation.js
@@ -1,4 +1,5 @@
import React, {Component} from 'react';
+import PropTypes from 'prop-types';
import key from 'keymaster';
import ModerationQueue from './ModerationQueue';
@@ -8,7 +9,7 @@ import ModerationKeysModal from '../../../components/ModerationKeysModal';
import StorySearch from '../containers/StorySearch';
import Slot from 'coral-framework/components/Slot';
-export default class Moderation extends Component {
+class Moderation extends Component {
constructor(props) {
super(props);
const comments = this.getComments(props);
@@ -259,3 +260,30 @@ export default class Moderation extends Component {
);
}
}
+
+Moderation.propTypes = {
+ viewUserDetail: PropTypes.func.isRequired,
+ hideUserDetail: PropTypes.func.isRequired,
+ singlView: PropTypes.func.isRequired,
+ toggleModal: PropTypes.func.isRequired,
+ toggleStorySearch: PropTypes.func.isRequired,
+ getModPath: PropTypes.func.isRequired,
+ storySearchChange: PropTypes.func.isRequired,
+ moderation: PropTypes.object.isRequired,
+ auth: PropTypes.object.isRequired,
+ settings: PropTypes.object.isRequired,
+ queueConfig: PropTypes.object.isRequired,
+ handleCommentChange: PropTypes.func.isRequired,
+ setSortOrder: PropTypes.func.isRequired,
+ showBanUserDialog: PropTypes.func.isRequired,
+ showSuspendUserDialog: PropTypes.func.isRequired,
+ rejectComment: PropTypes.func.isRequired,
+ acceptComment: PropTypes.func.isRequired,
+ loadMore: PropTypes.func.isRequired,
+ singleView: PropTypes.bool,
+ activeTab: PropTypes.string.isRequired,
+ data: PropTypes.object.isRequired,
+ root: PropTypes.object.isRequired,
+};
+
+export default Moderation;
diff --git a/client/coral-admin/src/routes/Moderation/components/ModerationHeader.js b/client/coral-admin/src/routes/Moderation/components/ModerationHeader.js
index a0ed36a62..0fd47ebf6 100644
--- a/client/coral-admin/src/routes/Moderation/components/ModerationHeader.js
+++ b/client/coral-admin/src/routes/Moderation/components/ModerationHeader.js
@@ -30,7 +30,8 @@ ModerationHeader.propTypes = {
id: PropTypes.string
}),
openSearch: PropTypes.func.isRequired,
- closeSearch: PropTypes.func.isRequired
+ closeSearch: PropTypes.func.isRequired,
+ searchVisible: PropTypes.bool,
};
export default ModerationHeader;
diff --git a/client/coral-admin/src/routes/Moderation/components/ModerationLayout.js b/client/coral-admin/src/routes/Moderation/components/ModerationLayout.js
index 02a798900..4b921b515 100644
--- a/client/coral-admin/src/routes/Moderation/components/ModerationLayout.js
+++ b/client/coral-admin/src/routes/Moderation/components/ModerationLayout.js
@@ -1,4 +1,5 @@
import React from 'react';
+import PropTypes from 'prop-types';
const ModerationLayout = (props) => (
@@ -6,4 +7,8 @@ const ModerationLayout = (props) => (
);
+ModerationLayout.propTypes = {
+ children: PropTypes.node,
+};
+
export default ModerationLayout;
diff --git a/client/coral-admin/src/routes/Moderation/components/ModerationMenu.js b/client/coral-admin/src/routes/Moderation/components/ModerationMenu.js
index 74c3e2327..81293d06b 100644
--- a/client/coral-admin/src/routes/Moderation/components/ModerationMenu.js
+++ b/client/coral-admin/src/routes/Moderation/components/ModerationMenu.js
@@ -49,7 +49,11 @@ ModerationMenu.propTypes = {
items: PropTypes.array.isRequired,
asset: PropTypes.shape({
id: PropTypes.string
- })
+ }),
+ selectSort: PropTypes.func.isRequired,
+ sort: PropTypes.string.isRequired,
+ getModPath: PropTypes.func.isRequired,
+ activeTab: PropTypes.string.isRequired,
};
export default ModerationMenu;
diff --git a/client/coral-admin/src/routes/Moderation/components/ModerationQueue.js b/client/coral-admin/src/routes/Moderation/components/ModerationQueue.js
index efa281ecd..517892a77 100644
--- a/client/coral-admin/src/routes/Moderation/components/ModerationQueue.js
+++ b/client/coral-admin/src/routes/Moderation/components/ModerationQueue.js
@@ -47,18 +47,6 @@ function invalidateCursor(invalidated, state, props) {
class ModerationQueue extends React.Component {
isLoadingMore = false;
- static propTypes = {
- viewUserDetail: PropTypes.func.isRequired,
- bannedWords: PropTypes.arrayOf(PropTypes.string).isRequired,
- suspectWords: PropTypes.arrayOf(PropTypes.string).isRequired,
- currentAsset: PropTypes.object,
- showBanUserDialog: PropTypes.func.isRequired,
- showSuspendUserDialog: PropTypes.func.isRequired,
- rejectComment: PropTypes.func.isRequired,
- acceptComment: PropTypes.func.isRequired,
- comments: PropTypes.array.isRequired
- }
-
constructor(props) {
super(props);
this.state = {
@@ -233,4 +221,24 @@ class ModerationQueue extends React.Component {
}
}
+ModerationQueue.propTypes = {
+ viewUserDetail: PropTypes.func.isRequired,
+ bannedWords: PropTypes.arrayOf(PropTypes.string).isRequired,
+ suspectWords: PropTypes.arrayOf(PropTypes.string).isRequired,
+ currentAsset: PropTypes.object,
+ showBanUserDialog: PropTypes.func.isRequired,
+ showSuspendUserDialog: PropTypes.func.isRequired,
+ rejectComment: PropTypes.func.isRequired,
+ acceptComment: PropTypes.func.isRequired,
+ comments: PropTypes.array.isRequired,
+ commentCount: PropTypes.number.isRequired,
+ loadMore: PropTypes.func.isRequired,
+ selectedCommentId: PropTypes.string,
+ singleView: PropTypes.bool,
+ activeTab: PropTypes.string.isRequired,
+ data: PropTypes.object.isRequired,
+ root: PropTypes.object.isRequired,
+ currentUserId: PropTypes.string.isRequired,
+};
+
export default ModerationQueue;
diff --git a/client/coral-admin/src/routes/Moderation/components/NotFoundAsset.js b/client/coral-admin/src/routes/Moderation/components/NotFoundAsset.js
index 4f6775f0a..820bff81c 100644
--- a/client/coral-admin/src/routes/Moderation/components/NotFoundAsset.js
+++ b/client/coral-admin/src/routes/Moderation/components/NotFoundAsset.js
@@ -1,6 +1,7 @@
import React from 'react';
import {Link} from 'react-router';
import styles from './NotFoundAsset.css';
+import PropTypes from 'prop-types';
const NotFound = (props) => (
@@ -11,4 +12,8 @@ const NotFound = (props) => (
);
+NotFound.propTypes = {
+ assetId: PropTypes.string.isRequired,
+};
+
export default NotFound;
diff --git a/client/coral-admin/src/routes/Moderation/components/Story.js b/client/coral-admin/src/routes/Moderation/components/Story.js
index 364afce7f..6720124c7 100644
--- a/client/coral-admin/src/routes/Moderation/components/Story.js
+++ b/client/coral-admin/src/routes/Moderation/components/Story.js
@@ -25,7 +25,8 @@ Story.propTypes = {
author: PropTypes.string.isRequired,
title: PropTypes.string.isRequired,
createdAt: PropTypes.string.isRequired,
- open: PropTypes.bool.isRequired
+ open: PropTypes.bool.isRequired,
+ goToStory: PropTypes.func.isRequired,
};
export default Story;
diff --git a/client/coral-admin/src/routes/Moderation/components/StorySearch.js b/client/coral-admin/src/routes/Moderation/components/StorySearch.js
index 7ac18f907..512ec542f 100644
--- a/client/coral-admin/src/routes/Moderation/components/StorySearch.js
+++ b/client/coral-admin/src/routes/Moderation/components/StorySearch.js
@@ -93,7 +93,13 @@ StorySearch.propTypes = {
clearAndCloseSearch: PropTypes.func.isRequired,
moderation: PropTypes.object.isRequired,
handleSearchChange: PropTypes.func.isRequired,
- assetId: PropTypes.string
+ assetId: PropTypes.string,
+ data: PropTypes.object.isRequired,
+ root: PropTypes.object.isRequired,
+ handleEsc: PropTypes.func.isRequired,
+ handleEnter: PropTypes.func.isRequired,
+ goToModerateAll: PropTypes.func.isRequired,
+ searchValue: PropTypes.string,
};
export default StorySearch;