diff --git a/src/components/WithIon.js b/src/components/WithIon.js index 0e1ec3bbe29f..a86408dd9ee2 100644 --- a/src/components/WithIon.js +++ b/src/components/WithIon.js @@ -33,12 +33,6 @@ export default function (mapIonToState) { // this.props. These are stored differently because anytime the props change, the component has to be // reconnected to Ion with the new props. this.activeConnectionIDsWithPropsData = {}; - - // Initialize the state with each of the property names from the mapping - this.state = _.reduce(_.keys(mapIonToState), (finalResult, propertyName) => ({ - ...finalResult, - [propertyName]: null, - }), {}); } componentDidMount() { @@ -146,7 +140,6 @@ export default function (mapIonToState) { {...this.props} // eslint-disable-next-line react/jsx-props-no-spreading {...this.state} - ref={el => this.wrappedComponent = el} /> ); } diff --git a/src/page/HomePage/HeaderView.js b/src/page/HomePage/HeaderView.js index 9d6b93bf02a4..c18e8c3a4593 100644 --- a/src/page/HomePage/HeaderView.js +++ b/src/page/HomePage/HeaderView.js @@ -22,7 +22,7 @@ const propTypes = { }; const defaultProps = { - reportName: '', + reportName: null, }; const HeaderView = props => ( diff --git a/src/page/HomePage/MainView.js b/src/page/HomePage/MainView.js index c8007386692d..bc47603b5d0b 100644 --- a/src/page/HomePage/MainView.js +++ b/src/page/HomePage/MainView.js @@ -16,18 +16,18 @@ const propTypes = { /* Ion Props */ // List of reports to display - reports: PropTypes.arrayOf(PropTypes.shape({ + reports: PropTypes.objectOf(PropTypes.shape({ reportID: PropTypes.number, })), }; const defaultProps = { - reports: [], + reports: {}, }; class MainView extends React.Component { render() { - if (this.props.reports.length === 0) { + if (!_.size(this.props.reports)) { return null; } diff --git a/src/page/HomePage/Report/ReportHistoryView.js b/src/page/HomePage/Report/ReportHistoryView.js index 3009d8598655..3df7d0a4fe0d 100644 --- a/src/page/HomePage/Report/ReportHistoryView.js +++ b/src/page/HomePage/Report/ReportHistoryView.js @@ -20,14 +20,14 @@ const propTypes = { /* Ion Props */ // Array of report history items for this report - reportHistory: PropTypes.arrayOf(PropTypes.shape(ReportHistoryPropsTypes)), + reportHistory: PropTypes.PropTypes.objectOf(PropTypes.shape(ReportHistoryPropsTypes)), // Current user authToken authToken: PropTypes.string, }; const defaultProps = { - reportHistory: [], + reportHistory: {}, authToken: '', }; @@ -85,7 +85,7 @@ class ReportHistoryView extends React.Component { * action when scrolled */ recordMaxAction() { - const reportHistory = lodashGet(this.props, 'reportHistory', []); + const reportHistory = lodashGet(this.props, 'reportHistory', {}); const maxVisibleSequenceNumber = _.chain(reportHistory) .pluck('sequenceNumber') .max() @@ -127,7 +127,7 @@ class ReportHistoryView extends React.Component { } render() { - if (this.props.reportHistory.length === 0) { + if (!_.size(this.props.reportHistory)) { return ( Be the first person to comment! diff --git a/src/page/HomePage/SidebarView.js b/src/page/HomePage/SidebarView.js index dd68c26d42a8..ad7a25b7b1c3 100644 --- a/src/page/HomePage/SidebarView.js +++ b/src/page/HomePage/SidebarView.js @@ -36,10 +36,10 @@ const propTypes = { avatarURL: PropTypes.string, // List of reports - reports: PropTypes.arrayOf(PropTypes.shape({ - hasUnread: PropTypes.bool, - reportName: PropTypes.string, + reports: PropTypes.objectOf(PropTypes.shape({ reportID: PropTypes.number, + reportName: PropTypes.string, + hasUnread: PropTypes.bool, })), // Is this person offline? @@ -47,9 +47,9 @@ const propTypes = { }; const defaultProps = { - userDisplayName: '', + userDisplayName: null, avatarURL: '', - reports: [], + reports: {}, isOffline: false, }; diff --git a/src/page/SignInPage.js b/src/page/SignInPage.js index 52714cfc9ca2..aafad9100945 100644 --- a/src/page/SignInPage.js +++ b/src/page/SignInPage.js @@ -28,7 +28,7 @@ const propTypes = { }; const defaultProps = { - error: '', + error: null, }; class App extends Component {