Merge remote-tracking branch 'parent/main' into upstream-20240918
This commit is contained in:
commit
4ce35dd837
188 changed files with 1994 additions and 980 deletions
|
@ -2,7 +2,6 @@ import { debounce } from 'lodash';
|
|||
|
||||
import type { MarkerJSON } from 'mastodon/api_types/markers';
|
||||
import { getAccessToken } from 'mastodon/initial_state';
|
||||
import { selectUseGroupedNotifications } from 'mastodon/selectors/settings';
|
||||
import type { AppDispatch, RootState } from 'mastodon/store';
|
||||
import { createAppAsyncThunk } from 'mastodon/store/typed_functions';
|
||||
|
||||
|
@ -76,12 +75,7 @@ interface MarkerParam {
|
|||
}
|
||||
|
||||
function getLastNotificationId(state: RootState): string | undefined {
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-return
|
||||
return selectUseGroupedNotifications(state)
|
||||
? state.notificationGroups.lastReadId
|
||||
: // @ts-expect-error state.notifications is not yet typed
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-call
|
||||
state.getIn(['notifications', 'lastReadId']);
|
||||
return state.notificationGroups.lastReadId;
|
||||
}
|
||||
|
||||
const buildPostMarkersParams = (state: RootState) => {
|
||||
|
|
|
@ -2,7 +2,7 @@ import { createAction } from '@reduxjs/toolkit';
|
|||
|
||||
import {
|
||||
apiClearNotifications,
|
||||
apiFetchNotifications,
|
||||
apiFetchNotificationGroups,
|
||||
} from 'mastodon/api/notifications';
|
||||
import type { ApiAccountJSON } from 'mastodon/api_types/accounts';
|
||||
import type {
|
||||
|
@ -71,7 +71,7 @@ function dispatchAssociatedRecords(
|
|||
export const fetchNotifications = createDataLoadingThunk(
|
||||
'notificationGroups/fetch',
|
||||
async (_params, { getState }) =>
|
||||
apiFetchNotifications({ exclude_types: getExcludedTypes(getState()) }),
|
||||
apiFetchNotificationGroups({ exclude_types: getExcludedTypes(getState()) }),
|
||||
({ notifications, accounts, statuses }, { dispatch }) => {
|
||||
dispatch(importFetchedAccounts(accounts));
|
||||
dispatch(importFetchedStatuses(statuses));
|
||||
|
@ -92,7 +92,7 @@ export const fetchNotifications = createDataLoadingThunk(
|
|||
export const fetchNotificationsGap = createDataLoadingThunk(
|
||||
'notificationGroups/fetchGap',
|
||||
async (params: { gap: NotificationGap }, { getState }) =>
|
||||
apiFetchNotifications({
|
||||
apiFetchNotificationGroups({
|
||||
max_id: params.gap.maxId,
|
||||
exclude_types: getExcludedTypes(getState()),
|
||||
}),
|
||||
|
@ -108,7 +108,7 @@ export const fetchNotificationsGap = createDataLoadingThunk(
|
|||
export const pollRecentNotifications = createDataLoadingThunk(
|
||||
'notificationGroups/pollRecentNotifications',
|
||||
async (_params, { getState }) => {
|
||||
return apiFetchNotifications({
|
||||
return apiFetchNotificationGroups({
|
||||
max_id: undefined,
|
||||
exclude_types: getExcludedTypes(getState()),
|
||||
// In slow mode, we don't want to include notifications that duplicate the already-displayed ones
|
||||
|
|
234
app/javascript/mastodon/actions/notification_requests.ts
Normal file
234
app/javascript/mastodon/actions/notification_requests.ts
Normal file
|
@ -0,0 +1,234 @@
|
|||
import {
|
||||
apiFetchNotificationRequest,
|
||||
apiFetchNotificationRequests,
|
||||
apiFetchNotifications,
|
||||
apiAcceptNotificationRequest,
|
||||
apiDismissNotificationRequest,
|
||||
apiAcceptNotificationRequests,
|
||||
apiDismissNotificationRequests,
|
||||
} from 'mastodon/api/notifications';
|
||||
import type { ApiAccountJSON } from 'mastodon/api_types/accounts';
|
||||
import type {
|
||||
ApiNotificationGroupJSON,
|
||||
ApiNotificationJSON,
|
||||
} from 'mastodon/api_types/notifications';
|
||||
import type { ApiStatusJSON } from 'mastodon/api_types/statuses';
|
||||
import type { AppDispatch, RootState } from 'mastodon/store';
|
||||
import { createDataLoadingThunk } from 'mastodon/store/typed_functions';
|
||||
|
||||
import { importFetchedAccounts, importFetchedStatuses } from './importer';
|
||||
import { decreasePendingNotificationsCount } from './notification_policies';
|
||||
|
||||
// TODO: refactor with notification_groups
|
||||
function dispatchAssociatedRecords(
|
||||
dispatch: AppDispatch,
|
||||
notifications: ApiNotificationGroupJSON[] | ApiNotificationJSON[],
|
||||
) {
|
||||
const fetchedAccounts: ApiAccountJSON[] = [];
|
||||
const fetchedStatuses: ApiStatusJSON[] = [];
|
||||
|
||||
notifications.forEach((notification) => {
|
||||
if (notification.type === 'admin.report') {
|
||||
fetchedAccounts.push(notification.report.target_account);
|
||||
}
|
||||
|
||||
if (notification.type === 'moderation_warning') {
|
||||
fetchedAccounts.push(notification.moderation_warning.target_account);
|
||||
}
|
||||
|
||||
if ('status' in notification && notification.status) {
|
||||
fetchedStatuses.push(notification.status);
|
||||
}
|
||||
});
|
||||
|
||||
if (fetchedAccounts.length > 0)
|
||||
dispatch(importFetchedAccounts(fetchedAccounts));
|
||||
|
||||
if (fetchedStatuses.length > 0)
|
||||
dispatch(importFetchedStatuses(fetchedStatuses));
|
||||
}
|
||||
|
||||
export const fetchNotificationRequests = createDataLoadingThunk(
|
||||
'notificationRequests/fetch',
|
||||
async (_params, { getState }) => {
|
||||
let sinceId = undefined;
|
||||
|
||||
if (getState().notificationRequests.items.length > 0) {
|
||||
sinceId = getState().notificationRequests.items[0]?.id;
|
||||
}
|
||||
|
||||
return apiFetchNotificationRequests({
|
||||
since_id: sinceId,
|
||||
});
|
||||
},
|
||||
({ requests, links }, { dispatch }) => {
|
||||
const next = links.refs.find((link) => link.rel === 'next');
|
||||
|
||||
dispatch(importFetchedAccounts(requests.map((request) => request.account)));
|
||||
|
||||
return { requests, next: next?.uri };
|
||||
},
|
||||
{
|
||||
condition: (_params, { getState }) =>
|
||||
!getState().notificationRequests.isLoading,
|
||||
},
|
||||
);
|
||||
|
||||
export const fetchNotificationRequest = createDataLoadingThunk(
|
||||
'notificationRequest/fetch',
|
||||
async ({ id }: { id: string }) => apiFetchNotificationRequest(id),
|
||||
{
|
||||
condition: ({ id }, { getState }) =>
|
||||
!(
|
||||
getState().notificationRequests.current.item?.id === id ||
|
||||
getState().notificationRequests.current.isLoading
|
||||
),
|
||||
},
|
||||
);
|
||||
|
||||
export const expandNotificationRequests = createDataLoadingThunk(
|
||||
'notificationRequests/expand',
|
||||
async (_, { getState }) => {
|
||||
const nextUrl = getState().notificationRequests.next;
|
||||
if (!nextUrl) throw new Error('missing URL');
|
||||
|
||||
return apiFetchNotificationRequests(undefined, nextUrl);
|
||||
},
|
||||
({ requests, links }, { dispatch }) => {
|
||||
const next = links.refs.find((link) => link.rel === 'next');
|
||||
|
||||
dispatch(importFetchedAccounts(requests.map((request) => request.account)));
|
||||
|
||||
return { requests, next: next?.uri };
|
||||
},
|
||||
{
|
||||
condition: (_, { getState }) =>
|
||||
!!getState().notificationRequests.next &&
|
||||
!getState().notificationRequests.isLoading,
|
||||
},
|
||||
);
|
||||
|
||||
export const fetchNotificationsForRequest = createDataLoadingThunk(
|
||||
'notificationRequest/fetchNotifications',
|
||||
async ({ accountId }: { accountId: string }, { getState }) => {
|
||||
const sinceId =
|
||||
// @ts-expect-error current.notifications.items is not yet typed
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-call
|
||||
getState().notificationRequests.current.notifications.items[0]?.get(
|
||||
'id',
|
||||
) as string | undefined;
|
||||
|
||||
return apiFetchNotifications({
|
||||
since_id: sinceId,
|
||||
account_id: accountId,
|
||||
});
|
||||
},
|
||||
({ notifications, links }, { dispatch }) => {
|
||||
const next = links.refs.find((link) => link.rel === 'next');
|
||||
|
||||
dispatchAssociatedRecords(dispatch, notifications);
|
||||
|
||||
return { notifications, next: next?.uri };
|
||||
},
|
||||
{
|
||||
condition: ({ accountId }, { getState }) => {
|
||||
const current = getState().notificationRequests.current;
|
||||
return !(
|
||||
current.item?.account_id === accountId &&
|
||||
current.notifications.isLoading
|
||||
);
|
||||
},
|
||||
},
|
||||
);
|
||||
|
||||
export const expandNotificationsForRequest = createDataLoadingThunk(
|
||||
'notificationRequest/expandNotifications',
|
||||
async (_, { getState }) => {
|
||||
const nextUrl = getState().notificationRequests.current.notifications.next;
|
||||
if (!nextUrl) throw new Error('missing URL');
|
||||
|
||||
return apiFetchNotifications(undefined, nextUrl);
|
||||
},
|
||||
({ notifications, links }, { dispatch }) => {
|
||||
const next = links.refs.find((link) => link.rel === 'next');
|
||||
|
||||
dispatchAssociatedRecords(dispatch, notifications);
|
||||
|
||||
return { notifications, next: next?.uri };
|
||||
},
|
||||
{
|
||||
condition: ({ accountId }: { accountId: string }, { getState }) => {
|
||||
const url = getState().notificationRequests.current.notifications.next;
|
||||
|
||||
return (
|
||||
!!url &&
|
||||
!getState().notificationRequests.current.notifications.isLoading &&
|
||||
getState().notificationRequests.current.item?.account_id === accountId
|
||||
);
|
||||
},
|
||||
},
|
||||
);
|
||||
|
||||
const selectNotificationCountForRequest = (state: RootState, id: string) => {
|
||||
const requests = state.notificationRequests.items;
|
||||
const thisRequest = requests.find((request) => request.id === id);
|
||||
return thisRequest ? thisRequest.notifications_count : 0;
|
||||
};
|
||||
|
||||
export const acceptNotificationRequest = createDataLoadingThunk(
|
||||
'notificationRequest/accept',
|
||||
({ id }: { id: string }) => apiAcceptNotificationRequest(id),
|
||||
(_data, { dispatch, getState, discardLoadData, actionArg: { id } }) => {
|
||||
const count = selectNotificationCountForRequest(getState(), id);
|
||||
|
||||
dispatch(decreasePendingNotificationsCount(count));
|
||||
|
||||
// The payload is not used in any functions
|
||||
return discardLoadData;
|
||||
},
|
||||
);
|
||||
|
||||
export const dismissNotificationRequest = createDataLoadingThunk(
|
||||
'notificationRequest/dismiss',
|
||||
({ id }: { id: string }) => apiDismissNotificationRequest(id),
|
||||
(_data, { dispatch, getState, discardLoadData, actionArg: { id } }) => {
|
||||
const count = selectNotificationCountForRequest(getState(), id);
|
||||
|
||||
dispatch(decreasePendingNotificationsCount(count));
|
||||
|
||||
// The payload is not used in any functions
|
||||
return discardLoadData;
|
||||
},
|
||||
);
|
||||
|
||||
export const acceptNotificationRequests = createDataLoadingThunk(
|
||||
'notificationRequests/acceptBulk',
|
||||
({ ids }: { ids: string[] }) => apiAcceptNotificationRequests(ids),
|
||||
(_data, { dispatch, getState, discardLoadData, actionArg: { ids } }) => {
|
||||
const count = ids.reduce(
|
||||
(count, id) => count + selectNotificationCountForRequest(getState(), id),
|
||||
0,
|
||||
);
|
||||
|
||||
dispatch(decreasePendingNotificationsCount(count));
|
||||
|
||||
// The payload is not used in any functions
|
||||
return discardLoadData;
|
||||
},
|
||||
);
|
||||
|
||||
export const dismissNotificationRequests = createDataLoadingThunk(
|
||||
'notificationRequests/dismissBulk',
|
||||
({ ids }: { ids: string[] }) => apiDismissNotificationRequests(ids),
|
||||
(_data, { dispatch, getState, discardLoadData, actionArg: { ids } }) => {
|
||||
const count = ids.reduce(
|
||||
(count, id) => count + selectNotificationCountForRequest(getState(), id),
|
||||
0,
|
||||
);
|
||||
|
||||
dispatch(decreasePendingNotificationsCount(count));
|
||||
|
||||
// The payload is not used in any functions
|
||||
return discardLoadData;
|
||||
},
|
||||
);
|
|
@ -18,7 +18,6 @@ import {
|
|||
importFetchedStatuses,
|
||||
} from './importer';
|
||||
import { submitMarkers } from './markers';
|
||||
import { decreasePendingNotificationsCount } from './notification_policies';
|
||||
import { notificationsUpdate } from "./notifications_typed";
|
||||
import { register as registerPushNotifications } from './push_notifications';
|
||||
import { saveSettings } from './settings';
|
||||
|
@ -45,26 +44,6 @@ export const NOTIFICATIONS_MARK_AS_READ = 'NOTIFICATIONS_MARK_AS_READ';
|
|||
export const NOTIFICATIONS_SET_BROWSER_SUPPORT = 'NOTIFICATIONS_SET_BROWSER_SUPPORT';
|
||||
export const NOTIFICATIONS_SET_BROWSER_PERMISSION = 'NOTIFICATIONS_SET_BROWSER_PERMISSION';
|
||||
|
||||
export const NOTIFICATION_REQUESTS_FETCH_REQUEST = 'NOTIFICATION_REQUESTS_FETCH_REQUEST';
|
||||
export const NOTIFICATION_REQUESTS_FETCH_SUCCESS = 'NOTIFICATION_REQUESTS_FETCH_SUCCESS';
|
||||
export const NOTIFICATION_REQUESTS_FETCH_FAIL = 'NOTIFICATION_REQUESTS_FETCH_FAIL';
|
||||
|
||||
export const NOTIFICATION_REQUESTS_EXPAND_REQUEST = 'NOTIFICATION_REQUESTS_EXPAND_REQUEST';
|
||||
export const NOTIFICATION_REQUESTS_EXPAND_SUCCESS = 'NOTIFICATION_REQUESTS_EXPAND_SUCCESS';
|
||||
export const NOTIFICATION_REQUESTS_EXPAND_FAIL = 'NOTIFICATION_REQUESTS_EXPAND_FAIL';
|
||||
|
||||
export const NOTIFICATION_REQUEST_FETCH_REQUEST = 'NOTIFICATION_REQUEST_FETCH_REQUEST';
|
||||
export const NOTIFICATION_REQUEST_FETCH_SUCCESS = 'NOTIFICATION_REQUEST_FETCH_SUCCESS';
|
||||
export const NOTIFICATION_REQUEST_FETCH_FAIL = 'NOTIFICATION_REQUEST_FETCH_FAIL';
|
||||
|
||||
export const NOTIFICATION_REQUEST_ACCEPT_REQUEST = 'NOTIFICATION_REQUEST_ACCEPT_REQUEST';
|
||||
export const NOTIFICATION_REQUEST_ACCEPT_SUCCESS = 'NOTIFICATION_REQUEST_ACCEPT_SUCCESS';
|
||||
export const NOTIFICATION_REQUEST_ACCEPT_FAIL = 'NOTIFICATION_REQUEST_ACCEPT_FAIL';
|
||||
|
||||
export const NOTIFICATION_REQUEST_DISMISS_REQUEST = 'NOTIFICATION_REQUEST_DISMISS_REQUEST';
|
||||
export const NOTIFICATION_REQUEST_DISMISS_SUCCESS = 'NOTIFICATION_REQUEST_DISMISS_SUCCESS';
|
||||
export const NOTIFICATION_REQUEST_DISMISS_FAIL = 'NOTIFICATION_REQUEST_DISMISS_FAIL';
|
||||
|
||||
export const NOTIFICATION_REQUESTS_ACCEPT_REQUEST = 'NOTIFICATION_REQUESTS_ACCEPT_REQUEST';
|
||||
export const NOTIFICATION_REQUESTS_ACCEPT_SUCCESS = 'NOTIFICATION_REQUESTS_ACCEPT_SUCCESS';
|
||||
export const NOTIFICATION_REQUESTS_ACCEPT_FAIL = 'NOTIFICATION_REQUESTS_ACCEPT_FAIL';
|
||||
|
@ -73,14 +52,6 @@ export const NOTIFICATION_REQUESTS_DISMISS_REQUEST = 'NOTIFICATION_REQUESTS_DISM
|
|||
export const NOTIFICATION_REQUESTS_DISMISS_SUCCESS = 'NOTIFICATION_REQUESTS_DISMISS_SUCCESS';
|
||||
export const NOTIFICATION_REQUESTS_DISMISS_FAIL = 'NOTIFICATION_REQUESTS_DISMISS_FAIL';
|
||||
|
||||
export const NOTIFICATIONS_FOR_REQUEST_FETCH_REQUEST = 'NOTIFICATIONS_FOR_REQUEST_FETCH_REQUEST';
|
||||
export const NOTIFICATIONS_FOR_REQUEST_FETCH_SUCCESS = 'NOTIFICATIONS_FOR_REQUEST_FETCH_SUCCESS';
|
||||
export const NOTIFICATIONS_FOR_REQUEST_FETCH_FAIL = 'NOTIFICATIONS_FOR_REQUEST_FETCH_FAIL';
|
||||
|
||||
export const NOTIFICATIONS_FOR_REQUEST_EXPAND_REQUEST = 'NOTIFICATIONS_FOR_REQUEST_EXPAND_REQUEST';
|
||||
export const NOTIFICATIONS_FOR_REQUEST_EXPAND_SUCCESS = 'NOTIFICATIONS_FOR_REQUEST_EXPAND_SUCCESS';
|
||||
export const NOTIFICATIONS_FOR_REQUEST_EXPAND_FAIL = 'NOTIFICATIONS_FOR_REQUEST_EXPAND_FAIL';
|
||||
|
||||
const messages = defineMessages({
|
||||
// mention: { id: 'notification.mention', defaultMessage: '{name} mentioned you' },
|
||||
group: { id: 'notifications.group', defaultMessage: '{count} notifications' },
|
||||
|
@ -106,12 +77,6 @@ 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 = () => ({
|
||||
type: NOTIFICATIONS_LOAD_PENDING,
|
||||
});
|
||||
|
@ -376,296 +341,3 @@ export function setBrowserPermission (value) {
|
|||
value,
|
||||
};
|
||||
}
|
||||
|
||||
export const fetchNotificationRequests = () => (dispatch, getState) => {
|
||||
const params = {};
|
||||
|
||||
if (getState().getIn(['notificationRequests', 'isLoading'])) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (getState().getIn(['notificationRequests', 'items'])?.size > 0) {
|
||||
params.since_id = getState().getIn(['notificationRequests', 'items', 0, 'id']);
|
||||
}
|
||||
|
||||
dispatch(fetchNotificationRequestsRequest());
|
||||
|
||||
api().get('/api/v1/notifications/requests', { params }).then(response => {
|
||||
const next = getLinks(response).refs.find(link => link.rel === 'next');
|
||||
dispatch(importFetchedAccounts(response.data.map(x => x.account)));
|
||||
dispatch(fetchNotificationRequestsSuccess(response.data, next ? next.uri : null));
|
||||
}).catch(err => {
|
||||
dispatch(fetchNotificationRequestsFail(err));
|
||||
});
|
||||
};
|
||||
|
||||
export const fetchNotificationRequestsRequest = () => ({
|
||||
type: NOTIFICATION_REQUESTS_FETCH_REQUEST,
|
||||
});
|
||||
|
||||
export const fetchNotificationRequestsSuccess = (requests, next) => ({
|
||||
type: NOTIFICATION_REQUESTS_FETCH_SUCCESS,
|
||||
requests,
|
||||
next,
|
||||
});
|
||||
|
||||
export const fetchNotificationRequestsFail = error => ({
|
||||
type: NOTIFICATION_REQUESTS_FETCH_FAIL,
|
||||
error,
|
||||
});
|
||||
|
||||
export const expandNotificationRequests = () => (dispatch, getState) => {
|
||||
const url = getState().getIn(['notificationRequests', 'next']);
|
||||
|
||||
if (!url || getState().getIn(['notificationRequests', 'isLoading'])) {
|
||||
return;
|
||||
}
|
||||
|
||||
dispatch(expandNotificationRequestsRequest());
|
||||
|
||||
api().get(url).then(response => {
|
||||
const next = getLinks(response).refs.find(link => link.rel === 'next');
|
||||
dispatch(importFetchedAccounts(response.data.map(x => x.account)));
|
||||
dispatch(expandNotificationRequestsSuccess(response.data, next?.uri));
|
||||
}).catch(err => {
|
||||
dispatch(expandNotificationRequestsFail(err));
|
||||
});
|
||||
};
|
||||
|
||||
export const expandNotificationRequestsRequest = () => ({
|
||||
type: NOTIFICATION_REQUESTS_EXPAND_REQUEST,
|
||||
});
|
||||
|
||||
export const expandNotificationRequestsSuccess = (requests, next) => ({
|
||||
type: NOTIFICATION_REQUESTS_EXPAND_SUCCESS,
|
||||
requests,
|
||||
next,
|
||||
});
|
||||
|
||||
export const expandNotificationRequestsFail = error => ({
|
||||
type: NOTIFICATION_REQUESTS_EXPAND_FAIL,
|
||||
error,
|
||||
});
|
||||
|
||||
export const fetchNotificationRequest = id => (dispatch, getState) => {
|
||||
const current = getState().getIn(['notificationRequests', 'current']);
|
||||
|
||||
if (current.getIn(['item', 'id']) === id || current.get('isLoading')) {
|
||||
return;
|
||||
}
|
||||
|
||||
dispatch(fetchNotificationRequestRequest(id));
|
||||
|
||||
api().get(`/api/v1/notifications/requests/${id}`).then(({ data }) => {
|
||||
dispatch(fetchNotificationRequestSuccess(data));
|
||||
}).catch(err => {
|
||||
dispatch(fetchNotificationRequestFail(id, err));
|
||||
});
|
||||
};
|
||||
|
||||
export const fetchNotificationRequestRequest = id => ({
|
||||
type: NOTIFICATION_REQUEST_FETCH_REQUEST,
|
||||
id,
|
||||
});
|
||||
|
||||
export const fetchNotificationRequestSuccess = request => ({
|
||||
type: NOTIFICATION_REQUEST_FETCH_SUCCESS,
|
||||
request,
|
||||
});
|
||||
|
||||
export const fetchNotificationRequestFail = (id, error) => ({
|
||||
type: NOTIFICATION_REQUEST_FETCH_FAIL,
|
||||
id,
|
||||
error,
|
||||
});
|
||||
|
||||
export const acceptNotificationRequest = (id) => (dispatch, getState) => {
|
||||
const count = selectNotificationCountForRequest(getState(), id);
|
||||
dispatch(acceptNotificationRequestRequest(id));
|
||||
|
||||
api().post(`/api/v1/notifications/requests/${id}/accept`).then(() => {
|
||||
dispatch(acceptNotificationRequestSuccess(id));
|
||||
dispatch(decreasePendingNotificationsCount(count));
|
||||
}).catch(err => {
|
||||
dispatch(acceptNotificationRequestFail(id, err));
|
||||
});
|
||||
};
|
||||
|
||||
export const acceptNotificationRequestRequest = id => ({
|
||||
type: NOTIFICATION_REQUEST_ACCEPT_REQUEST,
|
||||
id,
|
||||
});
|
||||
|
||||
export const acceptNotificationRequestSuccess = id => ({
|
||||
type: NOTIFICATION_REQUEST_ACCEPT_SUCCESS,
|
||||
id,
|
||||
});
|
||||
|
||||
export const acceptNotificationRequestFail = (id, error) => ({
|
||||
type: NOTIFICATION_REQUEST_ACCEPT_FAIL,
|
||||
id,
|
||||
error,
|
||||
});
|
||||
|
||||
export const dismissNotificationRequest = (id) => (dispatch, getState) => {
|
||||
const count = selectNotificationCountForRequest(getState(), id);
|
||||
dispatch(dismissNotificationRequestRequest(id));
|
||||
|
||||
api().post(`/api/v1/notifications/requests/${id}/dismiss`).then(() =>{
|
||||
dispatch(dismissNotificationRequestSuccess(id));
|
||||
dispatch(decreasePendingNotificationsCount(count));
|
||||
}).catch(err => {
|
||||
dispatch(dismissNotificationRequestFail(id, err));
|
||||
});
|
||||
};
|
||||
|
||||
export const dismissNotificationRequestRequest = id => ({
|
||||
type: NOTIFICATION_REQUEST_DISMISS_REQUEST,
|
||||
id,
|
||||
});
|
||||
|
||||
export const dismissNotificationRequestSuccess = id => ({
|
||||
type: NOTIFICATION_REQUEST_DISMISS_SUCCESS,
|
||||
id,
|
||||
});
|
||||
|
||||
export const dismissNotificationRequestFail = (id, error) => ({
|
||||
type: NOTIFICATION_REQUEST_DISMISS_FAIL,
|
||||
id,
|
||||
error,
|
||||
});
|
||||
|
||||
export const acceptNotificationRequests = (ids) => (dispatch, getState) => {
|
||||
const count = ids.reduce((count, id) => count + selectNotificationCountForRequest(getState(), id), 0);
|
||||
dispatch(acceptNotificationRequestsRequest(ids));
|
||||
|
||||
api().post(`/api/v1/notifications/requests/accept`, { id: ids }).then(() => {
|
||||
dispatch(acceptNotificationRequestsSuccess(ids));
|
||||
dispatch(decreasePendingNotificationsCount(count));
|
||||
}).catch(err => {
|
||||
dispatch(acceptNotificationRequestFail(ids, err));
|
||||
});
|
||||
};
|
||||
|
||||
export const acceptNotificationRequestsRequest = ids => ({
|
||||
type: NOTIFICATION_REQUESTS_ACCEPT_REQUEST,
|
||||
ids,
|
||||
});
|
||||
|
||||
export const acceptNotificationRequestsSuccess = ids => ({
|
||||
type: NOTIFICATION_REQUESTS_ACCEPT_SUCCESS,
|
||||
ids,
|
||||
});
|
||||
|
||||
export const acceptNotificationRequestsFail = (ids, error) => ({
|
||||
type: NOTIFICATION_REQUESTS_ACCEPT_FAIL,
|
||||
ids,
|
||||
error,
|
||||
});
|
||||
|
||||
export const dismissNotificationRequests = (ids) => (dispatch, getState) => {
|
||||
const count = ids.reduce((count, id) => count + selectNotificationCountForRequest(getState(), id), 0);
|
||||
dispatch(acceptNotificationRequestsRequest(ids));
|
||||
|
||||
api().post(`/api/v1/notifications/requests/dismiss`, { id: ids }).then(() => {
|
||||
dispatch(dismissNotificationRequestsSuccess(ids));
|
||||
dispatch(decreasePendingNotificationsCount(count));
|
||||
}).catch(err => {
|
||||
dispatch(dismissNotificationRequestFail(ids, err));
|
||||
});
|
||||
};
|
||||
|
||||
export const dismissNotificationRequestsRequest = ids => ({
|
||||
type: NOTIFICATION_REQUESTS_DISMISS_REQUEST,
|
||||
ids,
|
||||
});
|
||||
|
||||
export const dismissNotificationRequestsSuccess = ids => ({
|
||||
type: NOTIFICATION_REQUESTS_DISMISS_SUCCESS,
|
||||
ids,
|
||||
});
|
||||
|
||||
export const dismissNotificationRequestsFail = (ids, error) => ({
|
||||
type: NOTIFICATION_REQUESTS_DISMISS_FAIL,
|
||||
ids,
|
||||
error,
|
||||
});
|
||||
|
||||
export const fetchNotificationsForRequest = accountId => (dispatch, getState) => {
|
||||
const current = getState().getIn(['notificationRequests', 'current']);
|
||||
const params = { account_id: accountId };
|
||||
|
||||
if (current.getIn(['item', 'account']) === accountId) {
|
||||
if (current.getIn(['notifications', 'isLoading'])) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (current.getIn(['notifications', 'items'])?.size > 0) {
|
||||
params.since_id = current.getIn(['notifications', 'items', 0, 'id']);
|
||||
}
|
||||
}
|
||||
|
||||
dispatch(fetchNotificationsForRequestRequest());
|
||||
|
||||
api().get('/api/v1/notifications', { params }).then(response => {
|
||||
const next = getLinks(response).refs.find(link => link.rel === 'next');
|
||||
dispatch(importFetchedAccounts(response.data.map(item => item.account)));
|
||||
dispatch(importFetchedStatuses(response.data.map(item => item.status).filter(status => !!status)));
|
||||
dispatch(importFetchedAccounts(response.data.filter(item => item.report).map(item => item.report.target_account)));
|
||||
|
||||
dispatch(fetchNotificationsForRequestSuccess(response.data, next?.uri));
|
||||
}).catch(err => {
|
||||
dispatch(fetchNotificationsForRequestFail(err));
|
||||
});
|
||||
};
|
||||
|
||||
export const fetchNotificationsForRequestRequest = () => ({
|
||||
type: NOTIFICATIONS_FOR_REQUEST_FETCH_REQUEST,
|
||||
});
|
||||
|
||||
export const fetchNotificationsForRequestSuccess = (notifications, next) => ({
|
||||
type: NOTIFICATIONS_FOR_REQUEST_FETCH_SUCCESS,
|
||||
notifications,
|
||||
next,
|
||||
});
|
||||
|
||||
export const fetchNotificationsForRequestFail = (error) => ({
|
||||
type: NOTIFICATIONS_FOR_REQUEST_FETCH_FAIL,
|
||||
error,
|
||||
});
|
||||
|
||||
export const expandNotificationsForRequest = () => (dispatch, getState) => {
|
||||
const url = getState().getIn(['notificationRequests', 'current', 'notifications', 'next']);
|
||||
|
||||
if (!url || getState().getIn(['notificationRequests', 'current', 'notifications', 'isLoading'])) {
|
||||
return;
|
||||
}
|
||||
|
||||
dispatch(expandNotificationsForRequestRequest());
|
||||
|
||||
api().get(url).then(response => {
|
||||
const next = getLinks(response).refs.find(link => link.rel === 'next');
|
||||
dispatch(importFetchedAccounts(response.data.map(item => item.account)));
|
||||
dispatch(importFetchedStatuses(response.data.map(item => item.status).filter(status => !!status)));
|
||||
dispatch(importFetchedAccounts(response.data.filter(item => item.report).map(item => item.report.target_account)));
|
||||
|
||||
dispatch(expandNotificationsForRequestSuccess(response.data, next?.uri));
|
||||
}).catch(err => {
|
||||
dispatch(expandNotificationsForRequestFail(err));
|
||||
});
|
||||
};
|
||||
|
||||
export const expandNotificationsForRequestRequest = () => ({
|
||||
type: NOTIFICATIONS_FOR_REQUEST_EXPAND_REQUEST,
|
||||
});
|
||||
|
||||
export const expandNotificationsForRequestSuccess = (notifications, next) => ({
|
||||
type: NOTIFICATIONS_FOR_REQUEST_EXPAND_SUCCESS,
|
||||
notifications,
|
||||
next,
|
||||
});
|
||||
|
||||
export const expandNotificationsForRequestFail = (error) => ({
|
||||
type: NOTIFICATIONS_FOR_REQUEST_EXPAND_FAIL,
|
||||
error,
|
||||
});
|
||||
|
|
|
@ -1,14 +1,10 @@
|
|||
import { selectUseGroupedNotifications } from 'mastodon/selectors/settings';
|
||||
import { createAppAsyncThunk } from 'mastodon/store';
|
||||
|
||||
import { fetchNotifications } from './notification_groups';
|
||||
import { expandNotifications } from './notifications';
|
||||
|
||||
export const initializeNotifications = createAppAsyncThunk(
|
||||
'notifications/initialize',
|
||||
(_, { dispatch, getState }) => {
|
||||
if (selectUseGroupedNotifications(getState()))
|
||||
void dispatch(fetchNotifications());
|
||||
else void dispatch(expandNotifications({}));
|
||||
(_, { dispatch }) => {
|
||||
void dispatch(fetchNotifications());
|
||||
},
|
||||
);
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
// @ts-check
|
||||
|
||||
import { selectUseGroupedNotifications } from 'mastodon/selectors/settings';
|
||||
|
||||
import { getLocale } from '../locales';
|
||||
import { connectStream } from '../stream';
|
||||
|
||||
|
@ -106,9 +104,7 @@ export const connectTimelineStream = (timelineId, channelName, params = {}, opti
|
|||
const notificationJSON = JSON.parse(data.payload);
|
||||
dispatch(updateNotifications(notificationJSON, messages, locale));
|
||||
// TODO: remove this once the groups feature replaces the previous one
|
||||
if(selectUseGroupedNotifications(getState())) {
|
||||
dispatch(processNewNotificationForGroups(notificationJSON));
|
||||
}
|
||||
dispatch(processNewNotificationForGroups(notificationJSON));
|
||||
break;
|
||||
}
|
||||
case 'emoji_reaction':
|
||||
|
@ -119,9 +115,7 @@ export const connectTimelineStream = (timelineId, channelName, params = {}, opti
|
|||
const state = getState();
|
||||
if (state.notifications.top || !state.notifications.mounted)
|
||||
dispatch(expandNotifications({ forceLoad: true, maxId: undefined }));
|
||||
if (selectUseGroupedNotifications(state)) {
|
||||
dispatch(refreshStaleNotificationGroups());
|
||||
}
|
||||
dispatch(refreshStaleNotificationGroups());
|
||||
break;
|
||||
case 'conversation':
|
||||
// @ts-expect-error
|
||||
|
@ -146,21 +140,15 @@ export const connectTimelineStream = (timelineId, channelName, params = {}, opti
|
|||
|
||||
/**
|
||||
* @param {Function} dispatch
|
||||
* @param {Function} getState
|
||||
*/
|
||||
async function refreshHomeTimelineAndNotification(dispatch, getState) {
|
||||
async function refreshHomeTimelineAndNotification(dispatch) {
|
||||
await dispatch(expandHomeTimeline({ maxId: undefined }));
|
||||
|
||||
// TODO: remove this once the groups feature replaces the previous one
|
||||
if(selectUseGroupedNotifications(getState())) {
|
||||
// TODO: polling for merged notifications
|
||||
try {
|
||||
await dispatch(pollRecentGroupNotifications());
|
||||
} catch {
|
||||
// TODO
|
||||
}
|
||||
} else {
|
||||
await dispatch(expandNotifications({}));
|
||||
// TODO: polling for merged notifications
|
||||
try {
|
||||
await dispatch(pollRecentGroupNotifications());
|
||||
} catch {
|
||||
// TODO
|
||||
}
|
||||
|
||||
await dispatch(fetchAnnouncements());
|
||||
|
|
|
@ -1,7 +1,14 @@
|
|||
import api, { apiRequest, getLinks } from 'mastodon/api';
|
||||
import api, {
|
||||
apiRequest,
|
||||
getLinks,
|
||||
apiRequestGet,
|
||||
apiRequestPost,
|
||||
} from 'mastodon/api';
|
||||
import type {
|
||||
ApiNotificationGroupsResultJSON,
|
||||
ApiNotificationGroupJSON,
|
||||
ApiNotificationRequestJSON,
|
||||
ApiNotificationJSON,
|
||||
} from 'mastodon/api_types/notifications';
|
||||
import type { ApiStatusJSON } from 'mastodon/api_types/statuses';
|
||||
|
||||
|
@ -16,14 +23,34 @@ const exceptInvalidNotifications = (
|
|||
});
|
||||
};
|
||||
|
||||
export const apiFetchNotifications = async (params?: {
|
||||
export const apiFetchNotifications = async (
|
||||
params?: {
|
||||
account_id?: string;
|
||||
since_id?: string;
|
||||
},
|
||||
url?: string,
|
||||
) => {
|
||||
const response = await api().request<ApiNotificationJSON[]>({
|
||||
method: 'GET',
|
||||
url: url ?? '/api/v1/notifications',
|
||||
params,
|
||||
});
|
||||
|
||||
return {
|
||||
notifications: response.data,
|
||||
links: getLinks(response),
|
||||
};
|
||||
};
|
||||
|
||||
export const apiFetchNotificationGroups = async (params?: {
|
||||
url?: string;
|
||||
exclude_types?: string[];
|
||||
max_id?: string;
|
||||
since_id?: string;
|
||||
}) => {
|
||||
const response = await api().request<ApiNotificationGroupsResultJSON>({
|
||||
method: 'GET',
|
||||
url: '/api/v2_alpha/notifications',
|
||||
url: '/api/v2/notifications',
|
||||
params,
|
||||
});
|
||||
|
||||
|
@ -39,3 +66,43 @@ export const apiFetchNotifications = async (params?: {
|
|||
|
||||
export const apiClearNotifications = () =>
|
||||
apiRequest<undefined>('POST', 'v1/notifications/clear');
|
||||
|
||||
export const apiFetchNotificationRequests = async (
|
||||
params?: {
|
||||
since_id?: string;
|
||||
},
|
||||
url?: string,
|
||||
) => {
|
||||
const response = await api().request<ApiNotificationRequestJSON[]>({
|
||||
method: 'GET',
|
||||
url: url ?? '/api/v1/notifications/requests',
|
||||
params,
|
||||
});
|
||||
|
||||
return {
|
||||
requests: response.data,
|
||||
links: getLinks(response),
|
||||
};
|
||||
};
|
||||
|
||||
export const apiFetchNotificationRequest = async (id: string) => {
|
||||
return apiRequestGet<ApiNotificationRequestJSON>(
|
||||
`v1/notifications/requests/${id}`,
|
||||
);
|
||||
};
|
||||
|
||||
export const apiAcceptNotificationRequest = async (id: string) => {
|
||||
return apiRequestPost(`v1/notifications/requests/${id}/accept`);
|
||||
};
|
||||
|
||||
export const apiDismissNotificationRequest = async (id: string) => {
|
||||
return apiRequestPost(`v1/notifications/requests/${id}/dismiss`);
|
||||
};
|
||||
|
||||
export const apiAcceptNotificationRequests = async (id: string[]) => {
|
||||
return apiRequestPost('v1/notifications/requests/accept', { id });
|
||||
};
|
||||
|
||||
export const apiDismissNotificationRequests = async (id: string[]) => {
|
||||
return apiRequestPost('v1/notifications/dismiss/dismiss', { id });
|
||||
};
|
||||
|
|
|
@ -177,3 +177,12 @@ export interface ApiNotificationGroupsResultJSON {
|
|||
statuses: ApiStatusJSON[];
|
||||
notification_groups: ApiNotificationGroupJSON[];
|
||||
}
|
||||
|
||||
export interface ApiNotificationRequestJSON {
|
||||
id: string;
|
||||
created_at: string;
|
||||
updated_at: string;
|
||||
notifications_count: string;
|
||||
account: ApiAccountJSON;
|
||||
last_status?: ApiStatusJSON;
|
||||
}
|
||||
|
|
|
@ -79,14 +79,10 @@ export const FollowButton: React.FC<{
|
|||
relationship.followed_by
|
||||
) {
|
||||
label = intl.formatMessage(messages.mutual);
|
||||
} else if (
|
||||
!relationship.following &&
|
||||
isShowItem('relationships') &&
|
||||
relationship.followed_by
|
||||
) {
|
||||
label = intl.formatMessage(messages.followBack);
|
||||
} else if (relationship.following || relationship.requested) {
|
||||
label = intl.formatMessage(messages.unfollow);
|
||||
} else if (relationship.followed_by && isShowItem('relationships')) {
|
||||
label = intl.formatMessage(messages.followBack);
|
||||
} else {
|
||||
label = intl.formatMessage(messages.follow);
|
||||
}
|
||||
|
|
|
@ -96,10 +96,10 @@ const messageForFollowButton = relationship => {
|
|||
|
||||
if (relationship.get('following') && relationship.get('followed_by') && isShowItem('relationships')) {
|
||||
return messages.mutual;
|
||||
} else if (!relationship.get('following') && relationship.get('followed_by') && isShowItem('relationships')) {
|
||||
return messages.followBack;
|
||||
} else if (relationship.get('following') || relationship.get('requested')) {
|
||||
return messages.unfollow;
|
||||
} else if (relationship.get('followed_by') && isShowItem('relationships')) {
|
||||
return messages.followBack;
|
||||
} else {
|
||||
return messages.follow;
|
||||
}
|
||||
|
|
|
@ -6,7 +6,7 @@ import { FormattedMessage } from 'react-intl';
|
|||
import ImmutablePropTypes from 'react-immutable-proptypes';
|
||||
|
||||
import { identityContextPropShape, withIdentity } from 'mastodon/identity_context';
|
||||
import { enableEmojiReaction, forceGroupedNotifications } from 'mastodon/initial_state';
|
||||
import { enableEmojiReaction } from 'mastodon/initial_state';
|
||||
import { PERMISSION_MANAGE_USERS, PERMISSION_MANAGE_REPORTS } from 'mastodon/permissions';
|
||||
|
||||
import ClearColumnButton from './clear_column_button';
|
||||
|
@ -41,7 +41,6 @@ class ColumnSettings extends PureComponent {
|
|||
|
||||
const filterAdvancedStr = <FormattedMessage id='notifications.column_settings.filter_bar.advanced' defaultMessage='Display all categories' />;
|
||||
const unreadMarkersShowStr = <FormattedMessage id='notifications.column_settings.unread_notifications.highlight' defaultMessage='Highlight unread notifications' />;
|
||||
const groupingShowStr = <FormattedMessage id='notifications.column_settings.beta.grouping' defaultMessage='Group notifications' />;
|
||||
const alertStr = <FormattedMessage id='notifications.column_settings.alert' defaultMessage='Desktop notifications' />;
|
||||
const showStr = <FormattedMessage id='notifications.column_settings.show' defaultMessage='Show in column' />;
|
||||
const soundStr = <FormattedMessage id='notifications.column_settings.sound' defaultMessage='Play sound' />;
|
||||
|
@ -73,18 +72,6 @@ class ColumnSettings extends PureComponent {
|
|||
|
||||
<PolicyControls />
|
||||
|
||||
{!forceGroupedNotifications && (
|
||||
<section role='group' aria-labelledby='notifications-beta'>
|
||||
<h3 id='notifications-beta'>
|
||||
<FormattedMessage id='notifications.column_settings.beta.category' defaultMessage='Experimental features' />
|
||||
</h3>
|
||||
|
||||
<div className='column-settings__row'>
|
||||
<SettingToggle id='unread-notification-markers' prefix='notifications' settings={settings} settingPath={['groupingBeta']} onChange={onChange} label={groupingShowStr} />
|
||||
</div>
|
||||
</section>
|
||||
)}
|
||||
|
||||
<section role='group' aria-labelledby='notifications-unread-markers'>
|
||||
<h3 id='notifications-unread-markers'>
|
||||
<FormattedMessage id='notifications.column_settings.unread_notifications.category' defaultMessage='Unread notifications' />
|
||||
|
|
|
@ -12,7 +12,7 @@ import DeleteIcon from '@/material-icons/400-24px/delete.svg?react';
|
|||
import MoreHorizIcon from '@/material-icons/400-24px/more_horiz.svg?react';
|
||||
import { initBlockModal } from 'mastodon/actions/blocks';
|
||||
import { initMuteModal } from 'mastodon/actions/mutes';
|
||||
import { acceptNotificationRequest, dismissNotificationRequest } from 'mastodon/actions/notifications';
|
||||
import { acceptNotificationRequest, dismissNotificationRequest } from 'mastodon/actions/notification_requests';
|
||||
import { initReport } from 'mastodon/actions/reports';
|
||||
import { Avatar } from 'mastodon/components/avatar';
|
||||
import { CheckBox } from 'mastodon/components/check_box';
|
||||
|
@ -40,11 +40,11 @@ export const NotificationRequest = ({ id, accountId, notificationsCount, checked
|
|||
const { push: historyPush } = useHistory();
|
||||
|
||||
const handleDismiss = useCallback(() => {
|
||||
dispatch(dismissNotificationRequest(id));
|
||||
dispatch(dismissNotificationRequest({ id }));
|
||||
}, [dispatch, id]);
|
||||
|
||||
const handleAccept = useCallback(() => {
|
||||
dispatch(acceptNotificationRequest(id));
|
||||
dispatch(acceptNotificationRequest({ id }));
|
||||
}, [dispatch, id]);
|
||||
|
||||
const handleMute = useCallback(() => {
|
||||
|
|
|
@ -10,7 +10,13 @@ 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 InventoryIcon from '@/material-icons/400-24px/inventory_2.svg?react';
|
||||
import { fetchNotificationRequest, fetchNotificationsForRequest, expandNotificationsForRequest, acceptNotificationRequest, dismissNotificationRequest } from 'mastodon/actions/notifications';
|
||||
import {
|
||||
fetchNotificationRequest,
|
||||
fetchNotificationsForRequest,
|
||||
expandNotificationsForRequest,
|
||||
acceptNotificationRequest,
|
||||
dismissNotificationRequest,
|
||||
} from 'mastodon/actions/notification_requests';
|
||||
import Column from 'mastodon/components/column';
|
||||
import ColumnHeader from 'mastodon/components/column_header';
|
||||
import { IconButton } from 'mastodon/components/icon_button';
|
||||
|
@ -44,28 +50,28 @@ export const NotificationRequest = ({ multiColumn, params: { id } }) => {
|
|||
const columnRef = useRef();
|
||||
const intl = useIntl();
|
||||
const dispatch = useDispatch();
|
||||
const notificationRequest = useSelector(state => state.getIn(['notificationRequests', 'current', 'item', 'id']) === id ? state.getIn(['notificationRequests', 'current', 'item']) : null);
|
||||
const accountId = notificationRequest?.get('account');
|
||||
const notificationRequest = useSelector(state => state.notificationRequests.current.item?.id === id ? state.notificationRequests.current.item : null);
|
||||
const accountId = notificationRequest?.account_id;
|
||||
const account = useSelector(state => state.getIn(['accounts', accountId]));
|
||||
const notifications = useSelector(state => state.getIn(['notificationRequests', 'current', 'notifications', 'items']));
|
||||
const isLoading = useSelector(state => state.getIn(['notificationRequests', 'current', 'notifications', 'isLoading']));
|
||||
const hasMore = useSelector(state => !!state.getIn(['notificationRequests', 'current', 'notifications', 'next']));
|
||||
const removed = useSelector(state => state.getIn(['notificationRequests', 'current', 'removed']));
|
||||
const notifications = useSelector(state => state.notificationRequests.current.notifications.items);
|
||||
const isLoading = useSelector(state => state.notificationRequests.current.notifications.isLoading);
|
||||
const hasMore = useSelector(state => !!state.notificationRequests.current.notifications.next);
|
||||
const removed = useSelector(state => state.notificationRequests.current.removed);
|
||||
|
||||
const handleHeaderClick = useCallback(() => {
|
||||
columnRef.current?.scrollTop();
|
||||
}, [columnRef]);
|
||||
|
||||
const handleLoadMore = useCallback(() => {
|
||||
dispatch(expandNotificationsForRequest());
|
||||
}, [dispatch]);
|
||||
dispatch(expandNotificationsForRequest({ accountId }));
|
||||
}, [dispatch, accountId]);
|
||||
|
||||
const handleDismiss = useCallback(() => {
|
||||
dispatch(dismissNotificationRequest(id));
|
||||
dispatch(dismissNotificationRequest({ id }));
|
||||
}, [dispatch, id]);
|
||||
|
||||
const handleAccept = useCallback(() => {
|
||||
dispatch(acceptNotificationRequest(id));
|
||||
dispatch(acceptNotificationRequest({ id }));
|
||||
}, [dispatch, id]);
|
||||
|
||||
const handleMoveUp = useCallback(id => {
|
||||
|
@ -79,12 +85,12 @@ export const NotificationRequest = ({ multiColumn, params: { id } }) => {
|
|||
}, [columnRef, notifications]);
|
||||
|
||||
useEffect(() => {
|
||||
dispatch(fetchNotificationRequest(id));
|
||||
dispatch(fetchNotificationRequest({ id }));
|
||||
}, [dispatch, id]);
|
||||
|
||||
useEffect(() => {
|
||||
if (accountId) {
|
||||
dispatch(fetchNotificationsForRequest(accountId));
|
||||
dispatch(fetchNotificationsForRequest({ accountId }));
|
||||
}
|
||||
}, [dispatch, accountId]);
|
||||
|
||||
|
|
|
@ -11,7 +11,12 @@ import ArrowDropDownIcon from '@/material-icons/400-24px/arrow_drop_down.svg?rea
|
|||
import InventoryIcon from '@/material-icons/400-24px/inventory_2.svg?react';
|
||||
import MoreHorizIcon from '@/material-icons/400-24px/more_horiz.svg?react';
|
||||
import { openModal } from 'mastodon/actions/modal';
|
||||
import { fetchNotificationRequests, expandNotificationRequests, acceptNotificationRequests, dismissNotificationRequests } from 'mastodon/actions/notifications';
|
||||
import {
|
||||
fetchNotificationRequests,
|
||||
expandNotificationRequests,
|
||||
acceptNotificationRequests,
|
||||
dismissNotificationRequests,
|
||||
} from 'mastodon/actions/notification_requests';
|
||||
import { changeSetting } from 'mastodon/actions/settings';
|
||||
import { CheckBox } from 'mastodon/components/check_box';
|
||||
import Column from 'mastodon/components/column';
|
||||
|
@ -84,7 +89,7 @@ const SelectRow = ({selectAllChecked, toggleSelectAll, selectedItems, selectionM
|
|||
message: intl.formatMessage(messages.confirmAcceptMultipleMessage, { count: selectedItems.length }),
|
||||
confirm: intl.formatMessage(messages.confirmAcceptMultipleButton, { count: selectedItems.length}),
|
||||
onConfirm: () =>
|
||||
dispatch(acceptNotificationRequests(selectedItems)),
|
||||
dispatch(acceptNotificationRequests({ ids: selectedItems })),
|
||||
},
|
||||
}));
|
||||
}, [dispatch, intl, selectedItems]);
|
||||
|
@ -97,7 +102,7 @@ const SelectRow = ({selectAllChecked, toggleSelectAll, selectedItems, selectionM
|
|||
message: intl.formatMessage(messages.confirmDismissMultipleMessage, { count: selectedItems.length }),
|
||||
confirm: intl.formatMessage(messages.confirmDismissMultipleButton, { count: selectedItems.length}),
|
||||
onConfirm: () =>
|
||||
dispatch(dismissNotificationRequests(selectedItems)),
|
||||
dispatch(dismissNotificationRequests({ ids: selectedItems })),
|
||||
},
|
||||
}));
|
||||
}, [dispatch, intl, selectedItems]);
|
||||
|
@ -161,9 +166,9 @@ export const NotificationRequests = ({ multiColumn }) => {
|
|||
const columnRef = useRef();
|
||||
const intl = useIntl();
|
||||
const dispatch = useDispatch();
|
||||
const isLoading = useSelector(state => state.getIn(['notificationRequests', 'isLoading']));
|
||||
const notificationRequests = useSelector(state => state.getIn(['notificationRequests', 'items']));
|
||||
const hasMore = useSelector(state => !!state.getIn(['notificationRequests', 'next']));
|
||||
const isLoading = useSelector(state => state.notificationRequests.isLoading);
|
||||
const notificationRequests = useSelector(state => state.notificationRequests.items);
|
||||
const hasMore = useSelector(state => !!state.notificationRequests.next);
|
||||
|
||||
const [selectionMode, setSelectionMode] = useState(false);
|
||||
const [checkedRequestIds, setCheckedRequestIds] = useState([]);
|
||||
|
@ -182,7 +187,7 @@ export const NotificationRequests = ({ multiColumn }) => {
|
|||
else
|
||||
ids.push(id);
|
||||
|
||||
setSelectAllChecked(ids.length === notificationRequests.size);
|
||||
setSelectAllChecked(ids.length === notificationRequests.length);
|
||||
|
||||
return [...ids];
|
||||
});
|
||||
|
@ -193,7 +198,7 @@ export const NotificationRequests = ({ multiColumn }) => {
|
|||
if(checked)
|
||||
setCheckedRequestIds([]);
|
||||
else
|
||||
setCheckedRequestIds(notificationRequests.map(request => request.get('id')).toArray());
|
||||
setCheckedRequestIds(notificationRequests.map(request => request.id));
|
||||
|
||||
return !checked;
|
||||
});
|
||||
|
@ -217,7 +222,7 @@ export const NotificationRequests = ({ multiColumn }) => {
|
|||
multiColumn={multiColumn}
|
||||
showBackButton
|
||||
appendContent={
|
||||
notificationRequests.size > 0 && (
|
||||
notificationRequests.length > 0 && (
|
||||
<SelectRow selectionMode={selectionMode} setSelectionMode={setSelectionMode} selectAllChecked={selectAllChecked} toggleSelectAll={toggleSelectAll} selectedItems={checkedRequestIds} />
|
||||
)}
|
||||
>
|
||||
|
@ -236,12 +241,12 @@ export const NotificationRequests = ({ multiColumn }) => {
|
|||
>
|
||||
{notificationRequests.map(request => (
|
||||
<NotificationRequest
|
||||
key={request.get('id')}
|
||||
id={request.get('id')}
|
||||
accountId={request.get('account')}
|
||||
notificationsCount={request.get('notifications_count')}
|
||||
key={request.id}
|
||||
id={request.id}
|
||||
accountId={request.account_id}
|
||||
notificationsCount={request.notifications_count}
|
||||
showCheckbox={selectionMode}
|
||||
checked={checkedRequestIds.includes(request.get('id'))}
|
||||
checked={checkedRequestIds.includes(request.id)}
|
||||
toggleCheck={handleCheck}
|
||||
/>
|
||||
))}
|
||||
|
|
|
@ -1,13 +1,8 @@
|
|||
import Notifications from 'mastodon/features/notifications';
|
||||
import Notifications_v2 from 'mastodon/features/notifications_v2';
|
||||
import { selectUseGroupedNotifications } from 'mastodon/selectors/settings';
|
||||
import { useAppSelector } from 'mastodon/store';
|
||||
|
||||
export const NotificationsWrapper = (props) => {
|
||||
const optedInGroupedNotifications = useAppSelector(selectUseGroupedNotifications);
|
||||
|
||||
return (
|
||||
optedInGroupedNotifications ? <Notifications_v2 {...props} /> : <Notifications {...props} />
|
||||
<Notifications_v2 {...props} />
|
||||
);
|
||||
};
|
||||
|
||||
|
|
|
@ -73,8 +73,8 @@ export default class ColumnsArea extends ImmutablePureComponent {
|
|||
children: PropTypes.node,
|
||||
};
|
||||
|
||||
// Corresponds to (max-width: $no-gap-breakpoint + 285px - 1px) in SCSS
|
||||
mediaQuery = 'matchMedia' in window && window.matchMedia('(max-width: 1174px)');
|
||||
// Corresponds to (max-width: $no-gap-breakpoint - 1px) in SCSS
|
||||
mediaQuery = 'matchMedia' in window && window.matchMedia('(max-width: 1206px)');
|
||||
|
||||
state = {
|
||||
renderComposePanel: !(this.mediaQuery && this.mediaQuery.matches),
|
||||
|
|
|
@ -40,7 +40,6 @@ import { enableDtlMenu, timelinePreview, trendsEnabled, dtlTag, enableLocalTimel
|
|||
import { transientSingleColumn } from 'mastodon/is_mobile';
|
||||
import { canManageReports, canViewAdminDashboard } from 'mastodon/permissions';
|
||||
import { selectUnreadNotificationGroupsCount } from 'mastodon/selectors/notifications';
|
||||
import { selectUseGroupedNotifications } from 'mastodon/selectors/settings';
|
||||
|
||||
import ColumnLink from './column_link';
|
||||
import DisabledAccountBanner from './disabled_account_banner';
|
||||
|
@ -72,19 +71,17 @@ const messages = defineMessages({
|
|||
});
|
||||
|
||||
const NotificationsLink = () => {
|
||||
const optedInGroupedNotifications = useSelector(selectUseGroupedNotifications);
|
||||
const count = useSelector(state => state.getIn(['notifications', 'unread']));
|
||||
const intl = useIntl();
|
||||
|
||||
const newCount = useSelector(selectUnreadNotificationGroupsCount);
|
||||
const count = useSelector(selectUnreadNotificationGroupsCount);
|
||||
const intl = useIntl();
|
||||
|
||||
return (
|
||||
<ColumnLink
|
||||
key='notifications'
|
||||
transparent
|
||||
to='/notifications'
|
||||
icon={<IconWithBadge id='bell' icon={NotificationsIcon} count={optedInGroupedNotifications ? newCount : count} className='column-link__icon' />}
|
||||
activeIcon={<IconWithBadge id='bell' icon={NotificationsActiveIcon} count={optedInGroupedNotifications ? newCount : count} className='column-link__icon' />}
|
||||
icon={<IconWithBadge id='bell' icon={NotificationsIcon} count={count} className='column-link__icon' />}
|
||||
activeIcon={<IconWithBadge id='bell' icon={NotificationsActiveIcon} count={count} className='column-link__icon' />}
|
||||
text={intl.formatMessage(messages.notifications)}
|
||||
/>
|
||||
);
|
||||
|
|
|
@ -69,7 +69,6 @@
|
|||
* @property {boolean=} use_pending_items
|
||||
* @property {string} version
|
||||
* @property {string} sso_redirect
|
||||
* @property {boolean} force_grouped_notifications
|
||||
*/
|
||||
|
||||
/**
|
||||
|
@ -169,7 +168,6 @@ export const criticalUpdatesPending = initialState?.critical_updates_pending;
|
|||
// @ts-expect-error
|
||||
export const statusPageUrl = getMeta('status_page_url');
|
||||
export const sso_redirect = getMeta('sso_redirect');
|
||||
export const forceGroupedNotifications = getMeta('force_grouped_notifications');
|
||||
|
||||
/**
|
||||
* @returns {string | undefined}
|
||||
|
|
|
@ -480,7 +480,6 @@
|
|||
"status.detailed_status": "Vista de conversación detallada",
|
||||
"status.edit": "Editar",
|
||||
"status.edited_x_times": "Editau {count, plural, one {{count} vez} other {{count} veces}}",
|
||||
"status.embed": "Incrustado",
|
||||
"status.filter": "Filtrar esta publicación",
|
||||
"status.history.created": "{name} creyó {date}",
|
||||
"status.history.edited": "{name} editó {date}",
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
"about.contact": "للاتصال:",
|
||||
"about.disclaimer": "ماستدون برنامج حر ومفتوح المصدر وعلامة تجارية لـ Mastodon GmbH.",
|
||||
"about.domain_blocks.no_reason_available": "السبب غير متوفر",
|
||||
"about.domain_blocks.preamble": "يسمح لك ماستدون عموماً بعرض المحتوى من المستخدمين من أي خادم آخر في الفدرالية والتفاعل معهم. وهذه هي الاستثناءات التي وضعت على هذا الخادم بالذات.",
|
||||
"about.domain_blocks.preamble": "يتيح مَستُدون عمومًا لمستخدميه مطالعة المحتوى من المستخدمين من الخواديم الأخرى في الفدرالية والتفاعل معهم. وهذه هي الاستثناءات التي وضعت على هذا الخادوم.",
|
||||
"about.domain_blocks.silenced.explanation": "لن تظهر لك ملفات التعريف الشخصية والمحتوى من هذا الخادوم، إلا إن بحثت عنه عمدًا أو تابعته.",
|
||||
"about.domain_blocks.silenced.title": "محدود",
|
||||
"about.domain_blocks.suspended.explanation": "لن يتم معالجة أي بيانات من هذا الخادم أو تخزينها أو تبادلها، مما يجعل أي تفاعل أو اتصال مع المستخدمين من هذا الخادم مستحيلا.",
|
||||
|
@ -34,7 +34,7 @@
|
|||
"account.follow_back": "تابعه بالمثل",
|
||||
"account.followers": "مُتابِعون",
|
||||
"account.followers.empty": "لا أحدَ يُتابع هذا المُستخدم إلى حد الآن.",
|
||||
"account.followers_counter": "{count, plural, zero {}one {{counter} متابع} two {{counter} متابعين} few {{counter} متابعين} many {{counter} متابعين} other {{counter} متابعين}}",
|
||||
"account.followers_counter": "{count, plural, zero{لا مُتابع} one {مُتابعٌ واحِد} two {مُتابعانِ اِثنان} few {{counter} مُتابِعين} many {{counter} مُتابِعًا} other {{counter} مُتابع}}",
|
||||
"account.following": "الاشتراكات",
|
||||
"account.follows.empty": "لا يُتابع هذا المُستخدمُ أيَّ أحدٍ حتى الآن.",
|
||||
"account.go_to_profile": "اذهب إلى الملف الشخصي",
|
||||
|
@ -43,7 +43,7 @@
|
|||
"account.joined_short": "انضم في",
|
||||
"account.languages": "تغيير اللغات المشترَك فيها",
|
||||
"account.link_verified_on": "تمَّ التَّحقق مِن مِلْكيّة هذا الرابط بتاريخ {date}",
|
||||
"account.locked_info": "تمَّ تعيين حالة خصوصية هذا الحساب إلى مُقفَل. يُراجع المالك يدويًا من يمكنه متابعته.",
|
||||
"account.locked_info": "تم ضبط حالة خصوصية هذا الحساب على أنه مؤمّن. إذ يراجع صاحبه يدويًا من يُسمح له بالمتابعة.",
|
||||
"account.media": "وسائط",
|
||||
"account.mention": "أذكُر @{name}",
|
||||
"account.moved_to": "أشار {name} إلى أن حسابه الجديد الآن:",
|
||||
|
@ -443,6 +443,7 @@
|
|||
"lists.subheading": "قوائمك",
|
||||
"load_pending": "{count, plural, one {# عنصر جديد} other {# عناصر جديدة}}",
|
||||
"loading_indicator.label": "جاري التحميل…",
|
||||
"media_gallery.hide": "إخفاء",
|
||||
"moved_to_account_banner.text": "حسابك {disabledAccount} معطل حاليًا لأنك انتقلت إلى {movedToAccount}.",
|
||||
"mute_modal.hide_from_notifications": "إخفاء من قائمة الإشعارات",
|
||||
"mute_modal.hide_options": "إخفاء الخيارات",
|
||||
|
@ -527,8 +528,6 @@
|
|||
"notifications.column_settings.admin.report": "التبليغات الجديدة:",
|
||||
"notifications.column_settings.admin.sign_up": "التسجيلات الجديدة:",
|
||||
"notifications.column_settings.alert": "إشعارات سطح المكتب",
|
||||
"notifications.column_settings.beta.category": "ميزات تجريبية",
|
||||
"notifications.column_settings.beta.grouping": "جمّع الإشعارات",
|
||||
"notifications.column_settings.favourite": "المفضلة:",
|
||||
"notifications.column_settings.filter_bar.advanced": "عرض جميع الفئات",
|
||||
"notifications.column_settings.filter_bar.category": "شريط التصفية السريعة",
|
||||
|
@ -744,6 +743,7 @@
|
|||
"status.bookmark": "أضفه إلى الفواصل المرجعية",
|
||||
"status.cancel_reblog_private": "إلغاء إعادة النشر",
|
||||
"status.cannot_reblog": "لا يمكن إعادة نشر هذا المنشور",
|
||||
"status.continued_thread": "تكملة للخيط",
|
||||
"status.copy": "انسخ رابط الرسالة",
|
||||
"status.delete": "احذف",
|
||||
"status.detailed_status": "تفاصيل المحادثة",
|
||||
|
@ -752,7 +752,7 @@
|
|||
"status.edit": "تعديل",
|
||||
"status.edited": "آخر تعديل يوم {date}",
|
||||
"status.edited_x_times": "عُدّل {count, plural, zero {} one {مرةً واحدة} two {مرّتان} few {{count} مرات} many {{count} مرة} other {{count} مرة}}",
|
||||
"status.embed": "إدماج",
|
||||
"status.embed": "الحصول على شفرة الإدماج",
|
||||
"status.favourite": "فضّل",
|
||||
"status.favourites": "{count, plural, zero {}one {مفضلة واحدة} two {مفضلتان} few {# مفضلات} many {# مفضلات} other {# مفضلات}}",
|
||||
"status.filter": "تصفية هذا المنشور",
|
||||
|
@ -777,6 +777,7 @@
|
|||
"status.reblogs.empty": "لم يقم أي أحد بمشاركة هذا المنشور بعد. عندما يقوم أحدهم بذلك سوف يظهر هنا.",
|
||||
"status.redraft": "إزالة وإعادة الصياغة",
|
||||
"status.remove_bookmark": "احذفه مِن الفواصل المرجعية",
|
||||
"status.replied_in_thread": "رد في خيط",
|
||||
"status.replied_to": "رَدًا على {name}",
|
||||
"status.reply": "ردّ",
|
||||
"status.replyAll": "رُد على الخيط",
|
||||
|
|
|
@ -297,7 +297,6 @@
|
|||
"notifications.clear": "Borrar los avisos",
|
||||
"notifications.column_settings.admin.report": "Informes nuevos:",
|
||||
"notifications.column_settings.admin.sign_up": "Rexistros nuevos:",
|
||||
"notifications.column_settings.beta.category": "Funciones esperimentales",
|
||||
"notifications.column_settings.follow": "Siguidores nuevos:",
|
||||
"notifications.column_settings.follow_request": "Solicitúes de siguimientu nueves:",
|
||||
"notifications.column_settings.mention": "Menciones:",
|
||||
|
@ -419,7 +418,6 @@
|
|||
"status.direct": "Mentar a @{name} per privao",
|
||||
"status.direct_indicator": "Mención privada",
|
||||
"status.edited_x_times": "Editóse {count, plural, one {{count} vegada} other {{count} vegaes}}",
|
||||
"status.embed": "Empotrar",
|
||||
"status.filter": "Peñerar esti artículu",
|
||||
"status.history.created": "{name} creó {date}",
|
||||
"status.history.edited": "{name} editó {date}",
|
||||
|
|
|
@ -523,8 +523,6 @@
|
|||
"notifications.column_settings.admin.report": "Новыя скаргі:",
|
||||
"notifications.column_settings.admin.sign_up": "Новыя ўваходы:",
|
||||
"notifications.column_settings.alert": "Апавяшчэнні на працоўным стале",
|
||||
"notifications.column_settings.beta.category": "Эксперыментальныя функцыі",
|
||||
"notifications.column_settings.beta.grouping": "Групаваць апавяшчэннi",
|
||||
"notifications.column_settings.favourite": "Упадабанае:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Паказаць усе катэгорыі",
|
||||
"notifications.column_settings.filter_bar.category": "Панэль хуткай фільтрацыі",
|
||||
|
@ -748,7 +746,6 @@
|
|||
"status.edit": "Рэдагаваць",
|
||||
"status.edited": "Апошняе рэдагаванне {date}",
|
||||
"status.edited_x_times": "Рэдагавана {count, plural, one {{count} раз} few {{count} разы} many {{count} разоў} other {{count} разу}}",
|
||||
"status.embed": "Убудаваць",
|
||||
"status.favourite": "Упадабанае",
|
||||
"status.favourites": "{count, plural, one {# упадабанае} few {# упадабаныя} many {# упадабаных} other {# упадабанага}}",
|
||||
"status.filter": "Фільтраваць гэты допіс",
|
||||
|
|
|
@ -540,8 +540,6 @@
|
|||
"notifications.column_settings.admin.report": "Нови доклади:",
|
||||
"notifications.column_settings.admin.sign_up": "Нови регистрации:",
|
||||
"notifications.column_settings.alert": "Известия на работния плот",
|
||||
"notifications.column_settings.beta.category": "Експериментални функции",
|
||||
"notifications.column_settings.beta.grouping": "Групови известия",
|
||||
"notifications.column_settings.favourite": "Любими:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Показване на всички категории",
|
||||
"notifications.column_settings.filter_bar.category": "Лента за бърз филтър",
|
||||
|
@ -766,7 +764,6 @@
|
|||
"status.edit": "Редактиране",
|
||||
"status.edited": "Последно редактирано на {date}",
|
||||
"status.edited_x_times": "Редактирано {count, plural,one {{count} път} other {{count} пъти}}",
|
||||
"status.embed": "Вграждане",
|
||||
"status.favourite": "Любимо",
|
||||
"status.favourites": "{count, plural, one {любимо} other {любими}}",
|
||||
"status.filter": "Филтриране на публ.",
|
||||
|
|
|
@ -408,7 +408,6 @@
|
|||
"status.detailed_status": "বিস্তারিত কথোপকথনের হিসেবে দেখতে",
|
||||
"status.edit": "সম্পাদন",
|
||||
"status.edited_x_times": "Edited {count, plural, one {# time} other {# times}}",
|
||||
"status.embed": "এমবেড করতে",
|
||||
"status.favourite": "পছন্দ",
|
||||
"status.load_more": "আরো দেখুন",
|
||||
"status.media_hidden": "মিডিয়া লুকানো আছে",
|
||||
|
|
|
@ -575,7 +575,6 @@
|
|||
"status.edit": "Kemmañ",
|
||||
"status.edited": "Kemmet da ziwezhañ d'an {date}",
|
||||
"status.edited_x_times": "Edited {count, plural, one {# time} other {# times}}",
|
||||
"status.embed": "Enframmañ",
|
||||
"status.favourite": "Muiañ-karet",
|
||||
"status.filter": "Silañ ar c'hannad-mañ",
|
||||
"status.history.created": "Krouet gant {name} {date}",
|
||||
|
|
|
@ -559,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Nous informes:",
|
||||
"notifications.column_settings.admin.sign_up": "Registres nous:",
|
||||
"notifications.column_settings.alert": "Notificacions d'escriptori",
|
||||
"notifications.column_settings.beta.category": "Característiques experimentals",
|
||||
"notifications.column_settings.beta.grouping": "Notificacions de grup",
|
||||
"notifications.column_settings.favourite": "Favorits:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Mostra totes les categories",
|
||||
"notifications.column_settings.filter_bar.category": "Barra ràpida de filtres",
|
||||
|
@ -789,7 +787,7 @@
|
|||
"status.edit": "Edita",
|
||||
"status.edited": "Darrera edició {date}",
|
||||
"status.edited_x_times": "Editat {count, plural, one {{count} vegada} other {{count} vegades}}",
|
||||
"status.embed": "Incrusta",
|
||||
"status.embed": "Obté el codi encastat",
|
||||
"status.favourite": "Favorit",
|
||||
"status.favourites": "{count, plural, one {favorit} other {favorits}}",
|
||||
"status.filter": "Filtra aquest tut",
|
||||
|
|
|
@ -539,7 +539,6 @@
|
|||
"status.direct_indicator": "ئاماژەی تایبەت",
|
||||
"status.edit": "دەستکاری",
|
||||
"status.edited_x_times": "دەستکاریکراوە {count, plural, one {{count} کات} other {{count} کات}}",
|
||||
"status.embed": "نیشتەجێ بکە",
|
||||
"status.filter": "ئەم پۆستە فلتەر بکە",
|
||||
"status.history.created": "{name} دروستکراوە لە{date}",
|
||||
"status.history.edited": "{name} دروستکاریکراوە لە{date}",
|
||||
|
|
|
@ -319,7 +319,6 @@
|
|||
"status.delete": "Toglie",
|
||||
"status.detailed_status": "Vista in ditagliu di a cunversazione",
|
||||
"status.edited_x_times": "Edited {count, plural, one {# time} other {# times}}",
|
||||
"status.embed": "Integrà",
|
||||
"status.load_more": "Vede di più",
|
||||
"status.media_hidden": "Media piattata",
|
||||
"status.mention": "Mintuvà @{name}",
|
||||
|
|
|
@ -509,8 +509,6 @@
|
|||
"notifications.column_settings.admin.report": "Nová hlášení:",
|
||||
"notifications.column_settings.admin.sign_up": "Nové registrace:",
|
||||
"notifications.column_settings.alert": "Oznámení na počítači",
|
||||
"notifications.column_settings.beta.category": "Experimentální funkce",
|
||||
"notifications.column_settings.beta.grouping": "Seskupit notifikace",
|
||||
"notifications.column_settings.favourite": "Oblíbené:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Zobrazit všechny kategorie",
|
||||
"notifications.column_settings.filter_bar.category": "Panel rychlého filtrování",
|
||||
|
@ -729,7 +727,6 @@
|
|||
"status.edit": "Upravit",
|
||||
"status.edited": "Naposledy upraveno {date}",
|
||||
"status.edited_x_times": "Upraveno {count, plural, one {{count}krát} few {{count}krát} many {{count}krát} other {{count}krát}}",
|
||||
"status.embed": "Vložit na web",
|
||||
"status.favourite": "Oblíbit",
|
||||
"status.favourites": "{count, plural, one {oblíbený} few {oblíbené} many {oblíbených} other {oblíbených}}",
|
||||
"status.filter": "Filtrovat tento příspěvek",
|
||||
|
|
|
@ -559,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Adroddiadau newydd:",
|
||||
"notifications.column_settings.admin.sign_up": "Cofrestriadau newydd:",
|
||||
"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.filter_bar.advanced": "Dangos pob categori",
|
||||
"notifications.column_settings.filter_bar.category": "Bar hidlo cyflym",
|
||||
|
@ -789,7 +787,6 @@
|
|||
"status.edit": "Golygu",
|
||||
"status.edited": "Golygwyd ddiwethaf {date}",
|
||||
"status.edited_x_times": "Golygwyd {count, plural, one {count} two {count} other {{count} gwaith}}",
|
||||
"status.embed": "Mewnblannu",
|
||||
"status.favourite": "Ffafrio",
|
||||
"status.favourites": "{count, plural, one {ffefryn} other {ffefryn}}",
|
||||
"status.filter": "Hidlo'r postiad hwn",
|
||||
|
|
|
@ -559,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Nye anmeldelser:",
|
||||
"notifications.column_settings.admin.sign_up": "Nye tilmeldinger:",
|
||||
"notifications.column_settings.alert": "Computernotifikationer",
|
||||
"notifications.column_settings.beta.category": "Eksperimentelle funktioner",
|
||||
"notifications.column_settings.beta.grouping": "Gruppér notifikationer",
|
||||
"notifications.column_settings.favourite": "Favoritter:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Vis alle kategorier",
|
||||
"notifications.column_settings.filter_bar.category": "Hurtigfiltreringsbjælke",
|
||||
|
@ -789,7 +787,7 @@
|
|||
"status.edit": "Redigér",
|
||||
"status.edited": "Senest redigeret {date}",
|
||||
"status.edited_x_times": "Redigeret {count, plural, one {{count} gang} other {{count} gange}}",
|
||||
"status.embed": "Indlejr",
|
||||
"status.embed": "Hent indlejringskode",
|
||||
"status.favourite": "Favorit",
|
||||
"status.favourites": "{count, plural, one {# favorit} other {# favoritter}}",
|
||||
"status.filter": "Filtrér dette indlæg",
|
||||
|
|
|
@ -236,7 +236,7 @@
|
|||
"domain_pill.your_handle": "Deine Adresse:",
|
||||
"domain_pill.your_server": "Dein digitales Zuhause. Hier „leben“ alle Beiträge von dir. Dir gefällt es hier nicht? Du kannst jederzeit den Server wechseln und ebenso deine Follower übertragen.",
|
||||
"domain_pill.your_username": "Deine eindeutige Identität auf diesem Server. Es ist möglich, Profile mit dem gleichen Profilnamen auf verschiedenen Servern zu finden.",
|
||||
"embed.instructions": "Du kannst diesen Beitrag außerhalb des Fediverse (z. B. auf deiner Website) einbetten, indem du diesen iFrame-Code einfügst.",
|
||||
"embed.instructions": "Du kannst diesen Beitrag auf deiner Website einbetten, indem du den nachfolgenden Code kopierst.",
|
||||
"embed.preview": "Vorschau:",
|
||||
"emoji_button.activity": "Aktivitäten",
|
||||
"emoji_button.clear": "Leeren",
|
||||
|
@ -559,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Neue Meldungen:",
|
||||
"notifications.column_settings.admin.sign_up": "Neue Registrierungen:",
|
||||
"notifications.column_settings.alert": "Desktop-Benachrichtigungen",
|
||||
"notifications.column_settings.beta.category": "Experimentelle Funktionen",
|
||||
"notifications.column_settings.beta.grouping": "Benachrichtigungen gruppieren",
|
||||
"notifications.column_settings.favourite": "Favoriten:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Alle Filterkategorien anzeigen",
|
||||
"notifications.column_settings.filter_bar.category": "Filterleiste",
|
||||
|
@ -777,7 +775,7 @@
|
|||
"status.admin_domain": "{domain} moderieren",
|
||||
"status.admin_status": "Beitrag moderieren",
|
||||
"status.block": "@{name} blockieren",
|
||||
"status.bookmark": "Beitrag als Lesezeichen setzen",
|
||||
"status.bookmark": "Lesezeichen setzen",
|
||||
"status.cancel_reblog_private": "Beitrag nicht mehr teilen",
|
||||
"status.cannot_reblog": "Dieser Beitrag kann nicht geteilt werden",
|
||||
"status.continued_thread": "Fortgeführter Thread",
|
||||
|
@ -789,7 +787,7 @@
|
|||
"status.edit": "Beitrag bearbeiten",
|
||||
"status.edited": "Zuletzt am {date} bearbeitet",
|
||||
"status.edited_x_times": "{count, plural, one {{count}-mal} other {{count}-mal}} bearbeitet",
|
||||
"status.embed": "Beitrag per iFrame einbetten",
|
||||
"status.embed": "Code zum Einbetten",
|
||||
"status.favourite": "Favorisieren",
|
||||
"status.favourites": "{count, plural, one {Mal favorisiert} other {Mal favorisiert}}",
|
||||
"status.filter": "Beitrag filtern",
|
||||
|
|
|
@ -551,8 +551,6 @@
|
|||
"notifications.column_settings.admin.report": "Νέες αναφορές:",
|
||||
"notifications.column_settings.admin.sign_up": "Νέες εγγραφές:",
|
||||
"notifications.column_settings.alert": "Ειδοποιήσεις επιφάνειας εργασίας",
|
||||
"notifications.column_settings.beta.category": "Πειραματικές λειτουργίες",
|
||||
"notifications.column_settings.beta.grouping": "Ομαδοποίηση ειδοποιήσεων",
|
||||
"notifications.column_settings.favourite": "Αγαπημένα:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Εμφάνιση όλων των κατηγοριών",
|
||||
"notifications.column_settings.filter_bar.category": "Μπάρα γρήγορου φίλτρου",
|
||||
|
@ -780,7 +778,6 @@
|
|||
"status.edit": "Επεξεργασία",
|
||||
"status.edited": "Τελευταία επεξεργασία {date}",
|
||||
"status.edited_x_times": "Επεξεργάστηκε {count, plural, one {{count} φορά} other {{count} φορές}}",
|
||||
"status.embed": "Ενσωμάτωσε",
|
||||
"status.favourite": "Αγαπημένα",
|
||||
"status.favourites": "{count, plural, one {# αγαπημένο} other {# αγαπημένα}}",
|
||||
"status.filter": "Φιλτράρισμα αυτής της ανάρτησης",
|
||||
|
|
|
@ -559,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "New reports:",
|
||||
"notifications.column_settings.admin.sign_up": "New sign-ups:",
|
||||
"notifications.column_settings.alert": "Desktop notifications",
|
||||
"notifications.column_settings.beta.category": "Experimental features",
|
||||
"notifications.column_settings.beta.grouping": "Group notifications",
|
||||
"notifications.column_settings.favourite": "Favourites:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Display all categories",
|
||||
"notifications.column_settings.filter_bar.category": "Quick filter bar",
|
||||
|
@ -789,7 +787,7 @@
|
|||
"status.edit": "Edit",
|
||||
"status.edited": "Last edited {date}",
|
||||
"status.edited_x_times": "Edited {count, plural, one {{count} time} other {{count} times}}",
|
||||
"status.embed": "Embed",
|
||||
"status.embed": "Get embed code",
|
||||
"status.favourite": "Favourite",
|
||||
"status.favourites": "{count, plural, one {favorite} other {favorites}}",
|
||||
"status.filter": "Filter this post",
|
||||
|
|
|
@ -679,8 +679,6 @@
|
|||
"notifications.column_settings.admin.report": "New reports:",
|
||||
"notifications.column_settings.admin.sign_up": "New sign-ups:",
|
||||
"notifications.column_settings.alert": "Desktop notifications",
|
||||
"notifications.column_settings.beta.category": "Experimental features",
|
||||
"notifications.column_settings.beta.grouping": "Group notifications",
|
||||
"notifications.column_settings.emoji_reaction": "Emoji reactions:",
|
||||
"notifications.column_settings.favourite": "Favorites:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Display all categories",
|
||||
|
|
|
@ -628,7 +628,6 @@
|
|||
"status.direct_indicator": "Privata mencio",
|
||||
"status.edit": "Redakti",
|
||||
"status.edited_x_times": "Redactita {count, plural, one {{count} fojon} other {{count} fojojn}}",
|
||||
"status.embed": "Enkorpigi",
|
||||
"status.favourite": "Ŝatata",
|
||||
"status.filter": "Filtri ĉi tiun afiŝon",
|
||||
"status.history.created": "{name} kreis {date}",
|
||||
|
|
|
@ -559,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Nuevas denuncias:",
|
||||
"notifications.column_settings.admin.sign_up": "Nuevos registros:",
|
||||
"notifications.column_settings.alert": "Notificaciones de escritorio",
|
||||
"notifications.column_settings.beta.category": "Funciones experimentales",
|
||||
"notifications.column_settings.beta.grouping": "Agrupar notificaciones",
|
||||
"notifications.column_settings.favourite": "Favoritos:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Mostrar todas las categorías",
|
||||
"notifications.column_settings.filter_bar.category": "Barra de filtrado rápido",
|
||||
|
@ -789,7 +787,7 @@
|
|||
"status.edit": "Editar",
|
||||
"status.edited": "Última edición: {date}",
|
||||
"status.edited_x_times": "Editado {count, plural, one {{count} vez} other {{count} veces}}",
|
||||
"status.embed": "Insertar",
|
||||
"status.embed": "Obtener código para insertar",
|
||||
"status.favourite": "Marcar como favorito",
|
||||
"status.favourites": "{count, plural, one {# voto} other {# votos}}",
|
||||
"status.filter": "Filtrar este mensaje",
|
||||
|
|
|
@ -376,7 +376,7 @@
|
|||
"ignore_notifications_modal.ignore": "Ignorar notificaciones",
|
||||
"ignore_notifications_modal.limited_accounts_title": "¿Ignorar notificaciones de cuentas moderadas?",
|
||||
"ignore_notifications_modal.new_accounts_title": "¿Ignorar notificaciones de cuentas nuevas?",
|
||||
"ignore_notifications_modal.not_followers_title": "¿Ignorar notificaciones de personas que no te sigue?",
|
||||
"ignore_notifications_modal.not_followers_title": "¿Ignorar notificaciones de personas que no te siguen?",
|
||||
"ignore_notifications_modal.not_following_title": "¿Ignorar notificaciones de personas a las que no sigues?",
|
||||
"ignore_notifications_modal.private_mentions_title": "¿Ignorar notificaciones de menciones privadas no solicitadas?",
|
||||
"interaction_modal.description.favourite": "Con una cuenta en Mastodon, puedes marcar como favorita esta publicación para que el autor sepa que te gusta, y guardala para más adelante.",
|
||||
|
@ -457,6 +457,7 @@
|
|||
"lists.subheading": "Tus listas",
|
||||
"load_pending": "{count, plural, one {# nuevo elemento} other {# nuevos elementos}}",
|
||||
"loading_indicator.label": "Cargando…",
|
||||
"media_gallery.hide": "Ocultar",
|
||||
"moved_to_account_banner.text": "Tu cuenta {disabledAccount} está actualmente deshabilitada porque te has mudado a {movedToAccount}.",
|
||||
"mute_modal.hide_from_notifications": "Ocultar de las notificaciones",
|
||||
"mute_modal.hide_options": "Ocultar opciones",
|
||||
|
@ -558,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Nuevas denuncias:",
|
||||
"notifications.column_settings.admin.sign_up": "Registros nuevos:",
|
||||
"notifications.column_settings.alert": "Notificaciones de escritorio",
|
||||
"notifications.column_settings.beta.category": "Características experimentales",
|
||||
"notifications.column_settings.beta.grouping": "Agrupar notificaciones",
|
||||
"notifications.column_settings.favourite": "Favoritos:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Mostrar todas las categorías",
|
||||
"notifications.column_settings.filter_bar.category": "Barra de filtrado rápido",
|
||||
|
@ -779,6 +778,7 @@
|
|||
"status.bookmark": "Añadir marcador",
|
||||
"status.cancel_reblog_private": "Eliminar retoot",
|
||||
"status.cannot_reblog": "Este toot no puede retootearse",
|
||||
"status.continued_thread": "Continuó el hilo",
|
||||
"status.copy": "Copiar enlace al estado",
|
||||
"status.delete": "Borrar",
|
||||
"status.detailed_status": "Vista de conversación detallada",
|
||||
|
@ -787,7 +787,7 @@
|
|||
"status.edit": "Editar",
|
||||
"status.edited": "Última edición {date}",
|
||||
"status.edited_x_times": "Editado {count, plural, one {{count} time} other {{count} veces}}",
|
||||
"status.embed": "Incrustado",
|
||||
"status.embed": "Obtener código para incrustar",
|
||||
"status.favourite": "Favorito",
|
||||
"status.favourites": "{count, plural, one {favorito} other {favoritos}}",
|
||||
"status.filter": "Filtrar esta publicación",
|
||||
|
@ -812,6 +812,7 @@
|
|||
"status.reblogs.empty": "Nadie retooteó este toot todavía. Cuando alguien lo haga, aparecerá aquí.",
|
||||
"status.redraft": "Borrar y volver a borrador",
|
||||
"status.remove_bookmark": "Eliminar marcador",
|
||||
"status.replied_in_thread": "Respondió en el hilo",
|
||||
"status.replied_to": "Respondió a {name}",
|
||||
"status.reply": "Responder",
|
||||
"status.replyAll": "Responder al hilo",
|
||||
|
|
|
@ -376,7 +376,7 @@
|
|||
"ignore_notifications_modal.ignore": "Ignorar notificaciones",
|
||||
"ignore_notifications_modal.limited_accounts_title": "¿Ignorar notificaciones de cuentas moderadas?",
|
||||
"ignore_notifications_modal.new_accounts_title": "¿Ignorar notificaciones de cuentas nuevas?",
|
||||
"ignore_notifications_modal.not_followers_title": "¿Ignorar notificaciones de personas que no te sigue?",
|
||||
"ignore_notifications_modal.not_followers_title": "¿Ignorar notificaciones de personas que no te siguen?",
|
||||
"ignore_notifications_modal.not_following_title": "¿Ignorar notificaciones de personas a las que no sigues?",
|
||||
"ignore_notifications_modal.private_mentions_title": "¿Ignorar notificaciones de menciones privadas no solicitadas?",
|
||||
"interaction_modal.description.favourite": "Con una cuenta en Mastodon, puedes marcar como favorita esta publicación para que el autor sepa que te gusta, y guardala para más adelante.",
|
||||
|
@ -457,6 +457,7 @@
|
|||
"lists.subheading": "Tus listas",
|
||||
"load_pending": "{count, plural, one {# nuevo elemento} other {# nuevos elementos}}",
|
||||
"loading_indicator.label": "Cargando…",
|
||||
"media_gallery.hide": "Ocultar",
|
||||
"moved_to_account_banner.text": "Tu cuenta {disabledAccount} está actualmente deshabilitada porque te has mudado a {movedToAccount}.",
|
||||
"mute_modal.hide_from_notifications": "Ocultar de las notificaciones",
|
||||
"mute_modal.hide_options": "Ocultar opciones",
|
||||
|
@ -558,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Nuevos informes:",
|
||||
"notifications.column_settings.admin.sign_up": "Nuevos registros:",
|
||||
"notifications.column_settings.alert": "Notificaciones de escritorio",
|
||||
"notifications.column_settings.beta.category": "Características experimentales",
|
||||
"notifications.column_settings.beta.grouping": "Agrupar notificaciones",
|
||||
"notifications.column_settings.favourite": "Favoritos:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Mostrar todas las categorías",
|
||||
"notifications.column_settings.filter_bar.category": "Barra de filtrado rápido",
|
||||
|
@ -779,6 +778,7 @@
|
|||
"status.bookmark": "Añadir marcador",
|
||||
"status.cancel_reblog_private": "Deshacer impulso",
|
||||
"status.cannot_reblog": "Esta publicación no se puede impulsar",
|
||||
"status.continued_thread": "Continuó el hilo",
|
||||
"status.copy": "Copiar enlace a la publicación",
|
||||
"status.delete": "Borrar",
|
||||
"status.detailed_status": "Vista de conversación detallada",
|
||||
|
@ -787,7 +787,7 @@
|
|||
"status.edit": "Editar",
|
||||
"status.edited": "Última edición {date}",
|
||||
"status.edited_x_times": "Editado {count, plural, one {{count} vez} other {{count} veces}}",
|
||||
"status.embed": "Incrustado",
|
||||
"status.embed": "Obtener código para incrustar",
|
||||
"status.favourite": "Favorito",
|
||||
"status.favourites": "{count, plural, one {favorito} other {favoritos}}",
|
||||
"status.filter": "Filtrar esta publicación",
|
||||
|
@ -812,6 +812,7 @@
|
|||
"status.reblogs.empty": "Nadie ha impulsado esta publicación todavía. Cuando alguien lo haga, aparecerá aquí.",
|
||||
"status.redraft": "Borrar y volver a borrador",
|
||||
"status.remove_bookmark": "Eliminar marcador",
|
||||
"status.replied_in_thread": "Respondió en el hilo",
|
||||
"status.replied_to": "Respondió a {name}",
|
||||
"status.reply": "Responder",
|
||||
"status.replyAll": "Responder al hilo",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"lists.subheading": "Sinu nimekirjad",
|
||||
"load_pending": "{count, plural, one {# uus kirje} other {# uut kirjet}}",
|
||||
"loading_indicator.label": "Laadimine…",
|
||||
"media_gallery.hide": "Peida",
|
||||
"moved_to_account_banner.text": "Kontot {disabledAccount} ei ole praegu võimalik kasutada, sest kolisid kontole {movedToAccount}.",
|
||||
"mute_modal.hide_from_notifications": "Peida teavituste hulgast",
|
||||
"mute_modal.hide_options": "Peida valikud",
|
||||
|
@ -558,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Uued teavitused:",
|
||||
"notifications.column_settings.admin.sign_up": "Uued kasutajad:",
|
||||
"notifications.column_settings.alert": "Töölauateated",
|
||||
"notifications.column_settings.beta.category": "Eksperimentaalsed oskused",
|
||||
"notifications.column_settings.beta.grouping": "Teavituste rühmitamine",
|
||||
"notifications.column_settings.favourite": "Lemmikud:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Näita kõiki kategooriaid",
|
||||
"notifications.column_settings.filter_bar.category": "Kiirfiltri riba",
|
||||
|
@ -779,6 +778,7 @@
|
|||
"status.bookmark": "Järjehoidja",
|
||||
"status.cancel_reblog_private": "Lõpeta jagamine",
|
||||
"status.cannot_reblog": "Seda postitust ei saa jagada",
|
||||
"status.continued_thread": "Jätkatud lõim",
|
||||
"status.copy": "Kopeeri postituse link",
|
||||
"status.delete": "Kustuta",
|
||||
"status.detailed_status": "Detailne vestluskuva",
|
||||
|
@ -787,7 +787,7 @@
|
|||
"status.edit": "Muuda",
|
||||
"status.edited": "Viimati muudetud {date}",
|
||||
"status.edited_x_times": "Muudetud {count, plural, one{{count} kord} other {{count} korda}}",
|
||||
"status.embed": "Manustamine",
|
||||
"status.embed": "Hangi manustamiskood",
|
||||
"status.favourite": "Lemmik",
|
||||
"status.favourites": "{count, plural, one {lemmik} other {lemmikud}}",
|
||||
"status.filter": "Filtreeri seda postitust",
|
||||
|
@ -812,6 +812,7 @@
|
|||
"status.reblogs.empty": "Keegi pole seda postitust veel jaganud. Kui keegi seda teeb, näeb seda siin.",
|
||||
"status.redraft": "Kustuta & alga uuesti",
|
||||
"status.remove_bookmark": "Eemalda järjehoidja",
|
||||
"status.replied_in_thread": "Vastatud lõimes",
|
||||
"status.replied_to": "Vastas kasutajale {name}",
|
||||
"status.reply": "Vasta",
|
||||
"status.replyAll": "Vasta lõimele",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"lists.subheading": "Zure zerrendak",
|
||||
"load_pending": "{count, plural, one {elementu berri #} other {# elementu berri}}",
|
||||
"loading_indicator.label": "Kargatzen…",
|
||||
"media_gallery.hide": "Ezkutatu",
|
||||
"moved_to_account_banner.text": "Zure {disabledAccount} kontua desgaituta dago une honetan, {movedToAccount} kontura aldatu zinelako.",
|
||||
"mute_modal.hide_from_notifications": "Ezkutatu jakinarazpenetatik",
|
||||
"mute_modal.hide_options": "Ezkutatu aukerak",
|
||||
|
@ -554,8 +555,6 @@
|
|||
"notifications.column_settings.admin.report": "Txosten berriak:",
|
||||
"notifications.column_settings.admin.sign_up": "Izen-emate berriak:",
|
||||
"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.filter_bar.advanced": "Bistaratu kategoria guztiak",
|
||||
"notifications.column_settings.filter_bar.category": "Iragazki-barra bizkorra",
|
||||
|
@ -775,6 +774,7 @@
|
|||
"status.bookmark": "Laster-marka",
|
||||
"status.cancel_reblog_private": "Kendu bultzada",
|
||||
"status.cannot_reblog": "Bidalketa honi ezin zaio bultzada eman",
|
||||
"status.continued_thread": "Harian jarraitu zuen",
|
||||
"status.copy": "Kopiatu bidalketaren esteka",
|
||||
"status.delete": "Ezabatu",
|
||||
"status.detailed_status": "Elkarrizketaren ikuspegi xehetsua",
|
||||
|
@ -783,7 +783,7 @@
|
|||
"status.edit": "Editatu",
|
||||
"status.edited": "Azken edizioa: {date}",
|
||||
"status.edited_x_times": "{count, plural, one {behin} other {{count} aldiz}} editatua",
|
||||
"status.embed": "Txertatu",
|
||||
"status.embed": "Lortu txertatzeko kodea",
|
||||
"status.favourite": "Gogokoa",
|
||||
"status.favourites": "{count, plural, one {gogoko} other {gogoko}}",
|
||||
"status.filter": "Iragazi bidalketa hau",
|
||||
|
@ -808,6 +808,7 @@
|
|||
"status.reblogs.empty": "Inork ez dio bultzada eman bidalketa honi oraindik. Inork egiten badu, hemen agertuko da.",
|
||||
"status.redraft": "Ezabatu eta berridatzi",
|
||||
"status.remove_bookmark": "Kendu laster-marka",
|
||||
"status.replied_in_thread": "Harian erantzun zuen",
|
||||
"status.replied_to": "{name} erabiltzaileari erantzuna",
|
||||
"status.reply": "Erantzun",
|
||||
"status.replyAll": "Erantzun harian",
|
||||
|
|
|
@ -447,6 +447,7 @@
|
|||
"lists.subheading": "سیاهههایتان",
|
||||
"load_pending": "{count, plural, one {# مورد جدید} other {# مورد جدید}}",
|
||||
"loading_indicator.label": "در حال بارگذاری…",
|
||||
"media_gallery.hide": "نهفتن",
|
||||
"moved_to_account_banner.text": "حسابتان {disabledAccount} اکنون از کار افتاده؛ چرا که به {movedToAccount} منتقل شدید.",
|
||||
"mute_modal.hide_from_notifications": "نهفتن از آگاهیها",
|
||||
"mute_modal.hide_options": "گزینههای نهفتن",
|
||||
|
@ -487,9 +488,13 @@
|
|||
"notification.admin.report": "{name}، {target} را گزارش داد",
|
||||
"notification.admin.report_statuses_other": "{name}، {target} را گزارش داد",
|
||||
"notification.admin.sign_up": "{name} ثبت نام کرد",
|
||||
"notification.admin.sign_up.name_and_others": "{name} و {count, plural, one {# نفر دیگر} other {# نفر دیگر}} ثبتنام کردند",
|
||||
"notification.favourite": "{name} فرستهتان را برگزید",
|
||||
"notification.favourite.name_and_others_with_link": "{name} و <a>{count, plural, one {# نفر دیگر} other {# نفر دیگر}}</a> فرستهتان را برگزیدند",
|
||||
"notification.follow": "{name} پیگیرتان شد",
|
||||
"notification.follow.name_and_others": "{name} و {count, plural, one {# نفر دیگر} other {# نفر دیگر}} پیتان گرفتند",
|
||||
"notification.follow_request": "{name} درخواست پیگیریتان را داد",
|
||||
"notification.follow_request.name_and_others": "{name} و {count, plural, one {# نفر دیگر} other {# نفر دیگر}} درخواست پیگیریتان را دادند",
|
||||
"notification.label.mention": "اشاره",
|
||||
"notification.label.private_mention": "اشارهٔ خصوصی",
|
||||
"notification.label.private_reply": "پاسخ خصوصی",
|
||||
|
@ -507,6 +512,7 @@
|
|||
"notification.own_poll": "نظرسنجیتان پایان یافت",
|
||||
"notification.poll": "نظرسنجیای که در آن رأی دادید به پایان رسید",
|
||||
"notification.reblog": "{name} فرستهتان را تقویت کرد",
|
||||
"notification.reblog.name_and_others_with_link": "{name} و <a>{count, plural, one {# نفر دیگر} other {# نفر دیگر}}</a> فرستهتان را تقویت کردند",
|
||||
"notification.relationships_severance_event": "قطع ارتباط با {name}",
|
||||
"notification.relationships_severance_event.learn_more": "بیشتر بدانید",
|
||||
"notification.status": "{name} چیزی فرستاد",
|
||||
|
@ -528,8 +534,6 @@
|
|||
"notifications.column_settings.admin.report": "گزارشهای جدید:",
|
||||
"notifications.column_settings.admin.sign_up": "ثبت نامهای جدید:",
|
||||
"notifications.column_settings.alert": "آگاهیهای میزکار",
|
||||
"notifications.column_settings.beta.category": "ویژگیهای آزمایشی",
|
||||
"notifications.column_settings.beta.grouping": "گروهبندی آگاهیها",
|
||||
"notifications.column_settings.favourite": "برگزیدهها:",
|
||||
"notifications.column_settings.filter_bar.advanced": "نمایش همۀ دستهها",
|
||||
"notifications.column_settings.filter_bar.category": "نوار پالایش سریع",
|
||||
|
@ -742,6 +746,7 @@
|
|||
"status.bookmark": "نشانک",
|
||||
"status.cancel_reblog_private": "ناتقویت",
|
||||
"status.cannot_reblog": "این فرسته قابل تقویت نیست",
|
||||
"status.continued_thread": "رشتهٔ دنباله دار",
|
||||
"status.copy": "رونوشت از پیوند فرسته",
|
||||
"status.delete": "حذف",
|
||||
"status.detailed_status": "نمایش کامل گفتگو",
|
||||
|
@ -750,7 +755,6 @@
|
|||
"status.edit": "ویرایش",
|
||||
"status.edited": "آخرین ویرایش {date}",
|
||||
"status.edited_x_times": "{count, plural, one {{count} مرتبه} other {{count} مرتبه}} ویرایش شد",
|
||||
"status.embed": "جاسازی",
|
||||
"status.favourite": "برگزیده",
|
||||
"status.favourites": "{count, plural, one {برگزیده} other {برگزیده}}",
|
||||
"status.filter": "پالایش این فرسته",
|
||||
|
@ -775,6 +779,7 @@
|
|||
"status.reblogs.empty": "هنوز هیچ کسی این فرسته را تقویت نکرده است. وقتی کسی چنین کاری کند، اینجا نمایش داده خواهد شد.",
|
||||
"status.redraft": "حذف و بازنویسی",
|
||||
"status.remove_bookmark": "برداشتن نشانک",
|
||||
"status.replied_in_thread": "در رشته پاسخ داده",
|
||||
"status.replied_to": "به {name} پاسخ داد",
|
||||
"status.reply": "پاسخ",
|
||||
"status.replyAll": "پاسخ به رشته",
|
||||
|
|
|
@ -559,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Uudet raportit:",
|
||||
"notifications.column_settings.admin.sign_up": "Uudet rekisteröitymiset:",
|
||||
"notifications.column_settings.alert": "Työpöytäilmoitukset",
|
||||
"notifications.column_settings.beta.category": "Kokeelliset ominaisuudet",
|
||||
"notifications.column_settings.beta.grouping": "Ryhmittele ilmoitukset",
|
||||
"notifications.column_settings.favourite": "Suosikit:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Näytä kaikki luokat",
|
||||
"notifications.column_settings.filter_bar.category": "Pikasuodatuspalkki",
|
||||
|
@ -789,7 +787,7 @@
|
|||
"status.edit": "Muokkaa",
|
||||
"status.edited": "Viimeksi muokattu {date}",
|
||||
"status.edited_x_times": "Muokattu {count, plural, one {{count} kerran} other {{count} kertaa}}",
|
||||
"status.embed": "Upota",
|
||||
"status.embed": "Hanki upotuskoodi",
|
||||
"status.favourite": "Suosikki",
|
||||
"status.favourites": "{count, plural, one {suosikki} other {suosikkia}}",
|
||||
"status.filter": "Suodata tämä julkaisu",
|
||||
|
|
|
@ -559,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Nýggjar fráboðanir:",
|
||||
"notifications.column_settings.admin.sign_up": "Nýggjar tilmeldingar:",
|
||||
"notifications.column_settings.alert": "Skriviborðsfráboðanir",
|
||||
"notifications.column_settings.beta.category": "Royndarhentleikar",
|
||||
"notifications.column_settings.beta.grouping": "Bólkafráboðanir",
|
||||
"notifications.column_settings.favourite": "Dámdir postar:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Vís allar bólkar",
|
||||
"notifications.column_settings.filter_bar.category": "Skjótfilturbjálki",
|
||||
|
@ -789,7 +787,7 @@
|
|||
"status.edit": "Rætta",
|
||||
"status.edited": "Seinast broytt {date}",
|
||||
"status.edited_x_times": "Rættað {count, plural, one {{count} ferð} other {{count} ferð}}",
|
||||
"status.embed": "Legg inní",
|
||||
"status.embed": "Fá kodu at seta inn",
|
||||
"status.favourite": "Dámdur postur",
|
||||
"status.favourites": "{count, plural, one {yndispostur} other {yndispostar}}",
|
||||
"status.filter": "Filtrera hendan postin",
|
||||
|
|
|
@ -36,6 +36,7 @@
|
|||
"account.followers.empty": "Personne ne suit ce compte pour l'instant.",
|
||||
"account.followers_counter": "{count, plural, one {{counter} abonné·e} other {{counter} abonné·e·s}}",
|
||||
"account.following": "Abonné·e",
|
||||
"account.following_counter": "{count, plural, one {{counter} abonnement} other {{counter} abonnements}}",
|
||||
"account.follows.empty": "Ce compte ne suit personne présentement.",
|
||||
"account.go_to_profile": "Voir ce profil",
|
||||
"account.hide_reblogs": "Masquer les boosts de @{name}",
|
||||
|
@ -456,6 +457,7 @@
|
|||
"lists.subheading": "Vos listes",
|
||||
"load_pending": "{count, plural, one {# nouvel élément} other {# nouveaux éléments}}",
|
||||
"loading_indicator.label": "Chargement…",
|
||||
"media_gallery.hide": "Masquer",
|
||||
"moved_to_account_banner.text": "Votre compte {disabledAccount} est actuellement désactivé parce que vous avez déménagé sur {movedToAccount}.",
|
||||
"mute_modal.hide_from_notifications": "Cacher des notifications",
|
||||
"mute_modal.hide_options": "Masquer les options",
|
||||
|
@ -557,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Nouveaux signalements:",
|
||||
"notifications.column_settings.admin.sign_up": "Nouvelles inscriptions:",
|
||||
"notifications.column_settings.alert": "Notifications navigateur",
|
||||
"notifications.column_settings.beta.category": "Fonctionnalités expérimentales",
|
||||
"notifications.column_settings.beta.grouping": "Grouper les notifications",
|
||||
"notifications.column_settings.favourite": "Favoris:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Afficher toutes les catégories",
|
||||
"notifications.column_settings.filter_bar.category": "Barre de filtre rapide",
|
||||
|
@ -778,6 +778,7 @@
|
|||
"status.bookmark": "Ajouter aux signets",
|
||||
"status.cancel_reblog_private": "Débooster",
|
||||
"status.cannot_reblog": "Cette publication ne peut pas être boostée",
|
||||
"status.continued_thread": "Suite du fil",
|
||||
"status.copy": "Copier un lien vers cette publication",
|
||||
"status.delete": "Supprimer",
|
||||
"status.detailed_status": "Vue détaillée de la conversation",
|
||||
|
@ -786,7 +787,7 @@
|
|||
"status.edit": "Modifier",
|
||||
"status.edited": "Dernière modification le {date}",
|
||||
"status.edited_x_times": "Modifiée {count, plural, one {{count} fois} other {{count} fois}}",
|
||||
"status.embed": "Intégrer",
|
||||
"status.embed": "Obtenir le code d'intégration",
|
||||
"status.favourite": "Ajouter aux favoris",
|
||||
"status.favourites": "{count, plural, one {favori} other {favoris}}",
|
||||
"status.filter": "Filtrer cette publication",
|
||||
|
@ -811,6 +812,7 @@
|
|||
"status.reblogs.empty": "Personne n’a encore boosté cette publication. Lorsque quelqu’un le fera, elle apparaîtra ici.",
|
||||
"status.redraft": "Supprimer et réécrire",
|
||||
"status.remove_bookmark": "Retirer des signets",
|
||||
"status.replied_in_thread": "A répondu dans un fil de discussion",
|
||||
"status.replied_to": "A répondu à {name}",
|
||||
"status.reply": "Répondre",
|
||||
"status.replyAll": "Répondre à cette discussion",
|
||||
|
|
|
@ -36,6 +36,7 @@
|
|||
"account.followers.empty": "Personne ne suit cet·te utilisateur·rice pour l’instant.",
|
||||
"account.followers_counter": "{count, plural, one {{counter} abonné·e} other {{counter} abonné·e·s}}",
|
||||
"account.following": "Abonnements",
|
||||
"account.following_counter": "{count, plural, one {{counter} abonnement} other {{counter} abonnements}}",
|
||||
"account.follows.empty": "Cet·te utilisateur·rice ne suit personne pour l’instant.",
|
||||
"account.go_to_profile": "Aller au profil",
|
||||
"account.hide_reblogs": "Masquer les partages de @{name}",
|
||||
|
@ -456,6 +457,7 @@
|
|||
"lists.subheading": "Vos listes",
|
||||
"load_pending": "{count, plural, one {# nouvel élément} other {# nouveaux éléments}}",
|
||||
"loading_indicator.label": "Chargement…",
|
||||
"media_gallery.hide": "Masquer",
|
||||
"moved_to_account_banner.text": "Votre compte {disabledAccount} est actuellement désactivé parce que vous l'avez déplacé à {movedToAccount}.",
|
||||
"mute_modal.hide_from_notifications": "Cacher des notifications",
|
||||
"mute_modal.hide_options": "Masquer les options",
|
||||
|
@ -557,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Nouveaux signalements :",
|
||||
"notifications.column_settings.admin.sign_up": "Nouvelles inscriptions :",
|
||||
"notifications.column_settings.alert": "Notifications du navigateur",
|
||||
"notifications.column_settings.beta.category": "Fonctionnalités expérimentales",
|
||||
"notifications.column_settings.beta.grouping": "Grouper les notifications",
|
||||
"notifications.column_settings.favourite": "Favoris :",
|
||||
"notifications.column_settings.filter_bar.advanced": "Afficher toutes les catégories",
|
||||
"notifications.column_settings.filter_bar.category": "Barre de filtre rapide",
|
||||
|
@ -778,6 +778,7 @@
|
|||
"status.bookmark": "Ajouter aux marque-pages",
|
||||
"status.cancel_reblog_private": "Annuler le partage",
|
||||
"status.cannot_reblog": "Ce message ne peut pas être partagé",
|
||||
"status.continued_thread": "Suite du fil",
|
||||
"status.copy": "Copier le lien vers le message",
|
||||
"status.delete": "Supprimer",
|
||||
"status.detailed_status": "Vue détaillée de la conversation",
|
||||
|
@ -786,7 +787,7 @@
|
|||
"status.edit": "Modifier",
|
||||
"status.edited": "Dernière modification le {date}",
|
||||
"status.edited_x_times": "Modifié {count, plural, one {{count} fois} other {{count} fois}}",
|
||||
"status.embed": "Intégrer",
|
||||
"status.embed": "Obtenir le code d'intégration",
|
||||
"status.favourite": "Ajouter aux favoris",
|
||||
"status.favourites": "{count, plural, one {favori} other {favoris}}",
|
||||
"status.filter": "Filtrer ce message",
|
||||
|
@ -794,7 +795,7 @@
|
|||
"status.history.edited": "modifié par {name} {date}",
|
||||
"status.load_more": "Charger plus",
|
||||
"status.media.open": "Cliquez pour ouvrir",
|
||||
"status.media.show": "Cliquez pour voir",
|
||||
"status.media.show": "Cliquer pour afficher",
|
||||
"status.media_hidden": "Média caché",
|
||||
"status.mention": "Mentionner @{name}",
|
||||
"status.more": "Plus",
|
||||
|
@ -811,6 +812,7 @@
|
|||
"status.reblogs.empty": "Personne n’a encore partagé ce message. Lorsque quelqu’un le fera, il apparaîtra ici.",
|
||||
"status.redraft": "Supprimer et réécrire",
|
||||
"status.remove_bookmark": "Retirer des marque-pages",
|
||||
"status.replied_in_thread": "A répondu dans un fil de discussion",
|
||||
"status.replied_to": "En réponse à {name}",
|
||||
"status.reply": "Répondre",
|
||||
"status.replyAll": "Répondre au fil",
|
||||
|
|
|
@ -558,8 +558,6 @@
|
|||
"notifications.column_settings.admin.report": "Nije rapportaazjes:",
|
||||
"notifications.column_settings.admin.sign_up": "Nije registraasjes:",
|
||||
"notifications.column_settings.alert": "Desktopmeldingen",
|
||||
"notifications.column_settings.beta.category": "Eksperimintele funksjes",
|
||||
"notifications.column_settings.beta.grouping": "Notifikaasjes groepearje",
|
||||
"notifications.column_settings.favourite": "Favoriten:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Alle kategoryen toane",
|
||||
"notifications.column_settings.filter_bar.category": "Flugge filterbalke",
|
||||
|
@ -787,7 +785,6 @@
|
|||
"status.edit": "Bewurkje",
|
||||
"status.edited": "Lêst bywurke op {date}",
|
||||
"status.edited_x_times": "{count, plural, one {{count} kear} other {{count} kearen}} bewurke",
|
||||
"status.embed": "Ynslute",
|
||||
"status.favourite": "Favoryt",
|
||||
"status.favourites": "{count, plural, one {favoryt} other {favoriten}}",
|
||||
"status.filter": "Dit berjocht filterje",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"lists.subheading": "Do liostaí",
|
||||
"load_pending": "{count, plural, one {# mír nua} two {# mír nua} few {# mír nua} many {# mír nua} other {# mír nua}}",
|
||||
"loading_indicator.label": "Á lódáil…",
|
||||
"media_gallery.hide": "Folaigh",
|
||||
"moved_to_account_banner.text": "Tá do chuntas {disabledAccount} díchumasaithe faoi láthair toisc gur bhog tú go {movedToAccount}.",
|
||||
"mute_modal.hide_from_notifications": "Folaigh ó fhógraí",
|
||||
"mute_modal.hide_options": "Folaigh roghanna",
|
||||
|
@ -558,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Tuairiscí nua:",
|
||||
"notifications.column_settings.admin.sign_up": "Clárúcháin nua:",
|
||||
"notifications.column_settings.alert": "Fógraí deisce",
|
||||
"notifications.column_settings.beta.category": "Gnéithe turgnamhacha",
|
||||
"notifications.column_settings.beta.grouping": "Fógraí grúpa",
|
||||
"notifications.column_settings.favourite": "Ceanáin:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Taispeáin gach catagóir",
|
||||
"notifications.column_settings.filter_bar.category": "Barra scagairí tapa",
|
||||
|
@ -779,6 +778,7 @@
|
|||
"status.bookmark": "Leabharmharcanna",
|
||||
"status.cancel_reblog_private": "Dímhol",
|
||||
"status.cannot_reblog": "Ní féidir an phostáil seo a mholadh",
|
||||
"status.continued_thread": "Snáithe ar lean",
|
||||
"status.copy": "Cóipeáil an nasc chuig an bpostáil",
|
||||
"status.delete": "Scrios",
|
||||
"status.detailed_status": "Amharc comhrá mionsonraithe",
|
||||
|
@ -787,7 +787,7 @@
|
|||
"status.edit": "Cuir in eagar",
|
||||
"status.edited": "Arna chuir in eagar anuas {date}",
|
||||
"status.edited_x_times": "Curtha in eagar {count, plural, one {{count} uair amháin} two {{count} uair} few {{count} uair} many {{count} uair} other {{count} uair}}",
|
||||
"status.embed": "Leabaigh",
|
||||
"status.embed": "Faigh cód leabú",
|
||||
"status.favourite": "Is fearr leat",
|
||||
"status.favourites": "{count, plural, one {a bhfuil grá agat do} two {gráite} few {gráite} many {gráite} other {gráite}}",
|
||||
"status.filter": "Déan scagadh ar an bpostáil seo",
|
||||
|
@ -812,6 +812,7 @@
|
|||
"status.reblogs.empty": "Níor mhol éinne an phostáil seo fós. Nuair a mholfaidh duine éigin í, taispeánfar anseo é sin.",
|
||||
"status.redraft": "Scrios ⁊ athdhréachtaigh",
|
||||
"status.remove_bookmark": "Bain leabharmharc",
|
||||
"status.replied_in_thread": "D'fhreagair sa snáithe",
|
||||
"status.replied_to": "D'fhreagair {name}",
|
||||
"status.reply": "Freagair",
|
||||
"status.replyAll": "Freagair le snáithe",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"lists.subheading": "Na liostaichean agad",
|
||||
"load_pending": "{count, plural, one {# nì ùr} two {# nì ùr} few {# nithean ùra} other {# nì ùr}}",
|
||||
"loading_indicator.label": "’Ga luchdadh…",
|
||||
"media_gallery.hide": "Falaich",
|
||||
"moved_to_account_banner.text": "Tha an cunntas {disabledAccount} agad à comas on a rinn thu imrich gu {movedToAccount}.",
|
||||
"mute_modal.hide_from_notifications": "Falaich o na brathan",
|
||||
"mute_modal.hide_options": "Roghainnean falaich",
|
||||
|
@ -558,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Gearanan ùra:",
|
||||
"notifications.column_settings.admin.sign_up": "Clàraidhean ùra:",
|
||||
"notifications.column_settings.alert": "Brathan deasga",
|
||||
"notifications.column_settings.beta.category": "Gleusan deuchainneil",
|
||||
"notifications.column_settings.beta.grouping": "Buidhnich na brathan",
|
||||
"notifications.column_settings.favourite": "Annsachdan:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Seall a h-uile roinn-seòrsa",
|
||||
"notifications.column_settings.filter_bar.category": "Bàr-criathraidh luath",
|
||||
|
@ -779,6 +778,7 @@
|
|||
"status.bookmark": "Cuir ris na comharran-lìn",
|
||||
"status.cancel_reblog_private": "Na brosnaich tuilleadh",
|
||||
"status.cannot_reblog": "Cha ghabh am post seo brosnachadh",
|
||||
"status.continued_thread": "Pàirt de shnàithlean",
|
||||
"status.copy": "Dèan lethbhreac dhen cheangal dhan phost",
|
||||
"status.delete": "Sguab às",
|
||||
"status.detailed_status": "Mion-shealladh a’ chòmhraidh",
|
||||
|
@ -787,7 +787,7 @@
|
|||
"status.edit": "Deasaich",
|
||||
"status.edited": "An deasachadh mu dheireadh {date}",
|
||||
"status.edited_x_times": "Chaidh a dheasachadh {count, plural, one {{count} turas} two {{count} thuras} few {{count} tursan} other {{count} turas}}",
|
||||
"status.embed": "Leabaich",
|
||||
"status.embed": "Faigh còd leabachaidh",
|
||||
"status.favourite": "Cuir ris na h-annsachdan",
|
||||
"status.favourites": "{count, plural, one {annsachd} two {annsachd} few {annsachdan} other {annsachd}}",
|
||||
"status.filter": "Criathraich am post seo",
|
||||
|
@ -812,6 +812,7 @@
|
|||
"status.reblogs.empty": "Chan deach am post seo a bhrosnachadh le duine sam bith fhathast. Nuair a bhrosnaicheas cuideigin e, nochdaidh iad an-seo.",
|
||||
"status.redraft": "Sguab às ⁊ dèan dreachd ùr",
|
||||
"status.remove_bookmark": "Thoir an comharra-lìn air falbh",
|
||||
"status.replied_in_thread": "Freagairt do shnàithlean",
|
||||
"status.replied_to": "Air {name} fhreagairt",
|
||||
"status.reply": "Freagair",
|
||||
"status.replyAll": "Freagair dhan t-snàithlean",
|
||||
|
|
|
@ -236,8 +236,8 @@
|
|||
"domain_pill.your_handle": "O teu alcume:",
|
||||
"domain_pill.your_server": "O teu fogar dixital, onde están as túas publicacións. Non é do teu agrado? Podes cambiar de servidor cando queiras levando as túas seguidoras contigo.",
|
||||
"domain_pill.your_username": "O teu identificador único neste servidor. É posible que atopes usuarias co mesmo nome de usuaria en outros servidores.",
|
||||
"embed.instructions": "Engade esta publicación ó teu sitio web copiando o seguinte código.",
|
||||
"embed.preview": "Así será mostrado:",
|
||||
"embed.instructions": "Inclúe esta publicación no teu sitio web copiando o seguinte código.",
|
||||
"embed.preview": "Vaise ver así:",
|
||||
"emoji_button.activity": "Actividade",
|
||||
"emoji_button.clear": "Limpar",
|
||||
"emoji_button.custom": "Personalizado",
|
||||
|
@ -559,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Novas denuncias:",
|
||||
"notifications.column_settings.admin.sign_up": "Novas usuarias:",
|
||||
"notifications.column_settings.alert": "Notificacións de escritorio",
|
||||
"notifications.column_settings.beta.category": "Características experimentais",
|
||||
"notifications.column_settings.beta.grouping": "Notificacións de grupo",
|
||||
"notifications.column_settings.favourite": "Favoritas:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Mostrar todas as categorías",
|
||||
"notifications.column_settings.filter_bar.category": "Barra de filtrado rápido",
|
||||
|
@ -789,7 +787,7 @@
|
|||
"status.edit": "Editar",
|
||||
"status.edited": "Última edición {date}",
|
||||
"status.edited_x_times": "Editado {count, plural, one {{count} vez} other {{count} veces}}",
|
||||
"status.embed": "Incrustar",
|
||||
"status.embed": "O código a incluír",
|
||||
"status.favourite": "Favorecer",
|
||||
"status.favourites": "{count, plural, one {favorecemento} other {favorecementos}}",
|
||||
"status.filter": "Filtrar esta publicación",
|
||||
|
|
|
@ -559,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "דו\"חות חדשים",
|
||||
"notifications.column_settings.admin.sign_up": "הרשמות חדשות:",
|
||||
"notifications.column_settings.alert": "התראות לשולחן העבודה",
|
||||
"notifications.column_settings.beta.category": "יכולות ניסיוניות",
|
||||
"notifications.column_settings.beta.grouping": "התראות קבוצה",
|
||||
"notifications.column_settings.favourite": "חיבובים:",
|
||||
"notifications.column_settings.filter_bar.advanced": "להציג את כל הקטגוריות",
|
||||
"notifications.column_settings.filter_bar.category": "שורת סינון מהיר",
|
||||
|
@ -789,7 +787,6 @@
|
|||
"status.edit": "עריכה",
|
||||
"status.edited": "נערך לאחרונה {date}",
|
||||
"status.edited_x_times": "נערך {count, plural, one {פעם {count}} other {{count} פעמים}}",
|
||||
"status.embed": "הטמעה",
|
||||
"status.favourite": "חיבוב",
|
||||
"status.favourites": "{count, plural, one {חיבוב אחד} two {זוג חיבובים} other {# חיבובים}}",
|
||||
"status.filter": "סנן הודעה זו",
|
||||
|
|
|
@ -457,7 +457,6 @@
|
|||
"status.delete": "Obriši",
|
||||
"status.edit": "Uredi",
|
||||
"status.edited_x_times": "Edited {count, plural, one {# time} other {# times}}",
|
||||
"status.embed": "Umetni",
|
||||
"status.filter": "Filtriraj ovu objavu",
|
||||
"status.history.created": "Kreirao/la {name} prije {date}",
|
||||
"status.history.edited": "Uredio/la {name} prije {date}",
|
||||
|
|
|
@ -559,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Új jelentések:",
|
||||
"notifications.column_settings.admin.sign_up": "Új regisztrálók:",
|
||||
"notifications.column_settings.alert": "Asztali értesítések",
|
||||
"notifications.column_settings.beta.category": "Kísérleti funkciók",
|
||||
"notifications.column_settings.beta.grouping": "Csoportértesítések",
|
||||
"notifications.column_settings.favourite": "Kedvencek:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Minden kategória megjelenítése",
|
||||
"notifications.column_settings.filter_bar.category": "Gyorsszűrő sáv",
|
||||
|
@ -789,7 +787,7 @@
|
|||
"status.edit": "Szerkesztés",
|
||||
"status.edited": "Utoljára szerkesztve {date}",
|
||||
"status.edited_x_times": "{count, plural, one {{count} alkalommal} other {{count} alkalommal}} szerkesztve",
|
||||
"status.embed": "Beágyazás",
|
||||
"status.embed": "Beágyazási kód lekérése",
|
||||
"status.favourite": "Kedvenc",
|
||||
"status.favourites": "{count, plural, one {kedvenc} other {kedvenc}}",
|
||||
"status.filter": "E bejegyzés szűrése",
|
||||
|
|
|
@ -448,7 +448,6 @@
|
|||
"status.direct_indicator": "Մասնաւոր յիշատակում",
|
||||
"status.edit": "Խմբագրել",
|
||||
"status.edited_x_times": "Edited {count, plural, one {# time} other {# times}}",
|
||||
"status.embed": "Ներդնել",
|
||||
"status.favourite": "Հավանել",
|
||||
"status.filter": "Զտել այս գրառումը",
|
||||
"status.history.created": "{name}-ը ստեղծել է՝ {date}",
|
||||
|
|
|
@ -355,6 +355,7 @@
|
|||
"hints.profiles.see_more_followers": "Vider plus de sequitores sur {domain}",
|
||||
"hints.profiles.see_more_follows": "Vider plus de sequites sur {domain}",
|
||||
"hints.profiles.see_more_posts": "Vider plus de messages sur {domain}",
|
||||
"hints.threads.replies_may_be_missing": "Responsas de altere servitores pote esser perdite.",
|
||||
"hints.threads.see_more": "Vider plus de responsas sur {domain}",
|
||||
"home.column_settings.show_reblogs": "Monstrar impulsos",
|
||||
"home.column_settings.show_replies": "Monstrar responsas",
|
||||
|
@ -534,8 +535,6 @@
|
|||
"notifications.column_settings.admin.report": "Nove reportos:",
|
||||
"notifications.column_settings.admin.sign_up": "Nove inscriptiones:",
|
||||
"notifications.column_settings.alert": "Notificationes de scriptorio",
|
||||
"notifications.column_settings.beta.category": "Functionalitates experimental",
|
||||
"notifications.column_settings.beta.grouping": "Notificationes de gruppo",
|
||||
"notifications.column_settings.favourite": "Favorites:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Monstrar tote le categorias",
|
||||
"notifications.column_settings.filter_bar.category": "Barra de filtro rapide",
|
||||
|
@ -759,7 +758,6 @@
|
|||
"status.edit": "Modificar",
|
||||
"status.edited": "Ultime modification le {date}",
|
||||
"status.edited_x_times": "Modificate {count, plural, one {{count} vice} other {{count} vices}}",
|
||||
"status.embed": "Incastrar",
|
||||
"status.favourite": "Adder al favorites",
|
||||
"status.favourites": "{count, plural, one {favorite} other {favorites}}",
|
||||
"status.filter": "Filtrar iste message",
|
||||
|
|
|
@ -583,7 +583,6 @@
|
|||
"status.detailed_status": "Tampilan detail percakapan",
|
||||
"status.edit": "Edit",
|
||||
"status.edited_x_times": "Diedit {count, plural, other {{count} kali}}",
|
||||
"status.embed": "Tanam",
|
||||
"status.filter": "Saring kiriman ini",
|
||||
"status.history.created": "{name} membuat {date}",
|
||||
"status.history.edited": "{name} mengedit {date}",
|
||||
|
|
|
@ -698,7 +698,6 @@
|
|||
"status.edit": "Modificar",
|
||||
"status.edited": "Ultimmen actualisat ye {date}",
|
||||
"status.edited_x_times": "Modificat {count, plural, one {{count} vez} other {{count} vezes}}",
|
||||
"status.embed": "Inbedar",
|
||||
"status.favourite": "Favoritisar",
|
||||
"status.favourites": "{count, plural, one {favorit} other {favorites}}",
|
||||
"status.filter": "Filtrar ti-ci posta",
|
||||
|
|
|
@ -589,7 +589,6 @@
|
|||
"status.direct_indicator": "Privata menciono",
|
||||
"status.edit": "Modifikez",
|
||||
"status.edited_x_times": "Modifikesis {count, plural, one {{count} foyo} other {{count} foyi}}",
|
||||
"status.embed": "Eninsertez",
|
||||
"status.favourite": "Favorizar",
|
||||
"status.filter": "Filtragez ca posto",
|
||||
"status.history.created": "{name} kreis ye {date}",
|
||||
|
|
|
@ -559,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Nýjar kærur:",
|
||||
"notifications.column_settings.admin.sign_up": "Nýjar skráningar:",
|
||||
"notifications.column_settings.alert": "Tilkynningar á skjáborði",
|
||||
"notifications.column_settings.beta.category": "Eiginleikar á tilraunastigi",
|
||||
"notifications.column_settings.beta.grouping": "Tilkynningar hópa",
|
||||
"notifications.column_settings.favourite": "Eftirlæti:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Birta alla flokka",
|
||||
"notifications.column_settings.filter_bar.category": "Skyndisíustika",
|
||||
|
@ -789,7 +787,7 @@
|
|||
"status.edit": "Breyta",
|
||||
"status.edited": "Síðast breytt {date}",
|
||||
"status.edited_x_times": "Breytt {count, plural, one {{count} sinni} other {{count} sinnum}}",
|
||||
"status.embed": "Ívefja",
|
||||
"status.embed": "Ná í innfellanlegan kóða",
|
||||
"status.favourite": "Eftirlæti",
|
||||
"status.favourites": "{count, plural, one {eftirlæti} other {eftirlæti}}",
|
||||
"status.filter": "Sía þessa færslu",
|
||||
|
|
|
@ -559,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Nuove segnalazioni:",
|
||||
"notifications.column_settings.admin.sign_up": "Nuove iscrizioni:",
|
||||
"notifications.column_settings.alert": "Notifiche desktop",
|
||||
"notifications.column_settings.beta.category": "Funzioni sperimentali",
|
||||
"notifications.column_settings.beta.grouping": "Notifiche di gruppo",
|
||||
"notifications.column_settings.favourite": "Preferiti:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Mostra tutte le categorie",
|
||||
"notifications.column_settings.filter_bar.category": "Barra del filtro veloce",
|
||||
|
@ -780,6 +778,7 @@
|
|||
"status.bookmark": "Aggiungi segnalibro",
|
||||
"status.cancel_reblog_private": "Annulla reblog",
|
||||
"status.cannot_reblog": "Questo post non può essere condiviso",
|
||||
"status.continued_thread": "Discussione continua",
|
||||
"status.copy": "Copia link al post",
|
||||
"status.delete": "Elimina",
|
||||
"status.detailed_status": "Vista conversazione dettagliata",
|
||||
|
@ -788,7 +787,7 @@
|
|||
"status.edit": "Modifica",
|
||||
"status.edited": "Ultima modifica {date}",
|
||||
"status.edited_x_times": "Modificato {count, plural, one {{count} volta} other {{count} volte}}",
|
||||
"status.embed": "Incorpora",
|
||||
"status.embed": "Ottieni codice incorporato",
|
||||
"status.favourite": "Preferito",
|
||||
"status.favourites": "{count, plural, one {preferito} other {preferiti}}",
|
||||
"status.filter": "Filtra questo post",
|
||||
|
@ -813,6 +812,7 @@
|
|||
"status.reblogs.empty": "Ancora nessuno ha rebloggato questo post. Quando qualcuno lo farà, apparirà qui.",
|
||||
"status.redraft": "Elimina e riscrivi",
|
||||
"status.remove_bookmark": "Rimuovi segnalibro",
|
||||
"status.replied_in_thread": "Ha risposto nella discussione",
|
||||
"status.replied_to": "Risposta a {name}",
|
||||
"status.reply": "Rispondi",
|
||||
"status.replyAll": "Rispondi alla conversazione",
|
||||
|
|
|
@ -666,8 +666,6 @@
|
|||
"notifications.column_settings.admin.report": "新しい通報:",
|
||||
"notifications.column_settings.admin.sign_up": "新規登録:",
|
||||
"notifications.column_settings.alert": "デスクトップ通知",
|
||||
"notifications.column_settings.beta.category": "実験段階の機能",
|
||||
"notifications.column_settings.beta.grouping": "通知をグループにまとめる",
|
||||
"notifications.column_settings.emoji_reaction": "絵文字リアクション",
|
||||
"notifications.column_settings.favourite": "お気に入り:",
|
||||
"notifications.column_settings.filter_bar.advanced": "すべてのカテゴリを表示",
|
||||
|
@ -930,7 +928,6 @@
|
|||
"status.edit": "編集",
|
||||
"status.edited": "最終更新日 {date}",
|
||||
"status.edited_x_times": "{count}回編集",
|
||||
"status.embed": "埋め込み",
|
||||
"status.emoji_reaction": "絵文字リアクション",
|
||||
"status.emoji_reaction.pick": "絵文字を追加する",
|
||||
"status.emoji_reactions": "{count, plural, one {絵文字} other {絵文字}}",
|
||||
|
|
|
@ -222,7 +222,6 @@
|
|||
"status.copy": "Copy link to status",
|
||||
"status.delete": "წაშლა",
|
||||
"status.edited_x_times": "Edited {count, plural, one {# time} other {# times}}",
|
||||
"status.embed": "ჩართვა",
|
||||
"status.load_more": "მეტის ჩატვირთვა",
|
||||
"status.media_hidden": "მედია დამალულია",
|
||||
"status.mention": "ასახელე @{name}",
|
||||
|
|
|
@ -411,7 +411,6 @@
|
|||
"notifications.clear_confirmation": "Tebɣiḍ s tidet ad tekkseḍ akk alɣuten-inek·em i lebda?",
|
||||
"notifications.column_settings.admin.report": "Ineqqisen imaynuten:",
|
||||
"notifications.column_settings.alert": "Alɣuten n tnarit",
|
||||
"notifications.column_settings.beta.grouping": "Segrew alɣuten",
|
||||
"notifications.column_settings.favourite": "Imenyafen:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Sken-d akk taggayin",
|
||||
"notifications.column_settings.filter_bar.category": "Iri n usizdeg uzrib",
|
||||
|
@ -584,7 +583,6 @@
|
|||
"status.direct_indicator": "Abdar uslig",
|
||||
"status.edit": "Ẓreg",
|
||||
"status.edited_x_times": "Tettwaẓreg {count, plural, one {{count} n tikkelt} other {{count} n tikkal}}",
|
||||
"status.embed": "Seddu",
|
||||
"status.favourite": "Amenyaf",
|
||||
"status.favourites": "{count, plural, one {n usmenyaf} other {n ismenyafen}}",
|
||||
"status.filter": "Sizdeg tassufeɣt-a",
|
||||
|
|
|
@ -315,7 +315,6 @@
|
|||
"status.delete": "Өшіру",
|
||||
"status.detailed_status": "Толық пікірталас көрінісі",
|
||||
"status.edited_x_times": "Edited {count, plural, one {# time} other {# times}}",
|
||||
"status.embed": "Embеd",
|
||||
"status.load_more": "Тағы әкел",
|
||||
"status.media_hidden": "Жабық медиа",
|
||||
"status.mention": "Аталым @{name}",
|
||||
|
|
|
@ -559,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "새 신고:",
|
||||
"notifications.column_settings.admin.sign_up": "새로운 가입:",
|
||||
"notifications.column_settings.alert": "데스크탑 알림",
|
||||
"notifications.column_settings.beta.category": "실험적인 기능",
|
||||
"notifications.column_settings.beta.grouping": "알림 그룹화",
|
||||
"notifications.column_settings.favourite": "좋아요:",
|
||||
"notifications.column_settings.filter_bar.advanced": "모든 범주 표시",
|
||||
"notifications.column_settings.filter_bar.category": "빠른 필터 막대",
|
||||
|
@ -788,7 +786,6 @@
|
|||
"status.edit": "수정",
|
||||
"status.edited": "{date}에 마지막으로 편집됨",
|
||||
"status.edited_x_times": "{count, plural, other {{count}}} 번 수정됨",
|
||||
"status.embed": "임베드",
|
||||
"status.favourite": "좋아요",
|
||||
"status.favourites": "{count, plural, other {좋아요}}",
|
||||
"status.filter": "이 게시물을 필터",
|
||||
|
|
|
@ -498,7 +498,6 @@
|
|||
"status.direct_indicator": "Qalkirinê taybet",
|
||||
"status.edit": "Serrast bike",
|
||||
"status.edited_x_times": "{count, plural, one {{count} car} other {{count} car}} hate serrastkirin",
|
||||
"status.embed": "Bi cih bike",
|
||||
"status.filter": "Vê şandiyê parzûn bike",
|
||||
"status.history.created": "{name} {date} afirand",
|
||||
"status.history.edited": "{name} {date} serrast kir",
|
||||
|
|
|
@ -317,7 +317,6 @@
|
|||
"status.delete": "Dilea",
|
||||
"status.detailed_status": "Gwel kesklapp a-vanyl",
|
||||
"status.edited_x_times": "Edited {count, plural, one {# time} other {# times}}",
|
||||
"status.embed": "Staga",
|
||||
"status.load_more": "Karga moy",
|
||||
"status.media_hidden": "Myski kudhys",
|
||||
"status.mention": "Meneges @{name}",
|
||||
|
|
|
@ -490,7 +490,6 @@
|
|||
"notifications.column_settings.admin.report": "Muveos raportos:",
|
||||
"notifications.column_settings.admin.sign_up": "Muevas enrejistrasyones:",
|
||||
"notifications.column_settings.alert": "Avizos de ensimameza",
|
||||
"notifications.column_settings.beta.category": "Funksyones eksperimentalas",
|
||||
"notifications.column_settings.favourite": "Te plazen:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Amostra todas las kategorias",
|
||||
"notifications.column_settings.filter_bar.category": "Vara de filtrado rapido",
|
||||
|
@ -707,7 +706,6 @@
|
|||
"status.edit": "Edita",
|
||||
"status.edited": "Ultima edisyon: {date}",
|
||||
"status.edited_x_times": "Editado {count, plural, one {{count} vez} other {{count} vezes}}",
|
||||
"status.embed": "Inkrusta",
|
||||
"status.favourite": "Te plaze",
|
||||
"status.filter": "Filtra esta publikasyon",
|
||||
"status.history.created": "{name} kriyo {date}",
|
||||
|
|
|
@ -552,8 +552,6 @@
|
|||
"notifications.column_settings.admin.report": "Naujos ataskaitos:",
|
||||
"notifications.column_settings.admin.sign_up": "Naujos registracijos:",
|
||||
"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.filter_bar.advanced": "Rodyti visas kategorijas",
|
||||
"notifications.column_settings.filter_bar.category": "Spartaus filtro juosta",
|
||||
|
@ -779,7 +777,6 @@
|
|||
"status.edit": "Redaguoti",
|
||||
"status.edited": "Paskutinį kartą redaguota {date}",
|
||||
"status.edited_x_times": "Redaguota {count, plural, one {{count} kartą} few {{count} kartus} many {{count} karto} other {{count} kartų}}",
|
||||
"status.embed": "Įterpti",
|
||||
"status.favourite": "Pamėgti",
|
||||
"status.favourites": "{count, plural, one {mėgstamas} few {mėgstamai} many {mėgstamų} other {mėgstamų}}",
|
||||
"status.filter": "Filtruoti šį įrašą",
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
"about.not_available": "Šī informācija nav padarīta pieejama šajā serverī.",
|
||||
"about.powered_by": "Decentralizētu sociālo tīklu nodrošina {mastodon}",
|
||||
"about.rules": "Servera noteikumi",
|
||||
"account.account_note_header": "Personīga piezīme",
|
||||
"account.add_or_remove_from_list": "Pievienot vai Noņemt no sarakstiem",
|
||||
"account.badges.bot": "Automatizēts",
|
||||
"account.badges.group": "Grupa",
|
||||
|
@ -90,7 +91,10 @@
|
|||
"block_modal.show_more": "Parādīt mazāk",
|
||||
"block_modal.they_cant_mention": "Nevar Tevi pieminēt vai sekot Tev.",
|
||||
"block_modal.they_cant_see_posts": "Nevar redzēt Tavus ierakstus, un Tu neredzēsi lietotāja.",
|
||||
"block_modal.title": "Bloķēt lietotāju?",
|
||||
"boost_modal.combo": "Nospied {combo}, lai nākamreiz šo izlaistu",
|
||||
"boost_modal.reblog": "Pastiprināt ierakstu?",
|
||||
"boost_modal.undo_reblog": "Atcelt ieraksta pastiprināšanu?",
|
||||
"bundle_column_error.copy_stacktrace": "Kopēt kļūdu ziņojumu",
|
||||
"bundle_column_error.error.body": "Pieprasīto lapu nevarēja atveidot. Tas varētu būt saistīts ar kļūdu mūsu kodā, vai tā ir pārlūkprogrammas saderības problēma.",
|
||||
"bundle_column_error.error.title": "Ak vai!",
|
||||
|
@ -152,6 +156,7 @@
|
|||
"compose_form.poll.single": "Jāizvēlas viens",
|
||||
"compose_form.poll.switch_to_multiple": "Mainīt aptaujas veidu, lai atļautu vairākas izvēles",
|
||||
"compose_form.poll.switch_to_single": "Mainīt aptaujas veidu, lai atļautu vienu izvēli",
|
||||
"compose_form.poll.type": "Stils",
|
||||
"compose_form.publish": "Iesūtīt",
|
||||
"compose_form.publish_form": "Jauns ieraksts",
|
||||
"compose_form.reply": "Atbildēt",
|
||||
|
@ -163,21 +168,30 @@
|
|||
"confirmations.block.confirm": "Bloķēt",
|
||||
"confirmations.delete.confirm": "Dzēst",
|
||||
"confirmations.delete.message": "Vai tiešām vēlies dzēst šo ierakstu?",
|
||||
"confirmations.delete.title": "Izdzēst ierakstu?",
|
||||
"confirmations.delete_list.confirm": "Dzēst",
|
||||
"confirmations.delete_list.message": "Vai tiešām neatgriezeniski izdzēst šo sarakstu?",
|
||||
"confirmations.delete_list.title": "Izdzēst sarakstu?",
|
||||
"confirmations.discard_edit_media.confirm": "Atmest",
|
||||
"confirmations.discard_edit_media.message": "Ir nesaglabātas izmaiņas informācijas nesēja aprakstā vai priekšskatījumā. Vēlies tās atmest tik un tā?",
|
||||
"confirmations.edit.confirm": "Labot",
|
||||
"confirmations.edit.message": "Labošana pārrakstīs ziņojumu, kas šobrīd tiek sastādīts. Vai tiešām turpināt?",
|
||||
"confirmations.edit.title": "Pārrakstīt ierakstu?",
|
||||
"confirmations.logout.confirm": "Iziet",
|
||||
"confirmations.logout.message": "Vai tiešām vēlies izrakstīties?",
|
||||
"confirmations.logout.title": "Atteikties?",
|
||||
"confirmations.mute.confirm": "Apklusināt",
|
||||
"confirmations.redraft.confirm": "Dzēst un pārrakstīt",
|
||||
"confirmations.redraft.message": "Vai tiešām vēlies dzēst šo ziņu un no jauna noformēt to? Izlase un pastiprinājumi tiks zaudēti, un atbildes uz sākotnējo ziņu tiks atstātas bez autoratlīdzības.",
|
||||
"confirmations.redraft.title": "Dzēst un rakstīt vēlreiz?",
|
||||
"confirmations.reply.confirm": "Atbildēt",
|
||||
"confirmations.reply.message": "Tūlītēja atbildēšana pārrakstīs pašlaik sastādīto ziņu. Vai tiešām turpināt?",
|
||||
"confirmations.reply.title": "Pārrakstīt ierakstu?",
|
||||
"confirmations.unfollow.confirm": "Pārstāt sekot",
|
||||
"confirmations.unfollow.message": "Vai tiešam vairs nevēlies sekot lietotājam {name}?",
|
||||
"confirmations.unfollow.title": "Pārtraukt sekošanu lietotājam?",
|
||||
"content_warning.hide": "Paslēpt ierakstu",
|
||||
"content_warning.show": "Tomēr rādīt",
|
||||
"conversation.delete": "Dzēst sarunu",
|
||||
"conversation.mark_as_read": "Atzīmēt kā izlasītu",
|
||||
"conversation.open": "Skatīt sarunu",
|
||||
|
@ -197,7 +211,11 @@
|
|||
"dismissable_banner.explore_statuses": "Šie ir ieraksti, kas šodien gūst arvien lielāku ievērību visā sociālajā tīklā. Augstāk tiek kārtoti jaunāki ieraksti, kuri tiek vairāk pastiprināti un ievietoti izlasēs.",
|
||||
"dismissable_banner.explore_tags": "Šie tēmturi šobrīd kļūst arvien populārāki cilvēku vidū šajā un citos decentralizētā tīkla serveros.",
|
||||
"dismissable_banner.public_timeline": "Šie ir jaunākie publiskie ieraksti no lietotājiem sociālajā tīmeklī, kuriem {domain} seko cilvēki.",
|
||||
"domain_block_modal.block": "Bloķēt serveri",
|
||||
"domain_block_modal.they_cant_follow": "Neviens šajā serverī nevar Tev sekot.",
|
||||
"domain_block_modal.they_wont_know": "Viņi nezinās, ka tikuši bloķēti.",
|
||||
"domain_block_modal.title": "Bloķēt domēnu?",
|
||||
"domain_block_modal.you_will_lose_followers": "Tiks noņemti visi tavi sekotāji no šī servera.",
|
||||
"domain_pill.server": "Serveris",
|
||||
"domain_pill.username": "Lietotājvārds",
|
||||
"embed.instructions": "Iestrādā šo ziņu savā mājaslapā, kopējot zemāk redzamo kodu.",
|
||||
|
@ -266,6 +284,7 @@
|
|||
"filter_modal.select_filter.subtitle": "Izmanto esošu kategoriju vai izveido jaunu",
|
||||
"filter_modal.select_filter.title": "Filtrēt šo ziņu",
|
||||
"filter_modal.title.status": "Filtrēt ziņu",
|
||||
"filter_warning.matches_filter": "Atbilst filtram “{title}”",
|
||||
"firehose.all": "Visi",
|
||||
"firehose.local": "Šis serveris",
|
||||
"firehose.remote": "Citi serveri",
|
||||
|
@ -274,6 +293,7 @@
|
|||
"follow_requests.unlocked_explanation": "Lai gan Tavs konts nav slēgts, {domain} darbinieki iedomājās, ka Tu varētu vēlēties pašrocīgi pārskatīt sekošanas pieprasījumus no šiem kontiem.",
|
||||
"follow_suggestions.curated_suggestion": "Darbinieku izvēle",
|
||||
"follow_suggestions.dismiss": "Vairs nerādīt",
|
||||
"follow_suggestions.friends_of_friends_longer": "Populārs to cilvēku vidū, kuriem tu seko",
|
||||
"follow_suggestions.personalized_suggestion": "Pielāgots ieteikums",
|
||||
"follow_suggestions.similar_to_recently_followed_longer": "Līdzīgi profieliem, kuriem nesen sāki sekot",
|
||||
"follow_suggestions.view_all": "Skatīt visu",
|
||||
|
@ -304,6 +324,7 @@
|
|||
"hashtag.follow": "Sekot tēmturim",
|
||||
"hashtag.unfollow": "Pārstāt sekot tēmturim",
|
||||
"hashtags.and_other": "… un {count, plural, other {vēl #}}",
|
||||
"hints.threads.replies_may_be_missing": "Var trūkt atbildes no citiem serveriem.",
|
||||
"home.column_settings.show_reblogs": "Rādīt pastiprinātos ierakstus",
|
||||
"home.column_settings.show_replies": "Rādīt atbildes",
|
||||
"home.hide_announcements": "Slēpt paziņojumus",
|
||||
|
@ -649,7 +670,6 @@
|
|||
"status.edit": "Labot",
|
||||
"status.edited": "Pēdējoreiz labots {date}",
|
||||
"status.edited_x_times": "Labots {count, plural, zero {{count} reižu} one {{count} reizi} other {{count} reizes}}",
|
||||
"status.embed": "Iegult",
|
||||
"status.favourite": "Izlasē",
|
||||
"status.favourites": "{count, plural, zero {izlasēs} one {izlasē} other {izlasēs}}",
|
||||
"status.filter": "Filtrē šo ziņu",
|
||||
|
|
|
@ -308,7 +308,6 @@
|
|||
"status.delete": "മായ്ക്കുക",
|
||||
"status.detailed_status": "വിശദമായ സംഭാഷണ കാഴ്ച",
|
||||
"status.edited_x_times": "Edited {count, plural, one {# time} other {# times}}",
|
||||
"status.embed": "ഉൾച്ചേർക്കുക",
|
||||
"status.load_more": "കൂടുതൽ ലോഡു ചെയ്യുക",
|
||||
"status.media_hidden": "മീഡിയ മറച്ചു",
|
||||
"status.mention": "@{name} സൂചിപ്പിക്കുക",
|
||||
|
|
|
@ -613,7 +613,6 @@
|
|||
"status.direct_indicator": "Sebutan peribadi",
|
||||
"status.edit": "Sunting",
|
||||
"status.edited_x_times": "Disunting {count, plural, other {{count} kali}}",
|
||||
"status.embed": "Benaman",
|
||||
"status.favourite": "Kegemaran",
|
||||
"status.filter": "Tapiskan hantaran ini",
|
||||
"status.history.created": "{name} mencipta pada {date}",
|
||||
|
|
|
@ -589,7 +589,6 @@
|
|||
"status.direct_indicator": "သီးသန့်ဖော်ပြခြင်း။",
|
||||
"status.edit": "ပြင်ဆင်ရန်",
|
||||
"status.edited_x_times": "{count, plural, one {{count} time} other {{count} times}} ပြင်ဆင်ခဲ့သည်",
|
||||
"status.embed": "Embed",
|
||||
"status.favourite": "Favorite",
|
||||
"status.filter": "ဤပို့စ်ကို စစ်ထုတ်ပါ",
|
||||
"status.history.created": "{name} က {date} က ဖန်တီးခဲ့သည်",
|
||||
|
|
|
@ -559,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Nieuwe rapportages:",
|
||||
"notifications.column_settings.admin.sign_up": "Nieuwe registraties:",
|
||||
"notifications.column_settings.alert": "Desktopmeldingen",
|
||||
"notifications.column_settings.beta.category": "Experimentele functies",
|
||||
"notifications.column_settings.beta.grouping": "Gegroepeerde meldingen",
|
||||
"notifications.column_settings.favourite": "Favorieten:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Alle categorieën tonen",
|
||||
"notifications.column_settings.filter_bar.category": "Snelle filterbalk",
|
||||
|
@ -789,7 +787,7 @@
|
|||
"status.edit": "Bewerken",
|
||||
"status.edited": "Laatste bewerking op {date}",
|
||||
"status.edited_x_times": "{count, plural, one {{count} keer} other {{count} keer}} bewerkt",
|
||||
"status.embed": "Embedden",
|
||||
"status.embed": "Embed-code verkrijgen",
|
||||
"status.favourite": "Favoriet",
|
||||
"status.favourites": "{count, plural, one {favoriet} other {favorieten}}",
|
||||
"status.filter": "Dit bericht filteren",
|
||||
|
|
|
@ -559,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Nye rapportar:",
|
||||
"notifications.column_settings.admin.sign_up": "Nyleg registrerte:",
|
||||
"notifications.column_settings.alert": "Skrivebordsvarsel",
|
||||
"notifications.column_settings.beta.category": "Eksperimentelle funksjonar",
|
||||
"notifications.column_settings.beta.grouping": "Grupper varslingar",
|
||||
"notifications.column_settings.favourite": "Favorittar:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Vis alle kategoriar",
|
||||
"notifications.column_settings.filter_bar.category": "Snøggfilterline",
|
||||
|
@ -789,7 +787,7 @@
|
|||
"status.edit": "Rediger",
|
||||
"status.edited": "Sist endra {date}",
|
||||
"status.edited_x_times": "Redigert {count, plural, one {{count} gong} other {{count} gonger}}",
|
||||
"status.embed": "Bygg inn",
|
||||
"status.embed": "Få innbyggingskode",
|
||||
"status.favourite": "Favoritt",
|
||||
"status.favourites": "{count, plural, one {favoritt} other {favorittar}}",
|
||||
"status.filter": "Filtrer dette innlegget",
|
||||
|
|
|
@ -727,7 +727,6 @@
|
|||
"status.direct_indicator": "Privat omtale",
|
||||
"status.edit": "Rediger",
|
||||
"status.edited_x_times": "Redigert {count, plural,one {{count} gang} other {{count} ganger}}",
|
||||
"status.embed": "Bygge inn",
|
||||
"status.favourite": "Favoritt",
|
||||
"status.filter": "Filtrer dette innlegget",
|
||||
"status.history.created": "{name} opprettet {date}",
|
||||
|
|
|
@ -505,7 +505,6 @@
|
|||
"status.direct_indicator": "Mencion privada",
|
||||
"status.edit": "Modificar",
|
||||
"status.edited_x_times": "Modificat {count, plural, un {{count} còp} other {{count} còps}}",
|
||||
"status.embed": "Embarcar",
|
||||
"status.favourite": "Apondre als favorits",
|
||||
"status.filter": "Filtrar aquesta publicacion",
|
||||
"status.history.created": "{name} o creèt lo {date}",
|
||||
|
|
|
@ -320,7 +320,6 @@
|
|||
"status.delete": "ਹਟਾਓ",
|
||||
"status.edit": "ਸੋਧ",
|
||||
"status.edited_x_times": "Edited {count, plural, one {# time} other {# times}}",
|
||||
"status.embed": "ਮੜ੍ਹੋ",
|
||||
"status.favourite": "ਪਸੰਦ",
|
||||
"status.history.created": "{name} ਨੇ {date} ਨੂੰ ਬਣਾਇਆ",
|
||||
"status.history.edited": "{name} ਨੇ {date} ਨੂੰ ਸੋਧਿਆ",
|
||||
|
|
|
@ -559,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Nowe zgłoszenia:",
|
||||
"notifications.column_settings.admin.sign_up": "Nowe rejestracje:",
|
||||
"notifications.column_settings.alert": "Powiadomienia na pulpicie",
|
||||
"notifications.column_settings.beta.category": "Funkcje eksperymentalne",
|
||||
"notifications.column_settings.beta.grouping": "Powiadomienia grupowe",
|
||||
"notifications.column_settings.favourite": "Ulubione:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Wyświetl wszystkie kategorie",
|
||||
"notifications.column_settings.filter_bar.category": "Szybkie filtrowanie",
|
||||
|
@ -789,7 +787,7 @@
|
|||
"status.edit": "Edytuj",
|
||||
"status.edited": "Ostatnio edytowane {date}",
|
||||
"status.edited_x_times": "Edytowano {count, plural, one {{count} raz} other {{count} razy}}",
|
||||
"status.embed": "Osadź",
|
||||
"status.embed": "Kod osadzenia",
|
||||
"status.favourite": "Dodaj do ulubionych",
|
||||
"status.favourites": "{count, plural, one {polubienie} few {polubienia} other {polubień}}",
|
||||
"status.filter": "Filtruj ten wpis",
|
||||
|
|
|
@ -559,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Novas denúncias:",
|
||||
"notifications.column_settings.admin.sign_up": "Novas inscrições:",
|
||||
"notifications.column_settings.alert": "Notificações no computador",
|
||||
"notifications.column_settings.beta.category": "Recursos experimentais",
|
||||
"notifications.column_settings.beta.grouping": "Agrupar notificações",
|
||||
"notifications.column_settings.favourite": "Favoritos:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Exibir todas as categorias",
|
||||
"notifications.column_settings.filter_bar.category": "Barra de filtro rápido",
|
||||
|
@ -789,7 +787,7 @@
|
|||
"status.edit": "Editar",
|
||||
"status.edited": "Última edição em {date}",
|
||||
"status.edited_x_times": "Editado {count, plural, one {{count} hora} other {{count} vezes}}",
|
||||
"status.embed": "Incorporar",
|
||||
"status.embed": "Obter código de incorporação",
|
||||
"status.favourite": "Favorita",
|
||||
"status.favourites": "{count, plural, one {favorite} other {favorites}}",
|
||||
"status.filter": "Filtrar esta publicação",
|
||||
|
|
|
@ -359,6 +359,8 @@
|
|||
"hints.profiles.see_more_followers": "Ver mais seguidores no {domain}",
|
||||
"hints.profiles.see_more_follows": "Veja mais perfis seguidos em {domain}",
|
||||
"hints.profiles.see_more_posts": "Ver mais publicações em {domain}",
|
||||
"hints.threads.replies_may_be_missing": "As respostas de outros servidores podem estar a faltar.",
|
||||
"hints.threads.see_more": "Veja mais respostas em {domain}",
|
||||
"home.column_settings.show_reblogs": "Mostrar impulsos",
|
||||
"home.column_settings.show_replies": "Mostrar respostas",
|
||||
"home.hide_announcements": "Ocultar comunicações",
|
||||
|
@ -366,6 +368,17 @@
|
|||
"home.pending_critical_update.link": "Ver atualizações",
|
||||
"home.pending_critical_update.title": "Atualização de segurança crítica disponível!",
|
||||
"home.show_announcements": "Exibir comunicações",
|
||||
"ignore_notifications_modal.disclaimer": "O Mastodon não pode informar utilizadores que ignoraste as notificações deles. Ignorar notificações não irá parar as mensagens serem enviadas.",
|
||||
"ignore_notifications_modal.filter_instead": "Filtrar em vez disso",
|
||||
"ignore_notifications_modal.filter_to_act_users": "Ainda poderá aceitar, rejeitar, ou reportar utilizadores",
|
||||
"ignore_notifications_modal.filter_to_avoid_confusion": "A filtragem ajuda a evitar potenciais equívocos",
|
||||
"ignore_notifications_modal.filter_to_review_separately": "Pode rever as notificações filtradas separadamente",
|
||||
"ignore_notifications_modal.ignore": "Ignorar notificações",
|
||||
"ignore_notifications_modal.limited_accounts_title": "Ignorar notificações de contas moderadas?",
|
||||
"ignore_notifications_modal.new_accounts_title": "Ignorar notificações de contas novas?",
|
||||
"ignore_notifications_modal.not_followers_title": "Ignorar notificações de pessoas que não o seguem?",
|
||||
"ignore_notifications_modal.not_following_title": "Ignorar notificações de pessoas que não segue?",
|
||||
"ignore_notifications_modal.private_mentions_title": "Ignorar notificações de Menções Privadas não solicitadas?",
|
||||
"interaction_modal.description.favourite": "Com uma conta no Mastodon, pode adicionar assinalar esta publicação como favorita para que o autor saiba que gostou e guardá-la para mais tarde.",
|
||||
"interaction_modal.description.follow": "Com uma conta no Mastodon, pode seguir {name} para receber as suas publicações na sua página inicial.",
|
||||
"interaction_modal.description.reblog": "Com uma conta no Mastodon, pode impulsionar esta publicação para compartilhá-lo com os seus seguidores.",
|
||||
|
@ -444,6 +457,7 @@
|
|||
"lists.subheading": "As tuas listas",
|
||||
"load_pending": "{count, plural, one {# novo item} other {# novos itens}}",
|
||||
"loading_indicator.label": "A carregar…",
|
||||
"media_gallery.hide": "Esconder",
|
||||
"moved_to_account_banner.text": "A sua conta {disabledAccount} está, no momento, desativada, porque você migrou para {movedToAccount}.",
|
||||
"mute_modal.hide_from_notifications": "Ocultar das notificações",
|
||||
"mute_modal.hide_options": "Ocultar opções",
|
||||
|
@ -455,6 +469,7 @@
|
|||
"mute_modal.you_wont_see_mentions": "Não verá publicações que os mencionem.",
|
||||
"mute_modal.you_wont_see_posts": "Eles podem continuar a ver as suas publicações, mas você não verá as deles.",
|
||||
"navigation_bar.about": "Sobre",
|
||||
"navigation_bar.administration": "Administração",
|
||||
"navigation_bar.advanced_interface": "Abrir na interface web avançada",
|
||||
"navigation_bar.blocks": "Utilizadores bloqueados",
|
||||
"navigation_bar.bookmarks": "Marcadores",
|
||||
|
@ -471,6 +486,7 @@
|
|||
"navigation_bar.follows_and_followers": "Seguindo e seguidores",
|
||||
"navigation_bar.lists": "Listas",
|
||||
"navigation_bar.logout": "Sair",
|
||||
"navigation_bar.moderation": "Moderação",
|
||||
"navigation_bar.mutes": "Utilizadores silenciados",
|
||||
"navigation_bar.opened_in_classic_interface": "Por norma, publicações, contas, e outras páginas específicas são abertas na interface web clássica.",
|
||||
"navigation_bar.personal": "Pessoal",
|
||||
|
@ -486,9 +502,13 @@
|
|||
"notification.admin.report_statuses": "{name} denunicou {target} por {category}",
|
||||
"notification.admin.report_statuses_other": "{name} denunciou {target}",
|
||||
"notification.admin.sign_up": "{name} inscreveu-se",
|
||||
"notification.admin.sign_up.name_and_others": "{name} e {count, plural, one {# outro} other {# outros}} inscreveram-se",
|
||||
"notification.favourite": "{name} assinalou a sua publicação como favorita",
|
||||
"notification.favourite.name_and_others_with_link": "{name} e <a>{count, plural, one {# outro} other {# outros}}</a> assinalou a sua publicação como favorita",
|
||||
"notification.follow": "{name} começou a seguir-te",
|
||||
"notification.follow.name_and_others": "{name} e {count, plural, one {# outro} other {# outros}} começaram a segui-lo",
|
||||
"notification.follow_request": "{name} pediu para segui-lo",
|
||||
"notification.follow_request.name_and_others": "{name} e {count, plural, one {# outro} other {# outros}} pediram para segui-lo",
|
||||
"notification.label.mention": "Menção",
|
||||
"notification.label.private_mention": "Menção privada",
|
||||
"notification.label.private_reply": "Resposta privada",
|
||||
|
@ -506,6 +526,7 @@
|
|||
"notification.own_poll": "A sua sondagem terminou",
|
||||
"notification.poll": "Terminou uma sondagem em que votou",
|
||||
"notification.reblog": "{name} reforçou a tua publicação",
|
||||
"notification.reblog.name_and_others_with_link": "{name} e <a>{count, plural, one {# outro} other {# outros}}</a> reforçaram a sua publicação",
|
||||
"notification.relationships_severance_event": "Perdeu as ligações com {name}",
|
||||
"notification.relationships_severance_event.account_suspension": "Um administrador de {from} suspendeu {target}, o que significa que já não pode receber atualizações dele ou interagir com ele.",
|
||||
"notification.relationships_severance_event.domain_block": "Um administrador de {from} bloqueou {target}, incluindo {followersCount} dos seus seguidores e {followingCount, plural, one {# conta} other {# contas}} que segue.",
|
||||
|
@ -514,21 +535,30 @@
|
|||
"notification.status": "{name} acabou de publicar",
|
||||
"notification.update": "{name} editou uma publicação",
|
||||
"notification_requests.accept": "Aceitar",
|
||||
"notification_requests.accept_multiple": "{count, plural, one {Aceitar # pedidos…} other {Aceitar # pedidos…}}",
|
||||
"notification_requests.confirm_accept_multiple.button": "{count, plural, one {Aceitar pedido} other {Aceitar pedidos}}",
|
||||
"notification_requests.confirm_accept_multiple.message": "Está prestes a aceitar {count, plural, one {um pedido de notificação} other {# pedidos de notificação}}. Tem a certeza de que pretende continuar?",
|
||||
"notification_requests.confirm_accept_multiple.title": "Aceitar pedidos de notificação?",
|
||||
"notification_requests.confirm_dismiss_multiple.button": "{count, plural, one {Rejeitar pedido} other {Rejeitar pedidos}}",
|
||||
"notification_requests.confirm_dismiss_multiple.message": "Está prestes a rejeitar {count, plural, one {um pedido de notificação} other {# pedidos de notificação}}. Não será fácil voltar a {count, plural, one {aceder-lhe} other {aceder-lhes}}. Tem a certeza de que pretende continuar?",
|
||||
"notification_requests.confirm_dismiss_multiple.title": "Rejeitar pedidos de notificação?",
|
||||
"notification_requests.dismiss": "Descartar",
|
||||
"notification_requests.dismiss_multiple": "{count, plural, one {Rejeitar # pedido…} other {Rejeitar # pedidos…}}",
|
||||
"notification_requests.edit_selection": "Editar",
|
||||
"notification_requests.exit_selection": "Concluído",
|
||||
"notification_requests.explainer_for_limited_account": "As notificações desta conta foram filtradas porque a conta foi limitada por um moderador.",
|
||||
"notification_requests.explainer_for_limited_remote_account": "As notificações desta conta foram filtradas porque a conta ou o seu servidor foram limitados por um moderador.",
|
||||
"notification_requests.maximize": "Maximizar",
|
||||
"notification_requests.minimize_banner": "Minimizar o cabeçalho das notificações filtradas",
|
||||
"notification_requests.notifications_from": "Notificações de {name}",
|
||||
"notification_requests.title": "Notificações filtradas",
|
||||
"notification_requests.view": "Ver notificações",
|
||||
"notifications.clear": "Limpar notificações",
|
||||
"notifications.clear_confirmation": "Queres mesmo limpar todas as notificações?",
|
||||
"notifications.clear_title": "Limpar notificações?",
|
||||
"notifications.column_settings.admin.report": "Novas denúncias:",
|
||||
"notifications.column_settings.admin.sign_up": "Novas inscrições:",
|
||||
"notifications.column_settings.alert": "Notificações no ambiente de trabalho",
|
||||
"notifications.column_settings.beta.category": "Funcionalidades experimentais",
|
||||
"notifications.column_settings.beta.grouping": "Agrupar notificações",
|
||||
"notifications.column_settings.favourite": "Favoritos:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Mostrar todas as categorias",
|
||||
"notifications.column_settings.filter_bar.category": "Barra de filtros rápidos",
|
||||
|
@ -557,6 +587,12 @@
|
|||
"notifications.permission_denied": "Notificações no ambiente de trabalho não estão disponíveis porque a permissão, solicitada pelo navegador, foi recusada anteriormente",
|
||||
"notifications.permission_denied_alert": "Notificações no ambiente de trabalho não podem ser ativadas, pois a permissão do navegador foi recusada anteriormente",
|
||||
"notifications.permission_required": "Notificações no ambiente de trabalho não estão disponíveis porque a permissão necessária não foi concedida.",
|
||||
"notifications.policy.accept": "Aceitar",
|
||||
"notifications.policy.accept_hint": "Mostrar nas notificações",
|
||||
"notifications.policy.drop": "Ignorar",
|
||||
"notifications.policy.drop_hint": "Enviar para o vazio, para nunca mais ser visto",
|
||||
"notifications.policy.filter": "Filtrar",
|
||||
"notifications.policy.filter_hint": "Enviar para a caixa de notificações filtradas",
|
||||
"notifications.policy.filter_limited_accounts_hint": "Limitado pelos moderadores do servidor",
|
||||
"notifications.policy.filter_limited_accounts_title": "Contas moderadas",
|
||||
"notifications.policy.filter_new_accounts.hint": "Criada nos últimos {days, plural, one {um dia} other {# dias}}",
|
||||
|
@ -567,6 +603,7 @@
|
|||
"notifications.policy.filter_not_following_title": "Pessoas que você não segue",
|
||||
"notifications.policy.filter_private_mentions_hint": "Filtrado, a menos que seja em resposta à sua própria menção ou se você seguir o remetente",
|
||||
"notifications.policy.filter_private_mentions_title": "Menções privadas não solicitadas",
|
||||
"notifications.policy.title": "Gerir notificações de…",
|
||||
"notifications_permission_banner.enable": "Ativar notificações no ambiente de trabalho",
|
||||
"notifications_permission_banner.how_to_control": "Para receber notificações quando o Mastodon não estiver aberto, ative as notificações no ambiente de trabalho. Depois da sua ativação, pode controlar precisamente quais tipos de interações geram notificações, através do botão {icon} acima.",
|
||||
"notifications_permission_banner.title": "Nunca perca nada",
|
||||
|
@ -741,6 +778,7 @@
|
|||
"status.bookmark": "Guardar nos marcadores",
|
||||
"status.cancel_reblog_private": "Deixar de reforçar",
|
||||
"status.cannot_reblog": "Não é possível partilhar esta publicação",
|
||||
"status.continued_thread": "Continuação da conserva",
|
||||
"status.copy": "Copiar hiperligação para a publicação",
|
||||
"status.delete": "Eliminar",
|
||||
"status.detailed_status": "Vista pormenorizada da conversa",
|
||||
|
@ -749,7 +787,7 @@
|
|||
"status.edit": "Editar",
|
||||
"status.edited": "Última edição em {date}",
|
||||
"status.edited_x_times": "Editado {count, plural,one {{count} vez} other {{count} vezes}}",
|
||||
"status.embed": "Embutir",
|
||||
"status.embed": "Obter código de incorporação",
|
||||
"status.favourite": "Assinalar como favorito",
|
||||
"status.favourites": "{count, plural, one {favorito} other {favoritos}}",
|
||||
"status.filter": "Filtrar esta publicação",
|
||||
|
@ -774,6 +812,7 @@
|
|||
"status.reblogs.empty": "Ainda ninguém reforçou esta publicação. Quando alguém o fizer, ele irá aparecer aqui.",
|
||||
"status.redraft": "Apagar & reescrever",
|
||||
"status.remove_bookmark": "Retirar dos marcadores",
|
||||
"status.replied_in_thread": "Responder na conversa",
|
||||
"status.replied_to": "Respondeu a {name}",
|
||||
"status.reply": "Responder",
|
||||
"status.replyAll": "Responder à conversa",
|
||||
|
|
|
@ -556,7 +556,6 @@
|
|||
"status.direct_indicator": "Mențiune privată",
|
||||
"status.edit": "Modifică",
|
||||
"status.edited_x_times": "Modificată {count, plural, one {o dată} few {de {count} ori} other {de {count} de ori}}",
|
||||
"status.embed": "Înglobează",
|
||||
"status.filter": "Filtrează această postare",
|
||||
"status.history.created": "creată de {name} pe {date}",
|
||||
"status.history.edited": "modificată de {name} pe {date}",
|
||||
|
|
|
@ -502,7 +502,6 @@
|
|||
"notifications.column_settings.admin.report": "Новые жалобы:",
|
||||
"notifications.column_settings.admin.sign_up": "Новые регистрации:",
|
||||
"notifications.column_settings.alert": "Уведомления на рабочем столе",
|
||||
"notifications.column_settings.beta.category": "Экспериментальные функции",
|
||||
"notifications.column_settings.favourite": "Избранные:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Отображать все категории",
|
||||
"notifications.column_settings.filter_bar.category": "Панель сортировки",
|
||||
|
@ -716,7 +715,6 @@
|
|||
"status.edit": "Изменить",
|
||||
"status.edited": "Дата последнего изменения: {date}",
|
||||
"status.edited_x_times": "{count, plural, one {{count} изменение} many {{count} изменений} other {{count} изменения}}",
|
||||
"status.embed": "Встроить на свой сайт",
|
||||
"status.favourite": "Избранное",
|
||||
"status.filter": "Фильтровать этот пост",
|
||||
"status.history.created": "{name} создал {date}",
|
||||
|
|
|
@ -503,7 +503,6 @@
|
|||
"status.detailed_status": "विस्तृतसंभाषणदृश्यम्",
|
||||
"status.edit": "सम्पादय",
|
||||
"status.edited_x_times": "Edited {count, plural, one {{count} वारम्} other {{count} वारम्}}",
|
||||
"status.embed": "निहितम्",
|
||||
"status.filter": "पत्रमिदं फिल्तरं कुरु",
|
||||
"status.history.created": "{name} असृजत् {date}",
|
||||
"status.history.edited": "{name} समपादयत् {date}",
|
||||
|
|
|
@ -421,8 +421,6 @@
|
|||
"notifications.clear_confirmation": "Seguru chi boles isboidare in manera permanente totu is notìficas tuas?",
|
||||
"notifications.column_settings.admin.report": "Informes noos:",
|
||||
"notifications.column_settings.alert": "Notìficas de iscrivania",
|
||||
"notifications.column_settings.beta.category": "Funtzionalidades isperimentales",
|
||||
"notifications.column_settings.beta.grouping": "Notìficas de grupu",
|
||||
"notifications.column_settings.favourite": "Preferidos:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Ammustra totu is categorias",
|
||||
"notifications.column_settings.filter_bar.category": "Barra de filtru lestru",
|
||||
|
@ -545,7 +543,6 @@
|
|||
"status.detailed_status": "Visualizatzione de detàlliu de arresonada",
|
||||
"status.edit": "Modìfica",
|
||||
"status.edited_x_times": "Modificadu {count, plural, one {{count} # borta} other {{count} bortas}}",
|
||||
"status.embed": "Afissa",
|
||||
"status.favourites": "{count, plural, one {preferidu} other {preferidos}}",
|
||||
"status.load_more": "Càrriga·nde àteros",
|
||||
"status.media_hidden": "Elementos multimediales cuados",
|
||||
|
|
|
@ -474,7 +474,6 @@
|
|||
"status.detailed_status": "Detailt conversation view",
|
||||
"status.edit": "Edit",
|
||||
"status.edited_x_times": "Editit {count, plural, one {{count} time} other {{count} times}}",
|
||||
"status.embed": "Embed",
|
||||
"status.filter": "Filter this post",
|
||||
"status.history.created": "{name} creatit {date}",
|
||||
"status.history.edited": "{name} editit {date}",
|
||||
|
|
|
@ -415,7 +415,6 @@
|
|||
"status.detailed_status": "විස්තරාත්මක සංවාද දැක්ම",
|
||||
"status.edit": "සංස්කරණය",
|
||||
"status.edited_x_times": "සංශෝධිතයි {count, plural, one {වාර {count}} other {වාර {count}}}",
|
||||
"status.embed": "කාවැද්දූ",
|
||||
"status.filter": "මෙම ලිපිය පෙරන්න",
|
||||
"status.history.created": "{name} නිර්මාණය {date}",
|
||||
"status.history.edited": "{name} සංස්කරණය {date}",
|
||||
|
|
|
@ -702,7 +702,6 @@
|
|||
"status.edit": "Upraviť",
|
||||
"status.edited": "Naposledy upravený {date}",
|
||||
"status.edited_x_times": "Upravený {count, plural, other {{count}×}}",
|
||||
"status.embed": "Vložiť",
|
||||
"status.favourite": "Ohviezdičkované",
|
||||
"status.filter": "Filtrovanie tohto príspevku",
|
||||
"status.history.created": "Vytvorené účtom {name} {date}",
|
||||
|
|
|
@ -520,8 +520,6 @@
|
|||
"notifications.column_settings.admin.report": "Nove prijave:",
|
||||
"notifications.column_settings.admin.sign_up": "Novi vpisi:",
|
||||
"notifications.column_settings.alert": "Namizna obvestila",
|
||||
"notifications.column_settings.beta.category": "Poskusne funkcionalnosti",
|
||||
"notifications.column_settings.beta.grouping": "Skupine obvestil",
|
||||
"notifications.column_settings.favourite": "Priljubljeni:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Prikaži vse kategorije",
|
||||
"notifications.column_settings.filter_bar.category": "Vrstica za hitro filtriranje",
|
||||
|
@ -746,7 +744,6 @@
|
|||
"status.edit": "Uredi",
|
||||
"status.edited": "Zadnje urejanje {date}",
|
||||
"status.edited_x_times": "Urejeno {count, plural, one {#-krat} two {#-krat} few {#-krat} other {#-krat}}",
|
||||
"status.embed": "Vdelaj",
|
||||
"status.favourite": "Priljubljen_a",
|
||||
"status.favourites": "{count, plural, one {priljubitev} two {priljubitvi} few {priljubitve} other {priljubitev}}",
|
||||
"status.filter": "Filtriraj to objavo",
|
||||
|
|
|
@ -559,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Raportime të reja:",
|
||||
"notifications.column_settings.admin.sign_up": "Regjistrime të reja:",
|
||||
"notifications.column_settings.alert": "Njoftime desktopi",
|
||||
"notifications.column_settings.beta.category": "Veçori eksperimentale",
|
||||
"notifications.column_settings.beta.grouping": "Njoftime grupi",
|
||||
"notifications.column_settings.favourite": "Të parapëlqyer:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Shfaq krejt kategoritë",
|
||||
"notifications.column_settings.filter_bar.category": "Shtyllë filtrimesh të shpejta",
|
||||
|
@ -789,7 +787,7 @@
|
|||
"status.edit": "Përpunojeni",
|
||||
"status.edited": "Përpunuar së fundi më {date}",
|
||||
"status.edited_x_times": "Përpunuar {count, plural, one {{count} herë} other {{count} herë}}",
|
||||
"status.embed": "Trupëzim",
|
||||
"status.embed": "Merrni kod trupëzimi",
|
||||
"status.favourite": "I vini shenjë si të parapëlqyer",
|
||||
"status.favourites": "{count, plural, one {i parapëlqyer} other {të parapëlqyer}}",
|
||||
"status.filter": "Filtroje këtë postim",
|
||||
|
|
|
@ -706,7 +706,6 @@
|
|||
"status.edit": "Uredi",
|
||||
"status.edited": "Poslednje uređivanje {date}",
|
||||
"status.edited_x_times": "Uređeno {count, plural, one {{count} put} other {{count} puta}}",
|
||||
"status.embed": "Ugradi",
|
||||
"status.favourite": "Omiljeno",
|
||||
"status.favourites": "{count, plural, one {# omiljeno} few {# omiljena} other {# omiljenih}}",
|
||||
"status.filter": "Filtriraj ovu objavu",
|
||||
|
|
|
@ -706,7 +706,6 @@
|
|||
"status.edit": "Уреди",
|
||||
"status.edited": "Последње уређивање {date}",
|
||||
"status.edited_x_times": "Уређено {count, plural, one {{count} пут} other {{count} пута}}",
|
||||
"status.embed": "Угради",
|
||||
"status.favourite": "Омиљено",
|
||||
"status.favourites": "{count, plural, one {# омиљено} few {# омиљена} other {# омиљених}}",
|
||||
"status.filter": "Филтрирај ову објаву",
|
||||
|
|
|
@ -554,8 +554,6 @@
|
|||
"notifications.column_settings.admin.report": "Nya rapporter:",
|
||||
"notifications.column_settings.admin.sign_up": "Nya registreringar:",
|
||||
"notifications.column_settings.alert": "Skrivbordsaviseringar",
|
||||
"notifications.column_settings.beta.category": "Experimentella funktioner",
|
||||
"notifications.column_settings.beta.grouping": "Gruppera notifikationer",
|
||||
"notifications.column_settings.favourite": "Favoriter:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Visa alla kategorier",
|
||||
"notifications.column_settings.filter_bar.category": "Snabbfilter",
|
||||
|
@ -783,7 +781,7 @@
|
|||
"status.edit": "Redigera",
|
||||
"status.edited": "Senast ändrad {date}",
|
||||
"status.edited_x_times": "Redigerad {count, plural, one {{count} gång} other {{count} gånger}}",
|
||||
"status.embed": "Bädda in",
|
||||
"status.embed": "Hämta kod för inbäddning",
|
||||
"status.favourite": "Favoritmarkera",
|
||||
"status.favourites": "{count, plural, one {favorit} other {favoriter}}",
|
||||
"status.filter": "Filtrera detta inlägg",
|
||||
|
|
|
@ -345,7 +345,6 @@
|
|||
"status.delete": "நீக்கு",
|
||||
"status.detailed_status": "விரிவான உரையாடல் காட்சி",
|
||||
"status.edited_x_times": "Edited {count, plural, one {# time} other {# times}}",
|
||||
"status.embed": "கிடத்து",
|
||||
"status.load_more": "அதிகமாய் ஏற்று",
|
||||
"status.media_hidden": "மீடியா மறைக்கப்பட்டது",
|
||||
"status.mention": "குறிப்பிடு @{name}",
|
||||
|
|
|
@ -245,7 +245,6 @@
|
|||
"status.delete": "తొలగించు",
|
||||
"status.detailed_status": "వివరణాత్మక సంభాషణ వీక్షణ",
|
||||
"status.edited_x_times": "Edited {count, plural, one {# time} other {# times}}",
|
||||
"status.embed": "ఎంబెడ్",
|
||||
"status.load_more": "మరిన్ని లోడ్ చేయి",
|
||||
"status.media_hidden": "మీడియా దాచబడింది",
|
||||
"status.mention": "@{name}ను ప్రస్తావించు",
|
||||
|
|
|
@ -457,6 +457,7 @@
|
|||
"lists.subheading": "รายการของคุณ",
|
||||
"load_pending": "{count, plural, other {# รายการใหม่}}",
|
||||
"loading_indicator.label": "กำลังโหลด…",
|
||||
"media_gallery.hide": "ซ่อน",
|
||||
"moved_to_account_banner.text": "มีการปิดใช้งานบัญชีของคุณ {disabledAccount} ในปัจจุบันเนื่องจากคุณได้ย้ายไปยัง {movedToAccount}",
|
||||
"mute_modal.hide_from_notifications": "ซ่อนจากการแจ้งเตือน",
|
||||
"mute_modal.hide_options": "ซ่อนตัวเลือก",
|
||||
|
@ -558,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "รายงานใหม่:",
|
||||
"notifications.column_settings.admin.sign_up": "การลงทะเบียนใหม่:",
|
||||
"notifications.column_settings.alert": "การแจ้งเตือนบนเดสก์ท็อป",
|
||||
"notifications.column_settings.beta.category": "คุณลักษณะการทดลอง",
|
||||
"notifications.column_settings.beta.grouping": "การแจ้งเตือนกลุ่ม",
|
||||
"notifications.column_settings.favourite": "รายการโปรด:",
|
||||
"notifications.column_settings.filter_bar.advanced": "แสดงหมวดหมู่ทั้งหมด",
|
||||
"notifications.column_settings.filter_bar.category": "แถบตัวกรองด่วน",
|
||||
|
@ -779,6 +778,7 @@
|
|||
"status.bookmark": "เพิ่มที่คั่นหน้า",
|
||||
"status.cancel_reblog_private": "เลิกดัน",
|
||||
"status.cannot_reblog": "ไม่สามารถดันโพสต์นี้",
|
||||
"status.continued_thread": "กระทู้ต่อเนื่อง",
|
||||
"status.copy": "คัดลอกลิงก์ไปยังโพสต์",
|
||||
"status.delete": "ลบ",
|
||||
"status.detailed_status": "มุมมองการสนทนาโดยละเอียด",
|
||||
|
@ -787,7 +787,7 @@
|
|||
"status.edit": "แก้ไข",
|
||||
"status.edited": "แก้ไขล่าสุดเมื่อ {date}",
|
||||
"status.edited_x_times": "แก้ไข {count, plural, other {{count} ครั้ง}}",
|
||||
"status.embed": "ฝัง",
|
||||
"status.embed": "รับโค้ดฝังตัว",
|
||||
"status.favourite": "ชื่นชอบ",
|
||||
"status.favourites": "{count, plural, other {รายการโปรด}}",
|
||||
"status.filter": "กรองโพสต์นี้",
|
||||
|
@ -812,6 +812,7 @@
|
|||
"status.reblogs.empty": "ยังไม่มีใครดันโพสต์นี้ เมื่อใครสักคนดัน เขาจะปรากฏที่นี่",
|
||||
"status.redraft": "ลบแล้วร่างใหม่",
|
||||
"status.remove_bookmark": "เอาที่คั่นหน้าออก",
|
||||
"status.replied_in_thread": "ตอบกลับในกระทู้",
|
||||
"status.replied_to": "ตอบกลับ {name}",
|
||||
"status.reply": "ตอบกลับ",
|
||||
"status.replyAll": "ตอบกลับกระทู้",
|
||||
|
|
|
@ -359,7 +359,6 @@
|
|||
"status.cancel_reblog_private": "o pini e pana",
|
||||
"status.delete": "o weka",
|
||||
"status.edit": "o ante",
|
||||
"status.embed": "ni o lon insa pi lipu ante",
|
||||
"status.favourite": "o sitelen pona",
|
||||
"status.history.created": "{name} li pali e ni lon {date}",
|
||||
"status.history.edited": "{name} li ante lon {date}",
|
||||
|
|
|
@ -559,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Yeni bildirimler:",
|
||||
"notifications.column_settings.admin.sign_up": "Yeni kayıtlar:",
|
||||
"notifications.column_settings.alert": "Masaüstü bildirimleri",
|
||||
"notifications.column_settings.beta.category": "Deneysel özellikler",
|
||||
"notifications.column_settings.beta.grouping": "Grup bildirimleri",
|
||||
"notifications.column_settings.favourite": "Favorilerin:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Tüm kategorileri görüntüle",
|
||||
"notifications.column_settings.filter_bar.category": "Hızlı filtre çubuğu",
|
||||
|
@ -789,7 +787,7 @@
|
|||
"status.edit": "Düzenle",
|
||||
"status.edited": "Son düzenleme {date}",
|
||||
"status.edited_x_times": "{count, plural, one {{count} kez} other {{count} kez}} düzenlendi",
|
||||
"status.embed": "Gömülü",
|
||||
"status.embed": "Gömme kodunu al",
|
||||
"status.favourite": "Favori",
|
||||
"status.favourites": "{count, plural, one {beğeni} other {beğeni}}",
|
||||
"status.filter": "Bu gönderiyi süzgeçle",
|
||||
|
|
|
@ -410,7 +410,6 @@
|
|||
"status.direct_indicator": "Хосусый искә алу",
|
||||
"status.edit": "Үзгәртү",
|
||||
"status.edited_x_times": "Edited {count, plural, one {# time} other {# times}}",
|
||||
"status.embed": "Веб-биткә кертү",
|
||||
"status.history.created": "{name} ясалды {date}",
|
||||
"status.history.edited": "{name} төзәтте {date}",
|
||||
"status.load_more": "Күбрәк йөкләү",
|
||||
|
|
|
@ -559,8 +559,6 @@
|
|||
"notifications.column_settings.admin.report": "Нові скарги:",
|
||||
"notifications.column_settings.admin.sign_up": "Нові реєстрації:",
|
||||
"notifications.column_settings.alert": "Сповіщення стільниці",
|
||||
"notifications.column_settings.beta.category": "Експериментальні функції",
|
||||
"notifications.column_settings.beta.grouping": "Групові сповіщення",
|
||||
"notifications.column_settings.favourite": "Уподобане:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Показати всі категорії",
|
||||
"notifications.column_settings.filter_bar.category": "Панель швидкого фільтра",
|
||||
|
@ -789,7 +787,7 @@
|
|||
"status.edit": "Редагувати",
|
||||
"status.edited": "Востаннє змінено {date}",
|
||||
"status.edited_x_times": "Відредаговано {count, plural, one {{count} раз} few {{count} рази} many {{counter} разів} other {{counter} разів}}",
|
||||
"status.embed": "Вбудувати",
|
||||
"status.embed": "Отримати код вставки",
|
||||
"status.favourite": "Уподобане",
|
||||
"status.favourites": "{count, plural, one {вподобання} few {вподобання} many {вподобань} other {вподобання}}",
|
||||
"status.filter": "Фільтрувати цей допис",
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue