Merge pull request #599 from kmycode/upstream-20240218

Upstream 20240218
This commit is contained in:
KMY(雪あすか) 2024-02-22 10:20:05 +09:00 committed by GitHub
commit f9100f1d93
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
147 changed files with 3454 additions and 2567 deletions

View file

@ -108,12 +108,6 @@ Rails/FilePath:
Rails/HttpStatus:
EnforcedStyle: numeric
# Reason: Allowed in boot ENV checker
# https://docs.rubocop.org/rubocop-rails/cops_rails.html#railsexit
Rails/Exit:
Exclude:
- 'config/boot.rb'
# Reason: Conflicts with `Lint/UselessMethodDefinition` for inherited controller actions
# https://docs.rubocop.org/rubocop-rails/cops_rails.html#railslexicallyscopedactionfilter
Rails/LexicallyScopedActionFilter:
@ -228,11 +222,6 @@ Style/RedundantBegin:
Style/RescueStandardError:
EnforcedStyle: implicit
# Reason: Simplify some spec layouts
# https://docs.rubocop.org/rubocop/cops_style.html#stylesemicolon
Style/Semicolon:
AllowAsExpressionSeparator: true
# Reason: Originally disabled for CodeClimate, and no config consensus has been found
# https://docs.rubocop.org/rubocop/cops_style.html#stylesymbolarray
Style/SymbolArray:

View file

@ -219,7 +219,7 @@ GEM
docile (1.4.0)
domain_name (0.5.20190701)
unf (>= 0.0.5, < 1.0.0)
doorkeeper (5.6.8)
doorkeeper (5.6.9)
railties (>= 5)
dotenv (2.8.1)
dotenv-rails (2.8.1)
@ -693,7 +693,7 @@ GEM
scenic (1.7.0)
activerecord (>= 4.0.0)
railties (>= 4.0.0)
selenium-webdriver (4.17.0)
selenium-webdriver (4.18.1)
base64 (~> 0.2)
rexml (~> 3.2, >= 3.2.5)
rubyzip (>= 1.2.2, < 3.0)
@ -795,7 +795,7 @@ GEM
webfinger (1.2.0)
activesupport
httpclient (>= 2.4)
webmock (3.20.0)
webmock (3.21.2)
addressable (>= 2.8.0)
crack (>= 0.3.2)
hashdiff (>= 0.4.0, < 2.0.0)
@ -813,7 +813,7 @@ GEM
xorcist (1.1.3)
xpath (3.2.0)
nokogiri (~> 1.8)
zeitwerk (2.6.12)
zeitwerk (2.6.13)
PLATFORMS
ruby

View file

@ -16,6 +16,6 @@ class CustomCssController < ActionController::Base # rubocop:disable Rails/Appli
helper_method :custom_css_styles
def set_user_roles
@user_roles = UserRole.where(highlighted: true).where.not(color: [nil, ''])
@user_roles = UserRole.providing_styles
end
end

View file

@ -8,8 +8,8 @@ import { NavLink, Switch, Route } from 'react-router-dom';
import { connect } from 'react-redux';
import ExploreIcon from '@/material-icons/400-24px/explore.svg?react';
import SearchIcon from '@/material-icons/400-24px/search.svg?react';
import TagIcon from '@/material-icons/400-24px/tag.svg?react';
import Column from 'mastodon/components/column';
import ColumnHeader from 'mastodon/components/column_header';
import Search from 'mastodon/features/compose/containers/search_container';
@ -59,7 +59,7 @@ class Explore extends PureComponent {
<Column bindToDocument={!multiColumn} ref={this.setRef} label={intl.formatMessage(messages.title)}>
<ColumnHeader
icon={isSearching ? 'search' : 'hashtag'}
iconComponent={isSearching ? SearchIcon : TagIcon}
iconComponent={isSearching ? SearchIcon : ExploreIcon}
title={intl.formatMessage(isSearching ? messages.searchResults : messages.title)}
onClick={this.handleHeaderClick}
multiColumn={multiColumn}

View file

@ -21,6 +21,7 @@ import { DisplayName } from 'mastodon/components/display_name';
import { Icon } from 'mastodon/components/icon';
import { IconButton } from 'mastodon/components/icon_button';
import { VerifiedBadge } from 'mastodon/components/verified_badge';
import { domain } from 'mastodon/initial_state';
const messages = defineMessages({
follow: { id: 'account.follow', defaultMessage: 'Follow' },
@ -28,27 +29,43 @@ const messages = defineMessages({
previous: { id: 'lightbox.previous', defaultMessage: 'Previous' },
next: { id: 'lightbox.next', defaultMessage: 'Next' },
dismiss: { id: 'follow_suggestions.dismiss', defaultMessage: "Don't show again" },
friendsOfFriendsHint: { id: 'follow_suggestions.hints.friends_of_friends', defaultMessage: 'This profile is popular among the people you follow.' },
similarToRecentlyFollowedHint: { id: 'follow_suggestions.hints.similar_to_recently_followed', defaultMessage: 'This profile is similar to the profiles you have most recently followed.' },
featuredHint: { id: 'follow_suggestions.hints.featured', defaultMessage: 'This profile has been hand-picked by the {domain} team.' },
mostFollowedHint: { id: 'follow_suggestions.hints.most_followed', defaultMessage: 'This profile is one of the most followed on {domain}.'},
mostInteractionsHint: { id: 'follow_suggestions.hints.most_interactions', defaultMessage: 'This profile has been recently getting a lot of attention on {domain}.' },
});
const Source = ({ id }) => {
let label;
const intl = useIntl();
let label, hint;
switch (id) {
case 'friends_of_friends':
hint = intl.formatMessage(messages.friendsOfFriendsHint);
label = <FormattedMessage id='follow_suggestions.personalized_suggestion' defaultMessage='Personalized suggestion' />;
break;
case 'similar_to_recently_followed':
hint = intl.formatMessage(messages.similarToRecentlyFollowedHint);
label = <FormattedMessage id='follow_suggestions.personalized_suggestion' defaultMessage='Personalized suggestion' />;
break;
case 'featured':
label = <FormattedMessage id='follow_suggestions.curated_suggestion' defaultMessage="Editors' Choice" />;
hint = intl.formatMessage(messages.featuredHint, { domain });
label = <FormattedMessage id='follow_suggestions.curated_suggestion' defaultMessage='Staff pick' />;
break;
case 'most_followed':
hint = intl.formatMessage(messages.mostFollowedHint, { domain });
label = <FormattedMessage id='follow_suggestions.popular_suggestion' defaultMessage='Popular suggestion' />;
break;
case 'most_interactions':
hint = intl.formatMessage(messages.mostInteractionsHint, { domain });
label = <FormattedMessage id='follow_suggestions.popular_suggestion' defaultMessage='Popular suggestion' />;
break;
}
return (
<div className='inline-follow-suggestions__body__scrollable__card__text-stack__source'>
<div className='inline-follow-suggestions__body__scrollable__card__text-stack__source' title={hint}>
<Icon icon={InfoIcon} />
{label}
</div>
@ -92,7 +109,7 @@ const Card = ({ id, sources }) => {
{firstVerifiedField ? <VerifiedBadge link={firstVerifiedField.get('value')} /> : <Source id={sources.get(0)} />}
</div>
<Button text={intl.formatMessage(following ? messages.unfollow : messages.follow)} onClick={handleFollow} />
<Button text={intl.formatMessage(following ? messages.unfollow : messages.follow)} secondary={following} onClick={handleFollow} />
</div>
);
};

View file

@ -8,6 +8,7 @@ import { Link } from 'react-router-dom';
import CirclesIcon from '@/material-icons/400-24px/account_circle-fill.svg?react';
import AlternateEmailIcon from '@/material-icons/400-24px/alternate_email.svg?react';
import BookmarksIcon from '@/material-icons/400-24px/bookmarks-fill.svg?react';
import ExploreIcon from '@/material-icons/400-24px/explore.svg?react';
import PeopleIcon from '@/material-icons/400-24px/group.svg?react';
import HomeIcon from '@/material-icons/400-24px/home-fill.svg?react';
import ListAltIcon from '@/material-icons/400-24px/list_alt.svg?react';
@ -16,7 +17,6 @@ import PublicIcon from '@/material-icons/400-24px/public.svg?react';
import SearchIcon from '@/material-icons/400-24px/search.svg?react';
import SettingsIcon from '@/material-icons/400-24px/settings-fill.svg?react';
import StarIcon from '@/material-icons/400-24px/star-fill.svg?react';
import TagIcon from '@/material-icons/400-24px/tag.svg?react';
import AntennaIcon from '@/material-icons/400-24px/wifi.svg?react';
import { WordmarkLogo } from 'mastodon/components/logo';
import { NavigationPortal } from 'mastodon/components/navigation_portal';
@ -74,7 +74,7 @@ class NavigationPanel extends Component {
const { signedIn, disabledAccountId } = this.context.identity;
const explorer = (trendsEnabled ? (
<ColumnLink transparent to='/explore' icon='hashtag' iconComponent={TagIcon} text={intl.formatMessage(messages.explore)} />
<ColumnLink transparent to='/explore' icon='hashtag' iconComponent={ExploreIcon} text={intl.formatMessage(messages.explore)} />
) : (
<ColumnLink transparent to='/search' icon='search' iconComponent={SearchIcon} text={intl.formatMessage(messages.search)} />
));

View file

@ -277,7 +277,6 @@
"follow_request.authorize": "ترخيص",
"follow_request.reject": "رفض",
"follow_requests.unlocked_explanation": "حتى وإن كان حسابك غير مقفل، يعتقد فريق {domain} أنك قد ترغب في مراجعة طلبات المتابعة من هذه الحسابات يدوياً.",
"follow_suggestions.curated_suggestion": "خيار المحرر",
"follow_suggestions.dismiss": "لا تُظهرها مجدّدًا",
"follow_suggestions.personalized_suggestion": "توصية مخصصة",
"follow_suggestions.popular_suggestion": "توصية رائجة",

View file

@ -199,7 +199,6 @@
"follow_request.authorize": "Autorizar",
"follow_request.reject": "Refugar",
"follow_requests.unlocked_explanation": "Magar que la to cuenta nun seya privada, el personal del dominiu «{domain}» pensó qu'a lo meyor quies revisar manualmente les solicitúes de siguimientu d'estes cuentes.",
"follow_suggestions.curated_suggestion": "Escoyeta del sirvidor",
"follow_suggestions.dismiss": "Nun volver amosar",
"follow_suggestions.personalized_suggestion": "Suxerencia personalizada",
"follow_suggestions.popular_suggestion": "Suxerencia popular",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "Аўтарызацыя",
"follow_request.reject": "Адхіліць",
"follow_requests.unlocked_explanation": "Ваш акаўнт не схаваны, аднак прадстаўнікі {domain} палічылі, што вы можаце захацець праглядзець запыты на падпіску з гэтых профіляў уручную.",
"follow_suggestions.curated_suggestion": "Выбар сервера",
"follow_suggestions.curated_suggestion": "Выбар адміністрацыі",
"follow_suggestions.dismiss": "Не паказваць зноў",
"follow_suggestions.hints.featured": "Гэты профіль быў выбраны ўручную камандай {domain}.",
"follow_suggestions.hints.friends_of_friends": "Гэты профіль папулярны сярод людзей, на якіх вы падпісаліся.",
"follow_suggestions.hints.most_followed": "Гэты профіль - адзін з профіляў з самай вялікай колькасцю падпісак на {domain}.",
"follow_suggestions.hints.most_interactions": "У апошні час гэты профіль прыцягвае шмат увагі на {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Гэты профіль падобны на профілі, на якія вы нядаўна падпісаліся.",
"follow_suggestions.personalized_suggestion": "Персаналізаваная прапанова",
"follow_suggestions.popular_suggestion": "Папулярная прапанова",
"follow_suggestions.view_all": "Праглядзець усё",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "Упълномощаване",
"follow_request.reject": "Отхвърляне",
"follow_requests.unlocked_explanation": "Въпреки че акаунтът ви не е заключен, служителите на {domain} помислиха, че може да искате да преглеждате ръчно заявките за последване на тези профили.",
"follow_suggestions.curated_suggestion": "Избор от редакторите",
"follow_suggestions.curated_suggestion": "Избор на персонал",
"follow_suggestions.dismiss": "Без ново показване",
"follow_suggestions.hints.featured": "Този профил е ръчно подбран от отбора на {domain}.",
"follow_suggestions.hints.friends_of_friends": "Този профил е популярен измежду хората, които следвате.",
"follow_suggestions.hints.most_followed": "Този профил е един от най-следваните при {domain}.",
"follow_suggestions.hints.most_interactions": "Този профил наскоро получи много внимание при {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Този профил е подобен на профилите, които сте последвали наскоро.",
"follow_suggestions.personalized_suggestion": "Персонализирано предложение",
"follow_suggestions.popular_suggestion": "Популярно предложение",
"follow_suggestions.view_all": "Преглед на всички",
@ -471,7 +476,7 @@
"notifications.permission_required": "Известията на работния плот ги няма, щото няма дадено нужното позволение.",
"notifications_permission_banner.enable": "Включване на известията на работния плот",
"notifications_permission_banner.how_to_control": "За да получавате известия, когато Mastodon не е отворен, включете известията на работния плот. Може да управлявате точно кои видове взаимодействия пораждат известия на работния плот чрез бутона {icon} по-горе, след като бъдат включени.",
"notifications_permission_banner.title": "Никога не пропускате нещо",
"notifications_permission_banner.title": "Никога не пропускайте нищо",
"onboarding.action.back": "Върнете ме обратно",
"onboarding.actions.back": "Върнете ме обратно",
"onboarding.actions.go_to_explore": "Виж тенденции",

View file

@ -29,7 +29,7 @@
"account.enable_notifications": "Ma c'hemenn pa vez embannet traoù gant @{name}",
"account.endorse": "Lakaat war-wel war ar profil",
"account.featured_tags.last_status_at": "Toud diwezhañ : {date}",
"account.featured_tags.last_status_never": "Toud ebet",
"account.featured_tags.last_status_never": "Embannadur ebet",
"account.featured_tags.title": "Hashtagoù pennañ {name}",
"account.follow": "Heuliañ",
"account.follow_back": "Heuliañ d'ho tro",
@ -62,7 +62,7 @@
"account.requested_follow": "Gant {name} eo bet goulennet ho heuliañ",
"account.share": "Skignañ profil @{name}",
"account.show_reblogs": "Diskouez skignadennoù @{name}",
"account.statuses_counter": "{count, plural, one {{counter} Toud} two {{counter} Doud} other {{counter} a Doudoù}}",
"account.statuses_counter": "{count, plural, one {{counter} C'hannad} two {{counter} Gannad} other {{counter} a Gannadoù}}",
"account.unblock": "Diverzañ @{name}",
"account.unblock_domain": "Diverzañ an domani {domain}",
"account.unblock_short": "Distankañ",
@ -118,9 +118,9 @@
"column.lists": "Listennoù",
"column.mutes": "Implijer·ion·ezed kuzhet",
"column.notifications": "Kemennoù",
"column.pins": "Toudoù spilhennet",
"column.pins": "Embannadurioù spilhennet",
"column.public": "Red-amzer kevredet",
"column_back_button.label": "Distro",
"column_back_button.label": "Distreiñ",
"column_header.hide_settings": "Kuzhat an arventennoù",
"column_header.moveLeft_settings": "Dilec'hiañ ar bannad a-gleiz",
"column_header.moveRight_settings": "Dilec'hiañ ar bannad a-zehou",
@ -199,9 +199,9 @@
"embed.preview": "Setu penaos e teuio war wel :",
"emoji_button.activity": "Obererezh",
"emoji_button.clear": "Diverkañ",
"emoji_button.custom": "Kempennet",
"emoji_button.custom": "Personelaet",
"emoji_button.flags": "Bannieloù",
"emoji_button.food": "Boued hag Evaj",
"emoji_button.food": "Boued & Evajoù",
"emoji_button.label": "Enlakaat un emoji",
"emoji_button.nature": "Natur",
"emoji_button.not_found": "Emoji ebet !! (╯°□°)╯︵ ┻━┻",
@ -211,12 +211,12 @@
"emoji_button.search": "O klask...",
"emoji_button.search_results": "Disoc'hoù an enklask",
"emoji_button.symbols": "Arouezioù",
"emoji_button.travel": "Lec'hioù ha Beajoù",
"emoji_button.travel": "Beajiñ & Lec'hioù",
"empty_column.account_suspended": "Kont ehanet",
"empty_column.account_timeline": "Toud ebet amañ !",
"empty_column.account_unavailable": "Profil dihegerz",
"empty_column.blocks": "N'eus ket bet berzet implijer·ez ganeoc'h c'hoazh.",
"empty_column.bookmarked_statuses": "N'ho peus toud ebet enrollet en ho sinedoù c'hoazh. Pa vo ouzhpennet unan e teuio war wel amañ.",
"empty_column.bookmarked_statuses": "N'ho peus embannadur ebet enrollet en ho sinedoù c'hoazh. Pa vo ouzhpennet unan e teuio war wel amañ.",
"empty_column.community": "Goulo eo ar red-amzer lec'hel. Skrivit'ta un dra evit lakaat tan dezhi !",
"empty_column.domain_blocks": "N'eus domani kuzh ebet c'hoazh.",
"empty_column.explore_statuses": "N'eus tuadur ebet evit c'hoazh. Distroit diwezhatoc'h !",
@ -260,6 +260,7 @@
"follow_request.authorize": "Aotren",
"follow_request.reject": "Nac'hañ",
"follow_requests.unlocked_explanation": "Daoust ma n'eo ket ho kont prennet, skipailh {domain} a soñj e fellfe deoc'h gwiriekaat pedadennoù heuliañ deus ar c'hontoù-se diwar-zorn.",
"follow_suggestions.view_all": "Gwelet pep tra",
"followed_tags": "Hashtagoù o heuliañ",
"footer.about": "Diwar-benn",
"footer.directory": "Kavlec'h ar profiloù",
@ -267,7 +268,7 @@
"footer.invite": "Pediñ tud",
"footer.keyboard_shortcuts": "Berradennoù klavier",
"footer.privacy_policy": "Reolennoù prevezded",
"footer.source_code": "Gwelet kod mammenn",
"footer.source_code": "Gwelet ar c'hod mammenn",
"footer.status": "Statud",
"generic.saved": "Enrollet",
"getting_started.heading": "Loc'hañ",
@ -295,7 +296,7 @@
"interaction_modal.description.follow": "Gant ur gont Mastodon e c'hellit heuliañ {name} evit resev an toudoù a embann war ho red degemer.",
"interaction_modal.description.reblog": "Gant ur gont Mastodon e c'hellit skignañ an toud-mañ evit rannañ anezhañ gant ho heulierien·ezed.",
"interaction_modal.description.reply": "Gant ur gont Mastodon e c'hellit respont d'an toud-mañ.",
"interaction_modal.no_account_yet": "N'eo ket war vMastodon?",
"interaction_modal.no_account_yet": "N'emañ ket war vMastodon?",
"interaction_modal.on_another_server": "War ur servijer all",
"interaction_modal.on_this_server": "War ar servijer-mañ",
"interaction_modal.title.favourite": "Ouzhpennañ embannadur {name} d'ar re vuiañ-karet",
@ -463,7 +464,7 @@
"onboarding.steps.setup_profile.body": "Others are more likely to interact with you with a filled out profile.",
"onboarding.steps.setup_profile.title": "Customize your profile",
"onboarding.steps.share_profile.body": "Let your friends know how to find you on Mastodon!",
"onboarding.steps.share_profile.title": "Share your profile",
"onboarding.steps.share_profile.title": "Rannit ho kont Mastodon",
"password_confirmation.mismatching": "Disheñvel eo an daou c'her-termen-se",
"picture_in_picture.restore": "Adlakaat",
"poll.closed": "Serret",
@ -476,7 +477,8 @@
"poll.votes": "{votes, plural,one {#votadenn} other {# votadenn}}",
"poll_button.add_poll": "Ouzhpennañ ur sontadeg",
"poll_button.remove_poll": "Dilemel ar sontadeg",
"privacy.change": "Cheñch prevezded an toud",
"privacy.change": "Cheñch prevezded an embannadur",
"privacy.direct.short": "Tud resis",
"privacy.private.short": "Heulierien",
"privacy.public.short": "Publik",
"privacy_policy.last_updated": "Hizivadenn ziwezhañ {date}",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "Autoritza",
"follow_request.reject": "Rebutja",
"follow_requests.unlocked_explanation": "Tot i que el teu compte no està blocat, el personal de {domain} ha pensat que és possible que vulguis revisar manualment les sol·licituds de seguiment daquests comptes.",
"follow_suggestions.curated_suggestion": "Tria de l'editor",
"follow_suggestions.curated_suggestion": "Tria de l'equip",
"follow_suggestions.dismiss": "No ho tornis a mostrar",
"follow_suggestions.hints.featured": "L'equip de {domain} ha seleccionat aquest perfil.",
"follow_suggestions.hints.friends_of_friends": "Aquest perfil és popular entre la gent que seguiu.",
"follow_suggestions.hints.most_followed": "Aquest perfil és un dels més seguits a {domain}.",
"follow_suggestions.hints.most_interactions": "Aquest perfil ha estat rebent un munt d'atenció recentment a {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Aquest perfil és similar a d'altres que heu seguit recentment.",
"follow_suggestions.personalized_suggestion": "Suggeriment personalitzat",
"follow_suggestions.popular_suggestion": "Suggeriment popular",
"follow_suggestions.view_all": "Mostra-ho tot",

View file

@ -237,7 +237,7 @@
"empty_column.follow_requests": "Zatím nemáte žádné žádosti o sledování. Až nějakou obdržíte, zobrazí se zde.",
"empty_column.followed_tags": "Zatím jste nesledovali žádné hashtagy. Až to uděláte, objeví se zde.",
"empty_column.hashtag": "Pod tímto hashtagem zde zatím nic není.",
"empty_column.home": "Vaše domovská časová osa je prázdná! Naplňte ji sledováním dalších lidí. {suggestions}",
"empty_column.home": "Vaše domovská časová osa je prázdná! Naplňte ji sledováním dalších lidí.",
"empty_column.list": "V tomto seznamu zatím nic není. Až nějaký člen z tohoto seznamu zveřejní nový příspěvek, objeví se zde.",
"empty_column.lists": "Zatím nemáte žádné seznamy. Až nějaký vytvoříte, zobrazí se zde.",
"empty_column.mutes": "Zatím jste neskryli žádného uživatele.",
@ -276,9 +276,17 @@
"firehose.remote": "Ostatní servery",
"follow_request.authorize": "Autorizovat",
"follow_request.reject": "Zamítnout",
"follow_requests.unlocked_explanation": "Přestože váš účet není zamčený, administrátor {domain} usoudil, že byste mohli chtít tyto žádosti o sledování zkontrolovat ručně.",
"follow_requests.unlocked_explanation": "Přestože váš účet není uzamčen, personál {domain} usoudil, že byste mohli chtít tyto požadavky na sledování zkontrolovat ručně.",
"follow_suggestions.curated_suggestion": "Výběr personálů",
"follow_suggestions.dismiss": "Znovu nezobrazovat",
"follow_suggestions.hints.featured": "Tento profil byl ručně vybrán týmem {domain}.",
"follow_suggestions.hints.friends_of_friends": "Tento profil je populární mezi lidmi, které sledujete.",
"follow_suggestions.hints.most_followed": "Tento profil je jedním z nejvíce sledovaných na {domain}.",
"follow_suggestions.hints.most_interactions": "Tento profil nedávno dostalo velkou pozornost na {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Tento profil je podobný profilům, které jste nedávno sledovali.",
"follow_suggestions.personalized_suggestion": "Přizpůsobený návrh",
"follow_suggestions.popular_suggestion": "Populární návrh",
"follow_suggestions.view_all": "Zobrazit vše",
"follow_suggestions.who_to_follow": "Koho sledovat",
"followed_tags": "Sledované hashtagy",
"footer.about": "O aplikaci",
@ -300,8 +308,12 @@
"hashtag.column_settings.tag_mode.any": "Jakýkoliv z těchto",
"hashtag.column_settings.tag_mode.none": "Žádný z těchto",
"hashtag.column_settings.tag_toggle": "Zahrnout v tomto sloupci další štítky",
"hashtag.counter_by_accounts": "{count, plural, one {{counter} účastník} few {{counter} účastníci} other {{counter} účastníků}}",
"hashtag.counter_by_uses": "{count, plural, one {{counter} příspěvek} few {{counter} příspěvky} other {{counter} příspěvků}}",
"hashtag.counter_by_uses_today": "Dnes {count, plural, one {{counter} příspěvek} few {{counter} příspěvky} other {{counter} příspěvků}}",
"hashtag.follow": "Sledovat hashtag",
"hashtag.unfollow": "Přestat sledovat hashtag",
"hashtags.and_other": "…a {count, plural, one {# další} few {# další} other {# dalších}}",
"home.column_settings.basic": "Základní",
"home.column_settings.show_reblogs": "Zobrazit boosty",
"home.column_settings.show_replies": "Zobrazit odpovědi",
@ -471,8 +483,8 @@
"onboarding.actions.go_to_home": "Přejít na svůj domovský feed",
"onboarding.compose.template": "Ahoj #Mastodon!",
"onboarding.follows.empty": "Bohužel, žádné výsledky nelze momentálně zobrazit. Můžete zkusit vyhledat nebo procházet stránku s průzkumem a najít lidi, kteří budou sledovat, nebo to zkuste znovu později.",
"onboarding.follows.lead": "You curate your own home feed. The more people you follow, the more active and interesting it will be. These profiles may be a good starting point—you can always unfollow them later!",
"onboarding.follows.title": "Populární na Mastodonu",
"onboarding.follows.lead": "Domovský kanál je hlavní metodou zažívání Mastodonu. Čím více lidí sledujete, tím aktivnější a zajímavější bude. Pro začnutí, zde máte několik návrhů:",
"onboarding.follows.title": "Přispůsobit vlastní domovský kanál",
"onboarding.profile.discoverable": "Udělat svůj profil vyhledatelným",
"onboarding.profile.discoverable_hint": "Když se rozhodnete být vyhledatelný na Mastodonu, vaše příspěvky se mohou objevit ve výsledcích vyhledávání a v populárních, a váš profil může být navrhován lidem s podobnými zájmy.",
"onboarding.profile.display_name": "Zobrazované jméno",
@ -491,13 +503,13 @@
"onboarding.start.lead": "Your new Mastodon account is ready to go. Here's how you can make the most of it:",
"onboarding.start.skip": "Want to skip right ahead?",
"onboarding.start.title": "Dokázali jste to!",
"onboarding.steps.follow_people.body": "You curate your own feed. Lets fill it with interesting people.",
"onboarding.steps.follow_people.title": "Follow {count, plural, one {one person} other {# people}}",
"onboarding.steps.publish_status.body": "Řekněte světu Ahoj.",
"onboarding.steps.follow_people.body": "Mastodon je o sledování zajimavých lidí.",
"onboarding.steps.follow_people.title": "Přispůsobit vlastní domovský kanál",
"onboarding.steps.publish_status.body": "Řekněte světu ahoj s pomocí textem, fotografiemi, videami nebo anketami {emoji}",
"onboarding.steps.publish_status.title": "Vytvořte svůj první příspěvek",
"onboarding.steps.setup_profile.body": "Others are more likely to interact with you with a filled out profile.",
"onboarding.steps.setup_profile.title": "Přizpůsobit svůj profil",
"onboarding.steps.share_profile.body": "Let your friends know how to find you on Mastodon!",
"onboarding.steps.share_profile.body": "Dejte blízkým lidem vědět, jak vás mohou najít na Mastodonu",
"onboarding.steps.share_profile.title": "Sdílejte svůj profil",
"onboarding.tips.2fa": "<strong>Víte, že?</strong> Svůj účet můžete zabezpečit nastavením dvoufaktorového ověřování v nastavení účtu. Funguje s jakoukoli TOTP aplikací podle vašeho výběru, telefonní číslo není nutné!",
"onboarding.tips.accounts_from_other_servers": "<strong>Víte, že?</strong> Protože je Mastodon decentralizovaný, některé profily, na které narazíte, budou hostovány na jiných serverech, než je ten váš. A přesto s nimi můžete bezproblémově komunikovat! Jejich server se nachází v druhé polovině uživatelského jména!",
@ -525,6 +537,7 @@
"privacy.public.short": "Veřejné",
"privacy.unlisted.additional": "Chová se stejně jako veřejný, až na to, že se příspěvek neobjeví v živých kanálech nebo hashtazích, v objevování nebo vyhledávání na Mastodonu, a to i když je účet nastaven tak, aby se zde všude tyto příspěvky zobrazovaly.",
"privacy.unlisted.long": "Méně algoritmických fanfár",
"privacy.unlisted.short": "Ztišené veřejné",
"privacy_policy.last_updated": "Naposledy aktualizováno {date}",
"privacy_policy.title": "Zásady ochrany osobních údajů",
"recommended": "Doporučeno",
@ -542,6 +555,7 @@
"relative_time.minutes": "{number} m",
"relative_time.seconds": "{number} s",
"relative_time.today": "dnes",
"reply_indicator.attachments": "{count, plural, one {{counter} příloha} few {{counter} přílohy} other {{counter} přilohů}}",
"reply_indicator.cancel": "Zrušit",
"reply_indicator.poll": "Anketa",
"report.block": "Blokovat",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "Awdurdodi",
"follow_request.reject": "Gwrthod",
"follow_requests.unlocked_explanation": "Er nid yw eich cyfrif wedi'i gloi, roedd y staff {domain} yn meddwl efallai hoffech adolygu ceisiadau dilyn o'r cyfrifau rhain wrth law.",
"follow_suggestions.curated_suggestion": "Dewis y Golygydd",
"follow_suggestions.curated_suggestion": "Dewis staff",
"follow_suggestions.dismiss": "Peidio â dangos hwn eto",
"follow_suggestions.hints.featured": "Mae'r proffil hwn wedi'i ddewis yn arbennig gan dîm {domain}.",
"follow_suggestions.hints.friends_of_friends": "Mae'r proffil hwn yn boblogaidd ymhlith y bobl rydych chi'n eu dilyn.",
"follow_suggestions.hints.most_followed": "Mae'r proffil hwn yn un o'r rhai sy'n cael ei ddilyn fwyaf ar {domain}.",
"follow_suggestions.hints.most_interactions": "Mae'r proffil hwn wedi bod yn cael llawer o sylw yn ddiweddar ar {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Mae'r proffil hwn yn debyg i'r proffiliau rydych chi wedi'u dilyn yn fwyaf diweddar.",
"follow_suggestions.personalized_suggestion": "Awgrym personol",
"follow_suggestions.popular_suggestion": "Awgrym poblogaidd",
"follow_suggestions.view_all": "Gweld y cyfan",

View file

@ -277,7 +277,13 @@
"follow_request.authorize": "Godkend",
"follow_request.reject": "Afvis",
"follow_requests.unlocked_explanation": "Selvom din konto ikke er låst, synes {domain}-personalet, du måske bør gennemgå disse anmodninger manuelt.",
"follow_suggestions.curated_suggestion": "Personaleudvalgt",
"follow_suggestions.dismiss": "Vis ikke igen",
"follow_suggestions.hints.featured": "Denne profil er håndplukket af {domain}-teamet.",
"follow_suggestions.hints.friends_of_friends": "Denne profil er populær blandt de personer, som følges.",
"follow_suggestions.hints.most_followed": "Denne profil er en af de mest fulgte på {domain}.",
"follow_suggestions.hints.most_interactions": "Denne profil har for nylig fået stor opmærksomhed på {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Denne profil svarer til de profiler, som senest er blevet fulgt.",
"follow_suggestions.personalized_suggestion": "Personligt forslag",
"follow_suggestions.popular_suggestion": "Populært forslag",
"follow_suggestions.view_all": "Vis alle",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "Genehmigen",
"follow_request.reject": "Ablehnen",
"follow_requests.unlocked_explanation": "Auch wenn dein Konto öffentlich bzw. nicht geschützt ist, haben die Moderator*innen von {domain} gedacht, dass du diesen Follower lieber manuell bestätigen solltest.",
"follow_suggestions.curated_suggestion": "Auswahl des Herausgebers",
"follow_suggestions.curated_suggestion": "Vom Server empfohlen",
"follow_suggestions.dismiss": "Nicht mehr anzeigen",
"follow_suggestions.hints.featured": "Dieses Profil wurde vom {domain}-Team ausgewählt.",
"follow_suggestions.hints.friends_of_friends": "Dieses Profil ist bei deinen Followern beliebt.",
"follow_suggestions.hints.most_followed": "Dieses Profil wird von den meisten auf {domain} gefolgt.",
"follow_suggestions.hints.most_interactions": "Dieses Profil erhielt auf {domain} in letzter Zeit viel Aufmerksamkeit.",
"follow_suggestions.hints.similar_to_recently_followed": "Dieses Profil ähnelt den Profilen, denen du in letzter Zeit gefolgt hast.",
"follow_suggestions.personalized_suggestion": "Persönliche Empfehlung",
"follow_suggestions.popular_suggestion": "Beliebte Empfehlung",
"follow_suggestions.view_all": "Alle anzeigen",

View file

@ -277,7 +277,6 @@
"follow_request.authorize": "Authorise",
"follow_request.reject": "Reject",
"follow_requests.unlocked_explanation": "Even though your account is not locked, the {domain} staff thought you might want to review follow requests from these accounts manually.",
"follow_suggestions.curated_suggestion": "Editors' Choice",
"follow_suggestions.dismiss": "Don't show again",
"follow_suggestions.personalized_suggestion": "Personalised suggestion",
"follow_suggestions.popular_suggestion": "Popular suggestion",
@ -308,7 +307,7 @@
"hashtag.counter_by_uses_today": "{count, plural, one {{counter} post} other {{counter} posts}} today",
"hashtag.follow": "Follow hashtag",
"hashtag.unfollow": "Unfollow hashtag",
"hashtags.and_other": "…and {count, plural, one {}other {# more}}",
"hashtags.and_other": "…and {count, plural, one {one more} other {# more}}",
"home.column_settings.basic": "Basic",
"home.column_settings.show_reblogs": "Show boosts",
"home.column_settings.show_replies": "Show replies",

View file

@ -295,8 +295,13 @@
"follow_request.authorize": "Authorize",
"follow_request.reject": "Reject",
"follow_requests.unlocked_explanation": "Even though your account is not locked, the {domain} staff thought you might want to review follow requests from these accounts manually.",
"follow_suggestions.curated_suggestion": "Editors' Choice",
"follow_suggestions.curated_suggestion": "Staff pick",
"follow_suggestions.dismiss": "Don't show again",
"follow_suggestions.hints.featured": "This profile has been hand-picked by the {domain} team.",
"follow_suggestions.hints.friends_of_friends": "This profile is popular among the people you follow.",
"follow_suggestions.hints.most_followed": "This profile is one of the most followed on {domain}.",
"follow_suggestions.hints.most_interactions": "This profile has been recently getting a lot of attention on {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "This profile is similar to the profiles you have most recently followed.",
"follow_suggestions.personalized_suggestion": "Personalized suggestion",
"follow_suggestions.popular_suggestion": "Popular suggestion",
"follow_suggestions.view_all": "View all",

View file

@ -115,7 +115,7 @@
"column.directory": "Foliumi la profilojn",
"column.domain_blocks": "Blokitaj domajnoj",
"column.favourites": "Stelumoj",
"column.firehose": "Vivantaj fluoj",
"column.firehose": "Rektaj fluoj",
"column.follow_requests": "Petoj de sekvado",
"column.home": "Hejmo",
"column.lists": "Listoj",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "Autorizar",
"follow_request.reject": "Rechazar",
"follow_requests.unlocked_explanation": "A pesar de que tu cuenta no es privada, el equipo de {domain} pensó que podrías querer revisar manualmente las solicitudes de seguimiento de estas cuentas.",
"follow_suggestions.curated_suggestion": "Cuentas elegidas del servidor",
"follow_suggestions.curated_suggestion": "Selección del equipo",
"follow_suggestions.dismiss": "No mostrar de nuevo",
"follow_suggestions.hints.featured": "Este perfil fue seleccionado a mano por el equipo de {domain}.",
"follow_suggestions.hints.friends_of_friends": "Este perfil es popular entre las cuentas que seguís.",
"follow_suggestions.hints.most_followed": "Este perfil es uno de los más seguidos en {domain}.",
"follow_suggestions.hints.most_interactions": "Este perfil ha estado recibiendo recientemente mucha atención en {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Este perfil es similar a los que comenzaste a seguir.",
"follow_suggestions.personalized_suggestion": "Sugerencia personalizada",
"follow_suggestions.popular_suggestion": "Sugerencia popular",
"follow_suggestions.view_all": "Ver todo",

View file

@ -279,6 +279,11 @@
"follow_requests.unlocked_explanation": "A pesar de que tu cuenta no es privada, el personal de {domain} ha pensado que quizás deberías revisar manualmente las solicitudes de seguimiento de estas cuentas.",
"follow_suggestions.curated_suggestion": "Recomendaciones del equipo",
"follow_suggestions.dismiss": "No mostrar de nuevo",
"follow_suggestions.hints.featured": "Este perfil ha sido elegido a mano por el equipo de {domain}.",
"follow_suggestions.hints.friends_of_friends": "Este perfil es popular entre las personas que sigues.",
"follow_suggestions.hints.most_followed": "Este perfil es uno de los más seguidos en {domain}.",
"follow_suggestions.hints.most_interactions": "Este perfil ha estado recibiendo recientemente mucha atención en {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Este perfil es similar a los perfiles que has seguido recientemente.",
"follow_suggestions.personalized_suggestion": "Sugerencia personalizada",
"follow_suggestions.popular_suggestion": "Sugerencia popular",
"follow_suggestions.view_all": "Ver todo",

View file

@ -279,6 +279,11 @@
"follow_requests.unlocked_explanation": "A pesar de que tu cuenta no es privada, el personal de {domain} ha pensado que quizás deberías revisar manualmente las solicitudes de seguimiento de estas cuentas.",
"follow_suggestions.curated_suggestion": "Recomendaciones del equipo",
"follow_suggestions.dismiss": "No mostrar de nuevo",
"follow_suggestions.hints.featured": "Este perfil ha sido elegido a mano por el equipo de {domain}.",
"follow_suggestions.hints.friends_of_friends": "Este perfil es popular entre las personas que sigues.",
"follow_suggestions.hints.most_followed": "Este perfil es uno de los más seguidos en {domain}.",
"follow_suggestions.hints.most_interactions": "Este perfil ha estado recibiendo recientemente mucha atención en {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Este perfil es similar a los perfiles que has seguido recientemente.",
"follow_suggestions.personalized_suggestion": "Sugerencia personalizada",
"follow_suggestions.popular_suggestion": "Sugerencia popular",
"follow_suggestions.view_all": "Ver todo",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "Baimendu",
"follow_request.reject": "Ukatu",
"follow_requests.unlocked_explanation": "Zure kontua blokeatuta ez badago ere, {domain} domeinuko arduradunek uste dute kontu hauetako jarraipen eskaerak agian eskuz begiratu nahiko dituzula.",
"follow_suggestions.curated_suggestion": "Zerbitzariaren iradokizunak",
"follow_suggestions.curated_suggestion": "Domeinuaren iradokizuna",
"follow_suggestions.dismiss": "Ez erakutsi berriro",
"follow_suggestions.hints.featured": "Profil hau {domain} domeinuko taldeak eskuz aukeratu du.",
"follow_suggestions.hints.friends_of_friends": "Profil hau ezaguna da jarraitzen duzun jendearen artean.",
"follow_suggestions.hints.most_followed": "Profil hau {domain} domeinuan gehien jarraitzen den profiletako bat da.",
"follow_suggestions.hints.most_interactions": "Profil hau arreta handia jasotzen ari da berriki {domain} domeinuan.",
"follow_suggestions.hints.similar_to_recently_followed": "Profil hau duela gutxi jarraitu dituzun profil askoren antzekoa da.",
"follow_suggestions.personalized_suggestion": "Iradokizun pertsonalizatua",
"follow_suggestions.popular_suggestion": "Iradokizun ezaguna",
"follow_suggestions.view_all": "Ikusi denak",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "Valtuuta",
"follow_request.reject": "Hylkää",
"follow_requests.unlocked_explanation": "Vaikkei tiliäsi ole lukittu, palvelimen {domain} ylläpito on arvioinut, että saatat olla halukas tarkistamaan nämä seuraamispyynnöt erikseen.",
"follow_suggestions.curated_suggestion": "Päätoimittajan valinta",
"follow_suggestions.curated_suggestion": "Ylläpidon valinta",
"follow_suggestions.dismiss": "Älä näytä uudelleen",
"follow_suggestions.hints.featured": "Tämän profiilin on valinnut palvelimen {domain} tiimi.",
"follow_suggestions.hints.friends_of_friends": "Tämä profiili on suosittu seuraamiesi henkilöiden parissa.",
"follow_suggestions.hints.most_followed": "Tämä profiili on yksi seuratuimmista palvelimella {domain}.",
"follow_suggestions.hints.most_interactions": "Tämä profiili on viime aikoina saanut paljon huomiota palvelimella {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Tämä profiili on samankaltainen kuin profiilit, joita olet viimeksi seurannut.",
"follow_suggestions.personalized_suggestion": "Personoitu ehdotus",
"follow_suggestions.popular_suggestion": "Suosittu ehdotus",
"follow_suggestions.view_all": "Näytä kaikki",

View file

@ -46,7 +46,10 @@
"account.report": "I-ulat si/ang @{name}",
"account.requested_follow": "Hinihiling ni {name} na sundan ka",
"account.show_reblogs": "Ipakita ang mga pagpapalakas mula sa/kay {name}",
"account.unendorse": "Huwag itampok sa profile",
"admin.dashboard.retention.cohort_size": "Mga bagong tagagamit",
"alert.rate_limited.message": "Mangyaring subukan muli pagkatapos ng {retry_time, time, medium}.",
"audio.hide": "Itago ang tunog",
"bundle_column_error.error.title": "Naku!",
"bundle_column_error.network.body": "Nagkaroon ng kamalian habang sinusubukang i-karga ang pahinang ito. Maaaring dahil ito sa pansamantalang problema ng iyong koneksyon sa internet o ang server na ito.",
"bundle_column_error.network.title": "Kamaliang network",
@ -98,6 +101,7 @@
"compose_form.encryption_warning": "Ang mga post sa Mastodon ay hindi naka-encrypt nang dulo-dulo. Huwag magbahagi ng anumang sensitibong impormasyon sa Mastodon.",
"compose_form.hashtag_warning": "Hindi maililista ang post na ito sa anumang hashtag dahil hindi ito nakapubliko. Mga nakapublikong post lamang ang mahahanap ayon sa hashtag.",
"compose_form.placeholder": "Anong nangyari?",
"compose_form.poll.multiple": "Maraming pagpipilian",
"compose_form.poll.single": "Piliin ang isa",
"compose_form.reply": "Tumugon",
"compose_form.spoiler.unmarked": "Idagdag ang babala sa nilalaman",
@ -107,6 +111,10 @@
"confirmations.block.message": "Sigurado ka bang gusto mong harangan si {name}?",
"confirmations.cancel_follow_request.confirm": "Bawiin ang kahilingan",
"confirmations.cancel_follow_request.message": "Sigurdo ka bang gusto mong bawiin ang kahilingang sundan si/ang {name}?",
"confirmations.delete.message": "Sigurado ka bang gusto mong burahin ang post na ito?",
"confirmations.delete_list.confirm": "Tanggalin",
"confirmations.delete_list.message": "Sigurado ka bang gusto mong burahin ang listahang ito?",
"confirmations.discard_edit_media.confirm": "Ipagpaliban",
"confirmations.domain_block.confirm": "Harangan ang buong domain",
"confirmations.edit.confirm": "Baguhin",
"confirmations.reply.confirm": "Tumugon",
@ -175,46 +183,108 @@
"hashtag.column_header.tag_mode.all": "at {additional}",
"hashtag.column_header.tag_mode.any": "o {additional}",
"home.pending_critical_update.body": "Mangyaring i-update ang iyong serbiro ng Mastodon sa lalong madaling panahon!",
"interaction_modal.login.action": "Iuwi mo ako",
"interaction_modal.no_account_yet": "Wala sa Mastodon?",
"interaction_modal.on_another_server": "Sa ibang serbiro",
"interaction_modal.on_this_server": "Sa serbirong ito",
"interaction_modal.title.follow": "Sundan si {name}",
"intervals.full.days": "{number, plural, one {# araw} other {# na araw}}",
"intervals.full.hours": "{number, plural, one {# oras} other {# na oras}}",
"intervals.full.minutes": "{number, plural, one {# minuto} other {# na minuto}}",
"keyboard_shortcuts.description": "Paglalarawan",
"keyboard_shortcuts.down": "Ilipat pababa sa talaan",
"keyboard_shortcuts.mention": "Banggitin ang may-akda",
"keyboard_shortcuts.requests": "Buksan ang talaan ng mga kahilingan sa pagsunod",
"keyboard_shortcuts.up": "Ilipat pataas sa talaan",
"lightbox.close": "Isara",
"lightbox.next": "Susunod",
"lightbox.previous": "Nakaraan",
"link_preview.author": "Ni/ng {name}",
"lists.account.add": "Idagdag sa talaan",
"lists.account.remove": "Tanggalin mula sa talaan",
"lists.new.create": "Idagdag sa talaan",
"lists.new.title_placeholder": "Bagong pangalan ng talaan",
"lists.replies_policy.title": "Ipakita ang mga tugon sa:",
"lists.subheading": "Iyong mga talaan",
"loading_indicator.label": "Kumakarga…",
"navigation_bar.about": "Tungkol dito",
"navigation_bar.blocks": "Nakaharang na mga tagagamit",
"navigation_bar.direct": "Mga palihim na banggit",
"navigation_bar.favourites": "Mga paborito",
"navigation_bar.follows_and_followers": "Mga sinusundan at tagasunod",
"navigation_bar.lists": "Mga listahan",
"navigation_bar.search": "Maghanap",
"notification.admin.report": "Iniulat ni {name} si {target}",
"notification.follow": "Sinundan ka ni {name}",
"notification.follow_request": "Hinihiling ni {name} na sundan ka",
"notification.mention": "Binanggit ka ni {name}",
"notifications.clear": "Burahin mga abiso",
"notifications.column_settings.admin.report": "Mga bagong ulat:",
"notifications.column_settings.favourite": "Mga paborito:",
"notifications.column_settings.follow": "Mga bagong tagasunod:",
"notifications.column_settings.unread_notifications.category": "Hindi Nabasang mga Abiso",
"notifications.column_settings.update": "Mga pagbago:",
"notifications.filter.all": "Lahat",
"notifications.mark_as_read": "Markahan lahat ng abiso bilang nabasa na",
"onboarding.action.back": "Ibalik mo ako",
"onboarding.actions.back": "Ibalik mo ako",
"onboarding.profile.note_hint": "Maaari mong @bangitin ang ibang mga tao o mga #hashtag…",
"onboarding.profile.save_and_continue": "Iimbak at magpatuloy",
"onboarding.share.next_steps": "Mga posibleng susunod na hakbang:",
"poll.closed": "Sarado",
"poll.reveal": "Ipakita ang mga resulta",
"poll.voted": "Binoto mo para sa sagot na ito",
"poll_button.remove_poll": "Tanggalin ang boto",
"privacy.direct.long": "Lahat ng mga binanggit sa post",
"privacy.private.long": "Mga tagasunod mo lamang",
"privacy.private.short": "Mga tagasunod",
"relative_time.days": "{number}a",
"relative_time.full.days": "{number, plural, one {# araw} other {# na araw}} ang nakalipas",
"relative_time.full.hours": "{number, plural, one {# oras} other {# na oras}} ang nakalipas",
"relative_time.full.just_now": "ngayon lang",
"relative_time.full.minutes": "{number, plural, one {# minuto} other {# na minuto}} ang nakalipas",
"relative_time.full.seconds": "{number, plural, one {# segundo} other {# na segundo}} ang nakalipas",
"relative_time.hours": "{number}o",
"relative_time.just_now": "ngayon",
"relative_time.minutes": "{number}m",
"relative_time.seconds": "{number}s",
"reply_indicator.cancel": "Ipagpaliban",
"report.block": "Harangan",
"report.categories.other": "Iba pa",
"report.category.title": "Sabihin mo sa amin kung anong nangyari sa {type} na ito",
"report.close": "Tapos na",
"report.next": "Sunod",
"report.reasons.violation": "Lumalabag ito sa mga panuntunan ng serbiro",
"report.reasons.violation_description": "Alam mo na lumalabag ito sa mga partikular na panuntunan",
"report.rules.title": "Aling mga patakaran ang nilabag?",
"report.submit": "Isumite",
"report.target": "Iniulat si/ang {target}",
"report.thanks.take_action_actionable": "Habang sinusuri namin ito, maaari kang gumawa ng aksyon laban kay/sa {name}:",
"report.thanks.title": "Ayaw mo bang makita ito?",
"report.thanks.title_actionable": "Salamat sa pag-uulat, titingnan namin ito.",
"report_notification.categories.other": "Iba pa",
"search_results.all": "Lahat",
"search_results.see_all": "Ipakita lahat",
"server_banner.learn_more": "Matuto nang higit pa",
"server_banner.server_stats": "Katayuan ng serbiro:",
"status.block": "Harangan si @{name}",
"status.delete": "Tanggalin",
"status.direct": "Palihim na banggitin si/ang @{name}",
"status.direct_indicator": "Palihim na banggit",
"status.edit": "Baguhin",
"status.edited": "Binago noong {date}",
"status.edited_x_times": "Binago {count, plural, one {{count} beses} other {{count} na beses}}",
"status.history.created": "Nilikha ni/ng {name} {date}",
"status.history.edited": "Binago ni/ng {name} {date}",
"status.media.open": "Pindutin upang buksan",
"status.media.show": "Pindutin upang ipakita",
"status.mention": "Banggitin ang/si @{name}",
"status.more": "Higit pa",
"status.read_more": "Basahin ang higit pa",
"status.reblogs.empty": "Wala pang nagpalakas ng post na ito. Kung may sinumang nagpalakas, makikita sila rito.",
"status.reply": "Tumugon",
"status.report": "I-ulat si/ang @{name}",
"status.sensitive_warning": "Sensitibong nilalaman",
"status.share": "Ibahagi",
"status.show_less": "Magpakita ng mas kaunti",
"status.show_less_all": "Magpakita ng mas kaunti para sa lahat",
@ -222,5 +292,13 @@
"status.show_more_all": "Magpakita ng higit pa para sa lahat",
"status.translate": "Isalin",
"status.translated_from_with": "Isalin mula sa {lang} gamit ang {provider}",
"status.uncached_media_warning": "Hindi makuha ang paunang tigin"
"status.uncached_media_warning": "Hindi makuha ang paunang tigin",
"tabs_bar.notifications": "Mga abiso",
"time_remaining.days": "{number, plural, one {# araw} other {# na araw}} ang natitira",
"time_remaining.hours": "{number, plural, one {# oras} other {# na oras}} ang natitira",
"time_remaining.minutes": "{number, plural, one {# minuto} other {# na minuto}} ang natitira",
"time_remaining.seconds": "{number, plural, one {# segundo} other {# na segundo}} ang natitira",
"timeline_hint.remote_resource_not_displayed": "Hindi ipinapakita ang {resource} mula sa ibang mga serbiro.",
"timeline_hint.resources.followers": "Mga tagasunod",
"timeline_hint.resources.follows": "Mga sinusundan"
}

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "Veit myndugleika",
"follow_request.reject": "Nokta",
"follow_requests.unlocked_explanation": "Sjálvt um konta tín ikki er læst, so hugsa {domain} starvsfólkini, at tú kanska hevur hug at kanna umbønir um at fylgja frá hesum kontum við hond.",
"follow_suggestions.curated_suggestion": "Val umsjónarfólksins",
"follow_suggestions.curated_suggestion": "Val hjá ábyrgdarfólki",
"follow_suggestions.dismiss": "Lat vera við at vísa",
"follow_suggestions.hints.featured": "Hesin vangin er úrvaldur av toyminum handan {domain}.",
"follow_suggestions.hints.friends_of_friends": "Hesin vangin er vælumtóktur millum tey, tú fylgir.",
"follow_suggestions.hints.most_followed": "Hesin vangin er ein av teimum, sum er mest fylgdur á {domain}.",
"follow_suggestions.hints.most_interactions": "Nýliga hava nógv lagt merki til hendan vangan á {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Hesin vangin líkist teimum, sum tú nýliga hevur fylgt.",
"follow_suggestions.personalized_suggestion": "Persónligt uppskot",
"follow_suggestions.popular_suggestion": "Vælumtókt uppskot",
"follow_suggestions.view_all": "Vís øll",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "Goedkarre",
"follow_request.reject": "Wegerje",
"follow_requests.unlocked_explanation": "Ek al is jo account net besletten, de meiwurkers fan {domain} tinke dat jo miskien de folgjende folchfersiken hânmjittich kontrolearje.",
"follow_suggestions.curated_suggestion": "Kar fan de moderator",
"follow_suggestions.curated_suggestion": "Spesjaal selektearre",
"follow_suggestions.dismiss": "Net mear werjaan",
"follow_suggestions.hints.featured": "Dit profyl is hânmjittich troch it {domain}-team selektearre.",
"follow_suggestions.hints.friends_of_friends": "Dit profyl is populêr ûnder de minsken dyt jo folgje.",
"follow_suggestions.hints.most_followed": "Dit profyl is ien fan de meast folge op {domain}.",
"follow_suggestions.hints.most_interactions": "Dit profyl hat de lêste tiid in protte oandacht krigen op {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Dit profyl is hast lyk oan de profilen dyt jo koartlyn folge hawwe.",
"follow_suggestions.personalized_suggestion": "Personalisearre suggestje",
"follow_suggestions.popular_suggestion": "Populêre suggestje",
"follow_suggestions.view_all": "Alles werjaan",

View file

@ -226,7 +226,6 @@
"follow_request.authorize": "Ceadaigh",
"follow_request.reject": "Diúltaigh",
"follow_requests.unlocked_explanation": "Cé nach bhfuil do chuntas faoi ghlas, cheap foireann {domain} gur mhaith leat súil siar ar iarratais leanúnaí as na cuntais seo.",
"follow_suggestions.curated_suggestion": "Rogha an eagarthóra",
"follow_suggestions.dismiss": "Ná taispeáin arís",
"follow_suggestions.personalized_suggestion": "Nod pearsantaithe",
"follow_suggestions.popular_suggestion": "Nod coiteann",

View file

@ -277,7 +277,6 @@
"follow_request.authorize": "Ùghdarraich",
"follow_request.reject": "Diùlt",
"follow_requests.unlocked_explanation": "Ged nach eil an cunntas agad glaiste, tha sgioba {domain} dhen bheachd gum b fheàirrde thu lèirmheas a dhèanamh air na h-iarrtasan leantainn o na cunntasan seo a làimh.",
"follow_suggestions.curated_suggestion": "Roghainn an deasaiche",
"follow_suggestions.dismiss": "Na seall seo a-rithist",
"follow_suggestions.personalized_suggestion": "Moladh pearsanaichte",
"follow_suggestions.popular_suggestion": "Moladh air a bheil fèill mhòr",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "Autorizar",
"follow_request.reject": "Rexeitar",
"follow_requests.unlocked_explanation": "Malia que a túa conta non é privada, a administración de {domain} pensou que quizabes terías que revisar de xeito manual as solicitudes de seguiminto.",
"follow_suggestions.curated_suggestion": "O servidor suxíreche",
"follow_suggestions.curated_suggestion": "Suxestións do Servidor",
"follow_suggestions.dismiss": "Non mostrar máis",
"follow_suggestions.hints.featured": "Este perfil foi escollido pola administración de {domain}.",
"follow_suggestions.hints.friends_of_friends": "Este perfil é popular entre as persoas que segues.",
"follow_suggestions.hints.most_followed": "Este perfil é un dos máis seguidos en {domain}.",
"follow_suggestions.hints.most_interactions": "Este perfil tivo moitas interaccións últimamente en {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Este perfil ten semellanzas cos perfís que ti seguiches últimamente.",
"follow_suggestions.personalized_suggestion": "Suxestión personalizada",
"follow_suggestions.popular_suggestion": "Suxestión popular",
"follow_suggestions.view_all": "Ver todas",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "הרשאה",
"follow_request.reject": "דחיה",
"follow_requests.unlocked_explanation": "למרות שחשבונך אינו נעול, צוות {domain} חושב שאולי כדאי לוודא את בקשות המעקב האלה ידנית.",
"follow_suggestions.curated_suggestion": "בחירת העורכים",
"follow_suggestions.curated_suggestion": "בחירת הצוות",
"follow_suggestions.dismiss": "לא להציג שוב",
"follow_suggestions.hints.featured": "החשבון הזה נבחר אישית על ידי צוות {domain}.",
"follow_suggestions.hints.friends_of_friends": "חשבון זה פופולרי בין הנעקבים שלך.",
"follow_suggestions.hints.most_followed": "חשבון זה הוא מבין הנעקבים ביותר בשרת {domain}.",
"follow_suggestions.hints.most_interactions": "חשבון זה קיבל לאחרונה הרבה תשומת לב על שרת {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "חשבון זה דומה לחשבונות אחרים שאחריהם התחלת לעקוב לאחרונה.",
"follow_suggestions.personalized_suggestion": "הצעות מותאמות אישית",
"follow_suggestions.popular_suggestion": "הצעה פופולרית",
"follow_suggestions.view_all": "צפיה בכל",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "Hitelesítés",
"follow_request.reject": "Elutasítás",
"follow_requests.unlocked_explanation": "Bár a fiókod nincs zárolva, a(z) {domain} csapata úgy gondolta, hogy talán kézzel szeretnéd ellenőrizni ezen fiókok követési kéréseit.",
"follow_suggestions.curated_suggestion": "Szerkesztői ajánlat",
"follow_suggestions.curated_suggestion": "A stáb választása",
"follow_suggestions.dismiss": "Ne jelenjen meg újra",
"follow_suggestions.hints.featured": "Ezt a profilt a(z) {domain} csapata választotta ki.",
"follow_suggestions.hints.friends_of_friends": "Ez a profil népszerű az általad követett emberek körében.",
"follow_suggestions.hints.most_followed": "Ez a profil a leginkább követett a(z) {domain} oldalon.",
"follow_suggestions.hints.most_interactions": "Ez a profil mostanában sok figyelmet kap a(z) {domain} oldalon.",
"follow_suggestions.hints.similar_to_recently_followed": "Ez a profil hasonló azokhoz a profilokhoz, melyeket nemrég kezdtél el követni.",
"follow_suggestions.personalized_suggestion": "Személyre szabott javaslat",
"follow_suggestions.popular_suggestion": "Népszerű javaslat",
"follow_suggestions.view_all": "Összes megtekintése",

View file

@ -197,7 +197,6 @@
"firehose.all": "Toto",
"firehose.local": "Iste servitor",
"firehose.remote": "Altere servitores",
"follow_suggestions.curated_suggestion": "Selection del editores",
"follow_suggestions.dismiss": "Non monstrar novemente",
"follow_suggestions.personalized_suggestion": "Suggestion personalisate",
"follow_suggestions.popular_suggestion": "Suggestion personalisate",

View file

@ -277,7 +277,6 @@
"follow_request.authorize": "Autorisar",
"follow_request.reject": "Rejecter",
"follow_requests.unlocked_explanation": "Benque tu conto ne es cludet, li administratores de {domain} pensat que tu fórsan vell voler tractar seque-petitiones de tis-ci contos manualmen.",
"follow_suggestions.curated_suggestion": "Selection del Servitor",
"follow_suggestions.dismiss": "Ne monstrar plu",
"follow_suggestions.personalized_suggestion": "Personalisat suggestion",
"follow_suggestions.popular_suggestion": "Populari suggestion",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "Heimila",
"follow_request.reject": "Hafna",
"follow_requests.unlocked_explanation": "Jafnvel þótt aðgangurinn þinn sé ekki læstur, hafa umsjónarmenn {domain} ímyndað sér að þú gætir viljað yfirfara handvirkt fylgjendabeiðnir frá þessum notendum.",
"follow_suggestions.curated_suggestion": "Úrval umsjónarfólks",
"follow_suggestions.curated_suggestion": "Úrval starfsfólks",
"follow_suggestions.dismiss": "Ekki birta þetta aftur",
"follow_suggestions.hints.featured": "Þetta notandasnið hefur verið handvalið af {domain}-teyminu.",
"follow_suggestions.hints.friends_of_friends": "Þetta notandasnið er vinsælt hjá fólki sem þú fylgist með.",
"follow_suggestions.hints.most_followed": "Þetta notandasnið er eitt af þeim sem mest er fylgst með á {domain}.",
"follow_suggestions.hints.most_interactions": "Þetta notandasnið hefur vakið mikla athygli að undanförnu á {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Þetta notandasnið er líkt þeim sniðum sem þú hefur valið að fylgjast með að undanförnu.",
"follow_suggestions.personalized_suggestion": "Persónuaðlöguð tillaga",
"follow_suggestions.popular_suggestion": "Vinsæl tillaga",
"follow_suggestions.view_all": "Skoða allt",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "Autorizza",
"follow_request.reject": "Rifiuta",
"follow_requests.unlocked_explanation": "Anche se il tuo profilo non è privato, lo staff di {domain} ha pensato che potresti voler revisionare manualmente le richieste di seguirti da questi profili.",
"follow_suggestions.curated_suggestion": "Scelta dell'editore",
"follow_suggestions.curated_suggestion": "Scelta personale",
"follow_suggestions.dismiss": "Non visualizzare più",
"follow_suggestions.hints.featured": "Questo profilo è stato selezionato personalmente dal team di {domain}.",
"follow_suggestions.hints.friends_of_friends": "Questo profilo è popolare tra le persone che segui.",
"follow_suggestions.hints.most_followed": "Questo profilo è uno dei più seguiti su {domain}.",
"follow_suggestions.hints.most_interactions": "Recentemente, questo profilo ha ricevuto molta attenzione su {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Questo profilo è simile ai profili che hai seguito più recentemente.",
"follow_suggestions.personalized_suggestion": "Suggerimenti personalizzati",
"follow_suggestions.popular_suggestion": "Suggerimento frequente",
"follow_suggestions.view_all": "Vedi tutto",

View file

@ -370,7 +370,17 @@
"follow_request.authorize": "許可",
"follow_request.reject": "拒否",
"follow_requests.unlocked_explanation": "あなたのアカウントは承認制ではありませんが、{domain}のスタッフはこれらのアカウントからのフォローリクエストの確認が必要であると判断しました。",
"follow_suggestions.curated_suggestion": "サーバースタッフ公認",
"follow_suggestions.dismiss": "今後表示しない",
"follow_suggestions.hints.featured": "{domain} の運営スタッフが選んだアカウントです。",
"follow_suggestions.hints.friends_of_friends": "フォロー中のユーザーのあいだで人気のアカウントです。",
"follow_suggestions.hints.most_followed": "{domain} でもっともフォローされているアカウントのひとつです。",
"follow_suggestions.hints.most_interactions": "{domain} でいま大きな注目を集めています。",
"follow_suggestions.hints.similar_to_recently_followed": "最近フォローしたユーザーに似ているアカウントです。",
"follow_suggestions.personalized_suggestion": "フォローに基づく提案",
"follow_suggestions.popular_suggestion": "人気のアカウント",
"follow_suggestions.view_all": "すべて表示",
"follow_suggestions.who_to_follow": "フォローを増やしてみませんか?",
"followed_tags": "フォロー中のハッシュタグ",
"footer.about": "概要",
"footer.directory": "ディレクトリ",

View file

@ -26,6 +26,7 @@
"account.follows.empty": "Ar tura, amseqdac-agi ur yeṭṭafaṛ yiwen.",
"account.go_to_profile": "Ddu ɣer umaɣnu",
"account.hide_reblogs": "Ffer ayen i ibeṭṭu @{name}",
"account.joined_short": "Izeddi da",
"account.link_verified_on": "Taɣara n useɣwen-a tettwasenqed ass n {date}",
"account.locked_info": "Amiḍan-agi uslig isekweṛ. D bab-is kan i izemren ad yeǧǧ, s ufus-is, win ara t-iḍefṛen.",
"account.media": "Timidyatin",
@ -67,6 +68,7 @@
"bundle_modal_error.message": "Tella-d kra n tuccḍa mi d-yettali ugbur-agi.",
"bundle_modal_error.retry": "Ɛreḍ tikelt-nniḍen",
"closed_registrations_modal.find_another_server": "Aff-d aqeddac nniḍen",
"closed_registrations_modal.title": "Ajerred deg Masṭudun",
"column.about": "Ɣef",
"column.blocks": "Imiḍanen yettusḥebsen",
"column.bookmarks": "Ticraḍ",
@ -95,6 +97,7 @@
"compose.language.change": "Beddel tutlayt",
"compose.language.search": "Nadi tutlayin …",
"compose.published.open": "Ldi",
"compose.saved.body": "Tettwasekles tsuffeɣt.",
"compose_form.direct_message_warning_learn_more": "Issin ugar",
"compose_form.encryption_warning": "",
"compose_form.hashtag_warning": "",
@ -104,6 +107,7 @@
"compose_form.poll.duration": "Tanzagt n tefrant",
"compose_form.poll.option_placeholder": "Taxtiṛt {number}",
"compose_form.poll.single": "Fren yiwen",
"compose_form.publish": "Suffeɣ",
"compose_form.publish_form": "Tasuffeɣt tamaynut",
"compose_form.reply": "Err",
"compose_form.save_changes": "Leqqem",
@ -163,7 +167,7 @@
"empty_column.account_timeline": "Ulac tisuffaɣ da !",
"empty_column.account_unavailable": "Ur nufi ara amaɣnu-ayi",
"empty_column.blocks": "Ur tesḥebseḍ ula yiwen n umseqdac ar tura.",
"empty_column.bookmarked_statuses": "Ulac tijewwaqin i terniḍ ɣer yismenyifen-ik ar tura. Ticki terniḍ yiwet, ad d-tettwasken da.",
"empty_column.bookmarked_statuses": "Ulac kra n tsuffeɣt i terniḍ ɣer yismenyifen-ik·im ar tura. Ticki terniḍ yiwet, ad d-tettwasken da.",
"empty_column.community": "Tasuddemt tazayezt tadigant n yisallen d tilemt. Aru ihi kra akken ad tt-teččareḍ!",
"empty_column.domain_blocks": "Ulac kra n taɣult yettwaffren ar tura.",
"empty_column.follow_requests": "Ulac ɣur-k ula yiwen n usuter n teḍfeṛt. Ticki teṭṭfeḍ-d yiwen ad d-yettwasken da.",
@ -190,6 +194,7 @@
"firehose.local": "Deg uqeddac-ayi",
"follow_request.authorize": "Ssireg",
"follow_request.reject": "Agi",
"follow_suggestions.who_to_follow": "Menhu ara ḍefṛeḍ",
"followed_tags": "Ihacṭagen yettwaḍfaren",
"footer.about": "Ɣef",
"footer.directory": "Akaram n imaɣnuten",
@ -209,6 +214,8 @@
"hashtag.column_settings.tag_mode.any": "Yiwen seg-sen",
"hashtag.column_settings.tag_mode.none": "Yiwen ala seg-sen",
"hashtag.column_settings.tag_toggle": "Glu-d s yihacṭagen imerna i ujgu-agi",
"hashtag.counter_by_uses": "{count, plural, one {{counter} n tsuffeɣt} other {{counter} n tsuffaɣ}}",
"hashtag.counter_by_uses_today": "{count, plural, one {{counter} n tsuffeɣt} other {{counter} n tsuffaɣ}} assa",
"hashtag.follow": "Ḍfeṛ ahacṭag",
"home.column_settings.basic": "Igejdanen",
"home.column_settings.show_reblogs": "Ssken-d beṭṭu",
@ -289,6 +296,7 @@
"navigation_bar.favourites": "Imenyafen",
"navigation_bar.filters": "Awalen i yettwasgugmen",
"navigation_bar.follow_requests": "Isuturen n teḍfeṛt",
"navigation_bar.followed_tags": "Ihacṭagen yettwaḍfaren",
"navigation_bar.follows_and_followers": "Imeḍfaṛen akked wid i teṭṭafaṛeḍ",
"navigation_bar.lists": "Tibdarin",
"navigation_bar.logout": "Ffeɣ",
@ -300,7 +308,7 @@
"navigation_bar.search": "Nadi",
"navigation_bar.security": "Taɣellist",
"not_signed_in_indicator.not_signed_in": "You need to sign in to access this resource.",
"notification.follow": "{name} yeṭṭafaṛ-ik",
"notification.follow": "iṭṭafar-ik·em-id {name}",
"notification.follow_request": "{name} yessuter-d ad k-yeḍfeṛ",
"notification.mention": "{name} yebder-ik-id",
"notification.own_poll": "Tafrant-ik·im tfuk",
@ -354,7 +362,7 @@
"onboarding.steps.share_profile.body": "Let your friends know how to find you on Mastodon!",
"onboarding.steps.share_profile.title": "Share your profile",
"picture_in_picture.restore": "Err-it amkan-is",
"poll.closed": "Ifukk",
"poll.closed": "Tfukk",
"poll.refresh": "Smiren",
"poll.total_people": "{count, plural, one {# n wemdan} other {# n yemdanen}}",
"poll.total_votes": "{count, plural, one {# n udɣaṛ} other {# n yedɣaṛen}}",
@ -363,6 +371,7 @@
"poll_button.add_poll": "Rnu asenqed",
"poll_button.remove_poll": "Kkes asenqed",
"privacy.change": "Seggem tabaḍnit n yizen",
"privacy.private.short": "Imeḍfaren",
"privacy.public.short": "Azayez",
"privacy_policy.title": "Tasertit tabaḍnit",
"refresh": "Smiren",
@ -400,6 +409,7 @@
"search_popout.user": "amseqdac",
"search_results.all": "Akk",
"search_results.hashtags": "Ihacṭagen",
"search_results.see_all": "Wali-ten akk",
"search_results.statuses": "Tisuffaɣ",
"search_results.title": "Anadi ɣef {q}",
"server_banner.administered_by": "Yettwadbel sɣur :",
@ -419,6 +429,7 @@
"status.edited_x_times": "Tettwaẓreg {count, plural, one {{count} n tikkelt} other {{count} n tikkal}}",
"status.embed": "Seddu",
"status.filtered": "Yettwasizdeg",
"status.hide": "Ffer tasuffeɣt",
"status.load_more": "Sali ugar",
"status.media_hidden": "Amidya yettwaffer",
"status.mention": "Bder-d @{name}",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "허가",
"follow_request.reject": "거부",
"follow_requests.unlocked_explanation": "귀하의 계정이 잠긴 계정이 아닐지라도, {domain} 스태프는 이 계정들의 팔로우 요청을 수동으로 처리해 주시면 좋겠다고 생각했습니다.",
"follow_suggestions.curated_suggestion": "중재자의 추천",
"follow_suggestions.curated_suggestion": "스태프의 추천",
"follow_suggestions.dismiss": "다시 보지 않기",
"follow_suggestions.hints.featured": "이 프로필은 {domain} 팀이 손수 선택했습니다.",
"follow_suggestions.hints.friends_of_friends": "이 프로필은 내가 팔로우 하는 사람들에게서 유명합니다.",
"follow_suggestions.hints.most_followed": "이 프로필은 {domain}에서 가장 많이 팔로우 된 사람들 중 하나입니다.",
"follow_suggestions.hints.most_interactions": "이 프로필은 최근 {domain}에서 많은 관심을 받았습니다.",
"follow_suggestions.hints.similar_to_recently_followed": "이 프로필은 내가 최근에 팔로우 한 프로필들과 유사합니다.",
"follow_suggestions.personalized_suggestion": "개인화된 추천",
"follow_suggestions.popular_suggestion": "인기있는 추천",
"follow_suggestions.view_all": "모두 보기",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "Autoriza",
"follow_request.reject": "Refuza",
"follow_requests.unlocked_explanation": "Aunke tu kuento no esta serrado, la taifa de {domain} kreye ke talvez keres revizar manualmente las solisitudes de segimento de estos kuentos.",
"follow_suggestions.curated_suggestion": "Sujestion del sirvidor",
"follow_suggestions.curated_suggestion": "Seleksyon de la taifa",
"follow_suggestions.dismiss": "No amostra mas",
"follow_suggestions.hints.featured": "Este profil tiene sido eskojido por la taifa de {domain}.",
"follow_suggestions.hints.friends_of_friends": "Este profil es popular entre las personas ke siges.",
"follow_suggestions.hints.most_followed": "Este profil es uno de los mas segidos en {domain}.",
"follow_suggestions.hints.most_interactions": "Este profil tiene resivido muncha atansion resientemente en {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Este profil es similar a otros ke tienes segido resientemente.",
"follow_suggestions.personalized_suggestion": "Sujestion personalizada",
"follow_suggestions.popular_suggestion": "Sujestion populara",
"follow_suggestions.view_all": "Ve todos",

View file

@ -269,8 +269,12 @@
"follow_request.authorize": "Autorizuoti",
"follow_request.reject": "Atmesti",
"follow_requests.unlocked_explanation": "Nors tavo paskyra neužrakinta, {domain} personalas mano, kad galbūt norėsi rankiniu būdu patikrinti šių paskyrų sekimo užklausas.",
"follow_suggestions.curated_suggestion": "Redaktorių pasirinkimas",
"follow_suggestions.curated_suggestion": "Personalo pasirinkimai",
"follow_suggestions.dismiss": "Daugiau nerodyti",
"follow_suggestions.hints.friends_of_friends": "Šis profilis yra populiarus tarp žmonių, kuriuos sekei.",
"follow_suggestions.hints.most_followed": "Šis profilis yra vienas iš labiausiai sekamų {domain}.",
"follow_suggestions.hints.most_interactions": "Pastaruoju metu šis profilis sulaukia daug dėmesio šiame {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Šis profilis panašus į profilius, kuriuos neseniai sekei.",
"follow_suggestions.personalized_suggestion": "Suasmenintas pasiūlymas",
"follow_suggestions.popular_suggestion": "Populiarus pasiūlymas",
"follow_suggestions.view_all": "Peržiūrėti viską",

View file

@ -21,6 +21,7 @@
"account.blocked": "Disekat",
"account.browse_more_on_origin_server": "Layari selebihnya di profil asal",
"account.cancel_follow_request": "Menarik balik permintaan mengikut",
"account.copy": "Salin pautan ke profil",
"account.direct": "Sebut secara persendirian @{name}",
"account.disable_notifications": "Berhenti maklumkan saya apabila @{name} mengirim hantaran",
"account.domain_blocked": "Domain disekat",
@ -31,6 +32,7 @@
"account.featured_tags.last_status_never": "Tiada hantaran",
"account.featured_tags.title": "Tanda pagar pilihan {name}",
"account.follow": "Ikuti",
"account.follow_back": "Ikut balik",
"account.followers": "Pengikut",
"account.followers.empty": "Belum ada yang mengikuti pengguna ini.",
"account.followers_counter": "{count, plural, one {{counter} Pengikut} other {{counter} Pengikut}}",
@ -51,6 +53,7 @@
"account.mute_notifications_short": "Redam pemberitahuan",
"account.mute_short": "Redam",
"account.muted": "Dibisukan",
"account.mutual": "Rakan kongsi",
"account.no_bio": "Tiada penerangan diberikan.",
"account.open_original_page": "Buka halaman asal",
"account.posts": "Hantaran",
@ -143,11 +146,19 @@
"compose_form.lock_disclaimer.lock": "dikunci",
"compose_form.placeholder": "Apakah yang sedang anda fikirkan?",
"compose_form.poll.duration": "Tempoh undian",
"compose_form.poll.multiple": "Pelbagai pilihan",
"compose_form.poll.option_placeholder": "Pilihan {number}",
"compose_form.poll.single": "Pilih satu",
"compose_form.poll.switch_to_multiple": "Ubah kepada membenarkan aneka undian",
"compose_form.poll.switch_to_single": "Ubah kepada undian pilihan tunggal",
"compose_form.poll.type": "Gaya",
"compose_form.publish": "Siaran",
"compose_form.publish_form": "Terbit",
"compose_form.reply": "Balas",
"compose_form.save_changes": "Kemas kini",
"compose_form.spoiler.marked": "Buang amaran kandungan",
"compose_form.spoiler.unmarked": "Tambah amaran kandungan",
"compose_form.spoiler_placeholder": "Amaran kandungan (pilihan)",
"confirmation_modal.cancel": "Batal",
"confirmations.block.block_and_report": "Sekat & Lapor",
"confirmations.block.confirm": "Sekat",
@ -179,6 +190,7 @@
"conversation.mark_as_read": "Tanda sudah dibaca",
"conversation.open": "Lihat perbualan",
"conversation.with": "Dengan {names}",
"copy_icon_button.copied": "Disalin ke papan klip",
"copypaste.copied": "Disalin",
"copypaste.copy_to_clipboard": "Salin ke papan klip",
"directory.federated": "Dari fediverse yang diketahui",
@ -210,6 +222,7 @@
"emoji_button.search_results": "Hasil carian",
"emoji_button.symbols": "Simbol",
"emoji_button.travel": "Kembara & Tempat",
"empty_column.account_hides_collections": "Pengguna ini telah memilih untuk tidak menyediakan informasi tersebut",
"empty_column.account_suspended": "Akaun digantung",
"empty_column.account_timeline": "Tiada hantaran di sini!",
"empty_column.account_unavailable": "Profil tidak tersedia",
@ -264,6 +277,10 @@
"follow_request.authorize": "Benarkan",
"follow_request.reject": "Tolak",
"follow_requests.unlocked_explanation": "Walaupun akaun anda tidak dikunci, kakitangan {domain} merasakan anda mungkin ingin menyemak permintaan ikutan daripada akaun ini secara manual.",
"follow_suggestions.dismiss": "Jangan papar lagi",
"follow_suggestions.personalized_suggestion": "Cadangan peribadi",
"follow_suggestions.popular_suggestion": "Cadangan terkenal",
"follow_suggestions.view_all": "Lihat semua",
"followed_tags": "Topik terpilih",
"footer.about": "Perihal",
"footer.directory": "Direktori profil",
@ -284,6 +301,9 @@
"hashtag.column_settings.tag_mode.any": "Mana-mana daripada yang ini",
"hashtag.column_settings.tag_mode.none": "Tiada apa pun daripada yang ini",
"hashtag.column_settings.tag_toggle": "Sertakan tag tambahan untuk lajur ini",
"hashtag.counter_by_accounts": "{count, plural, other {{counter} peserta}}",
"hashtag.counter_by_uses": "{count, plural, other {{counter} siaran}}",
"hashtag.counter_by_uses_today": "{count, plural, other {{counter} siaran}} hari ini",
"hashtag.follow": "Ikuti hashtag",
"hashtag.unfollow": "Nyahikut tanda pagar",
"hashtags.and_other": "…dan {count, plural, other {# more}}",
@ -370,6 +390,7 @@
"lists.search": "Cari dalam kalangan orang yang anda ikuti",
"lists.subheading": "Senarai anda",
"load_pending": "{count, plural, one {# item baharu} other {# item baharu}}",
"loading_indicator.label": "Memuatkan…",
"media_gallery.toggle_visible": "{number, plural, other {Sembunyikan imej}}",
"moved_to_account_banner.text": "Akaun anda {disabledAccount} kini dinyahdayakan kerana anda berpindah ke {movedToAccount}.",
"mute_modal.duration": "Tempoh",
@ -457,6 +478,11 @@
"onboarding.follows.empty": "Malangnya, tiada hasil dapat ditunjukkan sekarang. Anda boleh cuba menggunakan carian atau menyemak imbas halaman teroka untuk mencari orang untuk diikuti atau cuba lagi kemudian.",
"onboarding.follows.lead": "You curate your own home feed. The more people you follow, the more active and interesting it will be. These profiles may be a good starting point—you can always unfollow them later!",
"onboarding.follows.title": "Popular on Mastodon",
"onboarding.profile.display_name": "Nama paparan",
"onboarding.profile.display_name_hint": "Nama penuh anda atau nama anda yang menyeronokkan…",
"onboarding.profile.note_hint": "Anda boleh @menyebut orang lain atau #hashtags…",
"onboarding.profile.save_and_continue": "Simpan dan teruskan",
"onboarding.profile.upload_avatar": "Muat naik gambar profil",
"onboarding.share.lead": "Beritahu orang ramai bagaimana mereka boleh menemui anda di Mastodon!",
"onboarding.share.message": "Saya {username} di #Mastodon! Jom ikut saya di {url}",
"onboarding.share.next_steps": "Langkah seterusnya yang mungkin:",
@ -490,9 +516,14 @@
"poll_button.add_poll": "Tambah undian",
"poll_button.remove_poll": "Buang undian",
"privacy.change": "Ubah privasi hantaran",
"privacy.direct.long": "Semua orang yang disebutkan dalam siaran",
"privacy.direct.short": "Orang tertentu",
"privacy.private.long": "Pengikut anda sahaja",
"privacy.private.short": "Pengikut",
"privacy.public.short": "Awam",
"privacy_policy.last_updated": "Dikemaskini {date}",
"privacy_policy.title": "Dasar Privasi",
"recommended": "Disyorkan",
"refresh": "Muat semula",
"regeneration_indicator.label": "Memuatkan…",
"regeneration_indicator.sublabel": "Suapan rumah anda sedang disediakan!",
@ -507,7 +538,9 @@
"relative_time.minutes": "{number}m",
"relative_time.seconds": "{number}s",
"relative_time.today": "hari ini",
"reply_indicator.attachments": "{count, plural, other {# lampiran}}",
"reply_indicator.cancel": "Batal",
"reply_indicator.poll": "Undian",
"report.block": "Sekat",
"report.block_explanation": "Anda tidak akan melihat hantaran mereka. Mereka tidak dapat melihat hantaran anda atau mengikuti anda. Mereka akan sedar bahawa mereka disekat.",
"report.categories.legal": "Sah",

View file

@ -113,7 +113,7 @@
"column.community": "Lokale tijdlijn",
"column.direct": "Privéberichten",
"column.directory": "Gebruikersgids",
"column.domain_blocks": "Geblokkeerde domeinen",
"column.domain_blocks": "Geblokkeerde servers",
"column.favourites": "Favorieten",
"column.firehose": "Openbare tijdlijnen",
"column.follow_requests": "Volgverzoeken",
@ -230,7 +230,7 @@
"empty_column.bookmarked_statuses": "Jij hebt nog geen berichten aan je bladwijzers toegevoegd. Wanneer je er een aan jouw bladwijzers toevoegt, valt deze hier te zien.",
"empty_column.community": "De lokale tijdlijn is nog leeg. Plaats een openbaar bericht om de spits af te bijten!",
"empty_column.direct": "Je hebt nog geen privéberichten. Wanneer je er een verstuurt of ontvangt, zullen deze hier verschijnen.",
"empty_column.domain_blocks": "Er zijn nog geen geblokkeerde domeinen.",
"empty_column.domain_blocks": "Er zijn nog geen geblokkeerde servers.",
"empty_column.explore_statuses": "Momenteel zijn er geen trends. Kom later terug!",
"empty_column.favourited_statuses": "Jij hebt nog geen favoriete berichten. Wanneer je een bericht als favoriet markeert, valt deze hier te zien.",
"empty_column.favourites": "Niemand heeft dit bericht nog als favoriet gemarkeerd. Wanneer iemand dit doet, valt dat hier te zien.",
@ -277,8 +277,13 @@
"follow_request.authorize": "Goedkeuren",
"follow_request.reject": "Afwijzen",
"follow_requests.unlocked_explanation": "Ook al is jouw account niet besloten, de medewerkers van {domain} denken dat jij misschien de volgende volgverzoeken handmatig wil controleren.",
"follow_suggestions.curated_suggestion": "Keuze van de moderator(en)",
"follow_suggestions.curated_suggestion": "Speciaal geselecteerd",
"follow_suggestions.dismiss": "Niet meer weergeven",
"follow_suggestions.hints.featured": "Deze gebruiker is geselecteerd door het team van {domain}.",
"follow_suggestions.hints.friends_of_friends": "Deze gebruiker is populair onder de mensen die jij volgt.",
"follow_suggestions.hints.most_followed": "Deze gebruiker is een van de meest gevolgde gebruikers op {domain}.",
"follow_suggestions.hints.most_interactions": "Deze gebruiker is de laatste tijd erg populair op {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Deze gebruiker is vergelijkbaar met gebruikers die je recentelijk hebt gevolgd.",
"follow_suggestions.personalized_suggestion": "Gepersonaliseerde aanbeveling",
"follow_suggestions.popular_suggestion": "Populaire aanbeveling",
"follow_suggestions.view_all": "Alles weergeven",
@ -406,7 +411,7 @@
"navigation_bar.compose": "Nieuw bericht schrijven",
"navigation_bar.direct": "Privéberichten",
"navigation_bar.discover": "Ontdekken",
"navigation_bar.domain_blocks": "Geblokkeerde domeinen",
"navigation_bar.domain_blocks": "Geblokkeerde servers",
"navigation_bar.explore": "Verkennen",
"navigation_bar.favourites": "Favorieten",
"navigation_bar.filters": "Filters",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "Autoryzuj",
"follow_request.reject": "Odrzuć",
"follow_requests.unlocked_explanation": "Mimo że Twoje konto nie jest zablokowane, zespół {domain} uznał że możesz chcieć ręcznie przejrzeć prośby o możliwość obserwacji.",
"follow_suggestions.curated_suggestion": "Wybór redakcji",
"follow_suggestions.curated_suggestion": "Wybrane przez personel",
"follow_suggestions.dismiss": "Nie pokazuj ponownie",
"follow_suggestions.hints.featured": "Ten profil został wybrany przez zespół {domain}.",
"follow_suggestions.hints.friends_of_friends": "Ten profil jest popularny w gronie użytkowników, których obserwujesz.",
"follow_suggestions.hints.most_followed": "Ten profil jest jednym z najczęściej obserwowanych na {domain}.",
"follow_suggestions.hints.most_interactions": "Ten profil otrzymuje dużo interakcji na {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Ten profil jest podobny do profili ostatnio przez ciebie zaobserwowanych.",
"follow_suggestions.personalized_suggestion": "Sugestia spersonalizowana",
"follow_suggestions.popular_suggestion": "Sugestia popularna",
"follow_suggestions.view_all": "Pokaż wszystkie",

View file

@ -277,7 +277,6 @@
"follow_request.authorize": "Aprovar",
"follow_request.reject": "Recusar",
"follow_requests.unlocked_explanation": "Apesar de seu perfil não ser trancado, {domain} exige que você revise a solicitação para te seguir destes perfis manualmente.",
"follow_suggestions.curated_suggestion": "Escolha dos editores",
"follow_suggestions.dismiss": "Não mostrar novamente",
"follow_suggestions.personalized_suggestion": "Sugestão personalizada",
"follow_suggestions.popular_suggestion": "Sugestão popular",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "Autorizar",
"follow_request.reject": "Rejeitar",
"follow_requests.unlocked_explanation": "Apesar de a sua não ser privada, a administração de {domain} pensa que poderá querer rever manualmente os pedidos de seguimento dessas contas.",
"follow_suggestions.curated_suggestion": "Escolha dos Editores",
"follow_suggestions.curated_suggestion": "Escolha da equipe",
"follow_suggestions.dismiss": "Não mostrar novamente",
"follow_suggestions.hints.featured": "Este perfil foi escolhido a dedo pela equipe {domain}.",
"follow_suggestions.hints.friends_of_friends": "Este perfil é popular entre as pessoas que você segue.",
"follow_suggestions.hints.most_followed": "Este perfil é um dos mais seguidos no {domain}.",
"follow_suggestions.hints.most_interactions": "Este perfil tem recebido recentemente muita atenção no {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Este perfil é semelhante aos perfis que você seguiu mais recentemente.",
"follow_suggestions.personalized_suggestion": "Sugestão personalizada",
"follow_suggestions.popular_suggestion": "Sugestão popular",
"follow_suggestions.view_all": "Ver tudo",

View file

@ -265,7 +265,6 @@
"follow_request.authorize": "Acceptă",
"follow_request.reject": "Respinge",
"follow_requests.unlocked_explanation": "Chiar dacă contul tău nu este blocat, personalul {domain} a considerat că ai putea prefera să consulți manual cererile de abonare de la aceste conturi.",
"follow_suggestions.curated_suggestion": "Alegerile Editorilor",
"follow_suggestions.dismiss": "Nu mai afișa din nou",
"follow_suggestions.personalized_suggestion": "Sugestie personalizată",
"follow_suggestions.popular_suggestion": "Sugestie populară",

View file

@ -277,7 +277,6 @@
"follow_request.authorize": "Авторизовать",
"follow_request.reject": "Отказать",
"follow_requests.unlocked_explanation": "Хотя ваша учетная запись не закрыта, команда {domain} подумала, что вы захотите просмотреть запросы от этих учетных записей вручную.",
"follow_suggestions.curated_suggestion": "Выбор редакции",
"follow_suggestions.dismiss": "Больше не показывать",
"follow_suggestions.personalized_suggestion": "Персонализированное предложение",
"follow_suggestions.popular_suggestion": "Популярное предложение",

View file

@ -277,7 +277,6 @@
"follow_request.authorize": "Povoľ prístup",
"follow_request.reject": "Odmietni",
"follow_requests.unlocked_explanation": "Síce Váš učet nie je uzamknutý, ale {domain} tím si myslel že môžete chcieť skontrolovať žiadosti o sledovanie z týchto účtov manuálne.",
"follow_suggestions.curated_suggestion": "Výber zo servera",
"follow_suggestions.dismiss": "Znovu nezobrazuj",
"follow_suggestions.personalized_suggestion": "Prispôsobené odporúčania",
"follow_suggestions.popular_suggestion": "Populárne návrhy",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "Overi",
"follow_request.reject": "Zavrni",
"follow_requests.unlocked_explanation": "Čeprav vaš račun ni zaklenjen, zaposleni pri {domain} menijo, da bi morda želeli pregledati zahteve za sledenje teh računov ročno.",
"follow_suggestions.curated_suggestion": "Izbor urednikov",
"follow_suggestions.curated_suggestion": "Izbor osebja",
"follow_suggestions.dismiss": "Ne pokaži več",
"follow_suggestions.hints.featured": "Ta profil so izbrali skrbniki strežnika {domain}.",
"follow_suggestions.hints.friends_of_friends": "Ta profil je priljubljen med osebami, ki jim sledite.",
"follow_suggestions.hints.most_followed": "Ta profil na strežniku {domain} je en izmed najbolj sledenih.",
"follow_suggestions.hints.most_interactions": "Ta profil na strežniku {domain} je nedavno prejel veliko pozornosti.",
"follow_suggestions.hints.similar_to_recently_followed": "Ta profil je podoben profilom, ki ste jim nedavno začeli slediti.",
"follow_suggestions.personalized_suggestion": "Osebno prilagojen predlog",
"follow_suggestions.popular_suggestion": "Priljubljen predlog",
"follow_suggestions.view_all": "Pokaži vse",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "Autorizoje",
"follow_request.reject": "Hidhe tej",
"follow_requests.unlocked_explanation": "Edhe pse llogaria juaj sështë e kyçur, ekipi i {domain} mendoi se mund të donit të shqyrtonit dorazi kërkesa ndjekjeje prej këtyre llogarive.",
"follow_suggestions.curated_suggestion": "Zgjedhur nga Ekipi",
"follow_suggestions.curated_suggestion": "Zgjedhur nga ekipi",
"follow_suggestions.dismiss": "Mos shfaq më",
"follow_suggestions.hints.featured": "Ky profil është zgjedhur nga ekipi {domain}.",
"follow_suggestions.hints.friends_of_friends": "Ky profil është popullor mes personave që ndiqni.",
"follow_suggestions.hints.most_followed": "Ky profil është një nga më të ndjekur në {domain}.",
"follow_suggestions.hints.most_interactions": "Ky profil ka tërhequr mjaft vëmendjen së fundi në {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Ky profil është i ngjashëm me profile që keni ndjekur tani afër.",
"follow_suggestions.personalized_suggestion": "Sugjerim i personalizuar",
"follow_suggestions.popular_suggestion": "Sugjerim popullor",
"follow_suggestions.view_all": "Shihni krejt",

View file

@ -277,7 +277,6 @@
"follow_request.authorize": "Odobri",
"follow_request.reject": "Odbij",
"follow_requests.unlocked_explanation": "Iako vaš nalog nije zaključan, osoblje {domain} smatra da biste možda želeli da ručno pregledate zahteve za praćenje sa ovih naloga.",
"follow_suggestions.curated_suggestion": "Izbor urednika",
"follow_suggestions.dismiss": "Ne prikazuj ponovo",
"follow_suggestions.personalized_suggestion": "Personalizovani predlog",
"follow_suggestions.popular_suggestion": "Popularni predlog",

View file

@ -277,8 +277,12 @@
"follow_request.authorize": "Одобри",
"follow_request.reject": "Одбиј",
"follow_requests.unlocked_explanation": "Иако ваш налог није закључан, особље {domain} сматра да бисте можда желели да ручно прегледате захтеве за праћење са ових налога.",
"follow_suggestions.curated_suggestion": "Избор уредника",
"follow_suggestions.dismiss": "Не приказуј поново",
"follow_suggestions.hints.featured": "Овај профил је ручно изабрао тим {domain}.",
"follow_suggestions.hints.friends_of_friends": "Овај профил је популаран међу људима које пратите.",
"follow_suggestions.hints.most_followed": "Овај профил је један од најпраћенијих на {domain}.",
"follow_suggestions.hints.most_interactions": "Овај профил је недавно добио велику пажњу на {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Овај профил је сличан профилима које сте недавно запратили.",
"follow_suggestions.personalized_suggestion": "Персонализовани предлог",
"follow_suggestions.popular_suggestion": "Популарни предлог",
"follow_suggestions.view_all": "Прикажи све",

View file

@ -277,7 +277,6 @@
"follow_request.authorize": "อนุญาต",
"follow_request.reject": "ปฏิเสธ",
"follow_requests.unlocked_explanation": "แม้ว่าไม่มีการล็อคบัญชีของคุณ พนักงานของ {domain} คิดว่าคุณอาจต้องการตรวจทานคำขอติดตามจากบัญชีเหล่านี้ด้วยตนเอง",
"follow_suggestions.curated_suggestion": "คัดสรรโดยบรรณาธิการ",
"follow_suggestions.dismiss": "ไม่ต้องแสดงอีก",
"follow_suggestions.personalized_suggestion": "ข้อเสนอแนะเฉพาะบุคคล",
"follow_suggestions.popular_suggestion": "ข้อเสนอแนะยอดนิยม",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "İzin Ver",
"follow_request.reject": "Reddet",
"follow_requests.unlocked_explanation": "Hesabınız kilitli olmasa da, {domain} personeli bu hesaplardan gelen takip isteklerini gözden geçirmek isteyebileceğinizi düşündü.",
"follow_suggestions.curated_suggestion": "Editörün Seçimi",
"follow_suggestions.curated_suggestion": "Çalışanların seçtikleri",
"follow_suggestions.dismiss": "Tekrar gösterme",
"follow_suggestions.hints.featured": "Bu profil {domain} ekibi tarafından elle seçilmiştir.",
"follow_suggestions.hints.friends_of_friends": "Bu profil takip ettiğiniz insanlar arasında popülerdir.",
"follow_suggestions.hints.most_followed": "Bu, {domain} sunucusunda en fazla izlenen profildir.",
"follow_suggestions.hints.most_interactions": "Bu, {domain} sunucusunda son zamanlarda oldukça fazla dikkat çeken bir profildir.",
"follow_suggestions.hints.similar_to_recently_followed": "Bu profil, son zamanlarda takip ettiğiniz profillere benziyor.",
"follow_suggestions.personalized_suggestion": "Kişiselleşmiş öneriler",
"follow_suggestions.popular_suggestion": "Popüler öneriler",
"follow_suggestions.view_all": "Tümünü gör",

View file

@ -277,8 +277,13 @@
"follow_request.authorize": "Авторизувати",
"follow_request.reject": "Відмовити",
"follow_requests.unlocked_explanation": "Хоча ваш обліковий запис не заблоковано, персонал {domain} припускає, що, можливо, ви хотіли б переглянути ці запити на підписку.",
"follow_suggestions.curated_suggestion": "Вибір редакції",
"follow_suggestions.curated_suggestion": "Відібрано командою",
"follow_suggestions.dismiss": "Більше не показувати",
"follow_suggestions.hints.featured": "Цей профіль був обраний командою {domain}.",
"follow_suggestions.hints.friends_of_friends": "Цей профіль популярний серед тих людей, на яких ви підписані.",
"follow_suggestions.hints.most_followed": "За цим профілем один з найпопулярніших на {domain}.",
"follow_suggestions.hints.most_interactions": "Нещодавно цей профіль отримав багато уваги на {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Цей профіль схожий на профілі, за якими ви стежили останнім часом.",
"follow_suggestions.personalized_suggestion": "Персоналізована пропозиція",
"follow_suggestions.popular_suggestion": "Популярна пропозиція",
"follow_suggestions.view_all": "Переглянути все",

View file

@ -274,11 +274,16 @@
"firehose.all": "Toàn bộ",
"firehose.local": "Máy chủ này",
"firehose.remote": "Máy chủ khác",
"follow_request.authorize": "Cho phép",
"follow_request.authorize": "Chấp nhận",
"follow_request.reject": "Từ chối",
"follow_requests.unlocked_explanation": "Mặc dù tài khoản của bạn đang ở chế độ công khai, quản trị viên của {domain} vẫn tin rằng bạn sẽ muốn xem lại yêu cầu theo dõi từ những người khác.",
"follow_suggestions.curated_suggestion": "Lựa chọn của máy chủ",
"follow_suggestions.curated_suggestion": "Gợi ý từ máy chủ",
"follow_suggestions.dismiss": "Không hiện lại",
"follow_suggestions.hints.featured": "Người này được đội ngũ {domain} đề xuất.",
"follow_suggestions.hints.friends_of_friends": "Người này nổi tiếng với những người bạn theo dõi.",
"follow_suggestions.hints.most_followed": "Người này được theo dõi nhiều nhất trên {domain}.",
"follow_suggestions.hints.most_interactions": "Người này đang thu hút sự chú ý trên {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Người này có nét giống những người mà bạn theo dõi gần đây.",
"follow_suggestions.personalized_suggestion": "Gợi ý cá nhân hóa",
"follow_suggestions.popular_suggestion": "Những người nổi tiếng",
"follow_suggestions.view_all": "Xem tất cả",

View file

@ -21,7 +21,7 @@
"account.blocked": "已屏蔽",
"account.browse_more_on_origin_server": "在原始个人资料页面上浏览详情",
"account.cancel_follow_request": "撤回关注请求",
"account.copy": "复制资料链接",
"account.copy": "复制个人资料链接",
"account.direct": "私下提及 @{name}",
"account.disable_notifications": "当 @{name} 发布嘟文时不要通知我",
"account.domain_blocked": "域名已屏蔽",
@ -53,7 +53,7 @@
"account.mute_notifications_short": "关闭通知",
"account.mute_short": "隐藏",
"account.muted": "已隐藏",
"account.mutual": "互粉好友",
"account.mutual": "互相关注",
"account.no_bio": "未提供描述。",
"account.open_original_page": "打开原始页面",
"account.posts": "嘟文",
@ -277,8 +277,13 @@
"follow_request.authorize": "同意",
"follow_request.reject": "拒绝",
"follow_requests.unlocked_explanation": "尽管你没有锁嘟,但是 {domain} 的工作人员认为你也许会想手动审核审核这些账号的关注请求。",
"follow_suggestions.curated_suggestion": "主编推荐",
"follow_suggestions.curated_suggestion": "站务人员精选",
"follow_suggestions.dismiss": "不再显示",
"follow_suggestions.hints.featured": "该用户已被 {domain} 管理团队精选。",
"follow_suggestions.hints.friends_of_friends": "该用户在您关注的人中很受欢迎。",
"follow_suggestions.hints.most_followed": "该用户是 {domain} 上关注度最高的用户之一。",
"follow_suggestions.hints.most_interactions": "该用户最近在 {domain} 上获得了很多关注。",
"follow_suggestions.hints.similar_to_recently_followed": "该用户与您最近关注的用户类似。",
"follow_suggestions.personalized_suggestion": "个性化建议",
"follow_suggestions.popular_suggestion": "热门建议",
"follow_suggestions.view_all": "查看全部",
@ -442,7 +447,7 @@
"notifications.column_settings.alert": "桌面通知",
"notifications.column_settings.favourite": "喜欢:",
"notifications.column_settings.filter_bar.advanced": "显示所有类别",
"notifications.column_settings.filter_bar.category": "快速过滤栏",
"notifications.column_settings.filter_bar.category": "快速筛选栏",
"notifications.column_settings.filter_bar.show_bar": "显示过滤栏",
"notifications.column_settings.follow": "新粉丝:",
"notifications.column_settings.follow_request": "新关注请求:",

View file

@ -277,7 +277,6 @@
"follow_request.authorize": "批准",
"follow_request.reject": "拒絕",
"follow_requests.unlocked_explanation": "即使您的帳號未上鎖,{domain} 的工作人員認為您可能會想手動審核來自這些帳號的追蹤請求。",
"follow_suggestions.curated_suggestion": "編輯推薦",
"follow_suggestions.dismiss": "不再顯示",
"follow_suggestions.personalized_suggestion": "個人化推薦",
"follow_suggestions.popular_suggestion": "熱門推薦",

View file

@ -279,6 +279,11 @@
"follow_requests.unlocked_explanation": "即便您的帳號未被鎖定,{domain} 的管理員認為您可能想要自己審核這些帳號的跟隨請求。",
"follow_suggestions.curated_suggestion": "精選內容",
"follow_suggestions.dismiss": "不再顯示",
"follow_suggestions.hints.featured": "這個個人檔案是 {domain} 管理團隊精心挑選。",
"follow_suggestions.hints.friends_of_friends": "這個個人檔案於您跟隨的帳號中很受歡迎。",
"follow_suggestions.hints.most_followed": "這個個人檔案是 {domain} 中最受歡迎的帳號之一。",
"follow_suggestions.hints.most_interactions": "這個個人檔案最近於 {domain} 受到非常多關注。",
"follow_suggestions.hints.similar_to_recently_followed": "這個個人檔案與您最近跟隨之帳號類似。",
"follow_suggestions.personalized_suggestion": "個人化推薦",
"follow_suggestions.popular_suggestion": "熱門推薦",
"follow_suggestions.view_all": "檢視全部",

View file

@ -398,8 +398,8 @@ export default function compose(state = initialState, action) {
map.set('spoiler', !state.get('spoiler'));
map.set('idempotencyKey', uuid());
if (!state.get('sensitive') && state.get('media_attachments').size >= 1) {
map.set('sensitive', true);
if (state.get('media_attachments').size >= 1 && !state.get('default_sensitive')) {
map.set('sensitive', !state.get('spoiler'));
}
});
case COMPOSE_SPOILER_TEXT_CHANGE:

View file

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 -960 960 960" width="24"><path d="m260-260 300-140 140-300-300 140-140 300Zm220-180q-17 0-28.5-11.5T440-480q0-17 11.5-28.5T480-520q17 0 28.5 11.5T520-480q0 17-11.5 28.5T480-440Zm0 360q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Z"/></svg>

After

Width:  |  Height:  |  Size: 437 B

View file

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 -960 960 960" width="24"><path d="m260-260 300-140 140-300-300 140-140 300Zm220-180q-17 0-28.5-11.5T440-480q0-17 11.5-28.5T480-520q17 0 28.5 11.5T520-480q0 17-11.5 28.5T480-440Zm0 360q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z"/></svg>

After

Width:  |  Height:  |  Size: 533 B

View file

@ -210,12 +210,6 @@ html {
}
}
// Change the background colors of media and video spoilers
.media-spoiler,
.video-player__spoiler {
background: $ui-base-color;
}
.account-gallery__item a {
background-color: $ui-base-color;
}

View file

@ -4469,35 +4469,6 @@ a.status-card {
z-index: 100;
}
.media-spoiler {
background: $base-overlay-background;
color: $darker-text-color;
border: 0;
padding: 0;
width: 100%;
height: 100%;
border-radius: 4px;
appearance: none;
&:hover,
&:active,
&:focus {
padding: 0;
color: lighten($darker-text-color, 8%);
}
}
.media-spoiler__warning {
display: block;
font-size: 14px;
}
.media-spoiler__trigger {
display: block;
font-size: 11px;
font-weight: 700;
}
.spoiler-button {
top: 0;
inset-inline-start: 0;
@ -9852,6 +9823,7 @@ noscript {
flex-direction: column;
gap: 12px;
padding: 16px 0;
padding-bottom: 0;
border-bottom: 1px solid mix($ui-base-color, $ui-highlight-color, 75%);
background: mix($ui-base-color, $ui-highlight-color, 95%);
@ -9890,6 +9862,7 @@ noscript {
cursor: pointer;
top: 0;
color: $primary-text-color;
opacity: 0.5;
&.left {
left: 0;
@ -9917,6 +9890,8 @@ noscript {
&:hover,
&:focus,
&:active {
opacity: 1;
.inline-follow-suggestions__body__scroll-button__icon {
background: lighten($ui-highlight-color, 4%);
}
@ -9928,11 +9903,10 @@ noscript {
flex-wrap: nowrap;
gap: 16px;
padding: 16px;
padding-bottom: 0;
scroll-snap-type: x mandatory;
scroll-padding: 16px;
scroll-behavior: smooth;
overflow-x: hidden;
overflow-x: scroll;
&__card {
background: darken($ui-base-color, 4%);
@ -9957,6 +9931,7 @@ noscript {
position: absolute;
inset-inline-end: 8px;
top: 8px;
opacity: 0.75;
}
&__avatar {
@ -9994,6 +9969,7 @@ noscript {
gap: 4px;
overflow: hidden;
white-space: nowrap;
cursor: help;
> span {
overflow: hidden;

View file

@ -69,6 +69,12 @@ class AdminMailer < ApplicationMailer
end
end
def auto_close_registrations
locale_for_account(@me) do
mail subject: default_i18n_subject(instance: @instance)
end
end
private
def process_params

View file

@ -69,6 +69,7 @@ class Account < ApplicationRecord
)
BACKGROUND_REFRESH_INTERVAL = 1.week.freeze
INSTANCE_ACTOR_ID = -99
USERNAME_RE = /[a-z0-9_]+([a-z0-9_.-]+[a-z0-9_]+)?/i
MENTION_RE = %r{(?<![=/[:word:]])@((#{USERNAME_RE})(?:@[[:word:].-]+[[:word:]]+)?)}i
@ -92,9 +93,9 @@ class Account < ApplicationRecord
include DomainNormalizable
include Paginable
enum protocol: { ostatus: 0, activitypub: 1 }
enum suspension_origin: { local: 0, remote: 1 }, _prefix: true
enum searchability: { public: 0, private: 1, direct: 2, limited: 3, unsupported: 4, public_unlisted: 10 }, _suffix: :searchability
enum :protocol, { ostatus: 0, activitypub: 1 }
enum :suspension_origin, { local: 0, remote: 1 }, prefix: true
enum :searchability, { public: 0, private: 1, direct: 2, limited: 3, unsupported: 4, public_unlisted: 10 }, suffix: :searchability
validates :username, presence: true
validates_with UniqueUsernameValidator, if: -> { will_save_change_to_username? }
@ -127,7 +128,7 @@ class Account < ApplicationRecord
scope :sensitized, -> { where.not(sensitized_at: nil) }
scope :without_suspended, -> { where(suspended_at: nil) }
scope :without_silenced, -> { where(silenced_at: nil) }
scope :without_instance_actor, -> { where.not(id: -99) }
scope :without_instance_actor, -> { where.not(id: INSTANCE_ACTOR_ID) }
scope :recent, -> { reorder(id: :desc) }
scope :bots, -> { where(actor_type: %w(Application Service)) }
scope :groups, -> { where(actor_type: 'Group') }
@ -185,7 +186,7 @@ class Account < ApplicationRecord
end
def instance_actor?
id == -99
id == INSTANCE_ACTOR_ID
end
alias bot bot?

View file

@ -1,7 +1,7 @@
# frozen_string_literal: true
class AccountSuggestions::FriendsOfFriendsSource < AccountSuggestions::Source
def get(account, limit: 10)
def get(account, limit: DEFAULT_LIMIT)
Account.find_by_sql([<<~SQL.squish, { id: account.id, limit: limit }]).map { |row| [row.id, key] }
WITH first_degree AS (
SELECT target_account_id

View file

@ -1,7 +1,7 @@
# frozen_string_literal: true
class AccountSuggestions::GlobalSource < AccountSuggestions::Source
def get(account, limit: 10)
def get(account, limit: DEFAULT_LIMIT)
FollowRecommendation.localized(content_locale).joins(:account).merge(base_account_scope(account)).order(rank: :desc).limit(limit).pluck(:account_id, :reason)
end

View file

@ -1,7 +1,7 @@
# frozen_string_literal: true
class AccountSuggestions::SettingSource < AccountSuggestions::Source
def get(account, limit: 10)
def get(account, limit: DEFAULT_LIMIT)
if setting_enabled?
base_account_scope(account).where(setting_to_where_condition).limit(limit).pluck(:id).zip([key].cycle)
else

View file

@ -47,7 +47,7 @@ class AccountSuggestions::SimilarProfilesSource < AccountSuggestions::Source
end
end
def get(account, limit: 10)
def get(account, limit: DEFAULT_LIMIT)
recently_followed_account_ids = account.active_relationships.recent.limit(5).pluck(:target_account_id)
if Chewy.enabled? && !recently_followed_account_ids.empty?

View file

@ -1,6 +1,8 @@
# frozen_string_literal: true
class AccountSuggestions::Source
DEFAULT_LIMIT = 10
def get(_account, **kwargs)
raise NotImplementedError
end

View file

@ -17,7 +17,7 @@
#
class AccountWarning < ApplicationRecord
enum action: {
enum :action, {
none: 0,
disable: 1_000,
force_cw: 1_200,
@ -26,7 +26,7 @@ class AccountWarning < ApplicationRecord
sensitive: 2_000,
silence: 3_000,
suspend: 4_000,
}, _suffix: :action
}, suffix: :action
normalizes :text, with: ->(text) { text.to_s }, apply_to_nil: true

View file

@ -24,7 +24,7 @@ class BulkImport < ApplicationRecord
belongs_to :account
has_many :rows, class_name: 'BulkImportRow', inverse_of: :bulk_import, dependent: :delete_all
enum type: {
enum :type, {
following: 0,
blocking: 1,
muting: 2,
@ -33,7 +33,7 @@ class BulkImport < ApplicationRecord
lists: 5,
}
enum state: {
enum :state, {
unconfirmed: 0,
scheduled: 1,
in_progress: 2,

View file

@ -13,11 +13,11 @@ module Account::FinderConcern
end
def representative
actor = Account.find(-99).tap(&:ensure_keys!)
actor = Account.find(Account::INSTANCE_ACTOR_ID).tap(&:ensure_keys!)
actor.update!(username: 'mastodon.internal') if actor.username.include?(':')
actor
rescue ActiveRecord::RecordNotFound
Account.create!(id: -99, actor_type: 'Application', locked: true, username: 'mastodon.internal')
Account.create!(id: Account::INSTANCE_ACTOR_ID, actor_type: 'Application', locked: true, username: 'mastodon.internal')
end
def find_local(username)

View file

@ -35,7 +35,7 @@ class CustomFilter < ApplicationRecord
include Expireable
include Redisable
enum action: { warn: 0, hide: 1, half_warn: 2 }, _suffix: :action
enum :action, { warn: 0, hide: 1, half_warn: 2 }, suffix: :action
belongs_to :account
has_many :keywords, class_name: 'CustomFilterKeyword', inverse_of: :custom_filter, dependent: :destroy

View file

@ -32,7 +32,7 @@ class DomainBlock < ApplicationRecord
include DomainNormalizable
include DomainMaterializable
enum severity: { silence: 0, suspend: 1, noop: 2 }
enum :severity, { silence: 0, suspend: 1, noop: 2 }
validates :domain, presence: true, uniqueness: true, domain: true

View file

@ -23,8 +23,8 @@ class FriendDomain < ApplicationRecord
validates :domain, presence: true, uniqueness: true, if: :will_save_change_to_domain?
validates :inbox_url, presence: true, uniqueness: true, if: :will_save_change_to_inbox_url?
enum active_state: { idle: 0, pending: 1, accepted: 2, rejected: 3 }, _prefix: :i_am
enum passive_state: { idle: 0, pending: 1, accepted: 2, rejected: 3 }, _prefix: :they_are
enum :active_state, { idle: 0, pending: 1, accepted: 2, rejected: 3 }, prefix: :i_am
enum :passive_state, { idle: 0, pending: 1, accepted: 2, rejected: 3 }, prefix: :they_are
scope :by_domain_and_subdomains, ->(domain) { where(domain: Instance.by_domain_and_subdomains(domain).select(:domain)) }
scope :enabled, -> { where(active_state: :accepted).or(FriendDomain.where(passive_state: :accepted)).where(available: true) }

View file

@ -28,7 +28,7 @@ class Import < ApplicationRecord
belongs_to :account
enum type: { following: 0, blocking: 1, muting: 2, domain_blocking: 3, bookmarks: 4 }
enum :type, { following: 0, blocking: 1, muting: 2, domain_blocking: 3, bookmarks: 4 }
validates :type, presence: true

View file

@ -19,7 +19,7 @@ class IpBlock < ApplicationRecord
include Expireable
include Paginable
enum severity: {
enum :severity, {
sign_up_requires_approval: 5000,
sign_up_block: 5500,
no_access: 9999,

View file

@ -19,7 +19,7 @@ class List < ApplicationRecord
PER_ACCOUNT_LIMIT = 50
enum replies_policy: { list: 0, followed: 1, none: 2 }, _prefix: :show
enum :replies_policy, { list: 0, followed: 1, none: 2 }, prefix: :show
belongs_to :account, optional: true

View file

@ -16,7 +16,7 @@
#
class LoginActivity < ApplicationRecord
enum authentication_method: { password: 'password', otp: 'otp', webauthn: 'webauthn', sign_in_token: 'sign_in_token', omniauth: 'omniauth' }
enum :authentication_method, { password: 'password', otp: 'otp', webauthn: 'webauthn', sign_in_token: 'sign_in_token', omniauth: 'omniauth' }
belongs_to :user

View file

@ -39,8 +39,8 @@ class MediaAttachment < ApplicationRecord
LOCAL_STATUS_ATTACHMENT_MAX_WITH_POLL = 4
ACTIVITYPUB_STATUS_ATTACHMENT_MAX = 16
enum type: { image: 0, gifv: 1, video: 2, unknown: 3, audio: 4 }
enum processing: { queued: 0, in_progress: 1, complete: 2, failed: 3 }, _prefix: true
enum :type, { image: 0, gifv: 1, video: 2, unknown: 3, audio: 4 }
enum :processing, { queued: 0, in_progress: 1, complete: 2, failed: 3 }, prefix: true
MAX_DESCRIPTION_LENGTH = 1_500

View file

@ -17,6 +17,6 @@
class NgwordHistory < ApplicationRecord
include Paginable
enum target_type: { status: 0, account_note: 1, account_name: 2 }, _suffix: :blocked
enum reason: { ng_words: 0, ng_words_for_stranger_mention: 1, hashtag_count: 2, mention_count: 3, stranger_mention_count: 4 }, _prefix: :within
enum :target_type, { status: 0, account_note: 1, account_name: 2 }, suffix: :blocked
enum :reason, { ng_words: 0, ng_words_for_stranger_mention: 1, hashtag_count: 2, mention_count: 3, stranger_mention_count: 4 }, prefix: :within
end

View file

@ -47,8 +47,8 @@ class PreviewCard < ApplicationRecord
self.inheritance_column = false
enum type: { link: 0, photo: 1, video: 2, rich: 3 }
enum link_type: { unknown: 0, article: 1 }
enum :type, { link: 0, photo: 1, video: 2, rich: 3 }
enum :link_type, { unknown: 0, article: 1 }
has_many :preview_cards_statuses, dependent: :delete_all, inverse_of: :preview_card
has_many :statuses, through: :preview_cards_statuses

View file

@ -15,7 +15,7 @@
class Relay < ApplicationRecord
validates :inbox_url, presence: true, uniqueness: true, url: true, if: :will_save_change_to_inbox_url?
enum state: { idle: 0, pending: 1, accepted: 2, rejected: 3 }
enum :state, { idle: 0, pending: 1, accepted: 2, rejected: 3 }
scope :enabled, -> { accepted }

View file

@ -55,7 +55,7 @@ class Report < ApplicationRecord
# - app/javascript/mastodon/features/notifications/components/report.jsx
# - app/javascript/mastodon/features/report/category.jsx
# - app/javascript/mastodon/components/admin/ReportReasonSelector.jsx
enum category: {
enum :category, {
other: 0,
spam: 1_000,
legal: 1_500,

View file

@ -16,7 +16,7 @@
class SoftwareUpdate < ApplicationRecord
self.inheritance_column = nil
enum type: { patch: 0, minor: 1, major: 2 }, _suffix: :type
enum :type, { patch: 0, minor: 1, major: 2 }, suffix: :type
def gem_version
Gem::Version.new(version)

View file

@ -58,9 +58,9 @@ class Status < ApplicationRecord
update_index('statuses', :proper)
update_index('public_statuses', :proper)
enum visibility: { public: 0, unlisted: 1, private: 2, direct: 3, limited: 4, public_unlisted: 10, login: 11 }, _suffix: :visibility
enum searchability: { public: 0, private: 1, direct: 2, limited: 3, unsupported: 4, public_unlisted: 10 }, _suffix: :searchability
enum limited_scope: { none: 0, mutual: 1, circle: 2, personal: 3, reply: 4 }, _suffix: :limited
enum :visibility, { public: 0, unlisted: 1, private: 2, direct: 3, limited: 4, public_unlisted: 10, login: 11 }, suffix: :visibility
enum :searchability, { public: 0, private: 1, direct: 2, limited: 3, unsupported: 4, public_unlisted: 10 }, suffix: :searchability
enum :limited_scope, { none: 0, mutual: 1, circle: 2, personal: 3, reply: 4 }, suffix: :limited
belongs_to :application, class_name: 'Doorkeeper::Application', optional: true

View file

@ -40,6 +40,8 @@ class UserRole < ApplicationRecord
manage_ng_words: (1 << 30),
}.freeze
EVERYONE_ROLE_ID = -99
module Flags
NONE = 0
ALL = FLAGS.values.reduce(&:|)
@ -98,7 +100,10 @@ class UserRole < ApplicationRecord
before_validation :set_position
scope :assignable, -> { where.not(id: -99).order(position: :asc) }
scope :assignable, -> { where.not(id: EVERYONE_ROLE_ID).order(position: :asc) }
scope :highlighted, -> { where(highlighted: true) }
scope :with_color, -> { where.not(color: [nil, '']) }
scope :providing_styles, -> { highlighted.with_color }
has_many :users, inverse_of: :role, foreign_key: 'role_id', dependent: :nullify
@ -107,9 +112,9 @@ class UserRole < ApplicationRecord
end
def self.everyone
UserRole.find(-99)
UserRole.find(EVERYONE_ROLE_ID)
rescue ActiveRecord::RecordNotFound
UserRole.create!(id: -99, permissions: Flags::DEFAULT)
UserRole.create!(id: EVERYONE_ROLE_ID, permissions: Flags::DEFAULT)
end
def self.that_can(*any_of_privileges)
@ -117,7 +122,7 @@ class UserRole < ApplicationRecord
end
def everyone?
id == -99
id == EVERYONE_ROLE_ID
end
def nobody?

View file

@ -16,7 +16,32 @@ class TagSearchService < BaseService
private
def from_elasticsearch
query = {
definition = TagsIndex.query(elastic_search_query)
definition = definition.filter(elastic_search_filter) if @options[:exclude_unreviewed]
ensure_exact_match(definition.limit(@limit).offset(@offset).objects.compact)
rescue Faraday::ConnectionFailed, Parslet::ParseFailed
nil
end
# Since the ElasticSearch Query doesn't guarantee the exact match will be the
# first result or that it will even be returned, patch the results accordingly
def ensure_exact_match(results)
return results unless @offset.nil? || @offset.zero?
normalized_query = Tag.normalize(@query)
exact_match = results.find { |tag| tag.name.downcase == normalized_query }
exact_match ||= Tag.find_normalized(normalized_query)
unless exact_match.nil?
results.delete(exact_match)
results = [exact_match] + results
end
results
end
def elastic_search_query
{
function_score: {
query: {
multi_match: {
@ -50,8 +75,10 @@ class TagSearchService < BaseService
boost_mode: 'multiply',
},
}
end
filter = {
def elastic_search_filter
{
bool: {
should: [
{
@ -72,29 +99,6 @@ class TagSearchService < BaseService
],
},
}
definition = TagsIndex.query(query)
definition = definition.filter(filter) if @options[:exclude_unreviewed]
ensure_exact_match(definition.limit(@limit).offset(@offset).objects.compact)
rescue Faraday::ConnectionFailed, Parslet::ParseFailed
nil
end
# Since the ElasticSearch Query doesn't guarantee the exact match will be the
# first result or that it will even be returned, patch the results accordingly
def ensure_exact_match(results)
return results unless @offset.nil? || @offset.zero?
normalized_query = Tag.normalize(@query)
exact_match = results.find { |tag| tag.name.downcase == normalized_query }
exact_match ||= Tag.find_normalized(normalized_query)
unless exact_match.nil?
results.delete(exact_match)
results = [exact_match] + results
end
results
end
def from_database

View file

@ -0,0 +1,3 @@
<%= raw t('admin_mailer.auto_close_registrations.body', instance: @instance) %>
<%= raw t('application_mailer.view')%> <%= admin_settings_registrations_url %>

View file

@ -0,0 +1,33 @@
# frozen_string_literal: true
class Scheduler::AutoCloseRegistrationsScheduler
include Sidekiq::Worker
include Redisable
sidekiq_options retry: 0
# Automatically switch away from open registrations if no
# moderator had any activity in that period of time
OPEN_REGISTRATIONS_MODERATOR_THRESHOLD = 1.week + UserTrackingConcern::SIGN_IN_UPDATE_FREQUENCY
def perform
return if Rails.configuration.x.email_domains_whitelist.present? || ENV['DISABLE_AUTOMATIC_SWITCHING_TO_APPROVED_REGISTRATIONS'] == 'true'
return unless Setting.registrations_mode == 'open'
switch_to_approval_mode! unless active_moderators?
end
private
def active_moderators?
User.those_who_can(:manage_reports).exists?(current_sign_in_at: OPEN_REGISTRATIONS_MODERATOR_THRESHOLD.ago...)
end
def switch_to_approval_mode!
Setting.registrations_mode = 'approved'
User.those_who_can(:view_devops).includes(:account).find_each do |user|
AdminMailer.with(recipient: user.account).auto_close_registrations.deliver_later
end
end
end

View file

@ -1,8 +1,15 @@
# frozen_string_literal: true
unless ENV.key?('RAILS_ENV')
warn 'ERROR: Missing RAILS_ENV environment variable, please set it to "production", "development", or "test".'
exit 1
abort <<~ERROR
The RAILS_ENV environment variable is not set.
Please set it correctly depending on context:
- Use "production" for a live deployment of the application
- Use "development" for local feature work
- Use "test" when running the automated spec suite
ERROR
end
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../Gemfile', __dir__)

View file

@ -3,6 +3,7 @@ br:
about:
contact_missing: Andermenet
contact_unavailable: N'eus ket
hosted_on: Servijer Mastodon herberc'hiet war %{domain}
title: Diwar-benn
accounts:
follow: Heuliañ
@ -135,6 +136,9 @@ br:
disputes:
appeals:
title: Galvoù
domain_allows:
export: Ezporzhiañ
import: Enporzhiañ
domain_blocks:
domain: Domani
new:
@ -151,6 +155,8 @@ br:
domain: Domani
new:
create: Ouzhpenniñ un domani
export_domain_allows:
no_file: Restr ebet diuzet
follow_recommendations:
status: Statud
suppressed: Dilamet
@ -265,10 +271,12 @@ br:
delete_statuses: Dilamet eo bet toudoù %{target} gant %{name}
trends:
allow: Aotren
approved: Aprouet
links:
allow: Aotren al liamm
preview_card_providers:
title: Embannerien·ezed
rejected: Nac'het
statuses:
allow: Aotren ar c'hannad
tags:
@ -297,6 +305,9 @@ br:
title: Hashtagoù diouzh ar c'hiz
appearance:
discovery: Dizoloadur
localization:
body: Gant tud a-youl vat eo troet Mastodon.
guide_link: https://crowdin.com/project/mastodon
application_mailer:
view: 'Sellet :'
view_status: Gwelet ar c'hannad
@ -373,10 +384,12 @@ br:
title: Toudoù silet
generic:
all: Pep tra
changes_saved_msg: Enrollet eo bet ar cheñchamantoù gant berzh!
copy: Eilañ
delete: Dilemel
none: Hini ebet
order_by: Urzhiañ dre
save_changes: Enrollañ ar cheñchamantoù
today: hiziv
imports:
modes:
@ -488,6 +501,7 @@ br:
settings:
account: Kont
account_settings: Arventennoù ar gont
back: Distreiñ da vMastodon
development: Diorren
edit_profile: Kemmañ ar profil
featured_tags: Hashtagoù pennañ
@ -521,13 +535,14 @@ br:
'604800': 1 sizhunvezh
'63113904': 2 vloavezh
themes:
default: Mastodoñ (Teñval)
mastodon-light: Mastodoñ (Sklaer)
default: Mastodon (Teñval)
mastodon-light: Mastodon (Sklaer)
time:
formats:
default: "%d a viz %b %Y, %H:%M"
month: Miz %b %Y
time: "%H:%M"
with_time_zone: "%d a viz %b %Y, %H:%M %Z"
two_factor_authentication:
add: Ouzhpennañ
disable: Diweredekaat
@ -546,7 +561,7 @@ br:
none: Diwall
welcome:
edit_profile_action: Kefluniañ ar profil
subject: Donemat e Mastodoñ
subject: Donemat e Mastodon
title: Degemer mat e bourzh, %{name}!
users:
follow_limit_reached: N'hallit ket heulian muioc'h eget %{limit} a zen

View file

@ -439,6 +439,7 @@ cs:
view: Zobrazit blokaci domény
email_domain_blocks:
add_new: Přidat
allow_registrations_with_approval: Povolit registrace se schválením
attempts_over_week:
few: "%{count} pokusy o registraci za poslední týden"
many: "%{count} pokusů o registraci za poslední týden"
@ -635,6 +636,7 @@ cs:
created_at: Nahlášené
delete_and_resolve: Smazat příspěvky
forwarded: Přeposláno
forwarded_replies_explanation: Toto hlášení je od uživatele z jiného serveru, a je o obsahu z jeho serveru. Byl převeden na vás, protože nahlášený obsah odpovídá jednomu z vašich uživatelů.
forwarded_to: Přeposláno na %{domain}
mark_as_resolved: Označit jako vyřešené
mark_as_sensitive: Označit jako citlivé
@ -645,7 +647,7 @@ cs:
create_and_resolve: Vyřešit s poznámkou
create_and_unresolve: Znovu otevřít s poznámkou
delete: Smazat
placeholder: Popište, jaké akce byly vykonány, nebo jakékoliv jiné související aktuality
placeholder: Popište, jaké akce byly vykonány, nebo jakékoliv jiné související aktuality...
title: Poznámky
notes_description_html: Zobrazit a zanechat poznámky pro ostatní moderátory i sebe v budoucnu
processed_msg: Nahlášení č.%{id} bylo úspěšně zpracováno
@ -714,7 +716,7 @@ cs:
administrator_description: Uživatelé s tímto oprávněním obejdou všechna oprávnění
delete_user_data: Mazat uživatelská data
delete_user_data_description: Umožňuje uživatelům bezodkladně mazat data jiných uživatelů
invite_users: Zvát uživatele
invite_users: Pozvat uživatele
invite_users_description: Umožňuje uživatelům zvát na server nové lidi
manage_announcements: Spravovat oznámení
manage_announcements_description: Umožňuje uživatelům spravovat oznámení na serveru
@ -802,13 +804,16 @@ cs:
open: Kdokoliv se může registrovat
security:
authorized_fetch: Vyžadovat autentizaci od federovaných serverů
authorized_fetch_hint: Vyžadování ověřování pravosti od federalizovaných serverů umožňuje přísnější prosazování uživatelských i serverních bloků. K tomu však dochází k snížení výkonu, snižení dosah vašich odpovědí a můžou se zavést problémy s kompatibilitou s některými federálními službami. Kromě toho to nebude bránit oddaným uživatelům či robotům v načítání vašich veřejných příspěvků a účtů.
authorized_fetch_overridden_hint: Momentálně nemůžete změnit toto nastavení, protože je přepsáno proměnnou prostředí.
federation_authentication: Uplatnění ověřování pravosti federace
title: Nastavení serveru
site_uploads:
delete: Odstranit nahraný soubor
destroyed_msg: Upload stránky byl úspěšně smazán!
software_updates:
critical_update: Kritické — aktualizujte, prosím, co nejdříve
description: Doporučujeme udržovat vaši instalaci Mastodonu aktuální, aby se využily nejnovější opravy a funkce. Kromě toho je někdy velmi důležité včas aktualizovat Mastodon, aby se předešlo bezpečnostním problémům. Z těchto důvodů Mastodon kontroluje aktualizace každých 30 minut a bude vás informovat podle nastavení e-mailových oznámení.
documentation_link: Zjistit více
release_notes: Poznámky k vydání
title: Dostupné aktualizace
@ -1072,8 +1077,12 @@ cs:
hint_html: Ještě jedna věc! Musíme potvrdit, že jste člověk (to proto, abychom drželi stranou spam!). Vyřešte CAPTCHA níže a klikněte na "Pokračovat".
title: Bezpečnostní kontrola
confirmations:
awaiting_review: Vaše e-mailová adresa je potvrzena! Personál %{domain} nyní kontrolují vaši registraci. Pokud váš účet schválí, obdržíte e-mail!
awaiting_review_title: Vaše registrace se ověřuje
clicking_this_link: kliknutím na tento odkaz
login_link: přihlásit se
proceed_to_login_html: Nyní můžete pokračovat do %{login_link}.
redirect_to_app_html: Měli byste být přesměrováni do aplikace <strong>%{app_name}</strong>. Pokud se tak nestalo, zkuste %{clicking_this_link} nebo ručně se vrátit do aplikace.
registration_complete: Vaše registrace na %{domain} je hotová!
welcome_title: Vítám uživatele %{name}!
wrong_email_hint: Pokud není e-mail správný, můžete si ho změnit v nastavení účtu.
@ -1244,7 +1253,7 @@ cs:
date: Datum
download: Stáhnout váš archiv
hint_html: Můžete si vyžádat archiv vašich <strong>příspěvků a nahraných médií</strong>. Exportovaná data budou ve formátu ActivityPub a budou čitelná kterýmkoliv kompatibilním softwarem. Archiv si můžete vyžádat každých 7 dní.
in_progress: Kompiluji váš archiv…
in_progress: Kompilujeme váš archiv...
request: Vyžádat váš archiv
size: Velikost
blocks: Blokujete
@ -1354,6 +1363,20 @@ cs:
merge_long: Ponechat existující záznamy a přidat nové
overwrite: Přepsat
overwrite_long: Nahradit aktuální záznamy novými
overwrite_preambles:
blocking_html: Chystáte se <strong>nahradit váš seznam bloků</strong> s <strong>%{total_items} účtami</strong> od <strong>%{filename}</strong>.
bookmarks_html: Chystáte se <strong>nahradit své záložky</strong> s <strong>%{total_items} příspěvků</strong> z <strong>%{filename}</strong>.
domain_blocking_html: Chystáte se <strong>nahradit seznam stránek</strong> s <strong>%{total_items} stránek</strong> z <strong>%{filename}</strong>.
following_html: Chystáte se <strong>sledovat</strong> až <strong>%{total_items} účtů</strong> z <strong>%{filename}</strong> a <strong>přestanete sledovat všechny ostatní</strong>.
lists_html: Chystáte se <strong>nahradit své seznamy</strong> obsahem <strong>%{filename}</strong>. Až <strong>%{total_items} účtů</strong> budou přidány do nových seznamů.
muting_html: Chystáte se <strong>nahradit seznam skrytých účtů</strong> s <strong>%{total_items} účtami</strong> z <strong>%{filename}</strong>.
preambles:
blocking_html: Chystáte se <strong>blokovat</strong> až <strong>%{total_items} účtů</strong> z <strong>%{filename}</strong>.
bookmarks_html: Chystáte se přidat až <strong>%{total_items} příspěvků</strong> z <strong>%{filename}</strong> do vašich <strong>záložek</strong>.
domain_blocking_html: Chystáte se <strong>blokovat</strong> až <strong>%{total_items} stránek</strong> z <strong>%{filename}</strong>.
following_html: Chystáte se <strong>sledovat</strong> až <strong>%{total_items} účtů</strong> z <strong>%{filename}</strong>.
lists_html: Chystáte se přidat <strong>%{total_items} účtů</strong> z <strong>%{filename}</strong> do vaších <strong>seznamů</strong>. Nové seznamy budou vytvořeny, pokud neexistuje žádný seznam, do kterého by bylo možné přidat.
muting_html: Chystáte se <strong>skrýt</strong> až <strong>%{total_items} účtů</strong> z <strong>%{filename}</strong>.
preface: Můžete importovat data, která jste exportovali z jiného serveru, jako například seznam lidí, které sledujete či blokujete.
recent_imports: Nedávné importy
states:
@ -1369,8 +1392,12 @@ cs:
bookmarks: Import záložek
domain_blocking: Import blokovaných domén
following: Import sledovaných účtů
muting: Import ztlumených účtů
lists: Příjmání seznamů
muting: Dovoz skrytých uživatelů
type: Typ importu
type_groups:
constructive: Sledování a Záložky
destructive: Bloky & skrytí
types:
blocking: Seznam blokovaných
bookmarks: Záložky
@ -1391,6 +1418,7 @@ cs:
'86400': 1 den
expires_in_prompt: Nikdy
generate: Vygenerovat zvací odkaz
invalid: Tato pozvánka není platná
invited_by: 'Pozval váš uživatel:'
max_uses:
few: "%{count} použití"
@ -1417,6 +1445,21 @@ cs:
failed_sign_in_html: Neúspěšný pokus o přihlášení %{method} z %{ip} (%{browser})
successful_sign_in_html: Úspěšné přihlášení %{method} z %{ip} (%{browser})
title: Historie přihlášení
mail_subscriptions:
unsubscribe:
action: Ano, odeberte odběr
complete: Odběr byl odhlášen
confirmation_html: Opravdu nechcete dostávat %{type} pro Mastodon na %{domain} na váš e-mail %{email}? Vždy se můžete opět přihlásit do <a href="%{settings_path}">nastavení e-mailových oznámení</a>.
emails:
notification_emails:
favourite: e-mailové oznámení při oblíbení
follow: e-mailové oznámení při sledování
follow_request: e-mail při žádost o sledování
mention: e-mailové oznámení při zmínění
reblog: e-mailové oznámení při boostu
resubscribe_html: Při omylu se můžete znovu přihlásit do vaších <a href="%{settings_path}">nastavení e-mailových oznámení</a>.
success_html: Již nebudete dostávat %{type} pro Mastodon na %{domain} na vaší e-mailové adrese %{email}.
title: Odhlásit odběr
media_attachments:
validations:
images_and_video: K příspěvku, který již obsahuje obrázky, nelze připojit video
@ -1496,6 +1539,7 @@ cs:
update:
subject: Uživatel %{name} upravil příspěvek
notifications:
administration_emails: E-mailová oznámení administrátora
email_events: Události pro e-mailová oznámení
email_events_hint: 'Vyberte události, pro které chcete dostávat oznámení:'
other_settings: Další nastavení oznámení
@ -1554,6 +1598,9 @@ cs:
errors:
limit_reached: Dosažen limit různých reakcí
unrecognized_emoji: není známý smajlík
redirects:
prompt: Pokud tomuto odkazu důvěřujete, klikněte na něj a pokračujte.
title: Odcházíte z %{instance}.
relationships:
activity: Aktivita účtu
confirm_follow_selected_followers: Jste si jisti, že chcete sledovat vybrané sledující?
@ -1616,6 +1663,7 @@ cs:
unknown_browser: Neznámý prohlížeč
weibo: Weibo
current_session: Aktuální relace
date: Datum
description: "%{browser} na systému %{platform}"
explanation: Tohle jsou webové prohlížeče aktuálně přihlášené na váš účet Mastodon.
ip: IP adresa
@ -1772,8 +1820,10 @@ cs:
default: "%d. %b %Y, %H:%M"
month: "%b %Y"
time: "%H:%M"
with_time_zone: "%b %d, %Y, %H:%M %Z"
translation:
errors:
quota_exceeded: Byla vyčerpaná kvóta pro využívání překládací služby na úrovni serveru.
too_many_requests: Na překladatelskou službu bylo zasláno v poslední době příliš mnoho požadavků.
two_factor_authentication:
add: Přidat
@ -1792,16 +1842,27 @@ cs:
webauthn: Bezpečnostní klíče
user_mailer:
appeal_approved:
action: Možnosti Účtu
explanation: Odvolání proti prohřešku vašeho účtu ze dne %{strike_date}, které jste podali %{appeal_date}, bylo schváleno. Váš účet je opět v pořádku.
subject: Vaše odvolání ze dne %{date} bylo schváleno
subtitle: Váš účet je opět v dobrém stavu.
title: Odvolání schváleno
appeal_rejected:
explanation: Odvolání proti prohřešku vašeho účtu ze dne %{strike_date}, které jste podali %{appeal_date}, bylo zamítnuto.
subject: Vaše odvolání z %{date} bylo zamítnuto
subtitle: Vaše odvolání bylo zamítnuto.
title: Odvolání zamítnuto
backup_ready:
explanation: Požádali jste o úplnou zálohu vašeho účtu Mastodon.
extra: Nyní je připraven ke stažení!
subject: Váš archiv je připraven ke stažení
title: Stažení archivu
failed_2fa:
details: 'Zde jsou podrobnosti o pokusu o přihlášení:'
explanation: Někdo se pokusil přihlásit k vašemu účtu, ale poskytl neplatný token Dvoufázového ověření.
further_actions_html: Pokud jste to nebyl, doporučujeme vám okamžitě %{action}, protože váš účet mohl být napaden.
subject: Druhý omyl při Dvoufázovém ověření
title: Omyl při Dvoufázovém ověření
suspicious_sign_in:
change_password: změnit vaše heslo
details: 'Tady jsou detaily přihášení:'
@ -1855,10 +1916,13 @@ cs:
go_to_sso_account_settings: Přejděte do nastavení účtu poskytovatele identity
invalid_otp_token: Neplatný kód pro dvoufázové ověřování
otp_lost_help_html: Pokud jste ztratili přístup k oběma, spojte se s %{email}
rate_limited: Příliš mnoho pokusů o ověření, zkuste to znovu později.
seamless_external_login: Jste přihlášeni přes externí službu, nastavení hesla a e-mailu proto nejsou dostupná.
signed_in_as: 'Přihlášeni jako:'
verification:
extra_instructions_html: <strong>Tip:</strong> Odkaz na vaší webové stránce může být neviditelný. Důležitou součástí je <code>rel="me"</code>, která brání proti napodování vás na webových stránkách s obsahem vytvořeným uživatelem. Můžete dokonce použít <code>odkaz</code> v záhlaví stránky místo <code>a</code>, ale HTML musí být přístupné bez spuštění JavaScript.
here_is_how: Jak na to
hint_html: "<strong>Ověření Vaší identity na Mastodonu je pro každého výborné.</strong> Na základě otevřených webových standardů, nyní a navždy zdarma. Jediné, co potřebujete, je osobní webová stránka, na které vás lidé poznají. Když odkazujete na tuto stránku z vašeho profilu, zkontrolujeme, zda webové stránky odkazují na váš profil a zobrazí na něm vizuální indikátor."
instructions_html: Zkopírujte a vložte níže uvedený kód do HTML vašeho webu. Poté přidejte adresu vašeho webu do jednoho z extra políček na vašem profilu na záložce "Upravit profil" a uložte změny.
verification: Ověření
verified_links: Vaše ověřené odkazy

View file

@ -12,6 +12,7 @@ bg:
last_attempt: Разполагате с още един опит преди акаунтът ви да се заключи.
locked: Вашият акаунт е заключен.
not_found_in_database: Невалиден %{authentication_keys} или парола.
omniauth_user_creation_failure: Грешка, сътворявайки акаунт за тази самоличност.
pending: Вашият акаунт все още е в процес на проверка.
timeout: Заседанието ви изтече. Влезте пак, за да продължите.
unauthenticated: Преди да продължите, трябва да влезете или да се регистрирате.

View file

@ -19,7 +19,7 @@ br:
mailer:
confirmation_instructions:
action: Gwiriekaat ar chomlec'h postel
action_with_app: Kadarnaat ha distroiñ da %{app}
action_with_app: Kadarnaat ha distreiñ da %{app}
explanation: Krouet ho peus ur c'hont war %{host} gant ar chomlec'h-postel-mañ. N'eus nemet ur c'hlik evit bevaat anezhañ. Ma ne oa ket krouet ganeoc'h, dianavezit ar postel-se.
explanation_when_pending: Enskrivañ ho peus d'ur c'hemennad da %{host} gant ar chomlec'h-postel-se. Pa vo kadarnaet ho chomlec'h-postel, hoc'h enskrivadur a vo asantet. Gallout a rit mont-tre evit kemmañ munudoù ho kont pe skarzhañ anezhañ, met ne c'hellit ket implijout ul lod eus an aezamantoù par ma n'eo ket asantet ho kont. Ma vefe hoc'h enskrivadur nac'het, ho keloù a vefe skarzhet, neuze ne vo ket ret deoc'h ober netra ken. Ma ne oa ket ac'hanoc'h, dianavezit ar postel-se.
extra_html: Mar plij, gwiriit ivez <a href="%{terms_path}"> reolennoù ar servijer</a> ha <a href="%{policy_path}"> hon divizoù-implij</a>.

View file

@ -12,6 +12,7 @@ cs:
last_attempt: Máte ještě jeden pokus, než bude váš účet uzamčen.
locked: Váš účet je uzamčen.
not_found_in_database: Neplatné %{authentication_keys} nebo heslo.
omniauth_user_creation_failure: Při vytvoření účtu pro tuto identitu se nastala chyba.
pending: Váš účet je stále posuzován.
timeout: Vaše relace vypršela. Pro pokračování se prosím přihlaste znovu.
unauthenticated: Před pokračováním se musíte přihlásit nebo zaregistrovat.
@ -47,15 +48,20 @@ cs:
subject: 'Mastodon: Instrukce pro obnovení hesla'
title: Obnovení hesla
two_factor_disabled:
explanation: Přihlášení je nyní možné pouze pomocí emailové adresy a hesla.
subject: 'Mastodon: Dvoufázové ověření bylo vypnuto'
title: 2FA bylo vypnuto
subtitle: Dvoufaktorové ověřování vašeho účtu bylo vypnuto.
title: Dvoufázové ověření bylo vypnuto
two_factor_enabled:
explanation: Pro přihlášení bude vyžadován token generovaný spárovanou TOTP aplikací.
subject: 'Mastodon: Dvoufázové ověření bylo zapnuto'
title: 2FA bylo zapnuto
subtitle: Dvoufaktorové ověřování vašeho účtu bylo zapnuto.
title: Dvoufázové ověření bylo zapnuto
two_factor_recovery_codes_changed:
explanation: Předchozí záložní kódy byly zrušeny a byly vygenerovány nové.
subject: 'Mastodon: Dvoufázové záložní kódy byly znovu vygenerovány'
title: Záložní kódy pro 2FA byly změněny
subject: 'Mastodon: Záložní kódy pro dvoufázové ověření byly znovu vygenerovány'
subtitle: Předchozí záložní kódy byly zrušeny a byly vygenerovány nové.
title: Záložní kódy pro dvoufázové ověření byly změněny
unlock_instructions:
subject: 'Mastodon: Instrukce pro odemčení účtu'
webauthn_credential:
@ -68,9 +74,13 @@ cs:
subject: 'Mastodon: Bezpečnostní klíč byl smazán'
title: Jeden z vašich bezpečnostních klíčů byl smazán
webauthn_disabled:
subject: 'Mastodon: Přihlašování bezpečnostními klíči bylo vypnuto'
explanation: 'Mastodon: Přihlašování pomocí bezpečnostními klíčemi bylo pro váš účet vypnuto.'
extra: Přihlášení je nyní možné pouze pomocí tokenem vygenerovaný spárovanou TOTP aplikací.
subject: 'Mastodon: Přihlašování pomocí bezpečnostními klíčemi bylo vypnuto'
title: Bezpečnostní klíče byly zakázány
webauthn_enabled:
explanation: 'Mastodon: Přihlašování bezpečnostními klíči bylo pro váš účet povoleno.'
extra: Váš bezpečnostní klíč nyní může být použit pro přihlášení.
subject: 'Mastodon: Přihlašování bezpečnostními klíči bylo povoleno'
title: Bezpečnostní klíče byly povoleny
omniauth_callbacks:

View file

@ -12,6 +12,7 @@ cy:
last_attempt: Mae gennych un cyfle arall cyn i'ch cyfrif gael ei gloi.
locked: Mae eich cyfrif wedi ei gloi.
not_found_in_database: "%{authentication_keys} neu gyfrinair annilys."
omniauth_user_creation_failure: Gwall wrth greu cyfrif ar gyfer yr hunaniaeth hon.
pending: Mae eich cyfrif dal o dan adolygiad.
timeout: Mae eich sesiwn wedi dod i ben. Mewngofnodwch eto i barhau.
unauthenticated: Mae angen i chi fewngofnodi neu gofrestru cyn parhau.

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