From 8e4d8ccca7a18363ea16fc0a4e985dc00b81ebf9 Mon Sep 17 00:00:00 2001 From: David Baker Date: Wed, 9 Jan 2019 18:10:35 +0000 Subject: [PATCH 1/3] Add spaces back to async arrow functions As per https://github.com/matrix-org/matrix-js-sdk/pull/821 Requires https://github.com/matrix-org/matrix-js-sdk/pull/821 --- package.json | 4 ++-- .../views/dialogs/keybackup/NewRecoveryMethodDialog.js | 2 +- src/autocomplete/CommunityProvider.js | 2 +- src/components/structures/GroupView.js | 2 +- .../views/context_menus/GroupInviteTileContextMenu.js | 2 +- .../views/context_menus/StatusMessageContextMenu.js | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index 155d3d1b23..1b628067fc 100644 --- a/package.json +++ b/package.json @@ -47,7 +47,7 @@ "start:init": "babel src -d lib --source-maps --copy-files", "lint": "eslint src/", "lintall": "eslint src/ test/", - "lintwithexclusions": "eslint --max-warnings 16 --ignore-path .eslintignore.errorfiles src test", + "lintwithexclusions": "eslint --max-warnings 14 --ignore-path .eslintignore.errorfiles src test", "clean": "rimraf lib", "prepublish": "npm run clean && npm run build && git rev-parse HEAD > git-revision.txt", "test": "karma start --single-run=true --browsers ChromeHeadless", @@ -118,7 +118,7 @@ "babel-preset-react": "^6.24.1", "chokidar": "^1.6.1", "concurrently": "^4.0.1", - "eslint": "^5.8.0", + "eslint": "^5.12.0", "eslint-config-google": "^0.7.1", "eslint-plugin-babel": "^5.2.1", "eslint-plugin-flowtype": "^2.30.0", diff --git a/src/async-components/views/dialogs/keybackup/NewRecoveryMethodDialog.js b/src/async-components/views/dialogs/keybackup/NewRecoveryMethodDialog.js index 6db6fe5c3e..c97ce58c07 100644 --- a/src/async-components/views/dialogs/keybackup/NewRecoveryMethodDialog.js +++ b/src/async-components/views/dialogs/keybackup/NewRecoveryMethodDialog.js @@ -32,7 +32,7 @@ export default class NewRecoveryMethodDialog extends React.PureComponent { dis.dispatch({ action: 'view_user_settings' }); } - onSetupClick = async() => { + onSetupClick = async () => { // TODO: Should change to a restore key backup flow that checks the // recovery passphrase while at the same time also cross-signing the // device as well in a single flow. Since we don't have that yet, we'll diff --git a/src/autocomplete/CommunityProvider.js b/src/autocomplete/CommunityProvider.js index b85c09b320..d164fab46a 100644 --- a/src/autocomplete/CommunityProvider.js +++ b/src/autocomplete/CommunityProvider.js @@ -61,7 +61,7 @@ export default class CommunityProvider extends AutocompleteProvider { if (command) { const joinedGroups = cli.getGroups().filter(({myMembership}) => myMembership === 'join'); - const groups = (await Promise.all(joinedGroups.map(async({groupId}) => { + const groups = (await Promise.all(joinedGroups.map(async ({groupId}) => { try { return FlairStore.getGroupProfileCached(cli, groupId); } catch (e) { // if FlairStore failed, fall back to just groupId diff --git a/src/components/structures/GroupView.js b/src/components/structures/GroupView.js index 937e07d31e..834fcd2340 100644 --- a/src/components/structures/GroupView.js +++ b/src/components/structures/GroupView.js @@ -781,7 +781,7 @@ export default React.createClass({ ), button: _t("Leave"), danger: this.state.isUserPrivileged, - onFinished: async(confirmed) => { + onFinished: async (confirmed) => { if (!confirmed) return; this.setState({membershipBusy: true}); diff --git a/src/components/views/context_menus/GroupInviteTileContextMenu.js b/src/components/views/context_menus/GroupInviteTileContextMenu.js index 2dd611843a..e30acca16d 100644 --- a/src/components/views/context_menus/GroupInviteTileContextMenu.js +++ b/src/components/views/context_menus/GroupInviteTileContextMenu.js @@ -48,7 +48,7 @@ export default class GroupInviteTileContextMenu extends React.Component { Modal.createTrackedDialog('Reject community invite', '', QuestionDialog, { title: _t('Reject invitation'), description: _t('Are you sure you want to reject the invitation?'), - onFinished: async(shouldLeave) => { + onFinished: async (shouldLeave) => { if (!shouldLeave) return; // FIXME: controller shouldn't be loading a view :( diff --git a/src/components/views/context_menus/StatusMessageContextMenu.js b/src/components/views/context_menus/StatusMessageContextMenu.js index f07220db44..d062fc2a3e 100644 --- a/src/components/views/context_menus/StatusMessageContextMenu.js +++ b/src/components/views/context_menus/StatusMessageContextMenu.js @@ -35,7 +35,7 @@ export default class StatusMessageContextMenu extends React.Component { }; } - _onClearClick = async(e) => { + _onClearClick = async (e) => { await MatrixClientPeg.get()._unstable_setStatusMessage(""); this.setState({message: ""}); }; From f269b5fbbcb08cde6232d89821ef2767fcdf7aa4 Mon Sep 17 00:00:00 2001 From: David Baker Date: Wed, 9 Jan 2019 19:14:30 +0000 Subject: [PATCH 2/3] Fix spaceless async in ignored files too --- .eslintignore.errorfiles | 1 - package.json | 2 +- src/components/structures/UserSettings.js | 2 +- src/components/views/rooms/MemberInfo.js | 2 +- src/components/views/rooms/MessageComposerInput.js | 2 +- 5 files changed, 4 insertions(+), 5 deletions(-) diff --git a/.eslintignore.errorfiles b/.eslintignore.errorfiles index 0b4266c0b5..1a12432c87 100644 --- a/.eslintignore.errorfiles +++ b/.eslintignore.errorfiles @@ -18,7 +18,6 @@ src/components/structures/ScrollPanel.js src/components/structures/SearchBox.js src/components/structures/TimelinePanel.js src/components/structures/UploadBar.js -src/components/structures/UserSettings.js src/components/views/avatars/BaseAvatar.js src/components/views/avatars/MemberAvatar.js src/components/views/create_room/RoomAlias.js diff --git a/package.json b/package.json index 1b628067fc..8804c0911b 100644 --- a/package.json +++ b/package.json @@ -47,7 +47,7 @@ "start:init": "babel src -d lib --source-maps --copy-files", "lint": "eslint src/", "lintall": "eslint src/ test/", - "lintwithexclusions": "eslint --max-warnings 14 --ignore-path .eslintignore.errorfiles src test", + "lintwithexclusions": "eslint --max-warnings 19 --ignore-path .eslintignore.errorfiles src test", "clean": "rimraf lib", "prepublish": "npm run clean && npm run build && git rev-parse HEAD > git-revision.txt", "test": "karma start --single-run=true --browsers ChromeHeadless", diff --git a/src/components/structures/UserSettings.js b/src/components/structures/UserSettings.js index bb31510cf6..02b94b408d 100644 --- a/src/components/structures/UserSettings.js +++ b/src/components/structures/UserSettings.js @@ -835,7 +835,7 @@ module.exports = React.createClass({ SettingsStore.getLabsFeatures().forEach((featureId) => { // TODO: this ought to be a separate component so that we don't need // to rebind the onChange each time we render - const onChange = async(e) => { + const onChange = async (e) => { const checked = e.target.checked; if (featureId === "feature_lazyloading") { const confirmed = await this._onLazyLoadChanging(checked); diff --git a/src/components/views/rooms/MemberInfo.js b/src/components/views/rooms/MemberInfo.js index 226adb910f..2b50ff5e48 100644 --- a/src/components/views/rooms/MemberInfo.js +++ b/src/components/views/rooms/MemberInfo.js @@ -714,7 +714,7 @@ module.exports = withMatrixClient(React.createClass({ if (!member || !member.membership || member.membership === 'leave') { const roomId = member && member.roomId ? member.roomId : this.props.roomId; - const onInviteUserButton = async() => { + const onInviteUserButton = async () => { try { // We use a MultiInviter to re-use the invite logic, even though // we're only inviting one user. diff --git a/src/components/views/rooms/MessageComposerInput.js b/src/components/views/rooms/MessageComposerInput.js index 4e7b4d3bbf..f39d7aad6e 100644 --- a/src/components/views/rooms/MessageComposerInput.js +++ b/src/components/views/rooms/MessageComposerInput.js @@ -1274,7 +1274,7 @@ export default class MessageComposerInput extends React.Component { } }; - selectHistory = async(up) => { + selectHistory = async (up) => { const delta = up ? -1 : 1; // True if we are not currently selecting history, but composing a message From b9719abbc2da9813bd3ece940a4d1ddd7beaf4a9 Mon Sep 17 00:00:00 2001 From: David Baker Date: Wed, 9 Jan 2019 19:36:34 +0000 Subject: [PATCH 3/3] Oops, missed some asyncs --- src/components/views/rooms/MessageComposerInput.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/components/views/rooms/MessageComposerInput.js b/src/components/views/rooms/MessageComposerInput.js index f39d7aad6e..80f90d37b4 100644 --- a/src/components/views/rooms/MessageComposerInput.js +++ b/src/components/views/rooms/MessageComposerInput.js @@ -1322,7 +1322,7 @@ export default class MessageComposerInput extends React.Component { return true; }; - onTab = async(e) => { + onTab = async (e) => { this.setState({ someCompletions: null, }); @@ -1344,7 +1344,7 @@ export default class MessageComposerInput extends React.Component { up ? this.autocomplete.onUpArrow() : this.autocomplete.onDownArrow(); }; - onEscape = async(e) => { + onEscape = async (e) => { e.preventDefault(); if (this.autocomplete) { this.autocomplete.onEscape(e); @@ -1363,7 +1363,7 @@ export default class MessageComposerInput extends React.Component { /* If passed null, restores the original editor content from state.originalEditorState. * If passed a non-null displayedCompletion, modifies state.originalEditorState to compute new state.editorState. */ - setDisplayedCompletion = async(displayedCompletion: ?Completion): boolean => { + setDisplayedCompletion = async (displayedCompletion: ?Completion): boolean => { const activeEditorState = this.state.originalEditorState || this.state.editorState; if (displayedCompletion == null) {