Merge commit '640421f661ee4d7e76a2aab607e7b15687940b6f' into glitch-soc/merge-upstream

local
Claire 7 months ago
commit 53f5b27bd1
  1. 4
      .bundler-audit.yml
  2. 3
      .gitignore
  3. 3
      .prettierignore
  4. 15
      Capfile
  5. 6
      Gemfile
  6. 35
      Gemfile.lock
  7. 1
      SECURITY.md
  8. 15
      app/javascript/mastodon/components/__tests__/hashtag_bar.tsx
  9. 2
      app/javascript/mastodon/components/hashtag_bar.tsx
  10. 2
      app/javascript/mastodon/components/scrollable_list.jsx
  11. 1
      app/javascript/mastodon/locales/bn.json
  12. 2
      app/javascript/mastodon/locales/fi.json
  13. 54
      app/javascript/mastodon/locales/lv.json
  14. 1
      app/javascript/mastodon/locales/ms.json
  15. 2
      app/javascript/mastodon/locales/ru.json
  16. 16
      app/javascript/mastodon/locales/si.json
  17. 2
      app/lib/activitypub/case_transform.rb
  18. 3
      app/lib/admin/metrics/dimension/software_versions_dimension.rb
  19. 20
      app/lib/admin/metrics/dimension/space_usage_dimension.rb
  20. 2
      app/models/account.rb
  21. 2
      app/models/relationship_filter.rb
  22. 8
      config/locales/doorkeeper.si.yml
  23. 2
      config/locales/ko.yml
  24. 4
      config/locales/lv.yml
  25. 142
      config/locales/si.yml
  26. 23
      config/locales/simple_form.si.yml
  27. 68
      spec/models/relationship_filter_spec.rb
  28. 13
      spec/serializers/activitypub/note_serializer_spec.rb
  29. 6
      yarn.lock

@ -1,4 +0,0 @@
---
ignore:
# Sidekiq security issue, fixes in the latest Sidekiq 7 but we can not upgrade. Will be fixed in Sidekiq 6.5.10
- CVE-2023-26141

3
.gitignore vendored

@ -31,9 +31,6 @@
# Ignore Vagrant files # Ignore Vagrant files
.vagrant/ .vagrant/
# Ignore Capistrano customizations
/config/deploy/*
# Ignore IDE files # Ignore IDE files
.vscode/ .vscode/
.idea/ .idea/

@ -31,9 +31,6 @@
# Ignore Vagrant files # Ignore Vagrant files
.vagrant/ .vagrant/
# Ignore Capistrano customizations
/config/deploy/*
# Ignore IDE files # Ignore IDE files
.vscode/ .vscode/
.idea/ .idea/

@ -1,15 +0,0 @@
# frozen_string_literal: true
require 'capistrano/setup'
require 'capistrano/deploy'
require 'capistrano/scm/git'
install_plugin Capistrano::SCM::Git
require 'capistrano/rbenv'
require 'capistrano/bundler'
require 'capistrano/yarn'
require 'capistrano/rails/assets'
require 'capistrano/rails/migrations'
Dir.glob('lib/capistrano/tasks/*.rake').each { |r| import r }

@ -170,12 +170,6 @@ group :development do
# Linter CLI for HAML files # Linter CLI for HAML files
gem 'haml_lint', require: false gem 'haml_lint', require: false
# Deployment automation
gem 'capistrano', '~> 3.17'
gem 'capistrano-rails', '~> 1.6'
gem 'capistrano-rbenv', '~> 2.2'
gem 'capistrano-yarn', '~> 2.0'
# Validate missing i18n keys # Validate missing i18n keys
gem 'i18n-tasks', '~> 1.0', require: false gem 'i18n-tasks', '~> 1.0', require: false
end end

@ -84,9 +84,9 @@ GEM
erubi (~> 1.4) erubi (~> 1.4)
rails-dom-testing (~> 2.0) rails-dom-testing (~> 2.0)
rails-html-sanitizer (~> 1.1, >= 1.2.0) rails-html-sanitizer (~> 1.1, >= 1.2.0)
active_model_serializers (0.10.13) active_model_serializers (0.10.14)
actionpack (>= 4.1, < 7.1) actionpack (>= 4.1)
activemodel (>= 4.1, < 7.1) activemodel (>= 4.1)
case_transform (>= 0.2) case_transform (>= 0.2)
jsonapi-renderer (>= 0.1.1.beta1, < 0.3) jsonapi-renderer (>= 0.1.1.beta1, < 0.3)
activejob (7.0.8) activejob (7.0.8)
@ -112,8 +112,6 @@ GEM
addressable (2.8.5) addressable (2.8.5)
public_suffix (>= 2.0.2, < 6.0) public_suffix (>= 2.0.2, < 6.0)
aes_key_wrap (1.1.0) aes_key_wrap (1.1.0)
airbrussh (1.4.1)
sshkit (>= 1.6.1, != 1.7.0)
android_key_attestation (0.3.0) android_key_attestation (0.3.0)
annotate (3.2.0) annotate (3.2.0)
activerecord (>= 3.2, < 8.0) activerecord (>= 3.2, < 8.0)
@ -175,21 +173,6 @@ GEM
bundler-audit (0.9.1) bundler-audit (0.9.1)
bundler (>= 1.2.0, < 3) bundler (>= 1.2.0, < 3)
thor (~> 1.0) thor (~> 1.0)
capistrano (3.17.3)
airbrussh (>= 1.0.0)
i18n
rake (>= 10.0.0)
sshkit (>= 1.9.0)
capistrano-bundler (2.1.0)
capistrano (~> 3.1)
capistrano-rails (1.6.3)
capistrano (~> 3.1)
capistrano-bundler (>= 1.1, < 3)
capistrano-rbenv (2.2.0)
capistrano (~> 3.1)
sshkit (~> 1.3)
capistrano-yarn (2.0.2)
capistrano (~> 3.0)
capybara (3.39.2) capybara (3.39.2)
addressable addressable
matrix matrix
@ -473,11 +456,8 @@ GEM
net-protocol net-protocol
net-protocol (0.2.1) net-protocol (0.2.1)
timeout timeout
net-scp (4.0.0)
net-ssh (>= 2.6.5, < 8.0.0)
net-smtp (0.3.3) net-smtp (0.3.3)
net-protocol net-protocol
net-ssh (7.1.0)
nio4r (2.5.9) nio4r (2.5.9)
nokogiri (1.15.4) nokogiri (1.15.4)
mini_portile2 (~> 2.8.2) mini_portile2 (~> 2.8.2)
@ -691,7 +671,7 @@ GEM
rubyzip (>= 1.2.2, < 3.0) rubyzip (>= 1.2.2, < 3.0)
websocket (~> 1.0) websocket (~> 1.0)
semantic_range (3.0.0) semantic_range (3.0.0)
sidekiq (6.5.9) sidekiq (6.5.10)
connection_pool (>= 2.2.5, < 3) connection_pool (>= 2.2.5, < 3)
rack (~> 2.0) rack (~> 2.0)
redis (>= 4.5.0, < 5) redis (>= 4.5.0, < 5)
@ -726,9 +706,6 @@ GEM
actionpack (>= 5.2) actionpack (>= 5.2)
activesupport (>= 5.2) activesupport (>= 5.2)
sprockets (>= 3.0.0) sprockets (>= 3.0.0)
sshkit (1.21.5)
net-scp (>= 1.1.2)
net-ssh (>= 2.8.0)
stackprof (0.2.25) stackprof (0.2.25)
statsd-ruby (1.5.0) statsd-ruby (1.5.0)
stoplight (3.0.2) stoplight (3.0.2)
@ -829,10 +806,6 @@ DEPENDENCIES
brakeman (~> 6.0) brakeman (~> 6.0)
browser browser
bundler-audit (~> 0.9) bundler-audit (~> 0.9)
capistrano (~> 3.17)
capistrano-rails (~> 1.6)
capistrano-rbenv (~> 2.2)
capistrano-yarn (~> 2.0)
capybara (~> 3.39) capybara (~> 3.39)
charlock_holmes (~> 0.7.7) charlock_holmes (~> 0.7.7)
chewy (~> 7.3) chewy (~> 7.3)

@ -15,6 +15,7 @@ A "vulnerability in Mastodon" is a vulnerability in the code distributed through
| Version | Supported | | Version | Supported |
| ------- | ---------------- | | ------- | ---------------- |
| 4.2.x | Yes |
| 4.1.x | Yes | | 4.1.x | Yes |
| 4.0.x | Until 2023-10-31 | | 4.0.x | Until 2023-10-31 |
| 3.5.x | Until 2023-12-31 | | 3.5.x | Until 2023-12-31 |

@ -45,6 +45,21 @@ describe('computeHashtagBarForStatus', () => {
); );
}); });
it('does not truncate the contents when the last child is a text node', () => {
const status = createStatus(
'this is a #<a class="zrl" href="https://example.com/search?tag=test">test</a>. Some more text',
['test'],
);
const { hashtagsInBar, statusContentProps } =
computeHashtagBarForStatus(status);
expect(hashtagsInBar).toEqual([]);
expect(statusContentProps.statusContent).toMatchInlineSnapshot(
`"this is a #<a class="zrl" href="https://example.com/search?tag=test">test</a>. Some more text"`,
);
});
it('extract tags from the last line', () => { it('extract tags from the last line', () => {
const status = createStatus( const status = createStatus(
'<p>Simple text</p><p><a href="test">#hashtag</a></p>', '<p>Simple text</p><p><a href="test">#hashtag</a></p>',

@ -109,7 +109,7 @@ export function computeHashtagBarForStatus(status: StatusLike): {
const lastChild = template.content.lastChild; const lastChild = template.content.lastChild;
if (!lastChild) return defaultResult; if (!lastChild || lastChild.nodeType === Node.TEXT_NODE) return defaultResult;
template.content.removeChild(lastChild); template.content.removeChild(lastChild);
const contentWithoutLastLine = template; const contentWithoutLastLine = template;

@ -78,7 +78,7 @@ class ScrollableList extends PureComponent {
const clientHeight = this.getClientHeight(); const clientHeight = this.getClientHeight();
const offset = scrollHeight - scrollTop - clientHeight; const offset = scrollHeight - scrollTop - clientHeight;
if (400 > offset && this.props.onLoadMore && this.props.hasMore && !this.props.isLoading) { if (scrollTop > 0 && offset < 400 && this.props.onLoadMore && this.props.hasMore && !this.props.isLoading) {
this.props.onLoadMore(); this.props.onLoadMore();
} }

@ -190,6 +190,7 @@
"conversation.open": "কথপকথন দন", "conversation.open": "কথপকথন দন",
"conversation.with": "{names} এর সঙ", "conversation.with": "{names} এর সঙ",
"copypaste.copied": "অনিিত", "copypaste.copied": "অনিিত",
"copypaste.copy_to_clipboard": "কিপব কপি করন",
"directory.federated": "পরিিত ফিরসর থ", "directory.federated": "পরিিত ফিরসর থ",
"directory.local": "শ {domain} থ", "directory.local": "শ {domain} থ",
"directory.new_arrivals": "নতন আগত", "directory.new_arrivals": "নতন আগত",

@ -686,7 +686,7 @@
"timeline_hint.resources.followers": "Seuraajat", "timeline_hint.resources.followers": "Seuraajat",
"timeline_hint.resources.follows": "seurattua", "timeline_hint.resources.follows": "seurattua",
"timeline_hint.resources.statuses": "Vanhemmat julkaisut", "timeline_hint.resources.statuses": "Vanhemmat julkaisut",
"trends.counter_by_accounts": "{count, plural, one {{counter} henkilö} other {{counter} henkilöä}} viimeisten {days, plural, one {päivän} other {{days} päivän}}", "trends.counter_by_accounts": "{count, plural, one {{counter} henkilö} other {{counter} henkilöä}} {days, plural, one {viimeisen päivän} other {viimeisten {days} päivän}} aikana",
"trends.trending_now": "Suosittua nyt", "trends.trending_now": "Suosittua nyt",
"ui.beforeunload": "Luonnos häviää, jos poistut Mastodonista.", "ui.beforeunload": "Luonnos häviää, jos poistut Mastodonista.",
"units.short.billion": "{count} mrd.", "units.short.billion": "{count} mrd.",

@ -161,13 +161,13 @@
"compose_form.spoiler.unmarked": "Pievienot satura brīdinājumu", "compose_form.spoiler.unmarked": "Pievienot satura brīdinājumu",
"compose_form.spoiler_placeholder": "Ieraksti savu brīdinājumu šeit", "compose_form.spoiler_placeholder": "Ieraksti savu brīdinājumu šeit",
"confirmation_modal.cancel": "Atcelt", "confirmation_modal.cancel": "Atcelt",
"confirmations.block.block_and_report": "Bloķēt un Ziņot", "confirmations.block.block_and_report": "Bloķēt un ziņot",
"confirmations.block.confirm": "Bloķēt", "confirmations.block.confirm": "Bloķēt",
"confirmations.block.message": "Vai tiešām vēlies bloķēt {name}?", "confirmations.block.message": "Vai tiešām vēlies bloķēt {name}?",
"confirmations.cancel_follow_request.confirm": "Atsaukt pieprasījumu", "confirmations.cancel_follow_request.confirm": "Atsaukt pieprasījumu",
"confirmations.cancel_follow_request.message": "Vai tiešām vēlies atsaukt pieprasījumu sekot {name}?", "confirmations.cancel_follow_request.message": "Vai tiešām vēlies atsaukt pieprasījumu sekot {name}?",
"confirmations.delete.confirm": "Dzēst", "confirmations.delete.confirm": "Dzēst",
"confirmations.delete.message": "Vai tiešām vēlies dzēst šo ziņu?", "confirmations.delete.message": "Vai tiešām vēlies dzēst šo ierakstu?",
"confirmations.delete_list.confirm": "Dzēst", "confirmations.delete_list.confirm": "Dzēst",
"confirmations.delete_list.message": "Vai tiešam vēlies neatgriezeniski dzēst šo sarakstu?", "confirmations.delete_list.message": "Vai tiešam vēlies neatgriezeniski dzēst šo sarakstu?",
"confirmations.discard_edit_media.confirm": "Atmest", "confirmations.discard_edit_media.confirm": "Atmest",
@ -244,7 +244,7 @@
"empty_column.public": "Šeit vēl nekā nav! Ieraksti ko publiski vai pieseko lietotājiem no citiem serveriem", "empty_column.public": "Šeit vēl nekā nav! Ieraksti ko publiski vai pieseko lietotājiem no citiem serveriem",
"error.unexpected_crash.explanation": "Koda kļūdas vai pārlūkprogrammas saderības problēmas dēļ šo lapu nevarēja parādīt pareizi.", "error.unexpected_crash.explanation": "Koda kļūdas vai pārlūkprogrammas saderības problēmas dēļ šo lapu nevarēja parādīt pareizi.",
"error.unexpected_crash.explanation_addons": "Šo lapu nevarēja parādīt pareizi. Šo kļūdu, iespējams, izraisīja pārlūkprogrammas papildinājums vai automātiskās tulkošanas rīki.", "error.unexpected_crash.explanation_addons": "Šo lapu nevarēja parādīt pareizi. Šo kļūdu, iespējams, izraisīja pārlūkprogrammas papildinājums vai automātiskās tulkošanas rīki.",
"error.unexpected_crash.next_steps": "Mēģini atsvaidzināt lapu. Ja tas nepalīdz, vari lietot Mastodon, izmantojot citu pārlūkprogrammu vai lietotni.", "error.unexpected_crash.next_steps": "Mēģini atsvaidzināt lapu. Ja tas nepalīdz, iespējams, varēsi lietot Mastodon, izmantojot citu pārlūkprogrammu vai lietotni.",
"error.unexpected_crash.next_steps_addons": "Mēģini tos atspējot un atsvaidzināt lapu. Ja tas nepalīdz, iespējams, varēsi lietot Mastodon, izmantojot citu pārlūkprogrammu vai lietotni.", "error.unexpected_crash.next_steps_addons": "Mēģini tos atspējot un atsvaidzināt lapu. Ja tas nepalīdz, iespējams, varēsi lietot Mastodon, izmantojot citu pārlūkprogrammu vai lietotni.",
"errors.unexpected_crash.copy_stacktrace": "Kopēt stacktrace uz starpliktuvi", "errors.unexpected_crash.copy_stacktrace": "Kopēt stacktrace uz starpliktuvi",
"errors.unexpected_crash.report_issue": "Ziņot par problēmu", "errors.unexpected_crash.report_issue": "Ziņot par problēmu",
@ -309,11 +309,11 @@
"home.column_settings.show_replies": "Rādīt atbildes", "home.column_settings.show_replies": "Rādīt atbildes",
"home.explore_prompt.body": "Tavā mājas plūsmā būs dažādu ziņu sajaukums no atsaucēm, kurām esi izvēlējies sekot, personām, kurām esi izvēlējies sekot, un ziņām, kuras tās izceļ. Ja tas šķiet pārāk kluss, iespējams, vēlēsies:", "home.explore_prompt.body": "Tavā mājas plūsmā būs dažādu ziņu sajaukums no atsaucēm, kurām esi izvēlējies sekot, personām, kurām esi izvēlējies sekot, un ziņām, kuras tās izceļ. Ja tas šķiet pārāk kluss, iespējams, vēlēsies:",
"home.explore_prompt.title": "Šī ir tava Mastodon mājvieta.", "home.explore_prompt.title": "Šī ir tava Mastodon mājvieta.",
"home.hide_announcements": "Slēpt anonsus", "home.hide_announcements": "Slēpt paziņojumus",
"home.pending_critical_update.body": "Lūdzu, pēc iespējas ātrāk atjaunini savu Mastodon serveri!", "home.pending_critical_update.body": "Lūdzu, pēc iespējas ātrāk atjaunini savu Mastodon serveri!",
"home.pending_critical_update.link": "Skatīt jauninājumus", "home.pending_critical_update.link": "Skatīt jauninājumus",
"home.pending_critical_update.title": "Pieejams kritisks drošības jauninājums!", "home.pending_critical_update.title": "Pieejams kritisks drošības jauninājums!",
"home.show_announcements": "Rādīt anonsus", "home.show_announcements": "Rādīt paziņojumus",
"interaction_modal.description.favourite": "Ar Mastodon kontu tu vari pievienot šo ziņu izlasei, lai informētu autoru, ka to novērtē, un saglabātu to vēlākai lasīšanai.", "interaction_modal.description.favourite": "Ar Mastodon kontu tu vari pievienot šo ziņu izlasei, lai informētu autoru, ka to novērtē, un saglabātu to vēlākai lasīšanai.",
"interaction_modal.description.follow": "Ar Mastodon kontu tu vari sekot {name}, lai saņemtu viņu ziņas savā mājas plūsmā.", "interaction_modal.description.follow": "Ar Mastodon kontu tu vari sekot {name}, lai saņemtu viņu ziņas savā mājas plūsmā.",
"interaction_modal.description.reblog": "Izmantojot kontu Mastodon, tu vari izcelt šo ziņu, lai kopīgotu to ar saviem sekotājiem.", "interaction_modal.description.reblog": "Izmantojot kontu Mastodon, tu vari izcelt šo ziņu, lai kopīgotu to ar saviem sekotājiem.",
@ -369,7 +369,7 @@
"lightbox.close": "Aizvērt", "lightbox.close": "Aizvērt",
"lightbox.compress": "Saspiest attēla skata lodziņu", "lightbox.compress": "Saspiest attēla skata lodziņu",
"lightbox.expand": "Izvērst attēla skata lodziņu", "lightbox.expand": "Izvērst attēla skata lodziņu",
"lightbox.next": "Nākamais", "lightbox.next": "Tālāk",
"lightbox.previous": "Iepriekšējais", "lightbox.previous": "Iepriekšējais",
"limited_account_hint.action": "Tik un tā rādīt profilu", "limited_account_hint.action": "Tik un tā rādīt profilu",
"limited_account_hint.title": "{domain} moderatori ir paslēpuši šo profilu.", "limited_account_hint.title": "{domain} moderatori ir paslēpuši šo profilu.",
@ -422,8 +422,8 @@
"navigation_bar.search": "Meklēt", "navigation_bar.search": "Meklēt",
"navigation_bar.security": "Drošība", "navigation_bar.security": "Drošība",
"not_signed_in_indicator.not_signed_in": "Lai piekļūtu šim resursam, tev ir jāpierakstās.", "not_signed_in_indicator.not_signed_in": "Lai piekļūtu šim resursam, tev ir jāpierakstās.",
"notification.admin.report": "{name} sūdzējās par {target}", "notification.admin.report": "{name} ziņoja par {target}",
"notification.admin.sign_up": "{name} pierakstījās", "notification.admin.sign_up": "{name} ir pierakstījies",
"notification.favourite": "{name} pievienoja tavu ziņu izlasei", "notification.favourite": "{name} pievienoja tavu ziņu izlasei",
"notification.follow": "{name} uzsāka tev sekot", "notification.follow": "{name} uzsāka tev sekot",
"notification.follow_request": "{name} nosūtīja tev sekošanas pieprasījumu", "notification.follow_request": "{name} nosūtīja tev sekošanas pieprasījumu",
@ -435,7 +435,7 @@
"notification.update": "{name} rediģēja ierakstu", "notification.update": "{name} rediģēja ierakstu",
"notifications.clear": "Notīrīt paziņojumus", "notifications.clear": "Notīrīt paziņojumus",
"notifications.clear_confirmation": "Vai tiešām vēlies neatgriezeniski notīrīt visus savus paziņojumus?", "notifications.clear_confirmation": "Vai tiešām vēlies neatgriezeniski notīrīt visus savus paziņojumus?",
"notifications.column_settings.admin.report": "Jaunas sūdzības:", "notifications.column_settings.admin.report": "Jauni ziņojumi:",
"notifications.column_settings.admin.sign_up": "Jaunas pierakstīšanās:", "notifications.column_settings.admin.sign_up": "Jaunas pierakstīšanās:",
"notifications.column_settings.alert": "Darbvirsmas paziņojumi", "notifications.column_settings.alert": "Darbvirsmas paziņojumi",
"notifications.column_settings.favourite": "Izlase:", "notifications.column_settings.favourite": "Izlase:",
@ -445,7 +445,7 @@
"notifications.column_settings.follow": "Jauni sekotāji:", "notifications.column_settings.follow": "Jauni sekotāji:",
"notifications.column_settings.follow_request": "Jauni sekošanas pieprasījumi:", "notifications.column_settings.follow_request": "Jauni sekošanas pieprasījumi:",
"notifications.column_settings.mention": "Pieminējumi:", "notifications.column_settings.mention": "Pieminējumi:",
"notifications.column_settings.poll": "Aptauju rezultāti:", "notifications.column_settings.poll": "Aptaujas rezultāti:",
"notifications.column_settings.push": "Uznirstošie paziņojumi", "notifications.column_settings.push": "Uznirstošie paziņojumi",
"notifications.column_settings.reblog": "Pastiprinātie ieraksti:", "notifications.column_settings.reblog": "Pastiprinātie ieraksti:",
"notifications.column_settings.show": "Rādīt kolonnā", "notifications.column_settings.show": "Rādīt kolonnā",
@ -457,13 +457,13 @@
"notifications.filter.all": "Visi", "notifications.filter.all": "Visi",
"notifications.filter.boosts": "Pastiprinātie ieraksti", "notifications.filter.boosts": "Pastiprinātie ieraksti",
"notifications.filter.favourites": "Izlases", "notifications.filter.favourites": "Izlases",
"notifications.filter.follows": "Sekošana", "notifications.filter.follows": "Seko",
"notifications.filter.mentions": "Pieminējumi", "notifications.filter.mentions": "Pieminējumi",
"notifications.filter.polls": "Aptauju rezultāti", "notifications.filter.polls": "Aptaujas rezultāti",
"notifications.filter.statuses": "Jaunumi no cilvēkiem, kuriem tu seko", "notifications.filter.statuses": "Jaunumi no cilvēkiem, kuriem tu seko",
"notifications.grant_permission": "Piešķirt atļauju.", "notifications.grant_permission": "Piešķirt atļauju.",
"notifications.group": "{count} paziņojumi", "notifications.group": "{count} paziņojumi",
"notifications.mark_as_read": "Atzīmēt visus paziņojumus kā izlasītus", "notifications.mark_as_read": "Atzīmēt katru paziņojumu kā izlasītu",
"notifications.permission_denied": "Darbvirsmas paziņojumi nav pieejami, jo iepriekš tika noraidīts pārlūka atļauju pieprasījums", "notifications.permission_denied": "Darbvirsmas paziņojumi nav pieejami, jo iepriekš tika noraidīts pārlūka atļauju pieprasījums",
"notifications.permission_denied_alert": "Darbvirsmas paziņojumus nevar iespējot, jo pārlūkprogrammai atļauja tika iepriekš atteikta", "notifications.permission_denied_alert": "Darbvirsmas paziņojumus nevar iespējot, jo pārlūkprogrammai atļauja tika iepriekš atteikta",
"notifications.permission_required": "Darbvirsmas paziņojumi nav pieejami, jo nav piešķirta nepieciešamā atļauja.", "notifications.permission_required": "Darbvirsmas paziņojumi nav pieejami, jo nav piešķirta nepieciešamā atļauja.",
@ -563,25 +563,25 @@
"report.reasons.spam": "Tas ir spams", "report.reasons.spam": "Tas ir spams",
"report.reasons.spam_description": "Ļaunprātīgas saites, viltus iesaistīšana vai atkārtotas atbildes", "report.reasons.spam_description": "Ļaunprātīgas saites, viltus iesaistīšana vai atkārtotas atbildes",
"report.reasons.violation": "Tas pārkāpj servera noteikumus", "report.reasons.violation": "Tas pārkāpj servera noteikumus",
"report.reasons.violation_description": "Tu zini, ka tas pārkāpj konkrētus noteikumus", "report.reasons.violation_description": "Tu zini, ka tas pārkāpj īpašus noteikumus",
"report.rules.subtitle": "Atlasi visus atbilstošos", "report.rules.subtitle": "Atlasi visus atbilstošos",
"report.rules.title": "Kuri noteikumi tiek pārkāpti?", "report.rules.title": "Kuri noteikumi tiek pārkāpti?",
"report.statuses.subtitle": "Atlasi visus atbilstošos", "report.statuses.subtitle": "Atlasi visus atbilstošos",
"report.statuses.title": "Vai ir kādi ieraksti, kas atbalsta šo sūdzību?", "report.statuses.title": "Vai ir kādi ieraksti, kas atbalsta šo sūdzību?",
"report.submit": "Iesniegt", "report.submit": "Iesniegt",
"report.target": "Sūdzība par {target}", "report.target": "Ziņošana par: {target}",
"report.thanks.take_action": "Vari veikt šīs darbības, lai kontrolētu Mastodon redzamo saturu:", "report.thanks.take_action": "Tālāk ir norādītas iespējas, kā kontrolēt Mastodon redzamo saturu:",
"report.thanks.take_action_actionable": "Kamēr mēs to izskatām, tu vari veikt darbības pret @{name}:", "report.thanks.take_action_actionable": "Kamēr mēs to izskatām, tu vari veikt darbības pret @{name}:",
"report.thanks.title": "Vai nevēlies to redzēt?", "report.thanks.title": "Vai nevēlies to redzēt?",
"report.thanks.title_actionable": "Paldies, ka ziņoji, mēs to izskatīsim.", "report.thanks.title_actionable": "Paldies, ka ziņoji, mēs to izskatīsim.",
"report.unfollow": "Pārtraukt sekot @{name}", "report.unfollow": "Pārtraukt sekot @{name}",
"report.unfollow_explanation": "Tu seko šim kontam. Lai vairs neredzētu viņu ziņas savā mājas plūsmā, pārtrauc viņiem sekot.", "report.unfollow_explanation": "Tu seko šim kontam. Lai vairs neredzētu viņu ziņas savā mājas plūsmā, pārtrauc viņiem sekot.",
"report_notification.attached_statuses": "{count, plural, one {Pievienots {count} ieraksts} other {Pievienoti {count} ieraksti}}", "report_notification.attached_statuses": "Pievienoti {count, plural,one {{count} sūtījums} other {{count} sūtījumi}}",
"report_notification.categories.legal": "Tiesisks", "report_notification.categories.legal": "Tiesisks",
"report_notification.categories.other": "Cita", "report_notification.categories.other": "Cita",
"report_notification.categories.spam": "Spams", "report_notification.categories.spam": "Spams",
"report_notification.categories.violation": "Noteikumu pārkāpums", "report_notification.categories.violation": "Noteikumu pārkāpums",
"report_notification.open": "Atvērt sūdzību", "report_notification.open": "Atvērt ziņojumu",
"search.no_recent_searches": "Nav nesen veiktu meklējumu", "search.no_recent_searches": "Nav nesen veiktu meklējumu",
"search.placeholder": "Meklēšana", "search.placeholder": "Meklēšana",
"search.quick_action.account_search": "Profili atbilst {x}", "search.quick_action.account_search": "Profili atbilst {x}",
@ -628,7 +628,7 @@
"status.direct_indicator": "Pieminēts privāti", "status.direct_indicator": "Pieminēts privāti",
"status.edit": "Rediģēt", "status.edit": "Rediģēt",
"status.edited": "Rediģēts {date}", "status.edited": "Rediģēts {date}",
"status.edited_x_times": "Rediģēts {count, plural, one {{count} reizi} other {{count} reizes}}", "status.edited_x_times": "Rediģēts {count, plural, one {{count} reize} other {{count} reizes}}",
"status.embed": "Iestrādāt", "status.embed": "Iestrādāt",
"status.favourite": "Iecienīts", "status.favourite": "Iecienīts",
"status.filter": "Filtrē šo ziņu", "status.filter": "Filtrē šo ziņu",
@ -656,8 +656,8 @@
"status.remove_bookmark": "Noņemt grāmatzīmi", "status.remove_bookmark": "Noņemt grāmatzīmi",
"status.replied_to": "Atbildēja {name}", "status.replied_to": "Atbildēja {name}",
"status.reply": "Atbildēt", "status.reply": "Atbildēt",
"status.replyAll": "Atbildēt uz pavedienu", "status.replyAll": "Atbildēt uz tematu",
"status.report": "Sūdzēties par @{name}", "status.report": "Ziņot par @{name}",
"status.sensitive_warning": "Sensitīvs saturs", "status.sensitive_warning": "Sensitīvs saturs",
"status.share": "Kopīgot", "status.share": "Kopīgot",
"status.show_filter_reason": "Tomēr rādīt", "status.show_filter_reason": "Tomēr rādīt",
@ -668,7 +668,7 @@
"status.show_original": "Rādīt oriģinālu", "status.show_original": "Rādīt oriģinālu",
"status.title.with_attachments": "{user} publicējis {attachmentCount, plural, one {pielikumu} other {{attachmentCount} pielikumus}}", "status.title.with_attachments": "{user} publicējis {attachmentCount, plural, one {pielikumu} other {{attachmentCount} pielikumus}}",
"status.translate": "Tulkot", "status.translate": "Tulkot",
"status.translated_from_with": "Tulkots no {lang}, izmantojot {provider}", "status.translated_from_with": "Tulkots no {lang} izmantojot {provider}",
"status.uncached_media_warning": "Priekšskatījums nav pieejams", "status.uncached_media_warning": "Priekšskatījums nav pieejams",
"status.unmute_conversation": "Noņemt sarunas apklusinājumu", "status.unmute_conversation": "Noņemt sarunas apklusinājumu",
"status.unpin": "Noņemt profila piespraudumu", "status.unpin": "Noņemt profila piespraudumu",
@ -681,16 +681,16 @@
"time_remaining.hours": "{number, plural, one {Atlikusi # stunda} other {Atlikušas # stundas}}", "time_remaining.hours": "{number, plural, one {Atlikusi # stunda} other {Atlikušas # stundas}}",
"time_remaining.minutes": "{number, plural, one {Atlikusi # minūte} other {Atlikušas # minūtes}}", "time_remaining.minutes": "{number, plural, one {Atlikusi # minūte} other {Atlikušas # minūtes}}",
"time_remaining.moments": "Atlikuši daži mirkļi", "time_remaining.moments": "Atlikuši daži mirkļi",
"time_remaining.seconds": "{number, plural, one {Atlikusi # sekunde} other {Atlikušas # sekundes}}", "time_remaining.seconds": "Atlikušas {number, plural, one {# sekunde} other {# sekundes}}",
"timeline_hint.remote_resource_not_displayed": "{resource} no citiem serveriem nav parādīti.", "timeline_hint.remote_resource_not_displayed": "{resource} no citiem serveriem nav parādīti.",
"timeline_hint.resources.followers": "Sekotāji", "timeline_hint.resources.followers": "Sekotāji",
"timeline_hint.resources.follows": "Sekojošie", "timeline_hint.resources.follows": "Seko",
"timeline_hint.resources.statuses": "Vecāki ieraksti", "timeline_hint.resources.statuses": "Vecāki ieraksti",
"trends.counter_by_accounts": "{count, plural, one {{counter} persona} other {{counter} cilvēki}} par {days, plural, one {# dienu} other {{days} dienām}}", "trends.counter_by_accounts": "{count, plural, one {{counter} persona} other {{counter} cilvēki}} par {days, plural, one {# dienu} other {{days} dienām}}",
"trends.trending_now": "Aktuālās tendences", "trends.trending_now": "Aktuālās tendences",
"ui.beforeunload": "Ja pametīsiet Mastodon, jūsu melnraksts tiks zaudēts.", "ui.beforeunload": "Ja pametīsit Mastodonu, jūsu melnraksts tiks zaudēts.",
"units.short.billion": "{count}Mjd", "units.short.billion": "{count}Mjd",
"units.short.million": "{count}Mjn", "units.short.million": "{count}M",
"units.short.thousand": "{count}Tk", "units.short.thousand": "{count}Tk",
"upload_area.title": "Velc un nomet, lai augšupielādētu", "upload_area.title": "Velc un nomet, lai augšupielādētu",
"upload_button.label": "Pievienot bildi, video vai audio datni", "upload_button.label": "Pievienot bildi, video vai audio datni",
@ -707,7 +707,7 @@
"upload_modal.apply": "Pielietot", "upload_modal.apply": "Pielietot",
"upload_modal.applying": "Pielieto…", "upload_modal.applying": "Pielieto…",
"upload_modal.choose_image": "Izvēlēties attēlu", "upload_modal.choose_image": "Izvēlēties attēlu",
"upload_modal.description_placeholder": "Raibais runcis Rīgā ratu rumbā rūc", "upload_modal.description_placeholder": "Raibais runcis rīgā ratu rumbā rūc",
"upload_modal.detect_text": "Noteikt tekstu no attēla", "upload_modal.detect_text": "Noteikt tekstu no attēla",
"upload_modal.edit_media": "Rediģēt multividi", "upload_modal.edit_media": "Rediģēt multividi",
"upload_modal.hint": "Noklikšķini vai velc apli priekšskatījumā, lai izvēlētos fokusa punktu, kas vienmēr būs redzams visos sīktēlos.", "upload_modal.hint": "Noklikšķini vai velc apli priekšskatījumā, lai izvēlētos fokusa punktu, kas vienmēr būs redzams visos sīktēlos.",

@ -593,6 +593,7 @@
"search_results.all": "Semua", "search_results.all": "Semua",
"search_results.hashtags": "Tanda pagar", "search_results.hashtags": "Tanda pagar",
"search_results.nothing_found": "Tidak dapat menemui apa-apa untuk istilah carian tersebut", "search_results.nothing_found": "Tidak dapat menemui apa-apa untuk istilah carian tersebut",
"search_results.see_all": "Lihat semua",
"search_results.statuses": "Hantaran", "search_results.statuses": "Hantaran",
"search_results.title": "Mencari {q}", "search_results.title": "Mencari {q}",
"server_banner.about_active_users": "Pengguna pelayan ini sepanjang 30 hari yang lalu (Pengguna Aktif Bulanan)", "server_banner.about_active_users": "Pengguna pelayan ini sepanjang 30 hari yang lalu (Pengguna Aktif Bulanan)",

@ -537,7 +537,7 @@
"relative_time.today": "сегодня", "relative_time.today": "сегодня",
"reply_indicator.cancel": "Отмена", "reply_indicator.cancel": "Отмена",
"report.block": "Заблокировать", "report.block": "Заблокировать",
"report.block_explanation": перестаните видеть посты этого пользователя, а он(а) больше не сможет подписаться на вас и читать ваши посты. Он(а) сможет понять что вы заблокировали его/её.", "report.block_explanation": ы перестанете видеть посты этого пользователя, и он(а) больше не сможет подписаться на вас и читать ваши посты. Он(а) сможет понять, что вы заблокировали его/её.",
"report.categories.legal": "Правовая информация", "report.categories.legal": "Правовая информация",
"report.categories.other": "Другое", "report.categories.other": "Другое",
"report.categories.spam": "Спам", "report.categories.spam": "Спам",

@ -1,6 +1,7 @@
{ {
"about.blocks": "මහතකරණ සයක", "about.blocks": "මහතකරණ සයක",
"about.contact": "සබඳතව:", "about.contact": "සබඳතව:",
"about.disclaimer": "මටඩන යනදහසත මර මගයක. එය මටඩන gGmbH හළඳ නමයක.",
"about.domain_blocks.suspended.title": "අත ඇත", "about.domain_blocks.suspended.title": "අත ඇත",
"about.rules": "සයකය", "about.rules": "සයකය",
"account.account_note_header": "සටහන", "account.account_note_header": "සටහන",
@ -25,6 +26,7 @@
"account.follows.empty": "තවමත අනගමනය නකරය.", "account.follows.empty": "තවමත අනගමනය නකරය.",
"account.follows_you": "ඔබව අනගමනය කරය", "account.follows_you": "ඔබව අනගමනය කරය",
"account.go_to_profile": "පකඩට යනන", "account.go_to_profile": "පකඩට යනන",
"account.joined_short": "එකනය",
"account.link_verified_on": "මම සබ අයය {date} ද පර", "account.link_verified_on": "මම සබ අයය {date} ද පර",
"account.media": "මයය", "account.media": "මයය",
"account.mention": "@{name} සඳහන කරනක", "account.mention": "@{name} සඳහන කරනක",
@ -102,6 +104,8 @@
"compose_form.publish_form": "නව ලය", "compose_form.publish_form": "නව ලය",
"compose_form.publish_loud": "{publish}!", "compose_form.publish_loud": "{publish}!",
"compose_form.save_changes": "වනසකමරකන", "compose_form.save_changes": "වනසකමරකන",
"compose_form.spoiler.marked": "අනතරගත අවවදය ඉවත කරනන",
"compose_form.spoiler.unmarked": "අනතරගත අවවදයක එක කරනන",
"compose_form.spoiler_placeholder": "අවවදය මයනන", "compose_form.spoiler_placeholder": "අවවදය මයනන",
"confirmation_modal.cancel": "අවල", "confirmation_modal.cancel": "අවල",
"confirmations.block.block_and_report": "අවහර කර ව කරනන", "confirmations.block.block_and_report": "අවහර කර ව කරනන",
@ -131,7 +135,7 @@
"directory.new_arrivals": "නව ප", "directory.new_arrivals": "නව ප",
"directory.recently_active": "මත ද සකයය", "directory.recently_active": "මත ද සකයය",
"disabled_account_banner.account_settings": "ගකස", "disabled_account_banner.account_settings": "ගකස",
"embed.instructions": "පහත කතය පටපතතතවය ඔබ අඩවයට ඇතළත කරන.", "embed.instructions": "පහත කතය පටපතය ඔබග අඩවයට කවදන.",
"embed.preview": "මන එය පන අනදම:", "embed.preview": "මන එය පන අනදම:",
"emoji_button.activity": "කරකම", "emoji_button.activity": "කරකම",
"emoji_button.clear": "මකනන", "emoji_button.clear": "මකනන",
@ -151,7 +155,7 @@
"empty_column.account_timeline": "මත!", "empty_column.account_timeline": "මත!",
"empty_column.account_unavailable": "පකඩ න", "empty_column.account_unavailable": "පකඩ න",
"empty_column.blocks": "ක පරලකය අවහර කර නත.", "empty_column.blocks": "ක පරලකය අවහර කර නත.",
"empty_column.bookmarked_statuses": "ඔබට තවමත සලක කළ මවලමවකත. ඔබ එකක සලක කළ වට, එය මවන ඇත.", "empty_column.bookmarked_statuses": "ඔබ සතව ප තබන ලද ලවකත. ඔබ පවක තබන වට, එය මවන ඇත.",
"empty_column.domain_blocks": "අවහර කරන ලද වසමත.", "empty_column.domain_blocks": "අවහර කරන ලද වසමත.",
"empty_column.explore_statuses": "දවක. පසව නවත පර කරනන!", "empty_column.explore_statuses": "දවක. පසව නවත පර කරනන!",
"empty_column.follow_requests": "ඔබට තවමත අනගමන ඉලත. ඉලමකට, එය මවන ඇත.", "empty_column.follow_requests": "ඔබට තවමත අනගමන ඉලත. ඉලමකට, එය මවන ඇත.",
@ -353,7 +357,7 @@
"report.forward": "{target} වත හරවනන", "report.forward": "{target} වත හරවනන",
"report.forward_hint": "ගම වනතයකයක. වක පටපතක එතනටත එවනන?", "report.forward_hint": "ගම වනතයකයක. වක පටපතක එතනටත එවනන?",
"report.mute": "නහඬ", "report.mute": "නහඬ",
"report.mute_explanation": "ඔබට ඔව. ඔවට තවමත ඔබව අනගමනය කමට සහ ඔබ පළ කමට හ අතර ඒවශබද කර ඇත බව න.", "report.mute_explanation": "ඔබ ඔවදක ඇත. ඔවට තවමත ඔබව අනගමනයට සහ ඔබගමට හ අතර ඔවව නහඬ කර ඇත බව දන ගමට න.",
"report.next": "ඊළඟ", "report.next": "ඊළඟ",
"report.placeholder": "අමතර අදහස", "report.placeholder": "අමතර අදහස",
"report.reasons.dislike": "මම එයට අකමත", "report.reasons.dislike": "මම එයට අකමත",
@ -367,7 +371,7 @@
"report.rules.subtitle": "අදළ සයලල තරනන", "report.rules.subtitle": "අදළ සයලල තරනන",
"report.rules.title": "කමන න උලඝනය කරනද?", "report.rules.title": "කමන න උලඝනය කරනද?",
"report.statuses.subtitle": "අදළ සයලල තරනන", "report.statuses.subtitle": "අදළ සයලල තරනන",
"report.statuses.title": "මම වව උපසථ කරන පද?", "report.statuses.title": "මම වව උපසථ කළ ල ද?",
"report.submit": "යමනන", "report.submit": "යමනන",
"report.target": "{target} වම", "report.target": "{target} වම",
"report.thanks.take_action": "මටඩන ඔබ දකන දලනයට තන වකලප:", "report.thanks.take_action": "මටඩන ඔබ දකන දලනයට තන වකලප:",
@ -375,7 +379,7 @@
"report.thanks.title": "මය නය යද?", "report.thanks.title": "මය නය යද?",
"report.thanks.title_actionable": "වමට ස, අපන ස බලම.", "report.thanks.title_actionable": "වමට ස, අපන ස බලම.",
"report.unfollow": "@{name}අනගමනය නකරනන", "report.unfollow": "@{name}අනගමනය නකරනන",
"report.unfollow_explanation": "ඔබ මම ගම අනගමනය කරය. ඔබවසරහය ඔව පළ ක තවදරටතමට, ඒව අනගමනය නකරනන.", "report.unfollow_explanation": "ඔබ මම ගම අනගමනය කරය. ඔබ ඔවමට, ඔවව තවදරටත අනගමනය නකරනන.",
"report_notification.attached_statuses": "{count, plural, one {ල {count}} other {ල {count} ක}} අම ඇත", "report_notification.attached_statuses": "{count, plural, one {ල {count}} other {ල {count} ක}} අම ඇත",
"report_notification.categories.other": "වනත", "report_notification.categories.other": "වනත",
"report_notification.categories.spam": "ආයත", "report_notification.categories.spam": "ආයත",
@ -443,7 +447,7 @@
"timeline_hint.resources.followers": "අනකය", "timeline_hint.resources.followers": "අනකය",
"timeline_hint.resources.follows": "අනගමනය", "timeline_hint.resources.follows": "අනගමනය",
"timeline_hint.resources.statuses": "පරණ ල", "timeline_hint.resources.statuses": "පරණ ල",
"trends.trending_now": "ද රවණතවය", "trends.trending_now": "ද එන",
"ui.beforeunload": "ඔබ මටඩනර ගයහ කටටපත අහ.", "ui.beforeunload": "ඔබ මටඩනර ගයහ කටටපත අහ.",
"units.short.billion": "{count}බ", "units.short.billion": "{count}බ",
"units.short.million": "ද.ල. {count}", "units.short.million": "ද.ල. {count}",

@ -14,6 +14,8 @@ module ActivityPub::CaseTransform
when String when String
camel_lower_cache[value] ||= if value.start_with?('_:') camel_lower_cache[value] ||= if value.start_with?('_:')
"_:#{value.delete_prefix('_:').underscore.camelize(:lower)}" "_:#{value.delete_prefix('_:').underscore.camelize(:lower)}"
elsif LanguagesHelper::ISO_639_1_REGIONAL.key?(value.to_sym)
value
else else
value.underscore.camelize(:lower) value.underscore.camelize(:lower)
end end

@ -25,7 +25,8 @@ class Admin::Metrics::Dimension::SoftwareVersionsDimension < Admin::Metrics::Dim
end end
def ruby_version def ruby_version
value = "#{RUBY_VERSION}p#{RUBY_PATCHLEVEL}" yjit = defined?(RubyVM::YJIT) && RubyVM::YJIT.enabled?
value = "#{RUBY_VERSION}p#{RUBY_PATCHLEVEL}#{yjit ? ' +YJIT' : ''}"
{ {
key: 'ruby', key: 'ruby',

@ -11,7 +11,7 @@ class Admin::Metrics::Dimension::SpaceUsageDimension < Admin::Metrics::Dimension
protected protected
def perform_query def perform_query
[postgresql_size, redis_size, media_size] [postgresql_size, redis_size, media_size, search_size].compact
end end
def postgresql_size def postgresql_size
@ -65,4 +65,22 @@ class Admin::Metrics::Dimension::SpaceUsageDimension < Admin::Metrics::Dimension
redis.info redis.info
end end
end end
def search_size
return unless Chewy.enabled?
client_info = Chewy.client.info
value = Chewy.client.indices.stats['indices'].values.sum { |index_data| index_data['primaries']['store']['size_in_bytes'] }
{
key: 'search',
human_key: client_info.dig('version', 'distribution') == 'opensearch' ? 'OpenSearch' : 'Elasticsearch',
value: value.to_s,
unit: 'bytes',
human_value: number_to_human_size(value),
}
rescue Faraday::ConnectionFailed, Elasticsearch::Transport::Transport::Error
nil
end
end end

@ -131,7 +131,7 @@ class Account < ApplicationRecord
scope :searchable, -> { without_unapproved.without_suspended.where(moved_to_account_id: nil) } scope :searchable, -> { without_unapproved.without_suspended.where(moved_to_account_id: nil) }
scope :discoverable, -> { searchable.without_silenced.where(discoverable: true).joins(:account_stat) } scope :discoverable, -> { searchable.without_silenced.where(discoverable: true).joins(:account_stat) }
scope :followable_by, ->(account) { joins(arel_table.join(Follow.arel_table, Arel::Nodes::OuterJoin).on(arel_table[:id].eq(Follow.arel_table[:target_account_id]).and(Follow.arel_table[:account_id].eq(account.id))).join_sources).where(Follow.arel_table[:id].eq(nil)).joins(arel_table.join(FollowRequest.arel_table, Arel::Nodes::OuterJoin).on(arel_table[:id].eq(FollowRequest.arel_table[:target_account_id]).and(FollowRequest.arel_table[:account_id].eq(account.id))).join_sources).where(FollowRequest.arel_table[:id].eq(nil)) } scope :followable_by, ->(account) { joins(arel_table.join(Follow.arel_table, Arel::Nodes::OuterJoin).on(arel_table[:id].eq(Follow.arel_table[:target_account_id]).and(Follow.arel_table[:account_id].eq(account.id))).join_sources).where(Follow.arel_table[:id].eq(nil)).joins(arel_table.join(FollowRequest.arel_table, Arel::Nodes::OuterJoin).on(arel_table[:id].eq(FollowRequest.arel_table[:target_account_id]).and(FollowRequest.arel_table[:account_id].eq(account.id))).join_sources).where(FollowRequest.arel_table[:id].eq(nil)) }
scope :by_recent_status, -> { order(Arel.sql('account_stats.last_status_at DESC NULLS LAST')) } scope :by_recent_status, -> { includes(:account_stat).merge(AccountStat.order('last_status_at DESC NULLS LAST')).references(:account_stat) }
scope :by_recent_sign_in, -> { order(Arel.sql('users.current_sign_in_at DESC NULLS LAST')) } scope :by_recent_sign_in, -> { order(Arel.sql('users.current_sign_in_at DESC NULLS LAST')) }
scope :popular, -> { order('account_stats.followers_count desc') } scope :popular, -> { order('account_stats.followers_count desc') }
scope :by_domain_and_subdomains, ->(domain) { where(domain: Instance.by_domain_and_subdomains(domain).select(:domain)) } scope :by_domain_and_subdomains, ->(domain) { where(domain: Instance.by_domain_and_subdomains(domain).select(:domain)) }

@ -114,7 +114,7 @@ class RelationshipFilter
def activity_scope(value) def activity_scope(value)
case value case value
when 'dormant' when 'dormant'
AccountStat.where(last_status_at: nil).or(AccountStat.where(AccountStat.arel_table[:last_status_at].lt(1.month.ago))) Account.joins(:account_stat).where(account_stat: { last_status_at: [nil, ...1.month.ago] })
else else
raise Mastodon::InvalidParameterError, "Unknown activity: #{value}" raise Mastodon::InvalidParameterError, "Unknown activity: #{value}"
end end

@ -58,10 +58,10 @@ si:
authorize: සතපනය authorize: සතපනය
deny: රතප කරන deny: රතප කරන
error: error:
title: ෂයක ඇත title: ෂයක ඇත
new: new:
prompt_html: "%{client_name} ඔබගමට පරවශ වමට අවසර ලබමට කමත. එය තවන පශවය යමක. <strong>ඔබ එය වස නකරන නම, ඔබ එයට අවසර නය යය.</strong>" prompt_html: "%{client_name} ඔබගමට පරවශ වමට අවසර ලබමට කමත. එය තවන පශවය යමක. <strong>ඔබ එය වස නකරන නම, ඔබ එයට අවසර නය යය.</strong>"
review_permissions: අවසර සමචනය කරන review_permissions: අවසර සමචනය
title: බලය පවර අවශ title: බලය පවර අවශ
show: show:
title: ම අවසර කතය පටපත කර එය යමට අලවනන. title: ම අවසර කතය පටපත කර එය යමට අලවනන.
@ -73,11 +73,11 @@ si:
index: index:
authorized_at: "%{date}මත අවසර ද ඇත" authorized_at: "%{date}මත අවසර ද ඇත"
description_html: API භතය ඔබගමට පරවශ වය හ. ඔබ ම හඳගත නම, හමකරදස හ නම, ඔබට එහරවශය අවල කළ හක. description_html: API භතය ඔබගමට පරවශ වය හ. ඔබ ම හඳගත නම, හමකරදස හ නම, ඔබට එහරවශය අවල කළ හක.
last_used_at: වසන වරට භ කළ %{date} last_used_at: ම භතය %{date}
never_used: කර න never_used: කර න
scopes: අවසර scopes: අවසර
superapp: අභයනතර superapp: අභයනතර
title: ඔබග බලයලත යදපත title: ඔබග බලයලත
errors: errors:
messages: messages:
access_denied: සමපතකර අවසර සයකය ඉලම පරතප කළය. access_denied: සමපතකර අවසර සයකය ඉලම පරතප කළය.

@ -47,7 +47,7 @@ ko:
label: 역할 변경 label: 역할 변경
no_role: 역할 없음 no_role: 역할 없음
title: "%{username}의 역할 변경" title: "%{username}의 역할 변경"
confirm: 확정 confirm: 신원 확인
confirmed: 확인됨 confirmed: 확인됨
confirming: 확인 중 confirming: 확인 중
custom: 사용자 지정 custom: 사용자 지정

@ -460,7 +460,7 @@ lv:
description_html: Tu gatavojies importēt domēna bloku sarakstu. Lūdzu, ļoti rūpīgi pārskati šo sarakstu, it īpaši, ja tu pats neesi to veidojis. description_html: Tu gatavojies importēt domēna bloku sarakstu. Lūdzu, ļoti rūpīgi pārskati šo sarakstu, it īpaši, ja tu pats neesi to veidojis.
existing_relationships_warning: Esošās sekošanas attiecības existing_relationships_warning: Esošās sekošanas attiecības
private_comment_description_html: 'Lai palīdzētu tev izsekot, no kurienes nāk importētie bloki, tiks izveidoti importētie bloki ar šādu privātu komentāru: <q>%{comment}</q>' private_comment_description_html: 'Lai palīdzētu tev izsekot, no kurienes nāk importētie bloki, tiks izveidoti importētie bloki ar šādu privātu komentāru: <q>%{comment}</q>'
private_comment_template: Importēts no %{source} %{date} private_comment_template: Importēt no %{source} %{date}
title: Importēt bloķētos domēnus title: Importēt bloķētos domēnus
invalid_domain_block: 'Viens vai vairāki domēna bloķi tika izlaisti šādas kļūdas(-u) dēļ: %{error}' invalid_domain_block: 'Viens vai vairāki domēna bloķi tika izlaisti šādas kļūdas(-u) dēļ: %{error}'
new: new:
@ -1107,7 +1107,7 @@ lv:
new_confirmation_instructions_sent: Pēc dažām minūtēm saņemsi jaunu e-pastu ar apstiprinājuma saiti! new_confirmation_instructions_sent: Pēc dažām minūtēm saņemsi jaunu e-pastu ar apstiprinājuma saiti!
title: Pārbaudi savu iesūtni title: Pārbaudi savu iesūtni
sign_in: sign_in:
preamble_html: Pierakstieties ar saviem <strong>%{domain}</strong> akreditācijas datiem. Ja jūsu konts ir mitināts citā serverī, jūs nevarēsit pieteikties šeit. preamble_html: Piesakies ar saviem <strong>%{domain}</strong> akreditācijas datiem. Ja tavs konts ir mitināts citā serverī, tu nevarēsi pieteikties šeit.
title: Pierakstīties %{domain} title: Pierakstīties %{domain}
sign_up: sign_up:
manual_review: Reģistrācijas domēnā %{domain} manuāli pārbauda mūsu moderatori. Lai palīdzētu mums apstrādāt tavu reģistrāciju, uzraksti mazliet par sevi un to, kāpēc vēlies kontu %{domain}. manual_review: Reģistrācijas domēnā %{domain} manuāli pārbauda mūsu moderatori. Lai palīdzētu mums apstrādāt tavu reģistrāciju, uzraksti mazliet par sevi un to, kāpēc vēlies kontu %{domain}.

@ -16,8 +16,6 @@ si:
last_active: අවසන ක last_active: අවසන ක
link_verified_on: ම සබවය %{date}හ පර කරන ලද link_verified_on: ම සබවය %{date}හ පර කරන ලද
nothing_here: වකත! nothing_here: වකත!
pin_errors:
following: ඔබට අනමත කමට අවශය පගලය ඔබ දනටමත අනගමනය කරමය ය
posts: posts:
one: one:
other: other:
@ -69,7 +67,7 @@ si:
invite_request_text: එකමට හ invite_request_text: එකමට හ
invited_by: ආරධන කරන ලද invited_by: ආරධන කරන ලද
ip: අ.ජ. ක. (IP) ip: අ.ජ. ක. (IP)
joined: එක ඇත joined: එකනය
location: location:
all: යල all: යල
local: local:
@ -123,7 +121,7 @@ si:
security_measures: security_measures:
only_password: රපදය පමණ only_password: රපදය පමණ
password_and_2fa: රපදය සහ 2FA password_and_2fa: රපදය සහ 2FA
sensitized: සලක කර ඇත sensitized: බව සලක කර ඇත
shared_inbox_url: ගත එන ල URL shared_inbox_url: ගත එන ල URL
show: show:
created_reports: created_reports:
@ -173,7 +171,7 @@ si:
destroy_email_domain_block: ඊම එක මකන destroy_email_domain_block: ඊම එක මකන
destroy_instance: වසම ප කරන destroy_instance: වසම ප කරන
destroy_ip_block: IP රය මකන destroy_ip_block: IP රය මකන
destroy_status: පළ ක මකන destroy_status: මකන
destroy_unavailable_domain: ලබ ගත න වසම මකන destroy_unavailable_domain: ලබ ගත න වසම මකන
disable_2fa_user: 2FA අබල කරන disable_2fa_user: 2FA අබල කරන
disable_custom_emoji: අභ ඉම අබල කරන disable_custom_emoji: අභ ඉම අබල කරන
@ -199,7 +197,7 @@ si:
update_announcement: දනය යවතල කරන update_announcement: දනය යවතල කරන
update_custom_emoji: අභ ඉමවතන කරන update_custom_emoji: අභ ඉමවතන කරන
update_domain_block: වතන කරන update_domain_block: වතන කරන
update_status: පළ කම යවත කරන update_status: ය යවත කරන
actions: actions:
approve_user_html: "%{name} අනමත ලපදය %{target}සට" approve_user_html: "%{name} අනමත ලපදය %{target}සට"
assigned_to_self_report_html: "%{name} වව %{target} තමනටම පවර ඇත" assigned_to_self_report_html: "%{name} වව %{target} තමනටම පවර ඇත"
@ -220,7 +218,6 @@ si:
destroy_email_domain_block_html: "%{name} අවහර නකළ ව වසම %{target}" destroy_email_domain_block_html: "%{name} අවහර නකළ ව වසම %{target}"
destroy_instance_html: "%{name} ප කරන ලද වසම %{target}" destroy_instance_html: "%{name} ප කරන ලද වසම %{target}"
destroy_ip_block_html: IP %{target}සඳහ %{name} මක destroy_ip_block_html: IP %{target}සඳහ %{name} මක
destroy_status_html: "%{name} ප %{target}ව ඉවත කරන ලද"
destroy_unavailable_domain_html: "%{name} වසම %{target}වත බම නවත ආරමභ වය" destroy_unavailable_domain_html: "%{name} වසම %{target}වත බම නවත ආරමභ වය"
disable_2fa_user_html: "%{name} පරලක %{target}සඳහධක දකක අවශයතවය අකය කර ඇත" disable_2fa_user_html: "%{name} පරලක %{target}සඳහධක දකක අවශයතවය අකය කර ඇත"
disable_custom_emoji_html: "%{name} ආබත ඉම %{target}" disable_custom_emoji_html: "%{name} ආබත ඉම %{target}"
@ -236,18 +233,17 @@ si:
reopen_report_html: "%{name} නවත වත කළ වව %{target}" reopen_report_html: "%{name} නවත වත කළ වව %{target}"
reset_password_user_html: "%{name} පරලක %{target}හරපදය යළවනන" reset_password_user_html: "%{name} පරලක %{target}හරපදය යළවනන"
resolve_report_html: "%{name} වසඳන ලද වව %{target}" resolve_report_html: "%{name} වසඳන ලද වව %{target}"
sensitive_account_html: "%{name} %{target}හය ස සලක කර ඇත" sensitive_account_html: "%{target}ගය ස බව %{name} සලක කර ඇත"
silence_account_html: "%{name} සත %{target}ගමක" silence_account_html: "%{name} සත %{target}ගමක"
suspend_account_html: "%{name} %{target}ගම අත ඇත" suspend_account_html: "%{name} %{target}ගම අත ඇත"
unassigned_report_html: "%{name} පවරව %{target}" unassigned_report_html: "%{name} පවරව %{target}"
unblock_email_account_html: "%{name} %{target}ග ඊමනය අවහර කම ඉවත කරන ලද" unblock_email_account_html: "%{name} %{target}ග ඊමනය අවහර කම ඉවත කරන ලද"
unsensitive_account_html: "%{name} සලකකළ %{target}ගය ස " unsensitive_account_html: "%{target}ගය ස බව %{name} ඉවත කර ඇත"
unsilence_account_html: "%{target}ග %{name} undid සව" unsilence_account_html: "%{target}ග %{name} undid සව"
unsuspend_account_html: "%{name} අතවන ලද %{target}ගම" unsuspend_account_html: "%{name} අතවන ලද %{target}ගම"
update_announcement_html: "%{name} යවතන නදනය %{target}" update_announcement_html: "%{name} යවතන නදනය %{target}"
update_custom_emoji_html: "%{name} යවතන කළ ඉම %{target}" update_custom_emoji_html: "%{name} යවතන කළ ඉම %{target}"
update_domain_block_html: "%{target}සඳහ %{name} යවතන කරන ලද වසමරණ" update_domain_block_html: "%{target}සඳහ %{name} යවතන කරන ලද වසමරණ"
update_status_html: "%{name} %{target}යවතන කරන ලද පළ කම"
empty: ලඝ-සටහන හම. empty: ලඝ-සටහන හම.
filter_by_action: ගය අනව පරන filter_by_action: ගය අනව පරන
filter_by_user: පරලකය අනව පරන filter_by_user: පරලකය අනව පරන
@ -305,8 +301,8 @@ si:
dashboard: dashboard:
active_users: පරලකයන active_users: පරලකයන
interactions: අනතර interactions: අනතර
media_storage: ය ගබඩ media_storage: ය ආචයනය
new_users: නව පරලකයන new_users: නව පරලකය
opened_reports: ත ව opened_reports: ත ව
pending_appeals_html: pending_appeals_html:
one: "<strong>%{count}</strong> අභචනයක බල" one: "<strong>%{count}</strong> අභචනයක බල"
@ -435,7 +431,7 @@ si:
unavailable: ලබ ගත න unavailable: ලබ ගත න
delivery_available: ම ලබ ගත හ delivery_available: ම ලබ ගත හ
delivery_error_days: ෂ සහත ද delivery_error_days: ෂ සහත ද
delivery_error_hint: න %{count} ක සඳහම කළ න නම, එය සවයයව බය නස ලක කරන. delivery_error_hint: වස %{count} කරදමට නවහ, බරදමට න බව සවයයව සලක.
destroyed_msg: "%{domain} සට දතත ද ආසනන මකම සඳහ කර ඇත." destroyed_msg: "%{domain} සට දතත ද ආසනන මකම සඳහ කර ඇත."
empty: වසමවක හමය. empty: වසමවක හමය.
known_accounts: known_accounts:
@ -454,7 +450,7 @@ si:
total_followed_by_them: ඔව අනගමනය කරන ලද total_followed_by_them: ඔව අනගමනය කරන ලද
total_followed_by_us: අප ව අනගමනය කරන ලද total_followed_by_us: අප ව අනගමනය කරන ලද
total_reported: ඔවන ව total_reported: ඔවන ව
total_storage: ය ඇම total_storage: ය ඇම
totals_time_period_hint_html: පහත දන එකතයලලය සඳහ දතත ඇතළත. totals_time_period_hint_html: පහත දන එකතයලලය සඳහ දතත ඇතළත.
invites: invites:
deactivate_all: යලල අකය කරන deactivate_all: යලල අකය කරන
@ -483,11 +479,9 @@ si:
relays: relays:
add_new: නව ර එක කරන add_new: නව ර එක කරන
delete: මකන delete: මකන
description_html: "<strong>ෆඩරෂන</strong> යන එයට දයක වරකශයට පත කරන සයකයන අතර වල පරසධ පළ කවම කරන අතරමයකයක. <strong>එය ක සහ මධයම සයකයනට fediverse</strong>ව අනතරගතය සමට උදව කළ හ අතර, එස නමය පරලකයට දරසථ සයකයන මත වනතගලය හසයව අනගමනය කම අවශය ව."
disable: අබල කරන disable: අබල කරන
disabled: අබලය disabled: අබලය
enable: සබල කරන enable: සබල කරන
enable_hint: සකය කළ පස, ඔබයකය මම රයලම ප පළ ක සඳහයක වන අතර, මම සයකය පළ ක එයට යම ආරමභ කරන ඇත.
enabled: සබල කර ඇත enabled: සබල කර ඇත
inbox_url: URL inbox_url: URL
pending: අනය සඳහ pending: අනය සඳහ
@ -507,8 +501,6 @@ si:
action_log: ගණන සටහන action_log: ගණන සටහන
action_taken_by: ගන ලද පයවර action_taken_by: ගන ලද පයවර
actions: actions:
delete_description_html: කරන ලද පළ ක මක ඇත අතර එම ගම අනගත උලඝනයනර කමට ඔබට උදවමට වරජනයක කරන ඇත.
mark_as_sensitive_description_html: කරන ලද පළ ක වල මය සස සලක කරන ලබන අතර එම ගම මග අනගත උලඝනයන උතසනන කමට ඔබට උපකර කමට වරජනයක කරන ඇත.
other_description_html: ම පලනය කම සහ ව කළ ගමට සනදනය අභකරණය කම සඳහ තවතකලප බලනන. other_description_html: ම පලනය කම සහ ව කළ ගමට සනදනය අභකරණය කම සඳහ තවතකලප බලනන.
resolve_description_html: කරන ලද ගමට එරව කගයකගන ඇත, වඩ වරජනයක, වව වස දමන ඇත. resolve_description_html: කරන ලද ගමට එරව කගයකගන ඇත, වඩ වරජනයක, වව වස දමන ඇත.
actions_description_html: ම වව වසඳමට ගත යගය තරණය කරනන. ඔබ ව කරන ලද ගමට එරව දණඩනය කගයක ගන නම, <strong>Spam</strong> කඩය තගතට හර, ඔවට වමක යවන. actions_description_html: ම වව වසඳමට ගත යගය තරණය කරනන. ඔබ ව කරන ලද ගමට එරව දණඩනය කගයක ගන නම, <strong>Spam</strong> කඩය තගතට හර, ඔවට වමක යවන.
@ -526,14 +518,14 @@ si:
delete_and_resolve: මකන delete_and_resolve: මකන
forwarded: හරව යව ඇත forwarded: හරව යව ඇත
forwarded_to: "%{domain} වත හරව" forwarded_to: "%{domain} වත හරව"
mark_as_resolved: සඳ ඇතස ලක කර mark_as_resolved: සඳ බව ය
mark_as_sensitive: ස ලක කර mark_as_sensitive: බව ය
mark_as_unresolved: සඳස ලක කර mark_as_unresolved: සඳ බව ය
no_one_assigned: no_one_assigned:
notes: notes:
create: සටහන එකත කරන create: සටහන එකත කරන
create_and_resolve: සටහන සමඟ වසඳන create_and_resolve: සටහන සමඟ වසඳන
create_and_unresolve: සටහනක සමඟ නවත ත කර create_and_unresolve: සටහනක සමඟ නවත අර
delete: මකන delete: මකන
placeholder: න ඇතග, හනත අදළ යවතන වතර කරනන... placeholder: න ඇතග, හනත අදළ යවතන වතර කරනන...
title: සටහන title: සටහන
@ -564,7 +556,12 @@ si:
moderation: හතකරණය moderation: හතකරණය
special: special:
delete: මකන delete: මකන
permissions_count:
one: අවසර %{count}
other: අවසර %{count}
privileges: privileges:
administrator: පරලක
delete_user_data: පරලක දතත මකන
invite_users: ආරධන කරන invite_users: ආරධන කරන
manage_announcements: දනය කළමනකරණය manage_announcements: දනය කළමනකරණය
manage_federation: ඒකබදධ කළමනකරණය manage_federation: ඒකබදධ කළමනකරණය
@ -592,6 +589,7 @@ si:
title: title:
discovery: discovery:
profile_directory: කඩ නවල profile_directory: කඩ නවල
public_timelines: රසධ කලර
domain_blocks: domain_blocks:
all: ටම all: ටම
disabled: ටවත disabled: ටවත
@ -626,7 +624,7 @@ si:
media: media:
title: යය title: යය
metadata: රදත metadata: රදත
no_status_selected: වක ගත තනතවකනස කර න no_status_selected: වක වකනස කර න
open: ය අර open: ය අර
original_status: original_status:
status_changed: ය සතය status_changed: ය සතය
@ -639,7 +637,7 @@ si:
disable: "%{name} %{target}ගම නචල කළය" disable: "%{name} %{target}ගම නචල කළය"
mark_statuses_as_sensitive: "%{target}ග බව %{name} සලක කර ඇත" mark_statuses_as_sensitive: "%{target}ග බව %{name} සලක කර ඇත"
none: "%{name} %{target}අනත ඇඟවමක යව ඇත" none: "%{name} %{target}අනත ඇඟවමක යව ඇත"
sensitive: "%{name} %{target}ගම සලක කර ඇත" sensitive: "%{target}ගම ස බව %{name} සලක කර ඇත"
silence: "%{name} සත %{target}ගමක" silence: "%{name} සත %{target}ගමක"
suspend: "%{name} %{target}ගම අත ඇත" suspend: "%{name} %{target}ගම අත ඇත"
appeal_approved: අභචන කළ appeal_approved: අභචන කළ
@ -691,9 +689,9 @@ si:
title: රකශකයන title: රකශකයන
rejected: රතප කළ rejected: රතප කළ
statuses: statuses:
allow: පළ කමට ඉඩ allow: පළ කමට ඉඩද
allow_account: කතවරයට ඉඩ ද allow_account: කතවරයට ඉඩ ද
disallow: ළ කට ඉඩ න disallow: රකශනයට ඉඩ න
disallow_account: කතවරයට ඉඩ න disallow_account: කතවරයට ඉඩ න
not_discoverable: කර ගත හ බව තන න not_discoverable: කර ගත හ බව තන න
shared_by: shared_by:
@ -732,12 +730,12 @@ si:
webhooks: webhooks:
add_new: අනත ලකයය එක කරන add_new: අනත ලකයය එක කරන
delete: මකන delete: මකන
disable: කරන disable: බල කරන
disabled: ආබ disabled: අබල
edit: අනත ලකයය සකරණය කරන edit: අනත ලකයය සකරණය කරන
empty: ඔබට තවම වස කර ඇත webhook අනත ලකයයකත. empty: ඔබට තවම වස කර ඇත webhook අනත ලකයයකත.
enable: සබල කරන enable: සබල කරන
enabled: enabled: මකය
enabled_events: enabled_events:
one: සබල ස 1 one: සබල ස 1
other: සබල ස %{count} other: සබල ස %{count}
@ -752,7 +750,6 @@ si:
actions: actions:
delete_statuses: ඔව පළ ක මකමට delete_statuses: ඔව පළ ක මකමට
disable: ඔවම කමට disable: ඔවම කමට
mark_statuses_as_sensitive: ඔව තනතස සලකමට
none: අනත ඇඟවමක none: අනත ඇඟවමක
sensitive: ඔවම සස සලකමට sensitive: ඔවම සස සලකමට
silence: ඔවම සමට silence: ඔවම සමට
@ -769,7 +766,7 @@ si:
new_trending_links: new_trending_links:
title: එන සබ title: එන සබ
new_trending_statuses: new_trending_statuses:
title: රවණත පළ ක title: එන ල
new_trending_tags: new_trending_tags:
no_approved_tags: නට අනමත පරවණතත. no_approved_tags: නට අනමත පරවණතත.
requirements: 'මම ඕනම අපෂකයට #%{rank} අනමත පරවණතගය අභබවය, එය දනට ලක %{lowest_tag_score}ක සමඟ #%{lowest_tag_name} ව.' requirements: 'මම ඕනම අපෂකයට #%{rank} අනමත පරවණතගය අභබවය, එය දනට ලක %{lowest_tag_score}ක සමඟ #%{lowest_tag_name} ව.'
@ -803,11 +800,13 @@ si:
applications: applications:
created: ම සථකව ස created: ම සථකව ස
destroyed: ම සථකව මක ඇත destroyed: ම සථකව මක ඇත
logout:
regenerate_token: රවශ ටකනය නවත උතදනය කරන regenerate_token: රවශ ටකනය නවත උතදනය කරන
token_regenerated: රවශ ටකනය සථකව පරතජනනය කරන ලද token_regenerated: රවශ ටකනය සථකව පරතජනනය කරන ලද
warning: ම දතත සමඟ ඉතරවශම වනන. එය කක ක සමඟ බගනන! warning: ම දතත සමඟ ඉතරවශම වනන. එය කක ක සමඟ බගනන!
your_token: ඔබරවශ ටකනය your_token: ඔබරවශ ටකනය
auth: auth:
apply_for_account: මක ඉලලන
delete_account: ම මකන delete_account: ම මකන
delete_account_html: ඔබට ඔබගම මකමට අවශය නම, ඔබට <a href="%{path}">ම ඉදයට යක</a>. තහවම සඳහ ඔබ අසන ඇත. delete_account_html: ඔබට ඔබගම මකමට අවශය නම, ඔබට <a href="%{path}">ම ඉදයට යක</a>. තහවම සඳහ ඔබ අසන ඇත.
description: description:
@ -823,14 +822,25 @@ si:
logout: logout:
migrate_account: නතමකට යන migrate_account: නතමකට යන
migrate_account_html: ඔබට මම ගම වනත එකකට හරවමට අවශය නම, ඔබට එය <a href="%{path}">මසගත කළ හක</a>. migrate_account_html: ඔබට මම ගම වනත එකකට හරවමට අවශය නම, ඔබට එය <a href="%{path}">මසගත කළ හක</a>.
progress:
details: ඔබගතර
rules: ගන
providers:
cas: CAS
saml: SAML
register: පද register: පද
registration_closed: "%{instance} නව සකයගනත" registration_closed: "%{instance} නව සකයගනත"
reset_password: රපදය යළ සකසන reset_password: රපදය යළ සකසන
rules: rules:
accept: ගන accept: ගන
back: ආපස back: ආපස
title_invited: ඔබට ආරධන කර ඇත.
security: ආරක security: ආරක
set_new_password: නව මරපදය සකසන set_new_password: නව මරපදය සකසන
setup:
title: ඔබග එනල බලන
sign_in:
title: "%{domain} වත පන"
status: status:
account_status: තතවය account_status: තතවය
confirming: ල තහවම සමණ කම සඳහ. confirming: ල තහවම සමණ කම සඳහ.
@ -876,7 +886,7 @@ si:
warning: warning:
before: 'ඉදයට යමට පර, කරකර මම සටහනයවනන:' before: 'ඉදයට යමට පර, කරකර මම සටහනයවනන:'
caches: නතයකයනගත කර ඇත අනතරගතය දගටම පවතය හ caches: නතයකයනගත කර ඇත අනතරගතය දගටම පවතය හ
data_removal: ඔබග පළ ක සහ අන දතත සරවම ඉවත කරන data_removal: ඔබග සහ අන දතත සදහටම ඉවත ඇත
email_change_html: ඔබට ඔබගම මක</a> <a href="%{path}">කළ හ email_change_html: ඔබට ඔබගම මක</a> <a href="%{path}">කළ හ
email_contact_html: එය තවමත නම, ඔබට උදව සඳහ <a href="mailto:%{email}">%{email}</a> වය හ email_contact_html: එය තවමත නම, ඔබට උදව සඳහ <a href="mailto:%{email}">%{email}</a> වය හ
email_reconfirmation_html: ඔබට තහවල න නම, ඔබට එය <a href="%{path}">නවත ඉලය හක</a> email_reconfirmation_html: ඔබට තහවල න නම, ඔබට එය <a href="%{path}">නවත ඉලය හක</a>
@ -900,13 +910,12 @@ si:
description_html: ඔබගමට එරව ගන ලද ක සහ %{instance}හය මණඩලය ව ඔබට එව ඇත අනත ඇඟව. description_html: ඔබගමට එරව ගන ලද ක සහ %{instance}හය මණඩලය ව ඔබට එව ඇත අනත ඇඟව.
recipient: ත ය කරන ලද recipient: ත ය කරන ලද
reject_appeal: අභචනය පරතප කරන reject_appeal: අභචනය පරතප කරන
status: 'පළ කම #%{id}' status: "#%{id} ලය"
status_removed: පළ කනටමත පදධත ඉවත කර ඇත status_removed: නටමත පදධත ඉවත කර ඇත
title: "%{action} සට %{date}" title: "%{action} සට %{date}"
title_actions: title_actions:
delete_statuses: පස ඉවත delete_statuses: ඉවත
disable: ම ක disable: ම ක
mark_statuses_as_sensitive: තනතස සලක
none: අවවදයය none: අවවදයය
sensitive: ම සස සලක sensitive: ම සස සලක
silence: ම ස silence: ම ස
@ -941,7 +950,7 @@ si:
archive_takeout: archive_takeout:
date: නය date: නය
download: ඔබගරකතය බගන download: ඔබගරකතය බගන
hint_html: ඔබට ඔබග පළ ක <strong>සහ උඩගත කළ මය</strong>හරකතයක ඉලය හක. නත කළ දතත ActivityPub ආක, ඕනම අනල මගයකට කයවය හය. ඔබට දන 7කට වරකඛනරයක ඉලය හ. hint_html: ඔබට <strong>ල සහ උඩගත කළ මයවල</strong> සරකෂණයක ඉලමට හය. නත කළ දතත ActivityPub ආකයට ගළපන ඕනම මගයකයවමට හය. ඔබට දවස 7 කට වරකරකෂණයක ඉලමට හ.
in_progress: ඔබගරකතය සමදනය කරම... in_progress: ඔබගරකතය සමදනය කරම...
request: ඔබගරකතය ඉලලන request: ඔබගරකතය ඉලලන
size: රමණය size: රමණය
@ -951,16 +960,15 @@ si:
domain_blocks: වසම අවහර ක domain_blocks: වසම අවහර ක
lists: lists:
mutes: ඔබ නහඬ කරන mutes: ඔබ නහඬ කරන
storage: ගබඩ storage: ආචයනය
featured_tags: featured_tags:
add_new: අල එකත කරන add_new: අල එකත කරන
hint_html: "<strong>වගගත හනවද?</strong> ඒව ඔබකඩරමඛව පරදරශනය වන අතර එම හ යටත ඔබ පළ කරවමට මට ඉඩ සලසය. නමක කන වබඳ වවක තබම සඳහ ඔවට මවලමක."
filters: filters:
contexts: contexts:
account: කඩයන account: කඩයන
home: ල සහ ල home: ල සහ ල
notifications: notifications:
public: ලර public: රසලර
thread: thread:
edit: edit:
add_keyword: ල පදය එක කරන add_keyword: ල පදය එක කරන
@ -1018,9 +1026,12 @@ si:
overwrite: උඩයන overwrite: උඩයන
overwrite_long: වතමන නව ඒව සමඟ පරතපනය කරන overwrite_long: වතමන නව ඒව සමඟ පරතපනය කරන
preface: ඔබ අනගමන කරන හ අවහර කරන පගලයවකනතයකයක ඔබ නත කර ඇත දතත ඔබට ආයත කළ හක. preface: ඔබ අනගමන කරන හ අවහර කරන පගලයවකනතයකයක ඔබ නත කර ඇත දතත ඔබට ආයත කළ හක.
status: තතවය
success: ඔබග දතත සථකව උඩගත කර ඇත අතර නයමත වවට සකස ඇත success: ඔබග දතත සථකව උඩගත කර ඇත අතර නයමත වවට සකස ඇත
titles: titles:
lists: ආයත ව lists: ආයත ව
type_groups:
constructive: අනගමන හ
types: types:
blocking: අවහර ල blocking: අවහර ල
bookmarks: bookmarks:
@ -1064,7 +1075,7 @@ si:
title: සතපන ඉතසය title: සතපන ඉතසය
media_attachments: media_attachments:
validations: validations:
images_and_video: නටමත ර අඩ පළ කමකට වවක ඇමය න images_and_video: නටමත ප අඩයකට දයකයක ඇමමට න
not_ready: කසම අවසනකළ ග ඇමය නක. මතකවත උතහ කරනන! not_ready: කසම අවසනකළ ග ඇමය නක. මතකවත උතහ කරනන!
too_many: 4කට වඩ ඇමය න too_many: 4කට වඩ ඇමය න
migrations: migrations:
@ -1168,8 +1179,8 @@ si:
too_many_options: අථක %{max} කට වඩ අඩය ය too_many_options: අථක %{max} කට වඩ අඩය ය
preferences: preferences:
other: නත other: නත
posting_defaults: රන පළ ක posting_defaults: මවට පළ කරන ආකරය
public_timelines: ලර public_timelines: රසලර
privacy: privacy:
search: යන search: යන
privacy_policy: privacy_policy:
@ -1203,11 +1214,8 @@ si:
rss: rss:
content_warning: 'අනතරගත අනත ඇඟවම:' content_warning: 'අනතරගත අනත ඇඟවම:'
descriptions: descriptions:
account: "@%{acct}සට ප පළ ක" account: "@%{acct} වරසධ ල"
tag: "#%{hashtag}ට කර ඇත පළ ක"
scheduled_statuses: scheduled_statuses:
over_daily_limit: ඔබ අද දනට නයමත පළ ක %{limit} සව ඉකමව ඇත
over_total_limit: ඔබ නයමත පළ ක %{limit} සව ඉකමව ඇත
too_soon: යමත දනය අනගතයය ය too_soon: යමත දනය අනගතයය ය
sessions: sessions:
activity: අවසන කරකම activity: අවසන කරකම
@ -1259,7 +1267,7 @@ si:
account_settings: කස account_settings: කස
aliases: අනවරථ නමයන aliases: අනවරථ නමයන
appearance: appearance:
authorized_apps: අවසර ලත authorized_apps: බලයලත
back: ටඩනත ආපස back: ටඩනත ආපස
delete: ම ම delete: ම ම
development: වරධනය development: වරධනය
@ -1273,7 +1281,7 @@ si:
preferences: අභ preferences: අභ
profile: රසධ පකඩ profile: රසධ පකඩ
relationships: අනකය සහ අනකය relationships: අනකය සහ අනකය
statuses_cleanup: වයය පළ ක මක statuses_cleanup: වය
two_factor_authentication: ධක Aut two_factor_authentication: ධක Aut
webauthn_authentication: ආරකෂණ යත webauthn_authentication: ආරකෂණ යත
statuses: statuses:
@ -1295,13 +1303,13 @@ si:
other: 'අනමත නකළ හ අඩ: %{tags}' other: 'අනමත නකළ හ අඩ: %{tags}'
edited_at_html: කරණය %{date} edited_at_html: කරණය %{date}
errors: errors:
in_reply_not_found: ඔබ පමට උතහ කරන පළ කම පවතන බවක. in_reply_not_found: ඔබ පමට කරන ලය නපවතන බව ප.
open_in_web: බයත කරන open_in_web: බයත කරන
over_character_limit: අකෂර සව %{max} ඉකමව ඇත over_character_limit: අකෂර සව %{max} ඉකමව ඇත
pin_errors: pin_errors:
direct: සඳහන කළ පරලකයට පමණකන පළ ක ඇමය න direct: සඳහන කළ අයට පමණකන ල ඇමමට න
limit: ඔබ දනටමත උපරම පළ කව අම ඇත limit: නටමතනට ඇමමට හවට ළඟ ඇත
ownership: නත පළ කමක ඇමය න ownership: නත අයග ඇමමට න
poll: poll:
total_people: total_people:
one: ගලය %{count} one: ගලය %{count}
@ -1324,16 +1332,14 @@ si:
unlisted: ගත නකළ unlisted: ගත නකළ
unlisted_long: ම කටම දය හක, නමලරගත කර න unlisted_long: ම කටම දය හක, නමලරගත කර න
statuses_cleanup: statuses_cleanup:
enabled: රණ පළ කවයයව මකන enabled: පරණ ලවයයව මකන
enabled_hint: ඔබ පළ ක පහත වයතකවල එකකට ගලප නමස, ඒවත වයසවකට ළඟ පසවයයව මකය
exceptions: ර ද exceptions: ර ද
explanation: පළ ක මකම මල අධක මමක වන බ, සයකය වනත ආකරයකයබහල නවන වට කලයත සමඟ මය ස. මම හව න, ඔබ පළ ක වයසවට ළඟ පසක වවකට පසව මකය හක.
ignore_favs: යතමයනසලකන ignore_favs: යතමයනසලකන
interaction_exceptions: අනතර මත පදනමයත interaction_exceptions: අනතර මත පදනමයත
keep_direct: පණඩ තබගන keep_direct: පණඩ තබගන
keep_direct_hint: ඔබග පණඩ කවක keep_direct_hint: ඔබග පණඩ කවක
keep_media: ය ඇම සහත ල තබගන keep_media: ය ඇම සහත ල තබගන
keep_media_hint: ය ඇම ඇත ඔබ පළ කවක මක keep_media_hint: ය ඇම සහත ඔබගවක
keep_pinned: ඇම තබගන keep_pinned: ඇම තබගන
keep_pinned_hint: ඔබ ඇමවක keep_pinned_hint: ඔබ ඇමවක
keep_polls_hint: ඔබග මත වමස keep_polls_hint: ඔබග මත වමස
@ -1374,12 +1380,12 @@ si:
edit: කරණය edit: කරණය
enabled: -සධක සතපනය සකය කර ඇත enabled: -සධක සතපනය සකය කර ඇත
enabled_success: -සධක සතපනය සථකව සබල කර ඇත enabled_success: -සධක සතපනය සථකව සබල කර ඇත
generate_recovery_codes: රතධන කජනනය කරන generate_recovery_codes: රතධන කඋතනය කරන
lost_recovery_codes: ඔබගරකථනය නවහ ඔබගමට පරවශය නවත ලබමට පරතධන කත ඔබට ඉඩ සලසය. ඔබට ඔබරතධන කත න ඇතනම, ඔබට ඒවවත උතදනය කළ හක. ඔබගරණරතධන කත අවල වන ඇත. lost_recovery_codes: ඔබගරකථනය නවහ ඔබගමට පරවශය නවත ලබමට පරතධන කත ඔබට ඉඩ සලසය. ඔබට ඔබරතධන කත න ඇතනම, ඔබට ඒවවත උතදනය කළ හක. ඔබගරණරතධන කත අවල වන ඇත.
methods: ධක කරම methods: ධක කරම
otp: Authenticator ය otp: Authenticator ය
recovery_codes: උපසරතධන ක recovery_codes: රතධන ක උපසථය
recovery_codes_regenerated: රතධන කථකව පරතජනනය කරන ලද recovery_codes_regenerated: රතධන කවත උතදනය ක
recovery_instructions_html: ඔබට කවද ඔබගරකථනයට පරවශය අහවහ, ඔබගමට පරවශය නවත ලබමට පහත පරතධන කත වල එකක කළ හක. <strong>පරතධන කත ආරකතව තබ ගනන</strong>. උදහරණයකස, ඔබට ඒවරණය කර වනතදගතඛන සමඟ ගබඩ කළ හය. recovery_instructions_html: ඔබට කවද ඔබගරකථනයට පරවශය අහවහ, ඔබගමට පරවශය නවත ලබමට පහත පරතධන කත වල එකක කළ හක. <strong>පරතධන කත ආරකතව තබ ගනන</strong>. උදහරණයකස, ඔබට ඒවරණය කර වනතදගතඛන සමඟ ගබඩ කළ හය.
webauthn: ආරකෂණ යත webauthn: ආරකෂණ යත
user_mailer: user_mailer:
@ -1407,19 +1413,17 @@ si:
appeal: අභචනයක ඉදපත කරන appeal: අභචනයක ඉදපත කරන
appeal_description: ය දෂයක බව ඔබ වස කරන නම, ඔබට %{instance}හය මණඩලයට අභචනයක ඉදපත කළ හක. appeal_description: ය දෂයක බව ඔබ වස කරන නම, ඔබට %{instance}හය මණඩලයට අභචනයක ඉදපත කළ හක.
categories: categories:
spam: ආය spam: ආය
violation: අනතරගතය පහත පරජපදශ උලඝනය කරය violation: අනතරගතය පහත පරජපදශ උලඝනය කරය
explanation: explanation:
disable: ඔබට තවදරටත ඔබගම භ කළ නක, නම ඔබගකඩ සහ අන දතත නනසව පවත. ඔබට ඔබග දතතවල උපසථයක ඉලමට, ගකසනසමට හ ඔබගම මකමට හය. disable: ඔබට තවදරටත ඔබගම භ කළ නක, නම ඔබගකඩ සහ අන දතත නනසව පවත. ඔබට ඔබග දතතවල උපසථයක ඉලමට, ගකසනසමට හ ඔබගම මකමට හය.
sensitive: ට, ඔබග උඩගත කරන ලද සයලම මය ගස සලක කර ක-හරහ අනත ඇඟවමකපස සඟවන ඇත. sensitive: ට ඔබ උඩගත කරන සයලම මය ගස සලක අවවදයකපස සඟවන ඇත.
silence: ඔබට තවමත ඔබගම භ කළ හ නමනටමත ඔබව අනගමනය කරන පගලය පමණකම සයකය ඔබග පළ ක දක ඇත අතර, වධ සග වල ඔබව බර කරනය හක. කතත, අන අය තවමත ඔබව අත අනගමනය කළ හක.
suspend: ඔබට තවදරටත ඔබගම භ කළ න අතර, ඔබගකඩ සහ අන දතත තවදරටතරවශ වය නක. දන 30ක පමණ දතත සමණය ඉවත කරන ත ඔබට තවමත ඔබ දතතවල උපසථයක ඉලමට පරනය වය හක, නම ඔබව අතම මගහර යම වමට අපක දතත කපයක රඳව ගන. suspend: ඔබට තවදරටත ඔබගම භ කළ න අතර, ඔබගකඩ සහ අන දතත තවදරටතරවශ වය නක. දන 30ක පමණ දතත සමණය ඉවත කරන ත ඔබට තවමත ඔබ දතතවල උපසථයක ඉලමට පරනය වය හක, නම ඔබව අතම මගහර යම වමට අපක දතත කපයක රඳව ගන.
reason: 'හව:' reason: 'හව:'
statuses: 'උප දකවන ලද පළ ක:'
subject: subject:
delete_statuses: "%{acct} හ ඔබග පළ ක ඉවත කර ඇත" delete_statuses: "%{acct} හ ඔබග ඉවත කර ඇත"
disable: ඔබගම %{acct} කර ඇත disable: ඔබගම %{acct} කර ඇත
mark_statuses_as_sensitive: "%{acct} හ ඔබග පළ කස සලක කර ඇත" mark_statuses_as_sensitive: ඔබග %{acct} ල බව සලක කර ඇත
none: "%{acct} සඳහ අවවදය" none: "%{acct} සඳහ අවවදය"
sensitive: ඔබග %{acct} ලය මට සස සලකය sensitive: ඔබග %{acct} ලය මට සස සලකය
silence: ඔබගම %{acct} ස කර ඇත silence: ඔබගම %{acct} ස කර ඇත
@ -1427,7 +1431,7 @@ si:
title: title:
delete_statuses: ඉවත කර ඇත delete_statuses: ඉවත කර ඇත
disable: ම නචල කර ඇත disable: ම නචල කර ඇත
mark_statuses_as_sensitive: පළ කලක කර ඇත mark_statuses_as_sensitive: බව සලක කර ඇත
none: අවවදයය none: අවවදයය
sensitive: ම ස බව ය ඇත sensitive: ම ස බව ය ඇත
silence: ම ස කර ඇත silence: ම ස කර ඇත

@ -11,7 +11,6 @@ si:
title: කලප. ලබනට න title: කලප. ලබනට න
admin_account_action: admin_account_action:
send_email_notification: පරලකයට ඔවම සමඟ සබඳ පමක ඇත send_email_notification: පරලකයට ඔවම සමඟ සබඳ පමක ඇත
text_html: කලප. ඔබට post syntax භ කළ හක. කලය ඉත කර ගම සඳහ ඔබට අනත ඇඟව</a> <a href="%{path}">කළ හ
type_html: "<strong>%{acct}</strong>සමඟ කළ යරනන" type_html: "<strong>%{acct}</strong>සමඟ කළ යරනන"
types: types:
disable: පරලකයම භ වළකවනන, නම ඔව අනතරගතය මකම හ සඟවනන එප. disable: පරලකයම භ වළකවනන, නම ඔව අනතරගතය මකම හ සඟවනන එප.
@ -23,7 +22,7 @@ si:
ends_at: කලප. මම අවසදනය සවයයව පරකශනය ක ඉවත වන ඇත ends_at: කලප. මම අවසදනය සවයයව පරකශනය ක ඉවත වන ඇත
scheduled_at: දනය වහම පරකශයට පතමට හව තබන scheduled_at: දනය වහම පරකශයට පතමට හව තබන
starts_at: කලප. ඔබගදනය නත කල පරසයකට බ ඇතනම starts_at: කලප. ඔබගදනය නත කල පරසයකට බ ඇතනම
text: ඔබට post syntax භ කළ හක. කරකර පරලකයරය මත නදනය ලබ ගන ඉඩ ගලකමත වන text: ඔබට පද ගළපමට හය. කරකර නදනය පරලකයරය ඉඩ කතරම ඇහනව ද පබඳවලකමත වන
appeal: appeal:
text: ඔබට වරජනයකට අභචන කළ හ එක වරක පමණ text: ඔබට වරජනයකට අභචන කළ හ එක වරක පමණ
defaults: defaults:
@ -120,7 +119,7 @@ si:
text: ම තරණය ආපසරවය ය මන කරන text: ම තරණය ආපසරවය ය මන කරන
defaults: defaults:
autofollow: ඔබගම අනගමනය කමට ආරධන කරන autofollow: ඔබගම අනගමනය කමට ආරධන කරන
avatar: අවත avatar: කඩ ඡ
chosen_languages: රන chosen_languages: රන
confirm_new_password: නව මරපදය තහව කරන confirm_new_password: නව මරපදය තහව කරන
confirm_password: රපදය තහව කරන confirm_password: රපදය තහව කරන
@ -148,7 +147,6 @@ si:
setting_default_privacy: රහසයත setting_default_privacy: රහසයත
setting_default_sensitive: මවට මය ස බව සලක කරන setting_default_sensitive: මවට මය ස බව සලක කරන
setting_delete_modal: යකමට පර ඒ ගන වමසන setting_delete_modal: යකමට පර ඒ ගන වමසන
setting_disable_swiping: වය චලන අකය කරන
setting_display_media: ය සදරශකය setting_display_media: ය සදරශකය
setting_display_media_default: රන setting_display_media_default: රන
setting_display_media_hide_all: යලල සඟවන setting_display_media_hide_all: යලල සඟවන
@ -156,7 +154,7 @@ si:
setting_expand_spoilers: අනතරගත අවවද සහත ලමවට දගහර setting_expand_spoilers: අනතරගත අවවද සහත ලමවට දගහර
setting_hide_network: ඔබගලය සඟවන setting_hide_network: ඔබගලය සඟවන
setting_reduce_motion: සජකරණවල චලනය අඩ කරන setting_reduce_motion: සජකරණවල චලනය අඩ කරන
setting_system_font_ui: පදධතරන කරන setting_system_font_ui: පදධතරන කරන
setting_theme: අඩව setting_theme: අඩව
setting_trends: අද පරවණතවන setting_trends: අද පරවණතවන
setting_unfollow_modal: යම අනගමනය නමට පර තහවදය පවන setting_unfollow_modal: යම අනගමනය නමට පර තහවදය පවන
@ -175,8 +173,8 @@ si:
name: ගය name: ගය
filters: filters:
actions: actions:
hide: සමණයම සඟවන hide: මනම සඟවන
warn: නත ඇඟවමක සමඟ සඟවන warn: වවදයක සහතව සඟවන
form_admin_settings: form_admin_settings:
custom_css: අභ CSS custom_css: අභ CSS
profile_directory: කඩ නවලය සබල කරන profile_directory: කඩ නවලය සබල කරන
@ -184,8 +182,6 @@ si:
site_title: යකය නම site_title: යකය නම
theme: රන theme: රන
interactions: interactions:
must_be_follower: අනකයවන අයග අවහර කරන
must_be_following: ඔබ අනගමනය නකරන පගලය අවහර කරන
must_be_following_dm: ඔබ නදන අයග පණඩ ලම අවහර කරන must_be_following_dm: ඔබ නදන අයග පණඩ ලම අවහර කරන
invite: invite:
comment: අදහස comment: අදහස
@ -201,12 +197,9 @@ si:
notification_emails: notification_emails:
digest: digest ඊම යවන digest: digest ඊම යවන
favourite: යම ඔබගයට පය කළ favourite: යම ඔබගයට පය කළ
follow: කවහර ඔබව අනගමනය කළ follow: යම ඔබව අනගමනය කළ
follow_request: කවහර ඔබව අනගමනය කරන ලස ඉල mention: යම ඔබව සඳහන කළ
mention: කවහර ඔබව සඳහන කළ report: නව වවක කර ඇත
pending_account: නව ගම සමචනය අවශයය
report: නව වවක ඉදපත
trending_tag: නව පරවණතවයට සමචනයක අවශය ව
rule: rule:
text: text:
tag: tag:

@ -6,32 +6,60 @@ describe RelationshipFilter do
let(:account) { Fabricate(:account) } let(:account) { Fabricate(:account) }
describe '#results' do describe '#results' do
context 'when default params are used' do let(:account_of_7_months) { Fabricate(:account_stat, statuses_count: 1, last_status_at: 7.months.ago).account }
subject do let(:account_of_1_day) { Fabricate(:account_stat, statuses_count: 1, last_status_at: 1.day.ago).account }
described_class.new(account, 'order' => 'active').results let(:account_of_3_days) { Fabricate(:account_stat, statuses_count: 1, last_status_at: 3.days.ago).account }
end let(:silent_account) { Fabricate(:account_stat, statuses_count: 0, last_status_at: nil).account }
before do
account.follow!(account_of_7_months)
account.follow!(account_of_1_day)
account.follow!(account_of_3_days)
account.follow!(silent_account)
end
before do context 'when ordering by last activity' do
add_following_account_with(last_status_at: 7.days.ago) context 'when not filtering' do
add_following_account_with(last_status_at: 1.day.ago) subject do
add_following_account_with(last_status_at: 3.days.ago) described_class.new(account, 'order' => 'active').results
end
it 'returns followings ordered by last activity' do
expect(subject).to eq [account_of_1_day, account_of_3_days, account_of_7_months, silent_account]
end
end end
it 'returns followings ordered by last activity' do context 'when filtering for dormant accounts' do
expected_result = account.following.eager_load(:account_stat).reorder(nil).by_recent_status subject do
described_class.new(account, 'order' => 'active', 'activity' => 'dormant').results
end
expect(subject).to eq expected_result it 'returns dormant followings ordered by last activity' do
expect(subject).to eq [account_of_7_months, silent_account]
end
end end
end end
end
def add_following_account_with(last_status_at:) context 'when ordering by account creation' do
following_account = Fabricate(:account) context 'when not filtering' do
Fabricate(:account_stat, account: following_account, subject do
last_status_at: last_status_at, described_class.new(account, 'order' => 'recent').results
statuses_count: 1, end
following_count: 0,
followers_count: 0) it 'returns followings ordered by last account creation' do
Fabricate(:follow, account: account, target_account: following_account).account expect(subject).to eq [silent_account, account_of_3_days, account_of_1_day, account_of_7_months]
end
end
context 'when filtering for dormant accounts' do
subject do
described_class.new(account, 'order' => 'recent', 'activity' => 'dormant').results
end
it 'returns dormant followings ordered by last activity' do
expect(subject).to eq [silent_account, account_of_7_months]
end
end
end
end end
end end

@ -7,7 +7,7 @@ describe ActivityPub::NoteSerializer do
let!(:account) { Fabricate(:account) } let!(:account) { Fabricate(:account) }
let!(:other) { Fabricate(:account) } let!(:other) { Fabricate(:account) }
let!(:parent) { Fabricate(:status, account: account, visibility: :public) } let!(:parent) { Fabricate(:status, account: account, visibility: :public, language: 'zh-TW') }
let!(:reply_by_account_first) { Fabricate(:status, account: account, thread: parent, visibility: :public) } let!(:reply_by_account_first) { Fabricate(:status, account: account, thread: parent, visibility: :public) }
let!(:reply_by_account_next) { Fabricate(:status, account: account, thread: parent, visibility: :public) } let!(:reply_by_account_next) { Fabricate(:status, account: account, thread: parent, visibility: :public) }
let!(:reply_by_other_first) { Fabricate(:status, account: other, thread: parent, visibility: :public) } let!(:reply_by_other_first) { Fabricate(:status, account: other, thread: parent, visibility: :public) }
@ -18,8 +18,15 @@ describe ActivityPub::NoteSerializer do
@serialization = ActiveModelSerializers::SerializableResource.new(parent, serializer: described_class, adapter: ActivityPub::Adapter) @serialization = ActiveModelSerializers::SerializableResource.new(parent, serializer: described_class, adapter: ActivityPub::Adapter)
end end
it 'has a Note type' do it 'has the expected shape' do
expect(subject['type']).to eql('Note') expect(subject).to include({
'@context' => include('https://www.w3.org/ns/activitystreams'),
'type' => 'Note',
'attributedTo' => ActivityPub::TagManager.instance.uri_for(account),
'contentMap' => include({
'zh-TW' => a_kind_of(String),
}),
})
end end
it 'has a replies collection' do it 'has a replies collection' do

@ -1825,9 +1825,9 @@
integrity sha512-tOQQBVH8LsUpGXqDnk+kaOGVsgZ8maHAhEiw3Git3p88q+c0Slgu47HuDnL6sVxeCfz24zbq7dOjsVYDiTpDIA== integrity sha512-tOQQBVH8LsUpGXqDnk+kaOGVsgZ8maHAhEiw3Git3p88q+c0Slgu47HuDnL6sVxeCfz24zbq7dOjsVYDiTpDIA==
"@reduxjs/toolkit@^1.9.5": "@reduxjs/toolkit@^1.9.5":
version "1.9.6" version "1.9.7"
resolved "https://registry.yarnpkg.com/@reduxjs/toolkit/-/toolkit-1.9.6.tgz#fc968b45fe5b17ff90932c4556960d9c1078365a" resolved "https://registry.yarnpkg.com/@reduxjs/toolkit/-/toolkit-1.9.7.tgz#7fc07c0b0ebec52043f8cb43510cf346405f78a6"
integrity sha512-Gc4ikl90ORF4viIdAkY06JNUnODjKfGxZRwATM30EdHq8hLSVoSrwXne5dd739yenP5bJxAX7tLuOWK5RPGtrw== integrity sha512-t7v8ZPxhhKgOKtU+uyJT13lu4vL7az5aFi4IdoDs/eS548edn2M8Ik9h8fxgvMjGoAUVFSt6ZC1P5cWmQ014QQ==
dependencies: dependencies:
immer "^9.0.21" immer "^9.0.21"
redux "^4.2.1" redux "^4.2.1"

Loading…
Cancel
Save