Merge pull request #2732 from ClearlyClaire/glitch-soc/merge-upstream
Merge upstream changes up to 496c10542b
main-rebase-security-fix
commit
49f292d09a
|
@ -5,7 +5,7 @@ FROM mcr.microsoft.com/devcontainers/ruby:1-3.3-bookworm
|
|||
# RUN gem install rails webdrivers
|
||||
|
||||
ARG NODE_VERSION="20"
|
||||
RUN su vscode -c "source /usr/local/share/nvm/nvm.sh && nvm install ${NODE_VERSION} 2>&1"
|
||||
RUN . /usr/local/share/nvm/nvm.sh && nvm install ${NODE_VERSION} 2>&1
|
||||
|
||||
# [Optional] Uncomment this section to install additional OS packages.
|
||||
RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
|
||||
|
@ -15,6 +15,6 @@ RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
|
|||
RUN gem install foreman
|
||||
|
||||
# [Optional] Uncomment this line to install global node packages.
|
||||
RUN su vscode -c "source /usr/local/share/nvm/nvm.sh && corepack enable" 2>&1
|
||||
RUN . /usr/local/share/nvm/nvm.sh && corepack enable 2>&1
|
||||
|
||||
COPY welcome-message.txt /usr/local/etc/vscode-dev-containers/first-run-notice.txt
|
||||
|
|
|
@ -23,6 +23,8 @@
|
|||
}
|
||||
},
|
||||
|
||||
"remoteUser": "root",
|
||||
|
||||
"otherPortsAttributes": {
|
||||
"onAutoForward": "silent"
|
||||
},
|
||||
|
|
|
@ -5,7 +5,7 @@ services:
|
|||
context: .
|
||||
dockerfile: Dockerfile
|
||||
volumes:
|
||||
- ../..:/workspaces:cached
|
||||
- ..:/workspaces/mastodon:cached
|
||||
environment:
|
||||
RAILS_ENV: development
|
||||
NODE_ENV: development
|
||||
|
|
|
@ -1,8 +1,7 @@
|
|||
👋 Welcome to "Mastodon" in GitHub Codespaces!
|
||||
👋 Welcome to your Mastodon Dev Container!
|
||||
|
||||
🛠️ Your environment is fully setup with all the required software.
|
||||
🛠️ Your environment is fully setup with all the required software.
|
||||
|
||||
🔍 To explore VS Code to its fullest, search using the Command Palette (Cmd/Ctrl + Shift + P or F1).
|
||||
|
||||
📝 Edit away, run your app as usual, and we'll automatically make it available for you to access.
|
||||
💥 Run `bin/dev` to start the application processes.
|
||||
|
||||
🥼 Run `RAILS_ENV=test bin/rails assets:precompile && RAILS_ENV=test bin/rspec` to run the test suite.
|
||||
|
|
2
Gemfile
2
Gemfile
|
@ -107,7 +107,7 @@ gem 'private_address_check', '~> 0.5'
|
|||
gem 'opentelemetry-api', '~> 1.2.5'
|
||||
|
||||
group :opentelemetry do
|
||||
gem 'opentelemetry-exporter-otlp', '~> 0.26.3', require: false
|
||||
gem 'opentelemetry-exporter-otlp', '~> 0.27.0', require: false
|
||||
gem 'opentelemetry-instrumentation-active_job', '~> 0.7.1', require: false
|
||||
gem 'opentelemetry-instrumentation-active_model_serializers', '~> 0.20.1', require: false
|
||||
gem 'opentelemetry-instrumentation-concurrent_ruby', '~> 0.21.2', require: false
|
||||
|
|
18
Gemfile.lock
18
Gemfile.lock
|
@ -100,17 +100,17 @@ GEM
|
|||
attr_required (1.0.2)
|
||||
awrence (1.2.1)
|
||||
aws-eventstream (1.3.0)
|
||||
aws-partitions (1.929.0)
|
||||
aws-sdk-core (3.196.1)
|
||||
aws-partitions (1.940.0)
|
||||
aws-sdk-core (3.197.0)
|
||||
aws-eventstream (~> 1, >= 1.3.0)
|
||||
aws-partitions (~> 1, >= 1.651.0)
|
||||
aws-sigv4 (~> 1.8)
|
||||
jmespath (~> 1, >= 1.6.1)
|
||||
aws-sdk-kms (1.81.0)
|
||||
aws-sdk-core (~> 3, >= 3.193.0)
|
||||
aws-sdk-kms (1.83.0)
|
||||
aws-sdk-core (~> 3, >= 3.197.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-s3 (1.151.0)
|
||||
aws-sdk-core (~> 3, >= 3.194.0)
|
||||
aws-sdk-s3 (1.152.0)
|
||||
aws-sdk-core (~> 3, >= 3.197.0)
|
||||
aws-sdk-kms (~> 1)
|
||||
aws-sigv4 (~> 1.8)
|
||||
aws-sigv4 (1.8.0)
|
||||
|
@ -489,7 +489,7 @@ GEM
|
|||
opentelemetry-api (1.2.5)
|
||||
opentelemetry-common (0.20.1)
|
||||
opentelemetry-api (~> 1.0)
|
||||
opentelemetry-exporter-otlp (0.26.3)
|
||||
opentelemetry-exporter-otlp (0.27.0)
|
||||
google-protobuf (~> 3.14)
|
||||
googleapis-common-protos-types (~> 1.3)
|
||||
opentelemetry-api (~> 1.1)
|
||||
|
@ -751,7 +751,7 @@ GEM
|
|||
rack (>= 1.1)
|
||||
rubocop (>= 1.33.0, < 2.0)
|
||||
rubocop-ast (>= 1.31.1, < 2.0)
|
||||
rubocop-rspec (2.30.0)
|
||||
rubocop-rspec (2.31.0)
|
||||
rubocop (~> 1.40)
|
||||
rubocop-capybara (~> 2.17)
|
||||
rubocop-factory_bot (~> 2.22)
|
||||
|
@ -978,7 +978,7 @@ DEPENDENCIES
|
|||
omniauth-saml (~> 2.0)
|
||||
omniauth_openid_connect (~> 0.6.1)
|
||||
opentelemetry-api (~> 1.2.5)
|
||||
opentelemetry-exporter-otlp (~> 0.26.3)
|
||||
opentelemetry-exporter-otlp (~> 0.27.0)
|
||||
opentelemetry-instrumentation-active_job (~> 0.7.1)
|
||||
opentelemetry-instrumentation-active_model_serializers (~> 0.20.1)
|
||||
opentelemetry-instrumentation-concurrent_ruby (~> 0.21.2)
|
||||
|
|
|
@ -32,6 +32,7 @@
|
|||
"compose_form.direct_message_warning_learn_more": "Discere plura",
|
||||
"compose_form.encryption_warning": "Posts on Mastodon are not end-to-end encrypted. Do not share any dangerous information over Mastodon.",
|
||||
"compose_form.hashtag_warning": "This post won't be listed under any hashtag as it is unlisted. Only public posts can be searched by hashtag.",
|
||||
"compose_form.lock_disclaimer": "Tua ratio non est {clausa}. Quisquis te sequi potest ut visum accipiat nuntios tuos tantum pro sectatoribus.",
|
||||
"compose_form.lock_disclaimer.lock": "clausum",
|
||||
"compose_form.placeholder": "What is on your mind?",
|
||||
"compose_form.publish_form": "Barrire",
|
||||
|
@ -91,6 +92,7 @@
|
|||
"lightbox.next": "Secundum",
|
||||
"navigation_bar.domain_blocks": "Hidden domains",
|
||||
"not_signed_in_indicator.not_signed_in": "You need to sign in to access this resource.",
|
||||
"notification.moderation_warning.action_none": "Tua ratiō monitum moderātiōnis accēpit.",
|
||||
"notification.reblog": "{name} boosted your status",
|
||||
"notifications.filter.all": "Omnia",
|
||||
"notifications.filter.polls": "Eventus electionis",
|
||||
|
@ -107,6 +109,8 @@
|
|||
"onboarding.steps.setup_profile.title": "Customize your profile",
|
||||
"onboarding.steps.share_profile.body": "Let your friends know how to find you on Mastodon!",
|
||||
"onboarding.steps.share_profile.title": "Share your profile",
|
||||
"onboarding.tips.accounts_from_other_servers": "<strong>Scisne?</strong> Quoniam Mastodon dēcentālis est, nōnnulla profīlia quae invenīs in servīs aliīs quam tuōrum erunt hospitāta. Tamen cum eīs sine impedīmentō interāgere potes! Servus eōrum in alterā parte nōminis eōrum est!",
|
||||
"onboarding.tips.migration": "<strong>Scisne?</strong> Sī sentīs {domain} tibi in futūrō nōn esse optimam servī ēlēctiōnem, ad alium servum Mastodon sine amittendō sectātōribus tuīs migrāre potes. Etiam tuum servum hospitārī potes!",
|
||||
"poll.closed": "Clausum",
|
||||
"poll.vote": "Eligere",
|
||||
"poll.voted": "Elegisti hoc responsum",
|
||||
|
|
|
@ -41,8 +41,8 @@ class VideoMetadataExtractor
|
|||
@colorspace = video_stream[:pix_fmt]
|
||||
@width = video_stream[:width]
|
||||
@height = video_stream[:height]
|
||||
@frame_rate = video_stream[:avg_frame_rate] == '0/0' ? nil : Rational(video_stream[:avg_frame_rate])
|
||||
@r_frame_rate = video_stream[:r_frame_rate] == '0/0' ? nil : Rational(video_stream[:r_frame_rate])
|
||||
@frame_rate = parse_framerate(video_stream[:avg_frame_rate])
|
||||
@r_frame_rate = parse_framerate(video_stream[:r_frame_rate])
|
||||
# For some video streams the frame_rate reported by `ffprobe` will be 0/0, but for these streams we
|
||||
# should use `r_frame_rate` instead. Video screencast generated by Gnome Screencast have this issue.
|
||||
@frame_rate ||= @r_frame_rate
|
||||
|
@ -55,4 +55,10 @@ class VideoMetadataExtractor
|
|||
|
||||
@invalid = true if @metadata.key?(:error)
|
||||
end
|
||||
|
||||
def parse_framerate(raw)
|
||||
Rational(raw)
|
||||
rescue ZeroDivisionError
|
||||
nil
|
||||
end
|
||||
end
|
||||
|
|
|
@ -40,7 +40,7 @@ class CustomEmoji < ApplicationRecord
|
|||
|
||||
has_one :local_counterpart, -> { where(domain: nil) }, class_name: 'CustomEmoji', primary_key: :shortcode, foreign_key: :shortcode, inverse_of: false, dependent: nil
|
||||
|
||||
has_attached_file :image, styles: { static: { format: 'png', convert_options: '-coalesce +profile "!icc,*" +set date:modify +set date:create +set date:timestamp' } }, validate_media_type: false
|
||||
has_attached_file :image, styles: { static: { format: 'png', convert_options: '-coalesce +profile "!icc,*" +set date:modify +set date:create +set date:timestamp', file_geometry_parser: FastGeometryParser } }, validate_media_type: false, processors: [:lazy_thumbnail]
|
||||
|
||||
normalizes :domain, with: ->(domain) { domain.downcase }
|
||||
|
||||
|
|
|
@ -5,10 +5,10 @@
|
|||
# Table name: mentions
|
||||
#
|
||||
# id :bigint(8) not null, primary key
|
||||
# status_id :bigint(8)
|
||||
# status_id :bigint(8) not null
|
||||
# created_at :datetime not null
|
||||
# updated_at :datetime not null
|
||||
# account_id :bigint(8)
|
||||
# account_id :bigint(8) not null
|
||||
# silent :boolean default(FALSE), not null
|
||||
#
|
||||
|
||||
|
|
|
@ -11,6 +11,7 @@ class REST::NotificationGroupSerializer < ActiveModel::Serializer
|
|||
belongs_to :target_status, key: :status, if: :status_type?, serializer: REST::StatusSerializer
|
||||
belongs_to :report, if: :report_type?, serializer: REST::ReportSerializer
|
||||
belongs_to :account_relationship_severance_event, key: :event, if: :relationship_severance_event?, serializer: REST::AccountRelationshipSeveranceEventSerializer
|
||||
belongs_to :account_warning, key: :moderation_warning, if: :moderation_warning_event?, serializer: REST::AccountWarningSerializer
|
||||
|
||||
def status_type?
|
||||
[:favourite, :reblog, :status, :mention, :poll, :update].include?(object.type)
|
||||
|
@ -24,6 +25,10 @@ class REST::NotificationGroupSerializer < ActiveModel::Serializer
|
|||
object.type == :severed_relationships
|
||||
end
|
||||
|
||||
def moderation_warning_event?
|
||||
object.type == :moderation_warning
|
||||
end
|
||||
|
||||
def page_min_id
|
||||
range = instance_options[:group_metadata][object.group_key]
|
||||
range.present? ? range[:min_id].to_s : object.notification.id.to_s
|
||||
|
|
14
bin/setup
14
bin/setup
|
@ -5,7 +5,7 @@ require "fileutils"
|
|||
APP_ROOT = File.expand_path('..', __dir__)
|
||||
|
||||
def system!(*args)
|
||||
system(*args) || abort("\n== Command #{args} failed ==")
|
||||
system(*args, exception: true)
|
||||
end
|
||||
|
||||
FileUtils.chdir APP_ROOT do
|
||||
|
@ -13,17 +13,13 @@ FileUtils.chdir APP_ROOT do
|
|||
# This script is idempotent, so that you can run it at any time and get an expectable outcome.
|
||||
# Add necessary setup steps to this file.
|
||||
|
||||
puts '== Installing dependencies =='
|
||||
puts "\n== Installing Ruby dependencies =="
|
||||
system! 'gem install bundler --conservative'
|
||||
system('bundle check') || system!('bundle install')
|
||||
|
||||
# Install JavaScript dependencies
|
||||
system! 'bin/yarn'
|
||||
|
||||
# puts "\n== Copying sample files =="
|
||||
# unless File.exist?('config/database.yml')
|
||||
# FileUtils.cp 'config/database.yml.sample', 'config/database.yml'
|
||||
# end
|
||||
puts "\n== Installing JS dependencies =="
|
||||
system! 'corepack prepare'
|
||||
system! 'bin/yarn install --immutable'
|
||||
|
||||
puts "\n== Preparing database =="
|
||||
system! 'bin/rails db:prepare'
|
||||
|
|
|
@ -8,7 +8,7 @@ Rails.application.configure do
|
|||
# In the development environment your application's code is reloaded any time
|
||||
# it changes. This slows down response time but is perfect for development
|
||||
# since you don't have to restart the web server when you make code changes.
|
||||
config.cache_classes = false
|
||||
config.enable_reloading = true
|
||||
|
||||
# Do not eager load code on boot.
|
||||
config.eager_load = false
|
||||
|
|
|
@ -61,12 +61,6 @@ Rails.application.configure do
|
|||
config.i18n.default_locale = :en
|
||||
config.i18n.fallbacks = true
|
||||
|
||||
config.to_prepare do
|
||||
# Force Status to always be SHAPE_TOO_COMPLEX
|
||||
# Ref: https://github.com/mastodon/mastodon/issues/23644
|
||||
10.times { |i| Status.allocate.instance_variable_set(:"@ivar_#{i}", nil) }
|
||||
end
|
||||
|
||||
# Tell Active Support which deprecation messages to disallow.
|
||||
config.active_support.disallowed_deprecation_warnings = []
|
||||
|
||||
|
|
|
@ -3,6 +3,8 @@
|
|||
Paperclip::DataUriAdapter.register
|
||||
Paperclip::ResponseWithLimitAdapter.register
|
||||
|
||||
PATH = ':prefix_url:class/:attachment/:id_partition/:style/:filename'
|
||||
|
||||
Paperclip.interpolates :filename do |attachment, style|
|
||||
if style == :original
|
||||
attachment.original_filename
|
||||
|
@ -29,7 +31,7 @@ end
|
|||
|
||||
Paperclip::Attachment.default_options.merge!(
|
||||
use_timestamp: false,
|
||||
path: ':prefix_url:class/:attachment/:id_partition/:style/:filename',
|
||||
path: PATH,
|
||||
storage: :fog
|
||||
)
|
||||
|
||||
|
@ -40,6 +42,8 @@ if ENV['S3_ENABLED'] == 'true'
|
|||
s3_protocol = ENV.fetch('S3_PROTOCOL') { 'https' }
|
||||
s3_hostname = ENV.fetch('S3_HOSTNAME') { "s3-#{s3_region}.amazonaws.com" }
|
||||
|
||||
Paperclip::Attachment.default_options[:path] = ENV.fetch('S3_KEY_PREFIX') + "/#{PATH}" if ENV.has_key?('S3_KEY_PREFIX')
|
||||
|
||||
Paperclip::Attachment.default_options.merge!(
|
||||
storage: :s3,
|
||||
s3_protocol: s3_protocol,
|
||||
|
@ -64,7 +68,7 @@ if ENV['S3_ENABLED'] == 'true'
|
|||
http_open_timeout: ENV.fetch('S3_OPEN_TIMEOUT') { '5' }.to_i,
|
||||
http_read_timeout: ENV.fetch('S3_READ_TIMEOUT') { '5' }.to_i,
|
||||
http_idle_timeout: 5,
|
||||
retry_limit: 0,
|
||||
retry_limit: ENV.fetch('S3_RETRY_LIMIT') { '0' }.to_i,
|
||||
}
|
||||
)
|
||||
|
||||
|
@ -159,7 +163,7 @@ else
|
|||
Paperclip::Attachment.default_options.merge!(
|
||||
storage: :filesystem,
|
||||
path: File.join(ENV.fetch('PAPERCLIP_ROOT_PATH', File.join(':rails_root', 'public', 'system')), ':prefix_path:class', ':attachment', ':id_partition', ':style', ':filename'),
|
||||
url: "#{ENV.fetch('PAPERCLIP_ROOT_URL', '/system')}/:prefix_url:class/:attachment/:id_partition/:style/:filename"
|
||||
url: ENV.fetch('PAPERCLIP_ROOT_URL', '/system') + "/#{PATH}"
|
||||
)
|
||||
end
|
||||
|
||||
|
|
|
@ -174,7 +174,6 @@ be:
|
|||
read:filters: бачыць свае фільтры
|
||||
read:follows: бачыць свае падпіскі
|
||||
read:lists: бачыць свае спісы
|
||||
read:me: чытайце толькі базавую інфармацыю аб сваім уліковым запісе
|
||||
read:mutes: бачыць свае ігнараванні
|
||||
read:notifications: бачыць свае абвесткі
|
||||
read:reports: бачыць свае скаргі
|
||||
|
|
|
@ -135,6 +135,7 @@ bg:
|
|||
media: Прикачена мултимедия
|
||||
mutes: Заглушения
|
||||
notifications: Известия
|
||||
profile: Вашият профил в Mastodon
|
||||
push: Изскачащи известия
|
||||
reports: Доклади
|
||||
search: Търсене
|
||||
|
@ -165,6 +166,7 @@ bg:
|
|||
admin:write:reports: извършване на действия за модериране на докладвания
|
||||
crypto: употреба на цялостно шифроване
|
||||
follow: промяна на взаимоотношенията на акаунта
|
||||
profile: само за четене на сведенията ви за профила на акаунта
|
||||
push: получаване на вашите изскачащи известия
|
||||
read: четене на всички данни от акаунта ви
|
||||
read:accounts: преглед на информация за акаунти
|
||||
|
@ -174,7 +176,6 @@ bg:
|
|||
read:filters: преглед на вашите филтри
|
||||
read:follows: преглед на вашите последвания
|
||||
read:lists: преглед на вашите списъци
|
||||
read:me: четене само на основните сведения за акаунта ви
|
||||
read:mutes: преглед на вашите заглушавания
|
||||
read:notifications: преглед на вашите известия
|
||||
read:reports: преглед на вашите докладвания
|
||||
|
|
|
@ -104,6 +104,7 @@ br:
|
|||
lists: Listennoù
|
||||
media: Restroù media stag
|
||||
mutes: Kuzhet
|
||||
profile: Ho profil Mastodon
|
||||
search: Klask
|
||||
statuses: Toudoù
|
||||
layouts:
|
||||
|
|
|
@ -135,6 +135,7 @@ ca:
|
|||
media: Adjunts multimèdia
|
||||
mutes: Silenciats
|
||||
notifications: Notificacions
|
||||
profile: El vostre perfil de Mastodon
|
||||
push: Notificacions push
|
||||
reports: Informes
|
||||
search: Cerca
|
||||
|
@ -165,6 +166,7 @@ ca:
|
|||
admin:write:reports: fer l'acció de moderació en els informes
|
||||
crypto: usa xifrat d'extrem a extrem
|
||||
follow: modifica les relacions del compte
|
||||
profile: només llegir la informació del perfil del vostre compte
|
||||
push: rebre notificacions push del teu compte
|
||||
read: llegir les dades del teu compte
|
||||
read:accounts: mira informació dels comptes
|
||||
|
@ -174,7 +176,6 @@ ca:
|
|||
read:filters: mira els teus filtres
|
||||
read:follows: mira els teus seguiments
|
||||
read:lists: mira les teves llistes
|
||||
read:me: llegir només la informació bàsica del vostre compte
|
||||
read:mutes: mira els teus silenciats
|
||||
read:notifications: mira les teves notificacions
|
||||
read:reports: mira els teus informes
|
||||
|
|
|
@ -174,7 +174,6 @@ cs:
|
|||
read:filters: vidět vaše filtry
|
||||
read:follows: vidět vaše sledování
|
||||
read:lists: vidět vaše seznamy
|
||||
read:me: číst pouze základní informace vašeho účtu
|
||||
read:mutes: vidět vaše skrytí
|
||||
read:notifications: vidět vaše oznámení
|
||||
read:reports: vidět vaše hlášení
|
||||
|
|
|
@ -174,7 +174,6 @@ cy:
|
|||
read:filters: gweld eich hidlwyr
|
||||
read:follows: gweld eich dilynwyr
|
||||
read:lists: gweld eich rhestrau
|
||||
read:me: darllen dim ond manylion elfennol eich cyfrif
|
||||
read:mutes: gweld eich anwybyddiadau
|
||||
read:notifications: gweld eich hysbysiadau
|
||||
read:reports: gweld eich adroddiadau
|
||||
|
|
|
@ -135,6 +135,7 @@ da:
|
|||
media: Medievedhæftninger
|
||||
mutes: Tavsgørelser
|
||||
notifications: Notifikationer
|
||||
profile: Din Mastodon-profil
|
||||
push: Push-notifikationer
|
||||
reports: Anmeldelser
|
||||
search: Søgning
|
||||
|
@ -165,6 +166,7 @@ da:
|
|||
admin:write:reports: udfør modereringshandlinger på anmeldelser
|
||||
crypto: benyt ende-til-ende kryptering
|
||||
follow: ændre kontorelationer
|
||||
profile: læs kun kontoprofiloplysningerne
|
||||
push: modtag dine push-notifikationer
|
||||
read: læs alle dine kontodata
|
||||
read:accounts: se kontooplysninger
|
||||
|
@ -174,7 +176,6 @@ da:
|
|||
read:filters: se dine filtre
|
||||
read:follows: se dine følger
|
||||
read:lists: se dine lister
|
||||
read:me: læs kun kontoens basisoplysninger
|
||||
read:mutes: se dine tavsgørelser
|
||||
read:notifications: se dine notifikationer
|
||||
read:reports: se dine anmeldelser
|
||||
|
|
|
@ -135,6 +135,7 @@ de:
|
|||
media: Medienanhänge
|
||||
mutes: Stummschaltungen
|
||||
notifications: Benachrichtigungen
|
||||
profile: Dein Mastodon-Profil
|
||||
push: Push-Benachrichtigungen
|
||||
reports: Meldungen
|
||||
search: Suche
|
||||
|
@ -165,6 +166,7 @@ de:
|
|||
admin:write:reports: Moderationsaktionen auf Meldungen ausführen
|
||||
crypto: Ende-zu-Ende-Verschlüsselung verwenden
|
||||
follow: Kontenbeziehungen verändern
|
||||
profile: nur die Profilinformationen deines Kontos lesen
|
||||
push: deine Push-Benachrichtigungen erhalten
|
||||
read: all deine Daten lesen
|
||||
read:accounts: deine Kontoinformationen einsehen
|
||||
|
@ -174,7 +176,6 @@ de:
|
|||
read:filters: deine Filter einsehen
|
||||
read:follows: sehen, wem du folgst
|
||||
read:lists: deine Listen sehen
|
||||
read:me: nur deine grundlegenden Kontoinformationen lesen
|
||||
read:mutes: deine Stummschaltungen einsehen
|
||||
read:notifications: deine Benachrichtigungen sehen
|
||||
read:reports: deine Meldungen sehen
|
||||
|
|
|
@ -174,7 +174,6 @@ en-GB:
|
|||
read:filters: see your filters
|
||||
read:follows: see your follows
|
||||
read:lists: see your lists
|
||||
read:me: read only your account's basic information
|
||||
read:mutes: see your mutes
|
||||
read:notifications: see your notifications
|
||||
read:reports: see your reports
|
||||
|
|
|
@ -135,6 +135,7 @@ es-AR:
|
|||
media: Adjuntos de medios
|
||||
mutes: Silenciados
|
||||
notifications: Notificaciones
|
||||
profile: Tu perfil de Mastodon
|
||||
push: Notificaciones push
|
||||
reports: Denuncias
|
||||
search: Buscar
|
||||
|
@ -165,6 +166,7 @@ es-AR:
|
|||
admin:write:reports: ejecutar acciones de moderación en denuncias
|
||||
crypto: usar cifrado de extremo a extremo
|
||||
follow: modificar relaciones de cuenta
|
||||
profile: leer solo la información del perfil de tu cuenta
|
||||
push: recibir tus notificaciones push
|
||||
read: leer todos los datos de tu cuenta
|
||||
read:accounts: ver información de cuentas
|
||||
|
@ -174,7 +176,6 @@ es-AR:
|
|||
read:filters: ver tus filtros
|
||||
read:follows: ver qué cuentas seguís
|
||||
read:lists: ver tus listas
|
||||
read:me: leer solo la información básica de tu cuenta
|
||||
read:mutes: ver qué cuentas silenciaste
|
||||
read:notifications: ver tus notificaciones
|
||||
read:reports: ver tus denuncias
|
||||
|
|
|
@ -135,6 +135,7 @@ es-MX:
|
|||
media: Archivos adjuntos
|
||||
mutes: Silenciados
|
||||
notifications: Notificaciones
|
||||
profile: Tu perfil de Mastodon
|
||||
push: Notificaciones push
|
||||
reports: Reportes
|
||||
search: Busqueda
|
||||
|
@ -165,6 +166,7 @@ es-MX:
|
|||
admin:write:reports: realizar acciones de moderación en informes
|
||||
crypto: usar cifrado de extremo a extremo
|
||||
follow: seguir, bloquear, desbloquear y dejar de seguir cuentas
|
||||
profile: leer sólo la información del perfil de tu cuenta
|
||||
push: recibir tus notificaciones push
|
||||
read: leer los datos de tu cuenta
|
||||
read:accounts: ver información de cuentas
|
||||
|
@ -174,7 +176,6 @@ es-MX:
|
|||
read:filters: ver tus filtros
|
||||
read:follows: ver a quién sigues
|
||||
read:lists: ver tus listas
|
||||
read:me: leer solo la información básica de tu cuenta
|
||||
read:mutes: ver a quién has silenciado
|
||||
read:notifications: ver tus notificaciones
|
||||
read:reports: ver tus informes
|
||||
|
|
|
@ -135,6 +135,7 @@ es:
|
|||
media: Adjuntos multimedia
|
||||
mutes: Silenciados
|
||||
notifications: Notificaciones
|
||||
profile: Tu perfil de Mastodon
|
||||
push: Notificaciones push
|
||||
reports: Informes
|
||||
search: Buscar
|
||||
|
@ -165,6 +166,7 @@ es:
|
|||
admin:write:reports: realizar acciones de moderación en informes
|
||||
crypto: usar cifrado de extremo a extremo
|
||||
follow: seguir, bloquear, desbloquear y dejar de seguir cuentas
|
||||
profile: leer sólo la información del perfil de tu cuenta
|
||||
push: recibir tus notificaciones push
|
||||
read: leer los datos de tu cuenta
|
||||
read:accounts: ver información de cuentas
|
||||
|
@ -174,7 +176,6 @@ es:
|
|||
read:filters: ver tus filtros
|
||||
read:follows: ver a quién sigues
|
||||
read:lists: ver tus listas
|
||||
read:me: leer solo la información básica de tu cuenta
|
||||
read:mutes: ver a quién has silenciado
|
||||
read:notifications: ver tus notificaciones
|
||||
read:reports: ver tus informes
|
||||
|
|
|
@ -174,7 +174,6 @@ eu:
|
|||
read:filters: ikusi zure iragazkiak
|
||||
read:follows: ikusi zuk jarraitutakoak
|
||||
read:lists: ikusi zure zerrendak
|
||||
read:me: irakurri soilik zure kontuaren oinarrizko informazioa
|
||||
read:mutes: ikusi zuk mutututakoak
|
||||
read:notifications: ikusi zure jakinarazpenak
|
||||
read:reports: ikusi zure salaketak
|
||||
|
|
|
@ -135,6 +135,7 @@ fi:
|
|||
media: Medialiitteet
|
||||
mutes: Mykistykset
|
||||
notifications: Ilmoitukset
|
||||
profile: Mastodon-profiilisi
|
||||
push: Puskuilmoitukset
|
||||
reports: Raportit
|
||||
search: Hae
|
||||
|
@ -165,6 +166,7 @@ fi:
|
|||
admin:write:reports: suorita valvontatoimia raporteille
|
||||
crypto: käytä päästä päähän -salausta
|
||||
follow: muokkaa tilin suhteita
|
||||
profile: lue vain tilisi profiilitietoja
|
||||
push: vastaanota puskuilmoituksiasi
|
||||
read: lue kaikkia tilin tietoja
|
||||
read:accounts: katso tilien tietoja
|
||||
|
@ -174,7 +176,6 @@ fi:
|
|||
read:filters: katso suodattimiasi
|
||||
read:follows: katso seurattujasi
|
||||
read:lists: katso listojasi
|
||||
read:me: lue tilisi perustietoja
|
||||
read:mutes: katso mykistyksiäsi
|
||||
read:notifications: katso ilmoituksiasi
|
||||
read:reports: katso raporttejasi
|
||||
|
|
|
@ -135,6 +135,7 @@ fo:
|
|||
media: Viðfestir miðlar
|
||||
mutes: Doyvir
|
||||
notifications: Fráboðanir
|
||||
profile: Tín Mastodon vangi
|
||||
push: Skumpifráboðanir
|
||||
reports: Meldingar
|
||||
search: Leita
|
||||
|
@ -165,6 +166,7 @@ fo:
|
|||
admin:write:reports: útinna kjakleiðsluatgerðir á meldingum
|
||||
crypto: brúka enda-til-enda bronglan
|
||||
follow: broyta viðurskifti millum kontur
|
||||
profile: les bara vangaupplýsingar av tíni kontu
|
||||
push: móttaka tínar skumpifráboðanir
|
||||
read: lesa allar dátur í tíni kontu
|
||||
read:accounts: vís kontuupplýsingar
|
||||
|
@ -174,7 +176,6 @@ fo:
|
|||
read:filters: síggja tíni filtur
|
||||
read:follows: síggja hvørji tú fylgir
|
||||
read:lists: síggja tínar listar
|
||||
read:me: les bara grundleggjandi upplýsingar av tínari kontu
|
||||
read:mutes: síggja tínar doyvingar
|
||||
read:notifications: síggja tínar fráboðanir
|
||||
read:reports: síggja tínar meldingar
|
||||
|
|
|
@ -174,7 +174,6 @@ fy:
|
|||
read:filters: jo filters besjen
|
||||
read:follows: de accounts dy’tsto folgest besjen
|
||||
read:lists: jo listen besjen
|
||||
read:me: allinnich de basisgegevens fan jo account lêze
|
||||
read:mutes: jo negearre brûkers besjen
|
||||
read:notifications: jo meldingen besjen
|
||||
read:reports: jo rapportearre berjochten besjen
|
||||
|
|
|
@ -135,6 +135,7 @@ gl:
|
|||
media: Anexos multimedia
|
||||
mutes: Acaladas
|
||||
notifications: Notificacións
|
||||
profile: O teu perfil en Mastodon
|
||||
push: Notificacións Push
|
||||
reports: Denuncias
|
||||
search: Busca
|
||||
|
@ -165,6 +166,7 @@ gl:
|
|||
admin:write:reports: executar accións de moderación nas denuncias
|
||||
crypto: usar cifrado de extremo-a-extremo
|
||||
follow: modificar as relacións da conta
|
||||
profile: ler só a información de perfil da túa conta
|
||||
push: recibir notificacións push
|
||||
read: ler todos os datos da tua conta
|
||||
read:accounts: ver información das contas
|
||||
|
@ -174,7 +176,6 @@ gl:
|
|||
read:filters: ver os filtros
|
||||
read:follows: ver a quen segues
|
||||
read:lists: ver as tuas listaxes
|
||||
read:me: ler só a información básica da túa conta
|
||||
read:mutes: ver a quen tes acalado
|
||||
read:notifications: ver as notificacións
|
||||
read:reports: ver as túas denuncias
|
||||
|
|
|
@ -135,6 +135,7 @@ he:
|
|||
media: קבצי מדיה מצורפים
|
||||
mutes: השתקות
|
||||
notifications: התראות
|
||||
profile: פרופיל המסטודון שלך
|
||||
push: התראות בדחיפה
|
||||
reports: דיווחים
|
||||
search: חיפוש
|
||||
|
@ -165,6 +166,7 @@ he:
|
|||
admin:write:reports: ביצוע פעולות הנהלה על חשבונות
|
||||
crypto: שימוש בהצפנה מקצה לקצה
|
||||
follow: לעקוב, לחסום, להסיר חסימה ולהפסיק לעקוב אחרי חשבונות
|
||||
profile: קריאה של פרטי הפרופיל שלך בלבד
|
||||
push: קבלת התראות בדחיפה
|
||||
read: לקרוא את המידע שבחשבונך
|
||||
read:accounts: צפיה במידע על חשבונות
|
||||
|
@ -174,7 +176,6 @@ he:
|
|||
read:filters: צפייה במסננים
|
||||
read:follows: צפייה בנעקבים
|
||||
read:lists: צפיה ברשימותיך
|
||||
read:me: לקריאה בלבד של פרטי חשבונך הבסיסיים
|
||||
read:mutes: צפיה במושתקיך
|
||||
read:notifications: צפיה בהתראותיך
|
||||
read:reports: צפיה בדוחותיך
|
||||
|
|
|
@ -135,6 +135,7 @@ hu:
|
|||
media: Médiamellékletek
|
||||
mutes: Némítások
|
||||
notifications: Értesítések
|
||||
profile: Saját Mastodon-profil
|
||||
push: Push értesítések
|
||||
reports: Bejelentések
|
||||
search: Keresés
|
||||
|
@ -165,6 +166,7 @@ hu:
|
|||
admin:write:reports: moderációs műveletek végzése bejelentéseken
|
||||
crypto: végpontok közti titkosítás használata
|
||||
follow: fiókkapcsolatok módosítása
|
||||
profile: csak a saját profil alapvető adatainak olvasása
|
||||
push: push értesítések fogadása
|
||||
read: saját fiók adatainak olvasása
|
||||
read:accounts: fiók adatainak megtekintése
|
||||
|
@ -174,7 +176,6 @@ hu:
|
|||
read:filters: szűrök megtekintése
|
||||
read:follows: követések megtekintése
|
||||
read:lists: listák megtekintése
|
||||
read:me: csak a fiókod alapvető adatainak elolvasása
|
||||
read:mutes: némítások megtekintése
|
||||
read:notifications: értesítések megtekintése
|
||||
read:reports: bejelentések megtekintése
|
||||
|
|
|
@ -174,7 +174,6 @@ ia:
|
|||
read:filters: vider tu filtros
|
||||
read:follows: vider qui tu seque
|
||||
read:lists: vider tu listas
|
||||
read:me: leger solmente le information basic de tu conto
|
||||
read:mutes: vider qui tu silentia
|
||||
read:notifications: vider tu notificationes
|
||||
read:reports: vider tu reportos
|
||||
|
|
|
@ -174,7 +174,6 @@ ie:
|
|||
read:filters: vider tui filtres
|
||||
read:follows: vider tui sequitores
|
||||
read:lists: vider tui listes
|
||||
read:me: leer solmen li basic information de tui conto
|
||||
read:mutes: vider tui silentias
|
||||
read:notifications: vider tui notificationes
|
||||
read:reports: vider tui raportes
|
||||
|
|
|
@ -135,6 +135,7 @@ is:
|
|||
media: Myndefnisviðhengi
|
||||
mutes: Þagganir
|
||||
notifications: Tilkynningar
|
||||
profile: Mastodon notandasniðið þitt
|
||||
push: Ýti-tilkynningar
|
||||
reports: Kærur
|
||||
search: Leita
|
||||
|
@ -165,6 +166,7 @@ is:
|
|||
admin:write:reports: framkvæma umsjónaraðgerðir á kærur
|
||||
crypto: nota enda-í-enda dulritun
|
||||
follow: breyta venslum aðgangs
|
||||
profile: lesa einungis upplýsingar úr notandasniðinu þínu
|
||||
push: taka á móti ýti-tilkynningum til þín
|
||||
read: lesa öll gögn á notandaaðgangnum þínum
|
||||
read:accounts: sjá upplýsingar í notendaaðgöngum
|
||||
|
@ -174,7 +176,6 @@ is:
|
|||
read:filters: skoða síurnar þínar
|
||||
read:follows: sjá hverjum þú fylgist með
|
||||
read:lists: skoða listana þína
|
||||
read:me: lesa einungis grunnupplýsingar aðgangsins þíns
|
||||
read:mutes: skoða hverja þú þaggar
|
||||
read:notifications: sjá tilkynningarnar þínar
|
||||
read:reports: skoða skýrslurnar þína
|
||||
|
|
|
@ -135,6 +135,7 @@ it:
|
|||
media: Allegati multimediali
|
||||
mutes: Silenziati
|
||||
notifications: Notifiche
|
||||
profile: Il tuo profilo Mastodon
|
||||
push: Notifiche push
|
||||
reports: Segnalazioni
|
||||
search: Cerca
|
||||
|
@ -165,6 +166,7 @@ it:
|
|||
admin:write:reports: eseguire azioni di moderazione sulle segnalazioni
|
||||
crypto: utilizzare la crittografia end-to-end
|
||||
follow: modifica le relazioni tra profili
|
||||
profile: leggi solo le informazioni sul profilo del tuo account
|
||||
push: ricevere le tue notifiche push
|
||||
read: leggere tutti i dati del tuo profilo
|
||||
read:accounts: visualizzare le informazioni sui profili
|
||||
|
@ -174,7 +176,6 @@ it:
|
|||
read:filters: visualizzare i tuoi filtri
|
||||
read:follows: visualizzare i tuoi seguiti
|
||||
read:lists: visualizzare i tuoi elenchi
|
||||
read:me: leggi solo le informazioni di base del tuo account
|
||||
read:mutes: visualizzare i tuoi silenziamenti
|
||||
read:notifications: visualizzare le tue notifiche
|
||||
read:reports: visualizzare le tue segnalazioni
|
||||
|
|
|
@ -174,7 +174,6 @@ ja:
|
|||
read:filters: フィルターの読み取り
|
||||
read:follows: フォローの読み取り
|
||||
read:lists: リストの読み取り
|
||||
read:me: 自分のアカウントの基本的な情報の読み取りのみ
|
||||
read:mutes: ミュートの読み取り
|
||||
read:notifications: 通知の読み取り
|
||||
read:reports: 通報の読み取り
|
||||
|
|
|
@ -135,6 +135,7 @@ ko:
|
|||
media: 첨부된 미디어
|
||||
mutes: 뮤트
|
||||
notifications: 알림
|
||||
profile: 내 마스토돈 프로필
|
||||
push: 푸시 알림
|
||||
reports: 신고
|
||||
search: 검색
|
||||
|
@ -165,6 +166,7 @@ ko:
|
|||
admin:write:reports: 신고에 모더레이션 조치 취하기
|
||||
crypto: 종단간 암호화 사용
|
||||
follow: 계정 관계 수정
|
||||
profile: 내 계정의 프로필 정보만을 읽습니다
|
||||
push: 푸시 알림 받기
|
||||
read: 계정의 모든 데이터 읽기
|
||||
read:accounts: 계정 정보 보기
|
||||
|
@ -174,7 +176,6 @@ ko:
|
|||
read:filters: 필터 보기
|
||||
read:follows: 팔로우 보기
|
||||
read:lists: 리스트 보기
|
||||
read:me: 내 계정의 기본 정보만을 읽습니다
|
||||
read:mutes: 뮤트 보기
|
||||
read:notifications: 알림 보기
|
||||
read:reports: 신고 보기
|
||||
|
|
|
@ -174,7 +174,6 @@ lt:
|
|||
read:filters: matyti tavo filtrus
|
||||
read:follows: matyti tavo sekimus
|
||||
read:lists: matyti tavo sąrašus
|
||||
read:me: skaityti tik pagrindinę paskyros informaciją
|
||||
read:mutes: matyti tavo nutildymus
|
||||
read:notifications: matyti tavo pranešimus
|
||||
read:reports: matyti tavo ataskaitas
|
||||
|
|
|
@ -174,7 +174,6 @@ lv:
|
|||
read:filters: apskatīt savus filtrus
|
||||
read:follows: apskatīt savus sekotājus
|
||||
read:lists: apskatīt savus sarakstus
|
||||
read:me: lasīt tikai Tava konta pamatinformāciju
|
||||
read:mutes: apskatīt savus apklusinātos
|
||||
read:notifications: apskatīt savus paziņojumus
|
||||
read:reports: apskatīt savus pārskatus
|
||||
|
|
|
@ -135,6 +135,7 @@ nl:
|
|||
media: Mediabijlagen
|
||||
mutes: Negeren
|
||||
notifications: Meldingen
|
||||
profile: Jouw Mastodonprofiel
|
||||
push: Pushmeldingen
|
||||
reports: Rapportages
|
||||
search: Zoeken
|
||||
|
@ -165,6 +166,7 @@ nl:
|
|||
admin:write:reports: moderatieacties op rapportages uitvoeren
|
||||
crypto: end-to-end-encryptie gebruiken
|
||||
follow: volgrelaties tussen accounts bewerken
|
||||
profile: alleen de profielgegevens van jouw account lezen
|
||||
push: jouw pushmeldingen ontvangen
|
||||
read: alle gegevens van jouw account lezen
|
||||
read:accounts: informatie accounts bekijken
|
||||
|
@ -174,7 +176,6 @@ nl:
|
|||
read:filters: jouw filters bekijken
|
||||
read:follows: de accounts die jij volgt bekijken
|
||||
read:lists: jouw lijsten bekijken
|
||||
read:me: alleen de basisgegevens van jouw account lezen
|
||||
read:mutes: jouw genegeerde gebruikers bekijken
|
||||
read:notifications: jouw meldingen bekijken
|
||||
read:reports: jouw gerapporteerde berichten bekijken
|
||||
|
|
|
@ -174,7 +174,6 @@ nn:
|
|||
read:filters: sjå filtera dine
|
||||
read:follows: sjå fylgjarane dine
|
||||
read:lists: sjå listene dine
|
||||
read:me: les berre kontoen din sin grunnleggjande informasjon
|
||||
read:mutes: sjå kven du har målbunde
|
||||
read:notifications: sjå varsla dine
|
||||
read:reports: sjå rapportane dine
|
||||
|
|
|
@ -135,6 +135,7 @@ pl:
|
|||
media: Załączniki multimedialne
|
||||
mutes: Wyciszenia
|
||||
notifications: Powiadomienia
|
||||
profile: Twój profil
|
||||
push: Powiadomienia push
|
||||
reports: Zgłoszenia
|
||||
search: Szukaj
|
||||
|
@ -165,6 +166,7 @@ pl:
|
|||
admin:write:reports: wykonaj działania moderacyjne na zgłoszeniach
|
||||
crypto: użyj szyfrowania end-to-end
|
||||
follow: możliwość zarządzania relacjami kont
|
||||
profile: odczytaj tylko informacje o profilu
|
||||
push: otrzymywanie powiadomień push dla Twojego konta
|
||||
read: możliwość odczytu wszystkich danych konta
|
||||
read:accounts: dostęp do informacji o koncie
|
||||
|
@ -174,7 +176,6 @@ pl:
|
|||
read:filters: dostęp do filtrów
|
||||
read:follows: dostęp do listy obserwowanych
|
||||
read:lists: dostęp do Twoich list
|
||||
read:me: odczytaj tylko podstawowe informacje o koncie
|
||||
read:mutes: dostęp do listy wyciszonych
|
||||
read:notifications: możliwość odczytu powiadomień
|
||||
read:reports: dostęp do Twoich zgłoszeń
|
||||
|
|
|
@ -174,7 +174,6 @@ pt-BR:
|
|||
read:filters: ver seus filtros
|
||||
read:follows: ver quem você segue
|
||||
read:lists: ver suas listas
|
||||
read:me: ler só as informações básicas da sua conta
|
||||
read:mutes: ver seus silenciados
|
||||
read:notifications: ver suas notificações
|
||||
read:reports: ver suas denúncias
|
||||
|
|
|
@ -135,6 +135,7 @@ pt-PT:
|
|||
media: Anexos de media
|
||||
mutes: Silenciados
|
||||
notifications: Notificações
|
||||
profile: O seu perfil Mastodon
|
||||
push: Notificações push
|
||||
reports: Denúncias
|
||||
search: Pesquisa
|
||||
|
@ -165,6 +166,7 @@ pt-PT:
|
|||
admin:write:reports: executar ações de moderação em denúncias
|
||||
crypto: usa encriptação ponta-a-ponta
|
||||
follow: siga, bloqueie, desbloqueie, e deixa de seguir contas
|
||||
profile: apenas ler as informações do perfil da sua conta
|
||||
push: receber as suas notificações push
|
||||
read: tenha acesso aos dados da tua conta
|
||||
read:accounts: ver as informações da conta
|
||||
|
@ -174,7 +176,6 @@ pt-PT:
|
|||
read:filters: ver os seus filtros
|
||||
read:follows: ver quem você segue
|
||||
read:lists: ver as suas listas
|
||||
read:me: ler apenas as informações básicas da sua conta
|
||||
read:mutes: ver os utilizadores que silenciou
|
||||
read:notifications: ver as suas notificações
|
||||
read:reports: ver as suas denúncias
|
||||
|
|
|
@ -174,7 +174,6 @@ sl:
|
|||
read:filters: oglejte si svoje filtre
|
||||
read:follows: oglejte si svoje sledilce
|
||||
read:lists: oglejte si svoje sezname
|
||||
read:me: preberi le osnovne podatke računa
|
||||
read:mutes: oglejte si svoje utišane
|
||||
read:notifications: oglejte si svoja obvestila
|
||||
read:reports: oglejte si svoje prijave
|
||||
|
|
|
@ -135,6 +135,7 @@ sq:
|
|||
media: Bashkëngjitje media
|
||||
mutes: Heshtime
|
||||
notifications: Njoftime
|
||||
profile: Profili juaj Mastodon
|
||||
push: Njoftime Push
|
||||
reports: Raportime
|
||||
search: Kërkim
|
||||
|
@ -165,6 +166,7 @@ sq:
|
|||
admin:write:reports: të kryejë veprime moderimi në raportime
|
||||
crypto: përdor fshehtëzim skaj-më-skaj
|
||||
follow: të ndryshojë marrëdhënie llogarish
|
||||
profile: të lexojë vetëm hollësi profili llogarie tuaj
|
||||
push: të marrë njoftime push për ju
|
||||
read: të lexojë krejt të dhënat e llogarisë tuaj
|
||||
read:accounts: të shohë hollësi llogarish
|
||||
|
@ -174,7 +176,6 @@ sq:
|
|||
read:filters: të shohë filtrat tuaj
|
||||
read:follows: të shohë ndjekësit tuaj
|
||||
read:lists: të shohë listat tuaja
|
||||
read:me: të shohë vetëm hollësi elementare të llogarisë tuaj
|
||||
read:mutes: të shohë ç’keni heshtuar
|
||||
read:notifications: të shohë njoftimet tuaja
|
||||
read:reports: të shohë raportimet tuaja
|
||||
|
|
|
@ -135,6 +135,7 @@ sr-Latn:
|
|||
media: Multimedijalni prilozi
|
||||
mutes: Ignorisani
|
||||
notifications: Obaveštenja
|
||||
profile: Vaš Mastodon profil
|
||||
push: Prosleđena obaveštenja
|
||||
reports: Prijave
|
||||
search: Pretraga
|
||||
|
@ -165,6 +166,7 @@ sr-Latn:
|
|||
admin:write:reports: vršenje moderatorskih aktivnosti nad izveštajima
|
||||
crypto: korišćenje end-to-end enkripcije
|
||||
follow: menja odnose naloga
|
||||
profile: čita samo informacije o profilu vašeg naloga
|
||||
push: primanje prosleđenih obaveštenja
|
||||
read: čita podatke Vašeg naloga
|
||||
read:accounts: pogledaj informacije o nalozima
|
||||
|
@ -174,7 +176,6 @@ sr-Latn:
|
|||
read:filters: pogledaj svoje filtere
|
||||
read:follows: pogledaj koga pratiš
|
||||
read:lists: pogledaj svoje liste
|
||||
read:me: čita samo osnovne informacije o vašem nalogu
|
||||
read:mutes: pogledaj ignorisanja
|
||||
read:notifications: pogledaj svoja obaveštenja
|
||||
read:reports: pogledaj svoje prijave
|
||||
|
|
|
@ -135,6 +135,7 @@ sr:
|
|||
media: Мултимедијални прилози
|
||||
mutes: Игнорисани
|
||||
notifications: Обавештења
|
||||
profile: Ваш Mastodon профил
|
||||
push: Прослеђена обавештења
|
||||
reports: Пријаве
|
||||
search: Претрага
|
||||
|
@ -165,6 +166,7 @@ sr:
|
|||
admin:write:reports: вршење модераторских активности над извештајима
|
||||
crypto: коришћење end-to-end енкрипције
|
||||
follow: мења односе налога
|
||||
profile: чита само информације о профилу вашег налога
|
||||
push: примање прослеђених обавештења
|
||||
read: чита податке Вашег налога
|
||||
read:accounts: погледај информације о налозима
|
||||
|
@ -174,7 +176,6 @@ sr:
|
|||
read:filters: погледај своје филтере
|
||||
read:follows: погледај кога пратиш
|
||||
read:lists: погледај своје листе
|
||||
read:me: чита само основне информације о вашем налогу
|
||||
read:mutes: погледај игнорисања
|
||||
read:notifications: погледај своја обавештења
|
||||
read:reports: погледај своје пријаве
|
||||
|
|
|
@ -174,7 +174,6 @@ sv:
|
|||
read:filters: se dina filter
|
||||
read:follows: se vem du följer
|
||||
read:lists: se dina listor
|
||||
read:me: läs endast den grundläggande informationen för ditt konto
|
||||
read:mutes: se dina tystningar
|
||||
read:notifications: se dina notiser
|
||||
read:reports: se dina rapporter
|
||||
|
|
|
@ -174,7 +174,6 @@ th:
|
|||
read:filters: ดูตัวกรองของคุณ
|
||||
read:follows: ดูการติดตามของคุณ
|
||||
read:lists: ดูรายการของคุณ
|
||||
read:me: อ่านเฉพาะข้อมูลพื้นฐานของบัญชีของคุณเท่านั้น
|
||||
read:mutes: ดูการซ่อนของคุณ
|
||||
read:notifications: ดูการแจ้งเตือนของคุณ
|
||||
read:reports: ดูรายงานของคุณ
|
||||
|
|
|
@ -135,6 +135,7 @@ tr:
|
|||
media: Medya ekleri
|
||||
mutes: Sessize alınanlar
|
||||
notifications: Bildirimler
|
||||
profile: Mastodon profiliniz
|
||||
push: Anlık bildirimler
|
||||
reports: Şikayetler
|
||||
search: Arama
|
||||
|
@ -165,6 +166,7 @@ tr:
|
|||
admin:write:reports: raporlarda denetleme eylemleri gerçekleştirin
|
||||
crypto: uçtan uca şifreleme kullan
|
||||
follow: hesap ilişkilerini değiştirin
|
||||
profile: hesabınızın sadece profil bilgilerini okuma
|
||||
push: anlık bildirimlerizi alın
|
||||
read: hesabınızın tüm verilerini okuyun
|
||||
read:accounts: hesap bilgilerini görün
|
||||
|
@ -174,7 +176,6 @@ tr:
|
|||
read:filters: süzgeçlerinizi görün
|
||||
read:follows: takip ettiklerinizi görün
|
||||
read:lists: listelerinizi görün
|
||||
read:me: hesabınızın sadece temel bilgilerini okuma
|
||||
read:mutes: sessize aldıklarınızı görün
|
||||
read:notifications: bildirimlerinizi görün
|
||||
read:reports: raporlarınızı görün
|
||||
|
|
|
@ -135,6 +135,7 @@ uk:
|
|||
media: Мультимедійні вкладення
|
||||
mutes: Нехтувані
|
||||
notifications: Сповіщення
|
||||
profile: Ваш профіль Mastodon
|
||||
push: Push-сповіщення
|
||||
reports: Скарги
|
||||
search: Пошук
|
||||
|
@ -171,6 +172,7 @@ uk:
|
|||
admin:write:reports: модерувати скарги
|
||||
crypto: використовувати наскрізне шифрування
|
||||
follow: змінювати стосунки облікового запису
|
||||
profile: читати лише інформацію профілю вашого облікового запису
|
||||
push: отримувати Ваші Push-повідомлення
|
||||
read: читати усі дані вашого облікового запису
|
||||
read:accounts: бачити інформацію про облікові записи
|
||||
|
@ -180,7 +182,6 @@ uk:
|
|||
read:filters: бачити Ваші фільтри
|
||||
read:follows: бачити Ваші підписки
|
||||
read:lists: бачити Ваші списки
|
||||
read:me: читайте лише основну інформацію вашого облікового запису
|
||||
read:mutes: бачити ваші нехтування
|
||||
read:notifications: бачити Ваші сповіщення
|
||||
read:reports: бачити Ваші скарги
|
||||
|
|
|
@ -174,7 +174,6 @@ vi:
|
|||
read:filters: xem bộ lọc
|
||||
read:follows: xem những người theo dõi
|
||||
read:lists: xem danh sách
|
||||
read:me: chỉ đọc thông tin cơ bản tài khoản
|
||||
read:mutes: xem những người đã ẩn
|
||||
read:notifications: xem thông báo
|
||||
read:reports: xem báo cáo của bạn
|
||||
|
|
|
@ -135,6 +135,7 @@ zh-CN:
|
|||
media: 媒体文件
|
||||
mutes: 已被隐藏的
|
||||
notifications: 通知
|
||||
profile: 你的 Mastodon 个人资料
|
||||
push: 推送通知
|
||||
reports: 举报
|
||||
search: 搜索
|
||||
|
@ -165,6 +166,7 @@ zh-CN:
|
|||
admin:write:reports: 对举报执行管理操作
|
||||
crypto: 使用端到端加密
|
||||
follow: 关注或屏蔽用户
|
||||
profile: 仅读取你账户中的个人资料信息
|
||||
push: 接收你的账户的推送通知
|
||||
read: 读取你的账户数据
|
||||
read:accounts: 查看账号信息
|
||||
|
@ -174,7 +176,6 @@ zh-CN:
|
|||
read:filters: 查看你的过滤器
|
||||
read:follows: 查看你的关注
|
||||
read:lists: 查看你的列表
|
||||
read:me: 只读取你账户的基本信息
|
||||
read:mutes: 查看你的隐藏列表
|
||||
read:notifications: 查看你的通知
|
||||
read:reports: 查看你的举报
|
||||
|
|
|
@ -174,7 +174,6 @@ zh-HK:
|
|||
read:filters: 檢視你的過濾條件
|
||||
read:follows: 檢視你關注的人
|
||||
read:lists: 檢視你的清單
|
||||
read:me: 僅讀取帳號的基本資訊
|
||||
read:mutes: 檢視被你靜音的人
|
||||
read:notifications: 檢視你的通知
|
||||
read:reports: 檢視你的檢舉
|
||||
|
|
|
@ -135,6 +135,7 @@ zh-TW:
|
|||
media: 多媒體附加檔案
|
||||
mutes: 靜音
|
||||
notifications: 通知
|
||||
profile: 您 Mastodon 個人檔案
|
||||
push: 推播通知
|
||||
reports: 檢舉報告
|
||||
search: 搜尋
|
||||
|
@ -165,6 +166,7 @@ zh-TW:
|
|||
admin:write:reports: 對報告進行管理動作
|
||||
crypto: 使用端到端加密
|
||||
follow: 修改帳號關係
|
||||
profile: 僅讀取您的帳號個人檔案資訊
|
||||
push: 接收帳號的推播通知
|
||||
read: 讀取您所有的帳號資料
|
||||
read:accounts: 檢視帳號資訊
|
||||
|
@ -174,7 +176,6 @@ zh-TW:
|
|||
read:filters: 檢視您的過濾條件
|
||||
read:follows: 檢視您跟隨之使用者
|
||||
read:lists: 檢視您的列表
|
||||
read:me: 僅讀取您的帳號基本資訊
|
||||
read:mutes: 檢視您靜音的人
|
||||
read:notifications: 檢視您的通知
|
||||
read:reports: 檢視您的檢舉
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
class ChangeMentionStatusIdNonNullable < ActiveRecord::Migration[7.1]
|
||||
def change
|
||||
add_check_constraint :mentions, 'status_id IS NOT NULL', name: 'mentions_status_id_null', validate: false
|
||||
end
|
||||
end
|
|
@ -0,0 +1,14 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
class ValidateChangeMentionStatusIdNonNullable < ActiveRecord::Migration[7.1]
|
||||
def up
|
||||
validate_check_constraint :mentions, name: 'mentions_status_id_null'
|
||||
change_column_null :mentions, :status_id, false
|
||||
remove_check_constraint :mentions, name: 'mentions_status_id_null'
|
||||
end
|
||||
|
||||
def down
|
||||
add_check_constraint :mentions, 'status_id IS NOT NULL', name: 'mentions_status_id_null', validate: false
|
||||
change_column_null :mentions, :status_id, true
|
||||
end
|
||||
end
|
|
@ -0,0 +1,7 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
class ChangeMentionAccountIdNonNullable < ActiveRecord::Migration[7.1]
|
||||
def change
|
||||
add_check_constraint :mentions, 'account_id IS NOT NULL', name: 'mentions_account_id_null', validate: false
|
||||
end
|
||||
end
|
|
@ -0,0 +1,14 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
class ValidateChangeMentionAccountIdNonNullable < ActiveRecord::Migration[7.1]
|
||||
def up
|
||||
validate_check_constraint :mentions, name: 'mentions_account_id_null'
|
||||
change_column_null :mentions, :account_id, false
|
||||
remove_check_constraint :mentions, name: 'mentions_account_id_null'
|
||||
end
|
||||
|
||||
def down
|
||||
add_check_constraint :mentions, 'account_id IS NOT NULL', name: 'mentions_account_id_null', validate: false
|
||||
change_column_null :mentions, :account_id, true
|
||||
end
|
||||
end
|
|
@ -10,7 +10,7 @@
|
|||
#
|
||||
# It's strongly recommended that you check this file into your version control system.
|
||||
|
||||
ActiveRecord::Schema[7.1].define(version: 2024_06_03_195202) do
|
||||
ActiveRecord::Schema[7.1].define(version: 2024_06_07_094856) do
|
||||
# These are extensions that must be enabled in order to support this database
|
||||
enable_extension "plpgsql"
|
||||
|
||||
|
@ -661,10 +661,10 @@ ActiveRecord::Schema[7.1].define(version: 2024_06_03_195202) do
|
|||
end
|
||||
|
||||
create_table "mentions", force: :cascade do |t|
|
||||
t.bigint "status_id"
|
||||
t.bigint "status_id", null: false
|
||||
t.datetime "created_at", precision: nil, null: false
|
||||
t.datetime "updated_at", precision: nil, null: false
|
||||
t.bigint "account_id"
|
||||
t.bigint "account_id", null: false
|
||||
t.boolean "silent", default: false, null: false
|
||||
t.index ["account_id", "status_id"], name: "index_mentions_on_account_id_and_status_id", unique: true
|
||||
t.index ["status_id"], name: "index_mentions_on_status_id"
|
||||
|
|
|
@ -13,6 +13,7 @@ module Mastodon::CLI
|
|||
option :remove_headers, type: :boolean, default: false
|
||||
option :include_follows, type: :boolean, default: false
|
||||
option :concurrency, type: :numeric, default: 5, aliases: [:c]
|
||||
option :verbose, type: :boolean, default: false, aliases: [:v]
|
||||
option :dry_run, type: :boolean, default: false
|
||||
desc 'remove', 'Remove remote media files, headers or avatars'
|
||||
long_desc <<-DESC
|
||||
|
|
|
@ -12,6 +12,8 @@ module Paperclip
|
|||
attachment.instance.blurhash = Blurhash.encode(width, height, data, **(options[:blurhash] || {}))
|
||||
|
||||
@file
|
||||
rescue Vips::Error => e
|
||||
raise Paperclip::Error, "Error while generating blurhash for #{@basename}: #{e}"
|
||||
end
|
||||
|
||||
private
|
||||
|
|
|
@ -69,6 +69,8 @@ module Paperclip
|
|||
attachment.instance.file.instance_write(:meta, (attachment.instance.file.instance_read(:meta) || {}).merge(meta))
|
||||
|
||||
@file
|
||||
rescue Vips::Error => e
|
||||
raise Paperclip::Error, "Error while extracting colors for #{@basename}: #{e}"
|
||||
end
|
||||
|
||||
private
|
||||
|
|
|
@ -68,7 +68,7 @@ module Paperclip
|
|||
end
|
||||
|
||||
dst
|
||||
rescue Terrapin::ExitStatusError => e
|
||||
rescue Vips::Error, Terrapin::ExitStatusError => e
|
||||
raise Paperclip::Error, "Error while optimizing #{@basename}: #{e}"
|
||||
rescue Terrapin::CommandNotFoundError
|
||||
raise Paperclip::Errors::CommandNotFoundError, 'Could not run the `ffmpeg` command. Please install ffmpeg.'
|
||||
|
|
|
@ -69,20 +69,22 @@ RSpec.describe Admin::AccountAction do
|
|||
end
|
||||
end
|
||||
|
||||
it 'sends notification, log the action, and closes other reports', :aggregate_failures do
|
||||
other_report = Fabricate(:report, target_account: target_account)
|
||||
|
||||
emails = []
|
||||
expect do
|
||||
emails = capture_emails { subject }
|
||||
end.to (change(Admin::ActionLog.where(action: type), :count).by 1)
|
||||
.and(change { other_report.reload.action_taken? }.from(false).to(true))
|
||||
it 'sends email to target account user', :sidekiq_inline do
|
||||
emails = capture_emails { subject }
|
||||
|
||||
expect(emails).to contain_exactly(
|
||||
have_attributes(
|
||||
to: contain_exactly(target_account.user.email)
|
||||
)
|
||||
)
|
||||
end
|
||||
|
||||
it 'sends notification, log the action, and closes other reports', :aggregate_failures do
|
||||
other_report = Fabricate(:report, target_account: target_account)
|
||||
|
||||
expect { subject }
|
||||
.to (change(Admin::ActionLog.where(action: type), :count).by 1)
|
||||
.and(change { other_report.reload.action_taken? }.from(false).to(true))
|
||||
|
||||
expect(LocalNotificationWorker).to have_enqueued_sidekiq_job(target_account.id, anything, 'AccountWarning', 'moderation_warning')
|
||||
end
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
require 'rails_helper'
|
||||
|
||||
RSpec.describe CustomEmoji do
|
||||
RSpec.describe CustomEmoji, :paperclip_processing do
|
||||
describe '#search' do
|
||||
subject { described_class.search(search_term) }
|
||||
|
||||
|
|
|
@ -10,10 +10,16 @@ RSpec.describe 'Account actions' do
|
|||
let(:headers) { { 'Authorization' => "Bearer #{token.token}" } }
|
||||
|
||||
shared_examples 'a successful notification delivery' do
|
||||
it 'notifies the user about the action taken' do
|
||||
expect { subject }
|
||||
.to have_enqueued_job(ActionMailer::MailDeliveryJob)
|
||||
.with('UserMailer', 'warning', 'deliver_now!', args: [User, AccountWarning])
|
||||
it 'notifies the user about the action taken', :sidekiq_inline do
|
||||
emails = capture_emails { subject }
|
||||
|
||||
expect(emails.size)
|
||||
.to eq(1)
|
||||
|
||||
expect(emails.first)
|
||||
.to have_attributes(
|
||||
to: contain_exactly(target_account.user.email)
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -33,30 +33,28 @@ RSpec.describe 'Reports' do
|
|||
|
||||
it_behaves_like 'forbidden for wrong scope', 'read read:reports'
|
||||
|
||||
it 'creates a report', :aggregate_failures do
|
||||
perform_enqueued_jobs do
|
||||
emails = capture_emails { subject }
|
||||
it 'creates a report', :aggregate_failures, :sidekiq_inline do
|
||||
emails = capture_emails { subject }
|
||||
|
||||
expect(response).to have_http_status(200)
|
||||
expect(body_as_json).to match(
|
||||
a_hash_including(
|
||||
status_ids: [status.id.to_s],
|
||||
category: category,
|
||||
comment: 'reasons'
|
||||
)
|
||||
expect(response).to have_http_status(200)
|
||||
expect(body_as_json).to match(
|
||||
a_hash_including(
|
||||
status_ids: [status.id.to_s],
|
||||
category: category,
|
||||
comment: 'reasons'
|
||||
)
|
||||
)
|
||||
|
||||
expect(target_account.targeted_reports).to_not be_empty
|
||||
expect(target_account.targeted_reports.first.comment).to eq 'reasons'
|
||||
expect(target_account.targeted_reports).to_not be_empty
|
||||
expect(target_account.targeted_reports.first.comment).to eq 'reasons'
|
||||
|
||||
expect(emails.size)
|
||||
.to eq(1)
|
||||
expect(emails.first)
|
||||
.to have_attributes(
|
||||
to: contain_exactly(admin.email),
|
||||
subject: eq(I18n.t('admin_mailer.new_report.subject', instance: Rails.configuration.x.local_domain, id: target_account.targeted_reports.first.id))
|
||||
)
|
||||
end
|
||||
expect(emails.size)
|
||||
.to eq(1)
|
||||
expect(emails.first)
|
||||
.to have_attributes(
|
||||
to: contain_exactly(admin.email),
|
||||
subject: eq(I18n.t('admin_mailer.new_report.subject', instance: Rails.configuration.x.local_domain, id: target_account.targeted_reports.first.id))
|
||||
)
|
||||
end
|
||||
|
||||
context 'when a status does not belong to the reported account' do
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
require 'rails_helper'
|
||||
|
||||
RSpec.describe AppealService do
|
||||
RSpec.describe AppealService, :sidekiq_inline do
|
||||
describe '#call' do
|
||||
let!(:admin) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) }
|
||||
|
||||
|
|
Loading…
Reference in New Issue