1
0
Fork 0
mirror of https://github.com/mastodon/mastodon.git synced 2024-08-20 21:08:15 -07:00

Compare commits

...

34 commits

Author SHA1 Message Date
Matt Jankowski
d16d9caca7 Pre-import Rails 7.2 generated config grammar/style changes 2024-07-31 09:17:42 -04:00
Claire
2c1e75727d
Change filtered notification banner design to take up less space (#31222) 2024-07-31 12:36:08 +00:00
Claire
549ab089ee
Change grouped notifications API shape (take 2) (#31214) 2024-07-31 10:50:13 +00:00
Claire
288961bbb9
Change private mention icon for consistency in grouped notifications (#31223) 2024-07-31 10:26:43 +00:00
github-actions[bot]
520ff04248
New Crowdin Translations (automated) (#31219)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-07-31 08:09:49 +00:00
renovate[bot]
66a16bf49c
chore(deps): update dependency opentelemetry-instrumentation-active_job to v0.7.4 (#31218)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-31 08:01:07 +00:00
Claire
fd1bade135
Fix inconsistent dismiss icon for notification requests (#31220) 2024-07-31 07:52:59 +00:00
Claire
4eab6aef95
Change User-Agent to use Mastodon as the product, and http.rb as platform details (#31192) 2024-07-30 21:40:42 +00:00
Claire
598ae4f2da
Add endpoints for unread notifications count (#31191) 2024-07-30 08:39:11 +00:00
Tim Rogers
2ce99c51dd
Fixed Rails route covering %40-encoded profile URL paths to not 404 (#31184) 2024-07-30 08:18:00 +00:00
github-actions[bot]
7d11a6c9b0
New Crowdin Translations (automated) (#31206)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-07-30 08:15:40 +00:00
renovate[bot]
e1f7ca7ced
chore(deps): update dependency json-ld to v3.3.2 (#31205)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-30 08:00:33 +00:00
Matt Jankowski
7e33583daa
Dont run crowdin upload workflow on forks (#31195) 2024-07-29 17:19:05 +00:00
renovate[bot]
1229d2907a
chore(deps): update docker/dockerfile docker tag to v1.9 (#31187)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-29 16:00:55 +00:00
Emelia Smith
c40e481169
Implement UI for Admin Search of Hashtags (#30880) 2024-07-29 15:49:44 +00:00
renovate[bot]
6d2ed0dcba
chore(deps): update dependency pg to v1.5.7 (#31176)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-29 15:00:01 +00:00
Michael Stanclift
91fbd5b422
Adjust magick version detection in admin panel (#30845) 2024-07-29 14:32:29 +00:00
renovate[bot]
8edd77a755
chore(deps): update dependency typescript to v5.5.4 (#31186)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-29 09:07:22 +00:00
Matt Jankowski
95eadabe44
Extrude fill_in_auth_details method to ProfileStories spec support module (#31163) 2024-07-29 08:31:42 +00:00
kyori19
6ad477d146
Fix Codespaces startup fails due to Corepack download prompt (#31189) 2024-07-29 08:27:11 +00:00
github-actions[bot]
ec5a860924
New Crowdin Translations (automated) (#31169)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-07-29 08:24:15 +00:00
Michael Stanclift
848a5ca53d
Follow up tweaking of admin UI changes (#31168) 2024-07-29 08:10:23 +00:00
renovate[bot]
37f5718482
chore(deps): update dependency sanitize to v6.1.2 (#31172)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-29 08:08:07 +00:00
renovate[bot]
4cc634dc44
fix(deps): update dependency use-debounce to v10.0.2 (#31177)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-29 08:07:28 +00:00
renovate[bot]
cefd8b5484
chore(deps): update dependency husky to v9.1.3 (#31185)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-29 08:06:53 +00:00
renovate[bot]
90d6297191
chore(deps): update eslint (non-major) (#31188)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-29 08:06:12 +00:00
David Roetzel
dd53792714
Move UI tests from controller to system spec (#31158) 2024-07-26 14:53:49 +00:00
Michael Stanclift
b120792f27
Adjust ffmpeg version detection in admin panel (#31130)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2024-07-26 14:13:56 +00:00
David Roetzel
dfd43869c9
Decrease count of filtered notifications when notification requests are accepted or dismissed (#31149) 2024-07-26 09:36:54 +00:00
renovate[bot]
c091fa7105
chore(deps): update devdependencies (non-major) (#31096)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-26 09:27:48 +00:00
Emelia Smith
693d9b03ed
Enable OAuth PKCE Extension (#31129) 2024-07-26 08:53:10 +00:00
github-actions[bot]
3793c845c9
New Crowdin Translations (automated) (#31154)
Co-authored-by: GitHub Actions <noreply@github.com>
2024-07-26 07:51:37 +00:00
Eugen Rochko
8818748b90
Change design of confirmation modals in web UI (#30884)
Co-authored-by: Renaud Chaput <renchap@gmail.com>
2024-07-25 17:05:54 +00:00
renovate[bot]
ff6d2ec343
fix(deps): update dependency pino to v9.3.2 (#31148)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-25 15:38:05 +00:00
313 changed files with 3167 additions and 1730 deletions

View file

@ -39,7 +39,7 @@
}, },
"onCreateCommand": "git config --global --add safe.directory ${containerWorkspaceFolder}", "onCreateCommand": "git config --global --add safe.directory ${containerWorkspaceFolder}",
"postCreateCommand": "bin/setup", "postCreateCommand": "COREPACK_ENABLE_DOWNLOAD_PROMPT=0 bin/setup",
"waitFor": "postCreateCommand", "waitFor": "postCreateCommand",
"customizations": { "customizations": {

View file

@ -19,6 +19,7 @@ on:
jobs: jobs:
upload-translations: upload-translations:
runs-on: ubuntu-latest runs-on: ubuntu-latest
if: github.repository == 'mastodon/mastodon'
steps: steps:
- name: Checkout - name: Checkout

View file

@ -1,4 +1,4 @@
# syntax=docker/dockerfile:1.8 # syntax=docker/dockerfile:1.9
# This file is designed for production server deployment, not local development work # This file is designed for production server deployment, not local development work
# For a containerized local dev environment, see: https://github.com/mastodon/mastodon/blob/main/README.md#docker # For a containerized local dev environment, see: https://github.com/mastodon/mastodon/blob/main/README.md#docker

View file

@ -357,13 +357,14 @@ GEM
aes_key_wrap aes_key_wrap
bindata bindata
httpclient httpclient
json-ld (3.3.1) json-ld (3.3.2)
htmlentities (~> 4.3) htmlentities (~> 4.3)
json-canonicalization (~> 1.0) json-canonicalization (~> 1.0)
link_header (~> 0.0, >= 0.0.8) link_header (~> 0.0, >= 0.0.8)
multi_json (~> 1.15) multi_json (~> 1.15)
rack (>= 2.2, < 4) rack (>= 2.2, < 4)
rdf (~> 3.3) rdf (~> 3.3)
rexml (~> 3.2)
json-ld-preloaded (3.3.0) json-ld-preloaded (3.3.0)
json-ld (~> 3.3) json-ld (~> 3.3)
rdf (~> 3.3) rdf (~> 3.3)
@ -451,7 +452,7 @@ GEM
net-smtp (0.5.0) net-smtp (0.5.0)
net-protocol net-protocol
nio4r (2.7.3) nio4r (2.7.3)
nokogiri (1.16.6) nokogiri (1.16.7)
mini_portile2 (~> 2.8.2) mini_portile2 (~> 2.8.2)
racc (~> 1.4) racc (~> 1.4)
nsa (0.3.0) nsa (0.3.0)
@ -516,7 +517,7 @@ GEM
opentelemetry-api (~> 1.0) opentelemetry-api (~> 1.0)
opentelemetry-instrumentation-active_support (~> 0.1) opentelemetry-instrumentation-active_support (~> 0.1)
opentelemetry-instrumentation-base (~> 0.22.1) opentelemetry-instrumentation-base (~> 0.22.1)
opentelemetry-instrumentation-active_job (0.7.3) opentelemetry-instrumentation-active_job (0.7.4)
opentelemetry-api (~> 1.0) opentelemetry-api (~> 1.0)
opentelemetry-instrumentation-base (~> 0.22.1) opentelemetry-instrumentation-base (~> 0.22.1)
opentelemetry-instrumentation-active_model_serializers (0.20.2) opentelemetry-instrumentation-active_model_serializers (0.20.2)
@ -589,7 +590,7 @@ GEM
parslet (2.0.0) parslet (2.0.0)
pastel (0.8.0) pastel (0.8.0)
tty-color (~> 0.5) tty-color (~> 0.5)
pg (1.5.6) pg (1.5.7)
pghero (3.6.0) pghero (3.6.0)
activerecord (>= 6.1) activerecord (>= 6.1)
premailer (1.23.0) premailer (1.23.0)
@ -675,8 +676,9 @@ GEM
zeitwerk (~> 2.6) zeitwerk (~> 2.6)
rainbow (3.1.1) rainbow (3.1.1)
rake (13.2.1) rake (13.2.1)
rdf (3.3.1) rdf (3.3.2)
bcp47_spec (~> 0.2) bcp47_spec (~> 0.2)
bigdecimal (~> 3.1, >= 3.1.5)
link_header (~> 0.0, >= 0.0.8) link_header (~> 0.0, >= 0.0.8)
rdf-normalize (0.7.0) rdf-normalize (0.7.0)
rdf (~> 3.3) rdf (~> 3.3)
@ -775,7 +777,7 @@ GEM
fugit (~> 1.1, >= 1.1.6) fugit (~> 1.1, >= 1.1.6)
safety_net_attestation (0.4.0) safety_net_attestation (0.4.0)
jwt (~> 2.0) jwt (~> 2.0)
sanitize (6.1.1) sanitize (6.1.2)
crass (~> 1.0.2) crass (~> 1.0.2)
nokogiri (>= 1.12.0) nokogiri (>= 1.12.0)
scenic (1.8.0) scenic (1.8.0)

View file

@ -2,7 +2,15 @@
module Admin module Admin
class TagsController < BaseController class TagsController < BaseController
before_action :set_tag before_action :set_tag, except: [:index]
PER_PAGE = 20
def index
authorize :tag, :index?
@tags = filtered_tags.page(params[:page]).per(PER_PAGE)
end
def show def show
authorize @tag, :show? authorize @tag, :show?
@ -31,5 +39,13 @@ module Admin
def tag_params def tag_params
params.require(:tag).permit(:name, :display_name, :trendable, :usable, :listable) params.require(:tag).permit(:name, :display_name, :trendable, :usable, :listable)
end end
def filtered_tags
TagFilter.new(filter_params.with_defaults(order: 'newest')).results
end
def filter_params
params.slice(:page, *TagFilter::KEYS).permit(:page, *TagFilter::KEYS)
end
end end
end end

View file

@ -30,10 +30,10 @@ class Api::BaseController < ApplicationController
protected protected
def limit_param(default_limit) def limit_param(default_limit, max_limit = nil)
return default_limit unless params[:limit] return default_limit unless params[:limit]
[params[:limit].to_i.abs, default_limit * 2].min [params[:limit].to_i.abs, max_limit || (default_limit * 2)].min
end end
def params_slice(*keys) def params_slice(*keys)

View file

@ -7,6 +7,8 @@ class Api::V1::NotificationsController < Api::BaseController
after_action :insert_pagination_headers, only: :index after_action :insert_pagination_headers, only: :index
DEFAULT_NOTIFICATIONS_LIMIT = 40 DEFAULT_NOTIFICATIONS_LIMIT = 40
DEFAULT_NOTIFICATIONS_COUNT_LIMIT = 100
MAX_NOTIFICATIONS_COUNT_LIMIT = 1_000
def index def index
with_read_replica do with_read_replica do
@ -17,6 +19,14 @@ class Api::V1::NotificationsController < Api::BaseController
render json: @notifications, each_serializer: REST::NotificationSerializer, relationships: @relationships render json: @notifications, each_serializer: REST::NotificationSerializer, relationships: @relationships
end end
def unread_count
limit = limit_param(DEFAULT_NOTIFICATIONS_COUNT_LIMIT, MAX_NOTIFICATIONS_COUNT_LIMIT)
with_read_replica do
render json: { count: browserable_account_notifications.paginate_by_min_id(limit, notification_marker&.last_read_id).count }
end
end
def show def show
@notification = current_account.notifications.without_suspended.find(params[:id]) @notification = current_account.notifications.without_suspended.find(params[:id])
render json: @notification, serializer: REST::NotificationSerializer render json: @notification, serializer: REST::NotificationSerializer
@ -54,6 +64,10 @@ class Api::V1::NotificationsController < Api::BaseController
) )
end end
def notification_marker
current_user.markers.find_by(timeline: 'notifications')
end
def target_statuses_from_notifications def target_statuses_from_notifications
@notifications.reject { |notification| notification.target_status.nil? }.map(&:target_status) @notifications.reject { |notification| notification.target_status.nil? }.map(&:target_status)
end end

View file

@ -7,6 +7,8 @@ class Api::V2Alpha::NotificationsController < Api::BaseController
after_action :insert_pagination_headers, only: :index after_action :insert_pagination_headers, only: :index
DEFAULT_NOTIFICATIONS_LIMIT = 40 DEFAULT_NOTIFICATIONS_LIMIT = 40
DEFAULT_NOTIFICATIONS_COUNT_LIMIT = 100
MAX_NOTIFICATIONS_COUNT_LIMIT = 1_000
def index def index
with_read_replica do with_read_replica do
@ -31,13 +33,23 @@ class Api::V2Alpha::NotificationsController < Api::BaseController
'app.notification_grouping.status.unique_count' => statuses.uniq.size 'app.notification_grouping.status.unique_count' => statuses.uniq.size
) )
render json: @grouped_notifications, each_serializer: REST::NotificationGroupSerializer, relationships: @relationships, group_metadata: @group_metadata presenter = GroupedNotificationsPresenter.new(@grouped_notifications)
render json: presenter, serializer: REST::DedupNotificationGroupSerializer, relationships: @relationships, group_metadata: @group_metadata
end
end
def unread_count
limit = limit_param(DEFAULT_NOTIFICATIONS_COUNT_LIMIT, MAX_NOTIFICATIONS_COUNT_LIMIT)
with_read_replica do
render json: { count: browserable_account_notifications.paginate_groups_by_min_id(limit, min_id: notification_marker&.last_read_id).count }
end end
end end
def show def show
@notification = current_account.notifications.without_suspended.find_by!(group_key: params[:id]) @notification = current_account.notifications.without_suspended.find_by!(group_key: params[:id])
render json: NotificationGroup.from_notification(@notification), serializer: REST::NotificationGroupSerializer presenter = GroupedNotificationsPresenter.new([NotificationGroup.from_notification(@notification)])
render json: presenter, serializer: REST::DedupNotificationGroupSerializer
end end
def clear def clear
@ -92,6 +104,10 @@ class Api::V2Alpha::NotificationsController < Api::BaseController
) )
end end
def notification_marker
current_user.markers.find_by(timeline: 'notifications')
end
def target_statuses_from_notifications def target_statuses_from_notifications
@notifications.filter_map(&:target_status) @notifications.filter_map(&:target_status)
end end

View file

@ -0,0 +1,15 @@
# frozen_string_literal: true
module Admin::TagsHelper
def admin_tags_moderation_options
[
[t('admin.tags.moderation.reviewed'), 'reviewed'],
[t('admin.tags.moderation.review_requested'), 'review_requested'],
[t('admin.tags.moderation.unreviewed'), 'unreviewed'],
[t('admin.tags.moderation.trendable'), 'trendable'],
[t('admin.tags.moderation.not_trendable'), 'not_trendable'],
[t('admin.tags.moderation.usable'), 'usable'],
[t('admin.tags.moderation.not_usable'), 'not_usable'],
]
end
end

View file

@ -38,10 +38,6 @@ function dispatchAssociatedRecords(
const fetchedStatuses: ApiStatusJSON[] = []; const fetchedStatuses: ApiStatusJSON[] = [];
notifications.forEach((notification) => { notifications.forEach((notification) => {
if ('sample_accounts' in notification) {
fetchedAccounts.push(...notification.sample_accounts);
}
if (notification.type === 'admin.report') { if (notification.type === 'admin.report') {
fetchedAccounts.push(notification.report.target_account); fetchedAccounts.push(notification.report.target_account);
} }
@ -75,7 +71,9 @@ export const fetchNotifications = createDataLoadingThunk(
: excludeAllTypesExcept(activeFilter), : excludeAllTypesExcept(activeFilter),
}); });
}, },
({ notifications }, { dispatch }) => { ({ notifications, accounts, statuses }, { dispatch }) => {
dispatch(importFetchedAccounts(accounts));
dispatch(importFetchedStatuses(statuses));
dispatchAssociatedRecords(dispatch, notifications); dispatchAssociatedRecords(dispatch, notifications);
const payload: (ApiNotificationGroupJSON | NotificationGap)[] = const payload: (ApiNotificationGroupJSON | NotificationGap)[] =
notifications; notifications;
@ -95,7 +93,9 @@ export const fetchNotificationsGap = createDataLoadingThunk(
async (params: { gap: NotificationGap }) => async (params: { gap: NotificationGap }) =>
apiFetchNotifications({ max_id: params.gap.maxId }), apiFetchNotifications({ max_id: params.gap.maxId }),
({ notifications }, { dispatch }) => { ({ notifications, accounts, statuses }, { dispatch }) => {
dispatch(importFetchedAccounts(accounts));
dispatch(importFetchedStatuses(statuses));
dispatchAssociatedRecords(dispatch, notifications); dispatchAssociatedRecords(dispatch, notifications);
return { notifications }; return { notifications };

View file

@ -1,3 +1,5 @@
import { createAction } from '@reduxjs/toolkit';
import { import {
apiGetNotificationPolicy, apiGetNotificationPolicy,
apiUpdateNotificationsPolicy, apiUpdateNotificationsPolicy,
@ -14,3 +16,7 @@ export const updateNotificationsPolicy = createDataLoadingThunk(
'notificationPolicy/update', 'notificationPolicy/update',
(policy: Partial<NotificationPolicy>) => apiUpdateNotificationsPolicy(policy), (policy: Partial<NotificationPolicy>) => apiUpdateNotificationsPolicy(policy),
); );
export const decreasePendingNotificationsCount = createAction<number>(
'notificationPolicy/decreasePendingNotificationCount',
);

View file

@ -18,6 +18,7 @@ import {
importFetchedStatuses, importFetchedStatuses,
} from './importer'; } from './importer';
import { submitMarkers } from './markers'; import { submitMarkers } from './markers';
import { decreasePendingNotificationsCount } from './notification_policies';
import { notificationsUpdate } from "./notifications_typed"; import { notificationsUpdate } from "./notifications_typed";
import { register as registerPushNotifications } from './push_notifications'; import { register as registerPushNotifications } from './push_notifications';
import { saveSettings } from './settings'; import { saveSettings } from './settings';
@ -84,6 +85,12 @@ const fetchRelatedRelationships = (dispatch, notifications) => {
} }
}; };
const selectNotificationCountForRequest = (state, id) => {
const requests = state.getIn(['notificationRequests', 'items']);
const thisRequest = requests.find(request => request.get('id') === id);
return thisRequest ? thisRequest.get('notifications_count') : 0;
};
export const loadPending = () => ({ export const loadPending = () => ({
type: NOTIFICATIONS_LOAD_PENDING, type: NOTIFICATIONS_LOAD_PENDING,
}); });
@ -433,11 +440,13 @@ export const fetchNotificationRequestFail = (id, error) => ({
error, error,
}); });
export const acceptNotificationRequest = id => (dispatch) => { export const acceptNotificationRequest = (id) => (dispatch, getState) => {
const count = selectNotificationCountForRequest(getState(), id);
dispatch(acceptNotificationRequestRequest(id)); dispatch(acceptNotificationRequestRequest(id));
api().post(`/api/v1/notifications/requests/${id}/accept`).then(() => { api().post(`/api/v1/notifications/requests/${id}/accept`).then(() => {
dispatch(acceptNotificationRequestSuccess(id)); dispatch(acceptNotificationRequestSuccess(id));
dispatch(decreasePendingNotificationsCount(count));
}).catch(err => { }).catch(err => {
dispatch(acceptNotificationRequestFail(id, err)); dispatch(acceptNotificationRequestFail(id, err));
}); });
@ -459,11 +468,13 @@ export const acceptNotificationRequestFail = (id, error) => ({
error, error,
}); });
export const dismissNotificationRequest = id => (dispatch) => { export const dismissNotificationRequest = (id) => (dispatch, getState) => {
const count = selectNotificationCountForRequest(getState(), id);
dispatch(dismissNotificationRequestRequest(id)); dispatch(dismissNotificationRequestRequest(id));
api().post(`/api/v1/notifications/requests/${id}/dismiss`).then(() =>{ api().post(`/api/v1/notifications/requests/${id}/dismiss`).then(() =>{
dispatch(dismissNotificationRequestSuccess(id)); dispatch(dismissNotificationRequestSuccess(id));
dispatch(decreasePendingNotificationsCount(count));
}).catch(err => { }).catch(err => {
dispatch(dismissNotificationRequestFail(id, err)); dispatch(dismissNotificationRequestFail(id, err));
}); });

View file

@ -1,17 +1,24 @@
import api, { apiRequest, getLinks } from 'mastodon/api'; import api, { apiRequest, getLinks } from 'mastodon/api';
import type { ApiNotificationGroupJSON } from 'mastodon/api_types/notifications'; import type { ApiNotificationGroupsResultJSON } from 'mastodon/api_types/notifications';
export const apiFetchNotifications = async (params?: { export const apiFetchNotifications = async (params?: {
exclude_types?: string[]; exclude_types?: string[];
max_id?: string; max_id?: string;
}) => { }) => {
const response = await api().request<ApiNotificationGroupJSON[]>({ const response = await api().request<ApiNotificationGroupsResultJSON>({
method: 'GET', method: 'GET',
url: '/api/v2_alpha/notifications', url: '/api/v2_alpha/notifications',
params, params,
}); });
return { notifications: response.data, links: getLinks(response) }; const { statuses, accounts, notification_groups } = response.data;
return {
statuses,
accounts,
notifications: notification_groups,
links: getLinks(response),
};
}; };
export const apiClearNotifications = () => export const apiClearNotifications = () =>

View file

@ -51,7 +51,7 @@ export interface BaseNotificationGroupJSON {
group_key: string; group_key: string;
notifications_count: number; notifications_count: number;
type: NotificationType; type: NotificationType;
sample_accounts: ApiAccountJSON[]; sample_account_ids: string[];
latest_page_notification_at: string; // FIXME: This will only be present if the notification group is returned in a paginated list, not requested directly latest_page_notification_at: string; // FIXME: This will only be present if the notification group is returned in a paginated list, not requested directly
most_recent_notification_id: string; most_recent_notification_id: string;
page_min_id?: string; page_min_id?: string;
@ -143,3 +143,9 @@ export type ApiNotificationGroupJSON =
| AccountRelationshipSeveranceNotificationGroupJSON | AccountRelationshipSeveranceNotificationGroupJSON
| NotificationGroupWithStatusJSON | NotificationGroupWithStatusJSON
| ModerationWarningNotificationGroupJSON; | ModerationWarningNotificationGroupJSON;
export interface ApiNotificationGroupsResultJSON {
accounts: ApiAccountJSON[];
statuses: ApiStatusJSON[];
notification_groups: ApiNotificationGroupJSON[];
}

View file

@ -3,6 +3,8 @@ import { useCallback } from 'react';
import { defineMessages, useIntl } from 'react-intl'; import { defineMessages, useIntl } from 'react-intl';
import LockOpenIcon from '@/material-icons/400-24px/lock_open.svg?react'; import LockOpenIcon from '@/material-icons/400-24px/lock_open.svg?react';
import { unblockDomain } from 'mastodon/actions/domain_blocks';
import { useAppDispatch } from 'mastodon/store';
import { IconButton } from './icon_button'; import { IconButton } from './icon_button';
@ -13,17 +15,15 @@ const messages = defineMessages({
}, },
}); });
interface Props { export const Domain: React.FC<{
domain: string; domain: string;
onUnblockDomain: (domain: string) => void; }> = ({ domain }) => {
}
export const Domain: React.FC<Props> = ({ domain, onUnblockDomain }) => {
const intl = useIntl(); const intl = useIntl();
const dispatch = useAppDispatch();
const handleDomainUnblock = useCallback(() => { const handleDomainUnblock = useCallback(() => {
onUnblockDomain(domain); dispatch(unblockDomain(domain));
}, [domain, onUnblockDomain]); }, [dispatch, domain]);
return ( return (
<div className='domain'> <div className='domain'>

View file

@ -1,13 +1,9 @@
import { useCallback, useEffect } from 'react'; import { useCallback, useEffect } from 'react';
import { useIntl, defineMessages, FormattedMessage } from 'react-intl'; import { useIntl, defineMessages } from 'react-intl';
import { useIdentity } from '@/mastodon/identity_context'; import { useIdentity } from '@/mastodon/identity_context';
import { import { fetchRelationships, followAccount } from 'mastodon/actions/accounts';
fetchRelationships,
followAccount,
unfollowAccount,
} from 'mastodon/actions/accounts';
import { openModal } from 'mastodon/actions/modal'; import { openModal } from 'mastodon/actions/modal';
import { Button } from 'mastodon/components/button'; import { Button } from 'mastodon/components/button';
import { LoadingIndicator } from 'mastodon/components/loading_indicator'; import { LoadingIndicator } from 'mastodon/components/loading_indicator';
@ -60,29 +56,14 @@ export const FollowButton: React.FC<{
if (accountId === me) { if (accountId === me) {
return; return;
} else if (relationship.following || relationship.requested) { } else if (account && (relationship.following || relationship.requested)) {
dispatch( dispatch(
openModal({ openModal({ modalType: 'CONFIRM_UNFOLLOW', modalProps: { account } }),
modalType: 'CONFIRM',
modalProps: {
message: (
<FormattedMessage
id='confirmations.unfollow.message'
defaultMessage='Are you sure you want to unfollow {name}?'
values={{ name: <strong>@{account?.acct}</strong> }}
/>
),
confirm: intl.formatMessage(messages.unfollow),
onConfirm: () => {
dispatch(unfollowAccount(accountId));
},
},
}),
); );
} else { } else {
dispatch(followAccount(accountId)); dispatch(followAccount(accountId));
} }
}, [dispatch, intl, accountId, relationship, account, signedIn]); }, [dispatch, accountId, relationship, account, signedIn]);
let label; let label;

View file

@ -1,24 +1,20 @@
import { defineMessages, injectIntl, FormattedMessage } from 'react-intl'; import { injectIntl } from 'react-intl';
import { connect } from 'react-redux'; import { connect } from 'react-redux';
import { openModal } from 'mastodon/actions/modal';
import { import {
followAccount, followAccount,
unfollowAccount,
blockAccount, blockAccount,
unblockAccount, unblockAccount,
muteAccount, muteAccount,
unmuteAccount, unmuteAccount,
} from '../actions/accounts'; } from '../actions/accounts';
import { openModal } from '../actions/modal';
import { initMuteModal } from '../actions/mutes'; import { initMuteModal } from '../actions/mutes';
import Account from '../components/account'; import Account from '../components/account';
import { makeGetAccount } from '../selectors'; import { makeGetAccount } from '../selectors';
const messages = defineMessages({
unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },
});
const makeMapStateToProps = () => { const makeMapStateToProps = () => {
const getAccount = makeGetAccount(); const getAccount = makeGetAccount();
@ -29,18 +25,11 @@ const makeMapStateToProps = () => {
return mapStateToProps; return mapStateToProps;
}; };
const mapDispatchToProps = (dispatch, { intl }) => ({ const mapDispatchToProps = (dispatch) => ({
onFollow (account) { onFollow (account) {
if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) { if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {
dispatch(openModal({ dispatch(openModal({ modalType: 'CONFIRM_UNFOLLOW', modalProps: { account } }));
modalType: 'CONFIRM',
modalProps: {
message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,
confirm: intl.formatMessage(messages.unfollowConfirm),
onConfirm: () => dispatch(unfollowAccount(account.get('id'))),
},
}));
} else { } else {
dispatch(followAccount(account.get('id'))); dispatch(followAccount(account.get('id')));
} }

View file

@ -1,36 +0,0 @@
import { defineMessages, injectIntl, FormattedMessage } from 'react-intl';
import { connect } from 'react-redux';
import { blockDomain, unblockDomain } from '../actions/domain_blocks';
import { openModal } from '../actions/modal';
import { Domain } from '../components/domain';
const messages = defineMessages({
blockDomainConfirm: { id: 'confirmations.domain_block.confirm', defaultMessage: 'Block entire domain' },
});
const makeMapStateToProps = () => {
const mapStateToProps = () => ({});
return mapStateToProps;
};
const mapDispatchToProps = (dispatch, { intl }) => ({
onBlockDomain (domain) {
dispatch(openModal({
modalType: 'CONFIRM',
modalProps: {
message: <FormattedMessage id='confirmations.domain_block.message' defaultMessage='Are you really, really sure you want to block the entire {domain}? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain in any public timelines or your notifications. Your followers from that domain will be removed.' values={{ domain: <strong>{domain}</strong> }} />,
confirm: intl.formatMessage(messages.blockDomainConfirm),
onConfirm: () => dispatch(blockDomain(domain)),
},
}));
},
onUnblockDomain (domain) {
dispatch(unblockDomain(domain));
},
});
export default injectIntl(connect(makeMapStateToProps, mapDispatchToProps)(Domain));

View file

@ -1,4 +1,4 @@
import { defineMessages, injectIntl } from 'react-intl'; import { injectIntl } from 'react-intl';
import { connect } from 'react-redux'; import { connect } from 'react-redux';
@ -46,18 +46,6 @@ import Status from '../components/status';
import { deleteModal } from '../initial_state'; import { deleteModal } from '../initial_state';
import { makeGetStatus, makeGetPictureInPicture } from '../selectors'; import { makeGetStatus, makeGetPictureInPicture } from '../selectors';
const messages = defineMessages({
deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },
deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },
redraftConfirm: { id: 'confirmations.redraft.confirm', defaultMessage: 'Delete & redraft' },
redraftMessage: { id: 'confirmations.redraft.message', defaultMessage: 'Are you sure you want to delete this status and re-draft it? Favorites and boosts will be lost, and replies to the original post will be orphaned.' },
replyConfirm: { id: 'confirmations.reply.confirm', defaultMessage: 'Reply' },
replyMessage: { id: 'confirmations.reply.message', defaultMessage: 'Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?' },
editConfirm: { id: 'confirmations.edit.confirm', defaultMessage: 'Edit' },
editMessage: { id: 'confirmations.edit.message', defaultMessage: 'Editing now will overwrite the message you are currently composing. Are you sure you want to proceed?' },
blockDomainConfirm: { id: 'confirmations.domain_block.confirm', defaultMessage: 'Block entire domain' },
});
const makeMapStateToProps = () => { const makeMapStateToProps = () => {
const getStatus = makeGetStatus(); const getStatus = makeGetStatus();
const getPictureInPicture = makeGetPictureInPicture(); const getPictureInPicture = makeGetPictureInPicture();
@ -71,20 +59,14 @@ const makeMapStateToProps = () => {
return mapStateToProps; return mapStateToProps;
}; };
const mapDispatchToProps = (dispatch, { intl, contextType }) => ({ const mapDispatchToProps = (dispatch, { contextType }) => ({
onReply (status) { onReply (status) {
dispatch((_, getState) => { dispatch((_, getState) => {
let state = getState(); let state = getState();
if (state.getIn(['compose', 'text']).trim().length !== 0) { if (state.getIn(['compose', 'text']).trim().length !== 0) {
dispatch(openModal({ dispatch(openModal({ modalType: 'CONFIRM_REPLY', modalProps: { status } }));
modalType: 'CONFIRM',
modalProps: {
message: intl.formatMessage(messages.replyMessage),
confirm: intl.formatMessage(messages.replyConfirm),
onConfirm: () => dispatch(replyCompose(status)) },
}));
} else { } else {
dispatch(replyCompose(status)); dispatch(replyCompose(status));
} }
@ -129,14 +111,7 @@ const mapDispatchToProps = (dispatch, { intl, contextType }) => ({
if (!deleteModal) { if (!deleteModal) {
dispatch(deleteStatus(status.get('id'), withRedraft)); dispatch(deleteStatus(status.get('id'), withRedraft));
} else { } else {
dispatch(openModal({ dispatch(openModal({ modalType: 'CONFIRM_DELETE_STATUS', modalProps: { statusId: status.get('id'), withRedraft } }));
modalType: 'CONFIRM',
modalProps: {
message: intl.formatMessage(withRedraft ? messages.redraftMessage : messages.deleteMessage),
confirm: intl.formatMessage(withRedraft ? messages.redraftConfirm : messages.deleteConfirm),
onConfirm: () => dispatch(deleteStatus(status.get('id'), withRedraft)),
},
}));
} }
}, },
@ -144,14 +119,7 @@ const mapDispatchToProps = (dispatch, { intl, contextType }) => ({
dispatch((_, getState) => { dispatch((_, getState) => {
let state = getState(); let state = getState();
if (state.getIn(['compose', 'text']).trim().length !== 0) { if (state.getIn(['compose', 'text']).trim().length !== 0) {
dispatch(openModal({ dispatch(openModal({ modalType: 'CONFIRM_EDIT_STATUS', modalProps: { statusId: status.get('id') } }));
modalType: 'CONFIRM',
modalProps: {
message: intl.formatMessage(messages.editMessage),
confirm: intl.formatMessage(messages.editConfirm),
onConfirm: () => dispatch(editStatus(status.get('id'))),
},
}));
} else { } else {
dispatch(editStatus(status.get('id'))); dispatch(editStatus(status.get('id')));
} }

View file

@ -1,4 +1,4 @@
import { defineMessages, injectIntl, FormattedMessage } from 'react-intl'; import { injectIntl } from 'react-intl';
import { connect } from 'react-redux'; import { connect } from 'react-redux';
@ -6,7 +6,6 @@ import { openURL } from 'mastodon/actions/search';
import { import {
followAccount, followAccount,
unfollowAccount,
unblockAccount, unblockAccount,
unmuteAccount, unmuteAccount,
pinAccount, pinAccount,
@ -24,11 +23,6 @@ import { initReport } from '../../../actions/reports';
import { makeGetAccount, getAccountHidden } from '../../../selectors'; import { makeGetAccount, getAccountHidden } from '../../../selectors';
import Header from '../components/header'; import Header from '../components/header';
const messages = defineMessages({
unfollowConfirm: { id: 'confirmations.unfollow.confirm', defaultMessage: 'Unfollow' },
blockDomainConfirm: { id: 'confirmations.domain_block.confirm', defaultMessage: 'Block entire domain' },
});
const makeMapStateToProps = () => { const makeMapStateToProps = () => {
const getAccount = makeGetAccount(); const getAccount = makeGetAccount();
@ -41,18 +35,11 @@ const makeMapStateToProps = () => {
return mapStateToProps; return mapStateToProps;
}; };
const mapDispatchToProps = (dispatch, { intl }) => ({ const mapDispatchToProps = (dispatch) => ({
onFollow (account) { onFollow (account) {
if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) { if (account.getIn(['relationship', 'following']) || account.getIn(['relationship', 'requested'])) {
dispatch(openModal({ dispatch(openModal({ modalType: 'CONFIRM_UNFOLLOW', modalProps: { account } }));
modalType: 'CONFIRM',
modalProps: {
message: <FormattedMessage id='confirmations.unfollow.message' defaultMessage='Are you sure you want to unfollow {name}?' values={{ name: <strong>@{account.get('acct')}</strong> }} />,
confirm: intl.formatMessage(messages.unfollowConfirm),
onConfirm: () => dispatch(unfollowAccount(account.get('id'))),
},
}));
} else { } else {
dispatch(followAccount(account.get('id'))); dispatch(followAccount(account.get('id')));
} }

View file

@ -7,7 +7,6 @@ import { useDispatch } from 'react-redux';
import MoreHorizIcon from '@/material-icons/400-24px/more_horiz.svg?react'; import MoreHorizIcon from '@/material-icons/400-24px/more_horiz.svg?react';
import { openModal } from 'mastodon/actions/modal'; import { openModal } from 'mastodon/actions/modal';
import DropdownMenuContainer from 'mastodon/containers/dropdown_menu_container'; import DropdownMenuContainer from 'mastodon/containers/dropdown_menu_container';
import { logOut } from 'mastodon/utils/log_out';
const messages = defineMessages({ const messages = defineMessages({
edit_profile: { id: 'account.edit_profile', defaultMessage: 'Edit profile' }, edit_profile: { id: 'account.edit_profile', defaultMessage: 'Edit profile' },
@ -23,8 +22,6 @@ const messages = defineMessages({
filters: { id: 'navigation_bar.filters', defaultMessage: 'Muted words' }, filters: { id: 'navigation_bar.filters', defaultMessage: 'Muted words' },
logout: { id: 'navigation_bar.logout', defaultMessage: 'Logout' }, logout: { id: 'navigation_bar.logout', defaultMessage: 'Logout' },
bookmarks: { id: 'navigation_bar.bookmarks', defaultMessage: 'Bookmarks' }, bookmarks: { id: 'navigation_bar.bookmarks', defaultMessage: 'Bookmarks' },
logoutMessage: { id: 'confirmations.logout.message', defaultMessage: 'Are you sure you want to log out?' },
logoutConfirm: { id: 'confirmations.logout.confirm', defaultMessage: 'Log out' },
}); });
export const ActionBar = () => { export const ActionBar = () => {
@ -32,16 +29,8 @@ export const ActionBar = () => {
const intl = useIntl(); const intl = useIntl();
const handleLogoutClick = useCallback(() => { const handleLogoutClick = useCallback(() => {
dispatch(openModal({ dispatch(openModal({ modalType: 'CONFIRM_LOG_OUT' }));
modalType: 'CONFIRM', }, [dispatch]);
modalProps: {
message: intl.formatMessage(messages.logoutMessage),
confirm: intl.formatMessage(messages.logoutConfirm),
closeWhenConfirm: false,
onConfirm: () => logOut(),
},
}));
}, [dispatch, intl]);
let menu = []; let menu = [];

View file

@ -21,7 +21,6 @@ import SettingsIcon from '@/material-icons/400-24px/settings-fill.svg?react';
import { openModal } from 'mastodon/actions/modal'; import { openModal } from 'mastodon/actions/modal';
import Column from 'mastodon/components/column'; import Column from 'mastodon/components/column';
import { Icon } from 'mastodon/components/icon'; import { Icon } from 'mastodon/components/icon';
import { logOut } from 'mastodon/utils/log_out';
import elephantUIPlane from '../../../images/elephant_ui_plane.svg'; import elephantUIPlane from '../../../images/elephant_ui_plane.svg';
import { changeComposing, mountCompose, unmountCompose } from '../../actions/compose'; import { changeComposing, mountCompose, unmountCompose } from '../../actions/compose';
@ -42,8 +41,6 @@ const messages = defineMessages({
preferences: { id: 'navigation_bar.preferences', defaultMessage: 'Preferences' }, preferences: { id: 'navigation_bar.preferences', defaultMessage: 'Preferences' },
logout: { id: 'navigation_bar.logout', defaultMessage: 'Logout' }, logout: { id: 'navigation_bar.logout', defaultMessage: 'Logout' },
compose: { id: 'navigation_bar.compose', defaultMessage: 'Compose new post' }, compose: { id: 'navigation_bar.compose', defaultMessage: 'Compose new post' },
logoutMessage: { id: 'confirmations.logout.message', defaultMessage: 'Are you sure you want to log out?' },
logoutConfirm: { id: 'confirmations.logout.confirm', defaultMessage: 'Log out' },
}); });
const mapStateToProps = (state, ownProps) => ({ const mapStateToProps = (state, ownProps) => ({
@ -72,20 +69,12 @@ class Compose extends PureComponent {
} }
handleLogoutClick = e => { handleLogoutClick = e => {
const { dispatch, intl } = this.props; const { dispatch } = this.props;
e.preventDefault(); e.preventDefault();
e.stopPropagation(); e.stopPropagation();
dispatch(openModal({ dispatch(openModal({ modalType: 'CONFIRM_LOG_OUT' }));
modalType: 'CONFIRM',
modalProps: {
message: intl.formatMessage(messages.logoutMessage),
confirm: intl.formatMessage(messages.logoutConfirm),
closeWhenConfirm: false,
onConfirm: () => logOut(),
},
}));
return false; return false;
}; };

View file

@ -36,8 +36,6 @@ const messages = defineMessages({
delete: { id: 'conversation.delete', defaultMessage: 'Delete conversation' }, delete: { id: 'conversation.delete', defaultMessage: 'Delete conversation' },
muteConversation: { id: 'status.mute_conversation', defaultMessage: 'Mute conversation' }, muteConversation: { id: 'status.mute_conversation', defaultMessage: 'Mute conversation' },
unmuteConversation: { id: 'status.unmute_conversation', defaultMessage: 'Unmute conversation' }, unmuteConversation: { id: 'status.unmute_conversation', defaultMessage: 'Unmute conversation' },
replyConfirm: { id: 'confirmations.reply.confirm', defaultMessage: 'Reply' },
replyMessage: { id: 'confirmations.reply.message', defaultMessage: 'Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?' },
}); });
const getAccounts = createSelector( const getAccounts = createSelector(
@ -103,19 +101,12 @@ export const Conversation = ({ conversation, scrollKey, onMoveUp, onMoveDown })
let state = getState(); let state = getState();
if (state.getIn(['compose', 'text']).trim().length !== 0) { if (state.getIn(['compose', 'text']).trim().length !== 0) {
dispatch(openModal({ dispatch(openModal({ modalType: 'CONFIRM_REPLY', modalProps: { status: lastStatus } }));
modalType: 'CONFIRM',
modalProps: {
message: intl.formatMessage(messages.replyMessage),
confirm: intl.formatMessage(messages.replyConfirm),
onConfirm: () => dispatch(replyCompose(lastStatus)),
},
}));
} else { } else {
dispatch(replyCompose(lastStatus)); dispatch(replyCompose(lastStatus));
} }
}); });
}, [dispatch, lastStatus, intl]); }, [dispatch, lastStatus]);
const handleDelete = useCallback(() => { const handleDelete = useCallback(() => {
dispatch(deleteConversation(id)); dispatch(deleteConversation(id));

View file

@ -8,7 +8,6 @@ import { Link } from 'react-router-dom';
import { import {
followAccount, followAccount,
unfollowAccount,
unblockAccount, unblockAccount,
unmuteAccount, unmuteAccount,
} from 'mastodon/actions/accounts'; } from 'mastodon/actions/accounts';
@ -29,20 +28,12 @@ const messages = defineMessages({
id: 'account.cancel_follow_request', id: 'account.cancel_follow_request',
defaultMessage: 'Withdraw follow request', defaultMessage: 'Withdraw follow request',
}, },
cancelFollowRequestConfirm: {
id: 'confirmations.cancel_follow_request.confirm',
defaultMessage: 'Withdraw request',
},
requested: { requested: {
id: 'account.requested', id: 'account.requested',
defaultMessage: 'Awaiting approval. Click to cancel follow request', defaultMessage: 'Awaiting approval. Click to cancel follow request',
}, },
unblock: { id: 'account.unblock_short', defaultMessage: 'Unblock' }, unblock: { id: 'account.unblock_short', defaultMessage: 'Unblock' },
unmute: { id: 'account.unmute_short', defaultMessage: 'Unmute' }, unmute: { id: 'account.unmute_short', defaultMessage: 'Unmute' },
unfollowConfirm: {
id: 'confirmations.unfollow.confirm',
defaultMessage: 'Unfollow',
},
edit_profile: { id: 'account.edit_profile', defaultMessage: 'Edit profile' }, edit_profile: { id: 'account.edit_profile', defaultMessage: 'Edit profile' },
}); });
@ -89,48 +80,17 @@ export const AccountCard: React.FC<{ accountId: string }> = ({ accountId }) => {
const handleFollow = useCallback(() => { const handleFollow = useCallback(() => {
if (!account) return; if (!account) return;
if (account.getIn(['relationship', 'following'])) { if (
account.getIn(['relationship', 'following']) ||
account.getIn(['relationship', 'requested'])
) {
dispatch( dispatch(
openModal({ openModal({ modalType: 'CONFIRM_UNFOLLOW', modalProps: { account } }),
modalType: 'CONFIRM',
modalProps: {
message: (
<FormattedMessage
id='confirmations.unfollow.message'
defaultMessage='Are you sure you want to unfollow {name}?'
values={{ name: <strong>@{account.get('acct')}</strong> }}
/>
),
confirm: intl.formatMessage(messages.unfollowConfirm),
onConfirm: () => {
dispatch(unfollowAccount(account.get('id')));
},
},
}),
);
} else if (account.getIn(['relationship', 'requested'])) {
dispatch(
openModal({
modalType: 'CONFIRM',
modalProps: {
message: (
<FormattedMessage
id='confirmations.cancel_follow_request.message'
defaultMessage='Are you sure you want to withdraw your request to follow {name}?'
values={{ name: <strong>@{account.get('acct')}</strong> }}
/>
),
confirm: intl.formatMessage(messages.cancelFollowRequestConfirm),
onConfirm: () => {
dispatch(unfollowAccount(account.get('id')));
},
},
}),
); );
} else { } else {
dispatch(followAccount(account.get('id'))); dispatch(followAccount(account.get('id')));
} }
}, [account, dispatch, intl]); }, [account, dispatch]);
const handleBlock = useCallback(() => { const handleBlock = useCallback(() => {
if (account?.relationship?.blocking) { if (account?.relationship?.blocking) {

View file

@ -11,16 +11,15 @@ import { connect } from 'react-redux';
import { debounce } from 'lodash'; import { debounce } from 'lodash';
import BlockIcon from '@/material-icons/400-24px/block-fill.svg?react'; import BlockIcon from '@/material-icons/400-24px/block-fill.svg?react';
import { Domain } from 'mastodon/components/domain';
import { fetchDomainBlocks, expandDomainBlocks } from '../../actions/domain_blocks'; import { fetchDomainBlocks, expandDomainBlocks } from '../../actions/domain_blocks';
import { LoadingIndicator } from '../../components/loading_indicator'; import { LoadingIndicator } from '../../components/loading_indicator';
import ScrollableList from '../../components/scrollable_list'; import ScrollableList from '../../components/scrollable_list';
import DomainContainer from '../../containers/domain_container';
import Column from '../ui/components/column'; import Column from '../ui/components/column';
const messages = defineMessages({ const messages = defineMessages({
heading: { id: 'column.domain_blocks', defaultMessage: 'Blocked domains' }, heading: { id: 'column.domain_blocks', defaultMessage: 'Blocked domains' },
unblockDomain: { id: 'account.unblock_domain', defaultMessage: 'Unblock domain {domain}' },
}); });
const mapStateToProps = state => ({ const mapStateToProps = state => ({
@ -70,7 +69,7 @@ class Blocks extends ImmutablePureComponent {
bindToDocument={!multiColumn} bindToDocument={!multiColumn}
> >
{domains.map(domain => {domains.map(domain =>
<DomainContainer key={domain} domain={domain} />, <Domain key={domain} domain={domain} />,
)} )}
</ScrollableList> </ScrollableList>

View file

@ -15,7 +15,7 @@ import DeleteIcon from '@/material-icons/400-24px/delete.svg?react';
import EditIcon from '@/material-icons/400-24px/edit.svg?react'; import EditIcon from '@/material-icons/400-24px/edit.svg?react';
import ListAltIcon from '@/material-icons/400-24px/list_alt.svg?react'; import ListAltIcon from '@/material-icons/400-24px/list_alt.svg?react';
import { addColumn, removeColumn, moveColumn } from 'mastodon/actions/columns'; import { addColumn, removeColumn, moveColumn } from 'mastodon/actions/columns';
import { fetchList, deleteList, updateList } from 'mastodon/actions/lists'; import { fetchList, updateList } from 'mastodon/actions/lists';
import { openModal } from 'mastodon/actions/modal'; import { openModal } from 'mastodon/actions/modal';
import { connectListStream } from 'mastodon/actions/streaming'; import { connectListStream } from 'mastodon/actions/streaming';
import { expandListTimeline } from 'mastodon/actions/timelines'; import { expandListTimeline } from 'mastodon/actions/timelines';
@ -29,8 +29,6 @@ import StatusListContainer from 'mastodon/features/ui/containers/status_list_con
import { WithRouterPropTypes } from 'mastodon/utils/react_router'; import { WithRouterPropTypes } from 'mastodon/utils/react_router';
const messages = defineMessages({ const messages = defineMessages({
deleteMessage: { id: 'confirmations.delete_list.message', defaultMessage: 'Are you sure you want to permanently delete this list?' },
deleteConfirm: { id: 'confirmations.delete_list.confirm', defaultMessage: 'Delete' },
followed: { id: 'lists.replies_policy.followed', defaultMessage: 'Any followed user' }, followed: { id: 'lists.replies_policy.followed', defaultMessage: 'Any followed user' },
none: { id: 'lists.replies_policy.none', defaultMessage: 'No one' }, none: { id: 'lists.replies_policy.none', defaultMessage: 'No one' },
list: { id: 'lists.replies_policy.list', defaultMessage: 'Members of the list' }, list: { id: 'lists.replies_policy.list', defaultMessage: 'Members of the list' },
@ -125,25 +123,10 @@ class ListTimeline extends PureComponent {
}; };
handleDeleteClick = () => { handleDeleteClick = () => {
const { dispatch, columnId, intl } = this.props; const { dispatch, columnId } = this.props;
const { id } = this.props.params; const { id } = this.props.params;
dispatch(openModal({ dispatch(openModal({ modalType: 'CONFIRM_DELETE_LIST', modalProps: { listId: id, columnId } }));
modalType: 'CONFIRM',
modalProps: {
message: intl.formatMessage(messages.deleteMessage),
confirm: intl.formatMessage(messages.deleteConfirm),
onConfirm: () => {
dispatch(deleteList(id));
if (columnId) {
dispatch(removeColumn(columnId));
} else {
this.props.history.push('/lists');
}
},
},
}));
}; };
handleRepliesPolicyChange = ({ target }) => { handleRepliesPolicyChange = ({ target }) => {

View file

@ -49,21 +49,14 @@ export const FilteredNotificationsBanner: React.FC = () => {
<span> <span>
<FormattedMessage <FormattedMessage
id='filtered_notifications_banner.pending_requests' id='filtered_notifications_banner.pending_requests'
defaultMessage='Notifications from {count, plural, =0 {no one} one {one person} other {# people}} you may know' defaultMessage='From {count, plural, =0 {no one} one {one person} other {# people}} you may know'
values={{ count: policy.summary.pending_requests_count }} values={{ count: policy.summary.pending_requests_count }}
/> />
</span> </span>
</div> </div>
<div className='filtered-notifications-banner__badge'> <div className='filtered-notifications-banner__badge'>
<div className='filtered-notifications-banner__badge__badge'> {toCappedNumber(policy.summary.pending_notifications_count)}
{toCappedNumber(policy.summary.pending_notifications_count)}
</div>
<FormattedMessage
id='filtered_notifications_banner.mentions'
defaultMessage='{count, plural, one {mention} other {mentions}}'
values={{ count: policy.summary.pending_notifications_count }}
/>
</div> </div>
</Link> </Link>
); );

View file

@ -2,11 +2,10 @@ import { defineMessages, injectIntl } from 'react-intl';
import { connect } from 'react-redux'; import { connect } from 'react-redux';
import { openModal } from 'mastodon/actions/modal';
import { initializeNotifications } from 'mastodon/actions/notifications_migration'; import { initializeNotifications } from 'mastodon/actions/notifications_migration';
import { showAlert } from '../../../actions/alerts'; import { showAlert } from '../../../actions/alerts';
import { openModal } from '../../../actions/modal';
import { clearNotifications } from '../../../actions/notification_groups';
import { updateNotificationsPolicy } from '../../../actions/notification_policies'; import { updateNotificationsPolicy } from '../../../actions/notification_policies';
import { setFilter, requestBrowserPermission } from '../../../actions/notifications'; import { setFilter, requestBrowserPermission } from '../../../actions/notifications';
import { changeAlerts as changePushNotifications } from '../../../actions/push_notifications'; import { changeAlerts as changePushNotifications } from '../../../actions/push_notifications';
@ -14,8 +13,6 @@ import { changeSetting } from '../../../actions/settings';
import ColumnSettings from '../components/column_settings'; import ColumnSettings from '../components/column_settings';
const messages = defineMessages({ const messages = defineMessages({
clearMessage: { id: 'notifications.clear_confirmation', defaultMessage: 'Are you sure you want to permanently clear all your notifications?' },
clearConfirm: { id: 'notifications.clear', defaultMessage: 'Clear notifications' },
permissionDenied: { id: 'notifications.permission_denied_alert', defaultMessage: 'Desktop notifications can\'t be enabled, as browser permission has been denied before' }, permissionDenied: { id: 'notifications.permission_denied_alert', defaultMessage: 'Desktop notifications can\'t be enabled, as browser permission has been denied before' },
}); });
@ -31,7 +28,7 @@ const mapStateToProps = state => ({
notificationPolicy: state.notificationPolicy, notificationPolicy: state.notificationPolicy,
}); });
const mapDispatchToProps = (dispatch, { intl }) => ({ const mapDispatchToProps = (dispatch) => ({
onChange (path, checked) { onChange (path, checked) {
if (path[0] === 'push') { if (path[0] === 'push') {
@ -70,14 +67,7 @@ const mapDispatchToProps = (dispatch, { intl }) => ({
}, },
onClear () { onClear () {
dispatch(openModal({ dispatch(openModal({ modalType: 'CONFIRM_CLEAR_NOTIFICATIONS' }));
modalType: 'CONFIRM',
modalProps: {
message: intl.formatMessage(messages.clearMessage),
confirm: intl.formatMessage(messages.clearConfirm),
onConfirm: () => dispatch(clearNotifications()),
},
}));
}, },
onRequestNotificationPermission () { onRequestNotificationPermission () {

View file

@ -7,9 +7,9 @@ import { Helmet } from 'react-helmet';
import { useSelector, useDispatch } from 'react-redux'; import { useSelector, useDispatch } from 'react-redux';
import DeleteIcon from '@/material-icons/400-24px/delete.svg?react';
import DoneIcon from '@/material-icons/400-24px/done.svg?react'; import DoneIcon from '@/material-icons/400-24px/done.svg?react';
import InventoryIcon from '@/material-icons/400-24px/inventory_2.svg?react'; import InventoryIcon from '@/material-icons/400-24px/inventory_2.svg?react';
import VolumeOffIcon from '@/material-icons/400-24px/volume_off.svg?react';
import { fetchNotificationRequest, fetchNotificationsForRequest, expandNotificationsForRequest, acceptNotificationRequest, dismissNotificationRequest } from 'mastodon/actions/notifications'; import { fetchNotificationRequest, fetchNotificationsForRequest, expandNotificationsForRequest, acceptNotificationRequest, dismissNotificationRequest } from 'mastodon/actions/notifications';
import Column from 'mastodon/components/column'; import Column from 'mastodon/components/column';
import ColumnHeader from 'mastodon/components/column_header'; import ColumnHeader from 'mastodon/components/column_header';
@ -101,7 +101,7 @@ export const NotificationRequest = ({ multiColumn, params: { id } }) => {
showBackButton showBackButton
extraButton={!removed && ( extraButton={!removed && (
<> <>
<IconButton className='column-header__button' iconComponent={VolumeOffIcon} onClick={handleDismiss} title={intl.formatMessage(messages.dismiss)} /> <IconButton className='column-header__button' iconComponent={DeleteIcon} onClick={handleDismiss} title={intl.formatMessage(messages.dismiss)} />
<IconButton className='column-header__button' iconComponent={DoneIcon} onClick={handleAccept} title={intl.formatMessage(messages.accept)} /> <IconButton className='column-header__button' iconComponent={DoneIcon} onClick={handleAccept} title={intl.formatMessage(messages.accept)} />
</> </>
)} )}

View file

@ -1,5 +1,6 @@
import { FormattedMessage } from 'react-intl'; import { FormattedMessage } from 'react-intl';
import AlternateEmailIcon from '@/material-icons/400-24px/alternate_email.svg?react';
import ReplyIcon from '@/material-icons/400-24px/reply-fill.svg?react'; import ReplyIcon from '@/material-icons/400-24px/reply-fill.svg?react';
import type { StatusVisibility } from 'mastodon/api_types/statuses'; import type { StatusVisibility } from 'mastodon/api_types/statuses';
import type { NotificationGroupMention } from 'mastodon/models/notification_group'; import type { NotificationGroupMention } from 'mastodon/models/notification_group';
@ -39,7 +40,7 @@ export const NotificationMention: React.FC<{
return ( return (
<NotificationWithStatus <NotificationWithStatus
type='mention' type='mention'
icon={ReplyIcon} icon={statusVisibility === 'direct' ? AlternateEmailIcon : ReplyIcon}
iconId='reply' iconId='reply'
accountIds={notification.sampleAccountIds} accountIds={notification.sampleAccountIds}
count={notification.notifications_count} count={notification.notifications_count}

View file

@ -31,8 +31,6 @@ const messages = defineMessages({
cancel_reblog_private: { id: 'status.cancel_reblog_private', defaultMessage: 'Unboost' }, cancel_reblog_private: { id: 'status.cancel_reblog_private', defaultMessage: 'Unboost' },
cannot_reblog: { id: 'status.cannot_reblog', defaultMessage: 'This post cannot be boosted' }, cannot_reblog: { id: 'status.cannot_reblog', defaultMessage: 'This post cannot be boosted' },
favourite: { id: 'status.favourite', defaultMessage: 'Favorite' }, favourite: { id: 'status.favourite', defaultMessage: 'Favorite' },
replyConfirm: { id: 'confirmations.reply.confirm', defaultMessage: 'Reply' },
replyMessage: { id: 'confirmations.reply.message', defaultMessage: 'Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?' },
open: { id: 'status.open', defaultMessage: 'Expand this status' }, open: { id: 'status.open', defaultMessage: 'Expand this status' },
}); });
@ -71,19 +69,13 @@ class Footer extends ImmutablePureComponent {
}; };
handleReplyClick = () => { handleReplyClick = () => {
const { dispatch, askReplyConfirmation, status, intl } = this.props; const { dispatch, askReplyConfirmation, status, onClose } = this.props;
const { signedIn } = this.props.identity; const { signedIn } = this.props.identity;
if (signedIn) { if (signedIn) {
if (askReplyConfirmation) { if (askReplyConfirmation) {
dispatch(openModal({ onClose(true);
modalType: 'CONFIRM', dispatch(openModal({ modalType: 'CONFIRM_REPLY', modalProps: { status } }));
modalProps: {
message: intl.formatMessage(messages.replyMessage),
confirm: intl.formatMessage(messages.replyConfirm),
onConfirm: this._performReply,
},
}));
} else { } else {
this._performReply(); this._performReply();
} }

View file

@ -1,4 +1,4 @@
import { defineMessages, injectIntl } from 'react-intl'; import { injectIntl } from 'react-intl';
import { connect } from 'react-redux'; import { connect } from 'react-redux';
@ -28,15 +28,6 @@ import { deleteModal } from '../../../initial_state';
import { makeGetStatus, makeGetPictureInPicture } from '../../../selectors'; import { makeGetStatus, makeGetPictureInPicture } from '../../../selectors';
import DetailedStatus from '../components/detailed_status'; import DetailedStatus from '../components/detailed_status';
const messages = defineMessages({
deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },
deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },
redraftConfirm: { id: 'confirmations.redraft.confirm', defaultMessage: 'Delete & redraft' },
redraftMessage: { id: 'confirmations.redraft.message', defaultMessage: 'Are you sure you want to delete this status and re-draft it? Favorites and boosts will be lost, and replies to the original post will be orphaned.' },
replyConfirm: { id: 'confirmations.reply.confirm', defaultMessage: 'Reply' },
replyMessage: { id: 'confirmations.reply.message', defaultMessage: 'Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?' },
});
const makeMapStateToProps = () => { const makeMapStateToProps = () => {
const getStatus = makeGetStatus(); const getStatus = makeGetStatus();
const getPictureInPicture = makeGetPictureInPicture(); const getPictureInPicture = makeGetPictureInPicture();
@ -50,20 +41,13 @@ const makeMapStateToProps = () => {
return mapStateToProps; return mapStateToProps;
}; };
const mapDispatchToProps = (dispatch, { intl }) => ({ const mapDispatchToProps = (dispatch) => ({
onReply (status) { onReply (status) {
dispatch((_, getState) => { dispatch((_, getState) => {
let state = getState(); let state = getState();
if (state.getIn(['compose', 'text']).trim().length !== 0) { if (state.getIn(['compose', 'text']).trim().length !== 0) {
dispatch(openModal({ dispatch(openModal({ modalType: 'CONFIRM_REPLY', modalProps: { status } }));
modalType: 'CONFIRM',
modalProps: {
message: intl.formatMessage(messages.replyMessage),
confirm: intl.formatMessage(messages.replyConfirm),
onConfirm: () => dispatch(replyCompose(status)),
},
}));
} else { } else {
dispatch(replyCompose(status)); dispatch(replyCompose(status));
} }
@ -100,14 +84,7 @@ const mapDispatchToProps = (dispatch, { intl }) => ({
if (!deleteModal) { if (!deleteModal) {
dispatch(deleteStatus(status.get('id'), withRedraft)); dispatch(deleteStatus(status.get('id'), withRedraft));
} else { } else {
dispatch(openModal({ dispatch(openModal({ modalType: 'CONFIRM_DELETE_STATUS', modalProps: { statusId: status.get('id'), withRedraft } }));
modalType: 'CONFIRM',
modalProps: {
message: intl.formatMessage(withRedraft ? messages.redraftMessage : messages.deleteMessage),
confirm: intl.formatMessage(withRedraft ? messages.redraftConfirm : messages.deleteConfirm),
onConfirm: () => dispatch(deleteStatus(status.get('id'), withRedraft)),
},
}));
} }
}, },

View file

@ -72,17 +72,10 @@ import DetailedStatus from './components/detailed_status';
const messages = defineMessages({ const messages = defineMessages({
deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },
deleteMessage: { id: 'confirmations.delete.message', defaultMessage: 'Are you sure you want to delete this status?' },
redraftConfirm: { id: 'confirmations.redraft.confirm', defaultMessage: 'Delete & redraft' },
redraftMessage: { id: 'confirmations.redraft.message', defaultMessage: 'Are you sure you want to delete this status and re-draft it? Favorites and boosts will be lost, and replies to the original post will be orphaned.' },
revealAll: { id: 'status.show_more_all', defaultMessage: 'Show more for all' }, revealAll: { id: 'status.show_more_all', defaultMessage: 'Show more for all' },
hideAll: { id: 'status.show_less_all', defaultMessage: 'Show less for all' }, hideAll: { id: 'status.show_less_all', defaultMessage: 'Show less for all' },
statusTitleWithAttachments: { id: 'status.title.with_attachments', defaultMessage: '{user} posted {attachmentCount, plural, one {an attachment} other {# attachments}}' }, statusTitleWithAttachments: { id: 'status.title.with_attachments', defaultMessage: '{user} posted {attachmentCount, plural, one {an attachment} other {# attachments}}' },
detailedStatus: { id: 'status.detailed_status', defaultMessage: 'Detailed conversation view' }, detailedStatus: { id: 'status.detailed_status', defaultMessage: 'Detailed conversation view' },
replyConfirm: { id: 'confirmations.reply.confirm', defaultMessage: 'Reply' },
replyMessage: { id: 'confirmations.reply.message', defaultMessage: 'Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?' },
blockDomainConfirm: { id: 'confirmations.domain_block.confirm', defaultMessage: 'Block entire domain' },
}); });
const makeMapStateToProps = () => { const makeMapStateToProps = () => {
@ -264,19 +257,12 @@ class Status extends ImmutablePureComponent {
}; };
handleReplyClick = (status) => { handleReplyClick = (status) => {
const { askReplyConfirmation, dispatch, intl } = this.props; const { askReplyConfirmation, dispatch } = this.props;
const { signedIn } = this.props.identity; const { signedIn } = this.props.identity;
if (signedIn) { if (signedIn) {
if (askReplyConfirmation) { if (askReplyConfirmation) {
dispatch(openModal({ dispatch(openModal({ modalType: 'CONFIRM_REPLY', modalProps: { status } }));
modalType: 'CONFIRM',
modalProps: {
message: intl.formatMessage(messages.replyMessage),
confirm: intl.formatMessage(messages.replyConfirm),
onConfirm: () => dispatch(replyCompose(status)),
},
}));
} else { } else {
dispatch(replyCompose(status)); dispatch(replyCompose(status));
} }
@ -319,24 +305,23 @@ class Status extends ImmutablePureComponent {
}; };
handleDeleteClick = (status, withRedraft = false) => { handleDeleteClick = (status, withRedraft = false) => {
const { dispatch, intl } = this.props; const { dispatch } = this.props;
if (!deleteModal) { if (!deleteModal) {
dispatch(deleteStatus(status.get('id'), withRedraft)); dispatch(deleteStatus(status.get('id'), withRedraft));
} else { } else {
dispatch(openModal({ dispatch(openModal({ modalType: 'CONFIRM_DELETE_STATUS', modalProps: { statusId: status.get('id'), withRedraft } }));
modalType: 'CONFIRM',
modalProps: {
message: intl.formatMessage(withRedraft ? messages.redraftMessage : messages.deleteMessage),
confirm: intl.formatMessage(withRedraft ? messages.redraftConfirm : messages.deleteConfirm),
onConfirm: () => dispatch(deleteStatus(status.get('id'), withRedraft)),
},
}));
} }
}; };
handleEditClick = (status) => { handleEditClick = (status) => {
this.props.dispatch(editStatus(status.get('id'))); const { dispatch, askReplyConfirmation } = this.props;
if (askReplyConfirmation) {
dispatch(openModal({ modalType: 'CONFIRM_EDIT_STATUS', modalProps: { statusId: status.get('id') } }));
} else {
dispatch(editStatus(status.get('id')));
}
}; };
handleDirectClick = (account) => { handleDirectClick = (account) => {

View file

@ -1,65 +0,0 @@
import PropTypes from 'prop-types';
import { PureComponent } from 'react';
import { injectIntl, FormattedMessage } from 'react-intl';
import { Button } from '../../../components/button';
class ConfirmationModal extends PureComponent {
static propTypes = {
message: PropTypes.node.isRequired,
confirm: PropTypes.string.isRequired,
onClose: PropTypes.func.isRequired,
onConfirm: PropTypes.func.isRequired,
secondary: PropTypes.string,
onSecondary: PropTypes.func,
closeWhenConfirm: PropTypes.bool,
intl: PropTypes.object.isRequired,
};
static defaultProps = {
closeWhenConfirm: true,
};
handleClick = () => {
if (this.props.closeWhenConfirm) {
this.props.onClose();
}
this.props.onConfirm();
};
handleSecondary = () => {
this.props.onClose();
this.props.onSecondary();
};
handleCancel = () => {
this.props.onClose();
};
render () {
const { message, confirm, secondary } = this.props;
return (
<div className='modal-root__modal confirmation-modal'>
<div className='confirmation-modal__container'>
{message}
</div>
<div className='confirmation-modal__action-bar'>
<Button onClick={this.handleCancel} className='confirmation-modal__cancel-button'>
<FormattedMessage id='confirmation_modal.cancel' defaultMessage='Cancel' />
</Button>
{secondary !== undefined && (
<Button text={secondary} onClick={this.handleSecondary} className='confirmation-modal__secondary-button' />
)}
<Button text={confirm} onClick={this.handleClick} autoFocus />
</div>
</div>
);
}
}
export default injectIntl(ConfirmationModal);

View file

@ -0,0 +1,46 @@
import { useCallback } from 'react';
import { defineMessages, useIntl } from 'react-intl';
import { clearNotifications } from 'mastodon/actions/notification_groups';
import { useAppDispatch } from 'mastodon/store';
import type { BaseConfirmationModalProps } from './confirmation_modal';
import { ConfirmationModal } from './confirmation_modal';
const messages = defineMessages({
clearTitle: {
id: 'notifications.clear_title',
defaultMessage: 'Clear notifications?',
},
clearMessage: {
id: 'notifications.clear_confirmation',
defaultMessage:
'Are you sure you want to permanently clear all your notifications?',
},
clearConfirm: {
id: 'notifications.clear',
defaultMessage: 'Clear notifications',
},
});
export const ConfirmClearNotificationsModal: React.FC<
BaseConfirmationModalProps
> = ({ onClose }) => {
const intl = useIntl();
const dispatch = useAppDispatch();
const onConfirm = useCallback(() => {
void dispatch(clearNotifications());
}, [dispatch]);
return (
<ConfirmationModal
title={intl.formatMessage(messages.clearTitle)}
message={intl.formatMessage(messages.clearMessage)}
confirm={intl.formatMessage(messages.clearConfirm)}
onConfirm={onConfirm}
onClose={onClose}
/>
);
};

View file

@ -0,0 +1,79 @@
import { useCallback } from 'react';
import { FormattedMessage } from 'react-intl';
import { Button } from 'mastodon/components/button';
export interface BaseConfirmationModalProps {
onClose: () => void;
}
export const ConfirmationModal: React.FC<
{
title: React.ReactNode;
message: React.ReactNode;
confirm: React.ReactNode;
secondary?: React.ReactNode;
onSecondary?: () => void;
onConfirm: () => void;
closeWhenConfirm?: boolean;
} & BaseConfirmationModalProps
> = ({
title,
message,
confirm,
onClose,
onConfirm,
secondary,
onSecondary,
closeWhenConfirm = true,
}) => {
const handleClick = useCallback(() => {
if (closeWhenConfirm) {
onClose();
}
onConfirm();
}, [onClose, onConfirm, closeWhenConfirm]);
const handleSecondary = useCallback(() => {
onClose();
onSecondary?.();
}, [onClose, onSecondary]);
const handleCancel = useCallback(() => {
onClose();
}, [onClose]);
return (
<div className='modal-root__modal safety-action-modal'>
<div className='safety-action-modal__top'>
<div className='safety-action-modal__confirmation'>
<h1>{title}</h1>
<p>{message}</p>
</div>
</div>
<div className='safety-action-modal__bottom'>
<div className='safety-action-modal__actions'>
{secondary && (
<>
<Button onClick={handleSecondary}>{secondary}</Button>
<div className='spacer' />
</>
)}
<button onClick={handleCancel} className='link-button'>
<FormattedMessage
id='confirmation_modal.cancel'
defaultMessage='Cancel'
/>
</button>
<Button onClick={handleClick}>{confirm}</Button>
</div>
</div>
</div>
);
};

View file

@ -0,0 +1,58 @@
import { useCallback } from 'react';
import { defineMessages, useIntl } from 'react-intl';
import { useHistory } from 'react-router';
import { removeColumn } from 'mastodon/actions/columns';
import { deleteList } from 'mastodon/actions/lists';
import { useAppDispatch } from 'mastodon/store';
import type { BaseConfirmationModalProps } from './confirmation_modal';
import { ConfirmationModal } from './confirmation_modal';
const messages = defineMessages({
deleteListTitle: {
id: 'confirmations.delete_list.title',
defaultMessage: 'Delete list?',
},
deleteListMessage: {
id: 'confirmations.delete_list.message',
defaultMessage: 'Are you sure you want to permanently delete this list?',
},
deleteListConfirm: {
id: 'confirmations.delete_list.confirm',
defaultMessage: 'Delete',
},
});
export const ConfirmDeleteListModal: React.FC<
{
listId: string;
columnId: string;
} & BaseConfirmationModalProps
> = ({ listId, columnId, onClose }) => {
const intl = useIntl();
const dispatch = useAppDispatch();
const history = useHistory();
const onConfirm = useCallback(() => {
dispatch(deleteList(listId));
if (columnId) {
dispatch(removeColumn(columnId));
} else {
history.push('/lists');
}
}, [dispatch, history, columnId, listId]);
return (
<ConfirmationModal
title={intl.formatMessage(messages.deleteListTitle)}
message={intl.formatMessage(messages.deleteListMessage)}
confirm={intl.formatMessage(messages.deleteListConfirm)}
onConfirm={onConfirm}
onClose={onClose}
/>
);
};

View file

@ -0,0 +1,67 @@
import { useCallback } from 'react';
import { defineMessages, useIntl } from 'react-intl';
import { deleteStatus } from 'mastodon/actions/statuses';
import { useAppDispatch } from 'mastodon/store';
import type { BaseConfirmationModalProps } from './confirmation_modal';
import { ConfirmationModal } from './confirmation_modal';
const messages = defineMessages({
deleteAndRedraftTitle: {
id: 'confirmations.redraft.title',
defaultMessage: 'Delete & redraft post?',
},
deleteAndRedraftMessage: {
id: 'confirmations.redraft.message',
defaultMessage:
'Are you sure you want to delete this status and re-draft it? Favorites and boosts will be lost, and replies to the original post will be orphaned.',
},
deleteAndRedraftConfirm: {
id: 'confirmations.redraft.confirm',
defaultMessage: 'Delete & redraft',
},
deleteTitle: {
id: 'confirmations.delete.title',
defaultMessage: 'Delete post?',
},
deleteMessage: {
id: 'confirmations.delete.message',
defaultMessage: 'Are you sure you want to delete this status?',
},
deleteConfirm: {
id: 'confirmations.delete.confirm',
defaultMessage: 'Delete',
},
});
export const ConfirmDeleteStatusModal: React.FC<
{
statusId: string;
withRedraft: boolean;
} & BaseConfirmationModalProps
> = ({ statusId, withRedraft, onClose }) => {
const intl = useIntl();
const dispatch = useAppDispatch();
const onConfirm = useCallback(() => {
dispatch(deleteStatus(statusId, withRedraft));
}, [dispatch, statusId, withRedraft]);
return (
<ConfirmationModal
title={intl.formatMessage(
withRedraft ? messages.deleteAndRedraftTitle : messages.deleteTitle,
)}
message={intl.formatMessage(
withRedraft ? messages.deleteAndRedraftMessage : messages.deleteMessage,
)}
confirm={intl.formatMessage(
withRedraft ? messages.deleteAndRedraftConfirm : messages.deleteConfirm,
)}
onConfirm={onConfirm}
onClose={onClose}
/>
);
};

View file

@ -0,0 +1,45 @@
import { useCallback } from 'react';
import { defineMessages, useIntl } from 'react-intl';
import { editStatus } from 'mastodon/actions/statuses';
import { useAppDispatch } from 'mastodon/store';
import type { BaseConfirmationModalProps } from './confirmation_modal';
import { ConfirmationModal } from './confirmation_modal';
const messages = defineMessages({
editTitle: {
id: 'confirmations.edit.title',
defaultMessage: 'Overwrite post?',
},
editConfirm: { id: 'confirmations.edit.confirm', defaultMessage: 'Edit' },
editMessage: {
id: 'confirmations.edit.message',
defaultMessage:
'Editing now will overwrite the message you are currently composing. Are you sure you want to proceed?',
},
});
export const ConfirmEditStatusModal: React.FC<
{
statusId: string;
} & BaseConfirmationModalProps
> = ({ statusId, onClose }) => {
const intl = useIntl();
const dispatch = useAppDispatch();
const onConfirm = useCallback(() => {
dispatch(editStatus(statusId));
}, [dispatch, statusId]);
return (
<ConfirmationModal
title={intl.formatMessage(messages.editTitle)}
message={intl.formatMessage(messages.editMessage)}
confirm={intl.formatMessage(messages.editConfirm)}
onConfirm={onConfirm}
onClose={onClose}
/>
);
};

View file

@ -0,0 +1,8 @@
export { ConfirmationModal } from './confirmation_modal';
export { ConfirmDeleteStatusModal } from './delete_status';
export { ConfirmDeleteListModal } from './delete_list';
export { ConfirmReplyModal } from './reply';
export { ConfirmEditStatusModal } from './edit_status';
export { ConfirmUnfollowModal } from './unfollow';
export { ConfirmClearNotificationsModal } from './clear_notifications';
export { ConfirmLogOutModal } from './log_out';

View file

@ -0,0 +1,40 @@
import { useCallback } from 'react';
import { defineMessages, useIntl } from 'react-intl';
import { logOut } from 'mastodon/utils/log_out';
import type { BaseConfirmationModalProps } from './confirmation_modal';
import { ConfirmationModal } from './confirmation_modal';
const messages = defineMessages({
logoutTitle: { id: 'confirmations.logout.title', defaultMessage: 'Log out?' },
logoutMessage: {
id: 'confirmations.logout.message',
defaultMessage: 'Are you sure you want to log out?',
},
logoutConfirm: {
id: 'confirmations.logout.confirm',
defaultMessage: 'Log out',
},
});
export const ConfirmLogOutModal: React.FC<BaseConfirmationModalProps> = ({
onClose,
}) => {
const intl = useIntl();
const onConfirm = useCallback(() => {
logOut();
}, []);
return (
<ConfirmationModal
title={intl.formatMessage(messages.logoutTitle)}
message={intl.formatMessage(messages.logoutMessage)}
confirm={intl.formatMessage(messages.logoutConfirm)}
onConfirm={onConfirm}
onClose={onClose}
/>
);
};

View file

@ -0,0 +1,46 @@
import { useCallback } from 'react';
import { defineMessages, useIntl } from 'react-intl';
import { replyCompose } from 'mastodon/actions/compose';
import type { Status } from 'mastodon/models/status';
import { useAppDispatch } from 'mastodon/store';
import type { BaseConfirmationModalProps } from './confirmation_modal';
import { ConfirmationModal } from './confirmation_modal';
const messages = defineMessages({
replyTitle: {
id: 'confirmations.reply.title',
defaultMessage: 'Overwrite post?',
},
replyConfirm: { id: 'confirmations.reply.confirm', defaultMessage: 'Reply' },
replyMessage: {
id: 'confirmations.reply.message',
defaultMessage:
'Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?',
},
});
export const ConfirmReplyModal: React.FC<
{
status: Status;
} & BaseConfirmationModalProps
> = ({ status, onClose }) => {
const intl = useIntl();
const dispatch = useAppDispatch();
const onConfirm = useCallback(() => {
dispatch(replyCompose(status));
}, [dispatch, status]);
return (
<ConfirmationModal
title={intl.formatMessage(messages.replyTitle)}
message={intl.formatMessage(messages.replyMessage)}
confirm={intl.formatMessage(messages.replyConfirm)}
onConfirm={onConfirm}
onClose={onClose}
/>
);
};

View file

@ -0,0 +1,50 @@
import { useCallback } from 'react';
import { defineMessages, FormattedMessage, useIntl } from 'react-intl';
import { unfollowAccount } from 'mastodon/actions/accounts';
import type { Account } from 'mastodon/models/account';
import { useAppDispatch } from 'mastodon/store';
import type { BaseConfirmationModalProps } from './confirmation_modal';
import { ConfirmationModal } from './confirmation_modal';
const messages = defineMessages({
unfollowTitle: {
id: 'confirmations.unfollow.title',
defaultMessage: 'Unfollow user?',
},
unfollowConfirm: {
id: 'confirmations.unfollow.confirm',
defaultMessage: 'Unfollow',
},
});
export const ConfirmUnfollowModal: React.FC<
{
account: Account;
} & BaseConfirmationModalProps
> = ({ account, onClose }) => {
const intl = useIntl();
const dispatch = useAppDispatch();
const onConfirm = useCallback(() => {
dispatch(unfollowAccount(account.id));
}, [dispatch, account.id]);
return (
<ConfirmationModal
title={intl.formatMessage(messages.unfollowTitle)}
message={
<FormattedMessage
id='confirmations.unfollow.message'
defaultMessage='Are you sure you want to unfollow {name}?'
values={{ name: <strong>@{account.acct}</strong> }}
/>
}
confirm={intl.formatMessage(messages.unfollowConfirm)}
onConfirm={onConfirm}
onClose={onClose}
/>
);
};

View file

@ -1,7 +1,7 @@
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import { PureComponent } from 'react'; import { PureComponent } from 'react';
import { FormattedMessage, defineMessages, injectIntl } from 'react-intl'; import { FormattedMessage, injectIntl } from 'react-intl';
import { Link } from 'react-router-dom'; import { Link } from 'react-router-dom';
@ -9,29 +9,15 @@ import { connect } from 'react-redux';
import { openModal } from 'mastodon/actions/modal'; import { openModal } from 'mastodon/actions/modal';
import { disabledAccountId, movedToAccountId, domain } from 'mastodon/initial_state'; import { disabledAccountId, movedToAccountId, domain } from 'mastodon/initial_state';
import { logOut } from 'mastodon/utils/log_out';
const messages = defineMessages({
logoutMessage: { id: 'confirmations.logout.message', defaultMessage: 'Are you sure you want to log out?' },
logoutConfirm: { id: 'confirmations.logout.confirm', defaultMessage: 'Log out' },
});
const mapStateToProps = (state) => ({ const mapStateToProps = (state) => ({
disabledAcct: state.getIn(['accounts', disabledAccountId, 'acct']), disabledAcct: state.getIn(['accounts', disabledAccountId, 'acct']),
movedToAcct: movedToAccountId ? state.getIn(['accounts', movedToAccountId, 'acct']) : undefined, movedToAcct: movedToAccountId ? state.getIn(['accounts', movedToAccountId, 'acct']) : undefined,
}); });
const mapDispatchToProps = (dispatch, { intl }) => ({ const mapDispatchToProps = (dispatch) => ({
onLogout () { onLogout () {
dispatch(openModal({ dispatch(openModal({ modalType: 'CONFIRM_LOG_OUT' }));
modalType: 'CONFIRM',
modalProps: {
message: intl.formatMessage(messages.logoutMessage),
confirm: intl.formatMessage(messages.logoutConfirm),
closeWhenConfirm: false,
onConfirm: () => logOut(),
},
}));
}, },
}); });

View file

@ -1,7 +1,7 @@
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import { PureComponent } from 'react'; import { PureComponent } from 'react';
import { FormattedMessage, defineMessages, injectIntl } from 'react-intl'; import { FormattedMessage, injectIntl } from 'react-intl';
import { Link } from 'react-router-dom'; import { Link } from 'react-router-dom';
@ -11,24 +11,11 @@ import { openModal } from 'mastodon/actions/modal';
import { identityContextPropShape, withIdentity } from 'mastodon/identity_context'; import { identityContextPropShape, withIdentity } from 'mastodon/identity_context';
import { domain, version, source_url, statusPageUrl, profile_directory as profileDirectory } from 'mastodon/initial_state'; import { domain, version, source_url, statusPageUrl, profile_directory as profileDirectory } from 'mastodon/initial_state';
import { PERMISSION_INVITE_USERS } from 'mastodon/permissions'; import { PERMISSION_INVITE_USERS } from 'mastodon/permissions';
import { logOut } from 'mastodon/utils/log_out';
const messages = defineMessages({ const mapDispatchToProps = (dispatch) => ({
logoutMessage: { id: 'confirmations.logout.message', defaultMessage: 'Are you sure you want to log out?' },
logoutConfirm: { id: 'confirmations.logout.confirm', defaultMessage: 'Log out' },
});
const mapDispatchToProps = (dispatch, { intl }) => ({
onLogout () { onLogout () {
dispatch(openModal({ dispatch(openModal({ modalType: 'CONFIRM_LOG_OUT' }));
modalType: 'CONFIRM',
modalProps: {
message: intl.formatMessage(messages.logoutMessage),
confirm: intl.formatMessage(messages.logoutConfirm),
closeWhenConfirm: false,
onConfirm: () => logOut(),
},
}));
}, },
}); });

View file

@ -26,7 +26,16 @@ import ActionsModal from './actions_modal';
import AudioModal from './audio_modal'; import AudioModal from './audio_modal';
import { BoostModal } from './boost_modal'; import { BoostModal } from './boost_modal';
import BundleModalError from './bundle_modal_error'; import BundleModalError from './bundle_modal_error';
import ConfirmationModal from './confirmation_modal'; import {
ConfirmationModal,
ConfirmDeleteStatusModal,
ConfirmDeleteListModal,
ConfirmReplyModal,
ConfirmEditStatusModal,
ConfirmUnfollowModal,
ConfirmClearNotificationsModal,
ConfirmLogOutModal,
} from './confirmation_modals';
import FocalPointModal from './focal_point_modal'; import FocalPointModal from './focal_point_modal';
import ImageModal from './image_modal'; import ImageModal from './image_modal';
import MediaModal from './media_modal'; import MediaModal from './media_modal';
@ -40,6 +49,13 @@ export const MODAL_COMPONENTS = {
'IMAGE': () => Promise.resolve({ default: ImageModal }), 'IMAGE': () => Promise.resolve({ default: ImageModal }),
'BOOST': () => Promise.resolve({ default: BoostModal }), 'BOOST': () => Promise.resolve({ default: BoostModal }),
'CONFIRM': () => Promise.resolve({ default: ConfirmationModal }), 'CONFIRM': () => Promise.resolve({ default: ConfirmationModal }),
'CONFIRM_DELETE_STATUS': () => Promise.resolve({ default: ConfirmDeleteStatusModal }),
'CONFIRM_DELETE_LIST': () => Promise.resolve({ default: ConfirmDeleteListModal }),
'CONFIRM_REPLY': () => Promise.resolve({ default: ConfirmReplyModal }),
'CONFIRM_EDIT_STATUS': () => Promise.resolve({ default: ConfirmEditStatusModal }),
'CONFIRM_UNFOLLOW': () => Promise.resolve({ default: ConfirmUnfollowModal }),
'CONFIRM_CLEAR_NOTIFICATIONS': () => Promise.resolve({ default: ConfirmClearNotificationsModal }),
'CONFIRM_LOG_OUT': () => Promise.resolve({ default: ConfirmLogOutModal }),
'MUTE': MuteModal, 'MUTE': MuteModal,
'BLOCK': BlockModal, 'BLOCK': BlockModal,
'DOMAIN_BLOCK': DomainBlockModal, 'DOMAIN_BLOCK': DomainBlockModal,

View file

@ -119,8 +119,6 @@
"compose_form.spoiler.unmarked": "Voeg inhoudswaarskuwing by", "compose_form.spoiler.unmarked": "Voeg inhoudswaarskuwing by",
"confirmation_modal.cancel": "Kanselleer", "confirmation_modal.cancel": "Kanselleer",
"confirmations.block.confirm": "Blokkeer", "confirmations.block.confirm": "Blokkeer",
"confirmations.cancel_follow_request.confirm": "Herroep versoek",
"confirmations.cancel_follow_request.message": "Is jy seker jy wil jou versoek om {name} te volg, terugtrek?",
"confirmations.delete.confirm": "Wis uit", "confirmations.delete.confirm": "Wis uit",
"confirmations.delete.message": "Is jy seker jy wil hierdie plasing uitvee?", "confirmations.delete.message": "Is jy seker jy wil hierdie plasing uitvee?",
"confirmations.delete_list.confirm": "Wis uit", "confirmations.delete_list.confirm": "Wis uit",

View file

@ -130,15 +130,12 @@
"compose_form.spoiler.unmarked": "Texto no amagau", "compose_form.spoiler.unmarked": "Texto no amagau",
"confirmation_modal.cancel": "Cancelar", "confirmation_modal.cancel": "Cancelar",
"confirmations.block.confirm": "Blocar", "confirmations.block.confirm": "Blocar",
"confirmations.cancel_follow_request.confirm": "Retirar solicitut",
"confirmations.cancel_follow_request.message": "Yes seguro que deseyas retirar la tuya solicitut pa seguir a {name}?",
"confirmations.delete.confirm": "Eliminar", "confirmations.delete.confirm": "Eliminar",
"confirmations.delete.message": "Yes seguro que quiers borrar esta publicación?", "confirmations.delete.message": "Yes seguro que quiers borrar esta publicación?",
"confirmations.delete_list.confirm": "Eliminar", "confirmations.delete_list.confirm": "Eliminar",
"confirmations.delete_list.message": "Seguro que quiers borrar esta lista permanentment?", "confirmations.delete_list.message": "Seguro que quiers borrar esta lista permanentment?",
"confirmations.discard_edit_media.confirm": "Descartar", "confirmations.discard_edit_media.confirm": "Descartar",
"confirmations.discard_edit_media.message": "Tiens cambios sin alzar en a descripción u vista previa d'o fichero audiovisual, descartar-los de totz modos?", "confirmations.discard_edit_media.message": "Tiens cambios sin alzar en a descripción u vista previa d'o fichero audiovisual, descartar-los de totz modos?",
"confirmations.domain_block.message": "Yes seguro que quiers blocar lo dominio {domain} entero? En cheneral ye prou, y preferible, fer uns quantos bloqueyos y silenciaus concretos. Los tuyos seguidros d'ixe dominio serán eliminaus.",
"confirmations.logout.confirm": "Zarrar sesión", "confirmations.logout.confirm": "Zarrar sesión",
"confirmations.logout.message": "Yes seguro de querer zarrar la sesión?", "confirmations.logout.message": "Yes seguro de querer zarrar la sesión?",
"confirmations.mute.confirm": "Silenciar", "confirmations.mute.confirm": "Silenciar",

View file

@ -167,16 +167,12 @@
"compose_form.spoiler_placeholder": "تحذير المحتوى (اختياري)", "compose_form.spoiler_placeholder": "تحذير المحتوى (اختياري)",
"confirmation_modal.cancel": "إلغاء", "confirmation_modal.cancel": "إلغاء",
"confirmations.block.confirm": "حظر", "confirmations.block.confirm": "حظر",
"confirmations.cancel_follow_request.confirm": "إلغاء الطلب",
"confirmations.cancel_follow_request.message": "متأكد من أنك تريد إلغاء طلب متابعتك لـ {name}؟",
"confirmations.delete.confirm": "حذف", "confirmations.delete.confirm": "حذف",
"confirmations.delete.message": "هل أنتَ مُتأكدٌ أنك تُريدُ حَذفَ هذا المنشور؟", "confirmations.delete.message": "هل أنتَ مُتأكدٌ أنك تُريدُ حَذفَ هذا المنشور؟",
"confirmations.delete_list.confirm": "حذف", "confirmations.delete_list.confirm": "حذف",
"confirmations.delete_list.message": "هل أنتَ مُتأكدٌ أنكَ تُريدُ حَذفَ هذِهِ القائمة بشكلٍ دائم؟", "confirmations.delete_list.message": "هل أنتَ مُتأكدٌ أنكَ تُريدُ حَذفَ هذِهِ القائمة بشكلٍ دائم؟",
"confirmations.discard_edit_media.confirm": "تجاهل", "confirmations.discard_edit_media.confirm": "تجاهل",
"confirmations.discard_edit_media.message": "لديك تغييرات غير محفوظة لوصف الوسائط أو معاينتها، أتريد تجاهلها على أي حال؟", "confirmations.discard_edit_media.message": "لديك تغييرات غير محفوظة لوصف الوسائط أو معاينتها، أتريد تجاهلها على أي حال؟",
"confirmations.domain_block.confirm": "حظر الخادم",
"confirmations.domain_block.message": "متأكد من أنك تود حظر اسم النطاق {domain} بالكامل ؟ في غالب الأحيان يُستَحسَن كتم أو حظر بعض الحسابات بدلا من حظر نطاق بالكامل.\nلن تتمكن مِن رؤية محتوى هذا النطاق لا على خيوطك العمومية و لا في إشعاراتك. سوف يتم كذلك إزالة كافة متابعيك المنتمين إلى هذا النطاق.",
"confirmations.edit.confirm": "تعديل", "confirmations.edit.confirm": "تعديل",
"confirmations.edit.message": "التعديل في الحين سوف يُعيد كتابة الرسالة التي أنت بصدد تحريرها. متأكد من أنك تريد المواصلة؟", "confirmations.edit.message": "التعديل في الحين سوف يُعيد كتابة الرسالة التي أنت بصدد تحريرها. متأكد من أنك تريد المواصلة؟",
"confirmations.logout.confirm": "خروج", "confirmations.logout.confirm": "خروج",

View file

@ -111,8 +111,6 @@
"compose_form.publish_form": "Artículu nuevu", "compose_form.publish_form": "Artículu nuevu",
"confirmation_modal.cancel": "Encaboxar", "confirmation_modal.cancel": "Encaboxar",
"confirmations.block.confirm": "Bloquiar", "confirmations.block.confirm": "Bloquiar",
"confirmations.cancel_follow_request.confirm": "Retirala",
"confirmations.cancel_follow_request.message": "¿De xuru que quies retirar la solicitú pa siguir a {name}?",
"confirmations.delete.confirm": "Desaniciar", "confirmations.delete.confirm": "Desaniciar",
"confirmations.delete.message": "¿De xuru que quies desaniciar esti artículu?", "confirmations.delete.message": "¿De xuru que quies desaniciar esti artículu?",
"confirmations.delete_list.confirm": "Desaniciar", "confirmations.delete_list.confirm": "Desaniciar",

View file

@ -169,16 +169,12 @@
"compose_form.spoiler_placeholder": "Папярэджанне аб змесціве (неабавязкова)", "compose_form.spoiler_placeholder": "Папярэджанне аб змесціве (неабавязкова)",
"confirmation_modal.cancel": "Скасаваць", "confirmation_modal.cancel": "Скасаваць",
"confirmations.block.confirm": "Заблакіраваць", "confirmations.block.confirm": "Заблакіраваць",
"confirmations.cancel_follow_request.confirm": "Скасаваць запыт",
"confirmations.cancel_follow_request.message": "Сапраўды хочаце скасаваць свой запыт на падпіску на {name}?",
"confirmations.delete.confirm": "Выдаліць", "confirmations.delete.confirm": "Выдаліць",
"confirmations.delete.message": "Вы ўпэўненыя, што хочаце выдаліць гэты допіс?", "confirmations.delete.message": "Вы ўпэўненыя, што хочаце выдаліць гэты допіс?",
"confirmations.delete_list.confirm": "Выдаліць", "confirmations.delete_list.confirm": "Выдаліць",
"confirmations.delete_list.message": "Вы ўпэўненыя, што хочаце беззваротна выдаліць гэты чарнавік?", "confirmations.delete_list.message": "Вы ўпэўненыя, што хочаце беззваротна выдаліць гэты чарнавік?",
"confirmations.discard_edit_media.confirm": "Адмяніць", "confirmations.discard_edit_media.confirm": "Адмяніць",
"confirmations.discard_edit_media.message": "У вас ёсць незахаваныя змены ў апісанні або прэв'ю, усе роўна скасаваць іх?", "confirmations.discard_edit_media.message": "У вас ёсць незахаваныя змены ў апісанні або прэв'ю, усе роўна скасаваць іх?",
"confirmations.domain_block.confirm": "Заблакіраваць сервер",
"confirmations.domain_block.message": "Вы абсалютна дакладна ўпэўнены, што хочаце заблакіраваць {domain} зусім? У большасці выпадкаў, дастаткова некалькіх мэтавых блакіровак ці ігнараванняў. Вы перастанеце бачыць змесціва з гэтага дамену ва ўсіх стужках і апавяшчэннях. Вашы падпіскі з гэтага дамену будуць выдаленыя.",
"confirmations.edit.confirm": "Рэдагаваць", "confirmations.edit.confirm": "Рэдагаваць",
"confirmations.edit.message": "Калі вы зменіце зараз, гэта ператрэ паведамленне, якое вы пішаце. Вы ўпэўнены, што хочаце працягнуць?", "confirmations.edit.message": "Калі вы зменіце зараз, гэта ператрэ паведамленне, якое вы пішаце. Вы ўпэўнены, што хочаце працягнуць?",
"confirmations.logout.confirm": "Выйсці", "confirmations.logout.confirm": "Выйсці",

View file

@ -169,27 +169,30 @@
"compose_form.spoiler_placeholder": "Предупреждение за съдържание (по избор)", "compose_form.spoiler_placeholder": "Предупреждение за съдържание (по избор)",
"confirmation_modal.cancel": "Отказ", "confirmation_modal.cancel": "Отказ",
"confirmations.block.confirm": "Блокиране", "confirmations.block.confirm": "Блокиране",
"confirmations.cancel_follow_request.confirm": "Оттегляне на заявката",
"confirmations.cancel_follow_request.message": "Наистина ли искате да оттеглите заявката си за последване на {name}?",
"confirmations.delete.confirm": "Изтриване", "confirmations.delete.confirm": "Изтриване",
"confirmations.delete.message": "Наистина ли искате да изтриете публикацията?", "confirmations.delete.message": "Наистина ли искате да изтриете публикацията?",
"confirmations.delete.title": "Изтривате ли публикацията?",
"confirmations.delete_list.confirm": "Изтриване", "confirmations.delete_list.confirm": "Изтриване",
"confirmations.delete_list.message": "Наистина ли искате да изтриете завинаги списъка?", "confirmations.delete_list.message": "Наистина ли искате да изтриете завинаги списъка?",
"confirmations.delete_list.title": "Изтривате ли списъка?",
"confirmations.discard_edit_media.confirm": "Отхвърляне", "confirmations.discard_edit_media.confirm": "Отхвърляне",
"confirmations.discard_edit_media.message": "Не сте запазили промени на описанието или огледа на мултимедията, отхвърляте ли ги?", "confirmations.discard_edit_media.message": "Не сте запазили промени на описанието или огледа на мултимедията, отхвърляте ли ги?",
"confirmations.domain_block.confirm": "Блокиране на сървър",
"confirmations.domain_block.message": "Наистина ли искате да блокирате целия {domain}? В повечето случаи няколко блокирания или заглушавания са достатъчно и за предпочитане. Няма да виждате съдържание от домейна из публични часови оси или известията си. Вашите последователи от този домейн ще се премахнат.",
"confirmations.edit.confirm": "Редактиране", "confirmations.edit.confirm": "Редактиране",
"confirmations.edit.message": "Редактирането сега ще замени съобщението, което в момента съставяте. Сигурни ли сте, че искате да продължите?", "confirmations.edit.message": "Редактирането сега ще замени съобщението, което в момента съставяте. Сигурни ли сте, че искате да продължите?",
"confirmations.edit.title": "Презаписвате ли публикацията?",
"confirmations.logout.confirm": "Излизане", "confirmations.logout.confirm": "Излизане",
"confirmations.logout.message": "Наистина ли искате да излезете?", "confirmations.logout.message": "Наистина ли искате да излезете?",
"confirmations.logout.title": "Излизате ли от системата?",
"confirmations.mute.confirm": "Заглушаване", "confirmations.mute.confirm": "Заглушаване",
"confirmations.redraft.confirm": "Изтриване и преработване", "confirmations.redraft.confirm": "Изтриване и преработване",
"confirmations.redraft.message": "Наистина ли искате да изтриете тази публикация и да я направите чернова? Означаванията като любими и подсилванията ще се изгубят, а и отговорите към първоначалната публикация ще осиротеят.", "confirmations.redraft.message": "Наистина ли искате да изтриете тази публикация и да я направите чернова? Означаванията като любими и подсилванията ще се изгубят, а и отговорите към първоначалната публикация ще осиротеят.",
"confirmations.redraft.title": "Изтривате и преработвате ли публикацията?",
"confirmations.reply.confirm": "Отговор", "confirmations.reply.confirm": "Отговор",
"confirmations.reply.message": "Отговарянето сега ще замени съобщението, което в момента съставяте. Сигурни ли сте, че искате да продължите?", "confirmations.reply.message": "Отговарянето сега ще замени съобщението, което в момента съставяте. Сигурни ли сте, че искате да продължите?",
"confirmations.reply.title": "Презаписвате ли публикацията?",
"confirmations.unfollow.confirm": "Без следване", "confirmations.unfollow.confirm": "Без следване",
"confirmations.unfollow.message": "Наистина ли искате да не следвате {name}?", "confirmations.unfollow.message": "Наистина ли искате да не следвате {name}?",
"confirmations.unfollow.title": "Спирате ли да следвате потребителя?",
"conversation.delete": "Изтриване на разговора", "conversation.delete": "Изтриване на разговора",
"conversation.mark_as_read": "Маркиране като прочетено", "conversation.mark_as_read": "Маркиране като прочетено",
"conversation.open": "Преглед на разговора", "conversation.open": "Преглед на разговора",
@ -507,6 +510,7 @@
"notification_requests.title": "Филтрирани известия", "notification_requests.title": "Филтрирани известия",
"notifications.clear": "Изчистване на известията", "notifications.clear": "Изчистване на известията",
"notifications.clear_confirmation": "Наистина ли искате да изчистите завинаги всичките си известия?", "notifications.clear_confirmation": "Наистина ли искате да изчистите завинаги всичките си известия?",
"notifications.clear_title": "Изчиствате ли известията?",
"notifications.column_settings.admin.report": "Нови доклади:", "notifications.column_settings.admin.report": "Нови доклади:",
"notifications.column_settings.admin.sign_up": "Нови регистрации:", "notifications.column_settings.admin.sign_up": "Нови регистрации:",
"notifications.column_settings.alert": "Известия на работния плот", "notifications.column_settings.alert": "Известия на работния плот",

View file

@ -146,15 +146,12 @@
"compose_form.spoiler.unmarked": "লেখাটি লুকানো নেই", "compose_form.spoiler.unmarked": "লেখাটি লুকানো নেই",
"confirmation_modal.cancel": "বাতিল করুন", "confirmation_modal.cancel": "বাতিল করুন",
"confirmations.block.confirm": "ব্লক করুন", "confirmations.block.confirm": "ব্লক করুন",
"confirmations.cancel_follow_request.confirm": "অনুরোধ বাতিল করুন",
"confirmations.cancel_follow_request.message": "আপনি কি নিশ্চিত যে আপনি {name} কে অনুসরণ করার অনুরোধ প্রত্যাহার করতে চান?",
"confirmations.delete.confirm": "মুছে ফেলুন", "confirmations.delete.confirm": "মুছে ফেলুন",
"confirmations.delete.message": "আপনি কি নিশ্চিত যে এই লেখাটি মুছে ফেলতে চান ?", "confirmations.delete.message": "আপনি কি নিশ্চিত যে এই লেখাটি মুছে ফেলতে চান ?",
"confirmations.delete_list.confirm": "মুছে ফেলুন", "confirmations.delete_list.confirm": "মুছে ফেলুন",
"confirmations.delete_list.message": "আপনি কি নিশ্চিত যে আপনি এই তালিকাটি স্থায়িভাবে মুছে ফেলতে চান ?", "confirmations.delete_list.message": "আপনি কি নিশ্চিত যে আপনি এই তালিকাটি স্থায়িভাবে মুছে ফেলতে চান ?",
"confirmations.discard_edit_media.confirm": "বাতিল করো", "confirmations.discard_edit_media.confirm": "বাতিল করো",
"confirmations.discard_edit_media.message": "মিডিয়া Description বা Preview তে আপনার আপনার অসংরক্ষিত পরিবর্তন আছে, সেগুলো বাতিল করবেন?", "confirmations.discard_edit_media.message": "মিডিয়া Description বা Preview তে আপনার আপনার অসংরক্ষিত পরিবর্তন আছে, সেগুলো বাতিল করবেন?",
"confirmations.domain_block.message": "আপনি কি সত্যিই সত্যই নিশ্চিত যে আপনি পুরো {domain}'টি ব্লক করতে চান? বেশিরভাগ ক্ষেত্রে কয়েকটি লক্ষ্যযুক্ত ব্লক বা নীরবতা যথেষ্ট এবং পছন্দসই। আপনি কোনও পাবলিক টাইমলাইন বা আপনার বিজ্ঞপ্তিগুলিতে সেই ডোমেন থেকে সামগ্রী দেখতে পাবেন না। সেই ডোমেন থেকে আপনার অনুসরণকারীদের সরানো হবে।",
"confirmations.edit.confirm": "সম্পাদন", "confirmations.edit.confirm": "সম্পাদন",
"confirmations.edit.message": "এখন সম্পাদনা করলে আপনি যে মেসেজ লিখছেন তা overwrite করবে, চালিয়ে যেতে চান?", "confirmations.edit.message": "এখন সম্পাদনা করলে আপনি যে মেসেজ লিখছেন তা overwrite করবে, চালিয়ে যেতে চান?",
"confirmations.logout.confirm": "প্রস্থান", "confirmations.logout.confirm": "প্রস্থান",

View file

@ -159,15 +159,12 @@
"compose_form.spoiler.unmarked": "N'eo ket kuzhet an destenn", "compose_form.spoiler.unmarked": "N'eo ket kuzhet an destenn",
"confirmation_modal.cancel": "Nullañ", "confirmation_modal.cancel": "Nullañ",
"confirmations.block.confirm": "Stankañ", "confirmations.block.confirm": "Stankañ",
"confirmations.cancel_follow_request.confirm": "Nullañ ar reked",
"confirmations.cancel_follow_request.message": "Ha sur oc'h e fell deoc'h nullañ ho reked evit heuliañ {name} ?",
"confirmations.delete.confirm": "Dilemel", "confirmations.delete.confirm": "Dilemel",
"confirmations.delete.message": "Ha sur oc'h e fell deoc'h dilemel an toud-mañ ?", "confirmations.delete.message": "Ha sur oc'h e fell deoc'h dilemel an toud-mañ ?",
"confirmations.delete_list.confirm": "Dilemel", "confirmations.delete_list.confirm": "Dilemel",
"confirmations.delete_list.message": "Ha sur eo hoc'h eus c'hoant da zilemel ar roll-mañ da vat ?", "confirmations.delete_list.message": "Ha sur eo hoc'h eus c'hoant da zilemel ar roll-mañ da vat ?",
"confirmations.discard_edit_media.confirm": "Nac'hañ", "confirmations.discard_edit_media.confirm": "Nac'hañ",
"confirmations.discard_edit_media.message": "Bez ez eus kemmoù n'int ket enrollet e deskrivadur ar media pe ar rakwel, nullañ anezho evelato?", "confirmations.discard_edit_media.message": "Bez ez eus kemmoù n'int ket enrollet e deskrivadur ar media pe ar rakwel, nullañ anezho evelato?",
"confirmations.domain_block.message": "Ha sur oc'h e fell deoc'h berzañ an {domain} a-bezh? Peurvuiañ eo trawalc'h berzañ pe mudañ un nebeud implijer·ezed·ien. Ne welot danvez ebet o tont eus an domani-mañ. Dilamet e vo ar c'houmanantoù war an domani-mañ.",
"confirmations.edit.confirm": "Kemmañ", "confirmations.edit.confirm": "Kemmañ",
"confirmations.logout.confirm": "Digevreañ", "confirmations.logout.confirm": "Digevreañ",
"confirmations.logout.message": "Ha sur oc'h e fell deoc'h digevreañ ?", "confirmations.logout.message": "Ha sur oc'h e fell deoc'h digevreañ ?",

View file

@ -169,27 +169,30 @@
"compose_form.spoiler_placeholder": "Avís de contingut (opcional)", "compose_form.spoiler_placeholder": "Avís de contingut (opcional)",
"confirmation_modal.cancel": "Cancel·la", "confirmation_modal.cancel": "Cancel·la",
"confirmations.block.confirm": "Bloca", "confirmations.block.confirm": "Bloca",
"confirmations.cancel_follow_request.confirm": "Retirar la sol·licitud",
"confirmations.cancel_follow_request.message": "Segur que vols retirar la sol·licitud de seguiment de {name}?",
"confirmations.delete.confirm": "Elimina", "confirmations.delete.confirm": "Elimina",
"confirmations.delete.message": "Segur que vols eliminar aquest tut?", "confirmations.delete.message": "Segur que vols eliminar aquest tut?",
"confirmations.delete.title": "Eliminar la publicació?",
"confirmations.delete_list.confirm": "Elimina", "confirmations.delete_list.confirm": "Elimina",
"confirmations.delete_list.message": "Segur que vols suprimir permanentment aquesta llista?", "confirmations.delete_list.message": "Segur que vols suprimir permanentment aquesta llista?",
"confirmations.delete_list.title": "Eliminar la llista?",
"confirmations.discard_edit_media.confirm": "Descarta", "confirmations.discard_edit_media.confirm": "Descarta",
"confirmations.discard_edit_media.message": "Tens canvis no desats en la descripció del contingut o en la previsualització, els vols descartar?", "confirmations.discard_edit_media.message": "Tens canvis no desats en la descripció del contingut o en la previsualització, els vols descartar?",
"confirmations.domain_block.confirm": "Bloca el servidor",
"confirmations.domain_block.message": "Segur que vols blocar {domain} del tot? En la majoria dels casos, només amb blocar o silenciar uns pocs comptes n'hi ha prou i és millor. No veuràs el contingut daquest domini en cap de les línies de temps ni en les notificacions. S'eliminaran els teus seguidors daquest domini.",
"confirmations.edit.confirm": "Edita", "confirmations.edit.confirm": "Edita",
"confirmations.edit.message": "Editant ara sobreescriuràs el missatge que estàs editant. Segur que vols continuar?", "confirmations.edit.message": "Editant ara sobreescriuràs el missatge que estàs editant. Segur que vols continuar?",
"confirmations.edit.title": "Sobreescriure la publicació?",
"confirmations.logout.confirm": "Tanca la sessió", "confirmations.logout.confirm": "Tanca la sessió",
"confirmations.logout.message": "Segur que vols tancar la sessió?", "confirmations.logout.message": "Segur que vols tancar la sessió?",
"confirmations.logout.title": "Tancar la sessió?",
"confirmations.mute.confirm": "Silencia", "confirmations.mute.confirm": "Silencia",
"confirmations.redraft.confirm": "Esborra i reescriu", "confirmations.redraft.confirm": "Esborra i reescriu",
"confirmations.redraft.message": "Segur que vols eliminar aquest tut i tornar a escriure'l? Es perdran tots els impulsos i els favorits, i les respostes al tut original quedaran aïllades.", "confirmations.redraft.message": "Segur que vols eliminar aquest tut i tornar a escriure'l? Es perdran tots els impulsos i els favorits, i les respostes al tut original quedaran aïllades.",
"confirmations.redraft.title": "Esborrar i reescriure la publicació?",
"confirmations.reply.confirm": "Respon", "confirmations.reply.confirm": "Respon",
"confirmations.reply.message": "Si respons ara, sobreescriuràs el missatge que estàs editant. Segur que vols continuar?", "confirmations.reply.message": "Si respons ara, sobreescriuràs el missatge que estàs editant. Segur que vols continuar?",
"confirmations.reply.title": "Sobreescriure la publicació?",
"confirmations.unfollow.confirm": "Deixa de seguir", "confirmations.unfollow.confirm": "Deixa de seguir",
"confirmations.unfollow.message": "Segur que vols deixar de seguir {name}?", "confirmations.unfollow.message": "Segur que vols deixar de seguir {name}?",
"confirmations.unfollow.title": "Deixar de seguir l'usuari?",
"conversation.delete": "Elimina la conversa", "conversation.delete": "Elimina la conversa",
"conversation.mark_as_read": "Marca com a llegida", "conversation.mark_as_read": "Marca com a llegida",
"conversation.open": "Mostra la conversa", "conversation.open": "Mostra la conversa",
@ -507,6 +510,7 @@
"notification_requests.title": "Notificacions filtrades", "notification_requests.title": "Notificacions filtrades",
"notifications.clear": "Esborra les notificacions", "notifications.clear": "Esborra les notificacions",
"notifications.clear_confirmation": "Segur que vols esborrar permanentment totes les teves notificacions?", "notifications.clear_confirmation": "Segur que vols esborrar permanentment totes les teves notificacions?",
"notifications.clear_title": "Esborrar les notificacions?",
"notifications.column_settings.admin.report": "Nous informes:", "notifications.column_settings.admin.report": "Nous informes:",
"notifications.column_settings.admin.sign_up": "Registres nous:", "notifications.column_settings.admin.sign_up": "Registres nous:",
"notifications.column_settings.alert": "Notificacions d'escriptori", "notifications.column_settings.alert": "Notificacions d'escriptori",

View file

@ -158,15 +158,12 @@
"compose_form.spoiler_placeholder": "ئاگادارکردنەوەی ناوەڕۆک (ئیختیاری)", "compose_form.spoiler_placeholder": "ئاگادارکردنەوەی ناوەڕۆک (ئیختیاری)",
"confirmation_modal.cancel": "هەڵوەشاندنەوه", "confirmation_modal.cancel": "هەڵوەشاندنەوه",
"confirmations.block.confirm": "بلۆک", "confirmations.block.confirm": "بلۆک",
"confirmations.cancel_follow_request.confirm": "داواکاری کشانەوە",
"confirmations.cancel_follow_request.message": "ئایا دڵنیای کە دەتەوێت داواکارییەکەت بۆ شوێنکەوتنی {ناو} بکشێنیتەوە؟",
"confirmations.delete.confirm": "سڕینەوە", "confirmations.delete.confirm": "سڕینەوە",
"confirmations.delete.message": "ئایا دڵنیایت لەوەی دەتەوێت ئەم توتە بسڕیتەوە?", "confirmations.delete.message": "ئایا دڵنیایت لەوەی دەتەوێت ئەم توتە بسڕیتەوە?",
"confirmations.delete_list.confirm": "سڕینەوە", "confirmations.delete_list.confirm": "سڕینەوە",
"confirmations.delete_list.message": "ئایا دڵنیایت لەوەی دەتەوێت بە هەمیشەیی ئەم لیستە بسڕیتەوە?", "confirmations.delete_list.message": "ئایا دڵنیایت لەوەی دەتەوێت بە هەمیشەیی ئەم لیستە بسڕیتەوە?",
"confirmations.discard_edit_media.confirm": "ڕەتکردنەوە", "confirmations.discard_edit_media.confirm": "ڕەتکردنەوە",
"confirmations.discard_edit_media.message": "گۆڕانکاریت لە وەسف یان پێشبینی میدیادا هەڵنەگیراوە، بەهەر حاڵ فڕێیان بدە؟", "confirmations.discard_edit_media.message": "گۆڕانکاریت لە وەسف یان پێشبینی میدیادا هەڵنەگیراوە، بەهەر حاڵ فڕێیان بدە؟",
"confirmations.domain_block.message": "ئایا بەڕاستی، بەڕاستی تۆ دەتەوێت هەموو {domain} بلۆک بکەیت؟ لە زۆربەی حاڵەتەکاندا چەند بلۆکێکی ئامانجدار یان بێدەنگەکان پێویست و پەسەندن. تۆ ناوەڕۆک ێک نابینیت لە دۆمەینەکە لە هیچ هێڵی کاتی گشتی یان ئاگانامەکانت. شوێنکەوتوانی تۆ لەو دۆمەینەوە لادەبرێن.",
"confirmations.edit.confirm": "دەستکاری", "confirmations.edit.confirm": "دەستکاری",
"confirmations.edit.message": "دەستکاری کردنی ئێستا: دەبێتە هۆی نووسینەوەی ئەو پەیامەی، کە ئێستا داتدەڕشت. ئایا دڵنیای، کە دەتەوێت بەردەوام بیت؟", "confirmations.edit.message": "دەستکاری کردنی ئێستا: دەبێتە هۆی نووسینەوەی ئەو پەیامەی، کە ئێستا داتدەڕشت. ئایا دڵنیای، کە دەتەوێت بەردەوام بیت؟",
"confirmations.logout.confirm": "چوونە دەرەوە", "confirmations.logout.confirm": "چوونە دەرەوە",

View file

@ -89,7 +89,6 @@
"confirmations.delete_list.confirm": "Toglie", "confirmations.delete_list.confirm": "Toglie",
"confirmations.delete_list.message": "Site sicuru·a che vulete toglie sta lista?", "confirmations.delete_list.message": "Site sicuru·a che vulete toglie sta lista?",
"confirmations.discard_edit_media.confirm": "Scartà", "confirmations.discard_edit_media.confirm": "Scartà",
"confirmations.domain_block.message": "Site veramente sicuru·a che vulete piattà tuttu à {domain}? Saria forse abbastanza di bluccà ò piattà alcuni conti da quallà. Ùn viderete più nunda da quallà indè e linee pubbliche o e nutificazione. I vostri abbunati da stu duminiu saranu tolti.",
"confirmations.logout.confirm": "Scunnettassi", "confirmations.logout.confirm": "Scunnettassi",
"confirmations.logout.message": "Site sicuru·a che vulete scunnettà vi?", "confirmations.logout.message": "Site sicuru·a che vulete scunnettà vi?",
"confirmations.mute.confirm": "Piattà", "confirmations.mute.confirm": "Piattà",

View file

@ -169,16 +169,12 @@
"compose_form.spoiler_placeholder": "Upozornění na obsah (nepovinné)", "compose_form.spoiler_placeholder": "Upozornění na obsah (nepovinné)",
"confirmation_modal.cancel": "Zrušit", "confirmation_modal.cancel": "Zrušit",
"confirmations.block.confirm": "Blokovat", "confirmations.block.confirm": "Blokovat",
"confirmations.cancel_follow_request.confirm": "Zrušit žádost",
"confirmations.cancel_follow_request.message": "Opravdu chcete zrušit svou žádost o sledování {name}?",
"confirmations.delete.confirm": "Smazat", "confirmations.delete.confirm": "Smazat",
"confirmations.delete.message": "Opravdu chcete smazat tento příspěvek?", "confirmations.delete.message": "Opravdu chcete smazat tento příspěvek?",
"confirmations.delete_list.confirm": "Smazat", "confirmations.delete_list.confirm": "Smazat",
"confirmations.delete_list.message": "Opravdu chcete tento seznam navždy smazat?", "confirmations.delete_list.message": "Opravdu chcete tento seznam navždy smazat?",
"confirmations.discard_edit_media.confirm": "Zahodit", "confirmations.discard_edit_media.confirm": "Zahodit",
"confirmations.discard_edit_media.message": "Máte neuložené změny popisku médií nebo náhledu, chcete je přesto zahodit?", "confirmations.discard_edit_media.message": "Máte neuložené změny popisku médií nebo náhledu, chcete je přesto zahodit?",
"confirmations.domain_block.confirm": "Blokovat server",
"confirmations.domain_block.message": "Opravdu chcete blokovat celou doménu {domain}? Ve většině případů stačí blokovat nebo skrýt pár konkrétních uživatelů, což také doporučujeme. Z této domény neuvidíte obsah v žádné veřejné časové ose ani v oznámeních. Vaši sledující z této domény budou odstraněni.",
"confirmations.edit.confirm": "Upravit", "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.message": "Editovat teď znamená přepsání zprávy, kterou právě tvoříte. Opravdu chcete pokračovat?",
"confirmations.logout.confirm": "Odhlásit se", "confirmations.logout.confirm": "Odhlásit se",

View file

@ -9,7 +9,7 @@
"about.domain_blocks.suspended.explanation": "Ni fydd data o'r gweinydd hwn yn cael ei brosesu, ei gadw na'i gyfnewid, gan wneud unrhyw ryngweithio neu gyfathrebu gyda defnyddwyr o'r gweinydd hwn yn amhosibl.", "about.domain_blocks.suspended.explanation": "Ni fydd data o'r gweinydd hwn yn cael ei brosesu, ei gadw na'i gyfnewid, gan wneud unrhyw ryngweithio neu gyfathrebu gyda defnyddwyr o'r gweinydd hwn yn amhosibl.",
"about.domain_blocks.suspended.title": "Ataliwyd", "about.domain_blocks.suspended.title": "Ataliwyd",
"about.not_available": "Nid yw'r wybodaeth hon ar gael ar y gweinydd hwn.", "about.not_available": "Nid yw'r wybodaeth hon ar gael ar y gweinydd hwn.",
"about.powered_by": "Cyfrwng cymdeithasol datganoledig sy'n cael ei yrru gan {mastodon}", "about.powered_by": "Cyfrwng cymdeithasol datganoledig wedi ei yrru gan {mastodon}",
"about.rules": "Rheolau'r gweinydd", "about.rules": "Rheolau'r gweinydd",
"account.account_note_header": "Nodyn", "account.account_note_header": "Nodyn",
"account.add_or_remove_from_list": "Ychwanegu neu Ddileu o'r rhestrau", "account.add_or_remove_from_list": "Ychwanegu neu Ddileu o'r rhestrau",
@ -35,7 +35,9 @@
"account.follow_back": "Dilyn yn ôl", "account.follow_back": "Dilyn yn ôl",
"account.followers": "Dilynwyr", "account.followers": "Dilynwyr",
"account.followers.empty": "Does neb yn dilyn y defnyddiwr hwn eto.", "account.followers.empty": "Does neb yn dilyn y defnyddiwr hwn eto.",
"account.followers_counter": "{count, plural, one {{counter} dilynwr} two {{counter} ddilynwr} other {{counter} dilynwyr}}",
"account.following": "Yn dilyn", "account.following": "Yn dilyn",
"account.following_counter": "{count, plural, one {Yn dilyn {counter}} other {Yn dilyn {counter}}}",
"account.follows.empty": "Nid yw'r defnyddiwr hwn yn dilyn unrhyw un eto.", "account.follows.empty": "Nid yw'r defnyddiwr hwn yn dilyn unrhyw un eto.",
"account.go_to_profile": "Mynd i'r proffil", "account.go_to_profile": "Mynd i'r proffil",
"account.hide_reblogs": "Cuddio hybiau gan @{name}", "account.hide_reblogs": "Cuddio hybiau gan @{name}",
@ -61,6 +63,7 @@
"account.requested_follow": "Mae {name} wedi gwneud cais i'ch dilyn", "account.requested_follow": "Mae {name} wedi gwneud cais i'ch dilyn",
"account.share": "Rhannwch broffil @{name}", "account.share": "Rhannwch broffil @{name}",
"account.show_reblogs": "Dangos hybiau gan @{name}", "account.show_reblogs": "Dangos hybiau gan @{name}",
"account.statuses_counter": "{count, plural, one {{counter} post} two {{counter} bost} few {{counter} phost} many {{counter} post} other {{counter} post}}",
"account.unblock": "Dadflocio @{name}", "account.unblock": "Dadflocio @{name}",
"account.unblock_domain": "Dadflocio parth {domain}", "account.unblock_domain": "Dadflocio parth {domain}",
"account.unblock_short": "Dadflocio", "account.unblock_short": "Dadflocio",
@ -166,27 +169,30 @@
"compose_form.spoiler_placeholder": "Rhybudd cynnwys (dewisol)", "compose_form.spoiler_placeholder": "Rhybudd cynnwys (dewisol)",
"confirmation_modal.cancel": "Canslo", "confirmation_modal.cancel": "Canslo",
"confirmations.block.confirm": "Blocio", "confirmations.block.confirm": "Blocio",
"confirmations.cancel_follow_request.confirm": "Tynnu'r cais yn ôl",
"confirmations.cancel_follow_request.message": "Ydych chi'n siŵr eich bod am dynnu'ch cais i ddilyn {name} yn ôl?",
"confirmations.delete.confirm": "Dileu", "confirmations.delete.confirm": "Dileu",
"confirmations.delete.message": "Ydych chi'n sicr eich bod eisiau dileu y post hwn?", "confirmations.delete.message": "Ydych chi'n sicr eich bod eisiau dileu y post hwn?",
"confirmations.delete.title": "Dileu post?",
"confirmations.delete_list.confirm": "Dileu", "confirmations.delete_list.confirm": "Dileu",
"confirmations.delete_list.message": "Ydych chi'n siŵr eich bod eisiau dileu'r rhestr hwn am byth?", "confirmations.delete_list.message": "Ydych chi'n siŵr eich bod eisiau dileu'r rhestr hwn am byth?",
"confirmations.delete_list.title": "Dileu rhestr?",
"confirmations.discard_edit_media.confirm": "Dileu", "confirmations.discard_edit_media.confirm": "Dileu",
"confirmations.discard_edit_media.message": "Mae gennych newidiadau heb eu cadw i'r disgrifiad cyfryngau neu'r rhagolwg - eu dileu beth bynnag?", "confirmations.discard_edit_media.message": "Mae gennych newidiadau heb eu cadw i'r disgrifiad cyfryngau neu'r rhagolwg - eu dileu beth bynnag?",
"confirmations.domain_block.confirm": "Blocio gweinydd",
"confirmations.domain_block.message": "Ydych chi wir, wir eisiau blocio'r holl {domain}? Fel arfer, mae blocio neu dewi pobl penodol yn broses mwy effeithiol. Fyddwch chi ddim yn gweld cynnwys o'r parth hwnnw mewn ffrydiau cyhoeddus neu yn eich hysbysiadau. Bydd eich dilynwyr o'r parth hwnnw yn cael eu ddileu.",
"confirmations.edit.confirm": "Golygu", "confirmations.edit.confirm": "Golygu",
"confirmations.edit.message": "Bydd golygu nawr yn trosysgrifennu'r neges rydych yn ei ysgrifennu ar hyn o bryd. Ydych chi'n siŵr eich bod eisiau gwneud hyn?", "confirmations.edit.message": "Bydd golygu nawr yn trosysgrifennu'r neges rydych yn ei ysgrifennu ar hyn o bryd. Ydych chi'n siŵr eich bod eisiau gwneud hyn?",
"confirmations.edit.title": "Trosysgrifo post?",
"confirmations.logout.confirm": "Allgofnodi", "confirmations.logout.confirm": "Allgofnodi",
"confirmations.logout.message": "Ydych chi'n siŵr eich bod am allgofnodi?", "confirmations.logout.message": "Ydych chi'n siŵr eich bod am allgofnodi?",
"confirmations.logout.title": "Allgofnodi?",
"confirmations.mute.confirm": "Tewi", "confirmations.mute.confirm": "Tewi",
"confirmations.redraft.confirm": "Dileu ac ailddrafftio", "confirmations.redraft.confirm": "Dileu ac ailddrafftio",
"confirmations.redraft.message": "Ydych chi'n siŵr eich bod am ddileu'r postiad hwn a'i ailddrafftio? Bydd ffefrynnau a hybiau'n cael eu colli, a bydd atebion i'r post gwreiddiol yn mynd yn amddifad.", "confirmations.redraft.message": "Ydych chi'n siŵr eich bod am ddileu'r postiad hwn a'i ailddrafftio? Bydd ffefrynnau a hybiau'n cael eu colli, a bydd atebion i'r post gwreiddiol yn mynd yn amddifad.",
"confirmations.redraft.title": "Dileu & ailddraftio post?",
"confirmations.reply.confirm": "Ateb", "confirmations.reply.confirm": "Ateb",
"confirmations.reply.message": "Bydd ateb nawr yn cymryd lle y neges yr ydych yn cyfansoddi ar hyn o bryd. Ydych chi'n siŵr eich bod am barhau?", "confirmations.reply.message": "Bydd ateb nawr yn cymryd lle y neges yr ydych yn cyfansoddi ar hyn o bryd. Ydych chi'n siŵr eich bod am barhau?",
"confirmations.reply.title": "Trosysgrifo post?",
"confirmations.unfollow.confirm": "Dad-ddilyn", "confirmations.unfollow.confirm": "Dad-ddilyn",
"confirmations.unfollow.message": "Ydych chi'n siŵr eich bod am ddad-ddilyn {name}?", "confirmations.unfollow.message": "Ydych chi'n siŵr eich bod am ddad-ddilyn {name}?",
"confirmations.unfollow.title": "Dad-ddilyn defnyddiwr?",
"conversation.delete": "Dileu sgwrs", "conversation.delete": "Dileu sgwrs",
"conversation.mark_as_read": "Nodi fel wedi'i ddarllen", "conversation.mark_as_read": "Nodi fel wedi'i ddarllen",
"conversation.open": "Gweld sgwrs", "conversation.open": "Gweld sgwrs",
@ -412,6 +418,7 @@
"limited_account_hint.title": "Mae'r proffil hwn wedi cael ei guddio gan gymedrolwyr {domain}.", "limited_account_hint.title": "Mae'r proffil hwn wedi cael ei guddio gan gymedrolwyr {domain}.",
"link_preview.author": "Gan {name}", "link_preview.author": "Gan {name}",
"link_preview.more_from_author": "Mwy gan {name}", "link_preview.more_from_author": "Mwy gan {name}",
"link_preview.shares": "{count, plural, one {{counter} post} two {{counter} bost} few {{counter} phost} many {{counter} post} other {{counter} post}}",
"lists.account.add": "Ychwanegu at restr", "lists.account.add": "Ychwanegu at restr",
"lists.account.remove": "Tynnu o'r rhestr", "lists.account.remove": "Tynnu o'r rhestr",
"lists.delete": "Dileu rhestr", "lists.delete": "Dileu rhestr",
@ -439,6 +446,8 @@
"mute_modal.title": "Tewi defnyddiwr?", "mute_modal.title": "Tewi defnyddiwr?",
"mute_modal.you_wont_see_mentions": "Welwch chi ddim postiadau sy'n sôn amdanyn nhw.", "mute_modal.you_wont_see_mentions": "Welwch chi ddim postiadau sy'n sôn amdanyn nhw.",
"mute_modal.you_wont_see_posts": "Gallan nhw weld eich postiadau o hyd, ond fyddwch chi ddim yn gweld eu rhai hwy.", "mute_modal.you_wont_see_posts": "Gallan nhw weld eich postiadau o hyd, ond fyddwch chi ddim yn gweld eu rhai hwy.",
"name_and_others": "{name} a(c) {count, plural, one {# arall} other {# eraill}}",
"name_and_others_with_link": "{name} a<a>{count, plural, zero {}one {c # arall} two { # eraill} few { # eraill} many { # eraill} other { # eraill}}</a>",
"navigation_bar.about": "Ynghylch", "navigation_bar.about": "Ynghylch",
"navigation_bar.advanced_interface": "Agor mewn rhyngwyneb gwe uwch", "navigation_bar.advanced_interface": "Agor mewn rhyngwyneb gwe uwch",
"navigation_bar.blocks": "Defnyddwyr wedi eu blocio", "navigation_bar.blocks": "Defnyddwyr wedi eu blocio",
@ -466,6 +475,9 @@
"navigation_bar.security": "Diogelwch", "navigation_bar.security": "Diogelwch",
"not_signed_in_indicator.not_signed_in": "Rhaid i chi fewngofnodi i weld yr adnodd hwn.", "not_signed_in_indicator.not_signed_in": "Rhaid i chi fewngofnodi i weld yr adnodd hwn.",
"notification.admin.report": "Adroddwyd ar {name} {target}", "notification.admin.report": "Adroddwyd ar {name} {target}",
"notification.admin.report_account_other": "Adroddodd {name} {count, plural, one {un post} two {# bost} few {# phost} other {# post}} gan {target}",
"notification.admin.report_statuses": "Adroddodd {name} {target} ar gyfer {category}",
"notification.admin.report_statuses_other": "Adroddodd {name} {target}",
"notification.admin.sign_up": "Cofrestrodd {name}", "notification.admin.sign_up": "Cofrestrodd {name}",
"notification.favourite": "Hoffodd {name} eich postiad", "notification.favourite": "Hoffodd {name} eich postiad",
"notification.follow": "Dilynodd {name} chi", "notification.follow": "Dilynodd {name} chi",
@ -481,6 +493,8 @@
"notification.moderation_warning.action_silence": "Mae eich cyfrif wedi'i gyfyngu.", "notification.moderation_warning.action_silence": "Mae eich cyfrif wedi'i gyfyngu.",
"notification.moderation_warning.action_suspend": "Mae eich cyfrif wedi'i hatal.", "notification.moderation_warning.action_suspend": "Mae eich cyfrif wedi'i hatal.",
"notification.own_poll": "Mae eich pleidlais wedi dod i ben", "notification.own_poll": "Mae eich pleidlais wedi dod i ben",
"notification.poll": "Mae arolwg y gwnaethoch bleidleisio ynddo wedi dod i ben",
"notification.private_mention": "Mae {name} wedi eich crybwyll yn breifat",
"notification.reblog": "Hybodd {name} eich post", "notification.reblog": "Hybodd {name} eich post",
"notification.relationships_severance_event": "Wedi colli cysylltiad â {name}", "notification.relationships_severance_event": "Wedi colli cysylltiad â {name}",
"notification.relationships_severance_event.account_suspension": "Mae gweinyddwr o {from} wedi atal {target}, sy'n golygu na allwch dderbyn diweddariadau ganddynt mwyach na rhyngweithio â nhw.", "notification.relationships_severance_event.account_suspension": "Mae gweinyddwr o {from} wedi atal {target}, sy'n golygu na allwch dderbyn diweddariadau ganddynt mwyach na rhyngweithio â nhw.",
@ -495,9 +509,12 @@
"notification_requests.title": "Hysbysiadau wedi'u hidlo", "notification_requests.title": "Hysbysiadau wedi'u hidlo",
"notifications.clear": "Clirio hysbysiadau", "notifications.clear": "Clirio hysbysiadau",
"notifications.clear_confirmation": "Ydych chi'n siŵr eich bod am glirio'ch holl hysbysiadau am byth?", "notifications.clear_confirmation": "Ydych chi'n siŵr eich bod am glirio'ch holl hysbysiadau am byth?",
"notifications.clear_title": "Clirio hysbysiadau?",
"notifications.column_settings.admin.report": "Adroddiadau newydd:", "notifications.column_settings.admin.report": "Adroddiadau newydd:",
"notifications.column_settings.admin.sign_up": "Cofrestriadau newydd:", "notifications.column_settings.admin.sign_up": "Cofrestriadau newydd:",
"notifications.column_settings.alert": "Hysbysiadau bwrdd gwaith", "notifications.column_settings.alert": "Hysbysiadau bwrdd gwaith",
"notifications.column_settings.beta.category": "Nodweddion arbrofol",
"notifications.column_settings.beta.grouping": "Grŵpio hysbysiadau",
"notifications.column_settings.favourite": "Ffefrynnau:", "notifications.column_settings.favourite": "Ffefrynnau:",
"notifications.column_settings.filter_bar.advanced": "Dangos pob categori", "notifications.column_settings.filter_bar.advanced": "Dangos pob categori",
"notifications.column_settings.filter_bar.category": "Bar hidlo cyflym", "notifications.column_settings.filter_bar.category": "Bar hidlo cyflym",
@ -661,9 +678,13 @@
"report.unfollow_explanation": "Rydych chi'n dilyn y cyfrif hwn. I beidio â gweld eu postiadau yn eich porthiant cartref mwyach, dad-ddilynwch nhw.", "report.unfollow_explanation": "Rydych chi'n dilyn y cyfrif hwn. I beidio â gweld eu postiadau yn eich porthiant cartref mwyach, dad-ddilynwch nhw.",
"report_notification.attached_statuses": "{count, plural, one {{count} postiad} arall {{count} postiad}} atodwyd", "report_notification.attached_statuses": "{count, plural, one {{count} postiad} arall {{count} postiad}} atodwyd",
"report_notification.categories.legal": "Cyfreithiol", "report_notification.categories.legal": "Cyfreithiol",
"report_notification.categories.legal_sentence": "cynnwys anghyfreithlon",
"report_notification.categories.other": "Arall", "report_notification.categories.other": "Arall",
"report_notification.categories.other_sentence": "arall",
"report_notification.categories.spam": "Sbam", "report_notification.categories.spam": "Sbam",
"report_notification.categories.spam_sentence": "sbam",
"report_notification.categories.violation": "Torri rheol", "report_notification.categories.violation": "Torri rheol",
"report_notification.categories.violation_sentence": "torri rheolau",
"report_notification.open": "Agor adroddiad", "report_notification.open": "Agor adroddiad",
"search.no_recent_searches": "Does dim chwiliadau diweddar", "search.no_recent_searches": "Does dim chwiliadau diweddar",
"search.placeholder": "Chwilio", "search.placeholder": "Chwilio",

View file

@ -169,27 +169,30 @@
"compose_form.spoiler_placeholder": "Indholdsadvarsel (valgfri)", "compose_form.spoiler_placeholder": "Indholdsadvarsel (valgfri)",
"confirmation_modal.cancel": "Afbryd", "confirmation_modal.cancel": "Afbryd",
"confirmations.block.confirm": "Blokér", "confirmations.block.confirm": "Blokér",
"confirmations.cancel_follow_request.confirm": "Annullér anmodning",
"confirmations.cancel_follow_request.message": "Er du sikker på, at anmodningen om at følge {name} skal annulleres?",
"confirmations.delete.confirm": "Slet", "confirmations.delete.confirm": "Slet",
"confirmations.delete.message": "Er du sikker på, at du vil slette dette indlæg?", "confirmations.delete.message": "Er du sikker på, at du vil slette dette indlæg?",
"confirmations.delete.title": "Slet indlæg?",
"confirmations.delete_list.confirm": "Slet", "confirmations.delete_list.confirm": "Slet",
"confirmations.delete_list.message": "Er du sikker på, at du vil slette denne liste permanent?", "confirmations.delete_list.message": "Er du sikker på, at du vil slette denne liste permanent?",
"confirmations.delete_list.title": "Slet liste?",
"confirmations.discard_edit_media.confirm": "Kassér", "confirmations.discard_edit_media.confirm": "Kassér",
"confirmations.discard_edit_media.message": "Der er ugemte ændringer i mediebeskrivelsen eller forhåndsvisningen, kassér dem alligevel?", "confirmations.discard_edit_media.message": "Der er ugemte ændringer i mediebeskrivelsen eller forhåndsvisningen, kassér dem alligevel?",
"confirmations.domain_block.confirm": "Blokér server",
"confirmations.domain_block.message": "Er du fuldstændig sikker på, at du vil blokere hele {domain}-domænet? Oftest vil nogle få målrettede blokeringer eller skjulninger være tilstrækkelige og at foretrække. Du vil ikke se indhold fra dette domæne i nogle offentlige tidslinjer eller i dine notifikationer, og dine følgere herfra fjernes ligeledes.",
"confirmations.edit.confirm": "Redigér", "confirmations.edit.confirm": "Redigér",
"confirmations.edit.message": "Redigeres nu, overskrive den besked, der forfattes pt. Fortsæt alligevel?", "confirmations.edit.message": "Redigeres nu, overskrive den besked, der forfattes pt. Fortsæt alligevel?",
"confirmations.edit.title": "Overskriv indlæg?",
"confirmations.logout.confirm": "Log ud", "confirmations.logout.confirm": "Log ud",
"confirmations.logout.message": "Er du sikker på, at du vil logge ud?", "confirmations.logout.message": "Er du sikker på, at du vil logge ud?",
"confirmations.logout.title": "Log ud?",
"confirmations.mute.confirm": "Skjul (mute)", "confirmations.mute.confirm": "Skjul (mute)",
"confirmations.redraft.confirm": "Slet og omformulér", "confirmations.redraft.confirm": "Slet og omformulér",
"confirmations.redraft.message": "Sikker på, at dette indlæg skal slettes og omskrives? Favoritter og boosts går tabt, og svar til det oprindelige indlæg mister tilknytningen.", "confirmations.redraft.message": "Sikker på, at dette indlæg skal slettes og omskrives? Favoritter og boosts går tabt, og svar til det oprindelige indlæg mister tilknytningen.",
"confirmations.redraft.title": "Slet og omformulér indlæg?",
"confirmations.reply.confirm": "Svar", "confirmations.reply.confirm": "Svar",
"confirmations.reply.message": "Hvis du svarer nu, vil det overskrive den besked, du er ved at skrive. Fortsæt alligevel?", "confirmations.reply.message": "Hvis du svarer nu, vil det overskrive den besked, du er ved at skrive. Fortsæt alligevel?",
"confirmations.reply.title": "Overskriv indlæg?",
"confirmations.unfollow.confirm": "Følg ikke længere", "confirmations.unfollow.confirm": "Følg ikke længere",
"confirmations.unfollow.message": "Er du sikker på, at du ikke længere vil følge {name}?", "confirmations.unfollow.message": "Er du sikker på, at du ikke længere vil følge {name}?",
"confirmations.unfollow.title": "Følg ikke længere bruger?",
"conversation.delete": "Slet samtale", "conversation.delete": "Slet samtale",
"conversation.mark_as_read": "Markér som læst", "conversation.mark_as_read": "Markér som læst",
"conversation.open": "Vis samtale", "conversation.open": "Vis samtale",
@ -507,6 +510,7 @@
"notification_requests.title": "Filtrerede notifikationer", "notification_requests.title": "Filtrerede notifikationer",
"notifications.clear": "Ryd notifikationer", "notifications.clear": "Ryd notifikationer",
"notifications.clear_confirmation": "Er du sikker på, at du vil rydde alle dine notifikationer permanent?", "notifications.clear_confirmation": "Er du sikker på, at du vil rydde alle dine notifikationer permanent?",
"notifications.clear_title": "Ryd notifikationer?",
"notifications.column_settings.admin.report": "Nye anmeldelser:", "notifications.column_settings.admin.report": "Nye anmeldelser:",
"notifications.column_settings.admin.sign_up": "Nye tilmeldinger:", "notifications.column_settings.admin.sign_up": "Nye tilmeldinger:",
"notifications.column_settings.alert": "Computernotifikationer", "notifications.column_settings.alert": "Computernotifikationer",

View file

@ -169,27 +169,30 @@
"compose_form.spoiler_placeholder": "Inhaltswarnung (optional)", "compose_form.spoiler_placeholder": "Inhaltswarnung (optional)",
"confirmation_modal.cancel": "Abbrechen", "confirmation_modal.cancel": "Abbrechen",
"confirmations.block.confirm": "Blockieren", "confirmations.block.confirm": "Blockieren",
"confirmations.cancel_follow_request.confirm": "Anfrage zurückziehen",
"confirmations.cancel_follow_request.message": "Möchtest du deine Anfrage, {name} zu folgen, wirklich zurückziehen?",
"confirmations.delete.confirm": "Löschen", "confirmations.delete.confirm": "Löschen",
"confirmations.delete.message": "Möchtest du diesen Beitrag wirklich löschen?", "confirmations.delete.message": "Möchtest du diesen Beitrag wirklich löschen?",
"confirmations.delete.title": "Beitrag löschen?",
"confirmations.delete_list.confirm": "Löschen", "confirmations.delete_list.confirm": "Löschen",
"confirmations.delete_list.message": "Möchtest du diese Liste für immer löschen?", "confirmations.delete_list.message": "Möchtest du diese Liste für immer löschen?",
"confirmations.delete_list.title": "Liste löschen?",
"confirmations.discard_edit_media.confirm": "Verwerfen", "confirmations.discard_edit_media.confirm": "Verwerfen",
"confirmations.discard_edit_media.message": "Du hast Änderungen an der Medienbeschreibung oder -vorschau vorgenommen, die noch nicht gespeichert sind. Trotzdem verwerfen?", "confirmations.discard_edit_media.message": "Du hast Änderungen an der Medienbeschreibung oder -vorschau vorgenommen, die noch nicht gespeichert sind. Trotzdem verwerfen?",
"confirmations.domain_block.confirm": "Server blockieren",
"confirmations.domain_block.message": "Möchtest du die gesamte Domain {domain} wirklich blockieren? In den meisten Fällen reichen ein paar gezielte Blockierungen oder Stummschaltungen aus. Du wirst den Inhalt von dieser Domain nicht in irgendwelchen öffentlichen Timelines oder den Benachrichtigungen finden. Auch deine Follower von dieser Domain werden entfernt.",
"confirmations.edit.confirm": "Bearbeiten", "confirmations.edit.confirm": "Bearbeiten",
"confirmations.edit.message": "Das Bearbeiten überschreibt die Nachricht, die du gerade verfasst. Möchtest du wirklich fortfahren?", "confirmations.edit.message": "Das Bearbeiten überschreibt die Nachricht, die du gerade verfasst. Möchtest du wirklich fortfahren?",
"confirmations.edit.title": "Beitrag überschreiben?",
"confirmations.logout.confirm": "Abmelden", "confirmations.logout.confirm": "Abmelden",
"confirmations.logout.message": "Möchtest du dich wirklich abmelden?", "confirmations.logout.message": "Möchtest du dich wirklich abmelden?",
"confirmations.logout.title": "Abmelden?",
"confirmations.mute.confirm": "Stummschalten", "confirmations.mute.confirm": "Stummschalten",
"confirmations.redraft.confirm": "Löschen und neu erstellen", "confirmations.redraft.confirm": "Löschen und neu erstellen",
"confirmations.redraft.message": "Möchtest du diesen Beitrag wirklich löschen und neu verfassen? Favoriten und geteilte Beiträge gehen verloren, und Antworten auf den ursprünglichen Beitrag verlieren den Zusammenhang.", "confirmations.redraft.message": "Möchtest du diesen Beitrag wirklich löschen und neu verfassen? Favoriten und geteilte Beiträge gehen verloren, und Antworten auf den ursprünglichen Beitrag verlieren den Zusammenhang.",
"confirmations.redraft.title": "Beitrag löschen und neu erstellen?",
"confirmations.reply.confirm": "Antworten", "confirmations.reply.confirm": "Antworten",
"confirmations.reply.message": "Wenn du jetzt darauf antwortest, wird der andere Beitrag, an dem du gerade geschrieben hast, verworfen. Möchtest du wirklich fortfahren?", "confirmations.reply.message": "Wenn du jetzt darauf antwortest, wird der andere Beitrag, an dem du gerade geschrieben hast, verworfen. Möchtest du wirklich fortfahren?",
"confirmations.reply.title": "Beitrag überschreiben?",
"confirmations.unfollow.confirm": "Entfolgen", "confirmations.unfollow.confirm": "Entfolgen",
"confirmations.unfollow.message": "Möchtest du {name} wirklich entfolgen?", "confirmations.unfollow.message": "Möchtest du {name} wirklich entfolgen?",
"confirmations.unfollow.title": "Profil entfolgen?",
"conversation.delete": "Unterhaltung löschen", "conversation.delete": "Unterhaltung löschen",
"conversation.mark_as_read": "Als gelesen markieren", "conversation.mark_as_read": "Als gelesen markieren",
"conversation.open": "Unterhaltung anzeigen", "conversation.open": "Unterhaltung anzeigen",
@ -507,6 +510,7 @@
"notification_requests.title": "Gefilterte Benachrichtigungen", "notification_requests.title": "Gefilterte Benachrichtigungen",
"notifications.clear": "Benachrichtigungen löschen", "notifications.clear": "Benachrichtigungen löschen",
"notifications.clear_confirmation": "Möchtest du wirklich alle Benachrichtigungen für immer löschen?", "notifications.clear_confirmation": "Möchtest du wirklich alle Benachrichtigungen für immer löschen?",
"notifications.clear_title": "Benachrichtigungen löschen?",
"notifications.column_settings.admin.report": "Neue Meldungen:", "notifications.column_settings.admin.report": "Neue Meldungen:",
"notifications.column_settings.admin.sign_up": "Neue Registrierungen:", "notifications.column_settings.admin.sign_up": "Neue Registrierungen:",
"notifications.column_settings.alert": "Desktop-Benachrichtigungen", "notifications.column_settings.alert": "Desktop-Benachrichtigungen",

View file

@ -169,16 +169,12 @@
"compose_form.spoiler_placeholder": "Προειδοποίηση περιεχομένου (προαιρετική)", "compose_form.spoiler_placeholder": "Προειδοποίηση περιεχομένου (προαιρετική)",
"confirmation_modal.cancel": "Άκυρο", "confirmation_modal.cancel": "Άκυρο",
"confirmations.block.confirm": "Αποκλεισμός", "confirmations.block.confirm": "Αποκλεισμός",
"confirmations.cancel_follow_request.confirm": "Απόσυρση αιτήματος",
"confirmations.cancel_follow_request.message": "Είσαι σίγουρος/η ότι θέλεις να αποσύρεις το αίτημά σου να ακολουθείς τον/την {name};",
"confirmations.delete.confirm": "Διαγραφή", "confirmations.delete.confirm": "Διαγραφή",
"confirmations.delete.message": "Σίγουρα θες να διαγράψεις αυτή τη δημοσίευση;", "confirmations.delete.message": "Σίγουρα θες να διαγράψεις αυτή τη δημοσίευση;",
"confirmations.delete_list.confirm": "Διαγραφή", "confirmations.delete_list.confirm": "Διαγραφή",
"confirmations.delete_list.message": "Σίγουρα θες να διαγράψεις οριστικά αυτή τη λίστα;", "confirmations.delete_list.message": "Σίγουρα θες να διαγράψεις οριστικά αυτή τη λίστα;",
"confirmations.discard_edit_media.confirm": "Απόρριψη", "confirmations.discard_edit_media.confirm": "Απόρριψη",
"confirmations.discard_edit_media.message": "Έχεις μη αποθηκευμένες αλλαγές στην περιγραφή πολυμέσων ή στην προεπισκόπηση, απόρριψη ούτως ή άλλως;", "confirmations.discard_edit_media.message": "Έχεις μη αποθηκευμένες αλλαγές στην περιγραφή πολυμέσων ή στην προεπισκόπηση, απόρριψη ούτως ή άλλως;",
"confirmations.domain_block.confirm": "Αποκλεισμός διακομιστή",
"confirmations.domain_block.message": "Σίγουρα θες να αποκλείσεις ολόκληρο τον {domain}; Συνήθως μερικοί συγκεκρίμένοι αποκλεισμοί ή σιγάσεις επαρκούν και προτιμούνται. Δεν θα βλέπεις περιεχόμενο από αυτό τον τομέα σε καμία δημόσια ροή ή στις ειδοποιήσεις σου. Όσους ακόλουθους έχεις αυτό αυτό τον τομέα θα αφαιρεθούν.",
"confirmations.edit.confirm": "Επεξεργασία", "confirmations.edit.confirm": "Επεξεργασία",
"confirmations.edit.message": "Αν το επεξεργαστείς τώρα θα αντικατασταθεί το μήνυμα που συνθέτεις. Είσαι σίγουρος ότι θέλεις να συνεχίσεις;", "confirmations.edit.message": "Αν το επεξεργαστείς τώρα θα αντικατασταθεί το μήνυμα που συνθέτεις. Είσαι σίγουρος ότι θέλεις να συνεχίσεις;",
"confirmations.logout.confirm": "Αποσύνδεση", "confirmations.logout.confirm": "Αποσύνδεση",

View file

@ -169,16 +169,12 @@
"compose_form.spoiler_placeholder": "Content warning (optional)", "compose_form.spoiler_placeholder": "Content warning (optional)",
"confirmation_modal.cancel": "Cancel", "confirmation_modal.cancel": "Cancel",
"confirmations.block.confirm": "Block", "confirmations.block.confirm": "Block",
"confirmations.cancel_follow_request.confirm": "Withdraw request",
"confirmations.cancel_follow_request.message": "Are you sure you want to withdraw your request to follow {name}?",
"confirmations.delete.confirm": "Delete", "confirmations.delete.confirm": "Delete",
"confirmations.delete.message": "Are you sure you want to delete this post?", "confirmations.delete.message": "Are you sure you want to delete this post?",
"confirmations.delete_list.confirm": "Delete", "confirmations.delete_list.confirm": "Delete",
"confirmations.delete_list.message": "Are you sure you want to permanently delete this list?", "confirmations.delete_list.message": "Are you sure you want to permanently delete this list?",
"confirmations.discard_edit_media.confirm": "Discard", "confirmations.discard_edit_media.confirm": "Discard",
"confirmations.discard_edit_media.message": "You have unsaved changes to the media description or preview, discard them anyway?", "confirmations.discard_edit_media.message": "You have unsaved changes to the media description or preview, discard them anyway?",
"confirmations.domain_block.confirm": "Block server",
"confirmations.domain_block.message": "Are you really, really sure you want to block the entire {domain}? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain in any public timelines or your notifications. Your followers from that domain will be removed.",
"confirmations.edit.confirm": "Edit", "confirmations.edit.confirm": "Edit",
"confirmations.edit.message": "Editing now will overwrite the message you are currently composing. Are you sure you want to proceed?", "confirmations.edit.message": "Editing now will overwrite the message you are currently composing. Are you sure you want to proceed?",
"confirmations.logout.confirm": "Log out", "confirmations.logout.confirm": "Log out",

View file

@ -169,27 +169,30 @@
"compose_form.spoiler_placeholder": "Content warning (optional)", "compose_form.spoiler_placeholder": "Content warning (optional)",
"confirmation_modal.cancel": "Cancel", "confirmation_modal.cancel": "Cancel",
"confirmations.block.confirm": "Block", "confirmations.block.confirm": "Block",
"confirmations.cancel_follow_request.confirm": "Withdraw request",
"confirmations.cancel_follow_request.message": "Are you sure you want to withdraw your request to follow {name}?",
"confirmations.delete.confirm": "Delete", "confirmations.delete.confirm": "Delete",
"confirmations.delete.message": "Are you sure you want to delete this post?", "confirmations.delete.message": "Are you sure you want to delete this post?",
"confirmations.delete.title": "Delete post?",
"confirmations.delete_list.confirm": "Delete", "confirmations.delete_list.confirm": "Delete",
"confirmations.delete_list.message": "Are you sure you want to permanently delete this list?", "confirmations.delete_list.message": "Are you sure you want to permanently delete this list?",
"confirmations.delete_list.title": "Delete list?",
"confirmations.discard_edit_media.confirm": "Discard", "confirmations.discard_edit_media.confirm": "Discard",
"confirmations.discard_edit_media.message": "You have unsaved changes to the media description or preview, discard them anyway?", "confirmations.discard_edit_media.message": "You have unsaved changes to the media description or preview, discard them anyway?",
"confirmations.domain_block.confirm": "Block server",
"confirmations.domain_block.message": "Are you really, really sure you want to block the entire {domain}? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain in any public timelines or your notifications. Your followers from that domain will be removed.",
"confirmations.edit.confirm": "Edit", "confirmations.edit.confirm": "Edit",
"confirmations.edit.message": "Editing now will overwrite the message you are currently composing. Are you sure you want to proceed?", "confirmations.edit.message": "Editing now will overwrite the message you are currently composing. Are you sure you want to proceed?",
"confirmations.edit.title": "Overwrite post?",
"confirmations.logout.confirm": "Log out", "confirmations.logout.confirm": "Log out",
"confirmations.logout.message": "Are you sure you want to log out?", "confirmations.logout.message": "Are you sure you want to log out?",
"confirmations.logout.title": "Log out?",
"confirmations.mute.confirm": "Mute", "confirmations.mute.confirm": "Mute",
"confirmations.redraft.confirm": "Delete & redraft", "confirmations.redraft.confirm": "Delete & redraft",
"confirmations.redraft.message": "Are you sure you want to delete this post and re-draft it? Favorites and boosts will be lost, and replies to the original post will be orphaned.", "confirmations.redraft.message": "Are you sure you want to delete this post and re-draft it? Favorites and boosts will be lost, and replies to the original post will be orphaned.",
"confirmations.redraft.title": "Delete & redraft post?",
"confirmations.reply.confirm": "Reply", "confirmations.reply.confirm": "Reply",
"confirmations.reply.message": "Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?", "confirmations.reply.message": "Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?",
"confirmations.reply.title": "Overwrite post?",
"confirmations.unfollow.confirm": "Unfollow", "confirmations.unfollow.confirm": "Unfollow",
"confirmations.unfollow.message": "Are you sure you want to unfollow {name}?", "confirmations.unfollow.message": "Are you sure you want to unfollow {name}?",
"confirmations.unfollow.title": "Unfollow user?",
"conversation.delete": "Delete conversation", "conversation.delete": "Delete conversation",
"conversation.mark_as_read": "Mark as read", "conversation.mark_as_read": "Mark as read",
"conversation.open": "View conversation", "conversation.open": "View conversation",
@ -297,8 +300,7 @@
"filter_modal.select_filter.subtitle": "Use an existing category or create a new one", "filter_modal.select_filter.subtitle": "Use an existing category or create a new one",
"filter_modal.select_filter.title": "Filter this post", "filter_modal.select_filter.title": "Filter this post",
"filter_modal.title.status": "Filter a post", "filter_modal.title.status": "Filter a post",
"filtered_notifications_banner.mentions": "{count, plural, one {mention} other {mentions}}", "filtered_notifications_banner.pending_requests": "From {count, plural, =0 {no one} one {one person} other {# people}} you may know",
"filtered_notifications_banner.pending_requests": "Notifications from {count, plural, =0 {no one} one {one person} other {# people}} you may know",
"filtered_notifications_banner.title": "Filtered notifications", "filtered_notifications_banner.title": "Filtered notifications",
"firehose.all": "All", "firehose.all": "All",
"firehose.local": "This server", "firehose.local": "This server",
@ -507,6 +509,7 @@
"notification_requests.title": "Filtered notifications", "notification_requests.title": "Filtered notifications",
"notifications.clear": "Clear notifications", "notifications.clear": "Clear notifications",
"notifications.clear_confirmation": "Are you sure you want to permanently clear all your notifications?", "notifications.clear_confirmation": "Are you sure you want to permanently clear all your notifications?",
"notifications.clear_title": "Clear notifications?",
"notifications.column_settings.admin.report": "New reports:", "notifications.column_settings.admin.report": "New reports:",
"notifications.column_settings.admin.sign_up": "New sign-ups:", "notifications.column_settings.admin.sign_up": "New sign-ups:",
"notifications.column_settings.alert": "Desktop notifications", "notifications.column_settings.alert": "Desktop notifications",

View file

@ -150,15 +150,12 @@
"compose_form.spoiler.unmarked": "Aldoni averton de enhavo", "compose_form.spoiler.unmarked": "Aldoni averton de enhavo",
"confirmation_modal.cancel": "Nuligi", "confirmation_modal.cancel": "Nuligi",
"confirmations.block.confirm": "Bloki", "confirmations.block.confirm": "Bloki",
"confirmations.cancel_follow_request.confirm": "Eksigi peton",
"confirmations.cancel_follow_request.message": "Ĉu vi certas ke vi volas eksigi vian peton por sekvi {name}?",
"confirmations.delete.confirm": "Forigi", "confirmations.delete.confirm": "Forigi",
"confirmations.delete.message": "Ĉu vi certas, ke vi volas forigi ĉi tiun afiŝon?", "confirmations.delete.message": "Ĉu vi certas, ke vi volas forigi ĉi tiun afiŝon?",
"confirmations.delete_list.confirm": "Forigi", "confirmations.delete_list.confirm": "Forigi",
"confirmations.delete_list.message": "Ĉu vi certas, ke vi volas porĉiame forigi ĉi tiun liston?", "confirmations.delete_list.message": "Ĉu vi certas, ke vi volas porĉiame forigi ĉi tiun liston?",
"confirmations.discard_edit_media.confirm": "Forĵeti", "confirmations.discard_edit_media.confirm": "Forĵeti",
"confirmations.discard_edit_media.message": "Vi havas nekonservitajn ŝanĝojn de la priskribo aŭ la antaŭmontro de la plurmedio, ĉu vi forĵetu ilin malgraŭe?", "confirmations.discard_edit_media.message": "Vi havas nekonservitajn ŝanĝojn de la priskribo aŭ la antaŭmontro de la plurmedio, ĉu vi forĵetu ilin malgraŭe?",
"confirmations.domain_block.message": "Ĉu vi vere, vere certas, ke vi volas tute bloki {domain}? Plej ofte, trafa blokado kaj silentigado sufiĉas kaj preferindas. Vi ne vidos enhavon de tiu domajno en publika templinio aŭ en viaj sciigoj. Viaj sekvantoj de tiu domajno estos forigitaj.",
"confirmations.edit.confirm": "Redakti", "confirmations.edit.confirm": "Redakti",
"confirmations.edit.message": "Redakti nun anstataŭigos la skribatan afiŝon. Ĉu vi certas, ke vi volas daŭrigi?", "confirmations.edit.message": "Redakti nun anstataŭigos la skribatan afiŝon. Ĉu vi certas, ke vi volas daŭrigi?",
"confirmations.logout.confirm": "Adiaŭi", "confirmations.logout.confirm": "Adiaŭi",

View file

@ -169,27 +169,30 @@
"compose_form.spoiler_placeholder": "Advertencia de contenido (opcional)", "compose_form.spoiler_placeholder": "Advertencia de contenido (opcional)",
"confirmation_modal.cancel": "Cancelar", "confirmation_modal.cancel": "Cancelar",
"confirmations.block.confirm": "Bloquear", "confirmations.block.confirm": "Bloquear",
"confirmations.cancel_follow_request.confirm": "Retirar solicitud",
"confirmations.cancel_follow_request.message": "¿Estás seguro que querés retirar tu solicitud para seguir a {name}?",
"confirmations.delete.confirm": "Eliminar", "confirmations.delete.confirm": "Eliminar",
"confirmations.delete.message": "¿Estás seguro que querés eliminar este mensaje?", "confirmations.delete.message": "¿Estás seguro que querés eliminar este mensaje?",
"confirmations.delete.title": "¿Eliminar mensaje?",
"confirmations.delete_list.confirm": "Eliminar", "confirmations.delete_list.confirm": "Eliminar",
"confirmations.delete_list.message": "¿Estás seguro que querés eliminar permanentemente esta lista?", "confirmations.delete_list.message": "¿Estás seguro que querés eliminar permanentemente esta lista?",
"confirmations.delete_list.title": "¿Eliminar lista?",
"confirmations.discard_edit_media.confirm": "Descartar", "confirmations.discard_edit_media.confirm": "Descartar",
"confirmations.discard_edit_media.message": "Tenés cambios sin guardar en la descripción de medios o en la vista previa, ¿querés descartarlos de todos modos?", "confirmations.discard_edit_media.message": "Tenés cambios sin guardar en la descripción de medios o en la vista previa, ¿querés descartarlos de todos modos?",
"confirmations.domain_block.confirm": "Bloquear servidor",
"confirmations.domain_block.message": "¿Estás completamente seguro que querés bloquear el {domain} entero? En la mayoría de los casos, unos cuantos bloqueos y silenciados puntuales son suficientes y preferibles. No vas a ver contenido de ese dominio en ninguna de tus líneas temporales o en tus notificaciones. Tus seguidores de ese dominio serán quitados.",
"confirmations.edit.confirm": "Editar", "confirmations.edit.confirm": "Editar",
"confirmations.edit.message": "Editar ahora sobreescribirá el mensaje que estás redactando actualmente. ¿Estás seguro que querés seguir?", "confirmations.edit.message": "Editar ahora sobreescribirá el mensaje que estás redactando actualmente. ¿Estás seguro que querés seguir?",
"confirmations.edit.title": "¿Sobrescribir mensaje?",
"confirmations.logout.confirm": "Cerrar sesión", "confirmations.logout.confirm": "Cerrar sesión",
"confirmations.logout.message": "¿Estás seguro que querés cerrar la sesión?", "confirmations.logout.message": "¿Estás seguro que querés cerrar la sesión?",
"confirmations.logout.title": "¿Cerrar sesión?",
"confirmations.mute.confirm": "Silenciar", "confirmations.mute.confirm": "Silenciar",
"confirmations.redraft.confirm": "Eliminar mensaje original y editarlo", "confirmations.redraft.confirm": "Eliminar mensaje original y editarlo",
"confirmations.redraft.message": "¿Estás seguro que querés eliminar este mensaje y volver a editarlo? Se perderán las veces marcadas como favorito y sus adhesiones, y las respuestas al mensaje original quedarán huérfanas.", "confirmations.redraft.message": "¿Estás seguro que querés eliminar este mensaje y volver a editarlo? Se perderán las veces marcadas como favorito y sus adhesiones, y las respuestas al mensaje original quedarán huérfanas.",
"confirmations.redraft.title": "¿Eliminar y volver a redactar mensaje?",
"confirmations.reply.confirm": "Responder", "confirmations.reply.confirm": "Responder",
"confirmations.reply.message": "Responder ahora sobreescribirá el mensaje que estás redactando actualmente. ¿Estás seguro que querés seguir?", "confirmations.reply.message": "Responder ahora sobreescribirá el mensaje que estás redactando actualmente. ¿Estás seguro que querés seguir?",
"confirmations.reply.title": "¿Sobrescribir mensaje?",
"confirmations.unfollow.confirm": "Dejar de seguir", "confirmations.unfollow.confirm": "Dejar de seguir",
"confirmations.unfollow.message": "¿Estás seguro que querés dejar de seguir a {name}?", "confirmations.unfollow.message": "¿Estás seguro que querés dejar de seguir a {name}?",
"confirmations.unfollow.title": "¿Dejar de seguir al usuario?",
"conversation.delete": "Eliminar conversación", "conversation.delete": "Eliminar conversación",
"conversation.mark_as_read": "Marcar como leída", "conversation.mark_as_read": "Marcar como leída",
"conversation.open": "Ver conversación", "conversation.open": "Ver conversación",
@ -507,6 +510,7 @@
"notification_requests.title": "Notificaciones filtradas", "notification_requests.title": "Notificaciones filtradas",
"notifications.clear": "Limpiar notificaciones", "notifications.clear": "Limpiar notificaciones",
"notifications.clear_confirmation": "¿Estás seguro que querés limpiar todas tus notificaciones permanentemente?", "notifications.clear_confirmation": "¿Estás seguro que querés limpiar todas tus notificaciones permanentemente?",
"notifications.clear_title": "¿Limpiar notificaciones?",
"notifications.column_settings.admin.report": "Nuevas denuncias:", "notifications.column_settings.admin.report": "Nuevas denuncias:",
"notifications.column_settings.admin.sign_up": "Nuevos registros:", "notifications.column_settings.admin.sign_up": "Nuevos registros:",
"notifications.column_settings.alert": "Notificaciones de escritorio", "notifications.column_settings.alert": "Notificaciones de escritorio",

View file

@ -169,27 +169,30 @@
"compose_form.spoiler_placeholder": "Advertencia de contenido (opcional)", "compose_form.spoiler_placeholder": "Advertencia de contenido (opcional)",
"confirmation_modal.cancel": "Cancelar", "confirmation_modal.cancel": "Cancelar",
"confirmations.block.confirm": "Bloquear", "confirmations.block.confirm": "Bloquear",
"confirmations.cancel_follow_request.confirm": "Retirar solicitud",
"confirmations.cancel_follow_request.message": "¿Estás seguro de que deseas retirar tu solicitud para seguir a {name}?",
"confirmations.delete.confirm": "Eliminar", "confirmations.delete.confirm": "Eliminar",
"confirmations.delete.message": "¿Estás seguro de que quieres borrar este toot?", "confirmations.delete.message": "¿Estás seguro de que quieres borrar este toot?",
"confirmations.delete.title": "¿Eliminar publicación?",
"confirmations.delete_list.confirm": "Eliminar", "confirmations.delete_list.confirm": "Eliminar",
"confirmations.delete_list.message": "¿Seguro que quieres borrar esta lista permanentemente?", "confirmations.delete_list.message": "¿Seguro que quieres borrar esta lista permanentemente?",
"confirmations.delete_list.title": "¿Eliminar lista?",
"confirmations.discard_edit_media.confirm": "Descartar", "confirmations.discard_edit_media.confirm": "Descartar",
"confirmations.discard_edit_media.message": "Tienes cambios sin guardar en la descripción o vista previa del archivo, ¿deseas descartarlos de cualquier manera?", "confirmations.discard_edit_media.message": "Tienes cambios sin guardar en la descripción o vista previa del archivo, ¿deseas descartarlos de cualquier manera?",
"confirmations.domain_block.confirm": "Bloquear servidor",
"confirmations.domain_block.message": "¿Seguro de que quieres bloquear al dominio {domain} entero? En general unos cuantos bloqueos y silenciados concretos es suficiente y preferible.",
"confirmations.edit.confirm": "Editar", "confirmations.edit.confirm": "Editar",
"confirmations.edit.message": "Editar sobrescribirá el mensaje que estás escribiendo. ¿Estás seguro de que deseas continuar?", "confirmations.edit.message": "Editar sobrescribirá el mensaje que estás escribiendo. ¿Estás seguro de que deseas continuar?",
"confirmations.edit.title": "¿Sobrescribir publicación?",
"confirmations.logout.confirm": "Cerrar sesión", "confirmations.logout.confirm": "Cerrar sesión",
"confirmations.logout.message": "¿Estás seguro de querer cerrar la sesión?", "confirmations.logout.message": "¿Estás seguro de querer cerrar la sesión?",
"confirmations.logout.title": "¿Cerrar sesión?",
"confirmations.mute.confirm": "Silenciar", "confirmations.mute.confirm": "Silenciar",
"confirmations.redraft.confirm": "Borrar y volver a borrador", "confirmations.redraft.confirm": "Borrar y volver a borrador",
"confirmations.redraft.message": "¿Estás seguro que quieres borrar esta publicación y editarla? Los favoritos e impulsos se perderán, y las respuestas a la publicación original quedarán separadas.", "confirmations.redraft.message": "¿Estás seguro que quieres borrar esta publicación y editarla? Los favoritos e impulsos se perderán, y las respuestas a la publicación original quedarán separadas.",
"confirmations.redraft.title": "¿Borrar y volver a redactar la publicación?",
"confirmations.reply.confirm": "Responder", "confirmations.reply.confirm": "Responder",
"confirmations.reply.message": "Responder sobrescribirá el mensaje que estás escribiendo. ¿Estás seguro de que deseas continuar?", "confirmations.reply.message": "Responder sobrescribirá el mensaje que estás escribiendo. ¿Estás seguro de que deseas continuar?",
"confirmations.reply.title": "¿Sobrescribir publicación?",
"confirmations.unfollow.confirm": "Dejar de seguir", "confirmations.unfollow.confirm": "Dejar de seguir",
"confirmations.unfollow.message": "¿Estás seguro de que quieres dejar de seguir a {name}?", "confirmations.unfollow.message": "¿Estás seguro de que quieres dejar de seguir a {name}?",
"confirmations.unfollow.title": "¿Dejar de seguir al usuario?",
"conversation.delete": "Borrar conversación", "conversation.delete": "Borrar conversación",
"conversation.mark_as_read": "Marcar como leído", "conversation.mark_as_read": "Marcar como leído",
"conversation.open": "Ver conversación", "conversation.open": "Ver conversación",
@ -507,6 +510,7 @@
"notification_requests.title": "Notificaciones filtradas", "notification_requests.title": "Notificaciones filtradas",
"notifications.clear": "Limpiar notificaciones", "notifications.clear": "Limpiar notificaciones",
"notifications.clear_confirmation": "¿Seguro de querer borrar permanentemente todas tus notificaciones?", "notifications.clear_confirmation": "¿Seguro de querer borrar permanentemente todas tus notificaciones?",
"notifications.clear_title": "¿Borrar notificaciones?",
"notifications.column_settings.admin.report": "Nuevas denuncias:", "notifications.column_settings.admin.report": "Nuevas denuncias:",
"notifications.column_settings.admin.sign_up": "Registros nuevos:", "notifications.column_settings.admin.sign_up": "Registros nuevos:",
"notifications.column_settings.alert": "Notificaciones de escritorio", "notifications.column_settings.alert": "Notificaciones de escritorio",

View file

@ -169,27 +169,30 @@
"compose_form.spoiler_placeholder": "Advertencia de contenido (opcional)", "compose_form.spoiler_placeholder": "Advertencia de contenido (opcional)",
"confirmation_modal.cancel": "Cancelar", "confirmation_modal.cancel": "Cancelar",
"confirmations.block.confirm": "Bloquear", "confirmations.block.confirm": "Bloquear",
"confirmations.cancel_follow_request.confirm": "Retirar solicitud",
"confirmations.cancel_follow_request.message": "¿Estás seguro de que deseas retirar tu solicitud para seguir a {name}?",
"confirmations.delete.confirm": "Eliminar", "confirmations.delete.confirm": "Eliminar",
"confirmations.delete.message": "¿Estás seguro de que quieres borrar esta publicación?", "confirmations.delete.message": "¿Estás seguro de que quieres borrar esta publicación?",
"confirmations.delete.title": "¿Eliminar publicación?",
"confirmations.delete_list.confirm": "Eliminar", "confirmations.delete_list.confirm": "Eliminar",
"confirmations.delete_list.message": "¿Seguro que quieres borrar esta lista permanentemente?", "confirmations.delete_list.message": "¿Seguro que quieres borrar esta lista permanentemente?",
"confirmations.delete_list.title": "¿Eliminar lista?",
"confirmations.discard_edit_media.confirm": "Descartar", "confirmations.discard_edit_media.confirm": "Descartar",
"confirmations.discard_edit_media.message": "Tienes cambios sin guardar en la descripción o vista previa del archivo audiovisual, ¿descartarlos de todos modos?", "confirmations.discard_edit_media.message": "Tienes cambios sin guardar en la descripción o vista previa del archivo audiovisual, ¿descartarlos de todos modos?",
"confirmations.domain_block.confirm": "Bloquear servidor",
"confirmations.domain_block.message": "¿Seguro que quieres bloquear todo el dominio {domain}? En general, unos cuantos bloqueos y silenciados concretos es suficiente y preferible. No verás contenido del dominio en ninguna cronología pública ni en tus notificaciones. Se eliminarán tus seguidores procedentes de ese dominio.",
"confirmations.edit.confirm": "Editar", "confirmations.edit.confirm": "Editar",
"confirmations.edit.message": "Editar ahora reemplazará el mensaje que estás escribiendo. ¿Seguro que quieres proceder?", "confirmations.edit.message": "Editar ahora reemplazará el mensaje que estás escribiendo. ¿Seguro que quieres proceder?",
"confirmations.edit.title": "¿Sobrescribir publicación?",
"confirmations.logout.confirm": "Cerrar sesión", "confirmations.logout.confirm": "Cerrar sesión",
"confirmations.logout.message": "¿Seguro que quieres cerrar la sesión?", "confirmations.logout.message": "¿Seguro que quieres cerrar la sesión?",
"confirmations.logout.title": "¿Cerrar sesión?",
"confirmations.mute.confirm": "Silenciar", "confirmations.mute.confirm": "Silenciar",
"confirmations.redraft.confirm": "Borrar y volver a borrador", "confirmations.redraft.confirm": "Borrar y volver a borrador",
"confirmations.redraft.message": "¿Estás seguro de querer borrar esta publicación y reescribirla? Los favoritos e impulsos se perderán, y las respuestas a la publicación original quedarán sin contexto.", "confirmations.redraft.message": "¿Estás seguro de querer borrar esta publicación y reescribirla? Los favoritos e impulsos se perderán, y las respuestas a la publicación original quedarán sin contexto.",
"confirmations.redraft.title": "¿Borrar y volver a redactar la publicación?",
"confirmations.reply.confirm": "Responder", "confirmations.reply.confirm": "Responder",
"confirmations.reply.message": "Responder sobrescribirá el mensaje que estás escribiendo. ¿Seguro que deseas continuar?", "confirmations.reply.message": "Responder sobrescribirá el mensaje que estás escribiendo. ¿Seguro que deseas continuar?",
"confirmations.reply.title": "¿Sobrescribir publicación?",
"confirmations.unfollow.confirm": "Dejar de seguir", "confirmations.unfollow.confirm": "Dejar de seguir",
"confirmations.unfollow.message": "¿Seguro que quieres dejar de seguir a {name}?", "confirmations.unfollow.message": "¿Seguro que quieres dejar de seguir a {name}?",
"confirmations.unfollow.title": "¿Dejar de seguir al usuario?",
"conversation.delete": "Borrar conversación", "conversation.delete": "Borrar conversación",
"conversation.mark_as_read": "Marcar como leído", "conversation.mark_as_read": "Marcar como leído",
"conversation.open": "Ver conversación", "conversation.open": "Ver conversación",
@ -507,6 +510,7 @@
"notification_requests.title": "Notificaciones filtradas", "notification_requests.title": "Notificaciones filtradas",
"notifications.clear": "Limpiar notificaciones", "notifications.clear": "Limpiar notificaciones",
"notifications.clear_confirmation": "¿Seguro que quieres limpiar permanentemente todas tus notificaciones?", "notifications.clear_confirmation": "¿Seguro que quieres limpiar permanentemente todas tus notificaciones?",
"notifications.clear_title": "¿Borrar notificaciones?",
"notifications.column_settings.admin.report": "Nuevos informes:", "notifications.column_settings.admin.report": "Nuevos informes:",
"notifications.column_settings.admin.sign_up": "Nuevos registros:", "notifications.column_settings.admin.sign_up": "Nuevos registros:",
"notifications.column_settings.alert": "Notificaciones de escritorio", "notifications.column_settings.alert": "Notificaciones de escritorio",

View file

@ -166,16 +166,12 @@
"compose_form.spoiler_placeholder": "Sisuhoiatus (valikuline)", "compose_form.spoiler_placeholder": "Sisuhoiatus (valikuline)",
"confirmation_modal.cancel": "Katkesta", "confirmation_modal.cancel": "Katkesta",
"confirmations.block.confirm": "Blokeeri", "confirmations.block.confirm": "Blokeeri",
"confirmations.cancel_follow_request.confirm": "Tühista taotlus",
"confirmations.cancel_follow_request.message": "Oled kindel, et soovid kasutaja {name} jälgimistaotluse tagasi võtta?",
"confirmations.delete.confirm": "Kustuta", "confirmations.delete.confirm": "Kustuta",
"confirmations.delete.message": "Oled kindel, et soovid postituse kustutada?", "confirmations.delete.message": "Oled kindel, et soovid postituse kustutada?",
"confirmations.delete_list.confirm": "Kustuta", "confirmations.delete_list.confirm": "Kustuta",
"confirmations.delete_list.message": "Oled kindel, et soovid selle loetelu pöördumatult kustutada?", "confirmations.delete_list.message": "Oled kindel, et soovid selle loetelu pöördumatult kustutada?",
"confirmations.discard_edit_media.confirm": "Hülga", "confirmations.discard_edit_media.confirm": "Hülga",
"confirmations.discard_edit_media.message": "Sul on salvestamata muudatusi meediakirjelduses või eelvaates, kas hülgad need?", "confirmations.discard_edit_media.message": "Sul on salvestamata muudatusi meediakirjelduses või eelvaates, kas hülgad need?",
"confirmations.domain_block.confirm": "Blokeeri server",
"confirmations.domain_block.message": "Oled ikka päris-päris kindel, et soovid blokeerida terve {domain}? Enamikel juhtudel piisab mõnest sihitud blokist või vaigistusest, mis on eelistatavam. Sa ei näe selle domeeni sisu ühelgi avalikul ajajoonel või enda teadetes. Su jälgijad sellest domeenist eemaldatakse.",
"confirmations.edit.confirm": "Muuda", "confirmations.edit.confirm": "Muuda",
"confirmations.edit.message": "Muutes praegu kirjutatakse hetkel loodav sõnum üle. Kas oled kindel, et soovid jätkata?", "confirmations.edit.message": "Muutes praegu kirjutatakse hetkel loodav sõnum üle. Kas oled kindel, et soovid jätkata?",
"confirmations.logout.confirm": "Välju", "confirmations.logout.confirm": "Välju",

View file

@ -166,23 +166,23 @@
"compose_form.spoiler_placeholder": "Edukiaren abisua (aukerakoa)", "compose_form.spoiler_placeholder": "Edukiaren abisua (aukerakoa)",
"confirmation_modal.cancel": "Utzi", "confirmation_modal.cancel": "Utzi",
"confirmations.block.confirm": "Blokeatu", "confirmations.block.confirm": "Blokeatu",
"confirmations.cancel_follow_request.confirm": "Baztertu eskaera",
"confirmations.cancel_follow_request.message": "Ziur {name} jarraitzeko eskaera bertan behera utzi nahi duzula?",
"confirmations.delete.confirm": "Ezabatu", "confirmations.delete.confirm": "Ezabatu",
"confirmations.delete.message": "Ziur bidalketa hau ezabatu nahi duzula?", "confirmations.delete.message": "Ziur bidalketa hau ezabatu nahi duzula?",
"confirmations.delete.title": "Ezabatu bidalketa?",
"confirmations.delete_list.confirm": "Ezabatu", "confirmations.delete_list.confirm": "Ezabatu",
"confirmations.delete_list.message": "Ziur behin betiko ezabatu nahi duzula zerrenda hau?", "confirmations.delete_list.message": "Ziur behin betiko ezabatu nahi duzula zerrenda hau?",
"confirmations.delete_list.title": "Ezabatu zerrenda?",
"confirmations.discard_edit_media.confirm": "Baztertu", "confirmations.discard_edit_media.confirm": "Baztertu",
"confirmations.discard_edit_media.message": "Multimediaren deskribapen edo aurrebistan gorde gabeko aldaketak daude, baztertu nahi dituzu?", "confirmations.discard_edit_media.message": "Multimediaren deskribapen edo aurrebistan gorde gabeko aldaketak daude, baztertu nahi dituzu?",
"confirmations.domain_block.confirm": "Blokeatu zerbitzaria",
"confirmations.domain_block.message": "Ziur, erabat ziur, {domain} domeinu osoa blokeatu nahi duzula? Gehienetan gutxi batzuk blokeatu edo mututzearekin nahikoa da. Ez duzu domeinu horretako edukirik ikusiko denbora lerroetan edo jakinarazpenetan. Domeinu horretako zure jarraitzaileak kenduko dira ere.",
"confirmations.edit.confirm": "Editatu", "confirmations.edit.confirm": "Editatu",
"confirmations.edit.message": "Orain editatzen baduzu, une honetan idazten ari zaren mezua gainidatziko da. Ziur jarraitu nahi duzula?", "confirmations.edit.message": "Orain editatzen baduzu, une honetan idazten ari zaren mezua gainidatziko da. Ziur jarraitu nahi duzula?",
"confirmations.logout.confirm": "Amaitu saioa", "confirmations.logout.confirm": "Amaitu saioa",
"confirmations.logout.message": "Ziur saioa amaitu nahi duzula?", "confirmations.logout.message": "Ziur saioa amaitu nahi duzula?",
"confirmations.logout.title": "Itxi saioa?",
"confirmations.mute.confirm": "Mututu", "confirmations.mute.confirm": "Mututu",
"confirmations.redraft.confirm": "Ezabatu eta berridatzi", "confirmations.redraft.confirm": "Ezabatu eta berridatzi",
"confirmations.redraft.message": "Ziur argitalpen hau ezabatu eta zirriborroa berriro egitea nahi duzula? Gogokoak eta bultzadak galduko dira, eta jatorrizko argitalpenaren erantzunak zurtz geratuko dira.", "confirmations.redraft.message": "Ziur argitalpen hau ezabatu eta zirriborroa berriro egitea nahi duzula? Gogokoak eta bultzadak galduko dira, eta jatorrizko argitalpenaren erantzunak zurtz geratuko dira.",
"confirmations.redraft.title": "Ezabatu eta berridatzi bidalketa?",
"confirmations.reply.confirm": "Erantzun", "confirmations.reply.confirm": "Erantzun",
"confirmations.reply.message": "Orain erantzuteak idazten ari zaren mezua gainidatziko du. Ziur jarraitu nahi duzula?", "confirmations.reply.message": "Orain erantzuteak idazten ari zaren mezua gainidatziko du. Ziur jarraitu nahi duzula?",
"confirmations.unfollow.confirm": "Utzi jarraitzeari", "confirmations.unfollow.confirm": "Utzi jarraitzeari",
@ -492,9 +492,12 @@
"notification_requests.title": "Iragazitako jakinarazpenak", "notification_requests.title": "Iragazitako jakinarazpenak",
"notifications.clear": "Garbitu jakinarazpenak", "notifications.clear": "Garbitu jakinarazpenak",
"notifications.clear_confirmation": "Ziur zure jakinarazpen guztiak behin betirako garbitu nahi dituzula?", "notifications.clear_confirmation": "Ziur zure jakinarazpen guztiak behin betirako garbitu nahi dituzula?",
"notifications.clear_title": "Garbitu jakinarazpenak?",
"notifications.column_settings.admin.report": "Txosten berriak:", "notifications.column_settings.admin.report": "Txosten berriak:",
"notifications.column_settings.admin.sign_up": "Izen-emate berriak:", "notifications.column_settings.admin.sign_up": "Izen-emate berriak:",
"notifications.column_settings.alert": "Mahaigaineko jakinarazpenak", "notifications.column_settings.alert": "Mahaigaineko jakinarazpenak",
"notifications.column_settings.beta.category": "Ezaugarri esperimentalak",
"notifications.column_settings.beta.grouping": "Multzokatu jakinarazpenak",
"notifications.column_settings.favourite": "Gogokoak:", "notifications.column_settings.favourite": "Gogokoak:",
"notifications.column_settings.filter_bar.advanced": "Bistaratu kategoria guztiak", "notifications.column_settings.filter_bar.advanced": "Bistaratu kategoria guztiak",
"notifications.column_settings.filter_bar.category": "Iragazki-barra bizkorra", "notifications.column_settings.filter_bar.category": "Iragazki-barra bizkorra",
@ -659,8 +662,11 @@
"report_notification.attached_statuses": "{count, plural, one {Bidalketa {count}} other {{count} bidalketa}} erantsita", "report_notification.attached_statuses": "{count, plural, one {Bidalketa {count}} other {{count} bidalketa}} erantsita",
"report_notification.categories.legal": "Legala", "report_notification.categories.legal": "Legala",
"report_notification.categories.other": "Bestelakoak", "report_notification.categories.other": "Bestelakoak",
"report_notification.categories.other_sentence": "bestelakoak",
"report_notification.categories.spam": "Spam", "report_notification.categories.spam": "Spam",
"report_notification.categories.spam_sentence": "spama",
"report_notification.categories.violation": "Arau haustea", "report_notification.categories.violation": "Arau haustea",
"report_notification.categories.violation_sentence": "arau haustea",
"report_notification.open": "Ireki salaketa", "report_notification.open": "Ireki salaketa",
"search.no_recent_searches": "Duela gutxiko bilaketarik ez", "search.no_recent_searches": "Duela gutxiko bilaketarik ez",
"search.placeholder": "Bilatu", "search.placeholder": "Bilatu",

View file

@ -158,15 +158,12 @@
"compose_form.spoiler_placeholder": "هشدار محتوا (اختیاری)", "compose_form.spoiler_placeholder": "هشدار محتوا (اختیاری)",
"confirmation_modal.cancel": "لغو", "confirmation_modal.cancel": "لغو",
"confirmations.block.confirm": "انسداد", "confirmations.block.confirm": "انسداد",
"confirmations.cancel_follow_request.confirm": "رد کردن درخواست",
"confirmations.cancel_follow_request.message": "مطمئنید که می خواهید درخواست پی‌گیری {name} را لغو کنید؟",
"confirmations.delete.confirm": "حذف", "confirmations.delete.confirm": "حذف",
"confirmations.delete.message": "آیا مطمئنید که می‌خواهید این فرسته را حذف کنید؟", "confirmations.delete.message": "آیا مطمئنید که می‌خواهید این فرسته را حذف کنید؟",
"confirmations.delete_list.confirm": "حذف", "confirmations.delete_list.confirm": "حذف",
"confirmations.delete_list.message": "مطمئنید می‌خواهید این سیاهه را برای همیشه حذف کنید؟", "confirmations.delete_list.message": "مطمئنید می‌خواهید این سیاهه را برای همیشه حذف کنید؟",
"confirmations.discard_edit_media.confirm": "دور انداختن", "confirmations.discard_edit_media.confirm": "دور انداختن",
"confirmations.discard_edit_media.message": "تغییرات ذخیره نشده‌ای در توضیحات یا پیش‌نمایش رسانه دارید. همگی نادیده گرفته شوند؟", "confirmations.discard_edit_media.message": "تغییرات ذخیره نشده‌ای در توضیحات یا پیش‌نمایش رسانه دارید. همگی نادیده گرفته شوند؟",
"confirmations.domain_block.message": "آیا جدی جدی می‌خواهید تمام دامنهٔ {domain} را مسدود کنید؟ در بیشتر موارد مسدود کردن یا خموشاندن چند حساب خاص کافی است و توصیه می‌شود. پس از این کار شما هیچ محتوایی را از این دامنه در خط زمانی عمومی یا آگاهی‌هایتان نخواهید دید. پی‌گیرانتان از این دامنه هم برداشته خواهند شد.",
"confirmations.edit.confirm": "ویرایش", "confirmations.edit.confirm": "ویرایش",
"confirmations.edit.message": "در صورت ویرایش، پیامی که در حال نوشتنش بودید از بین خواهد رفت. می‌خواهید ادامه دهید؟", "confirmations.edit.message": "در صورت ویرایش، پیامی که در حال نوشتنش بودید از بین خواهد رفت. می‌خواهید ادامه دهید؟",
"confirmations.logout.confirm": "خروج از حساب", "confirmations.logout.confirm": "خروج از حساب",

View file

@ -1,12 +1,12 @@
{ {
"about.blocks": "Moderoidut palvelimet", "about.blocks": "Moderoidut palvelimet",
"about.contact": "Ota yhteys:", "about.contact": "Yhteydenotto:",
"about.disclaimer": "Mastodon on vapaa avoimen lähdekoodin ohjelmisto ja Mastodon gGmbH:n tavaramerkki.", "about.disclaimer": "Mastodon on vapaa avoimen lähdekoodin ohjelmisto ja Mastodon gGmbH:n tavaramerkki.",
"about.domain_blocks.no_reason_available": "Syy ei ole tiedossa", "about.domain_blocks.no_reason_available": "Syy ei ole tiedossa",
"about.domain_blocks.preamble": "Mastodonin avulla voidaan yleensä tarkastella minkä tahansa fediversumiin kuuluvan palvelimen sisältöä, ja olla yhteyksissä eri palvelinten käyttäjien kanssa. Nämä poikkeukset koskevat yksin tätä palvelinta.", "about.domain_blocks.preamble": "Mastodonin avulla voidaan yleensä tarkastella minkä tahansa fediversumiin kuuluvan palvelimen sisältöä, ja olla yhteyksissä eri palvelinten käyttäjien kanssa. Nämä poikkeukset koskevat yksin tätä palvelinta.",
"about.domain_blocks.silenced.explanation": "Et yleensä näe tämän palvelimen profiileja ja sisältöä, jollet erityisesti etsi juuri sitä tai liity siihen seuraamalla.", "about.domain_blocks.silenced.explanation": "Et yleensä näe tämän palvelimen profiileja ja sisältöä, jollet erityisesti etsi juuri sitä tai liity siihen seuraamalla.",
"about.domain_blocks.silenced.title": "Rajoitettu", "about.domain_blocks.silenced.title": "Rajoitettu",
"about.domain_blocks.suspended.explanation": "Mitään tämän palvelimen tietoja ei käsitellä, tallenneta tai vaihdeta, mikä tekee vuorovaikutuksesta ja viestinnästä sen käyttäjien kanssa mahdotonta.", "about.domain_blocks.suspended.explanation": "Mitään tämän palvelimen tietoja ei käsitellä, tallenneta eikä vaihdeta, mikä tekee vuorovaikutuksesta ja viestinnästä sen käyttäjien kanssa mahdotonta.",
"about.domain_blocks.suspended.title": "Jäädytetty", "about.domain_blocks.suspended.title": "Jäädytetty",
"about.not_available": "Näitä tietoja ei ole julkaistu tällä palvelimella.", "about.not_available": "Näitä tietoja ei ole julkaistu tällä palvelimella.",
"about.powered_by": "Hajautetun sosiaalisen median tarjoaa {mastodon}", "about.powered_by": "Hajautetun sosiaalisen median tarjoaa {mastodon}",
@ -45,7 +45,7 @@
"account.joined_short": "Liittynyt", "account.joined_short": "Liittynyt",
"account.languages": "Vaihda tilattuja kieliä", "account.languages": "Vaihda tilattuja kieliä",
"account.link_verified_on": "Linkin omistus tarkistettiin {date}", "account.link_verified_on": "Linkin omistus tarkistettiin {date}",
"account.locked_info": "Tilin yksityisyystilaksi on määritetty lukittu ja tilin omistaja arvioi erikseen, kuka voi seurata häntä.", "account.locked_info": "Tilin yksityisyystilaksi on määritetty lukittu. Tilin omistaja arvioi erikseen, kuka voi seurata häntä.",
"account.media": "Media", "account.media": "Media",
"account.mention": "Mainitse @{name}", "account.mention": "Mainitse @{name}",
"account.moved_to": "{name} on ilmoittanut uudeksi tilikseen", "account.moved_to": "{name} on ilmoittanut uudeksi tilikseen",
@ -59,14 +59,14 @@
"account.posts": "Julkaisut", "account.posts": "Julkaisut",
"account.posts_with_replies": "Julkaisut ja vastaukset", "account.posts_with_replies": "Julkaisut ja vastaukset",
"account.report": "Raportoi @{name}", "account.report": "Raportoi @{name}",
"account.requested": "Odottaa hyväksyntää. Peruuta seuraamispyyntö napsauttamalla", "account.requested": "Odottaa hyväksyntää. Peruuta seurantapyyntö napsauttamalla",
"account.requested_follow": "{name} on pyytänyt lupaa seurata sinua", "account.requested_follow": "{name} on pyytänyt lupaa seurata sinua",
"account.share": "Jaa käyttäjän @{name} profiili", "account.share": "Jaa käyttäjän @{name} profiili",
"account.show_reblogs": "Näytä käyttäjän @{name} tehostukset", "account.show_reblogs": "Näytä käyttäjän @{name} tehostukset",
"account.statuses_counter": "{count, plural, one {{counter} julkaisu} other {{counter} julkaisua}}", "account.statuses_counter": "{count, plural, one {{counter} julkaisu} other {{counter} julkaisua}}",
"account.unblock": "Kumoa käyttäjän @{name} esto", "account.unblock": "Kumoa käyttäjän @{name} esto",
"account.unblock_domain": "Kumoa verkkotunnuksen {domain} esto", "account.unblock_domain": "Kumoa verkkotunnuksen {domain} esto",
"account.unblock_short": "Poista esto", "account.unblock_short": "Kumoa esto",
"account.unendorse": "Kumoa suosittelu profiilissasi", "account.unendorse": "Kumoa suosittelu profiilissasi",
"account.unfollow": "Lopeta seuraaminen", "account.unfollow": "Lopeta seuraaminen",
"account.unmute": "Poista käyttäjän @{name} mykistys", "account.unmute": "Poista käyttäjän @{name} mykistys",
@ -82,7 +82,7 @@
"admin.impact_report.instance_followers": "Seuraajat, jotka käyttäjämme menettäisivät", "admin.impact_report.instance_followers": "Seuraajat, jotka käyttäjämme menettäisivät",
"admin.impact_report.instance_follows": "Seuraajat, jotka heidän käyttäjänsä menettäisivät", "admin.impact_report.instance_follows": "Seuraajat, jotka heidän käyttäjänsä menettäisivät",
"admin.impact_report.title": "Vaikutusten yhteenveto", "admin.impact_report.title": "Vaikutusten yhteenveto",
"alert.rate_limited.message": "Yritä uudestaan {retry_time, time, medium} jälkeen.", "alert.rate_limited.message": "Yritä uudelleen {retry_time, time, medium} jälkeen.",
"alert.rate_limited.title": "Pyyntömäärää rajoitettu", "alert.rate_limited.title": "Pyyntömäärää rajoitettu",
"alert.unexpected.message": "Tapahtui odottamaton virhe.", "alert.unexpected.message": "Tapahtui odottamaton virhe.",
"alert.unexpected.title": "Hups!", "alert.unexpected.title": "Hups!",
@ -96,14 +96,14 @@
"block_modal.they_cant_see_posts": "Hän ei voi enää nähdä julkaisujasi, etkä sinä voi nähdä hänen.", "block_modal.they_cant_see_posts": "Hän ei voi enää nähdä julkaisujasi, etkä sinä voi nähdä hänen.",
"block_modal.they_will_know": "Hän voi nähdä, että hänet on estetty.", "block_modal.they_will_know": "Hän voi nähdä, että hänet on estetty.",
"block_modal.title": "Estetäänkö käyttäjä?", "block_modal.title": "Estetäänkö käyttäjä?",
"block_modal.you_wont_see_mentions": "Et tule enää näkemään julkaisuja, joissa hänet mainitaan.", "block_modal.you_wont_see_mentions": "Et näe enää julkaisuja, joissa hänet mainitaan.",
"boost_modal.combo": "Ensi kerralla voit ohittaa tämän painamalla {combo}", "boost_modal.combo": "Ensi kerralla voit ohittaa tämän painamalla {combo}",
"bundle_column_error.copy_stacktrace": "Kopioi virheraportti", "bundle_column_error.copy_stacktrace": "Kopioi virheraportti",
"bundle_column_error.error.body": "Pyydettyä sivua ei voitu hahmontaa. Se voi johtua virheestä koodissamme tai selaimen yhteensopivuudessa.", "bundle_column_error.error.body": "Pyydettyä sivua ei voitu hahmontaa. Se voi johtua virheestä koodissamme tai selaimen yhteensopivuudessa.",
"bundle_column_error.error.title": "Voi ei!", "bundle_column_error.error.title": "Voi ei!",
"bundle_column_error.network.body": "Sivun lataamisessa tapahtui virhe. Tämä voi johtua tilapäisestä Internet-yhteyden tai tämän palvelimen ongelmasta.", "bundle_column_error.network.body": "Sivun lataamisessa tapahtui virhe. Tämä voi johtua tilapäisestä Internet-yhteyden tai tämän palvelimen ongelmasta.",
"bundle_column_error.network.title": "Verkkovirhe", "bundle_column_error.network.title": "Verkkovirhe",
"bundle_column_error.retry": "Yritä uudestaan", "bundle_column_error.retry": "Yritä uudelleen",
"bundle_column_error.return": "Palaa takaisin kotiin", "bundle_column_error.return": "Palaa takaisin kotiin",
"bundle_column_error.routing.body": "Pyydettyä sivua ei löytynyt. Oletko varma, että osoitepalkin URL-osoite on oikein?", "bundle_column_error.routing.body": "Pyydettyä sivua ei löytynyt. Oletko varma, että osoitepalkin URL-osoite on oikein?",
"bundle_column_error.routing.title": "404", "bundle_column_error.routing.title": "404",
@ -111,7 +111,7 @@
"bundle_modal_error.message": "Jotain meni pieleen komponenttia ladattaessa.", "bundle_modal_error.message": "Jotain meni pieleen komponenttia ladattaessa.",
"bundle_modal_error.retry": "Yritä uudelleen", "bundle_modal_error.retry": "Yritä uudelleen",
"closed_registrations.other_server_instructions": "Koska Mastodon on hajautettu, voit luoda tilin toiselle palvelimelle ja olla silti vuorovaikutuksessa tämän kanssa.", "closed_registrations.other_server_instructions": "Koska Mastodon on hajautettu, voit luoda tilin toiselle palvelimelle ja olla silti vuorovaikutuksessa tämän kanssa.",
"closed_registrations_modal.description": "Tilin luonti palveluun {domain} ei tällä hetkellä ole mahdollista, mutta huomioi, ettei Mastodonin käyttö edellytä juuri kyseisen palvelun tiliä.", "closed_registrations_modal.description": "Tilin luonti palvelimelle {domain} ei tällä hetkellä ole mahdollista, mutta ota huomioon, ettei Mastodonin käyttö edellytä juuri kyseisen palvelimen tiliä.",
"closed_registrations_modal.find_another_server": "Etsi toinen palvelin", "closed_registrations_modal.find_another_server": "Etsi toinen palvelin",
"closed_registrations_modal.preamble": "Mastodon on hajautettu, joten riippumatta siitä, missä luot tilisi, voit seurata ja olla vuorovaikutuksessa kenen tahansa kanssa tällä palvelimella. Voit jopa isännöidä palvelinta!", "closed_registrations_modal.preamble": "Mastodon on hajautettu, joten riippumatta siitä, missä luot tilisi, voit seurata ja olla vuorovaikutuksessa kenen tahansa kanssa tällä palvelimella. Voit jopa isännöidä palvelinta!",
"closed_registrations_modal.title": "Rekisteröityminen Mastodoniin", "closed_registrations_modal.title": "Rekisteröityminen Mastodoniin",
@ -119,12 +119,12 @@
"column.blocks": "Estetyt käyttäjät", "column.blocks": "Estetyt käyttäjät",
"column.bookmarks": "Kirjanmerkit", "column.bookmarks": "Kirjanmerkit",
"column.community": "Paikallinen aikajana", "column.community": "Paikallinen aikajana",
"column.direct": "Yksityiset maininnat", "column.direct": "Yksityismaininnat",
"column.directory": "Selaa profiileja", "column.directory": "Selaa profiileja",
"column.domain_blocks": "Estetyt verkkotunnukset", "column.domain_blocks": "Estetyt verkkotunnukset",
"column.favourites": "Suosikit", "column.favourites": "Suosikit",
"column.firehose": "Livesyötteet", "column.firehose": "Livesyötteet",
"column.follow_requests": "Seuraamispyynnöt", "column.follow_requests": "Seurantapyynnöt",
"column.home": "Koti", "column.home": "Koti",
"column.lists": "Listat", "column.lists": "Listat",
"column.mutes": "Mykistetyt käyttäjät", "column.mutes": "Mykistetyt käyttäjät",
@ -169,27 +169,30 @@
"compose_form.spoiler_placeholder": "Sisältövaroitus (valinnainen)", "compose_form.spoiler_placeholder": "Sisältövaroitus (valinnainen)",
"confirmation_modal.cancel": "Peruuta", "confirmation_modal.cancel": "Peruuta",
"confirmations.block.confirm": "Estä", "confirmations.block.confirm": "Estä",
"confirmations.cancel_follow_request.confirm": "Peruuta pyyntö",
"confirmations.cancel_follow_request.message": "Haluatko varmasti perua pyyntösi seurata käyttäjätiliä {name}?",
"confirmations.delete.confirm": "Poista", "confirmations.delete.confirm": "Poista",
"confirmations.delete.message": "Haluatko varmasti poistaa tämän julkaisun?", "confirmations.delete.message": "Haluatko varmasti poistaa tämän julkaisun?",
"confirmations.delete.title": "Poistetaanko julkaisu?",
"confirmations.delete_list.confirm": "Poista", "confirmations.delete_list.confirm": "Poista",
"confirmations.delete_list.message": "Haluatko varmasti poistaa tämän listan pysyvästi?", "confirmations.delete_list.message": "Haluatko varmasti poistaa tämän listan pysyvästi?",
"confirmations.delete_list.title": "Poistetaanko lista?",
"confirmations.discard_edit_media.confirm": "Hylkää", "confirmations.discard_edit_media.confirm": "Hylkää",
"confirmations.discard_edit_media.message": "Sinulla on tallentamattomia muutoksia median kuvaukseen tai esikatseluun. Hylätäänkö ne silti?", "confirmations.discard_edit_media.message": "Sinulla on tallentamattomia muutoksia median kuvaukseen tai esikatseluun. Hylätäänkö ne silti?",
"confirmations.domain_block.confirm": "Estä palvelin",
"confirmations.domain_block.message": "Haluatko aivan varmasti estää koko verkkotunnuksen {domain}? Useimmiten muutama kohdistettu esto tai mykistys on riittävä ja suositeltava toimi. Et näe sisältöä tästä verkkotunnuksesta millään julkisilla aikajanoilla tai ilmoituksissa. Tähän verkkotunnukseen kuuluvat seuraajasi poistetaan.",
"confirmations.edit.confirm": "Muokkaa", "confirmations.edit.confirm": "Muokkaa",
"confirmations.edit.message": "Jos muokkaat viestiä nyt, se korvaa parhaillaan työstämäsi viestin. Haluatko varmasti jatkaa?", "confirmations.edit.message": "Jos muokkaat viestiä nyt, se korvaa parhaillaan työstämäsi viestin. Haluatko varmasti jatkaa?",
"confirmations.edit.title": "Korvataanko julkaisu?",
"confirmations.logout.confirm": "Kirjaudu ulos", "confirmations.logout.confirm": "Kirjaudu ulos",
"confirmations.logout.message": "Haluatko varmasti kirjautua ulos?", "confirmations.logout.message": "Haluatko varmasti kirjautua ulos?",
"confirmations.logout.title": "Kirjaudutaanko ulos?",
"confirmations.mute.confirm": "Mykistä", "confirmations.mute.confirm": "Mykistä",
"confirmations.redraft.confirm": "Poista ja palauta muokattavaksi", "confirmations.redraft.confirm": "Poista ja palauta muokattavaksi",
"confirmations.redraft.message": "Haluatko varmasti poistaa julkaisun ja tehdä siitä luonnoksen? Suosikit ja tehostukset menetetään, ja alkuperäisen julkaisun vastaukset jäävät orvoiksi.", "confirmations.redraft.message": "Haluatko varmasti poistaa julkaisun ja tehdä siitä luonnoksen? Suosikit ja tehostukset menetetään, ja alkuperäisen julkaisun vastaukset jäävät orvoiksi.",
"confirmations.redraft.title": "Poistetaanko julkaisu ja palautetaanko se muokattavaksi?",
"confirmations.reply.confirm": "Vastaa", "confirmations.reply.confirm": "Vastaa",
"confirmations.reply.message": "Jos vastaat nyt, vastaus korvaa parhaillaan työstämäsi viestin. Haluatko varmasti jatkaa?", "confirmations.reply.message": "Jos vastaat nyt, vastaus korvaa parhaillaan työstämäsi viestin. Haluatko varmasti jatkaa?",
"confirmations.reply.title": "Korvataanko julkaisu?",
"confirmations.unfollow.confirm": "Lopeta seuraaminen", "confirmations.unfollow.confirm": "Lopeta seuraaminen",
"confirmations.unfollow.message": "Haluatko varmasti lopettaa profiilin {name} seuraamisen?", "confirmations.unfollow.message": "Haluatko varmasti lopettaa profiilin {name} seuraamisen?",
"confirmations.unfollow.title": "Lopetetaanko käyttäjän seuraaminen?",
"conversation.delete": "Poista keskustelu", "conversation.delete": "Poista keskustelu",
"conversation.mark_as_read": "Merkitse luetuksi", "conversation.mark_as_read": "Merkitse luetuksi",
"conversation.open": "Näytä keskustelu", "conversation.open": "Näytä keskustelu",
@ -205,29 +208,29 @@
"disabled_account_banner.text": "Tilisi {disabledAccount} on tällä hetkellä poissa käytöstä.", "disabled_account_banner.text": "Tilisi {disabledAccount} on tällä hetkellä poissa käytöstä.",
"dismissable_banner.community_timeline": "Nämä ovat tuoreimpia julkaisuja käyttäjiltä, joiden tili on palvelimella {domain}.", "dismissable_banner.community_timeline": "Nämä ovat tuoreimpia julkaisuja käyttäjiltä, joiden tili on palvelimella {domain}.",
"dismissable_banner.dismiss": "Hylkää", "dismissable_banner.dismiss": "Hylkää",
"dismissable_banner.explore_links": "Näitä uutisia jaetaan tänään sosiaalisessa verkossa eniten. Uusimmat ja eri käyttäjien eniten lähettämät uutiset nousevat listauksessa korkeammalle.", "dismissable_banner.explore_links": "Näitä uutisia jaetaan tänään sosiaalisessa verkossa eniten. Uusimmat ja eri käyttäjien eniten lähettämät uutiset nousevat korkeammalle sijalle.",
"dismissable_banner.explore_statuses": "Nämä sosiaalisen verkon julkaisut keräävät tänään eniten huomiota. Uusimmat, tehostetuimmat ja suosikeiksi lisätyimmät julkaisut nousevat listauksessa korkeammalle.", "dismissable_banner.explore_statuses": "Nämä sosiaalisen verkon julkaisut keräävät tänään eniten huomiota. Uusimmat, tehostetuimmat ja suosikeiksi lisätyimmät julkaisut nousevat korkeammalle sijalle.",
"dismissable_banner.explore_tags": "Nämä sosiaalisen verkon aihetunnisteet keräävät tänään eniten huomiota. Useimman käyttäjän käyttämät aihetunnisteet nousevat listauksessa korkeammalle.", "dismissable_banner.explore_tags": "Nämä sosiaalisen verkon aihetunnisteet keräävät tänään eniten huomiota. Useimman käyttäjän käyttämät aihetunnisteet nousevat korkeammalle sijalle.",
"dismissable_banner.public_timeline": "Nämä ovat viimeisimpiä julkaisuja sosiaalisen verkon käyttäjiltä, joita seurataan palvelimella {domain}.", "dismissable_banner.public_timeline": "Nämä ovat viimeisimpiä julkaisuja sosiaalisen verkon käyttäjiltä, joita seurataan palvelimella {domain}.",
"domain_block_modal.block": "Estä palvelin", "domain_block_modal.block": "Estä palvelin",
"domain_block_modal.block_account_instead": "Estä sen sijaan @{name}", "domain_block_modal.block_account_instead": "Estä sen sijaan @{name}",
"domain_block_modal.they_can_interact_with_old_posts": "Ihmiset tältä palvelimelta eivät voi olla vuorovaikutuksessa vanhojen julkaisujesi kanssa.", "domain_block_modal.they_can_interact_with_old_posts": "Ihmiset tältä palvelimelta eivät voi olla vuorovaikutuksessa vanhojen julkaisujesi kanssa.",
"domain_block_modal.they_cant_follow": "Kukaan tältä palvelimelta ei voi seurata sinua.", "domain_block_modal.they_cant_follow": "Kukaan tältä palvelimelta ei voi seurata sinua.",
"domain_block_modal.they_wont_know": "Hän ei saa ilmoitusta tulleensa estetyksi.", "domain_block_modal.they_wont_know": "Hän ei saa tietää tulleensa estetyksi.",
"domain_block_modal.title": "Estetäänkö verkkotunnus?", "domain_block_modal.title": "Estetäänkö verkkotunnus?",
"domain_block_modal.you_will_lose_followers": "Kaikki seuraajasi tältä palvelimelta poistetaan.", "domain_block_modal.you_will_lose_followers": "Kaikki seuraajasi tältä palvelimelta poistetaan.",
"domain_block_modal.you_wont_see_posts": "Et enää näe julkaisuja etkä ilmoituksia tämän palvelimen käyttäjiltä.", "domain_block_modal.you_wont_see_posts": "Et enää näe julkaisuja etkä ilmoituksia tämän palvelimen käyttäjiltä.",
"domain_pill.activitypub_lets_connect": "Sen avulla voit muodostaa yhteyden ja olla vuorovaikutuksessa ihmisten kanssa, ei vain Mastodonissa vaan myös muissa sosiaalisissa sovelluksissa.", "domain_pill.activitypub_lets_connect": "Sen avulla voit muodostaa yhteyden ja olla vuorovaikutuksessa ihmisten kanssa, ei vain Mastodonissa vaan myös muissa sosiaalisissa sovelluksissa.",
"domain_pill.activitypub_like_language": "ActivityPub on kuin kieli, jota Mastodon puhuu muiden sosiaalisten verkostojen kanssa.", "domain_pill.activitypub_like_language": "ActivityPub on kuin kieli, jota Mastodon puhuu muiden sosiaalisten verkostojen kanssa.",
"domain_pill.server": "Palvelin", "domain_pill.server": "Palvelin",
"domain_pill.their_handle": "Hänen käyttäjänimensä:", "domain_pill.their_handle": "Hänen käyttäjätunnuksensa:",
"domain_pill.their_server": "Hänen digitaalinen kotinsa, jossa kaikki hänen julkaisunsa sijaitsevat.", "domain_pill.their_server": "Hänen digitaalinen kotinsa, jossa kaikki hänen julkaisunsa sijaitsevat.",
"domain_pill.their_username": "Hänen yksilöllinen tunnisteensa omalla palvelimellaan. Eri palvelimilta on mahdollista löytää käyttäjiä, joilla on sama käyttäjänimi.", "domain_pill.their_username": "Hänen yksilöllinen tunnisteensa omalla palvelimellaan. Eri palvelimilta on mahdollista löytää käyttäjiä, joilla on sama käyttäjänimi.",
"domain_pill.username": "Käyttäjänimi", "domain_pill.username": "Käyttäjänimi",
"domain_pill.whats_in_a_handle": "Mitä käyttäjänimessä on?", "domain_pill.whats_in_a_handle": "Mitä käyttäjätunnuksessa on?",
"domain_pill.who_they_are": "Koska käyttäjätunnukset kertovat, kuka ja missä joku on, voit olla vuorovaikutuksessa ihmisten kanssa läpi sosiaalisen verkon, joka koostuu <button>ActivityPub-pohjaisista alustoista</button>.", "domain_pill.who_they_are": "Koska käyttäjätunnukset kertovat, kuka ja missä joku on, voit olla vuorovaikutuksessa ihmisten kanssa läpi sosiaalisen verkon, joka koostuu <button>ActivityPub-pohjaisista alustoista</button>.",
"domain_pill.who_you_are": "Koska käyttäjätunnuksesi kertoo, kuka ja missä olet, ihmiset voivat olla vaikutuksessa kanssasi läpi sosiaalisen verkon, joka koostuu <button>ActivityPub-pohjaisista alustoista</button>.", "domain_pill.who_you_are": "Koska käyttäjätunnuksesi kertoo, kuka ja missä olet, ihmiset voivat olla vaikutuksessa kanssasi läpi sosiaalisen verkon, joka koostuu <button>ActivityPub-pohjaisista alustoista</button>.",
"domain_pill.your_handle": "Käyttäjänimesi:", "domain_pill.your_handle": "Käyttäjätunnuksesi:",
"domain_pill.your_server": "Digitaalinen kotisi, jossa kaikki julkaisusi sijaitsevat. Etkö pidä tästä? Siirry palvelimelta toiselle milloin tahansa ja tuo myös seuraajasi mukanasi.", "domain_pill.your_server": "Digitaalinen kotisi, jossa kaikki julkaisusi sijaitsevat. Etkö pidä tästä? Siirry palvelimelta toiselle milloin tahansa ja tuo myös seuraajasi mukanasi.",
"domain_pill.your_username": "Yksilöllinen tunnisteesi tällä palvelimella. Eri palvelimilta on mahdollista löytää käyttäjiä, joilla on sama käyttäjänimi.", "domain_pill.your_username": "Yksilöllinen tunnisteesi tällä palvelimella. Eri palvelimilta on mahdollista löytää käyttäjiä, joilla on sama käyttäjänimi.",
"embed.instructions": "Upota julkaisu verkkosivullesi kopioimalla alla oleva koodi.", "embed.instructions": "Upota julkaisu verkkosivullesi kopioimalla alla oleva koodi.",
@ -243,7 +246,7 @@
"emoji_button.objects": "Esineet", "emoji_button.objects": "Esineet",
"emoji_button.people": "Ihmiset", "emoji_button.people": "Ihmiset",
"emoji_button.recent": "Usein käytetyt", "emoji_button.recent": "Usein käytetyt",
"emoji_button.search": "Etsi...", "emoji_button.search": "Hae...",
"emoji_button.search_results": "Hakutulokset", "emoji_button.search_results": "Hakutulokset",
"emoji_button.symbols": "Symbolit", "emoji_button.symbols": "Symbolit",
"emoji_button.travel": "Matkailu ja paikat", "emoji_button.travel": "Matkailu ja paikat",
@ -254,12 +257,12 @@
"empty_column.blocks": "Et ole vielä estänyt käyttäjiä.", "empty_column.blocks": "Et ole vielä estänyt käyttäjiä.",
"empty_column.bookmarked_statuses": "Et ole vielä lisännyt julkaisuja kirjanmerkkeihisi. Kun lisäät yhden, se näkyy tässä.", "empty_column.bookmarked_statuses": "Et ole vielä lisännyt julkaisuja kirjanmerkkeihisi. Kun lisäät yhden, se näkyy tässä.",
"empty_column.community": "Paikallinen aikajana on tyhjä. Kirjoita jotain julkista, niin homma lähtee käyntiin!", "empty_column.community": "Paikallinen aikajana on tyhjä. Kirjoita jotain julkista, niin homma lähtee käyntiin!",
"empty_column.direct": "Yksityismainintoja ei vielä ole. Jos lähetät tai sinulle lähetetään sellaisia, näet ne täällä.", "empty_column.direct": "Yksityismainintoja ei vielä ole. Jos lähetät tai sinulle lähetetään sellaisia, näet ne täällä.",
"empty_column.domain_blocks": "Verkkotunnuksia ei ole vielä estetty.", "empty_column.domain_blocks": "Verkkotunnuksia ei ole vielä estetty.",
"empty_column.explore_statuses": "Mikään ei ole nyt suosittua. Tarkista myöhemmin uudelleen!", "empty_column.explore_statuses": "Mikään ei ole nyt suosittua. Tarkista myöhemmin uudelleen!",
"empty_column.favourited_statuses": "Sinulla ei ole vielä yhtään suosikkijulkaisua. Kun lisäät sellaisen, näkyy se tässä.", "empty_column.favourited_statuses": "Sinulla ei ole vielä yhtään suosikkijulkaisua. Kun lisäät sellaisen, näkyy se tässä.",
"empty_column.favourites": "Kukaan ei ole vielä lisännyt tätä julkaisua suosikkeihinsa. Kun joku tekee niin, tulee hän tähän näkyviin.", "empty_column.favourites": "Kukaan ei ole vielä lisännyt tätä julkaisua suosikkeihinsa. Kun joku tekee niin, tulee hän tähän näkyviin.",
"empty_column.follow_requests": "Et ole vielä vastaanottanut seuraamispyyntöjä. Saamasi pyynnöt näkyvät täällä.", "empty_column.follow_requests": "Et ole vielä vastaanottanut seurantapyyntöjä. Saamasi pyynnöt näkyvät täällä.",
"empty_column.followed_tags": "Et seuraa vielä yhtäkään aihetunnistetta. Kun alat seurata, ne tulevat tähän näkyviin.", "empty_column.followed_tags": "Et seuraa vielä yhtäkään aihetunnistetta. Kun alat seurata, ne tulevat tähän näkyviin.",
"empty_column.hashtag": "Tällä aihetunnisteella ei löydy vielä sisältöä.", "empty_column.hashtag": "Tällä aihetunnisteella ei löydy vielä sisältöä.",
"empty_column.home": "Kotiaikajanasi on tyhjä! Seuraa useampia henkilöjä, niin näet enemmän sisältöä.", "empty_column.home": "Kotiaikajanasi on tyhjä! Seuraa useampia henkilöjä, niin näet enemmän sisältöä.",
@ -268,7 +271,7 @@
"empty_column.mutes": "Et ole mykistänyt vielä yhtään käyttäjää.", "empty_column.mutes": "Et ole mykistänyt vielä yhtään käyttäjää.",
"empty_column.notification_requests": "Olet ajan tasalla! Täällä ei ole mitään uutta kerrottavaa. Kun saat uusia ilmoituksia, ne näkyvät täällä asetustesi mukaisesti.", "empty_column.notification_requests": "Olet ajan tasalla! Täällä ei ole mitään uutta kerrottavaa. Kun saat uusia ilmoituksia, ne näkyvät täällä asetustesi mukaisesti.",
"empty_column.notifications": "Sinulla ei ole vielä ilmoituksia. Kun keskustelet muille, näet sen täällä.", "empty_column.notifications": "Sinulla ei ole vielä ilmoituksia. Kun keskustelet muille, näet sen täällä.",
"empty_column.public": "Täällä ei ole mitään! Kirjoita jotain julkisesti. Voit myös seurata muiden palvelimien käyttäjiä", "empty_column.public": "Täällä ei ole mitään! Kirjoita jotain julkisesti tai seuraa muiden palvelinten käyttäjiä, niin saat sisältöä",
"error.unexpected_crash.explanation": "Sivua ei voida näyttää oikein ohjelmointivirheen tai selaimen yhteensopivuusvajeen vuoksi.", "error.unexpected_crash.explanation": "Sivua ei voida näyttää oikein ohjelmointivirheen tai selaimen yhteensopivuusvajeen vuoksi.",
"error.unexpected_crash.explanation_addons": "Sivua ei voitu näyttää oikein. Tämä virhe johtuu todennäköisesti selaimen lisäosasta tai automaattisista käännöstyökaluista.", "error.unexpected_crash.explanation_addons": "Sivua ei voitu näyttää oikein. Tämä virhe johtuu todennäköisesti selaimen lisäosasta tai automaattisista käännöstyökaluista.",
"error.unexpected_crash.next_steps": "Kokeile päivittää sivu. Jos se ei auta, voi Mastodonin käyttö ehkä onnistua eri selaimella tai natiivisovelluksella.", "error.unexpected_crash.next_steps": "Kokeile päivittää sivu. Jos se ei auta, voi Mastodonin käyttö ehkä onnistua eri selaimella tai natiivisovelluksella.",
@ -305,7 +308,7 @@
"firehose.remote": "Muut palvelimet", "firehose.remote": "Muut palvelimet",
"follow_request.authorize": "Valtuuta", "follow_request.authorize": "Valtuuta",
"follow_request.reject": "Hylkää", "follow_request.reject": "Hylkää",
"follow_requests.unlocked_explanation": "Vaikkei tiliäsi ole lukittu, palvelimen {domain} ylläpito on arvioinut, että saatat olla halukas tarkistamaan nämä seuraamispyynnöt erikseen.", "follow_requests.unlocked_explanation": "Vaikkei tiliäsi ole lukittu, palvelimen {domain} ylläpito on arvioinut, että saatat olla halukas tarkistamaan nämä seurantapyynnöt erikseen.",
"follow_suggestions.curated_suggestion": "Ehdotus ylläpidolta", "follow_suggestions.curated_suggestion": "Ehdotus ylläpidolta",
"follow_suggestions.dismiss": "Älä näytä uudelleen", "follow_suggestions.dismiss": "Älä näytä uudelleen",
"follow_suggestions.featured_longer": "Palvelimen {domain} tiimin poimintoja", "follow_suggestions.featured_longer": "Palvelimen {domain} tiimin poimintoja",
@ -354,7 +357,7 @@
"home.pending_critical_update.link": "Tutustu päivityssisältöihin", "home.pending_critical_update.link": "Tutustu päivityssisältöihin",
"home.pending_critical_update.title": "Kriittinen tietoturvapäivitys saatavilla!", "home.pending_critical_update.title": "Kriittinen tietoturvapäivitys saatavilla!",
"home.show_announcements": "Näytä tiedotteet", "home.show_announcements": "Näytä tiedotteet",
"interaction_modal.description.favourite": "Mastodon-tilillä voit lisätä tämän julkaisun suosikkeihisi osoittaaksesi kirjoittajalle arvostavasi sitä ja tallentaaksesi sen tulevaa käyttöä varten.", "interaction_modal.description.favourite": "Mastodon-tilillä voit lisätä tämän julkaisun suosikkeihisi osoittaaksesi tekijälle arvostavasi sitä ja tallentaaksesi sen tulevaa käyttöä varten.",
"interaction_modal.description.follow": "Mastodon-tilillä voit seurata käyttäjää {name} saadaksesi hänen julkaisunsa kotisyötteeseesi.", "interaction_modal.description.follow": "Mastodon-tilillä voit seurata käyttäjää {name} saadaksesi hänen julkaisunsa kotisyötteeseesi.",
"interaction_modal.description.reblog": "Mastodon-tilillä voit tehostaa tätä julkaisua jakaaksesi sen seuraajiesi kanssa.", "interaction_modal.description.reblog": "Mastodon-tilillä voit tehostaa tätä julkaisua jakaaksesi sen seuraajiesi kanssa.",
"interaction_modal.description.reply": "Mastodon-tilillä voit vastata tähän julkaisuun.", "interaction_modal.description.reply": "Mastodon-tilillä voit vastata tähän julkaisuun.",
@ -364,7 +367,7 @@
"interaction_modal.on_another_server": "Toisella palvelimella", "interaction_modal.on_another_server": "Toisella palvelimella",
"interaction_modal.on_this_server": "Tällä palvelimella", "interaction_modal.on_this_server": "Tällä palvelimella",
"interaction_modal.sign_in": "Et ole kirjautunut tälle palvelimelle. Millä palvelimella tilisi sijaitsee?", "interaction_modal.sign_in": "Et ole kirjautunut tälle palvelimelle. Millä palvelimella tilisi sijaitsee?",
"interaction_modal.sign_in_hint": "Vihje: Se on sama verkkosivusto, jolle rekisteröidyit. Jos et muista, etsi tervetulosähköposti saapuneista viesteistäsi. Voit myös syöttää koko käyttäjätunnuksesi! (Esimerkki: @Mastodon@Mastodon.social)", "interaction_modal.sign_in_hint": "Vihje: Se on sama verkkosivusto, jolle rekisteröidyit. Jos et muista palvelintasi, etsi tervetulosähköposti saapuneista viesteistäsi. Voit myös syöttää koko käyttäjätunnuksesi! (Esimerkki: @Mastodon@Mastodon.social)",
"interaction_modal.title.favourite": "Lisää käyttäjän {name} julkaisu suosikkeihin", "interaction_modal.title.favourite": "Lisää käyttäjän {name} julkaisu suosikkeihin",
"interaction_modal.title.follow": "Seuraa käyttäjää {name}", "interaction_modal.title.follow": "Seuraa käyttäjää {name}",
"interaction_modal.title.reblog": "Tehosta käyttäjän {name} julkaisua", "interaction_modal.title.reblog": "Tehosta käyttäjän {name} julkaisua",
@ -378,7 +381,7 @@
"keyboard_shortcuts.column": "Kohdista sarakkeeseen", "keyboard_shortcuts.column": "Kohdista sarakkeeseen",
"keyboard_shortcuts.compose": "Kohdista kirjoituskenttään", "keyboard_shortcuts.compose": "Kohdista kirjoituskenttään",
"keyboard_shortcuts.description": "Kuvaus", "keyboard_shortcuts.description": "Kuvaus",
"keyboard_shortcuts.direct": "Avaa yksityisten mainintojen sarake", "keyboard_shortcuts.direct": "Avaa yksityismainintojen sarake",
"keyboard_shortcuts.down": "Siirry listassa alaspäin", "keyboard_shortcuts.down": "Siirry listassa alaspäin",
"keyboard_shortcuts.enter": "Avaa julkaisu", "keyboard_shortcuts.enter": "Avaa julkaisu",
"keyboard_shortcuts.favourite": "Lisää julkaisu suosikkeihin", "keyboard_shortcuts.favourite": "Lisää julkaisu suosikkeihin",
@ -389,15 +392,15 @@
"keyboard_shortcuts.hotkey": "Pikanäppäin", "keyboard_shortcuts.hotkey": "Pikanäppäin",
"keyboard_shortcuts.legend": "Näytä tämä ohje", "keyboard_shortcuts.legend": "Näytä tämä ohje",
"keyboard_shortcuts.local": "Avaa paikallinen aikajana", "keyboard_shortcuts.local": "Avaa paikallinen aikajana",
"keyboard_shortcuts.mention": "Mainitse julkaisija", "keyboard_shortcuts.mention": "Mainitse tekijä",
"keyboard_shortcuts.muted": "Avaa mykistettyjen käyttäjien luettelo", "keyboard_shortcuts.muted": "Avaa mykistettyjen käyttäjien luettelo",
"keyboard_shortcuts.my_profile": "Avaa profiilisi", "keyboard_shortcuts.my_profile": "Avaa profiilisi",
"keyboard_shortcuts.notifications": "Avaa ilmoitussarake", "keyboard_shortcuts.notifications": "Avaa ilmoitussarake",
"keyboard_shortcuts.open_media": "Avaa media", "keyboard_shortcuts.open_media": "Avaa media",
"keyboard_shortcuts.pinned": "Avaa kiinnitettyjen julkaisujen luettelo", "keyboard_shortcuts.pinned": "Avaa kiinnitettyjen julkaisujen luettelo",
"keyboard_shortcuts.profile": "Avaa kirjoittajan profiili", "keyboard_shortcuts.profile": "Avaa tekijän profiili",
"keyboard_shortcuts.reply": "Vastaa julkaisuun", "keyboard_shortcuts.reply": "Vastaa julkaisuun",
"keyboard_shortcuts.requests": "Avaa seuraamispyyntöjen luettelo", "keyboard_shortcuts.requests": "Avaa seurantapyyntöjen luettelo",
"keyboard_shortcuts.search": "Kohdista hakukenttään", "keyboard_shortcuts.search": "Kohdista hakukenttään",
"keyboard_shortcuts.spoilers": "Näytä/piilota sisältövaroituskenttä", "keyboard_shortcuts.spoilers": "Näytä/piilota sisältövaroituskenttä",
"keyboard_shortcuts.start": "Avaa Näin pääset alkuun -sarake", "keyboard_shortcuts.start": "Avaa Näin pääset alkuun -sarake",
@ -412,9 +415,9 @@
"lightbox.next": "Seuraava", "lightbox.next": "Seuraava",
"lightbox.previous": "Edellinen", "lightbox.previous": "Edellinen",
"limited_account_hint.action": "Näytä profiili joka tapauksessa", "limited_account_hint.action": "Näytä profiili joka tapauksessa",
"limited_account_hint.title": "Palvelimen {domain} valvojat ovat piilottaneet tämän käyttäjätilin.", "limited_account_hint.title": "Palvelimen {domain} moderaattorit ovat piilottaneet tämän profiilin.",
"link_preview.author": "Julkaissut {name}", "link_preview.author": "Julkaissut {name}",
"link_preview.more_from_author": "Lisää käyttäjältä {name}", "link_preview.more_from_author": "Lisää tekijältä {name}",
"link_preview.shares": "{count, plural, one {{counter} julkaisu} other {{counter} julkaisua}}", "link_preview.shares": "{count, plural, one {{counter} julkaisu} other {{counter} julkaisua}}",
"lists.account.add": "Lisää listalle", "lists.account.add": "Lisää listalle",
"lists.account.remove": "Poista listalta", "lists.account.remove": "Poista listalta",
@ -428,7 +431,7 @@
"lists.replies_policy.list": "Listan jäsenille", "lists.replies_policy.list": "Listan jäsenille",
"lists.replies_policy.none": "Ei kellekään", "lists.replies_policy.none": "Ei kellekään",
"lists.replies_policy.title": "Näytä vastaukset:", "lists.replies_policy.title": "Näytä vastaukset:",
"lists.search": "Etsi seuraamiesi henkilöiden keskuudesta", "lists.search": "Hae seuraamistasi henkilöistä",
"lists.subheading": "Omat listasi", "lists.subheading": "Omat listasi",
"load_pending": "{count, plural, one {# uusi kohde} other {# uutta kohdetta}}", "load_pending": "{count, plural, one {# uusi kohde} other {# uutta kohdetta}}",
"loading_indicator.label": "Ladataan…", "loading_indicator.label": "Ladataan…",
@ -436,12 +439,12 @@
"moved_to_account_banner.text": "Tilisi {disabledAccount} on tällä hetkellä poissa käytöstä, koska teit siirron tiliin {movedToAccount}.", "moved_to_account_banner.text": "Tilisi {disabledAccount} on tällä hetkellä poissa käytöstä, koska teit siirron tiliin {movedToAccount}.",
"mute_modal.hide_from_notifications": "Piilota ilmoituksista", "mute_modal.hide_from_notifications": "Piilota ilmoituksista",
"mute_modal.hide_options": "Piilota vaihtoehdot", "mute_modal.hide_options": "Piilota vaihtoehdot",
"mute_modal.indefinite": "Kunnes perun häntä koskevan mykistyksen", "mute_modal.indefinite": "Kunnes kumoan häntä koskevan mykistyksen",
"mute_modal.show_options": "Näytä vaihtoehdot", "mute_modal.show_options": "Näytä vaihtoehdot",
"mute_modal.they_can_mention_and_follow": "Hän voi mainita sinut ja seurata sinua, mutta sinä et näe häntä.", "mute_modal.they_can_mention_and_follow": "Hän voi mainita sinut ja seurata sinua, mutta sinä et näe häntä.",
"mute_modal.they_wont_know": "Hän ei saa ilmoitusta tulleensa mykistetyksi.", "mute_modal.they_wont_know": "Hän ei saa tietää tulleensa mykistetyksi.",
"mute_modal.title": "Mykistetäänkö käyttäjä?", "mute_modal.title": "Mykistetäänkö käyttäjä?",
"mute_modal.you_wont_see_mentions": "Et tule enää näkemään julkaisuja, joissa hänet mainitaan.", "mute_modal.you_wont_see_mentions": "Et näe enää julkaisuja, joissa hänet mainitaan.",
"mute_modal.you_wont_see_posts": "Hän voi yhä nähdä julkaisusi, mutta sinä et näe hänen.", "mute_modal.you_wont_see_posts": "Hän voi yhä nähdä julkaisusi, mutta sinä et näe hänen.",
"name_and_others": "{name} ja {count, plural, one {# muu} other {# muuta}}", "name_and_others": "{name} ja {count, plural, one {# muu} other {# muuta}}",
"name_and_others_with_link": "{name} ja <a>{count, plural, one {# muu} other {# muuta}}</a>", "name_and_others_with_link": "{name} ja <a>{count, plural, one {# muu} other {# muuta}}</a>",
@ -457,7 +460,7 @@
"navigation_bar.explore": "Selaa", "navigation_bar.explore": "Selaa",
"navigation_bar.favourites": "Suosikit", "navigation_bar.favourites": "Suosikit",
"navigation_bar.filters": "Mykistetyt sanat", "navigation_bar.filters": "Mykistetyt sanat",
"navigation_bar.follow_requests": "Seuraamispyynnöt", "navigation_bar.follow_requests": "Seurantapyynnöt",
"navigation_bar.followed_tags": "Seuratut aihetunnisteet", "navigation_bar.followed_tags": "Seuratut aihetunnisteet",
"navigation_bar.follows_and_followers": "Seuratut ja seuraajat", "navigation_bar.follows_and_followers": "Seuratut ja seuraajat",
"navigation_bar.lists": "Listat", "navigation_bar.lists": "Listat",
@ -468,7 +471,7 @@
"navigation_bar.pins": "Kiinnitetyt julkaisut", "navigation_bar.pins": "Kiinnitetyt julkaisut",
"navigation_bar.preferences": "Asetukset", "navigation_bar.preferences": "Asetukset",
"navigation_bar.public_timeline": "Yleinen aikajana", "navigation_bar.public_timeline": "Yleinen aikajana",
"navigation_bar.search": "Hae", "navigation_bar.search": "Haku",
"navigation_bar.security": "Turvallisuus", "navigation_bar.security": "Turvallisuus",
"not_signed_in_indicator.not_signed_in": "Sinun on kirjauduttava sisään käyttääksesi resurssia.", "not_signed_in_indicator.not_signed_in": "Sinun on kirjauduttava sisään käyttääksesi resurssia.",
"notification.admin.report": "{name} raportoi käyttäjän {target}", "notification.admin.report": "{name} raportoi käyttäjän {target}",
@ -479,13 +482,13 @@
"notification.admin.sign_up": "{name} rekisteröityi", "notification.admin.sign_up": "{name} rekisteröityi",
"notification.favourite": "{name} lisäsi julkaisusi suosikkeihinsa", "notification.favourite": "{name} lisäsi julkaisusi suosikkeihinsa",
"notification.follow": "{name} seurasi sinua", "notification.follow": "{name} seurasi sinua",
"notification.follow_request": "{name} on pyytänyt lupaa saada seurata sinua", "notification.follow_request": "{name} on pyytänyt lupaa seurata sinua",
"notification.mention": "{name} mainitsi sinut", "notification.mention": "{name} mainitsi sinut",
"notification.moderation-warning.learn_more": "Lue lisää", "notification.moderation-warning.learn_more": "Lue lisää",
"notification.moderation_warning": "Olet saanut moderointivaroituksen", "notification.moderation_warning": "Olet saanut moderointivaroituksen",
"notification.moderation_warning.action_delete_statuses": "Jotkin julkaisusi on poistettu.", "notification.moderation_warning.action_delete_statuses": "Julkaisujasi on poistettu.",
"notification.moderation_warning.action_disable": "Tilisi on poistettu käytöstä.", "notification.moderation_warning.action_disable": "Tilisi on poistettu käytöstä.",
"notification.moderation_warning.action_mark_statuses_as_sensitive": "Jotkin julkaisusi on merkitty arkaluonteisiksi.", "notification.moderation_warning.action_mark_statuses_as_sensitive": "Julkaisujasi on merkitty arkaluonteisiksi.",
"notification.moderation_warning.action_none": "Tilisi on saanut moderointivaroituksen.", "notification.moderation_warning.action_none": "Tilisi on saanut moderointivaroituksen.",
"notification.moderation_warning.action_sensitive": "Tästä lähtien julkaisusi merkitään arkaluonteisiksi.", "notification.moderation_warning.action_sensitive": "Tästä lähtien julkaisusi merkitään arkaluonteisiksi.",
"notification.moderation_warning.action_silence": "Tiliäsi on rajoitettu.", "notification.moderation_warning.action_silence": "Tiliäsi on rajoitettu.",
@ -507,7 +510,8 @@
"notification_requests.title": "Suodatetut ilmoitukset", "notification_requests.title": "Suodatetut ilmoitukset",
"notifications.clear": "Tyhjennä ilmoitukset", "notifications.clear": "Tyhjennä ilmoitukset",
"notifications.clear_confirmation": "Haluatko varmasti poistaa kaikki ilmoitukset pysyvästi?", "notifications.clear_confirmation": "Haluatko varmasti poistaa kaikki ilmoitukset pysyvästi?",
"notifications.column_settings.admin.report": "Uudet ilmoitukset:", "notifications.clear_title": "Tyhjennetäänkö ilmoitukset?",
"notifications.column_settings.admin.report": "Uudet raportit:",
"notifications.column_settings.admin.sign_up": "Uudet rekisteröitymiset:", "notifications.column_settings.admin.sign_up": "Uudet rekisteröitymiset:",
"notifications.column_settings.alert": "Työpöytäilmoitukset", "notifications.column_settings.alert": "Työpöytäilmoitukset",
"notifications.column_settings.beta.category": "Kokeelliset ominaisuudet", "notifications.column_settings.beta.category": "Kokeelliset ominaisuudet",
@ -516,7 +520,7 @@
"notifications.column_settings.filter_bar.advanced": "Näytä kaikki luokat", "notifications.column_settings.filter_bar.advanced": "Näytä kaikki luokat",
"notifications.column_settings.filter_bar.category": "Pikasuodatuspalkki", "notifications.column_settings.filter_bar.category": "Pikasuodatuspalkki",
"notifications.column_settings.follow": "Uudet seuraajat:", "notifications.column_settings.follow": "Uudet seuraajat:",
"notifications.column_settings.follow_request": "Uudet seuraamispyynnöt:", "notifications.column_settings.follow_request": "Uudet seurantapyynnöt:",
"notifications.column_settings.mention": "Maininnat:", "notifications.column_settings.mention": "Maininnat:",
"notifications.column_settings.poll": "Äänestyksen tulokset:", "notifications.column_settings.poll": "Äänestyksen tulokset:",
"notifications.column_settings.push": "Puskuilmoitukset", "notifications.column_settings.push": "Puskuilmoitukset",
@ -534,19 +538,19 @@
"notifications.filter.mentions": "Maininnat", "notifications.filter.mentions": "Maininnat",
"notifications.filter.polls": "Äänestyksen tulokset", "notifications.filter.polls": "Äänestyksen tulokset",
"notifications.filter.statuses": "Päivitykset henkilöiltä, joita seuraat", "notifications.filter.statuses": "Päivitykset henkilöiltä, joita seuraat",
"notifications.grant_permission": "Myönnä lupa.", "notifications.grant_permission": "Myönnä käyttöoikeus.",
"notifications.group": "{count} ilmoitusta", "notifications.group": "{count} ilmoitusta",
"notifications.mark_as_read": "Merkitse jokainen ilmoitus luetuksi", "notifications.mark_as_read": "Merkitse jokainen ilmoitus luetuksi",
"notifications.permission_denied": "Työpöytäilmoitukset eivät ole käytettävissä, koska selaimen käyttöoikeuspyyntö on aiemmin evätty", "notifications.permission_denied": "Työpöytäilmoitukset eivät ole käytettävissä, koska selaimen käyttöoikeuspyyntö on aiemmin evätty",
"notifications.permission_denied_alert": "Työpöytäilmoituksia ei voi ottaa käyttöön, koska selaimen käyttöoikeus on aiemmin estetty", "notifications.permission_denied_alert": "Työpöytäilmoituksia ei voi ottaa käyttöön, koska selaimen käyttöoikeus on aiemmin etty",
"notifications.permission_required": "Työpöytäilmoitukset eivät ole käytettävissä, koska siihen tarvittavaa lupaa ei ole myönnetty.", "notifications.permission_required": "Työpöytäilmoitukset eivät ole käytettävissä, koska siihen tarvittavaa käyttöoikeutta ei ole myönnetty.",
"notifications.policy.filter_new_accounts.hint": "Luotu {days, plural, one {viimeisimmän päivän aikana} other {# viime päivän aikana}}", "notifications.policy.filter_new_accounts.hint": "Luotu {days, plural, one {viime päivän} other {viimeisen # päivän}} aikana",
"notifications.policy.filter_new_accounts_title": "Uudet tilit", "notifications.policy.filter_new_accounts_title": "Uudet tilit",
"notifications.policy.filter_not_followers_hint": "Mukaan lukien alle {days, plural, one {päivän} other {# päivän}} verran sinua seuranneet", "notifications.policy.filter_not_followers_hint": "Mukaan lukien alle {days, plural, one {päivän} other {# päivää}} sinua seuranneet",
"notifications.policy.filter_not_followers_title": "Henkilöt, jotka eivät seuraa sinua", "notifications.policy.filter_not_followers_title": "Henkilöt, jotka eivät seuraa sinua",
"notifications.policy.filter_not_following_hint": "Kunnes hyväksyt ne omin käsin", "notifications.policy.filter_not_following_hint": "Kunnes hyväksyt heidät manuaalisesti",
"notifications.policy.filter_not_following_title": "Henkilöt, joita et seuraa", "notifications.policy.filter_not_following_title": "Henkilöt, joita et seuraa",
"notifications.policy.filter_private_mentions_hint": "Suodatetaan, ellei se vastaa omaan mainintaasi tai ellet seuraa lähettäjää", "notifications.policy.filter_private_mentions_hint": "Suodatetaan, ellei se ole vastaus omaan mainintaasi tai ellet seuraa lähettäjää",
"notifications.policy.filter_private_mentions_title": "Ei-toivotut yksityismaininnat", "notifications.policy.filter_private_mentions_title": "Ei-toivotut yksityismaininnat",
"notifications.policy.title": "Suodata ilmoitukset pois kohteesta…", "notifications.policy.title": "Suodata ilmoitukset pois kohteesta…",
"notifications_permission_banner.enable": "Ota työpöytäilmoitukset käyttöön", "notifications_permission_banner.enable": "Ota työpöytäilmoitukset käyttöön",
@ -569,8 +573,8 @@
"onboarding.profile.note_hint": "Voit @mainita muita käyttäjiä tai #aihetunnisteita…", "onboarding.profile.note_hint": "Voit @mainita muita käyttäjiä tai #aihetunnisteita…",
"onboarding.profile.save_and_continue": "Tallenna ja jatka", "onboarding.profile.save_and_continue": "Tallenna ja jatka",
"onboarding.profile.title": "Profiilin määritys", "onboarding.profile.title": "Profiilin määritys",
"onboarding.profile.upload_avatar": "Lataa profiilikuva", "onboarding.profile.upload_avatar": "Lähetä profiilikuva",
"onboarding.profile.upload_header": "Lataa profiilin otsakekuva", "onboarding.profile.upload_header": "Lähetä profiilin otsakekuva",
"onboarding.share.lead": "Kerro ihmisille, kuinka he voivat löytää sinut Mastodonista!", "onboarding.share.lead": "Kerro ihmisille, kuinka he voivat löytää sinut Mastodonista!",
"onboarding.share.message": "Olen {username} #Mastodonissa! Seuraa minua osoitteessa {url}", "onboarding.share.message": "Olen {username} #Mastodonissa! Seuraa minua osoitteessa {url}",
"onboarding.share.next_steps": "Mahdolliset seuraavat vaiheet:", "onboarding.share.next_steps": "Mahdolliset seuraavat vaiheet:",
@ -586,8 +590,8 @@
"onboarding.steps.setup_profile.title": "Mukauta profiiliasi", "onboarding.steps.setup_profile.title": "Mukauta profiiliasi",
"onboarding.steps.share_profile.body": "Kerro kavereillesi, kuinka sinut löytää Mastodonista", "onboarding.steps.share_profile.body": "Kerro kavereillesi, kuinka sinut löytää Mastodonista",
"onboarding.steps.share_profile.title": "Jaa Mastodon-profiilisi", "onboarding.steps.share_profile.title": "Jaa Mastodon-profiilisi",
"onboarding.tips.2fa": "<strong>Tiesitkö?</strong> Voit suojata tilisi ottamalla kaksivaiheisen todennuksen käyttöön tilisi asetuksista. Se toimii millä tahansa TOTP-sovelluksella, eikä sen käyttö edellytä puhelinnumeron antoa!", "onboarding.tips.2fa": "<strong>Tiesitkö?</strong> Voit suojata tilisi ottamalla kaksivaiheisen todennuksen käyttöön tilisi asetuksista. Se toimii millä tahansa TOTP-sovelluksella, eikä sen käyttö edellytä puhelinnumeron luovuttamista!",
"onboarding.tips.accounts_from_other_servers": "<strong>Tiesitkö?</strong> Koska Mastodon on hajautettu, osa kohtaamistasi profiileista sijaitsee muilla kuin sinun palvelimellasi. Voit silti viestiä saumattomasti heidän kanssaan! Heidän palvelimensa mainitaan käyttäjänimen jälkiosassa!", "onboarding.tips.accounts_from_other_servers": "<strong>Tiesitkö?</strong> Koska Mastodon on hajautettu, osa kohtaamistasi profiileista sijaitsee muilla kuin sinun palvelimellasi. Voit silti viestiä saumattomasti heidän kanssaan! Heidän palvelimensa mainitaan käyttäjätunnuksen jälkiosassa!",
"onboarding.tips.migration": "<strong>Tiesitkö?</strong> Jos koet, ettei {domain} ole jatkossa itsellesi hyvä palvelinvalinta, voit siirtyä toiselle Mastodon-palvelimelle menettämättä seuraajiasi. Voit jopa isännöidä omaa palvelintasi!", "onboarding.tips.migration": "<strong>Tiesitkö?</strong> Jos koet, ettei {domain} ole jatkossa itsellesi hyvä palvelinvalinta, voit siirtyä toiselle Mastodon-palvelimelle menettämättä seuraajiasi. Voit jopa isännöidä omaa palvelintasi!",
"onboarding.tips.verification": "<strong>Tiesitkö?</strong> Voit vahvistaa tilisi lisäämällä omalle verkkosivustollesi linkin Mastodon-profiiliisi ja lisäämällä sitten verkkosivustosi osoitteen Mastodon-profiilisi lisäkenttään. Tämä ei maksa mitään, eikä sinun tarvitse lähetellä asiakirjoja!", "onboarding.tips.verification": "<strong>Tiesitkö?</strong> Voit vahvistaa tilisi lisäämällä omalle verkkosivustollesi linkin Mastodon-profiiliisi ja lisäämällä sitten verkkosivustosi osoitteen Mastodon-profiilisi lisäkenttään. Tämä ei maksa mitään, eikä sinun tarvitse lähetellä asiakirjoja!",
"password_confirmation.exceeds_maxlength": "Salasanan vahvistus ylittää salasanan enimmäispituuden", "password_confirmation.exceeds_maxlength": "Salasanan vahvistus ylittää salasanan enimmäispituuden",
@ -610,10 +614,10 @@
"privacy.private.short": "Seuraajat", "privacy.private.short": "Seuraajat",
"privacy.public.long": "Kuka tahansa Mastodonissa ja sen ulkopuolella", "privacy.public.long": "Kuka tahansa Mastodonissa ja sen ulkopuolella",
"privacy.public.short": "Julkinen", "privacy.public.short": "Julkinen",
"privacy.unlisted.additional": "Tämä on muutoin kuin julkinen julkaisu, mutta sitä ei näytetä livesyöte-, aihetunniste- tai selailunäkymissä eikä Mastodon-hakutuloksissakaan, vaikka ne olisivat käyttäjätililläsi yleisesti sallittuina.", "privacy.unlisted.additional": "Tämä toimii muuten kuin julkinen, mutta julkaisut eivät näy livesyöte-, aihetunniste- tai selausnäkymissä eivätkä Mastodonin hakutuloksissa, vaikka ne olisivat käyttäjätililläsi yleisesti sallittuina.",
"privacy.unlisted.long": "Vähemmän algoritmiperusteista sisältöä", "privacy.unlisted.long": "Vähemmän algoritmiperusteista sisältöä",
"privacy.unlisted.short": "Vaivihkaisesti julkinen", "privacy.unlisted.short": "Vaivihkaisesti julkinen",
"privacy_policy.last_updated": "Viimeksi päivitetty {date}", "privacy_policy.last_updated": "Päivitetty viimeksi {date}",
"privacy_policy.title": "Tietosuojakäytäntö", "privacy_policy.title": "Tietosuojakäytäntö",
"recommended": "Suositeltu", "recommended": "Suositeltu",
"refresh": "Päivitä", "refresh": "Päivitä",
@ -635,24 +639,24 @@
"reply_indicator.poll": "Äänestys", "reply_indicator.poll": "Äänestys",
"report.block": "Estä", "report.block": "Estä",
"report.block_explanation": "Et näe hänen viestejään, eikä hän voi nähdä viestejäsi tai seurata sinua. Hän näkee, että olet estänyt hänet.", "report.block_explanation": "Et näe hänen viestejään, eikä hän voi nähdä viestejäsi tai seurata sinua. Hän näkee, että olet estänyt hänet.",
"report.categories.legal": "Juridiset tiedot", "report.categories.legal": "Lakiseikat",
"report.categories.other": "Muu", "report.categories.other": "Muu",
"report.categories.spam": "Roskaposti", "report.categories.spam": "Roskaposti",
"report.categories.violation": "Sisältö rikkoo yhtä tai useampaa palvelimen säännöistä", "report.categories.violation": "Sisältö rikkoo yhtä tai useampaa palvelimen säännöistä",
"report.category.subtitle": "Valitse sopivin", "report.category.subtitle": "Valitse sopivin",
"report.category.title": "Kerro meille, miksi tämä {type} pitää raportoida", "report.category.title": "Kerro meille, miksi tämä {type} pitää raportoida",
"report.category.title_account": "profiilissa", "report.category.title_account": "profiili",
"report.category.title_status": "julkaisussa", "report.category.title_status": "julkaisu",
"report.close": "Valmis", "report.close": "Valmis",
"report.comment.title": "Onko vielä jotain muuta, mitä meidän pitäisi tietää?", "report.comment.title": "Onko vielä jotain muuta, mitä meidän pitäisi tietää?",
"report.forward": "Välitä kohteeseen {target}", "report.forward": "Välitä palvelimelle {target}",
"report.forward_hint": "Tämä tili on toisella palvelimella. Haluatko lähettää nimettömän raportin myös sinne?", "report.forward_hint": "Tämä tili on toisella palvelimella. Haluatko lähettää nimettömän raportin myös sinne?",
"report.mute": "Mykistä", "report.mute": "Mykistä",
"report.mute_explanation": "Et näe hänen julkaisujaan. Hän voi silti seurata sinua ja nähdä julkaisusi. Hän ei tiedä, että hänet on mykistetty.", "report.mute_explanation": "Et näe hänen julkaisujaan. Hän voi silti seurata sinua ja nähdä julkaisusi. Hän ei tiedä, että hänet on mykistetty.",
"report.next": "Seuraava", "report.next": "Seuraava",
"report.placeholder": "Lisäkommentit", "report.placeholder": "Lisäkommentit",
"report.reasons.dislike": "En pidä siitä", "report.reasons.dislike": "En pidä siitä",
"report.reasons.dislike_description": "Sisältö on sen tyyppistä, ettet halua nähdä sitä", "report.reasons.dislike_description": "Sisältö on sellaista, jota et halua nähdä",
"report.reasons.legal": "Se on laitonta", "report.reasons.legal": "Se on laitonta",
"report.reasons.legal_description": "Katsot sisällön rikkovan maasi tai palvelimen kotimaan lakeja", "report.reasons.legal_description": "Katsot sisällön rikkovan maasi tai palvelimen kotimaan lakeja",
"report.reasons.other": "Jotain muuta", "report.reasons.other": "Jotain muuta",
@ -663,18 +667,18 @@
"report.reasons.violation_description": "Tiedät sisällön rikkovan tiettyjä sääntöjä", "report.reasons.violation_description": "Tiedät sisällön rikkovan tiettyjä sääntöjä",
"report.rules.subtitle": "Valitse kaikki sopivat", "report.rules.subtitle": "Valitse kaikki sopivat",
"report.rules.title": "Mitä sääntöjä rikotaan?", "report.rules.title": "Mitä sääntöjä rikotaan?",
"report.statuses.subtitle": "Valitse kaikki soveltuvat julkaisut", "report.statuses.subtitle": "Valitse kaikki sopivat",
"report.statuses.title": "Onko julkaisuja, jotka tukevat tätä raporttia?", "report.statuses.title": "Onko julkaisuja, jotka tukevat tätä raporttia?",
"report.submit": "Lähetä", "report.submit": "Lähetä",
"report.target": "Raportoidaan {target}", "report.target": "Raportoidaan {target}",
"report.thanks.take_action": "Tässä on vaihtoehtosi hallita näkemääsi Mastodonissa:", "report.thanks.take_action": "Tässä on vaihtoehtosi hallita näkemääsi Mastodonissa:",
"report.thanks.take_action_actionable": "Sillä välin kun tarkistamme tätä, voit ryhtyä toimenpiteisiin käyttäjää @{name} vastaan:", "report.thanks.take_action_actionable": "Sillä välin kun tarkistamme tätä, voit ryhtyä toimiin käyttäjää @{name} kohtaan:",
"report.thanks.title": "Etkö halua nähdä tätä?", "report.thanks.title": "Etkö halua nähdä tätä?",
"report.thanks.title_actionable": "Kiitos raportista, tutkimme asiaa.", "report.thanks.title_actionable": "Kiitos raportista tutkimme asiaa.",
"report.unfollow": "Lopeta käyttäjän @{name} seuraaminen", "report.unfollow": "Lopeta käyttäjän @{name} seuraaminen",
"report.unfollow_explanation": "Seuraat tätä tiliä. Estääksesi tilin viestejä näykymästä kotisyötteessäsi, lopeta sen seuraaminen.", "report.unfollow_explanation": "Seuraat tätä tiliä. Jotta et enää näkisi sen julkaisuja kotisyötteessäsi, lopeta tilin seuraaminen.",
"report_notification.attached_statuses": "{count, plural, one {{count} julkaisu} other {{count} julkaisua}} liitteenä", "report_notification.attached_statuses": "{count, plural, one {{count} julkaisu} other {{count} julkaisua}} liitteenä",
"report_notification.categories.legal": "Laillinen", "report_notification.categories.legal": "Lakiseikat",
"report_notification.categories.legal_sentence": "laiton sisältö", "report_notification.categories.legal_sentence": "laiton sisältö",
"report_notification.categories.other": "Muu", "report_notification.categories.other": "Muu",
"report_notification.categories.other_sentence": "jokin muu", "report_notification.categories.other_sentence": "jokin muu",
@ -688,7 +692,7 @@
"search.quick_action.account_search": "Profiilit haulla {x}", "search.quick_action.account_search": "Profiilit haulla {x}",
"search.quick_action.go_to_account": "Siirry profiiliin {x}", "search.quick_action.go_to_account": "Siirry profiiliin {x}",
"search.quick_action.go_to_hashtag": "Siirry aihetunnisteeseen {x}", "search.quick_action.go_to_hashtag": "Siirry aihetunnisteeseen {x}",
"search.quick_action.open_url": "Avaa verkko-osoite Mastodonissa", "search.quick_action.open_url": "Avaa URL-osoite Mastodonissa",
"search.quick_action.status_search": "Julkaisut haulla {x}", "search.quick_action.status_search": "Julkaisut haulla {x}",
"search.search_or_paste": "Hae tai liitä URL-osoite", "search.search_or_paste": "Hae tai liitä URL-osoite",
"search_popout.full_text_search_disabled_message": "Ei saatavilla palvelimella {domain}.", "search_popout.full_text_search_disabled_message": "Ei saatavilla palvelimella {domain}.",
@ -712,18 +716,18 @@
"server_banner.is_one_of_many": "{domain} on yksi monista itsenäisistä Mastodon-palvelimista, joiden välityksellä voit toimia fediversumissa.", "server_banner.is_one_of_many": "{domain} on yksi monista itsenäisistä Mastodon-palvelimista, joiden välityksellä voit toimia fediversumissa.",
"server_banner.server_stats": "Palvelimen tilastot:", "server_banner.server_stats": "Palvelimen tilastot:",
"sign_in_banner.create_account": "Luo tili", "sign_in_banner.create_account": "Luo tili",
"sign_in_banner.follow_anyone": "Seuraa kenen tahansa julkaisuja fediversumissa ja näe ne kaikki aikajärjestyksessä. Ei algoritmeja, mainoksia tai klikkausten kalastelua.", "sign_in_banner.follow_anyone": "Seuraa kenen tahansa julkaisuja fediversumissa ja näe ne kaikki aikajärjestyksessä. Ei algoritmeja, mainoksia eikä klikkausten kalastelua.",
"sign_in_banner.mastodon_is": "Mastodon on paras tapa pysyä ajan tasalla siitä, mitä ympärillä tapahtuu.", "sign_in_banner.mastodon_is": "Mastodon on paras tapa pysyä ajan tasalla siitä, mitä ympärillä tapahtuu.",
"sign_in_banner.sign_in": "Kirjaudu", "sign_in_banner.sign_in": "Kirjaudu",
"sign_in_banner.sso_redirect": "Kirjaudu tai rekisteröidy", "sign_in_banner.sso_redirect": "Kirjaudu tai rekisteröidy",
"status.admin_account": "Avaa tilin @{name} valvontanäkymä", "status.admin_account": "Avaa tilin @{name} moderointinäkymä",
"status.admin_domain": "Avaa palvelimen {domain} valvontanäkymä", "status.admin_domain": "Avaa palvelimen {domain} moderointinäkymä",
"status.admin_status": "Avaa julkaisu valvontanäkymässä", "status.admin_status": "Avaa julkaisu moderointinäkymässä",
"status.block": "Estä @{name}", "status.block": "Estä @{name}",
"status.bookmark": "Lisää kirjanmerkki", "status.bookmark": "Lisää kirjanmerkki",
"status.cancel_reblog_private": "Peru tehostus", "status.cancel_reblog_private": "Peru tehostus",
"status.cannot_reblog": "Tätä julkaisua ei voi tehostaa", "status.cannot_reblog": "Tätä julkaisua ei voi tehostaa",
"status.copy": "Kopioi julkaisun linkki", "status.copy": "Kopioi linkki julkaisuun",
"status.delete": "Poista", "status.delete": "Poista",
"status.detailed_status": "Yksityiskohtainen keskustelunäkymä", "status.detailed_status": "Yksityiskohtainen keskustelunäkymä",
"status.direct": "Mainitse @{name} yksityisesti", "status.direct": "Mainitse @{name} yksityisesti",
@ -796,10 +800,10 @@
"units.short.billion": "{count} mrd.", "units.short.billion": "{count} mrd.",
"units.short.million": "{count} milj.", "units.short.million": "{count} milj.",
"units.short.thousand": "{count} t.", "units.short.thousand": "{count} t.",
"upload_area.title": "Lataa raahaamalla ja pudottamalla tähän", "upload_area.title": "Lähetä raahaamalla ja pudottamalla tähän",
"upload_button.label": "Lisää kuvia, video tai äänitiedosto", "upload_button.label": "Lisää kuvia, video tai äänitiedosto",
"upload_error.limit": "Tiedostolatauksien rajoitus ylitetty.", "upload_error.limit": "Tiedostolähetysten rajoitus ylitetty.",
"upload_error.poll": "Tiedostojen lisääminen ei ole sallittua kyselyjen ohessa.", "upload_error.poll": "Tiedostojen lisääminen äänestysten oheen ei ole sallittua.",
"upload_form.audio_description": "Kuvaile sisältöä kuuroille ja kuulorajoitteisille", "upload_form.audio_description": "Kuvaile sisältöä kuuroille ja kuulorajoitteisille",
"upload_form.description": "Kuvaile sisältöä sokeille ja näkörajoitteisille", "upload_form.description": "Kuvaile sisältöä sokeille ja näkörajoitteisille",
"upload_form.edit": "Muokkaa", "upload_form.edit": "Muokkaa",
@ -815,9 +819,9 @@
"upload_modal.hint": "Napsauta tai vedä ympyrä esikatselussa valitaksesi keskipiste, joka näkyy aina pienoiskuvissa.", "upload_modal.hint": "Napsauta tai vedä ympyrä esikatselussa valitaksesi keskipiste, joka näkyy aina pienoiskuvissa.",
"upload_modal.preparing_ocr": "Valmistellaan tekstintunnistusta…", "upload_modal.preparing_ocr": "Valmistellaan tekstintunnistusta…",
"upload_modal.preview_label": "Esikatselu ({ratio})", "upload_modal.preview_label": "Esikatselu ({ratio})",
"upload_progress.label": "Tallennetaan...", "upload_progress.label": "Lähetetään...",
"upload_progress.processing": "Käsitellään…", "upload_progress.processing": "Käsitellään…",
"username.taken": "Käyttäjänimi on jo varattu. Kokeile toista", "username.taken": "Tämä käyttäjänimi on jo käytössä. Kokeile toista",
"video.close": "Sulje video", "video.close": "Sulje video",
"video.download": "Lataa tiedosto", "video.download": "Lataa tiedosto",
"video.exit_fullscreen": "Poistu koko näytön tilasta", "video.exit_fullscreen": "Poistu koko näytön tilasta",

View file

@ -112,13 +112,10 @@
"compose_form.spoiler.unmarked": "Idagdag ang babala sa nilalaman", "compose_form.spoiler.unmarked": "Idagdag ang babala sa nilalaman",
"confirmation_modal.cancel": "Pagpaliban", "confirmation_modal.cancel": "Pagpaliban",
"confirmations.block.confirm": "Harangan", "confirmations.block.confirm": "Harangan",
"confirmations.cancel_follow_request.confirm": "Bawiin ang kahilingan",
"confirmations.cancel_follow_request.message": "Sigurdo ka bang gusto mong bawiin ang kahilingang sundan si/ang {name}?",
"confirmations.delete.message": "Sigurado ka bang gusto mong burahin ang post na ito?", "confirmations.delete.message": "Sigurado ka bang gusto mong burahin ang post na ito?",
"confirmations.delete_list.confirm": "Tanggalin", "confirmations.delete_list.confirm": "Tanggalin",
"confirmations.delete_list.message": "Sigurado ka bang gusto mong burahin ang listahang ito?", "confirmations.delete_list.message": "Sigurado ka bang gusto mong burahin ang listahang ito?",
"confirmations.discard_edit_media.confirm": "Ipagpaliban", "confirmations.discard_edit_media.confirm": "Ipagpaliban",
"confirmations.domain_block.confirm": "Harangan ang serbiro",
"confirmations.edit.confirm": "Baguhin", "confirmations.edit.confirm": "Baguhin",
"confirmations.reply.confirm": "Tumugon", "confirmations.reply.confirm": "Tumugon",
"conversation.mark_as_read": "Markahan bilang nabasa na", "conversation.mark_as_read": "Markahan bilang nabasa na",

View file

@ -169,27 +169,30 @@
"compose_form.spoiler_placeholder": "Innihaldsávaring (valfrí)", "compose_form.spoiler_placeholder": "Innihaldsávaring (valfrí)",
"confirmation_modal.cancel": "Strika", "confirmation_modal.cancel": "Strika",
"confirmations.block.confirm": "Banna", "confirmations.block.confirm": "Banna",
"confirmations.cancel_follow_request.confirm": "Tak umbønina aftur",
"confirmations.cancel_follow_request.message": "Er tað tilætlað, at tú tekur umbønina at fylgja {name} aftur?",
"confirmations.delete.confirm": "Strika", "confirmations.delete.confirm": "Strika",
"confirmations.delete.message": "Er tað tilætlað, at tú strikar hetta uppslagið?", "confirmations.delete.message": "Er tað tilætlað, at tú strikar hetta uppslagið?",
"confirmations.delete.title": "Strika post?",
"confirmations.delete_list.confirm": "Strika", "confirmations.delete_list.confirm": "Strika",
"confirmations.delete_list.message": "Ert tú vís/ur í, at tú vilt strika hetta uppslagið?", "confirmations.delete_list.message": "Ert tú vís/ur í, at tú vilt strika hetta uppslagið?",
"confirmations.delete_list.title": "Strika lista?",
"confirmations.discard_edit_media.confirm": "Vraka", "confirmations.discard_edit_media.confirm": "Vraka",
"confirmations.discard_edit_media.message": "Tú hevur broytingar í miðlalýsingini ella undansýningini, sum ikki eru goymdar. Vilt tú kortini vraka?", "confirmations.discard_edit_media.message": "Tú hevur broytingar í miðlalýsingini ella undansýningini, sum ikki eru goymdar. Vilt tú kortini vraka?",
"confirmations.domain_block.confirm": "Banna ambætara",
"confirmations.domain_block.message": "Ert tú púra, púra vís/ur í, at tú vilt banna øllum {domain}? Í flestu førum er nóg mikið og betri, bert at banna ella doyva onkrum ávísum. Tú fert eingi evni at síggja frá økisnavninum á nakrari almennari tíðarrás ella í tínum fráboðanum. Tínir fylgjarar undir økisnavninum verða eisini strikaðir.",
"confirmations.edit.confirm": "Rætta", "confirmations.edit.confirm": "Rætta",
"confirmations.edit.message": "Rættingar, sum verða gjørdar nú, skriva yvir boðini, sum tú ert í holt við. Ert tú vís/ur í, at tú vilt halda fram?", "confirmations.edit.message": "Rættingar, sum verða gjørdar nú, skriva yvir boðini, sum tú ert í holt við. Ert tú vís/ur í, at tú vilt halda fram?",
"confirmations.edit.title": "Skriva omaná post?",
"confirmations.logout.confirm": "Rita út", "confirmations.logout.confirm": "Rita út",
"confirmations.logout.message": "Ert tú vís/ur í, at tú vilt útrita teg?", "confirmations.logout.message": "Ert tú vís/ur í, at tú vilt útrita teg?",
"confirmations.logout.title": "Rita út?",
"confirmations.mute.confirm": "Doyv", "confirmations.mute.confirm": "Doyv",
"confirmations.redraft.confirm": "Sletta og skriva umaftur", "confirmations.redraft.confirm": "Sletta og skriva umaftur",
"confirmations.redraft.message": "Vilt tú veruliga strika hendan postin og í staðin gera hann til eina nýggja kladdu? Yndisfrámerki og framhevjanir blíva burtur, og svar til upprunapostin missa tilknýtið.", "confirmations.redraft.message": "Vilt tú veruliga strika hendan postin og í staðin gera hann til eina nýggja kladdu? Yndisfrámerki og framhevjanir blíva burtur, og svar til upprunapostin missa tilknýtið.",
"confirmations.redraft.title": "Strika & ger nýtt uppskot um post?",
"confirmations.reply.confirm": "Svara", "confirmations.reply.confirm": "Svara",
"confirmations.reply.message": "Svarar tú nú, verða boðini, sum tú ert í holt við at skriva yvirskrivað. Ert tú vís/ur í, at tú vilt halda fram?", "confirmations.reply.message": "Svarar tú nú, verða boðini, sum tú ert í holt við at skriva yvirskrivað. Ert tú vís/ur í, at tú vilt halda fram?",
"confirmations.reply.title": "Skriva omaná post?",
"confirmations.unfollow.confirm": "Fylg ikki", "confirmations.unfollow.confirm": "Fylg ikki",
"confirmations.unfollow.message": "Ert tú vís/ur í, at tú vil steðga við at fylgja {name}?", "confirmations.unfollow.message": "Ert tú vís/ur í, at tú vil steðga við at fylgja {name}?",
"confirmations.unfollow.title": "Gevst at fylgja brúkara?",
"conversation.delete": "Strika samrøðu", "conversation.delete": "Strika samrøðu",
"conversation.mark_as_read": "Merk sum lisið", "conversation.mark_as_read": "Merk sum lisið",
"conversation.open": "Vís samrøðu", "conversation.open": "Vís samrøðu",
@ -507,6 +510,7 @@
"notification_requests.title": "Sáldaðar fráboðanir", "notification_requests.title": "Sáldaðar fráboðanir",
"notifications.clear": "Rudda fráboðanir", "notifications.clear": "Rudda fráboðanir",
"notifications.clear_confirmation": "Ert tú vís/ur í, at tú vilt strika allar tínar fráboðanir?", "notifications.clear_confirmation": "Ert tú vís/ur í, at tú vilt strika allar tínar fráboðanir?",
"notifications.clear_title": "Rudda fráboðanir?",
"notifications.column_settings.admin.report": "Nýggjar fráboðanir:", "notifications.column_settings.admin.report": "Nýggjar fráboðanir:",
"notifications.column_settings.admin.sign_up": "Nýggjar tilmeldingar:", "notifications.column_settings.admin.sign_up": "Nýggjar tilmeldingar:",
"notifications.column_settings.alert": "Skriviborðsfráboðanir", "notifications.column_settings.alert": "Skriviborðsfráboðanir",

View file

@ -166,27 +166,30 @@
"compose_form.spoiler_placeholder": "Avertissement de contenu (optionnel)", "compose_form.spoiler_placeholder": "Avertissement de contenu (optionnel)",
"confirmation_modal.cancel": "Annuler", "confirmation_modal.cancel": "Annuler",
"confirmations.block.confirm": "Bloquer", "confirmations.block.confirm": "Bloquer",
"confirmations.cancel_follow_request.confirm": "Retirer cette demande",
"confirmations.cancel_follow_request.message": "Êtes-vous sûr de vouloir retirer votre demande pour suivre {name}?",
"confirmations.delete.confirm": "Supprimer", "confirmations.delete.confirm": "Supprimer",
"confirmations.delete.message": "Voulez-vous vraiment supprimer cette publication?", "confirmations.delete.message": "Voulez-vous vraiment supprimer cette publication?",
"confirmations.delete.title": "Supprimer la publication ?",
"confirmations.delete_list.confirm": "Supprimer", "confirmations.delete_list.confirm": "Supprimer",
"confirmations.delete_list.message": "Voulez-vous vraiment supprimer définitivement cette liste?", "confirmations.delete_list.message": "Voulez-vous vraiment supprimer définitivement cette liste?",
"confirmations.delete_list.title": "Supprimer la liste ?",
"confirmations.discard_edit_media.confirm": "Rejeter", "confirmations.discard_edit_media.confirm": "Rejeter",
"confirmations.discard_edit_media.message": "Vous avez des modifications non enregistrées de la description ou de l'aperçu du média, voulez-vous quand même les supprimer?", "confirmations.discard_edit_media.message": "Vous avez des modifications non enregistrées de la description ou de l'aperçu du média, voulez-vous quand même les supprimer?",
"confirmations.domain_block.confirm": "Bloquer le serveur",
"confirmations.domain_block.message": "Voulez-vous vraiment, vraiment bloquer {domain} en entier? Dans la plupart des cas, quelques blocages ou masquages ciblés sont suffisants et préférables. Vous ne verrez plus de contenu provenant de ce domaine, ni dans vos fils publics, ni dans vos notifications. Vos abonné·e·s utilisant ce domaine seront retiré·e·s.",
"confirmations.edit.confirm": "Éditer", "confirmations.edit.confirm": "Éditer",
"confirmations.edit.message": "Modifier maintenant écrasera votre message en cours de rédaction. Voulez-vous vraiment continuer ?", "confirmations.edit.message": "Modifier maintenant écrasera votre message en cours de rédaction. Voulez-vous vraiment continuer ?",
"confirmations.edit.title": "Remplacer le message ?",
"confirmations.logout.confirm": "Se déconnecter", "confirmations.logout.confirm": "Se déconnecter",
"confirmations.logout.message": "Voulez-vous vraiment vous déconnecter?", "confirmations.logout.message": "Voulez-vous vraiment vous déconnecter?",
"confirmations.logout.title": "Se déconnecter ?",
"confirmations.mute.confirm": "Masquer", "confirmations.mute.confirm": "Masquer",
"confirmations.redraft.confirm": "Supprimer et réécrire", "confirmations.redraft.confirm": "Supprimer et réécrire",
"confirmations.redraft.message": "Êtes-vous sûr·e de vouloir effacer cette publication pour la réécrire? Ses ses mises en favori et boosts seront perdus et ses réponses seront orphelines.", "confirmations.redraft.message": "Êtes-vous sûr·e de vouloir effacer cette publication pour la réécrire? Ses ses mises en favori et boosts seront perdus et ses réponses seront orphelines.",
"confirmations.redraft.title": "Supprimer et réécrire le message ?",
"confirmations.reply.confirm": "Répondre", "confirmations.reply.confirm": "Répondre",
"confirmations.reply.message": "Répondre maintenant écrasera le message que vous rédigez présentement. Voulez-vous vraiment continuer?", "confirmations.reply.message": "Répondre maintenant écrasera le message que vous rédigez présentement. Voulez-vous vraiment continuer?",
"confirmations.reply.title": "Remplacer le message ?",
"confirmations.unfollow.confirm": "Ne plus suivre", "confirmations.unfollow.confirm": "Ne plus suivre",
"confirmations.unfollow.message": "Voulez-vous vraiment arrêter de suivre {name}?", "confirmations.unfollow.message": "Voulez-vous vraiment arrêter de suivre {name}?",
"confirmations.unfollow.title": "Se désabonner de l'utilisateur ?",
"conversation.delete": "Supprimer cette conversation", "conversation.delete": "Supprimer cette conversation",
"conversation.mark_as_read": "Marquer comme lu", "conversation.mark_as_read": "Marquer comme lu",
"conversation.open": "Afficher cette conversation", "conversation.open": "Afficher cette conversation",
@ -480,6 +483,7 @@
"notification_requests.title": "Notifications filtrées", "notification_requests.title": "Notifications filtrées",
"notifications.clear": "Effacer notifications", "notifications.clear": "Effacer notifications",
"notifications.clear_confirmation": "Voulez-vous vraiment effacer toutes vos notifications?", "notifications.clear_confirmation": "Voulez-vous vraiment effacer toutes vos notifications?",
"notifications.clear_title": "Effacer les notifications ?",
"notifications.column_settings.admin.report": "Nouveaux signalements:", "notifications.column_settings.admin.report": "Nouveaux signalements:",
"notifications.column_settings.admin.sign_up": "Nouvelles inscriptions:", "notifications.column_settings.admin.sign_up": "Nouvelles inscriptions:",
"notifications.column_settings.alert": "Notifications navigateur", "notifications.column_settings.alert": "Notifications navigateur",

View file

@ -166,27 +166,30 @@
"compose_form.spoiler_placeholder": "Avertissement de contenu (optionnel)", "compose_form.spoiler_placeholder": "Avertissement de contenu (optionnel)",
"confirmation_modal.cancel": "Annuler", "confirmation_modal.cancel": "Annuler",
"confirmations.block.confirm": "Bloquer", "confirmations.block.confirm": "Bloquer",
"confirmations.cancel_follow_request.confirm": "Retirer la demande",
"confirmations.cancel_follow_request.message": "Êtes-vous sûr de vouloir retirer votre demande pour suivre {name} ?",
"confirmations.delete.confirm": "Supprimer", "confirmations.delete.confirm": "Supprimer",
"confirmations.delete.message": "Voulez-vous vraiment supprimer ce message ?", "confirmations.delete.message": "Voulez-vous vraiment supprimer ce message ?",
"confirmations.delete.title": "Supprimer la publication ?",
"confirmations.delete_list.confirm": "Supprimer", "confirmations.delete_list.confirm": "Supprimer",
"confirmations.delete_list.message": "Voulez-vous vraiment supprimer définitivement cette liste?", "confirmations.delete_list.message": "Voulez-vous vraiment supprimer définitivement cette liste?",
"confirmations.delete_list.title": "Supprimer la liste ?",
"confirmations.discard_edit_media.confirm": "Rejeter", "confirmations.discard_edit_media.confirm": "Rejeter",
"confirmations.discard_edit_media.message": "Vous avez des modifications non enregistrées de la description ou de l'aperçu du média, les supprimer quand même ?", "confirmations.discard_edit_media.message": "Vous avez des modifications non enregistrées de la description ou de l'aperçu du média, les supprimer quand même ?",
"confirmations.domain_block.confirm": "Bloquer le serveur",
"confirmations.domain_block.message": "Voulez-vous vraiment, vraiment bloquer {domain} en entier? Dans la plupart des cas, quelques blocages ou masquages ciblés sont suffisants et préférables. Vous ne verrez plus de contenu provenant de ce domaine, ni dans vos fils publics, ni dans vos notifications. Vos abonné·e·s utilisant ce domaine seront retiré·e·s.",
"confirmations.edit.confirm": "Modifier", "confirmations.edit.confirm": "Modifier",
"confirmations.edit.message": "Modifier maintenant écrasera votre message en cours de rédaction. Voulez-vous vraiment continuer ?", "confirmations.edit.message": "Modifier maintenant écrasera votre message en cours de rédaction. Voulez-vous vraiment continuer ?",
"confirmations.edit.title": "Remplacer le message ?",
"confirmations.logout.confirm": "Se déconnecter", "confirmations.logout.confirm": "Se déconnecter",
"confirmations.logout.message": "Voulez-vous vraiment vous déconnecter ?", "confirmations.logout.message": "Voulez-vous vraiment vous déconnecter ?",
"confirmations.logout.title": "Se déconnecter ?",
"confirmations.mute.confirm": "Masquer", "confirmations.mute.confirm": "Masquer",
"confirmations.redraft.confirm": "Supprimer et ré-écrire", "confirmations.redraft.confirm": "Supprimer et ré-écrire",
"confirmations.redraft.message": "Êtes-vous sûr·e de vouloir effacer cette publication pour la réécrire? Ses partages ainsi que ses mises en favori seront perdus et ses réponses seront orphelines.", "confirmations.redraft.message": "Êtes-vous sûr·e de vouloir effacer cette publication pour la réécrire? Ses partages ainsi que ses mises en favori seront perdus et ses réponses seront orphelines.",
"confirmations.redraft.title": "Supprimer et réécrire le message ?",
"confirmations.reply.confirm": "Répondre", "confirmations.reply.confirm": "Répondre",
"confirmations.reply.message": "Répondre maintenant écrasera votre message en cours de rédaction. Voulez-vous vraiment continuer ?", "confirmations.reply.message": "Répondre maintenant écrasera votre message en cours de rédaction. Voulez-vous vraiment continuer ?",
"confirmations.reply.title": "Remplacer le message ?",
"confirmations.unfollow.confirm": "Ne plus suivre", "confirmations.unfollow.confirm": "Ne plus suivre",
"confirmations.unfollow.message": "Voulez-vous vraiment vous désabonner de {name}?", "confirmations.unfollow.message": "Voulez-vous vraiment vous désabonner de {name}?",
"confirmations.unfollow.title": "Se désabonner de l'utilisateur ?",
"conversation.delete": "Supprimer la conversation", "conversation.delete": "Supprimer la conversation",
"conversation.mark_as_read": "Marquer comme lu", "conversation.mark_as_read": "Marquer comme lu",
"conversation.open": "Afficher la conversation", "conversation.open": "Afficher la conversation",
@ -480,6 +483,7 @@
"notification_requests.title": "Notifications filtrées", "notification_requests.title": "Notifications filtrées",
"notifications.clear": "Effacer les notifications", "notifications.clear": "Effacer les notifications",
"notifications.clear_confirmation": "Voulez-vous vraiment effacer toutes vos notifications?", "notifications.clear_confirmation": "Voulez-vous vraiment effacer toutes vos notifications?",
"notifications.clear_title": "Effacer les notifications ?",
"notifications.column_settings.admin.report": "Nouveaux signalements :", "notifications.column_settings.admin.report": "Nouveaux signalements :",
"notifications.column_settings.admin.sign_up": "Nouvelles inscriptions :", "notifications.column_settings.admin.sign_up": "Nouvelles inscriptions :",
"notifications.column_settings.alert": "Notifications du navigateur", "notifications.column_settings.alert": "Notifications du navigateur",

View file

@ -169,16 +169,12 @@
"compose_form.spoiler_placeholder": "Ynhâldswarskôging (opsjoneel)", "compose_form.spoiler_placeholder": "Ynhâldswarskôging (opsjoneel)",
"confirmation_modal.cancel": "Annulearje", "confirmation_modal.cancel": "Annulearje",
"confirmations.block.confirm": "Blokkearje", "confirmations.block.confirm": "Blokkearje",
"confirmations.cancel_follow_request.confirm": "Fersyk annulearje",
"confirmations.cancel_follow_request.message": "Binne jo wis dat jo jo fersyk om {name} te folgjen annulearje wolle?",
"confirmations.delete.confirm": "Fuortsmite", "confirmations.delete.confirm": "Fuortsmite",
"confirmations.delete.message": "Binne jo wis dat jo dit berjocht fuortsmite wolle?", "confirmations.delete.message": "Binne jo wis dat jo dit berjocht fuortsmite wolle?",
"confirmations.delete_list.confirm": "Fuortsmite", "confirmations.delete_list.confirm": "Fuortsmite",
"confirmations.delete_list.message": "Binne jo wis dat jo dizze list foar permanint fuortsmite wolle?", "confirmations.delete_list.message": "Binne jo wis dat jo dizze list foar permanint fuortsmite wolle?",
"confirmations.discard_edit_media.confirm": "Fuortsmite", "confirmations.discard_edit_media.confirm": "Fuortsmite",
"confirmations.discard_edit_media.message": "Jo hawwe net-bewarre wizigingen yn de mediabeskriuwing of foarfertoaning, wolle jo dizze dochs fuortsmite?", "confirmations.discard_edit_media.message": "Jo hawwe net-bewarre wizigingen yn de mediabeskriuwing of foarfertoaning, wolle jo dizze dochs fuortsmite?",
"confirmations.domain_block.confirm": "Server blokkearje",
"confirmations.domain_block.message": "Binne jo echt wis dat jo alles fan {domain} negearje wolle? Yn de measte gefallen is it blokkearjen of negearjen fan in pear spesifike persoanen genôch en better. Jo sille gjin berjochten fan dizze server op iepenbiere tiidlinen sjen of yn jo meldingen. Jo folgers fan dizze server wurde fuortsmiten.",
"confirmations.edit.confirm": "Bewurkje", "confirmations.edit.confirm": "Bewurkje",
"confirmations.edit.message": "Troch no te bewurkjen sil it berjocht dat jo no oan it skriuwen binne oerskreaun wurde. Wolle jo trochgean?", "confirmations.edit.message": "Troch no te bewurkjen sil it berjocht dat jo no oan it skriuwen binne oerskreaun wurde. Wolle jo trochgean?",
"confirmations.logout.confirm": "Ofmelde", "confirmations.logout.confirm": "Ofmelde",

View file

@ -169,27 +169,30 @@
"compose_form.spoiler_placeholder": "Rabhadh ábhair (roghnach)", "compose_form.spoiler_placeholder": "Rabhadh ábhair (roghnach)",
"confirmation_modal.cancel": "Cealaigh", "confirmation_modal.cancel": "Cealaigh",
"confirmations.block.confirm": "Bac", "confirmations.block.confirm": "Bac",
"confirmations.cancel_follow_request.confirm": "Éirigh as iarratas",
"confirmations.cancel_follow_request.message": "An bhfuil tú cinnte gur mhaith leat éirigh as an iarratas leanta {name}?",
"confirmations.delete.confirm": "Scrios", "confirmations.delete.confirm": "Scrios",
"confirmations.delete.message": "An bhfuil tú cinnte gur mhaith leat an phostáil seo a scriosadh?", "confirmations.delete.message": "An bhfuil tú cinnte gur mhaith leat an phostáil seo a scriosadh?",
"confirmations.delete.title": "Scrios postáil?",
"confirmations.delete_list.confirm": "Scrios", "confirmations.delete_list.confirm": "Scrios",
"confirmations.delete_list.message": "An bhfuil tú cinnte gur mhaith leat an liosta seo a scriosadh go buan?", "confirmations.delete_list.message": "An bhfuil tú cinnte gur mhaith leat an liosta seo a scriosadh go buan?",
"confirmations.delete_list.title": "Scrios liosta?",
"confirmations.discard_edit_media.confirm": "Faigh réidh de", "confirmations.discard_edit_media.confirm": "Faigh réidh de",
"confirmations.discard_edit_media.message": "Tá athruithe neamhshlánaithe don tuarascáil gné nó réamhamharc agat, faigh réidh dóibh ar aon nós?", "confirmations.discard_edit_media.message": "Tá athruithe neamhshlánaithe don tuarascáil gné nó réamhamharc agat, faigh réidh dóibh ar aon nós?",
"confirmations.domain_block.confirm": "Bloc freastalaí",
"confirmations.domain_block.message": "An bhfuil tú iontach cinnte gur mhaith leat bac an t-ainm fearainn {domain} in iomlán? I bhformhór na gcásanna, is leor agus is fearr cúpla baic a cur i bhfeidhm nó cúpla úsáideoirí a balbhú. Ní fheicfidh tú ábhair ón t-ainm fearainn sin in amlíne ar bith, nó i d'fhógraí. Scaoilfear do leantóirí ón ainm fearainn sin.",
"confirmations.edit.confirm": "Eagar", "confirmations.edit.confirm": "Eagar",
"confirmations.edit.message": "Má dhéanann tú eagarthóireacht anois, déanfar an teachtaireacht atá á cumadh agat faoi láthair a fhorscríobh. An bhfuil tú cinnte gur mhaith leat leanúint ar aghaidh?", "confirmations.edit.message": "Má dhéanann tú eagarthóireacht anois, déanfar an teachtaireacht atá á cumadh agat faoi láthair a fhorscríobh. An bhfuil tú cinnte gur mhaith leat leanúint ar aghaidh?",
"confirmations.edit.title": "Forscríobh postáil?",
"confirmations.logout.confirm": "Logáil amach", "confirmations.logout.confirm": "Logáil amach",
"confirmations.logout.message": "An bhfuil tú cinnte gur mhaith leat logáil amach?", "confirmations.logout.message": "An bhfuil tú cinnte gur mhaith leat logáil amach?",
"confirmations.logout.title": "Logáil Amach?",
"confirmations.mute.confirm": "Balbhaigh", "confirmations.mute.confirm": "Balbhaigh",
"confirmations.redraft.confirm": "Scrios ⁊ athdhréachtaigh", "confirmations.redraft.confirm": "Scrios ⁊ athdhréachtaigh",
"confirmations.redraft.message": "An bhfuil tú cinnte gur mhaith leat an postáil seo a scriosadh agus é a athdhréachtú? Caillfear ceanáin agus treisithe, agus dílleachtaí freagraí ar an mbunphostála.", "confirmations.redraft.message": "An bhfuil tú cinnte gur mhaith leat an postáil seo a scriosadh agus é a athdhréachtú? Caillfear ceanáin agus treisithe, agus dílleachtaí freagraí ar an mbunphostála.",
"confirmations.redraft.title": "Scrios & athdhréachtú postáil?",
"confirmations.reply.confirm": "Freagair", "confirmations.reply.confirm": "Freagair",
"confirmations.reply.message": "Scriosfaidh freagra láithreach an teachtaireacht atá a chumadh anois agat. An bhfuil tú cinnte gur mhaith leat leanúint leat?", "confirmations.reply.message": "Scriosfaidh freagra láithreach an teachtaireacht atá a chumadh anois agat. An bhfuil tú cinnte gur mhaith leat leanúint leat?",
"confirmations.reply.title": "Forscríobh postáil?",
"confirmations.unfollow.confirm": "Ná lean", "confirmations.unfollow.confirm": "Ná lean",
"confirmations.unfollow.message": "An bhfuil tú cinnte gur mhaith leat {name} a dhíleanúint?", "confirmations.unfollow.message": "An bhfuil tú cinnte gur mhaith leat {name} a dhíleanúint?",
"confirmations.unfollow.title": "Dílean an t-úsáideoir?",
"conversation.delete": "Scrios comhrá", "conversation.delete": "Scrios comhrá",
"conversation.mark_as_read": "Marcáil mar léite", "conversation.mark_as_read": "Marcáil mar léite",
"conversation.open": "Féach ar comhrá", "conversation.open": "Féach ar comhrá",
@ -507,6 +510,7 @@
"notification_requests.title": "Fógraí scagtha", "notification_requests.title": "Fógraí scagtha",
"notifications.clear": "Glan fógraí", "notifications.clear": "Glan fógraí",
"notifications.clear_confirmation": "An bhfuil tú cinnte gur mhaith leat d'fhógraí go léir a ghlanadh go buan?", "notifications.clear_confirmation": "An bhfuil tú cinnte gur mhaith leat d'fhógraí go léir a ghlanadh go buan?",
"notifications.clear_title": "Glan fógraí?",
"notifications.column_settings.admin.report": "Tuairiscí nua:", "notifications.column_settings.admin.report": "Tuairiscí nua:",
"notifications.column_settings.admin.sign_up": "Clárúcháin nua:", "notifications.column_settings.admin.sign_up": "Clárúcháin nua:",
"notifications.column_settings.alert": "Fógraí deisce", "notifications.column_settings.alert": "Fógraí deisce",

View file

@ -166,16 +166,12 @@
"compose_form.spoiler_placeholder": "Rabhadh susbainte (roghainneil)", "compose_form.spoiler_placeholder": "Rabhadh susbainte (roghainneil)",
"confirmation_modal.cancel": "Sguir dheth", "confirmation_modal.cancel": "Sguir dheth",
"confirmations.block.confirm": "Bac", "confirmations.block.confirm": "Bac",
"confirmations.cancel_follow_request.confirm": "Cuir d iarrtas dhan dàrna taobh",
"confirmations.cancel_follow_request.message": "A bheil thu cinnteach gu bheil thu airson d iarrtas airson {name} a leantainn a chur dhan dàrna taobh?",
"confirmations.delete.confirm": "Sguab às", "confirmations.delete.confirm": "Sguab às",
"confirmations.delete.message": "A bheil thu cinnteach gu bheil thu airson am post seo a sguabadh às?", "confirmations.delete.message": "A bheil thu cinnteach gu bheil thu airson am post seo a sguabadh às?",
"confirmations.delete_list.confirm": "Sguab às", "confirmations.delete_list.confirm": "Sguab às",
"confirmations.delete_list.message": "A bheil thu cinnteach gu bheil thu airson an liosta seo a sguabadh às gu buan?", "confirmations.delete_list.message": "A bheil thu cinnteach gu bheil thu airson an liosta seo a sguabadh às gu buan?",
"confirmations.discard_edit_media.confirm": "Tilg air falbh", "confirmations.discard_edit_media.confirm": "Tilg air falbh",
"confirmations.discard_edit_media.message": "Tha atharraichean gun sàbhaladh agad ann an tuairisgeul no ro-shealladh a mheadhain, a bheil thu airson an tilgeil air falbh co-dhiù?", "confirmations.discard_edit_media.message": "Tha atharraichean gun sàbhaladh agad ann an tuairisgeul no ro-shealladh a mheadhain, a bheil thu airson an tilgeil air falbh co-dhiù?",
"confirmations.domain_block.confirm": "Bac am frithealaiche",
"confirmations.domain_block.message": "A bheil thu cinnteach dha-rìribh gu bheil thu airson an àrainn {domain} a bhacadh uile gu lèir? Mar as trice, foghnaidh gun dèan thu bacadh no mùchadh no dhà gu sònraichte agus bhiodh sin na b fheàrr. Chan fhaic thu susbaint on àrainn ud air loidhne-ama phoblach sam bith no am measg nam brathan agad. Thèid an luchd-leantainn agad on àrainn ud a thoirt air falbh.",
"confirmations.edit.confirm": "Deasaich", "confirmations.edit.confirm": "Deasaich",
"confirmations.edit.message": "Ma nì thu deasachadh an-dràsta, thèid seo a sgrìobhadh thairis air an teachdaireachd a tha thu a sgrìobhadh an-dràsta. A bheil thu cinnteach gu bheil thu airson leantainn air adhart?", "confirmations.edit.message": "Ma nì thu deasachadh an-dràsta, thèid seo a sgrìobhadh thairis air an teachdaireachd a tha thu a sgrìobhadh an-dràsta. A bheil thu cinnteach gu bheil thu airson leantainn air adhart?",
"confirmations.logout.confirm": "Clàraich a-mach", "confirmations.logout.confirm": "Clàraich a-mach",

View file

@ -169,27 +169,30 @@
"compose_form.spoiler_placeholder": "Aviso sobre o contido (optativo)", "compose_form.spoiler_placeholder": "Aviso sobre o contido (optativo)",
"confirmation_modal.cancel": "Cancelar", "confirmation_modal.cancel": "Cancelar",
"confirmations.block.confirm": "Bloquear", "confirmations.block.confirm": "Bloquear",
"confirmations.cancel_follow_request.confirm": "Retirar solicitude",
"confirmations.cancel_follow_request.message": "Tes a certeza de querer retirar a solicitude para seguir a {name}?",
"confirmations.delete.confirm": "Eliminar", "confirmations.delete.confirm": "Eliminar",
"confirmations.delete.message": "Tes a certeza de querer eliminar esta publicación?", "confirmations.delete.message": "Tes a certeza de querer eliminar esta publicación?",
"confirmations.delete.title": "Eliminar a publicación?",
"confirmations.delete_list.confirm": "Eliminar", "confirmations.delete_list.confirm": "Eliminar",
"confirmations.delete_list.message": "Tes a certeza de querer eliminar de xeito permanente esta listaxe?", "confirmations.delete_list.message": "Tes a certeza de querer eliminar de xeito permanente esta listaxe?",
"confirmations.delete_list.title": "Eliminar a lista?",
"confirmations.discard_edit_media.confirm": "Descartar", "confirmations.discard_edit_media.confirm": "Descartar",
"confirmations.discard_edit_media.message": "Tes cambios sen gardar para a vista previa ou descrición do multimedia, descartamos os cambios?", "confirmations.discard_edit_media.message": "Tes cambios sen gardar para a vista previa ou descrición do multimedia, descartamos os cambios?",
"confirmations.domain_block.confirm": "Bloquear servidor",
"confirmations.domain_block.message": "Tes a certeza de querer bloquear todo de {domain}? Na meirande parte dos casos uns bloqueos ou silenciados específicos son suficientes. Non verás máis o contido deste dominio en ningunha cronoloxía pública ou nas túas notificacións. As túas seguidoras deste dominio serán eliminadas.",
"confirmations.edit.confirm": "Editar", "confirmations.edit.confirm": "Editar",
"confirmations.edit.message": "Ao editar sobrescribirás a mensaxe que estás a compor. Tes a certeza de que queres continuar?", "confirmations.edit.message": "Ao editar sobrescribirás a mensaxe que estás a compor. Tes a certeza de que queres continuar?",
"confirmations.edit.title": "Editar a publicación?",
"confirmations.logout.confirm": "Pechar sesión", "confirmations.logout.confirm": "Pechar sesión",
"confirmations.logout.message": "Desexas pechar a sesión?", "confirmations.logout.message": "Desexas pechar a sesión?",
"confirmations.logout.title": "Pechar sesión?",
"confirmations.mute.confirm": "Acalar", "confirmations.mute.confirm": "Acalar",
"confirmations.redraft.confirm": "Eliminar e reescribir", "confirmations.redraft.confirm": "Eliminar e reescribir",
"confirmations.redraft.message": "Tes a certeza de querer eliminar esta publicación e reescribila? Perderás as promocións e favorecementos, e as respostas á publicación orixinal ficarán orfas.", "confirmations.redraft.message": "Tes a certeza de querer eliminar esta publicación e reescribila? Perderás as promocións e favorecementos, e as respostas á publicación orixinal ficarán orfas.",
"confirmations.redraft.title": "Eliminar e reescribir a publicación?",
"confirmations.reply.confirm": "Responder", "confirmations.reply.confirm": "Responder",
"confirmations.reply.message": "Ao responder sobrescribirás a mensaxe que estás a compor. Tes a certeza de que queres continuar?", "confirmations.reply.message": "Ao responder sobrescribirás a mensaxe que estás a compor. Tes a certeza de que queres continuar?",
"confirmations.reply.title": "Editar a publicación?",
"confirmations.unfollow.confirm": "Deixar de seguir", "confirmations.unfollow.confirm": "Deixar de seguir",
"confirmations.unfollow.message": "Desexas deixar de seguir a {name}?", "confirmations.unfollow.message": "Desexas deixar de seguir a {name}?",
"confirmations.unfollow.title": "Deixar de seguir á usuaria?",
"conversation.delete": "Eliminar conversa", "conversation.delete": "Eliminar conversa",
"conversation.mark_as_read": "Marcar como lido", "conversation.mark_as_read": "Marcar como lido",
"conversation.open": "Ver conversa", "conversation.open": "Ver conversa",
@ -507,6 +510,7 @@
"notification_requests.title": "Notificacións filtradas", "notification_requests.title": "Notificacións filtradas",
"notifications.clear": "Limpar notificacións", "notifications.clear": "Limpar notificacións",
"notifications.clear_confirmation": "Tes a certeza de querer limpar de xeito permanente todas as túas notificacións?", "notifications.clear_confirmation": "Tes a certeza de querer limpar de xeito permanente todas as túas notificacións?",
"notifications.clear_title": "Limpar as notificacións?",
"notifications.column_settings.admin.report": "Novas denuncias:", "notifications.column_settings.admin.report": "Novas denuncias:",
"notifications.column_settings.admin.sign_up": "Novas usuarias:", "notifications.column_settings.admin.sign_up": "Novas usuarias:",
"notifications.column_settings.alert": "Notificacións de escritorio", "notifications.column_settings.alert": "Notificacións de escritorio",

View file

@ -1,5 +1,5 @@
{ {
"about.blocks": "שרתים מוגבלים", "about.blocks": "שרתים שנחסמו על ידי המנהלים",
"about.contact": "יצירת קשר:", "about.contact": "יצירת קשר:",
"about.disclaimer": "מסטודון היא תוכנת קוד פתוח חינמית וסימן מסחרי של Mastodon gGmbH.", "about.disclaimer": "מסטודון היא תוכנת קוד פתוח חינמית וסימן מסחרי של Mastodon gGmbH.",
"about.domain_blocks.no_reason_available": "הסיבה אינה זמינה", "about.domain_blocks.no_reason_available": "הסיבה אינה זמינה",
@ -169,27 +169,30 @@
"compose_form.spoiler_placeholder": "אזהרת תוכן (לא חובה)", "compose_form.spoiler_placeholder": "אזהרת תוכן (לא חובה)",
"confirmation_modal.cancel": "ביטול", "confirmation_modal.cancel": "ביטול",
"confirmations.block.confirm": "לחסום", "confirmations.block.confirm": "לחסום",
"confirmations.cancel_follow_request.confirm": "ויתור על בקשה",
"confirmations.cancel_follow_request.message": "לבטל את בקשת המעקב אחרי {name}?",
"confirmations.delete.confirm": "למחוק", "confirmations.delete.confirm": "למחוק",
"confirmations.delete.message": "בטוח/ה שאת/ה רוצה למחוק את ההודעה?", "confirmations.delete.message": "בטוח/ה שאת/ה רוצה למחוק את ההודעה?",
"confirmations.delete.title": "למחוק הודעה?",
"confirmations.delete_list.confirm": "למחוק", "confirmations.delete_list.confirm": "למחוק",
"confirmations.delete_list.message": "האם אתם בטוחים שאתם רוצים למחוק את הרשימה לצמיתות?", "confirmations.delete_list.message": "האם אתם בטוחים שאתם רוצים למחוק את הרשימה לצמיתות?",
"confirmations.delete_list.title": "למחוק רשימה?",
"confirmations.discard_edit_media.confirm": "השלך", "confirmations.discard_edit_media.confirm": "השלך",
"confirmations.discard_edit_media.message": "יש לך שינויים לא שמורים לתיאור המדיה. להשליך אותם בכל זאת?", "confirmations.discard_edit_media.message": "יש לך שינויים לא שמורים לתיאור המדיה. להשליך אותם בכל זאת?",
"confirmations.domain_block.confirm": "חסימת שרת",
"confirmations.domain_block.message": "בטוחה שברצונך באמת לחסום את קהילת {domain}? ברב המקרים השתקה וחסימה של מספר משתמשים עשוייה להספיק. לא תראי תוכל מכלל שם המתחם בפידים הציבוריים או בהתראות שלך. העוקבים שלך מהקהילה הזאת יוסרו",
"confirmations.edit.confirm": "עריכה", "confirmations.edit.confirm": "עריכה",
"confirmations.edit.message": "עריכה תדרוס את ההודעה שכבר התחלת לכתוב. האם להמשיך?", "confirmations.edit.message": "עריכה תדרוס את ההודעה שכבר התחלת לכתוב. האם להמשיך?",
"confirmations.edit.title": "לבצע החלפת תוכן?",
"confirmations.logout.confirm": "התנתקות", "confirmations.logout.confirm": "התנתקות",
"confirmations.logout.message": "האם אתם בטוחים שאתם רוצים להתנתק?", "confirmations.logout.message": "האם אתם בטוחים שאתם רוצים להתנתק?",
"confirmations.logout.title": "להתנתק?",
"confirmations.mute.confirm": "להשתיק", "confirmations.mute.confirm": "להשתיק",
"confirmations.redraft.confirm": "מחיקה ועריכה מחדש", "confirmations.redraft.confirm": "מחיקה ועריכה מחדש",
"confirmations.redraft.message": "למחוק ולהתחיל טיוטה חדשה? חיבובים והדהודים יאבדו, ותגובות להודעה המקורית ישארו יתומות.", "confirmations.redraft.message": "למחוק ולהתחיל טיוטה חדשה? חיבובים והדהודים יאבדו, ותגובות להודעה המקורית ישארו יתומות.",
"confirmations.redraft.title": "מחיקה ועריכה מחדש?",
"confirmations.reply.confirm": "תגובה", "confirmations.reply.confirm": "תגובה",
"confirmations.reply.message": "תגובה עכשיו תמחק את ההודעה שכבר התחלת לכתוב. להמשיך?", "confirmations.reply.message": "תגובה עכשיו תמחק את ההודעה שכבר התחלת לכתוב. להמשיך?",
"confirmations.reply.title": "לבצע החלפת תוכן?",
"confirmations.unfollow.confirm": "הפסקת מעקב", "confirmations.unfollow.confirm": "הפסקת מעקב",
"confirmations.unfollow.message": "להפסיק מעקב אחרי {name}?", "confirmations.unfollow.message": "להפסיק מעקב אחרי {name}?",
"confirmations.unfollow.title": "לבטל מעקב אחר המשתמש.ת?",
"conversation.delete": "מחיקת שיחה", "conversation.delete": "מחיקת שיחה",
"conversation.mark_as_read": "סמן כנקרא", "conversation.mark_as_read": "סמן כנקרא",
"conversation.open": "צפו בשיחה", "conversation.open": "צפו בשיחה",
@ -507,6 +510,7 @@
"notification_requests.title": "התראות מסוננות", "notification_requests.title": "התראות מסוננות",
"notifications.clear": "הסרת התראות", "notifications.clear": "הסרת התראות",
"notifications.clear_confirmation": "להסיר את כל ההתראות לצמיתות ? ", "notifications.clear_confirmation": "להסיר את כל ההתראות לצמיתות ? ",
"notifications.clear_title": "לנקות התראות?",
"notifications.column_settings.admin.report": "דו\"חות חדשים", "notifications.column_settings.admin.report": "דו\"חות חדשים",
"notifications.column_settings.admin.sign_up": "הרשמות חדשות:", "notifications.column_settings.admin.sign_up": "הרשמות חדשות:",
"notifications.column_settings.alert": "התראות לשולחן העבודה", "notifications.column_settings.alert": "התראות לשולחן העבודה",

View file

@ -166,16 +166,12 @@
"compose_form.spoiler_placeholder": "सामग्री चेतावनी (वैकल्पिक)", "compose_form.spoiler_placeholder": "सामग्री चेतावनी (वैकल्पिक)",
"confirmation_modal.cancel": "रद्द करें", "confirmation_modal.cancel": "रद्द करें",
"confirmations.block.confirm": "ब्लॉक", "confirmations.block.confirm": "ब्लॉक",
"confirmations.cancel_follow_request.confirm": "रिक्वेस्ट वापस लें",
"confirmations.cancel_follow_request.message": "क्या आप सुनिश्चित है की आप {name} का फॉलो रिक्वेस्ट वापिस लेना चाहते हैं?",
"confirmations.delete.confirm": "मिटाए", "confirmations.delete.confirm": "मिटाए",
"confirmations.delete.message": "क्या आप वाकई इस स्टेटस को हटाना चाहते हैं?", "confirmations.delete.message": "क्या आप वाकई इस स्टेटस को हटाना चाहते हैं?",
"confirmations.delete_list.confirm": "मिटाए", "confirmations.delete_list.confirm": "मिटाए",
"confirmations.delete_list.message": "क्या आप वाकई इस लिस्ट को हमेशा के लिये मिटाना चाहते हैं?", "confirmations.delete_list.message": "क्या आप वाकई इस लिस्ट को हमेशा के लिये मिटाना चाहते हैं?",
"confirmations.discard_edit_media.confirm": "डिस्कार्ड", "confirmations.discard_edit_media.confirm": "डिस्कार्ड",
"confirmations.discard_edit_media.message": "लिस्ट में जोड़ें", "confirmations.discard_edit_media.message": "लिस्ट में जोड़ें",
"confirmations.domain_block.confirm": "सर्वर ब्लॉक करें",
"confirmations.domain_block.message": "क्या आप वास्तव में, वास्तव में आप पूरे {domain} को ब्लॉक करना चाहते हैं? ज्यादातर मामलों में कुछ लक्षित ब्लॉक या म्यूट पर्याप्त और बेहतर हैं। आप किसी भी सार्वजनिक समय-सीमा या अपनी सूचनाओं में उस डोमेन की सामग्री नहीं देखेंगे। उस डोमेन से आपके फॉलोवर्स को हटा दिया जाएगा।",
"confirmations.edit.confirm": "संशोधित करें", "confirmations.edit.confirm": "संशोधित करें",
"confirmations.edit.message": "अभी संपादन किया तो वो संदेश मिट जायेगा जिसे आप लिख रहे थे। क्या आप जारी रखना चाहते हैं?", "confirmations.edit.message": "अभी संपादन किया तो वो संदेश मिट जायेगा जिसे आप लिख रहे थे। क्या आप जारी रखना चाहते हैं?",
"confirmations.logout.confirm": "लॉग आउट करें", "confirmations.logout.confirm": "लॉग आउट करें",

View file

@ -144,14 +144,12 @@
"compose_form.spoiler.unmarked": "Tekst nije skriven", "compose_form.spoiler.unmarked": "Tekst nije skriven",
"confirmation_modal.cancel": "Otkaži", "confirmation_modal.cancel": "Otkaži",
"confirmations.block.confirm": "Blokiraj", "confirmations.block.confirm": "Blokiraj",
"confirmations.cancel_follow_request.confirm": "Povuci zahtjev",
"confirmations.delete.confirm": "Obriši", "confirmations.delete.confirm": "Obriši",
"confirmations.delete.message": "Stvarno želite obrisati ovaj toot?", "confirmations.delete.message": "Stvarno želite obrisati ovaj toot?",
"confirmations.delete_list.confirm": "Obriši", "confirmations.delete_list.confirm": "Obriši",
"confirmations.delete_list.message": "Jeste li sigurni da želite trajno obrisati ovu listu?", "confirmations.delete_list.message": "Jeste li sigurni da želite trajno obrisati ovu listu?",
"confirmations.discard_edit_media.confirm": "Odbaciti", "confirmations.discard_edit_media.confirm": "Odbaciti",
"confirmations.discard_edit_media.message": "Postoje nespremljene promjene u opisu medija ili u pretpregledu, svejedno ih odbaciti?", "confirmations.discard_edit_media.message": "Postoje nespremljene promjene u opisu medija ili u pretpregledu, svejedno ih odbaciti?",
"confirmations.domain_block.message": "Jeste li zaista, zaista sigurni da želite blokirati cijelu domenu {domain}? U većini slučajeva dovoljno je i preferirano nekoliko ciljanih blokiranja ili utišavanja. Nećete vidjeti sadržaj s te domene ni u kojim javnim vremenskim crtama ili Vašim obavijestima. Vaši pratitelji s te domene bit će uklonjeni.",
"confirmations.edit.confirm": "Uredi", "confirmations.edit.confirm": "Uredi",
"confirmations.logout.confirm": "Odjavi se", "confirmations.logout.confirm": "Odjavi se",
"confirmations.logout.message": "Jeste li sigurni da se želite odjaviti?", "confirmations.logout.message": "Jeste li sigurni da se želite odjaviti?",

View file

@ -169,27 +169,30 @@
"compose_form.spoiler_placeholder": "Tartalmi figyelmeztetés (opcionális)", "compose_form.spoiler_placeholder": "Tartalmi figyelmeztetés (opcionális)",
"confirmation_modal.cancel": "Mégsem", "confirmation_modal.cancel": "Mégsem",
"confirmations.block.confirm": "Letiltás", "confirmations.block.confirm": "Letiltás",
"confirmations.cancel_follow_request.confirm": "Kérés visszavonása",
"confirmations.cancel_follow_request.message": "Biztos, hogy visszavonod a(z) {name} felhasználóra vonatkozó követési kérésedet?",
"confirmations.delete.confirm": "Törlés", "confirmations.delete.confirm": "Törlés",
"confirmations.delete.message": "Biztos, hogy törölni szeretnéd ezt a bejegyzést?", "confirmations.delete.message": "Biztos, hogy törölni szeretnéd ezt a bejegyzést?",
"confirmations.delete.title": "Törlöd a bejegyzést?",
"confirmations.delete_list.confirm": "Törlés", "confirmations.delete_list.confirm": "Törlés",
"confirmations.delete_list.message": "Biztos, hogy véglegesen törölni szeretnéd ezt a listát?", "confirmations.delete_list.message": "Biztos, hogy véglegesen törölni szeretnéd ezt a listát?",
"confirmations.delete_list.title": "Törlöd a listát?",
"confirmations.discard_edit_media.confirm": "Elvetés", "confirmations.discard_edit_media.confirm": "Elvetés",
"confirmations.discard_edit_media.message": "Mentetlen változtatásaid vannak a média leírásában vagy előnézetében, mindenképp elveted?", "confirmations.discard_edit_media.message": "Mentetlen változtatásaid vannak a média leírásában vagy előnézetében, mindenképp elveted?",
"confirmations.domain_block.confirm": "Kiszolgáló letiltása",
"confirmations.domain_block.message": "Biztos, hogy le szeretnéd tiltani a teljes {domain} domaint? A legtöbb esetben néhány célzott tiltás vagy némítás elegendő, és kívánatosabb megoldás. Semmilyen tartalmat nem fogsz látni ebből a domainből se az idővonalakon, se az értesítésekben. Az ebben a domainben lévő követőidet is eltávolítjuk.",
"confirmations.edit.confirm": "Szerkesztés", "confirmations.edit.confirm": "Szerkesztés",
"confirmations.edit.message": "Ha most szerkeszted, ez felülírja a most szerkesztés alatt álló üzenetet. Mégis ezt szeretnéd?", "confirmations.edit.message": "Ha most szerkeszted, ez felülírja a most szerkesztés alatt álló üzenetet. Mégis ezt szeretnéd?",
"confirmations.edit.title": "Felülírod a bejegyzést?",
"confirmations.logout.confirm": "Kijelentkezés", "confirmations.logout.confirm": "Kijelentkezés",
"confirmations.logout.message": "Biztos, hogy kijelentkezel?", "confirmations.logout.message": "Biztos, hogy kijelentkezel?",
"confirmations.logout.title": "Kijelentkezel?",
"confirmations.mute.confirm": "Némítás", "confirmations.mute.confirm": "Némítás",
"confirmations.redraft.confirm": "Törlés és újraírás", "confirmations.redraft.confirm": "Törlés és újraírás",
"confirmations.redraft.message": "Biztos, hogy ezt a bejegyzést szeretnéd törölni és újraírni? Minden megtolást és kedvencnek jelölést elvesztesz, az eredetire adott válaszok pedig elárvulnak.", "confirmations.redraft.message": "Biztos, hogy ezt a bejegyzést szeretnéd törölni és újraírni? Minden megtolást és kedvencnek jelölést elvesztesz, az eredetire adott válaszok pedig elárvulnak.",
"confirmations.redraft.title": "Törlöd és újraírod a bejegyzést?",
"confirmations.reply.confirm": "Válasz", "confirmations.reply.confirm": "Válasz",
"confirmations.reply.message": "Ha most válaszolsz, ez felülírja a most szerkesztés alatt álló üzenetet. Mégis ezt szeretnéd?", "confirmations.reply.message": "Ha most válaszolsz, ez felülírja a most szerkesztés alatt álló üzenetet. Mégis ezt szeretnéd?",
"confirmations.reply.title": "Felülírod a bejegyzést?",
"confirmations.unfollow.confirm": "Követés visszavonása", "confirmations.unfollow.confirm": "Követés visszavonása",
"confirmations.unfollow.message": "Biztos, hogy vissza szeretnéd vonni {name} követését?", "confirmations.unfollow.message": "Biztos, hogy vissza szeretnéd vonni {name} követését?",
"confirmations.unfollow.title": "Megszünteted a felhasználó követését?",
"conversation.delete": "Beszélgetés törlése", "conversation.delete": "Beszélgetés törlése",
"conversation.mark_as_read": "Megjelölés olvasottként", "conversation.mark_as_read": "Megjelölés olvasottként",
"conversation.open": "Beszélgetés megtekintése", "conversation.open": "Beszélgetés megtekintése",
@ -507,6 +510,7 @@
"notification_requests.title": "Szűrt értesítések", "notification_requests.title": "Szűrt értesítések",
"notifications.clear": "Értesítések törlése", "notifications.clear": "Értesítések törlése",
"notifications.clear_confirmation": "Biztos, hogy véglegesen törölni akarod az összes értesítésed?", "notifications.clear_confirmation": "Biztos, hogy véglegesen törölni akarod az összes értesítésed?",
"notifications.clear_title": "Törlöd az értesítéseket?",
"notifications.column_settings.admin.report": "Új jelentések:", "notifications.column_settings.admin.report": "Új jelentések:",
"notifications.column_settings.admin.sign_up": "Új regisztrálók:", "notifications.column_settings.admin.sign_up": "Új regisztrálók:",
"notifications.column_settings.alert": "Asztali értesítések", "notifications.column_settings.alert": "Asztali értesítések",

View file

@ -121,13 +121,11 @@
"compose_form.spoiler.unmarked": "Տեքստը թաքցուած չէ", "compose_form.spoiler.unmarked": "Տեքստը թաքցուած չէ",
"confirmation_modal.cancel": "Չեղարկել", "confirmation_modal.cancel": "Չեղարկել",
"confirmations.block.confirm": "Արգելափակել", "confirmations.block.confirm": "Արգելափակել",
"confirmations.cancel_follow_request.confirm": "Կասեցնել հայցը",
"confirmations.delete.confirm": "Ջնջել", "confirmations.delete.confirm": "Ջնջել",
"confirmations.delete.message": "Վստա՞հ ես, որ ուզում ես ջնջել այս գրառումը։", "confirmations.delete.message": "Վստա՞հ ես, որ ուզում ես ջնջել այս գրառումը։",
"confirmations.delete_list.confirm": "Ջնջել", "confirmations.delete_list.confirm": "Ջնջել",
"confirmations.delete_list.message": "Վստա՞հ ես, որ ուզում ես մշտապէս ջնջել այս ցանկը։", "confirmations.delete_list.message": "Վստա՞հ ես, որ ուզում ես մշտապէս ջնջել այս ցանկը։",
"confirmations.discard_edit_media.confirm": "Չեղարկել", "confirmations.discard_edit_media.confirm": "Չեղարկել",
"confirmations.domain_block.message": "Հաստատ֊հաստա՞տ վստահ ես, որ ուզում ես արգելափակել ամբողջ {domain} տիրոյթը։ Սովորաբար մի երկու թիրախաւորուած արգելափակում կամ լռեցում բաւական է ու նախընտրելի։",
"confirmations.edit.confirm": "Խմբագրել", "confirmations.edit.confirm": "Խմբագրել",
"confirmations.logout.confirm": "Ելք", "confirmations.logout.confirm": "Ելք",
"confirmations.logout.message": "Համոզո՞ւած ես, որ ուզում ես դուրս գալ", "confirmations.logout.message": "Համոզո՞ւած ես, որ ուզում ես դուրս գալ",

View file

@ -169,27 +169,28 @@
"compose_form.spoiler_placeholder": "Advertimento de contento (optional)", "compose_form.spoiler_placeholder": "Advertimento de contento (optional)",
"confirmation_modal.cancel": "Cancellar", "confirmation_modal.cancel": "Cancellar",
"confirmations.block.confirm": "Blocar", "confirmations.block.confirm": "Blocar",
"confirmations.cancel_follow_request.confirm": "Retirar requesta",
"confirmations.cancel_follow_request.message": "Es tu secur que tu vole retirar tu requesta de sequer {name}?",
"confirmations.delete.confirm": "Deler", "confirmations.delete.confirm": "Deler",
"confirmations.delete.message": "Es tu secur que tu vole deler iste message?", "confirmations.delete.message": "Es tu secur que tu vole deler iste message?",
"confirmations.delete.title": "Deler message?",
"confirmations.delete_list.confirm": "Deler", "confirmations.delete_list.confirm": "Deler",
"confirmations.delete_list.message": "Es tu secur que tu vole deler permanentemente iste lista?", "confirmations.delete_list.message": "Es tu secur que tu vole deler permanentemente iste lista?",
"confirmations.delete_list.title": "Deler lista?",
"confirmations.discard_edit_media.confirm": "Abandonar", "confirmations.discard_edit_media.confirm": "Abandonar",
"confirmations.discard_edit_media.message": "Tu ha cambiamentos non salvate in le description o previsualisation del objecto multimedial. Abandonar los?", "confirmations.discard_edit_media.message": "Tu ha cambiamentos non salvate in le description o previsualisation del objecto multimedial. Abandonar los?",
"confirmations.domain_block.confirm": "Blocar le servitor",
"confirmations.domain_block.message": "Es tu realmente, absolutemente secur de voler blocar tote le dominio {domain}? In le major parte del casos es preferibile blocar o silentiar alcun personas specific. Si tu bloca tote le dominio, tu non videra alcun contento de ille dominio in alcun chronologia public o in tu notificationes, e tu sequitores de ille dominio essera removite.",
"confirmations.edit.confirm": "Modificar", "confirmations.edit.confirm": "Modificar",
"confirmations.edit.message": "Si tu modifica isto ora, le message in curso de composition essera perdite. Es tu secur de voler continuar?", "confirmations.edit.message": "Si tu modifica isto ora, le message in curso de composition essera perdite. Es tu secur de voler continuar?",
"confirmations.logout.confirm": "Clauder session", "confirmations.logout.confirm": "Clauder session",
"confirmations.logout.message": "Es tu secur que tu vole clauder le session?", "confirmations.logout.message": "Es tu secur que tu vole clauder le session?",
"confirmations.logout.title": "Clauder session?",
"confirmations.mute.confirm": "Silentiar", "confirmations.mute.confirm": "Silentiar",
"confirmations.redraft.confirm": "Deler e rescriber", "confirmations.redraft.confirm": "Deler e rescriber",
"confirmations.redraft.message": "Es tu secur de voler deler iste message e rescriber lo? Le favorites e le impulsos essera perdite, e le responsas al message original essera orphanate.", "confirmations.redraft.message": "Es tu secur de voler deler iste message e rescriber lo? Le favorites e le impulsos essera perdite, e le responsas al message original essera orphanate.",
"confirmations.redraft.title": "Deler e rescriber le message?",
"confirmations.reply.confirm": "Responder", "confirmations.reply.confirm": "Responder",
"confirmations.reply.message": "Si tu responde ora, le message in curso de composition essera perdite. Es tu secur de voler continuar?", "confirmations.reply.message": "Si tu responde ora, le message in curso de composition essera perdite. Es tu secur de voler continuar?",
"confirmations.unfollow.confirm": "Non plus sequer", "confirmations.unfollow.confirm": "Non plus sequer",
"confirmations.unfollow.message": "Es tu secur que tu vole cessar de sequer {name}?", "confirmations.unfollow.message": "Es tu secur que tu vole cessar de sequer {name}?",
"confirmations.unfollow.title": "Cessar de sequer le usator?",
"conversation.delete": "Deler conversation", "conversation.delete": "Deler conversation",
"conversation.mark_as_read": "Marcar como legite", "conversation.mark_as_read": "Marcar como legite",
"conversation.open": "Vider conversation", "conversation.open": "Vider conversation",
@ -501,6 +502,7 @@
"notification_requests.title": "Notificationes filtrate", "notification_requests.title": "Notificationes filtrate",
"notifications.clear": "Rader notificationes", "notifications.clear": "Rader notificationes",
"notifications.clear_confirmation": "Es tu secur que tu vole rader permanentemente tote tu notificationes?", "notifications.clear_confirmation": "Es tu secur que tu vole rader permanentemente tote tu notificationes?",
"notifications.clear_title": "Rader le notificationes?",
"notifications.column_settings.admin.report": "Nove reportos:", "notifications.column_settings.admin.report": "Nove reportos:",
"notifications.column_settings.admin.sign_up": "Nove inscriptiones:", "notifications.column_settings.admin.sign_up": "Nove inscriptiones:",
"notifications.column_settings.alert": "Notificationes de scriptorio", "notifications.column_settings.alert": "Notificationes de scriptorio",

View file

@ -166,16 +166,12 @@
"compose_form.spoiler_placeholder": "Peringatan konten (opsional)", "compose_form.spoiler_placeholder": "Peringatan konten (opsional)",
"confirmation_modal.cancel": "Batal", "confirmation_modal.cancel": "Batal",
"confirmations.block.confirm": "Blokir", "confirmations.block.confirm": "Blokir",
"confirmations.cancel_follow_request.confirm": "Batalkan permintaan",
"confirmations.cancel_follow_request.message": "Apakah Anda yakin ingin membatalkan permintaan Anda untuk mengikuti {name}?",
"confirmations.delete.confirm": "Hapus", "confirmations.delete.confirm": "Hapus",
"confirmations.delete.message": "Apakah Anda yakin untuk menghapus kiriman ini?", "confirmations.delete.message": "Apakah Anda yakin untuk menghapus kiriman ini?",
"confirmations.delete_list.confirm": "Hapus", "confirmations.delete_list.confirm": "Hapus",
"confirmations.delete_list.message": "Apakah Anda yakin untuk menghapus daftar ini secara permanen?", "confirmations.delete_list.message": "Apakah Anda yakin untuk menghapus daftar ini secara permanen?",
"confirmations.discard_edit_media.confirm": "Buang", "confirmations.discard_edit_media.confirm": "Buang",
"confirmations.discard_edit_media.message": "Anda belum menyimpan perubahan deskripsi atau pratinjau media, buang saja?", "confirmations.discard_edit_media.message": "Anda belum menyimpan perubahan deskripsi atau pratinjau media, buang saja?",
"confirmations.domain_block.confirm": "Blokir server",
"confirmations.domain_block.message": "Apakah Anda benar-benar yakin untuk memblokir keseluruhan {domain}? Dalam kasus tertentu beberapa pemblokiran atau penyembunyian lebih baik.",
"confirmations.edit.confirm": "Ubah", "confirmations.edit.confirm": "Ubah",
"confirmations.edit.message": "Mengubah akan menimpa pesan yang sedang anda tulis. Apakah anda yakin ingin melanjutkan?", "confirmations.edit.message": "Mengubah akan menimpa pesan yang sedang anda tulis. Apakah anda yakin ingin melanjutkan?",
"confirmations.logout.confirm": "Keluar", "confirmations.logout.confirm": "Keluar",

View file

@ -166,16 +166,12 @@
"compose_form.spoiler_placeholder": "Advertiment de contenete (optional)", "compose_form.spoiler_placeholder": "Advertiment de contenete (optional)",
"confirmation_modal.cancel": "Anullar", "confirmation_modal.cancel": "Anullar",
"confirmations.block.confirm": "Bloccar", "confirmations.block.confirm": "Bloccar",
"confirmations.cancel_follow_request.confirm": "Retraer petition",
"confirmations.cancel_follow_request.message": "Esque tu vermen vole retraer tui petition sequer {name}?",
"confirmations.delete.confirm": "Deleter", "confirmations.delete.confirm": "Deleter",
"confirmations.delete.message": "Esque tu vermen vole deleter ti-ci posta?", "confirmations.delete.message": "Esque tu vermen vole deleter ti-ci posta?",
"confirmations.delete_list.confirm": "Deleter", "confirmations.delete_list.confirm": "Deleter",
"confirmations.delete_list.message": "Esque tu vermen vole permanentmen deleter ti-ci liste?", "confirmations.delete_list.message": "Esque tu vermen vole permanentmen deleter ti-ci liste?",
"confirmations.discard_edit_media.confirm": "Forjettar", "confirmations.discard_edit_media.confirm": "Forjettar",
"confirmations.discard_edit_media.message": "Tu have ínconservat changes al descrition de medie o al previse, forjettar les sin egarda?", "confirmations.discard_edit_media.message": "Tu have ínconservat changes al descrition de medie o al previse, forjettar les sin egarda?",
"confirmations.domain_block.confirm": "Bloccar servitor",
"confirmations.domain_block.message": "Esque tu es certissim que tu vole bloccar li tot {domain}? In mult casus, bloccar o silentiar quelc specific contos es suficent e preferibil. Tu ne va vider contenete de ti dominia in quelcunc public témpor-linea o in tui notificationes. Tui sequitores de ti dominia va esser removet.",
"confirmations.edit.confirm": "Redacter", "confirmations.edit.confirm": "Redacter",
"confirmations.edit.message": "Redacter nu va remplazzar li missage quel tu actualmen composi. Esque tu vermen vole proceder?", "confirmations.edit.message": "Redacter nu va remplazzar li missage quel tu actualmen composi. Esque tu vermen vole proceder?",
"confirmations.logout.confirm": "Exear", "confirmations.logout.confirm": "Exear",

View file

@ -147,15 +147,12 @@
"compose_form.spoiler.unmarked": "Text is not hidden", "compose_form.spoiler.unmarked": "Text is not hidden",
"confirmation_modal.cancel": "Anulez", "confirmation_modal.cancel": "Anulez",
"confirmations.block.confirm": "Restriktez", "confirmations.block.confirm": "Restriktez",
"confirmations.cancel_follow_request.confirm": "Desendez demando",
"confirmations.cancel_follow_request.message": "Ka vu certe volas desendar vua demando di sequar {name}?",
"confirmations.delete.confirm": "Efacez", "confirmations.delete.confirm": "Efacez",
"confirmations.delete.message": "Are you sure you want to delete this status?", "confirmations.delete.message": "Are you sure you want to delete this status?",
"confirmations.delete_list.confirm": "Efacez", "confirmations.delete_list.confirm": "Efacez",
"confirmations.delete_list.message": "Ka vu certe volas netempale efacar ca listo?", "confirmations.delete_list.message": "Ka vu certe volas netempale efacar ca listo?",
"confirmations.discard_edit_media.confirm": "Efacez", "confirmations.discard_edit_media.confirm": "Efacez",
"confirmations.discard_edit_media.message": "Vu havas nesparita chanji di mediodeskript o prevido, vu volas jus efacar?", "confirmations.discard_edit_media.message": "Vu havas nesparita chanji di mediodeskript o prevido, vu volas jus efacar?",
"confirmations.domain_block.message": "Are you really, really sure you want to block the entire {domain}? In most cases a few targeted blocks or mutes are sufficient and preferable.",
"confirmations.edit.confirm": "Modifikez", "confirmations.edit.confirm": "Modifikez",
"confirmations.edit.message": "Modifikar nun remplasos la mesajo quon vu nune skribas. Ka vu certe volas procedar?", "confirmations.edit.message": "Modifikar nun remplasos la mesajo quon vu nune skribas. Ka vu certe volas procedar?",
"confirmations.logout.confirm": "Ekirez", "confirmations.logout.confirm": "Ekirez",

View file

@ -169,27 +169,30 @@
"compose_form.spoiler_placeholder": "Aðvörun vegna efnis (valkvætt)", "compose_form.spoiler_placeholder": "Aðvörun vegna efnis (valkvætt)",
"confirmation_modal.cancel": "Hætta við", "confirmation_modal.cancel": "Hætta við",
"confirmations.block.confirm": "Útiloka", "confirmations.block.confirm": "Útiloka",
"confirmations.cancel_follow_request.confirm": "Taka beiðni til baka",
"confirmations.cancel_follow_request.message": "Ertu viss um að þú viljir taka til baka beiðnina um að fylgjast með {name}?",
"confirmations.delete.confirm": "Eyða", "confirmations.delete.confirm": "Eyða",
"confirmations.delete.message": "Ertu viss um að þú viljir eyða þessari færslu?", "confirmations.delete.message": "Ertu viss um að þú viljir eyða þessari færslu?",
"confirmations.delete.title": "Eyða færslu?",
"confirmations.delete_list.confirm": "Eyða", "confirmations.delete_list.confirm": "Eyða",
"confirmations.delete_list.message": "Ertu viss um að þú viljir eyða þessum lista endanlega?", "confirmations.delete_list.message": "Ertu viss um að þú viljir eyða þessum lista endanlega?",
"confirmations.delete_list.title": "Eyða lista?",
"confirmations.discard_edit_media.confirm": "Henda", "confirmations.discard_edit_media.confirm": "Henda",
"confirmations.discard_edit_media.message": "Þú ert með óvistaðar breytingar á lýsingu myndefnis eða forskoðunar, henda þeim samt?", "confirmations.discard_edit_media.message": "Þú ert með óvistaðar breytingar á lýsingu myndefnis eða forskoðunar, henda þeim samt?",
"confirmations.domain_block.confirm": "Útiloka netþjón",
"confirmations.domain_block.message": "Ertu alveg algjörlega viss um að þú viljir loka á allt {domain}? Í flestum tilfellum er vænlegra að nota færri en markvissari útilokanir eða að þagga niður tiltekna aðila. Þú munt ekki sjá efni frá þessu léni í neinum opinberum tímalínum eða í tilkynningunum þínum. Fylgjendur þínir frá þessu léni verða fjarlægðir.",
"confirmations.edit.confirm": "Breyta", "confirmations.edit.confirm": "Breyta",
"confirmations.edit.message": "Ef þú breytir núna verður skrifað yfir skilaboðin sem þú ert að semja núna. Ertu viss um að þú viljir halda áfram?", "confirmations.edit.message": "Ef þú breytir núna verður skrifað yfir skilaboðin sem þú ert að semja núna. Ertu viss um að þú viljir halda áfram?",
"confirmations.edit.title": "Skrifa yfir færslu?",
"confirmations.logout.confirm": "Skrá út", "confirmations.logout.confirm": "Skrá út",
"confirmations.logout.message": "Ertu viss um að þú viljir skrá þig út?", "confirmations.logout.message": "Ertu viss um að þú viljir skrá þig út?",
"confirmations.logout.title": "Skrá út?",
"confirmations.mute.confirm": "Þagga", "confirmations.mute.confirm": "Þagga",
"confirmations.redraft.confirm": "Eyða og endurvinna drög", "confirmations.redraft.confirm": "Eyða og endurvinna drög",
"confirmations.redraft.message": "Ertu viss um að þú viljir eyða þessari færslu og enduvinna drögin? Eftirlæti og endurbirtingar munu glatast og svör við upprunalegu færslunni munu verða munaðarlaus.", "confirmations.redraft.message": "Ertu viss um að þú viljir eyða þessari færslu og enduvinna drögin? Eftirlæti og endurbirtingar munu glatast og svör við upprunalegu færslunni munu verða munaðarlaus.",
"confirmations.redraft.title": "Eyða og byrja ný drög að færslu?",
"confirmations.reply.confirm": "Svara", "confirmations.reply.confirm": "Svara",
"confirmations.reply.message": "Ef þú svarar núna verður skrifað yfir skilaboðin sem þú ert að semja núna. Ertu viss um að þú viljir halda áfram?", "confirmations.reply.message": "Ef þú svarar núna verður skrifað yfir skilaboðin sem þú ert að semja núna. Ertu viss um að þú viljir halda áfram?",
"confirmations.reply.title": "Skrifa yfir færslu?",
"confirmations.unfollow.confirm": "Hætta að fylgja", "confirmations.unfollow.confirm": "Hætta að fylgja",
"confirmations.unfollow.message": "Ertu viss um að þú viljir hætta að fylgjast með {name}?", "confirmations.unfollow.message": "Ertu viss um að þú viljir hætta að fylgjast með {name}?",
"confirmations.unfollow.title": "Hætta að fylgjast með viðkomandi?",
"conversation.delete": "Eyða samtali", "conversation.delete": "Eyða samtali",
"conversation.mark_as_read": "Merkja sem lesið", "conversation.mark_as_read": "Merkja sem lesið",
"conversation.open": "Skoða samtal", "conversation.open": "Skoða samtal",
@ -507,6 +510,7 @@
"notification_requests.title": "Síaðar tilkynningar", "notification_requests.title": "Síaðar tilkynningar",
"notifications.clear": "Hreinsa tilkynningar", "notifications.clear": "Hreinsa tilkynningar",
"notifications.clear_confirmation": "Ertu viss um að þú viljir endanlega eyða öllum tilkynningunum þínum?", "notifications.clear_confirmation": "Ertu viss um að þú viljir endanlega eyða öllum tilkynningunum þínum?",
"notifications.clear_title": "Hreinsa tilkynningar?",
"notifications.column_settings.admin.report": "Nýjar kærur:", "notifications.column_settings.admin.report": "Nýjar kærur:",
"notifications.column_settings.admin.sign_up": "Nýjar skráningar:", "notifications.column_settings.admin.sign_up": "Nýjar skráningar:",
"notifications.column_settings.alert": "Tilkynningar á skjáborði", "notifications.column_settings.alert": "Tilkynningar á skjáborði",

View file

@ -169,27 +169,30 @@
"compose_form.spoiler_placeholder": "Contenuto sensibile (facoltativo)", "compose_form.spoiler_placeholder": "Contenuto sensibile (facoltativo)",
"confirmation_modal.cancel": "Annulla", "confirmation_modal.cancel": "Annulla",
"confirmations.block.confirm": "Blocca", "confirmations.block.confirm": "Blocca",
"confirmations.cancel_follow_request.confirm": "Annulla la richiesta",
"confirmations.cancel_follow_request.message": "Sei sicuro di voler annullare la tua richiesta per seguire {name}?",
"confirmations.delete.confirm": "Elimina", "confirmations.delete.confirm": "Elimina",
"confirmations.delete.message": "Sei sicuro di voler eliminare questo post?", "confirmations.delete.message": "Sei sicuro di voler eliminare questo post?",
"confirmations.delete.title": "Eliminare il post?",
"confirmations.delete_list.confirm": "Elimina", "confirmations.delete_list.confirm": "Elimina",
"confirmations.delete_list.message": "Sei sicuro/a di voler eliminare permanentemente questo elenco?", "confirmations.delete_list.message": "Sei sicuro/a di voler eliminare permanentemente questo elenco?",
"confirmations.delete_list.title": "Eliminare la lista?",
"confirmations.discard_edit_media.confirm": "Scarta", "confirmations.discard_edit_media.confirm": "Scarta",
"confirmations.discard_edit_media.message": "Hai delle modifiche non salvate alla descrizione o anteprima del media, scartarle comunque?", "confirmations.discard_edit_media.message": "Hai delle modifiche non salvate alla descrizione o anteprima del media, scartarle comunque?",
"confirmations.domain_block.confirm": "Blocca il server",
"confirmations.domain_block.message": "Sei davvero sicuro di voler bloccare l'intero {domain}? In gran parte dei casi, è sufficiente e preferibile bloccare o silenziare alcuni profili. Non visualizzerai i contenuti da quel dominio in alcuna cronologia pubblica o tra le tue notifiche. I tuoi seguaci da quel dominio saranno rimossi.",
"confirmations.edit.confirm": "Modifica", "confirmations.edit.confirm": "Modifica",
"confirmations.edit.message": "Modificare ora sovrascriverà il messaggio che stai correntemente componendo. Sei sicuro di voler procedere?", "confirmations.edit.message": "Modificare ora sovrascriverà il messaggio che stai correntemente componendo. Sei sicuro di voler procedere?",
"confirmations.edit.title": "Sovrascrivere il post?",
"confirmations.logout.confirm": "Disconnettiti", "confirmations.logout.confirm": "Disconnettiti",
"confirmations.logout.message": "Sei sicuro di volerti disconnettere?", "confirmations.logout.message": "Sei sicuro di volerti disconnettere?",
"confirmations.logout.title": "Uscire?",
"confirmations.mute.confirm": "Silenzia", "confirmations.mute.confirm": "Silenzia",
"confirmations.redraft.confirm": "Elimina e riscrivi", "confirmations.redraft.confirm": "Elimina e riscrivi",
"confirmations.redraft.message": "Sei sicuro di voler eliminare questo post e riscriverlo? I preferiti e i boost andranno persi e le risposte al post originale non saranno più collegate.", "confirmations.redraft.message": "Sei sicuro di voler eliminare questo post e riscriverlo? I preferiti e i boost andranno persi e le risposte al post originale non saranno più collegate.",
"confirmations.redraft.title": "Eliminare e riformulare il post?",
"confirmations.reply.confirm": "Rispondi", "confirmations.reply.confirm": "Rispondi",
"confirmations.reply.message": "Rispondere ora sovrascriverà il messaggio che stai correntemente componendo. Sei sicuro di voler procedere?", "confirmations.reply.message": "Rispondere ora sovrascriverà il messaggio che stai correntemente componendo. Sei sicuro di voler procedere?",
"confirmations.reply.title": "Sovrascrivere il post?",
"confirmations.unfollow.confirm": "Smetti di seguire", "confirmations.unfollow.confirm": "Smetti di seguire",
"confirmations.unfollow.message": "Sei sicuro di voler smettere di seguire {name}?", "confirmations.unfollow.message": "Sei sicuro di voler smettere di seguire {name}?",
"confirmations.unfollow.title": "Smettere di seguire l'utente?",
"conversation.delete": "Elimina conversazione", "conversation.delete": "Elimina conversazione",
"conversation.mark_as_read": "Segna come letto", "conversation.mark_as_read": "Segna come letto",
"conversation.open": "Visualizza conversazione", "conversation.open": "Visualizza conversazione",
@ -507,6 +510,7 @@
"notification_requests.title": "Notifiche filtrate", "notification_requests.title": "Notifiche filtrate",
"notifications.clear": "Cancella le notifiche", "notifications.clear": "Cancella le notifiche",
"notifications.clear_confirmation": "Sei sicuro di voler cancellare permanentemente tutte le tue notifiche?", "notifications.clear_confirmation": "Sei sicuro di voler cancellare permanentemente tutte le tue notifiche?",
"notifications.clear_title": "Cancellare le notifiche?",
"notifications.column_settings.admin.report": "Nuove segnalazioni:", "notifications.column_settings.admin.report": "Nuove segnalazioni:",
"notifications.column_settings.admin.sign_up": "Nuove iscrizioni:", "notifications.column_settings.admin.sign_up": "Nuove iscrizioni:",
"notifications.column_settings.alert": "Notifiche desktop", "notifications.column_settings.alert": "Notifiche desktop",

View file

@ -169,16 +169,12 @@
"compose_form.spoiler_placeholder": "閲覧注意 (オプション)", "compose_form.spoiler_placeholder": "閲覧注意 (オプション)",
"confirmation_modal.cancel": "キャンセル", "confirmation_modal.cancel": "キャンセル",
"confirmations.block.confirm": "ブロック", "confirmations.block.confirm": "ブロック",
"confirmations.cancel_follow_request.confirm": "フォローリクエストを取り消す",
"confirmations.cancel_follow_request.message": "{name}に対するフォローリクエストを取り消しますか?",
"confirmations.delete.confirm": "削除", "confirmations.delete.confirm": "削除",
"confirmations.delete.message": "本当に削除しますか?", "confirmations.delete.message": "本当に削除しますか?",
"confirmations.delete_list.confirm": "削除", "confirmations.delete_list.confirm": "削除",
"confirmations.delete_list.message": "本当にこのリストを完全に削除しますか?", "confirmations.delete_list.message": "本当にこのリストを完全に削除しますか?",
"confirmations.discard_edit_media.confirm": "破棄", "confirmations.discard_edit_media.confirm": "破棄",
"confirmations.discard_edit_media.message": "メディアの説明またはプレビューに保存されていない変更があります。それでも破棄しますか?", "confirmations.discard_edit_media.message": "メディアの説明またはプレビューに保存されていない変更があります。それでも破棄しますか?",
"confirmations.domain_block.confirm": "サーバーをブロック",
"confirmations.domain_block.message": "本当に{domain}全体を非表示にしますか? 多くの場合は個別にブロックやミュートするだけで充分であり、また好ましいです。公開タイムラインにそのドメインのコンテンツが表示されなくなり、通知も届かなくなります。そのドメインのフォロワーはアンフォローされます。",
"confirmations.edit.confirm": "編集", "confirmations.edit.confirm": "編集",
"confirmations.edit.message": "今編集すると現在作成中のメッセージが上書きされます。本当に実行しますか?", "confirmations.edit.message": "今編集すると現在作成中のメッセージが上書きされます。本当に実行しますか?",
"confirmations.logout.confirm": "ログアウト", "confirmations.logout.confirm": "ログアウト",

View file

@ -74,7 +74,6 @@
"confirmations.delete.message": "დარწმუნებული ხართ, გსურთ გააუქმოთ ეს სტატუსი?", "confirmations.delete.message": "დარწმუნებული ხართ, გსურთ გააუქმოთ ეს სტატუსი?",
"confirmations.delete_list.confirm": "გაუქმება", "confirmations.delete_list.confirm": "გაუქმება",
"confirmations.delete_list.message": "დარწმუნებული ხართ, გსურთ სამუდამოდ გააუქმოთ ეს სია?", "confirmations.delete_list.message": "დარწმუნებული ხართ, გსურთ სამუდამოდ გააუქმოთ ეს სია?",
"confirmations.domain_block.message": "ნაღდად, ნაღდად, დარწმუნებული ხართ, გსურთ დაბლოკოთ მთელი {domain}? უმეტეს შემთხვევაში რამდენიმე გამიზნული ბლოკი ან გაჩუმება საკმარისი და უკეთესია. კონტენტს ამ დომენიდან ვერ იხილავთ ვერც ერთ ღია თაიმლაინზე ან თქვენს შეტყობინებებში. ამ დომენიდან არსებული მიმდევრები ამოიშლება.",
"confirmations.mute.confirm": "გაჩუმება", "confirmations.mute.confirm": "გაჩუმება",
"confirmations.redraft.confirm": "გაუქმება და გადანაწილება", "confirmations.redraft.confirm": "გაუქმება და გადანაწილება",
"confirmations.unfollow.confirm": "ნუღარ მიჰყვები", "confirmations.unfollow.confirm": "ნუღარ მიჰყვები",

View file

@ -146,7 +146,6 @@
"confirmations.delete_list.confirm": "Kkes", "confirmations.delete_list.confirm": "Kkes",
"confirmations.delete_list.message": "Tebɣiḍ s tidet ad tekkseḍ umuɣ-agi i lebda?", "confirmations.delete_list.message": "Tebɣiḍ s tidet ad tekkseḍ umuɣ-agi i lebda?",
"confirmations.discard_edit_media.confirm": "Sefsex", "confirmations.discard_edit_media.confirm": "Sefsex",
"confirmations.domain_block.confirm": "Sewḥel aqeddac",
"confirmations.edit.confirm": "Ẓreg", "confirmations.edit.confirm": "Ẓreg",
"confirmations.edit.message": "Abeddel tura ad d-yaru izen-nni i d-tegreḍ akka tura. Tetḥeqqeḍ tebɣiḍ ad tkemmleḍ?", "confirmations.edit.message": "Abeddel tura ad d-yaru izen-nni i d-tegreḍ akka tura. Tetḥeqqeḍ tebɣiḍ ad tkemmleḍ?",
"confirmations.logout.confirm": "Ffeɣ", "confirmations.logout.confirm": "Ffeɣ",
@ -236,6 +235,8 @@
"follow_request.authorize": "Ssireg", "follow_request.authorize": "Ssireg",
"follow_request.reject": "Agi", "follow_request.reject": "Agi",
"follow_suggestions.dismiss": "Dayen ur t-id-skan ara", "follow_suggestions.dismiss": "Dayen ur t-id-skan ara",
"follow_suggestions.featured_longer": "Yettwafraned s ufus sɣur agraw n {domain}",
"follow_suggestions.hints.featured": "Amaɣnu-a ifren-it-id wegraw n {domain} s ufus.",
"follow_suggestions.popular_suggestion_longer": "Yettwassen deg {domain}", "follow_suggestions.popular_suggestion_longer": "Yettwassen deg {domain}",
"follow_suggestions.view_all": "Wali-ten akk", "follow_suggestions.view_all": "Wali-ten akk",
"follow_suggestions.who_to_follow": "Ad tḍefreḍ?", "follow_suggestions.who_to_follow": "Ad tḍefreḍ?",

View file

@ -107,7 +107,6 @@
"confirmations.delete.message": "Бұл жазбаны өшіресіз бе?", "confirmations.delete.message": "Бұл жазбаны өшіресіз бе?",
"confirmations.delete_list.confirm": "Өшіру", "confirmations.delete_list.confirm": "Өшіру",
"confirmations.delete_list.message": "Бұл тізімді жоясыз ба шынымен?", "confirmations.delete_list.message": "Бұл тізімді жоясыз ба шынымен?",
"confirmations.domain_block.message": "Бұл домендегі {domain} жазбаларды шынымен бұғаттайсыз ба? Кейде үнсіз қылып тастау да жеткілікті.",
"confirmations.logout.confirm": "Шығу", "confirmations.logout.confirm": "Шығу",
"confirmations.logout.message": "Шығатыныңызға сенімдісіз бе?", "confirmations.logout.message": "Шығатыныңызға сенімдісіз бе?",
"confirmations.mute.confirm": "Үнсіз қылу", "confirmations.mute.confirm": "Үнсіз қылу",

View file

@ -169,16 +169,12 @@
"compose_form.spoiler_placeholder": "내용 경고 (선택사항)", "compose_form.spoiler_placeholder": "내용 경고 (선택사항)",
"confirmation_modal.cancel": "취소", "confirmation_modal.cancel": "취소",
"confirmations.block.confirm": "차단", "confirmations.block.confirm": "차단",
"confirmations.cancel_follow_request.confirm": "요청 삭제",
"confirmations.cancel_follow_request.message": "정말 {name}님에 대한 팔로우 요청을 취소하시겠습니까?",
"confirmations.delete.confirm": "삭제", "confirmations.delete.confirm": "삭제",
"confirmations.delete.message": "정말로 이 게시물을 삭제하시겠습니까?", "confirmations.delete.message": "정말로 이 게시물을 삭제하시겠습니까?",
"confirmations.delete_list.confirm": "삭제", "confirmations.delete_list.confirm": "삭제",
"confirmations.delete_list.message": "정말로 이 리스트를 영구적으로 삭제하시겠습니까?", "confirmations.delete_list.message": "정말로 이 리스트를 영구적으로 삭제하시겠습니까?",
"confirmations.discard_edit_media.confirm": "저장 안함", "confirmations.discard_edit_media.confirm": "저장 안함",
"confirmations.discard_edit_media.message": "미디어 설명이나 미리보기에 대한 저장하지 않은 변경사항이 있습니다. 버리시겠습니까?", "confirmations.discard_edit_media.message": "미디어 설명이나 미리보기에 대한 저장하지 않은 변경사항이 있습니다. 버리시겠습니까?",
"confirmations.domain_block.confirm": "서버 차단",
"confirmations.domain_block.message": "정말로 {domain} 전체를 차단하시겠습니까? 대부분의 경우 개별 차단이나 뮤트로 충분합니다. 모든 공개 타임라인과 알림에서 해당 도메인에서 작성된 콘텐츠를 보지 못합니다. 해당 도메인에 속한 팔로워와의 관계가 사라집니다.",
"confirmations.edit.confirm": "수정", "confirmations.edit.confirm": "수정",
"confirmations.edit.message": "지금 편집하면 작성 중인 메시지를 덮어씁니다. 진행이 확실한가요?", "confirmations.edit.message": "지금 편집하면 작성 중인 메시지를 덮어씁니다. 진행이 확실한가요?",
"confirmations.logout.confirm": "로그아웃", "confirmations.logout.confirm": "로그아웃",

View file

@ -133,15 +133,12 @@
"compose_form.spoiler.unmarked": "Hişyariya naverokê tevlî bike", "compose_form.spoiler.unmarked": "Hişyariya naverokê tevlî bike",
"confirmation_modal.cancel": "Dev jê berde", "confirmation_modal.cancel": "Dev jê berde",
"confirmations.block.confirm": "Asteng bike", "confirmations.block.confirm": "Asteng bike",
"confirmations.cancel_follow_request.confirm": "Daxwazê vekişîne",
"confirmations.cancel_follow_request.message": "Tu dixwazî daxwaza xwe ya şopandina {name} vekşînî?",
"confirmations.delete.confirm": "Jê bibe", "confirmations.delete.confirm": "Jê bibe",
"confirmations.delete.message": "Ma tu dixwazî vê şandiyê jê bibî?", "confirmations.delete.message": "Ma tu dixwazî vê şandiyê jê bibî?",
"confirmations.delete_list.confirm": "Jê bibe", "confirmations.delete_list.confirm": "Jê bibe",
"confirmations.delete_list.message": "Tu ji dil dixwazî vê lîsteyê bi awayekî mayînde jê bibî?", "confirmations.delete_list.message": "Tu ji dil dixwazî vê lîsteyê bi awayekî mayînde jê bibî?",
"confirmations.discard_edit_media.confirm": "Biavêje", "confirmations.discard_edit_media.confirm": "Biavêje",
"confirmations.discard_edit_media.message": "Guhertinên neqedandî di danasîna an pêşdîtina medyayê de hene, wan bi her awayî bavêje?", "confirmations.discard_edit_media.message": "Guhertinên neqedandî di danasîna an pêşdîtina medyayê de hene, wan bi her awayî bavêje?",
"confirmations.domain_block.message": "Tu pê bawerî ku tu dixwazî tevahiya {domain} asteng bikî? Di gelek rewşan de astengkirin an jî bêdengkirin têrê dike û tê hilbijartin. Tu nikarî naveroka vê navperê di demnameyê an jî agahdariyên xwe de bibînî. Şopînerên te yê di vê navperê wê werin jêbirin.",
"confirmations.edit.confirm": "Serrast bike", "confirmations.edit.confirm": "Serrast bike",
"confirmations.logout.confirm": "Derkeve", "confirmations.logout.confirm": "Derkeve",
"confirmations.logout.message": "Ma tu dixwazî ku derkevî?", "confirmations.logout.message": "Ma tu dixwazî ku derkevî?",

View file

@ -88,7 +88,6 @@
"confirmations.delete.message": "Owgh hwi sur a vynnes dilea'n post ma?", "confirmations.delete.message": "Owgh hwi sur a vynnes dilea'n post ma?",
"confirmations.delete_list.confirm": "Dilea", "confirmations.delete_list.confirm": "Dilea",
"confirmations.delete_list.message": "Owgh hwi sur a vynnes dilea'n rol ma yn fast?", "confirmations.delete_list.message": "Owgh hwi sur a vynnes dilea'n rol ma yn fast?",
"confirmations.domain_block.message": "Owgh hwi wir, wir sur a vynnes lettya'n {domain} dhien? Y'n brassa rann a gasow, boghes lettyansow medrys po tawheansow yw lowr ha gwell. Ny wrewgh hwi gweles dalgh a'n worfarth na yn py amserlin boblek pynag po yn agas gwarnyansow. Agas holyoryon an worfarth na a vydh diles.",
"confirmations.logout.confirm": "Digelmi", "confirmations.logout.confirm": "Digelmi",
"confirmations.logout.message": "Owgh hwi sur a vynnes digelmi?", "confirmations.logout.message": "Owgh hwi sur a vynnes digelmi?",
"confirmations.mute.confirm": "Tawhe", "confirmations.mute.confirm": "Tawhe",

View file

@ -164,16 +164,12 @@
"compose_form.spoiler_placeholder": "Avertensya de kontenido (opsyonal)", "compose_form.spoiler_placeholder": "Avertensya de kontenido (opsyonal)",
"confirmation_modal.cancel": "Anula", "confirmation_modal.cancel": "Anula",
"confirmations.block.confirm": "Bloka", "confirmations.block.confirm": "Bloka",
"confirmations.cancel_follow_request.confirm": "Anula solisitud",
"confirmations.cancel_follow_request.message": "Estas siguro ke keres anular tu solisitud de segir a {name}?",
"confirmations.delete.confirm": "Efasa", "confirmations.delete.confirm": "Efasa",
"confirmations.delete.message": "Estas siguro ke keres efasar esta publikasyon?", "confirmations.delete.message": "Estas siguro ke keres efasar esta publikasyon?",
"confirmations.delete_list.confirm": "Efasa", "confirmations.delete_list.confirm": "Efasa",
"confirmations.delete_list.message": "Estas siguro ke keres permanentemente efasar esta lista?", "confirmations.delete_list.message": "Estas siguro ke keres permanentemente efasar esta lista?",
"confirmations.discard_edit_media.confirm": "Anula", "confirmations.discard_edit_media.confirm": "Anula",
"confirmations.discard_edit_media.message": "Tienes trokamientos no guadrados en la deskripsion o vista previa. Keres efasarlos entanto?", "confirmations.discard_edit_media.message": "Tienes trokamientos no guadrados en la deskripsion o vista previa. Keres efasarlos entanto?",
"confirmations.domain_block.confirm": "Bloka sirvidor",
"confirmations.domain_block.message": "Estas totalmente siguro ke keres blokar todo el domeno {domain}? En djeneral unos kuantos blokos o silensiamientos son sufisientes i preferavles. No veras kontenido de akel domeno en dinguna linya de tiempo publika ni ent tus avizos. Tus suivantes de akel domeno seran kitados.",
"confirmations.edit.confirm": "Edita", "confirmations.edit.confirm": "Edita",
"confirmations.edit.message": "Si edites agora, kitaras el mesaj kualo estas eskriviendo aktualmente. Estas siguro ke keres fazerlo?", "confirmations.edit.message": "Si edites agora, kitaras el mesaj kualo estas eskriviendo aktualmente. Estas siguro ke keres fazerlo?",
"confirmations.logout.confirm": "Sal", "confirmations.logout.confirm": "Sal",

View file

@ -169,27 +169,30 @@
"compose_form.spoiler_placeholder": "Turinio įspėjimas (pasirinktinis)", "compose_form.spoiler_placeholder": "Turinio įspėjimas (pasirinktinis)",
"confirmation_modal.cancel": "Atšaukti", "confirmation_modal.cancel": "Atšaukti",
"confirmations.block.confirm": "Blokuoti", "confirmations.block.confirm": "Blokuoti",
"confirmations.cancel_follow_request.confirm": "Atšaukti prašymą",
"confirmations.cancel_follow_request.message": "Ar tikrai nori atšaukti savo prašymą sekti {name}?",
"confirmations.delete.confirm": "Ištrinti", "confirmations.delete.confirm": "Ištrinti",
"confirmations.delete.message": "Ar tikrai nori ištrinti šį įrašą?", "confirmations.delete.message": "Ar tikrai nori ištrinti šį įrašą?",
"confirmations.delete.title": "Ištrinti įrašą?",
"confirmations.delete_list.confirm": "Ištrinti", "confirmations.delete_list.confirm": "Ištrinti",
"confirmations.delete_list.message": "Ar tikrai nori visam laikui ištrinti šį sąrašą?", "confirmations.delete_list.message": "Ar tikrai nori visam laikui ištrinti šį sąrašą?",
"confirmations.delete_list.title": "Ištrinti sąrašą?",
"confirmations.discard_edit_media.confirm": "Atmesti", "confirmations.discard_edit_media.confirm": "Atmesti",
"confirmations.discard_edit_media.message": "Turi neišsaugotų medijos aprašymo ar peržiūros pakeitimų, vis tiek juos atmesti?", "confirmations.discard_edit_media.message": "Turi neišsaugotų medijos aprašymo ar peržiūros pakeitimų, vis tiek juos atmesti?",
"confirmations.domain_block.confirm": "Blokuoti serverį",
"confirmations.domain_block.message": "Ar tikrai, tikrai nori užblokuoti visą {domain}? Daugeliu atvejų užtenka kelių tikslinių blokavimų arba nutildymų. Šio domeno turinio nematysi jokiose viešose laiko skalėse ar pranešimuose. Tavo sekėjai iš to domeno bus pašalinti.",
"confirmations.edit.confirm": "Redaguoti", "confirmations.edit.confirm": "Redaguoti",
"confirmations.edit.message": "Redaguojant dabar, bus perrašyta šiuo metu kuriama žinutė. Ar tikrai nori tęsti?", "confirmations.edit.message": "Redaguojant dabar, bus perrašyta šiuo metu kuriama žinutė. Ar tikrai nori tęsti?",
"confirmations.edit.title": "Perrašyti įrašą?",
"confirmations.logout.confirm": "Atsijungti", "confirmations.logout.confirm": "Atsijungti",
"confirmations.logout.message": "Ar tikrai nori atsijungti?", "confirmations.logout.message": "Ar tikrai nori atsijungti?",
"confirmations.logout.title": "Atsijungti?",
"confirmations.mute.confirm": "Nutildyti", "confirmations.mute.confirm": "Nutildyti",
"confirmations.redraft.confirm": "Ištrinti ir perrašyti", "confirmations.redraft.confirm": "Ištrinti ir perrašyti",
"confirmations.redraft.message": "Ar tikrai nori ištrinti šį įrašą ir parašyti jį iš naujo? Bus prarastos mėgstamai ir pakėlimai, o atsakymai į originalinį įrašą taps liekamojais.", "confirmations.redraft.message": "Ar tikrai nori ištrinti šį įrašą ir parašyti jį iš naujo? Bus prarastos mėgstamai ir pakėlimai, o atsakymai į originalinį įrašą taps liekamojais.",
"confirmations.redraft.title": "Ištrinti ir iš naujo parengti įrašą?",
"confirmations.reply.confirm": "Atsakyti", "confirmations.reply.confirm": "Atsakyti",
"confirmations.reply.message": "Atsakant dabar, bus perrašyta šiuo metu kuriama žinutė. Ar tikrai nori tęsti?", "confirmations.reply.message": "Atsakant dabar, bus perrašyta šiuo metu kuriama žinutė. Ar tikrai nori tęsti?",
"confirmations.reply.title": "Perrašyti įrašą?",
"confirmations.unfollow.confirm": "Nebesekti", "confirmations.unfollow.confirm": "Nebesekti",
"confirmations.unfollow.message": "Ar tikrai nori nebesekti {name}?", "confirmations.unfollow.message": "Ar tikrai nori nebesekti {name}?",
"confirmations.unfollow.title": "Nebesekti naudotoją?",
"conversation.delete": "Ištrinti pokalbį", "conversation.delete": "Ištrinti pokalbį",
"conversation.mark_as_read": "Žymėti kaip skaitytą", "conversation.mark_as_read": "Žymėti kaip skaitytą",
"conversation.open": "Peržiūrėti pokalbį", "conversation.open": "Peržiūrėti pokalbį",
@ -443,6 +446,8 @@
"mute_modal.title": "Nutildyti naudotoją?", "mute_modal.title": "Nutildyti naudotoją?",
"mute_modal.you_wont_see_mentions": "Nematysi įrašus, kuriuose jie paminimi.", "mute_modal.you_wont_see_mentions": "Nematysi įrašus, kuriuose jie paminimi.",
"mute_modal.you_wont_see_posts": "Jie vis tiek gali matyti tavo įrašus, bet tu nematysi jų.", "mute_modal.you_wont_see_posts": "Jie vis tiek gali matyti tavo įrašus, bet tu nematysi jų.",
"name_and_others": "{name} ir {count, plural, one {# kitas} few {# kiti} many {# kito} other {# kitų}}",
"name_and_others_with_link": "{name} ir <a>{count, plural, one {# kitas} few {# kiti} many {# kito} other {# kitų}}</a>",
"navigation_bar.about": "Apie", "navigation_bar.about": "Apie",
"navigation_bar.advanced_interface": "Atidaryti išplėstinę žiniatinklio sąsają", "navigation_bar.advanced_interface": "Atidaryti išplėstinę žiniatinklio sąsają",
"navigation_bar.blocks": "Užblokuoti naudotojai", "navigation_bar.blocks": "Užblokuoti naudotojai",
@ -470,6 +475,10 @@
"navigation_bar.security": "Apsauga", "navigation_bar.security": "Apsauga",
"not_signed_in_indicator.not_signed_in": "Norint pasiekti šį išteklį, reikia prisijungti.", "not_signed_in_indicator.not_signed_in": "Norint pasiekti šį išteklį, reikia prisijungti.",
"notification.admin.report": "{name} pranešė {target}", "notification.admin.report": "{name} pranešė {target}",
"notification.admin.report_account": "{name} pranešė {count, plural, one {# įrašą} few {# įrašus} many {# įrašo} other {# įrašų}} iš {target} kategorijai {category}",
"notification.admin.report_account_other": "{name} pranešė {count, plural, one {# įrašą} few {# įrašus} many {# įrašo} other {# įrašų}} iš {target}",
"notification.admin.report_statuses": "{name} pranešė {target} kategorijai {category}",
"notification.admin.report_statuses_other": "{name} pranešė {target}",
"notification.admin.sign_up": "{name} užsiregistravo", "notification.admin.sign_up": "{name} užsiregistravo",
"notification.favourite": "{name} pamėgo tavo įrašą", "notification.favourite": "{name} pamėgo tavo įrašą",
"notification.follow": "{name} seka tave", "notification.follow": "{name} seka tave",
@ -485,6 +494,8 @@
"notification.moderation_warning.action_silence": "Tavo paskyra buvo apribota.", "notification.moderation_warning.action_silence": "Tavo paskyra buvo apribota.",
"notification.moderation_warning.action_suspend": "Tavo paskyra buvo sustabdyta.", "notification.moderation_warning.action_suspend": "Tavo paskyra buvo sustabdyta.",
"notification.own_poll": "Tavo apklausa baigėsi", "notification.own_poll": "Tavo apklausa baigėsi",
"notification.poll": "Baigėsi apklausa, kurioje balsavai",
"notification.private_mention": "{name} privačiai paminėjo tave",
"notification.reblog": "{name} pakėlė tavo įrašą", "notification.reblog": "{name} pakėlė tavo įrašą",
"notification.relationships_severance_event": "Prarasti sąryšiai su {name}", "notification.relationships_severance_event": "Prarasti sąryšiai su {name}",
"notification.relationships_severance_event.learn_more": "Sužinoti daugiau", "notification.relationships_severance_event.learn_more": "Sužinoti daugiau",
@ -497,9 +508,12 @@
"notification_requests.title": "Filtruojami pranešimai", "notification_requests.title": "Filtruojami pranešimai",
"notifications.clear": "Išvalyti pranešimus", "notifications.clear": "Išvalyti pranešimus",
"notifications.clear_confirmation": "Ar tikrai nori visam laikui išvalyti visus pranešimus?", "notifications.clear_confirmation": "Ar tikrai nori visam laikui išvalyti visus pranešimus?",
"notifications.clear_title": "Valyti pranešimus?",
"notifications.column_settings.admin.report": "Naujos ataskaitos:", "notifications.column_settings.admin.report": "Naujos ataskaitos:",
"notifications.column_settings.admin.sign_up": "Naujos registracijos:", "notifications.column_settings.admin.sign_up": "Naujos registracijos:",
"notifications.column_settings.alert": "Darbalaukio pranešimai", "notifications.column_settings.alert": "Darbalaukio pranešimai",
"notifications.column_settings.beta.category": "Eksperimentinės funkcijos",
"notifications.column_settings.beta.grouping": "Grupuoti pranešimus",
"notifications.column_settings.favourite": "Mėgstami:", "notifications.column_settings.favourite": "Mėgstami:",
"notifications.column_settings.filter_bar.advanced": "Rodyti visas kategorijas", "notifications.column_settings.filter_bar.advanced": "Rodyti visas kategorijas",
"notifications.column_settings.filter_bar.category": "Spartaus filtro juosta", "notifications.column_settings.filter_bar.category": "Spartaus filtro juosta",
@ -660,9 +674,13 @@
"report.unfollow_explanation": "Tu seki šią paskyrą. Jei nori nebematyti jų įrašų savo pagrindiniame sraute, nebesek jų.", "report.unfollow_explanation": "Tu seki šią paskyrą. Jei nori nebematyti jų įrašų savo pagrindiniame sraute, nebesek jų.",
"report_notification.attached_statuses": "Pridėti {count, plural, one {{count} įrašas} few {{count} įrašai} many {{count} įrašo} other {{count} įrašų}}", "report_notification.attached_statuses": "Pridėti {count, plural, one {{count} įrašas} few {{count} įrašai} many {{count} įrašo} other {{count} įrašų}}",
"report_notification.categories.legal": "Teisinės", "report_notification.categories.legal": "Teisinės",
"report_notification.categories.legal_sentence": "nelegalus turinys",
"report_notification.categories.other": "Kita", "report_notification.categories.other": "Kita",
"report_notification.categories.other_sentence": "kita",
"report_notification.categories.spam": "Šlamštas", "report_notification.categories.spam": "Šlamštas",
"report_notification.categories.spam_sentence": "šlamštas",
"report_notification.categories.violation": "Taisyklės pažeidimas", "report_notification.categories.violation": "Taisyklės pažeidimas",
"report_notification.categories.violation_sentence": "taisyklės pažeidimas",
"report_notification.open": "Atidaryti ataskaitą", "report_notification.open": "Atidaryti ataskaitą",
"search.no_recent_searches": "Nėra naujausių paieškų.", "search.no_recent_searches": "Nėra naujausių paieškų.",
"search.placeholder": "Paieška", "search.placeholder": "Paieška",

Some files were not shown because too many files have changed in this diff Show more