Commit Graph

893 Commits

Author SHA1 Message Date
8dfe5179ee Fix avatars not using image tags in web UI (#19488)
Fix #19483
2022-10-28 00:48:45 +02:00
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
6f01111863 Fix wrong size of avatars in admin UI (#19457) 2022-10-25 21:43:33 +02:00
0ca29eaa3f Change layout of posts in web UI (#19423) 2022-10-25 19:02:21 +02:00
fcca781aae Change design of translations in web UI (#19453) 2022-10-25 18:47:21 +02:00
3ad0a2ae3d Fix language dropdown causing zoom on mobile devices in web UI (#19428) 2022-10-23 23:38:20 +02:00
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
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
56efa8d22f Fix reply not opening compose page on certain screen sizes in web UI (#19417)
Fix ellipsis next to icons on navigation panel on some browsers
2022-10-22 23:15:14 +02:00
7c152acb2c Change settings area to be separated into categories in admin UI (#19407)
And update all descriptions
2022-10-22 11:44:41 +02:00
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
aefa9253d6 Change featured hashtags to be displayed in navigation panel (#19382) 2022-10-19 11:30:59 +02:00
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
1bd00036c2 Change about page to be mounted in the web UI (#19345) 2022-10-13 14:42:37 +02:00
d787343325 Hide list panel from nav bar in mobile layout (#19337) 2022-10-10 21:41:25 +02:00
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
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
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
7fb738c837 Add interaction modal to logged-out web UI (#19306) 2022-10-07 10:14:31 +02:00
679274465b Add server rules to sign-up flow (#19296) 2022-10-05 18:57:33 +02:00
0e41d360c0 Change font size of active users in server banner to be larger in web UI (#19295) 2022-10-05 07:02:09 +02:00
d2528b26b6 Add server banner to web app, add GET /api/v2/instance to REST API (#19294) 2022-10-05 03:47:56 +02:00
e2b561e3a5 Fix logged-out web UI on smaller screens (#19263) 2022-10-04 20:13:23 +02:00
e623c302d5 Add sign-up button to logged-out web UI (#19250) 2022-09-29 06:21:51 +02:00
43b5d5e38d Add logged-out access to the web UI (#18961) 2022-09-29 04:39:33 +02:00
546672e292 Change "Allow trends without prior review" setting to include statuses (#17977)
* Change "Allow trends without prior review" setting to include posts

* Fix i18n-tasks
2022-08-28 04:00:39 +02:00
5b0e8cc92b Add ability to select all accounts matching search for batch actions (#19053) 2022-08-25 23:33:34 +02:00
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
e6979aa6d4 Add warning for sensitive audio posts (#17885) 2022-08-13 15:39:05 +02:00
f5d8501138 Change hashtag numbers to have clearer labels in web UI (#18864) 2022-07-22 03:17:41 +02:00
d5ca204e89 Bump react-redux-loading-bar from 4.0.8 to 5.0.4 (#18562) 2022-07-20 20:56:44 +09:00
f248d95be2 Fix badge color not affected (#18826)
* Fix badge color not affected

* Generate user role css
2022-07-19 01:06:11 +02:00
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
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
2936f42a14 Add notifications for new reports (#18697) 2022-06-27 09:30:15 +02:00
65ad589848 Fixed the setting page's logo that is not displayed on the smartphone (#18710) 2022-06-23 23:08:52 +02:00
0391b2a603 Fix contrast of some elements with new brand colors (#18691) 2022-06-19 08:18:08 +02:00
37cd984acf Fix logo gradient not working on some Safari and Blink-based browsers (#18634)
Works around https://bugs.chromium.org/p/chromium/issues/detail?id=258029
2022-06-10 17:34:59 +02:00
45aa5781ce Change brand color and logotypes (#18592)
- Add rake task for generating Apple/Android icons and favicons from SVG
- Add rake task for generating PNG icons and logos for e-mails from SVG
- Remove obsolete Microsoft icons and configuration
- Remove PWA shortcut icons
2022-06-09 22:25:23 +02:00
a2871cd747 Add administrative webhooks (#18510)
* Add administrative webhooks

* Fix error when webhook is deleted before delivery worker runs
2022-06-09 21:57:36 +02:00
84266f87e7 Replace from Code Climate to Super-Linter (#18587) 2022-06-01 19:22:35 +02:00
d21251f8fe Remove unused assets (#18541) 2022-05-27 20:05:34 +02:00
e925b06721 Fix languages dropdown on light theme (#18460) 2022-05-19 19:26:19 +02:00
0cdb077570 Add language dropdown to compose in web UI (#18420) 2022-05-16 11:18:35 +02:00
b4d373a3df Add limited attribute to accounts in REST API and a warning in web UI (#18344) 2022-05-10 09:44:35 +02:00
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
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
a8e27ac4d1 Fix being able to scroll away from the loading bar in web UI (#18170) 2022-04-29 00:15:27 +02:00
6221b36b27 Remove sign-in token authentication, instead send e-mail about new sign-in (#17970) 2022-04-06 20:58:12 +02:00
2de5128e66 Fix regression of status colors in actions modal in web UI (#17903)
Fixes #17900

Regression in #17844 (#17851 restored the code in the wrong place…)
2022-03-29 22:55:37 +02:00