Nick Schonning
db2c58d47a
Enable ESLint no-useless-escape ( #23311 )
2023-02-13 15:12:14 +01:00
Claire
bae17ebe5e
Fix attached media uploads not being cleared when replying to a post ( #23504 )
2023-02-10 22:03:35 +01:00
Christian Schmidt
c1f32c9c14
Show spinner while loading follow requests ( #23386 )
2023-02-06 16:50:08 +01:00
Christian Schmidt
67744ee779
Spell check input fields ( #23395 )
2023-02-04 16:34:21 +01:00
Eugen Rochko
8f590b0a21
Add setting for status page URL ( #23390 )
2023-02-04 04:56:06 +01:00
Akira Ouchi
e73b55184b
autofocus the compose form again on /share ( #23094 )
2023-01-30 14:49:10 +01:00
Nick Schonning
131e6403cc
Update hasOwnProperty calls for ESLint ( #23307 )
2023-01-30 03:07:51 +01:00
Nick Schonning
c49213f0ea
Upgrade ESlint to v8 ( #23305 )
2023-01-30 01:45:35 +01:00
Nick Schonning
d9088ef327
Separate ESLint CI from Superlinter ( #23029 )
...
* Separate ESLint CI from Superlinter
* Correct JS indenting level
* Remove extra semicolons with ESLint autofix
2023-01-29 23:44:03 +01:00
Christian Schmidt
2a4f2216d6
Add lang attribute to image description textarea and poll option field ( #23293 )
2023-01-29 19:00:19 +01:00
Claire
83a8efa9ca
Add lang attribute to compose textarea and CW field ( #23240 )
...
Fixes #19858
2023-01-24 18:49:21 +01:00
Mina Her
3cf60ba267
Make <Audio> to handle volume change ( #23187 )
2023-01-24 16:24:46 +01:00
Claire
98779535fe
Fix missing filtering on some notification types ( #23211 )
...
* Fix missing warning-type filtering on some notification types
* Fix missing hide-type filtering on some notification types
2023-01-23 13:21:50 +01:00
Claire
3588fbc766
Fix confusing wording in the sign in banner ( #22490 )
...
* Fix confusing wording in the sign in banner
* Split into two sentences
2023-01-18 17:15:23 +01:00
Connor Shea
30e895299c
Add listing of followed hashtags ( #21773 )
...
* Add followed_tags route.
This at least gets us to the point where the page can actually be
rendered, although it doesn't display any hashtags (yet?).
Attempting to implement #20763 .
* Fix minor issues.
* I've got the followed tags data partially working
But the Hashtag component errors for some reason. Something about the
value of the history attribute being invalid.
* Fix a mistake in the code
* Minor change.
* Get the followed hashtags list fully working.
Still need to add the Follow/Unfollow buttons, though.
* Resolve JS linter issues.
* Add pagination logic to followed tags list view.
However, it currently loads further pages immediately on page load, so
that's not ideal. Need to figure that one out.
* Appease the linter.
* Apply suggestions from code review
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
* Fixes and resolve some other feedback.
* Use set/update instead of setIn/updateIn.
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2023-01-18 16:44:33 +01:00
Claire
3970a6f433
Add option to make the landing page be /about even when trends are enabled ( #20808 )
...
* Add option to make the landing page be /about even when trends are enabled
* Restablish /explore as landing page by default
2023-01-18 16:43:58 +01:00
Claire
4b92e59f4f
Add support for editing media description and focus point of already-posted statuses ( #20878 )
...
* Add backend support for editing media attachments of existing posts
* Allow editing media attachments of already-posted toots
* Add tests
2023-01-18 16:33:55 +01:00
Jeong Arm
1b2ef60cec
Make visible change for new post notification setting icon ( #22541 )
2023-01-18 16:29:07 +01:00
Claire
f4a6365f55
Remove hardcoded width from dropdown overlays ( #23062 )
...
* Remove hardcoded width from dropdown overlays
* Fix emoji picker position
2023-01-12 16:43:02 +01:00
Peter Simonsson
fd33bcb3b2
Fix dropdown menu positions when scrolling ( #22916 )
...
* Update react-overlays to latest version
* Fix breaking changes in dropdown menus
* Use react-overlays built-in arrow positioning feature
* Re-implemented `.dropdown-menu__arrow` to have a defined width and height to improve positioning
* Moved wrapping div (`.dropdown-menu` from `DropdownMenu` to `Dropdown`)
* Wrap button in a span to solve issue with ref
* Temporarily remove animations
* Fix breaking changes in emoji picker
* Wrap EmojiPickerMenu in a div where react-overlays’ ref is added
* Fix breaking changes in language dropdown
* Fix breaking changes in privacy dropdown
* Fix breaking changes in search form
* Add animations back using `@keyframes`
* Fix arrow color in light theme
* Fix linting issue
* Remove unused `mounted` state
* Remove `placement` state from components and redux
And remove the placement state from props of the menu components.
* Remove abolution position to fix flip issue
* Remove z-index to fix modals and overlay positions
* Fix lint issues
* Set placement in privacy and language components
Copy the placement state into the `PrivacyDropdown` and `LanguageDropdown` components, to apply correct styling to the buttons depending on which placement the Overlay has.
* Move `placement` state to correct component
2023-01-11 21:58:46 +01:00
Holden Foreman
2bcb081ce8
Fix footer link circle dividers' screen reader accessibility by adding aria-hidden ( #22576 )
...
* Fix footer link circle dividers' screen reader accessibility by adding aria-hidden
* Remove a circle erroneously added in prev commit, and make code more DRY
2023-01-09 03:54:03 +01:00
Akira Ouchi
2195f21524
Add variable autoFocus to video ( #15281 ) ( #22778 )
...
* add variable autoFocus to video
* set autoFocus in video_modal.js
2023-01-09 03:52:37 +01:00
Claire
18d00055f4
Add dropdown menu item to open admin interface for remote domains ( #21895 )
...
* Allow /admin/instances/:domain to handle IDNs
* Add dropdown menu item to open admin interface for remote domains
2023-01-05 14:03:46 +01:00
Holden Foreman
83888739fd
Add aria-hidden to content warning field when dimmed so that it is not confusing to screen reader users ( #22568 )
2023-01-05 13:39:58 +01:00
Nick Schonning
06b68490d1
Enable eslint:recommended ruleset ( #22433 )
...
* Enable ESLint recommended ruleset
* Disable failing ESLint recommended rules
* Remove rules shadowed by eslint:recommended
2022-12-19 00:51:37 +09:00
Claire
70415714f1
Add follow request banner on account header ( #20785 )
...
* Add requested_by to relationship maps
* Display whether an account has requested to follow you on their profile
2022-12-15 18:50:11 +01:00
Holden Foreman
c761e7a5ef
Fix language surrounding disability in prompts for alt text and other media descriptions ( #20923 )
2022-12-15 18:46:13 +01:00
Bramus!
7fbc17afa2
Fix media markup ( #21420 )
...
This brings the markup of the MediaItem component on par with the Item component from media_gallery.
Co-authored-by: Effy Elden <effy@effy.space>
2022-12-15 18:37:47 +01:00
Rens Groothuijsen
726c7dea31
Display search popout at fixed screen position ( #16463 )
...
* Display search popout at fixed screen position
* Attach search popout to search box
2022-12-15 17:38:50 +01:00
Arnout Engelen
9f63c428e1
Don't autofocus the compose form ( #16517 )
...
When opening a page such as /web/timelines/home in a desktop browser, the
cursor was automatically placed in the textarea of the compose form.
When using the keyboard for navigation (using a browser plugin like vimium or
vim vixen, or just to hit 'space' to scroll down a page), you have remember to
leave the field before using that.
Since you only visit the page to write a new post some of the time, this PR
attempts to have nothing focused initially (and require the user to click or
e.g. use 'tab' to focus the textarea).
Tested:
* /web/timeslines/home no longer autofocuses the compose box
* pressing the 'n' hotkey still focuses the compose box
* clicking 'reply' for a post still focuses the compose box
* replying to a CW'ed post still focuses the compose box
* introducing the CW field still focuses the CW field
* introducing the CW field for a reply still focuses the CW field
* removing the CW field still focuses the compose box
* /web/statuses/new still autofocuses the compose box
fixes #15862
2022-12-15 17:37:05 +01:00
Meisam
059d64a59e
set activation for tag follow button ( #21629 )
...
Co-authored-by: meisam <meisam@noreply.codeberg.org>
2022-12-15 17:04:52 +01:00
Nick Schonning
72a8af8088
Fix typo in handler function call name ( #21829 )
2022-12-15 16:37:17 +01:00
Yamagishi Kazutoshi
58200132d0
FormattedMessage
must be used directly (#20982 )
...
* `FormattedMessage` must be used directly
* rollback
2022-12-15 16:20:46 +01:00
Pleclown
3a59ffde8d
Adding 12 hours option for polls ( #21131 )
...
* Adding 12 hours option for polls
Adding 12 hours option for polls
* Adding 12 hours option for polls
Missing > on a line
2022-12-15 16:20:34 +01:00
Alex Stine
903e5a3f45
Fix hidden label causing accessibility issue for search inputs ( #21275 )
...
* Try unhiding search label.
* Use aria-label. Remove label as empty labels are useless.
* Remove addition of package-lock.json.
2022-12-15 16:20:21 +01:00
cadars
52a50c5e43
Make handle more easily selectable on profile page ( #21479 )
...
* Make handle more easily selectable on profile page
* Wrap handle in a span
* Add `user-select: all` to span
* remove whitespace
2022-12-13 19:43:03 +01:00
Claire
51098035ed
Fix “Sign up” button with closed registrations not opening modal on mobile ( #22060 )
...
Fixes #20840
2022-12-07 00:25:40 +01:00
Claire
2d4d99f135
Fix expanded statuses not always being scrolled into view ( #21797 )
2022-11-28 16:42:04 +01:00
Connor Shea
cec1e902e0
Make the 'Trending now' header a link to Explore. ( #21759 )
...
This keeps the same design that exists currently, but makes "Trending
now" into a link to the Hashtags section of "Explore".
Resolves #21758 .
2022-11-27 23:49:32 +01:00
Claire
3ffaa966b0
Fix infinite loading instead of soft 404 for non-existing remote accounts ( #21303 )
...
Fixes #21278 , #21021
2022-11-27 20:48:12 +01:00
James Adney
c0dcf15d1e
fix gif autoplay on iOS ( #21422 )
2022-11-27 20:46:23 +01:00
Claire
fe421257e5
Fix “Share @{name}'s profile” profile menu item ( #21490 )
2022-11-27 20:42:17 +01:00
Claire
585cc1a604
Remove use of DOMParser in front-end emoji rewriting code ( #20758 )
...
* Add jstest for node ordering in emojify
* Remove use of DOMParser in front-end emoji rewriting code
2022-11-17 11:24:59 +01:00
Levi Bard
654d348aac
Make the button that expands the publish form differentiable from the button that publishes a post ( #20864 )
2022-11-17 10:53:38 +01:00
nyura123dev
aaca78da78
Fix safari explore disappearing tabs ( #20917 )
...
* fix disappearing Explore tabs on Safari
* fix lint
Co-authored-by: nyura <nyura@hidden.com>
2022-11-17 08:54:43 +01:00
Claire
ccbca50a25
Fix nodes order being sometimes mangled when rewriting emoji ( #20677 )
...
* Fix front-end emoji tests
* Fix nodes order being sometimes mangled when rewriting emoji
2022-11-14 22:14:55 +01:00
Claire
625e086996
Fix emoji substitution not applying only to text nodes in Web UI ( #20640 )
...
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2022-11-14 20:26:03 +01:00
Eugen Rochko
6da9df774e
Fix dropdown menu on profiles not being accessible on narrow screens in web UI ( #20620 )
2022-11-14 06:05:10 +01:00
trwnh
07229089a6
Change in-app links to keep you in-app ( #20540 )
...
* Change in-app links to keep you in-app
* refactor Permalink into Link
* rewrite link hrefs in status content
* please linter
* please linter again
2022-11-13 21:10:20 +01:00
Claire
93a6ebc83d
Fix WebUI crash when listing server blocks and rationale is not available ( #20408 )
...
Regression from #20391
Fixes #20405
2022-11-11 21:23:03 +01:00
Claire
31005aad12
Add the ability to edit media attachment metadata for any unattached media ( #20402 )
2022-11-11 21:22:17 +01:00
Cutls
553b169d48
Do not show drag&drop dialog when not logined ( #20400 )
...
* Cannot upload until login
* and do not fire upload
* change username props to context
2022-11-11 21:19:48 +01:00
Claire
5e796dc6f8
Remove “No description added” media warning in edit mode ( #20393 )
...
Editing media metadata is not currently possible in edit mode, the button would
open the modal but saving the changes would error out.
2022-11-11 09:20:24 +01:00
Eugen Rochko
6774c339b2
Fix domain blocks on about page not working well on small screens in web UI ( #20391 )
2022-11-11 08:26:58 +01:00
Eugen Rochko
16122761c5
Fix confusing wording in interaction modal in web UI ( #20302 )
2022-11-10 08:49:48 +01:00
Eugen Rochko
ef582dc4f2
Add option to open original page in dropdowns of remote content in web UI ( #20299 )
...
Change profile picture click to open profile picture in modal in web UI
2022-11-10 08:49:35 +01:00
Sasha Sorokin
d055d75172
Remove aria-pressed where it's redundant ( #19912 )
...
This commit removes aria-pressed attribute from all elements which
contents or other descriptive attributes change in active state,
effectively replacing the meaning of the button, in which case
aria-pressed, an attribute specified whether the button is currently
pressed, would create a confusion. (Spoiler: it's everywhere).
See https://github.com/mastodon/mastodon/issues/13545#issuecomment-1304886969
2022-11-08 17:31:32 +01:00
Claire
608343c135
Fix opening the language picker scrolling the single-column view to the top ( #19983 )
...
Fixes #19915
2022-11-08 03:52:52 +01:00
Sunny Ripert
8515bc7962
Add form element on focal point modal ( #19834 )
...
* Add form element on focal point modal
* Add type="button" for detection button
2022-11-07 15:41:42 +01:00
Sunny Ripert
34c269310d
Fix console log error on column settings load ( #19886 )
2022-11-07 03:39:48 +01:00
Eugen Rochko
ca8d52c2a4
Change design of new list form in web UI ( #19801 )
2022-11-05 23:06:32 +01:00
Eugen Rochko
a442f481f8
Fix missing interpolation of domain in disabled account banner in web UI ( #19788 )
2022-11-05 21:11:35 +01:00
Eugen Rochko
7c65f52692
Change design of moved account banner in web UI ( #19790 )
2022-11-05 21:11:24 +01:00
Claire
312d616371
Change sign-in banner to reflect disabled or moved account status ( #19773 )
2022-11-05 18:28:13 +01:00
Sunny Ripert
887976814a
Fix JavaScript console warning when loading notifications ( #19772 )
2022-11-05 13:45:06 +01:00
Sunny Ripert
c95d9aab56
Fix JavaScript console error on upload editing status ( #19769 )
2022-11-05 13:43:47 +01:00
Claire
9616f5bb22
Fix compose form submission reloading web interface ( #19762 )
...
* Fix compose form submission reloading web interface
Fix regression introduced by #19742
* Fix various compose form buttons being handled like submit buttons
* Fix coding style issue
* Fix missing onClick prop check
2022-11-05 13:43:37 +01:00
Sunny Ripert
0165449e3a
A11y: Explicit <form> element around compose area ( #19742 )
2022-11-04 17:08:08 +01:00
Eugen Rochko
e02812d5b6
Add assets from Twemoji 14.0 ( #19733 )
2022-11-04 16:08:41 +01:00
Eugen Rochko
139ea4c981
Fix limited account hint referencing "your" server when logged out ( #19711 )
2022-11-04 02:28:37 +01:00
Eugen Rochko
5825402ed5
Fix design of verified links in web UI ( #19709 )
2022-11-04 02:28:00 +01:00
Claire
cbb440bbc2
Fix being unable to withdraw follow request when confirmation modal is disabled ( #19687 )
...
* Fix being unable to withdraw follow request when unfollow confirmation modal is disabled
Fixes #19569
* Fix “unfollow” being inadequately used for withdrawing follow requests from account card
2022-11-03 16:05:39 +01:00
Eugen Rochko
2d9a85db6e
Change design of link footer ( #19562 )
2022-10-31 13:06:17 +01:00
Eugen Rochko
30ef110224
Fix upload progress not communicating processing phase in web UI ( #19530 )
2022-10-29 20:05:53 +02:00
Eugen Rochko
55af04b253
Fix logged out search and changed logged-in search placeholder ( #19514 )
2022-10-29 13:32:49 +02:00
Eugen Rochko
5fa340931e
Fix closed registrations message not appearing in web UI ( #19508 )
...
Regression from #19486
2022-10-28 19:34:22 +02:00
Eugen Rochko
371d969403
Fix missing delete and redraft link in web UI ( #19485 )
2022-10-27 19:17:15 +02:00
Eugen Rochko
d2eb726962
Fix notifications about deleted reports not being also deleted ( #19475 )
...
* Fix notifications about deleted reports not being also deleted
* Fix notification with empty report crashing web UI
Fix #18909
2022-10-27 02:10:54 +02:00
Claire
2277913f3f
Add closed registrations modal ( #19437 )
2022-10-26 19:35:55 +02:00
Eugen Rochko
8ebff0efcb
Change post editing to be enabled in web UI ( #19103 )
2022-10-26 15:23:00 +02:00
Eugen Rochko
f8ca3bb2a1
Add ability to view previous edits of a status in admin UI ( #19462 )
...
* Add ability to view previous edits of a status in admin UI
* Change moderator access to posts to be controlled by a separate policy
2022-10-26 13:42:29 +02:00
Claire
267978d4fe
Remove navigation links to /explore when trends are disabled ( #19415 )
...
* Remove navigation links to /explore when trends are disabled
* Do not display trends interface when trends are disabled
2022-10-25 19:03:16 +02:00
Eugen Rochko
0ca29eaa3f
Change layout of posts in web UI ( #19423 )
2022-10-25 19:02:21 +02:00
Claire
dd76bbf8b7
Fix WebUI notification settings for new user and new report notifications ( #19436 )
...
Due to an error in operator priority, those settings would only show up if the
user role included the all-encompassing `administrator` permission and would
display `0` otherwise.
2022-10-24 17:37:46 +02:00
Eugen Rochko
73de39e632
Fix media, following and followers tabs in web UI ( #19426 )
2022-10-23 23:38:08 +02:00
Eugen Rochko
5452af2188
Fix redirecting to /publish
when compose form is visible in web UI ( #19427 )
2022-10-23 23:37:58 +02:00
Eugen Rochko
1fd6460b02
Change floating action button to be a button in header in web UI ( #19422 )
...
- Fix theme color
- Fix elephant being too big on error page on small screens
- Remove "Follows and Followers" link from navigation panel
2022-10-23 15:58:24 +02:00
Eugen Rochko
a43a823768
Add error boundary around routes in web UI ( #19412 )
...
* Add error boundary around routes in web UI
* Update app/javascript/mastodon/features/ui/util/react_router_helpers.js
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
* Update app/javascript/mastodon/features/ui/util/react_router_helpers.js
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
* Update app/javascript/mastodon/features/ui/components/bundle_column_error.js
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-10-22 23:18:32 +02:00
Claire
062b3c9090
Change landing page to be /about instead of /explore when trends are disabled ( #19414 )
2022-10-22 18:09:51 +02:00
Eugen Rochko
5e908c5a95
Fix case-sensitive look-up for profiles in web UI ( #19397 )
2022-10-21 10:06:03 +02:00
Eugen Rochko
23d367f544
Fix too many featured tags causing navigation panel scroll in web UI ( #19398 )
2022-10-21 10:05:50 +02:00
Eugen Rochko
74738b4993
Fix error on profile in web UI ( #19396 )
2022-10-20 14:47:42 +02:00
Eugen Rochko
839f893168
Change public accounts pages to mount the web UI ( #19319 )
...
* Change public accounts pages to mount the web UI
* Fix handling of remote usernames in routes
- When logged in, serve web app
- When logged out, redirect to permalink
- Fix `app-body` class not being set sometimes due to name conflict
* Fix missing `multiColumn` prop
* Fix failing test
* Use `discoverable` attribute to control indexing directives
* Fix `<ColumnLoading />` not using `multiColumn`
* Add `noindex` to accounts in REST API
* Change noindex directive to not be rendered by default before a route is mounted
* Add loading indicator for detailed status in web UI
* Fix missing indicator appearing while account is loading in web UI
2022-10-20 14:35:29 +02:00
Eugen Rochko
aefa9253d6
Change featured hashtags to be displayed in navigation panel ( #19382 )
2022-10-19 11:30:59 +02:00
prplecake
1b83040bd4
Don't use "unfollow language" when cancelling follow requests ( #19363 )
...
* Don't use "unfollow language" when cancelling follow requests
- Adds two new i18n keys: `confirmations.cancel_follow_request.confirm`
and `confirmations.cancel_follow_request.message`
- Update the header container to use new language
* "Withdraw follow request" instead of "cancel follow request"
2022-10-19 00:12:55 +02:00
Eugen Rochko
9c7f4ab8e8
Fix missing rules in report modal in web UI ( #19387 )
2022-10-18 19:33:11 +02:00
Eugen Rochko
8a1d10cb35
Fix error while server rules are loading in report modal in web UI ( #19385 )
2022-10-18 18:57:01 +02:00
Takeshi Umeda
4c7b5fb6c1
Add featured tags selector for WebUI ( #19358 )
...
* Add featured tags selector for WebUI
* Add title to tag count
2022-10-16 08:43:59 +02:00
Eugen Rochko
1bd00036c2
Change about page to be mounted in the web UI ( #19345 )
2022-10-13 14:42:37 +02:00
Yamagishi Kazutoshi
7afc6a630c
Redirect non-logged-in user to owner statuses on single user mode ( #19333 )
2022-10-12 21:07:30 +02:00
Yamagishi Kazutoshi
d787343325
Hide list panel from nav bar in mobile layout ( #19337 )
2022-10-10 21:41:25 +02:00
Yamagishi Kazutoshi
3eef8a7a81
Fix ColumnLink
labels not disappearing in mobile UI ( #19334 )
2022-10-10 06:51:16 +02:00
Yamagishi Kazutoshi
d3f1a010e5
Fix fedi/local timeline nav link always hide ( #19329 )
2022-10-09 19:26:14 +02:00
Eugen Rochko
0765324622
Fix intermediary responsive layout, accessibility on navigation in web UI ( #19324 )
...
* Fix intermediary responsive layout, accessibility on navigation in web UI
* `yarn test:jest -u`
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-10-09 15:55:32 +02:00
Claire
2b00ccdbd5
Fix button to dismiss suggestions not showing up in search results ( #19325 )
...
Fix a typo. The scope of this fix is pretty minor as that view only ever
shows up in one corner case, now.
2022-10-09 12:28:59 +02:00
Eugen Rochko
f41ec9af05
Add dismissable hints to various timelines in web UI ( #19315 )
...
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-10-09 06:08:37 +02:00
Yamagishi Kazutoshi
a5112b51fd
Add title to pages with missing title in Web UI ( #19322 )
2022-10-09 03:55:09 +02:00
Yamagishi Kazutoshi
e82467ca41
Remove timeline preview link from nav panel when not signed-in ( #19320 )
...
* Remove timeline preview link from nav panel when not signed-in
* Always enable server stats
2022-10-09 03:49:51 +02:00
Eugen Rochko
d4b0aa7450
Fix trying to connect to streaming API when logged out in web UI ( #19316 )
2022-10-08 07:15:50 +02:00
Eugen Rochko
a2ba011326
Change privacy policy to be rendered in web UI, add REST API ( #19310 )
...
Source string no longer localized, Markdown instead of raw HTML
2022-10-08 06:01:11 +02:00
Eugen Rochko
7fb738c837
Add interaction modal to logged-out web UI ( #19306 )
2022-10-07 10:14:31 +02:00
trwnh
99a43f0282
Fix #19304 ( #19305 )
2022-10-07 05:53:14 +02:00
Eugen Rochko
d2528b26b6
Add server banner to web app, add GET /api/v2/instance
to REST API ( #19294 )
2022-10-05 03:47:56 +02:00
Eugen Rochko
02ba9cfa35
Remove code for rendering public and hashtag timelines outside the web UI ( #19257 )
2022-10-04 20:13:46 +02:00
Eugen Rochko
e2b561e3a5
Fix logged-out web UI on smaller screens ( #19263 )
2022-10-04 20:13:23 +02:00
Claire
37eaa7fc01
Fix “Change subscribed languages” crashing in some situations ( #19268 )
2022-10-03 02:56:12 +02:00
Eugen Rochko
c8245e64c5
Fix wrong logo on start screen in web UI ( #19254 )
2022-09-29 08:55:14 +02:00
Eugen Rochko
36f4c32a38
Change path of privacy policy page ( #19249 )
2022-09-29 06:22:12 +02:00
Eugen Rochko
e623c302d5
Add sign-up button to logged-out web UI ( #19250 )
2022-09-29 06:21:51 +02:00
Eugen Rochko
43b5d5e38d
Add logged-out access to the web UI ( #18961 )
2022-09-29 04:39:33 +02:00
Eugen Rochko
0d6b878808
Add user content translations with configurable backends ( #19218 )
2022-09-23 23:00:12 +02:00
Claire
d2f7e30a28
Add privacy icons to report modal ( #19190 )
2022-09-21 22:46:57 +02:00
Eugen Rochko
50948b46aa
Add ability to filter followed accounts' posts by language ( #19095 )
2022-09-20 23:51:21 +02:00
Claire
50487db122
Add ability to filter individual posts ( #18945 )
...
* Add database table for status-specific filters
* Add REST endpoints, entities and attributes
* Show status filters in /filters interface
* Perform server-side filtering for individual posts filters
* Fix filtering on context mismatch
* Refactor `toServerSideType` by moving it to its own module
* Move loupe and delete icons to their own module
* Add ability to filter individual posts from WebUI
* Replace keyword list by warnings (expired, context mismatch)
* Refactor server-side filtering code
* Add tests
2022-08-25 04:27:47 +02:00
Rens Groothuijsen
e6979aa6d4
Add warning for sensitive audio posts ( #17885 )
2022-08-13 15:39:05 +02:00
Eugen Rochko
9608e720a4
Add ability to follow hashtags in web UI ( #18862 )
2022-07-22 15:52:06 +02:00
Yamagishi Kazutoshi
d5ca204e89
Bump react-redux-loading-bar from 4.0.8 to 5.0.4 ( #18562 )
2022-07-20 20:56:44 +09:00
Eugen Rochko
44b2ee3485
Add customizable user roles ( #18641 )
...
* Add customizable user roles
* Various fixes and improvements
* Add migration for old settings and fix tootctl role management
2022-07-05 02:41:40 +02:00
Claire
02851848e9
Revamp post filtering system ( #18058 )
...
* Add model for custom filter keywords
* Use CustomFilterKeyword internally
Does not change the API
* Fix /filters/edit and /filters/new
* Add migration tests
* Remove whole_word column from custom_filters (covered by custom_filter_keywords)
* Redesign /filters
Instead of a list, present a card that displays more information and handles
multiple keywords per filter.
* Redesign /filters/new and /filters/edit to add and remove keywords
This adds a new gem dependency: cocoon, as well as a npm dependency:
cocoon-js-vanilla. Those are used to easily populate and remove form fields
from the user interface when manipulating multiple keyword filters at once.
* Add /api/v2/filters to edit filter with multiple keywords
Entities:
- `Filter`: `id`, `title`, `filter_action` (either `hide` or `warn`), `context`
`keywords`
- `FilterKeyword`: `id`, `keyword`, `whole_word`
API endpoits:
- `GET /api/v2/filters` to list filters (including keywords)
- `POST /api/v2/filters` to create a new filter
`keywords_attributes` can also be passed to create keywords in one request
- `GET /api/v2/filters/:id` to read a particular filter
- `PUT /api/v2/filters/:id` to update a new filter
`keywords_attributes` can also be passed to edit, delete or add keywords in
one request
- `DELETE /api/v2/filters/:id` to delete a particular filter
- `GET /api/v2/filters/:id/keywords` to list keywords for a filter
- `POST /api/v2/filters/:filter_id/keywords/:id` to add a new keyword to a
filter
- `GET /api/v2/filter_keywords/:id` to read a particular keyword
- `PUT /api/v2/filter_keywords/:id` to edit a particular keyword
- `DELETE /api/v2/filter_keywords/:id` to delete a particular keyword
* Change from `irreversible` boolean to `action` enum
* Remove irrelevent `irreversible_must_be_within_context` check
* Fix /filters/new and /filters/edit with update for filter_action
* Fix Rubocop/Codeclimate complaining about task names
* Refactor FeedManager#phrase_filtered?
This moves regexp building and filter caching to the `CustomFilter` class.
This does not change the functional behavior yet, but this changes how the
cache is built, doing per-custom_filter regexps so that filters can be matched
independently, while still offering caching.
* Perform server-side filtering and output result in REST API
* Fix numerous filters_changed events being sent when editing multiple keywords at once
* Add some tests
* Use the new API in the WebUI
- use client-side logic for filters we have fetched rules for.
This is so that filter changes can be retroactively applied without
reloading the UI.
- use server-side logic for filters we haven't fetched rules for yet
(e.g. network error, or initial timeline loading)
* Minor optimizations and refactoring
* Perform server-side filtering on the streaming server
* Change the wording of filter action labels
* Fix issues pointed out by linter
* Change design of “Show anyway” link in accordence to review comments
* Drop “irreversible” filtering behavior
* Move /api/v2/filter_keywords to /api/v1/filters/keywords
* Rename `filter_results` attribute to `filtered`
* Rename REST::LegacyFilterSerializer to REST::V1::FilterSerializer
* Fix systemChannelId value in streaming server
* Simplify code by removing client-side filtering code
The simplifcation comes at a cost though: filters aren't retroactively
applied anymore.
2022-06-28 09:42:13 +02:00
Eugen Rochko
2936f42a14
Add notifications for new reports ( #18697 )
2022-06-27 09:30:15 +02:00
Eugen Rochko
17ba5e1e61
New Crowdin updates ( #18561 )
...
* New translations en.yml (Portuguese)
* New translations en.yml (Lithuanian)
* New translations en.yml (Serbian (Cyrillic))
* New translations en.yml (Turkish)
* New translations en.yml (Ukrainian)
* New translations en.yml (Chinese Traditional)
* New translations en.yml (Urdu (Pakistan))
* New translations en.yml (Icelandic)
* New translations en.yml (Portuguese, Brazilian)
* New translations en.yml (Indonesian)
* New translations en.yml (Tamil)
* New translations en.yml (Macedonian)
* New translations en.yml (Korean)
* New translations en.yml (Georgian)
* New translations en.yml (Slovak)
* New translations en.yml (Chinese Simplified)
* New translations en.yml (Swedish)
* New translations en.yml (Hebrew)
* New translations en.yml (Italian)
* New translations en.yml (Japanese)
* New translations en.yml (Russian)
* New translations en.yml (Slovenian)
* New translations en.yml (Armenian)
* New translations en.yml (Vietnamese)
* New translations en.yml (Scottish Gaelic)
* New translations en.yml (Occitan)
* New translations en.yml (Persian)
* New translations en.yml (Galician)
* New translations en.yml (Hungarian)
* New translations en.yml (Spanish, Argentina)
* New translations en.yml (Irish)
* New translations en.json (Arabic)
* New translations en.json (Irish)
* New translations en.json (German)
* New translations en.yml (Spanish, Mexico)
* New translations en.json (Turkish)
* New translations en.yml (Kabyle)
* New translations en.yml (Ido)
* New translations en.yml (Taigi)
* New translations en.yml (Silesian)
* New translations en.yml (Standard Moroccan Tamazight)
* New translations en.json (Japanese)
* New translations en.json (Korean)
* New translations en.json (Vietnamese)
* New translations en.json (Chinese Simplified)
* New translations en.yml (Sardinian)
* New translations en.json (Portuguese, Brazilian)
* New translations en.json (Asturian)
* New translations en.json (Scottish Gaelic)
* New translations en.json (Welsh)
* New translations en.json (Galician)
* New translations en.json (Slovak)
* New translations en.json (Icelandic)
* New translations en.yml (Sanskrit)
* New translations en.yml (Corsican)
* New translations en.yml (Bengali)
* New translations en.yml (Esperanto)
* New translations en.yml (Marathi)
* New translations en.yml (Croatian)
* New translations en.yml (Norwegian Nynorsk)
* New translations en.yml (Kazakh)
* New translations en.yml (Estonian)
* New translations en.yml (Latvian)
* New translations en.yml (Hindi)
* New translations en.yml (Malay)
* New translations en.yml (Telugu)
* New translations en.yml (Welsh)
* New translations en.yml (Uyghur)
* New translations en.yml (Sorani (Kurdish))
* New translations en.yml (Chinese Traditional, Hong Kong)
* New translations en.yml (Tatar)
* New translations en.yml (Malayalam)
* New translations en.yml (Breton)
* New translations en.yml (Sinhala)
* New translations en.yml (Cornish)
* New translations en.yml (Kannada)
* New translations en.yml (Asturian)
* New translations en.yml (Serbian (Latin))
* New translations en.yml (Kurmanji (Kurdish))
* New translations en.json (Sorani (Kurdish))
* New translations en.json (Greek)
* New translations en.json (Romanian)
* New translations en.json (French)
* New translations en.json (Spanish)
* New translations en.json (Afrikaans)
* New translations en.json (Bulgarian)
* New translations en.json (Czech)
* New translations en.json (Danish)
* New translations en.json (Basque)
* New translations en.json (Finnish)
* New translations en.json (Hebrew)
* New translations en.json (Spanish, Mexico)
* New translations en.json (Marathi)
* New translations en.json (Bengali)
* New translations en.json (English, United Kingdom)
* New translations en.json (Spanish, Argentina)
* New translations en.json (Tamil)
* New translations en.json (Croatian)
* New translations en.json (Persian)
* New translations en.json (Thai)
* New translations en.json (Malay)
* New translations en.json (Norwegian Nynorsk)
* New translations en.json (Kazakh)
* New translations en.json (Estonian)
* New translations en.json (Latvian)
* New translations en.json (Hindi)
* New translations en.json (Urdu (Pakistan))
* New translations en.json (Telugu)
* New translations en.json (Esperanto)
* New translations en.json (Indonesian)
* New translations en.json (Slovenian)
* New translations en.json (Chinese Traditional)
* New translations en.json (Dutch)
* New translations en.json (Norwegian)
* New translations en.json (Hungarian)
* New translations en.json (Armenian)
* New translations en.json (Italian)
* New translations en.json (Georgian)
* New translations en.json (Lithuanian)
* New translations en.json (Macedonian)
* New translations en.json (Punjabi)
* New translations en.json (Ukrainian)
* New translations en.json (Polish)
* New translations en.json (Portuguese)
* New translations en.json (Russian)
* New translations en.yml (English, United Kingdom)
* New translations en.json (Albanian)
* New translations en.json (Serbian (Cyrillic))
* New translations en.json (Swedish)
* New translations en.json (Uyghur)
* New translations en.json (Chinese Traditional, Hong Kong)
* New translations en.json (Corsican)
* New translations en.json (Silesian)
* New translations en.json (Taigi)
* New translations en.json (Ido)
* New translations en.json (Kabyle)
* New translations en.json (Sanskrit)
* New translations en.json (Sardinian)
* New translations en.json (Kurmanji (Kurdish))
* New translations en.json (Tatar)
* New translations en.json (Serbian (Latin))
* New translations en.json (Occitan)
* New translations en.json (Kannada)
* New translations en.json (Cornish)
* New translations en.json (Sinhala)
* New translations en.json (Breton)
* New translations en.json (Malayalam)
* New translations en.json (Standard Moroccan Tamazight)
* New translations en.json (Spanish, Argentina)
* New translations en.json (Galician)
* New translations en.json (Chinese Traditional)
* New translations en.json (Greek)
* New translations en.json (Swedish)
* New translations en.json (Russian)
* New translations en.json (Chinese Simplified)
* New translations en.json (Catalan)
* New translations en.json (Polish)
* New translations en.json (Latvian)
* New translations en.yml (Turkish)
* New translations en.json (Turkish)
* New translations en.json (Czech)
* New translations en.json (Slovenian)
* New translations en.json (Icelandic)
* New translations en.json (Hungarian)
* New translations en.json (Italian)
* New translations en.json (Vietnamese)
* New translations en.yml (Russian)
* New translations doorkeeper.en.yml (Russian)
* New translations en.yml (Japanese)
* New translations en.json (Japanese)
* New translations en.json (Danish)
* New translations en.json (Dutch)
* New translations en.json (Portuguese)
* New translations en.json (Frisian)
* New translations en.yml (Frisian)
* New translations simple_form.en.yml (Frisian)
* New translations activerecord.en.yml (Frisian)
* New translations devise.en.yml (Frisian)
* New translations doorkeeper.en.yml (Frisian)
* New translations en.json (Frisian)
* New translations en.yml (Breton)
* New translations en.json (Breton)
* New translations en.yml (Polish)
* New translations en.yml (Russian)
* New translations en.yml (Catalan)
* New translations en.yml (Korean)
* New translations en.yml (Spanish, Argentina)
* New translations en.json (Korean)
* New translations en.yml (Greek)
* New translations en.yml (Kurmanji (Kurdish))
* New translations en.yml (Ukrainian)
* New translations en.yml (Czech)
* New translations en.json (Ukrainian)
* New translations en.yml (Icelandic)
* New translations en.yml (Portuguese)
* New translations en.yml (Latvian)
* New translations en.yml (Hungarian)
* New translations en.json (Irish)
* New translations en.json (Irish)
* New translations en.json (Irish)
* New translations en.yml (Czech)
* New translations en.yml (Danish)
* New translations en.yml (Chinese Traditional)
* New translations en.yml (Galician)
* New translations en.yml (Galician)
* New translations simple_form.en.yml (Galician)
* New translations en.json (Frisian)
* New translations en.json (Frisian)
* New translations en.json (Frisian)
* New translations en.json (Frisian)
* New translations en.yml (Frisian)
* New translations en.json (Frisian)
* New translations en.yml (Frisian)
* New translations activerecord.en.yml (Frisian)
* New translations activerecord.en.yml (Frisian)
* New translations en.json (Frisian)
* New translations devise.en.yml (Frisian)
* New translations doorkeeper.en.yml (Frisian)
* New translations en.json (Frisian)
* New translations en.yml (Frisian)
* New translations en.yml (Slovenian)
* New translations en.json (Frisian)
* New translations en.yml (Frisian)
* New translations doorkeeper.en.yml (Frisian)
* New translations en.json (Frisian)
* New translations en.yml (Frisian)
* New translations simple_form.en.yml (Frisian)
* New translations en.json (Frisian)
* New translations en.yml (Frisian)
* New translations en.json (Frisian)
* New translations en.json (Frisian)
* New translations en.json (Frisian)
* New translations en.json (Frisian)
* New translations en.yml (Indonesian)
* New translations en.json (Indonesian)
* New translations en.json (Spanish)
* New translations en.yml (Spanish)
* New translations en.yml (Italian)
* New translations en.yml (Ido)
* New translations en.json (Ido)
* New translations en.json (French)
* New translations en.yml (Korean)
* New translations simple_form.en.yml (Korean)
* New translations simple_form.en.yml (Korean)
* New translations en.yml (Russian)
* New translations en.yml (Russian)
* Run `yarn manage:translations`
* Run `bundle exec i18n-tasks normalize`
* Fix default message
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-06-04 13:44:49 +09:00
Eugen Rochko
628c177ebe
Change label of publish button to be "Publish" again ( #18583 )
2022-06-01 05:03:12 +02:00
Eugen Rochko
d21251f8fe
Remove unused assets ( #18541 )
2022-05-27 20:05:34 +02:00
Eugen Rochko
0cdb077570
Add language dropdown to compose in web UI ( #18420 )
2022-05-16 11:18:35 +02:00
Eugen Rochko
b4d373a3df
Add limited
attribute to accounts in REST API and a warning in web UI ( #18344 )
2022-05-10 09:44:35 +02:00
Claire
662ed53c18
Fix block/mute lists showing a follow button when unblocking a user ( #18364 )
...
Fixes #601
2022-05-09 23:20:19 +02:00
Claire
5a448d0d71
Fix floating action button obscuring last element ( #18332 )
...
Fixes #18331
Add some padding below the last element of scrollable lists when the FAB is
shown in order for users to always be able to fully see the last element.
2022-05-06 21:40:49 +02:00
Stefano Pigozzi
99d7684dfd
Replace leftover envelope
icons with at
icons ( #18305 )
2022-05-06 00:41:56 +02:00
Claire
e2d1d3b428
Change “Only people I mention” to “Mentioned people only” ( #18291 )
2022-05-03 12:30:40 +02:00
Eugen Rochko
7e244879fe
Change "Conversations" back to "Direct messages" and add warning in web UI ( #18289 )
...
Partially reverts #18146
2022-05-03 09:09:09 +02:00
Eugen Rochko
be0bc9acbf
Change "Direct" status visibility to "Only people I mention" in web UI ( #18146 )
...
- Change name of conversations column in web UI
- Change hotkey for opening conversations column from `g d` to `g c` in web UI
- Remove shortcuts for creating direct-visibility statuses from web UI
2022-04-29 00:24:31 +02:00
Claire
eed5a4bf9c
Fix empty “Server rules violation” report option ( #18165 )
2022-04-28 21:29:29 +02:00
Eugen Rochko
f382192862
Add pagination for trending statuses in web UI ( #17976 )
2022-04-06 22:53:29 +02:00
CommanderRoot
0ec695e036
Replace deprecated String.prototype.substr() ( #17949 )
...
* Replace deprecated String.prototype.substr()
.substr() is deprecated so we replace it with .slice() which works similarily but isn't deprecated
* Change String.prototype.substring() to String.prototype.slice()
.substring() and .slice() work very similary but .slice() is a bit faster and stricter
* Add ESLint rule to forbid usage of .substr and .substring
.substr() is deprecated and .substring() is very similar to .slice() so better to use .slice() at all times
Signed-off-by: Tobias Speicher <rootcommander@gmail.com>
2022-04-04 12:19:45 -04:00
Eugen Rochko
8751c3c495
Fix crash when search fails in web UI ( #17853 )
2022-03-22 18:20:25 +01:00
Eugen Rochko
4e9855e09a
Add hint about missing media attachment description in web UI ( #17845 )
2022-03-22 09:48:12 +01:00
mayaeh
71e7d38421
Changed to display the "Explore" in "Getting-Started" at all resolutions ( #17762 )
2022-03-13 15:01:30 +01:00
Eugen Rochko
fa47c37f13
Fix public timelines being inaccessible on one stage of responsive layout in web UI ( #17760 )
...
Fix #17756
2022-03-13 09:48:39 +01:00
mayaeh
e38a01c41a
Change the "Explore" icon from fa-globe to fa-hashtag ( #17757 )
2022-03-13 05:15:19 +01:00
mayaeh
e52085246f
Add menu column of explore to getting-started ( #17755 )
2022-03-13 04:51:09 +01:00