From fe9eab51d140ee0e0343eb07982f0a7ce825398c Mon Sep 17 00:00:00 2001 From: Claire Date: Thu, 15 Dec 2022 15:43:16 +0100 Subject: Change dropdown menu to contain “Copy link to post” even for non-public posts (#21316) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes #21244 --- app/javascript/mastodon/components/status_action_bar.js | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'app/javascript/mastodon/components') diff --git a/app/javascript/mastodon/components/status_action_bar.js b/app/javascript/mastodon/components/status_action_bar.js index 2a1fedb93..40c86afdf 100644 --- a/app/javascript/mastodon/components/status_action_bar.js +++ b/app/javascript/mastodon/components/status_action_bar.js @@ -246,12 +246,13 @@ class StatusActionBar extends ImmutablePureComponent { menu.push({ text: intl.formatMessage(messages.open), action: this.handleOpen }); - if (publicStatus) { - if (isRemote) { - menu.push({ text: intl.formatMessage(messages.openOriginalPage), href: status.get('url') }); - } + if (publicStatus && isRemote) { + menu.push({ text: intl.formatMessage(messages.openOriginalPage), href: status.get('url') }); + } - menu.push({ text: intl.formatMessage(messages.copy), action: this.handleCopy }); + menu.push({ text: intl.formatMessage(messages.copy), action: this.handleCopy }); + + if (publicStatus) { menu.push({ text: intl.formatMessage(messages.embed), action: this.handleEmbed }); } -- cgit From 06b68490d1957d680adc0c0c4ed2c84641de2056 Mon Sep 17 00:00:00 2001 From: Nick Schonning Date: Sun, 18 Dec 2022 10:51:37 -0500 Subject: Enable eslint:recommended ruleset (#22433) * Enable ESLint recommended ruleset * Disable failing ESLint recommended rules * Remove rules shadowed by eslint:recommended --- .eslintrc.js | 16 ++- app/javascript/mastodon/actions/account_notes.js | 8 +- app/javascript/mastodon/actions/accounts.js | 144 ++++++++++----------- app/javascript/mastodon/actions/alerts.js | 6 +- app/javascript/mastodon/actions/blocks.js | 16 +-- app/javascript/mastodon/actions/bookmarks.js | 16 +-- app/javascript/mastodon/actions/columns.js | 6 +- app/javascript/mastodon/actions/compose.js | 88 ++++++------- app/javascript/mastodon/actions/custom_emojis.js | 8 +- app/javascript/mastodon/actions/domain_blocks.js | 32 ++--- app/javascript/mastodon/actions/emojis.js | 2 +- app/javascript/mastodon/actions/favourites.js | 16 +-- app/javascript/mastodon/actions/height_cache.js | 4 +- app/javascript/mastodon/actions/interactions.js | 80 ++++++------ app/javascript/mastodon/actions/markers.js | 10 +- app/javascript/mastodon/actions/modal.js | 4 +- app/javascript/mastodon/actions/mutes.js | 16 +-- app/javascript/mastodon/actions/notifications.js | 18 +-- app/javascript/mastodon/actions/pin_statuses.js | 8 +- app/javascript/mastodon/actions/search.js | 12 +- app/javascript/mastodon/actions/settings.js | 4 +- app/javascript/mastodon/actions/statuses.js | 48 +++---- app/javascript/mastodon/actions/store.js | 2 +- app/javascript/mastodon/actions/suggestions.js | 8 +- app/javascript/mastodon/actions/timelines.js | 18 +-- app/javascript/mastodon/common.js | 2 +- app/javascript/mastodon/compare_id.js | 2 +- .../mastodon/components/admin/Retention.js | 2 +- .../features/closed_registrations_modal/index.js | 2 +- .../mastodon/features/compose/util/counter.js | 2 +- .../hashtag_timeline/components/column_settings.js | 4 +- .../mastodon/features/list_timeline/index.js | 2 +- .../ui/components/disabled_account_banner.js | 2 +- .../mastodon/features/ui/components/link_footer.js | 2 +- .../features/ui/util/react_router_helpers.js | 2 +- app/javascript/mastodon/middleware/errors.js | 2 +- app/javascript/mastodon/middleware/loading_bar.js | 2 +- app/javascript/mastodon/middleware/sounds.js | 2 +- app/javascript/mastodon/reducers/accounts.js | 2 +- .../mastodon/reducers/accounts_counters.js | 2 +- app/javascript/mastodon/reducers/accounts_map.js | 2 +- app/javascript/mastodon/reducers/alerts.js | 2 +- app/javascript/mastodon/reducers/announcements.js | 2 +- app/javascript/mastodon/reducers/compose.js | 10 +- app/javascript/mastodon/reducers/contexts.js | 2 +- app/javascript/mastodon/reducers/conversations.js | 2 +- app/javascript/mastodon/reducers/custom_emojis.js | 2 +- app/javascript/mastodon/reducers/domain_lists.js | 2 +- app/javascript/mastodon/reducers/filters.js | 2 +- app/javascript/mastodon/reducers/height_cache.js | 2 +- app/javascript/mastodon/reducers/list_adder.js | 2 +- app/javascript/mastodon/reducers/list_editor.js | 2 +- app/javascript/mastodon/reducers/lists.js | 2 +- app/javascript/mastodon/reducers/markers.js | 2 +- .../mastodon/reducers/media_attachments.js | 2 +- app/javascript/mastodon/reducers/meta.js | 2 +- app/javascript/mastodon/reducers/missed_updates.js | 2 +- app/javascript/mastodon/reducers/modal.js | 2 +- app/javascript/mastodon/reducers/notifications.js | 2 +- .../mastodon/reducers/picture_in_picture.js | 2 +- .../mastodon/reducers/push_notifications.js | 2 +- app/javascript/mastodon/reducers/relationships.js | 2 +- app/javascript/mastodon/reducers/search.js | 2 +- app/javascript/mastodon/reducers/settings.js | 2 +- app/javascript/mastodon/reducers/status_lists.js | 2 +- app/javascript/mastodon/reducers/statuses.js | 2 +- app/javascript/mastodon/reducers/suggestions.js | 2 +- app/javascript/mastodon/reducers/tags.js | 2 +- app/javascript/mastodon/reducers/timelines.js | 2 +- app/javascript/mastodon/reducers/trends.js | 2 +- app/javascript/mastodon/reducers/user_lists.js | 2 +- app/javascript/mastodon/store/configureStore.js | 2 +- app/javascript/mastodon/uuid.js | 2 +- streaming/index.js | 2 +- 74 files changed, 350 insertions(+), 348 deletions(-) (limited to 'app/javascript/mastodon/components') diff --git a/.eslintrc.js b/.eslintrc.js index e4ada6fe0..03af2975b 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -1,6 +1,10 @@ module.exports = { root: true, + extends: [ + 'eslint:recommended', + ], + env: { browser: true, node: true, @@ -64,8 +68,8 @@ module.exports = { eqeqeq: 'error', indent: ['warn', 2], 'jsx-quotes': ['error', 'prefer-single'], + 'no-case-declarations': 'off', 'no-catch-shadow': 'error', - 'no-cond-assign': 'error', 'no-console': [ 'warn', { @@ -75,18 +79,16 @@ module.exports = { ], }, ], - 'no-fallthrough': 'error', - 'no-irregular-whitespace': 'error', - 'no-mixed-spaces-and-tabs': 'warn', + 'no-empty': 'off', 'no-nested-ternary': 'warn', + 'no-prototype-builtins': 'off', 'no-restricted-properties': [ 'error', { property: 'substring', message: 'Use .slice instead of .substring.' }, { property: 'substr', message: 'Use .slice instead of .substr.' }, ], + 'no-self-assign': 'off', 'no-trailing-spaces': 'warn', - 'no-undef': 'error', - 'no-unreachable': 'error', 'no-unused-expressions': 'error', 'no-unused-vars': [ 'error', @@ -96,6 +98,7 @@ module.exports = { ignoreRestSiblings: true, }, ], + 'no-useless-escape': 'off', 'object-curly-spacing': ['error', 'always'], 'padded-blocks': [ 'error', @@ -105,7 +108,6 @@ module.exports = { ], quotes: ['error', 'single'], semi: 'error', - strict: 'off', 'valid-typeof': 'error', 'react/jsx-boolean-value': 'error', diff --git a/app/javascript/mastodon/actions/account_notes.js b/app/javascript/mastodon/actions/account_notes.js index d17441000..72b943300 100644 --- a/app/javascript/mastodon/actions/account_notes.js +++ b/app/javascript/mastodon/actions/account_notes.js @@ -14,24 +14,24 @@ export function submitAccountNote(id, value) { dispatch(submitAccountNoteSuccess(response.data)); }).catch(error => dispatch(submitAccountNoteFail(error))); }; -}; +} export function submitAccountNoteRequest() { return { type: ACCOUNT_NOTE_SUBMIT_REQUEST, }; -}; +} export function submitAccountNoteSuccess(relationship) { return { type: ACCOUNT_NOTE_SUBMIT_SUCCESS, relationship, }; -}; +} export function submitAccountNoteFail(error) { return { type: ACCOUNT_NOTE_SUBMIT_FAIL, error, }; -}; +} diff --git a/app/javascript/mastodon/actions/accounts.js b/app/javascript/mastodon/actions/accounts.js index f61f06e40..88407ae6c 100644 --- a/app/javascript/mastodon/actions/accounts.js +++ b/app/javascript/mastodon/actions/accounts.js @@ -91,7 +91,7 @@ export function fetchAccount(id) { dispatch(fetchAccountFail(id, error)); }); }; -}; +} export const lookupAccount = acct => (dispatch, getState) => { dispatch(lookupAccountRequest(acct)); @@ -126,13 +126,13 @@ export function fetchAccountRequest(id) { type: ACCOUNT_FETCH_REQUEST, id, }; -}; +} export function fetchAccountSuccess() { return { type: ACCOUNT_FETCH_SUCCESS, }; -}; +} export function fetchAccountFail(id, error) { return { @@ -141,7 +141,7 @@ export function fetchAccountFail(id, error) { error, skipAlert: true, }; -}; +} export function followAccount(id, options = { reblogs: true }) { return (dispatch, getState) => { @@ -156,7 +156,7 @@ export function followAccount(id, options = { reblogs: true }) { dispatch(followAccountFail(error, locked)); }); }; -}; +} export function unfollowAccount(id) { return (dispatch, getState) => { @@ -168,7 +168,7 @@ export function unfollowAccount(id) { dispatch(unfollowAccountFail(error)); }); }; -}; +} export function followAccountRequest(id, locked) { return { @@ -177,7 +177,7 @@ export function followAccountRequest(id, locked) { locked, skipLoading: true, }; -}; +} export function followAccountSuccess(relationship, alreadyFollowing) { return { @@ -186,7 +186,7 @@ export function followAccountSuccess(relationship, alreadyFollowing) { alreadyFollowing, skipLoading: true, }; -}; +} export function followAccountFail(error, locked) { return { @@ -195,7 +195,7 @@ export function followAccountFail(error, locked) { locked, skipLoading: true, }; -}; +} export function unfollowAccountRequest(id) { return { @@ -203,7 +203,7 @@ export function unfollowAccountRequest(id) { id, skipLoading: true, }; -}; +} export function unfollowAccountSuccess(relationship, statuses) { return { @@ -212,7 +212,7 @@ export function unfollowAccountSuccess(relationship, statuses) { statuses, skipLoading: true, }; -}; +} export function unfollowAccountFail(error) { return { @@ -220,7 +220,7 @@ export function unfollowAccountFail(error) { error, skipLoading: true, }; -}; +} export function blockAccount(id) { return (dispatch, getState) => { @@ -233,7 +233,7 @@ export function blockAccount(id) { dispatch(blockAccountFail(id, error)); }); }; -}; +} export function unblockAccount(id) { return (dispatch, getState) => { @@ -245,14 +245,14 @@ export function unblockAccount(id) { dispatch(unblockAccountFail(id, error)); }); }; -}; +} export function blockAccountRequest(id) { return { type: ACCOUNT_BLOCK_REQUEST, id, }; -}; +} export function blockAccountSuccess(relationship, statuses) { return { @@ -260,35 +260,35 @@ export function blockAccountSuccess(relationship, statuses) { relationship, statuses, }; -}; +} export function blockAccountFail(error) { return { type: ACCOUNT_BLOCK_FAIL, error, }; -}; +} export function unblockAccountRequest(id) { return { type: ACCOUNT_UNBLOCK_REQUEST, id, }; -}; +} export function unblockAccountSuccess(relationship) { return { type: ACCOUNT_UNBLOCK_SUCCESS, relationship, }; -}; +} export function unblockAccountFail(error) { return { type: ACCOUNT_UNBLOCK_FAIL, error, }; -}; +} export function muteAccount(id, notifications, duration=0) { @@ -302,7 +302,7 @@ export function muteAccount(id, notifications, duration=0) { dispatch(muteAccountFail(id, error)); }); }; -}; +} export function unmuteAccount(id) { return (dispatch, getState) => { @@ -314,14 +314,14 @@ export function unmuteAccount(id) { dispatch(unmuteAccountFail(id, error)); }); }; -}; +} export function muteAccountRequest(id) { return { type: ACCOUNT_MUTE_REQUEST, id, }; -}; +} export function muteAccountSuccess(relationship, statuses) { return { @@ -329,35 +329,35 @@ export function muteAccountSuccess(relationship, statuses) { relationship, statuses, }; -}; +} export function muteAccountFail(error) { return { type: ACCOUNT_MUTE_FAIL, error, }; -}; +} export function unmuteAccountRequest(id) { return { type: ACCOUNT_UNMUTE_REQUEST, id, }; -}; +} export function unmuteAccountSuccess(relationship) { return { type: ACCOUNT_UNMUTE_SUCCESS, relationship, }; -}; +} export function unmuteAccountFail(error) { return { type: ACCOUNT_UNMUTE_FAIL, error, }; -}; +} export function fetchFollowers(id) { @@ -374,14 +374,14 @@ export function fetchFollowers(id) { dispatch(fetchFollowersFail(id, error)); }); }; -}; +} export function fetchFollowersRequest(id) { return { type: FOLLOWERS_FETCH_REQUEST, id, }; -}; +} export function fetchFollowersSuccess(id, accounts, next) { return { @@ -390,7 +390,7 @@ export function fetchFollowersSuccess(id, accounts, next) { accounts, next, }; -}; +} export function fetchFollowersFail(id, error) { return { @@ -399,7 +399,7 @@ export function fetchFollowersFail(id, error) { error, skipNotFound: true, }; -}; +} export function expandFollowers(id) { return (dispatch, getState) => { @@ -421,14 +421,14 @@ export function expandFollowers(id) { dispatch(expandFollowersFail(id, error)); }); }; -}; +} export function expandFollowersRequest(id) { return { type: FOLLOWERS_EXPAND_REQUEST, id, }; -}; +} export function expandFollowersSuccess(id, accounts, next) { return { @@ -437,7 +437,7 @@ export function expandFollowersSuccess(id, accounts, next) { accounts, next, }; -}; +} export function expandFollowersFail(id, error) { return { @@ -445,7 +445,7 @@ export function expandFollowersFail(id, error) { id, error, }; -}; +} export function fetchFollowing(id) { return (dispatch, getState) => { @@ -461,14 +461,14 @@ export function fetchFollowing(id) { dispatch(fetchFollowingFail(id, error)); }); }; -}; +} export function fetchFollowingRequest(id) { return { type: FOLLOWING_FETCH_REQUEST, id, }; -}; +} export function fetchFollowingSuccess(id, accounts, next) { return { @@ -477,7 +477,7 @@ export function fetchFollowingSuccess(id, accounts, next) { accounts, next, }; -}; +} export function fetchFollowingFail(id, error) { return { @@ -486,7 +486,7 @@ export function fetchFollowingFail(id, error) { error, skipNotFound: true, }; -}; +} export function expandFollowing(id) { return (dispatch, getState) => { @@ -508,14 +508,14 @@ export function expandFollowing(id) { dispatch(expandFollowingFail(id, error)); }); }; -}; +} export function expandFollowingRequest(id) { return { type: FOLLOWING_EXPAND_REQUEST, id, }; -}; +} export function expandFollowingSuccess(id, accounts, next) { return { @@ -524,7 +524,7 @@ export function expandFollowingSuccess(id, accounts, next) { accounts, next, }; -}; +} export function expandFollowingFail(id, error) { return { @@ -532,7 +532,7 @@ export function expandFollowingFail(id, error) { id, error, }; -}; +} export function fetchRelationships(accountIds) { return (dispatch, getState) => { @@ -553,7 +553,7 @@ export function fetchRelationships(accountIds) { dispatch(fetchRelationshipsFail(error)); }); }; -}; +} export function fetchRelationshipsRequest(ids) { return { @@ -561,7 +561,7 @@ export function fetchRelationshipsRequest(ids) { ids, skipLoading: true, }; -}; +} export function fetchRelationshipsSuccess(relationships) { return { @@ -569,7 +569,7 @@ export function fetchRelationshipsSuccess(relationships) { relationships, skipLoading: true, }; -}; +} export function fetchRelationshipsFail(error) { return { @@ -578,7 +578,7 @@ export function fetchRelationshipsFail(error) { skipLoading: true, skipNotFound: true, }; -}; +} export function fetchFollowRequests() { return (dispatch, getState) => { @@ -590,13 +590,13 @@ export function fetchFollowRequests() { dispatch(fetchFollowRequestsSuccess(response.data, next ? next.uri : null)); }).catch(error => dispatch(fetchFollowRequestsFail(error))); }; -}; +} export function fetchFollowRequestsRequest() { return { type: FOLLOW_REQUESTS_FETCH_REQUEST, }; -}; +} export function fetchFollowRequestsSuccess(accounts, next) { return { @@ -604,14 +604,14 @@ export function fetchFollowRequestsSuccess(accounts, next) { accounts, next, }; -}; +} export function fetchFollowRequestsFail(error) { return { type: FOLLOW_REQUESTS_FETCH_FAIL, error, }; -}; +} export function expandFollowRequests() { return (dispatch, getState) => { @@ -629,13 +629,13 @@ export function expandFollowRequests() { dispatch(expandFollowRequestsSuccess(response.data, next ? next.uri : null)); }).catch(error => dispatch(expandFollowRequestsFail(error))); }; -}; +} export function expandFollowRequestsRequest() { return { type: FOLLOW_REQUESTS_EXPAND_REQUEST, }; -}; +} export function expandFollowRequestsSuccess(accounts, next) { return { @@ -643,14 +643,14 @@ export function expandFollowRequestsSuccess(accounts, next) { accounts, next, }; -}; +} export function expandFollowRequestsFail(error) { return { type: FOLLOW_REQUESTS_EXPAND_FAIL, error, }; -}; +} export function authorizeFollowRequest(id) { return (dispatch, getState) => { @@ -661,21 +661,21 @@ export function authorizeFollowRequest(id) { .then(() => dispatch(authorizeFollowRequestSuccess(id))) .catch(error => dispatch(authorizeFollowRequestFail(id, error))); }; -}; +} export function authorizeFollowRequestRequest(id) { return { type: FOLLOW_REQUEST_AUTHORIZE_REQUEST, id, }; -}; +} export function authorizeFollowRequestSuccess(id) { return { type: FOLLOW_REQUEST_AUTHORIZE_SUCCESS, id, }; -}; +} export function authorizeFollowRequestFail(id, error) { return { @@ -683,7 +683,7 @@ export function authorizeFollowRequestFail(id, error) { id, error, }; -}; +} export function rejectFollowRequest(id) { @@ -695,21 +695,21 @@ export function rejectFollowRequest(id) { .then(() => dispatch(rejectFollowRequestSuccess(id))) .catch(error => dispatch(rejectFollowRequestFail(id, error))); }; -}; +} export function rejectFollowRequestRequest(id) { return { type: FOLLOW_REQUEST_REJECT_REQUEST, id, }; -}; +} export function rejectFollowRequestSuccess(id) { return { type: FOLLOW_REQUEST_REJECT_SUCCESS, id, }; -}; +} export function rejectFollowRequestFail(id, error) { return { @@ -717,7 +717,7 @@ export function rejectFollowRequestFail(id, error) { id, error, }; -}; +} export function pinAccount(id) { return (dispatch, getState) => { @@ -729,7 +729,7 @@ export function pinAccount(id) { dispatch(pinAccountFail(error)); }); }; -}; +} export function unpinAccount(id) { return (dispatch, getState) => { @@ -741,49 +741,49 @@ export function unpinAccount(id) { dispatch(unpinAccountFail(error)); }); }; -}; +} export function pinAccountRequest(id) { return { type: ACCOUNT_PIN_REQUEST, id, }; -}; +} export function pinAccountSuccess(relationship) { return { type: ACCOUNT_PIN_SUCCESS, relationship, }; -}; +} export function pinAccountFail(error) { return { type: ACCOUNT_PIN_FAIL, error, }; -}; +} export function unpinAccountRequest(id) { return { type: ACCOUNT_UNPIN_REQUEST, id, }; -}; +} export function unpinAccountSuccess(relationship) { return { type: ACCOUNT_UNPIN_SUCCESS, relationship, }; -}; +} export function unpinAccountFail(error) { return { type: ACCOUNT_UNPIN_FAIL, error, }; -}; +} export const revealAccount = id => ({ type: ACCOUNT_REVEAL, diff --git a/app/javascript/mastodon/actions/alerts.js b/app/javascript/mastodon/actions/alerts.js index 1670f9c10..0220b0af5 100644 --- a/app/javascript/mastodon/actions/alerts.js +++ b/app/javascript/mastodon/actions/alerts.js @@ -17,13 +17,13 @@ export function dismissAlert(alert) { type: ALERT_DISMISS, alert, }; -}; +} export function clearAlert() { return { type: ALERT_CLEAR, }; -}; +} export function showAlert(title = messages.unexpectedTitle, message = messages.unexpectedMessage, message_values = undefined) { return { @@ -32,7 +32,7 @@ export function showAlert(title = messages.unexpectedTitle, message = messages.u message, message_values, }; -}; +} export function showAlertForError(error, skipNotFound = false) { if (error.response) { diff --git a/app/javascript/mastodon/actions/blocks.js b/app/javascript/mastodon/actions/blocks.js index fd9881302..192aa3ce4 100644 --- a/app/javascript/mastodon/actions/blocks.js +++ b/app/javascript/mastodon/actions/blocks.js @@ -24,13 +24,13 @@ export function fetchBlocks() { dispatch(fetchRelationships(response.data.map(item => item.id))); }).catch(error => dispatch(fetchBlocksFail(error))); }; -}; +} export function fetchBlocksRequest() { return { type: BLOCKS_FETCH_REQUEST, }; -}; +} export function fetchBlocksSuccess(accounts, next) { return { @@ -38,14 +38,14 @@ export function fetchBlocksSuccess(accounts, next) { accounts, next, }; -}; +} export function fetchBlocksFail(error) { return { type: BLOCKS_FETCH_FAIL, error, }; -}; +} export function expandBlocks() { return (dispatch, getState) => { @@ -64,13 +64,13 @@ export function expandBlocks() { dispatch(fetchRelationships(response.data.map(item => item.id))); }).catch(error => dispatch(expandBlocksFail(error))); }; -}; +} export function expandBlocksRequest() { return { type: BLOCKS_EXPAND_REQUEST, }; -}; +} export function expandBlocksSuccess(accounts, next) { return { @@ -78,14 +78,14 @@ export function expandBlocksSuccess(accounts, next) { accounts, next, }; -}; +} export function expandBlocksFail(error) { return { type: BLOCKS_EXPAND_FAIL, error, }; -}; +} export function initBlockModal(account) { return dispatch => { diff --git a/app/javascript/mastodon/actions/bookmarks.js b/app/javascript/mastodon/actions/bookmarks.js index 544ed2ff2..3c8eec546 100644 --- a/app/javascript/mastodon/actions/bookmarks.js +++ b/app/javascript/mastodon/actions/bookmarks.js @@ -25,13 +25,13 @@ export function fetchBookmarkedStatuses() { dispatch(fetchBookmarkedStatusesFail(error)); }); }; -}; +} export function fetchBookmarkedStatusesRequest() { return { type: BOOKMARKED_STATUSES_FETCH_REQUEST, }; -}; +} export function fetchBookmarkedStatusesSuccess(statuses, next) { return { @@ -39,14 +39,14 @@ export function fetchBookmarkedStatusesSuccess(statuses, next) { statuses, next, }; -}; +} export function fetchBookmarkedStatusesFail(error) { return { type: BOOKMARKED_STATUSES_FETCH_FAIL, error, }; -}; +} export function expandBookmarkedStatuses() { return (dispatch, getState) => { @@ -66,13 +66,13 @@ export function expandBookmarkedStatuses() { dispatch(expandBookmarkedStatusesFail(error)); }); }; -}; +} export function expandBookmarkedStatusesRequest() { return { type: BOOKMARKED_STATUSES_EXPAND_REQUEST, }; -}; +} export function expandBookmarkedStatusesSuccess(statuses, next) { return { @@ -80,11 +80,11 @@ export function expandBookmarkedStatusesSuccess(statuses, next) { statuses, next, }; -}; +} export function expandBookmarkedStatusesFail(error) { return { type: BOOKMARKED_STATUSES_EXPAND_FAIL, error, }; -}; +} diff --git a/app/javascript/mastodon/actions/columns.js b/app/javascript/mastodon/actions/columns.js index 9b87415fb..302c3f0f9 100644 --- a/app/javascript/mastodon/actions/columns.js +++ b/app/javascript/mastodon/actions/columns.js @@ -15,7 +15,7 @@ export function addColumn(id, params) { dispatch(saveSettings()); }; -}; +} export function removeColumn(uuid) { return dispatch => { @@ -26,7 +26,7 @@ export function removeColumn(uuid) { dispatch(saveSettings()); }; -}; +} export function moveColumn(uuid, direction) { return dispatch => { @@ -38,7 +38,7 @@ export function moveColumn(uuid, direction) { dispatch(saveSettings()); }; -}; +} export function changeColumnParams(uuid, path, value) { return dispatch => { diff --git a/app/javascript/mastodon/actions/compose.js b/app/javascript/mastodon/actions/compose.js index a9b7efc4a..531a5eb2b 100644 --- a/app/javascript/mastodon/actions/compose.js +++ b/app/javascript/mastodon/actions/compose.js @@ -94,14 +94,14 @@ export function setComposeToStatus(status, text, spoiler_text) { text, spoiler_text, }; -}; +} export function changeCompose(text) { return { type: COMPOSE_CHANGE, text: text, }; -}; +} export function replyCompose(status, routerHistory) { return (dispatch, getState) => { @@ -112,19 +112,19 @@ export function replyCompose(status, routerHistory) { ensureComposeIsVisible(getState, routerHistory); }; -}; +} export function cancelReplyCompose() { return { type: COMPOSE_REPLY_CANCEL, }; -}; +} export function resetCompose() { return { type: COMPOSE_RESET, }; -}; +} export function mentionCompose(account, routerHistory) { return (dispatch, getState) => { @@ -135,7 +135,7 @@ export function mentionCompose(account, routerHistory) { ensureComposeIsVisible(getState, routerHistory); }; -}; +} export function directCompose(account, routerHistory) { return (dispatch, getState) => { @@ -146,7 +146,7 @@ export function directCompose(account, routerHistory) { ensureComposeIsVisible(getState, routerHistory); }; -}; +} export function submitCompose(routerHistory) { return function (dispatch, getState) { @@ -211,27 +211,27 @@ export function submitCompose(routerHistory) { dispatch(submitComposeFail(error)); }); }; -}; +} export function submitComposeRequest() { return { type: COMPOSE_SUBMIT_REQUEST, }; -}; +} export function submitComposeSuccess(status) { return { type: COMPOSE_SUBMIT_SUCCESS, status: status, }; -}; +} export function submitComposeFail(error) { return { type: COMPOSE_SUBMIT_FAIL, error: error, }; -}; +} export function uploadCompose(files) { return function (dispatch, getState) { @@ -294,9 +294,9 @@ export function uploadCompose(files) { } }); }).catch(error => dispatch(uploadComposeFail(error))); - }; + } }; -}; +} export const uploadComposeProcessing = () => ({ type: COMPOSE_UPLOAD_PROCESSING, @@ -354,14 +354,14 @@ export function initMediaEditModal(id) { dispatch(openModal('FOCAL_POINT', { id })); }; -}; +} export function onChangeMediaDescription(description) { return { type: COMPOSE_CHANGE_MEDIA_DESCRIPTION, description, }; -}; +} export function onChangeMediaFocus(focusX, focusY) { return { @@ -369,7 +369,7 @@ export function onChangeMediaFocus(focusX, focusY) { focusX, focusY, }; -}; +} export function changeUploadCompose(id, params) { return (dispatch, getState) => { @@ -381,14 +381,14 @@ export function changeUploadCompose(id, params) { dispatch(changeUploadComposeFail(id, error)); }); }; -}; +} export function changeUploadComposeRequest() { return { type: COMPOSE_UPLOAD_CHANGE_REQUEST, skipLoading: true, }; -}; +} export function changeUploadComposeSuccess(media) { return { @@ -396,7 +396,7 @@ export function changeUploadComposeSuccess(media) { media: media, skipLoading: true, }; -}; +} export function changeUploadComposeFail(error) { return { @@ -404,14 +404,14 @@ export function changeUploadComposeFail(error) { error: error, skipLoading: true, }; -}; +} export function uploadComposeRequest() { return { type: COMPOSE_UPLOAD_REQUEST, skipLoading: true, }; -}; +} export function uploadComposeProgress(loaded, total) { return { @@ -419,7 +419,7 @@ export function uploadComposeProgress(loaded, total) { loaded: loaded, total: total, }; -}; +} export function uploadComposeSuccess(media, file) { return { @@ -428,7 +428,7 @@ export function uploadComposeSuccess(media, file) { file: file, skipLoading: true, }; -}; +} export function uploadComposeFail(error) { return { @@ -436,14 +436,14 @@ export function uploadComposeFail(error) { error: error, skipLoading: true, }; -}; +} export function undoUploadCompose(media_id) { return { type: COMPOSE_UPLOAD_UNDO, media_id: media_id, }; -}; +} export function clearComposeSuggestions() { if (fetchComposeSuggestionsAccountsController) { @@ -452,7 +452,7 @@ export function clearComposeSuggestions() { return { type: COMPOSE_SUGGESTIONS_CLEAR, }; -}; +} const fetchComposeSuggestionsAccounts = throttle((dispatch, getState, token) => { if (fetchComposeSuggestionsAccountsController) { @@ -530,7 +530,7 @@ export function fetchComposeSuggestions(token) { break; } }; -}; +} export function readyComposeSuggestionsEmojis(token, emojis) { return { @@ -538,7 +538,7 @@ export function readyComposeSuggestionsEmojis(token, emojis) { token, emojis, }; -}; +} export function readyComposeSuggestionsAccounts(token, accounts) { return { @@ -546,7 +546,7 @@ export function readyComposeSuggestionsAccounts(token, accounts) { token, accounts, }; -}; +} export const readyComposeSuggestionsTags = (token, tags) => ({ type: COMPOSE_SUGGESTIONS_READY, @@ -591,7 +591,7 @@ export function selectComposeSuggestion(position, token, suggestion, path) { }); } }; -}; +} export function updateSuggestionTags(token) { return { @@ -652,19 +652,19 @@ export function mountCompose() { return { type: COMPOSE_MOUNT, }; -}; +} export function unmountCompose() { return { type: COMPOSE_UNMOUNT, }; -}; +} export function changeComposeSensitivity() { return { type: COMPOSE_SENSITIVITY_CHANGE, }; -}; +} export const changeComposeLanguage = language => ({ type: COMPOSE_LANGUAGE_CHANGE, @@ -675,21 +675,21 @@ export function changeComposeSpoilerness() { return { type: COMPOSE_SPOILERNESS_CHANGE, }; -}; +} export function changeComposeSpoilerText(text) { return { type: COMPOSE_SPOILER_TEXT_CHANGE, text, }; -}; +} export function changeComposeVisibility(value) { return { type: COMPOSE_VISIBILITY_CHANGE, value, }; -}; +} export function insertEmojiCompose(position, emoji, needsSpace) { return { @@ -698,33 +698,33 @@ export function insertEmojiCompose(position, emoji, needsSpace) { emoji, needsSpace, }; -}; +} export function changeComposing(value) { return { type: COMPOSE_COMPOSING_CHANGE, value, }; -}; +} export function addPoll() { return { type: COMPOSE_POLL_ADD, }; -}; +} export function removePoll() { return { type: COMPOSE_POLL_REMOVE, }; -}; +} export function addPollOption(title) { return { type: COMPOSE_POLL_OPTION_ADD, title, }; -}; +} export function changePollOption(index, title) { return { @@ -732,14 +732,14 @@ export function changePollOption(index, title) { index, title, }; -}; +} export function removePollOption(index) { return { type: COMPOSE_POLL_OPTION_REMOVE, index, }; -}; +} export function changePollSettings(expiresIn, isMultiple) { return { @@ -747,4 +747,4 @@ export function changePollSettings(expiresIn, isMultiple) { expiresIn, isMultiple, }; -}; +} diff --git a/app/javascript/mastodon/actions/custom_emojis.js b/app/javascript/mastodon/actions/custom_emojis.js index 7b7d0091b..9ec8156b1 100644 --- a/app/javascript/mastodon/actions/custom_emojis.js +++ b/app/javascript/mastodon/actions/custom_emojis.js @@ -14,14 +14,14 @@ export function fetchCustomEmojis() { dispatch(fetchCustomEmojisFail(error)); }); }; -}; +} export function fetchCustomEmojisRequest() { return { type: CUSTOM_EMOJIS_FETCH_REQUEST, skipLoading: true, }; -}; +} export function fetchCustomEmojisSuccess(custom_emojis) { return { @@ -29,7 +29,7 @@ export function fetchCustomEmojisSuccess(custom_emojis) { custom_emojis, skipLoading: true, }; -}; +} export function fetchCustomEmojisFail(error) { return { @@ -37,4 +37,4 @@ export function fetchCustomEmojisFail(error) { error, skipLoading: true, }; -}; +} diff --git a/app/javascript/mastodon/actions/domain_blocks.js b/app/javascript/mastodon/actions/domain_blocks.js index 34a33a654..d06de20a2 100644 --- a/app/javascript/mastodon/actions/domain_blocks.js +++ b/app/javascript/mastodon/actions/domain_blocks.js @@ -29,14 +29,14 @@ export function blockDomain(domain) { dispatch(blockDomainFail(domain, err)); }); }; -}; +} export function blockDomainRequest(domain) { return { type: DOMAIN_BLOCK_REQUEST, domain, }; -}; +} export function blockDomainSuccess(domain, accounts) { return { @@ -44,7 +44,7 @@ export function blockDomainSuccess(domain, accounts) { domain, accounts, }; -}; +} export function blockDomainFail(domain, error) { return { @@ -52,7 +52,7 @@ export function blockDomainFail(domain, error) { domain, error, }; -}; +} export function unblockDomain(domain) { return (dispatch, getState) => { @@ -66,14 +66,14 @@ export function unblockDomain(domain) { dispatch(unblockDomainFail(domain, err)); }); }; -}; +} export function unblockDomainRequest(domain) { return { type: DOMAIN_UNBLOCK_REQUEST, domain, }; -}; +} export function unblockDomainSuccess(domain, accounts) { return { @@ -81,7 +81,7 @@ export function unblockDomainSuccess(domain, accounts) { domain, accounts, }; -}; +} export function unblockDomainFail(domain, error) { return { @@ -89,7 +89,7 @@ export function unblockDomainFail(domain, error) { domain, error, }; -}; +} export function fetchDomainBlocks() { return (dispatch, getState) => { @@ -102,13 +102,13 @@ export function fetchDomainBlocks() { dispatch(fetchDomainBlocksFail(err)); }); }; -}; +} export function fetchDomainBlocksRequest() { return { type: DOMAIN_BLOCKS_FETCH_REQUEST, }; -}; +} export function fetchDomainBlocksSuccess(domains, next) { return { @@ -116,14 +116,14 @@ export function fetchDomainBlocksSuccess(domains, next) { domains, next, }; -}; +} export function fetchDomainBlocksFail(error) { return { type: DOMAIN_BLOCKS_FETCH_FAIL, error, }; -}; +} export function expandDomainBlocks() { return (dispatch, getState) => { @@ -142,13 +142,13 @@ export function expandDomainBlocks() { dispatch(expandDomainBlocksFail(err)); }); }; -}; +} export function expandDomainBlocksRequest() { return { type: DOMAIN_BLOCKS_EXPAND_REQUEST, }; -}; +} export function expandDomainBlocksSuccess(domains, next) { return { @@ -156,11 +156,11 @@ export function expandDomainBlocksSuccess(domains, next) { domains, next, }; -}; +} export function expandDomainBlocksFail(error) { return { type: DOMAIN_BLOCKS_EXPAND_FAIL, error, }; -}; +} diff --git a/app/javascript/mastodon/actions/emojis.js b/app/javascript/mastodon/actions/emojis.js index 7cd9d4b7b..3b5d53996 100644 --- a/app/javascript/mastodon/actions/emojis.js +++ b/app/javascript/mastodon/actions/emojis.js @@ -11,4 +11,4 @@ export function useEmoji(emoji) { dispatch(saveSettings()); }; -}; +} diff --git a/app/javascript/mastodon/actions/favourites.js b/app/javascript/mastodon/actions/favourites.js index 9448b1efe..7388e0c58 100644 --- a/app/javascript/mastodon/actions/favourites.js +++ b/app/javascript/mastodon/actions/favourites.js @@ -25,14 +25,14 @@ export function fetchFavouritedStatuses() { dispatch(fetchFavouritedStatusesFail(error)); }); }; -}; +} export function fetchFavouritedStatusesRequest() { return { type: FAVOURITED_STATUSES_FETCH_REQUEST, skipLoading: true, }; -}; +} export function fetchFavouritedStatusesSuccess(statuses, next) { return { @@ -41,7 +41,7 @@ export function fetchFavouritedStatusesSuccess(statuses, next) { next, skipLoading: true, }; -}; +} export function fetchFavouritedStatusesFail(error) { return { @@ -49,7 +49,7 @@ export function fetchFavouritedStatusesFail(error) { error, skipLoading: true, }; -}; +} export function expandFavouritedStatuses() { return (dispatch, getState) => { @@ -69,13 +69,13 @@ export function expandFavouritedStatuses() { dispatch(expandFavouritedStatusesFail(error)); }); }; -}; +} export function expandFavouritedStatusesRequest() { return { type: FAVOURITED_STATUSES_EXPAND_REQUEST, }; -}; +} export function expandFavouritedStatusesSuccess(statuses, next) { return { @@ -83,11 +83,11 @@ export function expandFavouritedStatusesSuccess(statuses, next) { statuses, next, }; -}; +} export function expandFavouritedStatusesFail(error) { return { type: FAVOURITED_STATUSES_EXPAND_FAIL, error, }; -}; +} diff --git a/app/javascript/mastodon/actions/height_cache.js b/app/javascript/mastodon/actions/height_cache.js index 4c752993f..a8645410c 100644 --- a/app/javascript/mastodon/actions/height_cache.js +++ b/app/javascript/mastodon/actions/height_cache.js @@ -8,10 +8,10 @@ export function setHeight (key, id, height) { id, height, }; -}; +} export function clearHeight () { return { type: HEIGHT_CACHE_CLEAR, }; -}; +} diff --git a/app/javascript/mastodon/actions/interactions.js b/app/javascript/mastodon/actions/interactions.js index d60ccc1fb..bc35736ff 100644 --- a/app/javascript/mastodon/actions/interactions.js +++ b/app/javascript/mastodon/actions/interactions.js @@ -54,7 +54,7 @@ export function reblog(status, visibility) { dispatch(reblogFail(status, error)); }); }; -}; +} export function unreblog(status) { return (dispatch, getState) => { @@ -67,7 +67,7 @@ export function unreblog(status) { dispatch(unreblogFail(status, error)); }); }; -}; +} export function reblogRequest(status) { return { @@ -75,7 +75,7 @@ export function reblogRequest(status) { status: status, skipLoading: true, }; -}; +} export function reblogSuccess(status) { return { @@ -83,7 +83,7 @@ export function reblogSuccess(status) { status: status, skipLoading: true, }; -}; +} export function reblogFail(status, error) { return { @@ -92,7 +92,7 @@ export function reblogFail(status, error) { error: error, skipLoading: true, }; -}; +} export function unreblogRequest(status) { return { @@ -100,7 +100,7 @@ export function unreblogRequest(status) { status: status, skipLoading: true, }; -}; +} export function unreblogSuccess(status) { return { @@ -108,7 +108,7 @@ export function unreblogSuccess(status) { status: status, skipLoading: true, }; -}; +} export function unreblogFail(status, error) { return { @@ -117,7 +117,7 @@ export function unreblogFail(status, error) { error: error, skipLoading: true, }; -}; +} export function favourite(status) { return function (dispatch, getState) { @@ -130,7 +130,7 @@ export function favourite(status) { dispatch(favouriteFail(status, error)); }); }; -}; +} export function unfavourite(status) { return (dispatch, getState) => { @@ -143,7 +143,7 @@ export function unfavourite(status) { dispatch(unfavouriteFail(status, error)); }); }; -}; +} export function favouriteRequest(status) { return { @@ -151,7 +151,7 @@ export function favouriteRequest(status) { status: status, skipLoading: true, }; -}; +} export function favouriteSuccess(status) { return { @@ -159,7 +159,7 @@ export function favouriteSuccess(status) { status: status, skipLoading: true, }; -}; +} export function favouriteFail(status, error) { return { @@ -168,7 +168,7 @@ export function favouriteFail(status, error) { error: error, skipLoading: true, }; -}; +} export function unfavouriteRequest(status) { return { @@ -176,7 +176,7 @@ export function unfavouriteRequest(status) { status: status, skipLoading: true, }; -}; +} export function unfavouriteSuccess(status) { return { @@ -184,7 +184,7 @@ export function unfavouriteSuccess(status) { status: status, skipLoading: true, }; -}; +} export function unfavouriteFail(status, error) { return { @@ -193,7 +193,7 @@ export function unfavouriteFail(status, error) { error: error, skipLoading: true, }; -}; +} export function bookmark(status) { return function (dispatch, getState) { @@ -206,7 +206,7 @@ export function bookmark(status) { dispatch(bookmarkFail(status, error)); }); }; -}; +} export function unbookmark(status) { return (dispatch, getState) => { @@ -219,14 +219,14 @@ export function unbookmark(status) { dispatch(unbookmarkFail(status, error)); }); }; -}; +} export function bookmarkRequest(status) { return { type: BOOKMARK_REQUEST, status: status, }; -}; +} export function bookmarkSuccess(status, response) { return { @@ -234,7 +234,7 @@ export function bookmarkSuccess(status, response) { status: status, response: response, }; -}; +} export function bookmarkFail(status, error) { return { @@ -242,14 +242,14 @@ export function bookmarkFail(status, error) { status: status, error: error, }; -}; +} export function unbookmarkRequest(status) { return { type: UNBOOKMARK_REQUEST, status: status, }; -}; +} export function unbookmarkSuccess(status, response) { return { @@ -257,7 +257,7 @@ export function unbookmarkSuccess(status, response) { status: status, response: response, }; -}; +} export function unbookmarkFail(status, error) { return { @@ -265,7 +265,7 @@ export function unbookmarkFail(status, error) { status: status, error: error, }; -}; +} export function fetchReblogs(id) { return (dispatch, getState) => { @@ -278,14 +278,14 @@ export function fetchReblogs(id) { dispatch(fetchReblogsFail(id, error)); }); }; -}; +} export function fetchReblogsRequest(id) { return { type: REBLOGS_FETCH_REQUEST, id, }; -}; +} export function fetchReblogsSuccess(id, accounts) { return { @@ -293,14 +293,14 @@ export function fetchReblogsSuccess(id, accounts) { id, accounts, }; -}; +} export function fetchReblogsFail(id, error) { return { type: REBLOGS_FETCH_FAIL, error, }; -}; +} export function fetchFavourites(id) { return (dispatch, getState) => { @@ -313,14 +313,14 @@ export function fetchFavourites(id) { dispatch(fetchFavouritesFail(id, error)); }); }; -}; +} export function fetchFavouritesRequest(id) { return { type: FAVOURITES_FETCH_REQUEST, id, }; -}; +} export function fetchFavouritesSuccess(id, accounts) { return { @@ -328,14 +328,14 @@ export function fetchFavouritesSuccess(id, accounts) { id, accounts, }; -}; +} export function fetchFavouritesFail(id, error) { return { type: FAVOURITES_FETCH_FAIL, error, }; -}; +} export function pin(status) { return (dispatch, getState) => { @@ -348,7 +348,7 @@ export function pin(status) { dispatch(pinFail(status, error)); }); }; -}; +} export function pinRequest(status) { return { @@ -356,7 +356,7 @@ export function pinRequest(status) { status, skipLoading: true, }; -}; +} export function pinSuccess(status) { return { @@ -364,7 +364,7 @@ export function pinSuccess(status) { status, skipLoading: true, }; -}; +} export function pinFail(status, error) { return { @@ -373,7 +373,7 @@ export function pinFail(status, error) { error, skipLoading: true, }; -}; +} export function unpin (status) { return (dispatch, getState) => { @@ -386,7 +386,7 @@ export function unpin (status) { dispatch(unpinFail(status, error)); }); }; -}; +} export function unpinRequest(status) { return { @@ -394,7 +394,7 @@ export function unpinRequest(status) { status, skipLoading: true, }; -}; +} export function unpinSuccess(status) { return { @@ -402,7 +402,7 @@ export function unpinSuccess(status) { status, skipLoading: true, }; -}; +} export function unpinFail(status, error) { return { @@ -411,4 +411,4 @@ export function unpinFail(status, error) { error, skipLoading: true, }; -}; +} diff --git a/app/javascript/mastodon/actions/markers.js b/app/javascript/mastodon/actions/markers.js index b7f406cb8..16ec7fe77 100644 --- a/app/javascript/mastodon/actions/markers.js +++ b/app/javascript/mastodon/actions/markers.js @@ -101,7 +101,7 @@ export function submitMarkersSuccess({ home, notifications }) { home: (home || {}).last_read_id, notifications: (notifications || {}).last_read_id, }; -}; +} export function submitMarkers(params = {}) { const result = (dispatch, getState) => debouncedSubmitMarkers(dispatch, getState); @@ -111,7 +111,7 @@ export function submitMarkers(params = {}) { } return result; -}; +} export const fetchMarkers = () => (dispatch, getState) => { const params = { timeline: ['notifications'] }; @@ -130,7 +130,7 @@ export function fetchMarkersRequest() { type: MARKERS_FETCH_REQUEST, skipLoading: true, }; -}; +} export function fetchMarkersSuccess(markers) { return { @@ -138,7 +138,7 @@ export function fetchMarkersSuccess(markers) { markers, skipLoading: true, }; -}; +} export function fetchMarkersFail(error) { return { @@ -147,4 +147,4 @@ export function fetchMarkersFail(error) { skipLoading: true, skipAlert: true, }; -}; +} diff --git a/app/javascript/mastodon/actions/modal.js b/app/javascript/mastodon/actions/modal.js index 3e576fab8..ef2ae0e4c 100644 --- a/app/javascript/mastodon/actions/modal.js +++ b/app/javascript/mastodon/actions/modal.js @@ -7,7 +7,7 @@ export function openModal(type, props) { modalType: type, modalProps: props, }; -}; +} export function closeModal(type, options = { ignoreFocus: false }) { return { @@ -15,4 +15,4 @@ export function closeModal(type, options = { ignoreFocus: false }) { modalType: type, ignoreFocus: options.ignoreFocus, }; -}; +} diff --git a/app/javascript/mastodon/actions/mutes.js b/app/javascript/mastodon/actions/mutes.js index d8874f353..cbc42a67e 100644 --- a/app/javascript/mastodon/actions/mutes.js +++ b/app/javascript/mastodon/actions/mutes.js @@ -26,13 +26,13 @@ export function fetchMutes() { dispatch(fetchRelationships(response.data.map(item => item.id))); }).catch(error => dispatch(fetchMutesFail(error))); }; -}; +} export function fetchMutesRequest() { return { type: MUTES_FETCH_REQUEST, }; -}; +} export function fetchMutesSuccess(accounts, next) { return { @@ -40,14 +40,14 @@ export function fetchMutesSuccess(accounts, next) { accounts, next, }; -}; +} export function fetchMutesFail(error) { return { type: MUTES_FETCH_FAIL, error, }; -}; +} export function expandMutes() { return (dispatch, getState) => { @@ -66,13 +66,13 @@ export function expandMutes() { dispatch(fetchRelationships(response.data.map(item => item.id))); }).catch(error => dispatch(expandMutesFail(error))); }; -}; +} export function expandMutesRequest() { return { type: MUTES_EXPAND_REQUEST, }; -}; +} export function expandMutesSuccess(accounts, next) { return { @@ -80,14 +80,14 @@ export function expandMutesSuccess(accounts, next) { accounts, next, }; -}; +} export function expandMutesFail(error) { return { type: MUTES_EXPAND_FAIL, error, }; -}; +} export function initMuteModal(account) { return dispatch => { diff --git a/app/javascript/mastodon/actions/notifications.js b/app/javascript/mastodon/actions/notifications.js index d4588db2c..93588d3c0 100644 --- a/app/javascript/mastodon/actions/notifications.js +++ b/app/javascript/mastodon/actions/notifications.js @@ -118,7 +118,7 @@ export function updateNotifications(notification, intlMessages, intlLocale) { }); } }; -}; +} const excludeTypesFromSettings = state => state.getIn(['settings', 'notifications', 'shows']).filter(enabled => !enabled).keySeq().toJS(); @@ -197,14 +197,14 @@ export function expandNotifications({ maxId, forceLoad } = {}, done = noOp) { done(); }); }; -}; +} export function expandNotificationsRequest(isLoadingMore) { return { type: NOTIFICATIONS_EXPAND_REQUEST, skipLoading: !isLoadingMore, }; -}; +} export function expandNotificationsSuccess(notifications, next, isLoadingMore, isLoadingRecent, usePendingItems) { return { @@ -215,7 +215,7 @@ export function expandNotificationsSuccess(notifications, next, isLoadingMore, i usePendingItems, skipLoading: !isLoadingMore, }; -}; +} export function expandNotificationsFail(error, isLoadingMore) { return { @@ -224,7 +224,7 @@ export function expandNotificationsFail(error, isLoadingMore) { skipLoading: !isLoadingMore, skipAlert: !isLoadingMore || error.name === 'AbortError', }; -}; +} export function clearNotifications() { return (dispatch, getState) => { @@ -234,14 +234,14 @@ export function clearNotifications() { api(getState).post('/api/v1/notifications/clear'); }; -}; +} export function scrollTopNotifications(top) { return { type: NOTIFICATIONS_SCROLL_TOP, top, }; -}; +} export function setFilter (filterType) { return dispatch => { @@ -253,7 +253,7 @@ export function setFilter (filterType) { dispatch(expandNotifications({ forceLoad: true })); dispatch(saveSettings()); }; -}; +} export const mountNotifications = () => ({ type: NOTIFICATIONS_MOUNT, @@ -291,7 +291,7 @@ export function requestBrowserPermission(callback = noOp) { callback(permission); }); }; -}; +} export function setBrowserSupport (value) { return { diff --git a/app/javascript/mastodon/actions/pin_statuses.js b/app/javascript/mastodon/actions/pin_statuses.js index 77abba7b5..e2de98ca9 100644 --- a/app/javascript/mastodon/actions/pin_statuses.js +++ b/app/javascript/mastodon/actions/pin_statuses.js @@ -18,13 +18,13 @@ export function fetchPinnedStatuses() { dispatch(fetchPinnedStatusesFail(error)); }); }; -}; +} export function fetchPinnedStatusesRequest() { return { type: PINNED_STATUSES_FETCH_REQUEST, }; -}; +} export function fetchPinnedStatusesSuccess(statuses, next) { return { @@ -32,11 +32,11 @@ export function fetchPinnedStatusesSuccess(statuses, next) { statuses, next, }; -}; +} export function fetchPinnedStatusesFail(error) { return { type: PINNED_STATUSES_FETCH_FAIL, error, }; -}; +} diff --git a/app/javascript/mastodon/actions/search.js b/app/javascript/mastodon/actions/search.js index e333c0ea7..666c6c223 100644 --- a/app/javascript/mastodon/actions/search.js +++ b/app/javascript/mastodon/actions/search.js @@ -19,13 +19,13 @@ export function changeSearch(value) { type: SEARCH_CHANGE, value, }; -}; +} export function clearSearch() { return { type: SEARCH_CLEAR, }; -}; +} export function submitSearch() { return (dispatch, getState) => { @@ -60,13 +60,13 @@ export function submitSearch() { dispatch(fetchSearchFail(error)); }); }; -}; +} export function fetchSearchRequest() { return { type: SEARCH_FETCH_REQUEST, }; -}; +} export function fetchSearchSuccess(results, searchTerm) { return { @@ -74,14 +74,14 @@ export function fetchSearchSuccess(results, searchTerm) { results, searchTerm, }; -}; +} export function fetchSearchFail(error) { return { type: SEARCH_FETCH_FAIL, error, }; -}; +} export const expandSearch = type => (dispatch, getState) => { const value = getState().getIn(['search', 'value']); diff --git a/app/javascript/mastodon/actions/settings.js b/app/javascript/mastodon/actions/settings.js index 6bf85e464..6ae001b6f 100644 --- a/app/javascript/mastodon/actions/settings.js +++ b/app/javascript/mastodon/actions/settings.js @@ -15,7 +15,7 @@ export function changeSetting(path, value) { dispatch(saveSettings()); }; -}; +} const debouncedSave = debounce((dispatch, getState) => { if (getState().getIn(['settings', 'saved'])) { @@ -31,4 +31,4 @@ const debouncedSave = debounce((dispatch, getState) => { export function saveSettings() { return (dispatch, getState) => debouncedSave(dispatch, getState); -}; +} diff --git a/app/javascript/mastodon/actions/statuses.js b/app/javascript/mastodon/actions/statuses.js index 4ae1b21e0..275280a53 100644 --- a/app/javascript/mastodon/actions/statuses.js +++ b/app/javascript/mastodon/actions/statuses.js @@ -45,7 +45,7 @@ export function fetchStatusRequest(id, skipLoading) { id, skipLoading, }; -}; +} export function fetchStatus(id, forceFetch = false) { return (dispatch, getState) => { @@ -66,14 +66,14 @@ export function fetchStatus(id, forceFetch = false) { dispatch(fetchStatusFail(id, error, skipLoading)); }); }; -}; +} export function fetchStatusSuccess(skipLoading) { return { type: STATUS_FETCH_SUCCESS, skipLoading, }; -}; +} export function fetchStatusFail(id, error, skipLoading) { return { @@ -83,7 +83,7 @@ export function fetchStatusFail(id, error, skipLoading) { skipLoading, skipAlert: true, }; -}; +} export function redraft(status, raw_text) { return { @@ -91,7 +91,7 @@ export function redraft(status, raw_text) { status, raw_text, }; -}; +} export const editStatus = (id, routerHistory) => (dispatch, getState) => { let status = getState().getIn(['statuses', id]); @@ -147,21 +147,21 @@ export function deleteStatus(id, routerHistory, withRedraft = false) { dispatch(deleteStatusFail(id, error)); }); }; -}; +} export function deleteStatusRequest(id) { return { type: STATUS_DELETE_REQUEST, id: id, }; -}; +} export function deleteStatusSuccess(id) { return { type: STATUS_DELETE_SUCCESS, id: id, }; -}; +} export function deleteStatusFail(id, error) { return { @@ -169,7 +169,7 @@ export function deleteStatusFail(id, error) { id: id, error: error, }; -}; +} export const updateStatus = status => dispatch => dispatch(importFetchedStatus(status)); @@ -190,14 +190,14 @@ export function fetchContext(id) { dispatch(fetchContextFail(id, error)); }); }; -}; +} export function fetchContextRequest(id) { return { type: CONTEXT_FETCH_REQUEST, id, }; -}; +} export function fetchContextSuccess(id, ancestors, descendants) { return { @@ -207,7 +207,7 @@ export function fetchContextSuccess(id, ancestors, descendants) { descendants, statuses: ancestors.concat(descendants), }; -}; +} export function fetchContextFail(id, error) { return { @@ -216,7 +216,7 @@ export function fetchContextFail(id, error) { error, skipAlert: true, }; -}; +} export function muteStatus(id) { return (dispatch, getState) => { @@ -228,21 +228,21 @@ export function muteStatus(id) { dispatch(muteStatusFail(id, error)); }); }; -}; +} export function muteStatusRequest(id) { return { type: STATUS_MUTE_REQUEST, id, }; -}; +} export function muteStatusSuccess(id) { return { type: STATUS_MUTE_SUCCESS, id, }; -}; +} export function muteStatusFail(id, error) { return { @@ -250,7 +250,7 @@ export function muteStatusFail(id, error) { id, error, }; -}; +} export function unmuteStatus(id) { return (dispatch, getState) => { @@ -262,21 +262,21 @@ export function unmuteStatus(id) { dispatch(unmuteStatusFail(id, error)); }); }; -}; +} export function unmuteStatusRequest(id) { return { type: STATUS_UNMUTE_REQUEST, id, }; -}; +} export function unmuteStatusSuccess(id) { return { type: STATUS_UNMUTE_SUCCESS, id, }; -}; +} export function unmuteStatusFail(id, error) { return { @@ -284,7 +284,7 @@ export function unmuteStatusFail(id, error) { id, error, }; -}; +} export function hideStatus(ids) { if (!Array.isArray(ids)) { @@ -295,7 +295,7 @@ export function hideStatus(ids) { type: STATUS_HIDE, ids, }; -}; +} export function revealStatus(ids) { if (!Array.isArray(ids)) { @@ -306,7 +306,7 @@ export function revealStatus(ids) { type: STATUS_REVEAL, ids, }; -}; +} export function toggleStatusCollapse(id, isCollapsed) { return { @@ -314,7 +314,7 @@ export function toggleStatusCollapse(id, isCollapsed) { id, isCollapsed, }; -}; +} export const translateStatus = id => (dispatch, getState) => { dispatch(translateStatusRequest(id)); diff --git a/app/javascript/mastodon/actions/store.js b/app/javascript/mastodon/actions/store.js index 34dcafc51..b3030467b 100644 --- a/app/javascript/mastodon/actions/store.js +++ b/app/javascript/mastodon/actions/store.js @@ -21,4 +21,4 @@ export function hydrateStore(rawState) { dispatch(hydrateCompose()); dispatch(importFetchedAccounts(Object.values(rawState.accounts))); }; -}; +} diff --git a/app/javascript/mastodon/actions/suggestions.js b/app/javascript/mastodon/actions/suggestions.js index 1f1116e75..9e8cd1ea4 100644 --- a/app/javascript/mastodon/actions/suggestions.js +++ b/app/javascript/mastodon/actions/suggestions.js @@ -21,14 +21,14 @@ export function fetchSuggestions(withRelationships = false) { } }).catch(error => dispatch(fetchSuggestionsFail(error))); }; -}; +} export function fetchSuggestionsRequest() { return { type: SUGGESTIONS_FETCH_REQUEST, skipLoading: true, }; -}; +} export function fetchSuggestionsSuccess(suggestions) { return { @@ -36,7 +36,7 @@ export function fetchSuggestionsSuccess(suggestions) { suggestions, skipLoading: true, }; -}; +} export function fetchSuggestionsFail(error) { return { @@ -45,7 +45,7 @@ export function fetchSuggestionsFail(error) { skipLoading: true, skipAlert: true, }; -}; +} export const dismissSuggestion = accountId => (dispatch, getState) => { dispatch({ diff --git a/app/javascript/mastodon/actions/timelines.js b/app/javascript/mastodon/actions/timelines.js index a3434908f..4f772a55f 100644 --- a/app/javascript/mastodon/actions/timelines.js +++ b/app/javascript/mastodon/actions/timelines.js @@ -51,7 +51,7 @@ export function updateTimeline(timeline, status, accept) { dispatch(submitMarkers()); } }; -}; +} export function deleteFromTimelines(id) { return (dispatch, getState) => { @@ -67,13 +67,13 @@ export function deleteFromTimelines(id) { reblogOf, }); }; -}; +} export function clearTimeline(timeline) { return (dispatch) => { dispatch({ type: TIMELINE_CLEAR, timeline }); }; -}; +} const noOp = () => {}; @@ -122,7 +122,7 @@ export function expandTimeline(timelineId, path, params = {}, done = noOp) { done(); }); }; -}; +} export function fillTimelineGaps(timelineId, path, params = {}, done = noOp) { return (dispatch, getState) => { @@ -168,7 +168,7 @@ export function expandTimelineRequest(timeline, isLoadingMore) { timeline, skipLoading: !isLoadingMore, }; -}; +} export function expandTimelineSuccess(timeline, statuses, next, partial, isLoadingRecent, isLoadingMore, usePendingItems) { return { @@ -181,7 +181,7 @@ export function expandTimelineSuccess(timeline, statuses, next, partial, isLoadi usePendingItems, skipLoading: !isLoadingMore, }; -}; +} export function expandTimelineFail(timeline, error, isLoadingMore) { return { @@ -191,7 +191,7 @@ export function expandTimelineFail(timeline, error, isLoadingMore) { skipLoading: !isLoadingMore, skipNotFound: timeline.startsWith('account:'), }; -}; +} export function scrollTopTimeline(timeline, top) { return { @@ -199,7 +199,7 @@ export function scrollTopTimeline(timeline, top) { timeline, top, }; -}; +} export function connectTimeline(timeline) { return { @@ -207,7 +207,7 @@ export function connectTimeline(timeline) { timeline, usePendingItems: preferPendingItems, }; -}; +} export const disconnectTimeline = timeline => ({ type: TIMELINE_DISCONNECT, diff --git a/app/javascript/mastodon/common.js b/app/javascript/mastodon/common.js index 6818aa5d5..8f3505303 100644 --- a/app/javascript/mastodon/common.js +++ b/app/javascript/mastodon/common.js @@ -9,4 +9,4 @@ export function start() { } catch (e) { // If called twice } -}; +} diff --git a/app/javascript/mastodon/compare_id.js b/app/javascript/mastodon/compare_id.js index 66cf51c4b..d2bd74f44 100644 --- a/app/javascript/mastodon/compare_id.js +++ b/app/javascript/mastodon/compare_id.js @@ -8,4 +8,4 @@ export default function compareId (id1, id2) { } else { return id1.length > id2.length ? 1 : -1; } -}; +} diff --git a/app/javascript/mastodon/components/admin/Retention.js b/app/javascript/mastodon/components/admin/Retention.js index 47c9e7151..f312a45eb 100644 --- a/app/javascript/mastodon/components/admin/Retention.js +++ b/app/javascript/mastodon/components/admin/Retention.js @@ -137,7 +137,7 @@ export default class Retention extends React.PureComponent { break; default: title = ; - }; + } return (
diff --git a/app/javascript/mastodon/features/closed_registrations_modal/index.js b/app/javascript/mastodon/features/closed_registrations_modal/index.js index 275bd50aa..e6540e825 100644 --- a/app/javascript/mastodon/features/closed_registrations_modal/index.js +++ b/app/javascript/mastodon/features/closed_registrations_modal/index.js @@ -72,4 +72,4 @@ class ClosedRegistrationsModal extends ImmutablePureComponent { ); } -}; +} diff --git a/app/javascript/mastodon/features/compose/util/counter.js b/app/javascript/mastodon/features/compose/util/counter.js index 7aa9e87b1..5a68bad99 100644 --- a/app/javascript/mastodon/features/compose/util/counter.js +++ b/app/javascript/mastodon/features/compose/util/counter.js @@ -6,4 +6,4 @@ export function countableText(inputText) { return inputText .replace(urlRegex, urlPlaceholder) .replace(/(^|[^\/\w])@(([a-z0-9_]+)@[a-z0-9\.\-]+[a-z0-9]+)/ig, '$1@$3'); -}; +} diff --git a/app/javascript/mastodon/features/hashtag_timeline/components/column_settings.js b/app/javascript/mastodon/features/hashtag_timeline/components/column_settings.js index ede8907e5..ac7863ed3 100644 --- a/app/javascript/mastodon/features/hashtag_timeline/components/column_settings.js +++ b/app/javascript/mastodon/features/hashtag_timeline/components/column_settings.js @@ -38,7 +38,7 @@ class ColumnSettings extends React.PureComponent { } else { return tags; } - }; + } onSelect = mode => value => { const oldValue = this.tags(mode); @@ -98,7 +98,7 @@ class ColumnSettings extends React.PureComponent { default: return ''; } - }; + } render () { const { settings, onChange } = this.props; diff --git a/app/javascript/mastodon/features/list_timeline/index.js b/app/javascript/mastodon/features/list_timeline/index.js index f1829d34d..c2e72e2e9 100644 --- a/app/javascript/mastodon/features/list_timeline/index.js +++ b/app/javascript/mastodon/features/list_timeline/index.js @@ -126,7 +126,7 @@ class ListTimeline extends React.PureComponent { onConfirm: () => { dispatch(deleteList(id)); - if (!!columnId) { + if (columnId) { dispatch(removeColumn(columnId)); } else { this.context.router.history.push('/lists'); diff --git a/app/javascript/mastodon/features/ui/components/disabled_account_banner.js b/app/javascript/mastodon/features/ui/components/disabled_account_banner.js index cc8cc3285..038cc3553 100644 --- a/app/javascript/mastodon/features/ui/components/disabled_account_banner.js +++ b/app/javascript/mastodon/features/ui/components/disabled_account_banner.js @@ -89,4 +89,4 @@ class DisabledAccountBanner extends React.PureComponent { ); } -}; +} diff --git a/app/javascript/mastodon/features/ui/components/link_footer.js b/app/javascript/mastodon/features/ui/components/link_footer.js index c29aac418..2b83d6378 100644 --- a/app/javascript/mastodon/features/ui/components/link_footer.js +++ b/app/javascript/mastodon/features/ui/components/link_footer.js @@ -91,4 +91,4 @@ class LinkFooter extends React.PureComponent { ); } -}; +} diff --git a/app/javascript/mastodon/features/ui/util/react_router_helpers.js b/app/javascript/mastodon/features/ui/util/react_router_helpers.js index 2ee06c3ff..205dd6f10 100644 --- a/app/javascript/mastodon/features/ui/util/react_router_helpers.js +++ b/app/javascript/mastodon/features/ui/util/react_router_helpers.js @@ -46,7 +46,7 @@ export class WrappedRoute extends React.Component { return { hasError: true, }; - }; + } state = { hasError: false, diff --git a/app/javascript/mastodon/middleware/errors.js b/app/javascript/mastodon/middleware/errors.js index 0a65fd321..708df6bb8 100644 --- a/app/javascript/mastodon/middleware/errors.js +++ b/app/javascript/mastodon/middleware/errors.js @@ -14,4 +14,4 @@ export default function errorsMiddleware() { return next(action); }; -}; +} diff --git a/app/javascript/mastodon/middleware/loading_bar.js b/app/javascript/mastodon/middleware/loading_bar.js index a98f1bb2b..da8cc4c7d 100644 --- a/app/javascript/mastodon/middleware/loading_bar.js +++ b/app/javascript/mastodon/middleware/loading_bar.js @@ -22,4 +22,4 @@ export default function loadingBarMiddleware(config = {}) { return next(action); }; -}; +} diff --git a/app/javascript/mastodon/middleware/sounds.js b/app/javascript/mastodon/middleware/sounds.js index 9f1bc02b9..7f2388983 100644 --- a/app/javascript/mastodon/middleware/sounds.js +++ b/app/javascript/mastodon/middleware/sounds.js @@ -43,4 +43,4 @@ export default function soundsMiddleware() { return next(action); }; -}; +} diff --git a/app/javascript/mastodon/reducers/accounts.js b/app/javascript/mastodon/reducers/accounts.js index b5589668c..44973e939 100644 --- a/app/javascript/mastodon/reducers/accounts.js +++ b/app/javascript/mastodon/reducers/accounts.js @@ -35,4 +35,4 @@ export default function accounts(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/accounts_counters.js b/app/javascript/mastodon/reducers/accounts_counters.js index 9ebf72af9..4e1256d1b 100644 --- a/app/javascript/mastodon/reducers/accounts_counters.js +++ b/app/javascript/mastodon/reducers/accounts_counters.js @@ -35,4 +35,4 @@ export default function accountsCounters(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/accounts_map.js b/app/javascript/mastodon/reducers/accounts_map.js index 444bbda19..8412ad4d0 100644 --- a/app/javascript/mastodon/reducers/accounts_map.js +++ b/app/javascript/mastodon/reducers/accounts_map.js @@ -17,4 +17,4 @@ export default function accountsMap(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/alerts.js b/app/javascript/mastodon/reducers/alerts.js index c62ab0dfd..5b3010a59 100644 --- a/app/javascript/mastodon/reducers/alerts.js +++ b/app/javascript/mastodon/reducers/alerts.js @@ -23,4 +23,4 @@ export default function alerts(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/announcements.js b/app/javascript/mastodon/reducers/announcements.js index 34e08eac8..b53f93a4a 100644 --- a/app/javascript/mastodon/reducers/announcements.js +++ b/app/javascript/mastodon/reducers/announcements.js @@ -99,4 +99,4 @@ export default function announcementsReducer(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/compose.js b/app/javascript/mastodon/reducers/compose.js index 60b0cfb57..9ce7e97ed 100644 --- a/app/javascript/mastodon/reducers/compose.js +++ b/app/javascript/mastodon/reducers/compose.js @@ -108,7 +108,7 @@ function statusToTextMentions(state, status) { } return set.union(status.get('mentions').filterNot(mention => mention.get('id') === me).map(mention => `@${mention.get('acct')} `)).join(''); -}; +} function clearAll(state) { return state.withMutations(map => { @@ -126,7 +126,7 @@ function clearAll(state) { map.set('poll', null); map.set('idempotencyKey', uuid()); }); -}; +} function appendMedia(state, media, file) { const prevSize = state.get('media_attachments').size; @@ -146,7 +146,7 @@ function appendMedia(state, media, file) { map.set('sensitive', true); } }); -}; +} function removeMedia(state, mediaId) { const prevSize = state.get('media_attachments').size; @@ -159,7 +159,7 @@ function removeMedia(state, mediaId) { map.set('sensitive', false); } }); -}; +} const insertSuggestion = (state, position, token, completion, path) => { return state.withMutations(map => { @@ -524,4 +524,4 @@ export default function compose(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/contexts.js b/app/javascript/mastodon/reducers/contexts.js index 4c2d6cc8a..7aa95b5d5 100644 --- a/app/javascript/mastodon/reducers/contexts.js +++ b/app/javascript/mastodon/reducers/contexts.js @@ -103,4 +103,4 @@ export default function replies(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/conversations.js b/app/javascript/mastodon/reducers/conversations.js index 975418eda..feccf18f0 100644 --- a/app/javascript/mastodon/reducers/conversations.js +++ b/app/javascript/mastodon/reducers/conversations.js @@ -113,4 +113,4 @@ export default function conversations(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/custom_emojis.js b/app/javascript/mastodon/reducers/custom_emojis.js index d2c801ade..0338c2e53 100644 --- a/app/javascript/mastodon/reducers/custom_emojis.js +++ b/app/javascript/mastodon/reducers/custom_emojis.js @@ -12,4 +12,4 @@ export default function custom_emojis(state = initialState, action) { } return state; -}; +} diff --git a/app/javascript/mastodon/reducers/domain_lists.js b/app/javascript/mastodon/reducers/domain_lists.js index eff97fbd6..6bf8cee68 100644 --- a/app/javascript/mastodon/reducers/domain_lists.js +++ b/app/javascript/mastodon/reducers/domain_lists.js @@ -22,4 +22,4 @@ export default function domainLists(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/filters.js b/app/javascript/mastodon/reducers/filters.js index f4f97cd3a..e1f014046 100644 --- a/app/javascript/mastodon/reducers/filters.js +++ b/app/javascript/mastodon/reducers/filters.js @@ -41,4 +41,4 @@ export default function filters(state = ImmutableMap(), action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/height_cache.js b/app/javascript/mastodon/reducers/height_cache.js index 2f5716fae..77a59c8c5 100644 --- a/app/javascript/mastodon/reducers/height_cache.js +++ b/app/javascript/mastodon/reducers/height_cache.js @@ -20,4 +20,4 @@ export default function statuses(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/list_adder.js b/app/javascript/mastodon/reducers/list_adder.js index b8c1b0e26..b144610a5 100644 --- a/app/javascript/mastodon/reducers/list_adder.js +++ b/app/javascript/mastodon/reducers/list_adder.js @@ -44,4 +44,4 @@ export default function listAdderReducer(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/list_editor.js b/app/javascript/mastodon/reducers/list_editor.js index 91e524dd5..6e020dbe6 100644 --- a/app/javascript/mastodon/reducers/list_editor.js +++ b/app/javascript/mastodon/reducers/list_editor.js @@ -93,4 +93,4 @@ export default function listEditorReducer(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/lists.js b/app/javascript/mastodon/reducers/lists.js index f30ffbcbd..ba3e2b3cb 100644 --- a/app/javascript/mastodon/reducers/lists.js +++ b/app/javascript/mastodon/reducers/lists.js @@ -34,4 +34,4 @@ export default function lists(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/markers.js b/app/javascript/mastodon/reducers/markers.js index fb1572ff5..e3d1b1936 100644 --- a/app/javascript/mastodon/reducers/markers.js +++ b/app/javascript/mastodon/reducers/markers.js @@ -22,4 +22,4 @@ export default function markers(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/media_attachments.js b/app/javascript/mastodon/reducers/media_attachments.js index 24119f628..7a155b77f 100644 --- a/app/javascript/mastodon/reducers/media_attachments.js +++ b/app/javascript/mastodon/reducers/media_attachments.js @@ -12,4 +12,4 @@ export default function meta(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/meta.js b/app/javascript/mastodon/reducers/meta.js index 5040a340f..755dd7390 100644 --- a/app/javascript/mastodon/reducers/meta.js +++ b/app/javascript/mastodon/reducers/meta.js @@ -19,4 +19,4 @@ export default function meta(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/missed_updates.js b/app/javascript/mastodon/reducers/missed_updates.js index b71d62d82..a3141d854 100644 --- a/app/javascript/mastodon/reducers/missed_updates.js +++ b/app/javascript/mastodon/reducers/missed_updates.js @@ -18,4 +18,4 @@ export default function missed_updates(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/modal.js b/app/javascript/mastodon/reducers/modal.js index 3eab07d9d..edde2f947 100644 --- a/app/javascript/mastodon/reducers/modal.js +++ b/app/javascript/mastodon/reducers/modal.js @@ -36,4 +36,4 @@ export default function modal(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/notifications.js b/app/javascript/mastodon/reducers/notifications.js index eb5368198..44fa1c613 100644 --- a/app/javascript/mastodon/reducers/notifications.js +++ b/app/javascript/mastodon/reducers/notifications.js @@ -303,4 +303,4 @@ export default function notifications(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/picture_in_picture.js b/app/javascript/mastodon/reducers/picture_in_picture.js index 48772ae7f..10fbc1695 100644 --- a/app/javascript/mastodon/reducers/picture_in_picture.js +++ b/app/javascript/mastodon/reducers/picture_in_picture.js @@ -22,4 +22,4 @@ export default function pictureInPicture(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/push_notifications.js b/app/javascript/mastodon/reducers/push_notifications.js index c48cfb705..6a62ecb81 100644 --- a/app/javascript/mastodon/reducers/push_notifications.js +++ b/app/javascript/mastodon/reducers/push_notifications.js @@ -50,4 +50,4 @@ export default function push_subscriptions(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/relationships.js b/app/javascript/mastodon/reducers/relationships.js index 850ece351..a3b01a0f6 100644 --- a/app/javascript/mastodon/reducers/relationships.js +++ b/app/javascript/mastodon/reducers/relationships.js @@ -82,4 +82,4 @@ export default function relationships(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/search.js b/app/javascript/mastodon/reducers/search.js index 7dceac6b9..d3e71da9d 100644 --- a/app/javascript/mastodon/reducers/search.js +++ b/app/javascript/mastodon/reducers/search.js @@ -64,4 +64,4 @@ export default function search(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/settings.js b/app/javascript/mastodon/reducers/settings.js index f9d3236e4..f48d58bdc 100644 --- a/app/javascript/mastodon/reducers/settings.js +++ b/app/javascript/mastodon/reducers/settings.js @@ -171,4 +171,4 @@ export default function settings(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/status_lists.js b/app/javascript/mastodon/reducers/status_lists.js index 106f64d32..b1716e9cf 100644 --- a/app/javascript/mastodon/reducers/status_lists.js +++ b/app/javascript/mastodon/reducers/status_lists.js @@ -145,4 +145,4 @@ export default function statusLists(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/statuses.js b/app/javascript/mastodon/reducers/statuses.js index c30c1e2cc..a39ac6b64 100644 --- a/app/javascript/mastodon/reducers/statuses.js +++ b/app/javascript/mastodon/reducers/statuses.js @@ -92,4 +92,4 @@ export default function statuses(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/suggestions.js b/app/javascript/mastodon/reducers/suggestions.js index 1a6e66ee7..0b4bc7789 100644 --- a/app/javascript/mastodon/reducers/suggestions.js +++ b/app/javascript/mastodon/reducers/suggestions.js @@ -34,4 +34,4 @@ export default function suggestionsReducer(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/tags.js b/app/javascript/mastodon/reducers/tags.js index d24098e39..ea73af452 100644 --- a/app/javascript/mastodon/reducers/tags.js +++ b/app/javascript/mastodon/reducers/tags.js @@ -22,4 +22,4 @@ export default function tags(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/timelines.js b/app/javascript/mastodon/reducers/timelines.js index d72109e69..973e3cf18 100644 --- a/app/javascript/mastodon/reducers/timelines.js +++ b/app/javascript/mastodon/reducers/timelines.js @@ -223,4 +223,4 @@ export default function timelines(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/trends.js b/app/javascript/mastodon/reducers/trends.js index 3e01bd07d..3d5f6ecd6 100644 --- a/app/javascript/mastodon/reducers/trends.js +++ b/app/javascript/mastodon/reducers/trends.js @@ -43,4 +43,4 @@ export default function trendsReducer(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/reducers/user_lists.js b/app/javascript/mastodon/reducers/user_lists.js index 88b51fb63..2a80cf639 100644 --- a/app/javascript/mastodon/reducers/user_lists.js +++ b/app/javascript/mastodon/reducers/user_lists.js @@ -187,4 +187,4 @@ export default function userLists(state = initialState, action) { default: return state; } -}; +} diff --git a/app/javascript/mastodon/store/configureStore.js b/app/javascript/mastodon/store/configureStore.js index e18af842f..0e0d45c66 100644 --- a/app/javascript/mastodon/store/configureStore.js +++ b/app/javascript/mastodon/store/configureStore.js @@ -12,4 +12,4 @@ export default function configureStore() { errorsMiddleware(), soundsMiddleware(), ), window.__REDUX_DEVTOOLS_EXTENSION__ ? window.__REDUX_DEVTOOLS_EXTENSION__() : f => f)); -}; +} diff --git a/app/javascript/mastodon/uuid.js b/app/javascript/mastodon/uuid.js index be1899305..0d2cfaa77 100644 --- a/app/javascript/mastodon/uuid.js +++ b/app/javascript/mastodon/uuid.js @@ -1,3 +1,3 @@ export default function uuid(a) { return a ? (a^Math.random() * 16 >> a / 4).toString(16) : ([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g, uuid); -}; +} diff --git a/streaming/index.js b/streaming/index.js index 34bf1d1fc..0350c488d 100644 --- a/streaming/index.js +++ b/streaming/index.js @@ -717,7 +717,7 @@ const startWorker = async (workerId) => { Object.keys(req.cachedFilters).forEach((key) => { req.cachedFilters[key].regexp = new RegExp(req.cachedFilters[key].keywords.map(([keyword, whole_word]) => { - let expr = keyword.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');; + let expr = keyword.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); if (whole_word) { if (/^[\w]/.test(expr)) { -- cgit From c5da2f8c439f86f809d750b42aa11cdeef6b7c1f Mon Sep 17 00:00:00 2001 From: Holden Foreman <38192823+hs4man21@users.noreply.github.com> Date: Thu, 5 Jan 2023 07:36:42 -0500 Subject: Add aria-hidden to 'Hide image' button in MediaGallery since the button is useless to screen reader users (#22513) --- app/javascript/mastodon/components/icon_button.js | 4 ++++ app/javascript/mastodon/components/media_gallery.js | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) (limited to 'app/javascript/mastodon/components') diff --git a/app/javascript/mastodon/components/icon_button.js b/app/javascript/mastodon/components/icon_button.js index 49858f2e2..b7daf82a4 100644 --- a/app/javascript/mastodon/components/icon_button.js +++ b/app/javascript/mastodon/components/icon_button.js @@ -27,6 +27,7 @@ export default class IconButton extends React.PureComponent { counter: PropTypes.number, obfuscateCount: PropTypes.bool, href: PropTypes.string, + ariaHidden: PropTypes.bool, }; static defaultProps = { @@ -36,6 +37,7 @@ export default class IconButton extends React.PureComponent { animate: false, overlay: false, tabIndex: '0', + ariaHidden: false, }; state = { @@ -102,6 +104,7 @@ export default class IconButton extends React.PureComponent { counter, obfuscateCount, href, + ariaHidden, } = this.props; const { @@ -142,6 +145,7 @@ export default class IconButton extends React.PureComponent { type='button' aria-label={title} aria-expanded={expanded} + aria-hidden={ariaHidden} title={title} className={classes} onClick={this.handleClick} diff --git a/app/javascript/mastodon/components/media_gallery.js b/app/javascript/mastodon/components/media_gallery.js index bf7982cea..e4a8be338 100644 --- a/app/javascript/mastodon/components/media_gallery.js +++ b/app/javascript/mastodon/components/media_gallery.js @@ -345,7 +345,7 @@ class MediaGallery extends React.PureComponent { ); } else if (visible) { - spoilerButton = ; + spoilerButton = ; } else { spoilerButton = ( -
+
+
+ + +
-
- {results.map(this.renderItem)} -
-
- )} - +
+ {results.map(this.renderItem)} +
+ ); } @@ -266,14 +253,11 @@ class LanguageDropdown extends React.PureComponent { placement: 'bottom', }; - handleToggle = ({ target }) => { - const { top } = target.getBoundingClientRect(); - + handleToggle = () => { if (this.state.open && this.activeElement) { this.activeElement.focus({ preventScroll: true }); } - this.setState({ placement: top * 2 < innerHeight ? 'bottom' : 'top' }); this.setState({ open: !this.state.open }); } @@ -293,13 +277,25 @@ class LanguageDropdown extends React.PureComponent { onChange(value); } + setTargetRef = c => { + this.target = c; + } + + findTarget = () => { + return this.target; + } + + handleOverlayEnter = (state) => { + this.setState({ placement: state.placement }); + } + render () { const { value, intl, frequentlyUsedLanguages } = this.props; const { open, placement } = this.state; return ( -
-
+
+
- - + + {({ props, placement }) => ( +
+
+ +
+
+ )}
); diff --git a/app/javascript/mastodon/features/compose/components/privacy_dropdown.js b/app/javascript/mastodon/features/compose/components/privacy_dropdown.js index 1f0e998d3..09bbc8e99 100644 --- a/app/javascript/mastodon/features/compose/components/privacy_dropdown.js +++ b/app/javascript/mastodon/features/compose/components/privacy_dropdown.js @@ -2,9 +2,7 @@ import React from 'react'; import PropTypes from 'prop-types'; import { injectIntl, defineMessages } from 'react-intl'; import IconButton from '../../../components/icon_button'; -import Overlay from 'react-overlays/lib/Overlay'; -import Motion from '../../ui/util/optional_motion'; -import spring from 'react-motion/lib/spring'; +import Overlay from 'react-overlays/Overlay'; import { supportsPassiveEvents } from 'detect-passive-events'; import classNames from 'classnames'; import Icon from 'mastodon/components/icon'; @@ -29,15 +27,10 @@ class PrivacyDropdownMenu extends React.PureComponent { style: PropTypes.object, items: PropTypes.array.isRequired, value: PropTypes.string.isRequired, - placement: PropTypes.string.isRequired, onClose: PropTypes.func.isRequired, onChange: PropTypes.func.isRequired, }; - state = { - mounted: false, - }; - handleDocumentClick = e => { if (this.node && !this.node.contains(e.target)) { this.props.onClose(); @@ -101,7 +94,6 @@ class PrivacyDropdownMenu extends React.PureComponent { document.addEventListener('click', this.handleDocumentClick, false); document.addEventListener('touchend', this.handleDocumentClick, listenerOptions); if (this.focusedItem) this.focusedItem.focus({ preventScroll: true }); - this.setState({ mounted: true }); } componentWillUnmount () { @@ -118,31 +110,23 @@ class PrivacyDropdownMenu extends React.PureComponent { } render () { - const { mounted } = this.state; - const { style, items, placement, value } = this.props; + const { style, items, value } = this.props; return ( - - {({ opacity, scaleX, scaleY }) => ( - // It should not be transformed when mounting because the resulting - // size will be used to determine the coordinate of the menu by - // react-overlays -
- {items.map(item => ( -
-
- -
- -
- {item.text} - {item.meta} -
-
- ))} +
+ {items.map(item => ( +
+
+ +
+ +
+ {item.text} + {item.meta} +
- )} - + ))} +
); } @@ -168,7 +152,7 @@ class PrivacyDropdown extends React.PureComponent { placement: 'bottom', }; - handleToggle = ({ target }) => { + handleToggle = () => { if (this.props.isUserTouching && this.props.isUserTouching()) { if (this.state.open) { this.props.onModalClose(); @@ -179,11 +163,9 @@ class PrivacyDropdown extends React.PureComponent { }); } } else { - const { top } = target.getBoundingClientRect(); if (this.state.open && this.activeElement) { this.activeElement.focus({ preventScroll: true }); } - this.setState({ placement: top * 2 < innerHeight ? 'bottom' : 'top' }); this.setState({ open: !this.state.open }); } } @@ -247,6 +229,18 @@ class PrivacyDropdown extends React.PureComponent { } } + setTargetRef = c => { + this.target = c; + } + + findTarget = () => { + return this.target; + } + + handleOverlayEnter = (state) => { + this.setState({ placement: state.placement }); + } + render () { const { value, container, disabled, intl } = this.props; const { open, placement } = this.state; @@ -255,7 +249,7 @@ class PrivacyDropdown extends React.PureComponent { return (
-
+
- - + + {({ props, placement }) => ( +
+
+ +
+
+ )}
); diff --git a/app/javascript/mastodon/features/compose/components/search.js b/app/javascript/mastodon/features/compose/components/search.js index 8254fb607..5820f8ca2 100644 --- a/app/javascript/mastodon/features/compose/components/search.js +++ b/app/javascript/mastodon/features/compose/components/search.js @@ -1,9 +1,7 @@ import React from 'react'; import PropTypes from 'prop-types'; import { defineMessages, injectIntl, FormattedMessage } from 'react-intl'; -import Overlay from 'react-overlays/lib/Overlay'; -import Motion from '../../ui/util/optional_motion'; -import spring from 'react-motion/lib/spring'; +import Overlay from 'react-overlays/Overlay'; import { searchEnabled } from '../../../initial_state'; import Icon from 'mastodon/components/icon'; @@ -14,31 +12,20 @@ const messages = defineMessages({ class SearchPopout extends React.PureComponent { - static propTypes = { - style: PropTypes.object, - }; - render () { - const { style } = this.props; const extraInformation = searchEnabled ? : ; return ( -
- - {({ opacity, scaleX, scaleY }) => ( -
-

- -
    -
  • #example
  • -
  • @username@domain
  • -
  • URL
  • -
  • URL
  • -
- - {extraInformation} -
- )} -
+
+

+ +
    +
  • #example
  • +
  • @username@domain
  • +
  • URL
  • +
  • URL
  • +
+ + {extraInformation}
); } @@ -115,6 +102,10 @@ class Search extends React.PureComponent { this.setState({ expanded: false }); } + findTarget = () => { + return this.searchForm; + } + render () { const { intl, value, submitted } = this.props; const { expanded } = this.state; @@ -140,8 +131,14 @@ class Search extends React.PureComponent {
- - + + {({ props, placement }) => ( +
+
+ +
+
+ )}
); diff --git a/app/javascript/mastodon/reducers/dropdown_menu.js b/app/javascript/mastodon/reducers/dropdown_menu.js index a78a11acc..51bf9375b 100644 --- a/app/javascript/mastodon/reducers/dropdown_menu.js +++ b/app/javascript/mastodon/reducers/dropdown_menu.js @@ -4,12 +4,12 @@ import { DROPDOWN_MENU_CLOSE, } from '../actions/dropdown_menu'; -const initialState = Immutable.Map({ openId: null, placement: null, keyboard: false, scroll_key: null }); +const initialState = Immutable.Map({ openId: null, keyboard: false, scroll_key: null }); export default function dropdownMenu(state = initialState, action) { switch (action.type) { case DROPDOWN_MENU_OPEN: - return state.merge({ openId: action.id, placement: action.placement, keyboard: action.keyboard, scroll_key: action.scroll_key }); + return state.merge({ openId: action.id, keyboard: action.keyboard, scroll_key: action.scroll_key }); case DROPDOWN_MENU_CLOSE: return state.get('openId') === action.id ? state.set('openId', null).set('scroll_key', null) : state; default: diff --git a/app/javascript/styles/mastodon-light/diff.scss b/app/javascript/styles/mastodon-light/diff.scss index 928af8453..123fe0c67 100644 --- a/app/javascript/styles/mastodon-light/diff.scss +++ b/app/javascript/styles/mastodon-light/diff.scss @@ -285,22 +285,8 @@ html { .dropdown-menu { background: $white; - &__arrow { - &.left { - border-left-color: $white; - } - - &.top { - border-top-color: $white; - } - - &.bottom { - border-bottom-color: $white; - } - - &.right { - border-right-color: $white; - } + &__arrow::before { + background-color: $white; } &__item { diff --git a/app/javascript/styles/mastodon/components.scss b/app/javascript/styles/mastodon/components.scss index 0439156f1..ad59303f4 100644 --- a/app/javascript/styles/mastodon/components.scss +++ b/app/javascript/styles/mastodon/components.scss @@ -363,8 +363,8 @@ } } -.dropdown-menu { - position: absolute; +body > [data-popper-placement] { + z-index: 3; } .invisible { @@ -1932,6 +1932,42 @@ a.account__display-name { text-decoration: none; } +.dropdown-animation { + animation: dropdown 300ms cubic-bezier(0.1, 0.7, 0.1, 1); + + @keyframes dropdown { + from { + opacity: 0; + transform: scaleX(0.85) scaleY(0.75); + } + + to { + opacity: 1; + transform: scaleX(1) scaleY(1); + } + } + + &.top { + transform-origin: bottom; + } + + &.right { + transform-origin: left; + } + + &.bottom { + transform-origin: top; + } + + &.left { + transform-origin: right; + } + + .reduce-motion & { + animation: none; + } +} + .dropdown { display: inline-block; } @@ -2016,36 +2052,42 @@ a.account__display-name { .dropdown-menu__arrow { position: absolute; - width: 0; - height: 0; - border: 0 solid transparent; - &.left { - right: -5px; - margin-top: -5px; - border-width: 5px 0 5px 5px; - border-left-color: $ui-secondary-color; + &::before { + content: ''; + display: block; + width: 14px; + height: 5px; + background-color: $ui-secondary-color; + mask-image: url("data:image/svg+xml;utf8,"); } &.top { bottom: -5px; - margin-left: -7px; - border-width: 5px 7px 0; - border-top-color: $ui-secondary-color; + + &::before { + transform: rotate(180deg); + } + } + + &.right { + left: -9px; + + &::before { + transform: rotate(-90deg); + } } &.bottom { top: -5px; - margin-left: -7px; - border-width: 0 7px 5px; - border-bottom-color: $ui-secondary-color; } - &.right { - left: -5px; - margin-top: -5px; - border-width: 5px 5px 5px 0; - border-right-color: $ui-secondary-color; + &.left { + right: -9px; + + &::before { + transform: rotate(90deg); + } } } @@ -4524,7 +4566,6 @@ a.status-card.compact:hover { } .privacy-dropdown__dropdown { - position: absolute; background: $simple-background-color; box-shadow: 2px 4px 15px rgba($base-shadow-color, 0.4); border-radius: 4px; @@ -4630,7 +4671,6 @@ a.status-card.compact:hover { .language-dropdown { &__dropdown { - position: absolute; background: $simple-background-color; box-shadow: 2px 4px 15px rgba($base-shadow-color, 0.4); border-radius: 4px; @@ -4877,7 +4917,6 @@ a.status-card.compact:hover { .modal-root__modal { pointer-events: auto; display: flex; - z-index: 9999; } .video-modal__container { diff --git a/package.json b/package.json index c8143f8a5..93ed7ea87 100644 --- a/package.json +++ b/package.json @@ -98,7 +98,7 @@ "react-intl": "^2.9.0", "react-motion": "^0.5.2", "react-notification": "^6.8.5", - "react-overlays": "^0.9.3", + "react-overlays": "^5.2.1", "react-redux": "^7.2.9", "react-redux-loading-bar": "^5.0.4", "react-router-dom": "^4.1.1", diff --git a/yarn.lock b/yarn.lock index 33268a586..6e56f51d1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1029,7 +1029,7 @@ dependencies: regenerator-runtime "^0.12.0" -"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.10.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.13.10", "@babel/runtime@^7.15.4", "@babel/runtime@^7.18.9", "@babel/runtime@^7.2.0", "@babel/runtime@^7.20.7", "@babel/runtime@^7.3.1", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3", "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.4", "@babel/runtime@^7.9.2": +"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.10.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.13.10", "@babel/runtime@^7.13.8", "@babel/runtime@^7.15.4", "@babel/runtime@^7.18.9", "@babel/runtime@^7.2.0", "@babel/runtime@^7.20.7", "@babel/runtime@^7.3.1", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3", "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.20.7.tgz#fcb41a5a70550e04a7b708037c7c32f7f356d8fd" integrity sha512-UF0tvkUtxwAgZ5W/KrkHf0Rn0fdnLDU9ScxBrEVNUprE/MzirjK4MJUX1/BVDv00Sv8cljtukVK1aky++X1SjQ== @@ -1562,11 +1562,23 @@ resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.11.tgz#aeb16f50649a91af79dbe36574b66d0f9e4d9f71" integrity sha512-3NsZsJIA/22P3QUyrEDNA2D133H4j224twJrdipXN38dpnIOzAbUDtOwkcJ5pXmn75w7LSQDjA4tO9dm1XlqlA== +"@popperjs/core@^2.11.6": + version "2.11.6" + resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.6.tgz#cee20bd55e68a1720bdab363ecf0c821ded4cd45" + integrity sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw== + "@rails/ujs@^6.1.7": version "6.1.7" resolved "https://registry.yarnpkg.com/@rails/ujs/-/ujs-6.1.7.tgz#b09dc5b2105dd267e8374c47e4490240451dc7f6" integrity sha512-0e7WQ4LE/+LEfW2zfAw9ppsB6A8RmxbdAUPAF++UT80epY+7emuQDkKXmaK0a9lp6An50RvzezI0cIQjp1A58w== +"@restart/hooks@^0.4.7": + version "0.4.7" + resolved "https://registry.yarnpkg.com/@restart/hooks/-/hooks-0.4.7.tgz#d79ca6472c01ce04389fc73d4a79af1b5e33cd39" + integrity sha512-ZbjlEHcG+FQtpDPHd7i4FzNNvJf2enAwZfJbpM8CW7BhmOAbsHpZe3tsHwfQUrBuyrxWqPYp2x5UMnilWcY22A== + dependencies: + dequal "^2.0.2" + "@rollup/plugin-babel@^5.2.0": version "5.3.1" resolved "https://registry.yarnpkg.com/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz#04bc0608f4aa4b2e4b1aebf284344d0f68fda283" @@ -1880,6 +1892,15 @@ "@types/scheduler" "*" csstype "^3.0.2" +"@types/react@>=16.9.11": + version "18.0.26" + resolved "https://registry.yarnpkg.com/@types/react/-/react-18.0.26.tgz#8ad59fc01fef8eaf5c74f4ea392621749f0b7917" + integrity sha512-hCR3PJQsAIXyxhTNSiDFY//LhnMZWpNNr5etoCqx/iUfGc5gXWtQR2Phl908jVR6uPXacojQWTg4qRpkxTuGug== + dependencies: + "@types/prop-types" "*" + "@types/scheduler" "*" + csstype "^3.0.2" + "@types/resolve@1.17.1": version "1.17.1" resolved "https://registry.yarnpkg.com/@types/resolve/-/resolve-1.17.1.tgz#3afd6ad8967c77e4376c598a82ddd58f46ec45d6" @@ -1919,6 +1940,11 @@ resolved "https://registry.yarnpkg.com/@types/trusted-types/-/trusted-types-2.0.2.tgz#fc25ad9943bcac11cceb8168db4f275e0e72e756" integrity sha512-F5DIZ36YVLE+PN+Zwws4kJogq47hNgX3Nx6WyDJ3kcplxyke3XIzB8uK5n/Lpm1HBsbGzd6nmGehL8cPekP+Tg== +"@types/warning@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/warning/-/warning-3.0.0.tgz#0d2501268ad8f9962b740d387c4654f5f8e23e52" + integrity sha512-t/Tvs5qR47OLOr+4E9ckN8AmP2Tf16gWq+/qA4iUGS/OOyHVO8wv2vjJuX8SNOUTJyWb+2t7wJm6cXILFnOROA== + "@types/yargs-parser@*": version "15.0.0" resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-15.0.0.tgz#cb3f9f741869e20cce330ffbeb9271590483882d" @@ -3967,6 +3993,11 @@ depd@~1.1.2: resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= +dequal@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be" + integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA== + des.js@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.1.tgz#5382142e1bdc53f85d86d53e5f4aa7deb91e0843" @@ -4072,7 +4103,7 @@ dom-accessibility-api@^0.5.6: resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.5.6.tgz#3f5d43b52c7a3bd68b5fb63fa47b4e4c1fdf65a9" integrity sha512-DplGLZd8L1lN64jlT27N9TVSESFR5STaEJvX+thCby7fuCHonfPpAlodYc3vuUYbDuDec5w8AMP7oCM5TWFsqw== -dom-helpers@^3.2.1, dom-helpers@^3.4.0: +dom-helpers@^3.4.0: version "3.4.0" resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-3.4.0.tgz#e9b369700f959f62ecde5a6babde4bccd9169af8" integrity sha512-LnuPJ+dwqKDIyotW1VzmOZ5TONUN7CwkCR5hrgawTUbkBGYdeoNLZo6nNfGkCrjtE1nXXaj7iMMpDa8/d9WoIA== @@ -4087,6 +4118,14 @@ dom-helpers@^5.0.1: "@babel/runtime" "^7.6.3" csstype "^2.6.7" +dom-helpers@^5.2.0: + version "5.2.1" + resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.2.1.tgz#d9400536b2bf8225ad98fe052e029451ac40e902" + integrity sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA== + dependencies: + "@babel/runtime" "^7.8.7" + csstype "^3.0.2" + dom-serializer@0: version "0.2.2" resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51" @@ -8630,14 +8669,6 @@ prompts@^2.0.1: kleur "^3.0.3" sisteransi "^1.0.4" -prop-types-extra@^1.0.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/prop-types-extra/-/prop-types-extra-1.1.1.tgz#58c3b74cbfbb95d304625975aa2f0848329a010b" - integrity sha512-59+AHNnHYCdiC+vMwY52WmvP5dM3QLeoumYuEyceQDi9aEhtwN9zIQ2ZNo25sMyXnbh32h+P1ezDsUpUH3JAew== - dependencies: - react-is "^16.3.2" - warning "^4.0.0" - prop-types@^15.5.10, prop-types@^15.5.4, prop-types@^15.5.8, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1: version "15.8.1" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" @@ -8874,7 +8905,7 @@ react-intl@^2.9.0: intl-relativeformat "^2.1.0" invariant "^2.1.1" -react-is@^16.12.0, react-is@^16.13.1, react-is@^16.3.2, react-is@^16.7.0, react-is@^16.8.6: +react-is@^16.12.0, react-is@^16.13.1, react-is@^16.7.0, react-is@^16.8.6: version "16.13.1" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== @@ -8910,17 +8941,19 @@ react-notification@^6.8.5: dependencies: prop-types "^15.6.2" -react-overlays@^0.9.3: - version "0.9.3" - resolved "https://registry.yarnpkg.com/react-overlays/-/react-overlays-0.9.3.tgz#5bac8c1e9e7e057a125181dee2d784864dd62902" - integrity sha512-u2T7nOLnK+Hrntho4p0Nxh+BsJl0bl4Xuwj/Y0a56xywLMetgAfyjnDVrudLXsNcKGaspoC+t3C1V80W9QQTdQ== - dependencies: - classnames "^2.2.5" - dom-helpers "^3.2.1" - prop-types "^15.5.10" - prop-types-extra "^1.0.1" - react-transition-group "^2.2.1" - warning "^3.0.0" +react-overlays@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/react-overlays/-/react-overlays-5.2.1.tgz#49dc007321adb6784e1f212403f0fb37a74ab86b" + integrity sha512-GLLSOLWr21CqtJn8geSwQfoJufdt3mfdsnIiQswouuQ2MMPns+ihZklxvsTDKD3cR2tF8ELbi5xUsvqVhR6WvA== + dependencies: + "@babel/runtime" "^7.13.8" + "@popperjs/core" "^2.11.6" + "@restart/hooks" "^0.4.7" + "@types/warning" "^3.0.0" + dom-helpers "^5.2.0" + prop-types "^15.7.2" + uncontrollable "^7.2.1" + warning "^4.0.3" react-redux-loading-bar@^5.0.4: version "5.0.4" @@ -9059,16 +9092,6 @@ react-toggle@^4.1.3: dependencies: classnames "^2.2.5" -react-transition-group@^2.2.1: - version "2.9.0" - resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-2.9.0.tgz#df9cdb025796211151a436c69a8f3b97b5b07c8d" - integrity sha512-+HzNTCHpeQyl4MJ/bdE0u6XRMe9+XG/+aL4mCxVN4DnPBQ0/5bfHWPDuOZUzYdMj94daZaZdCCc1Dzt9R/xSSg== - dependencies: - dom-helpers "^3.4.0" - loose-envify "^1.4.0" - prop-types "^15.6.2" - react-lifecycles-compat "^3.0.4" - react-transition-group@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-4.3.0.tgz#fea832e386cf8796c58b61874a3319704f5ce683" @@ -10788,6 +10811,16 @@ unbox-primitive@^1.0.2: has-symbols "^1.0.3" which-boxed-primitive "^1.0.2" +uncontrollable@^7.2.1: + version "7.2.1" + resolved "https://registry.yarnpkg.com/uncontrollable/-/uncontrollable-7.2.1.tgz#1fa70ba0c57a14d5f78905d533cf63916dc75738" + integrity sha512-svtcfoTADIB0nT9nltgjujTi7BzVmwjZClOmskKu/E8FW9BXzg9os8OLr4f8Dlnk0rYWJIWr4wv9eKUXiQvQwQ== + dependencies: + "@babel/runtime" "^7.6.3" + "@types/react" ">=16.9.11" + invariant "^2.2.4" + react-lifecycles-compat "^3.0.4" + unicode-canonical-property-names-ecmascript@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc" @@ -11062,7 +11095,7 @@ warning@^3.0.0: dependencies: loose-envify "^1.0.0" -warning@^4.0.0, warning@^4.0.1: +warning@^4.0.1, warning@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/warning/-/warning-4.0.3.tgz#16e9e077eb8a86d6af7d64aa1e05fd85b4678ca3" integrity sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w== -- cgit