From f4b783e802e46a13eebeb7f8b461f43075a959ae Mon Sep 17 00:00:00 2001 From: "J. Ryan Stinnett" Date: Wed, 1 May 2019 14:30:25 +0100 Subject: [PATCH] Fix lint errors in TimelinePanel --- .eslintignore.errorfiles | 1 - src/components/structures/TimelinePanel.js | 44 +++++++++++++--------- 2 files changed, 27 insertions(+), 18 deletions(-) diff --git a/.eslintignore.errorfiles b/.eslintignore.errorfiles index 2224ef67bc..ffe0ade5cc 100644 --- a/.eslintignore.errorfiles +++ b/.eslintignore.errorfiles @@ -10,7 +10,6 @@ src/components/structures/RoomStatusBar.js src/components/structures/RoomView.js src/components/structures/ScrollPanel.js src/components/structures/SearchBox.js -src/components/structures/TimelinePanel.js src/components/structures/UploadBar.js src/components/views/avatars/BaseAvatar.js src/components/views/avatars/MemberAvatar.js diff --git a/src/components/structures/TimelinePanel.js b/src/components/structures/TimelinePanel.js index aba7964a15..aa278f2349 100644 --- a/src/components/structures/TimelinePanel.js +++ b/src/components/structures/TimelinePanel.js @@ -44,11 +44,10 @@ const READ_RECEIPT_INTERVAL_MS = 500; const DEBUG = false; +let debuglog = function() {}; if (DEBUG) { // using bind means that we get to keep useful line numbers in the console - var debuglog = console.log.bind(console); -} else { - var debuglog = function() {}; + debuglog = console.log.bind(console); } /* @@ -56,7 +55,7 @@ if (DEBUG) { * * Also responsible for handling and sending read receipts. */ -var TimelinePanel = React.createClass({ +const TimelinePanel = React.createClass({ displayName: 'TimelinePanel', propTypes: { @@ -445,6 +444,7 @@ var TimelinePanel = React.createClass({ const updatedState = {events: events}; + let callRMUpdated; if (this.props.manageReadMarkers) { // when a new event arrives when the user is not watching the // window, but the window is in its auto-scroll mode, make sure the @@ -456,7 +456,7 @@ var TimelinePanel = React.createClass({ // const myUserId = MatrixClientPeg.get().credentials.userId; const sender = ev.sender ? ev.sender.userId : null; - var callRMUpdated = false; + callRMUpdated = false; if (sender != myUserId && !UserActivity.sharedInstance().userActiveRecently()) { updatedState.readMarkerVisible = true; } else if (lastEv && this.getReadMarkerPosition() === 0) { @@ -566,7 +566,7 @@ var TimelinePanel = React.createClass({ UserActivity.sharedInstance().timeWhileActiveRecently(this._readMarkerActivityTimer); try { await this._readMarkerActivityTimer.finished(); - } catch(e) { continue; /* aborted */ } + } catch (e) { continue; /* aborted */ } // outside of try/catch to not swallow errors this.updateReadMarker(); } @@ -578,7 +578,7 @@ var TimelinePanel = React.createClass({ UserActivity.sharedInstance().timeWhileActiveNow(this._readReceiptActivityTimer); try { await this._readReceiptActivityTimer.finished(); - } catch(e) { continue; /* aborted */ } + } catch (e) { continue; /* aborted */ } // outside of try/catch to not swallow errors this.sendReadReceipt(); } @@ -732,7 +732,8 @@ var TimelinePanel = React.createClass({ const events = this._timelineWindow.getEvents(); // first find where the current RM is - for (var i = 0; i < events.length; i++) { + let i; + for (i = 0; i < events.length; i++) { if (events[i].getId() == this.state.readMarkerEventId) { break; } @@ -744,7 +745,7 @@ var TimelinePanel = React.createClass({ // now think about advancing it const myUserId = MatrixClientPeg.get().credentials.userId; for (i++; i < events.length; i++) { - var ev = events[i]; + const ev = events[i]; if (!ev.sender || ev.sender.userId != myUserId) { break; } @@ -752,7 +753,7 @@ var TimelinePanel = React.createClass({ // i is now the first unread message which we didn't send ourselves. i--; - var ev = events[i]; + const ev = events[i]; this._setReadMarker(ev.getId(), ev.getTs()); }, @@ -882,7 +883,7 @@ var TimelinePanel = React.createClass({ return ret; }, - /** + /* * called by the parent component when PageUp/Down/etc is pressed. * * We pass it down to the scroll panel. @@ -975,11 +976,10 @@ var TimelinePanel = React.createClass({ }; const onError = (error) => { - this.setState({timelineLoading: false}); + this.setState({ timelineLoading: false }); console.error( `Error loading timeline panel at ${eventId}: ${error}`, ); - const msg = error.message ? error.message : JSON.stringify(error); const ErrorDialog = sdk.getComponent("dialogs.ErrorDialog"); let onFinished; @@ -997,9 +997,18 @@ var TimelinePanel = React.createClass({ }); }; } - const message = (error.errcode == 'M_FORBIDDEN') - ? _t("Tried to load a specific point in this room's timeline, but you do not have permission to view the message in question.") - : _t("Tried to load a specific point in this room's timeline, but was unable to find it."); + let message; + if (error.errcode == 'M_FORBIDDEN') { + message = _t( + "Tried to load a specific point in this room's timeline, but you " + + "do not have permission to view the message in question.", + ); + } else { + message = _t( + "Tried to load a specific point in this room's timeline, but was " + + "unable to find it.", + ); + } Modal.createTrackedDialog('Failed to load timeline position', '', ErrorDialog, { title: _t("Failed to load timeline position"), description: message, @@ -1104,12 +1113,13 @@ var TimelinePanel = React.createClass({ }, /** - * get the id of the event corresponding to our user's latest read-receipt. + * Get the id of the event corresponding to our user's latest read-receipt. * * @param {Boolean} ignoreSynthesized If true, return only receipts that * have been sent by the server, not * implicit ones generated by the JS * SDK. + * @return {String} the event ID */ _getCurrentReadReceipt: function(ignoreSynthesized) { const client = MatrixClientPeg.get();