about summary refs log tree commit diff
path: root/app/javascript
AgeCommit message (Collapse)Author
2022-02-10Add editing for published statuses (#17320)Eugen Rochko
* Add editing for published statuses * Fix change of multiple-choice boolean in poll not resetting votes * Remove the ability to update existing media attachments for now
2022-02-09Add edit history to web UI (#17390)Eugen Rochko
* Add edit history to web UI * Change history reducer to store items per status * Fix missing loading prop
2022-01-23Change `percent` to `rate` in retention metrics API (#16910)Claire
2022-01-20Fix text being incorrectly pre-selected in composer textarea on /share (#17339)Claire
Fixes #17295
2022-01-19Add support for editing for published statuses (#16697)Eugen Rochko
* Add support for editing for published statuses * Fix references to stripped-out code * Various fixes and improvements * Further fixes and improvements * Fix updates being potentially sent to unauthorized recipients * Various fixes and improvements * Fix wrong words in test * Fix notifying accounts that were tagged but were not in the audience * Fix mistake
2022-01-17Add notifications for statuses deleted by moderators (#17204)Eugen Rochko
2022-01-17Add support for private pinned posts (#16954)Claire
* Add support for private pinned toots * Allow local user to pin private toots * Change wording to avoid "direct message"
2022-01-10Gradually increase retry waiting for media processing (#17271)Jeong Arm
2021-12-28Fix media descriptions not being used for client-side filtering (#17206)Claire
Fix oversight in #13837
2021-12-26Fix tag rendering error in hashtag column settings (#17184)Rens Groothuijsen
* Flatten tags in configuration to regular array before converting to JSON * Render filter tags using toJS instead of toJSON
2021-12-17Change title of retention chart (#16909)Claire
Changes from “Retention” to “User retention rate by month after sign-up”. This should make it much clearer to people not familiar with retention charts what it actually means.
2021-12-17Change list title input styling (#17092)Claire
2021-12-15ignore hashtag suggestions if they vary only in case (#16460)David Sterry
* ignore hashtag suggestions if they vary only in case * remove console.logs and unused args * consistently add space when dismissing suggestions * linting
2021-12-05Show correct error message if chosen password is too long (#17082)Rens Groothuijsen
* Add correct error message for exceeding max length on password confirmation field * Code style fixes
2021-12-05Add batch suspend for accounts in admin UI (#17009)Eugen Rochko
2021-11-26Fix searching for additional hashtags in hashtag column (#17054)Claire
2021-11-26Fix color of hashtag column settings inputs (#17058)Claire
Fixes #17057
2021-11-26Fix opening wrong profile when clicking on username of boosting user in ↵Claire
WebUI (#17060) Fixes #16799
2021-11-26Remove Keybase integration (#17045)Eugen Rochko
2021-11-25Fix handling of recursive toots in WebUI (#17041)Claire
2021-11-25Add trending links (#16917)Eugen Rochko
* Add trending links * Add overriding specific links trendability * Add link type to preview cards and only trend articles Change trends review notifications from being sent every 5 minutes to being sent every 2 hours Change threshold from 5 unique accounts to 15 unique accounts * Fix tests
2021-11-19Fix overflow of long profile fields in admin view (#17010)Claire
2021-11-19Fix background-color of emoji-mart selector (#17011)Claire
Reverts part of #16907 to fix hardcoded color
2021-11-18Add lazy load to emoji-mart (#16907)Mashiro
* perf: lazyload emoji-mart! * Bump lazyload
2021-10-28ran `yarn manage:translations en` (#16912)mayaeh
2021-10-25Split context for filter bar and unread markers (#16865)Sasha Sorokin
On notifications page, in settings, "Show" for quick filter bar and unread notifications markers use the same string, while being placed in the separate contexts - under different settings categories. This commit splits the contexts, creating new strings: - "Show filter bar" in place of "Show" for filter bar; - "Highlight unread notifications" in place of "Show" for unread notification markers, which are now simply called "Highlighting"; - There's also "Unread notifications" in place of "Unread notification markers" string to accompany the changes to "Show" string under that category. All new strings have new IDs, which will cause previous strings to invalidate on the next translation update and new strings to be created. This will help Mastodon translators to know that there are changes and improve translation in accordance to the source string update.
2021-10-21Enhance dashboard styles (#16884)Mashiro
* Display sparkline graph on Chrome * Heatmap auto overflow * Change grid columns number on small screen * Please codeclimate bot * Remove graph height
2021-10-17New Crowdin updates (#16354)Eugen Rochko
* New translations en.json (Latvian) [ci skip] * New translations en.json (Hebrew) [ci skip] * New translations en.json (Hebrew) [ci skip] * New translations simple_form.en.yml (Breton) [ci skip] * New translations simple_form.en.yml (Breton) [ci skip] * New translations simple_form.en.yml (Breton) [ci skip] * New translations simple_form.en.yml (Breton) [ci skip] * New translations en.json (Icelandic) [ci skip] * New translations en.json (Icelandic) [ci skip] * New translations en.json (Chinese Simplified) [ci skip] * New translations en.yml (Chinese Simplified) [ci skip] * New translations en.yml (Chinese Simplified) [ci skip] * New translations simple_form.en.yml (Chinese Simplified) [ci skip] * New translations devise.en.yml (Chinese Simplified) [ci skip] * New translations en.yml (Chinese Simplified) [ci skip] * New translations devise.en.yml (Chinese Simplified) [ci skip] * New translations en.json (Persian) [ci skip] * New translations en.json (Finnish) [ci skip] * New translations doorkeeper.en.yml (Finnish) [ci skip] * New translations doorkeeper.en.yml (Finnish) [ci skip] * New translations doorkeeper.en.yml (Finnish) [ci skip] * New translations doorkeeper.en.yml (Finnish) [ci skip] * New translations doorkeeper.en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (French) [ci skip] * New translations en.yml (French) [ci skip] * New translations en.json (Russian) [ci skip] * New translations en.json (Russian) [ci skip] * New translations en.json (Russian) [ci skip] * New translations activerecord.en.yml (Latvian) [ci skip] * New translations devise.en.yml (Latvian) [ci skip] * New translations devise.en.yml (Latvian) [ci skip] * New translations devise.en.yml (Latvian) [ci skip] * New translations devise.en.yml (Latvian) [ci skip] * New translations devise.en.yml (Latvian) [ci skip] * New translations devise.en.yml (Latvian) [ci skip] * New translations doorkeeper.en.yml (Latvian) [ci skip] * New translations en.yml (Slovak) [ci skip] * New translations doorkeeper.en.yml (Latvian) [ci skip] * New translations en.yml (Slovak) [ci skip] * New translations doorkeeper.en.yml (Latvian) [ci skip] * New translations doorkeeper.en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Esperanto) [ci skip] * New translations en.yml (Esperanto) [ci skip] * New translations devise.en.yml (Latvian) [ci skip] * New translations devise.en.yml (Latvian) [ci skip] * New translations devise.en.yml (Latvian) [ci skip] * New translations devise.en.yml (Latvian) [ci skip] * New translations devise.en.yml (Latvian) [ci skip] * New translations doorkeeper.en.yml (Latvian) [ci skip] * New translations doorkeeper.en.yml (Latvian) [ci skip] * New translations doorkeeper.en.yml (Latvian) [ci skip] * New translations doorkeeper.en.yml (Latvian) [ci skip] * New translations devise.en.yml (Latvian) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations en.yml (Slovak) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations simple_form.en.yml (Slovak) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations simple_form.en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.json (Danish) [ci skip] * New translations en.yml (Arabic) [ci skip] * New translations en.yml (Catalan) [ci skip] * New translations en.yml (Czech) [ci skip] * New translations en.yml (Danish) [ci skip] * New translations en.yml (Spanish) [ci skip] * New translations en.yml (German) [ci skip] * New translations en.yml (Greek) [ci skip] * New translations en.yml (Basque) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations en.yml (Slovak) [ci skip] * New translations en.yml (Persian) [ci skip] * New translations en.yml (Swedish) [ci skip] * New translations en.yml (French) [ci skip] * New translations en.yml (Chinese Simplified) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Italian) [ci skip] * New translations en.yml (Sinhala) [ci skip] * New translations en.yml (Sardinian) [ci skip] * New translations en.yml (Esperanto) [ci skip] * New translations en.yml (Vietnamese) [ci skip] * New translations en.yml (Turkish) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Chinese Traditional) [ci skip] * New translations en.yml (Galician) [ci skip] * New translations en.yml (Icelandic) [ci skip] * New translations en.yml (Portuguese, Brazilian) [ci skip] * New translations en.yml (Indonesian) [ci skip] * New translations en.yml (Tamil) [ci skip] * New translations en.yml (Spanish, Argentina) [ci skip] * New translations en.yml (Serbian (Cyrillic)) [ci skip] * New translations en.yml (Albanian) [ci skip] * New translations en.yml (Japanese) [ci skip] * New translations en.yml (Georgian) [ci skip] * New translations en.yml (Korean) [ci skip] * New translations en.yml (Lithuanian) [ci skip] * New translations en.yml (Dutch) [ci skip] * New translations en.yml (Norwegian) [ci skip] * New translations en.yml (Polish) [ci skip] * New translations en.yml (Portuguese) [ci skip] * New translations en.yml (Russian) [ci skip] * New translations en.yml (Slovenian) [ci skip] * New translations en.yml (Spanish, Mexico) [ci skip] * New translations en.yml (Norwegian Nynorsk) [ci skip] * New translations en.yml (Estonian) [ci skip] * New translations en.yml (Kazakh) [ci skip] * New translations en.json (Norwegian Nynorsk) [ci skip] * New translations en.yml (Thai) [ci skip] * New translations en.yml (Bengali) [ci skip] * New translations en.yml (Asturian) [ci skip] * New translations en.yml (Scottish Gaelic) [ci skip] * New translations en.yml (Occitan) [ci skip] * New translations en.json (Kurmanji (Kurdish)) [ci skip] * New translations en.yml (Kurmanji (Kurdish)) [ci skip] * New translations en.json (Sorani (Kurdish)) [ci skip] * New translations en.yml (Breton) [ci skip] * New translations en.yml (Malay) [ci skip] * New translations en.yml (Welsh) [ci skip] * New translations en.yml (Chinese Traditional, Hong Kong) [ci skip] * New translations en.yml (Tatar) [ci skip] * New translations en.yml (Malayalam) [ci skip] * New translations en.yml (Sorani (Kurdish)) [ci skip] * New translations en.yml (Corsican) [ci skip] * New translations en.yml (Kabyle) [ci skip] * New translations en.yml (Catalan) [ci skip] * New translations en.yml (Polish) [ci skip] * New translations en.yml (Russian) [ci skip] * New translations en.yml (Russian) [ci skip] * New translations en.yml (Catalan) [ci skip] * New translations en.yml (Kurmanji (Kurdish)) [ci skip] * New translations en.json (Russian) [ci skip] * New translations en.yml (Czech) [ci skip] * New translations en.json (Russian) [ci skip] * New translations en.yml (Czech) [ci skip] * New translations en.yml (Czech) [ci skip] * New translations en.yml (Turkish) [ci skip] * New translations en.yml (Occitan) [ci skip] * New translations en.yml (Czech) [ci skip] * New translations en.yml (Kurmanji (Kurdish)) [ci skip] * New translations en.yml (Czech) [ci skip] * New translations en.yml (Danish) [ci skip] * New translations en.yml (Danish) [ci skip] * New translations en.yml (Kurmanji (Kurdish)) [ci skip] * New translations en.yml (Norwegian) [ci skip] * New translations en.yml (Kurmanji (Kurdish)) [ci skip] * New translations en.yml (Chinese Traditional) [ci skip] * New translations en.yml (Galician) [ci skip] * New translations en.yml (Galician) [ci skip] * New translations en.yml (French) [ci skip] * New translations en.yml (French) [ci skip] * New translations en.yml (Chinese Traditional) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations en.yml (Albanian) [ci skip] * New translations en.yml (Albanian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Portuguese) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.json (Portuguese) [ci skip] * New translations en.yml (Portuguese) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Spanish) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations en.yml (Italian) [ci skip] * New translations en.yml (Indonesian) [ci skip] * New translations en.yml (Indonesian) [ci skip] * New translations devise.en.yml (French) [ci skip] * Run `i18n-tasks normalize` * Run `yarn manage:translations` * Trim unnecessary line breaks Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2021-10-14Add font-display to display text before loading (#16330)Jeong Arm
2021-10-14Add graphs and retention metrics to admin dashboard (#16829)Eugen Rochko
2021-10-13Add single option votes tooltip in polls (#16849)Sasha Sorokin
Adds a tooltip when hovering over the percentages in a poll showing how many votes were cast for that option. Also removes descriptions from messages here since they are not picked up by Crowdin anyway and might be confusing to other developers :) Fixes #16820
2021-10-01Improve hover and focus style in columns settings (#16222)Mélanie Chauvel
* Make focus visible on switches and text buttons in columns settings * Make hover/focus visible on left/right arrows in columns settings Use same style as for station action bar (reply/boost/fav/etc.) * Tab first to “Pin/Unpin” before left/right arrows in columns settings
2021-09-30Fix drawer tab menu routes in advanced web ui (#16793)Mashiro
2021-09-27Fix incorrect use of old WebUI paths (#16773)Claire
* Fix incorrect use of old WebUI paths PR #16171 renamed some routes but missed some occurrences. Without #16772, this leads to unreachable routes in those cases. * Fix floating action button being displayed on statuses and compose screen
2021-09-27Add aliases for WebUI routes that were renamed in #16171 (#16772)Claire
* Add aliases for some WebUI routes that were renamed in #16171 Accounts and statuses routes need more work as they use different parameters. * Add aliases for /statuses/* routes * Add aliases for /accounts/* WebUI routes Does not correctly set the “active” state on the navigation tabs but this is a minor issue. * Fix some routes * Fix /accounts/:id/{media,followers,following} not loading on legacy routes
2021-09-26Change routing paths to use usernames in web UI (#16171)Eugen Rochko
2021-08-25Fix follow request count to dynamically update (#16652)matildepark
2021-08-11Fix crash if a notification contains an unprocessed media attachment (#16573)Claire
* Refactor AttachmentList * Do not crash if a notification contains an unprocessed media attachment Fixes #16530 * Fix spacing in compact form
2021-08-11Fix download button color in audio player (#16572)Claire
Fixes #16571
2021-08-06Fix logout link not working in safari (#16574)Takeshi Umeda
2021-08-05Fix trends layout (#16570)Jeong Arm
2021-07-25Add confirmation modal when closing media edit modal with unsaved changes ↵Claire
(#16518) * Add confirmation modal when closing media edit modal with unsaved changes * Move focal point media state to redux so it does not get erased by confirmation dialog * Change upload modal behavior to keep it open while saving changes Instead of closing it immediately and losing changes if they fail to save… * Make it work with react-intl 2.9
2021-07-25Fix “open” link of media modal not closing modal (#16524)Claire
2021-07-23Fix crashes with Microsoft Translate on Microsoft Edge (#16525)Claire
Fixes #16509 Microsoft Edge with translation enabled rewrites the DOM in ways that confuse react and prevent it from working properly. Wrapping the offending parts in a span avoids this issue.
2021-07-17Fix replying from modal (#16516)Claire
Fixes #16515 Not using a router object somehow made `this.history` lag behind the real browser history whenever pushing a new history item in `replyCompose`. Not using the context-provided router in this case was an oversight made when porting glitch-soc changes in #16499.
2021-07-14Fix minor code quality issues (#16502)Claire
2021-07-13Change references to tootsuite/mastodon to mastodon/mastodon (#16491)Claire
* Change references to tootsuite/mastodon to mastodon/mastodon * Remove obsolete test fixture * Replace occurrences of tootsuite/mastodon with mastodon/mastodon in CHANGELOG And a few other places
2021-07-13Improve modal flow and back button handling (#16499)Claire
* Refactor shouldUpdateScroll passing So far, shouldUpdateScroll has been manually passed down from the very top of the React component hierarchy even though it is a static function common to all ScrollContainer instances, so replaced that with a custom class extending ScrollContainer. * Generalize “press back to close modal” to any modal and to public pages * Fix boost confirmation modal closing media modal
2021-07-05Fix pop-in player display when poster has long username or handle (#16468)Claire
2021-06-27Fix #16407 (#16432)David Sterry