Merge commit 'e38ce3beb7b83f43ef6e6f144c19b186c393910c' into glitch-soc/merge-upstream
commit
11b8017b45
|
@ -42,11 +42,24 @@ jobs:
|
||||||
with:
|
with:
|
||||||
onlyProduction: 'true'
|
onlyProduction: 'true'
|
||||||
|
|
||||||
|
- name: Cache assets from compilation
|
||||||
|
uses: actions/cache@v4
|
||||||
|
with:
|
||||||
|
path: |
|
||||||
|
public/assets
|
||||||
|
public/packs
|
||||||
|
public/packs-test
|
||||||
|
tmp/cache/webpacker
|
||||||
|
key: ${{ matrix.mode }}-assets-${{ github.head_ref || github.ref_name }}-${{ github.sha }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ matrix.mode }}-assets-${{ github.head_ref || github.ref_name }}-${{ github.sha }}
|
||||||
|
${{ matrix.mode }}-assets-${{ github.head_ref || github.ref_name }}
|
||||||
|
${{ matrix.mode }}-assets-main
|
||||||
|
${{ matrix.mode }}-assets
|
||||||
|
|
||||||
- name: Precompile assets
|
- name: Precompile assets
|
||||||
# Previously had set this, but it's not supported
|
|
||||||
# export NODE_OPTIONS=--openssl-legacy-provider
|
|
||||||
run: |-
|
run: |-
|
||||||
./bin/rails assets:precompile
|
bin/rails assets:precompile
|
||||||
|
|
||||||
- name: Archive asset artifacts
|
- name: Archive asset artifacts
|
||||||
run: |
|
run: |
|
||||||
|
|
|
@ -165,7 +165,7 @@ The following changelog entries focus on changes visible to users, administrator
|
||||||
- **Change colors throughout the web UI** (#29522, #29584, #29653, #29779, #29803, #29809, #29808, #29828, #31034, #31168, #31266, #31348, #31349, #31361, and #31510 by @ClearlyClaire, @Gargron, @renchap, and @vmstan)
|
- **Change colors throughout the web UI** (#29522, #29584, #29653, #29779, #29803, #29809, #29808, #29828, #31034, #31168, #31266, #31348, #31349, #31361, and #31510 by @ClearlyClaire, @Gargron, @renchap, and @vmstan)
|
||||||
- **Change onboarding prompt to follow suggestions carousel in web UI** (#28878 and #29272 by @Gargron)
|
- **Change onboarding prompt to follow suggestions carousel in web UI** (#28878 and #29272 by @Gargron)
|
||||||
- **Change email templates** (#28416, #28755, #28814, #29064, #28883, #29470, #29607, #29761, #29760, and #29879 by @ClearlyClaire, @Gargron, @hteumeuleu, and @mjankowski)\
|
- **Change email templates** (#28416, #28755, #28814, #29064, #28883, #29470, #29607, #29761, #29760, and #29879 by @ClearlyClaire, @Gargron, @hteumeuleu, and @mjankowski)\
|
||||||
All emails to end-users have been completely redesigned with a fresh new look, providing more information while making them easier to reand and keeping maximum compatibility across mail clients.
|
All emails to end-users have been completely redesigned with a fresh new look, providing more information while making them easier to read and keeping maximum compatibility across mail clients.
|
||||||
- **Change follow recommendations algorithm** (#28314, #28433, #29017, #29108, #29306, #29550, #29619, and #31474 by @ClearlyClaire, @Gargron, @kernal053, @mjankowski, and @wheatear-dev)\
|
- **Change follow recommendations algorithm** (#28314, #28433, #29017, #29108, #29306, #29550, #29619, and #31474 by @ClearlyClaire, @Gargron, @kernal053, @mjankowski, and @wheatear-dev)\
|
||||||
This replaces the “past interactions” recommendation algorithm with a “friends of friends” algorithm that suggests accounts followed by people you follow, and a “similar profiles” algorithm that suggests accounts with a profile similar to your most recent follows.\
|
This replaces the “past interactions” recommendation algorithm with a “friends of friends” algorithm that suggests accounts followed by people you follow, and a “similar profiles” algorithm that suggests accounts with a profile similar to your most recent follows.\
|
||||||
In addition, the implementation has been significantly reworked, and all follow recommendations are now dismissable.\
|
In addition, the implementation has been significantly reworked, and all follow recommendations are now dismissable.\
|
||||||
|
|
12
Gemfile.lock
12
Gemfile.lock
|
@ -137,14 +137,14 @@ GEM
|
||||||
blurhash (0.1.7)
|
blurhash (0.1.7)
|
||||||
bootsnap (1.18.4)
|
bootsnap (1.18.4)
|
||||||
msgpack (~> 1.2)
|
msgpack (~> 1.2)
|
||||||
brakeman (6.1.2)
|
brakeman (6.2.1)
|
||||||
racc
|
racc
|
||||||
browser (5.3.1)
|
browser (5.3.1)
|
||||||
brpoplpush-redis_script (0.1.3)
|
brpoplpush-redis_script (0.1.3)
|
||||||
concurrent-ruby (~> 1.0, >= 1.0.5)
|
concurrent-ruby (~> 1.0, >= 1.0.5)
|
||||||
redis (>= 1.0, < 6)
|
redis (>= 1.0, < 6)
|
||||||
builder (3.3.0)
|
builder (3.3.0)
|
||||||
bundler-audit (0.9.1)
|
bundler-audit (0.9.2)
|
||||||
bundler (>= 1.2.0, < 3)
|
bundler (>= 1.2.0, < 3)
|
||||||
thor (~> 1.0)
|
thor (~> 1.0)
|
||||||
capybara (3.40.0)
|
capybara (3.40.0)
|
||||||
|
@ -432,7 +432,7 @@ GEM
|
||||||
mime-types-data (3.2024.0702)
|
mime-types-data (3.2024.0702)
|
||||||
mini_mime (1.1.5)
|
mini_mime (1.1.5)
|
||||||
mini_portile2 (2.8.7)
|
mini_portile2 (2.8.7)
|
||||||
minitest (5.24.1)
|
minitest (5.25.1)
|
||||||
msgpack (1.7.2)
|
msgpack (1.7.2)
|
||||||
multi_json (1.15.0)
|
multi_json (1.15.0)
|
||||||
multipart-post (2.4.0)
|
multipart-post (2.4.0)
|
||||||
|
@ -466,7 +466,7 @@ GEM
|
||||||
addressable (~> 2.8)
|
addressable (~> 2.8)
|
||||||
nokogiri (~> 1.12)
|
nokogiri (~> 1.12)
|
||||||
omniauth (~> 2.1)
|
omniauth (~> 2.1)
|
||||||
omniauth-rails_csrf_protection (1.0.1)
|
omniauth-rails_csrf_protection (1.0.2)
|
||||||
actionpack (>= 4.2)
|
actionpack (>= 4.2)
|
||||||
omniauth (~> 2.0)
|
omniauth (~> 2.0)
|
||||||
omniauth-saml (2.1.0)
|
omniauth-saml (2.1.0)
|
||||||
|
@ -695,7 +695,7 @@ GEM
|
||||||
responders (3.1.1)
|
responders (3.1.1)
|
||||||
actionpack (>= 5.2)
|
actionpack (>= 5.2)
|
||||||
railties (>= 5.2)
|
railties (>= 5.2)
|
||||||
rexml (3.3.4)
|
rexml (3.3.6)
|
||||||
strscan
|
strscan
|
||||||
rotp (6.3.0)
|
rotp (6.3.0)
|
||||||
rouge (4.2.1)
|
rouge (4.2.1)
|
||||||
|
@ -832,7 +832,7 @@ GEM
|
||||||
unicode-display_width (>= 1.1.1, < 3)
|
unicode-display_width (>= 1.1.1, < 3)
|
||||||
terrapin (1.0.1)
|
terrapin (1.0.1)
|
||||||
climate_control
|
climate_control
|
||||||
test-prof (1.4.0)
|
test-prof (1.4.1)
|
||||||
thor (1.3.1)
|
thor (1.3.1)
|
||||||
tilt (2.3.0)
|
tilt (2.3.0)
|
||||||
timeout (0.4.1)
|
timeout (0.4.1)
|
||||||
|
|
|
@ -86,7 +86,7 @@ module ApplicationHelper
|
||||||
def html_title
|
def html_title
|
||||||
safe_join(
|
safe_join(
|
||||||
[content_for(:page_title).to_s.chomp, title]
|
[content_for(:page_title).to_s.chomp, title]
|
||||||
.select(&:present?),
|
.compact_blank,
|
||||||
' - '
|
' - '
|
||||||
)
|
)
|
||||||
end
|
end
|
||||||
|
|
|
@ -6,5 +6,4 @@ export const submitAccountNote = createDataLoadingThunk(
|
||||||
({ accountId, note }: { accountId: string; note: string }) =>
|
({ accountId, note }: { accountId: string; note: string }) =>
|
||||||
apiSubmitAccountNote(accountId, note),
|
apiSubmitAccountNote(accountId, note),
|
||||||
(relationship) => ({ relationship }),
|
(relationship) => ({ relationship }),
|
||||||
{ skipLoading: true },
|
|
||||||
);
|
);
|
||||||
|
|
|
@ -190,6 +190,8 @@
|
||||||
"confirmations.unfollow.confirm": "إلغاء المتابعة",
|
"confirmations.unfollow.confirm": "إلغاء المتابعة",
|
||||||
"confirmations.unfollow.message": "متأكد من أنك تريد إلغاء متابعة {name} ؟",
|
"confirmations.unfollow.message": "متأكد من أنك تريد إلغاء متابعة {name} ؟",
|
||||||
"confirmations.unfollow.title": "إلغاء متابعة المستخدم؟",
|
"confirmations.unfollow.title": "إلغاء متابعة المستخدم؟",
|
||||||
|
"content_warning.hide": "إخفاء المنشور",
|
||||||
|
"content_warning.show": "إظهار على أي حال",
|
||||||
"conversation.delete": "احذف المحادثة",
|
"conversation.delete": "احذف المحادثة",
|
||||||
"conversation.mark_as_read": "اعتبرها كمقروءة",
|
"conversation.mark_as_read": "اعتبرها كمقروءة",
|
||||||
"conversation.open": "اعرض المحادثة",
|
"conversation.open": "اعرض المحادثة",
|
||||||
|
@ -297,6 +299,7 @@
|
||||||
"filter_modal.select_filter.subtitle": "استخدم فئة موجودة أو قم بإنشاء فئة جديدة",
|
"filter_modal.select_filter.subtitle": "استخدم فئة موجودة أو قم بإنشاء فئة جديدة",
|
||||||
"filter_modal.select_filter.title": "تصفية هذا المنشور",
|
"filter_modal.select_filter.title": "تصفية هذا المنشور",
|
||||||
"filter_modal.title.status": "تصفية منشور",
|
"filter_modal.title.status": "تصفية منشور",
|
||||||
|
"filter_warning.matches_filter": "يطابق عامل التصفية \"{title}\"",
|
||||||
"filtered_notifications_banner.title": "الإشعارات المصفاة",
|
"filtered_notifications_banner.title": "الإشعارات المصفاة",
|
||||||
"firehose.all": "الكل",
|
"firehose.all": "الكل",
|
||||||
"firehose.local": "هذا الخادم",
|
"firehose.local": "هذا الخادم",
|
||||||
|
@ -500,11 +503,14 @@
|
||||||
"notification.update": "عدّلَ {name} منشورًا",
|
"notification.update": "عدّلَ {name} منشورًا",
|
||||||
"notification_requests.accept": "موافقة",
|
"notification_requests.accept": "موافقة",
|
||||||
"notification_requests.dismiss": "تخطي",
|
"notification_requests.dismiss": "تخطي",
|
||||||
|
"notification_requests.edit_selection": "تعديل",
|
||||||
|
"notification_requests.exit_selection": "تمّ",
|
||||||
"notification_requests.explainer_for_limited_account": "تم تصفية الإشعارات من هذا الحساب لأن الحساب تم تقييده من قبل مشرف.",
|
"notification_requests.explainer_for_limited_account": "تم تصفية الإشعارات من هذا الحساب لأن الحساب تم تقييده من قبل مشرف.",
|
||||||
"notification_requests.notifications_from": "إشعارات من {name}",
|
"notification_requests.notifications_from": "إشعارات من {name}",
|
||||||
"notification_requests.title": "الإشعارات المصفاة",
|
"notification_requests.title": "الإشعارات المصفاة",
|
||||||
"notifications.clear": "مسح الإشعارات",
|
"notifications.clear": "مسح الإشعارات",
|
||||||
"notifications.clear_confirmation": "متأكد من أنك تود مسح جميع الإشعارات الخاصة بك و المتلقاة إلى حد الآن ؟",
|
"notifications.clear_confirmation": "متأكد من أنك تود مسح جميع الإشعارات الخاصة بك و المتلقاة إلى حد الآن ؟",
|
||||||
|
"notifications.clear_title": "أترغب في مسح الإشعارات؟",
|
||||||
"notifications.column_settings.admin.report": "التبليغات الجديدة:",
|
"notifications.column_settings.admin.report": "التبليغات الجديدة:",
|
||||||
"notifications.column_settings.admin.sign_up": "التسجيلات الجديدة:",
|
"notifications.column_settings.admin.sign_up": "التسجيلات الجديدة:",
|
||||||
"notifications.column_settings.alert": "إشعارات سطح المكتب",
|
"notifications.column_settings.alert": "إشعارات سطح المكتب",
|
||||||
|
@ -713,6 +719,7 @@
|
||||||
"server_banner.about_active_users": "الأشخاص الذين يستخدمون هذا الخادم خلال الأيام الثلاثين الأخيرة (المستخدمون النشطون شهريًا)",
|
"server_banner.about_active_users": "الأشخاص الذين يستخدمون هذا الخادم خلال الأيام الثلاثين الأخيرة (المستخدمون النشطون شهريًا)",
|
||||||
"server_banner.active_users": "مستخدم نشط",
|
"server_banner.active_users": "مستخدم نشط",
|
||||||
"server_banner.administered_by": "يُديره:",
|
"server_banner.administered_by": "يُديره:",
|
||||||
|
"server_banner.is_one_of_many": "{domain} هو واحد من بين العديد من خوادم ماستدون المستقلة التي يمكنك استخدامها للمشاركة في الفديفرس.",
|
||||||
"server_banner.server_stats": "إحصائيات الخادم:",
|
"server_banner.server_stats": "إحصائيات الخادم:",
|
||||||
"sign_in_banner.create_account": "أنشئ حسابًا",
|
"sign_in_banner.create_account": "أنشئ حسابًا",
|
||||||
"sign_in_banner.sign_in": "تسجيل الدخول",
|
"sign_in_banner.sign_in": "تسجيل الدخول",
|
||||||
|
|
|
@ -192,6 +192,8 @@
|
||||||
"confirmations.unfollow.confirm": "Адпісацца",
|
"confirmations.unfollow.confirm": "Адпісацца",
|
||||||
"confirmations.unfollow.message": "Вы ўпэўненыя, што хочаце адпісацца ад {name}?",
|
"confirmations.unfollow.message": "Вы ўпэўненыя, што хочаце адпісацца ад {name}?",
|
||||||
"confirmations.unfollow.title": "Адпісацца ад карыстальніка?",
|
"confirmations.unfollow.title": "Адпісацца ад карыстальніка?",
|
||||||
|
"content_warning.hide": "Схаваць допіс",
|
||||||
|
"content_warning.show": "Усё адно паказаць",
|
||||||
"conversation.delete": "Выдаліць размову",
|
"conversation.delete": "Выдаліць размову",
|
||||||
"conversation.mark_as_read": "Адзначыць прачытаным",
|
"conversation.mark_as_read": "Адзначыць прачытаным",
|
||||||
"conversation.open": "Прагледзець размову",
|
"conversation.open": "Прагледзець размову",
|
||||||
|
@ -299,6 +301,7 @@
|
||||||
"filter_modal.select_filter.subtitle": "Скарыстайцеся існуючай катэгорыяй або стварыце новую",
|
"filter_modal.select_filter.subtitle": "Скарыстайцеся існуючай катэгорыяй або стварыце новую",
|
||||||
"filter_modal.select_filter.title": "Фільтраваць гэты допіс",
|
"filter_modal.select_filter.title": "Фільтраваць гэты допіс",
|
||||||
"filter_modal.title.status": "Фільтраваць допіс",
|
"filter_modal.title.status": "Фільтраваць допіс",
|
||||||
|
"filter_warning.matches_filter": "Адпавядае фільтру \"{title}\"",
|
||||||
"filtered_notifications_banner.pending_requests": "Ад {count, plural, =0 {# людзей якіх} one {# чалавека якіх} few {# чалавек якіх} many {# людзей якіх} other {# чалавека якіх}} вы магчыма ведаеце",
|
"filtered_notifications_banner.pending_requests": "Ад {count, plural, =0 {# людзей якіх} one {# чалавека якіх} few {# чалавек якіх} many {# людзей якіх} other {# чалавека якіх}} вы магчыма ведаеце",
|
||||||
"filtered_notifications_banner.title": "Адфільтраваныя апавяшчэнні",
|
"filtered_notifications_banner.title": "Адфільтраваныя апавяшчэнні",
|
||||||
"firehose.all": "Усе",
|
"firehose.all": "Усе",
|
||||||
|
@ -355,6 +358,7 @@
|
||||||
"home.pending_critical_update.link": "Прагледзець абнаўленні",
|
"home.pending_critical_update.link": "Прагледзець абнаўленні",
|
||||||
"home.pending_critical_update.title": "Даступна крытычнае абнаўленне бяспекі!",
|
"home.pending_critical_update.title": "Даступна крытычнае абнаўленне бяспекі!",
|
||||||
"home.show_announcements": "Паказаць аб'явы",
|
"home.show_announcements": "Паказаць аб'явы",
|
||||||
|
"ignore_notifications_modal.not_following_title": "Ігнараваць апавяшчэнні ад людзей на якіх вы не падпісаны?",
|
||||||
"interaction_modal.description.favourite": "Маючы ўліковы запіс Mastodon, вы можаце ўпадабаць гэты допіс, каб паведаміць аўтару, што ён вам падабаецца, і захаваць яго на будучыню.",
|
"interaction_modal.description.favourite": "Маючы ўліковы запіс Mastodon, вы можаце ўпадабаць гэты допіс, каб паведаміць аўтару, што ён вам падабаецца, і захаваць яго на будучыню.",
|
||||||
"interaction_modal.description.follow": "Маючы акаўнт у Mastodon, вы можаце падпісацца на {name}, каб бачыць яго/яе допісы ў сваёй хатняй стужцы.",
|
"interaction_modal.description.follow": "Маючы акаўнт у Mastodon, вы можаце падпісацца на {name}, каб бачыць яго/яе допісы ў сваёй хатняй стужцы.",
|
||||||
"interaction_modal.description.reblog": "З уліковым запісам Mastodon, вы можаце пашырыць гэты пост, каб падзяліцца ім са сваімі падпісчыкамі.",
|
"interaction_modal.description.reblog": "З уліковым запісам Mastodon, вы можаце пашырыць гэты пост, каб падзяліцца ім са сваімі падпісчыкамі.",
|
||||||
|
@ -504,7 +508,11 @@
|
||||||
"notification.status": "Новы допіс ад {name}",
|
"notification.status": "Новы допіс ад {name}",
|
||||||
"notification.update": "Допіс {name} адрэдагаваны",
|
"notification.update": "Допіс {name} адрэдагаваны",
|
||||||
"notification_requests.accept": "Прыняць",
|
"notification_requests.accept": "Прыняць",
|
||||||
|
"notification_requests.confirm_accept_multiple.title": "Прыняць запыты на апавяшчэнні?",
|
||||||
|
"notification_requests.confirm_dismiss_multiple.title": "Адхіліць запыты на апавяшчэнні?",
|
||||||
"notification_requests.dismiss": "Адхіліць",
|
"notification_requests.dismiss": "Адхіліць",
|
||||||
|
"notification_requests.edit_selection": "Рэдагаваць",
|
||||||
|
"notification_requests.exit_selection": "Гатова",
|
||||||
"notification_requests.maximize": "Разгарнуць",
|
"notification_requests.maximize": "Разгарнуць",
|
||||||
"notification_requests.minimize_banner": "Згарнуць банер адфільтраваных апавяшчэнняў",
|
"notification_requests.minimize_banner": "Згарнуць банер адфільтраваных апавяшчэнняў",
|
||||||
"notification_requests.notifications_from": "Апавяшчэнні ад {name}",
|
"notification_requests.notifications_from": "Апавяшчэнні ад {name}",
|
||||||
|
|
|
@ -192,6 +192,7 @@
|
||||||
"confirmations.unfollow.confirm": "Без следване",
|
"confirmations.unfollow.confirm": "Без следване",
|
||||||
"confirmations.unfollow.message": "Наистина ли искате да не следвате {name}?",
|
"confirmations.unfollow.message": "Наистина ли искате да не следвате {name}?",
|
||||||
"confirmations.unfollow.title": "Спирате ли да следвате потребителя?",
|
"confirmations.unfollow.title": "Спирате ли да следвате потребителя?",
|
||||||
|
"content_warning.hide": "Скриване на публ.",
|
||||||
"conversation.delete": "Изтриване на разговора",
|
"conversation.delete": "Изтриване на разговора",
|
||||||
"conversation.mark_as_read": "Маркиране като прочетено",
|
"conversation.mark_as_read": "Маркиране като прочетено",
|
||||||
"conversation.open": "Преглед на разговора",
|
"conversation.open": "Преглед на разговора",
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"about.blocks": "Gweinyddion sy'n cael eu cymedroli",
|
"about.blocks": "Gweinyddion gyda chymedrolwyr",
|
||||||
"about.contact": "Cysylltwch â:",
|
"about.contact": "Cysylltwch â:",
|
||||||
"about.disclaimer": "Mae Mastodon yn feddalwedd cod agored rhydd ac o dan hawlfraint Mastodon gGmbH.",
|
"about.disclaimer": "Mae Mastodon yn feddalwedd cod agored rhydd ac o dan hawlfraint Mastodon gGmbH.",
|
||||||
"about.domain_blocks.no_reason_available": "Nid yw'r rheswm ar gael",
|
"about.domain_blocks.no_reason_available": "Nid yw'r rheswm ar gael",
|
||||||
|
@ -103,7 +103,7 @@
|
||||||
"bundle_column_error.network.body": "Bu gwall wrth geisio llwytho'r dudalen hon. Gall hyn fod oherwydd anhawster dros-dro gyda'ch cysylltiad gwe neu'r gweinydd hwn.",
|
"bundle_column_error.network.body": "Bu gwall wrth geisio llwytho'r dudalen hon. Gall hyn fod oherwydd anhawster dros-dro gyda'ch cysylltiad gwe neu'r gweinydd hwn.",
|
||||||
"bundle_column_error.network.title": "Gwall rhwydwaith",
|
"bundle_column_error.network.title": "Gwall rhwydwaith",
|
||||||
"bundle_column_error.retry": "Ceisiwch eto",
|
"bundle_column_error.retry": "Ceisiwch eto",
|
||||||
"bundle_column_error.return": "Mynd nôl adref",
|
"bundle_column_error.return": "Mynd i'r ffrwd gartref",
|
||||||
"bundle_column_error.routing.body": "Nid oedd modd canfod y dudalen honno. Ydych chi'n siŵr fod yr URL yn y bar cyfeiriad yn gywir?",
|
"bundle_column_error.routing.body": "Nid oedd modd canfod y dudalen honno. Ydych chi'n siŵr fod yr URL yn y bar cyfeiriad yn gywir?",
|
||||||
"bundle_column_error.routing.title": "404",
|
"bundle_column_error.routing.title": "404",
|
||||||
"bundle_modal_error.close": "Cau",
|
"bundle_modal_error.close": "Cau",
|
||||||
|
@ -124,7 +124,7 @@
|
||||||
"column.favourites": "Ffefrynnau",
|
"column.favourites": "Ffefrynnau",
|
||||||
"column.firehose": "Ffrydiau byw",
|
"column.firehose": "Ffrydiau byw",
|
||||||
"column.follow_requests": "Ceisiadau dilyn",
|
"column.follow_requests": "Ceisiadau dilyn",
|
||||||
"column.home": "Hafan",
|
"column.home": "Cartref",
|
||||||
"column.lists": "Rhestrau",
|
"column.lists": "Rhestrau",
|
||||||
"column.mutes": "Defnyddwyr wedi'u tewi",
|
"column.mutes": "Defnyddwyr wedi'u tewi",
|
||||||
"column.notifications": "Hysbysiadau",
|
"column.notifications": "Hysbysiadau",
|
||||||
|
@ -184,7 +184,7 @@
|
||||||
"confirmations.logout.title": "Allgofnodi?",
|
"confirmations.logout.title": "Allgofnodi?",
|
||||||
"confirmations.mute.confirm": "Tewi",
|
"confirmations.mute.confirm": "Tewi",
|
||||||
"confirmations.redraft.confirm": "Dileu ac ailddrafftio",
|
"confirmations.redraft.confirm": "Dileu ac ailddrafftio",
|
||||||
"confirmations.redraft.message": "Ydych chi'n siŵr eich bod am ddileu'r postiad hwn a'i ailddrafftio? Bydd ffefrynnau a hybiau'n cael eu colli, a bydd atebion i'r post gwreiddiol yn mynd yn amddifad.",
|
"confirmations.redraft.message": "Ydych chi wir eisiau'r dileu'r postiad hwn a'i ailddrafftio? Bydd ffefrynnau a hybiau'n cael eu colli, a bydd atebion i'r post gwreiddiol yn mynd yn amddifad.",
|
||||||
"confirmations.redraft.title": "Dileu & ailddraftio post?",
|
"confirmations.redraft.title": "Dileu & ailddraftio post?",
|
||||||
"confirmations.reply.confirm": "Ateb",
|
"confirmations.reply.confirm": "Ateb",
|
||||||
"confirmations.reply.message": "Bydd ateb nawr yn cymryd lle y neges yr ydych yn cyfansoddi ar hyn o bryd. Ydych chi'n siŵr eich bod am barhau?",
|
"confirmations.reply.message": "Bydd ateb nawr yn cymryd lle y neges yr ydych yn cyfansoddi ar hyn o bryd. Ydych chi'n siŵr eich bod am barhau?",
|
||||||
|
@ -192,6 +192,8 @@
|
||||||
"confirmations.unfollow.confirm": "Dad-ddilyn",
|
"confirmations.unfollow.confirm": "Dad-ddilyn",
|
||||||
"confirmations.unfollow.message": "Ydych chi'n siŵr eich bod am ddad-ddilyn {name}?",
|
"confirmations.unfollow.message": "Ydych chi'n siŵr eich bod am ddad-ddilyn {name}?",
|
||||||
"confirmations.unfollow.title": "Dad-ddilyn defnyddiwr?",
|
"confirmations.unfollow.title": "Dad-ddilyn defnyddiwr?",
|
||||||
|
"content_warning.hide": "Cuddio'r post",
|
||||||
|
"content_warning.show": "Dangos beth bynnag",
|
||||||
"conversation.delete": "Dileu sgwrs",
|
"conversation.delete": "Dileu sgwrs",
|
||||||
"conversation.mark_as_read": "Nodi fel wedi'i ddarllen",
|
"conversation.mark_as_read": "Nodi fel wedi'i ddarllen",
|
||||||
"conversation.open": "Gweld sgwrs",
|
"conversation.open": "Gweld sgwrs",
|
||||||
|
@ -208,7 +210,7 @@
|
||||||
"dismissable_banner.community_timeline": "Dyma'r postiadau cyhoeddus diweddaraf gan bobl sydd â chyfrifon ar {domain}.",
|
"dismissable_banner.community_timeline": "Dyma'r postiadau cyhoeddus diweddaraf gan bobl sydd â chyfrifon ar {domain}.",
|
||||||
"dismissable_banner.dismiss": "Cau",
|
"dismissable_banner.dismiss": "Cau",
|
||||||
"dismissable_banner.explore_links": "Dyma straeon newyddion sy’n cael eu rhannu fwyaf ar y we gymdeithasol heddiw. Mae'r straeon newyddion diweddaraf sy'n cael eu postio gan fwy o unigolion gwahanol yn cael eu graddio'n uwch.",
|
"dismissable_banner.explore_links": "Dyma straeon newyddion sy’n cael eu rhannu fwyaf ar y we gymdeithasol heddiw. Mae'r straeon newyddion diweddaraf sy'n cael eu postio gan fwy o unigolion gwahanol yn cael eu graddio'n uwch.",
|
||||||
"dismissable_banner.explore_statuses": "Mae'r rhain yn bostiadau o bob rhan o'r we gymdeithasol sydd ar gynnydd heddiw. Mae postiadau mwy diweddar sydd â mwy o hybiau a ffefrynu'n cael eu graddio'n uwch.",
|
"dismissable_banner.explore_statuses": "Dyma postiadau o bob gwr o'r we gymdeithasol sy'n derbyn sylw heddiw. Mae postiadau mwy diweddar sydd â mwy o hybiau a ffefrynnau'n cael eu graddio'n uwch.",
|
||||||
"dismissable_banner.explore_tags": "Mae'r rhain yn hashnodau sydd ar gynnydd ar y we gymdeithasol heddiw. Mae hashnodau sy'n cael eu defnyddio gan fwy o unigolion gwahanol yn cael eu graddio'n uwch.",
|
"dismissable_banner.explore_tags": "Mae'r rhain yn hashnodau sydd ar gynnydd ar y we gymdeithasol heddiw. Mae hashnodau sy'n cael eu defnyddio gan fwy o unigolion gwahanol yn cael eu graddio'n uwch.",
|
||||||
"dismissable_banner.public_timeline": "Dyma'r postiadau cyhoeddus diweddaraf gan bobl ar y we gymdeithasol y mae pobl ar {domain} yn eu dilyn.",
|
"dismissable_banner.public_timeline": "Dyma'r postiadau cyhoeddus diweddaraf gan bobl ar y we gymdeithasol y mae pobl ar {domain} yn eu dilyn.",
|
||||||
"domain_block_modal.block": "Blocio gweinydd",
|
"domain_block_modal.block": "Blocio gweinydd",
|
||||||
|
@ -258,13 +260,13 @@
|
||||||
"empty_column.community": "Mae'r ffrwd lleol yn wag. Beth am ysgrifennu rhywbeth cyhoeddus!",
|
"empty_column.community": "Mae'r ffrwd lleol yn wag. Beth am ysgrifennu rhywbeth cyhoeddus!",
|
||||||
"empty_column.direct": "Nid oes gennych unrhyw grybwylliadau preifat eto. Pan fyddwch chi'n anfon neu'n derbyn un, bydd yn ymddangos yma.",
|
"empty_column.direct": "Nid oes gennych unrhyw grybwylliadau preifat eto. Pan fyddwch chi'n anfon neu'n derbyn un, bydd yn ymddangos yma.",
|
||||||
"empty_column.domain_blocks": "Nid oes unrhyw barthau wedi'u blocio eto.",
|
"empty_column.domain_blocks": "Nid oes unrhyw barthau wedi'u blocio eto.",
|
||||||
"empty_column.explore_statuses": "Does dim yn trendio ar hyn o bryd. Dewch nôl nes ymlaen!",
|
"empty_column.explore_statuses": "Does dim pynciau llosg ar hyn o bryd. Dewch nôl nes ymlaen!",
|
||||||
"empty_column.favourited_statuses": "Nid oes gennych unrhyw hoff bostiadau eto. Pan byddwch yn hoffi un, bydd yn ymddangos yma.",
|
"empty_column.favourited_statuses": "Rydych chi heb ffafrio unrhyw bostiadau eto. Pan byddwch chi'n ffafrio un, bydd yn ymddangos yma.",
|
||||||
"empty_column.favourites": "Nid oes unrhyw un wedi hoffi'r postiad hwn eto. Pan fydd rhywun yn gwneud hynny, byddan nhw'n ymddangos yma.",
|
"empty_column.favourites": "Nid oes unrhyw un wedi ffafrio'r postiad hwn eto. Pan fydd rhywun yn gwneud hynny, byddan nhw'n ymddangos yma.",
|
||||||
"empty_column.follow_requests": "Nid oes gennych unrhyw geisiadau dilyn eto. Pan fyddwch yn derbyn un, byddan nhw'n ymddangos yma.",
|
"empty_column.follow_requests": "Nid oes gennych unrhyw geisiadau dilyn eto. Pan fyddwch yn derbyn un, byddan nhw'n ymddangos yma.",
|
||||||
"empty_column.followed_tags": "Nid ydych wedi dilyn unrhyw hashnodau eto. Pan fyddwch chi'n gwneud hynny, byddan nhw'n ymddangos yma.",
|
"empty_column.followed_tags": "Nid ydych wedi dilyn unrhyw hashnodau eto. Pan fyddwch chi'n gwneud hynny, byddan nhw'n ymddangos yma.",
|
||||||
"empty_column.hashtag": "Nid oes dim ar yr hashnod hwn eto.",
|
"empty_column.hashtag": "Nid oes dim ar yr hashnod hwn eto.",
|
||||||
"empty_column.home": "Mae eich ffrwd gartref yn wag! Ymwelwch â {public} neu defnyddiwch y chwilotwr i ddechrau arni ac i gwrdd â defnyddwyr eraill.",
|
"empty_column.home": "Mae eich ffrwd gartref yn wag! Dilynwch fwy o bobl i'w llenwi.",
|
||||||
"empty_column.list": "Does dim yn y rhestr yma eto. Pan fydd aelodau'r rhestr yn cyhoeddi postiad newydd, mi fydd yn ymddangos yma.",
|
"empty_column.list": "Does dim yn y rhestr yma eto. Pan fydd aelodau'r rhestr yn cyhoeddi postiad newydd, mi fydd yn ymddangos yma.",
|
||||||
"empty_column.lists": "Nid oes gennych unrhyw restrau eto. Pan fyddwch yn creu un, mi fydd yn ymddangos yma.",
|
"empty_column.lists": "Nid oes gennych unrhyw restrau eto. Pan fyddwch yn creu un, mi fydd yn ymddangos yma.",
|
||||||
"empty_column.mutes": "Nid ydych wedi tewi unrhyw ddefnyddwyr eto.",
|
"empty_column.mutes": "Nid ydych wedi tewi unrhyw ddefnyddwyr eto.",
|
||||||
|
@ -299,6 +301,7 @@
|
||||||
"filter_modal.select_filter.subtitle": "Defnyddiwch gategori sy'n bodoli eisoes neu crëu un newydd",
|
"filter_modal.select_filter.subtitle": "Defnyddiwch gategori sy'n bodoli eisoes neu crëu un newydd",
|
||||||
"filter_modal.select_filter.title": "Hidlo'r postiad hwn",
|
"filter_modal.select_filter.title": "Hidlo'r postiad hwn",
|
||||||
"filter_modal.title.status": "Hidlo postiad",
|
"filter_modal.title.status": "Hidlo postiad",
|
||||||
|
"filter_warning.matches_filter": "Yn cydweddu'r hidlydd “{title}”",
|
||||||
"filtered_notifications_banner.pending_requests": "Gan {count, plural, =0 {no one} one {un person} two {# berson} few {# pherson} other {# person}} efallai eich bod yn eu hadnabod",
|
"filtered_notifications_banner.pending_requests": "Gan {count, plural, =0 {no one} one {un person} two {# berson} few {# pherson} other {# person}} efallai eich bod yn eu hadnabod",
|
||||||
"filtered_notifications_banner.title": "Hysbysiadau wedi'u hidlo",
|
"filtered_notifications_banner.title": "Hysbysiadau wedi'u hidlo",
|
||||||
"firehose.all": "Popeth",
|
"firehose.all": "Popeth",
|
||||||
|
@ -348,11 +351,15 @@
|
||||||
"hashtag.follow": "Dilyn hashnod",
|
"hashtag.follow": "Dilyn hashnod",
|
||||||
"hashtag.unfollow": "Dad-ddilyn hashnod",
|
"hashtag.unfollow": "Dad-ddilyn hashnod",
|
||||||
"hashtags.and_other": "…a {count, plural, other {# more}}",
|
"hashtags.and_other": "…a {count, plural, other {# more}}",
|
||||||
|
"hints.profiles.see_more_followers": "Gweld mwy o ddilynwyr ar {domain}",
|
||||||
|
"hints.profiles.see_more_follows": "Gweld mwy o 'yn dilyn' ar {domain}",
|
||||||
|
"hints.profiles.see_more_posts": "Gweld mwy o bostiadau ar {domain}",
|
||||||
|
"hints.threads.see_more": "Gweld mwy o atebion ar {domain}",
|
||||||
"home.column_settings.show_reblogs": "Dangos hybiau",
|
"home.column_settings.show_reblogs": "Dangos hybiau",
|
||||||
"home.column_settings.show_replies": "Dangos atebion",
|
"home.column_settings.show_replies": "Dangos atebion",
|
||||||
"home.hide_announcements": "Cuddio cyhoeddiadau",
|
"home.hide_announcements": "Cuddio cyhoeddiadau",
|
||||||
"home.pending_critical_update.body": "Diweddarwch eich gweinydd Mastodon cyn gynted â phosibl!",
|
"home.pending_critical_update.body": "Diweddarwch eich gweinydd Mastodon cyn gynted â phosibl!",
|
||||||
"home.pending_critical_update.link": "Gweld y diweddariadau",
|
"home.pending_critical_update.link": "Gweld diweddariadau",
|
||||||
"home.pending_critical_update.title": "Mae diweddariad diogelwch hanfodol ar gael!",
|
"home.pending_critical_update.title": "Mae diweddariad diogelwch hanfodol ar gael!",
|
||||||
"home.show_announcements": "Dangos cyhoeddiadau",
|
"home.show_announcements": "Dangos cyhoeddiadau",
|
||||||
"ignore_notifications_modal.disclaimer": "Ni all Mastodon hysbysu defnyddwyr eich bod wedi anwybyddu eu hysbysiadau. Ni fydd anwybyddu hysbysiadau yn atal y negeseuon eu hunain rhag cael eu hanfon.",
|
"ignore_notifications_modal.disclaimer": "Ni all Mastodon hysbysu defnyddwyr eich bod wedi anwybyddu eu hysbysiadau. Ni fydd anwybyddu hysbysiadau yn atal y negeseuon eu hunain rhag cael eu hanfon.",
|
||||||
|
@ -366,18 +373,18 @@
|
||||||
"ignore_notifications_modal.not_followers_title": "Anwybyddu hysbysiadau gan bobl nad ydynt yn eich dilyn?",
|
"ignore_notifications_modal.not_followers_title": "Anwybyddu hysbysiadau gan bobl nad ydynt yn eich dilyn?",
|
||||||
"ignore_notifications_modal.not_following_title": "Anwybyddu hysbysiadau gan bobl nad ydych yn eu dilyn?",
|
"ignore_notifications_modal.not_following_title": "Anwybyddu hysbysiadau gan bobl nad ydych yn eu dilyn?",
|
||||||
"ignore_notifications_modal.private_mentions_title": "Anwybyddu hysbysiadau o Grybwylliadau Preifat digymell?",
|
"ignore_notifications_modal.private_mentions_title": "Anwybyddu hysbysiadau o Grybwylliadau Preifat digymell?",
|
||||||
"interaction_modal.description.favourite": "Gyda chyfrif ar Mastodon, gallwch chi hoffi'r postiad hwn er mwyn roi gwybod i'r awdur eich bod chi'n ei werthfawrogi ac yn ei gadw ar gyfer nes ymlaen.",
|
"interaction_modal.description.favourite": "Gyda chyfrif ar Mastodon, gallwch chi ffafrio'r postiad hwn er mwyn roi gwybod i'r awdur eich bod chi'n ei werthfawrogi ac yn ei gadw ar gyfer nes ymlaen.",
|
||||||
"interaction_modal.description.follow": "Gyda chyfrif ar Mastodon, gallwch ddilyn {name} i dderbyn eu postiadau yn eich llif cartref.",
|
"interaction_modal.description.follow": "Gyda chyfrif ar Mastodon, gallwch ddilyn {name} i dderbyn eu postiadau yn eich ffrwd gartref.",
|
||||||
"interaction_modal.description.reblog": "Gyda chyfrif ar Mastodon, gallwch hybu'r postiad hwn i'w rannu â'ch dilynwyr.",
|
"interaction_modal.description.reblog": "Gyda chyfrif ar Mastodon, gallwch hybu'r postiad hwn i'w rannu â'ch dilynwyr.",
|
||||||
"interaction_modal.description.reply": "Gyda chyfrif ar Mastodon, gallwch ymateb i'r postiad hwn.",
|
"interaction_modal.description.reply": "Gyda chyfrif ar Mastodon, gallwch ymateb i'r postiad hwn.",
|
||||||
"interaction_modal.login.action": "Ewch â fi adref",
|
"interaction_modal.login.action": "Mynd i'm ffrwd gartref",
|
||||||
"interaction_modal.login.prompt": "Parth eich gweinydd cartref, e.e. mastodon.social",
|
"interaction_modal.login.prompt": "Parth eich gweinydd cartref, e.e. mastodon.social",
|
||||||
"interaction_modal.no_account_yet": "Dim ar Mastodon?",
|
"interaction_modal.no_account_yet": "Dim ar Mastodon?",
|
||||||
"interaction_modal.on_another_server": "Ar weinydd gwahanol",
|
"interaction_modal.on_another_server": "Ar weinydd gwahanol",
|
||||||
"interaction_modal.on_this_server": "Ar y gweinydd hwn",
|
"interaction_modal.on_this_server": "Ar y gweinydd hwn",
|
||||||
"interaction_modal.sign_in": "Nid ydych wedi mewngofnodi i'r gweinydd hwn. Ble mae eich cyfrif yn cael ei gynnal?",
|
"interaction_modal.sign_in": "Nid ydych wedi mewngofnodi i'r gweinydd hwn. Ble mae eich cyfrif yn cael ei gynnal?",
|
||||||
"interaction_modal.sign_in_hint": "Awgrym: Dyna'r wefan lle gwnaethoch gofrestru. Os nad ydych yn cofio, edrychwch am yr e-bost croeso yn eich blwch derbyn. Gallwch hefyd nodi eich enw defnyddiwr llawn! (e.e. @Mastodon@mastodon.social)",
|
"interaction_modal.sign_in_hint": "Awgrym: Dyna'r wefan lle gwnaethoch gofrestru. Os nad ydych yn cofio, edrychwch am yr e-bost croeso yn eich blwch derbyn. Gallwch hefyd nodi eich enw defnyddiwr llawn! (e.e. @Mastodon@mastodon.social)",
|
||||||
"interaction_modal.title.favourite": "Hoffi postiad {name}",
|
"interaction_modal.title.favourite": "Ffafrio postiad {name}",
|
||||||
"interaction_modal.title.follow": "Dilyn {name}",
|
"interaction_modal.title.follow": "Dilyn {name}",
|
||||||
"interaction_modal.title.reblog": "Hybu postiad {name}",
|
"interaction_modal.title.reblog": "Hybu postiad {name}",
|
||||||
"interaction_modal.title.reply": "Ymateb i bostiad {name}",
|
"interaction_modal.title.reply": "Ymateb i bostiad {name}",
|
||||||
|
@ -393,11 +400,11 @@
|
||||||
"keyboard_shortcuts.direct": "i agor colofn crybwylliadau preifat",
|
"keyboard_shortcuts.direct": "i agor colofn crybwylliadau preifat",
|
||||||
"keyboard_shortcuts.down": "Symud lawr yn y rhestr",
|
"keyboard_shortcuts.down": "Symud lawr yn y rhestr",
|
||||||
"keyboard_shortcuts.enter": "Agor post",
|
"keyboard_shortcuts.enter": "Agor post",
|
||||||
"keyboard_shortcuts.favourite": "Hoffi postiad",
|
"keyboard_shortcuts.favourite": "Ffafrio postiad",
|
||||||
"keyboard_shortcuts.favourites": "Agor rhestr ffefrynnau",
|
"keyboard_shortcuts.favourites": "Agor rhestr ffefrynnau",
|
||||||
"keyboard_shortcuts.federated": "Agor ffrwd y ffederasiwn",
|
"keyboard_shortcuts.federated": "Agor ffrwd y ffederasiwn",
|
||||||
"keyboard_shortcuts.heading": "Bysellau brys",
|
"keyboard_shortcuts.heading": "Bysellau brys",
|
||||||
"keyboard_shortcuts.home": "Agor ffrwd cartref",
|
"keyboard_shortcuts.home": "Agor ffrwd gartref",
|
||||||
"keyboard_shortcuts.hotkey": "Bysell boeth",
|
"keyboard_shortcuts.hotkey": "Bysell boeth",
|
||||||
"keyboard_shortcuts.legend": "Dangos y rhestr hon",
|
"keyboard_shortcuts.legend": "Dangos y rhestr hon",
|
||||||
"keyboard_shortcuts.local": "Agor ffrwd lleol",
|
"keyboard_shortcuts.local": "Agor ffrwd lleol",
|
||||||
|
@ -433,7 +440,7 @@
|
||||||
"lists.delete": "Dileu rhestr",
|
"lists.delete": "Dileu rhestr",
|
||||||
"lists.edit": "Golygu rhestr",
|
"lists.edit": "Golygu rhestr",
|
||||||
"lists.edit.submit": "Newid teitl",
|
"lists.edit.submit": "Newid teitl",
|
||||||
"lists.exclusive": "Cuddiwch y postiadau hyn rhag cartref",
|
"lists.exclusive": "Cuddio'r postiadau hyn o'r ffrwd gartref",
|
||||||
"lists.new.create": "Ychwanegu rhestr",
|
"lists.new.create": "Ychwanegu rhestr",
|
||||||
"lists.new.title_placeholder": "Teitl rhestr newydd",
|
"lists.new.title_placeholder": "Teitl rhestr newydd",
|
||||||
"lists.replies_policy.followed": "Unrhyw ddefnyddiwr sy'n cael ei ddilyn",
|
"lists.replies_policy.followed": "Unrhyw ddefnyddiwr sy'n cael ei ddilyn",
|
||||||
|
@ -487,7 +494,9 @@
|
||||||
"notification.admin.report_statuses": "Adroddodd {name} {target} ar gyfer {category}",
|
"notification.admin.report_statuses": "Adroddodd {name} {target} ar gyfer {category}",
|
||||||
"notification.admin.report_statuses_other": "Adroddodd {name} {target}",
|
"notification.admin.report_statuses_other": "Adroddodd {name} {target}",
|
||||||
"notification.admin.sign_up": "Cofrestrodd {name}",
|
"notification.admin.sign_up": "Cofrestrodd {name}",
|
||||||
"notification.favourite": "Hoffodd {name} eich postiad",
|
"notification.admin.sign_up.name_and_others": "Cofrestrodd {name} {count, plural, one {ac # arall} other {a # eraill}}",
|
||||||
|
"notification.favourite": "Ffafriodd {name} eich postiad",
|
||||||
|
"notification.favourite.name_and_others_with_link": "Ffafriodd {name} a <a>{count, plural, one {# arall} other {# eraill}}</a> eich postiad",
|
||||||
"notification.follow": "Dilynodd {name} chi",
|
"notification.follow": "Dilynodd {name} chi",
|
||||||
"notification.follow_request": "Mae {name} wedi gwneud cais i'ch dilyn",
|
"notification.follow_request": "Mae {name} wedi gwneud cais i'ch dilyn",
|
||||||
"notification.label.mention": "Crybwyll",
|
"notification.label.mention": "Crybwyll",
|
||||||
|
@ -515,7 +524,13 @@
|
||||||
"notification.status": "{name} newydd ei bostio",
|
"notification.status": "{name} newydd ei bostio",
|
||||||
"notification.update": "Golygodd {name} bostiad",
|
"notification.update": "Golygodd {name} bostiad",
|
||||||
"notification_requests.accept": "Derbyn",
|
"notification_requests.accept": "Derbyn",
|
||||||
|
"notification_requests.confirm_accept_multiple.title": "Derbyn ceisiadau hysbysu?",
|
||||||
|
"notification_requests.confirm_dismiss_multiple.button": "{count, plural, one {Diystyru cais} other {Diystyru ceisiadau}}",
|
||||||
|
"notification_requests.confirm_dismiss_multiple.title": "Diystyru ceisiadau hysbysu?",
|
||||||
"notification_requests.dismiss": "Cau",
|
"notification_requests.dismiss": "Cau",
|
||||||
|
"notification_requests.dismiss_multiple": "{count, plural, one {Diystyru # cais…} two {Diystyru # gais…} few {Diystyru # chais…} other {Diystyru # cais…}}",
|
||||||
|
"notification_requests.edit_selection": "Golygu",
|
||||||
|
"notification_requests.exit_selection": "Iawn",
|
||||||
"notification_requests.explainer_for_limited_account": "Mae hysbysiadau o'r cyfrif hwn wedi'u hidlo oherwydd bod y cyfrif wedi'i gyfyngu gan gymedrolwr.",
|
"notification_requests.explainer_for_limited_account": "Mae hysbysiadau o'r cyfrif hwn wedi'u hidlo oherwydd bod y cyfrif wedi'i gyfyngu gan gymedrolwr.",
|
||||||
"notification_requests.explainer_for_limited_remote_account": "Mae hysbysiadau o'r cyfrif hwn wedi'u hidlo oherwydd bod y cyfrif neu ei weinydd wedi'i gyfyngu gan gymedrolwr.",
|
"notification_requests.explainer_for_limited_remote_account": "Mae hysbysiadau o'r cyfrif hwn wedi'u hidlo oherwydd bod y cyfrif neu ei weinydd wedi'i gyfyngu gan gymedrolwr.",
|
||||||
"notification_requests.maximize": "Mwyhau",
|
"notification_requests.maximize": "Mwyhau",
|
||||||
|
@ -581,12 +596,12 @@
|
||||||
"notifications_permission_banner.title": "Peidiwch â cholli dim",
|
"notifications_permission_banner.title": "Peidiwch â cholli dim",
|
||||||
"onboarding.action.back": "Ewch â fi nôl",
|
"onboarding.action.back": "Ewch â fi nôl",
|
||||||
"onboarding.actions.back": "Ewch â fi nôl",
|
"onboarding.actions.back": "Ewch â fi nôl",
|
||||||
"onboarding.actions.go_to_explore": "Gweld beth sy'n trendio",
|
"onboarding.actions.go_to_explore": "Gweld y pynciau llosg",
|
||||||
"onboarding.actions.go_to_home": "Ewch i'ch ffrwd gartref",
|
"onboarding.actions.go_to_home": "Ewch i'm ffrwd gartref",
|
||||||
"onboarding.compose.template": "Helo, #Mastodon!",
|
"onboarding.compose.template": "Helo, #Mastodon!",
|
||||||
"onboarding.follows.empty": "Yn anffodus, nid oes modd dangos unrhyw ganlyniadau ar hyn o bryd. Gallwch geisio defnyddio chwilio neu bori'r dudalen archwilio i ddod o hyd i bobl i'w dilyn, neu ceisio eto yn nes ymlaen.",
|
"onboarding.follows.empty": "Yn anffodus, nid oes modd dangos unrhyw ganlyniadau ar hyn o bryd. Gallwch geisio defnyddio chwilio neu bori'r dudalen archwilio i ddod o hyd i bobl i'w dilyn, neu ceisio eto yn nes ymlaen.",
|
||||||
"onboarding.follows.lead": "Rydych chi'n curadu eich ffrwd gartref eich hun. Po fwyaf o bobl y byddwch chi'n eu dilyn, y mwyaf egnïol a diddorol fydd hi. Gall y proffiliau hyn fod yn fan cychwyn da - gallwch chi bob amser eu dad-ddilyn yn nes ymlaen:",
|
"onboarding.follows.lead": "Rydych chi'n curadu eich ffrwd gartref eich hun. Po fwyaf o bobl y byddwch chi'n eu dilyn, y mwyaf egnïol a diddorol fydd hi. Gall y proffiliau hyn fod yn fan cychwyn da - gallwch chi bob amser eu dad-ddilyn yn nes ymlaen:",
|
||||||
"onboarding.follows.title": "Yn boblogaidd ar Mastodon",
|
"onboarding.follows.title": "Personolwch eich ffrwd gartref",
|
||||||
"onboarding.profile.discoverable": "Gwnewch fy mhroffil yn un y gellir ei ddarganfod",
|
"onboarding.profile.discoverable": "Gwnewch fy mhroffil yn un y gellir ei ddarganfod",
|
||||||
"onboarding.profile.discoverable_hint": "Pan fyddwch yn optio i mewn i ddarganfodadwyedd ar Mastodon, gall eich postiadau ymddangos mewn canlyniadau chwilio a threndiau, ac efallai y bydd eich proffil yn cael ei awgrymu i bobl sydd â diddordebau tebyg i chi.",
|
"onboarding.profile.discoverable_hint": "Pan fyddwch yn optio i mewn i ddarganfodadwyedd ar Mastodon, gall eich postiadau ymddangos mewn canlyniadau chwilio a threndiau, ac efallai y bydd eich proffil yn cael ei awgrymu i bobl sydd â diddordebau tebyg i chi.",
|
||||||
"onboarding.profile.display_name": "Enw dangos",
|
"onboarding.profile.display_name": "Enw dangos",
|
||||||
|
@ -606,7 +621,7 @@
|
||||||
"onboarding.start.skip": "Eisiau mynd syth yn eich blaen?",
|
"onboarding.start.skip": "Eisiau mynd syth yn eich blaen?",
|
||||||
"onboarding.start.title": "Rydych chi wedi cyrraedd!",
|
"onboarding.start.title": "Rydych chi wedi cyrraedd!",
|
||||||
"onboarding.steps.follow_people.body": "Rydych chi'n curadu eich ffrwd eich hun. Gadewch i ni ei lenwi â phobl ddiddorol.",
|
"onboarding.steps.follow_people.body": "Rydych chi'n curadu eich ffrwd eich hun. Gadewch i ni ei lenwi â phobl ddiddorol.",
|
||||||
"onboarding.steps.follow_people.title": "Dilynwch {count, plural, one {one person} other {# people}}",
|
"onboarding.steps.follow_people.title": "Personolwch eich ffrwd gartref",
|
||||||
"onboarding.steps.publish_status.body": "Dywedwch helo wrth y byd gyda thestun, lluniau, fideos neu arolygon barn {emoji}",
|
"onboarding.steps.publish_status.body": "Dywedwch helo wrth y byd gyda thestun, lluniau, fideos neu arolygon barn {emoji}",
|
||||||
"onboarding.steps.publish_status.title": "Gwnewch eich postiad cyntaf",
|
"onboarding.steps.publish_status.title": "Gwnewch eich postiad cyntaf",
|
||||||
"onboarding.steps.setup_profile.body": "Mae eraill yn fwy tebygol o ryngweithio â chi gyda phroffil wedi'i lenwi.",
|
"onboarding.steps.setup_profile.body": "Mae eraill yn fwy tebygol o ryngweithio â chi gyda phroffil wedi'i lenwi.",
|
||||||
|
@ -645,7 +660,7 @@
|
||||||
"recommended": "Argymhellwyd",
|
"recommended": "Argymhellwyd",
|
||||||
"refresh": "Adnewyddu",
|
"refresh": "Adnewyddu",
|
||||||
"regeneration_indicator.label": "Yn llwytho…",
|
"regeneration_indicator.label": "Yn llwytho…",
|
||||||
"regeneration_indicator.sublabel": "Mae eich ffrwd cartref yn cael ei baratoi!",
|
"regeneration_indicator.sublabel": "Mae eich ffrwd cartref yn cael ei pharatoi!",
|
||||||
"relative_time.days": "{number}d",
|
"relative_time.days": "{number}d",
|
||||||
"relative_time.full.days": "{number, plural, one {# diwrnod} other {# diwrnod}} yn ôl",
|
"relative_time.full.days": "{number, plural, one {# diwrnod} other {# diwrnod}} yn ôl",
|
||||||
"relative_time.full.hours": "{number, plural, one {# awr} other {# awr}} yn ôl",
|
"relative_time.full.hours": "{number, plural, one {# awr} other {# awr}} yn ôl",
|
||||||
|
@ -699,7 +714,7 @@
|
||||||
"report.thanks.title": "Ddim eisiau gweld hwn?",
|
"report.thanks.title": "Ddim eisiau gweld hwn?",
|
||||||
"report.thanks.title_actionable": "Diolch am adrodd, byddwn yn ymchwilio i hyn.",
|
"report.thanks.title_actionable": "Diolch am adrodd, byddwn yn ymchwilio i hyn.",
|
||||||
"report.unfollow": "Dad-ddilyn @{name}",
|
"report.unfollow": "Dad-ddilyn @{name}",
|
||||||
"report.unfollow_explanation": "Rydych chi'n dilyn y cyfrif hwn. I beidio â gweld eu postiadau yn eich porthiant cartref mwyach, dad-ddilynwch nhw.",
|
"report.unfollow_explanation": "Rydych chi'n dilyn y cyfrif hwn. I beidio â gweld eu postiadau yn eich ffrwd gartref mwyach, dad-ddilynwch nhw.",
|
||||||
"report_notification.attached_statuses": "{count, plural, one {{count} postiad} arall {{count} postiad}} atodwyd",
|
"report_notification.attached_statuses": "{count, plural, one {{count} postiad} arall {{count} postiad}} atodwyd",
|
||||||
"report_notification.categories.legal": "Cyfreithiol",
|
"report_notification.categories.legal": "Cyfreithiol",
|
||||||
"report_notification.categories.legal_sentence": "cynnwys anghyfreithlon",
|
"report_notification.categories.legal_sentence": "cynnwys anghyfreithlon",
|
||||||
|
@ -759,7 +774,7 @@
|
||||||
"status.edited": "Golygwyd ddiwethaf {date}",
|
"status.edited": "Golygwyd ddiwethaf {date}",
|
||||||
"status.edited_x_times": "Golygwyd {count, plural, one {count} two {count} other {{count} gwaith}}",
|
"status.edited_x_times": "Golygwyd {count, plural, one {count} two {count} other {{count} gwaith}}",
|
||||||
"status.embed": "Mewnblannu",
|
"status.embed": "Mewnblannu",
|
||||||
"status.favourite": "Hoffi",
|
"status.favourite": "Ffafrio",
|
||||||
"status.favourites": "{count, plural, one {ffefryn} other {ffefryn}}",
|
"status.favourites": "{count, plural, one {ffefryn} other {ffefryn}}",
|
||||||
"status.filter": "Hidlo'r postiad hwn",
|
"status.filter": "Hidlo'r postiad hwn",
|
||||||
"status.history.created": "Crëwyd gan {name} {date}",
|
"status.history.created": "Crëwyd gan {name} {date}",
|
||||||
|
@ -798,7 +813,7 @@
|
||||||
"status.uncached_media_warning": "Dim rhagolwg ar gael",
|
"status.uncached_media_warning": "Dim rhagolwg ar gael",
|
||||||
"status.unmute_conversation": "Dad-dewi sgwrs",
|
"status.unmute_conversation": "Dad-dewi sgwrs",
|
||||||
"status.unpin": "Dadbinio o'r proffil",
|
"status.unpin": "Dadbinio o'r proffil",
|
||||||
"subscribed_languages.lead": "Dim ond postiadau mewn ieithoedd penodol fydd yn ymddangos yn eich ffrydiau ar ôl y newid. Dewiswch ddim byd i dderbyn postiadau ym mhob iaith.",
|
"subscribed_languages.lead": "Dim ond postiadau mewn ieithoedd penodol fydd yn ymddangos yn eich ffrydiau cartref a rhestr ar ôl y newid. Dewiswch ddim byd i dderbyn postiadau ym mhob iaith.",
|
||||||
"subscribed_languages.save": "Cadw'r newidiadau",
|
"subscribed_languages.save": "Cadw'r newidiadau",
|
||||||
"subscribed_languages.target": "Newid ieithoedd tanysgrifio {target}",
|
"subscribed_languages.target": "Newid ieithoedd tanysgrifio {target}",
|
||||||
"tabs_bar.home": "Cartref",
|
"tabs_bar.home": "Cartref",
|
||||||
|
@ -809,7 +824,7 @@
|
||||||
"time_remaining.moments": "Munudau yn weddill",
|
"time_remaining.moments": "Munudau yn weddill",
|
||||||
"time_remaining.seconds": "{number, plural, one {# eiliad} other {# eiliad}} ar ôl",
|
"time_remaining.seconds": "{number, plural, one {# eiliad} other {# eiliad}} ar ôl",
|
||||||
"trends.counter_by_accounts": "{count, plural, zero {neb} one {{counter} person} two {{counter} berson} few {{counter} pherson} other {{counter} o bobl}} yn y {days, plural, one {diwrnod diwethaf} two {ddeuddydd diwethaf} other {{days} diwrnod diwethaf}}",
|
"trends.counter_by_accounts": "{count, plural, zero {neb} one {{counter} person} two {{counter} berson} few {{counter} pherson} other {{counter} o bobl}} yn y {days, plural, one {diwrnod diwethaf} two {ddeuddydd diwethaf} other {{days} diwrnod diwethaf}}",
|
||||||
"trends.trending_now": "Yn trendio nawr",
|
"trends.trending_now": "Pynciau llosg",
|
||||||
"ui.beforeunload": "Byddwch yn colli eich drafft os byddwch yn gadael Mastodon.",
|
"ui.beforeunload": "Byddwch yn colli eich drafft os byddwch yn gadael Mastodon.",
|
||||||
"units.short.billion": "{count}biliwn",
|
"units.short.billion": "{count}biliwn",
|
||||||
"units.short.million": "{count}miliwn",
|
"units.short.million": "{count}miliwn",
|
||||||
|
|
|
@ -192,6 +192,8 @@
|
||||||
"confirmations.unfollow.confirm": "Dejar de seguir",
|
"confirmations.unfollow.confirm": "Dejar de seguir",
|
||||||
"confirmations.unfollow.message": "¿Estás seguro que querés dejar de seguir a {name}?",
|
"confirmations.unfollow.message": "¿Estás seguro que querés dejar de seguir a {name}?",
|
||||||
"confirmations.unfollow.title": "¿Dejar de seguir al usuario?",
|
"confirmations.unfollow.title": "¿Dejar de seguir al usuario?",
|
||||||
|
"content_warning.hide": "Ocultar mensaje",
|
||||||
|
"content_warning.show": "Mostrar de todos modos",
|
||||||
"conversation.delete": "Eliminar conversación",
|
"conversation.delete": "Eliminar conversación",
|
||||||
"conversation.mark_as_read": "Marcar como leída",
|
"conversation.mark_as_read": "Marcar como leída",
|
||||||
"conversation.open": "Ver conversación",
|
"conversation.open": "Ver conversación",
|
||||||
|
@ -299,6 +301,7 @@
|
||||||
"filter_modal.select_filter.subtitle": "Usar una categoría existente o crear una nueva",
|
"filter_modal.select_filter.subtitle": "Usar una categoría existente o crear una nueva",
|
||||||
"filter_modal.select_filter.title": "Filtrar este mensaje",
|
"filter_modal.select_filter.title": "Filtrar este mensaje",
|
||||||
"filter_modal.title.status": "Filtrar un mensaje",
|
"filter_modal.title.status": "Filtrar un mensaje",
|
||||||
|
"filter_warning.matches_filter": "Coincide con el filtro “{title}”",
|
||||||
"filtered_notifications_banner.pending_requests": "De {count, plural, =0 {nadie} one {una persona} other {# personas}} que podrías conocer",
|
"filtered_notifications_banner.pending_requests": "De {count, plural, =0 {nadie} one {una persona} other {# personas}} que podrías conocer",
|
||||||
"filtered_notifications_banner.title": "Notificaciones filtradas",
|
"filtered_notifications_banner.title": "Notificaciones filtradas",
|
||||||
"firehose.all": "Todos",
|
"firehose.all": "Todos",
|
||||||
|
|
|
@ -192,6 +192,8 @@
|
||||||
"confirmations.unfollow.confirm": "Dejar de seguir",
|
"confirmations.unfollow.confirm": "Dejar de seguir",
|
||||||
"confirmations.unfollow.message": "¿Estás seguro de que quieres dejar de seguir a {name}?",
|
"confirmations.unfollow.message": "¿Estás seguro de que quieres dejar de seguir a {name}?",
|
||||||
"confirmations.unfollow.title": "¿Dejar de seguir al usuario?",
|
"confirmations.unfollow.title": "¿Dejar de seguir al usuario?",
|
||||||
|
"content_warning.hide": "Ocultar publicación",
|
||||||
|
"content_warning.show": "Mostrar de todos modos",
|
||||||
"conversation.delete": "Borrar conversación",
|
"conversation.delete": "Borrar conversación",
|
||||||
"conversation.mark_as_read": "Marcar como leído",
|
"conversation.mark_as_read": "Marcar como leído",
|
||||||
"conversation.open": "Ver conversación",
|
"conversation.open": "Ver conversación",
|
||||||
|
@ -299,6 +301,7 @@
|
||||||
"filter_modal.select_filter.subtitle": "Usar una categoría existente o crear una nueva",
|
"filter_modal.select_filter.subtitle": "Usar una categoría existente o crear una nueva",
|
||||||
"filter_modal.select_filter.title": "Filtrar esta publicación",
|
"filter_modal.select_filter.title": "Filtrar esta publicación",
|
||||||
"filter_modal.title.status": "Filtrar una publicación",
|
"filter_modal.title.status": "Filtrar una publicación",
|
||||||
|
"filter_warning.matches_filter": "Coincide con el filtro “{title}”",
|
||||||
"filtered_notifications_banner.pending_requests": "De {count, plural, =0 {nadie} one {una persona} other {# personas}} que puede que conozcas",
|
"filtered_notifications_banner.pending_requests": "De {count, plural, =0 {nadie} one {una persona} other {# personas}} que puede que conozcas",
|
||||||
"filtered_notifications_banner.title": "Notificaciones filtradas",
|
"filtered_notifications_banner.title": "Notificaciones filtradas",
|
||||||
"firehose.all": "Todas",
|
"firehose.all": "Todas",
|
||||||
|
|
|
@ -192,6 +192,8 @@
|
||||||
"confirmations.unfollow.confirm": "Dejar de seguir",
|
"confirmations.unfollow.confirm": "Dejar de seguir",
|
||||||
"confirmations.unfollow.message": "¿Seguro que quieres dejar de seguir a {name}?",
|
"confirmations.unfollow.message": "¿Seguro que quieres dejar de seguir a {name}?",
|
||||||
"confirmations.unfollow.title": "¿Dejar de seguir al usuario?",
|
"confirmations.unfollow.title": "¿Dejar de seguir al usuario?",
|
||||||
|
"content_warning.hide": "Ocultar publicación",
|
||||||
|
"content_warning.show": "Mostrar de todos modos",
|
||||||
"conversation.delete": "Borrar conversación",
|
"conversation.delete": "Borrar conversación",
|
||||||
"conversation.mark_as_read": "Marcar como leído",
|
"conversation.mark_as_read": "Marcar como leído",
|
||||||
"conversation.open": "Ver conversación",
|
"conversation.open": "Ver conversación",
|
||||||
|
@ -299,6 +301,7 @@
|
||||||
"filter_modal.select_filter.subtitle": "Usar una categoría existente o crear una nueva",
|
"filter_modal.select_filter.subtitle": "Usar una categoría existente o crear una nueva",
|
||||||
"filter_modal.select_filter.title": "Filtrar esta publicación",
|
"filter_modal.select_filter.title": "Filtrar esta publicación",
|
||||||
"filter_modal.title.status": "Filtrar una publicación",
|
"filter_modal.title.status": "Filtrar una publicación",
|
||||||
|
"filter_warning.matches_filter": "Coincide con el filtro “{title}”",
|
||||||
"filtered_notifications_banner.pending_requests": "De {count, plural, =0 {nadie} one {una persona} other {# personas}} que puede que conozcas",
|
"filtered_notifications_banner.pending_requests": "De {count, plural, =0 {nadie} one {una persona} other {# personas}} que puede que conozcas",
|
||||||
"filtered_notifications_banner.title": "Notificaciones filtradas",
|
"filtered_notifications_banner.title": "Notificaciones filtradas",
|
||||||
"firehose.all": "Todas",
|
"firehose.all": "Todas",
|
||||||
|
|
|
@ -191,6 +191,8 @@
|
||||||
"confirmations.unfollow.confirm": "Ne plus suivre",
|
"confirmations.unfollow.confirm": "Ne plus suivre",
|
||||||
"confirmations.unfollow.message": "Voulez-vous vraiment arrêter de suivre {name}?",
|
"confirmations.unfollow.message": "Voulez-vous vraiment arrêter de suivre {name}?",
|
||||||
"confirmations.unfollow.title": "Se désabonner de l'utilisateur ?",
|
"confirmations.unfollow.title": "Se désabonner de l'utilisateur ?",
|
||||||
|
"content_warning.hide": "Masquer le message",
|
||||||
|
"content_warning.show": "Afficher quand même",
|
||||||
"conversation.delete": "Supprimer cette conversation",
|
"conversation.delete": "Supprimer cette conversation",
|
||||||
"conversation.mark_as_read": "Marquer comme lu",
|
"conversation.mark_as_read": "Marquer comme lu",
|
||||||
"conversation.open": "Afficher cette conversation",
|
"conversation.open": "Afficher cette conversation",
|
||||||
|
@ -298,6 +300,7 @@
|
||||||
"filter_modal.select_filter.subtitle": "Utilisez une catégorie existante ou en créer une nouvelle",
|
"filter_modal.select_filter.subtitle": "Utilisez une catégorie existante ou en créer une nouvelle",
|
||||||
"filter_modal.select_filter.title": "Filtrer cette publication",
|
"filter_modal.select_filter.title": "Filtrer cette publication",
|
||||||
"filter_modal.title.status": "Filtrer une publication",
|
"filter_modal.title.status": "Filtrer une publication",
|
||||||
|
"filter_warning.matches_filter": "Correspond au filtre « {title} »",
|
||||||
"filtered_notifications_banner.title": "Notifications filtrées",
|
"filtered_notifications_banner.title": "Notifications filtrées",
|
||||||
"firehose.all": "Tout",
|
"firehose.all": "Tout",
|
||||||
"firehose.local": "Ce serveur",
|
"firehose.local": "Ce serveur",
|
||||||
|
@ -307,6 +310,7 @@
|
||||||
"follow_requests.unlocked_explanation": "Même si votre compte n’est pas privé, l’équipe de {domain} a pensé que vous pourriez vouloir peut-être consulter manuellement les demandes d'abonnement de ces comptes.",
|
"follow_requests.unlocked_explanation": "Même si votre compte n’est pas privé, l’équipe de {domain} a pensé que vous pourriez vouloir peut-être consulter manuellement les demandes d'abonnement de ces comptes.",
|
||||||
"follow_suggestions.curated_suggestion": "Choix du staff",
|
"follow_suggestions.curated_suggestion": "Choix du staff",
|
||||||
"follow_suggestions.dismiss": "Ne plus afficher",
|
"follow_suggestions.dismiss": "Ne plus afficher",
|
||||||
|
"follow_suggestions.friends_of_friends_longer": "Populaire dans le cercle des personnes que vous suivez",
|
||||||
"follow_suggestions.hints.featured": "Ce profil a été sélectionné par l'équipe de {domain}.",
|
"follow_suggestions.hints.featured": "Ce profil a été sélectionné par l'équipe de {domain}.",
|
||||||
"follow_suggestions.hints.friends_of_friends": "Ce profil est populaire parmi les personnes que vous suivez.",
|
"follow_suggestions.hints.friends_of_friends": "Ce profil est populaire parmi les personnes que vous suivez.",
|
||||||
"follow_suggestions.hints.most_followed": "Ce profil est l'un des plus suivis sur {domain}.",
|
"follow_suggestions.hints.most_followed": "Ce profil est l'un des plus suivis sur {domain}.",
|
||||||
|
@ -315,6 +319,7 @@
|
||||||
"follow_suggestions.personalized_suggestion": "Suggestion personnalisée",
|
"follow_suggestions.personalized_suggestion": "Suggestion personnalisée",
|
||||||
"follow_suggestions.popular_suggestion": "Suggestion populaire",
|
"follow_suggestions.popular_suggestion": "Suggestion populaire",
|
||||||
"follow_suggestions.popular_suggestion_longer": "Populaire sur {domain}",
|
"follow_suggestions.popular_suggestion_longer": "Populaire sur {domain}",
|
||||||
|
"follow_suggestions.similar_to_recently_followed_longer": "Similaire aux profils que vous avez dernièrement suivis",
|
||||||
"follow_suggestions.view_all": "Tout afficher",
|
"follow_suggestions.view_all": "Tout afficher",
|
||||||
"follow_suggestions.who_to_follow": "Qui suivre",
|
"follow_suggestions.who_to_follow": "Qui suivre",
|
||||||
"followed_tags": "Hashtags suivis",
|
"followed_tags": "Hashtags suivis",
|
||||||
|
@ -343,8 +348,9 @@
|
||||||
"hashtag.follow": "Suivre ce hashtag",
|
"hashtag.follow": "Suivre ce hashtag",
|
||||||
"hashtag.unfollow": "Ne plus suivre ce hashtag",
|
"hashtag.unfollow": "Ne plus suivre ce hashtag",
|
||||||
"hashtags.and_other": "…et {count, plural, other {# de plus}}",
|
"hashtags.and_other": "…et {count, plural, other {# de plus}}",
|
||||||
|
"hints.profiles.see_more_followers": "Afficher plus d'abonné·e·s sur {domain}",
|
||||||
"hints.profiles.see_more_posts": "Voir plus de messages sur {domain}",
|
"hints.profiles.see_more_posts": "Voir plus de messages sur {domain}",
|
||||||
"hints.threads.see_more": "Voir plus de réponses sur {domain}",
|
"hints.threads.see_more": "Afficher plus de réponses sur {domain}",
|
||||||
"home.column_settings.show_reblogs": "Afficher boosts",
|
"home.column_settings.show_reblogs": "Afficher boosts",
|
||||||
"home.column_settings.show_replies": "Afficher réponses",
|
"home.column_settings.show_replies": "Afficher réponses",
|
||||||
"home.hide_announcements": "Masquer les annonces",
|
"home.hide_announcements": "Masquer les annonces",
|
||||||
|
@ -412,6 +418,7 @@
|
||||||
"limited_account_hint.action": "Afficher le profil quand même",
|
"limited_account_hint.action": "Afficher le profil quand même",
|
||||||
"limited_account_hint.title": "Ce profil a été masqué par la modération de {domain}.",
|
"limited_account_hint.title": "Ce profil a été masqué par la modération de {domain}.",
|
||||||
"link_preview.author": "Par {name}",
|
"link_preview.author": "Par {name}",
|
||||||
|
"link_preview.more_from_author": "Plus via {name}",
|
||||||
"link_preview.shares": "{count, plural, one {{counter} message} other {{counter} messages}}",
|
"link_preview.shares": "{count, plural, one {{counter} message} other {{counter} messages}}",
|
||||||
"lists.account.add": "Ajouter à une liste",
|
"lists.account.add": "Ajouter à une liste",
|
||||||
"lists.account.remove": "Retirer d'une liste",
|
"lists.account.remove": "Retirer d'une liste",
|
||||||
|
@ -506,6 +513,8 @@
|
||||||
"notifications.column_settings.admin.report": "Nouveaux signalements:",
|
"notifications.column_settings.admin.report": "Nouveaux signalements:",
|
||||||
"notifications.column_settings.admin.sign_up": "Nouvelles inscriptions:",
|
"notifications.column_settings.admin.sign_up": "Nouvelles inscriptions:",
|
||||||
"notifications.column_settings.alert": "Notifications navigateur",
|
"notifications.column_settings.alert": "Notifications navigateur",
|
||||||
|
"notifications.column_settings.beta.category": "Fonctionnalités expérimentales",
|
||||||
|
"notifications.column_settings.beta.grouping": "Grouper les notifications",
|
||||||
"notifications.column_settings.favourite": "Favoris:",
|
"notifications.column_settings.favourite": "Favoris:",
|
||||||
"notifications.column_settings.filter_bar.advanced": "Afficher toutes les catégories",
|
"notifications.column_settings.filter_bar.advanced": "Afficher toutes les catégories",
|
||||||
"notifications.column_settings.filter_bar.category": "Barre de filtre rapide",
|
"notifications.column_settings.filter_bar.category": "Barre de filtre rapide",
|
||||||
|
@ -534,7 +543,10 @@
|
||||||
"notifications.permission_denied": "Les notifications de bureau ne sont pas disponibles en raison d'une demande de permission de navigateur précédemment refusée",
|
"notifications.permission_denied": "Les notifications de bureau ne sont pas disponibles en raison d'une demande de permission de navigateur précédemment refusée",
|
||||||
"notifications.permission_denied_alert": "Les notifications de bureau ne peuvent pas être activées, car l’autorisation du navigateur a précedemment été refusée",
|
"notifications.permission_denied_alert": "Les notifications de bureau ne peuvent pas être activées, car l’autorisation du navigateur a précedemment été refusée",
|
||||||
"notifications.permission_required": "Les notifications de bureau ne sont pas disponibles car l’autorisation requise n’a pas été accordée.",
|
"notifications.permission_required": "Les notifications de bureau ne sont pas disponibles car l’autorisation requise n’a pas été accordée.",
|
||||||
|
"notifications.policy.accept": "Accepter",
|
||||||
|
"notifications.policy.accept_hint": "Afficher dans les notifications",
|
||||||
"notifications.policy.drop": "Ignorer",
|
"notifications.policy.drop": "Ignorer",
|
||||||
|
"notifications.policy.drop_hint": "Expulser vers le vide, pour ne plus jamais les revoir",
|
||||||
"notifications.policy.filter": "Filtrer",
|
"notifications.policy.filter": "Filtrer",
|
||||||
"notifications.policy.filter_limited_accounts_hint": "Limité par les modérateur·rice·s du serveur",
|
"notifications.policy.filter_limited_accounts_hint": "Limité par les modérateur·rice·s du serveur",
|
||||||
"notifications.policy.filter_limited_accounts_title": "Comptes modérés",
|
"notifications.policy.filter_limited_accounts_title": "Comptes modérés",
|
||||||
|
|
|
@ -191,6 +191,8 @@
|
||||||
"confirmations.unfollow.confirm": "Ne plus suivre",
|
"confirmations.unfollow.confirm": "Ne plus suivre",
|
||||||
"confirmations.unfollow.message": "Voulez-vous vraiment vous désabonner de {name} ?",
|
"confirmations.unfollow.message": "Voulez-vous vraiment vous désabonner de {name} ?",
|
||||||
"confirmations.unfollow.title": "Se désabonner de l'utilisateur ?",
|
"confirmations.unfollow.title": "Se désabonner de l'utilisateur ?",
|
||||||
|
"content_warning.hide": "Masquer le message",
|
||||||
|
"content_warning.show": "Afficher quand même",
|
||||||
"conversation.delete": "Supprimer la conversation",
|
"conversation.delete": "Supprimer la conversation",
|
||||||
"conversation.mark_as_read": "Marquer comme lu",
|
"conversation.mark_as_read": "Marquer comme lu",
|
||||||
"conversation.open": "Afficher la conversation",
|
"conversation.open": "Afficher la conversation",
|
||||||
|
@ -209,7 +211,7 @@
|
||||||
"dismissable_banner.explore_links": "On parle actuellement de ces nouvelles sur ce serveur, ainsi que sur d'autres serveurs du réseau décentralisé.",
|
"dismissable_banner.explore_links": "On parle actuellement de ces nouvelles sur ce serveur, ainsi que sur d'autres serveurs du réseau décentralisé.",
|
||||||
"dismissable_banner.explore_statuses": "Ces messages venant de tout le web social gagnent en popularité aujourd’hui. Les nouveaux messages avec plus de boosts et de favoris sont classés plus haut.",
|
"dismissable_banner.explore_statuses": "Ces messages venant de tout le web social gagnent en popularité aujourd’hui. Les nouveaux messages avec plus de boosts et de favoris sont classés plus haut.",
|
||||||
"dismissable_banner.explore_tags": "Ces hashtags sont actuellement en train de gagner de l'ampleur parmi les personnes sur les serveurs du réseau décentralisé dont celui-ci.",
|
"dismissable_banner.explore_tags": "Ces hashtags sont actuellement en train de gagner de l'ampleur parmi les personnes sur les serveurs du réseau décentralisé dont celui-ci.",
|
||||||
"dismissable_banner.public_timeline": "Ce sont les posts publics les plus récents de personnes sur le web social que les gens sur {domain} suivent.",
|
"dismissable_banner.public_timeline": "Il s'agit des messages publics les plus récents publiés par des gens sur le web social et que les utilisateurs de {domain} suivent.",
|
||||||
"domain_block_modal.block": "Bloquer le serveur",
|
"domain_block_modal.block": "Bloquer le serveur",
|
||||||
"domain_block_modal.block_account_instead": "Bloquer @{name} à la place",
|
"domain_block_modal.block_account_instead": "Bloquer @{name} à la place",
|
||||||
"domain_block_modal.they_can_interact_with_old_posts": "Les personnes de ce serveur peuvent interagir avec vos anciennes publications.",
|
"domain_block_modal.they_can_interact_with_old_posts": "Les personnes de ce serveur peuvent interagir avec vos anciennes publications.",
|
||||||
|
@ -298,6 +300,7 @@
|
||||||
"filter_modal.select_filter.subtitle": "Utilisez une catégorie existante ou en créer une nouvelle",
|
"filter_modal.select_filter.subtitle": "Utilisez une catégorie existante ou en créer une nouvelle",
|
||||||
"filter_modal.select_filter.title": "Filtrer ce message",
|
"filter_modal.select_filter.title": "Filtrer ce message",
|
||||||
"filter_modal.title.status": "Filtrer un message",
|
"filter_modal.title.status": "Filtrer un message",
|
||||||
|
"filter_warning.matches_filter": "Correspond au filtre « {title} »",
|
||||||
"filtered_notifications_banner.title": "Notifications filtrées",
|
"filtered_notifications_banner.title": "Notifications filtrées",
|
||||||
"firehose.all": "Tout",
|
"firehose.all": "Tout",
|
||||||
"firehose.local": "Ce serveur",
|
"firehose.local": "Ce serveur",
|
||||||
|
@ -307,6 +310,7 @@
|
||||||
"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.",
|
"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.",
|
||||||
"follow_suggestions.curated_suggestion": "Choix du staff",
|
"follow_suggestions.curated_suggestion": "Choix du staff",
|
||||||
"follow_suggestions.dismiss": "Ne plus afficher",
|
"follow_suggestions.dismiss": "Ne plus afficher",
|
||||||
|
"follow_suggestions.friends_of_friends_longer": "Populaire dans le cercle des personnes que vous suivez",
|
||||||
"follow_suggestions.hints.featured": "Ce profil a été sélectionné par l'équipe de {domain}.",
|
"follow_suggestions.hints.featured": "Ce profil a été sélectionné par l'équipe de {domain}.",
|
||||||
"follow_suggestions.hints.friends_of_friends": "Ce profil est populaire parmi les personnes que vous suivez.",
|
"follow_suggestions.hints.friends_of_friends": "Ce profil est populaire parmi les personnes que vous suivez.",
|
||||||
"follow_suggestions.hints.most_followed": "Ce profil est l'un des plus suivis sur {domain}.",
|
"follow_suggestions.hints.most_followed": "Ce profil est l'un des plus suivis sur {domain}.",
|
||||||
|
@ -315,6 +319,7 @@
|
||||||
"follow_suggestions.personalized_suggestion": "Suggestion personnalisée",
|
"follow_suggestions.personalized_suggestion": "Suggestion personnalisée",
|
||||||
"follow_suggestions.popular_suggestion": "Suggestion populaire",
|
"follow_suggestions.popular_suggestion": "Suggestion populaire",
|
||||||
"follow_suggestions.popular_suggestion_longer": "Populaire sur {domain}",
|
"follow_suggestions.popular_suggestion_longer": "Populaire sur {domain}",
|
||||||
|
"follow_suggestions.similar_to_recently_followed_longer": "Similaire aux profils que vous avez dernièrement suivis",
|
||||||
"follow_suggestions.view_all": "Tout afficher",
|
"follow_suggestions.view_all": "Tout afficher",
|
||||||
"follow_suggestions.who_to_follow": "Qui suivre",
|
"follow_suggestions.who_to_follow": "Qui suivre",
|
||||||
"followed_tags": "Hashtags suivis",
|
"followed_tags": "Hashtags suivis",
|
||||||
|
@ -343,8 +348,9 @@
|
||||||
"hashtag.follow": "Suivre le hashtag",
|
"hashtag.follow": "Suivre le hashtag",
|
||||||
"hashtag.unfollow": "Ne plus suivre le hashtag",
|
"hashtag.unfollow": "Ne plus suivre le hashtag",
|
||||||
"hashtags.and_other": "…et {count, plural, other {# de plus}}",
|
"hashtags.and_other": "…et {count, plural, other {# de plus}}",
|
||||||
|
"hints.profiles.see_more_followers": "Afficher plus d'abonné·e·s sur {domain}",
|
||||||
"hints.profiles.see_more_posts": "Voir plus de messages sur {domain}",
|
"hints.profiles.see_more_posts": "Voir plus de messages sur {domain}",
|
||||||
"hints.threads.see_more": "Voir plus de réponses sur {domain}",
|
"hints.threads.see_more": "Afficher plus de réponses sur {domain}",
|
||||||
"home.column_settings.show_reblogs": "Afficher les partages",
|
"home.column_settings.show_reblogs": "Afficher les partages",
|
||||||
"home.column_settings.show_replies": "Afficher les réponses",
|
"home.column_settings.show_replies": "Afficher les réponses",
|
||||||
"home.hide_announcements": "Masquer les annonces",
|
"home.hide_announcements": "Masquer les annonces",
|
||||||
|
@ -412,6 +418,7 @@
|
||||||
"limited_account_hint.action": "Afficher le profil quand même",
|
"limited_account_hint.action": "Afficher le profil quand même",
|
||||||
"limited_account_hint.title": "Ce profil a été masqué par la modération de {domain}.",
|
"limited_account_hint.title": "Ce profil a été masqué par la modération de {domain}.",
|
||||||
"link_preview.author": "Par {name}",
|
"link_preview.author": "Par {name}",
|
||||||
|
"link_preview.more_from_author": "Plus via {name}",
|
||||||
"link_preview.shares": "{count, plural, one {{counter} message} other {{counter} messages}}",
|
"link_preview.shares": "{count, plural, one {{counter} message} other {{counter} messages}}",
|
||||||
"lists.account.add": "Ajouter à la liste",
|
"lists.account.add": "Ajouter à la liste",
|
||||||
"lists.account.remove": "Supprimer de la liste",
|
"lists.account.remove": "Supprimer de la liste",
|
||||||
|
@ -506,6 +513,8 @@
|
||||||
"notifications.column_settings.admin.report": "Nouveaux signalements :",
|
"notifications.column_settings.admin.report": "Nouveaux signalements :",
|
||||||
"notifications.column_settings.admin.sign_up": "Nouvelles inscriptions :",
|
"notifications.column_settings.admin.sign_up": "Nouvelles inscriptions :",
|
||||||
"notifications.column_settings.alert": "Notifications du navigateur",
|
"notifications.column_settings.alert": "Notifications du navigateur",
|
||||||
|
"notifications.column_settings.beta.category": "Fonctionnalités expérimentales",
|
||||||
|
"notifications.column_settings.beta.grouping": "Grouper les notifications",
|
||||||
"notifications.column_settings.favourite": "Favoris :",
|
"notifications.column_settings.favourite": "Favoris :",
|
||||||
"notifications.column_settings.filter_bar.advanced": "Afficher toutes les catégories",
|
"notifications.column_settings.filter_bar.advanced": "Afficher toutes les catégories",
|
||||||
"notifications.column_settings.filter_bar.category": "Barre de filtre rapide",
|
"notifications.column_settings.filter_bar.category": "Barre de filtre rapide",
|
||||||
|
@ -534,7 +543,10 @@
|
||||||
"notifications.permission_denied": "Impossible d’activer les notifications de bureau car l’autorisation a été refusée.",
|
"notifications.permission_denied": "Impossible d’activer les notifications de bureau car l’autorisation a été refusée.",
|
||||||
"notifications.permission_denied_alert": "Les notifications de bureau ne peuvent pas être activées, car l’autorisation du navigateur a été refusée avant",
|
"notifications.permission_denied_alert": "Les notifications de bureau ne peuvent pas être activées, car l’autorisation du navigateur a été refusée avant",
|
||||||
"notifications.permission_required": "Les notifications de bureau ne sont pas disponibles car l’autorisation requise n’a pas été accordée.",
|
"notifications.permission_required": "Les notifications de bureau ne sont pas disponibles car l’autorisation requise n’a pas été accordée.",
|
||||||
|
"notifications.policy.accept": "Accepter",
|
||||||
|
"notifications.policy.accept_hint": "Afficher dans les notifications",
|
||||||
"notifications.policy.drop": "Ignorer",
|
"notifications.policy.drop": "Ignorer",
|
||||||
|
"notifications.policy.drop_hint": "Expulser vers le vide, pour ne plus jamais les revoir",
|
||||||
"notifications.policy.filter": "Filtrer",
|
"notifications.policy.filter": "Filtrer",
|
||||||
"notifications.policy.filter_limited_accounts_hint": "Limité par les modérateur·rice·s du serveur",
|
"notifications.policy.filter_limited_accounts_hint": "Limité par les modérateur·rice·s du serveur",
|
||||||
"notifications.policy.filter_limited_accounts_title": "Comptes modérés",
|
"notifications.policy.filter_limited_accounts_title": "Comptes modérés",
|
||||||
|
@ -669,7 +681,7 @@
|
||||||
"report.thanks.title": "Vous ne voulez pas voir cela ?",
|
"report.thanks.title": "Vous ne voulez pas voir cela ?",
|
||||||
"report.thanks.title_actionable": "Merci pour votre signalement, nous allons investiguer.",
|
"report.thanks.title_actionable": "Merci pour votre signalement, nous allons investiguer.",
|
||||||
"report.unfollow": "Ne plus suivre @{name}",
|
"report.unfollow": "Ne plus suivre @{name}",
|
||||||
"report.unfollow_explanation": "Vous suivez ce compte. Désabonnez-vous pour ne plus en voir les messages sur votre fil principal.",
|
"report.unfollow_explanation": "Vous êtes abonné à ce compte. Pour ne plus voir ses publications dans votre flux principal, retirez-le de votre liste d'abonnements.",
|
||||||
"report_notification.attached_statuses": "{count, plural, one {{count} message lié} other {{count} messages liés}}",
|
"report_notification.attached_statuses": "{count, plural, one {{count} message lié} other {{count} messages liés}}",
|
||||||
"report_notification.categories.legal": "Légal",
|
"report_notification.categories.legal": "Légal",
|
||||||
"report_notification.categories.legal_sentence": "contenu illégal",
|
"report_notification.categories.legal_sentence": "contenu illégal",
|
||||||
|
|
|
@ -192,6 +192,8 @@
|
||||||
"confirmations.unfollow.confirm": "Ná lean",
|
"confirmations.unfollow.confirm": "Ná lean",
|
||||||
"confirmations.unfollow.message": "An bhfuil tú cinnte gur mhaith leat {name} a dhíleanúint?",
|
"confirmations.unfollow.message": "An bhfuil tú cinnte gur mhaith leat {name} a dhíleanúint?",
|
||||||
"confirmations.unfollow.title": "Dílean an t-úsáideoir?",
|
"confirmations.unfollow.title": "Dílean an t-úsáideoir?",
|
||||||
|
"content_warning.hide": "Folaigh postáil",
|
||||||
|
"content_warning.show": "Taispeáin ar aon nós",
|
||||||
"conversation.delete": "Scrios comhrá",
|
"conversation.delete": "Scrios comhrá",
|
||||||
"conversation.mark_as_read": "Marcáil mar léite",
|
"conversation.mark_as_read": "Marcáil mar léite",
|
||||||
"conversation.open": "Féach ar comhrá",
|
"conversation.open": "Féach ar comhrá",
|
||||||
|
@ -299,6 +301,7 @@
|
||||||
"filter_modal.select_filter.subtitle": "Bain úsáid as catagóir reatha nó cruthaigh ceann nua",
|
"filter_modal.select_filter.subtitle": "Bain úsáid as catagóir reatha nó cruthaigh ceann nua",
|
||||||
"filter_modal.select_filter.title": "Déan scagadh ar an bpostáil seo",
|
"filter_modal.select_filter.title": "Déan scagadh ar an bpostáil seo",
|
||||||
"filter_modal.title.status": "Déan scagadh ar phostáil",
|
"filter_modal.title.status": "Déan scagadh ar phostáil",
|
||||||
|
"filter_warning.matches_filter": "Meaitseálann an scagaire “{title}”",
|
||||||
"filtered_notifications_banner.pending_requests": "Ó {count, plural, =0 {duine ar bith} one {duine amháin} two {# daoine} few {# daoine} many {# daoine} other {# daoine}} b’fhéidir go bhfuil aithne agat orthu",
|
"filtered_notifications_banner.pending_requests": "Ó {count, plural, =0 {duine ar bith} one {duine amháin} two {# daoine} few {# daoine} many {# daoine} other {# daoine}} b’fhéidir go bhfuil aithne agat orthu",
|
||||||
"filtered_notifications_banner.title": "Fógraí scagtha",
|
"filtered_notifications_banner.title": "Fógraí scagtha",
|
||||||
"firehose.all": "Gach",
|
"firehose.all": "Gach",
|
||||||
|
@ -348,6 +351,14 @@
|
||||||
"hashtag.follow": "Lean haischlib",
|
"hashtag.follow": "Lean haischlib",
|
||||||
"hashtag.unfollow": "Ná lean haischlib",
|
"hashtag.unfollow": "Ná lean haischlib",
|
||||||
"hashtags.and_other": "agus {count, plural, one {} two {# níos} few {# níos} many {# níos} other {# níos}}",
|
"hashtags.and_other": "agus {count, plural, one {} two {# níos} few {# níos} many {# níos} other {# níos}}",
|
||||||
|
"hints.profiles.followers_may_be_missing": "Seans go bhfuil leantóirí don phróifíl seo in easnamh.",
|
||||||
|
"hints.profiles.follows_may_be_missing": "Seans go bhfuil na nithe seo a leanas in easnamh ar an bpróifíl seo.",
|
||||||
|
"hints.profiles.posts_may_be_missing": "Seans go bhfuil roinnt postálacha ón bpróifíl seo in easnamh.",
|
||||||
|
"hints.profiles.see_more_followers": "Féach ar a thuilleadh leantóirí ar {domain}",
|
||||||
|
"hints.profiles.see_more_follows": "Féach tuilleadh seo a leanas ar {domain}",
|
||||||
|
"hints.profiles.see_more_posts": "Féach ar a thuilleadh postálacha ar {domain}",
|
||||||
|
"hints.threads.replies_may_be_missing": "Seans go bhfuil freagraí ó fhreastalaithe eile in easnamh.",
|
||||||
|
"hints.threads.see_more": "Féach ar a thuilleadh freagraí ar {domain}",
|
||||||
"home.column_settings.show_reblogs": "Taispeáin moltaí",
|
"home.column_settings.show_reblogs": "Taispeáin moltaí",
|
||||||
"home.column_settings.show_replies": "Taispeán freagraí",
|
"home.column_settings.show_replies": "Taispeán freagraí",
|
||||||
"home.hide_announcements": "Cuir fógraí i bhfolach",
|
"home.hide_announcements": "Cuir fógraí i bhfolach",
|
||||||
|
@ -487,9 +498,13 @@
|
||||||
"notification.admin.report_statuses": "Thuairiscigh {name} {target} le haghaidh {category}",
|
"notification.admin.report_statuses": "Thuairiscigh {name} {target} le haghaidh {category}",
|
||||||
"notification.admin.report_statuses_other": "{name} tuairiscithe {target}",
|
"notification.admin.report_statuses_other": "{name} tuairiscithe {target}",
|
||||||
"notification.admin.sign_up": "Chláraigh {name}",
|
"notification.admin.sign_up": "Chláraigh {name}",
|
||||||
|
"notification.admin.sign_up.name_and_others": "{name} agus {count, plural, one {# duine eile} two {# daoine eile} few {# daoine eile} many {# daoine eile} other {# daoine eile}} a chláraigh",
|
||||||
"notification.favourite": "Is fearr le {name} do phostáil",
|
"notification.favourite": "Is fearr le {name} do phostáil",
|
||||||
|
"notification.favourite.name_and_others_with_link": "{name} agus <a>{count, plural, one {# duine eile} other {# daoine eile}}</a> thaitin le do phost",
|
||||||
"notification.follow": "Lean {name} thú",
|
"notification.follow": "Lean {name} thú",
|
||||||
|
"notification.follow.name_and_others": "{name} agus {count, plural, one {# duine eile} other {# daoine eile}} a lean tú",
|
||||||
"notification.follow_request": "D'iarr {name} ort do chuntas a leanúint",
|
"notification.follow_request": "D'iarr {name} ort do chuntas a leanúint",
|
||||||
|
"notification.follow_request.name_and_others": "{name} agus {count, plural, one {# duine eile} other {# daoine eile}} iarratas a dhéanamh chun tú a leanúint",
|
||||||
"notification.label.mention": "Luaigh",
|
"notification.label.mention": "Luaigh",
|
||||||
"notification.label.private_mention": "Lua príobháideach",
|
"notification.label.private_mention": "Lua príobháideach",
|
||||||
"notification.label.private_reply": "Freagra príobháideach",
|
"notification.label.private_reply": "Freagra príobháideach",
|
||||||
|
@ -507,6 +522,7 @@
|
||||||
"notification.own_poll": "Tá do suirbhé críochnaithe",
|
"notification.own_poll": "Tá do suirbhé críochnaithe",
|
||||||
"notification.poll": "Tá deireadh le vótaíocht inar vótáil tú",
|
"notification.poll": "Tá deireadh le vótaíocht inar vótáil tú",
|
||||||
"notification.reblog": "Mhol {name} do phostáil",
|
"notification.reblog": "Mhol {name} do phostáil",
|
||||||
|
"notification.reblog.name_and_others_with_link": "{name} agus <a>{count, plural, one {# duine eile} other {# daoine eile}}</a> a chuir borradh faoi do phost",
|
||||||
"notification.relationships_severance_event": "Cailleadh naisc le {name}",
|
"notification.relationships_severance_event": "Cailleadh naisc le {name}",
|
||||||
"notification.relationships_severance_event.account_suspension": "Chuir riarthóir ó {from} {target} ar fionraí, rud a chiallaíonn nach féidir leat nuashonruithe a fháil uathu a thuilleadh ná idirghníomhú leo.",
|
"notification.relationships_severance_event.account_suspension": "Chuir riarthóir ó {from} {target} ar fionraí, rud a chiallaíonn nach féidir leat nuashonruithe a fháil uathu a thuilleadh ná idirghníomhú leo.",
|
||||||
"notification.relationships_severance_event.domain_block": "Chuir riarthóir ó {from} bac ar {target}, lena n-áirítear {followersCount} de do leantóirí agus {followingCount, plural, one {#cuntas} other {#cuntas}} leanann tú.",
|
"notification.relationships_severance_event.domain_block": "Chuir riarthóir ó {from} bac ar {target}, lena n-áirítear {followersCount} de do leantóirí agus {followingCount, plural, one {#cuntas} other {#cuntas}} leanann tú.",
|
||||||
|
@ -515,7 +531,17 @@
|
||||||
"notification.status": "Phostáil {name} díreach",
|
"notification.status": "Phostáil {name} díreach",
|
||||||
"notification.update": "Chuir {name} postáil in eagar",
|
"notification.update": "Chuir {name} postáil in eagar",
|
||||||
"notification_requests.accept": "Glac",
|
"notification_requests.accept": "Glac",
|
||||||
|
"notification_requests.accept_multiple": "{count, plural, one {Glac le # iarratas…} other {Glac le # iarratais…}}",
|
||||||
|
"notification_requests.confirm_accept_multiple.button": "{count, plural, one {Glac le hIarratas} other {Glac le hIarratais}}",
|
||||||
|
"notification_requests.confirm_accept_multiple.message": "Tá tú ar tí glacadh le {count, plural, one {iarratas fógra amháin} other {# iarratas fógra}}. An bhfuil tú cinnte gur mian leat leanúint ar aghaidh?",
|
||||||
|
"notification_requests.confirm_accept_multiple.title": "Glac le hiarratais ar fhógra?",
|
||||||
|
"notification_requests.confirm_dismiss_multiple.button": "{count, plural, one {Dún iarratas} other {Dún iarratais}}",
|
||||||
|
"notification_requests.confirm_dismiss_multiple.message": "Tá tú ar tí iarratas fógra {count, plural, one {a hAon} other {#}} a dhúnadh. Ní bheidh tú in ann {count, plural, one {é} other {iad}} a fháil go héasca arís. An bhfuil tú cinnte gur mian leat leanúint ar aghaidh?",
|
||||||
|
"notification_requests.confirm_dismiss_multiple.title": "An bhfuil fonn ort iarratais ar fhógra a dhíbhe?",
|
||||||
"notification_requests.dismiss": "Díbhe",
|
"notification_requests.dismiss": "Díbhe",
|
||||||
|
"notification_requests.dismiss_multiple": "{count, plural, one {Dún # iarratas…} other {Dún # iarratais…}}",
|
||||||
|
"notification_requests.edit_selection": "Cuir in eagar",
|
||||||
|
"notification_requests.exit_selection": "Déanta",
|
||||||
"notification_requests.explainer_for_limited_account": "Scagadh fógraí ón gcuntas seo toisc go bhfuil an cuntas teoranta ag modhnóir.",
|
"notification_requests.explainer_for_limited_account": "Scagadh fógraí ón gcuntas seo toisc go bhfuil an cuntas teoranta ag modhnóir.",
|
||||||
"notification_requests.explainer_for_limited_remote_account": "Scagadh fógraí ón gcuntas seo toisc go bhfuil an cuntas nó a fhreastalaí teoranta ag modhnóir.",
|
"notification_requests.explainer_for_limited_remote_account": "Scagadh fógraí ón gcuntas seo toisc go bhfuil an cuntas nó a fhreastalaí teoranta ag modhnóir.",
|
||||||
"notification_requests.maximize": "Uasmhéadaigh",
|
"notification_requests.maximize": "Uasmhéadaigh",
|
||||||
|
|
|
@ -192,6 +192,8 @@
|
||||||
"confirmations.unfollow.confirm": "Na lean tuilleadh",
|
"confirmations.unfollow.confirm": "Na lean tuilleadh",
|
||||||
"confirmations.unfollow.message": "A bheil thu cinnteach nach eil thu airson {name} a leantainn tuilleadh?",
|
"confirmations.unfollow.message": "A bheil thu cinnteach nach eil thu airson {name} a leantainn tuilleadh?",
|
||||||
"confirmations.unfollow.title": "A bheil thu airson sgur de leantainn a chleachdaiche?",
|
"confirmations.unfollow.title": "A bheil thu airson sgur de leantainn a chleachdaiche?",
|
||||||
|
"content_warning.hide": "Falaich am post",
|
||||||
|
"content_warning.show": "Seall e co-dhiù",
|
||||||
"conversation.delete": "Sguab às an còmhradh",
|
"conversation.delete": "Sguab às an còmhradh",
|
||||||
"conversation.mark_as_read": "Cuir comharra gun deach a leughadh",
|
"conversation.mark_as_read": "Cuir comharra gun deach a leughadh",
|
||||||
"conversation.open": "Seall an còmhradh",
|
"conversation.open": "Seall an còmhradh",
|
||||||
|
@ -299,6 +301,7 @@
|
||||||
"filter_modal.select_filter.subtitle": "Cleachd roinn-seòrsa a tha ann no cruthaich tè ùr",
|
"filter_modal.select_filter.subtitle": "Cleachd roinn-seòrsa a tha ann no cruthaich tè ùr",
|
||||||
"filter_modal.select_filter.title": "Criathraich am post seo",
|
"filter_modal.select_filter.title": "Criathraich am post seo",
|
||||||
"filter_modal.title.status": "Criathraich post",
|
"filter_modal.title.status": "Criathraich post",
|
||||||
|
"filter_warning.matches_filter": "A’ maidseadh na criathraige “{title}”",
|
||||||
"filtered_notifications_banner.pending_requests": "{count, plural, =0 {Chan eil gin ann} one {O # neach} two {O # neach} few {O # daoine} other {O # duine}} air a bheil thu eòlach ’s dòcha",
|
"filtered_notifications_banner.pending_requests": "{count, plural, =0 {Chan eil gin ann} one {O # neach} two {O # neach} few {O # daoine} other {O # duine}} air a bheil thu eòlach ’s dòcha",
|
||||||
"filtered_notifications_banner.title": "Brathan criathraichte",
|
"filtered_notifications_banner.title": "Brathan criathraichte",
|
||||||
"firehose.all": "Na h-uile",
|
"firehose.all": "Na h-uile",
|
||||||
|
@ -348,6 +351,14 @@
|
||||||
"hashtag.follow": "Lean an taga hais",
|
"hashtag.follow": "Lean an taga hais",
|
||||||
"hashtag.unfollow": "Na lean an taga hais tuilleadh",
|
"hashtag.unfollow": "Na lean an taga hais tuilleadh",
|
||||||
"hashtags.and_other": "…agus {count, plural, one {# eile} two {# eile} few {# eile} other {# eile}}",
|
"hashtags.and_other": "…agus {count, plural, one {# eile} two {# eile} few {# eile} other {# eile}}",
|
||||||
|
"hints.profiles.followers_may_be_missing": "Dh’fhaoidte gu bheil cuid dhen luchd-leantainn na pròifil seo a dhìth.",
|
||||||
|
"hints.profiles.follows_may_be_missing": "Dh’fhaoidte gu bheil cuid a tha a’ phròifil seo a’ leantainn a dhìth.",
|
||||||
|
"hints.profiles.posts_may_be_missing": "Dh’fhaoide gu bheil cuid dhe na postaichean aig a’ phròifil seo a dhìth.",
|
||||||
|
"hints.profiles.see_more_followers": "Faic barrachd luchd-leantainn air {domain}",
|
||||||
|
"hints.profiles.see_more_follows": "Faic barrachd a tha 'gan leantainn air {domain}",
|
||||||
|
"hints.profiles.see_more_posts": "Faic barrachd phostaichean air {domain}",
|
||||||
|
"hints.threads.replies_may_be_missing": "Dh’fhaoidte gu bheil freagairtean o fhrithealaichean eile a dhìth.",
|
||||||
|
"hints.threads.see_more": "Faic barrachd fhreagairtean air {domain}",
|
||||||
"home.column_settings.show_reblogs": "Seall na brosnachaidhean",
|
"home.column_settings.show_reblogs": "Seall na brosnachaidhean",
|
||||||
"home.column_settings.show_replies": "Seall na freagairtean",
|
"home.column_settings.show_replies": "Seall na freagairtean",
|
||||||
"home.hide_announcements": "Falaich na brathan-fios",
|
"home.hide_announcements": "Falaich na brathan-fios",
|
||||||
|
@ -487,9 +498,13 @@
|
||||||
"notification.admin.report_statuses": "Rinn {name} gearan mu {target} air adhbhar {category}",
|
"notification.admin.report_statuses": "Rinn {name} gearan mu {target} air adhbhar {category}",
|
||||||
"notification.admin.report_statuses_other": "Rinn {name} gearan mu {target}",
|
"notification.admin.report_statuses_other": "Rinn {name} gearan mu {target}",
|
||||||
"notification.admin.sign_up": "Chlàraich {name}",
|
"notification.admin.sign_up": "Chlàraich {name}",
|
||||||
|
"notification.admin.sign_up.name_and_others": "Chlàraich {name} ’s {count, plural, one {# eile} two {# eile} few {# eile} other {# eile}}",
|
||||||
"notification.favourite": "Is annsa le {name} am post agad",
|
"notification.favourite": "Is annsa le {name} am post agad",
|
||||||
|
"notification.favourite.name_and_others_with_link": "Is annsa le {name} ’s <a>{count, plural, one {# eile} two {# eile} few {# eile} other {# eile}}</a> am post agad",
|
||||||
"notification.follow": "Tha {name} ’gad leantainn a-nis",
|
"notification.follow": "Tha {name} ’gad leantainn a-nis",
|
||||||
|
"notification.follow.name_and_others": "Lean {name} ’s {count, plural, one {# eile} two {# eile} few {# eile} other {# eile}} thu",
|
||||||
"notification.follow_request": "Dh’iarr {name} ’gad leantainn",
|
"notification.follow_request": "Dh’iarr {name} ’gad leantainn",
|
||||||
|
"notification.follow_request.name_and_others": "Dh’iarr {name} ’s {count, plural, one {# eile} two {# eile} few {# eile} other {# eile}} ’gad leantainn",
|
||||||
"notification.label.mention": "Iomradh",
|
"notification.label.mention": "Iomradh",
|
||||||
"notification.label.private_mention": "Iomradh prìobhaideach",
|
"notification.label.private_mention": "Iomradh prìobhaideach",
|
||||||
"notification.label.private_reply": "Freagairt phrìobhaideach",
|
"notification.label.private_reply": "Freagairt phrìobhaideach",
|
||||||
|
@ -507,6 +522,7 @@
|
||||||
"notification.own_poll": "Thàinig an cunntas-bheachd agad gu crìoch",
|
"notification.own_poll": "Thàinig an cunntas-bheachd agad gu crìoch",
|
||||||
"notification.poll": "Thàinig cunntas-bheachd sa bhòt thu gu crìoch",
|
"notification.poll": "Thàinig cunntas-bheachd sa bhòt thu gu crìoch",
|
||||||
"notification.reblog": "Bhrosnaich {name} am post agad",
|
"notification.reblog": "Bhrosnaich {name} am post agad",
|
||||||
|
"notification.reblog.name_and_others_with_link": "Bhrosnaich {name} ’s <a>{count, plural, one {# eile} two {# eile} few {# eile} other {# eile}}</a> am post agad",
|
||||||
"notification.relationships_severance_event": "Chaill thu dàimhean le {name}",
|
"notification.relationships_severance_event": "Chaill thu dàimhean le {name}",
|
||||||
"notification.relationships_severance_event.account_suspension": "Chuir rianaire aig {from} {target} à rèim agus is ciall dha sin nach fhaigh thu naidheachdan uapa ’s nach urrainn dhut conaltradh leotha.",
|
"notification.relationships_severance_event.account_suspension": "Chuir rianaire aig {from} {target} à rèim agus is ciall dha sin nach fhaigh thu naidheachdan uapa ’s nach urrainn dhut conaltradh leotha.",
|
||||||
"notification.relationships_severance_event.domain_block": "Bhac rianaire aig {from} {target}, a’ gabhail a-staigh {followersCount} dhen luchd-leantainn agad agus {followingCount, plural, one {# chunntas} two {# chunntas} few {# cunntasan} other {# cunntas}} a tha thu fhèin a’ leantainn.",
|
"notification.relationships_severance_event.domain_block": "Bhac rianaire aig {from} {target}, a’ gabhail a-staigh {followersCount} dhen luchd-leantainn agad agus {followingCount, plural, one {# chunntas} two {# chunntas} few {# cunntasan} other {# cunntas}} a tha thu fhèin a’ leantainn.",
|
||||||
|
@ -515,7 +531,17 @@
|
||||||
"notification.status": "Phostaich {name} rud",
|
"notification.status": "Phostaich {name} rud",
|
||||||
"notification.update": "Dheasaich {name} post",
|
"notification.update": "Dheasaich {name} post",
|
||||||
"notification_requests.accept": "Gabh ris",
|
"notification_requests.accept": "Gabh ris",
|
||||||
|
"notification_requests.accept_multiple": "{count, plural, one {Gabh ri # iarrtas…} two {Gabh ri # iarrtas…} few {Gabh ri # iarrtasan…} other {Gabh ri # iarrtas…}}",
|
||||||
|
"notification_requests.confirm_accept_multiple.button": "{count, plural, one {Gabh ris an t-iarrtas} two {Gabh ris na h-iarrtasan} few {Gabh ris na h-iarrtasan} other {Gabh ris na h-iarrtasan}}",
|
||||||
|
"notification_requests.confirm_accept_multiple.message": "Tha thu gu bhith gabhail ri {count, plural, one {# iarrtas bratha} two {# iarrtas bratha} few {# iarrtasan bratha} other {# iarrtas bratha}} a leigeil seachad. A bheil thu cinnteach gu bheil thu airson leantainn air adhart?",
|
||||||
|
"notification_requests.confirm_accept_multiple.title": "A bheil thu airson gabhail ri iarrtasan bratha?",
|
||||||
|
"notification_requests.confirm_dismiss_multiple.button": "{count, plural, one {Leig seachad an t-iarrtas} two {Leig seachad na h-iarrtasan} few {Leig seachad na h-iarrtasan} other {Leig seachad na h-iarrtasan}}",
|
||||||
|
"notification_requests.confirm_dismiss_multiple.message": "Tha thu gu bhith {count, plural, one {# iarrtas bratha} two {# iarrtas bratha} few {# iarrtasan bratha} other {# iarrtas bratha}} a leigeil seachad. Chan fhaigh thu grèim {count, plural, one {air} two {orra} few {orra} other {orra}} a-rithist gun duilgheadas. A bheil thu cinnteach gu bheil thu airson leantainn air adhart?",
|
||||||
|
"notification_requests.confirm_dismiss_multiple.title": "A bheil thu airson iarrtasan bratha a leigeil seachad?",
|
||||||
"notification_requests.dismiss": "Leig seachad",
|
"notification_requests.dismiss": "Leig seachad",
|
||||||
|
"notification_requests.dismiss_multiple": "{count, plural, one {Leig seachad # iarrtas…} two {Leig seachad # iarrtas…} few {Leig seachad # iarrtasan…} other {Leig seachad # iarrtas…}}",
|
||||||
|
"notification_requests.edit_selection": "Deasaich",
|
||||||
|
"notification_requests.exit_selection": "Deiseil",
|
||||||
"notification_requests.explainer_for_limited_account": "Chaidh na brathan on chunntas seo a chriathradh on a chaidh an cunntas a chuingeachadh le maor.",
|
"notification_requests.explainer_for_limited_account": "Chaidh na brathan on chunntas seo a chriathradh on a chaidh an cunntas a chuingeachadh le maor.",
|
||||||
"notification_requests.explainer_for_limited_remote_account": "Chaidh na brathan on chunntas seo a chriathradh on a chaidh an cunntas no am frithealaiche aige a chuingeachadh le maor.",
|
"notification_requests.explainer_for_limited_remote_account": "Chaidh na brathan on chunntas seo a chriathradh on a chaidh an cunntas no am frithealaiche aige a chuingeachadh le maor.",
|
||||||
"notification_requests.maximize": "Làn-mheudaich",
|
"notification_requests.maximize": "Làn-mheudaich",
|
||||||
|
@ -569,7 +595,7 @@
|
||||||
"notifications.policy.filter_limited_accounts_title": "Cunntasan fo mhaorsainneachd",
|
"notifications.policy.filter_limited_accounts_title": "Cunntasan fo mhaorsainneachd",
|
||||||
"notifications.policy.filter_new_accounts.hint": "A chaidh a chruthachadh o chionn {days, plural, one {# latha} two {# latha} few {# làithean} other {# latha}}",
|
"notifications.policy.filter_new_accounts.hint": "A chaidh a chruthachadh o chionn {days, plural, one {# latha} two {# latha} few {# làithean} other {# latha}}",
|
||||||
"notifications.policy.filter_new_accounts_title": "Cunntasan ùra",
|
"notifications.policy.filter_new_accounts_title": "Cunntasan ùra",
|
||||||
"notifications.policy.filter_not_followers_hint": "A’ gabhail a-staigh an fheadhainn a lean ort nas lugha na {days, plural, one {# latha} two {# latha} few {# làithean} other {# latha}} seo chaidh",
|
"notifications.policy.filter_not_followers_hint": "A’ gabhail a-staigh an fheadhainn a lean thu nas lugha na {days, plural, one {# latha} two {# latha} few {# làithean} other {# latha}} seo chaidh",
|
||||||
"notifications.policy.filter_not_followers_title": "Daoine nach eil gad leantainn",
|
"notifications.policy.filter_not_followers_title": "Daoine nach eil gad leantainn",
|
||||||
"notifications.policy.filter_not_following_hint": "Gus an aontaich thu riutha a làimh",
|
"notifications.policy.filter_not_following_hint": "Gus an aontaich thu riutha a làimh",
|
||||||
"notifications.policy.filter_not_following_title": "Daoine nach eil thu a’ leantainn",
|
"notifications.policy.filter_not_following_title": "Daoine nach eil thu a’ leantainn",
|
||||||
|
|
|
@ -192,6 +192,8 @@
|
||||||
"confirmations.unfollow.confirm": "הפסקת מעקב",
|
"confirmations.unfollow.confirm": "הפסקת מעקב",
|
||||||
"confirmations.unfollow.message": "להפסיק מעקב אחרי {name}?",
|
"confirmations.unfollow.message": "להפסיק מעקב אחרי {name}?",
|
||||||
"confirmations.unfollow.title": "לבטל מעקב אחר המשתמש.ת?",
|
"confirmations.unfollow.title": "לבטל מעקב אחר המשתמש.ת?",
|
||||||
|
"content_warning.hide": "הסתרת חיצרוץ",
|
||||||
|
"content_warning.show": "להציג בכל זאת",
|
||||||
"conversation.delete": "מחיקת שיחה",
|
"conversation.delete": "מחיקת שיחה",
|
||||||
"conversation.mark_as_read": "סמן כנקרא",
|
"conversation.mark_as_read": "סמן כנקרא",
|
||||||
"conversation.open": "צפו בשיחה",
|
"conversation.open": "צפו בשיחה",
|
||||||
|
@ -299,6 +301,7 @@
|
||||||
"filter_modal.select_filter.subtitle": "שימוש בקטגורייה קיימת או יצירת אחת חדשה",
|
"filter_modal.select_filter.subtitle": "שימוש בקטגורייה קיימת או יצירת אחת חדשה",
|
||||||
"filter_modal.select_filter.title": "סינון ההודעה הזו",
|
"filter_modal.select_filter.title": "סינון ההודעה הזו",
|
||||||
"filter_modal.title.status": "סנן הודעה",
|
"filter_modal.title.status": "סנן הודעה",
|
||||||
|
"filter_warning.matches_filter": "תואם לסנן “{title}”",
|
||||||
"filtered_notifications_banner.pending_requests": "{count, plural,=0 {אין בקשות ממשתמשים }one {בקשה אחת ממישהו/מישהי }two {יש בקשותיים ממשתמשים }other {יש # בקשות ממשתמשים }}שאולי מוכרים לך",
|
"filtered_notifications_banner.pending_requests": "{count, plural,=0 {אין בקשות ממשתמשים }one {בקשה אחת ממישהו/מישהי }two {יש בקשותיים ממשתמשים }other {יש # בקשות ממשתמשים }}שאולי מוכרים לך",
|
||||||
"filtered_notifications_banner.title": "התראות מסוננות",
|
"filtered_notifications_banner.title": "התראות מסוננות",
|
||||||
"firehose.all": "הכל",
|
"firehose.all": "הכל",
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"about.blocks": "Server yang dimoderasi",
|
"about.blocks": "Server yang dimoderasi",
|
||||||
"about.contact": "Hubungi:",
|
"about.contact": "Kontak:",
|
||||||
"about.disclaimer": "Mastodon adalah perangkat lunak bebas dan sumber terbuka, dan adalah merek dagang dari Mastodon gGmbH.",
|
"about.disclaimer": "perangkat lunak sumber terbuperangkat lunak sumber terbukaka184124.",
|
||||||
"about.domain_blocks.no_reason_available": "Alasan tidak tersedia",
|
"about.domain_blocks.no_reason_available": "Alasan tidak tersedia",
|
||||||
"about.domain_blocks.preamble": "Mastodon umumnya mengizinkan Anda untuk melihat konten dan berinteraksi dengan pengguna dari server lain di fediverse. Ini adalah pengecualian yang dibuat untuk beberapa server.",
|
"about.domain_blocks.preamble": "Mastodon umumnya mengizinkan Anda untuk melihat konten dan berinteraksi dengan pengguna dari server lain di fediverse. Ini adalah pengecualian yang dibuat untuk beberapa server.",
|
||||||
"about.domain_blocks.silenced.explanation": "Anda secara umum tidak melihat profil dan konten dari server ini, kecuali jika Anda mencarinya atau memilihnya dengan mengikuti secara eksplisit.",
|
"about.domain_blocks.silenced.explanation": "Anda secara umum tidak melihat profil dan konten dari server ini, kecuali jika Anda mencarinya atau memilihnya dengan mengikuti secara eksplisit.",
|
||||||
|
@ -11,6 +11,7 @@
|
||||||
"about.not_available": "Informasi ini belum tersedia di server ini.",
|
"about.not_available": "Informasi ini belum tersedia di server ini.",
|
||||||
"about.powered_by": "Media sosial terdesentralisasi diberdayakan oleh {mastodon}",
|
"about.powered_by": "Media sosial terdesentralisasi diberdayakan oleh {mastodon}",
|
||||||
"about.rules": "Aturan server",
|
"about.rules": "Aturan server",
|
||||||
|
"account.account_note_header": "Personal note",
|
||||||
"account.add_or_remove_from_list": "Tambah atau Hapus dari daftar",
|
"account.add_or_remove_from_list": "Tambah atau Hapus dari daftar",
|
||||||
"account.badges.bot": "Bot",
|
"account.badges.bot": "Bot",
|
||||||
"account.badges.group": "Grup",
|
"account.badges.group": "Grup",
|
||||||
|
@ -33,7 +34,9 @@
|
||||||
"account.follow_back": "Ikuti balik",
|
"account.follow_back": "Ikuti balik",
|
||||||
"account.followers": "Pengikut",
|
"account.followers": "Pengikut",
|
||||||
"account.followers.empty": "Pengguna ini belum ada pengikut.",
|
"account.followers.empty": "Pengguna ini belum ada pengikut.",
|
||||||
|
"account.followers_counter": "{count, plural, other {{counter} followers}}",
|
||||||
"account.following": "Mengikuti",
|
"account.following": "Mengikuti",
|
||||||
|
"account.following_counter": "{count, plural, other {{counter} following}}",
|
||||||
"account.follows.empty": "Pengguna ini belum mengikuti siapa pun.",
|
"account.follows.empty": "Pengguna ini belum mengikuti siapa pun.",
|
||||||
"account.go_to_profile": "Buka profil",
|
"account.go_to_profile": "Buka profil",
|
||||||
"account.hide_reblogs": "Sembunyikan boosts dari @{name}",
|
"account.hide_reblogs": "Sembunyikan boosts dari @{name}",
|
||||||
|
@ -59,6 +62,7 @@
|
||||||
"account.requested_follow": "{name} ingin mengikuti Anda",
|
"account.requested_follow": "{name} ingin mengikuti Anda",
|
||||||
"account.share": "Bagikan profil @{name}",
|
"account.share": "Bagikan profil @{name}",
|
||||||
"account.show_reblogs": "Tampilkan boost dari @{name}",
|
"account.show_reblogs": "Tampilkan boost dari @{name}",
|
||||||
|
"account.statuses_counter": "{count, plural, other {{counter} posts}}",
|
||||||
"account.unblock": "Buka blokir @{name}",
|
"account.unblock": "Buka blokir @{name}",
|
||||||
"account.unblock_domain": "Buka blokir domain {domain}",
|
"account.unblock_domain": "Buka blokir domain {domain}",
|
||||||
"account.unblock_short": "Buka blokir",
|
"account.unblock_short": "Buka blokir",
|
||||||
|
@ -166,21 +170,30 @@
|
||||||
"confirmations.block.confirm": "Blokir",
|
"confirmations.block.confirm": "Blokir",
|
||||||
"confirmations.delete.confirm": "Hapus",
|
"confirmations.delete.confirm": "Hapus",
|
||||||
"confirmations.delete.message": "Apakah Anda yakin untuk menghapus kiriman ini?",
|
"confirmations.delete.message": "Apakah Anda yakin untuk menghapus kiriman ini?",
|
||||||
|
"confirmations.delete.title": "Delete post?",
|
||||||
"confirmations.delete_list.confirm": "Hapus",
|
"confirmations.delete_list.confirm": "Hapus",
|
||||||
"confirmations.delete_list.message": "Apakah Anda yakin untuk menghapus daftar ini secara permanen?",
|
"confirmations.delete_list.message": "Apakah Anda yakin untuk menghapus daftar ini secara permanen?",
|
||||||
|
"confirmations.delete_list.title": "Delete list?",
|
||||||
"confirmations.discard_edit_media.confirm": "Buang",
|
"confirmations.discard_edit_media.confirm": "Buang",
|
||||||
"confirmations.discard_edit_media.message": "Anda belum menyimpan perubahan deskripsi atau pratinjau media, buang saja?",
|
"confirmations.discard_edit_media.message": "Anda belum menyimpan perubahan deskripsi atau pratinjau media, buang saja?",
|
||||||
"confirmations.edit.confirm": "Ubah",
|
"confirmations.edit.confirm": "Ubah",
|
||||||
"confirmations.edit.message": "Mengubah akan menimpa pesan yang sedang anda tulis. Apakah anda yakin ingin melanjutkan?",
|
"confirmations.edit.message": "Mengubah akan menimpa pesan yang sedang anda tulis. Apakah anda yakin ingin melanjutkan?",
|
||||||
|
"confirmations.edit.title": "Overwrite post?",
|
||||||
"confirmations.logout.confirm": "Keluar",
|
"confirmations.logout.confirm": "Keluar",
|
||||||
"confirmations.logout.message": "Apakah Anda yakin ingin keluar?",
|
"confirmations.logout.message": "Apakah Anda yakin ingin keluar?",
|
||||||
|
"confirmations.logout.title": "Log out?",
|
||||||
"confirmations.mute.confirm": "Bisukan",
|
"confirmations.mute.confirm": "Bisukan",
|
||||||
"confirmations.redraft.confirm": "Hapus dan susun ulang",
|
"confirmations.redraft.confirm": "Hapus dan susun ulang",
|
||||||
"confirmations.redraft.message": "Apakah anda yakin ingin menghapus postingan ini dan menyusun ulang postingan ini? Favorit dan peningkatan akan hilang, dan balasan ke postingan asli tidak akan terhubung ke postingan manapun.",
|
"confirmations.redraft.message": "Apakah anda yakin ingin menghapus postingan ini dan menyusun ulang postingan ini? Favorit dan peningkatan akan hilang, dan balasan ke postingan asli tidak akan terhubung ke postingan manapun.",
|
||||||
|
"confirmations.redraft.title": "Delete & redraft post?",
|
||||||
"confirmations.reply.confirm": "Balas",
|
"confirmations.reply.confirm": "Balas",
|
||||||
"confirmations.reply.message": "Membalas sekarang akan menimpa pesan yang sedang Anda buat. Anda yakin ingin melanjutkan?",
|
"confirmations.reply.message": "Membalas sekarang akan menimpa pesan yang sedang Anda buat. Anda yakin ingin melanjutkan?",
|
||||||
|
"confirmations.reply.title": "Delete & redraft post?",
|
||||||
"confirmations.unfollow.confirm": "Berhenti mengikuti",
|
"confirmations.unfollow.confirm": "Berhenti mengikuti",
|
||||||
"confirmations.unfollow.message": "Apakah Anda ingin berhenti mengikuti {name}?",
|
"confirmations.unfollow.message": "Apakah Anda ingin berhenti mengikuti {name}?",
|
||||||
|
"confirmations.unfollow.title": "Unfollow user?",
|
||||||
|
"content_warning.hide": "Hide post",
|
||||||
|
"content_warning.show": "Show anyway",
|
||||||
"conversation.delete": "Hapus percakapan",
|
"conversation.delete": "Hapus percakapan",
|
||||||
"conversation.mark_as_read": "Tandai sudah dibaca",
|
"conversation.mark_as_read": "Tandai sudah dibaca",
|
||||||
"conversation.open": "Lihat percakapan",
|
"conversation.open": "Lihat percakapan",
|
||||||
|
@ -217,7 +230,9 @@
|
||||||
"domain_pill.username": "Nama pengguna",
|
"domain_pill.username": "Nama pengguna",
|
||||||
"domain_pill.whats_in_a_handle": "Apa itu nama pengguna?",
|
"domain_pill.whats_in_a_handle": "Apa itu nama pengguna?",
|
||||||
"domain_pill.who_they_are": "Karena nama pengguna menunjukkan siapa seseorang dan di mana server mereka berada, anda dapat berinteraksi dengan orang-orang di seluruh web sosial <button>ActivityPub-powered platforms</button>.",
|
"domain_pill.who_they_are": "Karena nama pengguna menunjukkan siapa seseorang dan di mana server mereka berada, anda dapat berinteraksi dengan orang-orang di seluruh web sosial <button>ActivityPub-powered platforms</button>.",
|
||||||
|
"domain_pill.who_you_are": "<button>ActivityPub-powered platforms</button>.",
|
||||||
"domain_pill.your_handle": "Nama pengguna anda:",
|
"domain_pill.your_handle": "Nama pengguna anda:",
|
||||||
|
"domain_pill.your_server": "Your digital home, where all of your posts live. Don’t like this one? Transfer servers at any time and bring your followers, too.",
|
||||||
"embed.instructions": "Sematkan kiriman ini di situs web Anda dengan menyalin kode di bawah ini.",
|
"embed.instructions": "Sematkan kiriman ini di situs web Anda dengan menyalin kode di bawah ini.",
|
||||||
"embed.preview": "Tampilan akan seperti ini nantinya:",
|
"embed.preview": "Tampilan akan seperti ini nantinya:",
|
||||||
"emoji_button.activity": "Aktivitas",
|
"emoji_button.activity": "Aktivitas",
|
||||||
|
|
|
@ -436,7 +436,7 @@
|
||||||
"lightbox.previous": "Fyrra",
|
"lightbox.previous": "Fyrra",
|
||||||
"limited_account_hint.action": "Birta notandasniðið samt",
|
"limited_account_hint.action": "Birta notandasniðið samt",
|
||||||
"limited_account_hint.title": "Þetta notandasnið hefur verið falið af umsjónarmönnum {domain}.",
|
"limited_account_hint.title": "Þetta notandasnið hefur verið falið af umsjónarmönnum {domain}.",
|
||||||
"link_preview.author": "Eftir {name}",
|
"link_preview.author": "Frá {name}",
|
||||||
"link_preview.more_from_author": "Meira frá {name}",
|
"link_preview.more_from_author": "Meira frá {name}",
|
||||||
"link_preview.shares": "{count, plural, one {{counter} færsla} other {{counter} færslur}}",
|
"link_preview.shares": "{count, plural, one {{counter} færsla} other {{counter} færslur}}",
|
||||||
"lists.account.add": "Bæta á lista",
|
"lists.account.add": "Bæta á lista",
|
||||||
|
|
|
@ -170,21 +170,30 @@
|
||||||
"confirmations.block.confirm": "ブロック",
|
"confirmations.block.confirm": "ブロック",
|
||||||
"confirmations.delete.confirm": "削除",
|
"confirmations.delete.confirm": "削除",
|
||||||
"confirmations.delete.message": "本当に削除しますか?",
|
"confirmations.delete.message": "本当に削除しますか?",
|
||||||
|
"confirmations.delete.title": "投稿を削除しようとしています",
|
||||||
"confirmations.delete_list.confirm": "削除",
|
"confirmations.delete_list.confirm": "削除",
|
||||||
"confirmations.delete_list.message": "本当にこのリストを完全に削除しますか?",
|
"confirmations.delete_list.message": "本当にこのリストを完全に削除しますか?",
|
||||||
|
"confirmations.delete_list.title": "リストを削除しようとしています",
|
||||||
"confirmations.discard_edit_media.confirm": "破棄",
|
"confirmations.discard_edit_media.confirm": "破棄",
|
||||||
"confirmations.discard_edit_media.message": "メディアの説明またはプレビューに保存されていない変更があります。それでも破棄しますか?",
|
"confirmations.discard_edit_media.message": "メディアの説明またはプレビューに保存されていない変更があります。それでも破棄しますか?",
|
||||||
"confirmations.edit.confirm": "編集",
|
"confirmations.edit.confirm": "編集",
|
||||||
"confirmations.edit.message": "今編集すると現在作成中のメッセージが上書きされます。本当に実行しますか?",
|
"confirmations.edit.message": "今編集すると現在作成中のメッセージが上書きされます。本当に実行しますか?",
|
||||||
|
"confirmations.edit.title": "作成中の内容を上書きしようとしています",
|
||||||
"confirmations.logout.confirm": "ログアウト",
|
"confirmations.logout.confirm": "ログアウト",
|
||||||
"confirmations.logout.message": "本当にログアウトしますか?",
|
"confirmations.logout.message": "本当にログアウトしますか?",
|
||||||
|
"confirmations.logout.title": "ログアウトしようとしています",
|
||||||
"confirmations.mute.confirm": "ミュート",
|
"confirmations.mute.confirm": "ミュート",
|
||||||
"confirmations.redraft.confirm": "削除して下書きに戻す",
|
"confirmations.redraft.confirm": "削除して下書きに戻す",
|
||||||
"confirmations.redraft.message": "投稿を削除して下書きに戻します。この投稿へのお気に入り登録やブーストは失われ、返信は孤立することになります。よろしいですか?",
|
"confirmations.redraft.message": "投稿を削除して下書きに戻します。この投稿へのお気に入り登録やブーストは失われ、返信は孤立することになります。よろしいですか?",
|
||||||
|
"confirmations.redraft.title": "投稿の削除と下書きの再作成",
|
||||||
"confirmations.reply.confirm": "返信",
|
"confirmations.reply.confirm": "返信",
|
||||||
"confirmations.reply.message": "今返信すると現在作成中のメッセージが上書きされます。本当に実行しますか?",
|
"confirmations.reply.message": "今返信すると現在作成中のメッセージが上書きされます。本当に実行しますか?",
|
||||||
|
"confirmations.reply.title": "作成中の内容を上書きしようとしています",
|
||||||
"confirmations.unfollow.confirm": "フォロー解除",
|
"confirmations.unfollow.confirm": "フォロー解除",
|
||||||
"confirmations.unfollow.message": "本当に{name}さんのフォローを解除しますか?",
|
"confirmations.unfollow.message": "本当に{name}さんのフォローを解除しますか?",
|
||||||
|
"confirmations.unfollow.title": "フォローを解除しようとしています",
|
||||||
|
"content_warning.hide": "投稿を隠す",
|
||||||
|
"content_warning.show": "承知の上で表示",
|
||||||
"conversation.delete": "会話を削除",
|
"conversation.delete": "会話を削除",
|
||||||
"conversation.mark_as_read": "既読にする",
|
"conversation.mark_as_read": "既読にする",
|
||||||
"conversation.open": "会話を表示",
|
"conversation.open": "会話を表示",
|
||||||
|
@ -292,6 +301,7 @@
|
||||||
"filter_modal.select_filter.subtitle": "既存のカテゴリーを使用するか新規作成します",
|
"filter_modal.select_filter.subtitle": "既存のカテゴリーを使用するか新規作成します",
|
||||||
"filter_modal.select_filter.title": "この投稿をフィルターする",
|
"filter_modal.select_filter.title": "この投稿をフィルターする",
|
||||||
"filter_modal.title.status": "投稿をフィルターする",
|
"filter_modal.title.status": "投稿をフィルターする",
|
||||||
|
"filter_warning.matches_filter": "フィルター「{title}」に一致する投稿です",
|
||||||
"filtered_notifications_banner.pending_requests": "{count, plural, =0 {すべて完了しました} other {#人の通知がブロックされています}}",
|
"filtered_notifications_banner.pending_requests": "{count, plural, =0 {すべて完了しました} other {#人の通知がブロックされています}}",
|
||||||
"filtered_notifications_banner.title": "保留中の通知",
|
"filtered_notifications_banner.title": "保留中の通知",
|
||||||
"firehose.all": "すべて",
|
"firehose.all": "すべて",
|
||||||
|
@ -493,11 +503,14 @@
|
||||||
"notification.update": "{name}さんが投稿を編集しました",
|
"notification.update": "{name}さんが投稿を編集しました",
|
||||||
"notification_requests.accept": "受け入れる",
|
"notification_requests.accept": "受け入れる",
|
||||||
"notification_requests.dismiss": "無視",
|
"notification_requests.dismiss": "無視",
|
||||||
|
"notification_requests.explainer_for_limited_account": "このアカウントはモデレーターにより制限が課されているため、このアカウントによる通知は保留されています",
|
||||||
|
"notification_requests.explainer_for_limited_remote_account": "このアカウントが所属するサーバーはモデレーターにより制限が課されているため、このアカウントによる通知は保留されています",
|
||||||
"notification_requests.minimize_banner": "「保留中の通知」のバナーを最小化する",
|
"notification_requests.minimize_banner": "「保留中の通知」のバナーを最小化する",
|
||||||
"notification_requests.notifications_from": "{name}からの通知",
|
"notification_requests.notifications_from": "{name}からの通知",
|
||||||
"notification_requests.title": "保留中の通知",
|
"notification_requests.title": "保留中の通知",
|
||||||
"notifications.clear": "通知を消去",
|
"notifications.clear": "通知を消去",
|
||||||
"notifications.clear_confirmation": "本当に通知を消去しますか?",
|
"notifications.clear_confirmation": "本当に通知を消去しますか?",
|
||||||
|
"notifications.clear_title": "通知を消去しようとしています",
|
||||||
"notifications.column_settings.admin.report": "新しい通報:",
|
"notifications.column_settings.admin.report": "新しい通報:",
|
||||||
"notifications.column_settings.admin.sign_up": "新規登録:",
|
"notifications.column_settings.admin.sign_up": "新規登録:",
|
||||||
"notifications.column_settings.alert": "デスクトップ通知",
|
"notifications.column_settings.alert": "デスクトップ通知",
|
||||||
|
|
|
@ -192,6 +192,8 @@
|
||||||
"confirmations.unfollow.confirm": "팔로우 해제",
|
"confirmations.unfollow.confirm": "팔로우 해제",
|
||||||
"confirmations.unfollow.message": "정말로 {name} 님을 팔로우 해제하시겠습니까?",
|
"confirmations.unfollow.message": "정말로 {name} 님을 팔로우 해제하시겠습니까?",
|
||||||
"confirmations.unfollow.title": "사용자를 언팔로우 할까요?",
|
"confirmations.unfollow.title": "사용자를 언팔로우 할까요?",
|
||||||
|
"content_warning.hide": "게시물 숨기기",
|
||||||
|
"content_warning.show": "무시하고 보기",
|
||||||
"conversation.delete": "대화 삭제",
|
"conversation.delete": "대화 삭제",
|
||||||
"conversation.mark_as_read": "읽은 상태로 표시",
|
"conversation.mark_as_read": "읽은 상태로 표시",
|
||||||
"conversation.open": "대화 보기",
|
"conversation.open": "대화 보기",
|
||||||
|
@ -299,6 +301,7 @@
|
||||||
"filter_modal.select_filter.subtitle": "기존의 카테고리를 사용하거나 새로 하나를 만듧니다",
|
"filter_modal.select_filter.subtitle": "기존의 카테고리를 사용하거나 새로 하나를 만듧니다",
|
||||||
"filter_modal.select_filter.title": "이 게시물을 필터",
|
"filter_modal.select_filter.title": "이 게시물을 필터",
|
||||||
"filter_modal.title.status": "게시물 필터",
|
"filter_modal.title.status": "게시물 필터",
|
||||||
|
"filter_warning.matches_filter": "\"{title}\" 필터에 걸림",
|
||||||
"filtered_notifications_banner.pending_requests": "알 수도 있는 {count, plural, =0 {0 명} one {한 명} other {# 명}}의 사람들로부터",
|
"filtered_notifications_banner.pending_requests": "알 수도 있는 {count, plural, =0 {0 명} one {한 명} other {# 명}}의 사람들로부터",
|
||||||
"filtered_notifications_banner.title": "걸러진 알림",
|
"filtered_notifications_banner.title": "걸러진 알림",
|
||||||
"firehose.all": "모두",
|
"firehose.all": "모두",
|
||||||
|
|
|
@ -193,6 +193,7 @@
|
||||||
"confirmations.unfollow.message": "Er du sikker på at du vil slutta å fylgja {name}?",
|
"confirmations.unfollow.message": "Er du sikker på at du vil slutta å fylgja {name}?",
|
||||||
"confirmations.unfollow.title": "Slutt å fylgja brukaren?",
|
"confirmations.unfollow.title": "Slutt å fylgja brukaren?",
|
||||||
"content_warning.hide": "Gøym innlegg",
|
"content_warning.hide": "Gøym innlegg",
|
||||||
|
"content_warning.show": "Vis likevel",
|
||||||
"conversation.delete": "Slett samtale",
|
"conversation.delete": "Slett samtale",
|
||||||
"conversation.mark_as_read": "Marker som lesen",
|
"conversation.mark_as_read": "Marker som lesen",
|
||||||
"conversation.open": "Sjå samtale",
|
"conversation.open": "Sjå samtale",
|
||||||
|
@ -300,6 +301,7 @@
|
||||||
"filter_modal.select_filter.subtitle": "Bruk ein eksisterande kategori eller opprett ein ny",
|
"filter_modal.select_filter.subtitle": "Bruk ein eksisterande kategori eller opprett ein ny",
|
||||||
"filter_modal.select_filter.title": "Filtrer dette innlegget",
|
"filter_modal.select_filter.title": "Filtrer dette innlegget",
|
||||||
"filter_modal.title.status": "Filtrer eit innlegg",
|
"filter_modal.title.status": "Filtrer eit innlegg",
|
||||||
|
"filter_warning.matches_filter": "Passar med filteret «{title}»",
|
||||||
"filtered_notifications_banner.pending_requests": "Frå {count, plural, =0 {ingen} one {éin person} other {# personar}} du kanskje kjenner",
|
"filtered_notifications_banner.pending_requests": "Frå {count, plural, =0 {ingen} one {éin person} other {# personar}} du kanskje kjenner",
|
||||||
"filtered_notifications_banner.title": "Filtrerte varslingar",
|
"filtered_notifications_banner.title": "Filtrerte varslingar",
|
||||||
"firehose.all": "Alle",
|
"firehose.all": "Alle",
|
||||||
|
@ -349,6 +351,14 @@
|
||||||
"hashtag.follow": "Fylg emneknagg",
|
"hashtag.follow": "Fylg emneknagg",
|
||||||
"hashtag.unfollow": "Slutt å fylgje emneknaggen",
|
"hashtag.unfollow": "Slutt å fylgje emneknaggen",
|
||||||
"hashtags.and_other": "…og {count, plural, one {}other {# fleire}}",
|
"hashtags.and_other": "…og {count, plural, one {}other {# fleire}}",
|
||||||
|
"hints.profiles.followers_may_be_missing": "Kven som fylgjer denne profilen manglar kanskje.",
|
||||||
|
"hints.profiles.follows_may_be_missing": "Kven denne profilen fylgjer manglar kanskje.",
|
||||||
|
"hints.profiles.posts_may_be_missing": "Nokre innlegg frå denne profilen manglar kanskje.",
|
||||||
|
"hints.profiles.see_more_followers": "Sjå fleire fylgjarar på {domain}",
|
||||||
|
"hints.profiles.see_more_follows": "Sjå fleire fylgjer på {domain}",
|
||||||
|
"hints.profiles.see_more_posts": "Sjå fleire innlegg på {domain}",
|
||||||
|
"hints.threads.replies_may_be_missing": "Svar frå andre tenarar manglar kanskje.",
|
||||||
|
"hints.threads.see_more": "Sjå fleire svar på {domain}",
|
||||||
"home.column_settings.show_reblogs": "Vis framhevingar",
|
"home.column_settings.show_reblogs": "Vis framhevingar",
|
||||||
"home.column_settings.show_replies": "Vis svar",
|
"home.column_settings.show_replies": "Vis svar",
|
||||||
"home.hide_announcements": "Skjul kunngjeringar",
|
"home.hide_announcements": "Skjul kunngjeringar",
|
||||||
|
@ -488,9 +498,13 @@
|
||||||
"notification.admin.report_statuses": "{name} rapporterte {target} for {category}",
|
"notification.admin.report_statuses": "{name} rapporterte {target} for {category}",
|
||||||
"notification.admin.report_statuses_other": "{name} rapporterte {target}",
|
"notification.admin.report_statuses_other": "{name} rapporterte {target}",
|
||||||
"notification.admin.sign_up": "{name} er registrert",
|
"notification.admin.sign_up": "{name} er registrert",
|
||||||
|
"notification.admin.sign_up.name_and_others": "{name} og {count, plural, one {# annan} other {# andre}} vart med",
|
||||||
"notification.favourite": "{name} markerte innlegget ditt som favoritt",
|
"notification.favourite": "{name} markerte innlegget ditt som favoritt",
|
||||||
|
"notification.favourite.name_and_others_with_link": "{name} og <a>{count, plural, one {# annan} other {# andre}}</a> favorittmerka innlegget ditt",
|
||||||
"notification.follow": "{name} fylgde deg",
|
"notification.follow": "{name} fylgde deg",
|
||||||
|
"notification.follow.name_and_others": "{name} og {count, plural, one {# annan} other {# andre}} fylgde deg",
|
||||||
"notification.follow_request": "{name} har bedt om å fylgja deg",
|
"notification.follow_request": "{name} har bedt om å fylgja deg",
|
||||||
|
"notification.follow_request.name_and_others": "{name} og {count, plural, one {# annan} other {# andre}} har spurt om å fylgja deg",
|
||||||
"notification.label.mention": "Omtale",
|
"notification.label.mention": "Omtale",
|
||||||
"notification.label.private_mention": "Privat omtale",
|
"notification.label.private_mention": "Privat omtale",
|
||||||
"notification.label.private_reply": "Privat svar",
|
"notification.label.private_reply": "Privat svar",
|
||||||
|
@ -508,6 +522,7 @@
|
||||||
"notification.own_poll": "Rundspørjinga di er ferdig",
|
"notification.own_poll": "Rundspørjinga di er ferdig",
|
||||||
"notification.poll": "Ei rundspørjing du røysta i er ferdig",
|
"notification.poll": "Ei rundspørjing du røysta i er ferdig",
|
||||||
"notification.reblog": "{name} framheva innlegget ditt",
|
"notification.reblog": "{name} framheva innlegget ditt",
|
||||||
|
"notification.reblog.name_and_others_with_link": "{name} og <a>{count, plural, one {# annan} other {# andre}}</a> framheva innlegget ditt",
|
||||||
"notification.relationships_severance_event": "Tapte samband med {name}",
|
"notification.relationships_severance_event": "Tapte samband med {name}",
|
||||||
"notification.relationships_severance_event.account_suspension": "Ein administrator på {from} har utvist {target}, som tyder at du ikkje lenger får oppdateringar frå dei eller kan samhandla med dei.",
|
"notification.relationships_severance_event.account_suspension": "Ein administrator på {from} har utvist {target}, som tyder at du ikkje lenger får oppdateringar frå dei eller kan samhandla med dei.",
|
||||||
"notification.relationships_severance_event.domain_block": "Ein administrator på {from} har blokkert {target}, inkludert {followersCount} av fylgjarane dine og {followingCount, plural, one {# konto} other {# kontoar}} du fylgjer.",
|
"notification.relationships_severance_event.domain_block": "Ein administrator på {from} har blokkert {target}, inkludert {followersCount} av fylgjarane dine og {followingCount, plural, one {# konto} other {# kontoar}} du fylgjer.",
|
||||||
|
@ -516,7 +531,17 @@
|
||||||
"notification.status": "{name} la nettopp ut",
|
"notification.status": "{name} la nettopp ut",
|
||||||
"notification.update": "{name} redigerte eit innlegg",
|
"notification.update": "{name} redigerte eit innlegg",
|
||||||
"notification_requests.accept": "Godkjenn",
|
"notification_requests.accept": "Godkjenn",
|
||||||
|
"notification_requests.accept_multiple": "{count, plural, one {Godta # førespurnad…} other {Godta # førespurnader…}}",
|
||||||
|
"notification_requests.confirm_accept_multiple.button": "{count, plural, one {Godta førespurnad} other {Godta førespurnader}}",
|
||||||
|
"notification_requests.confirm_accept_multiple.message": "Du er i ferd med å godta {count, plural, one {ein førespurnad om varsling} other {# førespurnader om varsling}}. Er du sikker på at du vil halda fram?",
|
||||||
|
"notification_requests.confirm_accept_multiple.title": "Godta førespurnader om varsling?",
|
||||||
|
"notification_requests.confirm_dismiss_multiple.button": "{count, plural, one {Avvis førespurnad} other {Avvis førespurnader}}",
|
||||||
|
"notification_requests.confirm_dismiss_multiple.message": "Du er i ferd med å avvisa {count, plural, one {ein førespurnad om varsel} other {# førespurnader om varsel}}. Det blir ikkje lett å få tilgang til {count, plural, one {han} other {dei}} att. Er du sikker på at du vil halda fram?",
|
||||||
|
"notification_requests.confirm_dismiss_multiple.title": "Avvis førespurnader om varsel?",
|
||||||
"notification_requests.dismiss": "Avvis",
|
"notification_requests.dismiss": "Avvis",
|
||||||
|
"notification_requests.dismiss_multiple": "{count, plural, one {Avvis # førespurnad…} other {Avvis # førespurnader…}}",
|
||||||
|
"notification_requests.edit_selection": "Rediger",
|
||||||
|
"notification_requests.exit_selection": "Ferdig",
|
||||||
"notification_requests.explainer_for_limited_account": "Varsla frå denne kontoen er filtrerte ut fordi ein moderator har avgrensa kontoen.",
|
"notification_requests.explainer_for_limited_account": "Varsla frå denne kontoen er filtrerte ut fordi ein moderator har avgrensa kontoen.",
|
||||||
"notification_requests.explainer_for_limited_remote_account": "Varla frå denne kontoen er filtrerte ut fordi ein moderator har avgrensa kontoen eller tenaren.",
|
"notification_requests.explainer_for_limited_remote_account": "Varla frå denne kontoen er filtrerte ut fordi ein moderator har avgrensa kontoen eller tenaren.",
|
||||||
"notification_requests.maximize": "Maksimer",
|
"notification_requests.maximize": "Maksimer",
|
||||||
|
|
|
@ -192,6 +192,8 @@
|
||||||
"confirmations.unfollow.confirm": "Resht së ndjekuri",
|
"confirmations.unfollow.confirm": "Resht së ndjekuri",
|
||||||
"confirmations.unfollow.message": "Jeni i sigurt se doni të mos ndiqet më {name}?",
|
"confirmations.unfollow.message": "Jeni i sigurt se doni të mos ndiqet më {name}?",
|
||||||
"confirmations.unfollow.title": "Të ndalet ndjekja e përdoruesit?",
|
"confirmations.unfollow.title": "Të ndalet ndjekja e përdoruesit?",
|
||||||
|
"content_warning.hide": "Fshihe postimin",
|
||||||
|
"content_warning.show": "Shfaqe, sido qoftë",
|
||||||
"conversation.delete": "Fshije bisedën",
|
"conversation.delete": "Fshije bisedën",
|
||||||
"conversation.mark_as_read": "Vëri shenjë si të lexuar",
|
"conversation.mark_as_read": "Vëri shenjë si të lexuar",
|
||||||
"conversation.open": "Shfaq bisedën",
|
"conversation.open": "Shfaq bisedën",
|
||||||
|
@ -299,6 +301,7 @@
|
||||||
"filter_modal.select_filter.subtitle": "Përdorni një kategori ekzistuese, ose krijoni një të re",
|
"filter_modal.select_filter.subtitle": "Përdorni një kategori ekzistuese, ose krijoni një të re",
|
||||||
"filter_modal.select_filter.title": "Filtroje këtë postim",
|
"filter_modal.select_filter.title": "Filtroje këtë postim",
|
||||||
"filter_modal.title.status": "Filtroni një postim",
|
"filter_modal.title.status": "Filtroni një postim",
|
||||||
|
"filter_warning.matches_filter": "Ka përkim me filtrin “{title}”",
|
||||||
"filtered_notifications_banner.pending_requests": "Nga {count, plural, =0 {askush} one {një person} other {# vetë}} që mund të njihni",
|
"filtered_notifications_banner.pending_requests": "Nga {count, plural, =0 {askush} one {një person} other {# vetë}} që mund të njihni",
|
||||||
"filtered_notifications_banner.title": "Njoftime të filtruar",
|
"filtered_notifications_banner.title": "Njoftime të filtruar",
|
||||||
"firehose.all": "Krejt",
|
"firehose.all": "Krejt",
|
||||||
|
|
|
@ -192,6 +192,8 @@
|
||||||
"confirmations.unfollow.confirm": "Avfölj",
|
"confirmations.unfollow.confirm": "Avfölj",
|
||||||
"confirmations.unfollow.message": "Är du säker på att du vill avfölja {name}?",
|
"confirmations.unfollow.message": "Är du säker på att du vill avfölja {name}?",
|
||||||
"confirmations.unfollow.title": "Avfölj %s?",
|
"confirmations.unfollow.title": "Avfölj %s?",
|
||||||
|
"content_warning.hide": "Dölj inlägg",
|
||||||
|
"content_warning.show": "Visa ändå",
|
||||||
"conversation.delete": "Radera konversation",
|
"conversation.delete": "Radera konversation",
|
||||||
"conversation.mark_as_read": "Markera som läst",
|
"conversation.mark_as_read": "Markera som läst",
|
||||||
"conversation.open": "Visa konversation",
|
"conversation.open": "Visa konversation",
|
||||||
|
|
|
@ -192,6 +192,8 @@
|
||||||
"confirmations.unfollow.confirm": "เลิกติดตาม",
|
"confirmations.unfollow.confirm": "เลิกติดตาม",
|
||||||
"confirmations.unfollow.message": "คุณแน่ใจหรือไม่ว่าต้องการเลิกติดตาม {name}?",
|
"confirmations.unfollow.message": "คุณแน่ใจหรือไม่ว่าต้องการเลิกติดตาม {name}?",
|
||||||
"confirmations.unfollow.title": "เลิกติดตามผู้ใช้?",
|
"confirmations.unfollow.title": "เลิกติดตามผู้ใช้?",
|
||||||
|
"content_warning.hide": "ซ่อนโพสต์",
|
||||||
|
"content_warning.show": "แสดงต่อไป",
|
||||||
"conversation.delete": "ลบการสนทนา",
|
"conversation.delete": "ลบการสนทนา",
|
||||||
"conversation.mark_as_read": "ทำเครื่องหมายว่าอ่านแล้ว",
|
"conversation.mark_as_read": "ทำเครื่องหมายว่าอ่านแล้ว",
|
||||||
"conversation.open": "ดูการสนทนา",
|
"conversation.open": "ดูการสนทนา",
|
||||||
|
@ -299,6 +301,7 @@
|
||||||
"filter_modal.select_filter.subtitle": "ใช้หมวดหมู่ที่มีอยู่หรือสร้างหมวดหมู่ใหม่",
|
"filter_modal.select_filter.subtitle": "ใช้หมวดหมู่ที่มีอยู่หรือสร้างหมวดหมู่ใหม่",
|
||||||
"filter_modal.select_filter.title": "กรองโพสต์นี้",
|
"filter_modal.select_filter.title": "กรองโพสต์นี้",
|
||||||
"filter_modal.title.status": "กรองโพสต์",
|
"filter_modal.title.status": "กรองโพสต์",
|
||||||
|
"filter_warning.matches_filter": "ตรงกับตัวกรอง “{title}”",
|
||||||
"filtered_notifications_banner.pending_requests": "จาก {count, plural, =0 {ไม่มีใคร} other {# คน}} ที่คุณอาจรู้จัก",
|
"filtered_notifications_banner.pending_requests": "จาก {count, plural, =0 {ไม่มีใคร} other {# คน}} ที่คุณอาจรู้จัก",
|
||||||
"filtered_notifications_banner.title": "การแจ้งเตือนที่กรองอยู่",
|
"filtered_notifications_banner.title": "การแจ้งเตือนที่กรองอยู่",
|
||||||
"firehose.all": "ทั้งหมด",
|
"firehose.all": "ทั้งหมด",
|
||||||
|
@ -348,6 +351,14 @@
|
||||||
"hashtag.follow": "ติดตามแฮชแท็ก",
|
"hashtag.follow": "ติดตามแฮชแท็ก",
|
||||||
"hashtag.unfollow": "เลิกติดตามแฮชแท็ก",
|
"hashtag.unfollow": "เลิกติดตามแฮชแท็ก",
|
||||||
"hashtags.and_other": "…และอีก {count, plural, other {# เพิ่มเติม}}",
|
"hashtags.and_other": "…และอีก {count, plural, other {# เพิ่มเติม}}",
|
||||||
|
"hints.profiles.followers_may_be_missing": "ผู้ติดตามสำหรับโปรไฟล์นี้อาจขาดหายไป",
|
||||||
|
"hints.profiles.follows_may_be_missing": "การติดตามสำหรับโปรไฟล์นี้อาจขาดหายไป",
|
||||||
|
"hints.profiles.posts_may_be_missing": "โพสต์บางส่วนจากโปรไฟล์นี้อาจขาดหายไป",
|
||||||
|
"hints.profiles.see_more_followers": "ดูผู้ติดตามเพิ่มเติมใน {domain}",
|
||||||
|
"hints.profiles.see_more_follows": "ดูการติดตามเพิ่มเติมใน {domain}",
|
||||||
|
"hints.profiles.see_more_posts": "ดูโพสต์เพิ่มเติมใน {domain}",
|
||||||
|
"hints.threads.replies_may_be_missing": "การตอบกลับจากเซิร์ฟเวอร์อื่น ๆ อาจขาดหายไป",
|
||||||
|
"hints.threads.see_more": "ดูการตอบกลับเพิ่มเติมใน {domain}",
|
||||||
"home.column_settings.show_reblogs": "แสดงการดัน",
|
"home.column_settings.show_reblogs": "แสดงการดัน",
|
||||||
"home.column_settings.show_replies": "แสดงการตอบกลับ",
|
"home.column_settings.show_replies": "แสดงการตอบกลับ",
|
||||||
"home.hide_announcements": "ซ่อนประกาศ",
|
"home.hide_announcements": "ซ่อนประกาศ",
|
||||||
|
@ -355,8 +366,11 @@
|
||||||
"home.pending_critical_update.link": "ดูการอัปเดต",
|
"home.pending_critical_update.link": "ดูการอัปเดต",
|
||||||
"home.pending_critical_update.title": "มีการอัปเดตความปลอดภัยสำคัญพร้อมใช้งาน!",
|
"home.pending_critical_update.title": "มีการอัปเดตความปลอดภัยสำคัญพร้อมใช้งาน!",
|
||||||
"home.show_announcements": "แสดงประกาศ",
|
"home.show_announcements": "แสดงประกาศ",
|
||||||
|
"ignore_notifications_modal.disclaimer": "Mastodon ไม่สามารถแจ้งผู้ใช้ว่าคุณได้เพิกเฉยการแจ้งเตือนของเขา การเพิกเฉยการแจ้งเตือนจะไม่หยุดการส่งข้อความนั้นเอง",
|
||||||
"ignore_notifications_modal.filter_instead": "กรองแทน",
|
"ignore_notifications_modal.filter_instead": "กรองแทน",
|
||||||
"ignore_notifications_modal.filter_to_act_users": "คุณจะยังสามารถยอมรับ ปฏิเสธ หรือรายงานผู้ใช้",
|
"ignore_notifications_modal.filter_to_act_users": "คุณจะยังสามารถยอมรับ ปฏิเสธ หรือรายงานผู้ใช้",
|
||||||
|
"ignore_notifications_modal.filter_to_avoid_confusion": "การกรองช่วยหลีกเลี่ยงความสับสนที่อาจเกิดขึ้น",
|
||||||
|
"ignore_notifications_modal.filter_to_review_separately": "คุณสามารถตรวจทานการแจ้งเตือนที่กรองอยู่แยกต่างหาก",
|
||||||
"ignore_notifications_modal.ignore": "เพิกเฉยการแจ้งเตือน",
|
"ignore_notifications_modal.ignore": "เพิกเฉยการแจ้งเตือน",
|
||||||
"ignore_notifications_modal.limited_accounts_title": "เพิกเฉยการแจ้งเตือนจากบัญชีที่ได้รับการกลั่นกรอง?",
|
"ignore_notifications_modal.limited_accounts_title": "เพิกเฉยการแจ้งเตือนจากบัญชีที่ได้รับการกลั่นกรอง?",
|
||||||
"ignore_notifications_modal.new_accounts_title": "เพิกเฉยการแจ้งเตือนจากบัญชีใหม่?",
|
"ignore_notifications_modal.new_accounts_title": "เพิกเฉยการแจ้งเตือนจากบัญชีใหม่?",
|
||||||
|
@ -484,9 +498,13 @@
|
||||||
"notification.admin.report_statuses": "{name} ได้รายงาน {target} สำหรับ {category}",
|
"notification.admin.report_statuses": "{name} ได้รายงาน {target} สำหรับ {category}",
|
||||||
"notification.admin.report_statuses_other": "{name} ได้รายงาน {target}",
|
"notification.admin.report_statuses_other": "{name} ได้รายงาน {target}",
|
||||||
"notification.admin.sign_up": "{name} ได้ลงทะเบียน",
|
"notification.admin.sign_up": "{name} ได้ลงทะเบียน",
|
||||||
|
"notification.admin.sign_up.name_and_others": "{name} และ {count, plural, other {# อื่น ๆ}} ได้ลงทะเบียน",
|
||||||
"notification.favourite": "{name} ได้ชื่นชอบโพสต์ของคุณ",
|
"notification.favourite": "{name} ได้ชื่นชอบโพสต์ของคุณ",
|
||||||
|
"notification.favourite.name_and_others_with_link": "{name} และ <a>{count, plural, other {# อื่น ๆ}}</a> ได้ชื่นชอบโพสต์ของคุณ",
|
||||||
"notification.follow": "{name} ได้ติดตามคุณ",
|
"notification.follow": "{name} ได้ติดตามคุณ",
|
||||||
|
"notification.follow.name_and_others": "{name} และ {count, plural, other {# อื่น ๆ}} ได้ติดตามคุณ",
|
||||||
"notification.follow_request": "{name} ได้ขอติดตามคุณ",
|
"notification.follow_request": "{name} ได้ขอติดตามคุณ",
|
||||||
|
"notification.follow_request.name_and_others": "{name} และ {count, plural, other {# อื่น ๆ}} ได้ขอติดตามคุณ",
|
||||||
"notification.label.mention": "การกล่าวถึง",
|
"notification.label.mention": "การกล่าวถึง",
|
||||||
"notification.label.private_mention": "การกล่าวถึงแบบส่วนตัว",
|
"notification.label.private_mention": "การกล่าวถึงแบบส่วนตัว",
|
||||||
"notification.label.private_reply": "การตอบกลับแบบส่วนตัว",
|
"notification.label.private_reply": "การตอบกลับแบบส่วนตัว",
|
||||||
|
@ -504,6 +522,7 @@
|
||||||
"notification.own_poll": "การสำรวจความคิดเห็นของคุณได้สิ้นสุดแล้ว",
|
"notification.own_poll": "การสำรวจความคิดเห็นของคุณได้สิ้นสุดแล้ว",
|
||||||
"notification.poll": "การสำรวจความคิดเห็นที่คุณได้ลงคะแนนได้สิ้นสุดแล้ว",
|
"notification.poll": "การสำรวจความคิดเห็นที่คุณได้ลงคะแนนได้สิ้นสุดแล้ว",
|
||||||
"notification.reblog": "{name} ได้ดันโพสต์ของคุณ",
|
"notification.reblog": "{name} ได้ดันโพสต์ของคุณ",
|
||||||
|
"notification.reblog.name_and_others_with_link": "{name} และ <a>{count, plural, other {# อื่น ๆ}}</a> ได้ดันโพสต์ของคุณ",
|
||||||
"notification.relationships_severance_event": "สูญเสียการเชื่อมต่อกับ {name}",
|
"notification.relationships_severance_event": "สูญเสียการเชื่อมต่อกับ {name}",
|
||||||
"notification.relationships_severance_event.account_suspension": "ผู้ดูแลจาก {from} ได้ระงับ {target} ซึ่งหมายความว่าคุณจะไม่สามารถรับการอัปเดตจากเขาหรือโต้ตอบกับเขาได้อีกต่อไป",
|
"notification.relationships_severance_event.account_suspension": "ผู้ดูแลจาก {from} ได้ระงับ {target} ซึ่งหมายความว่าคุณจะไม่สามารถรับการอัปเดตจากเขาหรือโต้ตอบกับเขาได้อีกต่อไป",
|
||||||
"notification.relationships_severance_event.domain_block": "ผู้ดูแลจาก {from} ได้ปิดกั้น {target} รวมถึง {followersCount} ผู้ติดตามของคุณและ {followingCount, plural, other {# บัญชี}}ที่คุณติดตาม",
|
"notification.relationships_severance_event.domain_block": "ผู้ดูแลจาก {from} ได้ปิดกั้น {target} รวมถึง {followersCount} ผู้ติดตามของคุณและ {followingCount, plural, other {# บัญชี}}ที่คุณติดตาม",
|
||||||
|
@ -512,7 +531,21 @@
|
||||||
"notification.status": "{name} เพิ่งโพสต์",
|
"notification.status": "{name} เพิ่งโพสต์",
|
||||||
"notification.update": "{name} ได้แก้ไขโพสต์",
|
"notification.update": "{name} ได้แก้ไขโพสต์",
|
||||||
"notification_requests.accept": "ยอมรับ",
|
"notification_requests.accept": "ยอมรับ",
|
||||||
|
"notification_requests.accept_multiple": "{count, plural, other {ยอมรับ # คำขอ…}}",
|
||||||
|
"notification_requests.confirm_accept_multiple.button": "{count, plural, other {ยอมรับคำขอ}}",
|
||||||
|
"notification_requests.confirm_accept_multiple.message": "คุณกำลังจะยอมรับ {count, plural, other {# คำขอการแจ้งเตือน}} คุณแน่ใจหรือไม่ว่าต้องการดำเนินการต่อ?",
|
||||||
|
"notification_requests.confirm_accept_multiple.title": "ยอมรับคำขอการแจ้งเตือน?",
|
||||||
|
"notification_requests.confirm_dismiss_multiple.button": "{count, plural, other {ปิดคำขอ}}",
|
||||||
|
"notification_requests.confirm_dismiss_multiple.message": "คุณกำลังจะปิด {count, plural, other {# คำขอการแจ้งเตือน}} คุณจะไม่สามารถเข้าถึง{count, plural, other {การแจ้งเตือน}}ได้อย่างง่ายดายอีกครั้ง คุณแน่ใจหรือไม่ว่าต้องการดำเนินการต่อ?",
|
||||||
|
"notification_requests.confirm_dismiss_multiple.title": "ปิดคำขอการแจ้งเตือน?",
|
||||||
"notification_requests.dismiss": "ปิด",
|
"notification_requests.dismiss": "ปิด",
|
||||||
|
"notification_requests.dismiss_multiple": "{count, plural, other {ปิด # คำขอ…}}",
|
||||||
|
"notification_requests.edit_selection": "แก้ไข",
|
||||||
|
"notification_requests.exit_selection": "เสร็จสิ้น",
|
||||||
|
"notification_requests.explainer_for_limited_account": "มีการกรองการแจ้งเตือนจากบัญชีนี้เนื่องจากมีการจำกัดบัญชีโดยผู้กลั่นกรอง",
|
||||||
|
"notification_requests.explainer_for_limited_remote_account": "มีการกรองการแจ้งเตือนจากบัญชีนี้เนื่องจากมีการจำกัดบัญชีหรือเซิร์ฟเวอร์ของบัญชีโดยผู้กลั่นกรอง",
|
||||||
|
"notification_requests.maximize": "ขยายใหญ่สุด",
|
||||||
|
"notification_requests.minimize_banner": "ย่อแบนเนอร์การแจ้งเตือนที่กรองอยู่ให้เล็กสุด",
|
||||||
"notification_requests.notifications_from": "การแจ้งเตือนจาก {name}",
|
"notification_requests.notifications_from": "การแจ้งเตือนจาก {name}",
|
||||||
"notification_requests.title": "การแจ้งเตือนที่กรองอยู่",
|
"notification_requests.title": "การแจ้งเตือนที่กรองอยู่",
|
||||||
"notification_requests.view": "ดูการแจ้งเตือน",
|
"notification_requests.view": "ดูการแจ้งเตือน",
|
||||||
|
@ -555,8 +588,10 @@
|
||||||
"notifications.policy.accept": "ยอมรับ",
|
"notifications.policy.accept": "ยอมรับ",
|
||||||
"notifications.policy.accept_hint": "แสดงในการแจ้งเตือน",
|
"notifications.policy.accept_hint": "แสดงในการแจ้งเตือน",
|
||||||
"notifications.policy.drop": "เพิกเฉย",
|
"notifications.policy.drop": "เพิกเฉย",
|
||||||
|
"notifications.policy.drop_hint": "ละทิ้งอย่างถาวร ไม่ให้เห็นอีกเลย",
|
||||||
"notifications.policy.filter": "กรอง",
|
"notifications.policy.filter": "กรอง",
|
||||||
"notifications.policy.filter_hint": "ส่งไปยังกล่องขาเข้าการแจ้งเตือนที่กรองอยู่",
|
"notifications.policy.filter_hint": "ส่งไปยังกล่องขาเข้าการแจ้งเตือนที่กรองอยู่",
|
||||||
|
"notifications.policy.filter_limited_accounts_hint": "จำกัดโดยผู้กลั่นกรองเซิร์ฟเวอร์",
|
||||||
"notifications.policy.filter_limited_accounts_title": "บัญชีที่ได้รับการกลั่นกรอง",
|
"notifications.policy.filter_limited_accounts_title": "บัญชีที่ได้รับการกลั่นกรอง",
|
||||||
"notifications.policy.filter_new_accounts.hint": "สร้างขึ้นภายใน {days, plural, other {# วัน}}ที่ผ่านมา",
|
"notifications.policy.filter_new_accounts.hint": "สร้างขึ้นภายใน {days, plural, other {# วัน}}ที่ผ่านมา",
|
||||||
"notifications.policy.filter_new_accounts_title": "บัญชีใหม่",
|
"notifications.policy.filter_new_accounts_title": "บัญชีใหม่",
|
||||||
|
@ -606,7 +641,7 @@
|
||||||
"onboarding.steps.share_profile.title": "แชร์โปรไฟล์ Mastodon ของคุณ",
|
"onboarding.steps.share_profile.title": "แชร์โปรไฟล์ Mastodon ของคุณ",
|
||||||
"onboarding.tips.2fa": "<strong>คุณทราบหรือไม่?</strong> คุณสามารถรักษาความปลอดภัยบัญชีของคุณได้โดยตั้งค่าการรับรองความถูกต้องด้วยสองปัจจัยในการตั้งค่าบัญชีของคุณ การรับรองความถูกต้องด้วยสองปัจจัยทำงานร่วมกับแอป TOTP ใด ๆ ที่คุณเลือก ไม่จำเป็นต้องมีหมายเลขโทรศัพท์!",
|
"onboarding.tips.2fa": "<strong>คุณทราบหรือไม่?</strong> คุณสามารถรักษาความปลอดภัยบัญชีของคุณได้โดยตั้งค่าการรับรองความถูกต้องด้วยสองปัจจัยในการตั้งค่าบัญชีของคุณ การรับรองความถูกต้องด้วยสองปัจจัยทำงานร่วมกับแอป TOTP ใด ๆ ที่คุณเลือก ไม่จำเป็นต้องมีหมายเลขโทรศัพท์!",
|
||||||
"onboarding.tips.accounts_from_other_servers": "<strong>คุณทราบหรือไม่?</strong> เนื่องจาก Mastodon เป็นแบบกระจายศูนย์ โปรไฟล์บางส่วนที่คุณเจอจะได้รับการโฮสต์ในเซิร์ฟเวอร์อื่น ๆ ที่ไม่ใช่ของคุณ และคุณยังสามารถโต้ตอบกับเขาได้อย่างไร้รอยต่อ! เซิร์ฟเวอร์ของเขาอยู่ในครึ่งหลังของชื่อผู้ใช้ของเขา!",
|
"onboarding.tips.accounts_from_other_servers": "<strong>คุณทราบหรือไม่?</strong> เนื่องจาก Mastodon เป็นแบบกระจายศูนย์ โปรไฟล์บางส่วนที่คุณเจอจะได้รับการโฮสต์ในเซิร์ฟเวอร์อื่น ๆ ที่ไม่ใช่ของคุณ และคุณยังสามารถโต้ตอบกับเขาได้อย่างไร้รอยต่อ! เซิร์ฟเวอร์ของเขาอยู่ในครึ่งหลังของชื่อผู้ใช้ของเขา!",
|
||||||
"onboarding.tips.migration": "<strong>คุณทราบหรือไม่?</strong> หากคุณรู้สึกว่า {domain} ไม่ใช่ตัวเลือกเซิร์ฟเวอร์ที่ยอดเยี่ยมสำหรับคุณในอนาคต คุณสามารถย้ายไปยังเซิร์ฟเวอร์ Mastodon อื่นได้โดยไม่สูญเสียผู้ติดตามของคุณ คุณยังสามารถโฮสต์เซิร์ฟเวอร์ของคุณเอง!",
|
"onboarding.tips.migration": "<strong>คุณทราบหรือไม่?</strong> หากคุณรู้สึกว่า {domain} ไม่ใช่ตัวเลือกเซิร์ฟเวอร์ที่ยอดเยี่ยมสำหรับคุณในอนาคต คุณสามารถย้ายไปยังเซิร์ฟเวอร์ Mastodon อื่นได้โดยไม่สูญเสียผู้ติดตามของคุณ คุณยังสามารถโฮสต์เซิร์ฟเวอร์ของคุณเองได้อีกด้วย!",
|
||||||
"onboarding.tips.verification": "<strong>คุณทราบหรือไม่?</strong> คุณสามารถยืนยันบัญชีของคุณได้โดยใส่ลิงก์ไปยังโปรไฟล์ Mastodon ของคุณในเว็บไซต์ของคุณเองและเพิ่มเว็บไซต์ไปยังโปรไฟล์ของคุณ ไม่จำเป็นต้องมีค่าธรรมเนียมหรือเอกสาร!",
|
"onboarding.tips.verification": "<strong>คุณทราบหรือไม่?</strong> คุณสามารถยืนยันบัญชีของคุณได้โดยใส่ลิงก์ไปยังโปรไฟล์ Mastodon ของคุณในเว็บไซต์ของคุณเองและเพิ่มเว็บไซต์ไปยังโปรไฟล์ของคุณ ไม่จำเป็นต้องมีค่าธรรมเนียมหรือเอกสาร!",
|
||||||
"password_confirmation.exceeds_maxlength": "การยืนยันรหัสผ่านเกินความยาวรหัสผ่านสูงสุดแล้ว",
|
"password_confirmation.exceeds_maxlength": "การยืนยันรหัสผ่านเกินความยาวรหัสผ่านสูงสุดแล้ว",
|
||||||
"password_confirmation.mismatching": "การยืนยันรหัสผ่านไม่ตรงกัน",
|
"password_confirmation.mismatching": "การยืนยันรหัสผ่านไม่ตรงกัน",
|
||||||
|
|
|
@ -192,6 +192,8 @@
|
||||||
"confirmations.unfollow.confirm": "Takibi bırak",
|
"confirmations.unfollow.confirm": "Takibi bırak",
|
||||||
"confirmations.unfollow.message": "{name} adlı kullanıcıyı takibi bırakmak istediğinden emin misin?",
|
"confirmations.unfollow.message": "{name} adlı kullanıcıyı takibi bırakmak istediğinden emin misin?",
|
||||||
"confirmations.unfollow.title": "Kullanıcıyı takipten çık?",
|
"confirmations.unfollow.title": "Kullanıcıyı takipten çık?",
|
||||||
|
"content_warning.hide": "Gönderiyi gizle",
|
||||||
|
"content_warning.show": "Yine de göster",
|
||||||
"conversation.delete": "Sohbeti sil",
|
"conversation.delete": "Sohbeti sil",
|
||||||
"conversation.mark_as_read": "Okundu olarak işaretle",
|
"conversation.mark_as_read": "Okundu olarak işaretle",
|
||||||
"conversation.open": "Sohbeti görüntüle",
|
"conversation.open": "Sohbeti görüntüle",
|
||||||
|
@ -299,6 +301,7 @@
|
||||||
"filter_modal.select_filter.subtitle": "Mevcut bir kategoriyi kullan veya yeni bir tane oluştur",
|
"filter_modal.select_filter.subtitle": "Mevcut bir kategoriyi kullan veya yeni bir tane oluştur",
|
||||||
"filter_modal.select_filter.title": "Bu gönderiyi süzgeçle",
|
"filter_modal.select_filter.title": "Bu gönderiyi süzgeçle",
|
||||||
"filter_modal.title.status": "Bir gönderi süzgeçle",
|
"filter_modal.title.status": "Bir gönderi süzgeçle",
|
||||||
|
"filter_warning.matches_filter": "“{title}” filtresiyle eşleşiyor",
|
||||||
"filtered_notifications_banner.pending_requests": "Bildiğiniz {count, plural, =0 {hiç kimseden} one {bir kişiden} other {# kişiden}}",
|
"filtered_notifications_banner.pending_requests": "Bildiğiniz {count, plural, =0 {hiç kimseden} one {bir kişiden} other {# kişiden}}",
|
||||||
"filtered_notifications_banner.title": "Filtrelenmiş bildirimler",
|
"filtered_notifications_banner.title": "Filtrelenmiş bildirimler",
|
||||||
"firehose.all": "Tümü",
|
"firehose.all": "Tümü",
|
||||||
|
|
|
@ -192,6 +192,8 @@
|
||||||
"confirmations.unfollow.confirm": "Відписатися",
|
"confirmations.unfollow.confirm": "Відписатися",
|
||||||
"confirmations.unfollow.message": "Ви впевнені, що хочете відписатися від {name}?",
|
"confirmations.unfollow.message": "Ви впевнені, що хочете відписатися від {name}?",
|
||||||
"confirmations.unfollow.title": "Відписатися від користувача?",
|
"confirmations.unfollow.title": "Відписатися від користувача?",
|
||||||
|
"content_warning.hide": "Сховати допис",
|
||||||
|
"content_warning.show": "Усе одно показати",
|
||||||
"conversation.delete": "Видалити бесіду",
|
"conversation.delete": "Видалити бесіду",
|
||||||
"conversation.mark_as_read": "Позначити як прочитане",
|
"conversation.mark_as_read": "Позначити як прочитане",
|
||||||
"conversation.open": "Переглянути бесіду",
|
"conversation.open": "Переглянути бесіду",
|
||||||
|
@ -299,6 +301,7 @@
|
||||||
"filter_modal.select_filter.subtitle": "Використати наявну категорію або створити нову",
|
"filter_modal.select_filter.subtitle": "Використати наявну категорію або створити нову",
|
||||||
"filter_modal.select_filter.title": "Фільтрувати цей допис",
|
"filter_modal.select_filter.title": "Фільтрувати цей допис",
|
||||||
"filter_modal.title.status": "Фільтрувати допис",
|
"filter_modal.title.status": "Фільтрувати допис",
|
||||||
|
"filter_warning.matches_filter": "Збігається з фільтром “{title}”",
|
||||||
"filtered_notifications_banner.pending_requests": "Від {count, plural, =0 {жодної особи} one {однієї особи} few {# осіб} many {# осіб} other {# особи}}, котрих ви можете знати",
|
"filtered_notifications_banner.pending_requests": "Від {count, plural, =0 {жодної особи} one {однієї особи} few {# осіб} many {# осіб} other {# особи}}, котрих ви можете знати",
|
||||||
"filtered_notifications_banner.title": "Відфільтровані сповіщення",
|
"filtered_notifications_banner.title": "Відфільтровані сповіщення",
|
||||||
"firehose.all": "Всі",
|
"firehose.all": "Всі",
|
||||||
|
|
|
@ -192,6 +192,8 @@
|
||||||
"confirmations.unfollow.confirm": "Bỏ theo dõi",
|
"confirmations.unfollow.confirm": "Bỏ theo dõi",
|
||||||
"confirmations.unfollow.message": "Bạn thật sự muốn bỏ theo dõi {name}?",
|
"confirmations.unfollow.message": "Bạn thật sự muốn bỏ theo dõi {name}?",
|
||||||
"confirmations.unfollow.title": "Bỏ theo dõi?",
|
"confirmations.unfollow.title": "Bỏ theo dõi?",
|
||||||
|
"content_warning.hide": "Ẩn tút",
|
||||||
|
"content_warning.show": "Nhấn để xem",
|
||||||
"conversation.delete": "Xóa tin nhắn này",
|
"conversation.delete": "Xóa tin nhắn này",
|
||||||
"conversation.mark_as_read": "Đánh dấu là đã đọc",
|
"conversation.mark_as_read": "Đánh dấu là đã đọc",
|
||||||
"conversation.open": "Xem toàn bộ tin nhắn",
|
"conversation.open": "Xem toàn bộ tin nhắn",
|
||||||
|
@ -299,6 +301,7 @@
|
||||||
"filter_modal.select_filter.subtitle": "Sử dụng một danh mục hiện có hoặc tạo một danh mục mới",
|
"filter_modal.select_filter.subtitle": "Sử dụng một danh mục hiện có hoặc tạo một danh mục mới",
|
||||||
"filter_modal.select_filter.title": "Lọc tút này",
|
"filter_modal.select_filter.title": "Lọc tút này",
|
||||||
"filter_modal.title.status": "Lọc một tút",
|
"filter_modal.title.status": "Lọc một tút",
|
||||||
|
"filter_warning.matches_filter": "Khớp bộ lọc “{title}”",
|
||||||
"filtered_notifications_banner.pending_requests": "Từ {count, plural, =0 {không ai} other {# người}} bạn có thể biết",
|
"filtered_notifications_banner.pending_requests": "Từ {count, plural, =0 {không ai} other {# người}} bạn có thể biết",
|
||||||
"filtered_notifications_banner.title": "Thông báo đã lọc",
|
"filtered_notifications_banner.title": "Thông báo đã lọc",
|
||||||
"firehose.all": "Toàn bộ",
|
"firehose.all": "Toàn bộ",
|
||||||
|
|
|
@ -192,6 +192,8 @@
|
||||||
"confirmations.unfollow.confirm": "取消关注",
|
"confirmations.unfollow.confirm": "取消关注",
|
||||||
"confirmations.unfollow.message": "你确定要取消关注 {name} 吗?",
|
"confirmations.unfollow.message": "你确定要取消关注 {name} 吗?",
|
||||||
"confirmations.unfollow.title": "是否取消关注用户?",
|
"confirmations.unfollow.title": "是否取消关注用户?",
|
||||||
|
"content_warning.hide": "隐藏嘟文",
|
||||||
|
"content_warning.show": "仍然显示",
|
||||||
"conversation.delete": "删除对话",
|
"conversation.delete": "删除对话",
|
||||||
"conversation.mark_as_read": "标记为已读",
|
"conversation.mark_as_read": "标记为已读",
|
||||||
"conversation.open": "查看对话",
|
"conversation.open": "查看对话",
|
||||||
|
@ -299,6 +301,7 @@
|
||||||
"filter_modal.select_filter.subtitle": "使用一个已存在类别,或创建一个新类别",
|
"filter_modal.select_filter.subtitle": "使用一个已存在类别,或创建一个新类别",
|
||||||
"filter_modal.select_filter.title": "过滤此嘟文",
|
"filter_modal.select_filter.title": "过滤此嘟文",
|
||||||
"filter_modal.title.status": "过滤一条嘟文",
|
"filter_modal.title.status": "过滤一条嘟文",
|
||||||
|
"filter_warning.matches_filter": "命中过滤规则 “{title}”",
|
||||||
"filtered_notifications_banner.pending_requests": "来自你可能认识的 {count, plural, =0 {0 个人} other {# 个人}}",
|
"filtered_notifications_banner.pending_requests": "来自你可能认识的 {count, plural, =0 {0 个人} other {# 个人}}",
|
||||||
"filtered_notifications_banner.title": "通知(已过滤)",
|
"filtered_notifications_banner.title": "通知(已过滤)",
|
||||||
"firehose.all": "全部",
|
"firehose.all": "全部",
|
||||||
|
|
|
@ -48,8 +48,9 @@ export const loadingBarMiddleware = (
|
||||||
let isRejected = false;
|
let isRejected = false;
|
||||||
|
|
||||||
if (
|
if (
|
||||||
isAsyncThunkAction(action)
|
isAsyncThunkAction(action) &&
|
||||||
// TODO: once we get the first use-case for it, add a check for skipLoading
|
'useLoadingBar' in action.meta &&
|
||||||
|
action.meta.useLoadingBar
|
||||||
) {
|
) {
|
||||||
if (isThunkActionPending(action)) isPending = true;
|
if (isThunkActionPending(action)) isPending = true;
|
||||||
else if (isThunkActionFulfilled(action)) isFulfilled = true;
|
else if (isThunkActionFulfilled(action)) isFulfilled = true;
|
||||||
|
|
|
@ -15,7 +15,7 @@ export interface AsyncThunkRejectValue {
|
||||||
}
|
}
|
||||||
|
|
||||||
interface AppMeta {
|
interface AppMeta {
|
||||||
skipLoading?: boolean;
|
useLoadingBar?: boolean;
|
||||||
}
|
}
|
||||||
|
|
||||||
export const createAppAsyncThunk = createAsyncThunk.withTypes<{
|
export const createAppAsyncThunk = createAsyncThunk.withTypes<{
|
||||||
|
@ -34,7 +34,7 @@ interface AppThunkConfig {
|
||||||
type AppThunkApi = Pick<GetThunkAPI<AppThunkConfig>, 'getState' | 'dispatch'>;
|
type AppThunkApi = Pick<GetThunkAPI<AppThunkConfig>, 'getState' | 'dispatch'>;
|
||||||
|
|
||||||
interface AppThunkOptions {
|
interface AppThunkOptions {
|
||||||
skipLoading?: boolean;
|
useLoadingBar?: boolean;
|
||||||
}
|
}
|
||||||
|
|
||||||
const createBaseAsyncThunk = createAsyncThunk.withTypes<AppThunkConfig>();
|
const createBaseAsyncThunk = createAsyncThunk.withTypes<AppThunkConfig>();
|
||||||
|
@ -54,15 +54,20 @@ export function createThunk<Arg = void, Returned = void>(
|
||||||
const result = await creator(arg, { dispatch, getState });
|
const result = await creator(arg, { dispatch, getState });
|
||||||
|
|
||||||
return fulfillWithValue(result, {
|
return fulfillWithValue(result, {
|
||||||
skipLoading: options.skipLoading,
|
useLoadingBar: options.useLoadingBar,
|
||||||
});
|
});
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
return rejectWithValue({ error }, { skipLoading: true });
|
return rejectWithValue(
|
||||||
|
{ error },
|
||||||
|
{
|
||||||
|
useLoadingBar: options.useLoadingBar,
|
||||||
|
},
|
||||||
|
);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
getPendingMeta() {
|
getPendingMeta() {
|
||||||
if (options.skipLoading) return { skipLoading: true };
|
if (options.useLoadingBar) return { useLoadingBar: true };
|
||||||
return {};
|
return {};
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -148,7 +153,7 @@ export function createDataLoadingThunk<
|
||||||
* You can also omit this parameter and pass `thunkOptions` directly
|
* You can also omit this parameter and pass `thunkOptions` directly
|
||||||
* @param maybeThunkOptions
|
* @param maybeThunkOptions
|
||||||
* Additional Mastodon specific options for the thunk. Currently supports:
|
* Additional Mastodon specific options for the thunk. Currently supports:
|
||||||
* - `skipLoading` to avoid showing the loading bar when the request is in progress
|
* - `useLoadingBar` to display a loading bar while this action is pending. Defaults to true.
|
||||||
* @returns The created thunk
|
* @returns The created thunk
|
||||||
*/
|
*/
|
||||||
export function createDataLoadingThunk<
|
export function createDataLoadingThunk<
|
||||||
|
@ -198,6 +203,6 @@ export function createDataLoadingThunk<
|
||||||
return undefined as Returned;
|
return undefined as Returned;
|
||||||
else return result;
|
else return result;
|
||||||
},
|
},
|
||||||
thunkOptions,
|
{ useLoadingBar: thunkOptions?.useLoadingBar ?? true },
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -286,6 +286,7 @@ ar:
|
||||||
filter_by_action: تصفية بحسب الإجراء
|
filter_by_action: تصفية بحسب الإجراء
|
||||||
filter_by_user: تصفية حسب المستخدم
|
filter_by_user: تصفية حسب المستخدم
|
||||||
title: سِجلّ التفتيش و المعاينة
|
title: سِجلّ التفتيش و المعاينة
|
||||||
|
unavailable_instance: "(اسم النطاق غير متوفر)"
|
||||||
announcements:
|
announcements:
|
||||||
destroyed_msg: تم حذف الإعلان بنجاح!
|
destroyed_msg: تم حذف الإعلان بنجاح!
|
||||||
edit:
|
edit:
|
||||||
|
@ -990,6 +991,7 @@ ar:
|
||||||
delete: حذف
|
delete: حذف
|
||||||
edit_preset: تعديل نموذج التحذير
|
edit_preset: تعديل نموذج التحذير
|
||||||
empty: لم تحدد أي إعدادات تحذير مسبقة بعد.
|
empty: لم تحدد أي إعدادات تحذير مسبقة بعد.
|
||||||
|
title: نماذج التحذير
|
||||||
webhooks:
|
webhooks:
|
||||||
add_new: إضافة نقطة نهاية
|
add_new: إضافة نقطة نهاية
|
||||||
delete: حذف
|
delete: حذف
|
||||||
|
|
|
@ -954,6 +954,7 @@ cy:
|
||||||
name: Enw
|
name: Enw
|
||||||
newest: Mwyaf newydd
|
newest: Mwyaf newydd
|
||||||
oldest: Hynaf
|
oldest: Hynaf
|
||||||
|
open: Gweld yn gyhoeddus
|
||||||
reset: Ailosod
|
reset: Ailosod
|
||||||
review: Adolygu statws
|
review: Adolygu statws
|
||||||
search: Chwilio
|
search: Chwilio
|
||||||
|
|
|
@ -9,9 +9,10 @@ ro:
|
||||||
already_authenticated: Ești deja conectat.
|
already_authenticated: Ești deja conectat.
|
||||||
inactive: Contul tău nu este încă activat.
|
inactive: Contul tău nu este încă activat.
|
||||||
invalid: "%{authentication_keys} sau parolă greșită."
|
invalid: "%{authentication_keys} sau parolă greșită."
|
||||||
last_attempt: Mai ai încă o încercare înainte de a bloca contul.
|
last_attempt: Mai ai încă o încercare înainte ca contul tău să fie blocat.
|
||||||
locked: Contul tău este blocat.
|
locked: Contul tău este blocat.
|
||||||
not_found_in_database: "%{authentication_keys} sau parolă greșită."
|
not_found_in_database: "%{authentication_keys} sau parolă greșită."
|
||||||
|
omniauth_user_creation_failure: Eroare la crearea unui cont pentru această identitate.
|
||||||
pending: Contul tău este încă în curs de revizuire.
|
pending: Contul tău este încă în curs de revizuire.
|
||||||
timeout: Sesiunea ta a expirat. Te rugăm să te conectezi din nou pentru a continua.
|
timeout: Sesiunea ta a expirat. Te rugăm să te conectezi din nou pentru a continua.
|
||||||
unauthenticated: Trebuie să te conectezi sau să te înregistrezi înainte de a continua.
|
unauthenticated: Trebuie să te conectezi sau să te înregistrezi înainte de a continua.
|
||||||
|
@ -20,7 +21,7 @@ ro:
|
||||||
confirmation_instructions:
|
confirmation_instructions:
|
||||||
action: Verifică adresa de e-mail
|
action: Verifică adresa de e-mail
|
||||||
action_with_app: Confirmați și reveniți la %{app}
|
action_with_app: Confirmați și reveniți la %{app}
|
||||||
explanation: Ai creat un cont pe %{host} cu această adresă de e-mail. Ești la un click distanță de a o activa. Dacă nu ai fost tu, ignoră acest e-mail.
|
explanation: Ai creat un cont pe %{host} cu această adresă de e-mail. Ești la un clic distanță de a-l activa. Dacă nu ai fost tu, ignoră acest e-mail.
|
||||||
explanation_when_pending: Ai solicitat o invitație către %{host} cu această adresă de e-mail. Odată ce îți confirmi adresa de e-mail, îți vom revizui cererea. Te poți autentifica pentru a-ți schimba detaliile sau pentru a-ți șterge contul, dar nu poți accesa majoritatea funcțiilor până când contul tău nu este aprobat. Dacă cererea ta este respinsă, datele tale vor fi șterse, astfel încât nu va fi necesară nicio altă acțiune din partea ta. Dacă nu ai fost tu, ignoră acest e-mail.
|
explanation_when_pending: Ai solicitat o invitație către %{host} cu această adresă de e-mail. Odată ce îți confirmi adresa de e-mail, îți vom revizui cererea. Te poți autentifica pentru a-ți schimba detaliile sau pentru a-ți șterge contul, dar nu poți accesa majoritatea funcțiilor până când contul tău nu este aprobat. Dacă cererea ta este respinsă, datele tale vor fi șterse, astfel încât nu va fi necesară nicio altă acțiune din partea ta. Dacă nu ai fost tu, ignoră acest e-mail.
|
||||||
extra_html: Te rugăm să verifici și <a href="%{terms_path}">regulile serverului</a> și <a href="%{policy_path}">termenii noștri de serviciu</a>.
|
extra_html: Te rugăm să verifici și <a href="%{terms_path}">regulile serverului</a> și <a href="%{policy_path}">termenii noștri de serviciu</a>.
|
||||||
subject: 'Mastodon: Instrucțiuni de confirmare pentru %{instance}'
|
subject: 'Mastodon: Instrucțiuni de confirmare pentru %{instance}'
|
||||||
|
@ -28,12 +29,12 @@ ro:
|
||||||
email_changed:
|
email_changed:
|
||||||
explanation: 'Adresa de e-mail pentru contul tău este schimbată la:'
|
explanation: 'Adresa de e-mail pentru contul tău este schimbată la:'
|
||||||
extra: Dacă nu v-ați schimbat adresa de e-mail, probabil că cineva a obținut acces la contul dvs. Te rugăm să îți schimbi parola imediat sau să contactezi administratorul serverului dacă nu ai acces la contul tău.
|
extra: Dacă nu v-ați schimbat adresa de e-mail, probabil că cineva a obținut acces la contul dvs. Te rugăm să îți schimbi parola imediat sau să contactezi administratorul serverului dacă nu ai acces la contul tău.
|
||||||
subject: E-mail schimbat
|
subject: 'Mastodon: E-mail schimbat'
|
||||||
title: Noua adresa de e-mail
|
title: Noua adresa de e-mail
|
||||||
password_change:
|
password_change:
|
||||||
explanation: Parola contului tău a fost schimbată.
|
explanation: Parola contului tău a fost schimbată.
|
||||||
extra: Dacă nu v-ați schimbat parola, este posibil ca cineva să fi obținut acces la contul dvs. Te rugăm să îți schimbi parola imediat sau să contactezi administratorul serverului dacă nu ai acces la contul tău.
|
extra: Dacă nu v-ați schimbat parola, este posibil ca cineva să fi obținut acces la contul dvs. Te rugăm să îți schimbi parola imediat sau să contactezi administratorul serverului dacă nu ai acces la contul tău.
|
||||||
subject: Parolă schimbată
|
subject: 'Mastodon: Parolă schimbată'
|
||||||
title: Parolă schimbată
|
title: Parolă schimbată
|
||||||
reconfirmation_instructions:
|
reconfirmation_instructions:
|
||||||
explanation: Confirmă noua adresă pentru a schimba adresa de e-mail.
|
explanation: Confirmă noua adresă pentru a schimba adresa de e-mail.
|
||||||
|
@ -44,25 +45,25 @@ ro:
|
||||||
action: Schimbă parola
|
action: Schimbă parola
|
||||||
explanation: Ați solicitat o nouă parolă pentru contul dvs.
|
explanation: Ați solicitat o nouă parolă pentru contul dvs.
|
||||||
extra: Dacă nu ați solicitat acest lucru, ignorați acest e-mail. Parola dvs. nu se va schimba până când nu veți accesa link-ul de mai sus și nu veți crea unul nou.
|
extra: Dacă nu ați solicitat acest lucru, ignorați acest e-mail. Parola dvs. nu se va schimba până când nu veți accesa link-ul de mai sus și nu veți crea unul nou.
|
||||||
subject: Instrucțiuni pentru resetarea parolei
|
subject: 'Mastodon: Instrucțiuni pentru resetarea parolei'
|
||||||
title: Resetare parolă
|
title: Resetare parolă
|
||||||
two_factor_disabled:
|
two_factor_disabled:
|
||||||
explanation: Conectarea este acum posibilă folosind doar adresa de e-mail și parola.
|
explanation: Conectarea este acum posibilă folosind doar adresa de e-mail și parola.
|
||||||
subject: Autentificare cu doi factori dezactivată
|
subject: 'Mastodon: Autentificare cu doi factori dezactivată'
|
||||||
subtitle: Autentificarea cu doi factori pentru contul dvs. a fost dezactivată.
|
subtitle: Autentificarea cu doi factori pentru contul dvs. a fost dezactivată.
|
||||||
title: 2FA dezactivat
|
title: A2F dezactivată
|
||||||
two_factor_enabled:
|
two_factor_enabled:
|
||||||
explanation: Pentru autentificare va fi necesar un token generat de aplicația TOTP asociată.
|
explanation: Pentru autentificare va fi necesar un token generat de aplicația TOTP asociată.
|
||||||
subject: Autentificare în doi pași activată
|
subject: 'Mastodon: Autentificare în doi pași activată'
|
||||||
subtitle: Autentificarea cu doi factori a fost activată pentru contul dvs.
|
subtitle: Autentificarea cu doi factori a fost activată pentru contul dvs.
|
||||||
title: 2FA activat
|
title: A2F activată
|
||||||
two_factor_recovery_codes_changed:
|
two_factor_recovery_codes_changed:
|
||||||
explanation: Codurile anterioare de recuperare au fost invalidate și unele noi generate.
|
explanation: Codurile de recuperare anterioare au fost invalidate și s-au generat altele noi.
|
||||||
subject: Recuperare în doi factori
|
subject: 'Mastodon: Coduri de recuperare în doi pași regenerate'
|
||||||
subtitle: Codurile de recuperare anterioare au fost invalidate și s-au generat altele noi.
|
subtitle: Codurile de recuperare anterioare au fost invalidate și s-au generat altele noi.
|
||||||
title: Coduri de recuperare 2FA modificate
|
title: Codurile de recuperare în doi pași au fost modificate
|
||||||
unlock_instructions:
|
unlock_instructions:
|
||||||
subject: Instrucțiuni de deblocare
|
subject: 'Mastodon: Instrucțiuni de deblocare'
|
||||||
webauthn_credential:
|
webauthn_credential:
|
||||||
added:
|
added:
|
||||||
explanation: Următoarea cheie de securitate a fost adăugată în contul tău
|
explanation: Următoarea cheie de securitate a fost adăugată în contul tău
|
||||||
|
@ -80,7 +81,7 @@ ro:
|
||||||
webauthn_enabled:
|
webauthn_enabled:
|
||||||
explanation: Autentificarea cu cheie de securitate a fost activată pentru contul dvs.
|
explanation: Autentificarea cu cheie de securitate a fost activată pentru contul dvs.
|
||||||
extra: Cheia ta de securitate poate fi acum folosită pentru conectare.
|
extra: Cheia ta de securitate poate fi acum folosită pentru conectare.
|
||||||
subject: 'Mastodon: Autentificarea cheii de securitate activată'
|
subject: 'Mastodon: Autentificarea prin chei de securitate activată'
|
||||||
title: Chei de securitate activate
|
title: Chei de securitate activate
|
||||||
omniauth_callbacks:
|
omniauth_callbacks:
|
||||||
failure: Nu te-am putut autentifica de la %{kind} deoarece "%{reason}".
|
failure: Nu te-am putut autentifica de la %{kind} deoarece "%{reason}".
|
||||||
|
@ -97,7 +98,7 @@ ro:
|
||||||
signed_up_but_inactive: V-ați înregistrat cu succes. Cu toate acestea, nu vă putem conecta deoarece contul dvs. nu este încă activat.
|
signed_up_but_inactive: V-ați înregistrat cu succes. Cu toate acestea, nu vă putem conecta deoarece contul dvs. nu este încă activat.
|
||||||
signed_up_but_locked: V-ați înregistrat cu succes. Cu toate acestea, nu vă putem conecta deoarece contul dvs. este blocat.
|
signed_up_but_locked: V-ați înregistrat cu succes. Cu toate acestea, nu vă putem conecta deoarece contul dvs. este blocat.
|
||||||
signed_up_but_pending: Un mesaj cu un link de confirmare a fost trimis la adresa ta de e-mail. După ce faceți clic pe link, vă vom revizui cererea. Veți fi notificat dacă este aprobat.
|
signed_up_but_pending: Un mesaj cu un link de confirmare a fost trimis la adresa ta de e-mail. După ce faceți clic pe link, vă vom revizui cererea. Veți fi notificat dacă este aprobat.
|
||||||
signed_up_but_unconfirmed: Un mesaj cu un link de confirmare a fost trimis la adresa ta de e-mail. Vă rugăm să urmaţi link-ul pentru a vă activa contul. Vă rugăm să verificaţi folderul spam dacă nu aţi primit acest e-mail.
|
signed_up_but_unconfirmed: Un mesaj cu un link de confirmare a fost trimis la adresa ta de e-mail. Vă rugăm să urmați link-ul pentru a vă activa contul. Vă rugăm să verificați folderul spam dacă nu ați primit acest e-mail.
|
||||||
update_needs_confirmation: Ți-ai actualizat contul cu succes, dar trebuie să verificăm noua ta adresă de e-mail. Vă rugăm să verificați adresa de e-mail și să urmați link-ul de confirmare pentru a confirma noua dvs. adresă de e-mail. Te rugăm să verifici dosarul spam dacă nu ai primit acest e-mail.
|
update_needs_confirmation: Ți-ai actualizat contul cu succes, dar trebuie să verificăm noua ta adresă de e-mail. Vă rugăm să verificați adresa de e-mail și să urmați link-ul de confirmare pentru a confirma noua dvs. adresă de e-mail. Te rugăm să verifici dosarul spam dacă nu ai primit acest e-mail.
|
||||||
updated: Contul dvs. a fost actualizat cu succes.
|
updated: Contul dvs. a fost actualizat cu succes.
|
||||||
sessions:
|
sessions:
|
||||||
|
@ -105,7 +106,7 @@ ro:
|
||||||
signed_in: Conectat cu succes.
|
signed_in: Conectat cu succes.
|
||||||
signed_out: Deconectat cu succes.
|
signed_out: Deconectat cu succes.
|
||||||
unlocks:
|
unlocks:
|
||||||
send_instructions: Veţi primi un e-mail cu instrucţiuni despre cum să vă deblocaţi contul în câteva minute. Te rugăm să verifici dosarul spam dacă nu ai primit acest e-mail.
|
send_instructions: Veți primi un e-mail cu instrucțiuni despre cum să vă deblocați contul în câteva minute. Te rugăm să verifici dosarul spam dacă nu ai primit acest e-mail.
|
||||||
send_paranoid_instructions: Dacă contul tău există, vei primi un e-mail cu instrucțiuni pentru cum să-l deblochezi în câteva minute. Te rugăm să verifici dosarul spam dacă nu ai primit acest e-mail.
|
send_paranoid_instructions: Dacă contul tău există, vei primi un e-mail cu instrucțiuni pentru cum să-l deblochezi în câteva minute. Te rugăm să verifici dosarul spam dacă nu ai primit acest e-mail.
|
||||||
unlocked: Contul tău a fost deblocat cu succes. Te rugăm să te autentifici pentru a continua.
|
unlocked: Contul tău a fost deblocat cu succes. Te rugăm să te autentifici pentru a continua.
|
||||||
errors:
|
errors:
|
||||||
|
@ -118,4 +119,4 @@ ro:
|
||||||
not_saved:
|
not_saved:
|
||||||
few: "%{count} erori au împiedicat salvarea acestui %{resource}:"
|
few: "%{count} erori au împiedicat salvarea acestui %{resource}:"
|
||||||
one: 'O eroare a împiedicat salvarea acestui %{resource}:'
|
one: 'O eroare a împiedicat salvarea acestui %{resource}:'
|
||||||
other: "%{count} de erori au împiedicat salvarea acestui %{resource}:"
|
other: "%{count} erori au împiedicat salvarea acestui %{resource}:"
|
||||||
|
|
|
@ -35,24 +35,24 @@ lt:
|
||||||
redirect_uri: Naudok po vieną eilutę kiekvienam URI.
|
redirect_uri: Naudok po vieną eilutę kiekvienam URI.
|
||||||
scopes: Atskirk aprėptis tarpais. Palik tuščią, jei nori naudoti numatytąsias aprėtis.
|
scopes: Atskirk aprėptis tarpais. Palik tuščią, jei nori naudoti numatytąsias aprėtis.
|
||||||
index:
|
index:
|
||||||
application: Programėlė
|
application: Programa
|
||||||
callback_url: Atgalinis URL
|
callback_url: Atgalinis URL
|
||||||
delete: Ištrinti
|
delete: Ištrinti
|
||||||
empty: Neturi jokių programėlių.
|
empty: Neturi jokių programų.
|
||||||
name: Pavadinimas
|
name: Pavadinimas
|
||||||
new: Nauja programėlė
|
new: Nauja programa
|
||||||
scopes: Aprėptys
|
scopes: Aprėptys
|
||||||
show: Rodyti
|
show: Rodyti
|
||||||
title: Tavo programėlės
|
title: Tavo programos
|
||||||
new:
|
new:
|
||||||
title: Nauja programėlė
|
title: Nauja programa
|
||||||
show:
|
show:
|
||||||
actions: Veiksmai
|
actions: Veiksmai
|
||||||
application_id: Kliento raktas
|
application_id: Kliento programos raktas
|
||||||
callback_urls: Atgalinių URL adresų
|
callback_urls: Atgalinių URL
|
||||||
scopes: Aprėptys
|
scopes: Aprėptys
|
||||||
secret: Kliento paslaptis
|
secret: Kliento programos paslaptis
|
||||||
title: 'Programėlė: %{name}'
|
title: 'Programa: %{name}'
|
||||||
authorizations:
|
authorizations:
|
||||||
buttons:
|
buttons:
|
||||||
authorize: Leisti
|
authorize: Leisti
|
||||||
|
@ -60,48 +60,48 @@ lt:
|
||||||
error:
|
error:
|
||||||
title: Įvyko klaida.
|
title: Įvyko klaida.
|
||||||
new:
|
new:
|
||||||
prompt_html: "%{client_name} norėtų gauti leidimą prieigos prie tavo paskyros. Tai trečiosios šalies programėlė. <strong>Jei ja nepasitiki, neturėtum leisti.</strong>"
|
prompt_html: "%{client_name} norėtų gauti leidimą pasiekti tavo paskyrą. Tai – trečiosios šalies programa. <strong>Jei ja nepasitiki, tada neturėtum leisti.</strong>"
|
||||||
review_permissions: Peržiūrėti leidimus
|
review_permissions: Peržiūrėti leidimus
|
||||||
title: Reikalingas leidimas
|
title: Privalomas leidimas
|
||||||
show:
|
show:
|
||||||
title: Nukopijuok šį tapatybės patvirtinimo kodą ir įklijuok jį į programėlę.
|
title: Nukopijuok šį leidimo kodą ir įklijuok jį į programą.
|
||||||
authorized_applications:
|
authorized_applications:
|
||||||
buttons:
|
buttons:
|
||||||
revoke: Naikinti
|
revoke: Naikinti
|
||||||
confirmations:
|
confirmations:
|
||||||
revoke: Ar esi įsitikinęs (-usi)?
|
revoke: Ar esi įsitikinęs (-usi)?
|
||||||
index:
|
index:
|
||||||
authorized_at: Įgaliota %{date}
|
authorized_at: Leidžiama %{date}
|
||||||
description_html: Tai programėlės, kurios gali pasiekti tavo paskyrą naudojant API. Jei čia yra programėlių, kurių neatpažįsti, arba jei programėlė elgiasi netinkamai, gali panaikinti jos prieigą.
|
description_html: Tai – programos, kurios gali pasiekti tavo paskyrą naudojant API. Jei čia yra programų, kurių neatpažįsti, arba jei programa elgiasi netinkamai, gali panaikinti jos prieigą.
|
||||||
last_used_at: Paskutinį kartą naudota %{date}
|
last_used_at: Paskutinį kartą naudota %{date}
|
||||||
never_used: Niekada nenaudotas
|
never_used: Niekada nenaudota
|
||||||
scopes: Leidimai
|
scopes: Leidimai
|
||||||
superapp: Vidinis
|
superapp: Vidinis
|
||||||
title: Tavo leidžiamos programėlės
|
title: Tavo leidžiamos programos
|
||||||
errors:
|
errors:
|
||||||
messages:
|
messages:
|
||||||
access_denied: Išteklių savininkas (-ė) arba įgaliojimų serveris atmetė užklausą.
|
access_denied: Išteklių savininkas (-ė) arba leidžiamų serveris atmetė užklausą.
|
||||||
credential_flow_not_configured: Išteklių savininko slaptažodžio kredencialų srautas nepavyko, nes Doorkeeper.configure.resource_owner_from_credentials nėra nesukonfigūruotas.
|
credential_flow_not_configured: Išteklių savininko slaptažodžio kredencialų srautas nepavyko, nes Doorkeeper.configure.resource_owner_from_credentials nėra nesukonfigūruotas.
|
||||||
invalid_client: Kliento tapatybės nustatymas nepavyko dėl nežinomo kliento, neįtraukto kliento tapatybės nustatymo arba nepalaikomo tapatybės nustatymo metodo.
|
invalid_client: Kliento programos tapatybės nustatymas nepavyko dėl nežinomo kliento programos, neįtraukto kliento programos tapatybės nustatymo arba nepalaikomo tapatybės nustatymo metodo.
|
||||||
invalid_code_challenge_method: Kodo iššūkio būdas turi būti S256. Paprastas nepalaikomas.
|
invalid_code_challenge_method: Kodo iššūkio metodas turi būti S256. Paprastas nepalaikomas.
|
||||||
invalid_grant: Pateiktas įgaliojimas yra netinkamas, pasibaigęs, panaikintas, neatitinka įgaliojimo užklausoje naudoto nukreipimo URI arba buvo išduotas kitam klientui.
|
invalid_grant: Pateiktas leidimo suteikimas yra netinkamas, nebegaliojantis, panaikintas, neatitinka leidimo užklausoje naudoto nukreipimo URI arba buvo išduotas kitam kliento programui.
|
||||||
invalid_redirect_uri: Nukreipimo uri įtrauktas yra netinkamas.
|
invalid_redirect_uri: Įtrauktas nukreipimo URI netinkamas.
|
||||||
invalid_request:
|
invalid_request:
|
||||||
missing_param: 'Trūksta privalomo parametro: %{value}.'
|
missing_param: 'Trūksta privalomo parametro: %{value}.'
|
||||||
request_not_authorized: Užklausą reikia įgalioti. Reikalingo parametro užklausai įgalioti trūksta arba jis netinkamas.
|
request_not_authorized: Užklausą reikia leisti. Trūksta privalomo parametro užklausai leisti arba jis netinkamas.
|
||||||
unknown: Užklausoje trūksta privalomo parametro, turi nepalaikomą parametro reikšmę arba yra kitaip netinkamai suformuota.
|
unknown: Užklausai trūksta privalomo parametro, įtraukta nepalaikoma parametro reikšmė arba ji yra kitaip netaisyklingas.
|
||||||
invalid_resource_owner: Pateikti išteklių savininko įgaliojimai yra netinkami arba išteklių savininko negalima surasti.
|
invalid_resource_owner: Pateikti išteklių savininko kredencialai yra netinkami arba išteklių savininko negalima surasti.
|
||||||
invalid_scope: Užklausos aprėptis yra netinkama, nežinoma arba netaisyklingas.
|
invalid_scope: Užklausos aprėptis yra netinkama, nežinoma arba netaisyklingas.
|
||||||
invalid_token:
|
invalid_token:
|
||||||
expired: Baigėsi prieigos rakto galiojimas.
|
expired: Prieigos raktas nebegalioja.
|
||||||
revoked: Prieigos raktas buvo panaikintas.
|
revoked: Prieigos raktas buvo panaikintas.
|
||||||
unknown: Prieigos raktas yra netinkamas.
|
unknown: Prieigos raktas netinkamas.
|
||||||
resource_owner_authenticator_not_configured: Išteklių savininko suradimas nepavyko dėl to, kad Doorkeeper.configure.resource_owner_authenticator nėra sukonfigūruotas.
|
resource_owner_authenticator_not_configured: Išteklių savininko suradimas nepavyko, nes Doorkeeper.configure.resource_owner_authenticator nėra sukonfigūruotas.
|
||||||
server_error: Įgaliojimų serveris susidūrė su netikėta sąlyga, dėl kurios negalėjo užpildyti užklausos.
|
server_error: Leidimo serveris susidūrė su netikėta sąlyga, dėl kurios negalėjo užpildyti užklausos.
|
||||||
temporarily_unavailable: Įgaliojimų serveris šiuo metu negali apdoroti užklausos dėl laikinos serverio perkrovos arba techninės priežiūros.
|
temporarily_unavailable: Įgaliojimų serveris šiuo metu negali apdoroti užklausos dėl laikinos serverio perkrovos arba techninės priežiūros.
|
||||||
unauthorized_client: Klientas nėra įgaliotas atlikti šią užklausą šiuo metodu.
|
unauthorized_client: Klientas nėra leidžiamas atlikti šią užklausą šiuo metodu.
|
||||||
unsupported_grant_type: Įgaliojimų suteikimo tipas nepalaikomas įgaliojimų serveryje.
|
unsupported_grant_type: Leidimo suteikimo tipas nepalaikomas leidimo serveryje.
|
||||||
unsupported_response_type: Įgaliojimų serveris nepalaiko šio atsako tipo.
|
unsupported_response_type: Leidimo serveris nepalaiko šio atsakymo tipo.
|
||||||
flash:
|
flash:
|
||||||
applications:
|
applications:
|
||||||
create:
|
create:
|
||||||
|
@ -123,7 +123,7 @@ lt:
|
||||||
admin/accounts: Paskyrų administravimas
|
admin/accounts: Paskyrų administravimas
|
||||||
admin/all: Visi administraciniai funkcijos
|
admin/all: Visi administraciniai funkcijos
|
||||||
admin/reports: Ataskaitų administravimas
|
admin/reports: Ataskaitų administravimas
|
||||||
all: Pilna prieiga prie tavo Mastodon paskyros
|
all: Pilna prieiga prie tavo „Mastodon“ paskyros
|
||||||
blocks: Blokavimai
|
blocks: Blokavimai
|
||||||
bookmarks: Žymės
|
bookmarks: Žymės
|
||||||
conversations: Pokalbiai
|
conversations: Pokalbiai
|
||||||
|
@ -136,7 +136,7 @@ lt:
|
||||||
media: Medijos priedai
|
media: Medijos priedai
|
||||||
mutes: Nutildymai
|
mutes: Nutildymai
|
||||||
notifications: Pranešimai
|
notifications: Pranešimai
|
||||||
profile: Tavo Mastodon profilis
|
profile: Tavo „Mastodon“ profilis
|
||||||
push: Tiesioginiai pranešimai
|
push: Tiesioginiai pranešimai
|
||||||
reports: Ataskaitos
|
reports: Ataskaitos
|
||||||
search: Paieška
|
search: Paieška
|
||||||
|
@ -151,25 +151,25 @@ lt:
|
||||||
scopes:
|
scopes:
|
||||||
admin:read: skaityti visus duomenis serveryje
|
admin:read: skaityti visus duomenis serveryje
|
||||||
admin:read:accounts: skaityti slaptą visų paskyrų informaciją
|
admin:read:accounts: skaityti slaptą visų paskyrų informaciją
|
||||||
admin:read:canonical_email_blocks: skaityti slaptą visų kanoninių el. laiško blokavimų informaciją
|
admin:read:canonical_email_blocks: skaityti slaptą visų kanoninių el. laiškų blokavimų informaciją
|
||||||
admin:read:domain_allows: skaityti slaptą visų domeno leidimus informaciją
|
admin:read:domain_allows: skaityti slaptą visų serverių leidžiamų informaciją
|
||||||
admin:read:domain_blocks: skaityti slaptą visų domeno blokavimų informaciją
|
admin:read:domain_blocks: skaityti slaptą visų serverių blokavimų informaciją
|
||||||
admin:read:email_domain_blocks: skaityti slaptą visų el. laiško domeno blokavimų informaciją
|
admin:read:email_domain_blocks: skaityti slaptą visų el. laiškų serverių blokavimų informaciją
|
||||||
admin:read:ip_blocks: skaityti slaptą visų IP blokavimų informaciją
|
admin:read:ip_blocks: skaityti slaptą visų IP blokavimų informaciją
|
||||||
admin:read:reports: skaityti slaptą visų ataskaitų ir praneštų paskyrų informaciją
|
admin:read:reports: skaityti slaptą visų ataskaitų ir praneštų paskyrų informaciją
|
||||||
admin:write: modifikuoti visus duomenis serveryje
|
admin:write: modifikuoti visus duomenis serveryje
|
||||||
admin:write:accounts: atlikti paskyrų prižiūrėjimo veiksmus
|
admin:write:accounts: atlikti paskyrų prižiūrėjimo veiksmus
|
||||||
admin:write:canonical_email_blocks: atlikti kanoninių el. laiško blokavimų prižiūrėjimo veiksmus
|
admin:write:canonical_email_blocks: atlikti kanoninių el. laiškų blokavimų prižiūrėjimo veiksmus
|
||||||
admin:write:domain_allows: atlikti domeno leidimų prižiūrėjimo veiksmus
|
admin:write:domain_allows: atlikti serverio leidžiamų prižiūrėjimo veiksmus
|
||||||
admin:write:domain_blocks: atlikti domeno blokavimų prižiūrėjimo veiksmus
|
admin:write:domain_blocks: atlikti serverio blokavimų prižiūrėjimo veiksmus
|
||||||
admin:write:email_domain_blocks: atlikti el. laiško domenų blokavimų prižiūrėjimo veiksmus
|
admin:write:email_domain_blocks: atlikti el. laiškų serverių blokavimų prižiūrėjimo veiksmus
|
||||||
admin:write:ip_blocks: atlikti IP blokavimų prižiūrėjimo veiksmus
|
admin:write:ip_blocks: atlikti IP blokavimų prižiūrėjimo veiksmus
|
||||||
admin:write:reports: atlikti ataskaitų prižiūrėjimo veiksmus
|
admin:write:reports: atlikti ataskaitų prižiūrėjimo veiksmus
|
||||||
crypto: naudoti visapusį šifravimą
|
crypto: naudoti visapusį šifravimą
|
||||||
follow: modifikuoti paskyros sąryšius
|
follow: modifikuoti paskyros sąryšius
|
||||||
profile: skaityti tik tavo paskyros profilio informaciją
|
profile: skaityti tik tavo paskyros profilio informaciją
|
||||||
push: gauti tiesioginius pranešimus
|
push: gauti tiesioginius pranešimus
|
||||||
read: skaityti visus paskyros duomenis
|
read: skaityti visus tavo paskyros duomenis
|
||||||
read:accounts: matyti paskyrų informaciją
|
read:accounts: matyti paskyrų informaciją
|
||||||
read:blocks: matyti tavo blokavimus
|
read:blocks: matyti tavo blokavimus
|
||||||
read:bookmarks: matyti tavo žymes
|
read:bookmarks: matyti tavo žymes
|
||||||
|
|
|
@ -898,6 +898,7 @@ es-AR:
|
||||||
name: Nombre
|
name: Nombre
|
||||||
newest: Lo más reciente
|
newest: Lo más reciente
|
||||||
oldest: Lo más antiguo
|
oldest: Lo más antiguo
|
||||||
|
open: Ver públicamente
|
||||||
reset: Restablecer
|
reset: Restablecer
|
||||||
review: Estado de revisión
|
review: Estado de revisión
|
||||||
search: Buscar
|
search: Buscar
|
||||||
|
|
|
@ -898,6 +898,7 @@ es-MX:
|
||||||
name: Nombre
|
name: Nombre
|
||||||
newest: Más reciente
|
newest: Más reciente
|
||||||
oldest: Menos reciente
|
oldest: Menos reciente
|
||||||
|
open: Ver públicamente
|
||||||
reset: Reiniciar
|
reset: Reiniciar
|
||||||
review: Estado de revisión
|
review: Estado de revisión
|
||||||
search: Buscar
|
search: Buscar
|
||||||
|
|
|
@ -898,6 +898,7 @@ es:
|
||||||
name: Nombre
|
name: Nombre
|
||||||
newest: Más reciente
|
newest: Más reciente
|
||||||
oldest: Menos reciente
|
oldest: Menos reciente
|
||||||
|
open: Ver públicamente
|
||||||
reset: Reiniciar
|
reset: Reiniciar
|
||||||
review: Estado de revisión
|
review: Estado de revisión
|
||||||
search: Buscar
|
search: Buscar
|
||||||
|
|
|
@ -1203,7 +1203,7 @@ fr:
|
||||||
add_new: Ajouter un nouveau hashtag
|
add_new: Ajouter un nouveau hashtag
|
||||||
errors:
|
errors:
|
||||||
limit: Vous avez déjà mis en avant le nombre maximum de hashtags
|
limit: Vous avez déjà mis en avant le nombre maximum de hashtags
|
||||||
hint_html: "<strong>Que sont les hashtags mis en avant ?</strong> Ils sont affichés en évidence sur votre profil public et permettent aux gens de parcourir vos messages publics qui utilisent ces hashtags. Ils sont un excellent outil pour garder la trace d’activités créatrices ou de projets de long terme."
|
hint_html: "<strong>Mettez en évidence vos hashtags les plus importants sur votre profil.</strong> Un outil idéal pour suivre vos travaux créatifs et vos projets à long terme, les hashtags mis en avant sont affichés bien en évidence sur votre profil et permettent un accès rapide à vos propres publications."
|
||||||
filters:
|
filters:
|
||||||
contexts:
|
contexts:
|
||||||
account: Profils
|
account: Profils
|
||||||
|
|
|
@ -940,6 +940,7 @@ ga:
|
||||||
name: Ainm
|
name: Ainm
|
||||||
newest: Is nuaí
|
newest: Is nuaí
|
||||||
oldest: Is sine
|
oldest: Is sine
|
||||||
|
open: Amharc go Poiblí
|
||||||
reset: Athshocraigh
|
reset: Athshocraigh
|
||||||
review: Stádas athbhreithnithe
|
review: Stádas athbhreithnithe
|
||||||
search: Cuardach
|
search: Cuardach
|
||||||
|
|
|
@ -926,6 +926,7 @@ gd:
|
||||||
name: Ainm
|
name: Ainm
|
||||||
newest: As ùire
|
newest: As ùire
|
||||||
oldest: As sine
|
oldest: As sine
|
||||||
|
open: Seall gu poblach
|
||||||
reset: Ath-shuidhich
|
reset: Ath-shuidhich
|
||||||
review: Dèan lèirmheas air an staid
|
review: Dèan lèirmheas air an staid
|
||||||
search: Lorg
|
search: Lorg
|
||||||
|
|
|
@ -898,6 +898,7 @@ nn:
|
||||||
name: Namn
|
name: Namn
|
||||||
newest: Nyaste
|
newest: Nyaste
|
||||||
oldest: Eldste
|
oldest: Eldste
|
||||||
|
open: Vis offentleg
|
||||||
reset: Nullstill
|
reset: Nullstill
|
||||||
review: Sjå gjennom status
|
review: Sjå gjennom status
|
||||||
search: Søk
|
search: Søk
|
||||||
|
|
|
@ -872,16 +872,19 @@ th:
|
||||||
message_html: "<strong>ที่เก็บข้อมูลวัตถุของคุณกำหนดค่าไม่ถูกต้อง ความเป็นส่วนตัวของผู้ใช้ของคุณตกอยู่ในความเสี่ยง</strong>"
|
message_html: "<strong>ที่เก็บข้อมูลวัตถุของคุณกำหนดค่าไม่ถูกต้อง ความเป็นส่วนตัวของผู้ใช้ของคุณตกอยู่ในความเสี่ยง</strong>"
|
||||||
tags:
|
tags:
|
||||||
moderation:
|
moderation:
|
||||||
|
not_trendable: ไม่สามารถขึ้นแนวโน้มได้
|
||||||
not_usable: ไม่สามารถใช้งานได้
|
not_usable: ไม่สามารถใช้งานได้
|
||||||
pending_review: การตรวจทานที่รอดำเนินการ
|
pending_review: การตรวจทานที่รอดำเนินการ
|
||||||
review_requested: ต้องการการตรวจทาน
|
review_requested: ต้องการการตรวจทาน
|
||||||
reviewed: ตรวจทานแล้ว
|
reviewed: ตรวจทานแล้ว
|
||||||
title: สถานะ
|
title: สถานะ
|
||||||
|
trendable: ขึ้นแนวโน้มได้
|
||||||
unreviewed: ไม่ได้รับการตรวจทาน
|
unreviewed: ไม่ได้รับการตรวจทาน
|
||||||
usable: ใช้งานได้
|
usable: ใช้งานได้
|
||||||
name: ชื่อ
|
name: ชื่อ
|
||||||
newest: ใหม่ที่สุด
|
newest: ใหม่ที่สุด
|
||||||
oldest: เก่าที่สุด
|
oldest: เก่าที่สุด
|
||||||
|
open: ดูแบบสาธารณะ
|
||||||
reset: รีเซ็ต
|
reset: รีเซ็ต
|
||||||
review: สถานะการตรวจทาน
|
review: สถานะการตรวจทาน
|
||||||
search: ค้นหา
|
search: ค้นหา
|
||||||
|
@ -1904,7 +1907,7 @@ th:
|
||||||
seamless_external_login: คุณได้เข้าสู่ระบบผ่านบริการภายนอก ดังนั้นการตั้งค่ารหัสผ่านและอีเมลจึงไม่พร้อมใช้งาน
|
seamless_external_login: คุณได้เข้าสู่ระบบผ่านบริการภายนอก ดังนั้นการตั้งค่ารหัสผ่านและอีเมลจึงไม่พร้อมใช้งาน
|
||||||
signed_in_as: 'ลงชื่อเข้าเป็น:'
|
signed_in_as: 'ลงชื่อเข้าเป็น:'
|
||||||
verification:
|
verification:
|
||||||
extra_instructions_html: <strong>เคล็ดลับ:</strong> ลิงก์ในเว็บไซต์ของคุณสามารถเป็นแบบมองไม่เห็น ส่วนที่สำคัญคือ <code>rel="me"</code> ซึ่งป้องกันการแอบอ้างในเว็บไซต์ที่มีเนื้อหาที่ผู้ใช้สร้างขึ้น คุณยังสามารถใช้แท็ก <code>link</code> ในส่วนหัวของหน้าแทนที่จะเป็น <code>a</code> แต่ HTML ต้องเข้าถึงได้โดยไม่มีการประมวลผล JavaScript
|
extra_instructions_html: <strong>เคล็ดลับ:</strong> ลิงก์ในเว็บไซต์ของคุณสามารถเป็นแบบมองไม่เห็น ส่วนที่สำคัญคือ <code>rel="me"</code> ซึ่งป้องกันการแอบอ้างในเว็บไซต์ที่มีเนื้อหาที่ผู้ใช้สร้างขึ้น คุณยังสามารถใช้แท็ก <code>link</code> ในส่วนหัวของหน้าแทนที่จะเป็น <code>a</code> ได้อีกด้วย แต่ HTML ต้องเข้าถึงได้โดยไม่มีการประมวลผล JavaScript
|
||||||
here_is_how: นี่คือวิธี
|
here_is_how: นี่คือวิธี
|
||||||
hint_html: "<strong>การยืนยันตัวตนของคุณใน Mastodon มีไว้สำหรับทุกคน</strong> โดยอิงตามมาตรฐานเว็บแบบเปิด ฟรีตอนนี้และตลอดไป ทั้งหมดที่คุณจำเป็นต้องมีคือเว็บไซต์ส่วนบุคคลที่ผู้คนรู้จักคุณ เมื่อคุณเชื่อมโยงไปยังเว็บไซต์นี้จากโปรไฟล์ของคุณ เราจะตรวจสอบว่าเว็บไซต์เชื่อมโยงกลับไปยังโปรไฟล์ของคุณและแสดงตัวบ่งชี้ที่มองเห็นได้ในโปรไฟล์"
|
hint_html: "<strong>การยืนยันตัวตนของคุณใน Mastodon มีไว้สำหรับทุกคน</strong> โดยอิงตามมาตรฐานเว็บแบบเปิด ฟรีตอนนี้และตลอดไป ทั้งหมดที่คุณจำเป็นต้องมีคือเว็บไซต์ส่วนบุคคลที่ผู้คนรู้จักคุณ เมื่อคุณเชื่อมโยงไปยังเว็บไซต์นี้จากโปรไฟล์ของคุณ เราจะตรวจสอบว่าเว็บไซต์เชื่อมโยงกลับไปยังโปรไฟล์ของคุณและแสดงตัวบ่งชี้ที่มองเห็นได้ในโปรไฟล์"
|
||||||
instructions_html: คัดลอกแล้ววางโค้ดด้านล่างลงใน HTML ของเว็บไซต์ของคุณ จากนั้นเพิ่มที่อยู่ของเว็บไซต์ของคุณลงในหนึ่งในช่องพิเศษในโปรไฟล์ของคุณจากแท็บ "แก้ไขโปรไฟล์" และบันทึกการเปลี่ยนแปลง
|
instructions_html: คัดลอกแล้ววางโค้ดด้านล่างลงใน HTML ของเว็บไซต์ของคุณ จากนั้นเพิ่มที่อยู่ของเว็บไซต์ของคุณลงในหนึ่งในช่องพิเศษในโปรไฟล์ของคุณจากแท็บ "แก้ไขโปรไฟล์" และบันทึกการเปลี่ยนแปลง
|
||||||
|
|
|
@ -884,6 +884,7 @@ vi:
|
||||||
name: Tên
|
name: Tên
|
||||||
newest: Mới nhất
|
newest: Mới nhất
|
||||||
oldest: Cũ nhất
|
oldest: Cũ nhất
|
||||||
|
open: Xem công khai
|
||||||
reset: Đặt lại
|
reset: Đặt lại
|
||||||
review: Phê duyệt
|
review: Phê duyệt
|
||||||
search: Tìm kiếm
|
search: Tìm kiếm
|
||||||
|
|
|
@ -884,6 +884,7 @@ zh-CN:
|
||||||
name: 名称
|
name: 名称
|
||||||
newest: 最新
|
newest: 最新
|
||||||
oldest: 最早
|
oldest: 最早
|
||||||
|
open: 以公开身份查看
|
||||||
reset: 重置
|
reset: 重置
|
||||||
review: 审核状态
|
review: 审核状态
|
||||||
search: 搜索
|
search: 搜索
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
# frozen_string_literal: true
|
# frozen_string_literal: true
|
||||||
|
|
||||||
Chewy.strategy(:mastodon) do
|
Chewy.strategy(:mastodon) do
|
||||||
Dir[Rails.root.join('db', 'seeds', '*.rb')].each do |seed|
|
Rails.root.glob('db/seeds/*.rb').each do |seed|
|
||||||
load seed
|
load seed
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -15,7 +15,7 @@ namespace :branding do
|
||||||
output_dest = Rails.root.join('app', 'javascript', 'images', 'mailer')
|
output_dest = Rails.root.join('app', 'javascript', 'images', 'mailer')
|
||||||
|
|
||||||
# Displayed size is 64px, at 3x it's 192px
|
# Displayed size is 64px, at 3x it's 192px
|
||||||
Dir[Rails.root.join('app', 'javascript', 'images', 'icons', '*.svg')].each do |path|
|
Rails.root.glob('app/javascript/images/icons/*.svg').each do |path|
|
||||||
rsvg_convert.run(input: path, size: 192, output: output_dest.join("#{File.basename(path, '.svg')}.png"))
|
rsvg_convert.run(input: path, size: 192, output: output_dest.join("#{File.basename(path, '.svg')}.png"))
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -20,7 +20,7 @@ end
|
||||||
def find_used_icons
|
def find_used_icons
|
||||||
icons_by_weight_and_size = {}
|
icons_by_weight_and_size = {}
|
||||||
|
|
||||||
Dir[Rails.root.join('app', 'javascript', '**', '*.*s*')].map do |path|
|
Rails.root.glob('app/javascript/**/*.*s*').map do |path|
|
||||||
File.open(path, 'r') do |file|
|
File.open(path, 'r') do |file|
|
||||||
pattern = %r{\Aimport .* from '@/material-icons/(?<weight>[0-9]+)-(?<size>[0-9]+)px/(?<icon>[^-]*)(?<fill>-fill)?.svg\?react';}
|
pattern = %r{\Aimport .* from '@/material-icons/(?<weight>[0-9]+)-(?<size>[0-9]+)px/(?<icon>[^-]*)(?<fill>-fill)?.svg\?react';}
|
||||||
file.each_line do |line|
|
file.each_line do |line|
|
||||||
|
|
|
@ -98,7 +98,7 @@ namespace :repo do
|
||||||
missing_yaml_files = I18n.available_locales.reject { |locale| Rails.root.join('config', 'locales', "#{locale}.yml").exist? }
|
missing_yaml_files = I18n.available_locales.reject { |locale| Rails.root.join('config', 'locales', "#{locale}.yml").exist? }
|
||||||
missing_json_files = I18n.available_locales.reject { |locale| Rails.root.join('app', 'javascript', 'mastodon', 'locales', "#{locale}.json").exist? }
|
missing_json_files = I18n.available_locales.reject { |locale| Rails.root.join('app', 'javascript', 'mastodon', 'locales', "#{locale}.json").exist? }
|
||||||
|
|
||||||
locales_in_files = Dir[Rails.root.join('config', 'locales', '*.yml')].map do |path|
|
locales_in_files = Rails.root.glob('config/locales/*.yml').map do |path|
|
||||||
file_name = File.basename(path, '.yml')
|
file_name = File.basename(path, '.yml')
|
||||||
file_name.gsub(/\A(doorkeeper|devise|activerecord|simple_form)\./, '').to_sym
|
file_name.gsub(/\A(doorkeeper|devise|activerecord|simple_form)\./, '').to_sym
|
||||||
end.uniq.compact
|
end.uniq.compact
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"name": "@mastodon/mastodon",
|
"name": "@mastodon/mastodon",
|
||||||
"license": "AGPL-3.0-or-later",
|
"license": "AGPL-3.0-or-later",
|
||||||
"packageManager": "yarn@4.4.0",
|
"packageManager": "yarn@4.4.1",
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=18"
|
"node": ">=18"
|
||||||
},
|
},
|
||||||
|
|
|
@ -1,17 +0,0 @@
|
||||||
# frozen_string_literal: true
|
|
||||||
|
|
||||||
require 'rails_helper'
|
|
||||||
|
|
||||||
RSpec.describe AboutController do
|
|
||||||
render_views
|
|
||||||
|
|
||||||
describe 'GET #show' do
|
|
||||||
before do
|
|
||||||
get :show
|
|
||||||
end
|
|
||||||
|
|
||||||
it 'returns http success' do
|
|
||||||
expect(response).to have_http_status(200)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
|
@ -1,19 +0,0 @@
|
||||||
# frozen_string_literal: true
|
|
||||||
|
|
||||||
require 'rails_helper'
|
|
||||||
|
|
||||||
describe CustomCssController do
|
|
||||||
render_views
|
|
||||||
|
|
||||||
describe 'GET #show' do
|
|
||||||
before do
|
|
||||||
get :show
|
|
||||||
end
|
|
||||||
|
|
||||||
it 'returns http success' do
|
|
||||||
expect(response).to have_http_status(200)
|
|
||||||
end
|
|
||||||
|
|
||||||
it_behaves_like 'cacheable response'
|
|
||||||
end
|
|
||||||
end
|
|
|
@ -1,18 +0,0 @@
|
||||||
# frozen_string_literal: true
|
|
||||||
|
|
||||||
require 'rails_helper'
|
|
||||||
|
|
||||||
describe EmojisController do
|
|
||||||
render_views
|
|
||||||
|
|
||||||
let(:emoji) { Fabricate(:custom_emoji, shortcode: 'coolcat') }
|
|
||||||
|
|
||||||
describe 'GET #show' do
|
|
||||||
let(:response) { get :show, params: { id: emoji.id, format: :json } }
|
|
||||||
|
|
||||||
it 'returns the right response' do
|
|
||||||
expect(response).to have_http_status 200
|
|
||||||
expect(body_as_json[:name]).to eq ':coolcat:'
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
|
@ -1,14 +0,0 @@
|
||||||
# frozen_string_literal: true
|
|
||||||
|
|
||||||
require 'rails_helper'
|
|
||||||
|
|
||||||
describe HealthController do
|
|
||||||
render_views
|
|
||||||
|
|
||||||
describe 'GET #show' do
|
|
||||||
it 'returns http success' do
|
|
||||||
get :show
|
|
||||||
expect(response).to have_http_status(200)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
|
@ -1,30 +0,0 @@
|
||||||
# frozen_string_literal: true
|
|
||||||
|
|
||||||
require 'rails_helper'
|
|
||||||
|
|
||||||
RSpec.describe HomeController do
|
|
||||||
render_views
|
|
||||||
|
|
||||||
describe 'GET #index' do
|
|
||||||
subject { get :index }
|
|
||||||
|
|
||||||
context 'when not signed in' do
|
|
||||||
it 'returns http success' do
|
|
||||||
request.path = '/'
|
|
||||||
expect(subject).to have_http_status(:success)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
context 'when signed in' do
|
|
||||||
let(:user) { Fabricate(:user) }
|
|
||||||
|
|
||||||
before do
|
|
||||||
sign_in(user)
|
|
||||||
end
|
|
||||||
|
|
||||||
it 'returns http success' do
|
|
||||||
expect(subject).to have_http_status(:success)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
|
@ -1,19 +0,0 @@
|
||||||
# frozen_string_literal: true
|
|
||||||
|
|
||||||
require 'rails_helper'
|
|
||||||
|
|
||||||
describe ManifestsController do
|
|
||||||
render_views
|
|
||||||
|
|
||||||
describe 'GET #show' do
|
|
||||||
before do
|
|
||||||
get :show
|
|
||||||
end
|
|
||||||
|
|
||||||
it 'returns http success' do
|
|
||||||
expect(response).to have_http_status(200)
|
|
||||||
end
|
|
||||||
|
|
||||||
it_behaves_like 'cacheable response'
|
|
||||||
end
|
|
||||||
end
|
|
|
@ -1,14 +0,0 @@
|
||||||
# frozen_string_literal: true
|
|
||||||
|
|
||||||
require 'rails_helper'
|
|
||||||
|
|
||||||
describe PrivacyController do
|
|
||||||
render_views
|
|
||||||
|
|
||||||
describe 'GET #show' do
|
|
||||||
it 'returns http success' do
|
|
||||||
get :show
|
|
||||||
expect(response).to have_http_status(200)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
|
@ -44,7 +44,7 @@ require 'chewy/rspec'
|
||||||
require 'email_spec/rspec'
|
require 'email_spec/rspec'
|
||||||
require 'test_prof/recipes/rspec/before_all'
|
require 'test_prof/recipes/rspec/before_all'
|
||||||
|
|
||||||
Dir[Rails.root.join('spec', 'support', '**', '*.rb')].each { |f| require f }
|
Rails.root.glob('spec/support/**/*.rb').each { |f| require f }
|
||||||
|
|
||||||
ActiveRecord::Migration.maintain_test_schema!
|
ActiveRecord::Migration.maintain_test_schema!
|
||||||
WebMock.disable_net_connect!(
|
WebMock.disable_net_connect!(
|
||||||
|
|
|
@ -0,0 +1,19 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
describe 'Custom stylesheets' do
|
||||||
|
describe 'GET /custom.css' do
|
||||||
|
before { get '/custom.css' }
|
||||||
|
|
||||||
|
it 'returns http success' do
|
||||||
|
expect(response)
|
||||||
|
.to have_http_status(200)
|
||||||
|
.and have_attributes(
|
||||||
|
content_type: match('text/css')
|
||||||
|
)
|
||||||
|
end
|
||||||
|
|
||||||
|
it_behaves_like 'cacheable response'
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,21 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
describe 'Emojis' do
|
||||||
|
describe 'GET /emojis/:id' do
|
||||||
|
let(:emoji) { Fabricate(:custom_emoji, shortcode: 'coolcat') }
|
||||||
|
|
||||||
|
it 'returns http success with correct json' do
|
||||||
|
get "/emojis/#{emoji.id}"
|
||||||
|
|
||||||
|
expect(response)
|
||||||
|
.to have_http_status(200)
|
||||||
|
expect(body_as_json)
|
||||||
|
.to include(
|
||||||
|
name: ':coolcat:',
|
||||||
|
type: 'Emoji'
|
||||||
|
)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,16 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
describe 'Health check endpoint' do
|
||||||
|
describe 'GET /health' do
|
||||||
|
it 'returns http success when server is functioning' do
|
||||||
|
get '/health'
|
||||||
|
|
||||||
|
expect(response)
|
||||||
|
.to have_http_status(200)
|
||||||
|
expect(response.body)
|
||||||
|
.to include('OK')
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,24 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
describe 'Manifest' do
|
||||||
|
describe 'GET /manifest' do
|
||||||
|
before { get '/manifest' }
|
||||||
|
|
||||||
|
it 'returns http success' do
|
||||||
|
expect(response)
|
||||||
|
.to have_http_status(200)
|
||||||
|
.and have_attributes(
|
||||||
|
content_type: match('application/json')
|
||||||
|
)
|
||||||
|
expect(body_as_json)
|
||||||
|
.to include(
|
||||||
|
id: '/home',
|
||||||
|
name: 'Mastodon'
|
||||||
|
)
|
||||||
|
end
|
||||||
|
|
||||||
|
it_behaves_like 'cacheable response'
|
||||||
|
end
|
||||||
|
end
|
|
@ -28,7 +28,7 @@ RSpec.configure do |config|
|
||||||
end
|
end
|
||||||
|
|
||||||
config.after :suite do
|
config.after :suite do
|
||||||
FileUtils.rm_rf(Dir[Rails.root.join('spec', 'test_files')])
|
FileUtils.rm_rf(Rails.root.glob('spec/test_files'))
|
||||||
end
|
end
|
||||||
|
|
||||||
# Use the GitHub Annotations formatter for CI
|
# Use the GitHub Annotations formatter for CI
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
describe 'About page' do
|
||||||
|
it 'visits the about page and renders the web app' do
|
||||||
|
visit about_path
|
||||||
|
|
||||||
|
expect(page)
|
||||||
|
.to have_css('noscript', text: /Mastodon/)
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,25 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
describe 'Home page' do
|
||||||
|
context 'when signed in' do
|
||||||
|
before { sign_in Fabricate(:user) }
|
||||||
|
|
||||||
|
it 'visits the homepage and renders the web app' do
|
||||||
|
visit root_path
|
||||||
|
|
||||||
|
expect(page)
|
||||||
|
.to have_css('noscript', text: /Mastodon/)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
context 'when not signed in' do
|
||||||
|
it 'visits the homepage and renders the web app' do
|
||||||
|
visit root_path
|
||||||
|
|
||||||
|
expect(page)
|
||||||
|
.to have_css('noscript', text: /Mastodon/)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,12 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
describe 'Privacy policy page' do
|
||||||
|
it 'visits the privacy policy page and renders the web app' do
|
||||||
|
visit privacy_policy_path
|
||||||
|
|
||||||
|
expect(page)
|
||||||
|
.to have_css('noscript', text: /Mastodon/)
|
||||||
|
end
|
||||||
|
end
|
|
@ -292,6 +292,9 @@ const CHANNEL_NAMES = [
|
||||||
|
|
||||||
const startServer = async () => {
|
const startServer = async () => {
|
||||||
const pgPool = new pg.Pool(pgConfigFromEnv(process.env));
|
const pgPool = new pg.Pool(pgConfigFromEnv(process.env));
|
||||||
|
|
||||||
|
const metrics = setupMetrics(CHANNEL_NAMES, pgPool);
|
||||||
|
|
||||||
const server = http.createServer();
|
const server = http.createServer();
|
||||||
const wss = new WebSocketServer({ noServer: true });
|
const wss = new WebSocketServer({ noServer: true });
|
||||||
|
|
||||||
|
@ -388,16 +391,6 @@ const startServer = async () => {
|
||||||
const redisClient = await createRedisClient(redisConfig);
|
const redisClient = await createRedisClient(redisConfig);
|
||||||
const { redisPrefix } = redisConfig;
|
const { redisPrefix } = redisConfig;
|
||||||
|
|
||||||
const metrics = setupMetrics(CHANNEL_NAMES, pgPool);
|
|
||||||
// TODO: migrate all metrics to metrics.X.method() instead of just X.method()
|
|
||||||
const {
|
|
||||||
connectedClients,
|
|
||||||
connectedChannels,
|
|
||||||
redisSubscriptions,
|
|
||||||
redisMessagesReceived,
|
|
||||||
messagesSent,
|
|
||||||
} = metrics;
|
|
||||||
|
|
||||||
// When checking metrics in the browser, the favicon is requested this
|
// When checking metrics in the browser, the favicon is requested this
|
||||||
// prevents the request from falling through to the API Router, which would
|
// prevents the request from falling through to the API Router, which would
|
||||||
// error for this endpoint:
|
// error for this endpoint:
|
||||||
|
@ -408,15 +401,7 @@ const startServer = async () => {
|
||||||
res.end('OK');
|
res.end('OK');
|
||||||
});
|
});
|
||||||
|
|
||||||
app.get('/metrics', async (req, res) => {
|
app.get('/metrics', metrics.requestHandler);
|
||||||
try {
|
|
||||||
res.set('Content-Type', metrics.register.contentType);
|
|
||||||
res.end(await metrics.register.metrics());
|
|
||||||
} catch (ex) {
|
|
||||||
req.log.error(ex);
|
|
||||||
res.status(500).end();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param {string[]} channels
|
* @param {string[]} channels
|
||||||
|
@ -443,7 +428,7 @@ const startServer = async () => {
|
||||||
* @param {string} message
|
* @param {string} message
|
||||||
*/
|
*/
|
||||||
const onRedisMessage = (channel, message) => {
|
const onRedisMessage = (channel, message) => {
|
||||||
redisMessagesReceived.inc();
|
metrics.redisMessagesReceived.inc();
|
||||||
|
|
||||||
const callbacks = subs[channel];
|
const callbacks = subs[channel];
|
||||||
|
|
||||||
|
@ -481,7 +466,7 @@ const startServer = async () => {
|
||||||
if (err) {
|
if (err) {
|
||||||
logger.error(`Error subscribing to ${channel}`);
|
logger.error(`Error subscribing to ${channel}`);
|
||||||
} else if (typeof count === 'number') {
|
} else if (typeof count === 'number') {
|
||||||
redisSubscriptions.set(count);
|
metrics.redisSubscriptions.set(count);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -508,7 +493,7 @@ const startServer = async () => {
|
||||||
if (err) {
|
if (err) {
|
||||||
logger.error(`Error unsubscribing to ${channel}`);
|
logger.error(`Error unsubscribing to ${channel}`);
|
||||||
} else if (typeof count === 'number') {
|
} else if (typeof count === 'number') {
|
||||||
redisSubscriptions.set(count);
|
metrics.redisSubscriptions.set(count);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
delete subs[channel];
|
delete subs[channel];
|
||||||
|
@ -688,13 +673,13 @@ const startServer = async () => {
|
||||||
unsubscribe(`${redisPrefix}${accessTokenChannelId}`, listener);
|
unsubscribe(`${redisPrefix}${accessTokenChannelId}`, listener);
|
||||||
unsubscribe(`${redisPrefix}${systemChannelId}`, listener);
|
unsubscribe(`${redisPrefix}${systemChannelId}`, listener);
|
||||||
|
|
||||||
connectedChannels.labels({ type: 'eventsource', channel: 'system' }).dec(2);
|
metrics.connectedChannels.labels({ type: 'eventsource', channel: 'system' }).dec(2);
|
||||||
});
|
});
|
||||||
|
|
||||||
subscribe(`${redisPrefix}${accessTokenChannelId}`, listener);
|
subscribe(`${redisPrefix}${accessTokenChannelId}`, listener);
|
||||||
subscribe(`${redisPrefix}${systemChannelId}`, listener);
|
subscribe(`${redisPrefix}${systemChannelId}`, listener);
|
||||||
|
|
||||||
connectedChannels.labels({ type: 'eventsource', channel: 'system' }).inc(2);
|
metrics.connectedChannels.labels({ type: 'eventsource', channel: 'system' }).inc(2);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -791,7 +776,7 @@ const startServer = async () => {
|
||||||
// TODO: Replace "string"-based delete payloads with object payloads:
|
// TODO: Replace "string"-based delete payloads with object payloads:
|
||||||
const encodedPayload = typeof payload === 'object' ? JSON.stringify(payload) : payload;
|
const encodedPayload = typeof payload === 'object' ? JSON.stringify(payload) : payload;
|
||||||
|
|
||||||
messagesSent.labels({ type: destinationType }).inc(1);
|
metrics.messagesSent.labels({ type: destinationType }).inc(1);
|
||||||
|
|
||||||
log.debug({ event, payload }, `Transmitting ${event} to ${req.accountId}`);
|
log.debug({ event, payload }, `Transmitting ${event} to ${req.accountId}`);
|
||||||
|
|
||||||
|
@ -1034,11 +1019,11 @@ const startServer = async () => {
|
||||||
const streamToHttp = (req, res) => {
|
const streamToHttp = (req, res) => {
|
||||||
const channelName = channelNameFromPath(req);
|
const channelName = channelNameFromPath(req);
|
||||||
|
|
||||||
connectedClients.labels({ type: 'eventsource' }).inc();
|
metrics.connectedClients.labels({ type: 'eventsource' }).inc();
|
||||||
|
|
||||||
// In theory we'll always have a channel name, but channelNameFromPath can return undefined:
|
// In theory we'll always have a channel name, but channelNameFromPath can return undefined:
|
||||||
if (typeof channelName === 'string') {
|
if (typeof channelName === 'string') {
|
||||||
connectedChannels.labels({ type: 'eventsource', channel: channelName }).inc();
|
metrics.connectedChannels.labels({ type: 'eventsource', channel: channelName }).inc();
|
||||||
}
|
}
|
||||||
|
|
||||||
res.setHeader('Content-Type', 'text/event-stream');
|
res.setHeader('Content-Type', 'text/event-stream');
|
||||||
|
@ -1054,10 +1039,10 @@ const startServer = async () => {
|
||||||
|
|
||||||
// We decrement these counters here instead of in streamHttpEnd as in that
|
// We decrement these counters here instead of in streamHttpEnd as in that
|
||||||
// method we don't have knowledge of the channel names
|
// method we don't have knowledge of the channel names
|
||||||
connectedClients.labels({ type: 'eventsource' }).dec();
|
metrics.connectedClients.labels({ type: 'eventsource' }).dec();
|
||||||
// In theory we'll always have a channel name, but channelNameFromPath can return undefined:
|
// In theory we'll always have a channel name, but channelNameFromPath can return undefined:
|
||||||
if (typeof channelName === 'string') {
|
if (typeof channelName === 'string') {
|
||||||
connectedChannels.labels({ type: 'eventsource', channel: channelName }).dec();
|
metrics.connectedChannels.labels({ type: 'eventsource', channel: channelName }).dec();
|
||||||
}
|
}
|
||||||
|
|
||||||
clearInterval(heartbeat);
|
clearInterval(heartbeat);
|
||||||
|
@ -1345,7 +1330,7 @@ const startServer = async () => {
|
||||||
const stopHeartbeat = subscriptionHeartbeat(channelIds);
|
const stopHeartbeat = subscriptionHeartbeat(channelIds);
|
||||||
const listener = streamFrom(channelIds, request, logger, onSend, undefined, 'websocket', options.needsFiltering, options.allowLocalOnly);
|
const listener = streamFrom(channelIds, request, logger, onSend, undefined, 'websocket', options.needsFiltering, options.allowLocalOnly);
|
||||||
|
|
||||||
connectedChannels.labels({ type: 'websocket', channel: channelName }).inc();
|
metrics.connectedChannels.labels({ type: 'websocket', channel: channelName }).inc();
|
||||||
|
|
||||||
subscriptions[channelIds.join(';')] = {
|
subscriptions[channelIds.join(';')] = {
|
||||||
channelName,
|
channelName,
|
||||||
|
@ -1384,7 +1369,7 @@ const startServer = async () => {
|
||||||
unsubscribe(`${redisPrefix}${channelId}`, subscription.listener);
|
unsubscribe(`${redisPrefix}${channelId}`, subscription.listener);
|
||||||
});
|
});
|
||||||
|
|
||||||
connectedChannels.labels({ type: 'websocket', channel: subscription.channelName }).dec();
|
metrics.connectedChannels.labels({ type: 'websocket', channel: subscription.channelName }).dec();
|
||||||
subscription.stopHeartbeat();
|
subscription.stopHeartbeat();
|
||||||
|
|
||||||
delete subscriptions[channelIds.join(';')];
|
delete subscriptions[channelIds.join(';')];
|
||||||
|
@ -1442,7 +1427,7 @@ const startServer = async () => {
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
connectedChannels.labels({ type: 'websocket', channel: 'system' }).inc(2);
|
metrics.connectedChannels.labels({ type: 'websocket', channel: 'system' }).inc(2);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1454,7 +1439,7 @@ const startServer = async () => {
|
||||||
// Note: url.parse could throw, which would terminate the connection, so we
|
// Note: url.parse could throw, which would terminate the connection, so we
|
||||||
// increment the connected clients metric straight away when we establish
|
// increment the connected clients metric straight away when we establish
|
||||||
// the connection, without waiting:
|
// the connection, without waiting:
|
||||||
connectedClients.labels({ type: 'websocket' }).inc();
|
metrics.connectedClients.labels({ type: 'websocket' }).inc();
|
||||||
|
|
||||||
// Setup connection keep-alive state:
|
// Setup connection keep-alive state:
|
||||||
ws.isAlive = true;
|
ws.isAlive = true;
|
||||||
|
@ -1480,7 +1465,7 @@ const startServer = async () => {
|
||||||
});
|
});
|
||||||
|
|
||||||
// Decrement the metrics for connected clients:
|
// Decrement the metrics for connected clients:
|
||||||
connectedClients.labels({ type: 'websocket' }).dec();
|
metrics.connectedClients.labels({ type: 'websocket' }).dec();
|
||||||
|
|
||||||
// We need to unassign the session object as to ensure it correctly gets
|
// We need to unassign the session object as to ensure it correctly gets
|
||||||
// garbage collected, without doing this we could accidentally hold on to
|
// garbage collected, without doing this we could accidentally hold on to
|
||||||
|
|
|
@ -4,12 +4,12 @@ import metrics from 'prom-client';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @typedef StreamingMetrics
|
* @typedef StreamingMetrics
|
||||||
* @property {metrics.Registry} register
|
|
||||||
* @property {metrics.Gauge<"type">} connectedClients
|
* @property {metrics.Gauge<"type">} connectedClients
|
||||||
* @property {metrics.Gauge<"type" | "channel">} connectedChannels
|
* @property {metrics.Gauge<"type" | "channel">} connectedChannels
|
||||||
* @property {metrics.Gauge} redisSubscriptions
|
* @property {metrics.Gauge} redisSubscriptions
|
||||||
* @property {metrics.Counter} redisMessagesReceived
|
* @property {metrics.Counter} redisMessagesReceived
|
||||||
* @property {metrics.Counter<"type">} messagesSent
|
* @property {metrics.Counter<"type">} messagesSent
|
||||||
|
* @property {import('express').RequestHandler<{}>} requestHandler
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -92,8 +92,21 @@ export function setupMetrics(channels, pgPool) {
|
||||||
messagesSent.inc({ type: 'websocket' }, 0);
|
messagesSent.inc({ type: 'websocket' }, 0);
|
||||||
messagesSent.inc({ type: 'eventsource' }, 0);
|
messagesSent.inc({ type: 'eventsource' }, 0);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @type {import('express').RequestHandler<{}>}
|
||||||
|
*/
|
||||||
|
const requestHandler = (req, res) => {
|
||||||
|
metrics.register.metrics().then((output) => {
|
||||||
|
res.set('Content-Type', metrics.register.contentType);
|
||||||
|
res.end(output);
|
||||||
|
}).catch((err) => {
|
||||||
|
req.log.error(err, "Error collecting metrics");
|
||||||
|
res.status(500).end();
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
return {
|
return {
|
||||||
register: metrics.register,
|
requestHandler,
|
||||||
connectedClients,
|
connectedClients,
|
||||||
connectedChannels,
|
connectedChannels,
|
||||||
redisSubscriptions,
|
redisSubscriptions,
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"name": "@mastodon/streaming",
|
"name": "@mastodon/streaming",
|
||||||
"license": "AGPL-3.0-or-later",
|
"license": "AGPL-3.0-or-later",
|
||||||
"packageManager": "yarn@4.4.0",
|
"packageManager": "yarn@4.4.1",
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=18"
|
"node": ">=18"
|
||||||
},
|
},
|
||||||
|
|
31
yarn.lock
31
yarn.lock
|
@ -3368,18 +3368,17 @@ __metadata:
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@testing-library/jest-dom@npm:^6.0.0":
|
"@testing-library/jest-dom@npm:^6.0.0":
|
||||||
version: 6.4.8
|
version: 6.5.0
|
||||||
resolution: "@testing-library/jest-dom@npm:6.4.8"
|
resolution: "@testing-library/jest-dom@npm:6.5.0"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@adobe/css-tools": "npm:^4.4.0"
|
"@adobe/css-tools": "npm:^4.4.0"
|
||||||
"@babel/runtime": "npm:^7.9.2"
|
|
||||||
aria-query: "npm:^5.0.0"
|
aria-query: "npm:^5.0.0"
|
||||||
chalk: "npm:^3.0.0"
|
chalk: "npm:^3.0.0"
|
||||||
css.escape: "npm:^1.5.1"
|
css.escape: "npm:^1.5.1"
|
||||||
dom-accessibility-api: "npm:^0.6.3"
|
dom-accessibility-api: "npm:^0.6.3"
|
||||||
lodash: "npm:^4.17.21"
|
lodash: "npm:^4.17.21"
|
||||||
redent: "npm:^3.0.0"
|
redent: "npm:^3.0.0"
|
||||||
checksum: 10c0/8eececcac1ec7728c038b9d9eabfc8b8dcf4dc1e997c959450bff16d946e3344275862b84bfe0e1d1beb3817368e782464816aca47ab5c94f0ebf66db71df55d
|
checksum: 10c0/fd5936a547f04608d8de15a7de3ae26516f21023f8f45169b10c8c8847015fd20ec259b7309f08aa1031bcbc37c6e5e6f532d1bb85ef8f91bad654193ec66a4c
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
@ -3921,12 +3920,12 @@ __metadata:
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"@types/react@npm:*, @types/react@npm:16 || 17 || 18, @types/react@npm:>=16.9.11, @types/react@npm:^18.2.7":
|
"@types/react@npm:*, @types/react@npm:16 || 17 || 18, @types/react@npm:>=16.9.11, @types/react@npm:^18.2.7":
|
||||||
version: 18.3.3
|
version: 18.3.4
|
||||||
resolution: "@types/react@npm:18.3.3"
|
resolution: "@types/react@npm:18.3.4"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@types/prop-types": "npm:*"
|
"@types/prop-types": "npm:*"
|
||||||
csstype: "npm:^3.0.2"
|
csstype: "npm:^3.0.2"
|
||||||
checksum: 10c0/fe455f805c5da13b89964c3d68060cebd43e73ec15001a68b34634604a78140e6fc202f3f61679b9d809dde6d7a7c2cb3ed51e0fd1462557911db09879b55114
|
checksum: 10c0/5c52e1e6f540cff21e3c2a5212066d02e005f6fb21e4a536a29097fae878db9f407cd7a4b43778f51359349c5f692e08bc77ddb5f5cecbfca9ca4d4e3c91a48e
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
@ -5132,13 +5131,13 @@ __metadata:
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"axios@npm:^1.4.0":
|
"axios@npm:^1.4.0":
|
||||||
version: 1.7.4
|
version: 1.7.5
|
||||||
resolution: "axios@npm:1.7.4"
|
resolution: "axios@npm:1.7.5"
|
||||||
dependencies:
|
dependencies:
|
||||||
follow-redirects: "npm:^1.15.6"
|
follow-redirects: "npm:^1.15.6"
|
||||||
form-data: "npm:^4.0.0"
|
form-data: "npm:^4.0.0"
|
||||||
proxy-from-env: "npm:^1.1.0"
|
proxy-from-env: "npm:^1.1.0"
|
||||||
checksum: 10c0/5ea1a93140ca1d49db25ef8e1bd8cfc59da6f9220159a944168860ad15a2743ea21c5df2967795acb15cbe81362f5b157fdebbea39d53117ca27658bab9f7f17
|
checksum: 10c0/1d5daeb28b3d1bb2a7b9f0743433c4bfbeaddc15461e50ebde487eec6c009af2515749d5261096dd430c90cd891bd310bcba5ec3967bae2033c4a307f58a6ad3
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
@ -9534,11 +9533,11 @@ __metadata:
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"husky@npm:^9.0.11":
|
"husky@npm:^9.0.11":
|
||||||
version: 9.1.4
|
version: 9.1.5
|
||||||
resolution: "husky@npm:9.1.4"
|
resolution: "husky@npm:9.1.5"
|
||||||
bin:
|
bin:
|
||||||
husky: bin.js
|
husky: bin.js
|
||||||
checksum: 10c0/f5185003bef9ad9ec3f40e821963e4c12409b993fdcab89e3d660bed7d8c9d8bfd399f05222e27e0ead6589601fb1bb08d1a589c51751a4ab0547ead3429b8de
|
checksum: 10c0/f42efb95a026303eb880898760f802d88409780dd72f17781d2dfc302177d4f80b641cf1f1694f53f6d97c536c7397684133d8c8fe4a4426f7460186a7d1c6b8
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
@ -11086,8 +11085,8 @@ __metadata:
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"jsdom@npm:^24.0.0":
|
"jsdom@npm:^24.0.0":
|
||||||
version: 24.1.1
|
version: 24.1.3
|
||||||
resolution: "jsdom@npm:24.1.1"
|
resolution: "jsdom@npm:24.1.3"
|
||||||
dependencies:
|
dependencies:
|
||||||
cssstyle: "npm:^4.0.1"
|
cssstyle: "npm:^4.0.1"
|
||||||
data-urls: "npm:^5.0.0"
|
data-urls: "npm:^5.0.0"
|
||||||
|
@ -11115,7 +11114,7 @@ __metadata:
|
||||||
peerDependenciesMeta:
|
peerDependenciesMeta:
|
||||||
canvas:
|
canvas:
|
||||||
optional: true
|
optional: true
|
||||||
checksum: 10c0/02d6bfe32f09f26329c0e53ad9f9883a3c671fc1f75725167d2089ca412f5b7ca85ff8aa62327d1cc6fc70ffbb3b18dfc7642c4b2096c2c8b19aaf9a48473eb3
|
checksum: 10c0/e48b342afacd7418a23dac204a62deea729c50f4d072a7c04c09fd32355fdb4335f8779fa79fd0277a2dbeb2d356250a950955719d00047324b251233b11277f
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue