diff options
108 files changed, 1004 insertions, 571 deletions
diff --git a/.github/workflows/build-image.yml b/.github/workflows/build-image.yml index bf50afe8c..51ee8a071 100644 --- a/.github/workflows/build-image.yml +++ b/.github/workflows/build-image.yml @@ -17,7 +17,7 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - - uses: hadolint/hadolint-action@v3.0.0 + - uses: hadolint/hadolint-action@v3.1.0 - uses: docker/setup-qemu-action@v2 - uses: docker/setup-buildx-action@v2 - uses: docker/login-action@v2 diff --git a/Gemfile b/Gemfile index 1af346093..dd3d59d2d 100644 --- a/Gemfile +++ b/Gemfile @@ -15,7 +15,7 @@ gem 'rack', '~> 2.2.6' gem 'hamlit-rails', '~> 0.2' gem 'pg', '~> 1.4' gem 'makara', '~> 0.5' -gem 'pghero', '~> 2.8' +gem 'pghero' gem 'dotenv-rails', '~> 2.8' gem 'aws-sdk-s3', '~> 1.117', require: false diff --git a/Gemfile.lock b/Gemfile.lock index accb3744c..2160c1579 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -174,7 +174,7 @@ GEM cocoon (1.2.15) coderay (1.1.3) color_diff (0.1) - concurrent-ruby (1.1.10) + concurrent-ruby (1.2.0) connection_pool (2.3.0) cose (1.2.1) cbor (~> 0.5.9) @@ -470,8 +470,8 @@ GEM pastel (0.8.0) tty-color (~> 0.5) pg (1.4.5) - pghero (2.8.3) - activerecord (>= 5) + pghero (3.1.0) + activerecord (>= 6) pkg-config (1.5.1) posix-spawn (0.3.15) premailer (1.18.0) @@ -560,7 +560,7 @@ GEM redis (>= 4) redlock (1.3.2) redis (>= 3.0.0, < 6.0) - regexp_parser (2.6.1) + regexp_parser (2.6.2) request_store (1.5.1) rack (>= 1.4) responders (3.0.1) @@ -595,7 +595,7 @@ GEM rspec-support (3.11.1) rspec_junit_formatter (0.6.0) rspec-core (>= 2, < 4, != 2.12.0) - rubocop (1.43.0) + rubocop (1.44.0) json (~> 2.3) parallel (~> 1.10) parser (>= 3.2.0.0) @@ -616,9 +616,9 @@ GEM activesupport (>= 4.2.0) rack (>= 1.1) rubocop (>= 1.33.0, < 2.0) - rubocop-rspec (2.18.0) + rubocop-rspec (2.18.1) rubocop (~> 1.33) - rubocop-capybara + rubocop-capybara (~> 2.17) ruby-progressbar (1.11.0) ruby-saml (1.13.0) nokogiri (>= 1.10.5) @@ -833,7 +833,7 @@ DEPENDENCIES ox (~> 2.14) parslet pg (~> 1.4) - pghero (~> 2.8) + pghero pkg-config (~> 1.5) posix-spawn premailer-rails diff --git a/app/helpers/admin/action_logs_helper.rb b/app/helpers/admin/action_logs_helper.rb index 215ecea0d..4018ef6b1 100644 --- a/app/helpers/admin/action_logs_helper.rb +++ b/app/helpers/admin/action_logs_helper.rb @@ -20,7 +20,7 @@ module Admin::ActionLogsHelper when 'Status' link_to log.human_identifier, log.permalink when 'AccountWarning' - link_to log.human_identifier, admin_account_path(log.target_id) + link_to log.human_identifier, disputes_strike_path(log.target_id) when 'Announcement' link_to truncate(log.human_identifier), edit_admin_announcement_path(log.target_id) when 'IpBlock', 'Instance', 'CustomEmoji' diff --git a/app/javascript/mastodon/components/autosuggest_input.js b/app/javascript/mastodon/components/autosuggest_input.js index 12d44b5d0..b8f8c6f45 100644 --- a/app/javascript/mastodon/components/autosuggest_input.js +++ b/app/javascript/mastodon/components/autosuggest_input.js @@ -50,6 +50,7 @@ export default class AutosuggestInput extends ImmutablePureComponent { id: PropTypes.string, searchTokens: PropTypes.arrayOf(PropTypes.string), maxLength: PropTypes.number, + lang: PropTypes.string, }; static defaultProps = { @@ -185,7 +186,7 @@ export default class AutosuggestInput extends ImmutablePureComponent { } render () { - const { value, suggestions, disabled, placeholder, onKeyUp, autoFocus, className, id, maxLength } = this.props; + const { value, suggestions, disabled, placeholder, onKeyUp, autoFocus, className, id, maxLength, lang } = this.props; const { suggestionsHidden } = this.state; return ( @@ -210,6 +211,7 @@ export default class AutosuggestInput extends ImmutablePureComponent { id={id} className={className} maxLength={maxLength} + lang={lang} /> </label> diff --git a/app/javascript/mastodon/components/autosuggest_textarea.js b/app/javascript/mastodon/components/autosuggest_textarea.js index 08b9cd80b..b6c590916 100644 --- a/app/javascript/mastodon/components/autosuggest_textarea.js +++ b/app/javascript/mastodon/components/autosuggest_textarea.js @@ -48,6 +48,7 @@ export default class AutosuggestTextarea extends ImmutablePureComponent { onKeyDown: PropTypes.func, onPaste: PropTypes.func.isRequired, autoFocus: PropTypes.bool, + lang: PropTypes.string, }; static defaultProps = { @@ -192,7 +193,7 @@ export default class AutosuggestTextarea extends ImmutablePureComponent { } render () { - const { value, suggestions, disabled, placeholder, onKeyUp, autoFocus, children } = this.props; + const { value, suggestions, disabled, placeholder, onKeyUp, autoFocus, lang, children } = this.props; const { suggestionsHidden } = this.state; return [ @@ -216,6 +217,7 @@ export default class AutosuggestTextarea extends ImmutablePureComponent { onPaste={this.onPaste} dir='auto' aria-autocomplete='list' + lang={lang} /> </label> </div> diff --git a/app/javascript/mastodon/features/audio/index.js b/app/javascript/mastodon/features/audio/index.js index 00854d0e4..21a453d2c 100644 --- a/app/javascript/mastodon/features/audio/index.js +++ b/app/javascript/mastodon/features/audio/index.js @@ -59,7 +59,7 @@ class Audio extends React.PureComponent { duration: null, paused: true, muted: false, - volume: 0.5, + volume: 1, dragging: false, revealed: this.props.visible !== undefined ? this.props.visible : (displayMedia !== 'hide_all' && !this.props.sensitive || displayMedia === 'show_all'), }; @@ -80,8 +80,8 @@ class Audio extends React.PureComponent { _pack() { return { src: this.props.src, - volume: this.audio.volume, - muted: this.audio.muted, + volume: this.state.volume, + muted: this.state.muted, currentTime: this.audio.currentTime, poster: this.props.poster, backgroundColor: this.props.backgroundColor, @@ -115,7 +115,8 @@ class Audio extends React.PureComponent { this.audio = c; if (this.audio) { - this.setState({ volume: this.audio.volume, muted: this.audio.muted }); + this.audio.volume = 1; + this.audio.muted = false; } } @@ -202,7 +203,9 @@ class Audio extends React.PureComponent { const muted = !this.state.muted; this.setState({ muted }, () => { - this.audio.muted = muted; + if (this.gainNode) { + this.gainNode.gain.value = muted ? 0 : this.state.volume; + } }); } @@ -280,7 +283,9 @@ class Audio extends React.PureComponent { if(!isNaN(x)) { this.setState({ volume: x }, () => { - this.audio.volume = x; + if (this.gainNode) { + this.gainNode.gain.value = this.state.muted ? 0 : x; + } }); } }, 15); @@ -313,20 +318,12 @@ class Audio extends React.PureComponent { } handleLoadedData = () => { - const { autoPlay, currentTime, volume, muted } = this.props; + const { autoPlay, currentTime } = this.props; if (currentTime) { this.audio.currentTime = currentTime; } - if (volume !== undefined) { - this.audio.volume = volume; - } - - if (muted !== undefined) { - this.audio.muted = muted; - } - if (autoPlay) { this.togglePlay(); } @@ -336,11 +333,16 @@ class Audio extends React.PureComponent { const AudioContext = window.AudioContext || window.webkitAudioContext; const context = new AudioContext(); const source = context.createMediaElementSource(this.audio); + const gainNode = context.createGain(); + + gainNode.gain.value = this.state.muted ? 0 : this.state.volume; this.visualizer.setAudioContext(context, source); - source.connect(context.destination); + source.connect(gainNode); + gainNode.connect(context.destination); this.audioContext = context; + this.gainNode = gainNode; } handleDownload = () => { diff --git a/app/javascript/mastodon/features/compose/components/compose_form.js b/app/javascript/mastodon/features/compose/components/compose_form.js index ebdd55d33..91d21f12d 100644 --- a/app/javascript/mastodon/features/compose/components/compose_form.js +++ b/app/javascript/mastodon/features/compose/components/compose_form.js @@ -65,6 +65,7 @@ class ComposeForm extends ImmutablePureComponent { anyMedia: PropTypes.bool, isInReply: PropTypes.bool, singleColumn: PropTypes.bool, + lang: PropTypes.string, }; static defaultProps = { @@ -241,6 +242,7 @@ class ComposeForm extends ImmutablePureComponent { searchTokens={[':']} id='cw-spoiler-input' className='spoiler-input__input' + lang={this.props.lang} /> </div> @@ -258,6 +260,7 @@ class ComposeForm extends ImmutablePureComponent { onSuggestionSelected={this.onSuggestionSelected} onPaste={onPaste} autoFocus={autoFocus} + lang={this.props.lang} > <EmojiPickerDropdown onPickEmoji={this.handleEmojiPick} /> diff --git a/app/javascript/mastodon/features/compose/containers/compose_form_container.js b/app/javascript/mastodon/features/compose/containers/compose_form_container.js index 14cf9230b..2b7642237 100644 --- a/app/javascript/mastodon/features/compose/containers/compose_form_container.js +++ b/app/javascript/mastodon/features/compose/containers/compose_form_container.js @@ -26,6 +26,7 @@ const mapStateToProps = state => ({ isUploading: state.getIn(['compose', 'is_uploading']), anyMedia: state.getIn(['compose', 'media_attachments']).size > 0, isInReply: state.getIn(['compose', 'in_reply_to']) !== null, + lang: state.getIn(['compose', 'language']), }); const mapDispatchToProps = (dispatch) => ({ diff --git a/app/javascript/mastodon/features/notifications/components/notification.js b/app/javascript/mastodon/features/notifications/components/notification.js index ea2c9c0a4..746d085c6 100644 --- a/app/javascript/mastodon/features/notifications/components/notification.js +++ b/app/javascript/mastodon/features/notifications/components/notification.js @@ -246,7 +246,11 @@ class Notification extends ImmutablePureComponent { } renderStatus (notification, link) { - const { intl, unread } = this.props; + const { intl, unread, status } = this.props; + + if (!status) { + return null; + } return ( <HotKeys handlers={this.getHandlers()}> @@ -264,6 +268,7 @@ class Notification extends ImmutablePureComponent { <StatusContainer id={notification.get('status')} account={notification.get('account')} + contextType='notifications' muted withDismiss hidden={this.props.hidden} @@ -278,7 +283,11 @@ class Notification extends ImmutablePureComponent { } renderUpdate (notification, link) { - const { intl, unread } = this.props; + const { intl, unread, status } = this.props; + + if (!status) { + return null; + } return ( <HotKeys handlers={this.getHandlers()}> @@ -296,6 +305,7 @@ class Notification extends ImmutablePureComponent { <StatusContainer id={notification.get('status')} account={notification.get('account')} + contextType='notifications' muted withDismiss hidden={this.props.hidden} @@ -310,10 +320,14 @@ class Notification extends ImmutablePureComponent { } renderPoll (notification, account) { - const { intl, unread } = this.props; + const { intl, unread, status } = this.props; const ownPoll = me === account.get('id'); const message = ownPoll ? intl.formatMessage(messages.ownPoll) : intl.formatMessage(messages.poll); + if (!status) { + return null; + } + return ( <HotKeys handlers={this.getHandlers()}> <div className={classNames('notification notification-poll focusable', { unread })} tabIndex='0' aria-label={notificationForScreenReader(intl, message, notification.get('created_at'))}> @@ -334,6 +348,7 @@ class Notification extends ImmutablePureComponent { <StatusContainer id={notification.get('status')} account={account} + contextType='notifications' muted withDismiss hidden={this.props.hidden} diff --git a/app/javascript/mastodon/features/notifications/containers/notification_container.js b/app/javascript/mastodon/features/notifications/containers/notification_container.js index 8bd5b3d78..8c5688acb 100644 --- a/app/javascript/mastodon/features/notifications/containers/notification_container.js +++ b/app/javascript/mastodon/features/notifications/containers/notification_container.js @@ -24,7 +24,7 @@ const makeMapStateToProps = () => { const notification = getNotification(state, props.notification, props.accountId); return { notification: notification, - status: notification.get('status') ? getStatus(state, { id: notification.get('status') }) : null, + status: notification.get('status') ? getStatus(state, { id: notification.get('status'), contextType: 'notifications' }) : null, report: notification.get('report') ? getReport(state, notification.get('report'), notification.getIn(['report', 'target_account', 'id'])) : null, }; }; diff --git a/app/javascript/mastodon/locales/ar.json b/app/javascript/mastodon/locales/ar.json index 514b50023..835312a36 100644 --- a/app/javascript/mastodon/locales/ar.json +++ b/app/javascript/mastodon/locales/ar.json @@ -264,7 +264,7 @@ "follow_request.authorize": "ترخيص", "follow_request.reject": "رفض", "follow_requests.unlocked_explanation": "على الرغم من أن حسابك غير مقفل، فإن موظفين الـ{domain} ظنوا أنك قد ترغب في مراجعة طلبات المتابعة من هذه الحسابات يدوياً.", - "followed_tags": "Followed hashtags", + "followed_tags": "الوسوم المتابَعة", "footer.about": "حَول", "footer.directory": "دليل الصفحات التعريفية", "footer.get_app": "احصل على التطبيق", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "المفضلة", "navigation_bar.filters": "الكلمات المكتومة", "navigation_bar.follow_requests": "طلبات المتابعة", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "الوسوم المتابَعة", "navigation_bar.follows_and_followers": "المتابِعين والمتابَعون", "navigation_bar.lists": "القوائم", "navigation_bar.logout": "خروج", diff --git a/app/javascript/mastodon/locales/bg.json b/app/javascript/mastodon/locales/bg.json index 8dfd8944a..f4d3a6ab7 100644 --- a/app/javascript/mastodon/locales/bg.json +++ b/app/javascript/mastodon/locales/bg.json @@ -1,7 +1,7 @@ { "about.blocks": "Модерирани сървъри", "about.contact": "За контакти:", - "about.disclaimer": "Mastodon е безплатен софтуер с отворен изходен код и търговска марка Mastodon gGmbH.", + "about.disclaimer": "Mastodon е безплатен софтуер с отворен изходен код и търговска марка на Mastodon gGmbH.", "about.domain_blocks.no_reason_available": "Няма налична причина", "about.domain_blocks.preamble": "Mastodon обикновено позволява да разглеждате съдържание и да взаимодействате с други потребители от всякакви сървъри във Федивърс. Има изключения, направени конкретно за този сървър.", "about.domain_blocks.silenced.explanation": "Обикновено няма да виждате профили и съдържание, освен ако изрично не го потърсите или се включете в него, следвайки го.", @@ -213,7 +213,7 @@ "empty_column.account_unavailable": "Профилът не е наличен", "empty_column.blocks": "Още не сте блокирали никакви потребители.", "empty_column.bookmarked_statuses": "Още не сте отметнали публикации. Отметвайки някоя, то тя ще се покаже тук.", - "empty_column.community": "Локалният инфопоток е празен. Публикувайте нещо, за да започнете!", + "empty_column.community": "Местната часова ос е празна. Напишете нещо обществено, за да завъртите нещата!", "empty_column.direct": "Все още нямате лични съобщения. Когато изпратите или получите някое, то ще се покаже тук.", "empty_column.domain_blocks": "Още няма блокирани домейни.", "empty_column.explore_statuses": "Няма нищо налагащо се в момента. Проверете пак по-късно!", @@ -221,7 +221,7 @@ "empty_column.favourites": "Още никой не е поставил публикацията в любими. Когато някой го направи, този човек ще се покаже тук.", "empty_column.follow_recommendations": "Изглежда, че няма предложения, които може да се породят за вас. Може да опитате да потърсите хора, които познавате или да разгледате налагащи се хаштагове.", "empty_column.follow_requests": "Още нямате заявки за последване. Получавайки такава, то тя ще се покаже тук.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Още не сте последвали никакви хаштагове. Последваните хаштагове ще се покажат тук.", "empty_column.hashtag": "Още няма нищо в този хаштаг.", "empty_column.home": "Вашата начална часова ос е празна! Последвайте повече хора, за да я запълните. {suggestions}", "empty_column.home.suggestions": "Преглед на някои предложения", @@ -232,7 +232,7 @@ "empty_column.public": "Тук няма нищо! Публикувайте нещо или последвайте потребители от други сървъри, за да го напълните", "error.unexpected_crash.explanation": "Поради грешка в нашия код или проблем със съвместимостта на браузъра, тази страница не може да се покаже правилно.", "error.unexpected_crash.explanation_addons": "Страницата не можа да се покаже правилно. Тази грешка вероятно е причинена от добавка на браузъра или от средства за автоматичен превод.", - "error.unexpected_crash.next_steps": "Опитайте да опресните страницата. Ако това не помогне, все още можете да използвате Mastodon чрез различен браузър или приложение.", + "error.unexpected_crash.next_steps": "Опитайте опресняване на страницата. Ако това не помогне, още може да използвате Mastodon през различен браузър или приложение.", "error.unexpected_crash.next_steps_addons": "Опитайте се да ги изключите и да опресните страницата. Ако това не помогне, то още може да използвате Mastodon чрез различен браузър или приложение.", "errors.unexpected_crash.copy_stacktrace": "Копиране на трасето на стека в буферната памет", "errors.unexpected_crash.report_issue": "Сигнал за проблем", @@ -260,11 +260,11 @@ "filter_modal.title.status": "Филтриране на публ.", "follow_recommendations.done": "Готово", "follow_recommendations.heading": "Следвайте хора, от които харесвате да виждате публикации! Ето някои предложения.", - "follow_recommendations.lead": "Съобщения от хора, които следвате, ще се показват в хронологичен ред във вашия основен инфопоток. Не се страхувайте, че ще сгрешите, по всяко време много лесно можете да спрете да ги следвате!", + "follow_recommendations.lead": "Публикациите от последваните, ще се показват в хронологичен ред в началния ви инфоканал. Не се страхувайте, че ще сгрешите, по всяко време много лесно може да спрете да ги следвате!", "follow_request.authorize": "Упълномощаване", "follow_request.reject": "Отхвърляне", "follow_requests.unlocked_explanation": "Въпреки че акаунтът ви не е заключен, служителите на {domain} помислиха, че може да искате да преглеждате ръчно заявките за последване на тези профили.", - "followed_tags": "Followed hashtags", + "followed_tags": "Последвани хештагове", "footer.about": "Относно", "footer.directory": "Директория на профилите", "footer.get_app": "Вземане на приложението", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Любими", "navigation_bar.filters": "Заглушени думи", "navigation_bar.follow_requests": "Заявки за последване", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Последвани хештагове", "navigation_bar.follows_and_followers": "Последвания и последователи", "navigation_bar.lists": "Списъци", "navigation_bar.logout": "Излизане", @@ -392,7 +392,7 @@ "navigation_bar.public_timeline": "Федеративна хронология", "navigation_bar.search": "Търсене", "navigation_bar.security": "Сигурност", - "not_signed_in_indicator.not_signed_in": "Трябва да влезете, за да имате достъп до този ресурс.", + "not_signed_in_indicator.not_signed_in": "Трябва ви вход за достъп до ресурса.", "notification.admin.report": "{name} докладва {target}", "notification.admin.sign_up": "{name} се регистрира", "notification.favourite": "{name} сложи в любими ваша публикация", @@ -543,10 +543,10 @@ "server_banner.server_stats": "Статистика на сървъра:", "sign_in_banner.create_account": "Създаване на акаунт", "sign_in_banner.sign_in": "Вход", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Влезте, за да последвате профили или хаштагове, отбелязвате като любими, споделяте и отговаряте на публикации. Можете също така да взаимодействате от акаунта ви на друг сървър.", "status.admin_account": "Отваряне на интерфейс за модериране за @{name}", "status.admin_domain": "Отваряне на модериращия интерфейс за {domain}", - "status.admin_status": "Отваряне на публикацията в интерфейса за модериране", + "status.admin_status": "Отваряне на публикацията в модериращия интерфейс", "status.block": "Блокиране на @{name}", "status.bookmark": "Отмятане", "status.cancel_reblog_private": "Край на подсилването", diff --git a/app/javascript/mastodon/locales/ca.json b/app/javascript/mastodon/locales/ca.json index 62bd85eb6..d83f15537 100644 --- a/app/javascript/mastodon/locales/ca.json +++ b/app/javascript/mastodon/locales/ca.json @@ -221,7 +221,7 @@ "empty_column.favourites": "Encara no ha marcat ningú aquesta publicació com a preferida. Quan ho faci algú apareixerà aquí.", "empty_column.follow_recommendations": "Sembla que no s'han pogut generar suggeriments per a tu. Pots provar d'usar la cerca per a trobar persones que vulguis conèixer o explorar les etiquetes en tendència.", "empty_column.follow_requests": "Encara no tens cap petició de seguiment. Quan en rebis una, apareixerà aquí.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Encara no segueixes cap etiqueta. Quan ho facis, es mostraran aquí.", "empty_column.hashtag": "Encara no hi ha res en aquesta etiqueta.", "empty_column.home": "La teva línia de temps és buida! Segueix més gent per a emplenar-la. {suggestions}", "empty_column.home.suggestions": "Mostra alguns suggeriments", @@ -264,7 +264,7 @@ "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 d’aquests comptes.", - "followed_tags": "Followed hashtags", + "followed_tags": "Etiquetes seguides", "footer.about": "Quant a", "footer.directory": "Directori de perfils", "footer.get_app": "Aconsegueix l'app", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Preferits", "navigation_bar.filters": "Paraules silenciades", "navigation_bar.follow_requests": "Sol·licituds de seguiment", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Etiquetes seguides", "navigation_bar.follows_and_followers": "Seguint i seguidors", "navigation_bar.lists": "Llistes", "navigation_bar.logout": "Tanca la sessió", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Estadístiques del servidor:", "sign_in_banner.create_account": "Registra'm", "sign_in_banner.sign_in": "Inicia sessió", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Inicia la sessió per a seguir perfils o etiquetes, afavorir, compartir i respondre publicacions. També pots interactuar des del teu compte a un servidor diferent.", "status.admin_account": "Obre la interfície de moderació per a @{name}", "status.admin_domain": "Obre la interfície de moderació per a @{domain}", "status.admin_status": "Obrir aquest tut a la interfície de moderació", diff --git a/app/javascript/mastodon/locales/cy.json b/app/javascript/mastodon/locales/cy.json index ff44be3b5..204a54241 100644 --- a/app/javascript/mastodon/locales/cy.json +++ b/app/javascript/mastodon/locales/cy.json @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Ffefrynnau", "navigation_bar.filters": "Geiriau wedi'u tewi", "navigation_bar.follow_requests": "Ceisiadau dilyn", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Hashnodau'n cael eu dilyn", "navigation_bar.follows_and_followers": "Yn dilyn a dilynwyr", "navigation_bar.lists": "Rhestrau", "navigation_bar.logout": "Allgofnodi", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Ystagedau'r gweinydd:", "sign_in_banner.create_account": "Creu cyfrif", "sign_in_banner.sign_in": "Mewngofnodi", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Mewngofnodwch i ddilyn proffiliau neu hashnodau, ffefrynnau, rhannu ac ateb postiadau. Gallwch hefyd ryngweithio o'ch cyfrif ar weinydd gwahanol.", "status.admin_account": "Agor rhyngwyneb cymedroli ar gyfer @{name}", "status.admin_domain": "Agor rhyngwyneb cymedroli {domain}", "status.admin_status": "Agor y postiad hwn yn y rhyngwyneb cymedroli", diff --git a/app/javascript/mastodon/locales/da.json b/app/javascript/mastodon/locales/da.json index 26ef98892..bec230000 100644 --- a/app/javascript/mastodon/locales/da.json +++ b/app/javascript/mastodon/locales/da.json @@ -221,7 +221,7 @@ "empty_column.favourites": "Ingen har endnu gjort dette indlæg til favorit. Når nogen gør dét, vil det dukke op hér.", "empty_column.follow_recommendations": "Det ser ud til, at der ikke kunne genereres forslag til dig. Du kan prøve med Søg for at lede efter personer, du måske kender, eller udforske hashtags.", "empty_column.follow_requests": "Du har endnu ingen følgeanmodninger. Når du modtager én, vil den dukke op hér.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Ingen hashtags følges endnu. Når det sker, vil de fremgå hér.", "empty_column.hashtag": "Der er intet med dette hashtag endnu.", "empty_column.home": "Din hjemmetidslinje er tom! Følg nogle personer, for at udfylde den. {suggestions}", "empty_column.home.suggestions": "Se nogle forslag", @@ -264,7 +264,7 @@ "follow_request.authorize": "Godkend", "follow_request.reject": "Afvis", "follow_requests.unlocked_explanation": "Selvom din konto ikke er låst, antog {domain}-personalet, at du måske vil gennemgå dine anmodninger manuelt.", - "followed_tags": "Followed hashtags", + "followed_tags": "Hashtag, som følges", "footer.about": "Om", "footer.directory": "Profiloversigt", "footer.get_app": "Hent appen", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Favoritter", "navigation_bar.filters": "Skjulte ord (mutede)", "navigation_bar.follow_requests": "Følgeanmodninger", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Hashtag, som følges", "navigation_bar.follows_and_followers": "Følges og følgere", "navigation_bar.lists": "Lister", "navigation_bar.logout": "Log af", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Serverstatstik:", "sign_in_banner.create_account": "Opret konto", "sign_in_banner.sign_in": "Log ind", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Log ind for at følge profiler eller hashtags, markere som favorit, dele og besvare indlæg eller interagere fra din konto på en anden server.", "status.admin_account": "Åbn modereringsbrugerflade for @{name}", "status.admin_domain": "Åbn modereringsbrugerflade for {domain}", "status.admin_status": "Åbn dette indlæg i modereringsbrugerfladen", diff --git a/app/javascript/mastodon/locales/de.json b/app/javascript/mastodon/locales/de.json index 818b68d08..2cdaebe2a 100644 --- a/app/javascript/mastodon/locales/de.json +++ b/app/javascript/mastodon/locales/de.json @@ -221,7 +221,7 @@ "empty_column.favourites": "Noch niemand hat diesen Beitrag favorisiert. Sobald es jemand tut, wird das hier angezeigt.", "empty_column.follow_recommendations": "Es sieht so aus, als könnten keine Vorschläge für dich generiert werden. Du kannst versuchen, nach Leuten zu suchen, die du vielleicht kennst, oder du kannst angesagte Hashtags erkunden.", "empty_column.follow_requests": "Es liegen derzeit keine Follower-Anfragen vor. Sobald du eine erhältst, wird sie hier angezeigt.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Du folgst noch keinen Hashtags. Wenn du dies tust, werden sie hier erscheinen.", "empty_column.hashtag": "Unter diesem Hashtag gibt es noch nichts.", "empty_column.home": "Die Timeline deiner Startseite ist leer! Folge mehr Leuten, um sie zu füllen. {suggestions}", "empty_column.home.suggestions": "Ein paar Vorschläge ansehen", @@ -264,7 +264,7 @@ "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.", - "followed_tags": "Followed hashtags", + "followed_tags": "Gefolgte Hashtags", "footer.about": "Über", "footer.directory": "Profilverzeichnis", "footer.get_app": "App herunterladen", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Favoriten", "navigation_bar.filters": "Stummgeschaltete Wörter", "navigation_bar.follow_requests": "Follower-Anfragen", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Gefolgte Hashtags", "navigation_bar.follows_and_followers": "Folge ich und Follower", "navigation_bar.lists": "Listen", "navigation_bar.logout": "Abmelden", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Serverstatistiken:", "sign_in_banner.create_account": "Konto erstellen", "sign_in_banner.sign_in": "Anmelden", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Melde dich an, um Profilen oder Hashtags zu folgen, Beiträge zu favorisieren, zu teilen und auf sie zu antworten. Du kannst auch von deinem Konto aus auf einem anderen Server interagieren.", "status.admin_account": "Moderationsoberfläche für @{name} öffnen", "status.admin_domain": "Moderationsoberfläche für {domain} öffnen", "status.admin_status": "Diesen Beitrag in der Moderationsoberfläche öffnen", diff --git a/app/javascript/mastodon/locales/en-GB.json b/app/javascript/mastodon/locales/en-GB.json index ebd3c3fce..0e5b589c1 100644 --- a/app/javascript/mastodon/locales/en-GB.json +++ b/app/javascript/mastodon/locales/en-GB.json @@ -128,7 +128,7 @@ "compose.language.search": "Search languages...", "compose_form.direct_message_warning_learn_more": "Learn more", "compose_form.encryption_warning": "Posts on Mastodon are not end-to-end encrypted. Do not share any sensitive information over Mastodon.", - "compose_form.hashtag_warning": "This post won't be listed under any hashtag as it is unlisted. Only public posts can be searched by hashtag.", + "compose_form.hashtag_warning": "This post won't be listed under any hashtag as it is not public. Only public posts can be searched by hashtag.", "compose_form.lock_disclaimer": "Your account is not {locked}. Anyone can follow you to view your follower-only posts.", "compose_form.lock_disclaimer.lock": "locked", "compose_form.placeholder": "What's on your mind?", @@ -633,7 +633,7 @@ "upload_form.thumbnail": "Change thumbnail", "upload_form.undo": "Delete", "upload_form.video_description": "Describe for people with hearing loss or visual impairment", - "upload_modal.analyzing_picture": "Analyzing picture…", + "upload_modal.analyzing_picture": "Analysing picture…", "upload_modal.apply": "Apply", "upload_modal.applying": "Applying…", "upload_modal.choose_image": "Choose image", diff --git a/app/javascript/mastodon/locales/eo.json b/app/javascript/mastodon/locales/eo.json index 3e35f3637..99f455e03 100644 --- a/app/javascript/mastodon/locales/eo.json +++ b/app/javascript/mastodon/locales/eo.json @@ -1,7 +1,7 @@ { "about.blocks": "Administritaj serviloj", "about.contact": "Kontakto:", - "about.disclaimer": "Mastodon estas libera, malfermitkoda programaro kaj varmarko de la firmao Mastodon gGmbH.", + "about.disclaimer": "Mastodon estas libera, malfermitkoda programo kaj varmarko de la firmao Mastodon gGmbH.", "about.domain_blocks.no_reason_available": "Kialo ne disponebla", "about.domain_blocks.preamble": "Mastodono ebligas vidi la enhavojn de uzantoj el aliaj serviloj en la Fediverso, kaj komuniki kun ili. Jen la limigoj deciditaj de tiu ĉi servilo mem.", "about.domain_blocks.silenced.explanation": "Vi ne ĝenerale vidos profilojn kaj enhavojn de ĉi tiu servilo, krom se vi eksplice trovas aŭ estas permesita de via sekvato.", @@ -76,7 +76,7 @@ "alert.rate_limited.title": "Mesaĝkvante limigita", "alert.unexpected.message": "Neatendita eraro okazis.", "alert.unexpected.title": "Aj!", - "announcement.announcement": "Anonco", + "announcement.announcement": "Anoncoj", "attachments_list.unprocessed": "(neprilaborita)", "audio.hide": "Kaŝi aŭdion", "autosuggest_hashtag.per_week": "po {count} por semajno", @@ -128,7 +128,7 @@ "compose.language.search": "Serĉi lingvojn...", "compose_form.direct_message_warning_learn_more": "Lerni pli", "compose_form.encryption_warning": "La afiŝoj en Mastodon ne estas tutvoje ĉifritaj. Ne kunhavigu tiklajn informojn ĉe Mastodon.", - "compose_form.hashtag_warning": "This post won't be listed under any hashtag as it is unlisted. Only public posts can be searched by hashtag.", + "compose_form.hashtag_warning": "Ĉi tiu afiŝo ne estos listigita en neniu kradvorto ĉar ĝi ne estas publika. Nur publikaj afiŝoj povas esti serĉitaj per kradvortoj.", "compose_form.lock_disclaimer": "Via konto ne estas {locked}. Iu ajn povas sekvi vin por vidi viajn afiŝojn nur al la sekvantoj.", "compose_form.lock_disclaimer.lock": "ŝlosita", "compose_form.placeholder": "Kion vi pensas?", @@ -221,7 +221,7 @@ "empty_column.favourites": "Ankoraŭ neniu stelumis tiun mesaĝon. Kiam iu faros tion, tiu aperos ĉi tie.", "empty_column.follow_recommendations": "Ŝajnas, ke neniuj sugestoj povis esti generitaj por vi. Vi povas provi uzi serĉon por serĉi homojn, kiujn vi eble konas, aŭ esplori tendencajn kradvortojn.", "empty_column.follow_requests": "Vi ne ankoraŭ havas iun peton de sekvado. Kiam vi ricevos unu, ĝi aperos ĉi tie.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Vi ankoraŭ ne sekvas iujn kradvortojn. Kiam vi faras, ili aperos ĉi tie.", "empty_column.hashtag": "Ankoraŭ estas nenio per ĉi tiu kradvorto.", "empty_column.home": "Via hejma tempolinio estas malplena! Vizitu {public} aŭ uzu la serĉilon por renkonti aliajn uzantojn.", "empty_column.home.suggestions": "Vidu iujn sugestojn", @@ -263,8 +263,8 @@ "follow_recommendations.lead": "La mesaĝoj de personoj kiujn vi sekvas, aperos laŭ kronologia ordo en via hejma templinio. Ne timu erari, vi povas ĉesi sekvi facile iam ajn!", "follow_request.authorize": "Rajtigi", "follow_request.reject": "Rifuzi", - "follow_requests.unlocked_explanation": "Kvankam via konto ne estas ŝlosita, la dungitaro de {domain} opiniis, ke vi eble volus revizii petojn de sekvadon el ĉi tiuj kontoj permane.", - "followed_tags": "Followed hashtags", + "follow_requests.unlocked_explanation": "Kvankam via konto ne estas ŝlosita, la dungitaro de {domain} opinias, ke vi eble volas revizii petojn pri sekvado de ĉi tiuj kontoj permane.", + "followed_tags": "Sekvataj kradvortoj", "footer.about": "Pri", "footer.directory": "Profilujo", "footer.get_app": "Akiru la Programon", @@ -290,14 +290,14 @@ "home.column_settings.show_replies": "Montri respondojn", "home.hide_announcements": "Kaŝi la anoncojn", "home.show_announcements": "Montri anoncojn", - "interaction_modal.description.favourite": "Kun konto de Mastodon, vi povos stelumi ĉi tiun mesaĝon por konservi ĝin kaj por sciigi al la afiŝinto, ke vi estimas ĝin.", + "interaction_modal.description.favourite": "Kun konto ĉe Mastodon, vi povos stelumi ĉi tiun afiŝon por konservi ĝin kaj por sciigi al la afiŝinto, ke vi estimas ĝin.", "interaction_modal.description.follow": "Kun konto ĉe Mastodon, vi povos sekvi {name} por vidi ties mesaĝojn en via hejmo.", - "interaction_modal.description.reblog": "Kun konto de Mastodon, vi povas diskonigi ĉi tiun mesaĝon, por ke viaj propraj sekvantoj vidu ĝin.", + "interaction_modal.description.reblog": "Kun konto ĉe Mastodon, vi povas diskonigi ĉi tiun afiŝon, por ke viaj propraj sekvantoj vidu ĝin.", "interaction_modal.description.reply": "Kun konto ĉe Mastodon, vi povos respondi al ĉi tiu mesaĝo.", "interaction_modal.on_another_server": "En alia servilo", "interaction_modal.on_this_server": "En ĉi tiu servilo", "interaction_modal.other_server_instructions": "Preni ĉi tiun retadreson (URL) kaj meti ĝin en la serĉbreton de via preferata apo aŭ retfoliumilo por Mastodon.", - "interaction_modal.preamble": "Ĉar Mastodon estas malcentraliza, vi povas uzi jam ekzistantan konton, gastigatan de alia servilo Mastodon aŭ konforma platformo, se vi ne havas konton ĉe tiu ĉi.", + "interaction_modal.preamble": "Ĉar Mastodon estas malcentrigita, vi povas uzi jam ekzistantan konton gastigatan de alia Mastodona servilo aŭ kongrua substrato, se vi ne havas konton ĉe tiu ĉi.", "interaction_modal.title.favourite": "Stelumi la afiŝon de {name}", "interaction_modal.title.follow": "Sekvi {name}", "interaction_modal.title.reblog": "Akceli la afiŝon de {name}", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Stelumoj", "navigation_bar.filters": "Silentigitaj vortoj", "navigation_bar.follow_requests": "Petoj de sekvado", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Sekvataj kradvortoj", "navigation_bar.follows_and_followers": "Sekvatoj kaj sekvantoj", "navigation_bar.lists": "Listoj", "navigation_bar.logout": "Adiaŭi", @@ -531,7 +531,7 @@ "search_results.all": "Ĉiuj", "search_results.hashtags": "Kradvortoj", "search_results.nothing_found": "Povis trovi nenion por ĉi tiuj serĉaj terminoj", - "search_results.statuses": "Mesaĝoj", + "search_results.statuses": "Afiŝoj", "search_results.statuses_fts_disabled": "Serĉi afiŝojn laŭ enhavo ne estas ebligita en ĉi tiu Mastodon-servilo.", "search_results.title": "Serĉ-rezultoj por {q}", "search_results.total": "{count, number} {count, plural, one {rezulto} other {rezultoj}}", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Statistikoj de la servilo:", "sign_in_banner.create_account": "Krei konton", "sign_in_banner.sign_in": "Saluti", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Salutu por sekvi profilojn aŭ kradvortojn, stelumi, kundividi kaj respondi afiŝojn. Vi ankaŭ povas interagi per via konto ĉe alia servilo.", "status.admin_account": "Malfermi fasadon de moderigado por @{name}", "status.admin_domain": "Malfermu moderigan interfacon por {domain}", "status.admin_status": "Malfermi ĉi tiun mesaĝon en la kontrola interfaco", diff --git a/app/javascript/mastodon/locales/es-AR.json b/app/javascript/mastodon/locales/es-AR.json index d167fb257..f490d29cb 100644 --- a/app/javascript/mastodon/locales/es-AR.json +++ b/app/javascript/mastodon/locales/es-AR.json @@ -221,7 +221,7 @@ "empty_column.favourites": "Todavía nadie marcó este mensaje como favorito. Cuando alguien lo haga, se mostrará acá.", "empty_column.follow_recommendations": "Parece que no se pudieron generar sugerencias para vos. Podés intentar buscar gente que conozcas o explorar las tendencias de las etiquetas.", "empty_column.follow_requests": "Todavía no tenés ninguna solicitud de seguimiento. Cuando recibás una, se mostrará acá.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Todavía no tenés ninguna etiqueta en seguimiento. Cuando tengás una, se mostrará acá.", "empty_column.hashtag": "Todavía no hay nada con esta etiqueta.", "empty_column.home": "¡Tu línea temporal principal está vacía! Seguí a más cuentas para llenarla. {suggestions}", "empty_column.home.suggestions": "Mirá algunas sugerencias.", @@ -264,7 +264,7 @@ "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.", - "followed_tags": "Followed hashtags", + "followed_tags": "Etiquetas seguidas", "footer.about": "Información", "footer.directory": "Directorio de perfiles", "footer.get_app": "Conseguí la aplicación", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Favoritos", "navigation_bar.filters": "Palabras silenciadas", "navigation_bar.follow_requests": "Solicitudes de seguimiento", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Etiquetas seguidas", "navigation_bar.follows_and_followers": "Cuentas seguidas y seguidores", "navigation_bar.lists": "Listas", "navigation_bar.logout": "Cerrar sesión", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Estadísticas del servidor:", "sign_in_banner.create_account": "Crear cuenta", "sign_in_banner.sign_in": "Iniciar sesión", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Iniciá sesión para seguir cuentas o etiquetas, marcar mensajes como favoritos, compartirlos y responderlos. También podés interactuar desde tu cuenta en un servidor diferente.", "status.admin_account": "Abrir interface de moderación para @{name}", "status.admin_domain": "Abrir interface de moderación para {domain}", "status.admin_status": "Abrir este mensaje en la interface de moderación", diff --git a/app/javascript/mastodon/locales/es-MX.json b/app/javascript/mastodon/locales/es-MX.json index b26ac984b..c932c1af2 100644 --- a/app/javascript/mastodon/locales/es-MX.json +++ b/app/javascript/mastodon/locales/es-MX.json @@ -221,7 +221,7 @@ "empty_column.favourites": "Nadie ha marcado este toot como preferido. Cuando alguien lo haga, aparecerá aquí.", "empty_column.follow_recommendations": "Parece que no se ha podido generar ninguna sugerencia para ti. Puedes probar a buscar a gente que quizá conozcas o explorar los hashtags que están en tendencia.", "empty_column.follow_requests": "No tienes ninguna petición de seguidor. Cuando recibas una, se mostrará aquí.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "No estás siguiendo ningún hashtag todavía. Cuando lo hagas, aparecerá aquí.", "empty_column.hashtag": "No hay nada en este hashtag aún.", "empty_column.home": "No estás siguiendo a nadie aún. Visita {public} o haz búsquedas para empezar y conocer gente nueva.", "empty_column.home.suggestions": "Ver algunas sugerencias", @@ -264,7 +264,7 @@ "follow_request.authorize": "Autorizar", "follow_request.reject": "Rechazar", "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.", - "followed_tags": "Followed hashtags", + "followed_tags": "Hashtags seguidos", "footer.about": "Acerca de", "footer.directory": "Directorio de perfiles", "footer.get_app": "Obtener la aplicación", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Favoritos", "navigation_bar.filters": "Palabras silenciadas", "navigation_bar.follow_requests": "Solicitudes para seguirte", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Hashtags seguidos", "navigation_bar.follows_and_followers": "Siguiendo y seguidores", "navigation_bar.lists": "Listas", "navigation_bar.logout": "Cerrar sesión", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Estadísticas del servidor:", "sign_in_banner.create_account": "Crear cuenta", "sign_in_banner.sign_in": "Iniciar sesión", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Inicia sesión para seguir perfiles o hashtags, marcar favorito, compartir y responder a publicaciones. También puedes interactuar desde tu cuenta en un servidor diferente.", "status.admin_account": "Abrir interfaz de moderación para @{name}", "status.admin_domain": "Abrir interfaz de moderación para {domain}", "status.admin_status": "Abrir este estado en la interfaz de moderación", diff --git a/app/javascript/mastodon/locales/es.json b/app/javascript/mastodon/locales/es.json index 06bc7ee67..e9ba8f102 100644 --- a/app/javascript/mastodon/locales/es.json +++ b/app/javascript/mastodon/locales/es.json @@ -221,7 +221,7 @@ "empty_column.favourites": "Nadie ha marcado esta publicación como favorita. Cuando alguien lo haga, aparecerá aquí.", "empty_column.follow_recommendations": "Parece que no se ha podido generar ninguna sugerencia para ti. Puedes probar a buscar a gente que quizá conozcas o explorar los hashtags que están en tendencia.", "empty_column.follow_requests": "No tienes ninguna petición de seguidor. Cuando recibas una, se mostrará aquí.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "No has seguido ninguna etiqueta todavía. Cuando lo hagas, se mostrarán aquí.", "empty_column.hashtag": "No hay nada en este hashtag aún.", "empty_column.home": "¡Tu línea temporal está vacía! Sigue a más personas para rellenarla. {suggestions}", "empty_column.home.suggestions": "Ver algunas sugerencias", @@ -264,7 +264,7 @@ "follow_request.authorize": "Autorizar", "follow_request.reject": "Rechazar", "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.", - "followed_tags": "Followed hashtags", + "followed_tags": "Etiquetas seguidas", "footer.about": "Acerca de", "footer.directory": "Directorio de perfiles", "footer.get_app": "Obtener la aplicación", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Favoritos", "navigation_bar.filters": "Palabras silenciadas", "navigation_bar.follow_requests": "Solicitudes para seguirte", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Etiquetas seguidas", "navigation_bar.follows_and_followers": "Siguiendo y seguidores", "navigation_bar.lists": "Listas", "navigation_bar.logout": "Cerrar sesión", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Estadísticas del servidor:", "sign_in_banner.create_account": "Crear cuenta", "sign_in_banner.sign_in": "Iniciar sesión", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Inicia sesión para seguir perfiles o etiquetas, marcar como favorito, compartir y responder a publicaciones. También puedes interactuar desde tu cuenta en un servidor diferente.", "status.admin_account": "Abrir interfaz de moderación para @{name}", "status.admin_domain": "Abrir interfaz de moderación para {domain}", "status.admin_status": "Abrir este estado en la interfaz de moderación", diff --git a/app/javascript/mastodon/locales/et.json b/app/javascript/mastodon/locales/et.json index d684129f1..de0f9d971 100644 --- a/app/javascript/mastodon/locales/et.json +++ b/app/javascript/mastodon/locales/et.json @@ -66,7 +66,7 @@ "account.unmute": "Ära vaigista @{name}", "account.unmute_notifications": "Ära vaigista teateid kasutajalt @{name}", "account.unmute_short": "Lõpeta vaigistamine", - "account_note.placeholder": "Klõpsa märkme lisamiseks", + "account_note.placeholder": "Klõpsa märke lisamiseks", "admin.dashboard.daily_retention": "Kasutajate päevane allesjäämine peale registreerumist", "admin.dashboard.monthly_retention": "Kasutajate kuine allesjäämine peale registreerumist", "admin.dashboard.retention.average": "Keskmine", @@ -145,7 +145,7 @@ "compose_form.sensitive.hide": "{count, plural, one {Märgi meedia tundlikuks} other {Märgi meediad tundlikuks}}", "compose_form.sensitive.marked": "{count, plural, one {Meedia on märgitud tundlikuks} other {Meediad on märgitud tundlikuks}}", "compose_form.sensitive.unmarked": "{count, plural, one {Meedia ei ole tundlikuks märgitud} other {Meediad ei ole märgitud tundlikuks}}", - "compose_form.spoiler.marked": "Tekst on peidetud hoiatuse taha", + "compose_form.spoiler.marked": "Tekst on hoiatuse taha peidetud", "compose_form.spoiler.unmarked": "Märgi sisu tundlikuks", "compose_form.spoiler_placeholder": "Kirjuta hoiatus siia", "confirmation_modal.cancel": "Katkesta", @@ -221,7 +221,7 @@ "empty_column.favourites": "Keegi pole veel seda postitust lemmikuks märkinud. Kui seegi seda teeb, näed seda siin.", "empty_column.follow_recommendations": "Tundub, et sinu jaoks ei ole võimalik soovitusi luua. Proovi kasutada otsingut, et leida tuttavaid inimesi, või sirvi populaarseid silte.", "empty_column.follow_requests": "Pole hetkel ühtegi jälgimistaotlust. Kui saad mõne, näed neid siin.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Sa ei jälgi veel ühtegi märksõna. Kui jälgid, ilmuvad need siia.", "empty_column.hashtag": "Seda sildi all ei ole ühtegi postitust.", "empty_column.home": "Su koduajajoon on tühi. Jälgi rohkemaid inimesi, et seda täita {suggestions}", "empty_column.home.suggestions": "Vaata mõndasid soovitusi", @@ -264,7 +264,7 @@ "follow_request.authorize": "Autoriseeri", "follow_request.reject": "Hülga", "follow_requests.unlocked_explanation": "Kuigi su konto pole lukustatud, soovitab {domain} personal siiski nende kontode jälgimistaotlused käsitsi üle vaadata.", - "followed_tags": "Followed hashtags", + "followed_tags": "Jälgitavad märksõnad", "footer.about": "Teave", "footer.directory": "Profiilikataloog", "footer.get_app": "Tõmba äpp", @@ -332,9 +332,9 @@ "keyboard_shortcuts.reply": "Vasta postitusele", "keyboard_shortcuts.requests": "Ava jälgimistaotluste loetelu", "keyboard_shortcuts.search": "Fookus otsingule", - "keyboard_shortcuts.spoilers": "Näita/peida CW väli", + "keyboard_shortcuts.spoilers": "Näita/peida hoiatuse väli", "keyboard_shortcuts.start": "Ava veerg \"Alusta\"", - "keyboard_shortcuts.toggle_hidden": "Näida/peida teksti CW taga", + "keyboard_shortcuts.toggle_hidden": "Näita/peida teksti hoiatuse taga", "keyboard_shortcuts.toggle_sensitivity": "Näita/peida meediat", "keyboard_shortcuts.toot": "Alusta uut postitust", "keyboard_shortcuts.unfocus": "Fookus tekstialalt/otsingult ära", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Lemmikud", "navigation_bar.filters": "Vaigistatud sõnad", "navigation_bar.follow_requests": "Jälgimistaotlused", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Jälgitavad märksõnad", "navigation_bar.follows_and_followers": "Jälgitavad ja jälgijad", "navigation_bar.lists": "Nimekirjad", "navigation_bar.logout": "Logi välja", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Serveri statistika:", "sign_in_banner.create_account": "Loo konto", "sign_in_banner.sign_in": "Logi sisse", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Logi sisse, et jälgida profiile või silte, märkida lemmikuks, jagada ja vastata postitustele. Võid suhelda ka mõne teise serveri konto kaudu.", "status.admin_account": "Ava @{name} moderaatorivaates", "status.admin_domain": "Ava {domain} modeereerimisliides", "status.admin_status": "Ava postitus moderaatorivaates", diff --git a/app/javascript/mastodon/locales/eu.json b/app/javascript/mastodon/locales/eu.json index 1159c527d..845606972 100644 --- a/app/javascript/mastodon/locales/eu.json +++ b/app/javascript/mastodon/locales/eu.json @@ -54,7 +54,7 @@ "account.posts_with_replies": "Bidalketak eta erantzunak", "account.report": "Salatu @{name}", "account.requested": "Onarpenaren zain. Klikatu jarraitzeko eskaera ezeztatzeko", - "account.requested_follow": "{name} has requested to follow you", + "account.requested_follow": "{name}-(e)k zu jarraitzeko eskaera egin du", "account.share": "@{name}(e)ren profila elkarbanatu", "account.show_reblogs": "Erakutsi @{name}(r)en bultzadak", "account.statuses_counter": "{count, plural, one {Bidalketa {counter}} other {{counter} bidalketa}}", @@ -128,7 +128,7 @@ "compose.language.search": "Bilatu hizkuntzak...", "compose_form.direct_message_warning_learn_more": "Ikasi gehiago", "compose_form.encryption_warning": "Mastodoneko bidalketak ez daude muturretik muturrera enkriptatuta. Ez partekatu informazio sentikorrik Mastodonen.", - "compose_form.hashtag_warning": "This post won't be listed under any hashtag as it is unlisted. Only public posts can be searched by hashtag.", + "compose_form.hashtag_warning": "Tut hau ez da inolako traolatan zerrendatuko, ez baita publikoa. Tut publikoak soilik traolen bitartez bila daitezke.", "compose_form.lock_disclaimer": "Zure kontua ez dago {locked}. Edonork jarraitu zaitzake zure jarraitzaileentzako soilik diren bidalketak ikusteko.", "compose_form.lock_disclaimer.lock": "giltzapetuta", "compose_form.placeholder": "Zer duzu buruan?", @@ -221,7 +221,7 @@ "empty_column.favourites": "Ez du inork gogokoetara gehitu bidalketa hau oraindik. Inork egiten duenean, hemen agertuko dira.", "empty_column.follow_recommendations": "Dirudienez ezin izan da zuretzako proposamenik sortu. Bilaketa erabili dezakezu ezagutzen duzun jendea aurkitzeko edo traolen joerak arakatu.", "empty_column.follow_requests": "Ez duzu jarraitzeko eskaririk oraindik. Baten bat jasotzen duzunean, hemen agertuko da.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Oraindik ez duzu traolik jarraitzen. Egiterakoan, hemen agertuko dira.", "empty_column.hashtag": "Ez dago ezer traola honetan oraindik.", "empty_column.home": "Zure hasierako denbora-lerroa hutsik dago! Ikusi {public} edo erabili bilaketa lehen urratsak eman eta beste batzuk aurkitzeko.", "empty_column.home.suggestions": "Ikusi proposamen batzuk", @@ -240,8 +240,8 @@ "explore.suggested_follows": "Zuretzako", "explore.title": "Arakatu", "explore.trending_links": "Berriak", - "explore.trending_statuses": "Posts", - "explore.trending_tags": "Hashtags", + "explore.trending_statuses": "Tutak", + "explore.trending_tags": "Traolak", "filter_modal.added.context_mismatch_explanation": "Iragazki-kategoria hau ez zaio aplikatzen bidalketa honetara sartzeko erabili duzun testuinguruari. Bidalketa testuinguru horretan ere iragaztea nahi baduzu, iragazkia editatu beharko duzu.", "filter_modal.added.context_mismatch_title": "Testuingurua ez dator bat!", "filter_modal.added.expired_explanation": "Iragazki kategoria hau iraungi da, eragina izan dezan bere iraungitze-data aldatu beharko duzu.", @@ -264,7 +264,7 @@ "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 eskariak agian eskuz begiratu nahiko dituzula.", - "followed_tags": "Followed hashtags", + "followed_tags": "Jarraitutako traolak", "footer.about": "Honi buruz", "footer.directory": "Profil-direktorioa", "footer.get_app": "Eskuratu aplikazioa", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Gogokoak", "navigation_bar.filters": "Mutututako hitzak", "navigation_bar.follow_requests": "Jarraitzeko eskariak", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Jarraitutako traolak", "navigation_bar.follows_and_followers": "Jarraitutakoak eta jarraitzaileak", "navigation_bar.lists": "Zerrendak", "navigation_bar.logout": "Amaitu saioa", @@ -543,9 +543,9 @@ "server_banner.server_stats": "Zerbitzariaren estatistikak:", "sign_in_banner.create_account": "Sortu kontua", "sign_in_banner.sign_in": "Hasi saioa", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Hasi saioa profilak edo traolak jarraitzeko, tutak gogokoetara gehitzeko, partekatzeko edo erantzuteko. Zure kontutik ere komunika zaitezke beste zerbitzari ezberdin batean.", "status.admin_account": "Ireki @{name} erabiltzailearen moderazio interfazea", - "status.admin_domain": "Open moderation interface for {domain}", + "status.admin_domain": "{domain}-(r)en moderazio-interfazea ireki", "status.admin_status": "Ireki bidalketa hau moderazio interfazean", "status.block": "Blokeatu @{name}", "status.bookmark": "Laster-marka", @@ -562,7 +562,7 @@ "status.favourite": "Gogokoa", "status.filter": "Iragazi bidalketa hau", "status.filtered": "Iragazita", - "status.hide": "Hide post", + "status.hide": "Tuta ezkutatu", "status.history.created": "{name} erabiltzaileak sortua {date}", "status.history.edited": "{name} erabiltzaileak editatua {date}", "status.load_more": "Kargatu gehiago", diff --git a/app/javascript/mastodon/locales/fi.json b/app/javascript/mastodon/locales/fi.json index 628041eaa..bb8a1a68b 100644 --- a/app/javascript/mastodon/locales/fi.json +++ b/app/javascript/mastodon/locales/fi.json @@ -221,7 +221,7 @@ "empty_column.favourites": "Kukaan ei ole vielä lisännyt tätä viestiä suosikkeihinsa. Kun joku tekee niin, näkyy kyseinen henkilö tässä.", "empty_column.follow_recommendations": "Näyttää siltä, että sinulle ei voi luoda ehdotuksia. Voit yrittää etsiä ihmisiä, jotka saatat tuntea tai tutkia trendaavia aihetunnisteita.", "empty_column.follow_requests": "Et ole vielä vastaanottanut seurauspyyntöjä. Saamasi pyynnöt näytetään täällä.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Et ole vielä ottanut yhtään aihetunnistetta seurattavaksesi. Jos tai kun sitten teet niin, ne listautuvat tänne.", "empty_column.hashtag": "Tällä hashtagilla ei ole vielä mitään.", "empty_column.home": "Kotisi aikajana on tyhjä! Seuraa lisää ihmisiä täyttääksesi sen. {suggestions}", "empty_column.home.suggestions": "Katso joitakin ehdotuksia", @@ -264,7 +264,7 @@ "follow_request.authorize": "Valtuuta", "follow_request.reject": "Hylkää", "follow_requests.unlocked_explanation": "Vaikkei tiliäsi ole lukittu, palvelun {domain} ylläpito on arvioinut, että voi olla halukas tarkistamaan nämä seurauspyynnöt erikseen.", - "followed_tags": "Followed hashtags", + "followed_tags": "Seuratut aihetunnisteet", "footer.about": "Tietoja", "footer.directory": "Profiilihakemisto", "footer.get_app": "Hanki sovellus", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Suosikit", "navigation_bar.filters": "Mykistetyt sanat", "navigation_bar.follow_requests": "Seuraamispyynnöt", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Seuratut aihetunnisteet", "navigation_bar.follows_and_followers": "Seurattavat ja seuraajat", "navigation_bar.lists": "Listat", "navigation_bar.logout": "Kirjaudu ulos", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Palvelimen tilastot:", "sign_in_banner.create_account": "Luo tili", "sign_in_banner.sign_in": "Kirjaudu sisään", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Kirjaudu sisään seurataksesi profiileja tai aihetunnisteita, lisätäksesi suosikkeihin, jakaaksesi julkaisuja ja vastataksesi niihin. Voit myös olla vuorovaikutuksessa tililtäsi toisella palvelimella.", "status.admin_account": "Avaa moderaattorinäkymä tilistä @{name}", "status.admin_domain": "Avaa palvelimen {domain} moderointitoiminnot", "status.admin_status": "Avaa julkaisu moderointinäkymässä", diff --git a/app/javascript/mastodon/locales/fo.json b/app/javascript/mastodon/locales/fo.json index 6812c9cf7..60d82ccd8 100644 --- a/app/javascript/mastodon/locales/fo.json +++ b/app/javascript/mastodon/locales/fo.json @@ -221,7 +221,7 @@ "empty_column.favourites": "Eingin hevur givið hesum postinum yndismerki enn. Tá onkur ger, so sæst tað her.", "empty_column.follow_recommendations": "Tað sær út sum, at eingi uppskot kundu fáast fram til tín. Tú kanst royna at brúka leiting fyri at finna fólk, sum tú kanska kennir, ella at kanna frámerki, sum eru vælumtókt í løtuni.", "empty_column.follow_requests": "Tú hevur ongar umbønir um at verða fylgd/ur enn. Tá tú fær eina, so sæst hon her.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Tú hevur ikki fylgt nøkrum frámerki enn. Tá tú ger tað, so síggjast tey her.", "empty_column.hashtag": "Einki er í hesum frámerkinum enn.", "empty_column.home": "Heima-tíðarlinjan hjá tær er tóm! Fylg fleiri fyri at fylla hana. {suggestions}", "empty_column.home.suggestions": "Síggj nøkur uppskot", @@ -264,7 +264,7 @@ "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.", - "followed_tags": "Followed hashtags", + "followed_tags": "Fylgd frámerki", "footer.about": "Um", "footer.directory": "Vangaskrá", "footer.get_app": "Heinta appina", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Dámd", "navigation_bar.filters": "Doyvd orð", "navigation_bar.follow_requests": "Umbønir um at fylgja", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Fylgd frámerki", "navigation_bar.follows_and_followers": "Fylgd og fylgjarar", "navigation_bar.lists": "Listar", "navigation_bar.logout": "Rita út", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Ambætarahagtøl:", "sign_in_banner.create_account": "Stovna kontu", "sign_in_banner.sign_in": "Rita inn", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Innrita fyri at fylgja vangum og frámerkjum, seta yndismerki á, deila og svara postum. Tú kanst eisini brúka kontuna til at samvirka á einum øðrum ambætara.", "status.admin_account": "Lat kjakleiðaramarkamót upp fyri @{name}", "status.admin_domain": "Lat umsjónarmarkamót upp fyri {domain}", "status.admin_status": "Lat hendan postin upp í kjakleiðaramarkamótinum", diff --git a/app/javascript/mastodon/locales/fr.json b/app/javascript/mastodon/locales/fr.json index 69577e55f..0dc5dcb1d 100644 --- a/app/javascript/mastodon/locales/fr.json +++ b/app/javascript/mastodon/locales/fr.json @@ -221,7 +221,7 @@ "empty_column.favourites": "Personne n’a encore ajouté ce message à ses favoris. Lorsque quelqu’un le fera, il apparaîtra ici.", "empty_column.follow_recommendations": "Il semble qu’aucune suggestion n’ait pu être générée pour vous. Vous pouvez essayer d’utiliser la recherche pour découvrir des personnes que vous pourriez connaître ou explorer les hashtags tendance.", "empty_column.follow_requests": "Vous n’avez pas encore de demande de suivi. Lorsque vous en recevrez une, elle apparaîtra ici.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Vous n'avez pas encore suivi d'hashtags. Lorsque vous le ferez, ils apparaîtront ici.", "empty_column.hashtag": "Il n’y a encore aucun contenu associé à ce hashtag.", "empty_column.home": "Vous ne suivez personne. Visitez {public} ou utilisez la recherche pour trouver d’autres personnes à suivre.", "empty_column.home.suggestions": "Voir quelques suggestions", @@ -264,7 +264,7 @@ "follow_request.authorize": "Accepter", "follow_request.reject": "Rejeter", "follow_requests.unlocked_explanation": "Même si votre compte n’est pas privé, l’équipe de {domain} a pensé que vous pourriez vouloir consulter manuellement les demandes de suivi de ces comptes.", - "followed_tags": "Followed hashtags", + "followed_tags": "Hashtags suivis", "footer.about": "À propos", "footer.directory": "Annuaire des profils", "footer.get_app": "Télécharger l’application", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Favoris", "navigation_bar.filters": "Mots masqués", "navigation_bar.follow_requests": "Demandes d’abonnement", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Hashtags suivis", "navigation_bar.follows_and_followers": "Abonnements et abonnés", "navigation_bar.lists": "Listes", "navigation_bar.logout": "Déconnexion", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Statistiques du serveur :", "sign_in_banner.create_account": "Créer un compte", "sign_in_banner.sign_in": "Se connecter", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Identifiez-vous pour suivre des profils ou des hashtags, ajouter des favoris, partager et répondre à des messages. Vous pouvez également interagir depuis votre compte sur un autre serveur.", "status.admin_account": "Ouvrir l’interface de modération pour @{name}", "status.admin_domain": "Ouvrir l’interface de modération pour {domain}", "status.admin_status": "Ouvrir ce message dans l’interface de modération", diff --git a/app/javascript/mastodon/locales/fy.json b/app/javascript/mastodon/locales/fy.json index 83a07fcd6..cd7232e27 100644 --- a/app/javascript/mastodon/locales/fy.json +++ b/app/javascript/mastodon/locales/fy.json @@ -221,7 +221,7 @@ "empty_column.favourites": "Net ien hat dit berjocht noch as favoryt markearre. Wannear’t ien dit docht, falt dat hjir te sjen.", "empty_column.follow_recommendations": "It liket der op dat der gjin oanrekommandaasjes foar jo oanmakke wurde kinne. Jo kinne probearje te sykjen nei minsken dy’t jo miskien kinne, sykje op hashtags, de lokale en globale tiidlinen besjen of de brûkersgids trochblêdzje.", "empty_column.follow_requests": "Jo hawwe noch gjin folchfersiken ûntfongen. Wannear’t jo der ien ûntfange, falt dat hjir te sjen.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Jo folgje noch gjin hashtags. As jo dat wol dogge, wurde se hjir toand.", "empty_column.hashtag": "Der is noch neat te finen ûnder dizze hashtag.", "empty_column.home": "Dizze tiidline is leech! Folgje mear minsken om it te foljen. {suggestions}", "empty_column.home.suggestions": "Suggestjes besjen", @@ -264,7 +264,7 @@ "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.", - "followed_tags": "Followed hashtags", + "followed_tags": "Folge hashtags", "footer.about": "Oer", "footer.directory": "Profylmap", "footer.get_app": "App downloade", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Favoriten", "navigation_bar.filters": "Negearre wurden", "navigation_bar.follow_requests": "Folchfersiken", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Folge hashtags", "navigation_bar.follows_and_followers": "Folgers en folgjenden", "navigation_bar.lists": "Listen", "navigation_bar.logout": "Ofmelde", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Serverstatistiken:", "sign_in_banner.create_account": "Account registrearje", "sign_in_banner.sign_in": "Oanmelde", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Meld jo oan, om profilen of hashtags te folgjen, berjochten favoryt te meitsjen, te dielen en te beäntwurdzjen of om fan jo account út op in oare server mei oaren ynteraksje te hawwen.", "status.admin_account": "Moderaasje-omjouwing fan @{name} iepenje", "status.admin_domain": "Moderaasje-omjouwing fan {domain} iepenje", "status.admin_status": "Open this status in the moderation interface", diff --git a/app/javascript/mastodon/locales/gl.json b/app/javascript/mastodon/locales/gl.json index 0e442e916..25756ea59 100644 --- a/app/javascript/mastodon/locales/gl.json +++ b/app/javascript/mastodon/locales/gl.json @@ -221,7 +221,7 @@ "empty_column.favourites": "A ninguén lle gustou esta publicación polo momento. Cando a alguén lle guste, aparecerá aquí.", "empty_column.follow_recommendations": "Semella que non temos suxestións para ti. Podes utilizar a busca para atopar persoas que coñezas ou explorar os cancelos en voga.", "empty_column.follow_requests": "Non tes peticións de seguimento. Cando recibas unha, amosarase aquí.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Aínda non seguiches ningún cancelo. Cando o fagas aparecerán aquí.", "empty_column.hashtag": "Aínda non hai nada con este cancelo.", "empty_column.home": "A túa cronoloxía inicial está baleira! Segue a outras usuarias para enchela. {suggestions}", "empty_column.home.suggestions": "Ver suxestións", @@ -264,7 +264,7 @@ "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.", - "followed_tags": "Followed hashtags", + "followed_tags": "Cancelos seguidos", "footer.about": "Acerca de", "footer.directory": "Directorio de perfís", "footer.get_app": "Descarga a app", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Favoritas", "navigation_bar.filters": "Palabras silenciadas", "navigation_bar.follow_requests": "Peticións de seguimento", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Cancelos seguidos", "navigation_bar.follows_and_followers": "Seguindo e seguidoras", "navigation_bar.lists": "Listaxes", "navigation_bar.logout": "Pechar sesión", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Estatísticas do servidor:", "sign_in_banner.create_account": "Crear conta", "sign_in_banner.sign_in": "Acceder", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Inicia sesión para seguir perfís ou cancelos, marcar como favorita e responder a publicacións. Tamén podes interactuar con outro servidor desde a túa conta.", "status.admin_account": "Abrir interface de moderación para @{name}", "status.admin_domain": "Abrir interface de moderación para {domain}", "status.admin_status": "Abrir esta publicación na interface de moderación", @@ -627,12 +627,12 @@ "upload_error.limit": "Límite máximo do ficheiro a subir excedido.", "upload_error.poll": "Non se poden subir ficheiros nas enquisas.", "upload_form.audio_description": "Describir para persoas con problemas auditivos", - "upload_form.description": "Describir para persoas con problemas visuais", + "upload_form.description": "Describir para persoas cegas ou con problemas visuais", "upload_form.description_missing": "Sen descrición", "upload_form.edit": "Editar", "upload_form.thumbnail": "Cambiar a miniatura", "upload_form.undo": "Eliminar", - "upload_form.video_description": "Describir para persoas con problemas visuais ou auditivos", + "upload_form.video_description": "Describe para persoas con problemas visuais ou auditivos", "upload_modal.analyzing_picture": "Estase a analizar a imaxe…", "upload_modal.apply": "Aplicar", "upload_modal.applying": "Aplicando…", diff --git a/app/javascript/mastodon/locales/he.json b/app/javascript/mastodon/locales/he.json index 58d2f621b..c1e5eee97 100644 --- a/app/javascript/mastodon/locales/he.json +++ b/app/javascript/mastodon/locales/he.json @@ -72,8 +72,8 @@ "admin.dashboard.retention.average": "ממוצע", "admin.dashboard.retention.cohort": "חודש רישום", "admin.dashboard.retention.cohort_size": "משתמשים חדשים", - "alert.rate_limited.message": "נא לנסות אחרי {retry_time, time, medium}.", - "alert.rate_limited.title": "חלה הגבלת קצב", + "alert.rate_limited.message": " נא לנסות שוב אחרי {retry_time, time, medium}.", + "alert.rate_limited.title": "חלה הגבלה על קצב התעבורה", "alert.unexpected.message": "אירעה שגיאה בלתי צפויה.", "alert.unexpected.title": "אופס!", "announcement.announcement": "הכרזה", @@ -221,7 +221,7 @@ "empty_column.favourites": "עוד לא חיבבו את ההודעה הזו. כאשר זה יקרה, החיבובים יופיעו כאן.", "empty_column.follow_recommendations": "נראה שלא ניתן לייצר המלצות עבורך. נסה/י להשתמש בחיפוש כדי למצוא אנשים מוכרים או לבדוק את הנושאים החמים.", "empty_column.follow_requests": "אין לך שום בקשות מעקב עדיין. לכשיתקבלו כאלה, הן תופענה כאן.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "עוד לא עקבת אחרי תגיות. כשיהיו לך תגיות נעקבות, ההודעות יופיעו פה.", "empty_column.hashtag": "אין כלום בהאשתג הזה עדיין.", "empty_column.home": "פיד הבית ריק ! אפשר לבקר ב{public} או להשתמש בחיפוש כדי להתחיל ולהכיר משתמשים/ות אחרים/ות. {suggestions}", "empty_column.home.suggestions": "ראה/י כמה הצעות", @@ -264,7 +264,7 @@ "follow_request.authorize": "הרשאה", "follow_request.reject": "דחיה", "follow_requests.unlocked_explanation": "למרות שחשבונך אינו נעול, צוות {domain} חושב שאולי כדאי לוודא את בקשות המעקב האלה ידנית.", - "followed_tags": "Followed hashtags", + "followed_tags": "התגיות שהחשבון שלך עוקב אחריהן", "footer.about": "אודות", "footer.directory": "מדריך פרופילים", "footer.get_app": "להתקנת היישומון", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "חיבובים", "navigation_bar.filters": "מילים מושתקות", "navigation_bar.follow_requests": "בקשות מעקב", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "תגיות שהחשבון שלך עוקב אחריהן", "navigation_bar.follows_and_followers": "נעקבים ועוקבים", "navigation_bar.lists": "רשימות", "navigation_bar.logout": "התנתקות", @@ -543,7 +543,7 @@ "server_banner.server_stats": "סטטיסטיקות שרת:", "sign_in_banner.create_account": "יצירת חשבון", "sign_in_banner.sign_in": "התחברות", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "יש להתחבר כדי לעקוב אחרי משתמשים או תגיות, לחבב, לשתף ולענות להודעות. ניתן גם לתקשר מהחשבון שלך עם שרת אחר.", "status.admin_account": "פתח/י ממשק ניהול עבור @{name}", "status.admin_domain": "פתיחת ממשק ניהול עבור {domain}", "status.admin_status": "Open this status in the moderation interface", diff --git a/app/javascript/mastodon/locales/hi.json b/app/javascript/mastodon/locales/hi.json index 60004ad9a..9ed822e57 100644 --- a/app/javascript/mastodon/locales/hi.json +++ b/app/javascript/mastodon/locales/hi.json @@ -381,7 +381,7 @@ "navigation_bar.favourites": "पसंदीदा", "navigation_bar.filters": "वारित शब्द", "navigation_bar.follow_requests": "अनुसरण करने के अनुरोध", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "हैशटैग को फॉलो करें", "navigation_bar.follows_and_followers": "Follows and followers", "navigation_bar.lists": "सूचियाँ", "navigation_bar.logout": "बाहर जाए", diff --git a/app/javascript/mastodon/locales/hr.json b/app/javascript/mastodon/locales/hr.json index e85d3ba0c..77364d4fa 100644 --- a/app/javascript/mastodon/locales/hr.json +++ b/app/javascript/mastodon/locales/hr.json @@ -65,7 +65,7 @@ "account.unfollow": "Prestani pratiti", "account.unmute": "Poništi utišavanje @{name}", "account.unmute_notifications": "Ne utišavaj obavijesti od @{name}", - "account.unmute_short": "Unmute", + "account.unmute_short": "Poništi utišavanje", "account_note.placeholder": "Kliknite za dodavanje bilješke", "admin.dashboard.daily_retention": "User retention rate by day after sign-up", "admin.dashboard.monthly_retention": "User retention rate by month after sign-up", @@ -366,7 +366,7 @@ "missing_indicator.sublabel": "This resource could not be found", "moved_to_account_banner.text": "Your account {disabledAccount} is currently disabled because you moved to {movedToAccount}.", "mute_modal.duration": "Trajanje", - "mute_modal.hide_notifications": "Hide notifications from this user?", + "mute_modal.hide_notifications": "Sakrij obavijesti ovog korisnika?", "mute_modal.indefinite": "Indefinite", "navigation_bar.about": "About", "navigation_bar.blocks": "Blokirani korisnici", diff --git a/app/javascript/mastodon/locales/hu.json b/app/javascript/mastodon/locales/hu.json index f33644e4f..2b999fcf5 100644 --- a/app/javascript/mastodon/locales/hu.json +++ b/app/javascript/mastodon/locales/hu.json @@ -221,7 +221,7 @@ "empty_column.favourites": "Még senki sem jelölte ezt a bejegyzést kedvencnek. Ha valaki mégis megteszi, itt fogjuk mutatni.", "empty_column.follow_recommendations": "Úgy tűnik, neked nem tudunk javaslatokat adni. Próbáld a keresést használni olyanok megtalálására, akiket ismerhetsz, vagy fedezd fel a felkapott hastageket.", "empty_column.follow_requests": "Még nincs egy követési kérésed sem. Ha kapsz egyet, itt fogjuk feltüntetni.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Még egy hashtaget sem követtél be. Itt fognak megjelenni, ahogy bekövetsz egyet.", "empty_column.hashtag": "Jelenleg nem található semmi ezzel a hashtaggel.", "empty_column.home": "A saját idővonalad üres! Látogasd meg a {public} oldalt vagy használd a keresőt, hogy megismerj másokat.", "empty_column.home.suggestions": "Nézzünk pár javaslatot", @@ -264,7 +264,7 @@ "follow_request.authorize": "Engedélyezé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 a fiók követési kéréseit.", - "followed_tags": "Followed hashtags", + "followed_tags": "Követett hashtagek", "footer.about": "Névjegy", "footer.directory": "Profilok", "footer.get_app": "Töltsd le az appot", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Kedvencek", "navigation_bar.filters": "Némított szavak", "navigation_bar.follow_requests": "Követési kérelmek", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Követett hashtagek", "navigation_bar.follows_and_followers": "Követettek és követők", "navigation_bar.lists": "Listák", "navigation_bar.logout": "Kijelentkezés", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Kiszolgálóstatisztika:", "sign_in_banner.create_account": "Fiók létrehozása", "sign_in_banner.sign_in": "Bejelentkezés", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Jelentkezz be profilok vagy hashtagek követéséhez, kedvencnek jelöléséhez, bejegyzések megosztásához, megválaszolásához. A fiókodból más kiszolgálókon is kommunikálhatsz.", "status.admin_account": "Moderációs felület megnyitása @{name} fiókhoz", "status.admin_domain": "A következő moderációs felületének megnyitása: @{domain}", "status.admin_status": "Bejegyzés megnyitása a moderációs felületen", diff --git a/app/javascript/mastodon/locales/is.json b/app/javascript/mastodon/locales/is.json index 40c4d1202..8e1f3b6bf 100644 --- a/app/javascript/mastodon/locales/is.json +++ b/app/javascript/mastodon/locales/is.json @@ -221,7 +221,7 @@ "empty_column.favourites": "Enginn hefur ennþá sett þessa færslu í eftirlæti. Þegar einhver gerir það, mun það birtast hér.", "empty_column.follow_recommendations": "Það lítur út fyrir að ekki hafi verið hægt að útbúa neinar tillögur fyrir þig. Þú getur reynt að leita að fólki sem þú gætir þekkt eða skoðað myllumerki sem eru í umræðunni.", "empty_column.follow_requests": "Þú átt ennþá engar beiðnir um að fylgja þér. Þegar þú færð slíkar beiðnir, munu þær birtast hér.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Þú ert ekki ennþá farin/n að fylgjast með myllumerkjum. Þegar þú gerir það, munu þau birtast hér.", "empty_column.hashtag": "Það er ekkert ennþá undir þessu myllumerki.", "empty_column.home": "Heimatímalínan þín er tóm! Fylgstu með fleira fólki til að fylla hana. {suggestions}", "empty_column.home.suggestions": "Skoðaðu nokkrar tillögur", @@ -264,7 +264,7 @@ "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.", - "followed_tags": "Followed hashtags", + "followed_tags": "Myllumerki sem fylgst er með", "footer.about": "Nánari upplýsingar", "footer.directory": "Notandasniðamappa", "footer.get_app": "Ná í forritið", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Eftirlæti", "navigation_bar.filters": "Þögguð orð", "navigation_bar.follow_requests": "Beiðnir um að fylgjast með", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Myllumerki sem fylgst er með", "navigation_bar.follows_and_followers": "Fylgist með og fylgjendur", "navigation_bar.lists": "Listar", "navigation_bar.logout": "Útskráning", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Tölfræði þjóns:", "sign_in_banner.create_account": "Búa til notandaaðgang", "sign_in_banner.sign_in": "Skrá inn", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Skráðu þig inn til að fylgjast með notendum eða myllumerkjum, svara færslum, deila þeim eða setja í eftirlæti. Þú getur einnig átt í samskiptum á aðgangnum þínum á öðrum netþjónum.", "status.admin_account": "Opna umsjónarviðmót fyrir @{name}", "status.admin_domain": "Opna umsjónarviðmót fyrir @{domain}", "status.admin_status": "Opna þessa færslu í umsjónarviðmótinu", diff --git a/app/javascript/mastodon/locales/it.json b/app/javascript/mastodon/locales/it.json index d6cf6c8dd..56406da8f 100644 --- a/app/javascript/mastodon/locales/it.json +++ b/app/javascript/mastodon/locales/it.json @@ -221,7 +221,7 @@ "empty_column.favourites": "Nessuno ha ancora messo questo post tra i preferiti. Quando qualcuno lo farà, apparirà qui.", "empty_column.follow_recommendations": "Sembra che non sia stato possibile generare alcun suggerimento per te. Puoi provare a utilizzare la ricerca per cercare persone che potresti conoscere, o a esplorare gli hashtag in tendenza.", "empty_column.follow_requests": "Non hai ancora alcuna richiesta di seguirti. Quando ne riceverai una, apparirà qui.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Non hai ancora seguito alcun hashtag. Quando lo farai, appariranno qui.", "empty_column.hashtag": "Non c'è ancora nulla in questo hashtag.", "empty_column.home": "La cronologia della tua home è vuota! Segui altre persone per riempirla. {suggestions}", "empty_column.home.suggestions": "Vedi alcuni suggerimenti", @@ -264,7 +264,7 @@ "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.", - "followed_tags": "Followed hashtags", + "followed_tags": "Hashtag seguiti", "footer.about": "Info", "footer.directory": "Cartella dei profili", "footer.get_app": "Scarica l'app", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Preferiti", "navigation_bar.filters": "Parole silenziate", "navigation_bar.follow_requests": "Richieste di seguirti", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Hashtag seguiti", "navigation_bar.follows_and_followers": "Seguiti e seguaci", "navigation_bar.lists": "Liste", "navigation_bar.logout": "Disconnettiti", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Statistiche del server:", "sign_in_banner.create_account": "Crea un profilo", "sign_in_banner.sign_in": "Accedi", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Accedi per seguire profili o hashtag, segnare messaggi come preferiti, condividere e rispondere ai messaggi. Puoi anche interagire dal tuo account su un server diverso.", "status.admin_account": "Apri interfaccia di moderazione per @{name}", "status.admin_domain": "Apri l'interfaccia di moderazione per {domain}", "status.admin_status": "Apri questo post nell'interfaccia di moderazione", diff --git a/app/javascript/mastodon/locales/ja.json b/app/javascript/mastodon/locales/ja.json index 6a32befca..aca58c145 100644 --- a/app/javascript/mastodon/locales/ja.json +++ b/app/javascript/mastodon/locales/ja.json @@ -45,7 +45,7 @@ "account.locked_info": "このアカウントは承認制アカウントです。相手が承認するまでフォローは完了しません。", "account.media": "メディア", "account.mention": "@{name}さんにメンション", - "account.moved_to": "{name} さんの新しいアカウント:", + "account.moved_to": "{name} さんがアカウントを引っ越しました:", "account.mute": "@{name}さんをミュート", "account.mute_notifications": "@{name}さんからの通知を受け取らない", "account.muted": "ミュート済み", @@ -98,7 +98,7 @@ "closed_registrations_modal.find_another_server": "別のサーバーを探す", "closed_registrations_modal.preamble": "Mastodonは分散型なのでどのサーバーでアカウントを作成してもこのサーバーのユーザーを誰でもフォローして交流することができます。また自分でホスティングすることもできます!", "closed_registrations_modal.title": "Mastodonでアカウントを作成", - "column.about": "About", + "column.about": "概要", "column.blocks": "ブロックしたユーザー", "column.bookmarks": "ブックマーク", "column.community": "ローカルタイムライン", @@ -132,7 +132,7 @@ "compose.language.search": "言語を検索...", "compose_form.direct_message_warning_learn_more": "もっと詳しく", "compose_form.encryption_warning": "Mastodonの投稿はエンドツーエンド暗号化に対応していません。安全に送受信されるべき情報をMastodonで共有しないでください。", - "compose_form.hashtag_warning": "This post won't be listed under any hashtag as it is unlisted. Only public posts can be searched by hashtag.", + "compose_form.hashtag_warning": "この投稿は公開設定ではないのでハッシュタグの一覧に表示されません。公開投稿だけがハッシュタグで検索できます。", "compose_form.lock_disclaimer": "あなたのアカウントは{locked}になっていません。誰でもあなたをフォローすることができ、フォロワー限定の投稿を見ることができます。", "compose_form.lock_disclaimer.lock": "承認制", "compose_form.placeholder": "今なにしてる?", @@ -225,7 +225,7 @@ "empty_column.favourites": "まだ誰もお気に入り登録していません。お気に入り登録されるとここに表示されます。", "empty_column.follow_recommendations": "おすすめを生成できませんでした。検索を使って知り合いを探したり、トレンドハッシュタグを見てみましょう。", "empty_column.follow_requests": "まだフォローリクエストを受けていません。フォローリクエストを受けるとここに表示されます。", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "まだハッシュタグをフォローしていません。フォローするとここに表示されます。", "empty_column.hashtag": "このハッシュタグはまだ使われていません。", "empty_column.home": "ホームタイムラインはまだ空っぽです。誰かフォローして埋めてみましょう。 {suggestions}", "empty_column.home.suggestions": "おすすめを見る", @@ -248,7 +248,7 @@ "explore.trending_tags": "ハッシュタグ", "filter_modal.added.context_mismatch_explanation": "このフィルターカテゴリーはあなたがアクセスした投稿のコンテキストには適用されません。この投稿のコンテキストでもフィルターを適用するにはフィルターを編集する必要があります。", "filter_modal.added.context_mismatch_title": "コンテキストが一致しません!", - "filter_modal.added.expired_explanation": "このフィルターカテゴリーは有効期限が切れています。適用するには有効期限を更新してください。", + "filter_modal.added.expired_explanation": "このフィルターカテゴリは有効期限が切れています。適用するには有効期限を更新してください。", "filter_modal.added.expired_title": "フィルターの有効期限が切れています!", "filter_modal.added.review_and_configure": "このフィルターカテゴリーを確認して設定するには、{settings_link}に移動します。", "filter_modal.added.review_and_configure_title": "フィルター設定", @@ -268,10 +268,10 @@ "follow_request.authorize": "許可", "follow_request.reject": "拒否", "follow_requests.unlocked_explanation": "あなたのアカウントは承認制ではありませんが、{domain}のスタッフはこれらのアカウントからのフォローリクエストの確認が必要であると判断しました。", - "followed_tags": "Followed hashtags", + "followed_tags": "フォロー中のハッシュタグ", "footer.about": "概要", "footer.directory": "ディレクトリ", - "footer.get_app": "アプリをダウンロードする", + "footer.get_app": "アプリを入手", "footer.invite": "新規ユーザーの招待", "footer.keyboard_shortcuts": "キーボードショートカット", "footer.privacy_policy": "プライバシーポリシー", @@ -385,7 +385,7 @@ "navigation_bar.favourites": "お気に入り", "navigation_bar.filters": "フィルター設定", "navigation_bar.follow_requests": "フォローリクエスト", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "フォロー中のハッシュタグ", "navigation_bar.follows_and_followers": "フォロー・フォロワー", "navigation_bar.lists": "リスト", "navigation_bar.logout": "ログアウト", @@ -547,7 +547,7 @@ "server_banner.server_stats": "サーバーの情報", "sign_in_banner.create_account": "アカウント作成", "sign_in_banner.sign_in": "ログイン", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "ログインしてプロファイルやハッシュタグ、お気に入りをフォローしたり、投稿を共有したり、返信したり、別のサーバーのアカウントと交流したりできます。", "status.admin_account": "@{name}さんのモデレーション画面を開く", "status.admin_domain": "{domain}のモデレーション画面を開く", "status.admin_status": "この投稿をモデレーション画面で開く", @@ -631,12 +631,12 @@ "upload_error.limit": "アップロードできる上限を超えています。", "upload_error.poll": "アンケートではファイルをアップロードできません。", "upload_form.audio_description": "聴き取りが難しいユーザーへの説明", - "upload_form.description": "視覚障害者向けの説明", + "upload_form.description": "視覚的に閲覧が難しいユーザーへの説明", "upload_form.description_missing": "説明を追加していません", "upload_form.edit": "編集", "upload_form.thumbnail": "サムネイルを変更", "upload_form.undo": "削除", - "upload_form.video_description": "視聴が難しいユーザーへの説明", + "upload_form.video_description": "聴き取りや視覚的に閲覧が難しいユーザーへの説明", "upload_modal.analyzing_picture": "画像を解析中…", "upload_modal.apply": "適用", "upload_modal.applying": "適用中...", diff --git a/app/javascript/mastodon/locales/kab.json b/app/javascript/mastodon/locales/kab.json index 3bc41b3b2..3db7a397f 100644 --- a/app/javascript/mastodon/locales/kab.json +++ b/app/javascript/mastodon/locales/kab.json @@ -239,9 +239,9 @@ "explore.search_results": "Igemmaḍ n unadi", "explore.suggested_follows": "For you", "explore.title": "Snirem", - "explore.trending_links": "News", - "explore.trending_statuses": "Posts", - "explore.trending_tags": "Hashtags", + "explore.trending_links": "Isallen", + "explore.trending_statuses": "Tisuffiɣin", + "explore.trending_tags": "Ihacṭagen", "filter_modal.added.context_mismatch_explanation": "This filter category does not apply to the context in which you have accessed this post. If you want the post to be filtered in this context too, you will have to edit the filter.", "filter_modal.added.context_mismatch_title": "Context mismatch!", "filter_modal.added.expired_explanation": "This filter category has expired, you will need to change the expiration date for it to apply.", diff --git a/app/javascript/mastodon/locales/ko.json b/app/javascript/mastodon/locales/ko.json index f578c1f7d..164353b6d 100644 --- a/app/javascript/mastodon/locales/ko.json +++ b/app/javascript/mastodon/locales/ko.json @@ -221,7 +221,7 @@ "empty_column.favourites": "아직 아무도 이 게시물을 마음에 들어하지 않았습니다. 누군가 좋아요를 하면 여기에 나타납니다.", "empty_column.follow_recommendations": "나를 위한 추천을 만들 수 없는 것 같습니다. 알 수도 있는 사람을 검색하거나 유행하는 해시태그를 둘러볼 수 있습니다.", "empty_column.follow_requests": "아직 팔로우 요청이 없습니다. 요청을 받았을 때 여기에 나타납니다.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "아직 아무 해시태그도 팔로우하고 있지 않습니다. 해시태그를 팔로우하면, 여기에 표시됩니다.", "empty_column.hashtag": "이 해시태그는 아직 사용되지 않았습니다.", "empty_column.home": "당신의 홈 타임라인은 비어있습니다! 더 많은 사람들을 팔로우 하여 채워보세요. {suggestions}", "empty_column.home.suggestions": "몇몇의 제안 보기", @@ -264,7 +264,7 @@ "follow_request.authorize": "허가", "follow_request.reject": "거부", "follow_requests.unlocked_explanation": "귀하의 계정이 잠긴 계정이 아닐지라도, {domain} 스태프는 이 계정들의 팔로우 요청을 수동으로 처리해 주시면 좋겠다고 생각했습니다.", - "followed_tags": "Followed hashtags", + "followed_tags": "팔로우 중인 해시태그", "footer.about": "정보", "footer.directory": "프로필 책자", "footer.get_app": "앱 다운로드하기", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "좋아요", "navigation_bar.filters": "뮤트한 단어", "navigation_bar.follow_requests": "팔로우 요청", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "팔로우 중인 해시태그", "navigation_bar.follows_and_followers": "팔로우와 팔로워", "navigation_bar.lists": "리스트", "navigation_bar.logout": "로그아웃", @@ -459,7 +459,7 @@ "privacy.public.long": "모두가 볼 수 있음", "privacy.public.short": "공개", "privacy.unlisted.long": "모두가 볼 수 있지만, 발견하기 기능에서는 제외됨", - "privacy.unlisted.short": "타임라인에 비표시", + "privacy.unlisted.short": "미등재", "privacy_policy.last_updated": "{date}에 마지막으로 업데이트됨", "privacy_policy.title": "개인정보 정책", "refresh": "새로고침", @@ -543,7 +543,7 @@ "server_banner.server_stats": "서버 통계:", "sign_in_banner.create_account": "계정 생성", "sign_in_banner.sign_in": "로그인", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "로그인을 통해 프로필이나 해시태그를 팔로우하거나 마음에 들어하거나 공유하고 답글을 달 수 있습니다. 다른 서버에 있는 본인의 계정을 통해 참여할 수도 있습니다.", "status.admin_account": "@{name}에 대한 중재 화면 열기", "status.admin_domain": "{domain}에 대한 중재 화면 열기", "status.admin_status": "중재 화면에서 이 게시물 열기", diff --git a/app/javascript/mastodon/locales/lv.json b/app/javascript/mastodon/locales/lv.json index f660f5922..bb6bfbc82 100644 --- a/app/javascript/mastodon/locales/lv.json +++ b/app/javascript/mastodon/locales/lv.json @@ -221,7 +221,7 @@ "empty_column.favourites": "Neviens šo ziņojumu vel nav izcēlis. Kad kāds to izdarīs, tas parādīsies šeit.", "empty_column.follow_recommendations": "Neizdevās ģenerēt tev pielāgotus ieteikumus. Vari mēģināt izmantot meklēšanu, lai meklētu cilvēkus, kurus tu varētu pazīt, vai izpētīt populārākos tēmturus.", "empty_column.follow_requests": "Šobrīd tev nav sekošanas pieprasījumu. Kad kāds pieteiksies tev sekot, pieprasījums parādīsies šeit.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Tu vēl neesi sekojis nevienam tēmturim. Kad to izdarīsi, tie tiks parādīti šeit.", "empty_column.hashtag": "Ar šo tēmturi nekas nav atrodams.", "empty_column.home": "Tava mājas laika līnija ir tukša! Lai to aizpildītu, pieseko vairāk cilvēkiem. {suggestions}", "empty_column.home.suggestions": "Apskatīt dažus ieteikumus", @@ -264,7 +264,7 @@ "follow_request.authorize": "Autorizēt", "follow_request.reject": "Noraidīt", "follow_requests.unlocked_explanation": "Lai gan tavs konts nav bloķēts, {domain} darbinieki iedomājās, ka, iespējams, vēlēsies pārskatīt pieprasījumus no šiem kontiem.", - "followed_tags": "Followed hashtags", + "followed_tags": "Sekojamie tēmturi", "footer.about": "Par", "footer.directory": "Profilu direktorija", "footer.get_app": "Iegūt lietotni", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Izlases", "navigation_bar.filters": "Apklusinātie vārdi", "navigation_bar.follow_requests": "Sekošanas pieprasījumi", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Sekojamie tēmturi", "navigation_bar.follows_and_followers": "Sekojamie un sekotāji", "navigation_bar.lists": "Saraksti", "navigation_bar.logout": "Iziet", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Servera statistika:", "sign_in_banner.create_account": "Izveidot kontu", "sign_in_banner.sign_in": "Pierakstīties", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Pierakstieties, lai sekotu profiliem vai atsaucēm, pievienotu izlasei, kopīgotu ziņas un atbildētu uz tām. Varat arī mijiedarboties no sava konta citā serverī.", "status.admin_account": "Atvērt @{name} moderēšanas saskarni", "status.admin_domain": "Atvērt {domain} moderēšanas saskarni", "status.admin_status": "Atvērt šo ziņu moderācijas saskarnē", diff --git a/app/javascript/mastodon/locales/no.json b/app/javascript/mastodon/locales/no.json index 3e80611f9..e67cd61ea 100644 --- a/app/javascript/mastodon/locales/no.json +++ b/app/javascript/mastodon/locales/no.json @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Favoritter", "navigation_bar.filters": "Stilnede ord", "navigation_bar.follow_requests": "Følgeforespørsler", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Fulgte emneknagger", "navigation_bar.follows_and_followers": "Følginger og følgere", "navigation_bar.lists": "Lister", "navigation_bar.logout": "Logg ut", diff --git a/app/javascript/mastodon/locales/oc.json b/app/javascript/mastodon/locales/oc.json index 1f9add565..65a3e8852 100644 --- a/app/javascript/mastodon/locales/oc.json +++ b/app/javascript/mastodon/locales/oc.json @@ -264,7 +264,7 @@ "follow_request.authorize": "Acceptar", "follow_request.reject": "Regetar", "follow_requests.unlocked_explanation": "Encara que vòstre compte siasque pas verrolhat, la còla de {domain} pensèt que volriatz benlèu repassar las demandas d’abonament d’aquestes comptes.", - "followed_tags": "Followed hashtags", + "followed_tags": "Etiquetas seguidas", "footer.about": "A prepaus", "footer.directory": "Annuari de perfils", "footer.get_app": "Obténer l’aplicacion", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Favorits", "navigation_bar.filters": "Mots ignorats", "navigation_bar.follow_requests": "Demandas d’abonament", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Etiquetas seguidas", "navigation_bar.follows_and_followers": "Abonament e seguidors", "navigation_bar.lists": "Listas", "navigation_bar.logout": "Desconnexion", @@ -502,10 +502,10 @@ "report.reasons.spam_description": "Ligams enganaires, fals engatjament o responsas repetitivas", "report.reasons.violation": "Viòla las règlas del servidor", "report.reasons.violation_description": "You are aware that it breaks specific rules", - "report.rules.subtitle": "Select all that apply", - "report.rules.title": "Which rules are being violated?", + "report.rules.subtitle": "Causissètz çò que s’aplica", + "report.rules.title": "Qualas règlas foguèron enfrachas ?", "report.statuses.subtitle": "Seleccionatz çò que s’aplica", - "report.statuses.title": "Are there any posts that back up this report?", + "report.statuses.title": "I a de publicacions per apiejar aqueste senhalament ?", "report.submit": "Mandar", "report.target": "Senhalar {target}", "report.thanks.take_action": "Here are your options for controlling what you see on Mastodon:", @@ -545,7 +545,7 @@ "sign_in_banner.sign_in": "Se connectar", "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", "status.admin_account": "Dobrir l’interfàcia de moderacion per @{name}", - "status.admin_domain": "Open moderation interface for {domain}", + "status.admin_domain": "Dobrir l’interfàcia de moderacion per {domain}", "status.admin_status": "Dobrir aqueste estatut dins l’interfàcia de moderacion", "status.block": "Blocar @{name}", "status.bookmark": "Marcador", @@ -562,7 +562,7 @@ "status.favourite": "Apondre als favorits", "status.filter": "Filtrar aquesta publicacion", "status.filtered": "Filtrat", - "status.hide": "Hide post", + "status.hide": "Amagar la publicacion", "status.history.created": "{name} o creèt lo {date}", "status.history.edited": "{name} o modifiquèt lo {date}", "status.load_more": "Cargar mai", diff --git a/app/javascript/mastodon/locales/pl.json b/app/javascript/mastodon/locales/pl.json index 8802494d9..359328865 100644 --- a/app/javascript/mastodon/locales/pl.json +++ b/app/javascript/mastodon/locales/pl.json @@ -39,7 +39,7 @@ "account.follows_you": "Obserwuje Cię", "account.go_to_profile": "Przejdź do profilu", "account.hide_reblogs": "Ukryj podbicia od @{name}", - "account.joined_short": "Dołączył(a)", + "account.joined_short": "Dołączony", "account.languages": "Zmień subskrybowane języki", "account.link_verified_on": "Własność tego odnośnika została potwierdzona {date}", "account.locked_info": "To konto jest prywatne. Właściciel ręcznie wybiera kto może go obserwować.", @@ -225,7 +225,7 @@ "empty_column.favourites": "Nikt nie dodał tego wpisu do ulubionych. Gdy ktoś to zrobi, pojawi się tutaj.", "empty_column.follow_recommendations": "Wygląda na to, że nie można wygenerować dla Ciebie żadnych sugestii. Możesz spróbować wyszukać osoby, które znasz, lub przeglądać popularne hasztagi.", "empty_column.follow_requests": "Nie masz żadnych próśb o możliwość obserwacji. Kiedy ktoś utworzy ją, pojawi się tutaj.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Nie obserwujesz jeszcze żadnych hashtagów. Kiedy to zrobisz, pojawią się one tutaj.", "empty_column.hashtag": "Nie ma wpisów oznaczonych tym hasztagiem. Możesz napisać pierwszy(-a).", "empty_column.home": "Nie obserwujesz nikogo. Odwiedź globalną oś czasu lub użyj wyszukiwarki, aby znaleźć interesujące Cię profile.", "empty_column.home.suggestions": "Zobacz kilka sugestii", @@ -268,7 +268,7 @@ "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.", - "followed_tags": "Followed hashtags", + "followed_tags": "Obserwowane hasztagi", "footer.about": "O serwerze", "footer.directory": "Katalog profilów", "footer.get_app": "Pobierz aplikację", @@ -385,7 +385,7 @@ "navigation_bar.favourites": "Ulubione", "navigation_bar.filters": "Wyciszone słowa", "navigation_bar.follow_requests": "Prośby o obserwację", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Obserwowane hasztagi", "navigation_bar.follows_and_followers": "Obserwowani i obserwujący", "navigation_bar.lists": "Listy", "navigation_bar.logout": "Wyloguj", @@ -400,14 +400,14 @@ "not_signed_in_indicator.not_signed_in": "Musisz się zalogować, aby otrzymać dostęp do tego zasobu.", "notification.admin.report": "{name} zgłosił {target}", "notification.admin.sign_up": "Użytkownik {name} zarejestrował się", - "notification.favourite": "{name} dodał(a) Twój wpis do ulubionych", - "notification.follow": "{name} zaczął(-ęła) Cię obserwować", - "notification.follow_request": "{name} poprosił(a) o możliwość obserwacji Cię", - "notification.mention": "{name} wspomniał(a) o tobie", + "notification.favourite": "{name} dodaje Twój wpis do ulubionych", + "notification.follow": "{name} obserwuje Cię", + "notification.follow_request": "{name} prosi o możliwość obserwowania Ciebie", + "notification.mention": "Wspomniało o Tobie przez {name}", "notification.own_poll": "Twoje głosowanie zakończyło się", "notification.poll": "Głosowanie w którym brałeś(-aś) udział zakończyło się", - "notification.reblog": "{name} podbił(a) Twój wpis", - "notification.status": "{name} właśnie utworzył(a) wpis", + "notification.reblog": "Podbito Twój post przez {name}", + "notification.status": "Właśnie umieszczono wpis przez {name}", "notification.update": "{name} edytował post", "notifications.clear": "Wyczyść powiadomienia", "notifications.clear_confirmation": "Czy na pewno chcesz bezpowrotnie usunąć wszystkie powiadomienia?", @@ -548,7 +548,7 @@ "server_banner.server_stats": "Statystyki serwera:", "sign_in_banner.create_account": "Załóż konto", "sign_in_banner.sign_in": "Zaloguj się", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Zaloguj się, aby obserwować profile lub hashtagi, polubić, udostępnić oraz odpowiedzieć na posty. Możesz również wejść w interakcję z konta na innym serwerze.", "status.admin_account": "Otwórz interfejs moderacyjny dla @{name}", "status.admin_domain": "Otwórz interfejs moderacyjny dla {domain}", "status.admin_status": "Otwórz ten wpis w interfejsie moderacyjnym", @@ -568,8 +568,8 @@ "status.filter": "Filtruj ten wpis", "status.filtered": "Filtrowany(-a)", "status.hide": "Ukryj post", - "status.history.created": "{name} utworzył(a) {date}", - "status.history.edited": "{name} edytował(a) {date}", + "status.history.created": "{name} utworzone {date}", + "status.history.edited": "{name} edytowane {date}", "status.load_more": "Załaduj więcej", "status.media_hidden": "Multimedia ukryte", "status.mention": "Wspomnij o @{name}", @@ -582,7 +582,7 @@ "status.read_more": "Czytaj dalej", "status.reblog": "Podbij", "status.reblog_private": "Podbij dla odbiorców oryginalnego wpisu", - "status.reblogged_by": "{name} podbił(a)", + "status.reblogged_by": "Podbite przez {name}", "status.reblogs.empty": "Nikt nie podbił jeszcze tego wpisu. Gdy ktoś to zrobi, pojawi się tutaj.", "status.redraft": "Usuń i przeredaguj", "status.remove_bookmark": "Usuń zakładkę", diff --git a/app/javascript/mastodon/locales/pt-BR.json b/app/javascript/mastodon/locales/pt-BR.json index c70f99bf9..34098d5a0 100644 --- a/app/javascript/mastodon/locales/pt-BR.json +++ b/app/javascript/mastodon/locales/pt-BR.json @@ -37,7 +37,7 @@ "account.following_counter": "{count, plural, one {segue {counter}} other {segue {counter}}}", "account.follows.empty": "Nada aqui.", "account.follows_you": "te segue", - "account.go_to_profile": "Ir para o perfil", + "account.go_to_profile": "Ir ao perfil", "account.hide_reblogs": "Ocultar boosts de @{name}", "account.joined_short": "Entrou", "account.languages": "Mudar idiomas inscritos", @@ -88,7 +88,7 @@ "bundle_column_error.network.title": "Erro de rede", "bundle_column_error.retry": "Tente novamente", "bundle_column_error.return": "Voltar à página inicial", - "bundle_column_error.routing.body": "A página solicitada não foi encontrada. Tem certeza de que a URL na barra de endereços está correta?", + "bundle_column_error.routing.body": "A página solicitada não foi encontrada. Tem certeza de que o URL na barra de endereços está correta?", "bundle_column_error.routing.title": "404", "bundle_modal_error.close": "Fechar", "bundle_modal_error.message": "Erro ao carregar este componente.", @@ -128,7 +128,7 @@ "compose.language.search": "Pesquisar idiomas...", "compose_form.direct_message_warning_learn_more": "Saiba mais", "compose_form.encryption_warning": "As publicações no Mastodon não são criptografadas de ponta-a-ponta. Não compartilhe nenhuma informação sensível no Mastodon.", - "compose_form.hashtag_warning": "This post won't be listed under any hashtag as it is unlisted. Only public posts can be searched by hashtag.", + "compose_form.hashtag_warning": "Esta publicação não será exibida sob nenhuma hashtag, já que não é pública. Apenas postagens públicas podem ser pesquisadas por meio de hashtags.", "compose_form.lock_disclaimer": "Seu perfil não está {locked}. Qualquer um pode te seguir e ver os toots privados.", "compose_form.lock_disclaimer.lock": "trancado", "compose_form.placeholder": "No que você está pensando?", @@ -221,7 +221,7 @@ "empty_column.favourites": "Nada aqui. Quando alguém favoritar, o autor aparecerá aqui.", "empty_column.follow_recommendations": "Parece que não há sugestões para você. Tente usar a pesquisa para encontrar pessoas que você possa conhecer ou explorar hashtags.", "empty_column.follow_requests": "Nada aqui. Quando você tiver seguidores pendentes, eles aparecerão aqui.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Você ainda não seguiu nenhuma hashtag. Quando seguir uma, elas serão exibidas aqui.", "empty_column.hashtag": "Nada aqui.", "empty_column.home": "Sua página inicial está vazia! Siga mais pessoas para começar: {suggestions}", "empty_column.home.suggestions": "Veja algumas sugestões", @@ -264,7 +264,7 @@ "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.", - "followed_tags": "Followed hashtags", + "followed_tags": "Hashtags seguidas", "footer.about": "Sobre", "footer.directory": "Diretório de perfis", "footer.get_app": "Baixe o app", @@ -296,7 +296,7 @@ "interaction_modal.description.reply": "Com uma conta no Mastodon, você pode responder a esta publicação.", "interaction_modal.on_another_server": "Em um servidor diferente", "interaction_modal.on_this_server": "Neste servidor", - "interaction_modal.other_server_instructions": "Copie e cole esta URL no campo de pesquisa do seu aplicativo Mastodon favorito ou a interface web do seu servidor Mastodon.", + "interaction_modal.other_server_instructions": "Copie e cole este URL no campo de pesquisa de seu aplicativo Mastodon favorito ou na interface web de seu servidor Mastodon.", "interaction_modal.preamble": "Como o Mastodon é descentralizado, você pode usar sua conta existente em outro servidor Mastodon ou plataforma compatível se você não tiver uma conta neste servidor.", "interaction_modal.title.favourite": "Favoritar publicação de {name}", "interaction_modal.title.follow": "Seguir {name}", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Favoritos", "navigation_bar.filters": "Palavras filtradas", "navigation_bar.follow_requests": "Seguidores pendentes", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Hashtags seguidas", "navigation_bar.follows_and_followers": "Segue e seguidores", "navigation_bar.lists": "Listas", "navigation_bar.logout": "Sair", @@ -543,9 +543,9 @@ "server_banner.server_stats": "Estatísticas do servidor:", "sign_in_banner.create_account": "Criar conta", "sign_in_banner.sign_in": "Entrar", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Entre para seguir perfis ou hashtags, favoritar, compartilhar e responder publicações. Você também pode interagir a partir da sua conta em um servidor diferente.", "status.admin_account": "Abrir interface de moderação para @{name}", - "status.admin_domain": "Open moderation interface for {domain}", + "status.admin_domain": "Abrir interface de moderação para {domain}", "status.admin_status": "Abrir este toot na interface de moderação", "status.block": "Bloquear @{name}", "status.bookmark": "Salvar", @@ -562,7 +562,7 @@ "status.favourite": "Favoritar", "status.filter": "Filtrar esta publicação", "status.filtered": "Filtrado", - "status.hide": "Hide post", + "status.hide": "Ocultar publicação", "status.history.created": "{name} criou {date}", "status.history.edited": "{name} editou {date}", "status.load_more": "Ver mais", diff --git a/app/javascript/mastodon/locales/pt-PT.json b/app/javascript/mastodon/locales/pt-PT.json index 28889bcc6..f544e1eb7 100644 --- a/app/javascript/mastodon/locales/pt-PT.json +++ b/app/javascript/mastodon/locales/pt-PT.json @@ -221,7 +221,7 @@ "empty_column.favourites": "Ainda ninguém tem esta publicação nos seus marcadores. Quando alguém o tiver, ele irá aparecer aqui.", "empty_column.follow_recommendations": "Parece que não foi possível gerar nenhuma sugestão para si. Pode tentar utilizar a pesquisa para procurar pessoas que conheça ou explorar as #etiquetas em destaque.", "empty_column.follow_requests": "Ainda não tens nenhum pedido de seguidor. Quando receberes algum, ele irá aparecer aqui.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Ainda não segue nenhuma hashtag. Quando o fizer, ela aparecerá aqui.", "empty_column.hashtag": "Não foram encontradas publicações com essa #etiqueta.", "empty_column.home": "Ainda não segues qualquer utilizador. Visita {public} ou utiliza a pesquisa para procurar outros utilizadores.", "empty_column.home.suggestions": "Ver algumas sugestões", @@ -264,7 +264,7 @@ "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.", - "followed_tags": "Followed hashtags", + "followed_tags": "Hashtags seguidas", "footer.about": "Sobre", "footer.directory": "Diretório de perfis", "footer.get_app": "Obtém a aplicação", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Favoritos", "navigation_bar.filters": "Palavras silenciadas", "navigation_bar.follow_requests": "Seguidores pendentes", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Hashtags seguidas", "navigation_bar.follows_and_followers": "Seguindo e seguidores", "navigation_bar.lists": "Listas", "navigation_bar.logout": "Sair", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Estatísticas do servidor:", "sign_in_banner.create_account": "Criar conta", "sign_in_banner.sign_in": "Iniciar sessão", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Inicie sessão para seguir perfis ou hashtags, adicionar aos favoritos, partilhar ou responder a publicações. Pode ainda interagir através da sua conta noutro servidor.", "status.admin_account": "Abrir a interface de moderação para @{name}", "status.admin_domain": "Abrir interface de moderação para {domain}", "status.admin_status": "Abrir esta publicação na interface de moderação", diff --git a/app/javascript/mastodon/locales/sk.json b/app/javascript/mastodon/locales/sk.json index b5272097f..daa28fd4b 100644 --- a/app/javascript/mastodon/locales/sk.json +++ b/app/javascript/mastodon/locales/sk.json @@ -21,7 +21,7 @@ "account.browse_more_on_origin_server": "Prehľadávaj viac na pôvodnom profile", "account.cancel_follow_request": "Stiahni žiadosť o nasledovanie", "account.direct": "Priama správa pre @{name}", - "account.disable_notifications": "Prestaň oznamovať, keď má príspevky @{name}", + "account.disable_notifications": "Prestaň ma oboznamovať, keď má @{name} príspevky", "account.domain_blocked": "Doména ukrytá", "account.edit_profile": "Uprav profil", "account.enable_notifications": "Oboznamuj ma, keď má @{name} príspevky", @@ -50,7 +50,7 @@ "account.mute_notifications": "Stĺm oboznámenia od @{name}", "account.muted": "Nevšímaný/á", "account.open_original_page": "Otvor pôvodnú stránku", - "account.posts": "Príspevky/ov", + "account.posts": "Príspevky", "account.posts_with_replies": "Príspevky a odpovede", "account.report": "Nahlás @{name}", "account.requested": "Čaká na schválenie. Klikni pre zrušenie žiadosti", @@ -62,7 +62,7 @@ "account.unblock_domain": "Prestaň skrývať {domain}", "account.unblock_short": "Odblokuj", "account.unendorse": "Nezobrazuj na profile", - "account.unfollow": "Prestaň následovať", + "account.unfollow": "Prestaň nasledovať", "account.unmute": "Prestaň ignorovať @{name}", "account.unmute_notifications": "Zruš nevšímanie si oznámení od @{name}", "account.unmute_short": "Zruš nevšímanie", @@ -165,7 +165,7 @@ "confirmations.logout.confirm": "Odhlás sa", "confirmations.logout.message": "Si si istý/á, že sa chceš odhlásiť?", "confirmations.mute.confirm": "Nevšímaj si", - "confirmations.mute.explanation": "Toto nastavenie pred tebou skryje ich príspevky, alebo príspevky od iných v ktorých sú spomenutí, ale umožní im vidieť tvoje príspevky, aj ťa následovať.", + "confirmations.mute.explanation": "Toto nastavenie skryje ich príspevky, alebo príspevky od iných v ktorých sú spomenutí, ale umožní im vidieť tvoje príspevky, aj ťa nasledovať.", "confirmations.mute.message": "Naozaj si chceš nevšímať {name}?", "confirmations.redraft.confirm": "Vyčisti a prepíš", "confirmations.redraft.message": "Si si istý/á, že chceš premazať a prepísať tento príspevok? Jeho nadobudnuté vyzdvihnutia a obľúbenia, ale i odpovede na pôvodný príspevok budú odlúčené.", @@ -221,7 +221,7 @@ "empty_column.favourites": "Tento toot si ešte nikto neobľúbil. Ten kto si ho obľúbi, bude zobrazený tu.", "empty_column.follow_recommendations": "Zdá sa že pre Vás nemohli byť vygenerované žiadne návrhy. Môžete skúsiť použiť vyhľadávanie aby ste našli ľudi ktorých poznáte, alebo preskúmať trendujúce heštegy.", "empty_column.follow_requests": "Ešte nemáš žiadne požiadavky o následovanie. Keď nejaké dostaneš, budú tu zobrazené.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Ešte nenasleduješ žiadne haštagy. Keď tak urobíš, zobrazia sa tu.", "empty_column.hashtag": "Pod týmto hashtagom sa ešte nič nenachádza.", "empty_column.home": "Tvoja lokálna osa je zatiaľ prázdna! Pre začiatok navštív {public}, alebo použi vyhľadávanie a nájdi tak aj iných užívateľov.", "empty_column.home.suggestions": "Prezri nejaké návrhy", @@ -264,7 +264,7 @@ "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.", - "followed_tags": "Followed hashtags", + "followed_tags": "Nasledované haštagy", "footer.about": "O", "footer.directory": "Adresár profilov", "footer.get_app": "Stiahnuť aplikáciu", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Obľúbené", "navigation_bar.filters": "Filtrované slová", "navigation_bar.follow_requests": "Žiadosti o sledovanie", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Nasledované haštagy", "navigation_bar.follows_and_followers": "Sledovania a následovatelia", "navigation_bar.lists": "Zoznamy", "navigation_bar.logout": "Odhlás sa", @@ -396,8 +396,8 @@ "notification.admin.report": "{name} nahlásil/a {target}", "notification.admin.sign_up": "{name} sa zaregistroval/a", "notification.favourite": "{name} si obľúbil/a tvoj príspevok", - "notification.follow": "{name} ťa začal/a následovať", - "notification.follow_request": "{name} žiada ťa následovať", + "notification.follow": "{name} ťa začal/a nasledovať", + "notification.follow_request": "{name} ťa žiada nasledovať", "notification.mention": "{name} ťa spomenul/a", "notification.own_poll": "Tvoja anketa sa skončila", "notification.poll": "Anketa v ktorej si hlasoval/a sa skončila", @@ -448,7 +448,7 @@ "poll.total_votes": "{count, plural, one {# hlas} few {# hlasov} many {# hlasov} other {# hlasov}}", "poll.vote": "Hlasuj", "poll.voted": "Hlasoval/a si za túto voľbu", - "poll.votes": "{votes, plural, one {# vote} other {# votes}}", + "poll.votes": "{votes, plural, one {# hlas} few {# hlasov} many {# hlasov} other {# hlasy}}", "poll_button.add_poll": "Pridaj anketu", "poll_button.remove_poll": "Odstráň anketu", "privacy.change": "Uprav súkromie príspevku", @@ -466,11 +466,11 @@ "regeneration_indicator.label": "Načítava sa…", "regeneration_indicator.sublabel": "Tvoja domovská nástenka sa pripravuje!", "relative_time.days": "{number}dní", - "relative_time.full.days": "{number, plural, one {# day} other {# days}} ago", - "relative_time.full.hours": "{number, plural, one {# hour} other {# hours}} ago", + "relative_time.full.days": "Ostáva {number, plural, one {# deň} few {# dní} many {# dní} other {# dni}}", + "relative_time.full.hours": "Pred {number, plural, one {# hodinou} few {# hodinami} many {# hodinami} other {# hodinami}}", "relative_time.full.just_now": "práve teraz", - "relative_time.full.minutes": "{number, plural, one {# minute} other {# minutes}} ago", - "relative_time.full.seconds": "{number, plural, one {# second} other {# seconds}} ago", + "relative_time.full.minutes": "Pred {number, plural, one {# minútou} few {# minútami} many {# minútami} other {# minútami}}", + "relative_time.full.seconds": "Pred {number, plural, one {# sekundou} few {# sekundami} many {# sekundami} other {# sekundami}}", "relative_time.hours": "{number}hod", "relative_time.just_now": "teraz", "relative_time.minutes": "{number}min", @@ -534,7 +534,7 @@ "search_results.statuses": "Príspevky", "search_results.statuses_fts_disabled": "Vyhľadávanie v obsahu príspevkov nieje na tomto Mastodon serveri povolené.", "search_results.title": "Hľadaj {q}", - "search_results.total": "{count, number} {count, plural, one {výsledok} many {výsledkov} other {výsledky}}", + "search_results.total": "{count, number} {count, plural, one {výsledok} many {výsledky} other {výsledkov}}", "server_banner.about_active_users": "People using this server during the last 30 days (Monthly Active Users)", "server_banner.active_users": "aktívni užívatelia", "server_banner.administered_by": "Správcom je:", diff --git a/app/javascript/mastodon/locales/sl.json b/app/javascript/mastodon/locales/sl.json index eefda3005..26c7376b3 100644 --- a/app/javascript/mastodon/locales/sl.json +++ b/app/javascript/mastodon/locales/sl.json @@ -221,7 +221,7 @@ "empty_column.favourites": "Nihče še ni vzljubil te objave. Ko jo bo nekdo, se bo pojavila tukaj.", "empty_column.follow_recommendations": "Kaže, da za vas ni mogoče pripraviti nobenih predlogov. Poskusite uporabiti iskanje, da poiščete osebe, ki jih poznate, ali raziščete ključnike, ki so v trendu.", "empty_column.follow_requests": "Nimate prošenj za sledenje. Ko boste prejeli kakšno, se bo prikazala tukaj.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Zaenkrat ne sledite še nobenemu ključniku. Ko boste, se bodo pojavili tukaj.", "empty_column.hashtag": "V tem ključniku še ni nič.", "empty_column.home": "Vaša domača časovnica je prazna! Sledite več osebam, da jo zapolnite. {suggestions}", "empty_column.home.suggestions": "Oglejte si nekaj predlogov", @@ -264,7 +264,7 @@ "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.", - "followed_tags": "Followed hashtags", + "followed_tags": "Sledeni ključniki", "footer.about": "O Mastodonu", "footer.directory": "Imenik profilov", "footer.get_app": "Prenesite aplikacijo", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Priljubljeni", "navigation_bar.filters": "Utišane besede", "navigation_bar.follow_requests": "Prošnje za sledenje", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Sledeni ključniki", "navigation_bar.follows_and_followers": "Sledenja in sledilci", "navigation_bar.lists": "Seznami", "navigation_bar.logout": "Odjava", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Statistika strežnika:", "sign_in_banner.create_account": "Ustvari račun", "sign_in_banner.sign_in": "Prijava", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Prijavite se, da sledite profilom ali ključnikom, dodajate med priljubljene, delite z drugimi ter odgovarjate na objave. V interakciji ste lahko tudi iz svojega računa na drugem strežniku.", "status.admin_account": "Odpri vmesnik za moderiranje za @{name}", "status.admin_domain": "Odpri vmesnik za moderiranje za {domain}", "status.admin_status": "Odpri to objavo v vmesniku za moderiranje", diff --git a/app/javascript/mastodon/locales/sr-Latn.json b/app/javascript/mastodon/locales/sr-Latn.json index 621418742..34e7b20de 100644 --- a/app/javascript/mastodon/locales/sr-Latn.json +++ b/app/javascript/mastodon/locales/sr-Latn.json @@ -221,7 +221,7 @@ "empty_column.favourites": "Niko još nije označio ovu objavu kao omiljenu. Kada neko to uradi, pojaviće se ovde.", "empty_column.follow_recommendations": "Izgleda da ne mogu da se generišu bilo kakvi predlozi za vas. Možete pokušati da koristite pretragu kako biste potražili ljude koje možda poznajete ili istražili popularne heš oznake.", "empty_column.follow_requests": "Još uvek nemate zahteva za praćenje. Kada primite zahtev, pojaviće se ovde.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Još uvek niste zapratili nijednu heš oznaku. Kada to uradite, one će se pojaviti ovde.", "empty_column.hashtag": "Još uvek nema ničega u ovoj heš oznaci.", "empty_column.home": "Vaša početna vremenska linija je prazna! Pratite više ljudi da biste je popunili. {suggestions}", "empty_column.home.suggestions": "Pogledajte neke predloge", @@ -264,7 +264,7 @@ "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.", - "followed_tags": "Followed hashtags", + "followed_tags": "Praćene heš oznake", "footer.about": "Osnovni podaci", "footer.directory": "Direktorijum profila", "footer.get_app": "Preuzmite aplikaciju", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Omiljeno", "navigation_bar.filters": "Ignorisane reči", "navigation_bar.follow_requests": "Zahtevi za praćenje", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Praćene heš oznake", "navigation_bar.follows_and_followers": "Praćenja i pratioci", "navigation_bar.lists": "Liste", "navigation_bar.logout": "Odjava", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Statistike servera:", "sign_in_banner.create_account": "Napravi nalog", "sign_in_banner.sign_in": "Prijavi se", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Prijavite se da biste pratili profile ili heš oznake, označili objave kao omiljene, delili i odgovarali na njih. Takođe možete komunicirati sa svog naloga na drugom serveru.", "status.admin_account": "Otvori moderatorsko okruženje za @{name}", "status.admin_domain": "Otvori moderatorsko okruženje za {domain}", "status.admin_status": "Otvori ovu objavu u moderatorskom okruženju", diff --git a/app/javascript/mastodon/locales/sr.json b/app/javascript/mastodon/locales/sr.json index e426ff05d..be36045c2 100644 --- a/app/javascript/mastodon/locales/sr.json +++ b/app/javascript/mastodon/locales/sr.json @@ -221,7 +221,7 @@ "empty_column.favourites": "Нико још није означио ову објаву као омиљену. Када неко то уради, појавиће се овде.", "empty_column.follow_recommendations": "Изгледа да не могу да се генеришу било какви предлози за вас. Можете покушати да користите претрагу како бисте потражили људе које можда познајете или истражили популарне хеш ознаке.", "empty_column.follow_requests": "Још увек немате захтева за праћење. Када примите захтев, појавиће се овде.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Још увек нисте запратили ниједну хеш ознаку. Када то урадите, оне ће се појавити овде.", "empty_column.hashtag": "Још увек нема ничега у овој хеш ознаци.", "empty_column.home": "Ваша почетна временска линија је празна! Пратите више људи да бисте је попунили. {suggestions}", "empty_column.home.suggestions": "Погледајте неке предлоге", @@ -264,7 +264,7 @@ "follow_request.authorize": "Одобри", "follow_request.reject": "Одбиј", "follow_requests.unlocked_explanation": "Иако ваш налог није закључан, особље {domain} сматра да бисте можда желели да ручно прегледате захтеве за праћење са ових налога.", - "followed_tags": "Followed hashtags", + "followed_tags": "Праћене хеш ознаке", "footer.about": "Основни подаци", "footer.directory": "Директоријум профила", "footer.get_app": "Преузмите апликацију", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Омиљено", "navigation_bar.filters": "Игнорисане речи", "navigation_bar.follow_requests": "Захтеви за праћење", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Праћене хеш ознаке", "navigation_bar.follows_and_followers": "Праћења и пратиоци", "navigation_bar.lists": "Листе", "navigation_bar.logout": "Одјава", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Статистике сервера:", "sign_in_banner.create_account": "Направи налог", "sign_in_banner.sign_in": "Пријави се", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Пријавите се да бисте пратили профиле или хеш ознаке, означили објаве као омиљене, делили и одговарали на њих. Такође можете комуницирати са свог налога на другом серверу.", "status.admin_account": "Отвори модераторско окружење за @{name}", "status.admin_domain": "Отвори модераторско окружење за {domain}", "status.admin_status": "Отвори ову објаву у модераторском окружењу", diff --git a/app/javascript/mastodon/locales/sv.json b/app/javascript/mastodon/locales/sv.json index 85bfdca7e..2d6cd4ab1 100644 --- a/app/javascript/mastodon/locales/sv.json +++ b/app/javascript/mastodon/locales/sv.json @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Favoriter", "navigation_bar.filters": "Tystade ord", "navigation_bar.follow_requests": "Följförfrågningar", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Utvalda hashtags", "navigation_bar.follows_and_followers": "Följer och följare", "navigation_bar.lists": "Listor", "navigation_bar.logout": "Logga ut", diff --git a/app/javascript/mastodon/locales/th.json b/app/javascript/mastodon/locales/th.json index 2f2ae4e8d..c2d634a48 100644 --- a/app/javascript/mastodon/locales/th.json +++ b/app/javascript/mastodon/locales/th.json @@ -221,7 +221,7 @@ "empty_column.favourites": "ยังไม่มีใครชื่นชอบโพสต์นี้ เมื่อใครสักคนชื่นชอบ เขาจะปรากฏที่นี่", "empty_column.follow_recommendations": "ดูเหมือนว่าจะไม่สามารถสร้างข้อเสนอแนะสำหรับคุณ คุณสามารถลองใช้การค้นหาเพื่อมองหาผู้คนที่คุณอาจรู้จักหรือสำรวจแฮชแท็กที่กำลังนิยม", "empty_column.follow_requests": "คุณยังไม่มีคำขอติดตามใด ๆ เมื่อคุณได้รับคำขอ คำขอจะปรากฏที่นี่", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "คุณยังไม่ได้ติดตามแฮชแท็กใด ๆ เมื่อคุณติดตาม แฮชแท็กจะปรากฏที่นี่", "empty_column.hashtag": "ยังไม่มีสิ่งใดในแฮชแท็กนี้", "empty_column.home": "เส้นเวลาหน้าแรกของคุณว่างเปล่า! ติดตามผู้คนเพิ่มเติมเพื่อเติมเส้นเวลาให้เต็ม {suggestions}", "empty_column.home.suggestions": "ดูข้อเสนอแนะบางส่วน", @@ -264,7 +264,7 @@ "follow_request.authorize": "อนุญาต", "follow_request.reject": "ปฏิเสธ", "follow_requests.unlocked_explanation": "แม้ว่าไม่มีการล็อคบัญชีของคุณ พนักงานของ {domain} คิดว่าคุณอาจต้องการตรวจทานคำขอติดตามจากบัญชีเหล่านี้ด้วยตนเอง", - "followed_tags": "Followed hashtags", + "followed_tags": "แฮชแท็กที่ติดตาม", "footer.about": "เกี่ยวกับ", "footer.directory": "ไดเรกทอรีโปรไฟล์", "footer.get_app": "รับแอป", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "รายการโปรด", "navigation_bar.filters": "คำที่ซ่อนอยู่", "navigation_bar.follow_requests": "คำขอติดตาม", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "แฮชแท็กที่ติดตาม", "navigation_bar.follows_and_followers": "การติดตามและผู้ติดตาม", "navigation_bar.lists": "รายการ", "navigation_bar.logout": "ออกจากระบบ", @@ -543,7 +543,7 @@ "server_banner.server_stats": "สถิติเซิร์ฟเวอร์:", "sign_in_banner.create_account": "สร้างบัญชี", "sign_in_banner.sign_in": "ลงชื่อเข้า", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "ลงชื่อเข้าเพื่อติดตามโปรไฟล์หรือแฮชแท็ก ชื่นชอบ แบ่งปัน และตอบกลับโพสต์ คุณยังสามารถโต้ตอบจากบัญชีของคุณในเซิร์ฟเวอร์อื่น", "status.admin_account": "เปิดส่วนติดต่อการควบคุมสำหรับ @{name}", "status.admin_domain": "เปิดส่วนติดต่อการควบคุมสำหรับ {domain}", "status.admin_status": "เปิดโพสต์นี้ในส่วนติดต่อการควบคุม", diff --git a/app/javascript/mastodon/locales/tr.json b/app/javascript/mastodon/locales/tr.json index 9c6b2c95a..60cb03a84 100644 --- a/app/javascript/mastodon/locales/tr.json +++ b/app/javascript/mastodon/locales/tr.json @@ -221,7 +221,7 @@ "empty_column.favourites": "Kimse bu gönderiyi favorilerine eklememiş. Biri eklediğinde burada görünecek.", "empty_column.follow_recommendations": "Öyle görünüyor ki sizin için hiçbir öneri oluşturulamıyor. Tanıdığınız kişileri aramak için aramayı kullanabilir veya öne çıkanlara bakabilirsiniz.", "empty_column.follow_requests": "Hiç takip isteğiniz yok. Bir tane aldığınızda burada görünecek.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Henüz hiç bir etiket takip etmiyorsunuz. Takip ettiğiniz etiketler burada görüntülenecek.", "empty_column.hashtag": "Henüz bu etikete sahip hiçbir gönderi yok.", "empty_column.home": "Ana zaman tünelin boş! Akışını doldurmak için daha fazla kişiyi takip et. {suggestions}", "empty_column.home.suggestions": "Bazı önerileri görün", @@ -264,7 +264,7 @@ "follow_request.authorize": "İzin Ver", "follow_request.reject": "Reddet", "follow_requests.unlocked_explanation": "Hesabınız kilitli olmasa bile, {domain} personeli bu hesaplardan gelen takip isteklerini gözden geçirmek isteyebileceğinizi düşündü.", - "followed_tags": "Followed hashtags", + "followed_tags": "Takip edilen etiketler", "footer.about": "Hakkında", "footer.directory": "Profil dizini", "footer.get_app": "Uygulamayı indir", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Favoriler", "navigation_bar.filters": "Sessize alınmış kelimeler", "navigation_bar.follow_requests": "Takip istekleri", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Takip edilen etiketler", "navigation_bar.follows_and_followers": "Takip edilenler ve takipçiler", "navigation_bar.lists": "Listeler", "navigation_bar.logout": "Oturumu kapat", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Sunucu istatistikleri:", "sign_in_banner.create_account": "Hesap oluştur", "sign_in_banner.sign_in": "Giriş yap", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Profilleri veya etiketleri izlemek, gönderileri beğenmek, paylaşmak ve yanıtlamak için giriş yapın. Başka bir sunucudaki hesabınızla da etkileşebilirsiniz.", "status.admin_account": "@{name} için denetim arayüzünü açın", "status.admin_domain": "{domain} için denetim arayüzünü açın", "status.admin_status": "Denetim arayüzünde bu gönderiyi açın", diff --git a/app/javascript/mastodon/locales/tt.json b/app/javascript/mastodon/locales/tt.json index 84a6bf6e8..1922e5890 100644 --- a/app/javascript/mastodon/locales/tt.json +++ b/app/javascript/mastodon/locales/tt.json @@ -1,16 +1,16 @@ { - "about.blocks": "Moderated servers", - "about.contact": "Contact:", - "about.disclaimer": "Mastodon is free, open-source software, and a trademark of Mastodon gGmbH.", - "about.domain_blocks.no_reason_available": "Reason not available", - "about.domain_blocks.preamble": "Mastodon generally allows you to view content from and interact with users from any other server in the fediverse. These are the exceptions that have been made on this particular server.", - "about.domain_blocks.silenced.explanation": "You will generally not see profiles and content from this server, unless you explicitly look it up or opt into it by following.", - "about.domain_blocks.silenced.title": "Limited", - "about.domain_blocks.suspended.explanation": "No data from this server will be processed, stored or exchanged, making any interaction or communication with users from this server impossible.", - "about.domain_blocks.suspended.title": "Suspended", - "about.not_available": "This information has not been made available on this server.", - "about.powered_by": "Decentralized social media powered by {mastodon}", - "about.rules": "Server rules", + "about.blocks": "Модератор серверлар", + "about.contact": "Бәйләнеш:", + "about.disclaimer": "Mastodon-бушлай ачык чыганак программасы һәм Mastodon gmbh сәүдә маркасы.", + "about.domain_blocks.no_reason_available": "Сәбәбе юк", + "about.domain_blocks.preamble": "Mastodon гадәттә сезгә бүтән fediverse серверыннан эчтәлекне карарга һәм аның белән кулланучылар белән аралашырга мөмкинлек бирә. Бу конкрет серверда ясалган искәрмәләр.", + "about.domain_blocks.silenced.explanation": "Гадәттә, сез бу серверның профильләрен һәм эчтәлеген күрмәячәксез, әгәр сез аларны ачыктан-ачык карамасагыз яки бу адымнарны үтәп язылмасагыз.", + "about.domain_blocks.silenced.title": "Чикле", + "about.domain_blocks.suspended.explanation": "Бу серверның бернинди мәгълүматлары да эшкәртелмәячәк, сакланмаячак яки алмаштырылмаячак, бу сервердан кулланучылар белән үзара бәйләнешне яки аралашуны мөмкин итми.", + "about.domain_blocks.suspended.title": "Асылмалы", + "about.not_available": "Бу серверда бу мәгълүмат юк иде.", + "about.powered_by": "Децентрализованные социаль челтәрләр нигезендә {mastodon}", + "about.rules": "Сервер кагыйдәләре", "account.account_note_header": "Язма", "account.add_or_remove_from_list": "Исемлеккә кертү я бетерү", "account.badges.bot": "Бот", @@ -19,16 +19,16 @@ "account.block_domain": "{domain} доменын блоклау", "account.blocked": "Блокланган", "account.browse_more_on_origin_server": "Тулырак оригинал профилендә карап була", - "account.cancel_follow_request": "Withdraw follow request", + "account.cancel_follow_request": "Киләсе сорау", "account.direct": "@{name} өчен яңа хат", "account.disable_notifications": "@{name} язулары өчен белдерүләр сүндерү", "account.domain_blocked": "Домен блокланган", "account.edit_profile": "Профильны үзгәртү", "account.enable_notifications": "@{name} язулары өчен белдерүләр яндыру", "account.endorse": "Профильдә рекомендацияләү", - "account.featured_tags.last_status_at": "Last post on {date}", - "account.featured_tags.last_status_never": "No posts", - "account.featured_tags.title": "{name}'s featured hashtags", + "account.featured_tags.last_status_at": "Соңгы хәбәр {date}", + "account.featured_tags.last_status_never": "Хәбәрләр юк", + "account.featured_tags.title": "{name} тәкъдим ителгән хэштеглар", "account.follow": "Языл", "account.followers": "Язылучылар", "account.followers.empty": "Әле беркем дә язылмаган.", @@ -37,178 +37,178 @@ "account.following_counter": "{count, plural, one {{counter} Язылган} other {{counter} Язылган}}", "account.follows.empty": "Беркемгә дә язылмаган әле.", "account.follows_you": "Сезгә язылган", - "account.go_to_profile": "Go to profile", - "account.hide_reblogs": "Hide boosts from @{name}", - "account.joined_short": "Joined", - "account.languages": "Change subscribed languages", - "account.link_verified_on": "Ownership of this link was checked on {date}", + "account.go_to_profile": "Профильгә күчү", + "account.hide_reblogs": "Скрывать көчен нче @{name}", + "account.joined_short": "Кушылу", + "account.languages": "Подписка телләрен үзгәртү", + "account.link_verified_on": "Бу сылтамага милек хокукы тикшерелде {date}", "account.locked_info": "Бу - ябык аккаунт. Аны язылучылар гына күрә ала.", "account.media": "Медиа", "account.mention": "@{name} искәртү", - "account.moved_to": "{name} has indicated that their new account is now:", - "account.mute": "Mute @{name}", - "account.mute_notifications": "Mute notifications from @{name}", - "account.muted": "Muted", - "account.open_original_page": "Open original page", + "account.moved_to": "{name} аларның яңа счеты хәзер күрсәтте:", + "account.mute": "Тавышсыз @{name}", + "account.mute_notifications": "Отключите хәбәрләр нче @{name}", + "account.muted": "Тавышсыз", + "account.open_original_page": "Чыганак битен ачу", "account.posts": "Toots", "account.posts_with_replies": "Toots and replies", - "account.report": "Report @{name}", + "account.report": "Хисап @{name}", "account.requested": "Awaiting approval", - "account.requested_follow": "{name} has requested to follow you", - "account.share": "Share @{name}'s profile", - "account.show_reblogs": "Show boosts from @{name}", + "account.requested_follow": "{name} сиңа иярүеңне сорады", + "account.share": "Уртаклашу @{name} профиль", + "account.show_reblogs": "Күрсәтергә көчәйтү нче @{name}", "account.statuses_counter": "{count, plural, one {{counter} Toot} other {{counter} Toots}}", - "account.unblock": "Unblock @{name}", - "account.unblock_domain": "Unblock domain {domain}", - "account.unblock_short": "Unblock", - "account.unendorse": "Don't feature on profile", + "account.unblock": "Ачу @{name}", + "account.unblock_domain": "Доменны ачу {domain}", + "account.unblock_short": "Ачу", + "account.unendorse": "Профильдә күрсәтмәгез", "account.unfollow": "Язылынмау", - "account.unmute": "Unmute @{name}", - "account.unmute_notifications": "Unmute notifications from @{name}", - "account.unmute_short": "Unmute", + "account.unmute": "Kабызыгыз @{name}", + "account.unmute_notifications": "Кертергә хәбәрләр нче @{name}", + "account.unmute_short": "Kабызыгыз", "account_note.placeholder": "Click to add a note", - "admin.dashboard.daily_retention": "User retention rate by day after sign-up", - "admin.dashboard.monthly_retention": "User retention rate by month after sign-up", - "admin.dashboard.retention.average": "Average", - "admin.dashboard.retention.cohort": "Sign-up month", - "admin.dashboard.retention.cohort_size": "New users", - "alert.rate_limited.message": "Please retry after {retry_time, time, medium}.", - "alert.rate_limited.title": "Rate limited", - "alert.unexpected.message": "An unexpected error occurred.", + "admin.dashboard.daily_retention": "Теркәлгәннән соң икенче көнне кулланучыларны тоту коэффициенты", + "admin.dashboard.monthly_retention": "Теркәлгәннән соң ай саен кулланучыларны тоту күрсәткече", + "admin.dashboard.retention.average": "Урта", + "admin.dashboard.retention.cohort": "Теркәлү айлыгы", + "admin.dashboard.retention.cohort_size": "Яңа кулланучылар", + "alert.rate_limited.message": "Зинһар, аннан соң кабатлап карагыз {retry_time, time, medium}.", + "alert.rate_limited.title": "Тариф чикләнгән", + "alert.unexpected.message": "Көтелмәгән хата булды.", "alert.unexpected.title": "Ой!", - "announcement.announcement": "Announcement", - "attachments_list.unprocessed": "(unprocessed)", - "audio.hide": "Hide audio", - "autosuggest_hashtag.per_week": "{count} per week", - "boost_modal.combo": "You can press {combo} to skip this next time", - "bundle_column_error.copy_stacktrace": "Copy error report", - "bundle_column_error.error.body": "The requested page could not be rendered. It could be due to a bug in our code, or a browser compatibility issue.", - "bundle_column_error.error.title": "Oh, no!", - "bundle_column_error.network.body": "There was an error when trying to load this page. This could be due to a temporary problem with your internet connection or this server.", - "bundle_column_error.network.title": "Network error", - "bundle_column_error.retry": "Try again", - "bundle_column_error.return": "Go back home", - "bundle_column_error.routing.body": "The requested page could not be found. Are you sure the URL in the address bar is correct?", - "bundle_column_error.routing.title": "404", + "announcement.announcement": "Игълан", + "attachments_list.unprocessed": "(чимал)", + "audio.hide": "Аудионы яшерү", + "autosuggest_hashtag.per_week": "{count} атнага", + "boost_modal.combo": "Сез баса аласыз {combo} киләсе тапкыр моны сагыну өчен", + "bundle_column_error.copy_stacktrace": "Күчереп алу хата турында Отчет", + "bundle_column_error.error.body": "Соралган бит күрсәтелә алмый. Бу безнең кодтагы хата яки браузерга туры килү проблемасы аркасында булырга мөмкин.", + "bundle_column_error.error.title": "Әй, юк!", + "bundle_column_error.network.body": "Бу битне йөкләргә тырышканда хата булды. Бу сезнең Интернетка тоташу яки бу сервер белән вакытлыча проблема аркасында булырга мөмкин.", + "bundle_column_error.network.title": "Челтәр хата", + "bundle_column_error.retry": "Тагын сынап кара", + "bundle_column_error.return": "Өйгә кайтыгыз", + "bundle_column_error.routing.body": "Сорау бите табылмады. URL адресы дөрес күрсәтелгәненә ышанасызмы?", + "bundle_column_error.routing.title": "404\n", "bundle_modal_error.close": "Ябу", - "bundle_modal_error.message": "Something went wrong while loading this component.", - "bundle_modal_error.retry": "Try again", - "closed_registrations.other_server_instructions": "Since Mastodon is decentralized, you can create an account on another server and still interact with this one.", - "closed_registrations_modal.description": "Creating an account on {domain} is currently not possible, but please keep in mind that you do not need an account specifically on {domain} to use Mastodon.", - "closed_registrations_modal.find_another_server": "Find another server", - "closed_registrations_modal.preamble": "Mastodon is decentralized, so no matter where you create your account, you will be able to follow and interact with anyone on this server. You can even self-host it!", - "closed_registrations_modal.title": "Signing up on Mastodon", - "column.about": "About", - "column.blocks": "Blocked users", + "bundle_modal_error.message": "Бу компонентны Йөкләгәндә нәрсәдер дөрес булмаган.", + "bundle_modal_error.retry": "Тагын сынап кара", + "closed_registrations.other_server_instructions": "Mastodon үзәкләштерелмәгәнгә, сез бүтән серверда хисап язмасы булдыра аласыз һәм аның белән аралаша аласыз.", + "closed_registrations_modal.description": "Хисап язмасы булдыру {domain} бу хәзерге вакытта мөмкин түгел, ләкин зинһар, онытмагыз, сезгә махсус хисап кирәк түгел {domain} Мастодонны куллану өчен.", + "closed_registrations_modal.find_another_server": "Башка серверны табыгыз", + "closed_registrations_modal.preamble": "Mastodon үзәкләштерелмәгән, шуңа күрә сез счетыгызны кайда гына ясасагыз да, сез бу серверда теләсә кемгә иярә аласыз һәм аның белән аралаша аласыз. Сез аны хәтта үзегез урнаштыра аласыз!", + "closed_registrations_modal.title": "Mastodon өчен теркәлү", + "column.about": "Турында", + "column.blocks": "Блокланган кулланучылар", "column.bookmarks": "Кыстыргычлар", - "column.community": "Local timeline", - "column.direct": "Direct messages", - "column.directory": "Browse profiles", - "column.domain_blocks": "Blocked domains", - "column.favourites": "Favourites", - "column.follow_requests": "Follow requests", + "column.community": "Localирле вакыт сызыгы", + "column.direct": "Туры хәбәрләр", + "column.directory": "Профильләрне карау", + "column.domain_blocks": "Блокланган доменнар", + "column.favourites": "Сайланма", + "column.follow_requests": "Сорауларны үтәгез", "column.home": "Баш бит", - "column.lists": "Lists", - "column.mutes": "Muted users", - "column.notifications": "Notifications", + "column.lists": "Исемлек", + "column.mutes": "Инвалид кулланучылар", + "column.notifications": "Хәбәрләр", "column.pins": "Pinned toot", - "column.public": "Federated timeline", + "column.public": "Берләшкән вакыт масштабы", "column_back_button.label": "Кире", - "column_header.hide_settings": "Hide settings", - "column_header.moveLeft_settings": "Move column to the left", - "column_header.moveRight_settings": "Move column to the right", - "column_header.pin": "Pin", - "column_header.show_settings": "Show settings", - "column_header.unpin": "Unpin", + "column_header.hide_settings": "Көйләүләрне яшерегез", + "column_header.moveLeft_settings": "Багананы сулга күчерегез", + "column_header.moveRight_settings": "Багананы уңга күчерегез", + "column_header.pin": "Пин", + "column_header.show_settings": "Көйләүләрне күрсәтү", + "column_header.unpin": "Төзәтү түгел", "column_subheading.settings": "Көйләүләр", - "community.column_settings.local_only": "Local only", + "community.column_settings.local_only": "Җирле генә", "community.column_settings.media_only": "Media only", - "community.column_settings.remote_only": "Remote only", - "compose.language.change": "Change language", - "compose.language.search": "Search languages...", - "compose_form.direct_message_warning_learn_more": "Learn more", + "community.column_settings.remote_only": "Дистанцион гына идарә итү", + "compose.language.change": "Телне үзгәртү", + "compose.language.search": "Эзләү телләре...", + "compose_form.direct_message_warning_learn_more": "Күбрәк укыгыз", "compose_form.encryption_warning": "Posts on Mastodon are not end-to-end encrypted. Do not share any dangerous information over Mastodon.", - "compose_form.hashtag_warning": "This post won't be listed under any hashtag as it is unlisted. Only public posts can be searched by hashtag.", - "compose_form.lock_disclaimer": "Your account is not {locked}. Anyone can follow you to view your follower-only posts.", - "compose_form.lock_disclaimer.lock": "locked", + "compose_form.hashtag_warning": "Бу язма бернинди хэштег астында да күрсәтелмәячәк, чөнки ул ачык түгел. Хэштег эзләү җәмәгать басмалары аша гына мөмкин.", + "compose_form.lock_disclaimer": "Сезнең хисап түгел {locked}. Апуәрбер теләгән кеше сезнең язма өчен иярә ала.", + "compose_form.lock_disclaimer.lock": "бикле", "compose_form.placeholder": "What is on your mind?", - "compose_form.poll.add_option": "Add a choice", - "compose_form.poll.duration": "Poll duration", - "compose_form.poll.option_placeholder": "Choice {number}", - "compose_form.poll.remove_option": "Remove this choice", - "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices", - "compose_form.poll.switch_to_single": "Change poll to allow for a single choice", - "compose_form.publish": "Publish", - "compose_form.publish_form": "Publish", + "compose_form.poll.add_option": "Сайлау өстәгез", + "compose_form.poll.duration": "Сораштыру озынлыгы", + "compose_form.poll.option_placeholder": "Сайлау {number}", + "compose_form.poll.remove_option": "бетерү", + "compose_form.poll.switch_to_multiple": "Берничә вариантны чишү өчен сораштыруны Үзгәртегез", + "compose_form.poll.switch_to_single": "Бердәнбер сайлау өчен сораштыруны Үзгәртегез", + "compose_form.publish": "Бастыру", + "compose_form.publish_form": "Бастыру", "compose_form.publish_loud": "{publish}!", - "compose_form.save_changes": "Save changes", - "compose_form.sensitive.hide": "{count, plural, one {Mark media as sensitive} other {Mark media as sensitive}}", - "compose_form.sensitive.marked": "{count, plural, one {Media is marked as sensitive} other {Media is marked as sensitive}}", - "compose_form.sensitive.unmarked": "{count, plural, one {Media is not marked as sensitive} other {Media is not marked as sensitive}}", + "compose_form.save_changes": "Үзгәрешләрне саклагыз", + "compose_form.sensitive.hide": "{count, plural, one {Медианы сизгер итеп билгеләгез} other {Медианы сизгер итеп билгеләгез}}", + "compose_form.sensitive.marked": "{count, plural, one {Ташучы сизгер дип язылган} other {Ташучы сизгер дип язылган}}", + "compose_form.sensitive.unmarked": "{count, plural, one {Медиа сизгер буларак билгеле түгел} other {Медиа сизгер буларак билгеле түгел}}", "compose_form.spoiler.marked": "Text is hidden behind warning", "compose_form.spoiler.unmarked": "Text is not hidden", - "compose_form.spoiler_placeholder": "Write your warning here", + "compose_form.spoiler_placeholder": "Кисәтүегезне монда языгыз", "confirmation_modal.cancel": "Баш тарту", - "confirmations.block.block_and_report": "Block & Report", + "confirmations.block.block_and_report": "Блоклау һәм хәбәр итү", "confirmations.block.confirm": "Блоклау", - "confirmations.block.message": "Are you sure you want to block {name}?", - "confirmations.cancel_follow_request.confirm": "Withdraw request", - "confirmations.cancel_follow_request.message": "Are you sure you want to withdraw your request to follow {name}?", + "confirmations.block.message": "Сез блокларга телисез {name}?", + "confirmations.cancel_follow_request.confirm": "Чыгару сорау", + "confirmations.cancel_follow_request.message": "Сез абонемент соравыгызны кире кайтарырга телисез {name}?", "confirmations.delete.confirm": "Бетерү", "confirmations.delete.message": "Are you sure you want to delete this status?", "confirmations.delete_list.confirm": "Бетерү", - "confirmations.delete_list.message": "Are you sure you want to permanently delete this list?", - "confirmations.discard_edit_media.confirm": "Discard", - "confirmations.discard_edit_media.message": "You have unsaved changes to the media description or preview, discard them anyway?", + "confirmations.delete_list.message": "Сез бу исемлекне мәңгегә бетерергә телисезме?", + "confirmations.discard_edit_media.confirm": "Ташлау", + "confirmations.discard_edit_media.message": "Сезнең медиа тасвирламасында яки алдан карау өчен сакланмаган үзгәрешләр бармы? ", "confirmations.domain_block.confirm": "Hide entire domain", - "confirmations.domain_block.message": "Are you really, really sure you want to block the entire {domain}? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain in any public timelines or your notifications. Your followers from that domain will be removed.", + "confirmations.domain_block.message": "Сез чыннан да барысын да блокларга телисез {domain}? Күпчелек очракта берничә максатлы блоклар яки тавышсызлар җитәрлек һәм өстенлекле. Сез бу доменнан эчтәлекне җәмәгать срокларында яки хәбәрләрегездә күрмәячәксез. Бу доменнан сезнең шәкертләр бетереләчәк.", "confirmations.logout.confirm": "Чыгу", - "confirmations.logout.message": "Are you sure you want to log out?", + "confirmations.logout.message": "Сез системадан чыгарга телисезме?", "confirmations.mute.confirm": "Тавышсыз", - "confirmations.mute.explanation": "This will hide posts from them and posts mentioning them, but it will still allow them to see your posts and follow you.", - "confirmations.mute.message": "Are you sure you want to mute {name}?", - "confirmations.redraft.confirm": "Delete & redraft", + "confirmations.mute.explanation": "Бу алардан ураза тотуны һәм алар турында искә алуны яшерәчәк, ләкин бу аларга уразаларыгызны күрергә һәм язылырга мөмкинлек бирәчәк.", + "confirmations.mute.message": "Сез тавышны сүндерергә телисез {name}?", + "confirmations.redraft.confirm": "Бетерү & эшкәртү", "confirmations.redraft.message": "Are you sure you want to delete this status and re-draft it? Favourites and boosts will be lost, and replies to the original post will be orphaned.", - "confirmations.reply.confirm": "Reply", - "confirmations.reply.message": "Replying now will overwrite the message you are currently composing. Are you sure you want to proceed?", + "confirmations.reply.confirm": "Җавап бирү", + "confirmations.reply.message": "Тһеавап хәзер сез ясаган хәбәрне яңадан язуга китерәчәк. Сез дәвам итәсегез киләме?", "confirmations.unfollow.confirm": "Язылынмау", - "confirmations.unfollow.message": "Are you sure you want to unfollow {name}?", - "conversation.delete": "Delete conversation", - "conversation.mark_as_read": "Mark as read", - "conversation.open": "View conversation", - "conversation.with": "With {names}", - "copypaste.copied": "Copied", - "copypaste.copy": "Copy", - "directory.federated": "From known fediverse", - "directory.local": "From {domain} only", - "directory.new_arrivals": "New arrivals", - "directory.recently_active": "Recently active", - "disabled_account_banner.account_settings": "Account settings", - "disabled_account_banner.text": "Your account {disabledAccount} is currently disabled.", - "dismissable_banner.community_timeline": "These are the most recent public posts from people whose accounts are hosted by {domain}.", - "dismissable_banner.dismiss": "Dismiss", - "dismissable_banner.explore_links": "These news stories are being talked about by people on this and other servers of the decentralized network right now.", - "dismissable_banner.explore_statuses": "These posts from this and other servers in the decentralized network are gaining traction on this server right now.", - "dismissable_banner.explore_tags": "These hashtags are gaining traction among people on this and other servers of the decentralized network right now.", - "dismissable_banner.public_timeline": "These are the most recent public posts from people on this and other servers of the decentralized network that this server knows about.", + "confirmations.unfollow.message": "Сез язылудан баш тартырга телисез {name}?", + "conversation.delete": "Сөйләшүне бетерегез", + "conversation.mark_as_read": "Укылганны Ничек билгеләргә", + "conversation.open": "Сөйләшүне карау", + "conversation.with": "Белән {names}", + "copypaste.copied": "Күчерелгән", + "copypaste.copy": "Күчерү", + "directory.federated": "Билгеле галәмнән", + "directory.local": "Кемнән {domain} гына", + "directory.new_arrivals": "Яңа килүчеләр", + "directory.recently_active": "Күптән түгел актив", + "disabled_account_banner.account_settings": "Хисап көйләүләре", + "disabled_account_banner.text": "Сезнең хисап {disabledAccount} хәзерге вакытта инвалид.", + "dismissable_banner.community_timeline": "Бу счетлары урнаштырылган кешеләрдән иң соңгы җәмәгать хәбәрләре {domain}.", + "dismissable_banner.dismiss": "Чыгару", + "dismissable_banner.explore_links": "Бу яңалыклар турында хәзерге вакытта кешеләр һәм башка үзәкләштерелмәгән челтәр серверларында сөйләшәләр.", + "dismissable_banner.explore_statuses": "Бу һәм бүтән серверларның үзәкләштерелмәгән челтәрдәге бу язмалары хәзерге вакытта бу серверда тартыла.", + "dismissable_banner.explore_tags": "Бу хэштеглар хәзерге вакытта үзәкләштерелмәгән челтәрнең бүтән серверларында кешеләр арасында кызыксыну уята.", + "dismissable_banner.public_timeline": "Бу сервер бу һәм башка үзәкләштерелмәгән челтәр серверларында кешеләрдән иң соңгы хәбәрләр.", "embed.instructions": "Embed this status on your website by copying the code below.", - "embed.preview": "Here is what it will look like:", + "embed.preview": "Менә ул нинди булыр:", "emoji_button.activity": "Активлык", - "emoji_button.clear": "Clear", + "emoji_button.clear": "Ачык", "emoji_button.custom": "Куелган", "emoji_button.flags": "Байраклар", - "emoji_button.food": "Food & Drink", - "emoji_button.label": "Insert emoji", - "emoji_button.nature": "Nature", - "emoji_button.not_found": "No matching emojis found", - "emoji_button.objects": "Objects", + "emoji_button.food": "Ашау һәм эчү", + "emoji_button.label": "Emoji кертү", + "emoji_button.nature": "Табигать", + "emoji_button.not_found": "Дөрес эможалар табылмады", + "emoji_button.objects": "Объектлар", "emoji_button.people": "Кешеләр", - "emoji_button.recent": "Frequently used", + "emoji_button.recent": "Еш кулланыла", "emoji_button.search": "Эзләү...", - "emoji_button.search_results": "Search results", - "emoji_button.symbols": "Symbols", - "emoji_button.travel": "Travel & Places", - "empty_column.account_suspended": "Account suspended", + "emoji_button.search_results": "Эзләү нәтиҗәләре", + "emoji_button.symbols": "Символлар", + "emoji_button.travel": "Сәяхәт һәм урыннар", + "empty_column.account_suspended": "Хисап блокланган", "empty_column.account_timeline": "No toots here!", "empty_column.account_unavailable": "Profile unavailable", "empty_column.blocks": "You haven't blocked any users yet.", @@ -264,54 +264,54 @@ "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.", - "followed_tags": "Followed hashtags", - "footer.about": "About", - "footer.directory": "Profiles directory", - "footer.get_app": "Get the app", - "footer.invite": "Invite people", - "footer.keyboard_shortcuts": "Keyboard shortcuts", - "footer.privacy_policy": "Privacy policy", - "footer.source_code": "View source code", + "followed_tags": "Имзаланган хэштеглар", + "footer.about": "Турында", + "footer.directory": "Профильләр каталогы", + "footer.get_app": "Кушымта алыгыз", + "footer.invite": "Кешеләрне чакырыгыз", + "footer.keyboard_shortcuts": "Клавиатура кыска юллары", + "footer.privacy_policy": "Хосусыйлык сәясәте", + "footer.source_code": "Чыганак кодын карау", "generic.saved": "Сакланды", - "getting_started.heading": "Getting started", - "hashtag.column_header.tag_mode.all": "and {additional}", - "hashtag.column_header.tag_mode.any": "or {additional}", - "hashtag.column_header.tag_mode.none": "without {additional}", - "hashtag.column_settings.select.no_options_message": "No suggestions found", - "hashtag.column_settings.select.placeholder": "Enter hashtags…", - "hashtag.column_settings.tag_mode.all": "All of these", - "hashtag.column_settings.tag_mode.any": "Any of these", - "hashtag.column_settings.tag_mode.none": "None of these", + "getting_started.heading": "Эшкә урнашу", + "hashtag.column_header.tag_mode.all": "һәм {additional}", + "hashtag.column_header.tag_mode.any": "яки {additional}", + "hashtag.column_header.tag_mode.none": "гайре {additional}", + "hashtag.column_settings.select.no_options_message": "Тәкъдимнәр табылмады", + "hashtag.column_settings.select.placeholder": "Хэштегларны кертегез…", + "hashtag.column_settings.tag_mode.all": "Боларның барысы", + "hashtag.column_settings.tag_mode.any": "Һәрберсе", + "hashtag.column_settings.tag_mode.none": "Аларның берсе дә", "hashtag.column_settings.tag_toggle": "Include additional tags in this column", - "hashtag.follow": "Follow hashtag", - "hashtag.unfollow": "Unfollow hashtag", - "home.column_settings.basic": "Basic", - "home.column_settings.show_reblogs": "Show boosts", - "home.column_settings.show_replies": "Show replies", - "home.hide_announcements": "Hide announcements", - "home.show_announcements": "Show announcements", - "interaction_modal.description.favourite": "With an account on Mastodon, you can favourite this post to let the author know you appreciate it and save it for later.", - "interaction_modal.description.follow": "With an account on Mastodon, you can follow {name} to receive their posts in your home feed.", - "interaction_modal.description.reblog": "With an account on Mastodon, you can boost this post to share it with your own followers.", - "interaction_modal.description.reply": "With an account on Mastodon, you can respond to this post.", - "interaction_modal.on_another_server": "On a different server", - "interaction_modal.on_this_server": "On this server", - "interaction_modal.other_server_instructions": "Copy and paste this URL into the search field of your favourite Mastodon app or the web interface of your Mastodon server.", - "interaction_modal.preamble": "Since Mastodon is decentralized, you can use your existing account hosted by another Mastodon server or compatible platform if you don't have an account on this one.", - "interaction_modal.title.favourite": "Favourite {name}'s post", - "interaction_modal.title.follow": "Follow {name}", - "interaction_modal.title.reblog": "Boost {name}'s post", - "interaction_modal.title.reply": "Reply to {name}'s post", - "intervals.full.days": "{number, plural, one {# day} other {# days}}", - "intervals.full.hours": "{number, plural, one {# hour} other {# hours}}", - "intervals.full.minutes": "{number, plural, one {# minute} other {# minutes}}", + "hashtag.follow": "Хэштегка язылу", + "hashtag.unfollow": "Хэштегка язылу юк", + "home.column_settings.basic": "Төп", + "home.column_settings.show_reblogs": "Табышмаклау", + "home.column_settings.show_replies": "Җаваплар күрсәтү", + "home.hide_announcements": "Игъланнарны яшерү", + "home.show_announcements": "Белдерүләр бирегез", + "interaction_modal.description.favourite": "Була торып, аккаунт бу Mastodon, сез куярга, бу постны выбранное авторы белсен өчен, сез цените аны, һәм Саклап калу соңрак.", + "interaction_modal.description.follow": "Mastodon аккаунты белән сез иярә аласыз {name} аларның язмаларын өй тасмасында алу өчен.", + "interaction_modal.description.reblog": "Mastodon аккаунты ярдәмендә сез бу язманы үз шәкертләрегез белән уртаклашу өчен арттыра аласыз.", + "interaction_modal.description.reply": "Mastodon аккаунты белән сез бу язмага җавап бирә аласыз.", + "interaction_modal.on_another_server": "Башка серверда", + "interaction_modal.on_this_server": "Бу серверда", + "interaction_modal.other_server_instructions": "Бу URL-ны яраткан Mastodon кушымтасының эзләү тартмасына яки Mastodon серверының веб-интерфейсына күчереп языгыз.", + "interaction_modal.preamble": "Mastodon үзәкләштерелмәгәнгә, Сез үзегезнең Mastodon серверына урнаштырылган счетыгызны яки бу серверда счетыгыз булмаса, платформага туры килгән платформаны куллана аласыз.", + "interaction_modal.title.favourite": "Яраткан {name} сак", + "interaction_modal.title.follow": "Иярү {name}", + "interaction_modal.title.reblog": "Арттыру {name} сак", + "interaction_modal.title.reply": "Җавап {name} сак", + "intervals.full.days": "{number, plural, one {# көн} other {# көн}}", + "intervals.full.hours": "{number, plural, one {# сәгать} other {# сәгать}}", + "intervals.full.minutes": "{number, plural, one {# минут} other {# минут}}", "keyboard_shortcuts.back": "to navigate back", "keyboard_shortcuts.blocked": "to open blocked users list", "keyboard_shortcuts.boost": "to boost", "keyboard_shortcuts.column": "to focus a status in one of the columns", "keyboard_shortcuts.compose": "to focus the compose textarea", "keyboard_shortcuts.description": "Тасвирлама", - "keyboard_shortcuts.direct": "to open direct messages column", + "keyboard_shortcuts.direct": "туры хәбәрләр баганасын ачу өчен", "keyboard_shortcuts.down": "to move down in the list", "keyboard_shortcuts.enter": "to open status", "keyboard_shortcuts.favourite": "to favourite", @@ -319,7 +319,7 @@ "keyboard_shortcuts.federated": "to open federated timeline", "keyboard_shortcuts.heading": "Keyboard Shortcuts", "keyboard_shortcuts.home": "to open home timeline", - "keyboard_shortcuts.hotkey": "Hotkey", + "keyboard_shortcuts.hotkey": "Кайнар Ачкыч", "keyboard_shortcuts.legend": "to display this legend", "keyboard_shortcuts.local": "to open local timeline", "keyboard_shortcuts.mention": "to mention author", @@ -340,18 +340,18 @@ "keyboard_shortcuts.unfocus": "to un-focus compose textarea/search", "keyboard_shortcuts.up": "to move up in the list", "lightbox.close": "Ябу", - "lightbox.compress": "Compress image view box", - "lightbox.expand": "Expand image view box", + "lightbox.compress": "Кысылган рәсемне карау тәрәзәсе", + "lightbox.expand": "Рәсемне карау тәрәзәсен ачыгыз", "lightbox.next": "Киләсе", "lightbox.previous": "Алдагы", - "limited_account_hint.action": "Show profile anyway", - "limited_account_hint.title": "This profile has been hidden by the moderators of {domain}.", - "lists.account.add": "Add to list", + "limited_account_hint.action": "Барыбер профильне күрсәтергә", + "limited_account_hint.title": "Бу профильне модераторлар яшергән {domain}.", + "lists.account.add": "Исемлеккә өстәргә", "lists.account.remove": "Исемлектән бетерергә", - "lists.delete": "Delete list", - "lists.edit": "Edit list", - "lists.edit.submit": "Change title", - "lists.new.create": "Add list", + "lists.delete": "Исемлекне бетерегез", + "lists.edit": "Исемлекне үзгәртү", + "lists.edit.submit": "Исемен үзгәртү", + "lists.new.create": "Исемлек өстәгез", "lists.new.title_placeholder": "New list title", "lists.replies_policy.followed": "Any followed user", "lists.replies_policy.list": "Members of the list", diff --git a/app/javascript/mastodon/locales/uk.json b/app/javascript/mastodon/locales/uk.json index 112bb12af..0528c3c2a 100644 --- a/app/javascript/mastodon/locales/uk.json +++ b/app/javascript/mastodon/locales/uk.json @@ -221,7 +221,7 @@ "empty_column.favourites": "Ніхто ще не вподобав цей допис. Коли хтось це зробить, він з'явиться тут.", "empty_column.follow_recommendations": "Схоже, для вас не було створено жодної пропозиції. Ви можете спробувати скористатися пошуком людей, яких ви можете знати, або переглянути популярні гештеґи.", "empty_column.follow_requests": "У вас ще немає запитів на підписку. Коли ви їх отримаєте, вони з'являться тут.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Ви ще не підписані на хештеґи. Коли ви це зробите, вони з'являться тут.", "empty_column.hashtag": "Дописів з цим гештеґом поки не існує.", "empty_column.home": "Ваша стрічка порожня! Підпишіться на інших, щоб її заповнити. {suggestions}", "empty_column.home.suggestions": "Переглянути пропозиції", @@ -264,7 +264,7 @@ "follow_request.authorize": "Авторизувати", "follow_request.reject": "Відмовити", "follow_requests.unlocked_explanation": "Хоча ваш обліковий запис не заблоковано, персонал {domain} припускає, що, можливо, ви хотіли б переглянути ці запити на підписку.", - "followed_tags": "Followed hashtags", + "followed_tags": "Відстежувані хештеґи", "footer.about": "Про проєкт", "footer.directory": "Каталог профілів", "footer.get_app": "Завантажити застосунок", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Вподобане", "navigation_bar.filters": "Приховані слова", "navigation_bar.follow_requests": "Запити на підписку", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Відстежувані хештеґи", "navigation_bar.follows_and_followers": "Підписки та підписники", "navigation_bar.lists": "Списки", "navigation_bar.logout": "Вийти", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Статистика сервера:", "sign_in_banner.create_account": "Створити обліковий запис", "sign_in_banner.sign_in": "Увійти", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Увійдіть, щоб слідкувати за профілями або хештеґами, вподобаними, ділитися і відповідати на дописи. Ви також взаємодіяти з вашого облікового запису на іншому сервері.", "status.admin_account": "Відкрити інтерфейс модерації для @{name}", "status.admin_domain": "Відкрити інтерфейс модерації для {domain}", "status.admin_status": "Відкрити цей допис в інтерфейсі модерації", diff --git a/app/javascript/mastodon/locales/vi.json b/app/javascript/mastodon/locales/vi.json index e02e3b92f..663011633 100644 --- a/app/javascript/mastodon/locales/vi.json +++ b/app/javascript/mastodon/locales/vi.json @@ -221,7 +221,7 @@ "empty_column.favourites": "Chưa có ai thích tút này.", "empty_column.follow_recommendations": "Bạn chưa có gợi ý theo dõi nào. Hãy thử tìm kiếm những người thú vị hoặc khám phá những hashtag nổi bật.", "empty_column.follow_requests": "Bạn chưa có yêu cầu theo dõi nào.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Bạn chưa theo dõi hashtag nào. Khi bạn theo dõi, chúng sẽ hiện lên ở đây.", "empty_column.hashtag": "Chưa có bài đăng nào dùng hashtag này.", "empty_column.home": "Bảng tin của bạn đang trống! Hãy theo dõi nhiều người hơn. {suggestions}", "empty_column.home.suggestions": "Gợi ý dành cho bạn", @@ -264,7 +264,7 @@ "follow_request.authorize": "Cho phép", "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.", - "followed_tags": "Followed hashtags", + "followed_tags": "Hashtag theo dõi", "footer.about": "Giới thiệu", "footer.directory": "Cộng đồng", "footer.get_app": "Ứng dụng", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "Thích", "navigation_bar.filters": "Bộ lọc từ ngữ", "navigation_bar.follow_requests": "Yêu cầu theo dõi", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Hashtag theo dõi", "navigation_bar.follows_and_followers": "Quan hệ", "navigation_bar.lists": "Danh sách", "navigation_bar.logout": "Đăng xuất", @@ -543,7 +543,7 @@ "server_banner.server_stats": "Thống kê:", "sign_in_banner.create_account": "Đăng ký", "sign_in_banner.sign_in": "Đăng nhập", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Đăng nhập để theo dõi người hoặc hashtag, thích, chia sẻ và trả lời tút. Bạn cũng có thể tương tác từ tài khoản của mình trên một máy chủ khác.", "status.admin_account": "Mở giao diện quản trị @{name}", "status.admin_domain": "Mở giao diện quản trị @{domain}", "status.admin_status": "Mở tút này trong giao diện quản trị", diff --git a/app/javascript/mastodon/locales/zh-CN.json b/app/javascript/mastodon/locales/zh-CN.json index b21ccc743..40858cd71 100644 --- a/app/javascript/mastodon/locales/zh-CN.json +++ b/app/javascript/mastodon/locales/zh-CN.json @@ -381,7 +381,7 @@ "navigation_bar.favourites": "喜欢", "navigation_bar.filters": "忽略的关键词", "navigation_bar.follow_requests": "关注请求", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "关注的话题标签", "navigation_bar.follows_and_followers": "关注管理", "navigation_bar.lists": "列表", "navigation_bar.logout": "登出", @@ -543,7 +543,7 @@ "server_banner.server_stats": "服务器统计数据:", "sign_in_banner.create_account": "创建账户", "sign_in_banner.sign_in": "登录", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "登录以关注个人资料、话题标签或喜欢、分享和回复嘟文。您还能用您的账户在另一个服务器上进行互动。", "status.admin_account": "打开 @{name} 的管理界面", "status.admin_domain": "打开 {domain} 的管理界面", "status.admin_status": "打开此帖的管理界面", diff --git a/app/javascript/mastodon/locales/zh-TW.json b/app/javascript/mastodon/locales/zh-TW.json index c9dba8451..3c3248008 100644 --- a/app/javascript/mastodon/locales/zh-TW.json +++ b/app/javascript/mastodon/locales/zh-TW.json @@ -218,10 +218,10 @@ "empty_column.domain_blocks": "尚未封鎖任何網域。", "empty_column.explore_statuses": "目前沒有熱門討論,請稍候再回來看看!", "empty_column.favourited_statuses": "您還沒有加過任何嘟文至最愛。當您收藏嘟文時,它將於此顯示。", - "empty_column.favourites": "還沒有人加過這則嘟文至最愛。當有人收藏嘟文時,它將於此顯示。", + "empty_column.favourites": "還沒有人加過這則嘟文至最愛。當有人收藏嘟文時,它們將於此顯示。", "empty_column.follow_recommendations": "似乎未能為您產生任何建議。您可以嘗試使用搜尋來尋找您可能認識的人,或是探索熱門主題標籤。", - "empty_column.follow_requests": "您還沒有收到任何跟隨請求。這裡將會顯示收到的跟隨請求。", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.follow_requests": "您還沒有收到任何跟隨請求。當您收到的跟隨請求時,它將於此顯示。", + "empty_column.followed_tags": "您還沒有跟隨任何主題標籤。當您跟隨主題標籤時,它們將於此顯示。", "empty_column.hashtag": "這個主題標籤下什麼也沒有。", "empty_column.home": "您的首頁時間軸是空的!前往 {suggestions} 或使用搜尋功能來認識其他人。", "empty_column.home.suggestions": "檢視部份建議", @@ -264,7 +264,7 @@ "follow_request.authorize": "授權", "follow_request.reject": "拒絕", "follow_requests.unlocked_explanation": "即便您的帳號未被鎖定,{domain} 的管理員認為您可能想要自己審核這些帳號的跟隨請求。", - "followed_tags": "Followed hashtags", + "followed_tags": "已跟隨主題標籤", "footer.about": "關於", "footer.directory": "個人檔案目錄", "footer.get_app": "取得應用程式", @@ -381,7 +381,7 @@ "navigation_bar.favourites": "最愛", "navigation_bar.filters": "靜音詞彙", "navigation_bar.follow_requests": "跟隨請求", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "已跟隨主題標籤", "navigation_bar.follows_and_followers": "跟隨中與跟隨者", "navigation_bar.lists": "列表", "navigation_bar.logout": "登出", @@ -543,7 +543,7 @@ "server_banner.server_stats": "伺服器統計:", "sign_in_banner.create_account": "新增帳號", "sign_in_banner.sign_in": "登入", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "登入以追蹤個人檔案、主題標籤、最愛,分享和回覆嘟文。您也能與您其他伺服器之帳號進行互動。", "status.admin_account": "開啟 @{name} 的管理介面", "status.admin_domain": "開啟 {domain} 的管理介面", "status.admin_status": "在管理介面開啟此嘟文", diff --git a/app/javascript/styles/mastodon/components.scss b/app/javascript/styles/mastodon/components.scss index 22f404c3b..32a387a4e 100644 --- a/app/javascript/styles/mastodon/components.scss +++ b/app/javascript/styles/mastodon/components.scss @@ -4441,14 +4441,14 @@ a.status-card.compact:hover { align-items: center; background: rgba($base-overlay-background, 0.8); display: flex; - height: 100%; + height: 100vh; justify-content: center; left: 0; opacity: 0; - position: absolute; + position: fixed; top: 0; visibility: hidden; - width: 100%; + width: 100vw; z-index: 2000; * { diff --git a/app/models/user.rb b/app/models/user.rb index 2e3c067ec..a813ac83c 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -195,10 +195,16 @@ class User < ApplicationRecord super - if new_user && approved? - prepare_new_user! - elsif new_user - notify_staff_about_pending_account! + if new_user + # Avoid extremely unlikely race condition when approving and confirming + # the user at the same time + reload unless approved? + + if approved? + prepare_new_user! + else + notify_staff_about_pending_account! + end end end @@ -209,7 +215,13 @@ class User < ApplicationRecord skip_confirmation! save! - prepare_new_user! if new_user && approved? + if new_user + # Avoid extremely unlikely race condition when approving and confirming + # the user at the same time + reload unless approved? + + prepare_new_user! if approved? + end end def update_sign_in!(new_sign_in: false) @@ -261,7 +273,11 @@ class User < ApplicationRecord return if approved? update!(approved: true) - prepare_new_user! + + # Avoid extremely unlikely race condition when approving and confirming + # the user at the same time + reload unless confirmed? + prepare_new_user! if confirmed? end def otp_enabled? diff --git a/app/serializers/rest/web_push_subscription_serializer.rb b/app/serializers/rest/web_push_subscription_serializer.rb index 194cc0a8c..674a2d5a8 100644 --- a/app/serializers/rest/web_push_subscription_serializer.rb +++ b/app/serializers/rest/web_push_subscription_serializer.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true class REST::WebPushSubscriptionSerializer < ActiveModel::Serializer - attributes :id, :endpoint, :alerts, :server_key + attributes :id, :endpoint, :alerts, :server_key, :policy def alerts (object.data&.dig('alerts') || {}).each_with_object({}) { |(k, v), h| h[k] = ActiveModel::Type::Boolean.new.cast(v) } @@ -10,4 +10,8 @@ class REST::WebPushSubscriptionSerializer < ActiveModel::Serializer def server_key Rails.configuration.x.vapid_public_key end + + def policy + object.data&.dig('policy') || 'all' + end end diff --git a/app/services/verify_link_service.rb b/app/services/verify_link_service.rb index d049b52d1..9708cdd73 100644 --- a/app/services/verify_link_service.rb +++ b/app/services/verify_link_service.rb @@ -10,7 +10,7 @@ class VerifyLinkService < BaseService return unless link_back_present? field.mark_verified! - rescue OpenSSL::SSL::SSLError, HTTP::Error, Addressable::URI::InvalidURIError, Mastodon::HostValidationError, Mastodon::LengthValidationError => e + rescue OpenSSL::SSL::SSLError, HTTP::Error, Addressable::URI::InvalidURIError, Mastodon::HostValidationError, Mastodon::LengthValidationError, IPAddr::AddressFamilyError => e Rails.logger.debug "Error fetching link #{@url}: #{e}" nil end diff --git a/app/validators/email_mx_validator.rb b/app/validators/email_mx_validator.rb index 20f2fd37c..19c57bdf6 100644 --- a/app/validators/email_mx_validator.rb +++ b/app/validators/email_mx_validator.rb @@ -10,6 +10,8 @@ class EmailMxValidator < ActiveModel::Validator if domain.blank? user.errors.add(:email, :invalid) + elsif domain.include?('..') + user.errors.add(:email, :invalid) elsif !on_allowlist?(domain) resolved_ips, resolved_domains = resolve_mx(domain) diff --git a/app/views/auth/confirmations/new.html.haml b/app/views/auth/confirmations/new.html.haml index a294d3cb5..a98257873 100644 --- a/app/views/auth/confirmations/new.html.haml +++ b/app/views/auth/confirmations/new.html.haml @@ -5,7 +5,7 @@ = render 'shared/error_messages', object: resource .fields-group - = f.input :email, autofocus: true, wrapper: :with_label, label: t('simple_form.labels.defaults.email'), input_html: { 'aria-label': t('simple_form.labels.defaults.email') }, hint: false + = f.input :email, autofocus: true, wrapper: :with_label, label: t('simple_form.labels.defaults.email'), input_html: { 'aria-label': t('simple_form.labels.defaults.email') }, readonly: current_user.present?, hint: current_user.present? && t('auth.confirmations.wrong_email_hint') .actions = f.button :button, t('auth.resend_confirmation'), type: :submit diff --git a/config/locales/activerecord.bg.yml b/config/locales/activerecord.bg.yml index ddebd8f08..2fd079171 100644 --- a/config/locales/activerecord.bg.yml +++ b/config/locales/activerecord.bg.yml @@ -40,7 +40,7 @@ bg: user: attributes: email: - blocked: използва се непозволен доставчик на услуга за е-поща + blocked: използва се забранен доставчик на услуга за е-поща unreachable: изглежда, че не съществува role_id: elevated: не може да е по-висока от текущата ви роля diff --git a/config/locales/ar.yml b/config/locales/ar.yml index 25d5faa8d..2d552ae9b 100644 --- a/config/locales/ar.yml +++ b/config/locales/ar.yml @@ -711,6 +711,8 @@ ar: preamble: تصفح المحتوى المثير للاهتمام أمر مهم في إستقبال المستخدمين الجدد الذين قد لا يعرفون أي شخص ماستدون. التحكم في كيفية عمل ميزات الاكتشاف المختلفة على الخادم الخاص بك. profile_directory: دليل الصفحات التعريفية public_timelines: الخيوط الزمنية العامة + publish_discovered_servers: نشر الخوادم المكتشَفة + publish_statistics: نشر الإحصائيات title: الاستكشاف trends: المتداوَلة domain_blocks: @@ -1343,6 +1345,8 @@ ar: unrecognized_emoji: لم يتم التعرف على أنه إيموجي relationships: activity: نشاط الحساب + confirm_follow_selected_followers: هل أنت متأكد من أنك تريد متابعة المتابِعين المحددين؟ + confirm_remove_selected_followers: هل أنت متأكد من أنك تريد إزالة المتابِعين المحددين؟ dormant: في سبات follow_selected_followers: متابَعة المتابِعين المحددين followers: المتابِعون diff --git a/config/locales/bg.yml b/config/locales/bg.yml index 52a266a67..9127790bc 100644 --- a/config/locales/bg.yml +++ b/config/locales/bg.yml @@ -575,7 +575,10 @@ bg: mark_as_sensitive_description_html: Мултимедията в докладваните публикации ще се означи като деликатна, за да ви помогне при изострянето на бъдещи нарушения от същия акаунт. other_description_html: Показване на повече възможности за управляване на поведението на акаунта и за персонализиране на комуникацията с доклвадвания акаунт. resolve_description_html: Няма да се предприеме действие срещу докладвания акаунт, няма да се записва нарушение и докладът ще се затвори. + silence_description_html: Профилът ще е видим само за последователите му или търсещите го ръчно, което драстично ограничава обсега му. Настройката може да бъде отменена по всяко време. Затваря всички доклади срещу акаунта. + suspend_description_html: Акаунтът и неговото съдържание ще бъдат недостъпни и евентуално изтрити и взаимодействието с него ще е невъзможно. Обрамотимо до 30 дни. Затваря всички доклади срещу този акаунт. actions_description_html: Решете какво действие може да се предприеме, за да бъде отхвърлен докладът. Ако предприемете наказателно действие срещу докладвания акаунт, към него ще бъде изпратено известие по имейл, освен ако <strong>Спам</strong> категорията не е била избрана. + actions_description_remote_html: Преценете с какво действие да решите този доклад. Това ще има ефекет върху това как <strong>вашият</strong> сървър комуникира с този отдалечен акаунт и се справя с неговото съдържание. add_to_report: Добавяне на още към доклада are_you_sure: Сигурни ли сте? assign_to_self: Назначаване на мен diff --git a/config/locales/devise.bg.yml b/config/locales/devise.bg.yml index d3d5e9b70..5ce015704 100644 --- a/config/locales/devise.bg.yml +++ b/config/locales/devise.bg.yml @@ -43,7 +43,7 @@ bg: reset_password_instructions: action: Промяна на парола explanation: Поискахте нова парола за акаунта си. - extra: Ако не сте поискали това, моля, игнорирайте този имейл. Паролата ви няма да се промени, докато не влезете в линка по-горе и не създадете нова. + extra: Ако не сте заявили това, то игнорирайте това е-писмо. Паролата ви няма да се променя, докато не влезете от връзката по-горе и не създадете нова. subject: 'Mastodon: Указания за задаване на нова парола' title: Нулиране на парола two_factor_disabled: @@ -72,10 +72,10 @@ bg: webauthn_disabled: explanation: Удостоверяването с ключове за сигурност е изключено за акаунта ви. Влизането вече е възможно, използвайки само ключа, породен от сдвоеното приложение TOTP. subject: 'Mastodon: Изключено удостоверяване с ключове за сигурност' - title: Ключовете за сигурност са деактивирани + title: Изключени ключове за сигурност webauthn_enabled: explanation: Удостоверяването с ключ за сигурност е активирано за вашия акаунт. Вашият ключ за сигурност вече може да се използва за вход. - subject: 'Mastodon: Активирано удостоверяване с ключ за сигурност' + subject: 'Mastodon: Включено удостоверяване с ключ за сигурност' title: Ключовете за сигурност са активирани omniauth_callbacks: failure: Не успяхме да ви упълномощим от %{kind}, защото "%{reason}". @@ -92,7 +92,7 @@ bg: signed_up_but_inactive: Регистрирахте се успешно. Въпреки това, не може да влезете, тъй като акаунтът ви още не е задействан. signed_up_but_locked: Регистрирахте се успешно. Въпреки това, не можете да влезете, тъй като акаунтът ви е заключен. signed_up_but_pending: Изпратено е съобщение до адреса на имейла ви с връзка за потвърждение. След като щракнете върху линка, ние ще прегледаме заявлението ви. Ще бъдете уведомени при одобрение. - signed_up_but_unconfirmed: Съобщение с линк за потвърждение беше изпратено до вашия имейл адрес. Последвайте линка, за да задействате акаунта си. Проверете спам папката си, ако не сте получили такъв имейл. + signed_up_but_unconfirmed: Е-писмо с връзка за потвърждение е изпратено до имейла ви. Последвайте връзката, за да задействате акаунта си. Проверете папката си за спам, ако не сте получили това е-писмо. update_needs_confirmation: Успешно обновихте акаунта си, но трябва да потвърдим вашия нов имейл адрес. Проверете електронната си поща и отворете отворете линка за потвърждение на новия си имейл адрес. Проверете спам папката си, ако не сте получили имейл за потвърждение. updated: Акаунтът ви е успешно осъвременен. sessions: diff --git a/config/locales/doorkeeper.ar.yml b/config/locales/doorkeeper.ar.yml index 182f0c33f..861a63eb4 100644 --- a/config/locales/doorkeeper.ar.yml +++ b/config/locales/doorkeeper.ar.yml @@ -128,6 +128,7 @@ ar: crypto: التشفير من الطرف إلى نهاية الطرف favourites: المفضلة filters: عوامل التصفية + follow: الإشتراكات والحسابات المكتومة والحسابات المحجوبة follows: الإشتراكات lists: القوائم media: الوسائط المرفقة diff --git a/config/locales/doorkeeper.be.yml b/config/locales/doorkeeper.be.yml index dedc0d1fe..1d0ffda4b 100644 --- a/config/locales/doorkeeper.be.yml +++ b/config/locales/doorkeeper.be.yml @@ -129,6 +129,7 @@ be: crypto: Скразное шыфраванне favourites: Абраныя filters: Фільтры + follow: Падпіскі, ігнараванне і блакіроўка follows: Падпіскі lists: Спісы media: Мультымедыйныя ўкладанні diff --git a/config/locales/doorkeeper.bg.yml b/config/locales/doorkeeper.bg.yml index 57d45ee1c..ec1f351ee 100644 --- a/config/locales/doorkeeper.bg.yml +++ b/config/locales/doorkeeper.bg.yml @@ -74,7 +74,7 @@ bg: authorized_at: Упълномощено на %{date} description_html: Има приложения, можещи да имат достъп до акаунта ви, използвайки API. Ако тук има приложения, които не знаете, или работещи неправилно, то може да им откажете достъпа. last_used_at: Последно обновено на %{date} - never_used: Нивга ползвано + never_used: Никога употребявано scopes: Разрешения superapp: Вътрешно title: Упълномощените ви приложения diff --git a/config/locales/doorkeeper.eo.yml b/config/locales/doorkeeper.eo.yml index d6580d573..aa16bdf42 100644 --- a/config/locales/doorkeeper.eo.yml +++ b/config/locales/doorkeeper.eo.yml @@ -129,6 +129,7 @@ eo: crypto: Fin-al-fina ĉifrado favourites: Preferaĵoj filters: Filtriloj + follow: Abonadoj, silentigitaj kontoj kaj blokitaj kontoj follows: Sekvas lists: Listoj media: Plurmediaj aldonaĵoj diff --git a/config/locales/doorkeeper.et.yml b/config/locales/doorkeeper.et.yml index 3cc8b470f..0f8ddd277 100644 --- a/config/locales/doorkeeper.et.yml +++ b/config/locales/doorkeeper.et.yml @@ -181,7 +181,7 @@ et: read:statuses: näha kõiki postitusi write: muuta kogu konto andmeid write:accounts: muuta profiili - write:blocks: blokeerida kontosid ja domeene + write:blocks: kontode ja domeenide blokeerimine write:bookmarks: lisada postitusele järjehoidja write:conversations: vaigista ja kustuta vestlused write:favourites: lisada postitusi lemmikuks diff --git a/config/locales/doorkeeper.fr.yml b/config/locales/doorkeeper.fr.yml index 55a7f8c75..7819d1fd8 100644 --- a/config/locales/doorkeeper.fr.yml +++ b/config/locales/doorkeeper.fr.yml @@ -122,12 +122,14 @@ fr: admin/accounts: Gestion des comptes admin/all: Toutes les fonctionnalités d'administration admin/reports: Gestion des rapports + all: Accès complet à votre compte Mastodon blocks: Bloqués bookmarks: Marque-pages conversations: Conversations crypto: Chiffrement de bout-en-bout favourites: Favoris filters: Filtres + follow: Abonnements, comptes masqués et comptes bloqués follows: Abonnements lists: Listes media: Fichiers médias diff --git a/config/locales/doorkeeper.ja.yml b/config/locales/doorkeeper.ja.yml index f10823546..0e52e1f09 100644 --- a/config/locales/doorkeeper.ja.yml +++ b/config/locales/doorkeeper.ja.yml @@ -122,12 +122,14 @@ ja: admin/accounts: アカウント管理 admin/all: すべての管理機能 admin/reports: 通報の管理 + all: Mastodonアカウントへのフルアクセス blocks: ブロック bookmarks: ブックマーク conversations: 会話 crypto: エンドツーエンド暗号化 favourites: お気に入り filters: フィルター + follow: フォロー、ミュート、ブロック follows: フォロー lists: リスト media: メディアの添付 @@ -147,9 +149,19 @@ ja: scopes: admin:read: サーバーのすべてのデータの読み取り admin:read:accounts: すべてのアカウントの機密情報の読み取り + admin:read:canonical_email_blocks: すべてのブロックしたメールアドレスの読み取り + admin:read:domain_allows: すべての許可したドメインの読み取り + admin:read:domain_blocks: すべてのブロックしたドメインの読み取り + admin:read:email_domain_blocks: すべてのブロックしたメールドメインの読み取り + admin:read:ip_blocks: すべてのブロックしたIPアドレスの読み取り admin:read:reports: すべての通報と通報されたアカウントの機密情報の読み取り admin:write: サーバーのすべてのデータの変更 admin:write:accounts: アカウントに対するアクションの実行 + admin:write:canonical_email_blocks: メールアドレスのブロックに関するアクションの実行 + admin:write:domain_allows: ドメイン許可に関するアクションの実行 + admin:write:domain_blocks: ドメインのブロックに関するアクションの実行 + admin:write:email_domain_blocks: メールドメインのブロックに関するアクションの実行 + admin:write:ip_blocks: IPアドレスのブロックに関するアクションの実行 admin:write:reports: 通報に対するアクションの実行 crypto: エンドツーエンド暗号化の使用 follow: アカウントのつながりを変更 diff --git a/config/locales/doorkeeper.oc.yml b/config/locales/doorkeeper.oc.yml index 93ed7eeaf..84935d49b 100644 --- a/config/locales/doorkeeper.oc.yml +++ b/config/locales/doorkeeper.oc.yml @@ -149,6 +149,11 @@ oc: scopes: admin:read: lectura de totas las donadas del servidor admin:read:accounts: lectura de las informacions sensiblas dels comptes + admin:read:canonical_email_blocks: legir las informacions sensiblas de totes los blocs d’e-mails canonics + admin:read:domain_allows: legir las informacions sensiblas de totes los domenis autorizats + admin:read:domain_blocks: legir las informacions sensiblas de totes los domenis blocats + admin:read:email_domain_blocks: legir las informacions sensiblas de totes los blocs de domenis d’e-mail + admin:read:ip_blocks: legir las informacions sensiblas de totes los blocats d’IP admin:read:reports: lectura de las informacions sensiblas dels senhalaments e dels comptes senhalats admin:write: modificacion de las donadas del servidor admin:write:accounts: realizacion d’accions de moderacion suls comptes diff --git a/config/locales/doorkeeper.pt-BR.yml b/config/locales/doorkeeper.pt-BR.yml index 603a11f5d..6b64badf7 100644 --- a/config/locales/doorkeeper.pt-BR.yml +++ b/config/locales/doorkeeper.pt-BR.yml @@ -122,12 +122,14 @@ pt-BR: admin/accounts: Administração de contas admin/all: Todas as funções administrativas admin/reports: Controle de denúncias + all: Acesso total à sua conta Mastodon blocks: Bloqueios bookmarks: Salvos conversations: Conversas crypto: Criptografia de ponta a ponta favourites: Favoritos filters: Filtros + follow: Seguidores, Silenciados e Bloqueados follows: Seguidores lists: Listas media: Mídias anexadas @@ -147,9 +149,19 @@ pt-BR: scopes: admin:read: ler todos os dados no servidor admin:read:accounts: ler informações sensíveis de todas as contas + admin:read:canonical_email_blocks: ler informações sensíveis de todos os blocos de e-mail canônicos + admin:read:domain_allows: ler informações sensíveis de todos os domínios (URL) permitidos + admin:read:domain_blocks: ler informações sensíveis de todos os domínios (URL) bloqueados + admin:read:email_domain_blocks: ler informações sensíveis de todos os e-mails de domínios bloqueados + admin:read:ip_blocks: ler informações sensíveis de todos os endereços de IP bloqueados admin:read:reports: ler informações sensíveis de todas as denúncias e contas denunciadas admin:write: alterar todos os dados no servidor admin:write:accounts: executar ações de moderação em contas + admin:write:canonical_email_blocks: executar ações de moderação em blocos canônicos de e-mail + admin:write:domain_allows: executar ações de moderação em domínios (URL) permitidos + admin:write:domain_blocks: executar ações de moderação em domínios (URL) bloqueados + admin:write:email_domain_blocks: executar ações de moderação em blocos de e-mail bloqueados + admin:write:ip_blocks: executar ações de moderação em IPs bloqueados admin:write:reports: executar ações de moderação em denúncias crypto: usar criptografia de ponta-a-ponta follow: alterar o relacionamento das contas diff --git a/config/locales/en.yml b/config/locales/en.yml index 3de2f2772..39ff4236a 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -965,6 +965,8 @@ en: auth: apply_for_account: Request an account change_password: Password + confirmations: + wrong_email_hint: If that e-mail address is not correct, you can change it in account settings. delete_account: Delete account delete_account_html: If you wish to delete your account, you can <a href="%{path}">proceed here</a>. You will be asked for confirmation. description: diff --git a/config/locales/eo.yml b/config/locales/eo.yml index 58025057d..2131e253c 100644 --- a/config/locales/eo.yml +++ b/config/locales/eo.yml @@ -58,7 +58,7 @@ eo: demote: Degradi destroyed_msg: Datumoj de %{username} nun enviciĝis por esti forigita baldaǔ disable: Frostigi - disable_sign_in_token_auth: Malŝalti aŭtentigon de retpoŝta ĵetono + disable_sign_in_token_auth: Malŝalti aŭtentigon per retpoŝta ĵetono disable_two_factor_authentication: Malŝalti 2FA-n disabled: Frostigita display_name: Montrata nomo @@ -67,7 +67,7 @@ eo: email: Retpoŝto email_status: Stato de retpoŝto enable: Malfrostigi - enable_sign_in_token_auth: Ŝalti aŭtentigon de retpoŝta ĵetono por uzanto + enable_sign_in_token_auth: Ŝalti aŭtentigon per retpoŝta ĵetono enabled: Ebligita enabled_msg: Sukcese malfrostigis konton de %{username} followers: Sekvantoj @@ -130,7 +130,7 @@ eo: resubscribe: Reaboni role: Rolo search: Serĉi - search_same_email_domain: Aliaj uzantoj kun la sama retpoŝta domajno + search_same_email_domain: Aliaj uzantoj kun la sama domajno de retpoŝto search_same_ip: Aliaj uzantoj kun la sama IP security_measures: only_password: Nur pasvorto @@ -140,7 +140,7 @@ eo: shared_inbox_url: URL de kunhavigita leterkesto show: created_reports: Faritaj raportoj - targeted_reports: Raporitaj de la aliaj + targeted_reports: Raporitaj de aliaj silence: Limigi silenced: Silentigita statuses: Afiŝoj @@ -197,10 +197,10 @@ eo: destroy_user_role: Detrui Rolon disable_2fa_user: Malebligi 2FA disable_custom_emoji: Malebligi proprajn emoĝiojn - disable_sign_in_token_auth_user: Malŝalti aŭtentigon de retpoŝta ĵetono por la uzanto + disable_sign_in_token_auth_user: Malŝalti aŭtentigon per retpoŝta ĵetono por la uzanto disable_user: Neebligi la uzanton enable_custom_emoji: Ebligi Propran Emoĝion - enable_sign_in_token_auth_user: Ŝalti aŭtentigon de retpoŝta ĵetono por la uzanto + enable_sign_in_token_auth_user: Ŝalti aŭtentigon per retpoŝta ĵetono por la uzanto enable_user: Ebligi uzanton memorialize_account: Memorigu Konton promote_user: Promocii Uzanton @@ -375,7 +375,7 @@ eo: created_msg: Domajno estis sukcese aldonita al la blanka listo destroyed_msg: Domajno estis forigita el la blanka listo export: Eksporti - import: Importi + import: Enporti undo: Forigi el la blanka listo domain_blocks: add_new: Aldoni novan blokadon de domajno @@ -386,7 +386,7 @@ eo: existing_domain_block: Vi jam metis pli striktajn limojn al %{name}. existing_domain_block_html: Vi jam trudis pli striktajn limojn al %{name}, vi devas <a href="%{unblock_url}">malbloki ĝin</a> unue. export: Eksporti - import: Importi + import: Enporti new: create: Krei blokadon hint: La domajna blokado ne evitigos kreadon de novaj kontoj en la datumbazo, sed aplikos specifajn kontrolajn agojn sur ĉi tiujn kontojn aŭtomate kaj retroaktive. @@ -438,7 +438,7 @@ eo: description_html: Vi importos liston de domajnblokoj. existing_relationships_warning: Ekzistantaj sekvorilatoj private_comment_description_html: 'Por helpi vin, importitaj blokoj kreitas kun la privata komento: <q>%{comment}</q>' - private_comment_template: Importita de %{source} je %{date} + private_comment_template: Enportita el %{source} je %{date} title: Importi domajnblokojn new: title: Importi domajnblokojn @@ -710,6 +710,7 @@ eo: preamble: Interesa enhavo estas grava por novaj uzantoj kiuj eble ne konas ajn iun. profile_directory: Profilujo public_timelines: Publikaj templinioj + publish_statistics: Publikigi statistikojn title: Eltrovado trends: Tendencoj domain_blocks: @@ -930,8 +931,8 @@ eo: applications: created: Aplikaĵo sukcese kreita destroyed: Aplikaĵo sukcese forigita - regenerate_token: Rekrei aliran ĵetonon - token_regenerated: Alira ĵetono sukcese rekreita + regenerate_token: Regeneri aliran ĵetonon + token_regenerated: Alira ĵetono sukcese regeneria warning: Estu tre atenta kun ĉi tiu datumo. Neniam diskonigu ĝin al iu ajn! your_token: Via alira ĵetono auth: @@ -946,7 +947,7 @@ eo: didnt_get_confirmation: Ĉu vi ne ricevis la instrukciojn por konfirmi? dont_have_your_security_key: Ne havas vi vian sekurecan ŝlosilon? forgot_password: Pasvorto forgesita? - invalid_reset_password_token: Ĵetono por restarigi pasvorton nevalida aŭ eksvalida. Bonvolu peti novan. + invalid_reset_password_token: La ĵetono por restarigi la pasvorton estas nevalida aŭ eksvalida. Bonvolu peti novon. link_to_otp: Enigu 2-faktorkodo de via telefono au regajnkodo link_to_webauth: Uzi vian sekurecan ŝlosilon log_in_with: Ensaluti per @@ -954,7 +955,7 @@ eo: logout: Adiaŭi migrate_account: Movi al alia konto migrate_account_html: Se vi deziras alidirekti ĉi tiun konton al alia, vi povas <a href="%{path}">agordi ĝin ĉi tie</a>. - or_log_in_with: Aŭ ensaluti per + or_log_in_with: Aŭ saluti per privacy_policy_agreement_html: Mi legis kaj konsentis pri <a href="%{privacy_policy_path}" target="_blank">privatpolitiko</a> providers: cas: CAS @@ -973,7 +974,7 @@ eo: email_settings_hint_html: La konfirmretpoŝto senditas al %{email}. title: Agordi sign_in: - title: Ensalutu al %{domain} + title: Saluti en %{domain} sign_up: preamble: Per konto ĉe ĉi tiu Mastodon-servilo, vi povas sekvi ajn personojn en la reto. title: Ni pretigu vin ĉe %{domain}. @@ -1034,7 +1035,7 @@ eo: warning: before: 'Antau ol dauri, legu ĉi tiujn notojn zorgeme:' caches: Enhavo kiu kaŝmemorigitas de aliaj serviloj eble restas - data_removal: Viaj mesaĝoj kaj aliaj datumoj permanente forigotas + data_removal: Viaj afiŝoj kaj aliaj informoj estos forigita por eterne email_change_html: Vi povas <a href="%{path}">ŝanĝi vian retadreson</a> sen forigi vian konton email_contact_html: Se ĝi ankorau ne venas, vi povas retpoŝti al <a href="mailto:%{email}">%{email}</a> por ricevi helpon email_reconfirmation_html: Se vi ne ricevas la konfirmretpoŝton, vi povas <a href="%{path}">denove peti</a> @@ -1217,7 +1218,7 @@ eo: one: 1 uzo other: "%{count} uzoj" max_uses_prompt: Neniu limo - prompt: Generi kaj kundividi ligilojn kun la aliaj por doni aliron al ĉi tiu servilo + prompt: Generi kaj kundividi ligilojn kun aliaj por doni aliron al ĉi tiu servilo table: expires_at: Eksvalidiĝas je uses: Uzoj @@ -1291,8 +1292,8 @@ eo: subject: "%{name} stelumis vian mesaĝon" title: Nova stelumo follow: - body: "%{name} eksekvis vin!" - subject: "%{name} eksekvis vin" + body: "%{name} nun sekvas vin!" + subject: "%{name} nun sekvas vin" title: Nova sekvanto follow_request: action: Administri petojn de sekvado @@ -1428,7 +1429,7 @@ eo: ios: iOS linux: Linux mac: Mac - other: nekonata platformo + other: nekonata substrato windows: Windows windows_mobile: Windows Mobile windows_phone: Windows Phone @@ -1448,7 +1449,7 @@ eo: edit_profile: Redakti profilon export: Eksporti datumojn featured_tags: Elstarigitaj kradvortoj - import: Importi + import: Enporti import_and_export: Importi kaj eksporti migrate: Konta migrado notifications: Sciigoj @@ -1593,11 +1594,11 @@ eo: title: Arkiva elŝuto suspicious_sign_in: change_password: ŝanĝi vian pasvorton - details: 'Detaloj pri ensaluto:' - explanation: Ni detektas ensaluton al via konto de nova IP-adreso. + details: 'Ĉi-sube estas detaloj pri la saluto:' + explanation: Ni detektis saluton en via konto de nova IP-adreso. further_actions_html: Se ne estas vi, ni rekomendas ke vi %{action} tuj por sekurigi vian konton. subject: Via konto estas alirita de nova IP-adreso - title: Nova ensaluto + title: Nova saluto warning: appeal: Sendi apelacion appeal_description: Se vi pensas ke ĉi tio estas eraro, vi povas sendi apelacion al la teamo de %{instance}. @@ -1609,7 +1610,7 @@ eo: disable: Vi ne povas uzi vian konton plu sed via profilo kaj alia datumo restas bone. mark_statuses_as_sensitive: Kelkaj viaj mesaĝoj markitas kiel sentemaj de kontrolantoj de %{instance}. Vi povas marki mem kiam mesaĝi dum la estonteco. sensitive: Malantau ol nun, ĉiuj viaj alŝutitaj audovidaĵoj markitas kiel sentemaj kaj kaŝitas. - silence: Vi ankorau povas uzi vian konton sed nur personoj kiu jam sekvis vin vidos viaj mesaĝoj ĉe ĉi tiu servilo. + silence: Vi ankorau povas uzi vian konton, sed nur personoj kiuj jam sekvas vin vidos viajn mesaĝojn en tiu ĉi servilo, kaj vi eble estos ekskluzive el diversaj malkovrigaj funkcioj. Tamen, aliaj ankoraŭ povas permane eksekvi vin. suspend: Vi ne povas uzi vian konton plu, kaj via profilo kaj aliaj datumoj ne estas disponeblaj plu. reason: 'Kialo:' statuses: 'Mesaĝoj ripetitaj:' diff --git a/config/locales/eu.yml b/config/locales/eu.yml index 93c3df292..c884e35aa 100644 --- a/config/locales/eu.yml +++ b/config/locales/eu.yml @@ -116,6 +116,7 @@ eu: redownloaded_msg: "%{username} erabiltzailearen profila behar bezala freskatu da jatorritik" reject: Ukatu rejected_msg: "%{username} erabiltzailearen izen emate eskaera behar bezala ukatu da" + remote_suspension_irreversible: Kontu honetako datuak betiko ezabatuak izan dira. remove_avatar: Kendu abatarra remove_header: Kendu goiburua removed_avatar_msg: "%{username} erabiltzailearen avatarra behar bezala kendu da" diff --git a/config/locales/fi.yml b/config/locales/fi.yml index 95c584551..9c1831d7f 100644 --- a/config/locales/fi.yml +++ b/config/locales/fi.yml @@ -711,6 +711,7 @@ fi: preamble: Mielenkiintoisen sisällön esille tuominen auttaa saamaan uusia käyttäjiä, jotka eivät ehkä tunne ketään Mastodonista. Määrittele, kuinka erilaiset etsintäominaisuudet toimivat palvelimellasi. profile_directory: Profiilihakemisto public_timelines: Julkiset aikajanat + publish_statistics: Julkaise tilastot title: Löytäminen trends: Trendit domain_blocks: @@ -1367,7 +1368,7 @@ fi: activity: Tilin aktiivisuus confirm_follow_selected_followers: Haluatko varmasti seurata valittuja seuraajia? confirm_remove_selected_followers: Haluatko varmasti poistaa valitut seuraajat? - confirm_remove_selected_follows: Haluatko varmasti poistaa valitut seurannat? + confirm_remove_selected_follows: Haluatko varmasti poistaa valitut seuraamiset? dormant: Horroksessa follow_selected_followers: Seuraa valittuja seuraajia followers: Seuraajat diff --git a/config/locales/fr.yml b/config/locales/fr.yml index 7130158cd..a3af8b739 100644 --- a/config/locales/fr.yml +++ b/config/locales/fr.yml @@ -575,7 +575,10 @@ fr: mark_as_sensitive_description_html: Les médias des messages signalés seront marqués comme sensibles et une sanction sera enregistrée pour vous aider à prendre les mesures appropriées en cas d'infractions futures par le même compte. other_description_html: Voir plus d'options pour contrôler le comportement du compte et personnaliser la communication vers le compte signalé. resolve_description_html: Aucune mesure ne sera prise contre le compte signalé, aucune sanction ne sera enregistrée et le sigalement sera clôturé. + silence_description_html: Le compte ne sera visible que par ceux qui le suivent déjà ou qui le recherchent manuellement, ce qui limite fortement sa portée. Cette action peut toujours être annulée. Cloture tous les signalements concernant ce compte. + suspend_description_html: Le compte et tous ses contenus seront inaccessibles et finalement supprimés, et il sera impossible d'interagir avec lui. Réversible dans les 30 jours. Cloture tous les signalements concernant ce compte. actions_description_html: Décidez des mesures à prendre pour résoudre ce signalement. Si vous prenez des mesures punitives contre le compte signalé, une notification sera envoyée par e-mail, sauf si la catégorie <strong>Spam</strong> est sélectionnée. + actions_description_remote_html: Décidez des mesures à prendre pour résoudre ce signalement. Cela n'affectera que la manière dont <strong>votre</strong> serveur communique avec ce compte distant et traite son contenu. add_to_report: Ajouter davantage au rapport are_you_sure: Voulez-vous vraiment faire ça ? assign_to_self: Me l’assigner @@ -711,6 +714,8 @@ fr: preamble: Faire apparaître un contenu intéressant est essentiel pour interagir avec de nouveaux utilisateurs qui ne connaissent peut-être personne sur Mastodonte. Contrôlez le fonctionnement des différentes fonctionnalités de découverte sur votre serveur. profile_directory: Annuaire des profils public_timelines: Fils publics + publish_discovered_servers: Publier les serveurs découverts + publish_statistics: Publier les statistiques title: Découverte trends: Tendances domain_blocks: @@ -1365,6 +1370,9 @@ fr: unrecognized_emoji: n’est pas un émoji reconnu relationships: activity: Activité du compte + confirm_follow_selected_followers: Voulez-vous vraiment suivre les abonné⋅e⋅s sélectionné⋅e⋅s ? + confirm_remove_selected_followers: Voulez-vous vraiment supprimer les abonné⋅e⋅s sélectionné⋅e⋅s ? + confirm_remove_selected_follows: Voulez-vous vraiment suivre les abonnements sélectionnés ? dormant: Dormant follow_selected_followers: Suivre les abonné·e·s sélectionné·e·s followers: Abonné·e diff --git a/config/locales/gl.yml b/config/locales/gl.yml index ef9ffa16d..c2b790388 100644 --- a/config/locales/gl.yml +++ b/config/locales/gl.yml @@ -557,7 +557,7 @@ gl: pending: Agardando pola aprobación do repetidor save_and_enable: Gardar e activar setup: Configurar unha conexión ó repetidor - signatures_not_enabled: Os repetidores non funcionarán de xeito correcto se o modo seguro ou listaxe branca están activados + signatures_not_enabled: Os repetidores non funcionarán de xeito correcto se o modo seguro ou o modo de federación limitada están activados status: Estado title: Repetidores report_notes: @@ -1088,7 +1088,7 @@ gl: '406': Esta páxina non está dispoñible no formato solicitado. '410': A páxina que estaba a buscar xa non existe. '422': - content: Fallou a verificación de seguridade. Está bloqueando as cookies? + content: Fallou a verificación de seguridade. Estás bloqueando os rastros? title: Fallou a verficación de seguridade '429': Acelerado '500': diff --git a/config/locales/ja.yml b/config/locales/ja.yml index d9131f678..684348ce9 100644 --- a/config/locales/ja.yml +++ b/config/locales/ja.yml @@ -385,7 +385,7 @@ ja: create: ブロックを作成 hint: ドメインブロックはデータベース中のアカウント項目の作成を妨げませんが、遡って自動的に指定されたモデレーションをそれらのアカウントに適用します。 severity: - desc_html: "<strong></strong>はこのドメインでのアカウントの投稿をフォローしていない人から隠します。<strong>停止</strong>はこのドメインでのアカウントのコンテンツ、メディア、プロフィールデータをサーバーから削除します。メディアファイルのみを拒否したい場合は<strong>なし</strong>を選択します。" + desc_html: "<strong>制限</strong>は、このドメイン上のアカウントからの投稿が、相手をフォローしている場合を除き非表示になります。<strong>停止</strong>は、このドメイン上のすべてのコンテンツ、メディア、およびプロフィールデータを受け付けなくなります。メディアファイルのみを拒否したい場合は<strong>なし</strong>を選択します。" noop: なし silence: 制限 suspend: 停止 @@ -430,7 +430,7 @@ ja: import: description_html: ドメインブロックのリストをインポートしようとしています。このリストを自分で作成していない場合は、慎重に確認してください。 existing_relationships_warning: 既存のフォロー関係 - private_comment_description_html: インポートされたブロックがどこから来たのかを追跡するため、インポートされたブロックは次のプライベートコメントを追加して作成されます:<q>%{comment}</q> + private_comment_description_html: 'ブロックのインポート元を判別できるようにするため、ブロックは次のプライベートコメントを追加してインポートされます: <q>%{comment}</q>' private_comment_template: "%{source} から %{date} にインポートしました" title: ドメインブロックをインポート new: @@ -474,7 +474,7 @@ ja: instance_accounts_dimension: 最もフォローされているアカウント instance_accounts_measure: 保存されたアカウント instance_followers_measure: そこでの我々のフォロワー - instance_follows_measure: そのインスタンスのこのインスタンスでのフォロワー + instance_follows_measure: リモートフォローしているアカウント instance_languages_dimension: 人気の言語 instance_media_attachments_measure: 保存されたメディア instance_reports_measure: 通報 @@ -563,7 +563,10 @@ ja: mark_as_sensitive_description_html: 報告された投稿のメディアは閲覧注意となり、ストライクが記録され、同じアカウントによる今後の違反行為のエスカレーションに役立てられます。 other_description_html: アカウントの動作を制御するためのオプションや、報告されたアカウントへの通信をカスタマイズするためのオプションを確認してください。 resolve_description_html: 報告されたアカウントに対していかなる措置も取られず、ストライクも記録されず、報告は終了します。 + silence_description_html: このアカウントは、すでにフォローしている人、または手動で検索した人にしか見えないため、リーチが極端に制限されます。いつでも元に戻すことができます。このアカウントに対するすべての通報をクローズします。 + suspend_description_html: アカウントとそのすべての内容にアクセスできなくなり、最終的に削除され、それとやり取りは不可能になります。 30日以内にリバーシブル。このアカウントに対するすべての通報をクローズします。 actions_description_html: このレポートを解決するために取るアクションを決定します。 報告されたアカウントに対して懲罰的な措置を取った場合、メール通知が送信されますが<strong>スパム</strong>カテゴリが選択されている場合を除きます。 + actions_description_remote_html: この通報を解決するためのアクションを選択してください。これは<strong>あなたの</strong>サーバーがこのリモートアカウントと通信し、そのコンテンツを処理する時のみ影響します。 add_to_report: 通報にさらに追加 are_you_sure: 本当に実行しますか? assign_to_self: 担当になる @@ -697,6 +700,8 @@ ja: preamble: Mastodon を知らないユーザーを取り込むには、興味深いコンテンツを浮上させることが重要です。サーバー上で様々なディスカバリー機能がどのように機能するかを制御します。 profile_directory: ディレクトリ public_timelines: 公開タイムライン + publish_discovered_servers: 接続しているサーバーを公開する + publish_statistics: 統計情報を公開する title: 見つける trends: トレンド domain_blocks: @@ -956,6 +961,7 @@ ja: email_settings_hint_html: 確認用のメールを%{email}に送信しました。メールアドレスが正しくない場合、以下より変更することができます。 title: セットアップ sign_in: + preamble_html: "<strong>%{domain}</strong> の資格情報でサインインします。 あなたのアカウントが別のサーバーでホストされている場合は、ここでログインすることはできません。" title: "%{domain}にログイン" sign_up: preamble: この Mastodon サーバーのアカウントがあれば、ネットワーク上の他の人のアカウントがどこでホストされているかに関係なく、その人をフォローすることができます。 @@ -1338,6 +1344,9 @@ ja: unrecognized_emoji: は絵文字として認識されていません relationships: activity: 活動 + confirm_follow_selected_followers: 選択したフォロワーをフォローしてもよろしいですか? + confirm_remove_selected_followers: 選択したフォロワーを削除してもよろしいですか? + confirm_remove_selected_follows: 選択したフォローを削除してもよろしいですか? dormant: 非アクティブ follow_selected_followers: 選択したフォロワーをフォロー followers: フォロワー diff --git a/config/locales/kab.yml b/config/locales/kab.yml index d2a96d41f..235aad5b3 100644 --- a/config/locales/kab.yml +++ b/config/locales/kab.yml @@ -256,6 +256,7 @@ kab: domain_blocks: add_new: Rni iḥder amaynut n taɣult domain: Taγult + export: Sifeḍ import: Kter new: create: Rnu-d iḥder @@ -517,6 +518,7 @@ kab: exports: archive_takeout: date: Azemz + download: Sider-d aḥraz-ik·im size: Teγzi bookmarks: Ticraḍ csv: CSV diff --git a/config/locales/ko.yml b/config/locales/ko.yml index ad64f6093..d02227dec 100644 --- a/config/locales/ko.yml +++ b/config/locales/ko.yml @@ -1346,7 +1346,7 @@ ko: unrecognized_emoji: 인식 되지 않은 에모지입니다 relationships: activity: 계정 활동 - confirm_follow_selected_followers: 정말로 선택된 팔로워들을 팔로우 하시겠습니까 + confirm_follow_selected_followers: 정말로 선택된 팔로워들을 팔로우하시겠습니까? confirm_remove_selected_followers: 정말로 선택된 팔로워들을 삭제하시겠습니까? confirm_remove_selected_follows: 정말로 선택된 팔로우를 끊으시겠습니까? dormant: 휴면 @@ -1485,7 +1485,7 @@ ko: private_long: 팔로워에게만 공개됩니다 public: 공개 public_long: 누구나 볼 수 있으며, 공개 타임라인에 표시됩니다 - unlisted: 공개 타임라인 비표시 + unlisted: 미등재 unlisted_long: 누구나 볼 수 있지만, 공개 타임라인에는 표시되지 않습니다 statuses_cleanup: enabled: 오래된 게시물 자동 삭제 diff --git a/config/locales/oc.yml b/config/locales/oc.yml index 3457d7801..e77191865 100644 --- a/config/locales/oc.yml +++ b/config/locales/oc.yml @@ -144,11 +144,13 @@ oc: create_announcement: Crear una anóncia create_custom_emoji: Crear un emoji personalizat create_ip_block: Crear una règla IP + create_user_role: Crear un ròtle demote_user: Retrogradar l’utilizaire destroy_announcement: Suprimir l’anóncia destroy_custom_emoji: Suprimir l’emoji personalizat destroy_domain_block: Suprimir lo blocatge de domeni destroy_status: Suprimir l’estatut + destroy_user_role: Destruire ròtle disable_2fa_user: Desactivar 2FA disable_custom_emoji: Desactivar l’emoji personalizat disable_user: Desactivar l’utilizaire @@ -165,7 +167,9 @@ oc: unsilence_account: Levar lo silenci del compte update_announcement: Actualizar l’anóncia update_custom_emoji: Actualizar l’emoji personalizat + update_ip_block: Actualizar règla IP update_status: Actualizar l’estatut + update_user_role: Actualizar ròtle empty: Cap de jornal pas trobat. filter_by_action: Filtrar per accion filter_by_user: Filtrar per utilizaire diff --git a/config/locales/pl.yml b/config/locales/pl.yml index b05bd3ef7..1c70a33c1 100644 --- a/config/locales/pl.yml +++ b/config/locales/pl.yml @@ -275,19 +275,19 @@ pl: remove_avatar_user_html: "%{name} usunął(-ęła) awatar użytkownikowi %{target}" reopen_report_html: "%{name} otworzył(a) ponownie zgłoszenie %{target}" resend_user_html: "%{name} ponownie wysłał(a) e-mail z potwierdzeniem dla %{target}" - reset_password_user_html: "%{name} przywrócił(a) hasło użytkownikowi %{target}" + reset_password_user_html: "%{name} resetuje hasło użytkownika %{target}" resolve_report_html: "%{name} rozwiązał(a) zgłoszenie %{target}" sensitive_account_html: "%{name} oznaczył(a) zawartość multimedialną %{target} jako wrażliwą" silence_account_html: "%{name} wyciszył(a) konto %{target}" - suspend_account_html: "%{name} zawiesił(a) konto %{target}" + suspend_account_html: Zawieszono konto %{target} przez %{name} unassigned_report_html: "%{name} cofnął(-ęła) przypisanie zgłoszenia %{target}" unblock_email_account_html: "%{name} odblokował adres e-mail %{target}" unsensitive_account_html: "%{name} cofnął(-ęła) oznaczenie zawartości multimedialnej %{target} jako wrażliwą" unsilence_account_html: "%{name} cofnął(-ęła) wyciszenie konta %{target}" unsuspend_account_html: "%{name} cofnął(-ęła) zawieszenie konta %{target}" - update_announcement_html: "%{name} zaktualizował(a) ogłoszenie %{target}" - update_custom_emoji_html: "%{name} zaktualizował(a) emoji %{target}" - update_domain_block_html: "%{name} zaktualizował(a) blokadę domeny dla %{target}" + update_announcement_html: Zaktualizowane ogłoszenie %{target} przez %{name} + update_custom_emoji_html: Zaktualizowane emoji %{target} przez %{name} + update_domain_block_html: Zaktualizowano blokadę domeny dla %{target} przez %{name} update_ip_block_html: "%{name} stworzył(a) regułę dla IP %{target}" update_status_html: "%{name} zaktualizował(a) wpis użytkownika %{target}" update_user_role_html: "%{name} zmienił rolę %{target}" @@ -1358,8 +1358,8 @@ pl: title: Nowa prośba o możliwość obsewowania mention: action: Odpowiedz - body: "%{name} wspomniał(a) o Tobie w:" - subject: "%{name} wspomniał(a) o Tobie" + body: 'Wspomniano o tobie przez %{name} w:' + subject: Wspomniano o tobie przez %{name} title: Nowe wspomnienie o Tobie poll: subject: Ankieta %{name} zakończyła się diff --git a/config/locales/pt-BR.yml b/config/locales/pt-BR.yml index 4b8302ef2..5e3e079a3 100644 --- a/config/locales/pt-BR.yml +++ b/config/locales/pt-BR.yml @@ -708,6 +708,8 @@ pt-BR: preamble: Navegar por um conteúdo interessante é fundamental para integrar novos usuários que podem não conhecer ninguém no Mastodon. Controle como várias características de descoberta funcionam no seu servidor. profile_directory: Diretório de perfis public_timelines: Timelines públicas + publish_discovered_servers: Publicar servidores descobertos + publish_statistics: Publicar estatísticas title: Descobrir trends: Tendências domain_blocks: @@ -970,6 +972,7 @@ pt-BR: email_settings_hint_html: O e-mail de confirmação foi enviado para %{email}. Se esse endereço de e-mail não estiver correto, você pode alterá-lo nas configurações da conta. title: Configurações sign_in: + preamble_html: Entre com suas credenciais de domínios ( <strong>%{domain}</strong> ) . Se sua conta estiver hospedada em um servidor diferente, você não deve conseguir acessar este conteúdo. title: Entrar em %{domain} sign_up: preamble: Com uma conta neste servidor Mastodon, você poderá seguir qualquer outra pessoa na rede, independentemente de onde sua conta esteja hospedada. @@ -1120,6 +1123,7 @@ pt-BR: add_keyword: Adicionar palavra-chave keywords: Palavras-chave statuses: Publicações individuais + statuses_hint_html: Este filtro se aplica para selecionar posts individuais, independentemente de serem compatíveis com as palavras-chave abaixo. <a href="%{path}">Revise ou remova as publicações do filtro</a>. title: Editar filtro errors: deprecated_api_multiple_keywords: Estes parâmetros não podem ser alterados a partir deste aplicativo porque se aplicam a mais de uma palavra-chave de filtro. Use um aplicativo mais recente ou a interface web. @@ -1359,6 +1363,9 @@ pt-BR: unrecognized_emoji: não é um emoji reconhecido relationships: activity: Atividade da conta + confirm_follow_selected_followers: Tem certeza que deseja seguir os seguidores selecionados? + confirm_remove_selected_followers: Tem certeza que deseja remover os seguidores selecionados? + confirm_remove_selected_follows: Tem certeza que deseja remover os grupos seguidos selecionados? dormant: Inativo follow_selected_followers: Seguir os seguidores selecionados followers: Seguidores diff --git a/config/locales/simple_form.ar.yml b/config/locales/simple_form.ar.yml index 865ab6fbc..21d9c277f 100644 --- a/config/locales/simple_form.ar.yml +++ b/config/locales/simple_form.ar.yml @@ -18,6 +18,7 @@ ar: disable: منع المستخدم من استخدام حسابه، ولكن لا تَقم بحذف أو إخفاء محتواه. none: استخدم هذه لإرسال تحذير للمستخدم، دون تشغيل أو إثارة أي إجراء آخر. sensitive: إجبار جميع مرفقات الوسائط لهذا المستخدم على أن تكون حساسة. + silence: منع المستخدم من القدرة على النشر للعامة، وإخفاء مشاركاته وإشعاراته لمن لا يتبعونه. إغلاق جميع التقارير المقترنة بهذا الحساب. warning_preset_id: اختياري. يمكنك إضافة نص مخصص إلى نهاية النموذج announcement: all_day: إن أختير، سيتم عرض تواريخ النطاق الزمني فقط @@ -234,6 +235,7 @@ ar: custom_css: سي أس أس CSS مخصص mascot: جالب حظ مخصص (قديم) media_cache_retention_period: مدة الاحتفاظ بالتخزين المؤقت للوسائط + peers_api_enabled: نشر قائمة للخوادم المكتشَفة في واجهة برمجة التطبيقات API profile_directory: تفعيل دليل الصفحات التعريفية registrations_mode: من يمكنه التسجيل require_invite_text: يتطلب سببا للانضمام diff --git a/config/locales/simple_form.bg.yml b/config/locales/simple_form.bg.yml index fb7930981..94f7f5b3f 100644 --- a/config/locales/simple_form.bg.yml +++ b/config/locales/simple_form.bg.yml @@ -18,6 +18,8 @@ bg: disable: Забранете на потребител да достъпва акаунта си, без да изтривате или скривате съдържанието на този акаунт. none: Служи за изпращане на предупреждение до потребител, без да се активира друго действие. sensitive: Принудително отбелязване на прикачената от потребителя мултимедия като чувствителна. + silence: Забраняване на потребителя да публикува публично, скриване на неговите публикации и известия от други потребители, които не го следват. Затваря всички доклади срещу този акаунт. + suspend: Забрана на всякаква интеракция с този акаунт и изтриване на съдържанието му. Обратимо в рамките на 30 дни. Затваря всички доклади срещу този акаунт. warning_preset_id: По избор. Можете да добавите допълнително текст накрая на предварително настроения текст announcement: all_day: Когато е избрана настройката, само датите от времевия диапазон ще бъдат показани @@ -72,6 +74,7 @@ bg: hide: Напълно скриване на филтрираното съдържание, сякаш не съществува warn: Скриване на филтрираното съдържание зад предупреждение, включващо името на филтъра form_admin_settings: + activity_api_enabled: Брой публикувани постове, активни потребители и нови регистрации за седмицата backups_retention_period: Запазване на генерираните потребителски архиви за посочения брой дни. bootstrap_timeline_accounts: Тези акаунти ще се закачат в горния край на препоръките за следване на нови потребители. closed_registrations_message: Показва се, когато е затворено за регистрации @@ -79,6 +82,7 @@ bg: custom_css: Може да прилагате собствени стилове в уеб версията на Mastodon. mascot: Можете да заместите илюстрацията в разширения уеб интерфейс. media_cache_retention_period: Свалените мултимедийни файлове ще бъдат изтрити след посочения брой дни, когато броят е положително число, и ще бъдат свалени отново при поискване. + peers_api_enabled: Списък от домейни, с който сървърът се е свързал във fediverse. Тук не се включват данни за това дали федерирате с даден сървър, а само за това дали вашият сървър знае за него. Това се ползва от услуги, които събират статистики за федерацията в общия смисъл. profile_directory: Указателят на профили съдържа всички потребители, които са се съгласили да бъдат откривани. require_invite_text: Когато регистрацията изисква ръчно одобрение, текстовото поле за това "Защо желаете да се присъедините?" ще бъде задължително, вместо по желание site_contact_email: Как могат хората да се свържат с вас относно правни запитвания или помощ. @@ -227,6 +231,7 @@ bg: hide: Напълно скриване warn: Скриване зад предупреждение form_admin_settings: + activity_api_enabled: Публикуване на агрегирани статиски относно потребителската дейност в API backups_retention_period: Период за съхранение на потребителския архив bootstrap_timeline_accounts: Винаги да се препоръчват следните акаунти на нови потребители closed_registrations_message: Съобщение, показвано, когато записвания не са възможни diff --git a/config/locales/simple_form.en-GB.yml b/config/locales/simple_form.en-GB.yml index d8f271ed2..3ad342cb4 100644 --- a/config/locales/simple_form.en-GB.yml +++ b/config/locales/simple_form.en-GB.yml @@ -18,6 +18,8 @@ en-GB: disable: Prevent the user from using their account, but do not delete or hide their contents. none: Use this to send a warning to the user, without triggering any other action. sensitive: Force all this user's media attachments to be flagged as sensitive. + silence: Prevent the user from being able to post with public visibility, hide their posts and notifications from people not following them. Closes all reports against this account. + suspend: Prevent any interaction from or to this account and delete its contents. Revertible within 30 days. Closes all reports against this account. warning_preset_id: Optional. You can still add custom text to end of the preset announcement: all_day: When checked, only the dates of the time range will be displayed @@ -72,6 +74,7 @@ en-GB: hide: Completely hide the filtered content, behaving as if it did not exist warn: Hide the filtered content behind a warning mentioning the filter's title form_admin_settings: + activity_api_enabled: Counts of locally published posts, active users, and new registrations in weekly buckets backups_retention_period: Keep generated user archives for the specified number of days. bootstrap_timeline_accounts: These accounts will be pinned to the top of new users' follow recommendations. closed_registrations_message: Displayed when sign-ups are closed @@ -79,6 +82,7 @@ en-GB: custom_css: You can apply custom styles on the web version of Mastodon. mascot: Overrides the illustration in the advanced web interface. media_cache_retention_period: Downloaded media files will be deleted after the specified number of days when set to a positive value, and re-downloaded on demand. + peers_api_enabled: A list of domain names this server has encountered in the fediverse. No data is included here about whether you federate with a given server, just that your server knows about it. This is used by services that collect statistics on federation in a general sense. profile_directory: The profile directory lists all users who have opted-in to be discoverable. require_invite_text: When sign-ups require manual approval, make the “Why do you want to join?” text input mandatory rather than optional site_contact_email: How people can reach you for legal or support inquiries. @@ -89,6 +93,28 @@ en-GB: site_title: How people may refer to your server besides its domain name. theme: Theme that logged out visitors and new users see. thumbnail: A roughly 2:1 image displayed alongside your server information. + timeline_preview: Logged out visitors will be able to browse the most recent public posts available on the server. + trendable_by_default: Skip manual review of trending content. Individual items can still be removed from trends after the fact. + trends: Trends show which posts, hashtags and news stories are gaining traction on your server. + form_challenge: + current_password: You are entering a secure area + imports: + data: CSV file exported from another Mastodon server + invite_request: + text: This will help us review your application + ip_block: + comment: Optional. Remember why you added this rule. + expires_in: IP addresses are a finite resource, they are sometimes shared and often change hands. For this reason, indefinite IP blocks are not recommended. + ip: Enter an IPv4 or IPv6 address. You can block entire ranges using the CIDR syntax. Be careful not to lock yourself out! + severities: + no_access: Block access to all resources + sign_up_block: New sign-ups will not be possible + sign_up_requires_approval: New sign-ups will require your approval + severity: Choose what will happen with requests from this IP + rule: + text: Describe a rule or requirement for users on this server. Try to keep it short and simple + sessions: + otp: 'Enter the two-factor code generated by your phone app or use one of your recovery codes:' labels: defaults: context: Filter contexts diff --git a/config/locales/simple_form.eo.yml b/config/locales/simple_form.eo.yml index 9fe2aaece..7537f0a4a 100644 --- a/config/locales/simple_form.eo.yml +++ b/config/locales/simple_form.eo.yml @@ -234,7 +234,7 @@ eo: custom_css: Propa CSS mascot: Propa maskoto media_cache_retention_period: Audovidaĵkaŝaĵretendauro - profile_directory: Ebligi la profilujon + profile_directory: Ŝalti la profilujon registrations_mode: Kiu povas krei konton require_invite_text: Bezoni kialon por aliĝi show_domain_blocks: Montri domajnblokojn diff --git a/config/locales/simple_form.es-MX.yml b/config/locales/simple_form.es-MX.yml index 28842d3a6..0f0f5bb07 100644 --- a/config/locales/simple_form.es-MX.yml +++ b/config/locales/simple_form.es-MX.yml @@ -18,6 +18,8 @@ es-MX: disable: Evitar que el usuario utilice su cuenta, pero no eliminar ni ocultar sus contenidos. none: Utilizar esto para enviar una advertencia al usuario, sin poner en marcha ninguna otra acción. sensitive: Forzar que todos los archivos multimedia de este usuario sean marcados como sensibles. + silence: Evita que el usuario pueda publicar con visibilidad pública, y oculta sus publicaciones y notificaciones a personas que no lo siguen. Cierra todas las denuncias contra esta cuenta. + suspend: Evita cualquier interacción desde o hacia esta cuenta y elimina su contenido. Reversible en 30 días. Cierra todas las denuncias contra esta cuenta. warning_preset_id: Opcional. Aún puede añadir texto personalizado al final de la configuración predefinida announcement: all_day: Cuando está seleccionado solo se mostrarán las fechas del rango de tiempo @@ -72,6 +74,7 @@ es-MX: hide: Ocultar completamente el contenido filtrado, comportándose como si no existiera warn: Ocultar el contenido filtrado detrás de una advertencia mencionando el título del filtro form_admin_settings: + activity_api_enabled: Conteo de publicaciones publicadas localmente, usuarios activos, y nuevos registros en periodos semanales backups_retention_period: Mantener los archivos de usuario generados durante el número de días especificado. bootstrap_timeline_accounts: Estas cuentas aparecerán en la parte superior de las recomendaciones de los nuevos usuarios. closed_registrations_message: Mostrado cuando los registros están cerrados @@ -79,6 +82,7 @@ es-MX: custom_css: Puedes aplicar estilos personalizados a la versión web de Mastodon. mascot: Reemplaza la ilustración en la interfaz web avanzada. media_cache_retention_period: Los archivos multimedia descargados se eliminarán después del número especificado de días cuando se establezca un valor positivo, y se redescargarán bajo demanda. + peers_api_enabled: Una lista de nombres de dominio que este servidor ha encontrado en el fediverso. Aquí no se incluye ningún dato sobre si usted federa con un servidor determinado, sólo que su servidor lo sabe. Esto es utilizado por los servicios que recopilan estadísticas sobre la federación en un sentido general. profile_directory: El directorio de perfiles lista a todos los usuarios que han optado por que su cuenta pueda ser descubierta. require_invite_text: Cuando los registros requieren aprobación manual, hace obligatoria la entrada de texto "¿Por qué quieres unirte?" en lugar de opcional site_contact_email: Cómo la gente puede ponerse en contacto contigo para consultas legales o de ayuda. @@ -227,6 +231,7 @@ es-MX: hide: Ocultar completamente warn: Ocultar con una advertencia form_admin_settings: + activity_api_enabled: Publicar estadísticas locales acerca de la actividad de usuario en la API backups_retention_period: Período de retención del archivo de usuario bootstrap_timeline_accounts: Recomendar siempre estas cuentas a nuevos usuarios closed_registrations_message: Mensaje personalizado cuando los registros no están disponibles @@ -234,6 +239,7 @@ es-MX: custom_css: CSS personalizado mascot: Mascota personalizada (legado) media_cache_retention_period: Período de retención de caché multimedia + peers_api_enabled: Publicar lista de servidores descubiertos en la API profile_directory: Habilitar directorio de perfiles registrations_mode: Quién puede registrarse require_invite_text: Requerir una razón para unirse diff --git a/config/locales/simple_form.fi.yml b/config/locales/simple_form.fi.yml index 1a380b00d..49e3962b5 100644 --- a/config/locales/simple_form.fi.yml +++ b/config/locales/simple_form.fi.yml @@ -72,6 +72,7 @@ fi: hide: Piilota suodatettu sisältö kokonaan ja käyttäydy ikään kuin sitä ei olisi olemassa warn: Piilota suodatettu sisältö varoituksen taakse, jossa mainitaan suodattimen otsikko form_admin_settings: + activity_api_enabled: Paikallisesti julkaistujen julkaisujen, aktiivisten käyttäjien ja rekisteröitymisten viikoittainen määrä backups_retention_period: Säilytä luodut arkistot määritetyn määrän päiviä. bootstrap_timeline_accounts: Nämä tilit kiinnitetään uusien käyttäjien suositusten yläpuolelle. closed_registrations_message: Näkyy, kun ilmoittautuminen on suljettu @@ -79,6 +80,7 @@ fi: custom_css: Voit käyttää mukautettuja tyylejä Mastodonin verkkoversiossa. mascot: Ohittaa kuvituksen edistyneessä käyttöliittymässä. media_cache_retention_period: Ladatut mediatiedostot poistetaan määritetyn määrän päiviä jälkeen, kun arvo on positiivinen ja ladataan uudelleen pyynnöstä. + peers_api_enabled: Lista verkkotunnuksista, joita tämä palvelin on kohdannut fediversessä. Täällä ei ole tietoja siitä, oletko liitossa tiettyjen palvelinten kanssa, vaan ainoastaan luettelo niistä verkkotunnuksista, joista palvelimesi on ylipäätään tietoinen. Tätä tietoa käytetään palveluissa, jotka keräävät liittotilastoja laajassa merkityksessä. profile_directory: Profiilihakemisto lueteloi kaikki käyttäjät, jotka ovat ilmoittaneet olevansa löydettävissä. require_invite_text: Kun kirjautuminen vaatii manuaalisen hyväksynnän, tee ”Miksi haluat liittyä?” teksti syötetään pakolliseksi eikä vapaaehtoiseksi site_contact_email: Kuinka ihmiset voivat tavoittaa sinut oikeudellisissa tai tukikysymyksissä. @@ -227,6 +229,7 @@ fi: hide: Piilota kokonaan warn: Piilota varoituksella form_admin_settings: + activity_api_enabled: Julkaise yhteenlasketut tilastot käyttäjätoiminnasta rajapinnassa backups_retention_period: Käyttäjän arkiston säilytysaika bootstrap_timeline_accounts: Suosittele aina näitä tilejä uusille käyttäjille closed_registrations_message: Mukautettu viesti, kun kirjautumisia ei ole saatavilla @@ -234,6 +237,7 @@ fi: custom_css: Mukautettu CSS mascot: Mukautettu maskotti (legacy) media_cache_retention_period: Median välimuistin säilytysaika + peers_api_enabled: Julkaise löydettyjen instanssien luettelo ohjelmointirajapinnassa profile_directory: Ota profiilihakemisto käyttöön registrations_mode: Kuka voi rekisteröityä require_invite_text: Vaadi syy liittyä diff --git a/config/locales/simple_form.fr.yml b/config/locales/simple_form.fr.yml index 6a657d02a..d9398ff88 100644 --- a/config/locales/simple_form.fr.yml +++ b/config/locales/simple_form.fr.yml @@ -3,7 +3,7 @@ fr: simple_form: hints: account_alias: - acct: Spécifiez l’identifiant@domaine du compte que vous souhaitez faire migrer + acct: Spécifiez le nom d'utilisateur@domaine du compte à partir duquel vous souhaitez migrer account_migration: acct: Spécifiez l’identifiant@domaine du compte vers lequel vous souhaitez migrer account_warning_preset: @@ -18,6 +18,8 @@ fr: disable: Empêcher l’utilisateur·rice d’utiliser son compte, mais ne pas supprimer ou masquer son contenu. none: Utilisez ceci pour envoyer un avertissement à l’utilisateur·rice, sans déclencher aucune autre action. sensitive: Forcer toutes les pièces jointes de cet·te utilisateur·rice à être signalées comme sensibles. + silence: Empêcher l'utilisateur⋅rice de publier des messages en visibilité publique et cacher tous ses messages et notifications aux comptes non abonnés. Cloture tous les signalements concernant ce compte. + suspend: Empêcher toute interaction depuis ou vers ce compte et supprimer son contenu. Réversible dans les 30 jours. Cloture tous les signalements concernant ce compte. warning_preset_id: Facultatif. Vous pouvez toujours ajouter un texte personnalisé à la fin de la présélection announcement: all_day: Coché, seules les dates de l’intervalle de temps seront affichées @@ -72,6 +74,7 @@ fr: hide: Cacher complètement le contenu filtré, faire comme s'il n'existait pas warn: Cacher le contenu filtré derrière un avertissement mentionnant le nom du filtre form_admin_settings: + activity_api_enabled: Nombre de messages publiés localement, de comptes actifs et de nouvelles inscriptions par tranche hebdomadaire backups_retention_period: Conserve les archives générées par l'utilisateur selon le nombre de jours spécifié. bootstrap_timeline_accounts: Ces comptes seront épinglés en tête de liste des recommandations pour les nouveaux utilisateurs. closed_registrations_message: Affiché lorsque les inscriptions sont fermées @@ -79,6 +82,7 @@ fr: custom_css: Vous pouvez appliquer des styles personnalisés sur la version Web de Mastodon. mascot: Remplace l'illustration dans l'interface Web avancée. media_cache_retention_period: Les fichiers multimédias téléchargés seront supprimés après le nombre de jours spécifiés lorsque la valeur est positive, et seront téléchargés à nouveau sur demande. + peers_api_enabled: Une liste de noms de domaine que ce serveur a rencontrés dans le fediverse. Aucune donnée indiquant si vous vous fédérez ou non avec un serveur particulier n'est incluse ici, seulement l'information que votre serveur connaît un autre serveur. Cette option est utilisée par les services qui collectent des statistiques sur la fédération en général. profile_directory: L'annuaire des profils répertorie tous les utilisateurs qui ont opté pour être découverts. require_invite_text: Lorsque les inscriptions nécessitent une approbation manuelle, rendre le texte de l’invitation "Pourquoi voulez-vous vous inscrire ?" obligatoire plutôt que facultatif site_contact_email: Comment les personnes peuvent vous joindre pour des demandes de renseignements juridiques ou d'assistance. @@ -227,6 +231,7 @@ fr: hide: Cacher complètement warn: Cacher derrière un avertissement form_admin_settings: + activity_api_enabled: Publie des statistiques agrégées sur l'activité des utilisateur⋅rice⋅s dans l'API backups_retention_period: Période d'archivage utilisateur bootstrap_timeline_accounts: Toujours recommander ces comptes aux nouveaux utilisateurs closed_registrations_message: Message personnalisé lorsque les inscriptions ne sont pas disponibles @@ -234,6 +239,7 @@ fr: custom_css: CSS personnalisé mascot: Mascotte personnalisée (héritée) media_cache_retention_period: Durée de rétention des médias dans le cache + peers_api_enabled: Publie la liste des serveurs découverts dans l'API profile_directory: Activer l’annuaire des profils registrations_mode: Qui peut s’inscrire require_invite_text: Exiger une raison pour s’inscrire diff --git a/config/locales/simple_form.fy.yml b/config/locales/simple_form.fy.yml index e98196bcb..768635912 100644 --- a/config/locales/simple_form.fy.yml +++ b/config/locales/simple_form.fy.yml @@ -82,6 +82,7 @@ fy: custom_css: Jo kinne oanpaste CSS tapasse op de webferzje fan dizze Mastodon-server. mascot: Oerskriuwt de yllustraasje yn de avansearre webomjouwing. media_cache_retention_period: Mediabestannen dy’t fan oare servers download binne wurde nei it opjûne oantal dagen fuortsmiten en wurde op fersyk opnij download. + peers_api_enabled: In list mei domeinnammen, dêr’t dizze server yn fediverse kontakt hân mei hat. Hjir wurdt gjin data dield, oft jo mei in bepaalde server federearrest, mar alinnich, dat jo server dat wit. Dit wurdt foar tsjinsten brûkt, dy’t statistiken oer federaasje yn algemiene sin sammelet. profile_directory: De brûkersgids befettet in list fan alle brûkers dy¥t derfoar keazen hawwe om ûntdekt wurde te kinnen. require_invite_text: Meitsje it ynfoljen fan "Wêrom wolle jo jo hjir registrearje?" ferplicht yn stee fan opsjoneel, wannear’t registraasjes hânmjittich goedkard wurde moatte site_contact_email: Hoe minsken jo berikke kinne foar juridyske fragen of stipe. diff --git a/config/locales/simple_form.ja.yml b/config/locales/simple_form.ja.yml index 5cf72e265..efb5b0a5c 100644 --- a/config/locales/simple_form.ja.yml +++ b/config/locales/simple_form.ja.yml @@ -18,6 +18,8 @@ ja: disable: ユーザーが自分のアカウントを使用できないようにします。コンテンツを削除したり非表示にすることはありません。 none: これを使用すると、他の操作をせずにユーザーに警告を送信できます。 sensitive: このユーザーが添付したメディアを強制的に閲覧注意にする + silence: ユーザーが公開投稿できないようにし、フォローしていない人に投稿や通知が表示されないようにする。このアカウントに対する全ての通報をクローズします。 + suspend: このアカウントとのやりとりを止め、コンテンツを削除します。30日以内は取消可能です。このアカウントに対する全ての通報をクローズします。 warning_preset_id: オプションです。プリセット警告文の末尾に任意の文字列を追加することができます announcement: all_day: 有効化すると、対象期間の箇所に日付だけが表示されます @@ -72,6 +74,7 @@ ja: hide: フィルタリングしたコンテンツを完全に隠し、あたかも存在しないかのようにします warn: フィルタリングされたコンテンツを、フィルタータイトルの警告の後ろに隠します。 form_admin_settings: + activity_api_enabled: 週単位でローカルで公開された投稿数、アクティブユーザー数、新規登録者数を表示する backups_retention_period: 生成されたユーザーのアーカイブを指定した日数の間保持します。 bootstrap_timeline_accounts: これらのアカウントは、新しいユーザーのフォロー推奨リストの一番上にピン留めされます。 closed_registrations_message: アカウント作成を停止している時に表示されます @@ -79,6 +82,7 @@ ja: custom_css: ウェブ版のMastodonでカスタムスタイルを適用できます。 mascot: 上級者向けWebインターフェースのイラストを上書きする。 media_cache_retention_period: 正の値に設定されている場合、ダウンロードされたメディアファイルは指定された日数の後に削除され、リクエストに応じて再ダウンロードされます。 + peers_api_enabled: このサーバーが Fediverse で遭遇したドメイン名のリストです。このサーバーが知っているだけで、特定のサーバーと連合しているかのデータは含まれません。これは一般的に Fediverse に関する統計情報を収集するサービスによって使用されます。 profile_directory: プロフィールディレクトリには、掲載するよう設定したすべてのユーザーが一覧表示されます。 require_invite_text: アカウント登録が承認制の場合、「意気込みをお聞かせください」のテキストの入力を必須にする site_contact_email: 法律またはサポートに関する問い合わせ先 @@ -227,6 +231,7 @@ ja: hide: 完全に隠す warn: 警告付きで隠す form_admin_settings: + activity_api_enabled: APIでユーザーアクティビティに関する集計統計を公開する backups_retention_period: ユーザーアーカイブの保持期間 bootstrap_timeline_accounts: 新規ユーザーに必ずおすすめするアカウント closed_registrations_message: サインアップできない場合のカスタムメッセージ @@ -234,6 +239,7 @@ ja: custom_css: カスタムCSS mascot: カスタムマスコット(レガシー) media_cache_retention_period: メディアキャッシュの保持期間 + peers_api_enabled: APIで接続しているサーバーのリストを公開する profile_directory: ディレクトリを有効にする registrations_mode: 新規登録が可能な人 require_invite_text: 意気込み理由の入力を必須にする。 diff --git a/config/locales/simple_form.oc.yml b/config/locales/simple_form.oc.yml index b6e6da78f..566f4f100 100644 --- a/config/locales/simple_form.oc.yml +++ b/config/locales/simple_form.oc.yml @@ -180,9 +180,12 @@ oc: form_admin_settings: custom_css: CSS personalizada media_cache_retention_period: Durada de conservacion dels mèdias en cache + peers_api_enabled: Publicar la lista dels servidors coneguts dins l’API profile_directory: Activar l’annuari de perfils registrations_mode: Qual se pòt marcar require_invite_text: Requerir una rason per s’inscriure + show_domain_blocks: Mostrar los blocatges de domeni + show_domain_blocks_rationale: Afichar perque los domenis foguèron blocats site_contact_email: Adreça de contacte site_contact_username: Nom d’utilizaire de contacte site_extended_description: Descripcion espandida @@ -191,6 +194,9 @@ oc: site_title: Nom del servidor theme: Tèma per defaut thumbnail: Miniatura del servidor + timeline_preview: Permtre l’accès a l’apercebut del flux public sens autentificacion + trendable_by_default: Activar las tendéncias sens revision prealabla + trends: Activar las tendéncias interactions: must_be_follower: Blocar las notificacions del mond que vos sègon pas must_be_following: Blocar las notificacions del mond que seguètz pas @@ -204,9 +210,11 @@ oc: ip: IP severities: no_access: Blocar l’accès + sign_up_block: Blocar las inscripcions sign_up_requires_approval: Limitar las inscripcions severity: Règla notification_emails: + appeal: Qualqu’un a fach apèl de la decision de moderacion digest: Enviar un corrièl recapitulatiu favourite: Enviar un corrièl quand qualqu’un plaça vòstre estatut en favorit follow: Enviar un corrièl quand qualqu’un vos sèc @@ -214,6 +222,8 @@ oc: mention: Enviar un corrièl quand qualqu’un vos menciona pending_account: Enviar un corrièl quand cal validar un compte novèl reblog: Enviar un corrièl quand qualqu’un tòrna partejar vòstre estatut + report: Senhalament novèl somés + trending_tag: Nòva tendéncia requerís una supervision rule: text: Règla tag: @@ -225,9 +235,13 @@ oc: role: Ròtle user_role: color: Color del badge + highlighted: Afichar lo ròtle coma badge pels perfils utilizaire name: Nom permissions_as_keys: Autorizacions position: Prioritat + webhook: + events: Eveniments activats + url: URL de ponch de terminason 'no': Non not_recommended: Pas recomandat recommended: Recomandat diff --git a/config/locales/simple_form.pt-BR.yml b/config/locales/simple_form.pt-BR.yml index e7abf26a3..02e317ab6 100644 --- a/config/locales/simple_form.pt-BR.yml +++ b/config/locales/simple_form.pt-BR.yml @@ -18,6 +18,8 @@ pt-BR: disable: Impede o usuário de usar a conta, porém sem excluí-la ou suspendê-la. none: Use isto para enviar uma advertência ao usuário, sem nenhuma outra ação. sensitive: Marca todas as mídias do usuário como sensível. + silence: Impede o usuário de enviar postagens visualmente públicas, além de ocultar suas publicações e notificações dos que não o seguem. Ademais, fecha todas as denúncias contra esta conta. + suspend: Impede qualquer interação de ou para esta conta e exclui seu conteúdo. Reversível dentro de 30 dias. Ademais, fecha todas as denúncias contra esta conta. warning_preset_id: Opcional. Você pode adicionar texto personalizado no final da advertência pré-definida announcement: all_day: Quando marcada, apenas as datas do período serão mostradas @@ -72,6 +74,7 @@ pt-BR: hide: Esconder completamente o conteúdo filtrado, comportando-se como se ele não existisse warn: Ocultar o conteúdo filtrado por trás de um aviso mencionando o título do filtro form_admin_settings: + activity_api_enabled: Contagem de publicações locais, usuários ativos e novos usuários semanais backups_retention_period: Manter os arquivos de usuário gerados pelo número de dias especificados. bootstrap_timeline_accounts: Estas contas serão fixadas no topo das recomendações de novos usuários para seguir. closed_registrations_message: Exibido quando as inscrições estiverem fechadas @@ -79,7 +82,9 @@ pt-BR: custom_css: Você pode aplicar estilos personalizados na versão da web do Mastodon. mascot: Substitui a ilustração na interface web avançada. media_cache_retention_period: Os arquivos de mídia baixados serão excluídos após o número especificado de dias, quando definido para um valor positivo, e baixados novamente na demanda. + peers_api_enabled: Uma lista de nomes de domínio que este servidor encontrou no "fediverse". Nenhum dado é incluído aqui sobre se você concorda com os padroes operacionais de um determinado servidor, apenas que o seu servidor sabe disso. Esta ferramenta é utilizado por serviços que recolhem estatísticas sob as normas da federação (grupo de empresas que concordam sob paramentros operacionais específicos), em termos gerais. profile_directory: O diretório de perfis lista todos os usuários que optaram por permitir que suas contas sejam descobertas. + require_invite_text: 'Quando o cadastro de novas contas exigir aprovação manual, tornar obrigatório, ao invés de opcional, o texto de solicitação de convite: "Por que você deseja ingressar nessa comunidade?"' site_contact_email: Como as pessoas podem entrar em contato com você para obter informações legais ou de suporte. site_contact_username: Como as pessoas podem chegar até você no Mastodon. site_extended_description: Quaisquer informações adicionais que possam ser úteis para os visitantes e seus usuários. Podem ser estruturadas com formato Markdown. @@ -226,6 +231,7 @@ pt-BR: hide: Ocultar completamente warn: Ocultar com um aviso form_admin_settings: + activity_api_enabled: Publicar estatísticas agregadas sobre atividade de usuários na API backups_retention_period: Período de retenção do arquivo de usuário bootstrap_timeline_accounts: Sempre recomendar essas contas para novos usuários closed_registrations_message: Mensagem personalizada quando inscrições não estão disponíveis @@ -233,6 +239,7 @@ pt-BR: custom_css: CSS personalizável mascot: Mascote personalizado (legado) media_cache_retention_period: Período de retenção do cachê de mídia + peers_api_enabled: Publicar lista de instâncias de servidor descobertas na API profile_directory: Ativar diretório de perfis registrations_mode: Quem pode se inscrever require_invite_text: Exigir uma razão para entrar diff --git a/config/locales/simple_form.vi.yml b/config/locales/simple_form.vi.yml index 4b632ae2e..fb2ca90fd 100644 --- a/config/locales/simple_form.vi.yml +++ b/config/locales/simple_form.vi.yml @@ -74,6 +74,7 @@ vi: hide: Ẩn hoàn toàn nội dung đã lọc, hoạt động như thể nó không tồn tại warn: Ẩn nội dung đã lọc đằng sau một cảnh báo đề cập đến tiêu đề của bộ lọc form_admin_settings: + activity_api_enabled: Số lượng tút được đăng trong máy chủ, người dùng đang hoạt động và đăng ký mới hàng tuần backups_retention_period: Lưu trữ dữ liệu người dùng đã tạo trong số ngày được chỉ định. bootstrap_timeline_accounts: Những người này sẽ được ghim vào đầu các gợi ý theo dõi của người mới. closed_registrations_message: Được hiển thị khi đóng đăng ký @@ -81,6 +82,7 @@ vi: custom_css: Bạn có thể tùy chỉnh phong cách trên bản web của Mastodon. mascot: Ghi đè hình minh họa trong giao diện web nâng cao. media_cache_retention_period: Media đã tải xuống sẽ bị xóa sau số ngày được chỉ định và sẽ tải xuống lại theo yêu cầu. + peers_api_enabled: Danh sách các máy chủ khác mà máy chủ này đã liên hợp. Không có dữ liệu nào được đưa vào đây về việc bạn có liên kết với một máy chủ nhất định hay không, chỉ là máy chủ của bạn biết về nó. Điều này được sử dụng bởi các dịch vụ thu thập số liệu thống kê về liên kết theo nghĩa chung. profile_directory: Liệt kê tất cả người đã chọn tham gia để có thể khám phá. require_invite_text: Khi đăng ký yêu cầu phê duyệt thủ công, hãy đặt câu hỏi "Tại sao bạn muốn tham gia?" nhập văn bản bắt buộc thay vì tùy chọn site_contact_email: Cách mọi người có thể liên hệ với bạn khi có thắc mắc về pháp lý hoặc hỗ trợ. @@ -229,6 +231,7 @@ vi: hide: Ẩn toàn bộ warn: Ẩn kèm theo cảnh báo form_admin_settings: + activity_api_enabled: Công khai số liệu thống kê tổng hợp về hoạt động của người dùng trong API backups_retention_period: Thời hạn lưu trữ nội dung người dùng sao lưu bootstrap_timeline_accounts: Luôn đề xuất những người này đến người mới closed_registrations_message: Thông báo tùy chỉnh khi tắt đăng ký @@ -236,6 +239,7 @@ vi: custom_css: Tùy chỉnh CSS mascot: Tùy chỉnh linh vật (kế thừa) media_cache_retention_period: Thời hạn lưu trữ cache media + peers_api_enabled: Công khai danh sách các máy chủ được phát hiện trong API profile_directory: Cho phép hiện danh sách thành viên registrations_mode: Ai có thể đăng ký require_invite_text: Yêu cầu lí do đăng ký diff --git a/config/locales/sk.yml b/config/locales/sk.yml index 13a2e1f54..58a689b0c 100644 --- a/config/locales/sk.yml +++ b/config/locales/sk.yml @@ -220,9 +220,11 @@ sk: change_email_user_html: "%{name} zmenil/a emailovú adresu užívateľa %{target}" confirm_user_html: "%{name} potvrdil/a emailovú adresu používateľa %{target}" create_account_warning_html: "%{name} poslal/a upozornenie užívateľovi %{target}" + demote_user_html: "%{name} degradoval/a užívateľa %{target}" destroy_canonical_email_block_html: "%{name} odblokoval/i email z hašom %{target}" destroy_domain_allow_html: "%{name} zakázal/a federáciu s doménou %{target}" destroy_domain_block_html: "%{name} odblokoval/i doménu %{target}" + destroy_ip_block_html: "%{name} vymazal/a pravidlo pre IP %{target}" destroy_status_html: "%{name} zmazal/a príspevok od %{target}" deleted_account: zmazaný účet filter_by_action: Filtruj podľa úkonu @@ -344,6 +346,8 @@ sk: export_domain_allows: no_file: Nevybraný žiaden súbor export_domain_blocks: + import: + title: Nahraj zákazy domén new: title: Nahraj zákazy domén no_file: Nevybraný žiaden súbor @@ -487,10 +491,13 @@ sk: categories: administration: Spravovanie invites: Pozvánky + delete: Vymaž edit: Uprav postavenie %{name} privileges: administrator: Správca + delete_user_data: Vymaž užívateľské dáta invite_users: Pozvi užívateľov + manage_announcements: Spravuj oboznámenia manage_appeals: Spravuj námietky manage_roles: Spravuj postavenia manage_users: Spravuj užívateľov @@ -505,29 +512,42 @@ sk: appearance: title: Vzhľad discovery: + public_timelines: Verejné časové osi publish_discovered_servers: Zverejni objavené servery publish_statistics: Zverejni štatistiky + title: Objavovanie + trends: Trendy domain_blocks: all: Všetkým disabled: Nikomu users: Prihláseným, miestnym užívateľom + registrations: + title: Registrácie registrations_mode: modes: approved: Pre registráciu je nutné povolenie none: Nikto sa nemôže registrovať open: Ktokoľvek sa môže zaregistrovať + title: Nastavenia servera site_uploads: delete: Vymaž nahratý súbor destroyed_msg: Nahratie bolo zo stránky úspešne vymazané! statuses: + account: Autor + application: Aplikácia back_to_account: Späť na účet + batch: + report: Hlásenie deleted: Vymazané + favourites: Obľúbené history: História verzií in_reply_to: Odpoveď na language: Jazyk media: title: Médiá no_status_selected: Žiadne príspevky neboli zmenené, keďže si žiadne nemal/a zvolené + open: Otvor príspevok + original_status: Pôvodný príspevok status_changed: Príspevok bol zmenený title: Príspevky na účte trending: Populárne @@ -558,6 +578,10 @@ sk: preview_card_providers: title: Zverejňovatelia rejected: Odmietnuté + statuses: + disallow: Zakáž príspevok + disallow_account: Zakáž autora + title: Populárne príspevky tags: title: Populárne štítky trending_rank: 'Populárne #%{rank}' diff --git a/config/locales/sl.yml b/config/locales/sl.yml index 71e96af91..d008543ad 100644 --- a/config/locales/sl.yml +++ b/config/locales/sl.yml @@ -1424,6 +1424,7 @@ sl: activity: Dejavnost računa confirm_follow_selected_followers: Ali ste prepričani, da želite slediti izbranim sledilcem? confirm_remove_selected_followers: Ali ste prepričani, da želite odstraniti izbrane sledilce? + confirm_remove_selected_follows: Ali ste prepričani, da želite odstraniti izbrana sledenja? dormant: Skrit follow_selected_followers: Sledi izbranim sledilcem followers: Sledilci diff --git a/config/locales/vi.yml b/config/locales/vi.yml index 437ac8ac1..43e000721 100644 --- a/config/locales/vi.yml +++ b/config/locales/vi.yml @@ -700,6 +700,8 @@ vi: preamble: Hiển thị nội dung thú vị là công cụ để thu hút người dùng mới, những người có thể không quen bất kỳ ai trong Mastodon. Kiểm soát cách các tính năng khám phá hoạt động trên máy chủ của bạn. profile_directory: Cộng đồng public_timelines: Bảng tin + publish_discovered_servers: Công khai các máy chủ được phát hiện + publish_statistics: Công khai số liệu thống kê title: Khám phá trends: Thịnh hành domain_blocks: @@ -1342,6 +1344,9 @@ vi: unrecognized_emoji: không phải là emoji relationships: activity: Tương tác + confirm_follow_selected_followers: Bạn có chắc muốn theo dõi những người đã chọn? + confirm_remove_selected_followers: Bạn có chắc muốn bỏ theo dõi những người đã chọn? + confirm_remove_selected_follows: Bạn có chắc muốn xoá những người theo dõi bạn đã chọn không? dormant: Chưa follow_selected_followers: Theo dõi những người đã chọn followers: Người theo dõi diff --git a/package.json b/package.json index 73423900f..3542f45ff 100644 --- a/package.json +++ b/package.json @@ -25,12 +25,12 @@ "private": true, "dependencies": { "@babel/core": "^7.20.12", - "@babel/plugin-proposal-decorators": "^7.20.7", + "@babel/plugin-proposal-decorators": "^7.20.13", "@babel/plugin-transform-react-inline-elements": "^7.18.6", "@babel/plugin-transform-runtime": "^7.19.6", "@babel/preset-env": "^7.20.2", "@babel/preset-react": "^7.18.6", - "@babel/runtime": "^7.20.7", + "@babel/runtime": "^7.20.13", "@gamestdio/websocket": "^0.3.2", "@github/webauthn-json": "^0.5.7", "@rails/ujs": "^6.1.7", @@ -39,7 +39,7 @@ "atrament": "0.2.4", "arrow-key-navigation": "^1.2.0", "autoprefixer": "^9.8.8", - "axios": "^1.2.2", + "axios": "^1.2.3", "babel-loader": "^8.3.0", "babel-plugin-lodash": "^3.3.4", "babel-plugin-preval": "^5.1.0", @@ -75,7 +75,7 @@ "intl-relativeformat": "^6.4.3", "is-nan": "^1.3.2", "js-yaml": "^4.1.0", - "jsdom": "^21.0.0", + "jsdom": "^21.1.0", "lodash": "^4.17.21", "mark-loader": "^0.1.6", "marky": "^1.2.5", @@ -117,7 +117,7 @@ "regenerator-runtime": "^0.13.11", "requestidlecallback": "^0.3.0", "reselect": "^4.1.7", - "rimraf": "^4.0.7", + "rimraf": "^4.1.1", "sass": "^1.57.1", "sass-loader": "^10.2.0", "stacktrace-js": "^2.0.2", @@ -152,7 +152,7 @@ "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsx-a11y": "~6.6.1", "eslint-plugin-promise": "~6.1.1", - "eslint-plugin-react": "~7.31.11", + "eslint-plugin-react": "~7.32.1", "jest": "^29.3.1", "jest-environment-jsdom": "^29.3.1", "postcss-scss": "^4.0.6", @@ -170,6 +170,6 @@ }, "optionalDependencies": { "bufferutil": "^4.0.7", - "utf-8-validate": "^6.0.0" + "utf-8-validate": "^6.0.1" } } diff --git a/spec/controllers/api/v1/push/subscriptions_controller_spec.rb b/spec/controllers/api/v1/push/subscriptions_controller_spec.rb index 534d02879..9487251e1 100644 --- a/spec/controllers/api/v1/push/subscriptions_controller_spec.rb +++ b/spec/controllers/api/v1/push/subscriptions_controller_spec.rb @@ -61,6 +61,10 @@ describe Api::V1::Push::SubscriptionsController do post :create, params: create_payload expect(Web::PushSubscription.where(endpoint: create_payload[:subscription][:endpoint]).count).to eq 1 end + + it 'returns the expected JSON' do + expect(body_as_json.with_indifferent_access).to include({ endpoint: create_payload[:subscription][:endpoint], alerts: {}, policy: 'all' }) + end end describe 'PUT #update' do @@ -78,6 +82,10 @@ describe Api::V1::Push::SubscriptionsController do expect(push_subscription.data['alerts'][type]).to eq(alerts_payload[:data][:alerts][type.to_sym].to_s) end end + + it 'returns the expected JSON' do + expect(body_as_json.with_indifferent_access).to include({ endpoint: create_payload[:subscription][:endpoint], alerts: alerts_payload[:data][:alerts], policy: alerts_payload[:data][:policy] }) + end end describe 'DELETE #destroy' do diff --git a/spec/models/user_spec.rb b/spec/models/user_spec.rb index a7da31e60..4b3d6101f 100644 --- a/spec/models/user_spec.rb +++ b/spec/models/user_spec.rb @@ -142,10 +142,136 @@ RSpec.describe User, type: :model do end describe '#confirm' do - it 'sets email to unconfirmed_email' do - user = Fabricate.build(:user, confirmed_at: Time.now.utc, unconfirmed_email: 'new-email@example.com') - user.confirm - expect(user.email).to eq 'new-email@example.com' + let(:new_email) { 'new-email@example.com' } + + subject { user.confirm } + + before do + allow(TriggerWebhookWorker).to receive(:perform_async) + end + + context 'when the user is already confirmed' do + let!(:user) { Fabricate(:user, confirmed_at: Time.now.utc, approved: true, unconfirmed_email: new_email) } + + it 'sets email to unconfirmed_email' do + expect { subject }.to change { user.reload.email }.to(new_email) + end + + it 'does not trigger the account.approved Web Hook' do + subject + expect(TriggerWebhookWorker).not_to have_received(:perform_async).with('account.approved', 'Account', user.account_id) + end + end + + context 'when the user is a new user' do + let(:user) { Fabricate(:user, confirmed_at: nil, unconfirmed_email: new_email) } + + context 'when the user is already approved' do + around(:example) do |example| + registrations_mode = Setting.registrations_mode + Setting.registrations_mode = 'approved' + + example.run + + Setting.registrations_mode = registrations_mode + end + + before do + user.approve! + end + + it 'sets email to unconfirmed_email' do + expect { subject }.to change { user.reload.email }.to(new_email) + end + + it 'triggers the account.approved Web Hook' do + user.confirm + expect(TriggerWebhookWorker).to have_received(:perform_async).with('account.approved', 'Account', user.account_id).once + end + end + + context 'when the user does not require explicit approval' do + around(:example) do |example| + registrations_mode = Setting.registrations_mode + Setting.registrations_mode = 'open' + + example.run + + Setting.registrations_mode = registrations_mode + end + + it 'sets email to unconfirmed_email' do + expect { subject }.to change { user.reload.email }.to(new_email) + end + + it 'triggers the account.approved Web Hook' do + user.confirm + expect(TriggerWebhookWorker).to have_received(:perform_async).with('account.approved', 'Account', user.account_id).once + end + end + + context 'when the user requires explicit approval but is not approved' do + around(:example) do |example| + registrations_mode = Setting.registrations_mode + Setting.registrations_mode = 'approved' + + example.run + + Setting.registrations_mode = registrations_mode + end + + it 'sets email to unconfirmed_email' do + expect { subject }.to change { user.reload.email }.to(new_email) + end + + it 'does not trigger the account.approved Web Hook' do + subject + expect(TriggerWebhookWorker).to_not have_received(:perform_async).with('account.approved', 'Account', user.account_id) + end + end + end + end + + describe '#approve!' do + subject { user.approve! } + + around(:example) do |example| + registrations_mode = Setting.registrations_mode + Setting.registrations_mode = 'approved' + + example.run + + Setting.registrations_mode = registrations_mode + end + + before do + allow(TriggerWebhookWorker).to receive(:perform_async) + end + + context 'when the user is already confirmed' do + let(:user) { Fabricate(:user, confirmed_at: Time.now.utc, approved: false) } + + it 'sets the approved flag' do + expect { subject }.to change { user.reload.approved? }.to(true) + end + + it 'triggers the account.approved Web Hook' do + subject + expect(TriggerWebhookWorker).to have_received(:perform_async).with('account.approved', 'Account', user.account_id).once + end + end + + context 'when the user is not confirmed' do + let(:user) { Fabricate(:user, confirmed_at: nil, approved: false) } + + it 'sets the approved flag' do + expect { subject }.to change { user.reload.approved? }.to(true) + end + + it 'does not trigger the account.approved Web Hook' do + subject + expect(TriggerWebhookWorker).not_to have_received(:perform_async).with('account.approved', 'Account', user.account_id) + end end end diff --git a/spec/services/verify_link_service_spec.rb b/spec/services/verify_link_service_spec.rb index 391560f1c..8f65f3a84 100644 --- a/spec/services/verify_link_service_spec.rb +++ b/spec/services/verify_link_service_spec.rb @@ -150,5 +150,27 @@ RSpec.describe VerifyLinkService, type: :service do expect(field.verified?).to be true end end + + context 'when the link contains a link with a missing protocol slash' do + # This was seen in the wild where a user had three pages: + # 1. their mastodon profile, which linked to github and the personal website + # 2. their personal website correctly linking back to mastodon + # 3. a github profile that was linking to the personal website, but with + # a malformed protocol of http:/ + # + # This caused link verification between the mastodon profile and the + # website to fail. + # + # apparently github allows the user to enter website URLs with a single + # slash and makes no attempts to correct that. + let(:html) { '<a href="http:/unrelated.example">Hello</a>' } + + it 'does not crash' do + # We could probably put more effort into perhaps auto-correcting the + # link and following it anyway, but at the very least we shouldn't let + # exceptions bubble up + expect(field.verified?).to be false + end + end end end diff --git a/spec/validators/email_mx_validator_spec.rb b/spec/validators/email_mx_validator_spec.rb index 4feedd0c7..6640d6058 100644 --- a/spec/validators/email_mx_validator_spec.rb +++ b/spec/validators/email_mx_validator_spec.rb @@ -28,6 +28,33 @@ describe EmailMxValidator do end end + it 'adds no error if there are DNS records for the e-mail domain' do + resolver = double + + allow(resolver).to receive(:getresources).with('example.com', Resolv::DNS::Resource::IN::MX).and_return([]) + allow(resolver).to receive(:getresources).with('example.com', Resolv::DNS::Resource::IN::A).and_return([Resolv::DNS::Resource::IN::A.new('192.0.2.42')]) + allow(resolver).to receive(:getresources).with('example.com', Resolv::DNS::Resource::IN::AAAA).and_return([]) + allow(resolver).to receive(:timeouts=).and_return(nil) + allow(Resolv::DNS).to receive(:open).and_yield(resolver) + + subject.validate(user) + expect(user.errors).not_to have_received(:add) + end + + it 'adds an error if the email domain name contains empty labels' do + resolver = double + + allow(resolver).to receive(:getresources).with('example..com', Resolv::DNS::Resource::IN::MX).and_return([]) + allow(resolver).to receive(:getresources).with('example..com', Resolv::DNS::Resource::IN::A).and_return([Resolv::DNS::Resource::IN::A.new('192.0.2.42')]) + allow(resolver).to receive(:getresources).with('example..com', Resolv::DNS::Resource::IN::AAAA).and_return([]) + allow(resolver).to receive(:timeouts=).and_return(nil) + allow(Resolv::DNS).to receive(:open).and_yield(resolver) + + user = double(email: 'foo@example..com', sign_up_ip: '1.2.3.4', errors: double(add: nil)) + subject.validate(user) + expect(user.errors).to have_received(:add) + end + it 'adds an error if there are no DNS records for the e-mail domain' do resolver = double diff --git a/yarn.lock b/yarn.lock index 508cd0460..f28878c0d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -120,10 +120,10 @@ lru-cache "^5.1.1" semver "^6.3.0" -"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.20.7": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.20.7.tgz#d0e1f8d7e4ed5dac0389364d9c0c191d948ade6f" - integrity sha512-LtoWbDXOaidEf50hmdDqn9g8VEzsorMexoWMQdQODbvmqYmaF23pBP5VNPAGIFHsFQCIeKokDiz3CH5Y2jlY6w== +"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.20.12": + version "7.20.12" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.20.12.tgz#4349b928e79be05ed2d1643b20b99bb87c503819" + integrity sha512-9OunRkbT0JQcednL0UFvbfXpAsUXiGjUk0a7sN8fUXX7Mue79cUSMjHGDRRi/Vz9vYlpIhLV5fMD5dKoMhhsNQ== dependencies: "@babel/helper-annotate-as-pure" "^7.18.6" "@babel/helper-environment-visitor" "^7.18.9" @@ -131,6 +131,7 @@ "@babel/helper-member-expression-to-functions" "^7.20.7" "@babel/helper-optimise-call-expression" "^7.18.6" "@babel/helper-replace-supers" "^7.20.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" "@babel/helper-split-export-declaration" "^7.18.6" "@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.19.0": @@ -256,6 +257,13 @@ dependencies: "@babel/types" "^7.18.9" +"@babel/helper-skip-transparent-expression-wrappers@^7.20.0": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz#fbe4c52f60518cab8140d77101f0e63a8a230684" + integrity sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg== + dependencies: + "@babel/types" "^7.20.0" + "@babel/helper-split-export-declaration@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz#7367949bc75b20c6d5a5d4a97bba2824ae8ef075" @@ -354,12 +362,12 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-class-static-block" "^7.14.5" -"@babel/plugin-proposal-decorators@^7.20.7": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.20.7.tgz#05d37453c2ce818f3e47bbeda9468c8de947eecc" - integrity sha512-JB45hbUweYpwAGjkiM7uCyXMENH2lG+9r3G2E+ttc2PRXAoEkpfd/KW5jDg4j8RS6tLtTG1jZi9LbHZVSfs1/A== +"@babel/plugin-proposal-decorators@^7.20.13": + version "7.20.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.20.13.tgz#b6bea3b18e88443688fa7ed2cc06d2c60da9f4a7" + integrity sha512-7T6BKHa9Cpd7lCueHBBzP0nkXNina+h5giOZw+a8ZpMfPFY19VjJAjIxyFHuWkhCWgL6QMqRiY/wB1fLXzm6Mw== dependencies: - "@babel/helper-create-class-features-plugin" "^7.20.7" + "@babel/helper-create-class-features-plugin" "^7.20.12" "@babel/helper-plugin-utils" "^7.20.2" "@babel/helper-replace-supers" "^7.20.7" "@babel/helper-split-export-declaration" "^7.18.6" @@ -1029,10 +1037,10 @@ dependencies: regenerator-runtime "^0.12.0" -"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.10.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.13.10", "@babel/runtime@^7.13.8", "@babel/runtime@^7.15.4", "@babel/runtime@^7.18.9", "@babel/runtime@^7.2.0", "@babel/runtime@^7.20.7", "@babel/runtime@^7.3.1", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3", "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.20.7.tgz#fcb41a5a70550e04a7b708037c7c32f7f356d8fd" - integrity sha512-UF0tvkUtxwAgZ5W/KrkHf0Rn0fdnLDU9ScxBrEVNUprE/MzirjK4MJUX1/BVDv00Sv8cljtukVK1aky++X1SjQ== +"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.10.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.13.10", "@babel/runtime@^7.13.8", "@babel/runtime@^7.15.4", "@babel/runtime@^7.18.9", "@babel/runtime@^7.2.0", "@babel/runtime@^7.20.13", "@babel/runtime@^7.3.1", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3", "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": + version "7.20.13" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.20.13.tgz#7055ab8a7cff2b8f6058bf6ae45ff84ad2aded4b" + integrity sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA== dependencies: regenerator-runtime "^0.13.11" @@ -1061,7 +1069,7 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.0.0-beta.49", "@babel/types@^7.18.10", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.20.2", "@babel/types@^7.20.7", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": +"@babel/types@^7.0.0", "@babel/types@^7.0.0-beta.49", "@babel/types@^7.18.10", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.20.0", "@babel/types@^7.20.2", "@babel/types@^7.20.7", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.20.7.tgz#54ec75e252318423fc07fb644dc6a58a64c09b7f" integrity sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg== @@ -2536,10 +2544,10 @@ axe-core@^4.4.3: resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.4.3.tgz#11c74d23d5013c0fa5d183796729bc3482bd2f6f" integrity sha512-32+ub6kkdhhWick/UjvEwRchgoetXqTK14INLqbGm5U2TzBkBNF3nQtLYm8ovxSkQWArjEQvftCKryjZaATu3w== -axios@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/axios/-/axios-1.2.2.tgz#72681724c6e6a43a9fea860fc558127dbe32f9f1" - integrity sha512-bz/J4gS2S3I7mpN/YZfGFTqhXTYzRho8Ay38w2otuuDR322KzFIWm/4W2K6gIwvWaws5n+mnb7D1lN9uD+QH6Q== +axios@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.2.3.tgz#31a3d824c0ebf754a004b585e5f04a5f87e6c4ff" + integrity sha512-pdDkMYJeuXLZ6Xj/Q5J3Phpe+jbGdsSzlQaFVkMQzRUL05+6+tetX8TV3p4HrU4kzuO9bt+io/yGQxuyxA/xcw== dependencies: follow-redirects "^1.15.0" form-data "^4.0.0" @@ -4487,10 +4495,10 @@ eslint-plugin-promise@~6.1.1: resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-6.1.1.tgz#269a3e2772f62875661220631bd4dafcb4083816" integrity sha512-tjqWDwVZQo7UIPMeDReOpUgHCmCiH+ePnVT+5zVapL0uuHnegBUs2smM13CzOs2Xb5+MHMRFTs9v24yjba4Oig== -eslint-plugin-react@~7.31.11: - version "7.31.11" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.31.11.tgz#011521d2b16dcf95795df688a4770b4eaab364c8" - integrity sha512-TTvq5JsT5v56wPa9OYHzsrOlHzKZKjV+aLgS+55NJP/cuzdiQPC7PfYoUjMoxlffKtvijpk7vA/jmuqRb9nohw== +eslint-plugin-react@~7.32.1: + version "7.32.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.32.1.tgz#88cdeb4065da8ca0b64e1274404f53a0f9890200" + integrity sha512-vOjdgyd0ZHBXNsmvU+785xY8Bfe57EFbTYYk8XrROzWpr9QBvpjITvAXt9xqcE6+8cjR/g1+mfumPToxsl1www== dependencies: array-includes "^3.1.6" array.prototype.flatmap "^1.3.1" @@ -4504,7 +4512,7 @@ eslint-plugin-react@~7.31.11: object.hasown "^1.1.2" object.values "^1.1.6" prop-types "^15.8.1" - resolve "^2.0.0-next.3" + resolve "^2.0.0-next.4" semver "^6.3.0" string.prototype.matchall "^4.0.8" @@ -5964,13 +5972,20 @@ is-color-stop@^1.0.0: rgb-regex "^1.0.1" rgba-regex "^1.0.0" -is-core-module@^2.2.0, is-core-module@^2.5.0, is-core-module@^2.8.1: +is-core-module@^2.5.0, is-core-module@^2.8.1: version "2.9.0" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.9.0.tgz#e1c34429cd51c6dd9e09e0799e396e27b19a9c69" integrity sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A== dependencies: has "^1.0.3" +is-core-module@^2.9.0: + version "2.11.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.11.0.tgz#ad4cb3e3863e814523c96f3f58d26cc570ff0144" + integrity sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw== + dependencies: + has "^1.0.3" + is-data-descriptor@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" @@ -6751,10 +6766,10 @@ jsdom@^20.0.0: ws "^8.11.0" xml-name-validator "^4.0.0" -jsdom@^21.0.0: - version "21.0.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-21.0.0.tgz#33e22f2fc44286e50ac853c7b7656c8864a4ea45" - integrity sha512-AIw+3ZakSUtDYvhwPwWHiZsUi3zHugpMEKlNPaurviseYoBqo0zBd3zqoUi3LPCNtPFlEP8FiW9MqCZdjb2IYA== +jsdom@^21.1.0: + version "21.1.0" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-21.1.0.tgz#d56ba4a84ed478260d83bd53dc181775f2d8e6ef" + integrity sha512-m0lzlP7qOtthD918nenK3hdItSd2I+V3W9IrBcB36sqDwG+KnUs66IF5GY7laGWUnlM9vTsD0W1QwSEBYWWcJg== dependencies: abab "^2.0.6" acorn "^8.8.1" @@ -8050,7 +8065,7 @@ path-key@^3.0.0, path-key@^3.1.0: resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== -path-parse@^1.0.6, path-parse@^1.0.7: +path-parse@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== @@ -9423,13 +9438,14 @@ resolve@^1.10.0, resolve@^1.12.0, resolve@^1.14.2, resolve@^1.19.0, resolve@^1.2 path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" -resolve@^2.0.0-next.3: - version "2.0.0-next.3" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-2.0.0-next.3.tgz#d41016293d4a8586a39ca5d9b5f15cbea1f55e46" - integrity sha512-W8LucSynKUIDu9ylraa7ueVZ7hc0uAgJBxVsQSKOXOyle8a93qXhcz+XAXZ8bIq2d6i4Ehddn6Evt+0/UwKk6Q== +resolve@^2.0.0-next.4: + version "2.0.0-next.4" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-2.0.0-next.4.tgz#3d37a113d6429f496ec4752d2a2e58efb1fd4660" + integrity sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ== dependencies: - is-core-module "^2.2.0" - path-parse "^1.0.6" + is-core-module "^2.9.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" ret@~0.1.10: version "0.1.15" @@ -9470,10 +9486,10 @@ rimraf@^3.0.2: dependencies: glob "^7.1.3" -rimraf@^4.0.7: - version "4.0.7" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-4.0.7.tgz#f438c7d6a2d5e5cca1d81e3904a48ac7b053a542" - integrity sha512-CUEDDrZvc0swDgVdXGiv3FcYYQMpJxjvSGt85Amj6yU+MCVWurrLCeLiJDdJPHCzNJnwuebBEdcO//eP11Xa7w== +rimraf@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-4.1.1.tgz#ec29817863e5d82d22bca82f9dc4325be2f1e72b" + integrity sha512-Z4Y81w8atcvaJuJuBB88VpADRH66okZAuEm+Jtaufa+s7rZmIz+Hik2G53kGaNytE7lsfXyWktTmfVz0H9xuDg== ripemd160@^2.0.0, ripemd160@^2.0.1: version "2.0.2" @@ -10996,10 +11012,10 @@ use@^3.1.0: resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== -utf-8-validate@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/utf-8-validate/-/utf-8-validate-6.0.0.tgz#91a169e91ee5441a2bab5f059f4a39cdd402caf2" - integrity sha512-OCJuwxQsnG51swYmNloViggxNOFO/leOZpnb/vVeoastJbrzrZZU7lGsYlUcdkCl9nsBu2nkKLjpljb3Ckvb/Q== +utf-8-validate@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/utf-8-validate/-/utf-8-validate-6.0.1.tgz#ca94aac987856c17c1b556b8b692323de98f521e" + integrity sha512-gAZEa1DMXeBiHEwxef81kLtZjBrC1hib7UWnsvMVtxY8oJGtDSXt9McWu2D6V/xgrjbfRBsS5UIGEUBg2SrAsg== dependencies: node-gyp-build "^4.3.0" |