Merge branch 'main' into glitch-soc/merge-upstream

Conflicts:
- `app/javascript/mastodon/features/compose/components/compose_form.js`:
  Conflict caused because of minor code style change upstream, while glitch-soc
  has different code for handling variable maximum chars.
  Ported the change.
- `app/serializers/initial_state_serializer.rb`:
  Conflict because glitch-soc had two extra attributes where upstream added
  one.
  Added upstream's attribute.
This commit is contained in:
Claire
2022-05-16 22:29:05 +02:00
17 changed files with 518 additions and 20 deletions

View File

@@ -3,7 +3,8 @@
class InitialStateSerializer < ActiveModel::Serializer
attributes :meta, :compose, :accounts,
:media_attachments, :settings,
:max_toot_chars, :poll_limits
:max_toot_chars, :poll_limits,
:languages
has_one :push_subscription, serializer: REST::WebPushSubscriptionSerializer
@@ -76,6 +77,7 @@ class InitialStateSerializer < ActiveModel::Serializer
store[:me] = object.current_account.id.to_s
store[:default_privacy] = object.visibility || object.current_account.user.setting_default_privacy
store[:default_sensitive] = object.current_account.user.setting_default_sensitive
store[:default_language] = object.current_account.user.preferred_posting_language
end
store[:text] = object.text if object.text
@@ -94,6 +96,10 @@ class InitialStateSerializer < ActiveModel::Serializer
{ accept_content_types: MediaAttachment.supported_file_extensions + MediaAttachment.supported_mime_types }
end
def languages
LanguagesHelper::SUPPORTED_LOCALES.map { |(key, value)| [key, value[0], value[1]] }
end
private
def instance_presenter

View File

@@ -17,7 +17,7 @@ class REST::PreferencesSerializer < ActiveModel::Serializer
end
def posting_default_language
object.user.setting_default_language.presence
object.user.preferred_posting_language
end
def reading_default_sensitive_media