mirror of
https://git.kescher.at/CatCatNya/catstodon.git
synced 2025-01-18 09:14:05 +01:00
Merge branch 'upstream-main' into develop
Some checks failed
Bundler Audit / security (push) Has been cancelled
Check i18n / check-i18n (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
Check formatting / lint (push) Has been cancelled
CSS Linting / lint (push) Has been cancelled
Haml Linting / lint (push) Has been cancelled
JavaScript Linting / lint (push) Has been cancelled
Ruby Linting / lint (push) Has been cancelled
JavaScript Testing / test (push) Has been cancelled
Historical data migration test / test (14-alpine) (push) Has been cancelled
Historical data migration test / test (15-alpine) (push) Has been cancelled
Historical data migration test / test (16-alpine) (push) Has been cancelled
Ruby Testing / test (.ruby-version) (push) Has been cancelled
Ruby Testing / test (3.2) (push) Has been cancelled
Ruby Testing / test (3.3) (push) Has been cancelled
Ruby Testing / Libvips tests (push) Has been cancelled
Ruby Testing / End to End testing (push) Has been cancelled
Historical data migration test / test (17-alpine) (push) Has been cancelled
Ruby Testing / build (production) (push) Has been cancelled
Ruby Testing / build (test) (push) Has been cancelled
Ruby Testing / Elastic Search integration testing (push) Has been cancelled
Some checks failed
Bundler Audit / security (push) Has been cancelled
Check i18n / check-i18n (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
Check formatting / lint (push) Has been cancelled
CSS Linting / lint (push) Has been cancelled
Haml Linting / lint (push) Has been cancelled
JavaScript Linting / lint (push) Has been cancelled
Ruby Linting / lint (push) Has been cancelled
JavaScript Testing / test (push) Has been cancelled
Historical data migration test / test (14-alpine) (push) Has been cancelled
Historical data migration test / test (15-alpine) (push) Has been cancelled
Historical data migration test / test (16-alpine) (push) Has been cancelled
Ruby Testing / test (.ruby-version) (push) Has been cancelled
Ruby Testing / test (3.2) (push) Has been cancelled
Ruby Testing / test (3.3) (push) Has been cancelled
Ruby Testing / Libvips tests (push) Has been cancelled
Ruby Testing / End to End testing (push) Has been cancelled
Historical data migration test / test (17-alpine) (push) Has been cancelled
Ruby Testing / build (production) (push) Has been cancelled
Ruby Testing / build (test) (push) Has been cancelled
Ruby Testing / Elastic Search integration testing (push) Has been cancelled
This commit is contained in:
commit
4d9949c0ef
298 changed files with 4220 additions and 1690 deletions
|
@ -1,10 +1,6 @@
|
|||
[production]
|
||||
defaults
|
||||
> 0.2%
|
||||
firefox >= 78
|
||||
ios >= 15.6
|
||||
not dead
|
||||
not OperaMini all
|
||||
|
||||
[development]
|
||||
supports es6-module
|
||||
|
|
|
@ -59,7 +59,7 @@ body:
|
|||
Any additional technical details you may have, like logs or error traces
|
||||
value: |
|
||||
If this is happening on your own Mastodon server, please fill out those:
|
||||
- Ruby version: (from `ruby --version`, eg. v3.3.5)
|
||||
- Ruby version: (from `ruby --version`, eg. v3.4.1)
|
||||
- Node.js version: (from `node --version`, eg. v20.18.0)
|
||||
validations:
|
||||
required: false
|
||||
|
|
2
.github/ISSUE_TEMPLATE/3.troubleshooting.yml
vendored
2
.github/ISSUE_TEMPLATE/3.troubleshooting.yml
vendored
|
@ -60,7 +60,7 @@ body:
|
|||
value: |
|
||||
Please at least include those informations:
|
||||
- Operating system: (eg. Ubuntu 22.04)
|
||||
- Ruby version: (from `ruby --version`, eg. v3.3.5)
|
||||
- Ruby version: (from `ruby --version`, eg. v3.4.1)
|
||||
- Node.js version: (from `node --version`, eg. v20.18.0)
|
||||
validations:
|
||||
required: false
|
||||
|
|
5
.github/renovate.json5
vendored
5
.github/renovate.json5
vendored
|
@ -14,11 +14,6 @@
|
|||
// If we do not want a package to be grouped with others, we need to set its groupName
|
||||
// to `null` after any other rule set it to something.
|
||||
dependencyDashboardHeader: 'This issue lists Renovate updates and detected dependencies. Read the [Dependency Dashboard](https://docs.renovatebot.com/key-concepts/dashboard/) docs to learn more. Before approving any upgrade: read the description and comments in the [`renovate.json5` file](https://github.com/mastodon/mastodon/blob/main/.github/renovate.json5).',
|
||||
constraints: {
|
||||
// Mastodon should work on Ruby 3.4, but its test dependencies are currently uninstallable on Ruby 3.4.
|
||||
// TODO: remove this once https://github.com/briandunn/flatware/issues/103 is fixed
|
||||
ruby: '3.3',
|
||||
},
|
||||
postUpdateOptions: ['yarnDedupeHighest'],
|
||||
packageRules: [
|
||||
{
|
||||
|
|
2
.github/workflows/check-i18n.yml
vendored
2
.github/workflows/check-i18n.yml
vendored
|
@ -18,7 +18,7 @@ permissions:
|
|||
|
||||
jobs:
|
||||
check-i18n:
|
||||
runs-on: ubuntu-24.04
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
|
|
@ -51,7 +51,7 @@ jobs:
|
|||
|
||||
# Create or update the pull request
|
||||
- name: Create Pull Request
|
||||
uses: peter-evans/create-pull-request@v7.0.5
|
||||
uses: peter-evans/create-pull-request@v7.0.6
|
||||
with:
|
||||
commit-message: 'New Crowdin translations'
|
||||
title: 'New Crowdin Translations for ${{ github.base_ref || github.ref_name }} (automated)'
|
||||
|
|
2
.github/workflows/crowdin-download.yml
vendored
2
.github/workflows/crowdin-download.yml
vendored
|
@ -53,7 +53,7 @@ jobs:
|
|||
|
||||
# Create or update the pull request
|
||||
- name: Create Pull Request
|
||||
uses: peter-evans/create-pull-request@v7.0.5
|
||||
uses: peter-evans/create-pull-request@v7
|
||||
with:
|
||||
commit-message: 'New Crowdin translations'
|
||||
title: 'New Crowdin Translations (automated)'
|
||||
|
|
2
.github/workflows/lint-haml.yml
vendored
2
.github/workflows/lint-haml.yml
vendored
|
@ -43,4 +43,4 @@ jobs:
|
|||
- name: Run haml-lint
|
||||
run: |
|
||||
echo "::add-matcher::.github/workflows/haml-lint-problem-matcher.json"
|
||||
bin/haml-lint --reporter github
|
||||
bin/haml-lint --parallel --reporter github
|
||||
|
|
6
.github/workflows/test-ruby.yml
vendored
6
.github/workflows/test-ruby.yml
vendored
|
@ -125,6 +125,7 @@ jobs:
|
|||
matrix:
|
||||
ruby-version:
|
||||
- '3.2'
|
||||
- '3.3'
|
||||
- '.ruby-version'
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
@ -174,7 +175,7 @@ jobs:
|
|||
|
||||
test-libvips:
|
||||
name: Libvips tests
|
||||
runs-on: ubuntu-24.04
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
needs:
|
||||
- build
|
||||
|
@ -226,6 +227,7 @@ jobs:
|
|||
matrix:
|
||||
ruby-version:
|
||||
- '3.2'
|
||||
- '3.3'
|
||||
- '.ruby-version'
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
@ -304,6 +306,7 @@ jobs:
|
|||
matrix:
|
||||
ruby-version:
|
||||
- '3.2'
|
||||
- '3.3'
|
||||
- '.ruby-version'
|
||||
|
||||
steps:
|
||||
|
@ -420,6 +423,7 @@ jobs:
|
|||
matrix:
|
||||
ruby-version:
|
||||
- '3.2'
|
||||
- '3.3'
|
||||
- '.ruby-version'
|
||||
search-image:
|
||||
- docker.elastic.co/elasticsearch/elasticsearch:7.17.13
|
||||
|
|
2
.nvmrc
2
.nvmrc
|
@ -1 +1 @@
|
|||
22.12
|
||||
22.13
|
||||
|
|
|
@ -29,9 +29,6 @@ Style/IfUnlessModifier:
|
|||
Style/KeywordArgumentsMerging:
|
||||
Enabled: false
|
||||
|
||||
Style/MultipleComparison:
|
||||
Enabled: false
|
||||
|
||||
Style/NumericLiterals:
|
||||
AllowedPatterns:
|
||||
- \d{4}_\d{2}_\d{2}_\d{6}
|
||||
|
@ -61,3 +58,6 @@ Style/TrailingCommaInArrayLiteral:
|
|||
|
||||
Style/TrailingCommaInHashLiteral:
|
||||
EnforcedStyleForMultiline: comma
|
||||
|
||||
Style/WordArray:
|
||||
MinSize: 3 # Override default of 2
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# This configuration was generated by
|
||||
# `rubocop --auto-gen-config --auto-gen-only-exclude --no-offense-counts --no-auto-gen-timestamp`
|
||||
# using RuboCop version 1.69.1.
|
||||
# using RuboCop version 1.70.0.
|
||||
# The point is for the user to remove these configuration records
|
||||
# one by one as the offenses are removed from the code base.
|
||||
# Note that changes in the inspected code, or installation of new
|
||||
|
@ -8,7 +8,7 @@
|
|||
|
||||
Lint/NonLocalExitFromIterator:
|
||||
Exclude:
|
||||
- 'app/helpers/jsonld_helper.rb'
|
||||
- 'app/helpers/json_ld_helper.rb'
|
||||
|
||||
# Configuration parameters: AllowedMethods, AllowedPatterns, CountRepeatedAttributes.
|
||||
Metrics/AbcSize:
|
||||
|
@ -69,20 +69,11 @@ Style/MapToHash:
|
|||
Exclude:
|
||||
- 'app/models/status.rb'
|
||||
|
||||
# This cop supports unsafe autocorrection (--autocorrect-all).
|
||||
# Configuration parameters: EnforcedStyle.
|
||||
# SupportedStyles: literals, strict
|
||||
Style/MutableConstant:
|
||||
Exclude:
|
||||
- 'app/models/tag.rb'
|
||||
- 'app/services/delete_account_service.rb'
|
||||
- 'lib/mastodon/migration_warning.rb'
|
||||
|
||||
# Configuration parameters: AllowedMethods.
|
||||
# AllowedMethods: respond_to_missing?
|
||||
Style/OptionalBooleanParameter:
|
||||
Exclude:
|
||||
- 'app/helpers/jsonld_helper.rb'
|
||||
- 'app/helpers/json_ld_helper.rb'
|
||||
- 'app/lib/admin/system_check/message.rb'
|
||||
- 'app/lib/request.rb'
|
||||
- 'app/lib/webfinger.rb'
|
||||
|
@ -103,10 +94,3 @@ Style/RedundantConstantBase:
|
|||
Exclude:
|
||||
- 'config/environments/production.rb'
|
||||
- 'config/initializers/sidekiq.rb'
|
||||
|
||||
# This cop supports safe autocorrection (--autocorrect).
|
||||
# Configuration parameters: WordRegex.
|
||||
# SupportedStyles: percent, brackets
|
||||
Style/WordArray:
|
||||
EnforcedStyle: percent
|
||||
MinSize: 3
|
||||
|
|
|
@ -1 +1 @@
|
|||
3.3.6
|
||||
3.4.1
|
||||
|
|
|
@ -7,12 +7,18 @@ All release dates, as well as most other dates, are intended to be read as "with
|
|||
## [Unreleased] - UNRELEASED
|
||||
|
||||
- Upstream changes
|
||||
- This includes a ruby version bump to 3.4.1. Please install Ruby 3.4.1 before installing this version.
|
||||
- Emoji reaction patch changes
|
||||
|
||||
## [v4.3.3+cat+1.0.0] - 2025-01-16
|
||||
|
||||
- Upstream changes, including security changes. See https://github.com/glitch-soc/mastodon/releases/tag/v4.3.3.
|
||||
|
||||
## [v4.3.2+cat.1.0.1] - 2025-01-04
|
||||
|
||||
- The character counter is now always below the text field, not somewhere among the action buttons
|
||||
- The standalone share page now has the correct amount of remaining characters. Previously, it would assume a maximum character count of 500.
|
||||
- The standalone share page now has the correct amount of remaining characters. Previously, it would assume a maximum
|
||||
character count of 500.
|
||||
- Emoji reaction patch changes (removal of old, obsolete migration)
|
||||
|
||||
## [v4.3.2+cat.1.0.0] - 2024-12-30
|
||||
|
|
|
@ -2,6 +2,24 @@
|
|||
|
||||
All notable changes to this project will be documented in this file.
|
||||
|
||||
## [4.3.3] - 2025-01-16
|
||||
|
||||
### Security
|
||||
|
||||
- Fix insufficient validation of account URIs ([GHSA-5wxh-3p65-r4g6](https://github.com/mastodon/mastodon/security/advisories/GHSA-5wxh-3p65-r4g6))
|
||||
- Update dependencies
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fix `libyaml` missing from `Dockerfile` build stage (#33591 by @vmstan)
|
||||
- Fix incorrect notification settings migration for non-followers (#33348 by @ClearlyClaire)
|
||||
- Fix down clause for notification policy v2 migrations (#33340 by @jesseplusplus)
|
||||
- Fix error decrementing status count when `FeaturedTags#last_status_at` is `nil` (#33320 by @ClearlyClaire)
|
||||
- Fix last paginated notification group only including data on a single notification (#33271 by @ClearlyClaire)
|
||||
- Fix processing of mentions for post edits with an existing corresponding silent mention (#33227 by @ClearlyClaire)
|
||||
- Fix deletion of unconfirmed users with Webauthn set (#33186 by @ClearlyClaire)
|
||||
- Fix empty authors preview card serialization (#33151, #33466 by @mjankowski and @ClearlyClaire)
|
||||
|
||||
## [4.3.2] - 2024-12-03
|
||||
|
||||
### Added
|
||||
|
|
|
@ -50,7 +50,7 @@ You can contribute in the following ways:
|
|||
If your contributions are accepted into Mastodon, you can request to be paid through [our OpenCollective](https://opencollective.com/mastodon).
|
||||
|
||||
Please review the org-level [contribution guidelines] for high-level acceptance
|
||||
criteria guidance.
|
||||
criteria guidance and the [DEVELOPMENT] guide for environment-specific details.
|
||||
|
||||
[contribution guidelines]: https://github.com/mastodon/.github/blob/main/CONTRIBUTING.md
|
||||
|
||||
|
@ -93,3 +93,5 @@ It is not always possible to phrase every change in such a manner, but it is des
|
|||
The [Mastodon documentation](https://docs.joinmastodon.org) is a statically generated site. You can [submit merge requests to mastodon/documentation](https://github.com/mastodon/documentation).
|
||||
|
||||
</blockquote>
|
||||
|
||||
[DEVELOPMENT]: docs/DEVELOPMENT.md
|
||||
|
|
|
@ -10,9 +10,9 @@
|
|||
ARG TARGETPLATFORM=${TARGETPLATFORM}
|
||||
ARG BUILDPLATFORM=${BUILDPLATFORM}
|
||||
|
||||
# Ruby image to use for base image, change with [--build-arg RUBY_VERSION="3.3.x"]
|
||||
# Ruby image to use for base image, change with [--build-arg RUBY_VERSION="3.4.x"]
|
||||
# renovate: datasource=docker depName=docker.io/ruby
|
||||
ARG RUBY_VERSION="3.3.6"
|
||||
ARG RUBY_VERSION="3.4.1"
|
||||
# # Node version to use in base image, change with [--build-arg NODE_MAJOR_VERSION="20"]
|
||||
# renovate: datasource=node-version depName=node
|
||||
ARG NODE_MAJOR_VERSION="22"
|
||||
|
@ -20,7 +20,7 @@ ARG NODE_MAJOR_VERSION="22"
|
|||
ARG DEBIAN_VERSION="bookworm"
|
||||
# Node image to use for base image based on combined variables (ex: 20-bookworm-slim)
|
||||
FROM docker.io/node:${NODE_MAJOR_VERSION}-${DEBIAN_VERSION}-slim AS node
|
||||
# Ruby image to use for base image based on combined variables (ex: 3.3.x-slim-bookworm)
|
||||
# Ruby image to use for base image based on combined variables (ex: 3.4.x-slim-bookworm)
|
||||
FROM docker.io/ruby:${RUBY_VERSION}-slim-${DEBIAN_VERSION} AS ruby
|
||||
|
||||
# Resulting version string is vX.X.X-MASTODON_VERSION_PRERELEASE+MASTODON_VERSION_METADATA
|
||||
|
@ -153,6 +153,7 @@ RUN \
|
|||
libpq-dev \
|
||||
libssl-dev \
|
||||
libtool \
|
||||
libyaml-dev \
|
||||
meson \
|
||||
nasm \
|
||||
pkg-config \
|
||||
|
|
8
Gemfile
8
Gemfile
|
@ -1,7 +1,7 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
source 'https://rubygems.org'
|
||||
ruby '>= 3.2.0', '< 3.5'
|
||||
ruby '>= 3.2.0', '< 3.5.0'
|
||||
|
||||
gem 'propshaft'
|
||||
gem 'puma', '~> 6.3'
|
||||
|
@ -94,7 +94,7 @@ gem 'twitter-text', '~> 3.1.0'
|
|||
gem 'tzinfo-data', '~> 1.2023'
|
||||
gem 'webauthn', '~> 3.0'
|
||||
gem 'webpacker', '~> 5.4'
|
||||
gem 'webpush', github: 'ClearlyClaire/webpush', ref: 'f14a4d52e201128b1b00245d11b6de80d6cfdcd9'
|
||||
gem 'webpush', github: 'mastodon/webpush', ref: '9631ac63045cfabddacc69fc06e919b4c13eb913'
|
||||
|
||||
gem 'json-ld'
|
||||
gem 'json-ld-preloaded', '~> 3.2'
|
||||
|
@ -108,7 +108,7 @@ group :opentelemetry do
|
|||
gem 'opentelemetry-instrumentation-active_model_serializers', '~> 0.21.0', require: false
|
||||
gem 'opentelemetry-instrumentation-concurrent_ruby', '~> 0.21.2', require: false
|
||||
gem 'opentelemetry-instrumentation-excon', '~> 0.22.0', require: false
|
||||
gem 'opentelemetry-instrumentation-faraday', '~> 0.24.1', require: false
|
||||
gem 'opentelemetry-instrumentation-faraday', '~> 0.25.0', require: false
|
||||
gem 'opentelemetry-instrumentation-http', '~> 0.23.2', require: false
|
||||
gem 'opentelemetry-instrumentation-http_client', '~> 0.22.3', require: false
|
||||
gem 'opentelemetry-instrumentation-net_http', '~> 0.22.4', require: false
|
||||
|
@ -125,7 +125,7 @@ group :test do
|
|||
gem 'flatware-rspec'
|
||||
|
||||
# Adds RSpec Error/Warning annotations to GitHub PRs on the Files tab
|
||||
gem 'rspec-github', '~> 2.4', require: false
|
||||
gem 'rspec-github', '~> 3.0', require: false
|
||||
|
||||
# RSpec helpers for email specs
|
||||
gem 'email_spec'
|
||||
|
|
51
Gemfile.lock
51
Gemfile.lock
|
@ -1,9 +1,9 @@
|
|||
GIT
|
||||
remote: https://github.com/ClearlyClaire/webpush.git
|
||||
revision: f14a4d52e201128b1b00245d11b6de80d6cfdcd9
|
||||
ref: f14a4d52e201128b1b00245d11b6de80d6cfdcd9
|
||||
remote: https://github.com/mastodon/webpush.git
|
||||
revision: 9631ac63045cfabddacc69fc06e919b4c13eb913
|
||||
ref: 9631ac63045cfabddacc69fc06e919b4c13eb913
|
||||
specs:
|
||||
webpush (0.3.8)
|
||||
webpush (1.1.0)
|
||||
hkdf (~> 0.2)
|
||||
jwt (~> 2.0)
|
||||
|
||||
|
@ -94,7 +94,7 @@ GEM
|
|||
ast (2.4.2)
|
||||
attr_required (1.0.2)
|
||||
aws-eventstream (1.3.0)
|
||||
aws-partitions (1.1029.0)
|
||||
aws-partitions (1.1032.0)
|
||||
aws-sdk-core (3.214.1)
|
||||
aws-eventstream (~> 1, >= 1.3.0)
|
||||
aws-partitions (~> 1, >= 1.992.0)
|
||||
|
@ -103,7 +103,7 @@ GEM
|
|||
aws-sdk-kms (1.96.0)
|
||||
aws-sdk-core (~> 3, >= 3.210.0)
|
||||
aws-sigv4 (~> 1.5)
|
||||
aws-sdk-s3 (1.176.1)
|
||||
aws-sdk-s3 (1.177.0)
|
||||
aws-sdk-core (~> 3, >= 3.210.0)
|
||||
aws-sdk-kms (~> 1)
|
||||
aws-sigv4 (~> 1.5)
|
||||
|
@ -160,7 +160,7 @@ GEM
|
|||
cocoon (1.2.15)
|
||||
color_diff (0.1)
|
||||
concurrent-ruby (1.3.4)
|
||||
connection_pool (2.4.1)
|
||||
connection_pool (2.5.0)
|
||||
cose (1.3.1)
|
||||
cbor (~> 0.5.9)
|
||||
openssl-signature_algorithm (~> 1.0)
|
||||
|
@ -233,16 +233,16 @@ GEM
|
|||
faraday-net_http (3.4.0)
|
||||
net-http (>= 0.5.0)
|
||||
fast_blank (1.0.1)
|
||||
fastimage (2.3.1)
|
||||
fastimage (2.4.0)
|
||||
ffi (1.17.1)
|
||||
ffi-compiler (1.3.2)
|
||||
ffi (>= 1.15.5)
|
||||
rake
|
||||
flatware (2.3.3)
|
||||
flatware (2.3.4)
|
||||
drb
|
||||
thor (< 2.0)
|
||||
flatware-rspec (2.3.3)
|
||||
flatware (= 2.3.3)
|
||||
flatware-rspec (2.3.4)
|
||||
flatware (= 2.3.4)
|
||||
rspec (>= 3.6)
|
||||
fog-core (2.5.0)
|
||||
builder
|
||||
|
@ -490,7 +490,7 @@ GEM
|
|||
opentelemetry-instrumentation-active_job (0.7.8)
|
||||
opentelemetry-api (~> 1.0)
|
||||
opentelemetry-instrumentation-base (~> 0.22.1)
|
||||
opentelemetry-instrumentation-active_model_serializers (0.21.0)
|
||||
opentelemetry-instrumentation-active_model_serializers (0.21.1)
|
||||
opentelemetry-api (~> 1.0)
|
||||
opentelemetry-instrumentation-active_support (>= 0.7.0)
|
||||
opentelemetry-instrumentation-base (~> 0.22.1)
|
||||
|
@ -510,7 +510,7 @@ GEM
|
|||
opentelemetry-instrumentation-excon (0.22.5)
|
||||
opentelemetry-api (~> 1.0)
|
||||
opentelemetry-instrumentation-base (~> 0.22.1)
|
||||
opentelemetry-instrumentation-faraday (0.24.8)
|
||||
opentelemetry-instrumentation-faraday (0.25.0)
|
||||
opentelemetry-api (~> 1.0)
|
||||
opentelemetry-instrumentation-base (~> 0.22.1)
|
||||
opentelemetry-instrumentation-http (0.23.5)
|
||||
|
@ -522,14 +522,14 @@ GEM
|
|||
opentelemetry-instrumentation-net_http (0.22.8)
|
||||
opentelemetry-api (~> 1.0)
|
||||
opentelemetry-instrumentation-base (~> 0.22.1)
|
||||
opentelemetry-instrumentation-pg (0.29.1)
|
||||
opentelemetry-instrumentation-pg (0.29.2)
|
||||
opentelemetry-api (~> 1.0)
|
||||
opentelemetry-helpers-sql-obfuscation
|
||||
opentelemetry-instrumentation-base (~> 0.22.1)
|
||||
opentelemetry-instrumentation-rack (0.25.0)
|
||||
opentelemetry-api (~> 1.0)
|
||||
opentelemetry-instrumentation-base (~> 0.22.1)
|
||||
opentelemetry-instrumentation-rails (0.34.0)
|
||||
opentelemetry-instrumentation-rails (0.34.1)
|
||||
opentelemetry-api (~> 1.0)
|
||||
opentelemetry-instrumentation-action_mailer (~> 0.3.0)
|
||||
opentelemetry-instrumentation-action_pack (~> 0.10.0)
|
||||
|
@ -538,6 +538,7 @@ GEM
|
|||
opentelemetry-instrumentation-active_record (~> 0.8.0)
|
||||
opentelemetry-instrumentation-active_support (~> 0.7.0)
|
||||
opentelemetry-instrumentation-base (~> 0.22.1)
|
||||
opentelemetry-instrumentation-concurrent_ruby (~> 0.21.4)
|
||||
opentelemetry-instrumentation-redis (0.25.7)
|
||||
opentelemetry-api (~> 1.0)
|
||||
opentelemetry-instrumentation-base (~> 0.22.1)
|
||||
|
@ -555,7 +556,7 @@ GEM
|
|||
opentelemetry-api (~> 1.0)
|
||||
orm_adapter (0.5.0)
|
||||
ostruct (0.6.1)
|
||||
ox (2.14.19)
|
||||
ox (2.14.20)
|
||||
bigdecimal (>= 3.0)
|
||||
parallel (1.26.3)
|
||||
parser (3.3.6.0)
|
||||
|
@ -690,7 +691,7 @@ GEM
|
|||
rspec-expectations (3.13.3)
|
||||
diff-lcs (>= 1.2.0, < 2.0)
|
||||
rspec-support (~> 3.13.0)
|
||||
rspec-github (2.4.0)
|
||||
rspec-github (3.0.0)
|
||||
rspec-core (~> 3.0)
|
||||
rspec-mocks (3.13.2)
|
||||
diff-lcs (>= 1.2.0, < 2.0)
|
||||
|
@ -709,7 +710,7 @@ GEM
|
|||
rspec-mocks (~> 3.0)
|
||||
sidekiq (>= 5, < 8)
|
||||
rspec-support (3.13.2)
|
||||
rubocop (1.69.2)
|
||||
rubocop (1.70.0)
|
||||
json (~> 2.3)
|
||||
language_server-protocol (>= 3.17.0)
|
||||
parallel (~> 1.10)
|
||||
|
@ -723,7 +724,7 @@ GEM
|
|||
parser (>= 3.3.1.0)
|
||||
rubocop-capybara (2.21.0)
|
||||
rubocop (~> 1.41)
|
||||
rubocop-performance (1.23.0)
|
||||
rubocop-performance (1.23.1)
|
||||
rubocop (>= 1.48.1, < 2.0)
|
||||
rubocop-ast (>= 1.31.1, < 2.0)
|
||||
rubocop-rails (2.28.0)
|
||||
|
@ -744,7 +745,7 @@ GEM
|
|||
ruby-vips (2.2.2)
|
||||
ffi (~> 1.12)
|
||||
logger
|
||||
rubyzip (2.3.2)
|
||||
rubyzip (2.4.1)
|
||||
rufus-scheduler (3.9.2)
|
||||
fugit (~> 1.1, >= 1.11.1)
|
||||
safety_net_attestation (0.4.0)
|
||||
|
@ -793,7 +794,7 @@ GEM
|
|||
simplecov-html (0.13.1)
|
||||
simplecov-lcov (0.8.0)
|
||||
simplecov_json_formatter (0.1.4)
|
||||
stackprof (0.2.26)
|
||||
stackprof (0.2.27)
|
||||
stoplight (4.1.0)
|
||||
redlock (~> 1.0)
|
||||
stringio (3.1.2)
|
||||
|
@ -809,7 +810,7 @@ GEM
|
|||
unicode-display_width (>= 1.1.1, < 3)
|
||||
terrapin (1.0.1)
|
||||
climate_control
|
||||
test-prof (1.4.3)
|
||||
test-prof (1.4.4)
|
||||
thor (1.3.2)
|
||||
tilt (2.5.0)
|
||||
timeout (0.4.3)
|
||||
|
@ -963,7 +964,7 @@ DEPENDENCIES
|
|||
opentelemetry-instrumentation-active_model_serializers (~> 0.21.0)
|
||||
opentelemetry-instrumentation-concurrent_ruby (~> 0.21.2)
|
||||
opentelemetry-instrumentation-excon (~> 0.22.0)
|
||||
opentelemetry-instrumentation-faraday (~> 0.24.1)
|
||||
opentelemetry-instrumentation-faraday (~> 0.25.0)
|
||||
opentelemetry-instrumentation-http (~> 0.23.2)
|
||||
opentelemetry-instrumentation-http_client (~> 0.22.3)
|
||||
opentelemetry-instrumentation-net_http (~> 0.22.4)
|
||||
|
@ -994,7 +995,7 @@ DEPENDENCIES
|
|||
redis (~> 4.5)
|
||||
redis-namespace (~> 1.10)
|
||||
rqrcode (~> 2.2)
|
||||
rspec-github (~> 2.4)
|
||||
rspec-github (~> 3.0)
|
||||
rspec-rails (~> 7.0)
|
||||
rspec-sidekiq (~> 5.0)
|
||||
rubocop
|
||||
|
@ -1034,7 +1035,7 @@ DEPENDENCIES
|
|||
xorcist (~> 1.1)
|
||||
|
||||
RUBY VERSION
|
||||
ruby 3.3.6p108
|
||||
ruby 3.4.1p0
|
||||
|
||||
BUNDLED WITH
|
||||
2.6.2
|
||||
|
|
|
@ -4,8 +4,7 @@
|
|||
|
||||
This Mastodon fork is based on the [glitch-soc Fork of Mastodon](https://github.com/glitch-soc/mastodon), historically
|
||||
with changes made to suit [CatCatNya~](https://catcatnya.com).
|
||||
Some changes may be contributed back to [glitch-soc](https://github.com/glitch-soc/mastodon). Non-security contributions
|
||||
to Vanilla Mastodon have ceased for Fediverse-political reasons.
|
||||
Some changes may be contributed back to [glitch-soc](https://github.com/glitch-soc/mastodon).
|
||||
|
||||
To install, take a look at [glitch-soc.github.io/docs/](https://glitch-soc.github.io/docs/). The instructions and
|
||||
features are the same, except for the differences outlined below.
|
||||
|
@ -65,9 +64,11 @@ For production, it is suggested you run:
|
|||
emoji. ([Pull request](https://github.com/glitch-soc/mastodon/pull/1763))
|
||||
- Standalone share page: Dispatch fetchServer for maxChars. Fixes the bug where the standalone share page did not
|
||||
display the correct maximum character amount. ([Pull request](https://github.com/glitch-soc/mastodon/pull/2929))
|
||||
- \[Glitch\] Fix `/share` not using server-set characters limit ([Pull request](https://github.com/glitch-soc/mastodon/pull/2929))
|
||||
- Everything merged into vanilla Mastodon
|
||||
|
||||
## Contributions to Vanilla Mastodon
|
||||
|
||||
- The period of retention of IP addresses and sessions was made
|
||||
configurable. ([Pull request](https://github.com/mastodon/mastodon/pull/18757))
|
||||
- Fix `/share` not using server-set characters limit ([Pull request](https://github.com/mastodon/mastodon/pull/33459))
|
||||
|
|
|
@ -49,7 +49,7 @@ class ActivityPub::CollectionsController < ActivityPub::BaseController
|
|||
|
||||
def collection_presenter
|
||||
ActivityPub::CollectionPresenter.new(
|
||||
id: account_collection_url(@account, params[:id]),
|
||||
id: ActivityPub::TagManager.instance.collection_uri_for(@account, params[:id]),
|
||||
type: @type,
|
||||
size: @size,
|
||||
items: @items
|
||||
|
|
|
@ -41,12 +41,8 @@ class ActivityPub::OutboxesController < ActivityPub::BaseController
|
|||
end
|
||||
end
|
||||
|
||||
def outbox_url(**)
|
||||
if params[:account_username].present?
|
||||
account_outbox_url(@account, **)
|
||||
else
|
||||
instance_actor_outbox_url(**)
|
||||
end
|
||||
def outbox_url(...)
|
||||
ActivityPub::TagManager.instance.outbox_uri_for(@account, ...)
|
||||
end
|
||||
|
||||
def next_page
|
||||
|
|
|
@ -6,7 +6,7 @@ module Admin
|
|||
|
||||
def index
|
||||
authorize :software_update, :index?
|
||||
@software_updates = SoftwareUpdate.all.sort_by(&:gem_version)
|
||||
@software_updates = SoftwareUpdate.by_version
|
||||
end
|
||||
|
||||
private
|
||||
|
|
|
@ -21,6 +21,7 @@ class Api::V1::Push::SubscriptionsController < Api::BaseController
|
|||
endpoint: subscription_params[:endpoint],
|
||||
key_p256dh: subscription_params[:keys][:p256dh],
|
||||
key_auth: subscription_params[:keys][:auth],
|
||||
standard: subscription_params[:standard] || false,
|
||||
data: data_params,
|
||||
user_id: current_user.id,
|
||||
access_token_id: doorkeeper_token.id
|
||||
|
@ -55,7 +56,7 @@ class Api::V1::Push::SubscriptionsController < Api::BaseController
|
|||
end
|
||||
|
||||
def subscription_params
|
||||
params.require(:subscription).permit(:endpoint, keys: [:auth, :p256dh])
|
||||
params.require(:subscription).permit(:endpoint, :standard, keys: [:auth, :p256dh])
|
||||
end
|
||||
|
||||
def data_params
|
||||
|
|
|
@ -80,10 +80,31 @@ class Api::V2::NotificationsController < Api::BaseController
|
|||
return [] if @notifications.empty?
|
||||
|
||||
MastodonOTELTracer.in_span('Api::V2::NotificationsController#load_grouped_notifications') do
|
||||
NotificationGroup.from_notifications(@notifications, pagination_range: (@notifications.last.id)..(@notifications.first.id), grouped_types: params[:grouped_types])
|
||||
pagination_range = (@notifications.last.id)..@notifications.first.id
|
||||
|
||||
# If the page is incomplete, we know we are on the last page
|
||||
if incomplete_page?
|
||||
if paginating_up?
|
||||
pagination_range = @notifications.last.id...(params[:max_id]&.to_i)
|
||||
else
|
||||
range_start = params[:since_id]&.to_i
|
||||
range_start += 1 unless range_start.nil?
|
||||
pagination_range = range_start..(@notifications.first.id)
|
||||
end
|
||||
end
|
||||
|
||||
NotificationGroup.from_notifications(@notifications, pagination_range: pagination_range, grouped_types: params[:grouped_types])
|
||||
end
|
||||
end
|
||||
|
||||
def incomplete_page?
|
||||
@notifications.size < limit_param(DEFAULT_NOTIFICATIONS_LIMIT)
|
||||
end
|
||||
|
||||
def paginating_up?
|
||||
params[:min_id].present?
|
||||
end
|
||||
|
||||
def browserable_account_notifications
|
||||
current_account.notifications.without_suspended.browserable(
|
||||
types: Array(browserable_params[:types]),
|
||||
|
|
|
@ -66,7 +66,7 @@ class Api::Web::PushSubscriptionsController < Api::Web::BaseController
|
|||
end
|
||||
|
||||
def subscription_params
|
||||
@subscription_params ||= params.require(:subscription).permit(:endpoint, keys: [:auth, :p256dh])
|
||||
@subscription_params ||= params.require(:subscription).permit(:standard, :endpoint, keys: [:auth, :p256dh])
|
||||
end
|
||||
|
||||
def web_push_subscription_params
|
||||
|
@ -76,6 +76,7 @@ class Api::Web::PushSubscriptionsController < Api::Web::BaseController
|
|||
endpoint: subscription_params[:endpoint],
|
||||
key_auth: subscription_params[:keys][:auth],
|
||||
key_p256dh: subscription_params[:keys][:p256dh],
|
||||
standard: subscription_params[:standard] || false,
|
||||
user_id: active_session.user_id,
|
||||
}
|
||||
end
|
||||
|
|
|
@ -18,7 +18,7 @@ class Auth::SetupController < ApplicationController
|
|||
|
||||
if @user.update(user_params)
|
||||
@user.resend_confirmation_instructions unless @user.confirmed?
|
||||
redirect_to auth_setup_path, notice: I18n.t('auth.setup.new_confirmation_instructions_sent')
|
||||
redirect_to auth_setup_path, notice: t('auth.setup.new_confirmation_instructions_sent')
|
||||
else
|
||||
render :show
|
||||
end
|
||||
|
|
|
@ -25,7 +25,7 @@ module Localized
|
|||
end
|
||||
|
||||
def available_locale_or_nil(locale_name)
|
||||
locale_name.to_sym if locale_name.present? && I18n.available_locales.include?(locale_name.to_sym)
|
||||
locale_name.to_sym if locale_name.respond_to?(:to_sym) && I18n.available_locales.include?(locale_name.to_sym)
|
||||
end
|
||||
|
||||
def content_locale
|
||||
|
|
|
@ -1,10 +1,8 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
class CustomCssController < ActionController::Base # rubocop:disable Rails/ApplicationController
|
||||
before_action :set_user_roles
|
||||
|
||||
def show
|
||||
expires_in 3.minutes, public: true
|
||||
expires_in 1.month, public: true
|
||||
render content_type: 'text/css'
|
||||
end
|
||||
|
||||
|
@ -14,8 +12,4 @@ class CustomCssController < ActionController::Base # rubocop:disable Rails/Appli
|
|||
Setting.custom_css
|
||||
end
|
||||
helper_method :custom_css_styles
|
||||
|
||||
def set_user_roles
|
||||
@user_roles = UserRole.providing_styles
|
||||
end
|
||||
end
|
||||
|
|
|
@ -46,7 +46,7 @@ class FollowerAccountsController < ApplicationController
|
|||
end
|
||||
|
||||
def page_url(page)
|
||||
account_followers_url(@account, page: page) unless page.nil?
|
||||
ActivityPub::TagManager.instance.followers_uri_for(@account, page: page) unless page.nil?
|
||||
end
|
||||
|
||||
def next_page_url
|
||||
|
|
|
@ -239,6 +239,14 @@ module ApplicationHelper
|
|||
I18n.t 'user_mailer.welcome.hashtags_recent_count', people: number_with_delimiter(people), count: people
|
||||
end
|
||||
|
||||
def app_store_url_ios
|
||||
'https://apps.apple.com/app/mastodon-for-iphone-and-ipad/id1571998974'
|
||||
end
|
||||
|
||||
def app_store_url_android
|
||||
'https://play.google.com/store/apps/details?id=org.joinmastodon.android'
|
||||
end
|
||||
|
||||
# glitch-soc addition to handle the multiple flavors
|
||||
def preload_locale_pack
|
||||
supported_locales = Themes.instance.flavour(current_flavour)['locales']
|
||||
|
|
|
@ -27,8 +27,33 @@ module ThemeHelper
|
|||
end
|
||||
end
|
||||
|
||||
def custom_stylesheet
|
||||
if active_custom_stylesheet.present?
|
||||
stylesheet_link_tag(
|
||||
custom_css_path(active_custom_stylesheet),
|
||||
host: root_url,
|
||||
media: :all,
|
||||
skip_pipeline: true
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def active_custom_stylesheet
|
||||
if cached_custom_css_digest.present?
|
||||
[:custom, cached_custom_css_digest.to_s.first(8)]
|
||||
.compact_blank
|
||||
.join('-')
|
||||
end
|
||||
end
|
||||
|
||||
def cached_custom_css_digest
|
||||
Rails.cache.fetch(:setting_digest_custom_css) do
|
||||
Setting.custom_css&.then { |content| Digest::SHA256.hexdigest(content) }
|
||||
end
|
||||
end
|
||||
|
||||
def theme_color_for(theme)
|
||||
theme == 'mastodon-light' ? Themes::THEME_COLORS[:light] : Themes::THEME_COLORS[:dark]
|
||||
end
|
||||
|
|
|
@ -119,7 +119,11 @@ function loaded() {
|
|||
formattedContent = dateFormat.format(datetime);
|
||||
}
|
||||
|
||||
content.title = formattedContent;
|
||||
const timeGiven = content.dateTime.includes('T');
|
||||
content.title = timeGiven
|
||||
? dateTimeFormat.format(datetime)
|
||||
: dateFormat.format(datetime);
|
||||
|
||||
content.textContent = formattedContent;
|
||||
});
|
||||
|
||||
|
|
|
@ -7,26 +7,18 @@ import { requestNotificationPermission } from '../utils/notifications';
|
|||
import { fetchFollowRequests } from './accounts';
|
||||
import {
|
||||
importFetchedAccount,
|
||||
importFetchedStatus,
|
||||
} from './importer';
|
||||
import { submitMarkers } from './markers';
|
||||
import { notificationsUpdate } from "./notifications_typed";
|
||||
import { register as registerPushNotifications } from './push_notifications';
|
||||
import { saveSettings } from './settings';
|
||||
|
||||
export * from "./notifications_typed";
|
||||
|
||||
export const NOTIFICATIONS_UPDATE_NOOP = 'NOTIFICATIONS_UPDATE_NOOP';
|
||||
|
||||
export const NOTIFICATIONS_FILTER_SET = 'NOTIFICATIONS_FILTER_SET';
|
||||
|
||||
export const NOTIFICATIONS_SET_BROWSER_SUPPORT = 'NOTIFICATIONS_SET_BROWSER_SUPPORT';
|
||||
export const NOTIFICATIONS_SET_BROWSER_PERMISSION = 'NOTIFICATIONS_SET_BROWSER_PERMISSION';
|
||||
|
||||
export const NOTIFICATION_REQUESTS_DISMISS_REQUEST = 'NOTIFICATION_REQUESTS_DISMISS_REQUEST';
|
||||
export const NOTIFICATION_REQUESTS_DISMISS_SUCCESS = 'NOTIFICATION_REQUESTS_DISMISS_SUCCESS';
|
||||
export const NOTIFICATION_REQUESTS_DISMISS_FAIL = 'NOTIFICATION_REQUESTS_DISMISS_FAIL';
|
||||
|
||||
defineMessages({
|
||||
mention: { id: 'notification.mention', defaultMessage: '{name} mentioned you' },
|
||||
group: { id: 'notifications.group', defaultMessage: '{count} notifications' },
|
||||
|
@ -34,8 +26,6 @@ defineMessages({
|
|||
|
||||
export function updateNotifications(notification, intlMessages, intlLocale) {
|
||||
return (dispatch, getState) => {
|
||||
const activeFilter = getState().getIn(['settings', 'notifications', 'quickFilter', 'active']);
|
||||
const showInColumn = activeFilter === 'all' ? getState().getIn(['settings', 'notifications', 'shows', notification.type], true) : activeFilter === notification.type;
|
||||
const showAlert = getState().getIn(['settings', 'notifications', 'alerts', notification.type], true);
|
||||
const playSound = getState().getIn(['settings', 'notifications', 'sounds', notification.type], true);
|
||||
|
||||
|
@ -57,24 +47,9 @@ export function updateNotifications(notification, intlMessages, intlLocale) {
|
|||
|
||||
dispatch(submitMarkers());
|
||||
|
||||
if (showInColumn) {
|
||||
dispatch(importFetchedAccount(notification.account));
|
||||
|
||||
if (notification.status) {
|
||||
dispatch(importFetchedStatus(notification.status));
|
||||
}
|
||||
|
||||
if (notification.report) {
|
||||
dispatch(importFetchedAccount(notification.report.target_account));
|
||||
}
|
||||
|
||||
dispatch(notificationsUpdate({ notification, playSound: playSound && !filtered}));
|
||||
} else if (playSound && !filtered) {
|
||||
dispatch({
|
||||
type: NOTIFICATIONS_UPDATE_NOOP,
|
||||
meta: { sound: 'boop' },
|
||||
});
|
||||
}
|
||||
// `notificationsUpdate` is still used in `user_lists` and `relationships` reducers
|
||||
dispatch(importFetchedAccount(notification.account));
|
||||
dispatch(notificationsUpdate({ notification, playSound: playSound && !filtered}));
|
||||
|
||||
// Desktop notifications
|
||||
if (typeof window.Notification !== 'undefined' && showAlert && !filtered) {
|
||||
|
@ -93,17 +68,6 @@ export function updateNotifications(notification, intlMessages, intlLocale) {
|
|||
|
||||
const noOp = () => {};
|
||||
|
||||
export function setFilter (filterType) {
|
||||
return dispatch => {
|
||||
dispatch({
|
||||
type: NOTIFICATIONS_FILTER_SET,
|
||||
path: ['notifications', 'quickFilter', 'active'],
|
||||
value: filterType,
|
||||
});
|
||||
dispatch(saveSettings());
|
||||
};
|
||||
}
|
||||
|
||||
// Browser support
|
||||
export function setupBrowserNotifications() {
|
||||
return dispatch => {
|
||||
|
|
|
@ -33,7 +33,7 @@ const unsubscribe = ({ registration, subscription }) =>
|
|||
subscription ? subscription.unsubscribe().then(() => registration) : registration;
|
||||
|
||||
const sendSubscriptionToBackend = (subscription) => {
|
||||
const params = { subscription };
|
||||
const params = { subscription: { ...subscription.toJSON(), standard: true } };
|
||||
|
||||
if (me) {
|
||||
const data = pushNotificationsSetting.get(me);
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import { Iterable, fromJS } from 'immutable';
|
||||
import { fromJS, isIndexed } from 'immutable';
|
||||
|
||||
import { hydrateCompose } from './compose';
|
||||
import { importFetchedAccounts } from './importer';
|
||||
|
@ -10,7 +10,7 @@ export const STORE_HYDRATE_LAZY = 'STORE_HYDRATE_LAZY';
|
|||
|
||||
const convertState = rawState =>
|
||||
fromJS(rawState, (k, v) =>
|
||||
Iterable.isIndexed(v) ? v.toList() : v.toMap());
|
||||
isIndexed(v) ? v.toList() : v.toMap());
|
||||
|
||||
const applyMigrations = (state) => {
|
||||
return state.withMutations(state => {
|
||||
|
|
|
@ -19,7 +19,7 @@ export interface BaseApiAccountJSON {
|
|||
avatar_static: string;
|
||||
bot: boolean;
|
||||
created_at: string;
|
||||
discoverable: boolean;
|
||||
discoverable?: boolean;
|
||||
indexable: boolean;
|
||||
display_name: string;
|
||||
emojis: ApiCustomEmojiJSON[];
|
||||
|
|
|
@ -3,7 +3,7 @@ import ImmutablePropTypes from 'react-immutable-proptypes';
|
|||
import { Permalink } from 'flavours/glitch/components/permalink';
|
||||
|
||||
export const MentionsPlaceholder = ({ status }) => {
|
||||
if (status.get('spoiler_text').length === 0 || !status.get('mentions')) {
|
||||
if (status.get('spoiler_text').length === 0 || !status.get('mentions') || status.get('mentions').isEmpty()) {
|
||||
return null;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import { Component } from 'react';
|
||||
|
||||
import type { IntlShape } from 'react-intl';
|
||||
import type { MessageDescriptor, PrimitiveType, IntlShape } from 'react-intl';
|
||||
import { injectIntl, defineMessages } from 'react-intl';
|
||||
|
||||
const messages = defineMessages({
|
||||
|
@ -102,7 +102,13 @@ const getUnitDelay = (units: string) => {
|
|||
};
|
||||
|
||||
export const timeAgoString = (
|
||||
intl: Pick<IntlShape, 'formatDate' | 'formatMessage'>,
|
||||
intl: {
|
||||
formatDate: IntlShape['formatDate'];
|
||||
formatMessage: (
|
||||
{ id, defaultMessage }: MessageDescriptor,
|
||||
values?: Record<string, PrimitiveType>,
|
||||
) => string;
|
||||
},
|
||||
date: Date,
|
||||
now: number,
|
||||
year: number,
|
||||
|
|
|
@ -119,7 +119,11 @@ function loaded() {
|
|||
formattedContent = dateFormat.format(datetime);
|
||||
}
|
||||
|
||||
content.title = formattedContent;
|
||||
const timeGiven = content.dateTime.includes('T');
|
||||
content.title = timeGiven
|
||||
? dateTimeFormat.format(datetime)
|
||||
: dateFormat.format(datetime);
|
||||
|
||||
content.textContent = formattedContent;
|
||||
});
|
||||
|
||||
|
|
|
@ -177,11 +177,6 @@ export const Conversation = ({ conversation, scrollKey, onMoveUp, onMoveDown })
|
|||
toggleHidden: handleShowMore,
|
||||
};
|
||||
|
||||
let media = null;
|
||||
if (lastStatus.get('media_attachments').size > 0) {
|
||||
media = <AttachmentList compact media={lastStatus.get('media_attachments')} />;
|
||||
}
|
||||
|
||||
return (
|
||||
<HotKeys handlers={handlers}>
|
||||
<div className={classNames('conversation focusable muted', { unread })} tabIndex={0}>
|
||||
|
@ -206,9 +201,15 @@ export const Conversation = ({ conversation, scrollKey, onMoveUp, onMoveDown })
|
|||
expanded={sharedCWState ? lastStatus.get('hidden') : expanded}
|
||||
onExpandedToggle={handleShowMore}
|
||||
collapsible
|
||||
media={media}
|
||||
/>
|
||||
|
||||
{lastStatus.get('media_attachments').size > 0 && (
|
||||
<AttachmentList
|
||||
compact
|
||||
media={lastStatus.get('media_attachments')}
|
||||
/>
|
||||
)}
|
||||
|
||||
<div className='status__action-bar'>
|
||||
<IconButton className='status__action-bar-button' title={intl.formatMessage(messages.reply)} icon='reply' iconComponent={ReplyIcon} onClick={handleReply} />
|
||||
|
||||
|
|
|
@ -3,10 +3,10 @@ import { defineMessages, injectIntl } from 'react-intl';
|
|||
import { connect } from 'react-redux';
|
||||
|
||||
import { openModal } from 'flavours/glitch/actions/modal';
|
||||
import { fetchNotifications } from 'flavours/glitch/actions/notification_groups';
|
||||
import { fetchNotifications , setNotificationsFilter } from 'flavours/glitch/actions/notification_groups';
|
||||
|
||||
import { showAlert } from '../../../actions/alerts';
|
||||
import { setFilter, requestBrowserPermission } from '../../../actions/notifications';
|
||||
import { requestBrowserPermission } from '../../../actions/notifications';
|
||||
import { changeAlerts as changePushNotifications } from '../../../actions/push_notifications';
|
||||
import { changeSetting } from '../../../actions/settings';
|
||||
import ColumnSettings from '../components/column_settings';
|
||||
|
@ -43,7 +43,7 @@ const mapDispatchToProps = (dispatch) => ({
|
|||
}
|
||||
} else if (path[0] === 'quickFilter') {
|
||||
dispatch(changeSetting(['notifications', ...path], checked));
|
||||
dispatch(setFilter('all'));
|
||||
dispatch(setNotificationsFilter('all'));
|
||||
} else if (path[0] === 'alerts' && checked && typeof window.Notification !== 'undefined' && Notification.permission !== 'granted') {
|
||||
if (checked && typeof window.Notification !== 'undefined' && Notification.permission !== 'granted') {
|
||||
dispatch(requestBrowserPermission((permission) => {
|
||||
|
|
|
@ -12,6 +12,7 @@ import AddPhotoAlternateIcon from '@/material-icons/400-24px/add_photo_alternate
|
|||
import EditIcon from '@/material-icons/400-24px/edit.svg?react';
|
||||
import PersonIcon from '@/material-icons/400-24px/person.svg?react';
|
||||
import { updateAccount } from 'flavours/glitch/actions/accounts';
|
||||
import { closeOnboarding } from 'flavours/glitch/actions/onboarding';
|
||||
import { Button } from 'flavours/glitch/components/button';
|
||||
import { Column } from 'flavours/glitch/components/column';
|
||||
import { ColumnHeader } from 'flavours/glitch/components/column_header';
|
||||
|
@ -58,7 +59,9 @@ export const Profile: React.FC<{
|
|||
);
|
||||
const [avatar, setAvatar] = useState<File>();
|
||||
const [header, setHeader] = useState<File>();
|
||||
const [discoverable, setDiscoverable] = useState(true);
|
||||
const [discoverable, setDiscoverable] = useState(
|
||||
account?.discoverable ?? true,
|
||||
);
|
||||
const [isSaving, setIsSaving] = useState(false);
|
||||
const [errors, setErrors] = useState<ApiAccountErrors>();
|
||||
const avatarFileRef = createRef<HTMLInputElement>();
|
||||
|
@ -132,6 +135,7 @@ export const Profile: React.FC<{
|
|||
)
|
||||
.then(() => {
|
||||
history.push('/start/follows');
|
||||
dispatch(closeOnboarding());
|
||||
return '';
|
||||
})
|
||||
// eslint-disable-next-line @typescript-eslint/use-unknown-in-catch-callback-variable
|
||||
|
|
|
@ -46,7 +46,8 @@ class StatusCheckBox extends PureComponent {
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<StatusContent status={status} media={<MediaAttachments status={status} visible={false} />} />
|
||||
<StatusContent status={status} />
|
||||
<MediaAttachments status={status} visible={false} />
|
||||
</div>
|
||||
);
|
||||
|
||||
|
|
|
@ -100,6 +100,7 @@ const mapStateToProps = state => ({
|
|||
hicolorPrivacyIcons: state.getIn(['local_settings', 'hicolor_privacy_icons']),
|
||||
moved: state.getIn(['accounts', me, 'moved']) && state.getIn(['accounts', state.getIn(['accounts', me, 'moved'])]),
|
||||
firstLaunch: state.getIn(['settings', 'introductionVersion'], 0) < INTRODUCTION_VERSION,
|
||||
newAccount: !state.getIn(['accounts', me, 'note']) && !state.getIn(['accounts', me, 'bot']) && state.getIn(['accounts', me, 'following_count'], 0) === 0 && state.getIn(['accounts', me, 'statuses_count'], 0) === 0,
|
||||
username: state.getIn(['accounts', me, 'username']),
|
||||
});
|
||||
|
||||
|
@ -144,6 +145,7 @@ class SwitchingColumnsArea extends PureComponent {
|
|||
children: PropTypes.node,
|
||||
location: PropTypes.object,
|
||||
singleColumn: PropTypes.bool,
|
||||
forceOnboarding: PropTypes.bool,
|
||||
};
|
||||
|
||||
UNSAFE_componentWillMount () {
|
||||
|
@ -174,14 +176,16 @@ class SwitchingColumnsArea extends PureComponent {
|
|||
};
|
||||
|
||||
render () {
|
||||
const { children, singleColumn } = this.props;
|
||||
const { children, singleColumn, forceOnboarding } = this.props;
|
||||
const { signedIn } = this.props.identity;
|
||||
const pathName = this.props.location.pathname;
|
||||
|
||||
let redirect;
|
||||
|
||||
if (signedIn) {
|
||||
if (singleColumn) {
|
||||
if (forceOnboarding) {
|
||||
redirect = <Redirect from='/' to='/start' exact />;
|
||||
} else if (singleColumn) {
|
||||
redirect = <Redirect from='/' to='/home' exact />;
|
||||
} else {
|
||||
redirect = <Redirect from='/' to='/deck/getting-started' exact />;
|
||||
|
@ -292,6 +296,7 @@ class UI extends PureComponent {
|
|||
moved: PropTypes.map,
|
||||
layout: PropTypes.string.isRequired,
|
||||
firstLaunch: PropTypes.bool,
|
||||
newAccount: PropTypes.bool,
|
||||
username: PropTypes.string,
|
||||
...WithRouterPropTypes,
|
||||
};
|
||||
|
@ -615,7 +620,7 @@ class UI extends PureComponent {
|
|||
|
||||
render () {
|
||||
const { draggingOver } = this.state;
|
||||
const { children, isWide, location, layout, moved } = this.props;
|
||||
const { children, isWide, location, layout, moved, firstLaunch, newAccount } = this.props;
|
||||
|
||||
const className = classNames('ui', {
|
||||
'wide': isWide,
|
||||
|
@ -662,7 +667,7 @@ class UI extends PureComponent {
|
|||
|
||||
<Header />
|
||||
|
||||
<SwitchingColumnsArea identity={this.props.identity} location={location} singleColumn={layout === 'mobile' || layout === 'single-column'}>
|
||||
<SwitchingColumnsArea identity={this.props.identity} location={location} singleColumn={layout === 'mobile' || layout === 'single-column'} forceOnboarding={firstLaunch && newAccount}>
|
||||
{children}
|
||||
</SwitchingColumnsArea>
|
||||
|
||||
|
|
|
@ -1348,7 +1348,7 @@ body > [data-popper-placement] {
|
|||
}
|
||||
}
|
||||
|
||||
.status__content.status__content--collapsed .status__content__text {
|
||||
.status__content.status__content--collapsed {
|
||||
max-height: 20px * 15; // 15 lines is roughly above 500 characters
|
||||
}
|
||||
|
||||
|
@ -1646,7 +1646,7 @@ body > [data-popper-placement] {
|
|||
padding: 0 10px;
|
||||
|
||||
.detailed-status__display-name {
|
||||
color: lighten($inverted-text-color, 16%);
|
||||
color: $dark-text-color;
|
||||
|
||||
span {
|
||||
display: inline;
|
||||
|
|
|
@ -659,6 +659,10 @@ code {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
.status-card {
|
||||
contain: unset;
|
||||
}
|
||||
}
|
||||
|
||||
.block-icon {
|
||||
|
|
|
@ -7,26 +7,18 @@ import { requestNotificationPermission } from '../utils/notifications';
|
|||
import { fetchFollowRequests } from './accounts';
|
||||
import {
|
||||
importFetchedAccount,
|
||||
importFetchedStatus,
|
||||
} from './importer';
|
||||
import { submitMarkers } from './markers';
|
||||
import { notificationsUpdate } from "./notifications_typed";
|
||||
import { register as registerPushNotifications } from './push_notifications';
|
||||
import { saveSettings } from './settings';
|
||||
|
||||
export * from "./notifications_typed";
|
||||
|
||||
export const NOTIFICATIONS_UPDATE_NOOP = 'NOTIFICATIONS_UPDATE_NOOP';
|
||||
|
||||
export const NOTIFICATIONS_FILTER_SET = 'NOTIFICATIONS_FILTER_SET';
|
||||
|
||||
export const NOTIFICATIONS_SET_BROWSER_SUPPORT = 'NOTIFICATIONS_SET_BROWSER_SUPPORT';
|
||||
export const NOTIFICATIONS_SET_BROWSER_PERMISSION = 'NOTIFICATIONS_SET_BROWSER_PERMISSION';
|
||||
|
||||
export const NOTIFICATION_REQUESTS_DISMISS_REQUEST = 'NOTIFICATION_REQUESTS_DISMISS_REQUEST';
|
||||
export const NOTIFICATION_REQUESTS_DISMISS_SUCCESS = 'NOTIFICATION_REQUESTS_DISMISS_SUCCESS';
|
||||
export const NOTIFICATION_REQUESTS_DISMISS_FAIL = 'NOTIFICATION_REQUESTS_DISMISS_FAIL';
|
||||
|
||||
defineMessages({
|
||||
mention: { id: 'notification.mention', defaultMessage: '{name} mentioned you' },
|
||||
group: { id: 'notifications.group', defaultMessage: '{count} notifications' },
|
||||
|
@ -34,8 +26,6 @@ defineMessages({
|
|||
|
||||
export function updateNotifications(notification, intlMessages, intlLocale) {
|
||||
return (dispatch, getState) => {
|
||||
const activeFilter = getState().getIn(['settings', 'notifications', 'quickFilter', 'active']);
|
||||
const showInColumn = activeFilter === 'all' ? getState().getIn(['settings', 'notifications', 'shows', notification.type], true) : activeFilter === notification.type;
|
||||
const showAlert = getState().getIn(['settings', 'notifications', 'alerts', notification.type], true);
|
||||
const playSound = getState().getIn(['settings', 'notifications', 'sounds', notification.type], true);
|
||||
|
||||
|
@ -57,24 +47,9 @@ export function updateNotifications(notification, intlMessages, intlLocale) {
|
|||
|
||||
dispatch(submitMarkers());
|
||||
|
||||
if (showInColumn) {
|
||||
dispatch(importFetchedAccount(notification.account));
|
||||
|
||||
if (notification.status) {
|
||||
dispatch(importFetchedStatus(notification.status));
|
||||
}
|
||||
|
||||
if (notification.report) {
|
||||
dispatch(importFetchedAccount(notification.report.target_account));
|
||||
}
|
||||
|
||||
dispatch(notificationsUpdate({ notification, playSound: playSound && !filtered}));
|
||||
} else if (playSound && !filtered) {
|
||||
dispatch({
|
||||
type: NOTIFICATIONS_UPDATE_NOOP,
|
||||
meta: { sound: 'boop' },
|
||||
});
|
||||
}
|
||||
// `notificationsUpdate` is still used in `user_lists` and `relationships` reducers
|
||||
dispatch(importFetchedAccount(notification.account));
|
||||
dispatch(notificationsUpdate({ notification, playSound: playSound && !filtered}));
|
||||
|
||||
// Desktop notifications
|
||||
if (typeof window.Notification !== 'undefined' && showAlert && !filtered) {
|
||||
|
@ -93,17 +68,6 @@ export function updateNotifications(notification, intlMessages, intlLocale) {
|
|||
|
||||
const noOp = () => {};
|
||||
|
||||
export function setFilter (filterType) {
|
||||
return dispatch => {
|
||||
dispatch({
|
||||
type: NOTIFICATIONS_FILTER_SET,
|
||||
path: ['notifications', 'quickFilter', 'active'],
|
||||
value: filterType,
|
||||
});
|
||||
dispatch(saveSettings());
|
||||
};
|
||||
}
|
||||
|
||||
// Browser support
|
||||
export function setupBrowserNotifications() {
|
||||
return dispatch => {
|
||||
|
|
|
@ -33,7 +33,7 @@ const unsubscribe = ({ registration, subscription }) =>
|
|||
subscription ? subscription.unsubscribe().then(() => registration) : registration;
|
||||
|
||||
const sendSubscriptionToBackend = (subscription) => {
|
||||
const params = { subscription };
|
||||
const params = { subscription: { ...subscription.toJSON(), standard: true } };
|
||||
|
||||
if (me) {
|
||||
const data = pushNotificationsSetting.get(me);
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import { Iterable, fromJS } from 'immutable';
|
||||
import { fromJS, isIndexed } from 'immutable';
|
||||
|
||||
import { hydrateCompose } from './compose';
|
||||
import { importFetchedAccounts } from './importer';
|
||||
|
@ -9,8 +9,7 @@ export const STORE_HYDRATE_LAZY = 'STORE_HYDRATE_LAZY';
|
|||
|
||||
const convertState = rawState =>
|
||||
fromJS(rawState, (k, v) =>
|
||||
Iterable.isIndexed(v) ? v.toList() : v.toMap());
|
||||
|
||||
isIndexed(v) ? v.toList() : v.toMap());
|
||||
|
||||
export function hydrateStore(rawState) {
|
||||
return dispatch => {
|
||||
|
|
|
@ -19,7 +19,7 @@ export interface BaseApiAccountJSON {
|
|||
avatar_static: string;
|
||||
bot: boolean;
|
||||
created_at: string;
|
||||
discoverable: boolean;
|
||||
discoverable?: boolean;
|
||||
indexable: boolean;
|
||||
display_name: string;
|
||||
emojis: ApiCustomEmojiJSON[];
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import { Component } from 'react';
|
||||
|
||||
import type { IntlShape } from 'react-intl';
|
||||
import type { MessageDescriptor, PrimitiveType, IntlShape } from 'react-intl';
|
||||
import { injectIntl, defineMessages } from 'react-intl';
|
||||
|
||||
const messages = defineMessages({
|
||||
|
@ -102,7 +102,13 @@ const getUnitDelay = (units: string) => {
|
|||
};
|
||||
|
||||
export const timeAgoString = (
|
||||
intl: Pick<IntlShape, 'formatDate' | 'formatMessage'>,
|
||||
intl: {
|
||||
formatDate: IntlShape['formatDate'];
|
||||
formatMessage: (
|
||||
{ id, defaultMessage }: MessageDescriptor,
|
||||
values?: Record<string, PrimitiveType>,
|
||||
) => string;
|
||||
},
|
||||
date: Date,
|
||||
now: number,
|
||||
year: number,
|
||||
|
|
|
@ -335,15 +335,29 @@ class Announcement extends ImmutablePureComponent {
|
|||
const endsAt = announcement.get('ends_at') && new Date(announcement.get('ends_at'));
|
||||
const now = new Date();
|
||||
const hasTimeRange = startsAt && endsAt;
|
||||
const skipYear = hasTimeRange && startsAt.getFullYear() === endsAt.getFullYear() && endsAt.getFullYear() === now.getFullYear();
|
||||
const skipEndDate = hasTimeRange && startsAt.getDate() === endsAt.getDate() && startsAt.getMonth() === endsAt.getMonth() && startsAt.getFullYear() === endsAt.getFullYear();
|
||||
const skipTime = announcement.get('all_day');
|
||||
|
||||
let timestamp = null;
|
||||
if (hasTimeRange) {
|
||||
const skipYear = startsAt.getFullYear() === endsAt.getFullYear() && endsAt.getFullYear() === now.getFullYear();
|
||||
const skipEndDate = startsAt.getDate() === endsAt.getDate() && startsAt.getMonth() === endsAt.getMonth() && startsAt.getFullYear() === endsAt.getFullYear();
|
||||
timestamp = (
|
||||
<>
|
||||
<FormattedDate value={startsAt} year={(skipYear || startsAt.getFullYear() === now.getFullYear()) ? undefined : 'numeric'} month='short' day='2-digit' hour={skipTime ? undefined : '2-digit'} minute={skipTime ? undefined : '2-digit'} /> - <FormattedDate value={endsAt} year={(skipYear || endsAt.getFullYear() === now.getFullYear()) ? undefined : 'numeric'} month={skipEndDate ? undefined : 'short'} day={skipEndDate ? undefined : '2-digit'} hour={skipTime ? undefined : '2-digit'} minute={skipTime ? undefined : '2-digit'} />
|
||||
</>
|
||||
);
|
||||
} else {
|
||||
const publishedAt = new Date(announcement.get('published_at'));
|
||||
timestamp = (
|
||||
<FormattedDate value={publishedAt} year={publishedAt.getFullYear() === now.getFullYear() ? undefined : 'numeric'} month='short' day='2-digit' hour={skipTime ? undefined : '2-digit'} minute={skipTime ? undefined : '2-digit'} />
|
||||
);
|
||||
}
|
||||
|
||||
return (
|
||||
<div className='announcements__item'>
|
||||
<strong className='announcements__item__range'>
|
||||
<FormattedMessage id='announcement.announcement' defaultMessage='Announcement' />
|
||||
{hasTimeRange && <span> · <FormattedDate value={startsAt} year={(skipYear || startsAt.getFullYear() === now.getFullYear()) ? undefined : 'numeric'} month='short' day='2-digit' hour={skipTime ? undefined : '2-digit'} minute={skipTime ? undefined : '2-digit'} /> - <FormattedDate value={endsAt} year={(skipYear || endsAt.getFullYear() === now.getFullYear()) ? undefined : 'numeric'} month={skipEndDate ? undefined : 'short'} day={skipEndDate ? undefined : '2-digit'} hour={skipTime ? undefined : '2-digit'} minute={skipTime ? undefined : '2-digit'} /></span>}
|
||||
<span> · {timestamp}</span>
|
||||
</strong>
|
||||
|
||||
<Content announcement={announcement} />
|
||||
|
|
|
@ -3,10 +3,10 @@ import { defineMessages, injectIntl } from 'react-intl';
|
|||
import { connect } from 'react-redux';
|
||||
|
||||
import { openModal } from 'mastodon/actions/modal';
|
||||
import { fetchNotifications } from 'mastodon/actions/notification_groups';
|
||||
import { fetchNotifications , setNotificationsFilter } from 'mastodon/actions/notification_groups';
|
||||
|
||||
import { showAlert } from '../../../actions/alerts';
|
||||
import { setFilter, requestBrowserPermission } from '../../../actions/notifications';
|
||||
import { requestBrowserPermission } from '../../../actions/notifications';
|
||||
import { changeAlerts as changePushNotifications } from '../../../actions/push_notifications';
|
||||
import { changeSetting } from '../../../actions/settings';
|
||||
import ColumnSettings from '../components/column_settings';
|
||||
|
@ -43,7 +43,7 @@ const mapDispatchToProps = (dispatch) => ({
|
|||
}
|
||||
} else if (path[0] === 'quickFilter') {
|
||||
dispatch(changeSetting(['notifications', ...path], checked));
|
||||
dispatch(setFilter('all'));
|
||||
dispatch(setNotificationsFilter('all'));
|
||||
} else if (path[0] === 'alerts' && checked && typeof window.Notification !== 'undefined' && Notification.permission !== 'granted') {
|
||||
if (checked && typeof window.Notification !== 'undefined' && Notification.permission !== 'granted') {
|
||||
dispatch(requestBrowserPermission((permission) => {
|
||||
|
|
|
@ -12,6 +12,7 @@ import AddPhotoAlternateIcon from '@/material-icons/400-24px/add_photo_alternate
|
|||
import EditIcon from '@/material-icons/400-24px/edit.svg?react';
|
||||
import PersonIcon from '@/material-icons/400-24px/person.svg?react';
|
||||
import { updateAccount } from 'mastodon/actions/accounts';
|
||||
import { closeOnboarding } from 'mastodon/actions/onboarding';
|
||||
import { Button } from 'mastodon/components/button';
|
||||
import { Column } from 'mastodon/components/column';
|
||||
import { ColumnHeader } from 'mastodon/components/column_header';
|
||||
|
@ -58,7 +59,9 @@ export const Profile: React.FC<{
|
|||
);
|
||||
const [avatar, setAvatar] = useState<File>();
|
||||
const [header, setHeader] = useState<File>();
|
||||
const [discoverable, setDiscoverable] = useState(true);
|
||||
const [discoverable, setDiscoverable] = useState(
|
||||
account?.discoverable ?? true,
|
||||
);
|
||||
const [isSaving, setIsSaving] = useState(false);
|
||||
const [errors, setErrors] = useState<ApiAccountErrors>();
|
||||
const avatarFileRef = createRef<HTMLInputElement>();
|
||||
|
@ -132,6 +135,7 @@ export const Profile: React.FC<{
|
|||
)
|
||||
.then(() => {
|
||||
history.push('/start/follows');
|
||||
dispatch(closeOnboarding());
|
||||
return '';
|
||||
})
|
||||
// eslint-disable-next-line @typescript-eslint/use-unknown-in-catch-callback-variable
|
||||
|
|
|
@ -92,6 +92,7 @@ const mapStateToProps = state => ({
|
|||
hasMediaAttachments: state.getIn(['compose', 'media_attachments']).size > 0,
|
||||
canUploadMore: !state.getIn(['compose', 'media_attachments']).some(x => ['audio', 'video'].includes(x.get('type'))) && state.getIn(['compose', 'media_attachments']).size < state.getIn(['server', 'server', 'configuration', 'statuses', 'max_media_attachments']),
|
||||
firstLaunch: state.getIn(['settings', 'introductionVersion'], 0) < INTRODUCTION_VERSION,
|
||||
newAccount: !state.getIn(['accounts', me, 'note']) && !state.getIn(['accounts', me, 'bot']) && state.getIn(['accounts', me, 'following_count'], 0) === 0 && state.getIn(['accounts', me, 'statuses_count'], 0) === 0,
|
||||
username: state.getIn(['accounts', me, 'username']),
|
||||
});
|
||||
|
||||
|
@ -135,6 +136,7 @@ class SwitchingColumnsArea extends PureComponent {
|
|||
children: PropTypes.node,
|
||||
location: PropTypes.object,
|
||||
singleColumn: PropTypes.bool,
|
||||
forceOnboarding: PropTypes.bool,
|
||||
};
|
||||
|
||||
UNSAFE_componentWillMount () {
|
||||
|
@ -165,14 +167,16 @@ class SwitchingColumnsArea extends PureComponent {
|
|||
};
|
||||
|
||||
render () {
|
||||
const { children, singleColumn } = this.props;
|
||||
const { children, singleColumn, forceOnboarding } = this.props;
|
||||
const { signedIn } = this.props.identity;
|
||||
const pathName = this.props.location.pathname;
|
||||
|
||||
let redirect;
|
||||
|
||||
if (signedIn) {
|
||||
if (singleColumn) {
|
||||
if (forceOnboarding) {
|
||||
redirect = <Redirect from='/' to='/start' exact />;
|
||||
} else if (singleColumn) {
|
||||
redirect = <Redirect from='/' to='/home' exact />;
|
||||
} else {
|
||||
redirect = <Redirect from='/' to='/deck/getting-started' exact />;
|
||||
|
@ -276,6 +280,7 @@ class UI extends PureComponent {
|
|||
intl: PropTypes.object.isRequired,
|
||||
layout: PropTypes.string.isRequired,
|
||||
firstLaunch: PropTypes.bool,
|
||||
newAccount: PropTypes.bool,
|
||||
username: PropTypes.string,
|
||||
...WithRouterPropTypes,
|
||||
};
|
||||
|
@ -568,7 +573,7 @@ class UI extends PureComponent {
|
|||
|
||||
render () {
|
||||
const { draggingOver } = this.state;
|
||||
const { children, isComposing, location, layout } = this.props;
|
||||
const { children, isComposing, location, layout, firstLaunch, newAccount } = this.props;
|
||||
|
||||
const handlers = {
|
||||
help: this.handleHotkeyToggleHelp,
|
||||
|
@ -597,7 +602,7 @@ class UI extends PureComponent {
|
|||
<div className={classNames('ui', { 'is-composing': isComposing })} ref={this.setRef}>
|
||||
<Header />
|
||||
|
||||
<SwitchingColumnsArea identity={this.props.identity} location={location} singleColumn={layout === 'mobile' || layout === 'single-column'}>
|
||||
<SwitchingColumnsArea identity={this.props.identity} location={location} singleColumn={layout === 'mobile' || layout === 'single-column'} forceOnboarding={firstLaunch && newAccount}>
|
||||
{children}
|
||||
</SwitchingColumnsArea>
|
||||
|
||||
|
|
|
@ -240,5 +240,7 @@
|
|||
"dismissable_banner.community_timeline": "Bunlar, hesabları {domain} serverində yerləşən insanların ən son ictimai paylaşımlarıdır.",
|
||||
"dismissable_banner.dismiss": "Bağla",
|
||||
"dismissable_banner.explore_links": "Bu xəbərlər bu gün fediversedə ən çox paylaşılır. Daha fərqli insanlar tərəfindən dərc edilən daha yeni xəbərlər daha yuxarıda sıralanır.",
|
||||
"dismissable_banner.explore_statuses": "Fediversedən olan bu paylaşımlar bu gün maraq qazanır. Daha çox gücləndirici və bəyənmə olan daha yeni paylaşımlar daha yuxarıda sıralanır."
|
||||
"dismissable_banner.explore_statuses": "Fediversedən olan bu paylaşımlar bu gün maraq qazanır. Daha çox gücləndirici və bəyənmə olan daha yeni paylaşımlar daha yuxarıda sıralanır.",
|
||||
"domain_block_modal.block_account_instead": "@{name} istifadəçisini blokla",
|
||||
"domain_block_modal.they_can_interact_with_old_posts": "Bu serverdən olan insanlar köhnə paylaşımlarınızla əlaqə qura bilər."
|
||||
}
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Показване/скриване на текст зад предупреждение на съдържание",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Показване/скриване на мултимедията",
|
||||
"keyboard_shortcuts.toot": "Начало на нова публикация",
|
||||
"keyboard_shortcuts.translate": "за превод на публикация",
|
||||
"keyboard_shortcuts.unfocus": "Разфокусиране на текстовото поле за съставяне/търсене",
|
||||
"keyboard_shortcuts.up": "Преместване нагоре в списъка",
|
||||
"lightbox.close": "Затваряне",
|
||||
|
@ -836,6 +837,7 @@
|
|||
"status.reblogs.empty": "Още никого не е подсилвал публикацията. Подсилващият ще се покаже тук.",
|
||||
"status.redraft": "Изтриване и преработване",
|
||||
"status.remove_bookmark": "Премахване на отметката",
|
||||
"status.remove_favourite": "Премахване от любими",
|
||||
"status.replied_in_thread": "Отговорено в нишката",
|
||||
"status.replied_to": "В отговор до {name}",
|
||||
"status.reply": "Отговор",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Mostra/amaga el text marcat com a sensible",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Mostra/amaga contingut",
|
||||
"keyboard_shortcuts.toot": "Escriu un nou tut",
|
||||
"keyboard_shortcuts.translate": "per a traduir una publicació",
|
||||
"keyboard_shortcuts.unfocus": "Descentra l'àrea de composició de text/cerca",
|
||||
"keyboard_shortcuts.up": "Apuja a la llista",
|
||||
"lightbox.close": "Tanca",
|
||||
|
@ -836,6 +837,7 @@
|
|||
"status.reblogs.empty": "Encara no ha impulsat ningú aquest tut. Quan algú ho faci, apareixerà aquí.",
|
||||
"status.redraft": "Esborra i reescriu",
|
||||
"status.remove_bookmark": "Elimina el marcador",
|
||||
"status.remove_favourite": "Elimina dels preferits",
|
||||
"status.replied_in_thread": "Respost al fil",
|
||||
"status.replied_to": "En resposta a {name}",
|
||||
"status.reply": "Respon",
|
||||
|
|
|
@ -85,10 +85,30 @@
|
|||
"alert.rate_limited.title": "Spojení omezena",
|
||||
"alert.unexpected.message": "Objevila se neočekávaná chyba.",
|
||||
"alert.unexpected.title": "Jejda!",
|
||||
"alt_text_badge.title": "Popisek",
|
||||
"announcement.announcement": "Oznámení",
|
||||
"annual_report.summary.archetype.booster": "Lovec obsahu",
|
||||
"annual_report.summary.archetype.lurker": "Špión",
|
||||
"annual_report.summary.archetype.oracle": "Vědma",
|
||||
"annual_report.summary.archetype.pollster": "Průzkumník",
|
||||
"annual_report.summary.archetype.replier": "Sociální motýlek",
|
||||
"annual_report.summary.followers.followers": "sledujících",
|
||||
"annual_report.summary.followers.total": "{count} celkem",
|
||||
"annual_report.summary.here_it_is": "Zde je tvůj {year} v přehledu:",
|
||||
"annual_report.summary.highlighted_post.by_favourites": "nejvíce oblíbený příspěvek",
|
||||
"annual_report.summary.highlighted_post.by_reblogs": "nejvíce boostovaný příspěvek",
|
||||
"annual_report.summary.highlighted_post.by_replies": "příspěvek s nejvíce odpověďmi",
|
||||
"annual_report.summary.highlighted_post.possessive": "{name}",
|
||||
"annual_report.summary.most_used_app.most_used_app": "nejpoužívanější aplikace",
|
||||
"annual_report.summary.most_used_hashtag.most_used_hashtag": "nejpoužívanější hashtag",
|
||||
"annual_report.summary.most_used_hashtag.none": "Žádné",
|
||||
"annual_report.summary.new_posts.new_posts": "nové příspěvky",
|
||||
"annual_report.summary.percentile.text": "<topLabel>To vás umisťuje do vrcholu</topLabel><percentage></percentage><bottomLabel>{domain} uživatelů.</bottomLabel>",
|
||||
"annual_report.summary.percentile.we_wont_tell_bernie": "To, že jste zdejší smetánka zůstane mezi námi ;).",
|
||||
"annual_report.summary.thanks": "Děkujeme, že jste součástí Mastodonu!",
|
||||
"attachments_list.unprocessed": "(nezpracováno)",
|
||||
"audio.hide": "Skrýt zvuk",
|
||||
"block_modal.remote_users_caveat": "Požádáme server {domain}, aby respektoval vaše rozhodnutí. Úplné dodržování nastavení však není zaručeno, protože některé servery mohou řešit blokování různě. Veřejné příspěvky mohou stále být viditelné pro nepřihlášené uživatele.",
|
||||
"block_modal.remote_users_caveat": "Požádáme server {domain}, aby respektoval vaše rozhodnutí. Úplné dodržování nastavení však není zaručeno, protože některé servery mohou řešit blokování různě. Veřejné příspěvky mohou být stále viditelné pro nepřihlášené uživatele.",
|
||||
"block_modal.show_less": "Zobrazit méně",
|
||||
"block_modal.show_more": "Zobrazit více",
|
||||
"block_modal.they_cant_mention": "Nemůže vás zmiňovat ani sledovat.",
|
||||
|
@ -109,6 +129,7 @@
|
|||
"bundle_column_error.routing.body": "Požadovaná stránka nebyla nalezena. Opravdu je URL v adresním řádku správně?",
|
||||
"bundle_column_error.routing.title": "404",
|
||||
"bundle_modal_error.close": "Zavřít",
|
||||
"bundle_modal_error.message": "Něco se pokazilo při načítání této obrazovky.",
|
||||
"bundle_modal_error.retry": "Zkusit znovu",
|
||||
"closed_registrations.other_server_instructions": "Protože Mastodon je decentralizovaný, můžete si vytvořit účet na jiném serveru a přesto komunikovat s tímto serverem.",
|
||||
"closed_registrations_modal.description": "V současné době není možné vytvořit účet na {domain}, ale mějte prosím na paměti, že k používání Mastodonu nepotřebujete účet konkrétně na {domain}.",
|
||||
|
@ -119,13 +140,16 @@
|
|||
"column.blocks": "Blokovaní uživatelé",
|
||||
"column.bookmarks": "Záložky",
|
||||
"column.community": "Místní časová osa",
|
||||
"column.create_list": "Vytvořit seznam",
|
||||
"column.direct": "Soukromé zmínky",
|
||||
"column.directory": "Prozkoumat profily",
|
||||
"column.domain_blocks": "Blokované domény",
|
||||
"column.edit_list": "Upravit seznam",
|
||||
"column.favourites": "Oblíbené",
|
||||
"column.firehose": "Živé kanály",
|
||||
"column.follow_requests": "Žádosti o sledování",
|
||||
"column.home": "Domů",
|
||||
"column.list_members": "Spravovat členy seznamu",
|
||||
"column.lists": "Seznamy",
|
||||
"column.mutes": "Skrytí uživatelé",
|
||||
"column.notifications": "Oznámení",
|
||||
|
@ -138,6 +162,7 @@
|
|||
"column_header.pin": "Připnout",
|
||||
"column_header.show_settings": "Zobrazit nastavení",
|
||||
"column_header.unpin": "Odepnout",
|
||||
"column_search.cancel": "Zrušit",
|
||||
"column_subheading.settings": "Nastavení",
|
||||
"community.column_settings.local_only": "Pouze místní",
|
||||
"community.column_settings.media_only": "Pouze média",
|
||||
|
@ -156,6 +181,7 @@
|
|||
"compose_form.poll.duration": "Doba trvání ankety",
|
||||
"compose_form.poll.multiple": "Výběr z více možností",
|
||||
"compose_form.poll.option_placeholder": "Volba {number}",
|
||||
"compose_form.poll.single": "Jediná volba",
|
||||
"compose_form.poll.switch_to_multiple": "Povolit u ankety výběr více voleb",
|
||||
"compose_form.poll.switch_to_single": "Povolit u ankety výběr pouze jedné volby",
|
||||
"compose_form.poll.type": "Styl",
|
||||
|
@ -179,6 +205,9 @@
|
|||
"confirmations.edit.confirm": "Upravit",
|
||||
"confirmations.edit.message": "Editovat teď znamená přepsání zprávy, kterou právě tvoříte. Opravdu chcete pokračovat?",
|
||||
"confirmations.edit.title": "Přepsat příspěvek?",
|
||||
"confirmations.follow_to_list.confirm": "Sledovat a přidat do seznamu",
|
||||
"confirmations.follow_to_list.message": "Musíte {name} sledovat, abyste je přidali do seznamu.",
|
||||
"confirmations.follow_to_list.title": "Sledovat uživatele?",
|
||||
"confirmations.logout.confirm": "Odhlásit se",
|
||||
"confirmations.logout.message": "Opravdu se chcete odhlásit?",
|
||||
"confirmations.logout.title": "Odhlásit se?",
|
||||
|
@ -193,6 +222,8 @@
|
|||
"confirmations.unfollow.message": "Opravdu chcete {name} přestat sledovat?",
|
||||
"confirmations.unfollow.title": "Přestat sledovat uživatele?",
|
||||
"content_warning.hide": "Skrýt příspěvek",
|
||||
"content_warning.show": "Přesto zobrazit",
|
||||
"content_warning.show_more": "Zobrazit více",
|
||||
"conversation.delete": "Smazat konverzaci",
|
||||
"conversation.mark_as_read": "Označit jako přečtené",
|
||||
"conversation.open": "Zobrazit konverzaci",
|
||||
|
@ -208,19 +239,25 @@
|
|||
"disabled_account_banner.text": "Váš účet {disabledAccount} je momentálně deaktivován.",
|
||||
"dismissable_banner.community_timeline": "Toto jsou nejnovější veřejné příspěvky od lidí, jejichž účty hostuje {domain}.",
|
||||
"dismissable_banner.dismiss": "Zavřít",
|
||||
"dismissable_banner.explore_links": "Tyto zprávy jsou dnes nejvíce sdíleny ve fediversu. Novější novinky publikované více různými lidmi jsou v pořadí vyšší.",
|
||||
"dismissable_banner.explore_statuses": "Tyto příspěvky napříč fediversem dnes získávají na popularitě. Novější příspěvky s více boosty a oblíbenými jsou výše v pořadí.",
|
||||
"dismissable_banner.explore_tags": "Tyto hashtagy dnes na fediversu získávají na popularitě. Hashtagy, které používá více různých lidí, jsou řazeny výše.",
|
||||
"dismissable_banner.public_timeline": "Toto jsou nejnovější veřejné příspěvky od lidí na fediversu, které lidé na {domain} sledují.",
|
||||
"domain_block_modal.block": "Blokovat server",
|
||||
"domain_block_modal.block_account_instead": "Raději blokovat @{name}",
|
||||
"domain_block_modal.they_can_interact_with_old_posts": "Lidé z tohoto serveru mohou interagovat s vašimi starými příspěvky.",
|
||||
"domain_block_modal.they_cant_follow": "Nikdo z tohoto serveru vás nemůže sledovat.",
|
||||
"domain_block_modal.they_wont_know": "Nebude vědět, že je zablokován*a.",
|
||||
"domain_block_modal.title": "Blokovat doménu?",
|
||||
"domain_block_modal.you_will_lose_num_followers": "Ztratíte {followersCount, plural, one {{followersCountDisplay} sledujícího} few {{followersCountDisplay} sledující} many {{followersCountDisplay} sledujících} other {{followersCountDisplay} sledujících}} a {followingCount, plural, one {{followingCountDisplay} sledovaného} few {{followingCountDisplay} sledované} many {{followingCountDisplay} sledovaných} other {{followingCountDisplay} sledovaných}}.",
|
||||
"domain_block_modal.you_will_lose_relationships": "Ztratíte všechny sledující a lidi, které sledujete z tohoto serveru.",
|
||||
"domain_block_modal.you_wont_see_posts": "Neuvidíte příspěvky ani upozornění od uživatelů z tohoto serveru.",
|
||||
"domain_pill.activitypub_lets_connect": "Umožňuje vám spojit se a komunikovat s lidmi nejen na Mastodonu, ale i s dalšími sociálními aplikacemi.",
|
||||
"domain_pill.activitypub_like_language": "ActivityPub je jako jazyk, kterým Mastodon mluví s jinými sociálními sítěmi.",
|
||||
"domain_pill.server": "Server",
|
||||
"domain_pill.their_handle": "Handle:",
|
||||
"domain_pill.their_server": "Digitální domov, kde žijí všechny příspěvky.",
|
||||
"domain_pill.their_username": "Jedinečný identikátor na serveru. Je možné najít uživatele se stejným uživatelským jménem na různých serverech.",
|
||||
"domain_pill.their_server": "Jejich digitální domov, kde žijí jejich všechny příspěvky.",
|
||||
"domain_pill.their_username": "Jejich jedinečný identikátor na jejich serveru. Je možné najít uživatele se stejným uživatelským jménem na jiných serverech.",
|
||||
"domain_pill.username": "Uživatelské jméno",
|
||||
"domain_pill.whats_in_a_handle": "Co obsahuje handle?",
|
||||
"domain_pill.who_they_are": "Protože handle říkají kdo je kdo a také kde, je možné interagovat s lidmi napříč sociálními weby <button>platforem postavených na ActivityPub</button>.",
|
||||
|
@ -293,6 +330,8 @@
|
|||
"filter_modal.select_filter.subtitle": "Použít existující kategorii nebo vytvořit novou kategorii",
|
||||
"filter_modal.select_filter.title": "Filtrovat tento příspěvek",
|
||||
"filter_modal.title.status": "Filtrovat příspěvek",
|
||||
"filter_warning.matches_filter": "Odpovídá filtru “<span>{title}</span>”",
|
||||
"filtered_notifications_banner.pending_requests": "Od {count, plural, =0 {nikoho, koho možná znáte} one {člověka, kterého možná znáte} few {#, které možná znáte} many {#, které možná znáte} other {#, které možná znáte}}",
|
||||
"filtered_notifications_banner.title": "Filtrovaná oznámení",
|
||||
"firehose.all": "Vše",
|
||||
"firehose.local": "Tento server",
|
||||
|
@ -300,14 +339,14 @@
|
|||
"follow_request.authorize": "Autorizovat",
|
||||
"follow_request.reject": "Zamítnout",
|
||||
"follow_requests.unlocked_explanation": "Přestože váš účet není uzamčen, personál {domain} usoudil, že byste mohli chtít tyto požadavky na sledování zkontrolovat ručně.",
|
||||
"follow_suggestions.curated_suggestion": "Výběr personálů",
|
||||
"follow_suggestions.curated_suggestion": "Výběr personálu",
|
||||
"follow_suggestions.dismiss": "Znovu nezobrazovat",
|
||||
"follow_suggestions.featured_longer": "Ručně vybráno týmem {domain}",
|
||||
"follow_suggestions.friends_of_friends_longer": "Populární mezi lidmi, které sledujete",
|
||||
"follow_suggestions.hints.featured": "Tento profil byl ručně vybrán týmem {domain}.",
|
||||
"follow_suggestions.hints.friends_of_friends": "Tento profil je populární mezi lidmi, které sledujete.",
|
||||
"follow_suggestions.hints.most_followed": "Tento profil je jedním z nejvíce sledovaných na {domain}.",
|
||||
"follow_suggestions.hints.most_interactions": "Tento profil nedávno dostalo velkou pozornost na {domain}.",
|
||||
"follow_suggestions.hints.most_followed": "Tento profil je jedním z nejsledovanějších na {domain}.",
|
||||
"follow_suggestions.hints.most_interactions": "Tomuto profilu se nedávno dostalo velké pozornosti na {domain}.",
|
||||
"follow_suggestions.hints.similar_to_recently_followed": "Tento profil je podobný profilům, které jste nedávno sledovali.",
|
||||
"follow_suggestions.personalized_suggestion": "Přizpůsobený návrh",
|
||||
"follow_suggestions.popular_suggestion": "Populární návrh",
|
||||
|
@ -323,8 +362,10 @@
|
|||
"footer.privacy_policy": "Zásady ochrany osobních údajů",
|
||||
"footer.source_code": "Zobrazit zdrojový kód",
|
||||
"footer.status": "Stav",
|
||||
"footer.terms_of_service": "Obchodní podmínky",
|
||||
"generic.saved": "Uloženo",
|
||||
"getting_started.heading": "Začínáme",
|
||||
"hashtag.admin_moderation": "Otevřít moderátorské rozhraní pro #{name}",
|
||||
"hashtag.column_header.tag_mode.all": "a {additional}",
|
||||
"hashtag.column_header.tag_mode.any": "nebo {additional}",
|
||||
"hashtag.column_header.tag_mode.none": "bez {additional}",
|
||||
|
@ -340,6 +381,14 @@
|
|||
"hashtag.follow": "Sledovat hashtag",
|
||||
"hashtag.unfollow": "Přestat sledovat hashtag",
|
||||
"hashtags.and_other": "…a {count, plural, one {# další} few {# další} other {# dalších}}",
|
||||
"hints.profiles.followers_may_be_missing": "Sledující mohou pro tento profil chybět.",
|
||||
"hints.profiles.follows_may_be_missing": "Sledování mohou pro tento profil chybět.",
|
||||
"hints.profiles.posts_may_be_missing": "Některé příspěvky z tohoto profilu mohou chybět.",
|
||||
"hints.profiles.see_more_followers": "Zobrazit více sledujících na {domain}",
|
||||
"hints.profiles.see_more_follows": "Zobrazit další sledování na {domain}",
|
||||
"hints.profiles.see_more_posts": "Zobrazit další příspěvky na {domain}",
|
||||
"hints.threads.replies_may_be_missing": "Odpovědi z jiných serverů mohou chybět.",
|
||||
"hints.threads.see_more": "Zobrazit další odpovědi na {domain}",
|
||||
"home.column_settings.show_reblogs": "Zobrazit boosty",
|
||||
"home.column_settings.show_replies": "Zobrazit odpovědi",
|
||||
"home.hide_announcements": "Skrýt oznámení",
|
||||
|
@ -347,12 +396,32 @@
|
|||
"home.pending_critical_update.link": "Zobrazit aktualizace",
|
||||
"home.pending_critical_update.title": "K dispozici je kritická bezpečnostní aktualizace!",
|
||||
"home.show_announcements": "Zobrazit oznámení",
|
||||
"ignore_notifications_modal.disclaimer": "Mastodon nemůže informovat uživatele, že jste ignorovali jejich oznámení. Ignorování oznámení nezabrání odesílání zpráv samotných.",
|
||||
"ignore_notifications_modal.filter_instead": "Místo toho filtrovat",
|
||||
"ignore_notifications_modal.filter_to_act_users": "Stále budete moci přijmout, odmítnout nebo nahlásit uživatele",
|
||||
"ignore_notifications_modal.filter_to_avoid_confusion": "Filtrování pomáhá vyhnout se možným nejasnostem",
|
||||
"ignore_notifications_modal.filter_to_review_separately": "Filtrovaná oznámení můžete zkontrolovat samostatně",
|
||||
"ignore_notifications_modal.ignore": "Ignorovat oznámení",
|
||||
"ignore_notifications_modal.limited_accounts_title": "Ignorovat oznámení z moderovaných účtů?",
|
||||
"ignore_notifications_modal.new_accounts_title": "Ignorovat oznámení z nových účtů?",
|
||||
"ignore_notifications_modal.not_followers_title": "Ignorovat oznámení od lidí, kteří vás nesledují?",
|
||||
"ignore_notifications_modal.not_following_title": "Ignorovat oznámení od lidí, které nesledujete?",
|
||||
"ignore_notifications_modal.private_mentions_title": "Ignorovat oznámení z nevyžádaných soukromých zmínek?",
|
||||
"interaction_modal.action.favourite": "Chcete-li pokračovat, musíte oblíbit z vašeho účtu.",
|
||||
"interaction_modal.action.follow": "Chcete-li pokračovat, musíte sledovat z vašeho účtu.",
|
||||
"interaction_modal.action.reblog": "Chcete-li pokračovat, musíte dát boost z vašeho účtu.",
|
||||
"interaction_modal.action.reply": "Chcete-li pokračovat, musíte odpovědět z vašeho účtu.",
|
||||
"interaction_modal.action.vote": "Chcete-li pokračovat, musíte hlasovat z vašeho účtu.",
|
||||
"interaction_modal.go": "Přejít",
|
||||
"interaction_modal.no_account_yet": "Ještě nemáte účet?",
|
||||
"interaction_modal.on_another_server": "Na jiném serveru",
|
||||
"interaction_modal.on_this_server": "Na tomto serveru",
|
||||
"interaction_modal.title.favourite": "Oblíbit si příspěvek od uživatele {name}",
|
||||
"interaction_modal.title.follow": "Sledovat {name}",
|
||||
"interaction_modal.title.reblog": "Boostnout příspěvek uživatele {name}",
|
||||
"interaction_modal.title.reply": "Odpovědět na příspěvek uživatele {name}",
|
||||
"interaction_modal.title.vote": "Hlasujte v anketě {name}",
|
||||
"interaction_modal.username_prompt": "např. {example}",
|
||||
"intervals.full.days": "{number, plural, one {# den} few {# dny} many {# dní} other {# dní}}",
|
||||
"intervals.full.hours": "{number, plural, one {# hodina} few {# hodiny} many {# hodin} other {# hodin}}",
|
||||
"intervals.full.minutes": "{number, plural, one {# minuta} few {# minuty} many {# minut} other {# minut}}",
|
||||
|
@ -388,23 +457,48 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Zobrazit/skrýt text za varováním o obsahu",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Zobrazit/skrýt média",
|
||||
"keyboard_shortcuts.toot": "Začít nový příspěvek",
|
||||
"keyboard_shortcuts.translate": "k přeložení příspěvku",
|
||||
"keyboard_shortcuts.unfocus": "Zrušit zaměření na nový příspěvek/hledání",
|
||||
"keyboard_shortcuts.up": "Posunout v seznamu nahoru",
|
||||
"lightbox.close": "Zavřít",
|
||||
"lightbox.next": "Další",
|
||||
"lightbox.previous": "Předchozí",
|
||||
"lightbox.zoom_in": "Přiblížit na skutečnou velikost",
|
||||
"lightbox.zoom_out": "Přizpůsobit velikost",
|
||||
"limited_account_hint.action": "Přesto profil zobrazit",
|
||||
"limited_account_hint.title": "Tento profil byl skryt moderátory {domain}.",
|
||||
"link_preview.author": "Podle {name}",
|
||||
"link_preview.more_from_author": "Více od {name}",
|
||||
"link_preview.shares": "{count, plural, one {{counter} příspěvek} few {{counter} příspěvky} many {{counter} příspěvků} other {{counter} příspěvků}}",
|
||||
"lists.add_member": "Přidat",
|
||||
"lists.add_to_list": "Přidat do seznamu",
|
||||
"lists.add_to_lists": "Přidat {name} do seznamů",
|
||||
"lists.create": "Vytvořit",
|
||||
"lists.create_a_list_to_organize": "Vytvořte nový seznam pro organizaci vašeho domovského kanálu",
|
||||
"lists.create_list": "Vytvořit seznam",
|
||||
"lists.delete": "Smazat seznam",
|
||||
"lists.done": "Hotovo",
|
||||
"lists.edit": "Upravit seznam",
|
||||
"lists.exclusive": "Skrýt členy na domovském kanálu",
|
||||
"lists.exclusive_hint": "Pokud je někdo na tomto seznamu, skryjte jej ve vašem domovském kanálu, abyste se vyhnuli dvojímu vidění jejich příspěvků.",
|
||||
"lists.find_users_to_add": "Najít uživatele, které chcete přidat",
|
||||
"lists.list_members": "Členové seznamu",
|
||||
"lists.list_members_count": "{count, plural, one {# člen} few {# členové} many {# členů} other {# členů}}",
|
||||
"lists.list_name": "Název seznamu",
|
||||
"lists.new_list_name": "Název nového seznamu",
|
||||
"lists.no_lists_yet": "Zatím žádné seznamy.",
|
||||
"lists.no_members_yet": "Zatím žádní členové.",
|
||||
"lists.no_results_found": "Nebyly nalezeny žádné výsledky.",
|
||||
"lists.remove_member": "Odstranit",
|
||||
"lists.replies_policy.followed": "Sledovaným uživatelům",
|
||||
"lists.replies_policy.list": "Členům seznamu",
|
||||
"lists.replies_policy.none": "Nikomu",
|
||||
"lists.save": "Uložit",
|
||||
"lists.search": "Hledat",
|
||||
"lists.show_replies_to": "Zahrnout odpovědi od členů seznamu pro",
|
||||
"load_pending": "{count, plural, one {# nová položka} few {# nové položky} many {# nových položek} other {# nových položek}}",
|
||||
"loading_indicator.label": "Načítání…",
|
||||
"media_gallery.hide": "Skrýt",
|
||||
"moved_to_account_banner.text": "Váš účet {disabledAccount} je momentálně deaktivován, protože jste se přesunul/a na {movedToAccount}.",
|
||||
"mute_modal.hide_from_notifications": "Skrýt z notifikací",
|
||||
"mute_modal.hide_options": "Skrýt možnosti",
|
||||
|
@ -416,6 +510,7 @@
|
|||
"mute_modal.you_wont_see_mentions": "Neuvidíte příspěvky, které je zmiňují.",
|
||||
"mute_modal.you_wont_see_posts": "Stále budou moci vidět vaše příspěvky, ale vy jejich neuvidíte.",
|
||||
"navigation_bar.about": "O aplikaci",
|
||||
"navigation_bar.administration": "Administrace",
|
||||
"navigation_bar.advanced_interface": "Otevřít pokročilé webové rozhraní",
|
||||
"navigation_bar.blocks": "Blokovaní uživatelé",
|
||||
"navigation_bar.bookmarks": "Záložky",
|
||||
|
@ -432,6 +527,7 @@
|
|||
"navigation_bar.follows_and_followers": "Sledovaní a sledující",
|
||||
"navigation_bar.lists": "Seznamy",
|
||||
"navigation_bar.logout": "Odhlásit se",
|
||||
"navigation_bar.moderation": "Moderace",
|
||||
"navigation_bar.mutes": "Skrytí uživatelé",
|
||||
"navigation_bar.opened_in_classic_interface": "Příspěvky, účty a další specifické stránky jsou ve výchozím nastavení otevřeny v klasickém webovém rozhraní.",
|
||||
"navigation_bar.personal": "Osobní",
|
||||
|
@ -442,12 +538,28 @@
|
|||
"navigation_bar.security": "Zabezpečení",
|
||||
"not_signed_in_indicator.not_signed_in": "Pro přístup k tomuto zdroji se musíte přihlásit.",
|
||||
"notification.admin.report": "Uživatel {name} nahlásil {target}",
|
||||
"notification.admin.report_account": "{name} nahlásil {count, plural, one {jeden příspěvek} few {# příspěvky} many {# příspěvků} other {# příspěvků}} od {target} za {category}",
|
||||
"notification.admin.report_account_other": "{name} nahlásil {count, plural, one {jeden příspěvek} few {# příspěvky} many {# příspěvků} other {# příspěvků}} od {target}",
|
||||
"notification.admin.report_statuses": "{name} nahlásil {target} za {category}",
|
||||
"notification.admin.report_statuses_other": "{name} nahlásil {target}",
|
||||
"notification.admin.sign_up": "Uživatel {name} se zaregistroval",
|
||||
"notification.admin.sign_up.name_and_others": "{name} a {count, plural, one {# další} few {# další} many {# dalších} other {# dalších}} se zaregistrovali",
|
||||
"notification.annual_report.message": "Váš #Wrapstodon {year} na Vás čeká! Podívejte se, jak vypadal tento Váš rok na Mastodonu!",
|
||||
"notification.annual_report.view": "Zobrazit #Wrapstodon",
|
||||
"notification.favourite": "Uživatel {name} si oblíbil váš příspěvek",
|
||||
"notification.favourite.name_and_others_with_link": "{name} a {count, plural, one {<a># další</a> si oblíbil} few {<a># další</a> si oblíbili} other {<a># dalších</a> si oblíbilo}} Váš příspěvek",
|
||||
"notification.favourite_pm": "{name} si oblíbil vaši soukromou zmínku",
|
||||
"notification.favourite_pm.name_and_others_with_link": "{name} a {count, plural, one {<a># další</a> si oblíbil} few {<a># další</a> si oblíbili} other {<a># dalších</a> si oblíbilo}} Vaši soukromou zmínku",
|
||||
"notification.follow": "Uživatel {name} vás začal sledovat",
|
||||
"notification.follow.name_and_others": "{name} a {count, plural, one {<a># další</a> Vás začal sledovat} few {<a># další</a> Vás začali sledovat} other {<a># dalších</a> Vás začalo sledovat}}",
|
||||
"notification.follow_request": "Uživatel {name} požádal o povolení vás sledovat",
|
||||
"notification.follow_request.name_and_others": "{name} a {count, plural, one {# další Vám poslal žádost o sledování} few {# další Vám poslali žádost o sledování} other {# dalších Vám poslalo žádost o sledování}}",
|
||||
"notification.label.mention": "Zmínka",
|
||||
"notification.label.private_mention": "Soukromá zmínka",
|
||||
"notification.label.private_reply": "Privátní odpověď",
|
||||
"notification.label.reply": "Odpověď",
|
||||
"notification.mention": "Zmínka",
|
||||
"notification.mentioned_you": "{name} vás zmínil",
|
||||
"notification.moderation-warning.learn_more": "Zjistit více",
|
||||
"notification.moderation_warning": "Obdrželi jste moderační varování",
|
||||
"notification.moderation_warning.action_delete_statuses": "Některé z vašich příspěvků byly odstraněny.",
|
||||
|
@ -460,6 +572,7 @@
|
|||
"notification.own_poll": "Vaše anketa skončila",
|
||||
"notification.poll": "Anketa, ve které jste hlasovali, skončila",
|
||||
"notification.reblog": "Uživatel {name} boostnul váš příspěvek",
|
||||
"notification.reblog.name_and_others_with_link": "{name} a {count, plural, one {<a># další</a> boostnul} few {<a># další</a> boostnuli} other {<a># dalších</a> boostnulo}} Váš příspěvek",
|
||||
"notification.relationships_severance_event": "Kontakt ztracen s {name}",
|
||||
"notification.relationships_severance_event.account_suspension": "Administrátor z {from} pozastavil {target}, což znamená, že již od nich nemůžete přijímat aktualizace nebo s nimi interagovat.",
|
||||
"notification.relationships_severance_event.domain_block": "Administrátor z {from} pozastavil {target}, včetně {followersCount} z vašich sledujících a {followingCount, plural, one {# účet, který sledujete} few {# účty, které sledujete} many {# účtů, které sledujete} other {# účtů, které sledujete}}.",
|
||||
|
@ -468,11 +581,24 @@
|
|||
"notification.status": "Uživatel {name} právě přidal příspěvek",
|
||||
"notification.update": "Uživatel {name} upravil příspěvek",
|
||||
"notification_requests.accept": "Přijmout",
|
||||
"notification_requests.accept_multiple": "{count, plural, one {Schválit # požadavek…} few {Schválit # požadavky…} other {Schválit # požadavků…}}",
|
||||
"notification_requests.confirm_accept_multiple.button": "{count, plural, one {Schválit požadavek} other {Schválit požadavky}}",
|
||||
"notification_requests.confirm_accept_multiple.message": "Chystáte se schválit {count, plural, one {jeden požadavek} few {# požadavky} other {# požadavků}} na oznámení. Opravdu chcete pokračovat?",
|
||||
"notification_requests.confirm_accept_multiple.title": "Přijmout žádosti o oznámení?",
|
||||
"notification_requests.confirm_dismiss_multiple.button": "{count, plural, one {Zamítnout požadavek} other {Zamítnout požadavky}}",
|
||||
"notification_requests.confirm_dismiss_multiple.message": "Chystáte se zamítnout {count, plural, one {jeden požadavek} few {# požadavky} many {# požadavků} other {# požadavků}} na oznámení. Poté k {count, plural, one {němu} other {něm}} již nebudete mít snadný přístup. Opravdu chcete pokračovat?",
|
||||
"notification_requests.confirm_dismiss_multiple.title": "Zamítnout požadavky na oznámení?",
|
||||
"notification_requests.dismiss": "Zamítnout",
|
||||
"notification_requests.dismiss_multiple": "Zamítnout {count, plural, one {# požadavek} few {# požadavky} many {# požadavků} other {# požadavků}}…",
|
||||
"notification_requests.edit_selection": "Upravit",
|
||||
"notification_requests.exit_selection": "Hotovo",
|
||||
"notification_requests.explainer_for_limited_account": "Oznámení z tohoto účtu byla filtrována, protože tento účet byl omezen moderátorem.",
|
||||
"notification_requests.explainer_for_limited_remote_account": "Oznámení z tohoto účtu byla filtrována, protože tento účet nebo jeho server byl omezen moderátorem.",
|
||||
"notification_requests.maximize": "Maximalizovat",
|
||||
"notification_requests.minimize_banner": "Minimalizovat banner filtrovaných oznámení",
|
||||
"notification_requests.notifications_from": "Oznámení od {name}",
|
||||
"notification_requests.title": "Vyfiltrovaná oznámení",
|
||||
"notification_requests.view": "Zobrazit oznámení",
|
||||
"notifications.clear": "Vyčistit oznámení",
|
||||
"notifications.clear_confirmation": "Opravdu chcete trvale smazat všechna vaše oznámení?",
|
||||
"notifications.clear_title": "Vyčistit oznámení?",
|
||||
|
@ -484,6 +610,7 @@
|
|||
"notifications.column_settings.filter_bar.category": "Panel rychlého filtrování",
|
||||
"notifications.column_settings.follow": "Noví sledující:",
|
||||
"notifications.column_settings.follow_request": "Nové žádosti o sledování:",
|
||||
"notifications.column_settings.group": "Skupina",
|
||||
"notifications.column_settings.mention": "Zmínky:",
|
||||
"notifications.column_settings.poll": "Výsledky anket:",
|
||||
"notifications.column_settings.push": "Push oznámení",
|
||||
|
@ -507,6 +634,14 @@
|
|||
"notifications.permission_denied": "Oznámení na ploše nejsou k dispozici, protože byla zamítnuta žádost o oprávnění je zobrazovat",
|
||||
"notifications.permission_denied_alert": "Oznámení na ploše není možné zapnout, protože oprávnění bylo v minulosti zamítnuto",
|
||||
"notifications.permission_required": "Oznámení na ploše nejsou k dispozici, protože nebylo uděleno potřebné oprávnění.",
|
||||
"notifications.policy.accept": "Přijmout",
|
||||
"notifications.policy.accept_hint": "Zobrazit v oznámeních",
|
||||
"notifications.policy.drop": "Ignorovat",
|
||||
"notifications.policy.drop_hint": "Permanentně odstranit, aby již nikdy nespatřil světlo světa",
|
||||
"notifications.policy.filter": "Filtrovat",
|
||||
"notifications.policy.filter_hint": "Odeslat do filtrované schránky oznámení",
|
||||
"notifications.policy.filter_limited_accounts_hint": "Omezeno moderátory serveru",
|
||||
"notifications.policy.filter_limited_accounts_title": "Moderované účty",
|
||||
"notifications.policy.filter_new_accounts.hint": "Vytvořeno během {days, plural, one {včerejška} few {posledních # dnů} many {posledních # dní} other {posledních # dní}}",
|
||||
"notifications.policy.filter_new_accounts_title": "Nové účty",
|
||||
"notifications.policy.filter_not_followers_hint": "Včetně lidí, kteří vás sledovali méně než {days, plural, one {jeden den} few {# dny} many {# dní} other {# dní}}",
|
||||
|
@ -515,10 +650,15 @@
|
|||
"notifications.policy.filter_not_following_title": "Lidé, které nesledujete",
|
||||
"notifications.policy.filter_private_mentions_hint": "Vyfiltrováno, pokud to není odpověď na vaši zmínku nebo pokud sledujete odesílatele",
|
||||
"notifications.policy.filter_private_mentions_title": "Nevyžádané soukromé zmínky",
|
||||
"notifications.policy.title": "Spravovat oznámení od…",
|
||||
"notifications_permission_banner.enable": "Povolit oznámení na ploše",
|
||||
"notifications_permission_banner.how_to_control": "Chcete-li dostávat oznámení, i když nemáte Mastodon otevřený, povolte oznámení na ploše. Můžete si zvolit, o kterých druzích interakcí chcete být oznámením na ploše informování pod tlačítkem {icon} výše.",
|
||||
"notifications_permission_banner.title": "Nenechte si nic uniknout",
|
||||
"onboarding.follows.back": "Zpět",
|
||||
"onboarding.follows.done": "Hotovo",
|
||||
"onboarding.follows.empty": "Bohužel, žádné výsledky nelze momentálně zobrazit. Můžete zkusit vyhledat nebo procházet stránku s průzkumem a najít lidi, kteří budou sledovat, nebo to zkuste znovu později.",
|
||||
"onboarding.follows.search": "Hledat",
|
||||
"onboarding.follows.title": "Sledujte lidi a začněte",
|
||||
"onboarding.profile.discoverable": "Udělat svůj profil vyhledatelným",
|
||||
"onboarding.profile.discoverable_hint": "Když se rozhodnete být vyhledatelný na Mastodonu, vaše příspěvky se mohou objevit ve výsledcích vyhledávání a v populárních, a váš profil může být navrhován lidem s podobnými zájmy.",
|
||||
"onboarding.profile.display_name": "Zobrazované jméno",
|
||||
|
@ -556,6 +696,8 @@
|
|||
"privacy_policy.title": "Zásady ochrany osobních údajů",
|
||||
"recommended": "Doporučeno",
|
||||
"refresh": "Obnovit",
|
||||
"regeneration_indicator.please_stand_by": "Počkej prosím.",
|
||||
"regeneration_indicator.preparing_your_home_feed": "Připravujeme vaší domovskou stránku…",
|
||||
"relative_time.days": "{number} d",
|
||||
"relative_time.full.days": "před {number, plural, one {# dnem} few {# dny} many {# dny} other {# dny}}",
|
||||
"relative_time.full.hours": "před {number, plural, one {# hodinou} few {# hodinami} many {# hodinami} other {# hodinami}}",
|
||||
|
@ -639,8 +781,11 @@
|
|||
"search_results.accounts": "Profily",
|
||||
"search_results.all": "Vše",
|
||||
"search_results.hashtags": "Hashtagy",
|
||||
"search_results.no_results": "Nelze najít.",
|
||||
"search_results.no_search_yet": "Zkuste vyhledat příspěvky, profily nebo hashtagy.",
|
||||
"search_results.see_all": "Zobrazit vše",
|
||||
"search_results.statuses": "Příspěvky",
|
||||
"search_results.title": "Hledat \"{q}\"",
|
||||
"server_banner.about_active_users": "Lidé používající tento server během posledních 30 dní (měsíční aktivní uživatelé)",
|
||||
"server_banner.active_users": "aktivní uživatelé",
|
||||
"server_banner.administered_by": "Spravováno:",
|
||||
|
@ -658,6 +803,7 @@
|
|||
"status.bookmark": "Přidat do záložek",
|
||||
"status.cancel_reblog_private": "Zrušit boostnutí",
|
||||
"status.cannot_reblog": "Tento příspěvek nemůže být boostnutý",
|
||||
"status.continued_thread": "Pokračuje ve vlákně",
|
||||
"status.copy": "Zkopírovat odkaz na příspěvek",
|
||||
"status.delete": "Smazat",
|
||||
"status.detailed_status": "Podrobné zobrazení konverzace",
|
||||
|
@ -666,6 +812,7 @@
|
|||
"status.edit": "Upravit",
|
||||
"status.edited": "Naposledy upraveno {date}",
|
||||
"status.edited_x_times": "Upraveno {count, plural, one {{count}krát} few {{count}krát} many {{count}krát} other {{count}krát}}",
|
||||
"status.embed": "Získejte kód pro vložení",
|
||||
"status.favourite": "Oblíbit",
|
||||
"status.favourites": "{count, plural, one {oblíbený} few {oblíbené} many {oblíbených} other {oblíbených}}",
|
||||
"status.filter": "Filtrovat tento příspěvek",
|
||||
|
@ -690,6 +837,8 @@
|
|||
"status.reblogs.empty": "Tento příspěvek ještě nikdo neboostnul. Pokud to někdo udělá, zobrazí se zde.",
|
||||
"status.redraft": "Smazat a přepsat",
|
||||
"status.remove_bookmark": "Odstranit ze záložek",
|
||||
"status.remove_favourite": "Odebrat z oblíbených",
|
||||
"status.replied_in_thread": "Odpověděli ve vlákně",
|
||||
"status.replied_to": "Odpověděl/a uživateli {name}",
|
||||
"status.reply": "Odpovědět",
|
||||
"status.replyAll": "Odpovědět na vlákno",
|
||||
|
@ -710,6 +859,7 @@
|
|||
"subscribed_languages.target": "Změnit odebírané jazyky na {target}",
|
||||
"tabs_bar.home": "Domů",
|
||||
"tabs_bar.notifications": "Oznámení",
|
||||
"terms_of_service.title": "Podmínky služby",
|
||||
"time_remaining.days": "{number, plural, one {Zbývá # den} few {Zbývají # dny} many {Zbývá # dní} other {Zbývá # dní}}",
|
||||
"time_remaining.hours": "{number, plural, one {Zbývá # hodina} few {Zbývají # hodiny} many {Zbývá # hodin} other {Zbývá # hodin}}",
|
||||
"time_remaining.minutes": "{number, plural, one {Zbývá # minuta} few {Zbývají # minuty} many {Zbývá # minut} other {Zbývá # minut}}",
|
||||
|
@ -727,6 +877,11 @@
|
|||
"upload_error.poll": "Nahrávání souborů není povoleno s anketami.",
|
||||
"upload_form.audio_description": "Popis pro sluchově postižené",
|
||||
"upload_form.description": "Popis pro zrakově postižené",
|
||||
"upload_form.drag_and_drop.instructions": "Chcete-li zvednout přílohu, stiskněte mezerník nebo enter. Při přetažení použijte klávesnicové šipky k přesunutí mediální přílohy v libovolném směru. Stiskněte mezerník nebo enter pro vložení přílohy do nové pozice, nebo stiskněte Esc pro ukončení.",
|
||||
"upload_form.drag_and_drop.on_drag_cancel": "Přetažení bylo zrušeno. Příloha {item} byla vrácena.",
|
||||
"upload_form.drag_and_drop.on_drag_end": "Příloha {item} byla vrácena.",
|
||||
"upload_form.drag_and_drop.on_drag_over": "Příloha {item} byla přesunuta.",
|
||||
"upload_form.drag_and_drop.on_drag_start": "Zvednuta příloha {item}.",
|
||||
"upload_form.edit": "Upravit",
|
||||
"upload_form.thumbnail": "Změnit miniaturu",
|
||||
"upload_form.video_description": "Popis pro sluchově či zrakově postižené",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Dangos/cuddio testun tu ôl i CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Dangos/cuddio cyfryngau",
|
||||
"keyboard_shortcuts.toot": "Dechrau post newydd",
|
||||
"keyboard_shortcuts.translate": "i gyfieithu postiad",
|
||||
"keyboard_shortcuts.unfocus": "Dad-ffocysu ardal cyfansoddi testun/chwilio",
|
||||
"keyboard_shortcuts.up": "Symud yn uwch yn y rhestr",
|
||||
"lightbox.close": "Cau",
|
||||
|
@ -835,6 +836,7 @@
|
|||
"status.reblogs.empty": "Does neb wedi hybio'r post yma eto. Pan y bydd rhywun yn gwneud, byddent yn ymddangos yma.",
|
||||
"status.redraft": "Dileu ac ailddrafftio",
|
||||
"status.remove_bookmark": "Tynnu nod tudalen",
|
||||
"status.remove_favourite": "Tynnu o'r ffefrynnau",
|
||||
"status.replied_in_thread": "Atebodd mewn edefyn",
|
||||
"status.replied_to": "Wedi ateb {name}",
|
||||
"status.reply": "Ateb",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Vis/skjul tekst bag CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Vis/skjul medier",
|
||||
"keyboard_shortcuts.toot": "Påbegynd nyt indlæg",
|
||||
"keyboard_shortcuts.translate": "for at oversætte et indlæg",
|
||||
"keyboard_shortcuts.unfocus": "Fjern fokus fra tekstskrivningsområde/søgning",
|
||||
"keyboard_shortcuts.up": "Flyt opad på listen",
|
||||
"lightbox.close": "Luk",
|
||||
|
@ -481,6 +482,7 @@
|
|||
"lists.exclusive": "Skjul medlemmer i Hjem",
|
||||
"lists.exclusive_hint": "Er nogen er på denne liste, skjul personen i hjemme-feeds for at undgå at se vedkommendes indlæg to gange.",
|
||||
"lists.find_users_to_add": "Find brugere at tilføje",
|
||||
"lists.list_members": "Liste over medlemmer",
|
||||
"lists.list_members_count": "{count, plural, one {# medlem} other {# medlemmer}}",
|
||||
"lists.list_name": "Listetitel",
|
||||
"lists.new_list_name": "Ny listetitel",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Beitragstext hinter der Inhaltswarnung anzeigen/ausblenden",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Medien anzeigen/ausblenden",
|
||||
"keyboard_shortcuts.toot": "Neuen Beitrag erstellen",
|
||||
"keyboard_shortcuts.translate": "Beitrag übersetzen",
|
||||
"keyboard_shortcuts.unfocus": "Eingabefeld/Suche nicht mehr fokussieren",
|
||||
"keyboard_shortcuts.up": "Ansicht nach oben bewegen",
|
||||
"lightbox.close": "Schließen",
|
||||
|
|
|
@ -863,7 +863,7 @@
|
|||
"time_remaining.minutes": "απομένουν {number, plural, one {# λεπτό} other {# λεπτά}}",
|
||||
"time_remaining.moments": "Στιγμές που απομένουν",
|
||||
"time_remaining.seconds": "απομένουν {number, plural, one {# δευτερόλεπτο} other {# δευτερόλεπτα}}",
|
||||
"trends.counter_by_accounts": "{count, plural, one {{counter} άτομο} other {{counter} άτομα} }{days, plural, one { την τελευταία ημέρα} other { τις τελευταίες {days} ημέρες}}",
|
||||
"trends.counter_by_accounts": "{count, plural, one {{counter} άτομο} other {{counter} άτομα}} {days, plural, one {την τελευταία ημέρα} other {τις τελευταίες {days} ημέρες}}",
|
||||
"trends.trending_now": "Δημοφιλή τώρα",
|
||||
"ui.beforeunload": "Το προσχέδιό σου θα χαθεί αν φύγεις από το Mastodon.",
|
||||
"units.short.billion": "{count}Δις",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Montri/kaŝi tekston malantaŭ CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Montri/kaŝi plurmedion",
|
||||
"keyboard_shortcuts.toot": "Komencu novan afiŝon",
|
||||
"keyboard_shortcuts.translate": "Traduki afiŝon",
|
||||
"keyboard_shortcuts.unfocus": "Senfokusigi verki tekstareon/serĉon",
|
||||
"keyboard_shortcuts.up": "Movu supren en la listo",
|
||||
"lightbox.close": "Fermi",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Mostrar/ocultar texto detrás de la advertencia de contenido (\"CW\")",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Mostrar/ocultar medios",
|
||||
"keyboard_shortcuts.toot": "Comenzar un mensaje nuevo",
|
||||
"keyboard_shortcuts.translate": "para traducir un mensaje",
|
||||
"keyboard_shortcuts.unfocus": "Quitar el foco del área de texto de redacción o de búsqueda",
|
||||
"keyboard_shortcuts.up": "Subir en la lista",
|
||||
"lightbox.close": "Cerrar",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "mostrar/ocultar texto tras aviso de contenido (CW)",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "mostrar/ocultar medios",
|
||||
"keyboard_shortcuts.toot": "Comenzar una nueva publicación",
|
||||
"keyboard_shortcuts.translate": "para traducir una publicación",
|
||||
"keyboard_shortcuts.unfocus": "para retirar el foco de la caja de redacción/búsqueda",
|
||||
"keyboard_shortcuts.up": "para ir hacia arriba en la lista",
|
||||
"lightbox.close": "Cerrar",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "mostrar/ocultar texto tras aviso de contenido (CW)",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "mostrar/ocultar medios",
|
||||
"keyboard_shortcuts.toot": "Comienza una nueva publicación",
|
||||
"keyboard_shortcuts.translate": "para traducir una publicación",
|
||||
"keyboard_shortcuts.unfocus": "para retirar el foco de la caja de redacción/búsqueda",
|
||||
"keyboard_shortcuts.up": "para ir hacia arriba en la lista",
|
||||
"lightbox.close": "Cerrar",
|
||||
|
|
|
@ -104,6 +104,7 @@
|
|||
"annual_report.summary.most_used_hashtag.none": "Ei mitään",
|
||||
"annual_report.summary.new_posts.new_posts": "uutta julkaisua",
|
||||
"annual_report.summary.percentile.text": "<topLabel>Olet osa huippujoukkoa, johon kuuluu</topLabel><percentage></percentage><bottomLabel>{domain}-käyttäjistä.</bottomLabel>",
|
||||
"annual_report.summary.percentile.we_wont_tell_bernie": "Emme kerro Bernie Sandersille.",
|
||||
"annual_report.summary.thanks": "Kiitos, että olet osa Mastodonia!",
|
||||
"attachments_list.unprocessed": "(käsittelemätön)",
|
||||
"audio.hide": "Piilota ääni",
|
||||
|
@ -456,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Näytä tai piilota sisältövaroituksella merkitty teksti",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Näytä tai piilota media",
|
||||
"keyboard_shortcuts.toot": "Luo uusi julkaisu",
|
||||
"keyboard_shortcuts.translate": "Käännä julkaisu",
|
||||
"keyboard_shortcuts.unfocus": "Poistu kirjoitus- tai hakukentästä",
|
||||
"keyboard_shortcuts.up": "Siirry luettelossa taaksepäin",
|
||||
"lightbox.close": "Sulje",
|
||||
|
|
|
@ -34,7 +34,9 @@
|
|||
"account.follow_back": "Sundan pabalik",
|
||||
"account.followers": "Mga tagasunod",
|
||||
"account.followers.empty": "Wala pang sumusunod sa tagagamit na ito.",
|
||||
"account.followers_counter": "{count, plural, one {{counter} tagasunod} other {{counter} tagasunod}}",
|
||||
"account.following": "Sinusundan",
|
||||
"account.following_counter": "{count, plural, one {{counter} sinusundan} other {{counter} sinusundan}}",
|
||||
"account.follows.empty": "Wala pang sinusundan ang tagagamit na ito.",
|
||||
"account.go_to_profile": "Pumunta sa profile",
|
||||
"account.hide_reblogs": "Itago ang mga pagpapalakas mula sa {name}",
|
||||
|
@ -46,14 +48,21 @@
|
|||
"account.media": "Medya",
|
||||
"account.mention": "Banggitin si @{name}",
|
||||
"account.moved_to": "Ipinahihiwatig ni {name} na ang kanilang bagong account ngayon ay:",
|
||||
"account.mute": "I-mute si @{name}",
|
||||
"account.mute_notifications_short": "I-mute ang mga abiso",
|
||||
"account.mute_short": "I-mute",
|
||||
"account.muted": "Naka-mute",
|
||||
"account.mutual": "Ka-mutual",
|
||||
"account.no_bio": "Walang nakalaan na paglalarawan.",
|
||||
"account.open_original_page": "Buksan ang pinagmulang pahina",
|
||||
"account.posts": "Mga post",
|
||||
"account.report": "I-ulat si/ang @{name}",
|
||||
"account.requested": "Naghihintay ng pag-apruba. I-click upang ikansela ang hiling sa pagsunod",
|
||||
"account.requested_follow": "Hinihiling ni {name} na sundan ka",
|
||||
"account.share": "Ibahagi ang profile ni @{name}",
|
||||
"account.show_reblogs": "Ipakita ang mga pagpapalakas mula sa/kay {name}",
|
||||
"account.unendorse": "Huwag itampok sa profile",
|
||||
"account.unfollow": "Huwag nang sundan",
|
||||
"admin.dashboard.retention.cohort_size": "Mga bagong tagagamit",
|
||||
"alert.rate_limited.message": "Mangyaring subukan muli pagkatapos ng {retry_time, time, medium}.",
|
||||
"audio.hide": "Itago ang tunog",
|
||||
|
@ -355,6 +364,7 @@
|
|||
"status.more": "Higit pa",
|
||||
"status.read_more": "Basahin ang higit pa",
|
||||
"status.reblogs.empty": "Wala pang nagpalakas ng post na ito. Kung may sinumang nagpalakas, makikita sila rito.",
|
||||
"status.remove_favourite": "Tanggalin sa mga paborito",
|
||||
"status.reply": "Tumugon",
|
||||
"status.report": "I-ulat si/ang @{name}",
|
||||
"status.sensitive_warning": "Sensitibong nilalaman",
|
||||
|
|
|
@ -362,6 +362,7 @@
|
|||
"footer.privacy_policy": "Privatlívspolitikkur",
|
||||
"footer.source_code": "Vís keldukotuna",
|
||||
"footer.status": "Støða",
|
||||
"footer.terms_of_service": "Tænastutreytir",
|
||||
"generic.saved": "Goymt",
|
||||
"getting_started.heading": "At byrja",
|
||||
"hashtag.admin_moderation": "Lat umsjónarmarkamót upp fyri #{name}",
|
||||
|
@ -456,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Vís/fjal tekst handan CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Vís ella fjal innihald",
|
||||
"keyboard_shortcuts.toot": "Byrja nýggjan post",
|
||||
"keyboard_shortcuts.translate": "at umseta ein post",
|
||||
"keyboard_shortcuts.unfocus": "Tak skrivi-/leiti-økið úr miðdeplinum",
|
||||
"keyboard_shortcuts.up": "Flyt upp á listanum",
|
||||
"lightbox.close": "Lat aftur",
|
||||
|
@ -857,6 +859,7 @@
|
|||
"subscribed_languages.target": "Broyt haldaramál fyri {target}",
|
||||
"tabs_bar.home": "Heim",
|
||||
"tabs_bar.notifications": "Fráboðanir",
|
||||
"terms_of_service.title": "Tænastutreytir",
|
||||
"time_remaining.days": "{number, plural, one {# dagur} other {# dagar}} eftir",
|
||||
"time_remaining.hours": "{number, plural, one {# tími} other {# tímar}} eftir",
|
||||
"time_remaining.minutes": "{number, plural, one {# minuttur} other {# minuttir}} eftir",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Déplier/replier texte derrière avertissement",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Afficher/cacher médias",
|
||||
"keyboard_shortcuts.toot": "Commencer un nouveau message",
|
||||
"keyboard_shortcuts.translate": "traduire un message",
|
||||
"keyboard_shortcuts.unfocus": "Ne plus se concentrer sur la zone de rédaction/barre de recherche",
|
||||
"keyboard_shortcuts.up": "Monter dans la liste",
|
||||
"lightbox.close": "Fermer",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Déplier/replier le texte derrière un CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Afficher/cacher les médias",
|
||||
"keyboard_shortcuts.toot": "Commencer un nouveau message",
|
||||
"keyboard_shortcuts.translate": "traduire un message",
|
||||
"keyboard_shortcuts.unfocus": "Quitter la zone de rédaction/barre de recherche",
|
||||
"keyboard_shortcuts.up": "Monter dans la liste",
|
||||
"lightbox.close": "Fermer",
|
||||
|
|
|
@ -407,6 +407,13 @@
|
|||
"ignore_notifications_modal.not_followers_title": "An dtugann tú aird ar fhógraí ó dhaoine nach leanann tú?",
|
||||
"ignore_notifications_modal.not_following_title": "An ndéanann tú neamhaird de fhógraí ó dhaoine nach leanann tú?",
|
||||
"ignore_notifications_modal.private_mentions_title": "An dtugann tú aird ar fhógraí ó Luaintí Príobháideacha gan iarraidh?",
|
||||
"interaction_modal.action.favourite": "Chun leanúint ar aghaidh, ní mór duit an ceann is fearr leat ó do chuntas.",
|
||||
"interaction_modal.action.follow": "Chun leanúint ar aghaidh, ní mór duit leanúint ó do chuntas.",
|
||||
"interaction_modal.action.reblog": "Chun leanúint ar aghaidh, ní mór duit athbhlagáil ó do chuntas.",
|
||||
"interaction_modal.action.reply": "Chun leanúint ar aghaidh, ní mór duit freagra a thabhairt ó do chuntas.",
|
||||
"interaction_modal.action.vote": "Chun leanúint ar aghaidh, ní mór duit vótáil ó do chuntas.",
|
||||
"interaction_modal.go": "Téigh",
|
||||
"interaction_modal.no_account_yet": "Níl cuntas agat fós?",
|
||||
"interaction_modal.on_another_server": "Ar freastalaí eile",
|
||||
"interaction_modal.on_this_server": "Ar an freastalaí seo",
|
||||
"interaction_modal.title.favourite": "An postáil {name} is fearr leat",
|
||||
|
@ -414,6 +421,7 @@
|
|||
"interaction_modal.title.reblog": "Mol postáil de chuid {name}",
|
||||
"interaction_modal.title.reply": "Freagair postáil {name}",
|
||||
"interaction_modal.title.vote": "Vótáil i vótaíocht {name}",
|
||||
"interaction_modal.username_prompt": "M.sh. {example}",
|
||||
"intervals.full.days": "{number, plural, one {# lá} other {# lá}}",
|
||||
"intervals.full.hours": "{number, plural, one {# uair} other {# uair}}",
|
||||
"intervals.full.minutes": "{number, plural, one {# nóiméad} other {# nóiméad}}",
|
||||
|
@ -449,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Taispeáin/folaigh an téacs taobh thiar de CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Taispeáin / cuir i bhfolach meáin",
|
||||
"keyboard_shortcuts.toot": "Cuir tús le postáil nua",
|
||||
"keyboard_shortcuts.translate": "post a aistriú",
|
||||
"keyboard_shortcuts.unfocus": "Unfocus cum textarea/search",
|
||||
"keyboard_shortcuts.up": "Bog suas ar an liosta",
|
||||
"lightbox.close": "Dún",
|
||||
|
@ -687,6 +696,8 @@
|
|||
"privacy_policy.title": "Polasaí príobháideachais",
|
||||
"recommended": "Molta",
|
||||
"refresh": "Athnuaigh",
|
||||
"regeneration_indicator.please_stand_by": "Fan i do sheasamh, le do thoil.",
|
||||
"regeneration_indicator.preparing_your_home_feed": "Ag ullmhú do bheatha baile…",
|
||||
"relative_time.days": "{number}l",
|
||||
"relative_time.full.days": "{number, plural, one {# lá} other {# lá}} ó shin",
|
||||
"relative_time.full.hours": "{number, plural, one {# uair} other {# uair}} ó shin",
|
||||
|
@ -826,6 +837,7 @@
|
|||
"status.reblogs.empty": "Níor mhol éinne an phostáil seo fós. Nuair a mholfaidh duine éigin í, taispeánfar anseo é sin.",
|
||||
"status.redraft": "Scrios ⁊ athdhréachtaigh",
|
||||
"status.remove_bookmark": "Bain leabharmharc",
|
||||
"status.remove_favourite": "Bain ó cheanáin",
|
||||
"status.replied_in_thread": "D'fhreagair sa snáithe",
|
||||
"status.replied_to": "D'fhreagair {name}",
|
||||
"status.reply": "Freagair",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Para mostrar o texto tras Aviso de Contido (CW)",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Para amosar/agochar contido multimedia",
|
||||
"keyboard_shortcuts.toot": "Para escribir unha nova publicación",
|
||||
"keyboard_shortcuts.translate": "para traducir unha publicación",
|
||||
"keyboard_shortcuts.unfocus": "Para deixar de destacar a área de escritura/procura",
|
||||
"keyboard_shortcuts.up": "Para mover cara arriba na listaxe",
|
||||
"lightbox.close": "Fechar",
|
||||
|
@ -836,6 +837,7 @@
|
|||
"status.reblogs.empty": "Aínda ninguén promoveu esta publicación. Cando alguén o faga, amosarase aquí.",
|
||||
"status.redraft": "Eliminar e reescribir",
|
||||
"status.remove_bookmark": "Eliminar marcador",
|
||||
"status.remove_favourite": "Retirar das favoritas",
|
||||
"status.replied_in_thread": "Respondeu nun fío",
|
||||
"status.replied_to": "Respondeu a {name}",
|
||||
"status.reply": "Responder",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "הצגת/הסתרת טקסט מוסתר מאחורי אזהרת תוכן",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "הצגת/הסתרת מדיה",
|
||||
"keyboard_shortcuts.toot": "להתחיל חיצרוץ חדש",
|
||||
"keyboard_shortcuts.translate": "לתרגם הודעה",
|
||||
"keyboard_shortcuts.unfocus": "לצאת מתיבת חיבור/חיפוש",
|
||||
"keyboard_shortcuts.up": "לנוע במעלה הרשימה",
|
||||
"lightbox.close": "סגירה",
|
||||
|
@ -836,6 +837,7 @@
|
|||
"status.reblogs.empty": "עוד לא הידהדו את ההודעה הזו. כאשר זה יקרה, ההדהודים יופיעו כאן.",
|
||||
"status.redraft": "מחיקה ועריכה מחדש",
|
||||
"status.remove_bookmark": "הסרת סימניה",
|
||||
"status.remove_favourite": "להסיר מרשימת המועדפים",
|
||||
"status.replied_in_thread": "תגובה לשרשור",
|
||||
"status.replied_to": "בתגובה לחשבון {name}",
|
||||
"status.reply": "תגובה",
|
||||
|
|
|
@ -440,7 +440,7 @@
|
|||
"keyboard_shortcuts.heading": "Gyorsbillentyűk",
|
||||
"keyboard_shortcuts.home": "Saját idővonal megnyitása",
|
||||
"keyboard_shortcuts.hotkey": "Gyorsbillentyű",
|
||||
"keyboard_shortcuts.legend": "jelmagyarázat megjelenítése",
|
||||
"keyboard_shortcuts.legend": "Jelmagyarázat megjelenítése",
|
||||
"keyboard_shortcuts.local": "Helyi idővonal megnyitása",
|
||||
"keyboard_shortcuts.mention": "Szerző megemlítése",
|
||||
"keyboard_shortcuts.muted": "Némított felhasználók listájának megnyitása",
|
||||
|
@ -453,10 +453,11 @@
|
|||
"keyboard_shortcuts.requests": "Követési kérések listájának megnyitása",
|
||||
"keyboard_shortcuts.search": "Fókuszálás a keresősávra",
|
||||
"keyboard_shortcuts.spoilers": "Tartalmi figyelmeztetés mező megjelenítése/elrejtése",
|
||||
"keyboard_shortcuts.start": "\"Első lépések\" oszlop megnyitása",
|
||||
"keyboard_shortcuts.start": "„Első lépések” oszlop megnyitása",
|
||||
"keyboard_shortcuts.toggle_hidden": "Tartalmi figyelmeztetéssel ellátott szöveg megjelenítése/elrejtése",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Média megjelenítése/elrejtése",
|
||||
"keyboard_shortcuts.toot": "Új bejegyzés írása",
|
||||
"keyboard_shortcuts.translate": "Bejegyzés lefordítása",
|
||||
"keyboard_shortcuts.unfocus": "Szerkesztés/keresés fókuszból való kivétele",
|
||||
"keyboard_shortcuts.up": "Mozgás felfelé a listában",
|
||||
"lightbox.close": "Bezárás",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Monstrar/celar texto detra advertimento de contento",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Monstrar/celar multimedia",
|
||||
"keyboard_shortcuts.toot": "Initiar un nove message",
|
||||
"keyboard_shortcuts.translate": "a traducer un message",
|
||||
"keyboard_shortcuts.unfocus": "Disfocalisar le area de composition de texto/de recerca",
|
||||
"keyboard_shortcuts.up": "Displaciar in alto in le lista",
|
||||
"lightbox.close": "Clauder",
|
||||
|
@ -802,7 +803,7 @@
|
|||
"status.bookmark": "Adder al marcapaginas",
|
||||
"status.cancel_reblog_private": "Disfacer impulso",
|
||||
"status.cannot_reblog": "Iste message non pote esser impulsate",
|
||||
"status.continued_thread": "Discussion continuate",
|
||||
"status.continued_thread": "Continuation del discussion",
|
||||
"status.copy": "Copiar ligamine a message",
|
||||
"status.delete": "Deler",
|
||||
"status.detailed_status": "Vista detaliate del conversation",
|
||||
|
@ -836,6 +837,7 @@
|
|||
"status.reblogs.empty": "Necuno ha ancora impulsate iste message. Quando alcuno lo face, le impulsos apparera hic.",
|
||||
"status.redraft": "Deler e reconciper",
|
||||
"status.remove_bookmark": "Remover marcapagina",
|
||||
"status.remove_favourite": "Remover del favoritos",
|
||||
"status.replied_in_thread": "Respondite in le discussion",
|
||||
"status.replied_to": "Respondite a {name}",
|
||||
"status.reply": "Responder",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Birta/fela texta á bak við aðvörun vegna efnis",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Birta/fela myndir",
|
||||
"keyboard_shortcuts.toot": "Byrja nýja færslu",
|
||||
"keyboard_shortcuts.translate": "að þýða færslu",
|
||||
"keyboard_shortcuts.unfocus": "Taka virkni úr textainnsetningarreit eða leit",
|
||||
"keyboard_shortcuts.up": "Fara ofar í listanum",
|
||||
"lightbox.close": "Loka",
|
||||
|
@ -836,6 +837,7 @@
|
|||
"status.reblogs.empty": "Enginn hefur ennþá endurbirt þessa færslu. Þegar einhver gerir það, mun það birtast hér.",
|
||||
"status.redraft": "Eyða og endurvinna drög",
|
||||
"status.remove_bookmark": "Fjarlægja bókamerki",
|
||||
"status.remove_favourite": "Fjarlægja úr eftirlætum",
|
||||
"status.replied_in_thread": "Svaraði í samtali",
|
||||
"status.replied_to": "Svaraði til {name}",
|
||||
"status.reply": "Svara",
|
||||
|
|
|
@ -431,11 +431,11 @@
|
|||
"keyboard_shortcuts.column": "Focalizza alla colonna",
|
||||
"keyboard_shortcuts.compose": "Focalizza l'area di composizione testuale",
|
||||
"keyboard_shortcuts.description": "Descrizione",
|
||||
"keyboard_shortcuts.direct": "per aprire la colonna menzioni private",
|
||||
"keyboard_shortcuts.direct": "Apre la colonna \"menzioni private\"",
|
||||
"keyboard_shortcuts.down": "Scorri in basso nell'elenco",
|
||||
"keyboard_shortcuts.enter": "Apre il post",
|
||||
"keyboard_shortcuts.favourite": "Contrassegna il post come preferito",
|
||||
"keyboard_shortcuts.favourites": "Apri l'elenco dei preferiti",
|
||||
"keyboard_shortcuts.favourites": "Apre l'elenco dei preferiti",
|
||||
"keyboard_shortcuts.federated": "Apre la cronologia federata",
|
||||
"keyboard_shortcuts.heading": "Scorciatoie da tastiera",
|
||||
"keyboard_shortcuts.home": "Apre la cronologia domestica",
|
||||
|
@ -457,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Mostra/Nasconde il testo dietro CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Mostra/Nasconde media",
|
||||
"keyboard_shortcuts.toot": "Crea un nuovo post",
|
||||
"keyboard_shortcuts.translate": "Traduce un post",
|
||||
"keyboard_shortcuts.unfocus": "Rimuove il focus sull'area di composizione testuale/ricerca",
|
||||
"keyboard_shortcuts.up": "Scorre in su nell'elenco",
|
||||
"lightbox.close": "Chiudi",
|
||||
|
|
|
@ -407,6 +407,13 @@
|
|||
"ignore_notifications_modal.not_followers_title": "本当に「フォローされていないアカウントからの通知」を無視するようにしますか?",
|
||||
"ignore_notifications_modal.not_following_title": "本当に「フォローしていないアカウントからの通知」を無視するようにしますか?",
|
||||
"ignore_notifications_modal.private_mentions_title": "本当に「外部からの非公開の返信」を無視するようにしますか?",
|
||||
"interaction_modal.action.favourite": "お気に入り登録はあなたのアカウントがあるサーバーで行う必要があります。",
|
||||
"interaction_modal.action.follow": "ユーザーをフォローするには、あなたのアカウントがあるサーバーからフォローする必要があります。",
|
||||
"interaction_modal.action.reblog": "投稿をブーストするには、あなたのアカウントがあるサーバーでブーストする必要があります。",
|
||||
"interaction_modal.action.reply": "リプライを送るには、あなたのアカウントがあるサーバーから送る必要があります。",
|
||||
"interaction_modal.action.vote": "票を入れるには、あなたのアカウントがあるサーバーから投票する必要があります。",
|
||||
"interaction_modal.go": "サーバーに移動",
|
||||
"interaction_modal.no_account_yet": "アカウントを持っていない場合は:",
|
||||
"interaction_modal.on_another_server": "別のサーバー",
|
||||
"interaction_modal.on_this_server": "このサーバー",
|
||||
"interaction_modal.title.favourite": "{name}さんの投稿をお気に入り登録",
|
||||
|
@ -414,6 +421,7 @@
|
|||
"interaction_modal.title.reblog": "{name}さんの投稿をブースト",
|
||||
"interaction_modal.title.reply": "{name}さんの投稿にリプライ",
|
||||
"interaction_modal.title.vote": "{name}さんのアンケートに投票",
|
||||
"interaction_modal.username_prompt": "例: {example}",
|
||||
"intervals.full.days": "{number}日",
|
||||
"intervals.full.hours": "{number}時間",
|
||||
"intervals.full.minutes": "{number}分",
|
||||
|
|
|
@ -414,6 +414,7 @@
|
|||
"interaction_modal.title.reblog": "{name} 님의 게시물을 부스트",
|
||||
"interaction_modal.title.reply": "{name} 님의 게시물에 답글",
|
||||
"interaction_modal.title.vote": "{name} 님의 투표에 참여",
|
||||
"interaction_modal.username_prompt": "예시: {example}",
|
||||
"intervals.full.days": "{number} 일",
|
||||
"intervals.full.hours": "{number} 시간",
|
||||
"intervals.full.minutes": "{number} 분",
|
||||
|
@ -449,6 +450,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "CW로 가려진 텍스트를 표시/비표시",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "미디어 보이기/숨기기",
|
||||
"keyboard_shortcuts.toot": "새 게시물 작성",
|
||||
"keyboard_shortcuts.translate": "게시물 번역",
|
||||
"keyboard_shortcuts.unfocus": "작성창에서 포커스 해제",
|
||||
"keyboard_shortcuts.up": "리스트에서 위로 이동",
|
||||
"lightbox.close": "닫기",
|
||||
|
|
|
@ -1,14 +1,25 @@
|
|||
{
|
||||
"about.blocks": "Servī moderātī",
|
||||
"about.contact": "Ratio:",
|
||||
"about.disclaimer": "Mastodon est software līberum, apertum fontem, et nōtam commercium Mastodon gGmbH.",
|
||||
"about.domain_blocks.no_reason_available": "Ratio abdere est",
|
||||
"about.domain_blocks.preamble": "Mastodon genērāliter sinit tē contentum ex aliīs servientibus in fedīversō vidēre et cum usoribus ab iīs interāgere. Haē sunt exceptionēs quae in hōc particulārī servientē factae sunt.",
|
||||
"about.domain_blocks.silenced.explanation": "Tua profilia atque tuum contentum ab hac serve praecipue non videbis, nisi explōrēs expresse aut subsequeris et optēs.",
|
||||
"about.domain_blocks.silenced.title": "Limitātus",
|
||||
"about.domain_blocks.suspended.explanation": "Nulla data ab hōc servientē processābuntur, servābuntur aut commūtābuntur, faciendumque omnem interactionem aut communicātiōnem cum usoribus ab hōc servientē impossibilem.",
|
||||
"about.domain_blocks.suspended.title": "suspensus",
|
||||
"about.not_available": "Haec informātiō in hōc servientē nōn praebita est.",
|
||||
"about.powered_by": "Nuntii socīālēs decentralizātī ā {mastodon} sustentātī.",
|
||||
"about.rules": "Servo praecepta",
|
||||
"account.account_note_header": "Nota personalia",
|
||||
"account.add_or_remove_from_list": "Adde aut ēripe ex tabellīs",
|
||||
"account.badges.bot": "Robotum",
|
||||
"account.badges.group": "Congregatio",
|
||||
"account.block": "Impedire @{name}",
|
||||
"account.block_domain": "Imperire dominium {domain}",
|
||||
"account.block_short": "Imperire",
|
||||
"account.blocked": "Impeditum est",
|
||||
"account.cancel_follow_request": "Withdraw follow request",
|
||||
"account.cancel_follow_request": "Petitio sequī retrāhere",
|
||||
"account.domain_blocked": "Dominium impeditum",
|
||||
"account.edit_profile": "Recolere notionem",
|
||||
"account.featured_tags.last_status_never": "Nulla contributa",
|
||||
|
@ -105,30 +116,30 @@
|
|||
"keyboard_shortcuts.compose": "TextArea Compositi Attendere",
|
||||
"keyboard_shortcuts.description": "Descriptio",
|
||||
"keyboard_shortcuts.direct": "to open direct messages column",
|
||||
"keyboard_shortcuts.down": "to move down in the list",
|
||||
"keyboard_shortcuts.down": "In īndice dēscend",
|
||||
"keyboard_shortcuts.enter": "Aperire contributum",
|
||||
"keyboard_shortcuts.federated": "to open federated timeline",
|
||||
"keyboard_shortcuts.federated": "Aperī chrōnologiam foederātam",
|
||||
"keyboard_shortcuts.heading": "Keyboard Shortcuts",
|
||||
"keyboard_shortcuts.home": "to open home timeline",
|
||||
"keyboard_shortcuts.legend": "to display this legend",
|
||||
"keyboard_shortcuts.local": "to open local timeline",
|
||||
"keyboard_shortcuts.mention": "to mention author",
|
||||
"keyboard_shortcuts.muted": "to open muted users list",
|
||||
"keyboard_shortcuts.my_profile": "to open your profile",
|
||||
"keyboard_shortcuts.notifications": "to open notifications column",
|
||||
"keyboard_shortcuts.open_media": "to open media",
|
||||
"keyboard_shortcuts.pinned": "to open pinned posts list",
|
||||
"keyboard_shortcuts.profile": "to open author's profile",
|
||||
"keyboard_shortcuts.home": "Aperī chrōnologiam domesticam",
|
||||
"keyboard_shortcuts.legend": "Hanc legendam ostende",
|
||||
"keyboard_shortcuts.local": "Aperī chrōnologiam locālem",
|
||||
"keyboard_shortcuts.mention": "Memēntō auctōris",
|
||||
"keyboard_shortcuts.muted": "Aperī indicem ūtentium silentiōrum",
|
||||
"keyboard_shortcuts.my_profile": "Aperī prōfilum tuum",
|
||||
"keyboard_shortcuts.notifications": "Aperī columnam nūntiātiōnum",
|
||||
"keyboard_shortcuts.open_media": "Aperi media",
|
||||
"keyboard_shortcuts.pinned": "Aperī indicem nūntiōrum affixōrum",
|
||||
"keyboard_shortcuts.profile": "Aperi auctoris profile",
|
||||
"keyboard_shortcuts.reply": "Respondere ad contributum",
|
||||
"keyboard_shortcuts.requests": "to open follow requests list",
|
||||
"keyboard_shortcuts.search": "to focus search",
|
||||
"keyboard_shortcuts.spoilers": "to show/hide CW field",
|
||||
"keyboard_shortcuts.start": "to open \"get started\" column",
|
||||
"keyboard_shortcuts.toggle_hidden": "to show/hide text behind CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "to show/hide media",
|
||||
"keyboard_shortcuts.toot": "to start a brand new post",
|
||||
"keyboard_shortcuts.unfocus": "to un-focus compose textarea/search",
|
||||
"keyboard_shortcuts.up": "to move up in the list",
|
||||
"keyboard_shortcuts.requests": "Aperī indicem petītiōnum sequendī",
|
||||
"keyboard_shortcuts.search": "Fōcum in tabellam quaerendī",
|
||||
"keyboard_shortcuts.spoilers": "Ostende / celare CW agri",
|
||||
"keyboard_shortcuts.start": "Aperī columnam 'īncipere'",
|
||||
"keyboard_shortcuts.toggle_hidden": "Monstrare / celare textum post CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Ostende / celare media",
|
||||
"keyboard_shortcuts.toot": "Incipe nōvum nūntium.",
|
||||
"keyboard_shortcuts.unfocus": "Desinēre fōcum in ārēā componendī/inquīrendī",
|
||||
"keyboard_shortcuts.up": "Sumē sūrsum in īndice",
|
||||
"lightbox.close": "Claudere",
|
||||
"lightbox.next": "Secundum",
|
||||
"load_pending": "{count, plural, one {# novum item} other {# nova itema}}",
|
||||
|
@ -142,7 +153,7 @@
|
|||
"notification.favourite": "{name} nuntium tuum favit",
|
||||
"notification.follow": "{name} te secutus est",
|
||||
"notification.follow_request": "{name} postulavit ut te sequeretur",
|
||||
"notification.moderation_warning": "Accepistī monitionem moderationis.",
|
||||
"notification.moderation_warning": "Accepistī monitionem moderationis",
|
||||
"notification.moderation_warning.action_disable": "Ratio tua debilitata est.",
|
||||
"notification.moderation_warning.action_none": "Tua ratiō monitum moderātiōnis accēpit.",
|
||||
"notification.moderation_warning.action_sensitive": "Tua nuntia hinc sensibiliter notabuntur.",
|
||||
|
@ -160,7 +171,7 @@
|
|||
"notification_requests.confirm_dismiss_multiple.message": "Tu {count, plural, one {unam petitionem notificationis} other {# petitiones notificationum}} abrogāre prōximum es. {count, plural, one {Illa} other {Eae}} facile accessū nōn erit. Certus es tē procedere velle?",
|
||||
"notifications.filter.all": "Omnia",
|
||||
"notifications.filter.polls": "Eventus electionis",
|
||||
"notifications.group": "Notificātiōnēs",
|
||||
"notifications.group": "{count} Notificātiōnēs",
|
||||
"onboarding.profile.display_name_hint": "Tuum nomen completum aut tuum nomen ludens…",
|
||||
"onboarding.profile.note_hint": "Alios hominēs vel #hashtags @nōmināre potes…",
|
||||
"poll.closed": "Clausum",
|
||||
|
@ -191,7 +202,7 @@
|
|||
"report.mute_explanation": "Non videbis eōrum nuntiōs. Possunt adhuc tē sequī et tuōs nuntiōs vidēre, nec sciēbunt sē tacitōs esse.",
|
||||
"report.next": "Secundum",
|
||||
"report.placeholder": "Commentāriī adiūnctī",
|
||||
"report.reasons.legal_description": "Putās id legem tuae aut servientis patriae violāre.",
|
||||
"report.reasons.legal_description": "Putās id legem tuae aut servientis patriae violāre",
|
||||
"report.reasons.violation_description": "Scis quod certa praecepta frangit",
|
||||
"report.submit": "Mittere",
|
||||
"report.target": "Report {target}",
|
||||
|
@ -200,7 +211,7 @@
|
|||
"report_notification.categories.other": "Altera",
|
||||
"search.placeholder": "Quaerere",
|
||||
"search_results.all": "Omnis",
|
||||
"server_banner.active_users": "Usūrāriī āctīvī",
|
||||
"server_banner.active_users": "usūāriī āctīvī",
|
||||
"server_banner.administered_by": "Administratur:",
|
||||
"server_banner.is_one_of_many": "{domain} est unum ex multis independentibus servientibus Mastodon quos adhibere potes ut participes in fediverso.",
|
||||
"sign_in_banner.sign_in": "Sign in",
|
||||
|
@ -210,7 +221,7 @@
|
|||
"status.copy": "Copy link to status",
|
||||
"status.delete": "Oblitterare",
|
||||
"status.edit": "Recolere",
|
||||
"status.edited_x_times": "Edited {count, plural, one {# time} other {# times}}",
|
||||
"status.edited_x_times": "Emendatum est {count, plural, one {{count} tempus} other {{count} tempora}}",
|
||||
"status.favourites": "{count, plural, one {favoritum} other {favorita}}",
|
||||
"status.history.created": "{name} creatum {date}",
|
||||
"status.history.edited": "{name} correxit {date}",
|
||||
|
|
|
@ -453,6 +453,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Rodyti / slėpti tekstą po TĮ",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Rodyti / slėpti mediją",
|
||||
"keyboard_shortcuts.toot": "Pradėti naują įrašą",
|
||||
"keyboard_shortcuts.translate": "išversti įrašą",
|
||||
"keyboard_shortcuts.unfocus": "Nebefokusuoti rengykles teksto sritį / paiešką",
|
||||
"keyboard_shortcuts.up": "Perkelti į viršų sąraše",
|
||||
"lightbox.close": "Uždaryti",
|
||||
|
|
|
@ -52,7 +52,7 @@
|
|||
"account.mute_notifications_short": "Izslēgt paziņojumu skaņu",
|
||||
"account.mute_short": "Apklusināt",
|
||||
"account.muted": "Apklusināts",
|
||||
"account.mutual": "Savstarpējs",
|
||||
"account.mutual": "Abpusēji",
|
||||
"account.no_bio": "Apraksts nav sniegts.",
|
||||
"account.open_original_page": "Atvērt oriģinālo lapu",
|
||||
"account.posts": "Ieraksti",
|
||||
|
@ -85,7 +85,9 @@
|
|||
"alert.rate_limited.title": "Biežums ierobežots",
|
||||
"alert.unexpected.message": "Radās negaidīta kļūda.",
|
||||
"alert.unexpected.title": "Ups!",
|
||||
"alt_text_badge.title": "Alt teksts",
|
||||
"announcement.announcement": "Paziņojums",
|
||||
"annual_report.summary.archetype.oracle": "Orākuls",
|
||||
"annual_report.summary.archetype.replier": "Sabiedriskais tauriņš",
|
||||
"annual_report.summary.followers.followers": "sekotāji",
|
||||
"annual_report.summary.followers.total": "pavisam {count}",
|
||||
|
@ -343,7 +345,7 @@
|
|||
"hints.profiles.see_more_followers": "Skatīt vairāk sekotāju {domain}",
|
||||
"hints.profiles.see_more_follows": "Skatīt vairāk sekojumu {domain}",
|
||||
"hints.profiles.see_more_posts": "Skatīt vairāk ierakstu {domain}",
|
||||
"hints.threads.replies_may_be_missing": "Var trūkt atbildes no citiem serveriem.",
|
||||
"hints.threads.replies_may_be_missing": "Var trūkt atbilžu no citiem serveriem.",
|
||||
"hints.threads.see_more": "Skatīt vairāk atbilžu {domain}",
|
||||
"home.column_settings.show_reblogs": "Rādīt pastiprinātos ierakstus",
|
||||
"home.column_settings.show_replies": "Rādīt atbildes",
|
||||
|
@ -401,13 +403,20 @@
|
|||
"lightbox.previous": "Iepriekšējais",
|
||||
"limited_account_hint.action": "Tik un tā rādīt profilu",
|
||||
"limited_account_hint.title": "{domain} moderatori ir paslēpuši šo profilu.",
|
||||
"link_preview.author": "Pēc {name}",
|
||||
"link_preview.author": "No {name}",
|
||||
"link_preview.more_from_author": "Vairāk no {name}",
|
||||
"lists.add_member": "Pievienot",
|
||||
"lists.add_to_list": "Pievienot sarakstam",
|
||||
"lists.create": "Izveidot",
|
||||
"lists.create_list": "Izveidot sarakstu",
|
||||
"lists.delete": "Izdzēst sarakstu",
|
||||
"lists.done": "Gatavs",
|
||||
"lists.edit": "Labot sarakstu",
|
||||
"lists.remove_member": "Noņemt",
|
||||
"lists.replies_policy.followed": "Jebkuram sekotajam lietotājam",
|
||||
"lists.replies_policy.list": "Saraksta dalībniekiem",
|
||||
"lists.replies_policy.none": "Nevienam",
|
||||
"lists.save": "Saglabāt",
|
||||
"load_pending": "{count, plural, zero{# jaunu vienumu} one {# jauns vienums} other {# jauni vienumi}}",
|
||||
"loading_indicator.label": "Ielādē…",
|
||||
"media_gallery.hide": "Paslēpt",
|
||||
|
@ -466,6 +475,8 @@
|
|||
"notification.update": "{name} laboja ierakstu",
|
||||
"notification_requests.accept": "Pieņemt",
|
||||
"notification_requests.dismiss": "Noraidīt",
|
||||
"notification_requests.edit_selection": "Labot",
|
||||
"notification_requests.exit_selection": "Gatavs",
|
||||
"notification_requests.notifications_from": "Paziņojumi no {name}",
|
||||
"notification_requests.title": "Atlasītie paziņojumi",
|
||||
"notifications.clear": "Notīrīt paziņojumus",
|
||||
|
@ -501,6 +512,7 @@
|
|||
"notifications.permission_denied": "Darbvirsmas paziņojumi nav pieejami, jo iepriekš tika noraidīts pārlūka atļauju pieprasījums",
|
||||
"notifications.permission_denied_alert": "Darbvirsmas paziņojumus nevar iespējot, jo pārlūkprogrammai atļauja tika iepriekš atteikta",
|
||||
"notifications.permission_required": "Darbvirsmas paziņojumi nav pieejami, jo nav piešķirta nepieciešamā atļauja.",
|
||||
"notifications.policy.accept": "Pieņemt",
|
||||
"notifications.policy.filter_new_accounts_title": "Jauni konti",
|
||||
"notifications.policy.filter_not_followers_title": "Cilvēki, kuri Tev neseko",
|
||||
"notifications.policy.filter_not_following_hint": "Līdz tos pašrocīgi apstiprināsi",
|
||||
|
|
|
@ -126,9 +126,35 @@
|
|||
"bundle_column_error.network.title": "網路錯誤",
|
||||
"bundle_column_error.retry": "Koh試",
|
||||
"bundle_column_error.return": "Tńg去頭頁",
|
||||
"bundle_column_error.routing.body": "Tshuē bô所要求ê頁面。Lí kám確定地址liâu-á ê URL正確?",
|
||||
"bundle_column_error.routing.title": "404",
|
||||
"bundle_modal_error.close": "關",
|
||||
"bundle_modal_error.message": "Tī載入tsit ê畫面ê時起錯誤。",
|
||||
"bundle_modal_error.retry": "Koh試",
|
||||
"column.create_list": "建立列單",
|
||||
"column.direct": "私人ê提起",
|
||||
"column.directory": "瀏覽個人資料",
|
||||
"column.domain_blocks": "封鎖ê域名",
|
||||
"column.edit_list": "編輯列單",
|
||||
"column.favourites": "Siōng kah意",
|
||||
"column.firehose": "Tsit-má ê動態",
|
||||
"column.follow_requests": "跟tuè請求",
|
||||
"column.home": "頭頁",
|
||||
"column_header.pin": "釘",
|
||||
"column_header.show_settings": "顯示設定",
|
||||
"column_header.unpin": "Pak掉",
|
||||
"column_search.cancel": "取消",
|
||||
"column_subheading.settings": "設定",
|
||||
"community.column_settings.local_only": "Kan-ta展示本地ê",
|
||||
"community.column_settings.media_only": "Kan-ta展示媒體",
|
||||
"community.column_settings.remote_only": "Kan-ta展示遠距離ê",
|
||||
"compose.language.change": "換語言",
|
||||
"compose.language.search": "Tshiau-tshuē語言……",
|
||||
"compose.published.body": "成功PO文。",
|
||||
"compose.published.open": "開",
|
||||
"compose.saved.body": "PO文儲存ah。",
|
||||
"compose_form.direct_message_warning_learn_more": "詳細資訊",
|
||||
"compose_form.encryption_warning": "Mastodon ê PO文無點tuì點加密。M̄通用Mastodon分享任何敏感ê資訊。",
|
||||
"confirmations.follow_to_list.confirm": "跟tuè,加入kàu列單",
|
||||
"notification.favourite_pm": "{name} kah意lí ê私人提起",
|
||||
"notification.favourite_pm.name_and_others_with_link": "{name} kap<a>{count, plural, other {另外 # ê lâng}}</a>kah意lí ê私人提起",
|
||||
|
|
|
@ -47,11 +47,13 @@
|
|||
"account.mutual": "आपसी",
|
||||
"account.no_bio": "कुनै विवरण प्रदान गरिएको छैन।",
|
||||
"account.posts": "पोस्टहरू",
|
||||
"account.posts_with_replies": "पोस्ट र जवाफहरू",
|
||||
"account.report": "@{name}लाई रिपोर्ट गर्नुहोस्",
|
||||
"account.requested": "स्वीकृतिको पर्खाइमा। फलो अनुरोध रद्द गर्न क्लिक गर्नुहोस्",
|
||||
"account.requested_follow": "{name} ले तपाईंलाई फलो गर्न अनुरोध गर्नुभएको छ",
|
||||
"account.share": "@{name} को प्रोफाइल सेयर गर्नुहोस्",
|
||||
"account.show_reblogs": "@{name} को बूस्टहरू देखाउनुहोस्",
|
||||
"account.statuses_counter": "{count, plural, one {{counter} पोस्ट} other {{counter} पोस्टहरू}}",
|
||||
"account.unblock": "@{name} लाई अनब्लक गर्नुहोस्",
|
||||
"account.unblock_domain": "{domain} डोमेनलाई अनब्लक गर्नुहोस्",
|
||||
"account.unblock_short": "अनब्लक गर्नुहोस्",
|
||||
|
@ -67,14 +69,18 @@
|
|||
"alert.unexpected.message": "एउटा अनपेक्षित त्रुटि भयो।",
|
||||
"announcement.announcement": "घोषणा",
|
||||
"annual_report.summary.followers.followers": "फलोअरहरु",
|
||||
"annual_report.summary.highlighted_post.by_reblogs": "सबैभन्दा बढि बूस्ट गरिएको पोस्ट",
|
||||
"annual_report.summary.new_posts.new_posts": "नयाँ पोस्टहरू",
|
||||
"block_modal.remote_users_caveat": "हामी सर्भर {domain} लाई तपाईंको निर्णयको सम्मान गर्न सोध्नेछौं। तर, हामी अनुपालनको ग्यारेन्टी दिन सक्दैनौं किनभने केही सर्भरहरूले ब्लकहरू फरक रूपमा ह्यान्डल गर्न सक्छन्। सार्वजनिक पोस्टहरू लग इन नभएका प्रयोगकर्ताहरूले देख्न सक्छन्।",
|
||||
"block_modal.show_less": "कम देखाउनुहोस्",
|
||||
"block_modal.show_more": "थप देखाउनुहोस्",
|
||||
"block_modal.title": "प्रयोगकर्तालाई ब्लक गर्ने हो?",
|
||||
"block_modal.title": "प्रयोगकर्तालाई ब्लक गर्ने?",
|
||||
"boost_modal.reblog": "पोस्ट बुस्ट गर्ने?",
|
||||
"boost_modal.undo_reblog": "पोस्ट अनबुस्ट गर्ने?",
|
||||
"bundle_column_error.copy_stacktrace": "त्रुटि रिपोर्ट प्रतिलिपि गर्नुहोस्",
|
||||
"bundle_column_error.network.title": "नेटवर्क त्रुटि",
|
||||
"bundle_column_error.retry": "पुन: प्रयास गर्नुहोस्",
|
||||
"bundle_column_error.routing.title": "४०४",
|
||||
"bundle_modal_error.close": "बन्द गर्नुहोस्",
|
||||
"bundle_modal_error.retry": "Try again",
|
||||
"closed_registrations.other_server_instructions": "Mastodon विकेन्द्रीकृत भएकोले, तपाइँ अर्को सर्भरमा खाता खोल्न सक्नुहुन्छ र पनि यो सर्भरसँग अन्तरक्रिया गर्न सक्नुहुन्छ।",
|
||||
|
@ -82,23 +88,54 @@
|
|||
"closed_registrations_modal.find_another_server": "अर्को सर्भर खोज्नुहोस्",
|
||||
"closed_registrations_modal.title": "Mastodon मा साइन अप गर्दै",
|
||||
"column.blocks": "ब्लक गरिएको प्रयोगकर्ताहरु",
|
||||
"column.bookmarks": "बुकमार्कहरू",
|
||||
"column.create_list": "सूची बनाउनुहोस्",
|
||||
"column.direct": "निजी उल्लेखहरू",
|
||||
"column.directory": "प्रोफाइल ब्राउज गर्नुहोस्",
|
||||
"column.domain_blocks": "ब्लक गरिएको डोमेन",
|
||||
"column.edit_list": "सूची सम्पादन गर्नुहोस्",
|
||||
"column.follow_requests": "फलो अनुरोधहरू",
|
||||
"column.home": "गृहपृष्ठ",
|
||||
"column.lists": "सूचीहरू",
|
||||
"column.mutes": "म्यूट गरिएका प्रयोगकर्ताहरू",
|
||||
"column.notifications": "सूचनाहरू",
|
||||
"column.pins": "पिन गरिएका पोस्टहरू",
|
||||
"column_header.hide_settings": "सेटिङ्हरू लुकाउनुहोस्",
|
||||
"column_header.pin": "पिन गर्नुहोस्",
|
||||
"column_header.unpin": "अनपिन गर्नुहोस्",
|
||||
"column_search.cancel": "रद्द गर्नुहोस्",
|
||||
"column_subheading.settings": "सेटिङहरू",
|
||||
"community.column_settings.media_only": "मिडिया मात्र",
|
||||
"compose.language.change": "भाषा परिवर्तन गर्नुहोस्",
|
||||
"compose.language.search": "भाषाहरू खोज्नुहोस्...",
|
||||
"compose.published.body": "पोस्ट प्रकाशित भयो।",
|
||||
"compose.published.open": "खोल्नुहोस्",
|
||||
"compose.saved.body": "पोस्ट सेभ गरियो।",
|
||||
"compose_form.direct_message_warning_learn_more": "थप जान्नुहोस्",
|
||||
"compose_form.placeholder": "तपाईको मनमा के छ?",
|
||||
"compose_form.publish": "पोस्ट गर्नुहोस्",
|
||||
"compose_form.publish_form": "नयाँ पोस्ट",
|
||||
"compose_form.reply": "जवाफ दिनुहोस्",
|
||||
"compose_form.save_changes": "अपडेट गर्नुहोस्",
|
||||
"confirmations.delete.message": "के तपाइँ पक्का हुनुहुन्छ कि तपाईं यो पोष्ट मेटाउन चाहनुहुन्छ?",
|
||||
"confirmations.delete.title": "पोस्ट मेटाउने?",
|
||||
"confirmations.delete_list.message": "के तपाइँ पक्का हुनुहुन्छ कि तपाईं यो सूची स्थायी रूपमा मेटाउन चाहनुहुन्छ?",
|
||||
"confirmations.delete_list.title": "सूची मेटाउने?",
|
||||
"confirmations.edit.confirm": "सम्पादन गर्नुहोस्",
|
||||
"confirmations.edit.message": "अहिले सम्पादन गर्नाले तपाईंले हाल लेखिरहनुभएको सन्देश अधिलेखन हुनेछ। के तपाईं अगाडि बढ्न चाहनुहुन्छ?",
|
||||
"confirmations.edit.title": "पोस्ट अधिलेखन गर्ने?",
|
||||
"confirmations.follow_to_list.confirm": "फलो गर्नुहोस र सूचीमा थप्नुहोस्",
|
||||
"confirmations.follow_to_list.message": "सूचीमा {name}लाई थप्नको लागि तपाईंले तिनीहरूलाई फलो गरेको हुनुपर्छ।",
|
||||
"confirmations.follow_to_list.title": "प्रयोगकर्तालाई फलो गर्ने हो?",
|
||||
"confirmations.follow_to_list.title": "प्रयोगकर्तालाई फलो गर्ने?",
|
||||
"confirmations.logout.message": "के तपाइँ पक्का हुनुहुन्छ कि तपाइँ लाई लग आउट गर्न चाहनुहुन्छ?",
|
||||
"confirmations.logout.title": "लग आउट गर्ने?",
|
||||
"confirmations.redraft.title": "पोस्ट मेटाएर पुन: ड्राफ्ट गर्ने?",
|
||||
"confirmations.reply.message": "अहिले जवाफ दिनाले तपाईंले हाल लेखिरहनुभएको सन्देश अधिलेखन हुनेछ। के तपाईं अगाडि बढ्न चाहनुहुन्छ?",
|
||||
"confirmations.reply.title": "पोस्ट अधिलेखन गर्ने?",
|
||||
"confirmations.unfollow.confirm": "अनफलो गर्नुहोस्",
|
||||
"confirmations.unfollow.message": "के तपाइँ पक्का हुनुहुन्छ कि तपाइँ {name}लाई अनफलो गर्न चाहनुहुन्छ?",
|
||||
"confirmations.unfollow.title": "प्रयोगकर्तालाई अनफलो गर्ने हो?",
|
||||
"confirmations.unfollow.title": "प्रयोगकर्तालाई अनफलो गर्ने?",
|
||||
"disabled_account_banner.account_settings": "खाता सेटिङहरू",
|
||||
"empty_column.follow_requests": "तपाईंले अहिलेसम्म कुनै पनि फलो अनुरोधहरू प्राप्त गर्नुभएको छैन। तपाईंले कुनै प्राप्त गरेपछि त्यो यहाँ देखिनेछ।",
|
||||
"empty_column.followed_tags": "तपाईंले अहिलेसम्म कुनै पनि ह्यासट्यागहरू फलो गर्नुभएको छैन। तपाईंले ह्यासट्याग फलो गरेपछि तिनीहरू यहाँ देखिनेछन्।",
|
||||
"follow_suggestions.dismiss": "फेरि नदेखाउनुहोस्",
|
||||
|
@ -111,15 +148,35 @@
|
|||
"followed_tags": "फलो गरिएका ह्यासट्यागहरू",
|
||||
"hashtag.follow": "ह्यासट्याग फलो गर्नुहोस्",
|
||||
"hashtag.unfollow": "ह्यासट्याग अनफलो गर्नुहोस्",
|
||||
"home.column_settings.show_reblogs": "बूस्टहरू देखाउनुहोस्",
|
||||
"interaction_modal.no_account_yet": "अहिलेसम्म खाता छैन?",
|
||||
"interaction_modal.title.follow": "{name} लाई फलो गर्नुहोस्",
|
||||
"interaction_modal.title.reblog": "{name} को पोस्ट बुस्ट गर्नुहोस्",
|
||||
"keyboard_shortcuts.boost": "पोस्ट बुस्ट गर्नुहोस्",
|
||||
"mute_modal.they_wont_know": "उनीहरूलाई म्यूट गरिएको बारे थाहा हुँदैन।",
|
||||
"mute_modal.title": "प्रयोगकर्तालाई म्युट गर्ने हो?",
|
||||
"mute_modal.title": "प्रयोगकर्तालाई म्युट गर्ने?",
|
||||
"navigation_bar.blocks": "ब्लक गरिएको प्रयोगकर्ताहरु",
|
||||
"navigation_bar.follow_requests": "फलो अनुरोधहरू",
|
||||
"navigation_bar.followed_tags": "फलो गरिएका ह्यासट्यागहरू",
|
||||
"notification.reblog": "{name} ले तपाईंको पोस्ट बूस्ट गर्नुभयो",
|
||||
"notification_requests.confirm_accept_multiple.title": "सूचना अनुरोधहरू स्वीकार गर्ने?",
|
||||
"notification_requests.confirm_dismiss_multiple.title": "सूचना अनुरोधहरू खारेज गर्ने?",
|
||||
"notifications.clear_title": "सूचनाहरू खाली गर्ने?",
|
||||
"notifications.column_settings.reblog": "बूस्टहरू:",
|
||||
"notifications.filter.boosts": "बूस्टहरू",
|
||||
"report.comment.title": "के हामीले थाहा पाउनुपर्ने अरू केही छ जस्तो लाग्छ?",
|
||||
"report.forward_hint": "यो खाता अर्को सर्भरबाट हो। त्यहाँ पनि रिपोर्टको गुमनाम प्रतिलिपि पठाउने हो?",
|
||||
"report.rules.title": "कुन नियमहरू उल्लङ्घन भइरहेका छन्?",
|
||||
"report.statuses.title": "के यस रिपोर्टलाई समर्थन गर्ने कुनै पोस्टहरू छन्?",
|
||||
"report.thanks.title": "यो हेर्न चाहनुहुन्न?",
|
||||
"report.unfollow": "@{name} लाई अनफलो गर्नुहोस्",
|
||||
"search_results.hashtags": "ह्यासट्यागहरू",
|
||||
"status.cancel_reblog_private": "अनबुस्ट गर्नुहोस्",
|
||||
"status.cannot_reblog": "यो पोस्टलाई बुस्ट गर्न सकिँदैन",
|
||||
"status.mute": "@{name}लाई म्यूट गर्नुहोस्",
|
||||
"status.mute_conversation": "कुराकानी म्यूट गर्नुहोस्",
|
||||
"status.reblog": "बूस्ट गर्नुहोस्",
|
||||
"status.reblogged_by": "{name} ले बूस्ट गर्नुभएको",
|
||||
"status.reblogs": "{count, plural, one {बूस्ट} other {बूस्टहरू}}",
|
||||
"status.unmute_conversation": "कुराकानी अनम्यूट गर्नुहोस्"
|
||||
}
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Inhoudswaarschuwing tonen/verbergen",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Media tonen/verbergen",
|
||||
"keyboard_shortcuts.toot": "Nieuw bericht schrijven",
|
||||
"keyboard_shortcuts.translate": "om een bericht te vertalen",
|
||||
"keyboard_shortcuts.unfocus": "Tekst- en zoekveld ontfocussen",
|
||||
"keyboard_shortcuts.up": "Naar boven in de lijst bewegen",
|
||||
"lightbox.close": "Sluiten",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Vis/gøym tekst bak innhaldsvarsel",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Vis/gøym media",
|
||||
"keyboard_shortcuts.toot": "Lag nytt tut",
|
||||
"keyboard_shortcuts.translate": "å omsetje eit innlegg",
|
||||
"keyboard_shortcuts.unfocus": "for å fokusere vekk skrive-/søkefeltet",
|
||||
"keyboard_shortcuts.up": "Flytt opp på lista",
|
||||
"lightbox.close": "Lukk",
|
||||
|
@ -836,6 +837,7 @@
|
|||
"status.reblogs.empty": "Ingen har framheva dette tutet enno. Om nokon gjer, så dukkar det opp her.",
|
||||
"status.redraft": "Slett & skriv på nytt",
|
||||
"status.remove_bookmark": "Fjern bokmerke",
|
||||
"status.remove_favourite": "Fjern frå favorittar",
|
||||
"status.replied_in_thread": "Svara i tråden",
|
||||
"status.replied_to": "Svarte {name}",
|
||||
"status.reply": "Svar",
|
||||
|
|
|
@ -406,6 +406,9 @@
|
|||
"ignore_notifications_modal.not_followers_title": "Ignoruj powiadomienia od użytkowników którzy cię nie obserwują?",
|
||||
"ignore_notifications_modal.not_following_title": "Ignoruj powiadomienia od użytkowników których nie obserwujesz?",
|
||||
"ignore_notifications_modal.private_mentions_title": "Ignoruj powiadomienia o nieproszonych wzmiankach prywatnych?",
|
||||
"interaction_modal.action.favourite": "Aby kontynuować, musisz dodać do ulubionych na swoim koncie.",
|
||||
"interaction_modal.action.follow": "Aby kontynuować, musisz obserwować ze swojego konta.",
|
||||
"interaction_modal.no_account_yet": "Nie masz jeszcze konta?",
|
||||
"interaction_modal.on_another_server": "Na innym serwerze",
|
||||
"interaction_modal.on_this_server": "Na tym serwerze",
|
||||
"interaction_modal.title.favourite": "Polub wpis użytkownika {name}",
|
||||
|
@ -413,6 +416,7 @@
|
|||
"interaction_modal.title.reblog": "Podbij wpis {name}",
|
||||
"interaction_modal.title.reply": "Odpowiedz na post {name}",
|
||||
"interaction_modal.title.vote": "Weź udział w głosowaniu {name}",
|
||||
"interaction_modal.username_prompt": "Np. {example}",
|
||||
"intervals.full.days": "{number, plural, one {# dzień} few {# dni} many {# dni} other {# dni}}",
|
||||
"intervals.full.hours": "{number, plural, one {# godzina} few {# godziny} many {# godzin} other {# godzin}}",
|
||||
"intervals.full.minutes": "{number, plural, one {# minuta} few {# minuty} many {# minut} other {# minut}}",
|
||||
|
@ -825,6 +829,7 @@
|
|||
"status.reblogs.empty": "Nikt nie podbił jeszcze tego wpisu. Gdy ktoś to zrobi, pojawi się tutaj.",
|
||||
"status.redraft": "Usuń i przeredaguj",
|
||||
"status.remove_bookmark": "Usuń zakładkę",
|
||||
"status.remove_favourite": "Usuń z ulubionych",
|
||||
"status.replied_in_thread": "Odpowiedź w wątku",
|
||||
"status.replied_to": "Odpowiedź do wpisu użytkownika {name}",
|
||||
"status.reply": "Odpowiedz",
|
||||
|
|
|
@ -108,7 +108,7 @@
|
|||
"annual_report.summary.thanks": "Obrigada por fazer parte do Mastodon!",
|
||||
"attachments_list.unprocessed": "(não processado)",
|
||||
"audio.hide": "Ocultar áudio",
|
||||
"block_modal.remote_users_caveat": "Pediremos ao servidor {domínio} que respeite sua decisão. No entanto, a conformidade não é garantida pois alguns servidores podem lidar com os blocos de maneira diferente. As postagens públicas ainda podem estar visíveis para usuários não logados.",
|
||||
"block_modal.remote_users_caveat": "Pediremos ao servidor {domain} que respeite sua decisão. No entanto, a conformidade não é garantida, já que alguns servidores podem lidar com bloqueios de maneira diferente. As postagens públicas ainda podem estar visíveis para usuários não logados.",
|
||||
"block_modal.show_less": "Mostrar menos",
|
||||
"block_modal.show_more": "Mostrar mais",
|
||||
"block_modal.they_cant_mention": "Eles não podem mencionar ou seguir você.",
|
||||
|
@ -243,12 +243,12 @@
|
|||
"dismissable_banner.explore_statuses": "Estas publicações através do fediverse estão ganhando atenção hoje. Publicações mais recentes com mais boosts e favoritos são classificados mais altamente.",
|
||||
"dismissable_banner.explore_tags": "Estas hashtags estão ganhando atenção hoje no fediverse. Hashtags usadas por muitas pessoas diferentes são classificadas mais altamente.",
|
||||
"dismissable_banner.public_timeline": "Estas são as publicações mais recentes das pessoas no fediverse que as pessoas do {domain} seguem.",
|
||||
"domain_block_modal.block": "Servidor de blocos.",
|
||||
"domain_block_modal.block_account_instead": "Bloco @(nome)",
|
||||
"domain_block_modal.block": "Bloquear servidor",
|
||||
"domain_block_modal.block_account_instead": "Bloquear @{name}",
|
||||
"domain_block_modal.they_can_interact_with_old_posts": "Pessoas deste servidor podem interagir com suas publicações antigas.",
|
||||
"domain_block_modal.they_cant_follow": "Ninguém deste servidor pode lhe seguir.",
|
||||
"domain_block_modal.they_wont_know": "Eles não saberão que foram bloqueados.",
|
||||
"domain_block_modal.title": "Dominio do bloco",
|
||||
"domain_block_modal.title": "Bloquear domínio?",
|
||||
"domain_block_modal.you_will_lose_num_followers": "Você perderá {followersCount, plural, one {{followersCountDisplay} seguidor} other {{followersCountDisplay} seguidores}} e {followingCount, plural, one {{followingCountDisplay} pessoa que você segue} other {{followingCountDisplay} pessoas que você segue}}.",
|
||||
"domain_block_modal.you_will_lose_relationships": "Você irá perder todos os seguidores e pessoas que você segue neste servidor.",
|
||||
"domain_block_modal.you_wont_see_posts": "Você não verá postagens ou notificações de usuários neste servidor.",
|
||||
|
@ -259,9 +259,9 @@
|
|||
"domain_pill.their_server": "Sua casa digital, onde ficam todas as suas postagens.",
|
||||
"domain_pill.their_username": "Seu identificador exclusivo em seu servidor. É possível encontrar usuários com o mesmo nome de usuário em servidores diferentes.",
|
||||
"domain_pill.username": "Nome de usuário",
|
||||
"domain_pill.whats_in_a_handle": "O que há em uma alça?",
|
||||
"domain_pill.who_they_are": "Como os identificadores indicam quem alguém é e onde está, você pode interagir com pessoas na web social de <button>plataformas alimentadas pelo ActivityPub</button>.",
|
||||
"domain_pill.who_you_are": "Como seu identificador indica quem você é e onde está, as pessoas podem interagir com você nas redes sociais das <button>plataformas alimentadas pelo ActivityPub</button>.",
|
||||
"domain_pill.whats_in_a_handle": "O que há em um identificador?",
|
||||
"domain_pill.who_they_are": "Como os identificadores indicam quem alguém é e onde está, você pode interagir com pessoas na rede de <button>plataformas alimentadas pelo ActivityPub</button>.",
|
||||
"domain_pill.who_you_are": "Como seu identificador indica quem você é e onde está, as pessoas podem interagir com você na rede de <button>plataformas alimentadas pelo ActivityPub</button>.",
|
||||
"domain_pill.your_handle": "Seu identificador:",
|
||||
"domain_pill.your_server": "Sua casa digital, onde ficam todas as suas postagens. Não gosta deste? Transfira servidores a qualquer momento e traga seus seguidores também.",
|
||||
"domain_pill.your_username": "Seu identificador exclusivo neste servidor. É possível encontrar usuários com o mesmo nome de usuário em servidores diferentes.",
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"about.blocks": "Servidores moderados",
|
||||
"about.contact": "Contacto:",
|
||||
"about.disclaimer": "O Mastodon é um software livre, de código aberto e uma marca registada do Mastodon gGmbH.",
|
||||
"about.disclaimer": "O Mastodon é um software livre, de código aberto e uma marca registada de Mastodon gGmbH.",
|
||||
"about.domain_blocks.no_reason_available": "Motivo não disponível",
|
||||
"about.domain_blocks.preamble": "O Mastodon geralmente permite ver e interagir com o conteúdo de utilizadores de qualquer outra instância no fediverso. Estas são as exceções desta instância em específico.",
|
||||
"about.domain_blocks.silenced.explanation": "Normalmente não verás perfis e conteúdos deste servidor, a não ser que os procures explicitamente ou optes por segui-los.",
|
||||
|
@ -85,7 +85,7 @@
|
|||
"alert.rate_limited.title": "Limite de tentativas",
|
||||
"alert.unexpected.message": "Ocorreu um erro inesperado.",
|
||||
"alert.unexpected.title": "Bolas!",
|
||||
"alt_text_badge.title": "Texto alternativo",
|
||||
"alt_text_badge.title": "Texto descritivo",
|
||||
"announcement.announcement": "Mensagem de manutenção",
|
||||
"annual_report.summary.archetype.booster": "O caçador de frescura",
|
||||
"annual_report.summary.archetype.lurker": "O espreitador",
|
||||
|
@ -244,7 +244,7 @@
|
|||
"dismissable_banner.explore_tags": "Estas etiquetas estão a ganhar força no fediverso atualmente. As etiquetas que são utilizadas por mais pessoas diferentes são classificadas numa posição mais elevada.",
|
||||
"dismissable_banner.public_timeline": "Estas são as publicações públicas mais recentes de pessoas no fediverso que as pessoas em {domain} seguem.",
|
||||
"domain_block_modal.block": "Bloquear servidor",
|
||||
"domain_block_modal.block_account_instead": "Bloquear antes @{name}",
|
||||
"domain_block_modal.block_account_instead": "Em vez disso, bloquear @{name}",
|
||||
"domain_block_modal.they_can_interact_with_old_posts": "As pessoas deste servidor podem interagir com as tuas publicações antigas.",
|
||||
"domain_block_modal.they_cant_follow": "Ninguém deste servidor pode seguir-te.",
|
||||
"domain_block_modal.they_wont_know": "Eles não saberão que foram bloqueados.",
|
||||
|
@ -260,7 +260,7 @@
|
|||
"domain_pill.their_username": "O identificador único dele no seu servidor. É possível encontrar utilizadores com o mesmo nome de utilizador em servidores diferentes.",
|
||||
"domain_pill.username": "Nome de utilizador",
|
||||
"domain_pill.whats_in_a_handle": "Em que consiste um identificador?",
|
||||
"domain_pill.who_they_are": "Uma vez que os identificadores dizem quem é alguém e onde está, pode interagir com as pessoas através da rede social de <button>plataformas que suportam ActivityPub</button>.",
|
||||
"domain_pill.who_they_are": "Uma vez que os identificadores dizem quem é alguém e onde está, podes interagir com as pessoas através da rede social de <button>plataformas que suportam ActivityPub</button>.",
|
||||
"domain_pill.who_you_are": "Uma vez que o teu identificador indica quem és e onde estás, as pessoas podem interagir contigo através da rede social de <button>plataformas que suportam ActivityPub</button>.",
|
||||
"domain_pill.your_handle": "O teu identificador:",
|
||||
"domain_pill.your_server": "A tua casa digital, onde se encontram todas as tuas publicações. Não gostas deste? Muda de servidor a qualquer momento e leva também os teus seguidores.",
|
||||
|
@ -457,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "mostrar / esconder texto atrás do aviso de conteúdo",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "mostrar / ocultar multimédia",
|
||||
"keyboard_shortcuts.toot": "criar uma nova publicação",
|
||||
"keyboard_shortcuts.translate": "traduzir uma publicação",
|
||||
"keyboard_shortcuts.unfocus": "remover o foco da área de texto / pesquisa",
|
||||
"keyboard_shortcuts.up": "mover para cima na lista",
|
||||
"lightbox.close": "Fechar",
|
||||
|
@ -641,10 +642,10 @@
|
|||
"notifications.policy.filter_hint": "Enviar para a caixa de notificações filtradas",
|
||||
"notifications.policy.filter_limited_accounts_hint": "Limitado pelos moderadores do servidor",
|
||||
"notifications.policy.filter_limited_accounts_title": "Contas moderadas",
|
||||
"notifications.policy.filter_new_accounts.hint": "Criada {days, plural, one {no último dia} other {nos últimos # dias}}",
|
||||
"notifications.policy.filter_new_accounts.hint": "Criadas {days, plural, one {no último dia} other {nos últimos # dias}}",
|
||||
"notifications.policy.filter_new_accounts_title": "Novas contas",
|
||||
"notifications.policy.filter_not_followers_hint": "Incluindo pessoas que te seguem há menos de {days, plural, one {um dia} other {# dias}}",
|
||||
"notifications.policy.filter_not_followers_title": "Pessoas não te seguem",
|
||||
"notifications.policy.filter_not_followers_title": "Pessoas que não te seguem",
|
||||
"notifications.policy.filter_not_following_hint": "Até que os aproves manualmente",
|
||||
"notifications.policy.filter_not_following_title": "Pessoas que não segues",
|
||||
"notifications.policy.filter_private_mentions_hint": "Filtrado, a não ser que seja em resposta à tua própria menção ou se seguires o remetente",
|
||||
|
@ -722,7 +723,7 @@
|
|||
"report.category.title_account": "perfil",
|
||||
"report.category.title_status": "publicação",
|
||||
"report.close": "Concluído",
|
||||
"report.comment.title": "Há algo mais que pensa que devemos saber?",
|
||||
"report.comment.title": "Há mais alguma coisa que devamos saber?",
|
||||
"report.forward": "Reencaminhar para {target}",
|
||||
"report.forward_hint": "A conta pertence a outro servidor. Enviar uma cópia anónima da denúncia para esse servidor também?",
|
||||
"report.mute": "Ocultar",
|
||||
|
@ -738,15 +739,15 @@
|
|||
"report.reasons.spam": "É spam",
|
||||
"report.reasons.spam_description": "Hiperligações maliciosas, contactos falsos ou respostas repetitivas",
|
||||
"report.reasons.violation": "Viola as regras do servidor",
|
||||
"report.reasons.violation_description": "Está ciente de que infringe regras específicas",
|
||||
"report.rules.subtitle": "Selecione tudo o que se aplicar",
|
||||
"report.reasons.violation_description": "Infringe regras específicas",
|
||||
"report.rules.subtitle": "Seleciona tudo o que se aplicar",
|
||||
"report.rules.title": "Que regras estão a ser violadas?",
|
||||
"report.statuses.subtitle": "Selecione tudo o que se aplicar",
|
||||
"report.statuses.subtitle": "Seleciona tudo o que se aplicar",
|
||||
"report.statuses.title": "Existe alguma publicação que suporte esta denúncia?",
|
||||
"report.submit": "Enviar",
|
||||
"report.target": "A denunciar {target}",
|
||||
"report.thanks.take_action": "Aqui estão as suas opções para controlar o que vê no Mastodon:",
|
||||
"report.thanks.take_action_actionable": "Enquanto revemos a sua denúncia, pode tomar medidas contra @{name}:",
|
||||
"report.thanks.take_action_actionable": "Enquanto revemos a tua denúncia, podes tomar medidas contra @{name}:",
|
||||
"report.thanks.title": "Não quer ver isto?",
|
||||
"report.thanks.title_actionable": "Obrigado por nos informares, vamos analisar a situação.",
|
||||
"report.unfollow": "Deixar de seguir @{name}",
|
||||
|
@ -757,7 +758,7 @@
|
|||
"report_notification.categories.other": "Outro",
|
||||
"report_notification.categories.other_sentence": "outro",
|
||||
"report_notification.categories.spam": "Spam",
|
||||
"report_notification.categories.spam_sentence": "spam",
|
||||
"report_notification.categories.spam_sentence": "publicidade indesejada / spam",
|
||||
"report_notification.categories.violation": "Violação de regra",
|
||||
"report_notification.categories.violation_sentence": "violação de regra",
|
||||
"report_notification.open": "Abrir denúncia",
|
||||
|
@ -812,7 +813,7 @@
|
|||
"status.edited": "Última edição em {date}",
|
||||
"status.edited_x_times": "Editado {count, plural,one {{count} vez} other {{count} vezes}}",
|
||||
"status.embed": "Obter código de incorporação",
|
||||
"status.favourite": "Assinalar como favorito",
|
||||
"status.favourite": "Adicionar aos favoritos",
|
||||
"status.favourites": "{count, plural, one {favorito} other {favoritos}}",
|
||||
"status.filter": "Filtrar esta publicação",
|
||||
"status.history.created": "{name} criado em {date}",
|
||||
|
@ -836,6 +837,7 @@
|
|||
"status.reblogs.empty": "Ainda ninguém impulsionou esta publicação. Quando alguém o fizer, aparecerá aqui.",
|
||||
"status.redraft": "Eliminar e reescrever",
|
||||
"status.remove_bookmark": "Retirar dos marcadores",
|
||||
"status.remove_favourite": "Remover dos favoritos",
|
||||
"status.replied_in_thread": "Responder na conversa",
|
||||
"status.replied_to": "Respondeu a {name}",
|
||||
"status.reply": "Responder",
|
||||
|
|
|
@ -236,6 +236,7 @@
|
|||
"domain_block_modal.they_cant_follow": "Nikto z tohoto servera ťa nemôže nasledovať.",
|
||||
"domain_block_modal.they_wont_know": "Nebude vedieť, že bol/a zablokovaný/á.",
|
||||
"domain_block_modal.title": "Blokovať doménu?",
|
||||
"domain_block_modal.you_will_lose_relationships": "Stratíš všetkých sledovateľov a ľudí, ktorých ty na tomto serveri nasleduješ.",
|
||||
"domain_block_modal.you_wont_see_posts": "Neuvidíš príspevky, ani oboznámenia od užívateľov na tomto serveri.",
|
||||
"domain_pill.activitypub_like_language": "ActivityPub je ako jazyk, ktorým Mastodon hovorí s ostatnými sociálnymi sieťami.",
|
||||
"domain_pill.server": "Server",
|
||||
|
@ -377,8 +378,11 @@
|
|||
"ignore_notifications_modal.not_followers_title": "Nevšímať si oznámenia od ľudí, ktorí ťa nenasledujú?",
|
||||
"ignore_notifications_modal.not_following_title": "Nevšímať si oznámenia od ľudí, ktorých nenasleduješ?",
|
||||
"ignore_notifications_modal.private_mentions_title": "Nevšímať si oznámenia o nevyžiadaných súkromných spomínaniach?",
|
||||
"interaction_modal.action.favourite": "Pre pokračovanie si musíš obľúbiť zo svojho účtu.",
|
||||
"interaction_modal.action.follow": "Pre pokračovanie musíš nasledovať zo svojho účtu.",
|
||||
"interaction_modal.action.reply": "Pre pokračovanie musíš odpovedať s tvojho účtu.",
|
||||
"interaction_modal.action.vote": "Pre pokračovanie musíš hlasovať s tvojho účtu.",
|
||||
"interaction_modal.go": "Prejdi",
|
||||
"interaction_modal.no_account_yet": "Ešte nemáš účet?",
|
||||
"interaction_modal.on_another_server": "Na inom serveri",
|
||||
"interaction_modal.on_this_server": "Na tomto serveri",
|
||||
|
@ -387,6 +391,7 @@
|
|||
"interaction_modal.title.reblog": "Zdieľať príspevok od {name}",
|
||||
"interaction_modal.title.reply": "Odpovedať na príspevok od {name}",
|
||||
"interaction_modal.title.vote": "Hlasuj v ankete od {name}",
|
||||
"interaction_modal.username_prompt": "Napr. {example}",
|
||||
"intervals.full.days": "{number, plural, one {# deň} few {# dni} many {# dní} other {# dní}}",
|
||||
"intervals.full.hours": "{number, plural, one {# hodina} few {# hodiny} many {# hodín} other {# hodín}}",
|
||||
"intervals.full.minutes": "{number, plural, one {# minúta} few {# minúty} many {# minút} other {# minút}}",
|
||||
|
@ -422,6 +427,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Zobraziť/skryť text za varovaním o obsahu",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Zobraziť/skryť médiá",
|
||||
"keyboard_shortcuts.toot": "Vytvoriť nový príspevok",
|
||||
"keyboard_shortcuts.translate": "preložiť príspevok",
|
||||
"keyboard_shortcuts.unfocus": "Odísť z textového poľa",
|
||||
"keyboard_shortcuts.up": "Posunúť sa vyššie v zozname",
|
||||
"lightbox.close": "Zatvoriť",
|
||||
|
@ -514,6 +520,7 @@
|
|||
"notification.moderation_warning": "Dostal/a si varovanie od moderátora",
|
||||
"notification.moderation_warning.action_delete_statuses": "Niektoré z tvojich príspevkov boli odstránené.",
|
||||
"notification.moderation_warning.action_disable": "Tvoj účet bol vypnutý.",
|
||||
"notification.moderation_warning.action_mark_statuses_as_sensitive": "Niektoré tvoje príspevky boli označené za chúlostivé.",
|
||||
"notification.moderation_warning.action_none": "Tvoj účet dostal upozornenie od moderátora.",
|
||||
"notification.moderation_warning.action_sensitive": "Tvoje príspevky budú odteraz označované ako chúlostivé.",
|
||||
"notification.moderation_warning.action_silence": "Tvoj účet bol obmedzený.",
|
||||
|
@ -527,6 +534,7 @@
|
|||
"notification.status": "{name} uverejňuje niečo nové",
|
||||
"notification.update": "{name} upravuje príspevok",
|
||||
"notification_requests.accept": "Prijať",
|
||||
"notification_requests.confirm_accept_multiple.title": "Priať požiadavku o oboznámenia?",
|
||||
"notification_requests.dismiss": "Zamietnuť",
|
||||
"notification_requests.edit_selection": "Uprav",
|
||||
"notification_requests.exit_selection": "Hotovo",
|
||||
|
@ -571,9 +579,11 @@
|
|||
"notifications.policy.accept_hint": "Ukáž v oznámeniach",
|
||||
"notifications.policy.drop": "Ignoruj",
|
||||
"notifications.policy.filter": "Triediť",
|
||||
"notifications.policy.filter_limited_accounts_hint": "Obmedzené moderátormi servera",
|
||||
"notifications.policy.filter_limited_accounts_title": "Moderované účty",
|
||||
"notifications.policy.filter_new_accounts_title": "Nové účty",
|
||||
"notifications.policy.filter_not_followers_title": "Ľudia, ktorí ťa nenasledujú",
|
||||
"notifications.policy.filter_not_following_hint": "Pokiaľ ich ručne neschváliš",
|
||||
"notifications.policy.filter_not_following_title": "Ľudia, ktorých nenasleduješ",
|
||||
"notifications.policy.filter_private_mentions_title": "Nevyžiadané priame spomenutia",
|
||||
"notifications.policy.title": "Spravuj oznámenia od…",
|
||||
|
@ -621,6 +631,8 @@
|
|||
"privacy_policy.title": "Pravidlá ochrany súkromia",
|
||||
"recommended": "Odporúčané",
|
||||
"refresh": "Obnoviť",
|
||||
"regeneration_indicator.please_stand_by": "Prosím, čakajte.",
|
||||
"regeneration_indicator.preparing_your_home_feed": "Pripravuje sa tvoj domáci kanál…",
|
||||
"relative_time.days": "{number} dní",
|
||||
"relative_time.full.days": "Pred {number, plural, one {# dňom} other {# dňami}}",
|
||||
"relative_time.full.hours": "Pred {number, plural, one {# hodinou} other {# hodinami}}",
|
||||
|
@ -711,6 +723,7 @@
|
|||
"server_banner.about_active_users": "Ľudia používajúci tento server za posledných 30 dní (aktívni používatelia za mesiac)",
|
||||
"server_banner.active_users": "Aktívne účty",
|
||||
"server_banner.administered_by": "Správa servera:",
|
||||
"server_banner.is_one_of_many": "{domain} je jeden z mnohých nezávislých Mastodon serverov, ktoré môžeš použiť na zúčastňovanie sa v rámci fediversa.",
|
||||
"server_banner.server_stats": "Štatistiky servera:",
|
||||
"sign_in_banner.create_account": "Vytvoriť účet",
|
||||
"sign_in_banner.sign_in": "Prihlásiť sa",
|
||||
|
@ -753,6 +766,7 @@
|
|||
"status.reblogs.empty": "Nikto ešte tento príspevok nezdieľal. Keď tak niekto urobí, zobrazí sa to tu.",
|
||||
"status.redraft": "Vymazať a prepísať",
|
||||
"status.remove_bookmark": "Odstrániť záložku",
|
||||
"status.remove_favourite": "Odstráň z obľúbených",
|
||||
"status.replied_in_thread": "Odpovedal/a vo vlákne",
|
||||
"status.replied_to": "Odpoveď na {name}",
|
||||
"status.reply": "Odpovedať",
|
||||
|
|
|
@ -452,6 +452,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Për shfaqje/fshehje teksti pas CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Për shfaqje/fshehje mediash",
|
||||
"keyboard_shortcuts.toot": "Për të filluar një mesazh të ri",
|
||||
"keyboard_shortcuts.translate": "për të përkthyer një postim",
|
||||
"keyboard_shortcuts.unfocus": "Për heqjen e fokusit nga fusha e hartimit të mesazheve apo kërkimeve",
|
||||
"keyboard_shortcuts.up": "Për ngjitje sipër nëpër listë",
|
||||
"lightbox.close": "Mbylle",
|
||||
|
|
|
@ -141,7 +141,7 @@
|
|||
"column.bookmarks": "Bokmärken",
|
||||
"column.community": "Lokal tidslinje",
|
||||
"column.create_list": "Skapa lista",
|
||||
"column.direct": "Privata nämningar",
|
||||
"column.direct": "Privata omnämnande",
|
||||
"column.directory": "Bläddra bland profiler",
|
||||
"column.domain_blocks": "Blockerade domäner",
|
||||
"column.edit_list": "Redigera lista",
|
||||
|
@ -239,6 +239,10 @@
|
|||
"disabled_account_banner.text": "Ditt konto {disabledAccount} är för närvarande inaktiverat.",
|
||||
"dismissable_banner.community_timeline": "Dessa är de senaste offentliga inläggen från personer vars konton tillhandahålls av {domain}.",
|
||||
"dismissable_banner.dismiss": "Avfärda",
|
||||
"dismissable_banner.explore_links": "Dessa nyhetshistorier delas mest på fediversum idag. Nyare nyhetshistorier som publiceras av fler olika personer rankas högre.",
|
||||
"dismissable_banner.explore_statuses": "Dessa inlägg från fediversum vinner dragkraft idag. Nyare inlägg som många boostar och favoritmarkerar rankas högre.",
|
||||
"dismissable_banner.explore_tags": "De här hashtaggarna vinner dragkraft i fediversum idag. Hashtaggar som används av fler olika personer rankas högre.",
|
||||
"dismissable_banner.public_timeline": "De här är de aktuella publika inlägg från personer i fediversum som personer i {domain} följer.",
|
||||
"domain_block_modal.block": "Blockera server",
|
||||
"domain_block_modal.block_account_instead": "Blockera @{name} istället",
|
||||
"domain_block_modal.they_can_interact_with_old_posts": "Personer från denna server kan interagera med dina gamla inlägg.",
|
||||
|
@ -285,7 +289,7 @@
|
|||
"empty_column.blocks": "Du har ännu ej blockerat några användare.",
|
||||
"empty_column.bookmarked_statuses": "Du har inte bokmärkt några inlägg än. När du bokmärker ett inlägg kommer det synas här.",
|
||||
"empty_column.community": "Den lokala tidslinjen är tom. Skriv något offentligt för att sätta bollen i rullning!",
|
||||
"empty_column.direct": "Du har inga privata nämningar. När du skickar eller tar emot ett direktmeddelande kommer det att visas här.",
|
||||
"empty_column.direct": "Du har inga privata omnämninande. När du skickar eller tar emot ett direktmeddelande kommer det att visas här.",
|
||||
"empty_column.domain_blocks": "Det finns ännu inga dolda domäner.",
|
||||
"empty_column.explore_statuses": "Ingenting är trendigt just nu. Kom tillbaka senare!",
|
||||
"empty_column.favourited_statuses": "Du har inga favoritmarkerade inlägg ännu. När du favoritmärker ett så kommer det att dyka upp här.",
|
||||
|
@ -402,7 +406,14 @@
|
|||
"ignore_notifications_modal.new_accounts_title": "Vill du ignorera aviseringar från nya konton?",
|
||||
"ignore_notifications_modal.not_followers_title": "Vill du ignorera aviseringar från personer som inte följer dig?",
|
||||
"ignore_notifications_modal.not_following_title": "Vill du blockera aviseringar från personer som du inte följer dig?",
|
||||
"ignore_notifications_modal.private_mentions_title": "Vill du ignorera aviseringar från oönskade privata omnämningar?",
|
||||
"ignore_notifications_modal.private_mentions_title": "Vill du ignorera aviseringar från oombedda privata omnämnanden?",
|
||||
"interaction_modal.action.favourite": "För att fortsätta, måste du favoritmarkera från ditt konto.",
|
||||
"interaction_modal.action.follow": "För att fortsätta, måste du följa från ditt konto.",
|
||||
"interaction_modal.action.reblog": "För att fortsätta, måste du boosta från ditt konto.",
|
||||
"interaction_modal.action.reply": "För att fortsätta, måste du svara från ditt konto.",
|
||||
"interaction_modal.action.vote": "För att fortsätta, måste du rösta från ditt konto.",
|
||||
"interaction_modal.go": "Vidare",
|
||||
"interaction_modal.no_account_yet": "Har du inget konto än?",
|
||||
"interaction_modal.on_another_server": "På en annan server",
|
||||
"interaction_modal.on_this_server": "På denna server",
|
||||
"interaction_modal.title.favourite": "Favoritmarkera {name}s inlägg",
|
||||
|
@ -410,6 +421,7 @@
|
|||
"interaction_modal.title.reblog": "Boosta {name}s inlägg",
|
||||
"interaction_modal.title.reply": "Svara på {name}s inlägg",
|
||||
"interaction_modal.title.vote": "Rösta i {name}s enkät",
|
||||
"interaction_modal.username_prompt": "T.ex. {example}",
|
||||
"intervals.full.days": "{number, plural, one {# dag} other {# dagar}}",
|
||||
"intervals.full.hours": "{number, plural, one {# timme} other {# timmar}}",
|
||||
"intervals.full.minutes": "{number, plural, one {# minut} other {# minuter}}",
|
||||
|
@ -419,7 +431,7 @@
|
|||
"keyboard_shortcuts.column": "Fokusera kolumn",
|
||||
"keyboard_shortcuts.compose": "Fokusera skrivfältet",
|
||||
"keyboard_shortcuts.description": "Beskrivning",
|
||||
"keyboard_shortcuts.direct": "för att öppna privata nämningskolumnen",
|
||||
"keyboard_shortcuts.direct": "för att öppna privata omnämnandekolumnen",
|
||||
"keyboard_shortcuts.down": "Flytta ner i listan",
|
||||
"keyboard_shortcuts.enter": "Öppna inlägg",
|
||||
"keyboard_shortcuts.favourite": "Favoritmarkera inlägg",
|
||||
|
@ -445,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Visa/gömma text bakom CW",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Visa/gömma media",
|
||||
"keyboard_shortcuts.toot": "Starta nytt inlägg",
|
||||
"keyboard_shortcuts.translate": "för att översätta ett inlägg",
|
||||
"keyboard_shortcuts.unfocus": "Avfokusera skrivfält/sökfält",
|
||||
"keyboard_shortcuts.up": "Flytta uppåt i listan",
|
||||
"lightbox.close": "Stäng",
|
||||
|
@ -466,6 +479,7 @@
|
|||
"lists.delete": "Radera lista",
|
||||
"lists.done": "Klar",
|
||||
"lists.edit": "Redigera lista",
|
||||
"lists.exclusive": "Dölj medlemmar i Hem flödet",
|
||||
"lists.exclusive_hint": "Om någon är med på den här listan, göm dem i ditt Hemtidlinje för att undvika att se deras inlägg två gånger.",
|
||||
"lists.find_users_to_add": "Hitta användare att lägga till",
|
||||
"lists.list_members": "Lista medlemmar",
|
||||
|
@ -474,12 +488,14 @@
|
|||
"lists.new_list_name": "Nytt listnamn",
|
||||
"lists.no_lists_yet": "Ännu inga listor.",
|
||||
"lists.no_members_yet": "Inga medlemmar ännu.",
|
||||
"lists.no_results_found": "Inga resultat hittades.",
|
||||
"lists.remove_member": "Ta bort",
|
||||
"lists.replies_policy.followed": "Alla användare som följs",
|
||||
"lists.replies_policy.list": "Medlemmar i listan",
|
||||
"lists.replies_policy.none": "Ingen",
|
||||
"lists.save": "Spara",
|
||||
"lists.search": "Sök",
|
||||
"lists.show_replies_to": "Inkludera svar från listmedlemmar till",
|
||||
"load_pending": "{count, plural, one {# nytt objekt} other {# nya objekt}}",
|
||||
"loading_indicator.label": "Laddar…",
|
||||
"media_gallery.hide": "Dölj",
|
||||
|
@ -500,7 +516,7 @@
|
|||
"navigation_bar.bookmarks": "Bokmärken",
|
||||
"navigation_bar.community_timeline": "Lokal tidslinje",
|
||||
"navigation_bar.compose": "Författa nytt inlägg",
|
||||
"navigation_bar.direct": "Privata nämningar",
|
||||
"navigation_bar.direct": "Privata omnämnande",
|
||||
"navigation_bar.discover": "Upptäck",
|
||||
"navigation_bar.domain_blocks": "Dolda domäner",
|
||||
"navigation_bar.explore": "Utforska",
|
||||
|
@ -532,12 +548,14 @@
|
|||
"notification.annual_report.view": "Visa #Wrapstodon",
|
||||
"notification.favourite": "{name} favoritmarkerade ditt inlägg",
|
||||
"notification.favourite.name_and_others_with_link": "{name} och <a>{count, plural, one {# annan} other {# andra}}</a> har favoritmarkerat ditt inlägg",
|
||||
"notification.favourite_pm": "{name} favoritmarkerade ditt privata omnämnande",
|
||||
"notification.favourite_pm.name_and_others_with_link": "{name} och <a>{count, plural, one {# annan} other {# andra}}</a> favoritmarkerade ditt privata omnämnande",
|
||||
"notification.follow": "{name} följer dig",
|
||||
"notification.follow.name_and_others": "{name} och <a>{count, plural, one {# annan} other {# andra}}</a> följer dig",
|
||||
"notification.follow_request": "{name} har begärt att följa dig",
|
||||
"notification.follow_request.name_and_others": "{name} och {count, plural, one {# en annan} other {# andra}} har bett att följa dig",
|
||||
"notification.label.mention": "Nämn",
|
||||
"notification.label.private_mention": "Privat nämning",
|
||||
"notification.label.private_mention": "Privat omnämnande",
|
||||
"notification.label.private_reply": "Privata svar",
|
||||
"notification.label.reply": "Svar",
|
||||
"notification.mention": "Nämn",
|
||||
|
@ -640,6 +658,7 @@
|
|||
"onboarding.follows.done": "Färdig",
|
||||
"onboarding.follows.empty": "Tyvärr kan inga resultat visas just nu. Du kan prova att använda sökfunktionen eller utforska sidan för att hitta personer att följa, eller försök igen senare.",
|
||||
"onboarding.follows.search": "Sök",
|
||||
"onboarding.follows.title": "Följ människor för att komma igång",
|
||||
"onboarding.profile.discoverable": "Gör min profil upptäckbar",
|
||||
"onboarding.profile.discoverable_hint": "När du väljer att vara upptäckbar på Mastodon kan dina inlägg visas i sök- och trendresultat, och din profil kan föreslås för personer med liknande intressen som du.",
|
||||
"onboarding.profile.display_name": "Visningsnamn",
|
||||
|
@ -677,6 +696,8 @@
|
|||
"privacy_policy.title": "Integritetspolicy",
|
||||
"recommended": "Rekommenderas",
|
||||
"refresh": "Läs om",
|
||||
"regeneration_indicator.please_stand_by": "Vänligen vänta.",
|
||||
"regeneration_indicator.preparing_your_home_feed": "Förbereder ditt hemflöde…",
|
||||
"relative_time.days": "{number}d",
|
||||
"relative_time.full.days": "{number, plural, one {# dag} other {# dagar}} sedan",
|
||||
"relative_time.full.hours": "{number, plural, one {# timme} other {# timmar}} sedan",
|
||||
|
@ -760,15 +781,18 @@
|
|||
"search_results.accounts": "Profiler",
|
||||
"search_results.all": "Alla",
|
||||
"search_results.hashtags": "Hashtaggar",
|
||||
"search_results.no_results": "Inga resultat.",
|
||||
"search_results.no_search_yet": "Prova att söka efter inlägg, profiler eller hashtags.",
|
||||
"search_results.see_all": "Visa alla",
|
||||
"search_results.statuses": "Inlägg",
|
||||
"search_results.title": "Sök efter \"{q}\"",
|
||||
"server_banner.about_active_users": "Personer som använt denna server de senaste 30 dagarna (månatligt aktiva användare)",
|
||||
"server_banner.active_users": "aktiva användare",
|
||||
"server_banner.administered_by": "Administrerad av:",
|
||||
"server_banner.is_one_of_many": "{domain} är en av de många oberoende Mastodon-servrar som du kan använda för att delta i Fediversen.",
|
||||
"server_banner.server_stats": "Serverstatistik:",
|
||||
"sign_in_banner.create_account": "Skapa konto",
|
||||
"sign_in_banner.follow_anyone": "Följ vem som helst över Fediverse och se allt i kronologisk ordning. Inga algoritmer, inga annonser och inga klickbeten i sikte.",
|
||||
"sign_in_banner.follow_anyone": "Följ vem som helst över Fediversum och se allt i kronologisk ordning. Inga algoritmer, annonser eller klickbeten i sikte.",
|
||||
"sign_in_banner.mastodon_is": "Mastodon är det bästa sättet att hänga med i vad som händer.",
|
||||
"sign_in_banner.sign_in": "Logga in",
|
||||
"sign_in_banner.sso_redirect": "Logga in eller registrera dig",
|
||||
|
@ -783,8 +807,8 @@
|
|||
"status.copy": "Kopiera inläggslänk",
|
||||
"status.delete": "Radera",
|
||||
"status.detailed_status": "Detaljerad samtalsvy",
|
||||
"status.direct": "Nämn @{name} privat",
|
||||
"status.direct_indicator": "Privat nämning",
|
||||
"status.direct": "Omnämn @{name} privat",
|
||||
"status.direct_indicator": "Privat omnämnande",
|
||||
"status.edit": "Redigera",
|
||||
"status.edited": "Senast ändrad {date}",
|
||||
"status.edited_x_times": "Redigerad {count, plural, one {{count} gång} other {{count} gånger}}",
|
||||
|
@ -813,6 +837,7 @@
|
|||
"status.reblogs.empty": "Ingen har boostat detta inlägg än. När någon gör det kommer de synas här.",
|
||||
"status.redraft": "Radera & gör om",
|
||||
"status.remove_bookmark": "Ta bort bokmärke",
|
||||
"status.remove_favourite": "Ta bort från Favoriter",
|
||||
"status.replied_in_thread": "Svarade i tråden",
|
||||
"status.replied_to": "Svarade på {name}",
|
||||
"status.reply": "Svara",
|
||||
|
@ -834,6 +859,7 @@
|
|||
"subscribed_languages.target": "Ändra språkprenumerationer för {target}",
|
||||
"tabs_bar.home": "Hem",
|
||||
"tabs_bar.notifications": "Aviseringar",
|
||||
"terms_of_service.title": "Användarvillkor",
|
||||
"time_remaining.days": "{number, plural, one {# dag} other {# dagar}} kvar",
|
||||
"time_remaining.hours": "{number, plural, one {# timme} other {# timmar}} kvar",
|
||||
"time_remaining.minutes": "{number, plural, one {# minut} other {# minuter}} kvar",
|
||||
|
|
|
@ -400,6 +400,13 @@
|
|||
"ignore_notifications_modal.not_followers_title": "เพิกเฉยการแจ้งเตือนจากผู้คนที่ไม่ได้ติดตามคุณ?",
|
||||
"ignore_notifications_modal.not_following_title": "เพิกเฉยการแจ้งเตือนจากผู้คนที่คุณไม่ได้ติดตาม?",
|
||||
"ignore_notifications_modal.private_mentions_title": "เพิกเฉยการแจ้งเตือนจากการกล่าวถึงแบบส่วนตัวที่ไม่พึงประสงค์?",
|
||||
"interaction_modal.action.favourite": "เพื่อดำเนินการต่อ คุณจำเป็นต้องชื่นชอบจากบัญชีของคุณ",
|
||||
"interaction_modal.action.follow": "เพื่อดำเนินการต่อ คุณจำเป็นต้องติดตามจากบัญชีของคุณ",
|
||||
"interaction_modal.action.reblog": "เพื่อดำเนินการต่อ คุณจำเป็นต้องดันจากบัญชีของคุณ",
|
||||
"interaction_modal.action.reply": "เพื่อดำเนินการต่อ คุณจำเป็นต้องตอบกลับจากบัญชีของคุณ",
|
||||
"interaction_modal.action.vote": "เพื่อดำเนินการต่อ คุณจำเป็นต้องลงคะแนนจากบัญชีของคุณ",
|
||||
"interaction_modal.go": "ไป",
|
||||
"interaction_modal.no_account_yet": "ยังไม่มีบัญชี?",
|
||||
"interaction_modal.on_another_server": "ในเซิร์ฟเวอร์อื่น",
|
||||
"interaction_modal.on_this_server": "ในเซิร์ฟเวอร์นี้",
|
||||
"interaction_modal.title.favourite": "ชื่นชอบโพสต์ของ {name}",
|
||||
|
@ -407,6 +414,7 @@
|
|||
"interaction_modal.title.reblog": "ดันโพสต์ของ {name}",
|
||||
"interaction_modal.title.reply": "ตอบกลับโพสต์ของ {name}",
|
||||
"interaction_modal.title.vote": "ลงคะแนนในการสำรวจความคิดเห็นของ {name}",
|
||||
"interaction_modal.username_prompt": "เช่น {example}",
|
||||
"intervals.full.days": "{number, plural, other {# วัน}}",
|
||||
"intervals.full.hours": "{number, plural, other {# ชั่วโมง}}",
|
||||
"intervals.full.minutes": "{number, plural, other {# นาที}}",
|
||||
|
@ -442,6 +450,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "แสดง/ซ่อนข้อความที่อยู่หลังคำเตือนเนื้อหา",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "แสดง/ซ่อนสื่อ",
|
||||
"keyboard_shortcuts.toot": "เริ่มโพสต์ใหม่",
|
||||
"keyboard_shortcuts.translate": "เพื่อแปลโพสต์",
|
||||
"keyboard_shortcuts.unfocus": "เลิกโฟกัสพื้นที่เขียนข้อความ/การค้นหา",
|
||||
"keyboard_shortcuts.up": "ย้ายขึ้นในรายการ",
|
||||
"lightbox.close": "ปิด",
|
||||
|
@ -679,6 +688,8 @@
|
|||
"privacy_policy.title": "นโยบายความเป็นส่วนตัว",
|
||||
"recommended": "แนะนำ",
|
||||
"refresh": "รีเฟรช",
|
||||
"regeneration_indicator.please_stand_by": "โปรดรอสักครู่",
|
||||
"regeneration_indicator.preparing_your_home_feed": "กำลังเตรียมฟีดหน้าแรกของคุณ…",
|
||||
"relative_time.days": "{number} วัน",
|
||||
"relative_time.full.days": "{number, plural, other {# วัน}}ที่แล้ว",
|
||||
"relative_time.full.hours": "{number, plural, other {# ชั่วโมง}}ที่แล้ว",
|
||||
|
@ -817,6 +828,7 @@
|
|||
"status.reblogs.empty": "ยังไม่มีใครดันโพสต์นี้ เมื่อใครสักคนดัน เขาจะปรากฏที่นี่",
|
||||
"status.redraft": "ลบแล้วร่างใหม่",
|
||||
"status.remove_bookmark": "เอาที่คั่นหน้าออก",
|
||||
"status.remove_favourite": "เอาออกจากรายการโปรด",
|
||||
"status.replied_in_thread": "ตอบกลับในกระทู้",
|
||||
"status.replied_to": "ตอบกลับ {name}",
|
||||
"status.reply": "ตอบกลับ",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "CW'den önceki yazıyı göstermek/gizlemek için",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Medyayı göstermek/gizlemek için",
|
||||
"keyboard_shortcuts.toot": "Yeni bir gönderi başlat",
|
||||
"keyboard_shortcuts.translate": "bir gönderiyi çevirmek için",
|
||||
"keyboard_shortcuts.unfocus": "Aramada bir gönderiye odaklanmamak için",
|
||||
"keyboard_shortcuts.up": "Listede yukarıya çıkmak için",
|
||||
"lightbox.close": "Kapat",
|
||||
|
|
|
@ -103,6 +103,7 @@
|
|||
"annual_report.summary.most_used_hashtag.most_used_hashtag": "найчастіший хештег",
|
||||
"annual_report.summary.most_used_hashtag.none": "Немає",
|
||||
"annual_report.summary.new_posts.new_posts": "нові дописи",
|
||||
"annual_report.summary.percentile.text": "<topLabel>Це виводить вас у топ</topLabel><percentage></percentage><bottomLabel> користувачів Mastodon.</bottomLabel>",
|
||||
"annual_report.summary.percentile.we_wont_tell_bernie": "Ми не скажемо Bernie.",
|
||||
"annual_report.summary.thanks": "Дякуємо, що ви є частиною Mastodon!",
|
||||
"attachments_list.unprocessed": "(не оброблено)",
|
||||
|
@ -148,6 +149,7 @@
|
|||
"column.firehose": "Стрічка новин",
|
||||
"column.follow_requests": "Запити на підписку",
|
||||
"column.home": "Головна",
|
||||
"column.list_members": "Керувати учасниками списку",
|
||||
"column.lists": "Списки",
|
||||
"column.mutes": "Приховані користувачі",
|
||||
"column.notifications": "Сповіщення",
|
||||
|
@ -237,6 +239,10 @@
|
|||
"disabled_account_banner.text": "Ваш обліковий запис {disabledAccount} наразі вимкнений.",
|
||||
"dismissable_banner.community_timeline": "Це останні публічні дописи від людей, чиї облікові записи розміщені на {domain}.",
|
||||
"dismissable_banner.dismiss": "Відхилити",
|
||||
"dismissable_banner.explore_links": "Ці новини сьогодні найбільше поширюють у fediverse. Свіжіші новини, опубліковані більшою кількістю різних людей, оцінюються вище.",
|
||||
"dismissable_banner.explore_statuses": "Ці дописи з усього fediverse сьогодні набирають популярності. Новіші дописи з більшою кількістю посилень і додавань у вибрані мають вищий рейтинг.",
|
||||
"dismissable_banner.explore_tags": "Ці гештеґи сьогодні набувають популярності у fediverse. Гештеґи, якими користується більше людей, займають вищі позиції.",
|
||||
"dismissable_banner.public_timeline": "Це найновіші загальнодоступні дописи від людей у федіверсі, на яких підписані люди в {domain}.",
|
||||
"domain_block_modal.block": "Блокувати сервер",
|
||||
"domain_block_modal.block_account_instead": "Блокувати @{name} натомість",
|
||||
"domain_block_modal.they_can_interact_with_old_posts": "Люди з цього сервера можуть взаємодіяти зі своїми старими дописами.",
|
||||
|
@ -325,7 +331,7 @@
|
|||
"filter_modal.select_filter.title": "Фільтрувати цей допис",
|
||||
"filter_modal.title.status": "Фільтрувати допис",
|
||||
"filter_warning.matches_filter": "Збігається з фільтром “<span>{title}</span>”",
|
||||
"filtered_notifications_banner.pending_requests": "Від {count, plural, =0 {жодної особи} one {однієї особи} few {# осіб} many {# осіб} other {# особи}}, котрих ви можете знати",
|
||||
"filtered_notifications_banner.pending_requests": "Від {count, plural, =0 {жодної особи} one {однієї особи} few {# осіб} many {# осіб} other {# особи}}, яких ви можете знати",
|
||||
"filtered_notifications_banner.title": "Відфільтровані сповіщення",
|
||||
"firehose.all": "Всі",
|
||||
"firehose.local": "Цей сервер",
|
||||
|
@ -402,6 +408,10 @@
|
|||
"ignore_notifications_modal.not_following_title": "Ігнорувати сповіщення від людей, на яких ви не підписалися?",
|
||||
"ignore_notifications_modal.private_mentions_title": "Ігнорувати сповіщення від небажаних приватних згадок?",
|
||||
"interaction_modal.action.favourite": "Щоб продовжити, потрібно додати улюблене з вашого облікового запису.",
|
||||
"interaction_modal.action.follow": "Щоб іти далі, потрібно підписатися з вашого облікового запису.",
|
||||
"interaction_modal.action.reblog": "Щоб іти далі, потрібно зробити реблог з вашого облікового запису.",
|
||||
"interaction_modal.action.reply": "Щоб іти далі, потрібно відповісти з вашого облікового запису.",
|
||||
"interaction_modal.action.vote": "Щоб іти далі, потрібно проголосувати з вашим обліковим записом.",
|
||||
"interaction_modal.go": "Вперед",
|
||||
"interaction_modal.no_account_yet": "Ще не зареєстровані?",
|
||||
"interaction_modal.on_another_server": "На іншому сервері",
|
||||
|
@ -411,6 +421,7 @@
|
|||
"interaction_modal.title.reblog": "Поширити допис {name}",
|
||||
"interaction_modal.title.reply": "Відповісти на допис {name}",
|
||||
"interaction_modal.title.vote": "Проголосувати в опитуванні {name}",
|
||||
"interaction_modal.username_prompt": "Наприклад, %{example}",
|
||||
"intervals.full.days": "{number, plural, one {# день} few {# дні} other {# днів}}",
|
||||
"intervals.full.hours": "{number, plural, one {# година} few {# години} other {# годин}}",
|
||||
"intervals.full.minutes": "{number, plural, one {# хвилина} few {# хвилини} other {# хвилин}}",
|
||||
|
@ -446,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Показати/приховати текст під попередженням про вміст",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Показати/приховати медіа",
|
||||
"keyboard_shortcuts.toot": "Створити новий допис",
|
||||
"keyboard_shortcuts.translate": "для перекладу повідомлення",
|
||||
"keyboard_shortcuts.unfocus": "Розфокусуватися з нового допису чи пошуку",
|
||||
"keyboard_shortcuts.up": "Рухатися вгору списком",
|
||||
"lightbox.close": "Закрити",
|
||||
|
@ -458,12 +470,32 @@
|
|||
"link_preview.author": "Від {name}",
|
||||
"link_preview.more_from_author": "Більше від {name}",
|
||||
"link_preview.shares": "{count, plural, one {{counter} допис} few {{counter} дописи} many {{counter} дописів} other {{counter} допис}}",
|
||||
"lists.add_member": "Додати",
|
||||
"lists.add_to_list": "Додати до списку",
|
||||
"lists.add_to_lists": "Додати {name} до списку",
|
||||
"lists.create": "Створити",
|
||||
"lists.create_a_list_to_organize": "Створіть новий список, щоб упорядкувати домашню стрічку",
|
||||
"lists.create_list": "Створити список",
|
||||
"lists.delete": "Видалити список",
|
||||
"lists.done": "Готово",
|
||||
"lists.edit": "Редагувати список",
|
||||
"lists.exclusive": "Сховати учасників на головній сторінці",
|
||||
"lists.exclusive_hint": "Якщо хтось є у цьому списку, сховайте їх на своїй домашній сторінці, щоб не бачити їхні дописи двічі.",
|
||||
"lists.find_users_to_add": "Знайти користувачів, щоб додати їх",
|
||||
"lists.list_members": "Учасники списку",
|
||||
"lists.list_members_count": "{count, plural, one {# member} other {# members}}",
|
||||
"lists.list_name": "Назва списку",
|
||||
"lists.new_list_name": "Нова назва списку",
|
||||
"lists.no_lists_yet": "Поки що немає списків.",
|
||||
"lists.no_members_yet": "Ще немає учасників.",
|
||||
"lists.no_results_found": "Результатів не знайдено.",
|
||||
"lists.remove_member": "Видалити",
|
||||
"lists.replies_policy.followed": "Будь-який відстежуваний користувач",
|
||||
"lists.replies_policy.list": "Учасники списку",
|
||||
"lists.replies_policy.none": "Ніхто",
|
||||
"lists.save": "Зберегти",
|
||||
"lists.search": "Пошук",
|
||||
"lists.show_replies_to": "Включати відповіді також зі списку учасників",
|
||||
"load_pending": "{count, plural, one {# новий елемент} other {# нових елементів}}",
|
||||
"loading_indicator.label": "Завантаження…",
|
||||
"media_gallery.hide": "Сховати",
|
||||
|
@ -516,6 +548,8 @@
|
|||
"notification.annual_report.view": "Переглянути #Wrapstodon",
|
||||
"notification.favourite": "Ваш допис сподобався {name}",
|
||||
"notification.favourite.name_and_others_with_link": "{name} та <a>{count, plural, one {# інший} few {# інших} many {# інших} other {# інший}}</a> вподобали ваш допис",
|
||||
"notification.favourite_pm": "{name} додав вашу особисту згадку до вибраного",
|
||||
"notification.favourite_pm.name_and_others_with_link": "{name} та <a>{count, plural, one {# other} other {# others}}</a> додали вашу особисту згадку до вибраного",
|
||||
"notification.follow": "{name} підписалися на вас",
|
||||
"notification.follow.name_and_others": "{name} та <a>{count, plural, one {# інший} few {# інших} many {# інших} other {# інший}}</a> стежать за вами",
|
||||
"notification.follow_request": "{name} відправили запит на підписку",
|
||||
|
@ -663,6 +697,7 @@
|
|||
"recommended": "Рекомендовано",
|
||||
"refresh": "Оновити",
|
||||
"regeneration_indicator.please_stand_by": "Будь ласка, очікуйте.",
|
||||
"regeneration_indicator.preparing_your_home_feed": "Готування вашої головної стрічки новин…",
|
||||
"relative_time.days": "{number}д",
|
||||
"relative_time.full.days": "{number, plural, one {# день} few {# дні} other {# днів}} тому",
|
||||
"relative_time.full.hours": "{number, plural, one {# година} few {# години} other {# годин}} тому",
|
||||
|
@ -824,6 +859,7 @@
|
|||
"subscribed_languages.target": "Змінити підписані мови для {target}",
|
||||
"tabs_bar.home": "Головна",
|
||||
"tabs_bar.notifications": "Сповіщення",
|
||||
"terms_of_service.title": "Умови використання",
|
||||
"time_remaining.days": "{number, plural, one {# день} few {# дні} other {# днів}}",
|
||||
"time_remaining.hours": "{number, plural, one {# година} few {# години} other {# годин}}",
|
||||
"time_remaining.minutes": "{number, plural, one {# хвилина} few {# хвилини} other {# хвилин}}",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "ẩn/hiện nội dung ẩn",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "ẩn/hiện ảnh hoặc video",
|
||||
"keyboard_shortcuts.toot": "soạn tút mới",
|
||||
"keyboard_shortcuts.translate": "dịch tút",
|
||||
"keyboard_shortcuts.unfocus": "đưa con trỏ ra khỏi ô soạn thảo hoặc ô tìm kiếm",
|
||||
"keyboard_shortcuts.up": "di chuyển lên trên danh sách",
|
||||
"lightbox.close": "Đóng",
|
||||
|
@ -549,7 +550,7 @@
|
|||
"notification.favourite.name_and_others_with_link": "{name} và <a>{count, plural, other {# người khác}}</a> đã thích tút của bạn",
|
||||
"notification.favourite_pm": "{name} đã thích lượt nhắn riêng của bạn",
|
||||
"notification.favourite_pm.name_and_others_with_link": "{name} và <a>{count, plural, other {# người khác}}</a> đã thích lượt nhắn riêng của bạn",
|
||||
"notification.follow": "{name} theo dõi bạn",
|
||||
"notification.follow": "{name} đã theo dõi bạn",
|
||||
"notification.follow.name_and_others": "{name} và <a>{count, plural, other {# người khác}}</a> theo dõi bạn",
|
||||
"notification.follow_request": "{name} yêu cầu theo dõi bạn",
|
||||
"notification.follow_request.name_and_others": "{name} và {count, plural, other {# người khác}} đã yêu cầu theo dõi bạn",
|
||||
|
@ -763,7 +764,7 @@
|
|||
"report_notification.open": "Mở báo cáo",
|
||||
"search.no_recent_searches": "Gần đây chưa tìm gì",
|
||||
"search.placeholder": "Tìm kiếm",
|
||||
"search.quick_action.account_search": "Người có tên {x}",
|
||||
"search.quick_action.account_search": "Người tên {x}",
|
||||
"search.quick_action.go_to_account": "Xem trang {x}",
|
||||
"search.quick_action.go_to_hashtag": "Xem hashtag {x}",
|
||||
"search.quick_action.open_url": "Mở liên kết trong Mastodon",
|
||||
|
@ -836,6 +837,7 @@
|
|||
"status.reblogs.empty": "Tút này chưa có ai đăng lại. Nếu có, nó sẽ hiển thị ở đây.",
|
||||
"status.redraft": "Xóa và viết lại",
|
||||
"status.remove_bookmark": "Bỏ lưu",
|
||||
"status.remove_favourite": "Bỏ thích",
|
||||
"status.replied_in_thread": "Trả lời thảo luận",
|
||||
"status.replied_to": "Trả lời {name}",
|
||||
"status.reply": "Trả lời",
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue