Eugen Rochko
6ab724918b
Change featured hashtags to be displayed in navigation panel ( #19382 )
2 years ago
prplecake
2690a13d0e
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"
2 years ago
Eugen Rochko
0b84d15288
Fix missing rules in report modal in web UI ( #19387 )
2 years ago
Eugen Rochko
8723d322c7
Fix error while server rules are loading in report modal in web UI ( #19385 )
2 years ago
Takeshi Umeda
3e88e7ba20
Add featured tags selector for WebUI ( #19358 )
...
* Add featured tags selector for WebUI
* Add title to tag count
2 years ago
Eugen Rochko
e376f33207
Change about page to be mounted in the web UI ( #19345 )
2 years ago
Yamagishi Kazutoshi
f84bee7d78
Redirect non-logged-in user to owner statuses on single user mode ( #19333 )
2 years ago
Yamagishi Kazutoshi
bccb0db26b
Hide list panel from nav bar in mobile layout ( #19337 )
2 years ago
Yamagishi Kazutoshi
595d5744ae
Fix `ColumnLink` labels not disappearing in mobile UI ( #19334 )
2 years ago
Yamagishi Kazutoshi
fca4e2c284
Fix fedi/local timeline nav link always hide ( #19329 )
2 years ago
Eugen Rochko
e13d9e178c
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>
2 years ago
Claire
177683d8eb
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.
2 years ago
Eugen Rochko
aa2b4d5c4c
Add dismissable hints to various timelines in web UI ( #19315 )
...
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2 years ago
Yamagishi Kazutoshi
9762fe2475
Add title to pages with missing title in Web UI ( #19322 )
2 years ago
Yamagishi Kazutoshi
c312e0180b
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
2 years ago
Eugen Rochko
d706460933
Fix trying to connect to streaming API when logged out in web UI ( #19316 )
2 years ago
Eugen Rochko
378e00b59c
Change privacy policy to be rendered in web UI, add REST API ( #19310 )
...
Source string no longer localized, Markdown instead of raw HTML
2 years ago
Eugen Rochko
9b05f5b2bb
Add interaction modal to logged-out web UI ( #19306 )
2 years ago
trwnh
58fd523794
Fix #19304 ( #19305 )
2 years ago
Eugen Rochko
c603978cf6
Add server banner to web app, add `GET /api/v2/instance` to REST API ( #19294 )
2 years ago
Eugen Rochko
58c367fb47
Remove code for rendering public and hashtag timelines outside the web UI ( #19257 )
2 years ago
Eugen Rochko
2d634b669b
Fix logged-out web UI on smaller screens ( #19263 )
2 years ago
Claire
6c495231b2
Fix “Change subscribed languages” crashing in some situations ( #19268 )
2 years ago
Eugen Rochko
ab49ef4a74
Fix wrong logo on start screen in web UI ( #19254 )
2 years ago
Eugen Rochko
c04359a63b
Change path of privacy policy page ( #19249 )
2 years ago
Eugen Rochko
cd9a0f136d
Add sign-up button to logged-out web UI ( #19250 )
2 years ago
Eugen Rochko
babebc4e8a
Add logged-out access to the web UI ( #18961 )
2 years ago
Eugen Rochko
a593188ded
Add user content translations with configurable backends ( #19218 )
2 years ago
Claire
12cb437127
Add privacy icons to report modal ( #19190 )
2 years ago
Eugen Rochko
f4e91041b2
Add ability to filter followed accounts' posts by language ( #19095 )
2 years ago
Claire
522fbf9d13
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
2 years ago
Rens Groothuijsen
aced8820dd
Add warning for sensitive audio posts ( #17885 )
2 years ago
Eugen Rochko
9bbcd2e8a0
Add ability to follow hashtags in web UI ( #18862 )
2 years ago
Yamagishi Kazutoshi
a3eda85ff9
Bump react-redux-loading-bar from 4.0.8 to 5.0.4 ( #18562 )
2 years ago
Eugen Rochko
e164d6a687
Add customizable user roles ( #18641 )
...
* Add customizable user roles
* Various fixes and improvements
* Add migration for old settings and fix tootctl role management
2 years ago
Claire
90e5a9bd98
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.
2 years ago
Eugen Rochko
e6eb0a29b9
Add notifications for new reports ( #18697 )
2 years ago
Eugen Rochko
157bf44409
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>
2 years ago
Eugen Rochko
8ec66981da
Change label of publish button to be "Publish" again ( #18583 )
2 years ago
Eugen Rochko
c460fd0250
Remove unused assets ( #18541 )
2 years ago
Eugen Rochko
e4a9aa1ab4
Add language dropdown to compose in web UI ( #18420 )
3 years ago
Eugen Rochko
ac3d6f9a35
Add `limited` attribute to accounts in REST API and a warning in web UI ( #18344 )
3 years ago
Claire
917567567a
Fix block/mute lists showing a follow button when unblocking a user ( #18364 )
...
Fixes #601
3 years ago
Claire
82dcdc12f1
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.
3 years ago
Stefano Pigozzi
02987b1191
Replace leftover `envelope` icons with `at` icons ( #18305 )
3 years ago
Claire
1d7e3d18a0
Change “Only people I mention” to “Mentioned people only” ( #18291 )
3 years ago
Eugen Rochko
c33a26ed38
Change "Conversations" back to "Direct messages" and add warning in web UI ( #18289 )
...
Partially reverts #18146
3 years ago
Eugen Rochko
07737bb6d1
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
3 years ago
Claire
ff9d647aa6
Fix empty “Server rules violation” report option ( #18165 )
3 years ago
Eugen Rochko
cea2cd9a56
Add pagination for trending statuses in web UI ( #17976 )
3 years ago