From d80a819fc60b530042784cc3f20cd3041ee0a996 Mon Sep 17 00:00:00 2001 From: Claire Date: Fri, 29 Sep 2023 15:51:36 +0200 Subject: [PATCH 01/12] Fix explore prompt appearing because of posts being received out of order (#27211) --- .../mastodon/features/home_timeline/index.jsx | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/app/javascript/mastodon/features/home_timeline/index.jsx b/app/javascript/mastodon/features/home_timeline/index.jsx index 63d373b9a9..93f9376285 100644 --- a/app/javascript/mastodon/features/home_timeline/index.jsx +++ b/app/javascript/mastodon/features/home_timeline/index.jsx @@ -39,8 +39,17 @@ const getHomeFeedSpeed = createSelector([ ], (statusIds, pendingStatusIds, statusMap) => { const recentStatusIds = pendingStatusIds.size > 0 ? pendingStatusIds : statusIds; const statuses = recentStatusIds.filter(id => id !== null).map(id => statusMap.get(id)).filter(status => status?.get('account') !== me).take(20); - const oldest = new Date(statuses.getIn([statuses.size - 1, 'created_at'], 0)); - const newest = new Date(statuses.getIn([0, 'created_at'], 0)); + + if (statuses.isEmpty()) { + return { + gap: 0, + newest: new Date(0), + }; + } + + const datetimes = statuses.map(status => status.get('created_at', 0)); + const oldest = new Date(datetimes.min()); + const newest = new Date(datetimes.max()); const averageGap = (newest - oldest) / (1000 * (statuses.size + 1)); // Average gap between posts on first page in seconds return { From 829be02abe00783ffc82292592bc855670a14f44 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 2 Oct 2023 13:16:02 +0200 Subject: [PATCH 02/12] Update Node.js to v20.8 (#27240) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 4d397e3bdf..8e40091add 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,6 @@ # syntax=docker/dockerfile:1.4 # This needs to be bookworm-slim because the Ruby image is built on bookworm-slim -ARG NODE_VERSION="20.7-bookworm-slim" +ARG NODE_VERSION="20.8-bookworm-slim" FROM ghcr.io/moritzheiber/ruby-jemalloc:3.2.2-slim as ruby FROM node:${NODE_VERSION} as build From 73a92f9e7acdd5fda99549384c24c4038fe6bf83 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 2 Oct 2023 13:17:55 +0200 Subject: [PATCH 03/12] Update DefinitelyTyped types (non-major) (#27239) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/yarn.lock b/yarn.lock index 19436669f3..5ff66346a0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2361,9 +2361,9 @@ integrity sha512-O397rnSS9iQI4OirieAtsDqvCj4+3eY1J+EPdNTKuHuRWIfUoGyzX294o8C4KJYaLqgSrd2o60c5EqCU8Zv02g== "@types/prop-types@*", "@types/prop-types@^15.7.5": - version "15.7.7" - resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.7.tgz#f9361f7b87fd5d8188b2c998db0a1f47e9fb391a" - integrity sha512-FbtmBWCcSa2J4zL781Zf1p5YUBXQomPEcep9QZCfRfQgTxz3pJWiDFLebohZ9fFntX5ibzOkSsrJ0TEew8cAog== + version "15.7.8" + resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.8.tgz#805eae6e8f41bd19e88917d2ea200dc992f405d3" + integrity sha512-kMpQpfZKSCBqltAJwskgePRaYRFukDkm1oItcAbC3gNELR20XIBcN9VRgg4+m8DKsTfkWeA4m4Imp4DDuWy7FQ== "@types/punycode@^2.1.0": version "2.1.0" @@ -2381,9 +2381,9 @@ integrity sha512-u95svzDlTysU5xecFNTgfFG5RUWu1A9P0VzgpcIiGZA9iraHOdSzcxMxQ55DyeRaGCSxQi7LxXDI4rzq/MYfdg== "@types/range-parser@*": - version "1.2.4" - resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.4.tgz#cd667bcfdd025213aafb7ca5915a932590acdcdc" - integrity sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw== + version "1.2.5" + resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.5.tgz#38bd1733ae299620771bd414837ade2e57757498" + integrity sha512-xrO9OoVPqFuYyR/loIHjnbvvyRZREYKLjxV4+dY6v3FQR3stQ9ZxIGkaclF7YhI9hfjpuTbu14hZEy94qKLtOA== "@types/react-dom@^18.0.0", "@types/react-dom@^18.2.4": version "18.2.8" @@ -2488,9 +2488,9 @@ "@types/react" "*" "@types/react@*", "@types/react@16 || 17 || 18", "@types/react@>=16.9.11", "@types/react@^18.0.26", "@types/react@^18.2.7": - version "18.2.23" - resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.23.tgz#60ad6cf4895e93bed858db0e03bcc4ff97d0410e" - integrity sha512-qHLW6n1q2+7KyBEYnrZpcsAmU/iiCh9WGCKgXvMxx89+TYdJWRjZohVIo9XTcoLhfX3+/hP0Pbulu3bCZQ9PSA== + version "18.2.24" + resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.24.tgz#3c7d68c02e0205a472f04abe4a0c1df35d995c05" + integrity sha512-Ee0Jt4sbJxMu1iDcetZEIKQr99J1Zfb6D4F3qfUWoR1JpInkY1Wdg4WwCyBjL257D0+jGqSl1twBjV8iCaC0Aw== dependencies: "@types/prop-types" "*" "@types/scheduler" "*" From bad1629dcdf16797449ed2b60e600dd79c432d9e Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 2 Oct 2023 13:18:06 +0200 Subject: [PATCH 04/12] Update dependency core-js to v3.33.0 (#27237) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 5ff66346a0..cf7e7448ed 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4350,9 +4350,9 @@ core-js@^2.5.0: integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== core-js@^3.30.2: - version "3.32.2" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.32.2.tgz#172fb5949ef468f93b4be7841af6ab1f21992db7" - integrity sha512-pxXSw1mYZPDGvTQqEc5vgIb83jGQKFGYWY76z4a7weZXUolw3G+OvpZqSRcfYOoOVUQJYEPsWeQK8pKEnUtWxQ== + version "3.33.0" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.33.0.tgz#70366dbf737134761edb017990cf5ce6c6369c40" + integrity sha512-HoZr92+ZjFEKar5HS6MC776gYslNOKHt75mEBKWKnPeFDpZ6nH5OeF3S6HFT1mUAUZKrzkez05VboaX8myjSuw== core-util-is@~1.0.0: version "1.0.3" From c2f13769cde257f1b0dcfddfbc6d553741d4b68b Mon Sep 17 00:00:00 2001 From: Jake Anto <64896514+jake-anto@users.noreply.github.com> Date: Mon, 2 Oct 2023 16:48:16 +0530 Subject: [PATCH 05/12] Add PWA shortcut to `/explore` page (#27235) --- app/serializers/manifest_serializer.rb | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/serializers/manifest_serializer.rb b/app/serializers/manifest_serializer.rb index 48f3aa7a6a..aa7f7ce5d8 100644 --- a/app/serializers/manifest_serializer.rb +++ b/app/serializers/manifest_serializer.rb @@ -84,6 +84,10 @@ class ManifestSerializer < ActiveModel::Serializer name: 'Notifications', url: '/notifications', }, + { + name: 'Explore', + url: '/explore', + }, ] end end From 5f2d494f0d072abc5360b170076d13b87aa150f5 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 2 Oct 2023 13:18:29 +0200 Subject: [PATCH 06/12] Update dependency react-redux to v8.1.3 (#27229) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- yarn.lock | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/yarn.lock b/yarn.lock index cf7e7448ed..4a14c22ce2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1096,14 +1096,14 @@ dependencies: regenerator-runtime "^0.12.0" -"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.0", "@babel/runtime@^7.12.1", "@babel/runtime@^7.12.5", "@babel/runtime@^7.13.8", "@babel/runtime@^7.18.3", "@babel/runtime@^7.2.0", "@babel/runtime@^7.20.13", "@babel/runtime@^7.20.7", "@babel/runtime@^7.22.3", "@babel/runtime@^7.3.1", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7": +"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.13.8", "@babel/runtime@^7.18.3", "@babel/runtime@^7.2.0", "@babel/runtime@^7.20.13", "@babel/runtime@^7.20.7", "@babel/runtime@^7.22.3", "@babel/runtime@^7.3.1", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7": version "7.22.15" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.22.15.tgz#38f46494ccf6cf020bd4eed7124b425e83e523b8" integrity sha512-T0O+aa+4w0u06iNmapipJXMV4HoUir03hpx3/YqXXhu9xim3w+dVphjFWl1OH8NbZHw5Lbm9k45drDkgq2VNNA== dependencies: regenerator-runtime "^0.14.0" -"@babel/runtime@^7.9.2": +"@babel/runtime@^7.12.1", "@babel/runtime@^7.9.2": version "7.23.1" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.23.1.tgz#72741dc4d413338a91dcb044a86f3c0bc402646d" integrity sha512-hC2v6p8ZSI/W0HUzh3V8C5g+NwSKzKPtJwSpTjwl0o297GP9+ZLQSkdvHz46CM3LqyoXxq+5G9komY+eSqSO0g== @@ -10144,9 +10144,9 @@ react-redux-loading-bar@^5.0.4: react-lifecycles-compat "^3.0.4" react-redux@^8.0.4: - version "8.1.2" - resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-8.1.2.tgz#9076bbc6b60f746659ad6d51cb05de9c5e1e9188" - integrity sha512-xJKYI189VwfsFc4CJvHqHlDrzyFTY/3vZACbE+rr/zQ34Xx1wQfB4OTOSeOSNrF6BDVe8OOdxIrAnMGXA3ggfw== + version "8.1.3" + resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-8.1.3.tgz#4fdc0462d0acb59af29a13c27ffef6f49ab4df46" + integrity sha512-n0ZrutD7DaX/j9VscF+uTALI3oUPa/pO4Z3soOBIjuRn/FzVu6aehhysxZCLi6y7duMf52WNZGMl7CtuK5EnRw== dependencies: "@babel/runtime" "^7.12.1" "@types/hoist-non-react-statics" "^3.3.1" From f68d5402711b81744b6660e750c68de421e863f1 Mon Sep 17 00:00:00 2001 From: Emelia Smith Date: Mon, 2 Oct 2023 13:21:43 +0200 Subject: [PATCH 07/12] Fix websocket connections being incorrectly decremented twice on errors (#27238) --- streaming/index.js | 33 +++++++++++++++++++++------------ 1 file changed, 21 insertions(+), 12 deletions(-) diff --git a/streaming/index.js b/streaming/index.js index 8015c6815a..3565ed2783 100644 --- a/streaming/index.js +++ b/streaming/index.js @@ -1386,19 +1386,21 @@ const startServer = async () => { }; wss.on('connection', (ws, req) => { - const location = url.parse(req.url, true); + // Note: url.parse could throw, which would terminate the connection, so we + // increment the connected clients metric straight away when we establish + // the connection, without waiting: + connectedClients.labels({ type: 'websocket' }).inc(); + // Setup request properties: req.requestId = uuid.v4(); req.remoteAddress = ws._socket.remoteAddress; + // Setup connection keep-alive state: ws.isAlive = true; - ws.on('pong', () => { ws.isAlive = true; }); - connectedClients.labels({ type: 'websocket' }).inc(); - /** * @type {WebSocketSession} */ @@ -1408,27 +1410,31 @@ const startServer = async () => { subscriptions: {}, }; - const onEnd = () => { + ws.on('close', function onWebsocketClose() { const subscriptions = Object.keys(session.subscriptions); subscriptions.forEach(channelIds => { removeSubscription(session.subscriptions, channelIds.split(';'), req) }); + // Decrement the metrics for connected clients: + connectedClients.labels({ type: 'websocket' }).dec(); + // ensure garbage collection: session.socket = null; session.request = null; session.subscriptions = {}; + }); - connectedClients.labels({ type: 'websocket' }).dec(); - }; - - ws.on('close', onEnd); - ws.on('error', onEnd); + // Note: immediately after the `error` event is emitted, the `close` event + // is emitted. As such, all we need to do is log the error here. + ws.on('error', (err) => { + log.error('websocket', err.toString()); + }); ws.on('message', (data, isBinary) => { if (isBinary) { - log.warn('socket', 'Received binary data, closing connection'); + log.warn('websocket', 'Received binary data, closing connection'); ws.close(1003, 'The mastodon streaming server does not support binary messages'); return; } @@ -1451,7 +1457,10 @@ const startServer = async () => { subscribeWebsocketToSystemChannel(session); - if (location.query.stream) { + // Parse the URL for the connection arguments (if supplied), url.parse can throw: + const location = req.url && url.parse(req.url, true); + + if (location && location.query.stream) { subscribeWebsocketToChannel(session, firstParam(location.query.stream), location.query); } }); From ee866ec0e008c3ea0b98093202f1866b7784499d Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 2 Oct 2023 13:35:29 +0200 Subject: [PATCH 08/12] New Crowdin Translations (automated) (#27220) Co-authored-by: GitHub Actions --- app/javascript/mastodon/locales/fa.json | 2 +- app/javascript/mastodon/locales/fi.json | 24 ++-- app/javascript/mastodon/locales/fr-QC.json | 2 +- app/javascript/mastodon/locales/ja.json | 16 +-- app/javascript/mastodon/locales/lv.json | 30 ++--- app/javascript/mastodon/locales/sk.json | 109 ++++++++++++------- app/javascript/mastodon/locales/sr-Latn.json | 2 +- app/javascript/mastodon/locales/sr.json | 2 +- config/locales/doorkeeper.fa.yml | 2 + config/locales/doorkeeper.fi.yml | 2 +- config/locales/fi.yml | 34 +++--- config/locales/ja.yml | 4 +- config/locales/simple_form.fi.yml | 6 +- 13 files changed, 132 insertions(+), 103 deletions(-) diff --git a/app/javascript/mastodon/locales/fa.json b/app/javascript/mastodon/locales/fa.json index c1b067cff8..f4a2e09e73 100644 --- a/app/javascript/mastodon/locales/fa.json +++ b/app/javascript/mastodon/locales/fa.json @@ -338,7 +338,7 @@ "keyboard_shortcuts.column": "برای تمرکز روی یک فرسته در یکی از ستون‌ها", "keyboard_shortcuts.compose": "تمرکز روی محیط نوشتن", "keyboard_shortcuts.description": "توضیح", - "keyboard_shortcuts.direct": "باز کردن ستون اشاره‌های خصوصی", + "keyboard_shortcuts.direct": "برای گشودن ستون اشاره‌های خصوصی", "keyboard_shortcuts.down": "پایین بردن در سیاهه", "keyboard_shortcuts.enter": "گشودن فرسته", "keyboard_shortcuts.favourite": "پسندیدن فرسته", diff --git a/app/javascript/mastodon/locales/fi.json b/app/javascript/mastodon/locales/fi.json index 094b7d3b36..4c920b038f 100644 --- a/app/javascript/mastodon/locales/fi.json +++ b/app/javascript/mastodon/locales/fi.json @@ -206,7 +206,7 @@ "dismissable_banner.explore_tags": "Nämä sosiaalisen verkon aihetunnisteet keräävät tänään eniten huomiota. Useimman käyttäjän käyttämät aihetunnisteet nousevat listauksessa korkeimmalle.", "dismissable_banner.public_timeline": "Nämä ovat viimeisimpiä julkaisuja sosiaalisen verkon käyttäjiltä, joita seurataan palvelimella {domain}.", "embed.instructions": "Upota julkaisu verkkosivullesi kopioimalla alla oleva koodi.", - "embed.preview": "Se tulee näyttämään tältä:", + "embed.preview": "Tältä se näyttää:", "emoji_button.activity": "Aktiviteetit", "emoji_button.clear": "Tyhjennä", "emoji_button.custom": "Mukautetut", @@ -226,7 +226,7 @@ "empty_column.account_timeline": "Ei viestejä täällä.", "empty_column.account_unavailable": "Profiilia ei löydy", "empty_column.blocks": "Et ole estänyt käyttäjiä.", - "empty_column.bookmarked_statuses": "Et ole vielä lisännyt viestejä kirjanmerkkeihisi. Kun lisäät yhden, se näkyy tässä.", + "empty_column.bookmarked_statuses": "Et ole vielä lisännyt julkaisuja kirjanmerkkeihisi. Kun lisäät yhden, se näkyy tässä.", "empty_column.community": "Paikallinen aikajana on tyhjä. Kirjoita jotain julkista, niin homma lähtee käyntiin!", "empty_column.direct": "Yksityisiä mainintoja ei vielä ole. Jos lähetät tai sinulle lähetetään sellaisia, näet ne täällä.", "empty_column.domain_blocks": "Palveluita ei ole vielä estetty.", @@ -314,17 +314,17 @@ "home.pending_critical_update.link": "Tutustu päivityssisältöihin", "home.pending_critical_update.title": "Kriittinen tietoturvapäivitys saatavilla!", "home.show_announcements": "Näytä tiedotteet", - "interaction_modal.description.favourite": "Mastodon-tilillä voit lisätä julkaisun suosikkeihisi osoittaaksesi kirjoittajalle arvostavasi sitä ja tallentaaksesi sen tulevaa käyttöä varten.", + "interaction_modal.description.favourite": "Mastodon-tilillä voit lisätä tämän julkaisun suosikkeihisi osoittaaksesi kirjoittajalle arvostavasi sitä ja tallentaaksesi sen tulevaa käyttöä varten.", "interaction_modal.description.follow": "Mastodon-tilillä voit seurata käyttäjää {name} saadaksesi hänen julkaisunsa kotisyötteeseesi.", "interaction_modal.description.reblog": "Mastodon-tilillä voit tehostaa tätä julkaisua jakaaksesi sen seuraajiesi kanssa.", "interaction_modal.description.reply": "Mastodon-tilillä voit vastata tähän julkaisuun.", - "interaction_modal.login.action": "Palaa aloitussivulle", - "interaction_modal.login.prompt": "Kotipalvelimesi verkkotunnus (kuten mastodon.social)", + "interaction_modal.login.action": "Siirry kotiin", + "interaction_modal.login.prompt": "Kotipalvelimesi verkkotunnus, kuten mastodon.social", "interaction_modal.no_account_yet": "Etkö ole vielä Mastodonissa?", "interaction_modal.on_another_server": "Toisella palvelimella", "interaction_modal.on_this_server": "Tällä palvelimella", "interaction_modal.sign_in": "Et ole kirjautunut tälle palvelimelle. Millä palvelimella tilisi sijaitsee?", - "interaction_modal.sign_in_hint": "Vihje: Se on sama verkkosivusto, jossa loit tilisi. Jos et muista, etsi tervetulosähköpostia saapuneista viesteistäsi. Voit myös syöttää koko käyttäjätunnuksesi! (Esimerkki: @Mastodon@Mastodon.social)", + "interaction_modal.sign_in_hint": "Vihje: Se on sama verkkosivusto, jolle rekisteröidyit. Jos et muista, etsi tervetulosähköposti saapuneista viesteistäsi. Voit myös syöttää koko käyttäjätunnuksesi! (Esimerkki: @Mastodon@Mastodon.social)", "interaction_modal.title.favourite": "Lisää käyttäjän {name} julkaisu suosikkeihin", "interaction_modal.title.follow": "Seuraa käyttäjää {name}", "interaction_modal.title.reblog": "Tehosta käyttäjän {name} julkaisua", @@ -473,7 +473,7 @@ "onboarding.action.back": "Palaa takaisin", "onboarding.actions.back": "Palaa takaisin", "onboarding.actions.go_to_explore": "Siirry suosituimpien aiheiden syötteeseen", - "onboarding.actions.go_to_home": "Siirry kotisyötteeseen", + "onboarding.actions.go_to_home": "Siirry kotisyötteeseeni", "onboarding.compose.template": "Tervehdys #Mastodon!", "onboarding.follows.empty": "Valitettavasti tuloksia ei voida näyttää juuri nyt. Voit kokeilla hakua tai selata tutustumissivua löytääksesi seurattavaa, tai yrittää myöhemmin uudelleen.", "onboarding.follows.lead": "Kokoat oman kotisyötteesi itse. Mitä enemmän ihmisiä seuraat, sitä aktiivisempi ja kiinnostavampi syöte on. Nämä profiilit voivat olla alkuun hyvä lähtökohta — voit aina lopettaa niiden seuraamisen myöhemmin!", @@ -618,10 +618,10 @@ "status.admin_domain": "Avaa palvelimen {domain} valvontanäkymä", "status.admin_status": "Avaa julkaisu valvontanäkymässä", "status.block": "Estä @{name}", - "status.bookmark": "Tallenna kirjanmerkki", + "status.bookmark": "Lisää kirjanmerkki", "status.cancel_reblog_private": "Peru tehostus", "status.cannot_reblog": "Tätä julkaisua ei voi tehostaa", - "status.copy": "Kopioi linkki julkaisuun", + "status.copy": "Kopioi julkaisun linkki", "status.delete": "Poista", "status.detailed_status": "Yksityiskohtainen keskustelunäkymä", "status.direct": "Mainitse @{name} yksityisesti", @@ -662,9 +662,9 @@ "status.share": "Jaa", "status.show_filter_reason": "Näytä joka tapauksessa", "status.show_less": "Näytä vähemmän", - "status.show_less_all": "Näytä vähemmän kaikista", + "status.show_less_all": "Näytä kaikista vähemmän", "status.show_more": "Näytä lisää", - "status.show_more_all": "Näytä lisää kaikista", + "status.show_more_all": "Näytä kaikista enemmän", "status.show_original": "Näytä alkuperäinen", "status.title.with_attachments": "{user} liitti {attachmentCount, plural, one {{attachmentCount} tiedoston} other {{attachmentCount} tiedostoa}}", "status.translate": "Käännä", @@ -715,7 +715,7 @@ "upload_modal.preview_label": "Esikatselu ({ratio})", "upload_progress.label": "Ladataan...", "upload_progress.processing": "Käsitellään…", - "username.taken": "Kyseinen käyttäjätunnus on jo käytössä. Kokeile eri tunnusta", + "username.taken": "Käyttäjätunnus on jo varattu. Kokeile toista", "video.close": "Sulje video", "video.download": "Lataa tiedosto", "video.exit_fullscreen": "Poistu koko näytön tilasta", diff --git a/app/javascript/mastodon/locales/fr-QC.json b/app/javascript/mastodon/locales/fr-QC.json index 4da7477dca..16a18048b4 100644 --- a/app/javascript/mastodon/locales/fr-QC.json +++ b/app/javascript/mastodon/locales/fr-QC.json @@ -308,7 +308,7 @@ "home.column_settings.show_reblogs": "Afficher boosts", "home.column_settings.show_replies": "Afficher réponses", "home.explore_prompt.body": "Votre fil d'actualité aura un mélange de messages depuis les hashtags que vous avez choisi de suivre, les personnes que vous avez choisi de suivre, et les messages qu'ils boostent. Si ça vous semble trop calme à votre goût, n’hésitez pas à :", - "home.explore_prompt.title": "C'est chez vous dans Mastadon.", + "home.explore_prompt.title": "C'est votre page d'accueil dans Mastodon.", "home.hide_announcements": "Masquer les annonces", "home.pending_critical_update.body": "Veuillez mettre à jour votre serveur Mastodon dès que possible !", "home.pending_critical_update.link": "Voir les mises à jour", diff --git a/app/javascript/mastodon/locales/ja.json b/app/javascript/mastodon/locales/ja.json index cfba6db93f..0bf0a96a27 100644 --- a/app/javascript/mastodon/locales/ja.json +++ b/app/javascript/mastodon/locales/ja.json @@ -1,13 +1,13 @@ { "about.blocks": "制限中のサーバー", "about.contact": "連絡先", - "about.disclaimer": "Mastodonは自由なオープンソースソフトウェアでMastodon gGmbHの商標です。", - "about.domain_blocks.no_reason_available": "制限理由", - "about.domain_blocks.preamble": "Mastodonでは連合先のどのようなサーバーのユーザーとも交流できます。ただし次のサーバーには例外が設定されています。", + "about.disclaimer": "Mastodonは自由なオープンソースソフトウェアであり、Mastodon gGmbHの商標です。", + "about.domain_blocks.no_reason_available": "理由未記載", + "about.domain_blocks.preamble": "Mastodonでは原則的にあらゆるサーバー同士で交流したり、互いの投稿を読んだりできますが、当サーバーでは例外的に次のような制限を設けています。", "about.domain_blocks.silenced.explanation": "このサーバーのプロフィールやコンテンツは、明示的に検索したり、フォローでオプトインしない限り、通常は表示されません。", "about.domain_blocks.silenced.title": "制限", "about.domain_blocks.suspended.explanation": "これらのサーバーからのデータは処理されず、保存や変換もされません。該当するユーザーとの交流もできません。", - "about.domain_blocks.suspended.title": "停止済み", + "about.domain_blocks.suspended.title": "停止中", "about.not_available": "この情報はこのサーバーでは利用できません。", "about.powered_by": "{mastodon}による分散型ソーシャルメディア", "about.rules": "サーバーのルール", @@ -301,7 +301,7 @@ "hashtag.counter_by_uses_today": "今日{count, plural, other {{counter}件}}", "hashtag.follow": "ハッシュタグをフォローする", "hashtag.unfollow": "ハッシュタグのフォローを解除", - "hashtags.and_other": "+{count, plural, other {#件}}", + "hashtags.and_other": "ほか{count, plural, other {#個}}", "home.actions.go_to_explore": "話題をさがす", "home.actions.go_to_suggestions": "フォローするユーザーを検索", "home.column_settings.basic": "基本設定", @@ -405,7 +405,7 @@ "navigation_bar.discover": "見つける", "navigation_bar.domain_blocks": "ブロックしたドメイン", "navigation_bar.edit_profile": "プロフィールを編集", - "navigation_bar.explore": "エクスプローラー", + "navigation_bar.explore": "探索する", "navigation_bar.favourites": "お気に入り", "navigation_bar.filters": "フィルター設定", "navigation_bar.follow_requests": "フォローリクエスト", @@ -424,7 +424,7 @@ "not_signed_in_indicator.not_signed_in": "この機能を使うにはログインする必要があります。", "notification.admin.report": "{name}さんが{target}さんを通報しました", "notification.admin.sign_up": "{name}さんがサインアップしました", - "notification.favourite": "{name}さんがあなたの投稿をお気に入りに追加しました。", + "notification.favourite": "{name}さんがお気に入りしました", "notification.follow": "{name}さんにフォローされました", "notification.follow_request": "{name}さんがあなたにフォローリクエストしました", "notification.mention": "{name}さんがあなたに返信しました", @@ -518,7 +518,7 @@ "privacy.public.long": "誰でも閲覧可", "privacy.public.short": "公開", "privacy.unlisted.long": "誰でも閲覧可、サイレント", - "privacy.unlisted.short": "未収載", + "privacy.unlisted.short": "非収載", "privacy_policy.last_updated": "{date}に更新", "privacy_policy.title": "プライバシーポリシー", "refresh": "更新", diff --git a/app/javascript/mastodon/locales/lv.json b/app/javascript/mastodon/locales/lv.json index d35418e185..3f2c74cbac 100644 --- a/app/javascript/mastodon/locales/lv.json +++ b/app/javascript/mastodon/locales/lv.json @@ -1,7 +1,7 @@ { "about.blocks": "Moderētie serveri", "about.contact": "Kontakts:", - "about.disclaimer": "Mastodon ir bezmaksas atklātā pirmkoda programmatūra un Mastodon gGmbH preču zīme.", + "about.disclaimer": "Mastodon ir bezmaksas atvērtā koda programmatūra un Mastodon gGmbH preču zīme.", "about.domain_blocks.no_reason_available": "Iemesls nav norādīts", "about.domain_blocks.preamble": "Mastodon parasti ļauj apskatīt saturu un mijiedarboties ar lietotājiem no jebkura cita federācijas servera. Šie ir izņēmumi, kas veikti šajā konkrētajā serverī.", "about.domain_blocks.silenced.explanation": "Parasti tu neredzēsi profilus un saturu no šī servera, ja vien tu nepārprotami izvēlēsies to pārskatīt vai sekot.", @@ -9,11 +9,11 @@ "about.domain_blocks.suspended.explanation": "Nekādi dati no šī servera netiks apstrādāti, uzglabāti vai apmainīti, padarot neiespējamu mijiedarbību vai saziņu ar lietotājiem no šī servera.", "about.domain_blocks.suspended.title": "Apturētie", "about.not_available": "Šī informācija šajā serverī nav bijusi pieejama.", - "about.powered_by": "Decentralizētu sociālo tīklu nodrošina {mastodon}", + "about.powered_by": "Decentralizēto sociālo tīklu nodrošina {mastodon}", "about.rules": "Servera noteikumi", "account.account_note_header": "Piezīme", "account.add_or_remove_from_list": "Pievienot vai Noņemt no sarakstiem", - "account.badges.bot": "Robots", + "account.badges.bot": "Automatizēts", "account.badges.group": "Grupa", "account.block": "Bloķēt @{name}", "account.block_domain": "Bloķēt domēnu {domain}", @@ -102,7 +102,7 @@ "bundle_modal_error.message": "Kaut kas nogāja greizi, ielādējot šo komponenti.", "bundle_modal_error.retry": "Mēģināt vēlreiz", "closed_registrations.other_server_instructions": "Tā kā Mastodon ir decentralizēts, tu vari izveidot kontu citā serverī un joprojām mijiedarboties ar šo.", - "closed_registrations_modal.description": "Pašlaik nav iespējams izveidot kontu domēnā {domain}, taču ņem vērā, ka tev nav nepieciešams konts tieši domēnā {domain}, lai izmantotu Mastodon.", + "closed_registrations_modal.description": "Pašlaik nav iespējams izveidot kontu domēnā {domain}, taču ņem vērā, ka tev nav nepieciešams konts tieši {domain}, lai lietotu Mastodon.", "closed_registrations_modal.find_another_server": "Atrast citu serveri", "closed_registrations_modal.preamble": "Mastodon ir decentralizēts, tāpēc neatkarīgi no tā, kur tu izveido savu kontu, varēsi sekot līdzi un sazināties ar ikvienu šajā serverī. Tu pat vari vadīt to pats!", "closed_registrations_modal.title": "Reģistrēšanās Mastodon", @@ -113,7 +113,7 @@ "column.direct": "Privāti pieminēti", "column.directory": "Pārlūkot profilus", "column.domain_blocks": "Bloķētie domēni", - "column.favourites": "Iecienīti", + "column.favourites": "Iecienītie", "column.firehose": "Tiešraides plūsmas", "column.follow_requests": "Sekošanas pieprasījumi", "column.home": "Sākums", @@ -151,7 +151,7 @@ "compose_form.poll.switch_to_multiple": "Mainīt aptaujas veidu, lai atļautu vairākas izvēles", "compose_form.poll.switch_to_single": "Mainīt aptaujas veidu, lai atļautu vienu izvēli", "compose_form.publish": "Publicēt", - "compose_form.publish_form": "Publicēt", + "compose_form.publish_form": "Jauns ieraksts", "compose_form.publish_loud": "{publish}!", "compose_form.save_changes": "Saglabāt izmaiņas", "compose_form.sensitive.hide": "{count, plural, one {Atzīmēt multividi kā sensitīvu} other {Atzīmēt multivides kā sensitīvas}}", @@ -161,7 +161,7 @@ "compose_form.spoiler.unmarked": "Pievienot satura brīdinājumu", "compose_form.spoiler_placeholder": "Ieraksti savu brīdinājumu šeit", "confirmation_modal.cancel": "Atcelt", - "confirmations.block.block_and_report": "Bloķēt un sūdzēties", + "confirmations.block.block_and_report": "Bloķēt un Ziņot", "confirmations.block.confirm": "Bloķēt", "confirmations.block.message": "Vai tiešām vēlies bloķēt {name}?", "confirmations.cancel_follow_request.confirm": "Atsaukt pieprasījumu", @@ -236,7 +236,7 @@ "empty_column.follow_requests": "Šobrīd tev nav sekošanas pieprasījumu. Kad kāds pieteiksies tev sekot, pieprasījums parādīsies šeit.", "empty_column.followed_tags": "Tu vēl neesi sekojis nevienam tēmturim. Kad to izdarīsi, tie tiks parādīti šeit.", "empty_column.hashtag": "Ar šo tēmturi nekas nav atrodams.", - "empty_column.home": "Tava mājas laika līnija ir tukša! Lai to aizpildītu, pieseko vairāk cilvēkiem. {suggestions}", + "empty_column.home": "Tava mājas laikrinda ir tukša! Lai to aizpildītu, pieseko vairāk cilvēkiem.", "empty_column.list": "Šis saraksts pašreiz ir tukšs. Kad šī saraksta dalībnieki publicēs jaunas ziņas, tās parādīsies šeit.", "empty_column.lists": "Pašreiz tev nav neviena saraksta. Kad tādu izveidosi, tas parādīsies šeit.", "empty_column.mutes": "Neviens lietotājs vēl nav apklusināts.", @@ -244,7 +244,7 @@ "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_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, iespējams, varēsi lietot Mastodon, izmantojot citu pārlūkprogrammu vai lietotni.", + "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_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.report_issue": "Ziņot par problēmu", @@ -476,23 +476,23 @@ "onboarding.actions.go_to_home": "Dodieties uz manu mājas plūsmu", "onboarding.compose.template": "Sveiki, #Mastodon!", "onboarding.follows.empty": "Diemžēl pašlaik nevar parādīt rezultātus. Vari mēģināt izmantot meklēšanu vai pārlūkot izpētes lapu, lai atrastu personas, kurām sekot, vai mēģināt vēlreiz vēlāk.", - "onboarding.follows.lead": "Savu mājas plūsmu veido tu pats. Jo vairāk cilvēkiem tu sekosi, jo aktīvāk un interesantāk viss būs. Šie profili var būt labs sākumpunkts — vēlāk vienmēr varēsi pārstāt sekot!", + "onboarding.follows.lead": "Tava mājas plūsma ir galvenais veids, kā izbaudīt Mastodon. Jo vairāk cilvēku sekosi, jo aktīvāk un interesantāk tas būs. Lai sāktu, šeit ir daži ieteikumi:", "onboarding.follows.title": "Populārs Mastodon", "onboarding.share.lead": "Paziņo citiem, kā viņi tevi var atrast Mastodon!", "onboarding.share.message": "Es esmu {username} #Mastodon! Nāc sekot man uz {url}", "onboarding.share.next_steps": "Iespējamie nākamie soļi:", "onboarding.share.title": "Kopīgo savu profilu", - "onboarding.start.lead": "Tavs jaunais Mastodon konts ir gatavs lietošanai. Lūk, kā tu vari to pilnīgāk izmantot:", - "onboarding.start.skip": "Vai vēlies izlaist tieši uz priekšu?", + "onboarding.start.lead": "Tagad tu esat daļa no Mastodon — unikālas, decentralizētas sociālo mediju platformas, kurā tu, nevis algoritms, veido savu pieredzi. Sāksim darbu šajā jaunajā sociālajā jomā:", + "onboarding.start.skip": "Nav nepieciešama palīdzība darba sākšanai?", "onboarding.start.title": "Tev tas izdevās!", "onboarding.steps.follow_people.body": "Tu pats veido savu plūsmu. Piepildīsim to ar interesantiem cilvēkiem.", "onboarding.steps.follow_people.title": "Sekot {count, plural, one {one person} other {# cilvēkiem}}", - "onboarding.steps.publish_status.body": "Sveicini pasauli.", + "onboarding.steps.publish_status.body": "Sveicini pasauli ar tekstu, fotoattēliem, video, vai aptaujām {emoji}", "onboarding.steps.publish_status.title": "Izveido savu pirmo ziņu", "onboarding.steps.setup_profile.body": "Citi, visticamāk, sazināsies ar tevi, izmantojot aizpildītu profilu.", "onboarding.steps.setup_profile.title": "Pielāgo savu profilu", "onboarding.steps.share_profile.body": "Paziņo saviem draugiem, kā tevi atrast Mastodon!", - "onboarding.steps.share_profile.title": "Kopīgo savu profilu", + "onboarding.steps.share_profile.title": "Kopīgo savu Mastodon profilu", "onboarding.tips.2fa": "Vai zināji? Tu vari aizsargāt savu kontu, konta iestatījumos iestatot divu faktoru autentifikāciju. Tas darbojas ar jebkuru tevis izvēlētu TOTP lietotni, nav nepieciešams tālruņa numurs!", "onboarding.tips.accounts_from_other_servers": "Vai zināji? Tā kā Mastodon ir decentralizēts, daži profili, ar kuriem saskaraties, tiks mitināti citos, nevis tavos serveros. Un tomēr tu varat sazināties ar viņiem nevainojami! Viņu serveris atrodas viņu lietotājvārda otrajā pusē!", "onboarding.tips.migration": "Vai zināji? Ja uzskati, ka {domain} nākotnē nav lieliska servera izvēle, vari pāriet uz citu Mastodon serveri, nezaudējot savus sekotājus. Tu pat vari mitināt savu personīgo serveri!", @@ -518,7 +518,7 @@ "privacy.public.long": "Redzams visiem", "privacy.public.short": "Publiska", "privacy.unlisted.long": "Redzams visiem, bet izslēgts no satura atklāšanas funkcijām", - "privacy.unlisted.short": "Nerindota", + "privacy.unlisted.short": "Neiekļautie", "privacy_policy.last_updated": "Pēdējo reizi atjaunināta {date}", "privacy_policy.title": "Privātuma politika", "refresh": "Atsvaidzināt", diff --git a/app/javascript/mastodon/locales/sk.json b/app/javascript/mastodon/locales/sk.json index bd1252b47f..da12eaa1b5 100644 --- a/app/javascript/mastodon/locales/sk.json +++ b/app/javascript/mastodon/locales/sk.json @@ -12,53 +12,53 @@ "about.powered_by": "Decentralizované sociálne médiá poháňané technológiou {mastodon}", "about.rules": "Pravidlá servera", "account.account_note_header": "Poznámka", - "account.add_or_remove_from_list": "Pridaj do, alebo odober zo zoznamov", + "account.add_or_remove_from_list": "Pridaj alebo odober zo zoznamov", "account.badges.bot": "Bot", "account.badges.group": "Skupina", "account.block": "Blokuj @{name}", - "account.block_domain": "Ukry všetko z {domain}", + "account.block_domain": "Skry všetko z {domain}", "account.block_short": "Blokuj", "account.blocked": "Blokovaný/á", "account.browse_more_on_origin_server": "Prehľadávaj viac na pôvodnom profile", - "account.cancel_follow_request": "Stiahni žiadosť o nasledovanie", - "account.direct": "Spomeň @{name} v súkromí", - "account.disable_notifications": "Prestaň ma oboznamovať, keď má @{name} príspevky", - "account.domain_blocked": "Doména ukrytá", + "account.cancel_follow_request": "Zruš žiadosť o sledovanie", + "account.direct": "Spomeň @{name} súkromne", + "account.disable_notifications": "Prestaň mi oznamovať, keď má @{name} príspevky", + "account.domain_blocked": "Doména skrytá", "account.edit_profile": "Uprav profil", - "account.enable_notifications": "Oboznamuj ma, keď má @{name} príspevky", + "account.enable_notifications": "Oznamuj mi, keď má @{name} príspevky", "account.endorse": "Zobrazuj na profile", "account.featured_tags.last_status_at": "Posledný príspevok dňa {date}", "account.featured_tags.last_status_never": "Žiadne príspevky", "account.featured_tags.title": "Odporúčané hashtagy používateľa {name}", - "account.follow": "Nasleduj", - "account.followers": "Nasledovatelia", + "account.follow": "Sleduj", + "account.followers": "Sledovatelia", "account.followers.empty": "Tohto používateľa ešte nikto nenasleduje.", - "account.followers_counter": "{count, plural, one {{counter} Sledujúci} few {{counter} Sledujúci} many {{counter} Sledujúci} other {{counter} Sledujúci}}", - "account.following": "Nasledujem", + "account.followers_counter": "{count, plural, one {{counter} Sledujúci} few {{counter} Sledujúci} many {{counter} Sledujúcich} other {{counter} Sledujúcich}}", + "account.following": "Sledujem", "account.following_counter": "{count, plural, one {{counter} Sledovaných} other {{counter} Sledujúcich}}", - "account.follows.empty": "Tento používateľ ešte nikoho nenasleduje.", - "account.follows_you": "Nasleduje ťa", + "account.follows.empty": "Tento používateľ ešte nikoho nesleduje.", + "account.follows_you": "Sleduje ťa", "account.go_to_profile": "Prejdi na profil", - "account.hide_reblogs": "Skry vyzdvihnutia od @{name}", + "account.hide_reblogs": "Skry zdieľania od @{name}", "account.in_memoriam": "In Memoriam.", "account.joined_short": "Pridal/a sa", "account.languages": "Zmeniť odoberané jazyky", "account.link_verified_on": "Vlastníctvo tohto odkazu bolo skontrolované {date}", - "account.locked_info": "Stav súkromia pre tento účet je nastavený na zamknutý. Jeho vlastník sám prehodnocuje, kto ho môže sledovať.", + "account.locked_info": "Stav súkromia pre tento účet je nastavený na zamknutý. Jeho vlastník sa sám rozhoduje, kto ho môže sledovať.", "account.media": "Médiá", "account.mention": "Spomeň @{name}", "account.moved_to": "{name} uvádza, že jeho/jej nový účet je teraz:", - "account.mute": "Nevšímaj si @{name}", - "account.mute_notifications_short": "Stíš oboznámenia", - "account.mute_short": "Nevšímaj si", - "account.muted": "Nevšímaný/á", - "account.no_bio": "Nieje uvedený žiadny popis.", + "account.mute": "Stíš @{name}", + "account.mute_notifications_short": "Stíš oznámenia", + "account.mute_short": "Stíš", + "account.muted": "Stíšený", + "account.no_bio": "Nie je uvedený žiadny popis.", "account.open_original_page": "Otvor pôvodnú stránku", "account.posts": "Príspevky", "account.posts_with_replies": "Príspevky a odpovede", "account.report": "Nahlás @{name}", "account.requested": "Čaká na schválenie. Klikni pre zrušenie žiadosti", - "account.requested_follow": "{name} ťa žiada nasledovať", + "account.requested_follow": "{name} ti poslal žiadosť na sledovanie", "account.share": "Zdieľaj @{name} profil", "account.show_reblogs": "Ukáž vyzdvihnutia od @{name}", "account.statuses_counter": "{count, plural, one {{counter} Toot} other {{counter} Toots}}", @@ -84,7 +84,7 @@ "alert.rate_limited.title": "Tempo obmedzené", "alert.unexpected.message": "Vyskytla sa nečakaná chyba.", "alert.unexpected.title": "Ups!", - "announcement.announcement": "Oboznámenie", + "announcement.announcement": "Oznámenie", "attachments_list.unprocessed": "(nespracované)", "audio.hide": "Skry zvuk", "autosuggest_hashtag.per_week": "{count} týždenne", @@ -119,7 +119,7 @@ "column.home": "Domov", "column.lists": "Zoznamy", "column.mutes": "Nevšímaní užívatelia", - "column.notifications": "Oboznámenia", + "column.notifications": "Oznámenia", "column.pins": "Pripnuté príspevky", "column.public": "Federovaná časová os", "column_back_button.label": "Späť", @@ -185,7 +185,7 @@ "confirmations.redraft.message": "Ste si istý, že chcete premazať a prepísať tento príspevok? Jeho nadobudnuté vyzdvihnutia a obľúbenia, ale i odpovede na pôvodný príspevok budú odlúčené.", "confirmations.reply.confirm": "Odpovedz", "confirmations.reply.message": "Odpovedaním akurát teraz prepíšeš správu, ktorú máš práve rozpísanú. Si si istý/á, že chceš pokračovať?", - "confirmations.unfollow.confirm": "Nesleduj", + "confirmations.unfollow.confirm": "Prestaň sledovať", "confirmations.unfollow.message": "Naozaj chceš prestať sledovať {name}?", "conversation.delete": "Vymaž konverzáciu", "conversation.mark_as_read": "Označ za prečítané", @@ -223,7 +223,7 @@ "emoji_button.symbols": "Symboly", "emoji_button.travel": "Cestovanie a miesta", "empty_column.account_suspended": "Účet bol vylúčený", - "empty_column.account_timeline": "Niesu tu žiadne príspevky!", + "empty_column.account_timeline": "Nie sú tu žiadne príspevky!", "empty_column.account_unavailable": "Profil nedostupný", "empty_column.blocks": "Ešte si nikoho nezablokoval/a.", "empty_column.bookmarked_statuses": "Ešte nemáš žiadné záložky. Keď si pridáš príspevok k záložkám, zobrazí sa tu.", @@ -296,19 +296,24 @@ "hashtag.column_settings.tag_mode.any": "Hociktorý z týchto", "hashtag.column_settings.tag_mode.none": "Žiaden z týchto", "hashtag.column_settings.tag_toggle": "Vlož dodatočné haštagy pre tento stĺpec", - "hashtag.follow": "Nasleduj haštag", + "hashtag.counter_by_accounts": "{count, plural, one {{counter} sledujúci} few {{counter} sledujúci} many {{counter} sledujúcich} other {{counter} sledujúcich}}", + "hashtag.counter_by_uses": "{count, plural, one {{counter} príspevok} few {{counter} príspevky} many {{counter} príspevkov} other {{counter} príspevkov}}", + "hashtag.counter_by_uses_today": "{count, plural, one {{counter} príspevok} few {{counter} príspevky} many {{counter} príspevkov} other {{counter} príspevkov}} dnes", + "hashtag.follow": "Sleduj haštag", "hashtag.unfollow": "Nesleduj haštag", + "hashtags.and_other": "…a {count, plural, one {} few {# ďalšie} many {# ďalších}other {# ďalších}}", "home.actions.go_to_explore": "Pozrieť, čo je trendy", "home.actions.go_to_suggestions": "Nájdi ľudí na sledovanie", "home.column_settings.basic": "Základné", "home.column_settings.show_reblogs": "Ukáž vyzdvihnuté", "home.column_settings.show_replies": "Ukáž odpovede", + "home.explore_prompt.body": "Váš domovský informačný kanál bude obsahovať mix príspevkov z mriežok, ktoré ste sa rozhodli sledovať, ľudí, ktorých ste sa rozhodli sledovať, a príspevkov, ktoré preferujú. Ak sa vám to zdá príliš málo, možno budete chcieť:", "home.explore_prompt.title": "Toto je tvoja domovina v rámci Mastodonu.", - "home.hide_announcements": "Skry oboznámenia", + "home.hide_announcements": "Skry oznámenia", "home.pending_critical_update.body": "Prosím aktualizuj si svoj Mastodon server, ako náhle to bude možné!", "home.pending_critical_update.link": "Pozri aktualizácie", "home.pending_critical_update.title": "Je dostupná kritická bezpečnostná aktualizácia!", - "home.show_announcements": "Ukáž oboznámenia", + "home.show_announcements": "Ukáž oznámenia", "interaction_modal.description.favourite": "S účtom na Mastodone si môžeš tento príspevok obľúbiť, aby si dal/a autorovi vedieť, že ho oceňuješ, a uložiť si ho na neskôr.", "interaction_modal.description.follow": "Ak máte konto na Mastodone, môžete sledovať {name} a dostávať príspevky do svojho domovského kanála.", "interaction_modal.description.reblog": "Ak máte účet na Mastodone, môžete tento príspevok posilniť a zdieľať ho s vlastnými sledovateľmi.", @@ -319,6 +324,7 @@ "interaction_modal.on_another_server": "Na inom serveri", "interaction_modal.on_this_server": "Na tomto serveri", "interaction_modal.sign_in": "Nie si prihláseý/á na tomto serveri. Kde je tvoj účet hostovaný?", + "interaction_modal.sign_in_hint": "Tip: Toto je webová stránka, na ktorej ste sa zaregistrovali. Ak si nepamätáte, pohľadajte uvítací e-mail vo svojej schránke. Môžete tiež zadať svoje celé používateľské meno! (napr. @Mastodon@mastodon.social)", "interaction_modal.title.favourite": "Obľúb si {name} ov/in príspevok", "interaction_modal.title.follow": "Nasleduj {name}", "interaction_modal.title.reblog": "Vyzdvihni {name}ov/in príspevok", @@ -346,7 +352,7 @@ "keyboard_shortcuts.mention": "spomeň autora", "keyboard_shortcuts.muted": "otvor zoznam stíšených užívateľov", "keyboard_shortcuts.my_profile": "otvor svoj profil", - "keyboard_shortcuts.notifications": "otvor panel oboznámení", + "keyboard_shortcuts.notifications": "Otvor panel oznámení", "keyboard_shortcuts.open_media": "na otvorenie médií", "keyboard_shortcuts.pinned": "otvor zoznam pripnutých príspevkov", "keyboard_shortcuts.profile": "otvor autorov profil", @@ -373,6 +379,7 @@ "lists.delete": "Vymaž list", "lists.edit": "Uprav zoznam", "lists.edit.submit": "Zmeň názov", + "lists.exclusive": "Skryť tieto príspevky z domovskej stránky", "lists.new.create": "Pridaj zoznam", "lists.new.title_placeholder": "Názov nového zoznamu", "lists.replies_policy.followed": "Akýkoľvek nasledovaný užívateľ", @@ -426,11 +433,11 @@ "notification.reblog": "{name} zdieľal/a tvoj príspevok", "notification.status": "{name} práve uverejnil/a", "notification.update": "{name} upravil/a príspevok", - "notifications.clear": "Vyčisti oboznámenia", - "notifications.clear_confirmation": "Naozaj chceš nenávratne prečistiť všetky tvoje oboznámenia?", + "notifications.clear": "Vyčisti oznámenia", + "notifications.clear_confirmation": "Naozaj chceš nenávratne odstrániť všetky tvoje oznámenia?", "notifications.column_settings.admin.report": "Nové hlásenia:", "notifications.column_settings.admin.sign_up": "Nové registrácie:", - "notifications.column_settings.alert": "Oboznámenia na ploche", + "notifications.column_settings.alert": "Oznámenia na ploche", "notifications.column_settings.favourite": "Obľúbené:", "notifications.column_settings.filter_bar.advanced": "Zobraz všetky kategórie", "notifications.column_settings.filter_bar.category": "Rýchle triedenie", @@ -444,8 +451,8 @@ "notifications.column_settings.show": "Ukáž v stĺpci", "notifications.column_settings.sound": "Prehraj zvuk", "notifications.column_settings.status": "Nové príspevky:", - "notifications.column_settings.unread_notifications.category": "Neprečítané oboznámenia", - "notifications.column_settings.unread_notifications.highlight": "Zdôrazni neprečítané oboznámenia", + "notifications.column_settings.unread_notifications.category": "Neprečítané oznámenia", + "notifications.column_settings.unread_notifications.highlight": "Zdôrazni neprečítané oznámenia", "notifications.column_settings.update": "Úpravy:", "notifications.filter.all": "Všetky", "notifications.filter.boosts": "Vyzdvihnutia", @@ -455,12 +462,12 @@ "notifications.filter.polls": "Výsledky ankiet", "notifications.filter.statuses": "Aktualizácie od ľudí, ktorých nasleduješ", "notifications.grant_permission": "Udeľ povolenie.", - "notifications.group": "{count} oboznámení", - "notifications.mark_as_read": "Označ každé oboznámenie za prečítané", - "notifications.permission_denied": "Oboznámenia na plochu sú nedostupné, kvôli predtým zamietnutej požiadavke prehliadača", - "notifications.permission_denied_alert": "Oboznámenia na ploche nemôžu byť zapnuté, pretože požiadavka prehliadača o to, bola už skôr zamietnutá", - "notifications.permission_required": "Oboznámenia na ploche sú nedostupné, pretože potrebné povolenia neboli udelené.", - "notifications_permission_banner.enable": "Povoliť oboznámenia na plochu", + "notifications.group": "{count} Oznámení", + "notifications.mark_as_read": "Označ každé oznámenie za prečítané", + "notifications.permission_denied": "Oznámenia na ploche sú nedostupné, kvôli predtým zamietnutej požiadavke prehliadača", + "notifications.permission_denied_alert": "Oznámenia na ploche nemôžu byť zapnuté, pretože požiadavka prehliadača bola už skôr zamietnutá", + "notifications.permission_required": "Oznámenia na ploche sú nedostupné, pretože potrebné povolenia neboli udelené.", + "notifications_permission_banner.enable": "Povoliť oznámenia na ploche", "notifications_permission_banner.how_to_control": "Ak chcete dostávať upozornenia, keď Mastodon nie je otvorený, povoľte upozornenia na ploche. Po ich zapnutí môžete presne kontrolovať, ktoré typy interakcií generujú upozornenia na ploche, a to prostredníctvom tlačidla {icon} vyššie.", "notifications_permission_banner.title": "Nikdy nezmeškaj jedinú vec", "onboarding.action.back": "Vziať ma späť", @@ -468,6 +475,7 @@ "onboarding.actions.go_to_explore": "See what's trending", "onboarding.actions.go_to_home": "Go to your home feed", "onboarding.compose.template": "Nazdar #Mastodon!", + "onboarding.follows.empty": "Žiaľ, momentálne sa nedajú zobraziť žiadne výsledky. Môžete skúsiť použiť vyhľadávanie alebo navštíviť stránku objavovania a nájsť ľudí, ktorých chcete sledovať, alebo to skúste znova neskôr.", "onboarding.follows.lead": "You curate your own home feed. The more people you follow, the more active and interesting it will be. These profiles may be a good starting point—you can always unfollow them later!", "onboarding.follows.title": "Popular on Mastodon", "onboarding.share.lead": "Daj ľudom vedieť, ako ťa môžu na Mastodone nájsť!", @@ -476,6 +484,7 @@ "onboarding.share.title": "Zdieľaj svoj profil", "onboarding.start.lead": "Your new Mastodon account is ready to go. Here's how you can make the most of it:", "onboarding.start.skip": "Want to skip right ahead?", + "onboarding.start.title": "Zvládli ste to!", "onboarding.steps.follow_people.body": "You curate your own feed. Lets fill it with interesting people.", "onboarding.steps.follow_people.title": "Follow {count, plural, one {one person} other {# people}}", "onboarding.steps.publish_status.body": "Say hello to the world.", @@ -484,6 +493,12 @@ "onboarding.steps.setup_profile.title": "Customize your profile", "onboarding.steps.share_profile.body": "Let your friends know how to find you on Mastodon!", "onboarding.steps.share_profile.title": "Share your profile", + "onboarding.tips.2fa": "Vedeli ste? Svoj účet môžete zabezpečiť nastavením dvojfaktorového overenia v nastaveniach účtu. Funguje to s akoukoľvek aplikáciou TOTP podľa vášho výberu, nie je potrebné žiadne telefónne číslo!", + "onboarding.tips.accounts_from_other_servers": "Vedeli ste? Keďže Mastodon je decentralizovaný, niektoré profily, s ktorými sa stretnete, budú na iných serveroch, ako je váš. Aj napriek tomu s nimi môžete bezproblémovo komunikovať! Ich server je v druhej časti ich používateľského mena!", + "onboarding.tips.migration": "Vedeli ste? Ak máte pocit, že doména {domain} pre vás v budúcnosti nebude skvelou voľbou, môžete prejsť na iný server Mastodon bez straty svojich sledovateľov. Môžete dokonca hostovať svoj vlastný server!", + "onboarding.tips.verification": "Vedeli ste? Svoj účet môžete overiť umiestnením odkazu na svoj profil Mastodon na svoju vlastnú webovú lokalitu a pridaním webovej lokality do svojho profilu. Nie sú potrebné žiadne poplatky ani doklady!", + "password_confirmation.exceeds_maxlength": "Potvrdené heslo presahuje maximálnu dĺžku hesla", + "password_confirmation.mismatching": "Zadané heslá sa nezhodujú", "picture_in_picture.restore": "Vrátiť späť", "poll.closed": "Uzatvorená", "poll.refresh": "Obnoviť", @@ -542,6 +557,7 @@ "report.reasons.dislike": "Nepáči sa mi", "report.reasons.dislike_description": "Nieje to niečo, čo chceš vidieť", "report.reasons.legal": "Je to nelegálne", + "report.reasons.legal_description": "Domnievate sa, že porušuje zákony vašej krajiny alebo krajiny servera", "report.reasons.other": "Je to niečo iné", "report.reasons.other_description": "Tento problém nepatrí do iných kategórií", "report.reasons.spam": "Je to spam", @@ -559,6 +575,7 @@ "report.thanks.title": "Nechceš to vidieť?", "report.thanks.title_actionable": "Vďaka za nahlásenie, pozrieme sa na to.", "report.unfollow": "Nesleduj @{name}", + "report.unfollow_explanation": "Tento účet sledujete. Ak už nechcete vidieť jeho príspevky vo svojom domovskom kanáli, zrušte jeho sledovanie.", "report_notification.attached_statuses": "{count, plural, one {# post} other {# posts}} attached", "report_notification.categories.legal": "Právne ujednania", "report_notification.categories.other": "Ostatné", @@ -573,6 +590,8 @@ "search.quick_action.open_url": "Otvor URL v rámci Mastodonu", "search.quick_action.status_search": "Príspevky zodpovedajúce {x}", "search.search_or_paste": "Hľadaj, alebo vlož URL adresu", + "search_popout.full_text_search_disabled_message": "Nie je k dispozícii v doméne {domain}.", + "search_popout.language_code": "ISO kód jazyka", "search_popout.options": "Možnosti vyhľadávania", "search_popout.quick_actions": "Rýchle akcie", "search_popout.recent": "Nedávne vyhľadávania", @@ -585,14 +604,18 @@ "search_results.see_all": "Ukáž všetky", "search_results.statuses": "Príspevky", "search_results.title": "Hľadaj {q}", + "server_banner.about_active_users": "Ľudia používajúci tento server za posledných 30 dní (Aktívni používatelia za mesiac)", "server_banner.active_users": "aktívni užívatelia", "server_banner.administered_by": "Správcom je:", + "server_banner.introduction": "{domain} je súčasťou decentralizovanej sociálnej siete využívajúcej technológiu {mastodon}.", "server_banner.learn_more": "Zisti viac", "server_banner.server_stats": "Serverové štatistiky:", "sign_in_banner.create_account": "Vytvor účet", "sign_in_banner.sign_in": "Prihlás sa", "sign_in_banner.sso_redirect": "Prihlás sa, alebo zaregistruj", + "sign_in_banner.text": "Prihláste sa, aby ste mohli sledovať profily alebo haštagy, obľúbené veci, zdieľať ich a odpovedať na príspevky. Môžete tiež komunikovať zo svojho účtu na inom serveri.", "status.admin_account": "Otvor moderovacie rozhranie užívateľa @{name}", + "status.admin_domain": "Otvor rozhranie na moderovanie domény {domain}", "status.admin_status": "Otvor tento príspevok v moderovacom rozhraní", "status.block": "Blokuj @{name}", "status.bookmark": "Záložka", @@ -649,9 +672,11 @@ "status.uncached_media_warning": "Náhľad nie je k dispozícii", "status.unmute_conversation": "Prestaň si nevšímať konverzáciu", "status.unpin": "Odopni z profilu", + "subscribed_languages.lead": "Po zmene sa na vašej domovskej stránke a časovej osi zoznamu zobrazia iba príspevky vo vybraných jazykoch. Ak chcete dostávať príspevky vo všetkých jazykoch, vyberte možnosť žiadne.", "subscribed_languages.save": "Ulož zmeny", + "subscribed_languages.target": "Zmeniť prihlásené jazyky pre {target}", "tabs_bar.home": "Domov", - "tabs_bar.notifications": "Oboznámenia", + "tabs_bar.notifications": "Oznámenia", "time_remaining.days": "Ostáva {number, plural, one {# deň} few {# dní} many {# dní} other {# dní}}", "time_remaining.hours": "Ostáva {number, plural, one {# hodina} few {# hodín} many {# hodín} other {# hodiny}}", "time_remaining.minutes": "Ostáva {number, plural, one {# minúta} few {# minút} many {# minút} other {# minúty}}", @@ -680,6 +705,7 @@ "upload_form.video_description": "Popíš, pre ľudí so stratou sluchu, alebo očným znevýhodnením", "upload_modal.analyzing_picture": "Analyzujem obrázok…", "upload_modal.apply": "Použi", + "upload_modal.applying": "Nastavovanie…", "upload_modal.choose_image": "Vyber obrázok", "upload_modal.description_placeholder": "Rýchla hnedá líška skáče ponad lenivého psa", "upload_modal.detect_text": "Rozpoznaj text z obrázka", @@ -689,6 +715,7 @@ "upload_modal.preview_label": "Náhľad ({ratio})", "upload_progress.label": "Nahráva sa...", "upload_progress.processing": "Spracovávanie…", + "username.taken": "Používateľské meno je obsadené. Skúste iné", "video.close": "Zavri video", "video.download": "Stiahni súbor", "video.exit_fullscreen": "Vypni zobrazenie na celú obrazovku", diff --git a/app/javascript/mastodon/locales/sr-Latn.json b/app/javascript/mastodon/locales/sr-Latn.json index 9750784bbc..f64952f7b5 100644 --- a/app/javascript/mastodon/locales/sr-Latn.json +++ b/app/javascript/mastodon/locales/sr-Latn.json @@ -514,7 +514,7 @@ "privacy.direct.long": "Vidljivo samo pomenutim korisnicima", "privacy.direct.short": "Samo pomenute osobe", "privacy.private.long": "Vidljivo samo pratiocima", - "privacy.private.short": "Samo pratiocima", + "privacy.private.short": "Samo pratioci", "privacy.public.long": "Vidljivo za sve", "privacy.public.short": "Javno", "privacy.unlisted.long": "Vidljivo svima, ali isključeno iz funkcija otkrivanja", diff --git a/app/javascript/mastodon/locales/sr.json b/app/javascript/mastodon/locales/sr.json index bb4739cbcc..130b28bc74 100644 --- a/app/javascript/mastodon/locales/sr.json +++ b/app/javascript/mastodon/locales/sr.json @@ -514,7 +514,7 @@ "privacy.direct.long": "Видљиво само поменутим корисницима", "privacy.direct.short": "Само поменуте особе", "privacy.private.long": "Видљиво само пратиоцима", - "privacy.private.short": "Само пратиоцима", + "privacy.private.short": "Само пратиоци", "privacy.public.long": "Видљиво за све", "privacy.public.short": "Јавно", "privacy.unlisted.long": "Видљиво свима, али искључено из функција откривања", diff --git a/config/locales/doorkeeper.fa.yml b/config/locales/doorkeeper.fa.yml index 085507f8bf..c56e76e346 100644 --- a/config/locales/doorkeeper.fa.yml +++ b/config/locales/doorkeeper.fa.yml @@ -149,6 +149,7 @@ fa: scopes: admin:read: خواندن تمام داده‌ها روی کارساز admin:read:accounts: خواندن اطّلاعات حساس از همهٔ حساب‌ها + admin:read:canonical_email_blocks: خواندن اطّلاعات حسّاس از همهٔ انسدادهای رایانامهٔ متعارف admin:read:domain_allows: خواندن اطّلاعات حساس از همهٔ دامنه ها اجازه داده شد admin:read:domain_blocks: خواندن اطّلاعات حساس از همهٔ دامنه های مسدودشده admin:read:email_domain_blocks: خواندن اطّلاعات حساس از همهٔ دامنه های رایانامه های مسدودشده @@ -156,6 +157,7 @@ fa: admin:read:reports: خواندن اطّلاعات حساس از همهٔ گزارش‌ها و حساب‌های گزارش‌شده admin:write: تغییر تمام داده‌ها روی کارساز admin:write:accounts: انجام کنش مدیریتی روی حساب‌ها + admin:write:canonical_email_blocks: انجام کنش‌های نظارتی روی همهٔ انسدادهای رایانامهٔ متعارف admin:write:domain_allows: انجام کنش مدیریتی روی اجازه‌های دامنه admin:write:domain_blocks: انجام کنش مدیریتی روی انسدادهای دامنه admin:write:email_domain_blocks: انجام کنش مدیریتی روی انسدادهای دامنهٔ رایانامه diff --git a/config/locales/doorkeeper.fi.yml b/config/locales/doorkeeper.fi.yml index 8d030274e7..0f263b00d5 100644 --- a/config/locales/doorkeeper.fi.yml +++ b/config/locales/doorkeeper.fi.yml @@ -182,7 +182,7 @@ fi: write: muokkaa kaikkia tilisi tietoja write:accounts: muokkaa profiiliasi write:blocks: estä tilejä ja verkkotunnuksia - write:bookmarks: lisää julkaisuja kirjanmerkkeihisi + write:bookmarks: lisää julkaisuja kirjanmerkkeihin write:conversations: mykistä ja poista keskusteluja write:favourites: suosikkijulkaisut write:filters: luo suodattimia diff --git a/config/locales/fi.yml b/config/locales/fi.yml index 466cb95a24..2043d327a1 100644 --- a/config/locales/fi.yml +++ b/config/locales/fi.yml @@ -1,7 +1,7 @@ --- fi: about: - about_mastodon_html: 'Tulevaisuuden sosiaalinen verkosto: Ei mainoksia, ei valvontaa, toteutettu avoimilla protokollilla ja hajautettu! Pidä tietosi ominasi Mastodonilla!' + about_mastodon_html: 'Tulevaisuuden sosiaalinen verkosto: ei mainoksia, ei valvontaa, toteutettu avoimilla protokollilla ja hajautettu rakenne! Pidä tietosi ominasi Mastodonin avulla!' contact_missing: Ei asetettu contact_unavailable: Ei saatavilla hosted_on: Mastodon palvelimella %{domain} @@ -262,8 +262,8 @@ fi: disable_sign_in_token_auth_user_html: "%{name} poisti sähköpostitunnuksen %{target} todennuksen käytöstä" disable_user_html: "%{name} poisti kirjautumisen käyttäjältä %{target}" enable_custom_emoji_html: "%{name} otti käyttöön emojin %{target}" - enable_sign_in_token_auth_user_html: "%{name} aktivoi sähköpostitunnuksen käyttäjälle %{target}" - enable_user_html: "%{name} salli kirjautumisen käyttäjälle %{target}" + enable_sign_in_token_auth_user_html: "%{name} otti todennuksen sähköpostivaltuutuksella käyttöön käyttäjälle %{target}" + enable_user_html: "%{name} otti kirjautumisen käyttöön käyttäjälle %{target}" memorialize_account_html: "%{name} muutti käyttäjän %{target} tilin muistosivuksi" promote_user_html: "%{name} ylensi käyttäjän %{target}" reject_appeal_html: "%{name} hylkäsi valvontapäätöksen valituksen käyttäjältä %{target}" @@ -584,7 +584,7 @@ fi: one: "%{count} ilmoitus" other: "%{count} ilmoitusta" action_log: Tarkastusloki - action_taken_by: Toimenpiteen tekijä + action_taken_by: Toimen tehnyt actions: delete_description_html: Raportoidut julkaisut poistetaan ja kirjataan varoitus, joka auttaa suhtautumaan vakavammin saman tilin tuleviin rikkomuksiin. mark_as_sensitive_description_html: Raportoitujen julkaisujen media merkitään arkaluonteiseksi ja kirjataan varoitus, joka auttaa suhtautumaan vakavammin saman tilin tuleviin rikkomuksiin. @@ -673,7 +673,7 @@ fi: moderation: Valvonta special: Erikois delete: Poista - description_html: Käyttäjän roolit, voit muokata toimintoja ja alueita mitä sinun Mastodon käyttäjät voivat käyttää. + description_html: "Käyttäjärooleilla voit muokata, mihin toimintoihin ja alueisiin käyttäjäsi pääsevät käsiksi." edit: Muokkaa "%{name}" roolia everyone: Oletus käyttöoikeudet everyone_full_description_html: Tämä on perusrooli joka vaikuttaa kaikkiin käyttäjiin, jopa ilman määrättyä roolia. Kaikki muut roolit perivät sen käyttöoikeudet. @@ -945,11 +945,11 @@ fi: webhooks: add_new: Lisää päätepiste delete: Poista - description_html: "Webhook mahdollistaa Mastodonin työntää reaaliaikaisia ilmoituksia valituista tapahtumista omaan sovellukseesi, joten sovelluksesi voi laukaista automaattisesti reaktioita." + description_html: "Webhookin avulla Mastodon voi puskea sovellukseesi reaaliaikaisia ilmoituksia valituista tapahtumista, jotta sovelluksesi voi laukaista reaktioita automaattisesti." disable: Poista käytöstä - disabled: Ei käytössä + disabled: Pois käytöstä edit: Muokkaa päätepistettä - empty: Sinulla ei ole vielä määritetty webhook-päätepisteitä. + empty: Et ole vielä määrittänyt webhook-päätepisteitä. enable: Ota käyttöön enabled: Aktiivinen enabled_events: @@ -1150,7 +1150,7 @@ fi: username_unavailable: Käyttäjänimesi ei tule saataville enää uudestaan disputes: strikes: - action_taken: Toteutetut toimet + action_taken: Tehty toimi appeal: Vetoomus appeal_approved: Tähän valitukseen on haettu muutosta, eikä se ole enää voimassa appeal_rejected: Valitus on hylätty @@ -1389,13 +1389,13 @@ fi: confirmation_html: Haluatko varmasti lopettaa Mastodonin sähköposti-ilmoitusten vastaanottamisen aiheesta %{type} palvelimelta %{domain} osoitteeseesi %{email}? Voit tilata ilmoitusviestejä milloin tahansa uudelleen sähköposti-ilmoitusten asetuksista. emails: notification_emails: - favourite: sähköpostit ilmoituksille - follow: seuraa sähköpostin ilmoituksia - follow_request: seuraa pyyntöjä sähköpostiin - mention: mainitse sähköpostin ilmoitukset - reblog: tehosta sähköpostien ilmoituksia + favourite: sähköposti-ilmoituksia suosikkeihin lisäämisistä + follow: sähköposti-ilmoituksia seuraamisista + follow_request: sähköposti-ilmoituksia seuraamispyynnöistä + mention: sähköposti-ilmoituksia maininnoista + reblog: sähköposti-ilmoituksia tehostuksista resubscribe_html: Jos olet perunut tilauksen erehdyksessä, voit tilata ilmoitusviestejä uudelleen sähköposti-ilmoitusten asetuksista. - success_html: Sinulle ei vastedes lähetetä %{type} -aihepiirin Mastodon-sähköposti-ilmoituksia palvelimelta %{domain} osoitteeseen %{email}. + success_html: Sinulle ei enää lähetetä Mastodonin %{type} palvelimelta %{domain} osoitteeseen %{email}. title: Lopeta tilaus media_attachments: validations: @@ -1812,7 +1812,7 @@ fi: suspend: Tili jäädytetty welcome: edit_profile_action: Määritä profiili - edit_profile_step: Voit mukauttaa profiiliasi mm. profiilikuvalla ja uudella näyttönimellä. Voit myös valita haluatko tarkastaa ja hyväksyä uudet seuraajat itse. + edit_profile_step: Voit mukauttaa profiiliasi muun muassa profiilikuvalla ja uudella näyttönimellä. Voit myös valita, haluatko tarkastaa ja hyväksyä uudet seuraajat itse. explanation: Näillä vinkeillä pääset alkuun final_action: Ala julkaista final_step: 'Ala julkaista! Vaikkei sinulla olisi seuraajia, voivat muut nähdä julkisia julkaisujasi esimerkiksi paikallisella aikajanalla tai aihetunnisteissa. Kannattaa myös esitellä itsensä aihetunnisteella #esittely.' @@ -1847,7 +1847,7 @@ fi: success: Suojausavaimesi poistaminen onnistui. invalid_credential: Virheellinen suojausavain nickname_hint: Anna uuden suojausaivaimesi lempinimi - not_enabled: Et ole vielä ottanut käyttöön WebAuthn-ohjelmaa + not_enabled: Et ole vielä ottanut WebAuthn-ohjelmaa käyttöön not_supported: Tämä selain ei tue suojausavaimia otp_required: Jos haluat käyttää suojausavaimia, ota ensin kaksivaiheinen todennus käyttöön. registered_on: Rekisteröity %{date} diff --git a/config/locales/ja.yml b/config/locales/ja.yml index b18405fb65..6a72c1ca14 100644 --- a/config/locales/ja.yml +++ b/config/locales/ja.yml @@ -770,12 +770,12 @@ ja: critical_update: "※緊急 (速やかに適用してください)" description: Mastodonサーバーはいつでも最新の状態を保ち、新しい機能や修正を利用できるようにしておくことをおすすめします。またセキュリティの問題が発生した場合は、速やかにMastodonをアップデートすることが大切です。Mastodonは30分おきにアップデートを確認し、通知設定に応じて新しいアップデートをメールで通知します。 documentation_link: もっと見る - release_notes: 更新情報 + release_notes: リリースノート title: 利用可能なアップデート type: アップデートの種別 types: major: メジャーリリース - minor: リリース + minor: マイナーリリース patch: パッチ (バグ修正のみ) version: バージョン statuses: diff --git a/config/locales/simple_form.fi.yml b/config/locales/simple_form.fi.yml index 1eec9a9317..1925ba77f3 100644 --- a/config/locales/simple_form.fi.yml +++ b/config/locales/simple_form.fi.yml @@ -3,7 +3,7 @@ fi: simple_form: hints: account: - discoverable: Julkisia viestejäsi ja profiiliasi voidaan pitää esillä tai suositella Mastodonin eri alueilla ja profiiliasi voidaan ehdottaa toisille käyttäjille. + discoverable: Julkisia julkaisujasi ja profiiliasi voidaan pitää esillä tai suositella Mastodonin eri alueilla ja profiiliasi voidaan ehdottaa toisille käyttäjille. display_name: Koko nimesi tai lempinimesi. fields: Kotisivusi, pronominit, ikä, mitä ikinä haluat. indexable: Julkiset julkaisusi voivat näkyä hakutuloksissa Mastodonissa. Ihmiset, jotka ovat olleet vuorovaikutuksessa julkaisujesi kanssa, voivat etsiä niitä asetuksesta riippumatta. @@ -49,7 +49,7 @@ fi: header: PNG, GIF tai JPG. Enintään %{size}. Skaalataan kokoon %{dimensions} px inbox_url: Kopioi URL-osoite haluamasi välittäjän etusivulta irreversible: Suodatetut julkaisut katoavat lopullisesti, vaikka suodatin poistettaisiin myöhemmin - locale: Käyttöliittymän, sähköpostien ja ilmoitusten kieli + locale: Käyttöliittymän, sähköpostien ja puskuilmoitusten kieli password: Käytä vähintään 8 merkkiä phrase: Täsmää riippumatta tekstin aakkoslajista tai julkaisun sisältövaroituksesta scopes: Mihin sovellusliittymiin sovellus pääsee käsiksi. Jos valitset ylätason laajuuden, sinun ei tarvitse valita yksittäisiä. @@ -136,7 +136,7 @@ fi: position: Korkeampi rooli ratkaisee konfliktit tietyissä tilanteissa. Tiettyjä toimintoja voidaan suorittaa vain rooleille, joiden prioriteetti on pienempi webhook: events: Valitse lähetettävät tapahtumat - template: Luo oma JSON-hyötykuorma käyttäen muuttujainterpolointia. Jättäessäsi kentän tyhjäksi, käytetään vakio-JSON-kuormaa. + template: Luo oma JSON-hyötykuorma käyttäen muuttujien interpolointia. Jätä kenttä tyhjäksi käyttääksesi vakio-JSON-kuormaa. url: Mihin tapahtumat lähetetään labels: account: From 1e2d4975cfcc064b3cf40760b2bb66b3a26e2a40 Mon Sep 17 00:00:00 2001 From: Claire Date: Mon, 2 Oct 2023 16:20:04 +0200 Subject: [PATCH 09/12] Fix import progress not updating on certain failures (#27247) --- app/workers/import/row_worker.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/workers/import/row_worker.rb b/app/workers/import/row_worker.rb index 09dd6ce736..c86900e6ad 100644 --- a/app/workers/import/row_worker.rb +++ b/app/workers/import/row_worker.rb @@ -8,7 +8,7 @@ class Import::RowWorker sidekiq_retries_exhausted do |msg, _exception| ActiveRecord::Base.connection_pool.with_connection do # Increment the total number of processed items, and bump the state of the import if needed - bulk_import_id = BulkImportRow.where(id: msg['args'][0]).pick(:id) + bulk_import_id = BulkImportRow.where(id: msg['args'][0]).pick(:bulk_import_id) BulkImport.progress!(bulk_import_id) unless bulk_import_id.nil? end end From 7e7d6e695b5b7ef8d8c10b1d9ac79375ca1b8209 Mon Sep 17 00:00:00 2001 From: Claire Date: Mon, 2 Oct 2023 16:42:52 +0200 Subject: [PATCH 10/12] Fix incorrectly keeping outdated update notices absent from the API endpoint (#27021) --- app/services/software_update_check_service.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/services/software_update_check_service.rb b/app/services/software_update_check_service.rb index 49b92f104d..c8ce1753f5 100644 --- a/app/services/software_update_check_service.rb +++ b/app/services/software_update_check_service.rb @@ -35,11 +35,13 @@ class SoftwareUpdateCheckService < BaseService end def process_update_notices!(update_notices) - return if update_notices.blank? || update_notices['updatesAvailable'].blank? + return if update_notices.blank? || update_notices['updatesAvailable'].nil? # Clear notices that are not listed by the update server anymore SoftwareUpdate.where.not(version: update_notices['updatesAvailable'].pluck('version')).delete_all + return if update_notices['updatesAvailable'].blank? + # Check if any of the notices is new, and issue notifications known_versions = SoftwareUpdate.where(version: update_notices['updatesAvailable'].pluck('version')).pluck(:version) new_update_notices = update_notices['updatesAvailable'].filter { |notice| known_versions.exclude?(notice['version']) } From 5e56f3db654bc48ce86361db346a278a975022e2 Mon Sep 17 00:00:00 2001 From: Claire Date: Tue, 3 Oct 2023 10:09:00 +0200 Subject: [PATCH 11/12] Change some worker lock TTLs (#27246) --- app/workers/account_deletion_worker.rb | 2 +- .../activitypub/synchronize_featured_collection_worker.rb | 2 +- .../activitypub/synchronize_featured_tags_collection_worker.rb | 2 +- app/workers/activitypub/update_distribution_worker.rb | 2 +- app/workers/admin/account_deletion_worker.rb | 2 +- app/workers/admin/domain_purge_worker.rb | 2 +- app/workers/publish_scheduled_status_worker.rb | 2 +- app/workers/resolve_account_worker.rb | 2 +- app/workers/scheduler/indexing_scheduler.rb | 2 +- app/workers/scheduler/scheduled_statuses_scheduler.rb | 2 +- app/workers/verify_account_links_worker.rb | 2 +- 11 files changed, 11 insertions(+), 11 deletions(-) diff --git a/app/workers/account_deletion_worker.rb b/app/workers/account_deletion_worker.rb index b501511728..e4f943fbd1 100644 --- a/app/workers/account_deletion_worker.rb +++ b/app/workers/account_deletion_worker.rb @@ -3,7 +3,7 @@ class AccountDeletionWorker include Sidekiq::Worker - sidekiq_options queue: 'pull', lock: :until_executed + sidekiq_options queue: 'pull', lock: :until_executed, lock_ttl: 1.week.to_i def perform(account_id, options = {}) account = Account.find(account_id) diff --git a/app/workers/activitypub/synchronize_featured_collection_worker.rb b/app/workers/activitypub/synchronize_featured_collection_worker.rb index f67d693cb3..7a187d7f53 100644 --- a/app/workers/activitypub/synchronize_featured_collection_worker.rb +++ b/app/workers/activitypub/synchronize_featured_collection_worker.rb @@ -3,7 +3,7 @@ class ActivityPub::SynchronizeFeaturedCollectionWorker include Sidekiq::Worker - sidekiq_options queue: 'pull', lock: :until_executed + sidekiq_options queue: 'pull', lock: :until_executed, lock_ttl: 1.day.to_i def perform(account_id, options = {}) options = { note: true, hashtag: false }.deep_merge(options.deep_symbolize_keys) diff --git a/app/workers/activitypub/synchronize_featured_tags_collection_worker.rb b/app/workers/activitypub/synchronize_featured_tags_collection_worker.rb index 14af4f725c..570415c821 100644 --- a/app/workers/activitypub/synchronize_featured_tags_collection_worker.rb +++ b/app/workers/activitypub/synchronize_featured_tags_collection_worker.rb @@ -3,7 +3,7 @@ class ActivityPub::SynchronizeFeaturedTagsCollectionWorker include Sidekiq::Worker - sidekiq_options queue: 'pull', lock: :until_executed + sidekiq_options queue: 'pull', lock: :until_executed, lock_ttl: 1.day.to_i def perform(account_id, url) ActivityPub::FetchFeaturedTagsCollectionService.new.call(Account.find(account_id), url) diff --git a/app/workers/activitypub/update_distribution_worker.rb b/app/workers/activitypub/update_distribution_worker.rb index d0391bb6f6..a04ac621f3 100644 --- a/app/workers/activitypub/update_distribution_worker.rb +++ b/app/workers/activitypub/update_distribution_worker.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true class ActivityPub::UpdateDistributionWorker < ActivityPub::RawDistributionWorker - sidekiq_options queue: 'push', lock: :until_executed + sidekiq_options queue: 'push', lock: :until_executed, lock_ttl: 1.day.to_i # Distribute an profile update to servers that might have a copy # of the account in question diff --git a/app/workers/admin/account_deletion_worker.rb b/app/workers/admin/account_deletion_worker.rb index 6e0eb331be..5dfdfb6e73 100644 --- a/app/workers/admin/account_deletion_worker.rb +++ b/app/workers/admin/account_deletion_worker.rb @@ -3,7 +3,7 @@ class Admin::AccountDeletionWorker include Sidekiq::Worker - sidekiq_options queue: 'pull', lock: :until_executed + sidekiq_options queue: 'pull', lock: :until_executed, lock_ttl: 1.week.to_i def perform(account_id) DeleteAccountService.new.call(Account.find(account_id), reserve_username: true, reserve_email: true) diff --git a/app/workers/admin/domain_purge_worker.rb b/app/workers/admin/domain_purge_worker.rb index 095232a6d7..6c5250b660 100644 --- a/app/workers/admin/domain_purge_worker.rb +++ b/app/workers/admin/domain_purge_worker.rb @@ -3,7 +3,7 @@ class Admin::DomainPurgeWorker include Sidekiq::Worker - sidekiq_options queue: 'pull', lock: :until_executed + sidekiq_options queue: 'pull', lock: :until_executed, lock_ttl: 1.week.to_i def perform(domain) PurgeDomainService.new.call(domain) diff --git a/app/workers/publish_scheduled_status_worker.rb b/app/workers/publish_scheduled_status_worker.rb index ce42f7be7c..aa5c4a834a 100644 --- a/app/workers/publish_scheduled_status_worker.rb +++ b/app/workers/publish_scheduled_status_worker.rb @@ -3,7 +3,7 @@ class PublishScheduledStatusWorker include Sidekiq::Worker - sidekiq_options lock: :until_executed + sidekiq_options lock: :until_executed, lock_ttl: 1.hour.to_i def perform(scheduled_status_id) scheduled_status = ScheduledStatus.find(scheduled_status_id) diff --git a/app/workers/resolve_account_worker.rb b/app/workers/resolve_account_worker.rb index 2b5be6d1b2..4ae2442af5 100644 --- a/app/workers/resolve_account_worker.rb +++ b/app/workers/resolve_account_worker.rb @@ -3,7 +3,7 @@ class ResolveAccountWorker include Sidekiq::Worker - sidekiq_options queue: 'pull', lock: :until_executed + sidekiq_options queue: 'pull', lock: :until_executed, lock_ttl: 1.day.to_i def perform(uri) ResolveAccountService.new.call(uri) diff --git a/app/workers/scheduler/indexing_scheduler.rb b/app/workers/scheduler/indexing_scheduler.rb index ff1b744442..5c985e25a0 100644 --- a/app/workers/scheduler/indexing_scheduler.rb +++ b/app/workers/scheduler/indexing_scheduler.rb @@ -5,7 +5,7 @@ class Scheduler::IndexingScheduler include Redisable include DatabaseHelper - sidekiq_options retry: 0, lock: :until_executed, lock_ttl: 1.day.to_i + sidekiq_options retry: 0, lock: :until_executed, lock_ttl: 30.minutes.to_i IMPORT_BATCH_SIZE = 1000 SCAN_BATCH_SIZE = 10 * IMPORT_BATCH_SIZE diff --git a/app/workers/scheduler/scheduled_statuses_scheduler.rb b/app/workers/scheduler/scheduled_statuses_scheduler.rb index b5801248f2..fe60d5524e 100644 --- a/app/workers/scheduler/scheduled_statuses_scheduler.rb +++ b/app/workers/scheduler/scheduled_statuses_scheduler.rb @@ -3,7 +3,7 @@ class Scheduler::ScheduledStatusesScheduler include Sidekiq::Worker - sidekiq_options retry: 0, lock: :until_executed, lock_ttl: 1.day.to_i + sidekiq_options retry: 0, lock: :until_executed, lock_ttl: 1.hour.to_i def perform publish_scheduled_statuses! diff --git a/app/workers/verify_account_links_worker.rb b/app/workers/verify_account_links_worker.rb index f606e6c26f..ad27f450b7 100644 --- a/app/workers/verify_account_links_worker.rb +++ b/app/workers/verify_account_links_worker.rb @@ -3,7 +3,7 @@ class VerifyAccountLinksWorker include Sidekiq::Worker - sidekiq_options queue: 'default', retry: false, lock: :until_executed + sidekiq_options queue: 'default', retry: false, lock: :until_executed, lock_ttl: 1.hour.to_i def perform(account_id) account = Account.find(account_id) From e95d25e1013b6328457b81bd98e8d6a841d45ec2 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 3 Oct 2023 10:47:28 +0200 Subject: [PATCH 12/12] New Crowdin Translations (automated) (#27260) Co-authored-by: GitHub Actions --- app/javascript/mastodon/locales/lv.json | 6 ++-- app/javascript/mastodon/locales/si.json | 35 ++++++++++------------ app/javascript/mastodon/locales/zh-TW.json | 2 +- config/locales/activerecord.hr.yml | 13 ++++++++ config/locales/hr.yml | 5 ++++ config/locales/simple_form.cy.yml | 5 ++++ 6 files changed, 42 insertions(+), 24 deletions(-) diff --git a/app/javascript/mastodon/locales/lv.json b/app/javascript/mastodon/locales/lv.json index 3f2c74cbac..aab7b9a8fb 100644 --- a/app/javascript/mastodon/locales/lv.json +++ b/app/javascript/mastodon/locales/lv.json @@ -1,7 +1,7 @@ { "about.blocks": "Moderētie serveri", "about.contact": "Kontakts:", - "about.disclaimer": "Mastodon ir bezmaksas atvērtā koda programmatūra un Mastodon gGmbH preču zīme.", + "about.disclaimer": "Mastodon ir bezmaksas atklātā pirmkoda programmatūra un Mastodon gGmbH preču zīme.", "about.domain_blocks.no_reason_available": "Iemesls nav norādīts", "about.domain_blocks.preamble": "Mastodon parasti ļauj apskatīt saturu un mijiedarboties ar lietotājiem no jebkura cita federācijas servera. Šie ir izņēmumi, kas veikti šajā konkrētajā serverī.", "about.domain_blocks.silenced.explanation": "Parasti tu neredzēsi profilus un saturu no šī servera, ja vien tu nepārprotami izvēlēsies to pārskatīt vai sekot.", @@ -9,7 +9,7 @@ "about.domain_blocks.suspended.explanation": "Nekādi dati no šī servera netiks apstrādāti, uzglabāti vai apmainīti, padarot neiespējamu mijiedarbību vai saziņu ar lietotājiem no šī servera.", "about.domain_blocks.suspended.title": "Apturētie", "about.not_available": "Šī informācija šajā serverī nav bijusi pieejama.", - "about.powered_by": "Decentralizēto sociālo tīklu nodrošina {mastodon}", + "about.powered_by": "Decentralizētu sociālo tīklu nodrošina {mastodon}", "about.rules": "Servera noteikumi", "account.account_note_header": "Piezīme", "account.add_or_remove_from_list": "Pievienot vai Noņemt no sarakstiem", @@ -26,7 +26,7 @@ "account.domain_blocked": "Domēns ir bloķēts", "account.edit_profile": "Rediģēt profilu", "account.enable_notifications": "Paziņot man, kad @{name} publicē ierakstu", - "account.endorse": "Izcelt profilā", + "account.endorse": "Izcelts profilā", "account.featured_tags.last_status_at": "Beidzamā ziņa {date}", "account.featured_tags.last_status_never": "Ierakstu nav", "account.featured_tags.title": "{name} izceltie tēmturi", diff --git a/app/javascript/mastodon/locales/si.json b/app/javascript/mastodon/locales/si.json index 27c19adf8e..2c6979b018 100644 --- a/app/javascript/mastodon/locales/si.json +++ b/app/javascript/mastodon/locales/si.json @@ -100,7 +100,7 @@ "compose_form.poll.switch_to_multiple": "තේරීම් කිහිපයක් ඉඩ දීම සඳහා මත විමසුම වෙනස් කරන්න", "compose_form.poll.switch_to_single": "තනි තේරීමකට ඉඩ දීම සඳහා මත විමසුම වෙනස් කරන්න", "compose_form.publish": "ප්‍රකාශනය", - "compose_form.publish_form": "Publish", + "compose_form.publish_form": "නව ලිපිය", "compose_form.publish_loud": "{publish}!", "compose_form.save_changes": "වෙනස්කම් සුරකින්න", "compose_form.sensitive.hide": "{count, plural, one {මාධ්ය සංවේදී ලෙස සලකුණු කරන්න} other {මාධ්ය සංවේදී ලෙස සලකුණු කරන්න}}", @@ -160,7 +160,7 @@ "emoji_button.symbols": "සංකේත", "emoji_button.travel": "චාරිකා සහ ස්ථාන", "empty_column.account_suspended": "ගිණුම අත්හිටුවා ඇත", - "empty_column.account_timeline": "මෙහි දත් නැත!", + "empty_column.account_timeline": "මෙහි ලිපි නැත!", "empty_column.account_unavailable": "පැතිකඩ නොතිබේ", "empty_column.blocks": "කිසිදු පරිශීලකයෙකු අවහිර කර නැත.", "empty_column.bookmarked_statuses": "ඔබට තවමත් පිටු සලකුණු කළ මෙවලම් කිසිවක් නොමැත. ඔබ එකක් පිටු සලකුණු කළ විට, එය මෙහි පෙන්වනු ඇත.", @@ -240,7 +240,7 @@ "keyboard_shortcuts.start": "\"පටන් ගන්න\" තීරුව අරින්න", "keyboard_shortcuts.toggle_hidden": "CW පිටුපස පෙළ පෙන්වීමට/සැඟවීමට", "keyboard_shortcuts.toggle_sensitivity": "මාධ්‍ය පෙන්වන්න/සඟවන්න", - "keyboard_shortcuts.toot": "අලුත්ම ටූට් එකක් පටන් ගන්න", + "keyboard_shortcuts.toot": "නව ලිපියක් අරඹන්න", "keyboard_shortcuts.unfocus": "අවධානය යොමු නොකිරීමට textarea/search රචනා කරන්න", "keyboard_shortcuts.up": "ලැයිස්තුවේ ඉහළට යාමට", "lightbox.close": "වසන්න", @@ -253,7 +253,7 @@ "lists.account.remove": "ලේඛනයෙන් ඉවතලන්න", "lists.delete": "ලේඛනය මකන්න", "lists.edit": "ලේඛනය සංස්කරණය", - "lists.edit.submit": "මාතෘකාව වෙනස් කරන්න", + "lists.edit.submit": "සිරැසිය සංශෝධනය", "lists.new.create": "ලැයිස්තුව එකතු කරන්න", "lists.new.title_placeholder": "නව ලැයිස්තු මාතෘකාව", "lists.replies_policy.followed": "අනුගමනය කරන ඕනෑම පරිශීලකයෙක්", @@ -346,14 +346,10 @@ "onboarding.steps.setup_profile.title": "Customize your profile", "onboarding.steps.share_profile.body": "Let your friends know how to find you on Mastodon!", "onboarding.steps.share_profile.title": "Share your profile", - "picture_in_picture.restore": "ආපහු දාන්න", "poll.closed": "වසා ඇත", "poll.refresh": "නැවුම් කරන්න", - "poll.total_people": "{count, plural, one {# පුද්ගලයා} other {# මහජන}}", - "poll.total_votes": "{count, plural, one {# ඡන්දය} other {ඡන්ද #}}", "poll.vote": "ඡන්දය", - "poll.voted": "ඔබ මෙම පිළිතුරට ඡන්දය දුන්නා", - "poll.votes": "{votes, plural, one {# ඡන්දය} other {ඡන්ද #}}", + "poll.voted": "ඔබ මෙම උත්තරයට ඡන්දය දී ඇත", "poll_button.add_poll": "මත විමසුමක් යොදන්න", "poll_button.remove_poll": "මත විමසුම ඉවතලන්න", "privacy.change": "ලිපියේ රහස්‍යතාව සංශෝධනය", @@ -363,13 +359,10 @@ "privacy.private.short": "අනුගාමිකයින් පමණි", "privacy.public.long": "සැමට දිස්වෙයි", "privacy.public.short": "ප්‍රසිද්ධ", - "privacy.unlisted.long": "සැමට දෘශ්‍යමාන, නමුත් සොයාගැනීමේ විශේෂාංග වලින් ඉවත් විය", - "privacy.unlisted.short": "ලැයිස්තුගත නොකළ", + "privacy_policy.title": "රහස්‍යතා ප්‍රතිපත්තිය", "refresh": "නැවුම් කරන්න", "regeneration_indicator.label": "පූරණය වෙමින්…", - "regeneration_indicator.sublabel": "ඔබේ නිවසේ පෝෂණය සූදානම් වෙමින් පවතී!", "relative_time.days": "ද. {number}", - "relative_time.full.days": "{number, plural, one {# දින} other {# දින}} පෙර", "relative_time.full.hours": "{number, plural, one {පැය #} other {පැය #}} කට පෙර", "relative_time.full.just_now": "මේ දැන්", "relative_time.full.minutes": "{number, plural, one {විනාඩි #} other {විනාඩි #}} කට පෙර", @@ -381,10 +374,9 @@ "relative_time.today": "අද", "reply_indicator.cancel": "අවලංගු කරන්න", "report.block": "අවහිර", - "report.block_explanation": "ඔබට ඔවුන්ගේ පෝස්ට් නොපෙනේ. ඔවුන්ට ඔබේ පළ කිරීම් බැලීමට හෝ ඔබව අනුගමනය කිරීමට නොහැකි වනු ඇත. ඔවුන් අවහිර කර ඇති බව ඔවුන්ට පැවසිය හැකිය.", "report.categories.other": "වෙනත්", "report.categories.spam": "ආයාචිත", - "report.categories.violation": "අන්තර්ගතය සේවාදායක නීති එකක් හෝ කිහිපයක් උල්ලංඝනය කරයි", + "report.categories.violation": "අන්තර්ගතය නිසා සේවාදායකයේ නීතියක් හෝ කිහිපයක් කඩ වේ", "report.category.subtitle": "හොඳම ගැලපීම තෝරන්න", "report.category.title": "මෙම {type}සමඟ සිදුවන්නේ කුමක්දැයි අපට කියන්න", "report.category.title_account": "පැතිකඩ", @@ -426,8 +418,12 @@ "search_results.all": "සියල්ල", "search_results.hashtags": "හැෂ් ටැග්", "search_results.nothing_found": "මෙම සෙවුම් පද සඳහා කිසිවක් සොයාගත නොහැකි විය", + "search_results.see_all": "සියල්ල බලන්න", "search_results.statuses": "ලිපි", - "sign_in_banner.sign_in": "Sign in", + "search_results.title": "{q} සොයන්න", + "server_banner.learn_more": "තව දැනගන්න", + "sign_in_banner.create_account": "ගිණුමක් සාදන්න", + "sign_in_banner.sign_in": "පිවිසෙන්න", "status.admin_account": "@{name}සඳහා මධ්‍යස්ථ අතුරුමුහුණත විවෘත කරන්න", "status.admin_status": "මධ්‍යස්ථ අතුරුමුහුණතෙහි මෙම තත්ත්වය විවෘත කරන්න", "status.block": "@{name} අවහිර", @@ -455,12 +451,11 @@ "status.read_more": "තව කියවන්න", "status.reblog": "බූස්ට් කරන්න", "status.reblog_private": "මුල් දෘශ්‍යතාව සමඟ වැඩි කරන්න", - "status.reblogged_by": "{name} වැඩි කරන ලදී", "status.reblogs.empty": "තාම කවුරුත් මේ toot එක boost කරලා නැහැ. යමෙකු එසේ කළ විට, ඔවුන් මෙහි පෙන්වනු ඇත.", "status.redraft": "මකන්න සහ නැවත කෙටුම්පත", "status.remove_bookmark": "පොත්යොමුව ඉවතලන්න", "status.reply": "පිළිතුරු", - "status.replyAll": "ත්‍රෙඩ් එකට පිළිතුරු දෙන්න", + "status.replyAll": "නූලට පිළිතුරු දෙන්න", "status.report": "@{name} වාර්තාව", "status.sensitive_warning": "සංවේදී අන්තර්ගතයකි", "status.share": "බෙදාගන්න", @@ -508,10 +503,10 @@ "upload_modal.description_placeholder": "කඩිසර දුඹුරු හිවලෙක් කම්මැලි බල්ලා මතින් පනී", "upload_modal.detect_text": "රූපයෙහි පෙළ අනාවරණය", "upload_modal.edit_media": "මාධ්‍ය සංස්කරණය", - "upload_modal.hint": "සියලුම සිඟිති රූ මත සැම විටම දර්ශනය වන නාභි ලක්ෂ්‍යය තේරීමට පෙරදසුනෙහි රවුම ක්ලික් කරන්න හෝ අදින්න.", - "upload_modal.preparing_ocr": "OCR…සූදානම් කරමින්", + "upload_modal.preparing_ocr": "OCR සඳහා සැරසෙමින්…", "upload_modal.preview_label": "පෙරදසුන ({ratio})", "upload_progress.label": "උඩුගත වෙමින්...", + "upload_progress.processing": "සැකසෙමින්…", "video.close": "දෘශ්‍යකය වසන්න", "video.download": "ගොනුව බාගන්න", "video.exit_fullscreen": "පූර්ණ තිරයෙන් පිටවන්න", diff --git a/app/javascript/mastodon/locales/zh-TW.json b/app/javascript/mastodon/locales/zh-TW.json index a6694b21df..8b5f7de2f3 100644 --- a/app/javascript/mastodon/locales/zh-TW.json +++ b/app/javascript/mastodon/locales/zh-TW.json @@ -373,7 +373,7 @@ "lightbox.previous": "上一步", "limited_account_hint.action": "一律顯示個人檔案", "limited_account_hint.title": "此個人檔案已被 {domain} 的管理員隱藏。", - "link_preview.author": "按照 {name}", + "link_preview.author": "由 {name} 提供", "lists.account.add": "新增至列表", "lists.account.remove": "從列表中移除", "lists.delete": "刪除列表", diff --git a/config/locales/activerecord.hr.yml b/config/locales/activerecord.hr.yml index 98ca8155fd..b095244dd6 100644 --- a/config/locales/activerecord.hr.yml +++ b/config/locales/activerecord.hr.yml @@ -5,3 +5,16 @@ hr: poll: expires_at: Krajnji rok options: Opcije + user: + email: E-mail adresa + password: Lozinka + user/account: + username: Korisničko ime + user/invite_request: + text: Razlog + errors: + models: + account: + attributes: + username: + invalid: mora sadržavati samo slova, brojeve i _ diff --git a/config/locales/hr.yml b/config/locales/hr.yml index d1e6728d42..aa7ee760ba 100644 --- a/config/locales/hr.yml +++ b/config/locales/hr.yml @@ -27,12 +27,17 @@ hr: new_email: Nova e-pošta submit: Promijeni e-poštu title: Promjena e-pošte za %{username} + change_role: + changed_msg: Uloga uspješno dodijeljena! + label: Promjeni ulogu confirm: Potvrdi confirmed: Potvrđeno confirming: Potvrđivanje custom: Prilagođeno delete: Izbriši podatke deleted: Izbrisano + disable: Zamrzni + disable_two_factor_authentication: Onemogući 2FA display_name: Prikazano ime domain: Domena edit: Uredi diff --git a/config/locales/simple_form.cy.yml b/config/locales/simple_form.cy.yml index 70194a1e0c..ddc1b1b935 100644 --- a/config/locales/simple_form.cy.yml +++ b/config/locales/simple_form.cy.yml @@ -292,7 +292,11 @@ cy: reblog: Mae rhywun wedi hybu eich postiad report: Cyflwynwyd adroddiad newydd software_updates: + all: Rhoi gwybod am bob ddiweddariad + critical: Rhoi gwybod am ddiweddariadau critigol yn unig label: Mae fersiwn Mastodon newydd ar gael + none: Byth rhoi gwybod am ddiweddariadau (nid argymhellir) + patch: Rhoi gwybod am ddiweddariadau trwsio byg trending_tag: Mae pwnc llosg newydd angen adolygiad rule: text: Rheol @@ -319,6 +323,7 @@ cy: url: URL diweddbwynt 'no': Na not_recommended: Heb ei argymell + overridden: Wedi'i gwrth-wneud recommended: Argymhellwyd required: mark: "*"